33 lines
698 B
Go
33 lines
698 B
Go
package anime
|
|
|
|
import (
|
|
"mal/internal/anime/handler"
|
|
"mal/internal/anime/repository"
|
|
"mal/internal/anime/service"
|
|
"mal/internal/domain"
|
|
"mal/internal/server"
|
|
|
|
"go.uber.org/fx"
|
|
)
|
|
|
|
var Module = fx.Options(
|
|
fx.Provide(
|
|
repository.NewAnimeRepository,
|
|
fx.Annotate(
|
|
service.NewAnimeService,
|
|
fx.As(new(handler.Service)),
|
|
fx.As(new(domain.AnimeCatalogService)),
|
|
fx.As(new(domain.AnimeDiscoverService)),
|
|
fx.As(new(domain.AnimeSearchService)),
|
|
fx.As(new(domain.AnimeDetailsService)),
|
|
fx.As(new(domain.AnimePlaybackService)),
|
|
),
|
|
handler.NewAnimeHandler,
|
|
),
|
|
fx.Provide(
|
|
server.AsRouteRegister(func(h *handler.AnimeHandler) server.RouteRegister {
|
|
return h
|
|
}),
|
|
),
|
|
)
|