import { Module } from "@nestjs/common"; import { FeedsController } from "./feeds.controller.js"; import { FeedsService } from "./feeds.service.js"; import { ColumnsController } from "./columns.controller.js"; import { ColumnStore } from "./column-store.js"; import { ColumnScheduler } from "./column-scheduler.js"; import { columnsProviders } from "./columns.dependencies.js"; /** * Feeds + columns (P1): the columns controller/store/scheduler join the feeds * module — one surface, one connector registry, one hot-cache dependency set. * ColumnStore is injected into FeedsService for the additive meta.columns. */ @Module({ // Controllers are ordered deliberately: ColumnsController's static paths // (/feeds/columns, /feeds/columns/reorder, …) must register BEFORE // FeedsController's parametric /feeds/:connectionId, or that route would // capture "columns" as a connection id (Express matches in declaration // order in Express/Nest's router). controllers: [ColumnsController, FeedsController], providers: [FeedsService, ColumnStore, ColumnScheduler, ...columnsProviders], exports: [FeedsService, ColumnStore, ColumnScheduler], }) export class FeedsModule {}