package initialize import ( "go.uber.org/zap" "penahub.gitlab.yandexcloud.net/pena-services/customer/internal/service/account" "penahub.gitlab.yandexcloud.net/pena-services/customer/internal/service/cart" "penahub.gitlab.yandexcloud.net/pena-services/customer/internal/service/currency" ) type ServicesDeps struct { Logger *zap.Logger Repositories *Repositories Clients *Clients } type Services struct { AccountService *account.Service CurrencyService *currency.Service CartService *cart.Service } func NewServices(deps *ServicesDeps) *Services { return &Services{ AccountService: account.New(&account.Deps{ Logger: deps.Logger, Repository: deps.Repositories.AccountRepository, AuthClient: deps.Clients.AuthClient, }), CurrencyService: currency.New(¤cy.Deps{ Logger: deps.Logger, Repository: deps.Repositories.CurrencyRepository, }), CartService: cart.New(&cart.Deps{ Logger: deps.Logger, Repository: deps.Repositories.AccountRepository, }), } }