//go:build wireinject // +build wireinject package di import ( "github.com/google/wire" "gin_test/event" "gin_test/model" usermod "gin_test/modules/user" "gin_test/pkg/jwt" ) func InitializeApp() (*App, error) { wire.Build( ProvideConfig, ProvideDBConfig, model.OpenDB, ProvideMigrated, event.NewDispatcher, ProvideJWTSecret, ProvideJWTExpirySeconds, jwt.NewService, ProvideTokenIssueListener, ProvideJWTMiddleware, usermod.NewUserRepo, usermod.NewService, usermod.NewHandler, ProvideRouter, ProvideServerDurations, ProvideHTTPServer, ProvideApp, ) return nil, nil }