package merch import ( "github.com/jackc/pgx/v5/pgxpool" "merch-api/internal/user" "merch-api/pkg/utils" ) type Handler struct { controller *controller *provider } type Deps struct { DB *pgxpool.Pool Utils utils.Utils UserProvider user.Provider } func New(deps Deps) *Handler { r := newRepo(deps.DB) s := newService(r, deps.Utils, deps.UserProvider) c := newController(s, deps.Utils) p := newProvider() return &Handler{ controller: c, provider: p, } }