30 lines
507 B
Go
30 lines
507 B
Go
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(s, deps.Utils)
|
|
|
|
return &Handler{
|
|
controller: c,
|
|
provider: p,
|
|
}
|
|
}
|