Files
XCDesktop/api/modules/remote/index.ts
2026-03-08 01:34:54 +08:00

26 lines
866 B
TypeScript

import type { Router } from 'express'
import type { ServiceContainer } from '../../infra/container.js'
import { createApiModule } from '../../infra/createModule.js'
import { REMOTE_MODULE } from '../../../shared/modules/remote/index.js'
import { RemoteService } from './service.js'
import { createRemoteRoutes } from './routes.js'
export * from './service.js'
export * from './routes.js'
export const createRemoteModule = () => {
return createApiModule(REMOTE_MODULE, {
routes: (container: ServiceContainer): Router => {
const remoteService = container.getSync<RemoteService>('remoteService')
return createRemoteRoutes({ remoteService })
},
lifecycle: {
onLoad: (container: ServiceContainer): void => {
container.register('remoteService', () => new RemoteService())
},
},
})
}
export default createRemoteModule