package admin import ( "quyun/providers/app" "go.ipao.vip/atom" "go.ipao.vip/atom/container" "go.ipao.vip/atom/contracts" "go.ipao.vip/atom/opt" ) func Provide(opts ...opt.Option) error { if err := container.Container.Provide(func() (*medias, error) { obj := &medias{} return obj, nil }); err != nil { return err } if err := container.Container.Provide(func() (*posts, error) { obj := &posts{} return obj, nil }); err != nil { return err } if err := container.Container.Provide(func( medias *medias, posts *posts, uploads *uploads, ) (contracts.HttpRoute, error) { obj := &Routes{ medias: medias, posts: posts, uploads: uploads, } if err := obj.Prepare(); err != nil { return nil, err } return obj, nil }, atom.GroupRoutes); err != nil { return err } if err := container.Container.Provide(func( app *app.Config, ) (*uploads, error) { obj := &uploads{ app: app, } return obj, nil }); err != nil { return err } return nil }