* backend and frontend hotfixes, see message Improved rendering on the frontend by cutting unecessary useStates. Backend side, downloads now auto resume even on application kill. * download rest api endpoints, general code refactor * download request json mappings
35 lines
496 B
Go
35 lines
496 B
Go
package rest
|
|
|
|
import (
|
|
"sync"
|
|
|
|
"github.com/marcopeocchi/yt-dlp-web-ui/server/internal"
|
|
)
|
|
|
|
var (
|
|
service *Service
|
|
handler *Handler
|
|
|
|
serviceOnce sync.Once
|
|
handlerOnce sync.Once
|
|
)
|
|
|
|
func ProvideService(db *internal.MemoryDB, mq *internal.MessageQueue) *Service {
|
|
serviceOnce.Do(func() {
|
|
service = &Service{
|
|
db: db,
|
|
mq: mq,
|
|
}
|
|
})
|
|
return service
|
|
}
|
|
|
|
func ProvideHandler(svc *Service) *Handler {
|
|
handlerOnce.Do(func() {
|
|
handler = &Handler{
|
|
service: svc,
|
|
}
|
|
})
|
|
return handler
|
|
}
|