{"version":3,"file":"server.mjs","names":["channelTaskGraph","rootSession","commandTasks","resourceTaskBoard","toolTask"],"sources":["../../generated/server.ts"],"sourcesContent":["// Generated by @agimon-ai/doompi-build. Do not edit by hand.\nimport { defineServerPlugin, type DoomServerSessionPlugin } from '@agimon-ai/doompi-core/server-facet';\nimport { composeRootHooks } from '@agimon-ai/doompi-core/extension-file';\n\nimport rootSession from '../src/extensions/workspaces/sessions/(backend)/root.server';\nimport channelTaskGraph from '../src/extensions/(backend)/channel/task-graph.server';\nimport commandTasks from '../src/extensions/workspaces/sessions/(backend)/command/tasks.server';\nimport resourceTaskBoard from '../src/extensions/workspaces/sessions/(backend)/resource/task-board.server';\nimport toolTask from '../src/extensions/workspaces/sessions/(backend)/tool/task.server';\n\ntype Factory<T, C> = (context: C) => T;\nconst at = <T, C>(value: T | Factory<T, C>, context: C): T =>\n  typeof value === 'function' ? (value as Factory<T, C>)(context) : value;\nconst via = <T>(identity: Record<string, unknown>, value: unknown): T => ({ ...identity, ...(value as object) }) as T;\n\nexport const facet = defineServerPlugin({\n  name: '@agimon-ai/doompi-task',\n  global: () => ({\n    get channels(): DoomServerSessionPlugin['channels'] { return [() => via({ frameType: 'task_graph' }, channelTaskGraph())]; },\n  }),\n  workspace: () => ({\n    get channels(): DoomServerSessionPlugin['channels'] { return [() => via({ frameType: 'task_graph' }, channelTaskGraph())]; },\n  }),\n  session: async (context) => {\n    const scopeSession = await rootSession(context);\n    const contextSession = { ...context, root: scopeSession.value };\n    return {\n      ...composeRootHooks(scopeSession),\n      get channels(): DoomServerSessionPlugin['channels'] { return [() => via({ frameType: 'task_graph' }, channelTaskGraph())]; },\n      get commands(): DoomServerSessionPlugin['commands'] { return [via({ name: 'tasks' }, at(commandTasks, contextSession))]; },\n      get resources(): DoomServerSessionPlugin['resources'] { return [at(resourceTaskBoard, contextSession)]; },\n      get tools(): DoomServerSessionPlugin['tools'] { return [via({ name: 'task' }, at(toolTask, contextSession))]; },\n      services: [...(scopeSession.services ?? [])],\n      get activities(): DoomServerSessionPlugin['activities'] { return [...(scopeSession.activities ?? [])]; },\n    };\n  },\n});\n\nexport default facet;\n"],"mappings":";;;;;;;;AAWA,MAAM,MAAY,OAA0B,YAC1C,OAAO,UAAU,aAAc,MAAwB,OAAO,IAAI;AACpE,MAAM,OAAU,UAAmC,WAAuB;CAAE,GAAG;CAAU,GAAI;AAAiB;AAE9G,MAAa,QAAQ,mBAAmB;CACtC,MAAM;CACN,eAAe,EACb,IAAI,WAAgD;EAAE,OAAO,OAAO,IAAI,EAAE,WAAW,aAAa,GAAGA,0BAAiB,CAAC,CAAC;CAAG,EAC7H;CACA,kBAAkB,EAChB,IAAI,WAAgD;EAAE,OAAO,OAAO,IAAI,EAAE,WAAW,aAAa,GAAGA,0BAAiB,CAAC,CAAC;CAAG,EAC7H;CACA,SAAS,OAAO,YAAY;EAC1B,MAAM,eAAe,MAAMC,oBAAY,OAAO;EAC9C,MAAM,iBAAiB;GAAE,GAAG;GAAS,MAAM,aAAa;EAAM;EAC9D,OAAO;GACL,GAAG,iBAAiB,YAAY;GAChC,IAAI,WAAgD;IAAE,OAAO,OAAO,IAAI,EAAE,WAAW,aAAa,GAAGD,0BAAiB,CAAC,CAAC;GAAG;GAC3H,IAAI,WAAgD;IAAE,OAAO,CAAC,IAAI,EAAE,MAAM,QAAQ,GAAG,GAAGE,sBAAc,cAAc,CAAC,CAAC;GAAG;GACzH,IAAI,YAAkD;IAAE,OAAO,CAAC,GAAGC,2BAAmB,cAAc,CAAC;GAAG;GACxG,IAAI,QAA0C;IAAE,OAAO,CAAC,IAAI,EAAE,MAAM,OAAO,GAAG,GAAGC,qBAAU,cAAc,CAAC,CAAC;GAAG;GAC9G,UAAU,CAAC,GAAI,aAAa,YAAY,CAAC,CAAE;GAC3C,IAAI,aAAoD;IAAE,OAAO,CAAC,GAAI,aAAa,cAAc,CAAC,CAAE;GAAG;EACzG;CACF;AACF,CAAC"}