- Updated all package.json name fields and dependency references - Updated all TypeScript/JavaScript imports - Updated .woodpecker/publish.yml filters and registry paths - Updated tools/install.sh scope default - Updated .npmrc registry paths (worktree + host) - Enhanced update-checker.ts with checkForAllUpdates() multi-package support - Updated CLI update command to show table of all packages - Added KNOWN_PACKAGES, formatAllPackagesTable, getInstallAllCommand - Marked checkForUpdate() with @deprecated JSDoc Closes #391
38 lines
1.3 KiB
TypeScript
38 lines
1.3 KiB
TypeScript
import { forwardRef, Inject, Module, type OnApplicationShutdown } from '@nestjs/common';
|
|
import { createQueue, type QueueHandle } from '@mosaicstack/queue';
|
|
import { ChatModule } from '../chat/chat.module.js';
|
|
import { GCModule } from '../gc/gc.module.js';
|
|
import { ReloadModule } from '../reload/reload.module.js';
|
|
import { CommandExecutorService } from './command-executor.service.js';
|
|
import { CommandRegistryService } from './command-registry.service.js';
|
|
import { COMMANDS_REDIS } from './commands.tokens.js';
|
|
|
|
const COMMANDS_QUEUE_HANDLE = 'COMMANDS_QUEUE_HANDLE';
|
|
|
|
@Module({
|
|
imports: [GCModule, forwardRef(() => ReloadModule), forwardRef(() => ChatModule)],
|
|
providers: [
|
|
{
|
|
provide: COMMANDS_QUEUE_HANDLE,
|
|
useFactory: (): QueueHandle => {
|
|
return createQueue();
|
|
},
|
|
},
|
|
{
|
|
provide: COMMANDS_REDIS,
|
|
useFactory: (handle: QueueHandle) => handle.redis,
|
|
inject: [COMMANDS_QUEUE_HANDLE],
|
|
},
|
|
CommandRegistryService,
|
|
CommandExecutorService,
|
|
],
|
|
exports: [CommandRegistryService, CommandExecutorService],
|
|
})
|
|
export class CommandsModule implements OnApplicationShutdown {
|
|
constructor(@Inject(COMMANDS_QUEUE_HANDLE) private readonly handle: QueueHandle) {}
|
|
|
|
async onApplicationShutdown(): Promise<void> {
|
|
await this.handle.close().catch(() => {});
|
|
}
|
|
}
|