agentstudio 0.1.26 → 0.1.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts.map +1 -1
- package/index.js +36 -18
- package/index.js.map +1 -1
- package/package.json +6 -5
- package/public/assets/{AgentsPage-DR5v4Vfe.js → AgentsPage-VVVyzMq0.js} +1 -1
- package/public/assets/{Button-6I_OiXLX.js → Button-B9AQtJ7x.js} +1 -1
- package/public/assets/{ChatPage-DzORphjz.js → ChatPage-p1JCfA2A.js} +5 -5
- package/public/assets/{CommandForm-k3XXwCB4.js → CommandForm-B_beYCv3.js} +1 -1
- package/public/assets/{CommandsPage-C6dcKcFf.js → CommandsPage-Blc1Kt4Z.js} +1 -1
- package/public/assets/{DashboardPage-4YSwoWTH.js → DashboardPage-Dokn4y-N.js} +1 -1
- package/public/assets/{FileBrowser-BvyXd63f.js → FileBrowser-Dg9PfXOo.js} +4 -4
- package/public/assets/{FileExplorer-DhPt_quM.js → FileExplorer-B7BFy0Tu.js} +1 -1
- package/public/assets/{GeneralSettingsPage-DkHRbImS.js → GeneralSettingsPage-DLSSSadp.js} +1 -1
- package/public/assets/LandingPage-Ck2WpTto.js +1 -0
- package/public/assets/{LoginPage-Bfy9WmmY.js → LoginPage-D2Ykhr7D.js} +4 -4
- package/public/assets/{McpAdminSettingsPage-BFuQouo8.js → McpAdminSettingsPage-BAKOckWx.js} +1 -1
- package/public/assets/{McpPage-DDiRtENp.js → McpPage-DkD9BOrP.js} +1 -1
- package/public/assets/{MemorySettingsPage-D5Kec6pT.js → MemorySettingsPage-CiUs5u2g.js} +1 -1
- package/public/assets/{PluginsPage-DSo1pTD-.js → PluginsPage-CkXNjZMq.js} +1 -1
- package/public/assets/{ProjectSelector-Dqm5v8o9.js → ProjectSelector-B1_umywl.js} +1 -1
- package/public/assets/ProjectsPage-CQ8zwJ5D.js +21 -0
- package/public/assets/ScheduledTasksPage-BjSzD4T2.js +1 -0
- package/public/assets/{SettingsLayout-Blt_jAZx.js → SettingsLayout-CccK5RVj.js} +1 -1
- package/public/assets/{SkillsPage-B5YxNlWJ.js → SkillsPage-D_LECy2S.js} +1 -1
- package/public/assets/{SubagentForm-B09hmrYM.js → SubagentForm-D9EFQxlZ.js} +1 -1
- package/public/assets/{SubagentsPage-Bqk10bb7.js → SubagentsPage-D_sdehiT.js} +1 -1
- package/public/assets/SystemInfoPage-vz5Ey9DK.js +1 -0
- package/public/assets/TelemetrySettingsPage-DMngnKDW.js +1 -0
- package/public/assets/{ToastTestPage-Dzfb1AsW.js → ToastTestPage-CafmBcnU.js} +1 -1
- package/public/assets/{ToolsList-CmrJAKcE.js → ToolsList-CnepUgI-.js} +1 -1
- package/public/assets/{UnifiedToolSelector-CN690ltz.js → UnifiedToolSelector-CnFTY88B.js} +1 -1
- package/public/assets/VersionSettingsPage-D9hYO4VL.js +5 -0
- package/public/assets/{_basePickBy-X3KkSOFK.js → _basePickBy-lvDxpUoY.js} +1 -1
- package/public/assets/{_baseUniq-cv9EC14t.js → _baseUniq-DyqfOLmW.js} +1 -1
- package/public/assets/{agents-DfHGzNHW.js → agents-DmLFhp96.js} +1 -1
- package/public/assets/arc-DuR7lLva.js +1 -0
- package/public/assets/{architectureDiagram-VXUJARFQ-CMo92Xcm.js → architectureDiagram-VXUJARFQ-CkKlTxxx.js} +1 -1
- package/public/assets/{blockDiagram-VD42YOAC-CSewaHod.js → blockDiagram-VD42YOAC-DdR02awp.js} +1 -1
- package/public/assets/{c4Diagram-YG6GDRKO-D4-A7anv.js → c4Diagram-YG6GDRKO-MlkMVL2r.js} +1 -1
- package/public/assets/channel-DHM1jRJ0.js +1 -0
- package/public/assets/{chunk-4BX2VUAB-CKW-jgB1.js → chunk-4BX2VUAB-BI02zXQl.js} +1 -1
- package/public/assets/{chunk-55IACEB6-Bh_iEZAg.js → chunk-55IACEB6-DtWZPbH-.js} +1 -1
- package/public/assets/{chunk-B4BG7PRW-CGcWESsJ.js → chunk-B4BG7PRW-yLeRKRZl.js} +1 -1
- package/public/assets/{chunk-DI55MBZ5-BNQVU-r5.js → chunk-DI55MBZ5-DF-5ELa5.js} +1 -1
- package/public/assets/{chunk-FMBD7UC4-B51X6fKC.js → chunk-FMBD7UC4-BjJNxbrL.js} +1 -1
- package/public/assets/{chunk-QN33PNHL-DadRd0Qs.js → chunk-QN33PNHL-rs7Z3IPT.js} +1 -1
- package/public/assets/{chunk-QZHKN3VN-0AwjBk6f.js → chunk-QZHKN3VN-DoIXOkrg.js} +1 -1
- package/public/assets/{chunk-TZMSLE5B-CIFE5KnY.js → chunk-TZMSLE5B-xkKgCGO2.js} +1 -1
- package/public/assets/classDiagram-2ON5EDUG-BJtIba9N.js +1 -0
- package/public/assets/classDiagram-v2-WZHVMYZB-BJtIba9N.js +1 -0
- package/public/assets/clone-Bbn_OKGL.js +1 -0
- package/public/assets/{cose-bilkent-S5V4N54A-BPWEQsNm.js → cose-bilkent-S5V4N54A-BIz6tY7t.js} +1 -1
- package/public/assets/{dagre-6UL2VRFP-Cu-RCZe5.js → dagre-6UL2VRFP-CponDeYZ.js} +1 -1
- package/public/assets/{diagram-PSM6KHXK-DBfl10yA.js → diagram-PSM6KHXK-D31S6iiK.js} +1 -1
- package/public/assets/{diagram-QEK2KX5R-CXLsPBvR.js → diagram-QEK2KX5R-C6RWP-cs.js} +1 -1
- package/public/assets/{diagram-S2PKOQOG-BjaXE_9W.js → diagram-S2PKOQOG-BKs_7af1.js} +1 -1
- package/public/assets/{erDiagram-Q2GNP2WA-BPkK30VB.js → erDiagram-Q2GNP2WA-Ro9hB6-s.js} +1 -1
- package/public/assets/{flowDiagram-NV44I4VS-i4BoJF1x.js → flowDiagram-NV44I4VS-IKSFEVlB.js} +1 -1
- package/public/assets/{ganttDiagram-LVOFAZNH-C7Fa9LKl.js → ganttDiagram-LVOFAZNH-CPDNSzAq.js} +1 -1
- package/public/assets/{gitGraphDiagram-NY62KEGX-x4fV46FC.js → gitGraphDiagram-NY62KEGX-c_yb5ztL.js} +1 -1
- package/public/assets/{graph-Bj4qRtTX.js → graph-BoMdSZEp.js} +1 -1
- package/public/assets/index-BUj-AMWq.js +297 -0
- package/public/assets/index-CEBbr0XW.css +1 -0
- package/public/assets/infoDiagram-F6ZHWCRC-904Ek2Zh.js +2 -0
- package/public/assets/{journeyDiagram-XKPGCS4Q-BByZuK2D.js → journeyDiagram-XKPGCS4Q-D4izttrO.js} +1 -1
- package/public/assets/{kanban-definition-3W4ZIXB7-BW-KJqNN.js → kanban-definition-3W4ZIXB7-DE7WCrea.js} +1 -1
- package/public/assets/{layout-BIkzRvdA.js → layout-BezNHWMi.js} +1 -1
- package/public/assets/{linear-CY3SKQlQ.js → linear-KRX5ckNK.js} +1 -1
- package/public/assets/{mindmap-definition-VGOIOE7T-CIjq8dul.js → mindmap-definition-VGOIOE7T-Dlr09KqO.js} +1 -1
- package/public/assets/{pieDiagram-ADFJNKIX-CYrXbDgB.js → pieDiagram-ADFJNKIX-Bbzzfu-z.js} +2 -2
- package/public/assets/{quadrantDiagram-AYHSOK5B-zshqcC4H.js → quadrantDiagram-AYHSOK5B-DubsKDPG.js} +1 -1
- package/public/assets/{requirementDiagram-UZGBJVZJ-Eykzktn0.js → requirementDiagram-UZGBJVZJ-B-rG6Gty.js} +1 -1
- package/public/assets/{sankeyDiagram-TZEHDZUN-CUUZTWXT.js → sankeyDiagram-TZEHDZUN-DU7Rgr_5.js} +1 -1
- package/public/assets/{sequenceDiagram-WL72ISMW-u-TgVaJG.js → sequenceDiagram-WL72ISMW-BRlH6dPX.js} +1 -1
- package/public/assets/stateDiagram-FKZM4ZOC-BeAzs0_-.js +1 -0
- package/public/assets/stateDiagram-v2-4FDKWEC3-C0c8d9Xs.js +1 -0
- package/public/assets/{table-DUC-Ijtn.js → table-aqcpYX4Z.js} +1 -1
- package/public/assets/{timeline-definition-IT6M3QCI-CJpXtgDn.js → timeline-definition-IT6M3QCI-BU_B1RmT.js} +1 -1
- package/public/assets/{tools-CljQNVZC.js → tools-XV29tg8x.js} +1 -1
- package/public/assets/{treemap-KMMF4GRG-BHfi2-Z-.js → treemap-KMMF4GRG-CP2M7QfX.js} +1 -1
- package/public/assets/{ui-components-umMeMlgF.js → ui-components-ND8WdSiV.js} +135 -120
- package/public/assets/{useAgents-Cc9gZfER.js → useAgents-COcSvqDE.js} +1 -1
- package/public/assets/{useClaudeVersions-oq1-p4ja.js → useClaudeVersions-C8b4adpW.js} +1 -1
- package/public/assets/{useCommands-CgIOltx6.js → useCommands-D79pjz3C.js} +1 -1
- package/public/assets/{useProjects-B1Ip38ES.js → useProjects-CP0Q5-jg.js} +1 -1
- package/public/assets/{useSessions-Dl3mKnA7.js → useSessions-C2gXprHI.js} +1 -1
- package/public/assets/{xychartDiagram-PRI3JC2R-DrK8IYgl.js → xychartDiagram-PRI3JC2R-OdQKUqyr.js} +1 -1
- package/public/index.html +5 -5
- package/routes/a2a.d.ts.map +1 -1
- package/routes/a2a.js +84 -26
- package/routes/a2a.js.map +1 -1
- package/routes/agents.js +2 -2
- package/routes/agents.js.map +1 -1
- package/routes/projects.d.ts.map +1 -1
- package/routes/projects.js +35 -3
- package/routes/projects.js.map +1 -1
- package/routes/scheduledTasks.d.ts.map +1 -1
- package/routes/scheduledTasks.js +68 -2
- package/routes/scheduledTasks.js.map +1 -1
- package/routes/taskExecutor.d.ts +9 -0
- package/routes/taskExecutor.d.ts.map +1 -0
- package/routes/taskExecutor.js +224 -0
- package/routes/taskExecutor.js.map +1 -0
- package/routes/version.d.ts +4 -0
- package/routes/version.d.ts.map +1 -0
- package/routes/version.js +216 -0
- package/routes/version.js.map +1 -0
- package/schemas/a2a.d.ts +106 -18
- package/schemas/a2a.d.ts.map +1 -1
- package/schemas/a2a.js +17 -1
- package/schemas/a2a.js.map +1 -1
- package/services/__tests__/sessionConcurrency.test.d.ts +7 -0
- package/services/__tests__/sessionConcurrency.test.d.ts.map +1 -0
- package/services/__tests__/sessionConcurrency.test.js +110 -0
- package/services/__tests__/sessionConcurrency.test.js.map +1 -0
- package/services/__tests__/slackAIService.test.js +10 -8
- package/services/__tests__/slackAIService.test.js.map +1 -1
- package/services/a2a/__tests__/agentCardService.test.js +1 -1
- package/services/a2a/__tests__/agentCardService.test.js.map +1 -1
- package/services/a2a/__tests__/webhookService.test.d.ts +6 -0
- package/services/a2a/__tests__/webhookService.test.d.ts.map +1 -0
- package/services/a2a/__tests__/webhookService.test.js +196 -0
- package/services/a2a/__tests__/webhookService.test.js.map +1 -0
- package/services/a2a/a2aClientTool.d.ts +2 -2
- package/services/a2a/a2aClientTool.d.ts.map +1 -1
- package/services/a2a/a2aClientTool.js +5 -3
- package/services/a2a/a2aClientTool.js.map +1 -1
- package/services/a2a/a2aIntegration.d.ts +2 -1
- package/services/a2a/a2aIntegration.d.ts.map +1 -1
- package/services/a2a/a2aIntegration.js +3 -2
- package/services/a2a/a2aIntegration.js.map +1 -1
- package/services/a2a/a2aSdkMcp.d.ts +2 -1
- package/services/a2a/a2aSdkMcp.d.ts.map +1 -1
- package/services/a2a/a2aSdkMcp.js +4 -1
- package/services/a2a/a2aSdkMcp.js.map +1 -1
- package/services/a2a/taskManager.d.ts +2 -1
- package/services/a2a/taskManager.d.ts.map +1 -1
- package/services/a2a/taskManager.js +3 -1
- package/services/a2a/taskManager.js.map +1 -1
- package/services/a2a/webhookService.d.ts +30 -0
- package/services/a2a/webhookService.d.ts.map +1 -0
- package/services/a2a/webhookService.js +113 -0
- package/services/a2a/webhookService.js.map +1 -0
- package/services/claudeSession.d.ts +6 -0
- package/services/claudeSession.d.ts.map +1 -1
- package/services/claudeSession.js +23 -1
- package/services/claudeSession.js.map +1 -1
- package/services/mcpAdmin/__tests__/providerTools.test.d.ts +7 -0
- package/services/mcpAdmin/__tests__/providerTools.test.d.ts.map +1 -0
- package/services/mcpAdmin/__tests__/providerTools.test.js +258 -0
- package/services/mcpAdmin/__tests__/providerTools.test.js.map +1 -0
- package/services/mcpAdmin/__tests__/tools.test.js +21 -3
- package/services/mcpAdmin/__tests__/tools.test.js.map +1 -1
- package/services/mcpAdmin/tools/agentTools.d.ts.map +1 -1
- package/services/mcpAdmin/tools/agentTools.js +4 -11
- package/services/mcpAdmin/tools/agentTools.js.map +1 -1
- package/services/mcpAdmin/tools/index.d.ts +1 -0
- package/services/mcpAdmin/tools/index.d.ts.map +1 -1
- package/services/mcpAdmin/tools/index.js +5 -1
- package/services/mcpAdmin/tools/index.js.map +1 -1
- package/services/mcpAdmin/tools/projectTools.d.ts.map +1 -1
- package/services/mcpAdmin/tools/projectTools.js +30 -1
- package/services/mcpAdmin/tools/projectTools.js.map +1 -1
- package/services/mcpAdmin/tools/providerTools.d.ts +40 -0
- package/services/mcpAdmin/tools/providerTools.d.ts.map +1 -0
- package/services/mcpAdmin/tools/providerTools.js +581 -0
- package/services/mcpAdmin/tools/providerTools.js.map +1 -0
- package/services/projectMetadataStorage.d.ts +1 -1
- package/services/projectMetadataStorage.d.ts.map +1 -1
- package/services/projectMetadataStorage.js.map +1 -1
- package/services/scheduledTaskStorage.d.ts +11 -0
- package/services/scheduledTaskStorage.d.ts.map +1 -1
- package/services/scheduledTaskStorage.js +66 -0
- package/services/scheduledTaskStorage.js.map +1 -1
- package/services/schedulerService.d.ts +10 -0
- package/services/schedulerService.d.ts.map +1 -1
- package/services/schedulerService.js +71 -224
- package/services/schedulerService.js.map +1 -1
- package/services/sessionManager.d.ts +6 -0
- package/services/sessionManager.d.ts.map +1 -1
- package/services/sessionManager.js +12 -0
- package/services/sessionManager.js.map +1 -1
- package/services/slackAIService.d.ts.map +1 -1
- package/services/slackAIService.js +39 -14
- package/services/slackAIService.js.map +1 -1
- package/services/taskExecutor/BuiltinExecutor.d.ts +44 -0
- package/services/taskExecutor/BuiltinExecutor.d.ts.map +1 -0
- package/services/taskExecutor/BuiltinExecutor.js +513 -0
- package/services/taskExecutor/BuiltinExecutor.js.map +1 -0
- package/services/taskExecutor/__tests__/a2a-tasks.test.d.ts +7 -0
- package/services/taskExecutor/__tests__/a2a-tasks.test.d.ts.map +1 -0
- package/services/taskExecutor/__tests__/a2a-tasks.test.js +328 -0
- package/services/taskExecutor/__tests__/a2a-tasks.test.js.map +1 -0
- package/services/taskExecutor/__tests__/e2e-workflows.test.d.ts +7 -0
- package/services/taskExecutor/__tests__/e2e-workflows.test.d.ts.map +1 -0
- package/services/taskExecutor/__tests__/e2e-workflows.test.js +446 -0
- package/services/taskExecutor/__tests__/e2e-workflows.test.js.map +1 -0
- package/services/taskExecutor/__tests__/error-handling.test.d.ts +7 -0
- package/services/taskExecutor/__tests__/error-handling.test.d.ts.map +1 -0
- package/services/taskExecutor/__tests__/error-handling.test.js +387 -0
- package/services/taskExecutor/__tests__/error-handling.test.js.map +1 -0
- package/services/taskExecutor/__tests__/stress.test.d.ts +7 -0
- package/services/taskExecutor/__tests__/stress.test.d.ts.map +1 -0
- package/services/taskExecutor/__tests__/stress.test.js +329 -0
- package/services/taskExecutor/__tests__/stress.test.js.map +1 -0
- package/services/taskExecutor/__tests__/taskExecutor.integration.test.d.ts +7 -0
- package/services/taskExecutor/__tests__/taskExecutor.integration.test.d.ts.map +1 -0
- package/services/taskExecutor/__tests__/taskExecutor.integration.test.js +205 -0
- package/services/taskExecutor/__tests__/taskExecutor.integration.test.js.map +1 -0
- package/services/taskExecutor/__tests__/timeout-cancellation.test.d.ts +7 -0
- package/services/taskExecutor/__tests__/timeout-cancellation.test.d.ts.map +1 -0
- package/services/taskExecutor/__tests__/timeout-cancellation.test.js +319 -0
- package/services/taskExecutor/__tests__/timeout-cancellation.test.js.map +1 -0
- package/services/taskExecutor/index.d.ts +40 -0
- package/services/taskExecutor/index.d.ts.map +1 -0
- package/services/taskExecutor/index.js +166 -0
- package/services/taskExecutor/index.js.map +1 -0
- package/services/taskExecutor/taskWorker.d.ts +11 -0
- package/services/taskExecutor/taskWorker.d.ts.map +1 -0
- package/services/taskExecutor/taskWorker.js +170 -0
- package/services/taskExecutor/taskWorker.js.map +1 -0
- package/services/taskExecutor/types.d.ts +145 -0
- package/services/taskExecutor/types.d.ts.map +1 -0
- package/services/taskExecutor/types.js +9 -0
- package/services/taskExecutor/types.js.map +1 -0
- package/services/telemetry.d.ts +40 -0
- package/services/telemetry.d.ts.map +1 -0
- package/services/telemetry.js +245 -0
- package/services/telemetry.js.map +1 -0
- package/types/a2a.d.ts +18 -0
- package/types/a2a.d.ts.map +1 -1
- package/types/a2a.js.map +1 -1
- package/types/agents.d.ts +0 -1
- package/types/agents.d.ts.map +1 -1
- package/types/agents.js +0 -1
- package/types/agents.js.map +1 -1
- package/types/projects.d.ts +2 -0
- package/types/projects.d.ts.map +1 -1
- package/types/scheduledTasks.d.ts +4 -0
- package/types/scheduledTasks.d.ts.map +1 -1
- package/types/scheduledTasks.js.map +1 -1
- package/utils/__tests__/claudeUtils.test.js +3 -2
- package/utils/__tests__/claudeUtils.test.js.map +1 -1
- package/utils/__tests__/configResolver.test.d.ts +7 -0
- package/utils/__tests__/configResolver.test.d.ts.map +1 -0
- package/utils/__tests__/configResolver.test.js +211 -0
- package/utils/__tests__/configResolver.test.js.map +1 -0
- package/utils/__tests__/sessionUtils.test.js +2 -1
- package/utils/__tests__/sessionUtils.test.js.map +1 -1
- package/utils/claudeUtils.d.ts +2 -1
- package/utils/claudeUtils.d.ts.map +1 -1
- package/utils/claudeUtils.js +45 -78
- package/utils/claudeUtils.js.map +1 -1
- package/utils/configResolver.d.ts +57 -0
- package/utils/configResolver.d.ts.map +1 -0
- package/utils/configResolver.js +130 -0
- package/utils/configResolver.js.map +1 -0
- package/utils/sessionUtils.d.ts.map +1 -1
- package/utils/sessionUtils.js +5 -0
- package/utils/sessionUtils.js.map +1 -1
- package/public/assets/LandingPage-vFck5FSW.js +0 -1
- package/public/assets/ProjectsPage-C1VMe5nk.js +0 -21
- package/public/assets/ScheduledTasksPage-CkUoeT04.js +0 -1
- package/public/assets/VersionSettingsPage-D_keS5fb.js +0 -5
- package/public/assets/arc-C7I_8kFm.js +0 -1
- package/public/assets/channel-CTPfV_fA.js +0 -1
- package/public/assets/classDiagram-2ON5EDUG-CJDL4zC-.js +0 -1
- package/public/assets/classDiagram-v2-WZHVMYZB-CJDL4zC-.js +0 -1
- package/public/assets/clone-BvAwOIZu.js +0 -1
- package/public/assets/index-CJMPRxKv.css +0 -1
- package/public/assets/index-Dz27wKzJ.js +0 -293
- package/public/assets/infoDiagram-F6ZHWCRC-BdQeovBp.js +0 -2
- package/public/assets/stateDiagram-FKZM4ZOC-L8719ElY.js +0 -1
- package/public/assets/stateDiagram-v2-4FDKWEC3-DTGjtVxm.js +0 -1
package/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAkE9B,QAAA,MAAM,GAAG,EAAE,OAAO,CAAC,OAAmB,CAAC;AAgVvC,eAAe,GAAG,CAAC"}
|
package/index.js
CHANGED
|
@@ -63,12 +63,15 @@ const scheduledTasks_1 = __importDefault(require("./routes/scheduledTasks"));
|
|
|
63
63
|
const mcpAdmin_1 = __importDefault(require("./routes/mcpAdmin"));
|
|
64
64
|
const mcpAdminManagement_1 = __importDefault(require("./routes/mcpAdminManagement"));
|
|
65
65
|
const cloudflareTunnel_1 = __importDefault(require("./routes/cloudflareTunnel"));
|
|
66
|
+
const taskExecutor_1 = __importDefault(require("./routes/taskExecutor"));
|
|
67
|
+
const version_1 = __importDefault(require("./routes/version"));
|
|
66
68
|
const auth_2 = require("./middleware/auth");
|
|
67
69
|
const httpsOnly_1 = require("./middleware/httpsOnly");
|
|
68
70
|
const index_1 = require("./config/index");
|
|
69
71
|
const taskCleanup_1 = require("./services/a2a/taskCleanup");
|
|
70
|
-
const taskTimeoutMonitor_1 = require("./jobs/taskTimeoutMonitor");
|
|
71
72
|
const schedulerService_1 = require("./services/schedulerService");
|
|
73
|
+
const telemetry_1 = require("./services/telemetry");
|
|
74
|
+
const index_js_1 = require("./services/taskExecutor/index.js");
|
|
72
75
|
dotenv_1.default.config();
|
|
73
76
|
// Get version from package.json (works in both dev and npm package mode)
|
|
74
77
|
const getVersion = () => {
|
|
@@ -217,7 +220,20 @@ const app = (0, express_1.default)();
|
|
|
217
220
|
// Static files - serve slides directory
|
|
218
221
|
const slidesDir = await (0, index_1.getSlidesDir)();
|
|
219
222
|
app.use('/slides', express_1.default.static(slidesDir));
|
|
220
|
-
//
|
|
223
|
+
// ============================================================================
|
|
224
|
+
// Initialize Background Services
|
|
225
|
+
// ============================================================================
|
|
226
|
+
// 1. Initialize Task Executor (handles both A2A async tasks and scheduled tasks)
|
|
227
|
+
console.info('[TaskExecutor] Initializing unified task executor...');
|
|
228
|
+
try {
|
|
229
|
+
await (0, index_js_1.initializeTaskExecutor)();
|
|
230
|
+
console.info('[TaskExecutor] Task executor initialized successfully');
|
|
231
|
+
}
|
|
232
|
+
catch (error) {
|
|
233
|
+
console.error('[TaskExecutor] Failed to initialize task executor:', error);
|
|
234
|
+
console.error('[TaskExecutor] Tasks will not be executed. Please check configuration.');
|
|
235
|
+
}
|
|
236
|
+
// 2. A2A Task Lifecycle: Clean up orphaned tasks on startup
|
|
221
237
|
console.info('[A2A] Running orphaned task cleanup...');
|
|
222
238
|
try {
|
|
223
239
|
const cleanedCount = await (0, taskCleanup_1.cleanupOrphanedTasks)();
|
|
@@ -231,15 +247,8 @@ const app = (0, express_1.default)();
|
|
|
231
247
|
catch (error) {
|
|
232
248
|
console.error('[A2A] Error during orphaned task cleanup:', error);
|
|
233
249
|
}
|
|
234
|
-
//
|
|
235
|
-
|
|
236
|
-
try {
|
|
237
|
-
(0, taskTimeoutMonitor_1.startTaskTimeoutMonitor)();
|
|
238
|
-
}
|
|
239
|
-
catch (error) {
|
|
240
|
-
console.error('[A2A] Error starting task timeout monitor:', error);
|
|
241
|
-
}
|
|
242
|
-
// Scheduled Tasks: Initialize scheduler (always initialize, but enable state depends on env var)
|
|
250
|
+
// Note: Task timeout monitor is no longer needed - handled by executor internally
|
|
251
|
+
// 3. Scheduled Tasks: Initialize scheduler (always initialize, but enable state depends on env var)
|
|
243
252
|
const enableSchedulerInitially = process.env.ENABLE_SCHEDULER !== 'false'; // Default to true
|
|
244
253
|
console.info('[Scheduler] Initializing scheduled tasks... (ENABLE_SCHEDULER=' + process.env.ENABLE_SCHEDULER + ', initial enabled=' + enableSchedulerInitially + ')');
|
|
245
254
|
try {
|
|
@@ -332,6 +341,8 @@ const app = (0, express_1.default)();
|
|
|
332
341
|
app.use('/api/scheduled-tasks', auth_2.authMiddleware, scheduledTasks_1.default);
|
|
333
342
|
app.use('/api/mcp-admin-management', auth_2.authMiddleware, mcpAdminManagement_1.default); // MCP Admin management with JWT auth
|
|
334
343
|
app.use('/api/cloudflare-tunnel', auth_2.authMiddleware, cloudflareTunnel_1.default); // Cloudflare Tunnel management
|
|
344
|
+
app.use('/api/task-executor', auth_2.authMiddleware, taskExecutor_1.default);
|
|
345
|
+
app.use('/api/version', auth_2.authMiddleware, version_1.default);
|
|
335
346
|
app.use('/api/media', mediaAuth_1.default); // Media auth endpoints
|
|
336
347
|
app.use('/media', media_1.default); // Remove authMiddleware - media files are now public
|
|
337
348
|
// Error handling
|
|
@@ -347,22 +358,29 @@ const app = (0, express_1.default)();
|
|
|
347
358
|
res.status(404).json({ error: 'Route not found' });
|
|
348
359
|
});
|
|
349
360
|
// Graceful shutdown handler
|
|
350
|
-
const gracefulShutdown = () => {
|
|
361
|
+
const gracefulShutdown = async () => {
|
|
351
362
|
console.info('[System] Shutting down gracefully...');
|
|
352
|
-
// Stop
|
|
363
|
+
// 1. Stop scheduler (no new tasks will be scheduled)
|
|
353
364
|
try {
|
|
354
|
-
(0,
|
|
365
|
+
(0, schedulerService_1.shutdownScheduler)();
|
|
366
|
+
console.info('[Scheduler] Scheduler stopped');
|
|
355
367
|
}
|
|
356
368
|
catch (error) {
|
|
357
|
-
console.error('[
|
|
369
|
+
console.error('[Scheduler] Error shutting down scheduler:', error);
|
|
358
370
|
}
|
|
359
|
-
// Stop
|
|
371
|
+
// 2. Stop task executor (wait for running tasks to complete or timeout)
|
|
360
372
|
try {
|
|
361
|
-
(0,
|
|
373
|
+
await (0, index_js_1.shutdownTaskExecutor)();
|
|
374
|
+
console.info('[TaskExecutor] Task executor stopped');
|
|
362
375
|
}
|
|
363
376
|
catch (error) {
|
|
364
|
-
console.error('[
|
|
377
|
+
console.error('[TaskExecutor] Error shutting down task executor:', error);
|
|
365
378
|
}
|
|
379
|
+
// Shutdown telemetry (async but we don't wait)
|
|
380
|
+
(0, telemetry_1.shutdownTelemetry)().catch((error) => {
|
|
381
|
+
console.error('[Telemetry] Error shutting down telemetry:', error);
|
|
382
|
+
});
|
|
383
|
+
console.info('[System] Shutdown complete');
|
|
366
384
|
// Exit process
|
|
367
385
|
process.exit(0);
|
|
368
386
|
};
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agentstudio",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.28",
|
|
4
4
|
"description": "AgentStudio - AI-powered agent workspace with Claude integration. One command to start your AI agent studio.",
|
|
5
5
|
"main": "index.js",
|
|
6
|
+
"engines": {
|
|
7
|
+
"node": ">=20.0.0"
|
|
8
|
+
},
|
|
6
9
|
"bin": {
|
|
7
10
|
"agentstudio": "bin/agentstudio.js"
|
|
8
11
|
},
|
|
@@ -30,6 +33,7 @@
|
|
|
30
33
|
"js-yaml": "^4.1.0",
|
|
31
34
|
"jsonwebtoken": "^9.0.2",
|
|
32
35
|
"node-cron": "^4.2.1",
|
|
36
|
+
"posthog-node": "^5.21.1",
|
|
33
37
|
"proper-lockfile": "^4.1.2",
|
|
34
38
|
"undici": "^7.16.0",
|
|
35
39
|
"zod": "^3.22.2"
|
|
@@ -57,8 +61,5 @@
|
|
|
57
61
|
],
|
|
58
62
|
"files": [
|
|
59
63
|
"**/*"
|
|
60
|
-
]
|
|
61
|
-
"engines": {
|
|
62
|
-
"node": ">=18.0.0"
|
|
63
|
-
}
|
|
64
|
+
]
|
|
64
65
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{j as e}from"./data-structures-C0h9Oap1.js";import{r as o}from"./monaco-editor-DHKm5-VF.js";import{T as ae,a as re,b as W,c as E,d as te,e as A}from"./table-
|
|
1
|
+
import{j as e}from"./data-structures-C0h9Oap1.js";import{r as o}from"./monaco-editor-DHKm5-VF.js";import{T as ae,a as re,b as W,c as E,d as te,e as A}from"./table-aqcpYX4Z.js";import{u as le,d as ne,e as oe,f as de}from"./useAgents-COcSvqDE.js";import{u as ie}from"./agents-DmLFhp96.js";import{P as ce}from"./ProjectSelector-B1_umywl.js";import{U as xe}from"./UnifiedToolSelector-CnFTY88B.js";import{b as me,a as $}from"./index-BUj-AMWq.js";import{T as K}from"./ToolsList-CnepUgI-.js";import{u as ue}from"./tools-XV29tg8x.js";import{g as ge,v as he,ah as z,J as Y,y as H,r as pe,a2 as be,E as ye,$ as fe,O as je,X as ve}from"./ui-components-ND8WdSiV.js";import"./syntax-highlighting-CnREyncB.js";import"./FileBrowser-Dg9PfXOo.js";const Ne=({value:t,onChange:u,disabled:i=!1})=>{const[h,b]=o.useState(typeof t=="string"?"custom":"preset"),v=n=>{b(n),u(n==="custom"?"":{type:"preset",preset:"claude_code"})},N=n=>{u({type:"preset",preset:t?.preset||"claude_code",append:n})},y=n=>{u(n)};return e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"flex items-center space-x-4",children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300",children:"提示词类型:"}),e.jsxs("div",{className:"flex space-x-2",children:[e.jsx("button",{type:"button",onClick:()=>v("custom"),disabled:i,className:`px-3 py-1 rounded-md text-sm font-medium transition-colors ${h==="custom"?"bg-blue-600 text-white":"bg-gray-200 text-gray-700 hover:bg-gray-300"} ${i?"opacity-50 cursor-not-allowed":""}`,children:"自定义"}),e.jsx("button",{type:"button",onClick:()=>v("preset"),disabled:i,className:`px-3 py-1 rounded-md text-sm font-medium transition-colors ${h==="preset"?"bg-blue-600 text-white":"bg-gray-200 text-gray-700 hover:bg-gray-300"} ${i?"opacity-50 cursor-not-allowed":""}`,children:"预设"})]})]}),h==="custom"&&e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"系统提示词"}),e.jsx("textarea",{value:typeof t=="string"?t:"",onChange:n=>y(n.target.value),disabled:i,rows:8,className:"w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 font-mono text-sm dark:bg-gray-700 dark:text-white",placeholder:"输入助手的系统提示词..."})]}),h==="preset"&&e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"预设类型"}),e.jsx("div",{className:"w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-lg bg-gray-50 dark:bg-gray-700 text-sm dark:text-white",children:"Claude Code 预设 (使用 Claude Code SDK 的默认提示词)"}),e.jsx("p",{className:"mt-1 text-xs text-gray-500 dark:text-gray-400",children:"所有预设都基于 Claude Code SDK 的默认提示词,通过追加内容来定制不同用途"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"追加提示词 (可选)"}),e.jsx("textarea",{value:t?.append||"",onChange:n=>N(n.target.value),disabled:i,rows:4,className:"w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 font-mono text-sm dark:bg-gray-700 dark:text-white",placeholder:"在预设提示词后追加自定义内容..."}),e.jsx("p",{className:"mt-1 text-xs text-gray-500 dark:text-gray-400",children:"这段内容将追加到 Claude Code 默认提示词的后面"})]})]})]})},Ue=()=>{const{t}=ue("pages"),{isMobile:u}=me(),{data:i,isLoading:h}=le(),b=ne(),v=oe(),N=de(),y=ie(),[n,f]=o.useState(null),[a,d]=o.useState({}),[c,k]=o.useState(!1),[J,w]=o.useState(!1),[R,x]=o.useState(null),[T,S]=o.useState(null),[p,X]=o.useState(""),[I,U]=o.useState(!1),[C,D]=o.useState([]),[j,P]=o.useState([]),[B,M]=o.useState(!1),[O,L]=o.useState({}),q=i?.agents||[],F=q.filter(s=>s.name.toLowerCase().includes(p.toLowerCase())||s.description.toLowerCase().includes(p.toLowerCase())),Z=s=>{if(T){const r=new URLSearchParams;r.set("project",s);const l=`/chat/${T.id}?${r.toString()}`;window.open(l,"_blank")}w(!1),S(null)},V=async s=>{try{await b.mutateAsync({agentId:s.id,data:{enabled:!s.enabled}}),y.invalidateQueries({queryKey:["agents"]})}catch(r){console.error("Failed to toggle agent:",r),$(t("agents.errors.toggleFailed"))}},G=s=>{f(s),d(s),k(!1);const r=s.allowedTools?.filter(g=>g.enabled).map(g=>g.name)||[],l=r.filter(g=>!g.startsWith("mcp__")),m=r.filter(g=>g.startsWith("mcp__"));D(l),P(m),M(m.length>0)},_=()=>{const s=q.find(m=>m.id==="general-chat"),r={id:`agent-${Date.now()}`,name:"",description:"",version:"1.0.0",systemPrompt:s?.systemPrompt||`You are a general-purpose AI assistant. You can help with:
|
|
2
2
|
- General questions and conversations
|
|
3
3
|
- Problem-solving and brainstorming
|
|
4
4
|
- Information and explanations
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as s}from"./data-structures-C0h9Oap1.js";import{W as d}from"./monaco-editor-DHKm5-VF.js";import{t as i,
|
|
1
|
+
import{j as s}from"./data-structures-C0h9Oap1.js";import{W as d}from"./monaco-editor-DHKm5-VF.js";import{t as i,h as u}from"./index-BUj-AMWq.js";function c(...o){return i(u(o))}const f=d.forwardRef(({className:o,variant:e="default",size:r="default",...t},n)=>s.jsx("button",{className:c("inline-flex items-center justify-center rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{"bg-primary text-primary-foreground hover:bg-primary/90":e==="default","bg-destructive text-destructive-foreground hover:bg-destructive/90":e==="destructive","border border-input bg-background hover:bg-accent hover:text-accent-foreground":e==="outline","bg-secondary text-secondary-foreground hover:bg-secondary/80":e==="secondary","hover:bg-accent hover:text-accent-foreground":e==="ghost"},{"h-10 px-4 py-2":r==="default","h-9 rounded-md px-3":r==="sm","h-11 rounded-md px-8":r==="lg","h-10 w-10":r==="icon"},o),ref:n,...t}));f.displayName="Button";export{f as B,c};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dagre-6UL2VRFP-
|
|
2
|
-
import{j as p}from"./data-structures-C0h9Oap1.js";import{r as O,g as Au,W as xr}from"./monaco-editor-DHKm5-VF.js";import{o as ig,A as nc,a as ic,u as Nu,h as l1,l as c1,d as u1,p as h1,S as d1}from"./agents-DfHGzNHW.js";import{g as f1,h as p1,i as g1,j as m1,k as x1}from"./useAgents-Cc9gZfER.js";import{u as y1}from"./useSessions-Dl3mKnA7.js";import{u as Ce,B as Ke,T as Ve,b as b1,K as k1,c as w1}from"./tools-CljQNVZC.js";import{m as en,g as od,al as v1,o as C1,a8 as sg,I as sc,aT as ag,aU as og,X as En,k as pi,l as Ps,aq as Sa,L as _a,C as tn,n as Ta,j as ac,Z as Ea,aV as S1,Y as xl,aW as _1,aX as aa,aY as T1,E as E1,aj as lg,au as A1,ar as N1,V as cg,aZ as ld,d as cd,w as Mu,aK as M1,e as ug,aa as ud,S as hd,a_ as L1,ak as hg,a$ as I1,y as $1,v as dg,r as j1,ap as B1,b0 as ks,a2 as fg,i as pg,z as dd,b1 as D1,b2 as fd,u as P1}from"./ui-components-umMeMlgF.js";import{c as R1,i as gg,g as F1,b as mg,j as O1,u as z1}from"./index-Dz27wKzJ.js";import{u as oc,f as lc}from"./useCommands-CgIOltx6.js";import{u as W1}from"./useClaudeVersions-oq1-p4ja.js";import{e as cc,E as uc,F as pd}from"./FileExplorer-DhPt_quM.js";import{c as Fe,h as xg}from"./syntax-highlighting-CnREyncB.js";import{U as Lu}from"./UnifiedToolSelector-CN690ltz.js";import{F as H1}from"./FileBrowser-BvyXd63f.js";import{P as q1}from"./ProjectSelector-Dqm5v8o9.js";const Xe=ig((e,t)=>({currentAgent:null,messages:[],isAiTyping:!1,currentSessionId:null,mcpStatus:{hasError:!1,connectedServers:[],connectionErrors:[],lastError:null,lastErrorDetails:void 0,lastUpdated:void 0},pendingUserQuestion:null,activeA2AStreams:{},sidebarCollapsed:!1,setCurrentAgent:r=>e(n=>({currentAgent:r,...n.currentAgent?.id!==r?.id?{messages:[],isAiTyping:!1,currentSessionId:null}:{}})),addMessage:r=>e(n=>({messages:[...n.messages,{...r,id:`${Date.now()}_${Math.random().toString(36).substr(2,9)}`,timestamp:Date.now(),agentId:n.currentAgent?.id||"unknown",messageParts:[]}]})),updateMessage:(r,n)=>e(i=>({messages:i.messages.map(s=>s.id===r?{...s,...n}:s)})),addTextPartToMessage:(r,n)=>e(i=>({messages:i.messages.map(s=>s.id===r?{...s,messageParts:[...s.messageParts||[],{id:`${Date.now()}_${Math.random().toString(36).substr(2,9)}`,type:"text",content:n,order:(s.messageParts||[]).length}]}:s)})),addThinkingPartToMessage:(r,n)=>e(i=>({messages:i.messages.map(s=>s.id===r?{...s,messageParts:[...s.messageParts||[],{id:`${Date.now()}_${Math.random().toString(36).substr(2,9)}`,type:"thinking",content:n,order:(s.messageParts||[]).length}]}:s)})),updateTextPartInMessage:(r,n,i)=>e(s=>({messages:s.messages.map(a=>a.id===r?{...a,messageParts:a.messageParts?.map(o=>o.type==="text"&&o.id===n?{...o,content:i}:o)}:a)})),updateThinkingPartInMessage:(r,n,i)=>e(s=>({messages:s.messages.map(a=>a.id===r?{...a,messageParts:a.messageParts?.map(o=>o.type==="thinking"&&o.id===n?{...o,content:i}:o)}:a)})),addCompactSummaryPartToMessage:(r,n)=>e(i=>({messages:i.messages.map(s=>s.id===r?{...s,messageParts:[...s.messageParts||[],{id:`${Date.now()}_${Math.random().toString(36).substr(2,9)}`,type:"compactSummary",content:n,order:(s.messageParts||[]).length}]}:s)})),addCommandPartToMessage:(r,n)=>e(i=>({messages:i.messages.map(s=>s.id===r?{...s,messageParts:[...s.messageParts||[],{id:`${Date.now()}_${Math.random().toString(36).substr(2,9)}`,type:"command",content:n,order:(s.messageParts||[]).length}]}:s)})),addToolPartToMessage:(r,n)=>e(i=>({messages:i.messages.map(s=>s.id===r?{...s,messageParts:[...s.messageParts||[],{id:`${Date.now()}_${Math.random().toString(36).substr(2,9)}`,type:"tool",toolData:{...n,id:`${Date.now()}_${Math.random().toString(36).substr(2,9)}`,isExecuting:n.isExecuting??!1},order:(s.messageParts||[]).length}]}:s)})),updateToolPartInMessage:(r,n,i)=>e(s=>({messages:s.messages.map(a=>a.id===r?{...a,messageParts:a.messageParts?.map(o=>o.type==="tool"&&o.toolData?.id===n?{...o,toolData:o.toolData?{...o.toolData,...i}:void 0}:o)}:a)})),interruptAllExecutingTools:()=>e(r=>({messages:r.messages.map(n=>({...n,messageParts:n.messageParts?.map(i=>i.type==="tool"&&i.toolData?.isExecuting?{...i,toolData:{...i.toolData,isExecuting:!1,isInterrupted:!0}}:i)}))})),setAiTyping:r=>e({isAiTyping:r}),setCurrentSessionId:r=>e({currentSessionId:r}),clearMessages:()=>e({messages:[]}),loadSessionMessages:r=>e({messages:r}),updateMcpStatus:r=>e(n=>({mcpStatus:{...n.mcpStatus,...r,lastUpdated:Date.now()}})),clearMcpStatus:()=>e({mcpStatus:{hasError:!1,connectedServers:[],connectionErrors:[],lastError:null,lastErrorDetails:void 0,lastUpdated:void 0}}),setPendingUserQuestion:r=>e({pendingUserQuestion:r}),setA2AStreamStart:(r,n,i)=>e(s=>({activeA2AStreams:{...s.activeA2AStreams,[r]:{sessionId:n,agentUrl:r,message:i,startedAt:Date.now(),isStreaming:!0,events:[]}}})),setA2AStreamEnd:r=>e(n=>{const i=n.activeA2AStreams[r];return i?{activeA2AStreams:{...n.activeA2AStreams,[r]:{...i,isStreaming:!1}}}:n}),addA2AStreamEvent:(r,n)=>e(i=>{const s=i.activeA2AStreams[r];return s?{activeA2AStreams:{...i.activeA2AStreams,[r]:{...s,events:[...s.events,n]}}}:{activeA2AStreams:{...i.activeA2AStreams,[r]:{sessionId:n.sessionId||"",agentUrl:r,message:"",startedAt:Date.now(),isStreaming:!0,events:[n]}}}}),getA2AStreamByUrl:r=>t().activeA2AStreams[r],setSidebarCollapsed:r=>e({sidebarCollapsed:r})}));class et{static instance;static STORAGE_KEY="active_chat_tabs";static WAKEUP_SIGNAL_KEY="tab_wakeup_signal";static WAKEUP_RESPONSE_KEY="tab_wakeup_response";static TAB_TIMEOUT=300*1e3;currentTabId;cleanupInterval;lastKnownSession=null;sessionResumeHistory=[];constructor(){this.currentTabId=this.generateTabId(),this.startCleanupTimer(),this.setupBeforeUnloadHandler(),console.log(`📱 TabManager initialized with ID: ${this.currentTabId}`)}static getInstance(){return et.instance||(et.instance=new et),et.instance}registerCurrentTab(t,r){const n=this.getActiveTabs(),i=this.getTabKey(t,r),s={agentId:t,sessionId:r,url:window.location.href,lastSeen:Date.now(),tabId:this.currentTabId,title:document.title};n[i]=s,this.saveActiveTabs(n),console.log(`📱 Tab registered: ${this.currentTabId} for session ${r}`),this.lastKnownSession={agentId:t,sessionId:r}}updateCurrentTabActivity(t,r){const n=this.getActiveTabs(),i=this.getTabKey(t,r);n[i]&&n[i].tabId===this.currentTabId&&(n[i].lastSeen=Date.now(),n[i].url=window.location.href,n[i].title=document.title,this.saveActiveTabs(n),this.lastKnownSession={agentId:t,sessionId:r})}hasActiveTab(t,r){return this.findActiveTabForSession(t,r)!==null}findActiveTabForSession(t,r){const n=this.getActiveTabs(),i=this.getTabKey(t,r);if(n[i]&&Date.now()-n[i].lastSeen<et.TAB_TIMEOUT)return n[i];for(const[s,a]of Object.entries(n))if(a.agentId===t&&a.sessionId===r){if(Date.now()-a.lastSeen<et.TAB_TIMEOUT)return a;delete n[s],this.saveActiveTabs(n),console.log(`🗑️ Cleaned up expired tab: ${r}`)}return null}async wakeupExistingTab(t,r,n){if(!this.findActiveTabForSession(t,r))return!1;const s={type:"WAKEUP",agentId:t,sessionId:r,requestId:this.generateRequestId(),timestamp:Date.now(),sourceUrl:n||window.location.href};return console.log(`🔔 Sending wakeup signal for session: ${r}`),localStorage.setItem(et.WAKEUP_SIGNAL_KEY,JSON.stringify(s)),new Promise(a=>{const o=setTimeout(()=>{console.log(`⏰ Wakeup timeout for session ${r}`),a(!1)},2e3),c=setInterval(()=>{const u=localStorage.getItem(et.WAKEUP_RESPONSE_KEY);if(u)try{const h=JSON.parse(u);if(h.requestId===s.requestId){clearTimeout(o),localStorage.removeItem(et.WAKEUP_RESPONSE_KEY),console.log(`✅ Tab awakened successfully: ${r}`),a(h.success);return}}catch(h){console.error("Error parsing wakeup response:",h)}},100);setTimeout(()=>clearInterval(c),2e3)})}setupWakeupListener(t,r){const n=s=>{if(s.key===et.WAKEUP_SIGNAL_KEY&&s.newValue)try{const a=JSON.parse(s.newValue);a.type==="WAKEUP"&&a.agentId===t&&a.sessionId===r&&this.handleWakeupSignal(a)}catch(a){console.error("Error handling wakeup signal:",a)}};window.addEventListener("storage",n);const i=setInterval(()=>{const s=localStorage.getItem(et.WAKEUP_SIGNAL_KEY);if(s)try{const a=JSON.parse(s);a.type==="WAKEUP"&&a.agentId===t&&a.sessionId===r&&Date.now()-a.timestamp<5e3&&this.handleWakeupSignal(a)}catch(a){console.error("Error polling wakeup signal:",a)}},500);return console.log(`🎯 Wakeup listener setup for session: ${r}`),()=>{window.removeEventListener("storage",n),clearInterval(i),console.log(`🎯 Wakeup listener cleaned up for session: ${r}`)}}updateCurrentTabSession(t,r,n,i){const s=this.getActiveTabs(),a=this.getTabKey(t,r);s[a]&&s[a].tabId===this.currentTabId&&delete s[a];const o=this.getTabKey(n,i);s[o]={agentId:n,sessionId:i,url:window.location.href,lastSeen:Date.now(),tabId:this.currentTabId,title:document.title},this.saveActiveTabs(s),console.log(`🔄 Tab session updated: ${r} → ${i}`),this.lastKnownSession={agentId:n,sessionId:i}}unregisterCurrentTabSession(t,r){const n=this.getActiveTabs(),i=this.getTabKey(t,r);n[i]&&n[i].tabId===this.currentTabId&&(delete n[i],this.saveActiveTabs(n),console.log(`📤 Unregistered current tab from session: ${r}`)),this.lastKnownSession&&this.lastKnownSession.agentId===t&&this.lastKnownSession.sessionId===r&&(this.lastKnownSession=null)}handleSessionResume(t,r,n){const i=this.getActiveTabs(),s=this.getTabKey(t,r),a=this.getTabKey(t,n);i[s]&&i[s].tabId===this.currentTabId?(delete i[s],i[a]={agentId:t,sessionId:n,url:window.location.href,lastSeen:Date.now(),tabId:this.currentTabId,title:document.title},this.saveActiveTabs(i),console.log(`🔄 Session resumed: ${r} → ${n}`),this.lastKnownSession={agentId:t,sessionId:n}):(this.registerCurrentTab(t,n),console.log(`🆕 Resumed session registered: ${n}`))}recordSessionResume(t,r,n){this.sessionResumeHistory.push({originalSessionId:r,newSessionId:n,timestamp:Date.now(),agentId:t}),this.sessionResumeHistory.length>100&&(this.sessionResumeHistory=this.sessionResumeHistory.slice(-100)),console.log(`📝 Recorded session resume: ${r} → ${n}`)}smartUpdateCurrentTab(){const t=window.location.href,r=this.parseSessionFromUrl(t);if(!r){this.lastKnownSession&&(this.unregisterCurrentTabSession(this.lastKnownSession.agentId,this.lastKnownSession.sessionId),this.lastKnownSession=null);return}const{agentId:n,sessionId:i}=r;if(this.lastKnownSession){const{agentId:s,sessionId:a}=this.lastKnownSession;a!==i||s!==n?this.sessionResumeHistory.find(l=>l.originalSessionId===a&&l.newSessionId===i&&l.agentId===n&&Date.now()-l.timestamp<3e4)?(this.handleSessionResume(n,a,i),console.log(`🔄 Detected session resume via URL: ${a} → ${i}`)):(this.updateCurrentTabSession(s,a,n,i),console.log(`🎯 Regular session switch: ${a} → ${i}`)):this.updateCurrentTabActivity(n,i)}else this.registerCurrentTab(n,i),console.log(`🎯 Initial session register: ${i}`);this.lastKnownSession={agentId:n,sessionId:i}}startSmartMonitoring(){this.smartUpdateCurrentTab();const t=()=>{setTimeout(()=>this.smartUpdateCurrentTab(),100)};window.addEventListener("popstate",t);const r=history.pushState,n=history.replaceState;return history.pushState=function(...i){r.apply(this,i),t()},history.replaceState=function(...i){n.apply(this,i),t()},console.log(`🎯 Smart monitoring started for tab: ${this.currentTabId}`),()=>{window.removeEventListener("popstate",t),history.pushState=r,history.replaceState=n,console.log(`🛑 Smart monitoring stopped for tab: ${this.currentTabId}`)}}handleWakeupSignal(t){console.log(`🔔 Received wakeup signal for session: ${t.sessionId}`);try{if(window.focus(),window.parent&&window.parent!==window&&window.parent.focus(),document.hidden){const n=new MouseEvent("click",{view:window,bubbles:!0,cancelable:!0});document.dispatchEvent(n)}}catch(n){console.log("Focus attempt failed:",n)}this.flashPageTitle(),this.playNotificationSound(),t.sourceUrl&&t.sourceUrl!==window.location.href?this.isSameSession(t.sourceUrl,window.location.href)?(console.log("🎯 URLs point to same session, forcing visibility"),this.makePageVisible()):(console.log(`🔄 Navigating to: ${t.sourceUrl}`),window.history.replaceState(null,"",t.sourceUrl),window.location.reload()):this.makePageVisible();const r={requestId:t.requestId,agentId:t.agentId,sessionId:t.sessionId,success:!0,timestamp:Date.now()};localStorage.setItem(et.WAKEUP_RESPONSE_KEY,JSON.stringify(r)),localStorage.removeItem(et.WAKEUP_SIGNAL_KEY),this.updateCurrentTabActivity(t.agentId,t.sessionId),console.log(`✅ Wakeup signal processed successfully for session: ${t.sessionId}`)}flashPageTitle(){const t=document.title;let r=0;const n=setInterval(()=>{document.title=r%2===0?"🔔 会话已唤起":t,r++,r>6&&(clearInterval(n),document.title=t)},500),i=()=>{clearInterval(n),document.title=t,window.removeEventListener("focus",i)};window.addEventListener("focus",i)}playNotificationSound(){try{const t=new(window.AudioContext||window.webkitAudioContext),r=t.createOscillator(),n=t.createGain();r.connect(n),n.connect(t.destination),r.frequency.setValueAtTime(800,t.currentTime),r.frequency.setValueAtTime(600,t.currentTime+.1),n.gain.setValueAtTime(.1,t.currentTime),n.gain.exponentialRampToValueAtTime(.01,t.currentTime+.2),r.start(t.currentTime),r.stop(t.currentTime+.2)}catch(t){console.log("Audio notification not supported:",t)}}makePageVisible(){try{window.scrollTo(0,0),document.fullscreenEnabled&&document.documentElement.requestFullscreen?.()?.then(()=>{setTimeout(()=>{document.exitFullscreen?.()},100)}).catch(n=>console.log("Fullscreen toggle failed:",n));const t=document.createElement("div");t.style.cssText=`
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dagre-6UL2VRFP-CponDeYZ.js","assets/graph-BoMdSZEp.js","assets/_baseUniq-DyqfOLmW.js","assets/layout-BezNHWMi.js","assets/_basePickBy-lvDxpUoY.js","assets/clone-Bbn_OKGL.js","assets/data-structures-C0h9Oap1.js","assets/monaco-editor-DHKm5-VF.js","assets/syntax-highlighting-CnREyncB.js","assets/agents-DmLFhp96.js","assets/tools-XV29tg8x.js","assets/ui-components-ND8WdSiV.js","assets/agents-DwCY2K8p.css","assets/useAgents-COcSvqDE.js","assets/useSessions-C2gXprHI.js","assets/index-BUj-AMWq.js","assets/index-CEBbr0XW.css","assets/useCommands-D79pjz3C.js","assets/useClaudeVersions-C8b4adpW.js","assets/FileExplorer-B7BFy0Tu.js","assets/UnifiedToolSelector-CnFTY88B.js","assets/FileBrowser-Dg9PfXOo.js","assets/ProjectSelector-B1_umywl.js","assets/cose-bilkent-S5V4N54A-BIz6tY7t.js","assets/cytoscape.esm-DtBltrT8.js","assets/c4Diagram-YG6GDRKO-MlkMVL2r.js","assets/chunk-TZMSLE5B-xkKgCGO2.js","assets/flowDiagram-NV44I4VS-IKSFEVlB.js","assets/chunk-FMBD7UC4-BjJNxbrL.js","assets/chunk-55IACEB6-DtWZPbH-.js","assets/chunk-QN33PNHL-rs7Z3IPT.js","assets/channel-DHM1jRJ0.js","assets/erDiagram-Q2GNP2WA-Ro9hB6-s.js","assets/gitGraphDiagram-NY62KEGX-c_yb5ztL.js","assets/chunk-4BX2VUAB-BI02zXQl.js","assets/chunk-QZHKN3VN-DoIXOkrg.js","assets/treemap-KMMF4GRG-CP2M7QfX.js","assets/ganttDiagram-LVOFAZNH-CPDNSzAq.js","assets/linear-KRX5ckNK.js","assets/init-Gi6I4Gst.js","assets/defaultLocale-C4B-KCzX.js","assets/infoDiagram-F6ZHWCRC-904Ek2Zh.js","assets/pieDiagram-ADFJNKIX-Bbzzfu-z.js","assets/arc-DuR7lLva.js","assets/ordinal-Cboi1Yqb.js","assets/quadrantDiagram-AYHSOK5B-DubsKDPG.js","assets/xychartDiagram-PRI3JC2R-OdQKUqyr.js","assets/requirementDiagram-UZGBJVZJ-B-rG6Gty.js","assets/sequenceDiagram-WL72ISMW-BRlH6dPX.js","assets/classDiagram-2ON5EDUG-BJtIba9N.js","assets/chunk-B4BG7PRW-yLeRKRZl.js","assets/classDiagram-v2-WZHVMYZB-BJtIba9N.js","assets/stateDiagram-FKZM4ZOC-BeAzs0_-.js","assets/chunk-DI55MBZ5-DF-5ELa5.js","assets/stateDiagram-v2-4FDKWEC3-C0c8d9Xs.js","assets/journeyDiagram-XKPGCS4Q-D4izttrO.js","assets/timeline-definition-IT6M3QCI-BU_B1RmT.js","assets/mindmap-definition-VGOIOE7T-Dlr09KqO.js","assets/kanban-definition-3W4ZIXB7-DE7WCrea.js","assets/sankeyDiagram-TZEHDZUN-DU7Rgr_5.js","assets/diagram-S2PKOQOG-BKs_7af1.js","assets/diagram-QEK2KX5R-C6RWP-cs.js","assets/blockDiagram-VD42YOAC-DdR02awp.js","assets/architectureDiagram-VXUJARFQ-CkKlTxxx.js","assets/diagram-PSM6KHXK-D31S6iiK.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{j as p}from"./data-structures-C0h9Oap1.js";import{r as O,g as Au,W as xr}from"./monaco-editor-DHKm5-VF.js";import{o as ig,A as nc,a as ic,u as Nu,h as l1,l as c1,d as u1,p as h1,S as d1}from"./agents-DmLFhp96.js";import{g as f1,h as p1,i as g1,j as m1,k as x1}from"./useAgents-COcSvqDE.js";import{u as y1}from"./useSessions-C2gXprHI.js";import{u as Ce,B as Ke,T as Ve,b as b1,K as k1,c as w1}from"./tools-XV29tg8x.js";import{m as en,g as od,aq as v1,o as C1,aa as sg,I as sc,aW as ag,aX as og,X as En,k as pi,l as Ps,av as Sa,L as _a,C as tn,n as Ta,j as ac,Z as Ea,aY as S1,Y as xl,aZ as _1,a_ as aa,a$ as T1,E as E1,ao as lg,az as A1,aw as N1,V as cg,b0 as ld,d as cd,w as Mu,a9 as M1,e as ug,ag as ud,S as hd,b1 as L1,ap as hg,b2 as I1,y as $1,v as dg,r as j1,au as B1,b3 as ks,a2 as fg,i as pg,z as dd,b4 as D1,b5 as fd,u as P1}from"./ui-components-ND8WdSiV.js";import{c as R1,m as gg,k as F1,b as mg,n as O1,u as z1}from"./index-BUj-AMWq.js";import{u as oc,f as lc}from"./useCommands-D79pjz3C.js";import{u as W1}from"./useClaudeVersions-C8b4adpW.js";import{e as cc,E as uc,F as pd}from"./FileExplorer-B7BFy0Tu.js";import{c as Fe,h as xg}from"./syntax-highlighting-CnREyncB.js";import{U as Lu}from"./UnifiedToolSelector-CnFTY88B.js";import{F as H1}from"./FileBrowser-Dg9PfXOo.js";import{P as q1}from"./ProjectSelector-B1_umywl.js";const Xe=ig((e,t)=>({currentAgent:null,messages:[],isAiTyping:!1,currentSessionId:null,mcpStatus:{hasError:!1,connectedServers:[],connectionErrors:[],lastError:null,lastErrorDetails:void 0,lastUpdated:void 0},pendingUserQuestion:null,activeA2AStreams:{},sidebarCollapsed:!1,setCurrentAgent:r=>e(n=>({currentAgent:r,...n.currentAgent?.id!==r?.id?{messages:[],isAiTyping:!1,currentSessionId:null}:{}})),addMessage:r=>e(n=>({messages:[...n.messages,{...r,id:`${Date.now()}_${Math.random().toString(36).substr(2,9)}`,timestamp:Date.now(),agentId:n.currentAgent?.id||"unknown",messageParts:[]}]})),updateMessage:(r,n)=>e(i=>({messages:i.messages.map(s=>s.id===r?{...s,...n}:s)})),addTextPartToMessage:(r,n)=>e(i=>({messages:i.messages.map(s=>s.id===r?{...s,messageParts:[...s.messageParts||[],{id:`${Date.now()}_${Math.random().toString(36).substr(2,9)}`,type:"text",content:n,order:(s.messageParts||[]).length}]}:s)})),addThinkingPartToMessage:(r,n)=>e(i=>({messages:i.messages.map(s=>s.id===r?{...s,messageParts:[...s.messageParts||[],{id:`${Date.now()}_${Math.random().toString(36).substr(2,9)}`,type:"thinking",content:n,order:(s.messageParts||[]).length}]}:s)})),updateTextPartInMessage:(r,n,i)=>e(s=>({messages:s.messages.map(a=>a.id===r?{...a,messageParts:a.messageParts?.map(o=>o.type==="text"&&o.id===n?{...o,content:i}:o)}:a)})),updateThinkingPartInMessage:(r,n,i)=>e(s=>({messages:s.messages.map(a=>a.id===r?{...a,messageParts:a.messageParts?.map(o=>o.type==="thinking"&&o.id===n?{...o,content:i}:o)}:a)})),addCompactSummaryPartToMessage:(r,n)=>e(i=>({messages:i.messages.map(s=>s.id===r?{...s,messageParts:[...s.messageParts||[],{id:`${Date.now()}_${Math.random().toString(36).substr(2,9)}`,type:"compactSummary",content:n,order:(s.messageParts||[]).length}]}:s)})),addCommandPartToMessage:(r,n)=>e(i=>({messages:i.messages.map(s=>s.id===r?{...s,messageParts:[...s.messageParts||[],{id:`${Date.now()}_${Math.random().toString(36).substr(2,9)}`,type:"command",content:n,order:(s.messageParts||[]).length}]}:s)})),addToolPartToMessage:(r,n)=>e(i=>({messages:i.messages.map(s=>s.id===r?{...s,messageParts:[...s.messageParts||[],{id:`${Date.now()}_${Math.random().toString(36).substr(2,9)}`,type:"tool",toolData:{...n,id:`${Date.now()}_${Math.random().toString(36).substr(2,9)}`,isExecuting:n.isExecuting??!1},order:(s.messageParts||[]).length}]}:s)})),updateToolPartInMessage:(r,n,i)=>e(s=>({messages:s.messages.map(a=>a.id===r?{...a,messageParts:a.messageParts?.map(o=>o.type==="tool"&&o.toolData?.id===n?{...o,toolData:o.toolData?{...o.toolData,...i}:void 0}:o)}:a)})),interruptAllExecutingTools:()=>e(r=>({messages:r.messages.map(n=>({...n,messageParts:n.messageParts?.map(i=>i.type==="tool"&&i.toolData?.isExecuting?{...i,toolData:{...i.toolData,isExecuting:!1,isInterrupted:!0}}:i)}))})),setAiTyping:r=>e({isAiTyping:r}),setCurrentSessionId:r=>e({currentSessionId:r}),clearMessages:()=>e({messages:[]}),loadSessionMessages:r=>e({messages:r}),updateMcpStatus:r=>e(n=>({mcpStatus:{...n.mcpStatus,...r,lastUpdated:Date.now()}})),clearMcpStatus:()=>e({mcpStatus:{hasError:!1,connectedServers:[],connectionErrors:[],lastError:null,lastErrorDetails:void 0,lastUpdated:void 0}}),setPendingUserQuestion:r=>e({pendingUserQuestion:r}),setA2AStreamStart:(r,n,i)=>e(s=>({activeA2AStreams:{...s.activeA2AStreams,[r]:{sessionId:n,agentUrl:r,message:i,startedAt:Date.now(),isStreaming:!0,events:[]}}})),setA2AStreamEnd:r=>e(n=>{const i=n.activeA2AStreams[r];return i?{activeA2AStreams:{...n.activeA2AStreams,[r]:{...i,isStreaming:!1}}}:n}),addA2AStreamEvent:(r,n)=>e(i=>{const s=i.activeA2AStreams[r];return s?{activeA2AStreams:{...i.activeA2AStreams,[r]:{...s,events:[...s.events,n]}}}:{activeA2AStreams:{...i.activeA2AStreams,[r]:{sessionId:n.sessionId||"",agentUrl:r,message:"",startedAt:Date.now(),isStreaming:!0,events:[n]}}}}),getA2AStreamByUrl:r=>t().activeA2AStreams[r],setSidebarCollapsed:r=>e({sidebarCollapsed:r})}));class et{static instance;static STORAGE_KEY="active_chat_tabs";static WAKEUP_SIGNAL_KEY="tab_wakeup_signal";static WAKEUP_RESPONSE_KEY="tab_wakeup_response";static TAB_TIMEOUT=300*1e3;currentTabId;cleanupInterval;lastKnownSession=null;sessionResumeHistory=[];constructor(){this.currentTabId=this.generateTabId(),this.startCleanupTimer(),this.setupBeforeUnloadHandler(),console.log(`📱 TabManager initialized with ID: ${this.currentTabId}`)}static getInstance(){return et.instance||(et.instance=new et),et.instance}registerCurrentTab(t,r){const n=this.getActiveTabs(),i=this.getTabKey(t,r),s={agentId:t,sessionId:r,url:window.location.href,lastSeen:Date.now(),tabId:this.currentTabId,title:document.title};n[i]=s,this.saveActiveTabs(n),console.log(`📱 Tab registered: ${this.currentTabId} for session ${r}`),this.lastKnownSession={agentId:t,sessionId:r}}updateCurrentTabActivity(t,r){const n=this.getActiveTabs(),i=this.getTabKey(t,r);n[i]&&n[i].tabId===this.currentTabId&&(n[i].lastSeen=Date.now(),n[i].url=window.location.href,n[i].title=document.title,this.saveActiveTabs(n),this.lastKnownSession={agentId:t,sessionId:r})}hasActiveTab(t,r){return this.findActiveTabForSession(t,r)!==null}findActiveTabForSession(t,r){const n=this.getActiveTabs(),i=this.getTabKey(t,r);if(n[i]&&Date.now()-n[i].lastSeen<et.TAB_TIMEOUT)return n[i];for(const[s,a]of Object.entries(n))if(a.agentId===t&&a.sessionId===r){if(Date.now()-a.lastSeen<et.TAB_TIMEOUT)return a;delete n[s],this.saveActiveTabs(n),console.log(`🗑️ Cleaned up expired tab: ${r}`)}return null}async wakeupExistingTab(t,r,n){if(!this.findActiveTabForSession(t,r))return!1;const s={type:"WAKEUP",agentId:t,sessionId:r,requestId:this.generateRequestId(),timestamp:Date.now(),sourceUrl:n||window.location.href};return console.log(`🔔 Sending wakeup signal for session: ${r}`),localStorage.setItem(et.WAKEUP_SIGNAL_KEY,JSON.stringify(s)),new Promise(a=>{const o=setTimeout(()=>{console.log(`⏰ Wakeup timeout for session ${r}`),a(!1)},2e3),c=setInterval(()=>{const u=localStorage.getItem(et.WAKEUP_RESPONSE_KEY);if(u)try{const h=JSON.parse(u);if(h.requestId===s.requestId){clearTimeout(o),localStorage.removeItem(et.WAKEUP_RESPONSE_KEY),console.log(`✅ Tab awakened successfully: ${r}`),a(h.success);return}}catch(h){console.error("Error parsing wakeup response:",h)}},100);setTimeout(()=>clearInterval(c),2e3)})}setupWakeupListener(t,r){const n=s=>{if(s.key===et.WAKEUP_SIGNAL_KEY&&s.newValue)try{const a=JSON.parse(s.newValue);a.type==="WAKEUP"&&a.agentId===t&&a.sessionId===r&&this.handleWakeupSignal(a)}catch(a){console.error("Error handling wakeup signal:",a)}};window.addEventListener("storage",n);const i=setInterval(()=>{const s=localStorage.getItem(et.WAKEUP_SIGNAL_KEY);if(s)try{const a=JSON.parse(s);a.type==="WAKEUP"&&a.agentId===t&&a.sessionId===r&&Date.now()-a.timestamp<5e3&&this.handleWakeupSignal(a)}catch(a){console.error("Error polling wakeup signal:",a)}},500);return console.log(`🎯 Wakeup listener setup for session: ${r}`),()=>{window.removeEventListener("storage",n),clearInterval(i),console.log(`🎯 Wakeup listener cleaned up for session: ${r}`)}}updateCurrentTabSession(t,r,n,i){const s=this.getActiveTabs(),a=this.getTabKey(t,r);s[a]&&s[a].tabId===this.currentTabId&&delete s[a];const o=this.getTabKey(n,i);s[o]={agentId:n,sessionId:i,url:window.location.href,lastSeen:Date.now(),tabId:this.currentTabId,title:document.title},this.saveActiveTabs(s),console.log(`🔄 Tab session updated: ${r} → ${i}`),this.lastKnownSession={agentId:n,sessionId:i}}unregisterCurrentTabSession(t,r){const n=this.getActiveTabs(),i=this.getTabKey(t,r);n[i]&&n[i].tabId===this.currentTabId&&(delete n[i],this.saveActiveTabs(n),console.log(`📤 Unregistered current tab from session: ${r}`)),this.lastKnownSession&&this.lastKnownSession.agentId===t&&this.lastKnownSession.sessionId===r&&(this.lastKnownSession=null)}handleSessionResume(t,r,n){const i=this.getActiveTabs(),s=this.getTabKey(t,r),a=this.getTabKey(t,n);i[s]&&i[s].tabId===this.currentTabId?(delete i[s],i[a]={agentId:t,sessionId:n,url:window.location.href,lastSeen:Date.now(),tabId:this.currentTabId,title:document.title},this.saveActiveTabs(i),console.log(`🔄 Session resumed: ${r} → ${n}`),this.lastKnownSession={agentId:t,sessionId:n}):(this.registerCurrentTab(t,n),console.log(`🆕 Resumed session registered: ${n}`))}recordSessionResume(t,r,n){this.sessionResumeHistory.push({originalSessionId:r,newSessionId:n,timestamp:Date.now(),agentId:t}),this.sessionResumeHistory.length>100&&(this.sessionResumeHistory=this.sessionResumeHistory.slice(-100)),console.log(`📝 Recorded session resume: ${r} → ${n}`)}smartUpdateCurrentTab(){const t=window.location.href,r=this.parseSessionFromUrl(t);if(!r){this.lastKnownSession&&(this.unregisterCurrentTabSession(this.lastKnownSession.agentId,this.lastKnownSession.sessionId),this.lastKnownSession=null);return}const{agentId:n,sessionId:i}=r;if(this.lastKnownSession){const{agentId:s,sessionId:a}=this.lastKnownSession;a!==i||s!==n?this.sessionResumeHistory.find(l=>l.originalSessionId===a&&l.newSessionId===i&&l.agentId===n&&Date.now()-l.timestamp<3e4)?(this.handleSessionResume(n,a,i),console.log(`🔄 Detected session resume via URL: ${a} → ${i}`)):(this.updateCurrentTabSession(s,a,n,i),console.log(`🎯 Regular session switch: ${a} → ${i}`)):this.updateCurrentTabActivity(n,i)}else this.registerCurrentTab(n,i),console.log(`🎯 Initial session register: ${i}`);this.lastKnownSession={agentId:n,sessionId:i}}startSmartMonitoring(){this.smartUpdateCurrentTab();const t=()=>{setTimeout(()=>this.smartUpdateCurrentTab(),100)};window.addEventListener("popstate",t);const r=history.pushState,n=history.replaceState;return history.pushState=function(...i){r.apply(this,i),t()},history.replaceState=function(...i){n.apply(this,i),t()},console.log(`🎯 Smart monitoring started for tab: ${this.currentTabId}`),()=>{window.removeEventListener("popstate",t),history.pushState=r,history.replaceState=n,console.log(`🛑 Smart monitoring stopped for tab: ${this.currentTabId}`)}}handleWakeupSignal(t){console.log(`🔔 Received wakeup signal for session: ${t.sessionId}`);try{if(window.focus(),window.parent&&window.parent!==window&&window.parent.focus(),document.hidden){const n=new MouseEvent("click",{view:window,bubbles:!0,cancelable:!0});document.dispatchEvent(n)}}catch(n){console.log("Focus attempt failed:",n)}this.flashPageTitle(),this.playNotificationSound(),t.sourceUrl&&t.sourceUrl!==window.location.href?this.isSameSession(t.sourceUrl,window.location.href)?(console.log("🎯 URLs point to same session, forcing visibility"),this.makePageVisible()):(console.log(`🔄 Navigating to: ${t.sourceUrl}`),window.history.replaceState(null,"",t.sourceUrl),window.location.reload()):this.makePageVisible();const r={requestId:t.requestId,agentId:t.agentId,sessionId:t.sessionId,success:!0,timestamp:Date.now()};localStorage.setItem(et.WAKEUP_RESPONSE_KEY,JSON.stringify(r)),localStorage.removeItem(et.WAKEUP_SIGNAL_KEY),this.updateCurrentTabActivity(t.agentId,t.sessionId),console.log(`✅ Wakeup signal processed successfully for session: ${t.sessionId}`)}flashPageTitle(){const t=document.title;let r=0;const n=setInterval(()=>{document.title=r%2===0?"🔔 会话已唤起":t,r++,r>6&&(clearInterval(n),document.title=t)},500),i=()=>{clearInterval(n),document.title=t,window.removeEventListener("focus",i)};window.addEventListener("focus",i)}playNotificationSound(){try{const t=new(window.AudioContext||window.webkitAudioContext),r=t.createOscillator(),n=t.createGain();r.connect(n),n.connect(t.destination),r.frequency.setValueAtTime(800,t.currentTime),r.frequency.setValueAtTime(600,t.currentTime+.1),n.gain.setValueAtTime(.1,t.currentTime),n.gain.exponentialRampToValueAtTime(.01,t.currentTime+.2),r.start(t.currentTime),r.stop(t.currentTime+.2)}catch(t){console.log("Audio notification not supported:",t)}}makePageVisible(){try{window.scrollTo(0,0),document.fullscreenEnabled&&document.documentElement.requestFullscreen?.()?.then(()=>{setTimeout(()=>{document.exitFullscreen?.()},100)}).catch(n=>console.log("Fullscreen toggle failed:",n));const t=document.createElement("div");t.style.cssText=`
|
|
3
3
|
position: fixed;
|
|
4
4
|
top: 50%;
|
|
5
5
|
left: 50%;
|
|
@@ -374,8 +374,8 @@ Please report this to https://github.com/markedjs/marked.`,t){let i="<p>An error
|
|
|
374
374
|
node : x:${e.x} y:${e.y} w:${e.width} h:${e.height}`);const n=e.x,i=e.y,s=Math.abs(n-r.x),a=e.width/2;let o=r.x<t.x?a-s:a+s;const l=e.height/2,c=Math.abs(t.y-r.y),u=Math.abs(t.x-r.x);if(Math.abs(i-t.y)*a>Math.abs(n-t.x)*l){let h=r.y<t.y?t.y-l-i:i-l-t.y;o=u*h/c;const d={x:r.x<t.x?r.x+o:r.x-u+o,y:r.y<t.y?r.y+c-h:r.y-c+h};return o===0&&(d.x=t.x,d.y=t.y),u===0&&(d.x=t.x),c===0&&(d.y=t.y),K.debug(`abc89 top/bottom calc, Q ${c}, q ${h}, R ${u}, r ${o}`,d),d}else{r.x<t.x?o=t.x-a-n:o=n-a-t.x;let h=c*o/u,d=r.x<t.x?r.x+u-o:r.x-u+o,f=r.y<t.y?r.y+h:r.y-h;return K.debug(`sides calc abc89, Q ${c}, q ${h}, R ${u}, r ${o}`,{_x:d,_y:f}),o===0&&(d=t.x,f=t.y),u===0&&(d=t.x),c===0&&(f=t.y),{x:d,y:f}}},"intersection"),Tp=x((e,t)=>{K.warn("abc88 cutPathAtIntersect",e,t);let r=[],n=e[0],i=!1;return e.forEach(s=>{if(K.info("abc88 checking point",s,t),!U5(t,s)&&!i){const a=V5(t,n,s);K.debug("abc88 inside",s,n,a),K.debug("abc88 intersection",a,t);let o=!1;r.forEach(l=>{o=o||l.x===a.x&&l.y===a.y}),r.some(l=>l.x===a.x&&l.y===a.y)?K.warn("abc88 no intersect",a,r):r.push(a),i=!0}else K.warn("abc88 outside",s,n),n=s,i||r.push(s)}),K.debug("returning points",r),r},"cutPathAtIntersect");function qk(e){const t=[],r=[];for(let n=1;n<e.length-1;n++){const i=e[n-1],s=e[n],a=e[n+1];(i.x===s.x&&s.y===a.y&&Math.abs(s.x-a.x)>5&&Math.abs(s.y-i.y)>5||i.y===s.y&&s.x===a.x&&Math.abs(s.x-i.x)>5&&Math.abs(s.y-a.y)>5)&&(t.push(s),r.push(n))}return{cornerPoints:t,cornerPointPositions:r}}x(qk,"extractCornerPoints");var Ep=x(function(e,t,r){const n=t.x-e.x,i=t.y-e.y,s=Math.sqrt(n*n+i*i),a=r/s;return{x:t.x-a*n,y:t.y-a*i}},"findAdjacentPoint"),G5=x(function(e){const{cornerPointPositions:t}=qk(e),r=[];for(let n=0;n<e.length;n++)if(t.includes(n)){const i=e[n-1],s=e[n+1],a=e[n],o=Ep(i,a,5),l=Ep(s,a,5),c=l.x-o.x,u=l.y-o.y;r.push(o);const h=Math.sqrt(2)*2;let d={x:a.x,y:a.y};if(Math.abs(s.x-i.x)>10&&Math.abs(s.y-i.y)>=10){K.debug("Corner point fixing",Math.abs(s.x-i.x),Math.abs(s.y-i.y));const f=5;a.x===o.x?d={x:c<0?o.x-f+h:o.x+f-h,y:u<0?o.y-h:o.y+h}:d={x:c<0?o.x-h:o.x+h,y:u<0?o.y-f+h:o.y+f-h}}else K.debug("Corner point skipping fixing",Math.abs(s.x-i.x),Math.abs(s.y-i.y));r.push(d,l)}else r.push(e[n]);return r},"fixCorners"),Y5=x((e,t,r)=>{const n=e-t-r,i=2,s=2,a=i+s,o=Math.floor(n/a),l=Array(o).fill(`${i} ${s}`).join(" ");return`0 ${t} ${l} ${r}`},"generateDashArray"),X5=x(function(e,t,r,n,i,s,a,o=!1){const{handDrawnSeed:l}=Pe();let c=t.points,u=!1;const h=i;var d=s;const f=[];for(const $ in t.cssCompiledStyles)wy($)||f.push(t.cssCompiledStyles[$]);K.debug("UIO intersect check",t.points,d.x,h.x),d.intersect&&h.intersect&&!o&&(c=c.slice(1,t.points.length-1),c.unshift(h.intersect(c[0])),K.debug("Last point UIO",t.start,"-->",t.end,c[c.length-1],d,d.intersect(c[c.length-1])),c.push(d.intersect(c[c.length-1])));const g=btoa(JSON.stringify(c));t.toCluster&&(K.info("to cluster abc88",r.get(t.toCluster)),c=Tp(t.points,r.get(t.toCluster).node),u=!0),t.fromCluster&&(K.debug("from cluster abc88",r.get(t.fromCluster),JSON.stringify(c,null,2)),c=Tp(c.reverse(),r.get(t.fromCluster).node).reverse(),u=!0);let m=c.filter($=>!Number.isNaN($.y));m=G5(m);let b=Da;switch(b=so,t.curve){case"linear":b=so;break;case"basis":b=Da;break;case"cardinal":b=_0;break;case"bumpX":b=k0;break;case"bumpY":b=w0;break;case"catmullRom":b=E0;break;case"monotoneX":b=$0;break;case"monotoneY":b=j0;break;case"natural":b=D0;break;case"step":b=P0;break;case"stepAfter":b=F0;break;case"stepBefore":b=R0;break;default:b=Da}const{x:y,y:k}=G$(t),v=MI().x(y).y(k).curve(b);let S;switch(t.thickness){case"normal":S="edge-thickness-normal";break;case"thick":S="edge-thickness-thick";break;case"invisible":S="edge-thickness-invisible";break;default:S="edge-thickness-normal"}switch(t.pattern){case"solid":S+=" edge-pattern-solid";break;case"dotted":S+=" edge-pattern-dotted";break;case"dashed":S+=" edge-pattern-dashed";break;default:S+=" edge-pattern-solid"}let _,w=t.curve==="rounded"?Uk(Vk(m,t),5):v(m);const E=Array.isArray(t.style)?t.style:[t.style];let I=E.find($=>$?.startsWith("stroke:")),N=!1;if(t.look==="handDrawn"){const $=ae.svg(e);Object.assign([],m);const F=$.path(w,{roughness:.3,seed:l});S+=" transition",_=$e(F).select("path").attr("id",t.id).attr("class"," "+S+(t.classes?" "+t.classes:"")).attr("style",E?E.reduce((P,W)=>P+";"+W,""):"");let L=_.attr("d");_.attr("d",L),e.node().appendChild(_.node())}else{const $=f.join(";"),F=E?E.reduce((te,A)=>te+A+";",""):"";let L="";t.animate&&(L=" edge-animation-fast"),t.animation&&(L=" edge-animation-"+t.animation);const P=($?$+";"+F+";":F)+";"+(E?E.reduce((te,A)=>te+";"+A,""):"");_=e.append("path").attr("d",w).attr("id",t.id).attr("class"," "+S+(t.classes?" "+t.classes:"")+(L??"")).attr("style",P),I=P.match(/stroke:([^;]+)/)?.[1],N=t.animate===!0||!!t.animation||$.includes("animation");const W=_.node(),X=typeof W.getTotalLength=="function"?W.getTotalLength():0,C=qf[t.arrowTypeStart]||0,j=qf[t.arrowTypeEnd]||0;if(t.look==="neo"&&!N){const A=`stroke-dasharray: ${t.pattern==="dotted"||t.pattern==="dashed"?Y5(X,C,j):`0 ${C} ${X-C-j} ${j}`}; stroke-dashoffset: 0;`;_.attr("style",A+_.attr("style"))}}_.attr("data-edge",!0),_.attr("data-et","edge"),_.attr("data-id",t.id),_.attr("data-points",g),t.showPoints&&m.forEach($=>{e.append("circle").style("stroke","red").style("fill","red").attr("r",1).attr("cx",$.x).attr("cy",$.y)});let T="";(Pe().flowchart.arrowMarkerAbsolute||Pe().state.arrowMarkerAbsolute)&&(T=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,T=T.replace(/\(/g,"\\(").replace(/\)/g,"\\)")),K.info("arrowTypeStart",t.arrowTypeStart),K.info("arrowTypeEnd",t.arrowTypeEnd),z5(_,t,T,a,n,I);const M=Math.floor(c.length/2),B=c[M];ur.isLabelCoordinateInPath(B,_.attr("d"))||(u=!0);let R={};return u&&(R.updatedPath=c),R.originalPath=t.points,R},"insertEdge");function Uk(e,t){if(e.length<2)return"";let r="";const n=e.length,i=1e-5;for(let s=0;s<n;s++){const a=e[s],o=e[s-1],l=e[s+1];if(s===0)r+=`M${a.x},${a.y}`;else if(s===n-1)r+=`L${a.x},${a.y}`;else{const c=a.x-o.x,u=a.y-o.y,h=l.x-a.x,d=l.y-a.y,f=Math.hypot(c,u),g=Math.hypot(h,d);if(f<i||g<i){r+=`L${a.x},${a.y}`;continue}const m=c/f,b=u/f,y=h/g,k=d/g,v=m*y+b*k,S=Math.max(-1,Math.min(1,v)),_=Math.acos(S);if(_<i||Math.abs(Math.PI-_)<i){r+=`L${a.x},${a.y}`;continue}const w=Math.min(t/Math.sin(_/2),f/2,g/2),E=a.x-m*w,I=a.y-b*w,N=a.x+y*w,T=a.y+k*w;r+=`L${E},${I}`,r+=`Q${a.x},${a.y} ${N},${T}`}}return r}x(Uk,"generateRoundedPath");function fu(e,t){if(!e||!t)return{angle:0,deltaX:0,deltaY:0};const r=t.x-e.x,n=t.y-e.y;return{angle:Math.atan2(n,r),deltaX:r,deltaY:n}}x(fu,"calculateDeltaAndAngle");function Vk(e,t){const r=e.map(i=>({...i}));if(e.length>=2&&Ct[t.arrowTypeStart]){const i=Ct[t.arrowTypeStart],s=e[0],a=e[1],{angle:o}=fu(s,a),l=i*Math.cos(o),c=i*Math.sin(o);r[0].x=s.x+l,r[0].y=s.y+c}const n=e.length;if(n>=2&&Ct[t.arrowTypeEnd]){const i=Ct[t.arrowTypeEnd],s=e[n-1],a=e[n-2],{angle:o}=fu(a,s),l=i*Math.cos(o),c=i*Math.sin(o);r[n-1].x=s.x-l,r[n-1].y=s.y-c}return r}x(Vk,"applyMarkerOffsetsToPoints");var K5=x((e,t,r,n)=>{t.forEach(i=>{d4[i](e,r,n)})},"insertMarkers"),Q5=x((e,t,r)=>{K.trace("Making markers for ",r),e.append("defs").append("marker").attr("id",r+"_"+t+"-extensionStart").attr("class","marker extension "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),e.append("defs").append("marker").attr("id",r+"_"+t+"-extensionEnd").attr("class","marker extension "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),Z5=x((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-compositionStart").attr("class","marker composition "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id",r+"_"+t+"-compositionEnd").attr("class","marker composition "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),J5=x((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id",r+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),e4=x((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id",r+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),t4=x((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),e.append("defs").append("marker").attr("id",r+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),r4=x((e,t,r)=>{e.append("marker").attr("id",r+"_"+t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),e.append("marker").attr("id",r+"_"+t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"point"),n4=x((e,t,r)=>{e.append("marker").attr("id",r+"_"+t+"-circleEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),e.append("marker").attr("id",r+"_"+t+"-circleStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),i4=x((e,t,r)=>{e.append("marker").attr("id",r+"_"+t+"-crossEnd").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),e.append("marker").attr("id",r+"_"+t+"-crossStart").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),s4=x((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),a4=x((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-onlyOneStart").attr("class","marker onlyOne "+t).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M9,0 L9,18 M15,0 L15,18"),e.append("defs").append("marker").attr("id",r+"_"+t+"-onlyOneEnd").attr("class","marker onlyOne "+t).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M3,0 L3,18 M9,0 L9,18")},"only_one"),o4=x((e,t,r)=>{const n=e.append("defs").append("marker").attr("id",r+"_"+t+"-zeroOrOneStart").attr("class","marker zeroOrOne "+t).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");n.append("circle").attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),n.append("path").attr("d","M9,0 L9,18");const i=e.append("defs").append("marker").attr("id",r+"_"+t+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+t).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),i.append("path").attr("d","M21,0 L21,18")},"zero_or_one"),l4=x((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-oneOrMoreStart").attr("class","marker oneOrMore "+t).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),e.append("defs").append("marker").attr("id",r+"_"+t+"-oneOrMoreEnd").attr("class","marker oneOrMore "+t).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18")},"one_or_more"),c4=x((e,t,r)=>{const n=e.append("defs").append("marker").attr("id",r+"_"+t+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+t).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");n.append("circle").attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),n.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18");const i=e.append("defs").append("marker").attr("id",r+"_"+t+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+t).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),i.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},"zero_or_more"),u4=x((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("path").attr("d",`M0,0
|
|
375
375
|
L20,10
|
|
376
376
|
M20,10
|
|
377
|
-
L0,20`)},"requirement_arrow"),h4=x((e,t,r)=>{const n=e.append("defs").append("marker").attr("id",r+"_"+t+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("g");n.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),n.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),n.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10)},"requirement_contains"),d4={extension:Q5,composition:Z5,aggregation:J5,dependency:e4,lollipop:t4,point:r4,circle:n4,cross:i4,barb:s4,only_one:a4,zero_or_one:o4,one_or_more:l4,zero_or_more:c4,requirement_arrow:u4,requirement_contains:h4},f4=K5,p4={common:Ei,getConfig:_t,insertCluster:v5,insertEdge:X5,insertEdgeLabel:H5,insertMarkers:f4,insertNode:Hk,interpolateToCurve:Ah,labelHelper:xe,log:K,positionEdgeLabel:q5},js={},Gk=x(e=>{for(const t of e)js[t.name]=t},"registerLayoutLoaders"),g4=x(()=>{Gk([{name:"dagre",loader:x(async()=>await Fe(()=>import("./dagre-6UL2VRFP-Cu-RCZe5.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22])),"loader")},{name:"cose-bilkent",loader:x(async()=>await Fe(()=>import("./cose-bilkent-S5V4N54A-BPWEQsNm.js"),__vite__mapDeps([23,24,7,6,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22])),"loader")}])},"registerDefaultLayoutLoaders");g4();var $6=x(async(e,t)=>{if(!(e.layoutAlgorithm in js))throw new Error(`Unknown layout algorithm: ${e.layoutAlgorithm}`);const r=js[e.layoutAlgorithm];return(await r.loader()).render(e,t,p4,{algorithm:r.algorithm})},"render"),j6=x((e="",{fallback:t="dagre"}={})=>{if(e in js)return e;if(t in js)return K.warn(`Layout algorithm ${e} is not registered. Using ${t} as fallback.`),t;throw new Error(`Both layout algorithms ${e} and ${t} are not registered.`)},"getRegisteredLayoutAlgorithm"),Yk="comm",Xk="rule",Kk="decl",m4="@import",x4="@namespace",y4="@keyframes",b4="@layer",Qk=Math.abs,Yh=String.fromCharCode;function Zk(e){return e.trim()}function za(e,t,r){return e.replace(t,r)}function k4(e,t,r){return e.indexOf(t,r)}function si(e,t){return e.charCodeAt(t)|0}function Ci(e,t,r){return e.slice(t,r)}function wr(e){return e.length}function w4(e){return e.length}function va(e,t){return t.push(e),e}var ll=1,Si=1,Jk=0,ir=0,it=0,Ii="";function Xh(e,t,r,n,i,s,a,o){return{value:e,root:t,parent:r,type:n,props:i,children:s,line:ll,column:Si,length:a,return:"",siblings:o}}function v4(){return it}function C4(){return it=ir>0?si(Ii,--ir):0,Si--,it===10&&(Si=1,ll--),it}function fr(){return it=ir<Jk?si(Ii,ir++):0,Si++,it===10&&(Si=1,ll++),it}function Jr(){return si(Ii,ir)}function Wa(){return ir}function cl(e,t){return Ci(Ii,e,t)}function Bs(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function S4(e){return ll=Si=1,Jk=wr(Ii=e),ir=0,[]}function _4(e){return Ii="",e}function ec(e){return Zk(cl(ir-1,pu(e===91?e+2:e===40?e+1:e)))}function T4(e){for(;(it=Jr())&&it<33;)fr();return Bs(e)>2||Bs(it)>3?"":" "}function E4(e,t){for(;--t&&fr()&&!(it<48||it>102||it>57&&it<65||it>70&&it<97););return cl(e,Wa()+(t<6&&Jr()==32&&fr()==32))}function pu(e){for(;fr();)switch(it){case e:return ir;case 34:case 39:e!==34&&e!==39&&pu(it);break;case 40:e===41&&pu(e);break;case 92:fr();break}return ir}function A4(e,t){for(;fr()&&e+it!==57;)if(e+it===84&&Jr()===47)break;return"/*"+cl(t,ir-1)+"*"+Yh(e===47?e:fr())}function N4(e){for(;!Bs(Jr());)fr();return cl(e,ir)}function M4(e){return _4(Ha("",null,null,null,[""],e=S4(e),0,[0],e))}function Ha(e,t,r,n,i,s,a,o,l){for(var c=0,u=0,h=a,d=0,f=0,g=0,m=1,b=1,y=1,k=0,v="",S=i,_=s,w=n,E=v;b;)switch(g=k,k=fr()){case 40:if(g!=108&&si(E,h-1)==58){k4(E+=za(ec(k),"&","&\f"),"&\f",Qk(c?o[c-1]:0))!=-1&&(y=-1);break}case 34:case 39:case 91:E+=ec(k);break;case 9:case 10:case 13:case 32:E+=T4(g);break;case 92:E+=E4(Wa()-1,7);continue;case 47:switch(Jr()){case 42:case 47:va(L4(A4(fr(),Wa()),t,r,l),l),(Bs(g||1)==5||Bs(Jr()||1)==5)&&wr(E)&&Ci(E,-1,void 0)!==" "&&(E+=" ");break;default:E+="/"}break;case 123*m:o[c++]=wr(E)*y;case 125*m:case 59:case 0:switch(k){case 0:case 125:b=0;case 59+u:y==-1&&(E=za(E,/\f/g,"")),f>0&&(wr(E)-h||m===0&&g===47)&&va(f>32?Np(E+";",n,r,h-1,l):Np(za(E," ","")+";",n,r,h-2,l),l);break;case 59:E+=";";default:if(va(w=Ap(E,t,r,c,u,i,o,v,S=[],_=[],h,s),s),k===123)if(u===0)Ha(E,t,w,w,S,s,h,o,_);else{switch(d){case 99:if(si(E,3)===110)break;case 108:if(si(E,2)===97)break;default:u=0;case 100:case 109:case 115:}u?Ha(e,w,w,n&&va(Ap(e,w,w,0,0,i,o,v,i,S=[],h,_),_),i,_,h,o,n?S:_):Ha(E,w,w,w,[""],_,0,o,_)}}c=u=f=0,m=y=1,v=E="",h=a;break;case 58:h=1+wr(E),f=g;default:if(m<1){if(k==123)--m;else if(k==125&&m++==0&&C4()==125)continue}switch(E+=Yh(k),k*m){case 38:y=u>0?1:(E+="\f",-1);break;case 44:o[c++]=(wr(E)-1)*y,y=1;break;case 64:Jr()===45&&(E+=ec(fr())),d=Jr(),u=h=wr(v=E+=N4(Wa())),k++;break;case 45:g===45&&wr(E)==2&&(m=0)}}return s}function Ap(e,t,r,n,i,s,a,o,l,c,u,h){for(var d=i-1,f=i===0?s:[""],g=w4(f),m=0,b=0,y=0;m<n;++m)for(var k=0,v=Ci(e,d+1,d=Qk(b=a[m])),S=e;k<g;++k)(S=Zk(b>0?f[k]+" "+v:za(v,/&\f/g,f[k])))&&(l[y++]=S);return Xh(e,t,r,i===0?Xk:o,l,c,u,h)}function L4(e,t,r,n){return Xh(e,t,r,Yk,Yh(v4()),Ci(e,2,-2),0,n)}function Np(e,t,r,n,i){return Xh(e,t,r,Kk,Ci(e,0,n),Ci(e,n+1,-1),n,i)}function gu(e,t){for(var r="",n=0;n<e.length;n++)r+=t(e[n],n,e,t)||"";return r}function I4(e,t,r,n){switch(e.type){case b4:if(e.children.length)break;case m4:case x4:case Kk:return e.return=e.return||e.value;case Yk:return"";case y4:return e.return=e.value+"{"+gu(e.children,n)+"}";case Xk:if(!wr(e.value=e.props.join(",")))return""}return wr(r=gu(e.children,n))?e.return=e.value+"{"+r+"}":""}var $4=_y(Object.keys,Object),j4=Object.prototype,B4=j4.hasOwnProperty;function D4(e){if(!Zo(e))return $4(e);var t=[];for(var r in Object(e))B4.call(e,r)&&r!="constructor"&&t.push(r);return t}var mu=Fn(Ar,"DataView"),xu=Fn(Ar,"Promise"),yu=Fn(Ar,"Set"),bu=Fn(Ar,"WeakMap"),Mp="[object Map]",P4="[object Object]",Lp="[object Promise]",Ip="[object Set]",$p="[object WeakMap]",jp="[object DataView]",R4=Rn(mu),F4=Rn(Is),O4=Rn(xu),z4=Rn(yu),W4=Rn(bu),bn=Ni;(mu&&bn(new mu(new ArrayBuffer(1)))!=jp||Is&&bn(new Is)!=Mp||xu&&bn(xu.resolve())!=Lp||yu&&bn(new yu)!=Ip||bu&&bn(new bu)!=$p)&&(bn=function(e){var t=Ni(e),r=t==P4?e.constructor:void 0,n=r?Rn(r):"";if(n)switch(n){case R4:return jp;case F4:return Mp;case O4:return Lp;case z4:return Ip;case W4:return $p}return t});var H4="[object Map]",q4="[object Set]",U4=Object.prototype,V4=U4.hasOwnProperty;function Bp(e){if(e==null)return!0;if(Jo(e)&&(bo(e)||typeof e=="string"||typeof e.splice=="function"||Th(e)||Eh(e)||yo(e)))return!e.length;var t=bn(e);if(t==H4||t==q4)return!e.size;if(Zo(e))return!D4(e).length;for(var r in e)if(V4.call(e,r))return!1;return!0}var ew="c4",G4=x(e=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(e),"detector"),Y4=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./c4Diagram-YG6GDRKO-D4-A7anv.js");return{diagram:t}},__vite__mapDeps([25,26,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:ew,diagram:e}},"loader"),X4={id:ew,detector:G4,loader:Y4},K4=X4,tw="flowchart",Q4=x((e,t)=>t?.flowchart?.defaultRenderer==="dagre-wrapper"||t?.flowchart?.defaultRenderer==="elk"?!1:/^\s*graph/.test(e),"detector"),Z4=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./flowDiagram-NV44I4VS-i4BoJF1x.js");return{diagram:t}},__vite__mapDeps([27,28,29,30,31,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:tw,diagram:e}},"loader"),J4={id:tw,detector:Q4,loader:Z4},eP=J4,rw="flowchart-v2",tP=x((e,t)=>t?.flowchart?.defaultRenderer==="dagre-d3"?!1:(t?.flowchart?.defaultRenderer==="elk"&&(t.layout="elk"),/^\s*graph/.test(e)&&t?.flowchart?.defaultRenderer==="dagre-wrapper"?!0:/^\s*flowchart/.test(e)),"detector"),rP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./flowDiagram-NV44I4VS-i4BoJF1x.js");return{diagram:t}},__vite__mapDeps([27,28,29,30,31,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:rw,diagram:e}},"loader"),nP={id:rw,detector:tP,loader:rP},iP=nP,nw="er",sP=x(e=>/^\s*erDiagram/.test(e),"detector"),aP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./erDiagram-Q2GNP2WA-BPkK30VB.js");return{diagram:t}},__vite__mapDeps([32,29,30,31,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:nw,diagram:e}},"loader"),oP={id:nw,detector:sP,loader:aP},lP=oP,iw="gitGraph",cP=x(e=>/^\s*gitGraph/.test(e),"detector"),uP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./gitGraphDiagram-NY62KEGX-x4fV46FC.js");return{diagram:t}},__vite__mapDeps([33,34,35,36,8,7,2,4,5,6,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:iw,diagram:e}},"loader"),hP={id:iw,detector:cP,loader:uP},dP=hP,sw="gantt",fP=x(e=>/^\s*gantt/.test(e),"detector"),pP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./ganttDiagram-LVOFAZNH-C7Fa9LKl.js");return{diagram:t}},__vite__mapDeps([37,7,38,39,40,6,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:sw,diagram:e}},"loader"),gP={id:sw,detector:fP,loader:pP},mP=gP,aw="info",xP=x(e=>/^\s*info/.test(e),"detector"),yP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./infoDiagram-F6ZHWCRC-BdQeovBp.js");return{diagram:t}},__vite__mapDeps([41,36,8,7,2,4,5,6,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:aw,diagram:e}},"loader"),bP={id:aw,detector:xP,loader:yP},ow="pie",kP=x(e=>/^\s*pie/.test(e),"detector"),wP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./pieDiagram-ADFJNKIX-CYrXbDgB.js");return{diagram:t}},__vite__mapDeps([42,34,36,8,7,2,4,5,43,44,39,6,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:ow,diagram:e}},"loader"),vP={id:ow,detector:kP,loader:wP},lw="quadrantChart",CP=x(e=>/^\s*quadrantChart/.test(e),"detector"),SP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./quadrantDiagram-AYHSOK5B-zshqcC4H.js");return{diagram:t}},__vite__mapDeps([45,38,39,40,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:lw,diagram:e}},"loader"),_P={id:lw,detector:CP,loader:SP},TP=_P,cw="xychart",EP=x(e=>/^\s*xychart(-beta)?/.test(e),"detector"),AP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./xychartDiagram-PRI3JC2R-DrK8IYgl.js");return{diagram:t}},__vite__mapDeps([46,39,44,38,40,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:cw,diagram:e}},"loader"),NP={id:cw,detector:EP,loader:AP},MP=NP,uw="requirement",LP=x(e=>/^\s*requirement(Diagram)?/.test(e),"detector"),IP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./requirementDiagram-UZGBJVZJ-Eykzktn0.js");return{diagram:t}},__vite__mapDeps([47,29,30,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:uw,diagram:e}},"loader"),$P={id:uw,detector:LP,loader:IP},jP=$P,hw="sequence",BP=x(e=>/^\s*sequenceDiagram/.test(e),"detector"),DP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./sequenceDiagram-WL72ISMW-u-TgVaJG.js");return{diagram:t}},__vite__mapDeps([48,26,35,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:hw,diagram:e}},"loader"),PP={id:hw,detector:BP,loader:DP},RP=PP,dw="class",FP=x((e,t)=>t?.class?.defaultRenderer==="dagre-wrapper"?!1:/^\s*classDiagram/.test(e),"detector"),OP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./classDiagram-2ON5EDUG-CJDL4zC-.js");return{diagram:t}},__vite__mapDeps([49,50,28,29,30,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:dw,diagram:e}},"loader"),zP={id:dw,detector:FP,loader:OP},WP=zP,fw="classDiagram",HP=x((e,t)=>/^\s*classDiagram/.test(e)&&t?.class?.defaultRenderer==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(e),"detector"),qP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./classDiagram-v2-WZHVMYZB-CJDL4zC-.js");return{diagram:t}},__vite__mapDeps([51,50,28,29,30,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:fw,diagram:e}},"loader"),UP={id:fw,detector:HP,loader:qP},VP=UP,pw="state",GP=x((e,t)=>t?.state?.defaultRenderer==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(e),"detector"),YP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./stateDiagram-FKZM4ZOC-L8719ElY.js");return{diagram:t}},__vite__mapDeps([52,53,29,30,1,2,3,4,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:pw,diagram:e}},"loader"),XP={id:pw,detector:GP,loader:YP},KP=XP,gw="stateDiagram",QP=x((e,t)=>!!(/^\s*stateDiagram-v2/.test(e)||/^\s*stateDiagram/.test(e)&&t?.state?.defaultRenderer==="dagre-wrapper"),"detector"),ZP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./stateDiagram-v2-4FDKWEC3-DTGjtVxm.js");return{diagram:t}},__vite__mapDeps([54,53,29,30,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:gw,diagram:e}},"loader"),JP={id:gw,detector:QP,loader:ZP},eR=JP,mw="journey",tR=x(e=>/^\s*journey/.test(e),"detector"),rR=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./journeyDiagram-XKPGCS4Q-BByZuK2D.js");return{diagram:t}},__vite__mapDeps([55,26,28,43,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:mw,diagram:e}},"loader"),nR={id:mw,detector:tR,loader:rR},iR=nR,sR=x((e,t,r)=>{K.debug(`rendering svg for syntax error
|
|
378
|
-
`);const n=FI(t),i=n.append("g");n.attr("viewBox","0 0 2412 512"),Hm(n,100,512,!0),i.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),i.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),i.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),i.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),i.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),i.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),i.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),i.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${r}`)},"draw"),xw={draw:sR},aR=xw,oR={db:{},renderer:xw,parser:{parse:x(()=>{},"parse")}},lR=oR,yw="flowchart-elk",cR=x((e,t={})=>/^\s*flowchart-elk/.test(e)||/^\s*(flowchart|graph)/.test(e)&&t?.flowchart?.defaultRenderer==="elk"?(t.layout="elk",!0):!1,"detector"),uR=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./flowDiagram-NV44I4VS-
|
|
377
|
+
L0,20`)},"requirement_arrow"),h4=x((e,t,r)=>{const n=e.append("defs").append("marker").attr("id",r+"_"+t+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("g");n.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),n.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),n.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10)},"requirement_contains"),d4={extension:Q5,composition:Z5,aggregation:J5,dependency:e4,lollipop:t4,point:r4,circle:n4,cross:i4,barb:s4,only_one:a4,zero_or_one:o4,one_or_more:l4,zero_or_more:c4,requirement_arrow:u4,requirement_contains:h4},f4=K5,p4={common:Ei,getConfig:_t,insertCluster:v5,insertEdge:X5,insertEdgeLabel:H5,insertMarkers:f4,insertNode:Hk,interpolateToCurve:Ah,labelHelper:xe,log:K,positionEdgeLabel:q5},js={},Gk=x(e=>{for(const t of e)js[t.name]=t},"registerLayoutLoaders"),g4=x(()=>{Gk([{name:"dagre",loader:x(async()=>await Fe(()=>import("./dagre-6UL2VRFP-CponDeYZ.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22])),"loader")},{name:"cose-bilkent",loader:x(async()=>await Fe(()=>import("./cose-bilkent-S5V4N54A-BIz6tY7t.js"),__vite__mapDeps([23,24,7,6,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22])),"loader")}])},"registerDefaultLayoutLoaders");g4();var $6=x(async(e,t)=>{if(!(e.layoutAlgorithm in js))throw new Error(`Unknown layout algorithm: ${e.layoutAlgorithm}`);const r=js[e.layoutAlgorithm];return(await r.loader()).render(e,t,p4,{algorithm:r.algorithm})},"render"),j6=x((e="",{fallback:t="dagre"}={})=>{if(e in js)return e;if(t in js)return K.warn(`Layout algorithm ${e} is not registered. Using ${t} as fallback.`),t;throw new Error(`Both layout algorithms ${e} and ${t} are not registered.`)},"getRegisteredLayoutAlgorithm"),Yk="comm",Xk="rule",Kk="decl",m4="@import",x4="@namespace",y4="@keyframes",b4="@layer",Qk=Math.abs,Yh=String.fromCharCode;function Zk(e){return e.trim()}function za(e,t,r){return e.replace(t,r)}function k4(e,t,r){return e.indexOf(t,r)}function si(e,t){return e.charCodeAt(t)|0}function Ci(e,t,r){return e.slice(t,r)}function wr(e){return e.length}function w4(e){return e.length}function va(e,t){return t.push(e),e}var ll=1,Si=1,Jk=0,ir=0,it=0,Ii="";function Xh(e,t,r,n,i,s,a,o){return{value:e,root:t,parent:r,type:n,props:i,children:s,line:ll,column:Si,length:a,return:"",siblings:o}}function v4(){return it}function C4(){return it=ir>0?si(Ii,--ir):0,Si--,it===10&&(Si=1,ll--),it}function fr(){return it=ir<Jk?si(Ii,ir++):0,Si++,it===10&&(Si=1,ll++),it}function Jr(){return si(Ii,ir)}function Wa(){return ir}function cl(e,t){return Ci(Ii,e,t)}function Bs(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function S4(e){return ll=Si=1,Jk=wr(Ii=e),ir=0,[]}function _4(e){return Ii="",e}function ec(e){return Zk(cl(ir-1,pu(e===91?e+2:e===40?e+1:e)))}function T4(e){for(;(it=Jr())&&it<33;)fr();return Bs(e)>2||Bs(it)>3?"":" "}function E4(e,t){for(;--t&&fr()&&!(it<48||it>102||it>57&&it<65||it>70&&it<97););return cl(e,Wa()+(t<6&&Jr()==32&&fr()==32))}function pu(e){for(;fr();)switch(it){case e:return ir;case 34:case 39:e!==34&&e!==39&&pu(it);break;case 40:e===41&&pu(e);break;case 92:fr();break}return ir}function A4(e,t){for(;fr()&&e+it!==57;)if(e+it===84&&Jr()===47)break;return"/*"+cl(t,ir-1)+"*"+Yh(e===47?e:fr())}function N4(e){for(;!Bs(Jr());)fr();return cl(e,ir)}function M4(e){return _4(Ha("",null,null,null,[""],e=S4(e),0,[0],e))}function Ha(e,t,r,n,i,s,a,o,l){for(var c=0,u=0,h=a,d=0,f=0,g=0,m=1,b=1,y=1,k=0,v="",S=i,_=s,w=n,E=v;b;)switch(g=k,k=fr()){case 40:if(g!=108&&si(E,h-1)==58){k4(E+=za(ec(k),"&","&\f"),"&\f",Qk(c?o[c-1]:0))!=-1&&(y=-1);break}case 34:case 39:case 91:E+=ec(k);break;case 9:case 10:case 13:case 32:E+=T4(g);break;case 92:E+=E4(Wa()-1,7);continue;case 47:switch(Jr()){case 42:case 47:va(L4(A4(fr(),Wa()),t,r,l),l),(Bs(g||1)==5||Bs(Jr()||1)==5)&&wr(E)&&Ci(E,-1,void 0)!==" "&&(E+=" ");break;default:E+="/"}break;case 123*m:o[c++]=wr(E)*y;case 125*m:case 59:case 0:switch(k){case 0:case 125:b=0;case 59+u:y==-1&&(E=za(E,/\f/g,"")),f>0&&(wr(E)-h||m===0&&g===47)&&va(f>32?Np(E+";",n,r,h-1,l):Np(za(E," ","")+";",n,r,h-2,l),l);break;case 59:E+=";";default:if(va(w=Ap(E,t,r,c,u,i,o,v,S=[],_=[],h,s),s),k===123)if(u===0)Ha(E,t,w,w,S,s,h,o,_);else{switch(d){case 99:if(si(E,3)===110)break;case 108:if(si(E,2)===97)break;default:u=0;case 100:case 109:case 115:}u?Ha(e,w,w,n&&va(Ap(e,w,w,0,0,i,o,v,i,S=[],h,_),_),i,_,h,o,n?S:_):Ha(E,w,w,w,[""],_,0,o,_)}}c=u=f=0,m=y=1,v=E="",h=a;break;case 58:h=1+wr(E),f=g;default:if(m<1){if(k==123)--m;else if(k==125&&m++==0&&C4()==125)continue}switch(E+=Yh(k),k*m){case 38:y=u>0?1:(E+="\f",-1);break;case 44:o[c++]=(wr(E)-1)*y,y=1;break;case 64:Jr()===45&&(E+=ec(fr())),d=Jr(),u=h=wr(v=E+=N4(Wa())),k++;break;case 45:g===45&&wr(E)==2&&(m=0)}}return s}function Ap(e,t,r,n,i,s,a,o,l,c,u,h){for(var d=i-1,f=i===0?s:[""],g=w4(f),m=0,b=0,y=0;m<n;++m)for(var k=0,v=Ci(e,d+1,d=Qk(b=a[m])),S=e;k<g;++k)(S=Zk(b>0?f[k]+" "+v:za(v,/&\f/g,f[k])))&&(l[y++]=S);return Xh(e,t,r,i===0?Xk:o,l,c,u,h)}function L4(e,t,r,n){return Xh(e,t,r,Yk,Yh(v4()),Ci(e,2,-2),0,n)}function Np(e,t,r,n,i){return Xh(e,t,r,Kk,Ci(e,0,n),Ci(e,n+1,-1),n,i)}function gu(e,t){for(var r="",n=0;n<e.length;n++)r+=t(e[n],n,e,t)||"";return r}function I4(e,t,r,n){switch(e.type){case b4:if(e.children.length)break;case m4:case x4:case Kk:return e.return=e.return||e.value;case Yk:return"";case y4:return e.return=e.value+"{"+gu(e.children,n)+"}";case Xk:if(!wr(e.value=e.props.join(",")))return""}return wr(r=gu(e.children,n))?e.return=e.value+"{"+r+"}":""}var $4=_y(Object.keys,Object),j4=Object.prototype,B4=j4.hasOwnProperty;function D4(e){if(!Zo(e))return $4(e);var t=[];for(var r in Object(e))B4.call(e,r)&&r!="constructor"&&t.push(r);return t}var mu=Fn(Ar,"DataView"),xu=Fn(Ar,"Promise"),yu=Fn(Ar,"Set"),bu=Fn(Ar,"WeakMap"),Mp="[object Map]",P4="[object Object]",Lp="[object Promise]",Ip="[object Set]",$p="[object WeakMap]",jp="[object DataView]",R4=Rn(mu),F4=Rn(Is),O4=Rn(xu),z4=Rn(yu),W4=Rn(bu),bn=Ni;(mu&&bn(new mu(new ArrayBuffer(1)))!=jp||Is&&bn(new Is)!=Mp||xu&&bn(xu.resolve())!=Lp||yu&&bn(new yu)!=Ip||bu&&bn(new bu)!=$p)&&(bn=function(e){var t=Ni(e),r=t==P4?e.constructor:void 0,n=r?Rn(r):"";if(n)switch(n){case R4:return jp;case F4:return Mp;case O4:return Lp;case z4:return Ip;case W4:return $p}return t});var H4="[object Map]",q4="[object Set]",U4=Object.prototype,V4=U4.hasOwnProperty;function Bp(e){if(e==null)return!0;if(Jo(e)&&(bo(e)||typeof e=="string"||typeof e.splice=="function"||Th(e)||Eh(e)||yo(e)))return!e.length;var t=bn(e);if(t==H4||t==q4)return!e.size;if(Zo(e))return!D4(e).length;for(var r in e)if(V4.call(e,r))return!1;return!0}var ew="c4",G4=x(e=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(e),"detector"),Y4=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./c4Diagram-YG6GDRKO-MlkMVL2r.js");return{diagram:t}},__vite__mapDeps([25,26,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:ew,diagram:e}},"loader"),X4={id:ew,detector:G4,loader:Y4},K4=X4,tw="flowchart",Q4=x((e,t)=>t?.flowchart?.defaultRenderer==="dagre-wrapper"||t?.flowchart?.defaultRenderer==="elk"?!1:/^\s*graph/.test(e),"detector"),Z4=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./flowDiagram-NV44I4VS-IKSFEVlB.js");return{diagram:t}},__vite__mapDeps([27,28,29,30,31,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:tw,diagram:e}},"loader"),J4={id:tw,detector:Q4,loader:Z4},eP=J4,rw="flowchart-v2",tP=x((e,t)=>t?.flowchart?.defaultRenderer==="dagre-d3"?!1:(t?.flowchart?.defaultRenderer==="elk"&&(t.layout="elk"),/^\s*graph/.test(e)&&t?.flowchart?.defaultRenderer==="dagre-wrapper"?!0:/^\s*flowchart/.test(e)),"detector"),rP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./flowDiagram-NV44I4VS-IKSFEVlB.js");return{diagram:t}},__vite__mapDeps([27,28,29,30,31,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:rw,diagram:e}},"loader"),nP={id:rw,detector:tP,loader:rP},iP=nP,nw="er",sP=x(e=>/^\s*erDiagram/.test(e),"detector"),aP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./erDiagram-Q2GNP2WA-Ro9hB6-s.js");return{diagram:t}},__vite__mapDeps([32,29,30,31,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:nw,diagram:e}},"loader"),oP={id:nw,detector:sP,loader:aP},lP=oP,iw="gitGraph",cP=x(e=>/^\s*gitGraph/.test(e),"detector"),uP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./gitGraphDiagram-NY62KEGX-c_yb5ztL.js");return{diagram:t}},__vite__mapDeps([33,34,35,36,8,7,2,4,5,6,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:iw,diagram:e}},"loader"),hP={id:iw,detector:cP,loader:uP},dP=hP,sw="gantt",fP=x(e=>/^\s*gantt/.test(e),"detector"),pP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./ganttDiagram-LVOFAZNH-CPDNSzAq.js");return{diagram:t}},__vite__mapDeps([37,7,38,39,40,6,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:sw,diagram:e}},"loader"),gP={id:sw,detector:fP,loader:pP},mP=gP,aw="info",xP=x(e=>/^\s*info/.test(e),"detector"),yP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./infoDiagram-F6ZHWCRC-904Ek2Zh.js");return{diagram:t}},__vite__mapDeps([41,36,8,7,2,4,5,6,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:aw,diagram:e}},"loader"),bP={id:aw,detector:xP,loader:yP},ow="pie",kP=x(e=>/^\s*pie/.test(e),"detector"),wP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./pieDiagram-ADFJNKIX-Bbzzfu-z.js");return{diagram:t}},__vite__mapDeps([42,34,36,8,7,2,4,5,43,44,39,6,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:ow,diagram:e}},"loader"),vP={id:ow,detector:kP,loader:wP},lw="quadrantChart",CP=x(e=>/^\s*quadrantChart/.test(e),"detector"),SP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./quadrantDiagram-AYHSOK5B-DubsKDPG.js");return{diagram:t}},__vite__mapDeps([45,38,39,40,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:lw,diagram:e}},"loader"),_P={id:lw,detector:CP,loader:SP},TP=_P,cw="xychart",EP=x(e=>/^\s*xychart(-beta)?/.test(e),"detector"),AP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./xychartDiagram-PRI3JC2R-OdQKUqyr.js");return{diagram:t}},__vite__mapDeps([46,39,44,38,40,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:cw,diagram:e}},"loader"),NP={id:cw,detector:EP,loader:AP},MP=NP,uw="requirement",LP=x(e=>/^\s*requirement(Diagram)?/.test(e),"detector"),IP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./requirementDiagram-UZGBJVZJ-B-rG6Gty.js");return{diagram:t}},__vite__mapDeps([47,29,30,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:uw,diagram:e}},"loader"),$P={id:uw,detector:LP,loader:IP},jP=$P,hw="sequence",BP=x(e=>/^\s*sequenceDiagram/.test(e),"detector"),DP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./sequenceDiagram-WL72ISMW-BRlH6dPX.js");return{diagram:t}},__vite__mapDeps([48,26,35,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:hw,diagram:e}},"loader"),PP={id:hw,detector:BP,loader:DP},RP=PP,dw="class",FP=x((e,t)=>t?.class?.defaultRenderer==="dagre-wrapper"?!1:/^\s*classDiagram/.test(e),"detector"),OP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./classDiagram-2ON5EDUG-BJtIba9N.js");return{diagram:t}},__vite__mapDeps([49,50,28,29,30,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:dw,diagram:e}},"loader"),zP={id:dw,detector:FP,loader:OP},WP=zP,fw="classDiagram",HP=x((e,t)=>/^\s*classDiagram/.test(e)&&t?.class?.defaultRenderer==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(e),"detector"),qP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./classDiagram-v2-WZHVMYZB-BJtIba9N.js");return{diagram:t}},__vite__mapDeps([51,50,28,29,30,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:fw,diagram:e}},"loader"),UP={id:fw,detector:HP,loader:qP},VP=UP,pw="state",GP=x((e,t)=>t?.state?.defaultRenderer==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(e),"detector"),YP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./stateDiagram-FKZM4ZOC-BeAzs0_-.js");return{diagram:t}},__vite__mapDeps([52,53,29,30,1,2,3,4,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:pw,diagram:e}},"loader"),XP={id:pw,detector:GP,loader:YP},KP=XP,gw="stateDiagram",QP=x((e,t)=>!!(/^\s*stateDiagram-v2/.test(e)||/^\s*stateDiagram/.test(e)&&t?.state?.defaultRenderer==="dagre-wrapper"),"detector"),ZP=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./stateDiagram-v2-4FDKWEC3-C0c8d9Xs.js");return{diagram:t}},__vite__mapDeps([54,53,29,30,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:gw,diagram:e}},"loader"),JP={id:gw,detector:QP,loader:ZP},eR=JP,mw="journey",tR=x(e=>/^\s*journey/.test(e),"detector"),rR=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./journeyDiagram-XKPGCS4Q-D4izttrO.js");return{diagram:t}},__vite__mapDeps([55,26,28,43,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:mw,diagram:e}},"loader"),nR={id:mw,detector:tR,loader:rR},iR=nR,sR=x((e,t,r)=>{K.debug(`rendering svg for syntax error
|
|
378
|
+
`);const n=FI(t),i=n.append("g");n.attr("viewBox","0 0 2412 512"),Hm(n,100,512,!0),i.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),i.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),i.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),i.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),i.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),i.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),i.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),i.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${r}`)},"draw"),xw={draw:sR},aR=xw,oR={db:{},renderer:xw,parser:{parse:x(()=>{},"parse")}},lR=oR,yw="flowchart-elk",cR=x((e,t={})=>/^\s*flowchart-elk/.test(e)||/^\s*(flowchart|graph)/.test(e)&&t?.flowchart?.defaultRenderer==="elk"?(t.layout="elk",!0):!1,"detector"),uR=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./flowDiagram-NV44I4VS-IKSFEVlB.js");return{diagram:t}},__vite__mapDeps([27,28,29,30,31,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:yw,diagram:e}},"loader"),hR={id:yw,detector:cR,loader:uR},dR=hR,bw="timeline",fR=x(e=>/^\s*timeline/.test(e),"detector"),pR=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./timeline-definition-IT6M3QCI-BU_B1RmT.js");return{diagram:t}},__vite__mapDeps([56,43,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:bw,diagram:e}},"loader"),gR={id:bw,detector:fR,loader:pR},mR=gR,kw="mindmap",xR=x(e=>/^\s*mindmap/.test(e),"detector"),yR=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./mindmap-definition-VGOIOE7T-Dlr09KqO.js");return{diagram:t}},__vite__mapDeps([57,29,30,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:kw,diagram:e}},"loader"),bR={id:kw,detector:xR,loader:yR},kR=bR,ww="kanban",wR=x(e=>/^\s*kanban/.test(e),"detector"),vR=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./kanban-definition-3W4ZIXB7-DE7WCrea.js");return{diagram:t}},__vite__mapDeps([58,28,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:ww,diagram:e}},"loader"),CR={id:ww,detector:wR,loader:vR},SR=CR,vw="sankey",_R=x(e=>/^\s*sankey(-beta)?/.test(e),"detector"),TR=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./sankeyDiagram-TZEHDZUN-DU7Rgr_5.js");return{diagram:t}},__vite__mapDeps([59,44,39,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:vw,diagram:e}},"loader"),ER={id:vw,detector:_R,loader:TR},AR=ER,Cw="packet",NR=x(e=>/^\s*packet(-beta)?/.test(e),"detector"),MR=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./diagram-S2PKOQOG-BKs_7af1.js");return{diagram:t}},__vite__mapDeps([60,34,36,8,7,2,4,5,6,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:Cw,diagram:e}},"loader"),LR={id:Cw,detector:NR,loader:MR},Sw="radar",IR=x(e=>/^\s*radar-beta/.test(e),"detector"),$R=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./diagram-QEK2KX5R-C6RWP-cs.js");return{diagram:t}},__vite__mapDeps([61,34,36,8,7,2,4,5,6,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:Sw,diagram:e}},"loader"),jR={id:Sw,detector:IR,loader:$R},_w="block",BR=x(e=>/^\s*block(-beta)?/.test(e),"detector"),DR=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./blockDiagram-VD42YOAC-DdR02awp.js");return{diagram:t}},__vite__mapDeps([62,28,5,2,1,31,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:_w,diagram:e}},"loader"),PR={id:_w,detector:BR,loader:DR},RR=PR,Tw="architecture",FR=x(e=>/^\s*architecture/.test(e),"detector"),OR=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./architectureDiagram-VXUJARFQ-CkKlTxxx.js");return{diagram:t}},__vite__mapDeps([63,34,36,8,7,2,4,5,24,6,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:Tw,diagram:e}},"loader"),zR={id:Tw,detector:FR,loader:OR},WR=zR,Ew="treemap",HR=x(e=>/^\s*treemap/.test(e),"detector"),qR=x(async()=>{const{diagram:e}=await Fe(async()=>{const{diagram:t}=await import("./diagram-PSM6KHXK-D31S6iiK.js");return{diagram:t}},__vite__mapDeps([64,30,34,36,8,7,2,4,5,40,44,39,6,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));return{id:Ew,diagram:e}},"loader"),UR={id:Ew,detector:HR,loader:qR},Dp=!1,ul=x(()=>{Dp||(Dp=!0,Za("error",lR,e=>e.toLowerCase().trim()==="error"),Za("---",{db:{clear:x(()=>{},"clear")},styles:{},renderer:{draw:x(()=>{},"draw")},parser:{parse:x(()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")},"parse")},init:x(()=>null,"init")},e=>e.toLowerCase().trimStart().startsWith("---")),Tc(dR,kR,WR),Tc(K4,SR,VP,WP,lP,mP,bP,vP,jP,RP,iP,eP,mR,dP,eR,KP,iR,TP,AR,LR,MP,RR,jR,UR))},"addDiagrams"),VR=x(async()=>{K.debug("Loading registered diagrams");const t=(await Promise.allSettled(Object.entries(Nn).map(async([r,{detector:n,loader:i}])=>{if(i)try{Mc(r)}catch{try{const{diagram:s,id:a}=await i();Za(a,s,n)}catch(s){throw K.error(`Failed to load external diagram with key ${r}. Removing from detectors.`),delete Nn[r],s}}}))).filter(r=>r.status==="rejected");if(t.length>0){K.error(`Failed to load ${t.length} external diagrams`);for(const r of t)K.error(r);throw new Error(`Failed to load ${t.length} external diagrams`)}},"loadRegisteredDiagrams"),GR="graphics-document document";function Aw(e,t){e.attr("role",GR),t!==""&&e.attr("aria-roledescription",t)}x(Aw,"setA11yDiagramInfo");function Nw(e,t,r,n){if(e.insert!==void 0){if(r){const i=`chart-desc-${n}`;e.attr("aria-describedby",i),e.insert("desc",":first-child").attr("id",i).text(r)}if(t){const i=`chart-title-${n}`;e.attr("aria-labelledby",i),e.insert("title",":first-child").attr("id",i).text(t)}}}x(Nw,"addSVGa11yTitleDescription");var Tn,ku=(Tn=class{constructor(t,r,n,i,s){this.type=t,this.text=r,this.db=n,this.parser=i,this.renderer=s}static async fromText(t,r={}){const n=_t(),i=Qu(t,n);t=UD(t)+`
|
|
379
379
|
`;try{Mc(i)}catch{const c=gA(i);if(!c)throw new Lm(`Diagram ${i} not found.`);const{id:u,diagram:h}=await c();Za(u,h)}const{db:s,parser:a,renderer:o,init:l}=Mc(i);return a.parser&&(a.parser.yy=s),s.clear?.(),l?.(n),r.title&&s.setDiagramTitle?.(r.title),await a.parse(t),new Tn(i,t,s,a,o)}async render(t,r){await this.renderer.draw(this.text,t,r,this)}getParser(){return this.parser}getType(){return this.type}},x(Tn,"Diagram"),Tn),Pp=[],YR=x(()=>{Pp.forEach(e=>{e()}),Pp=[]},"attachFunctions"),XR=x(e=>e.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart(),"cleanupComments");function Mw(e){const t=e.match(Mm);if(!t)return{text:e,metadata:{}};let r=V$(t[1],{schema:U$})??{};r=typeof r=="object"&&!Array.isArray(r)?r:{};const n={};return r.displayMode&&(n.displayMode=r.displayMode.toString()),r.title&&(n.title=r.title.toString()),r.config&&(n.config=r.config),{text:e.slice(t[0].length),metadata:n}}x(Mw,"extractFrontMatter");var KR=x(e=>e.replace(/\r\n?/g,`
|
|
380
380
|
`).replace(/<(\w+)([^>]*)>/g,(t,r,n)=>"<"+r+n.replace(/="([^"]*)"/g,"='$1'")+">"),"cleanupText"),QR=x(e=>{const{text:t,metadata:r}=Mw(e),{displayMode:n,title:i,config:s={}}=r;return n&&(s.gantt||(s.gantt={}),s.gantt.displayMode=n),{title:i,config:s,text:t}},"processFrontmatter"),ZR=x(e=>{const t=ur.detectInit(e)??{},r=ur.detectDirective(e,"wrap");return Array.isArray(r)?t.wrap=r.some(({type:n})=>n==="wrap"):r?.type==="wrap"&&(t.wrap=!0),{text:ID(e),directive:t}},"processDirectives");function Kh(e){const t=KR(e),r=QR(t),n=ZR(r.text),i=$h(r.config,n.directive);return e=XR(n.text),{code:e,title:r.title,config:i}}x(Kh,"preprocessDiagram");function Lw(e){const t=new TextEncoder().encode(e),r=Array.from(t,n=>String.fromCodePoint(n)).join("");return btoa(r)}x(Lw,"toBase64");var JR=5e4,eF="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",tF="sandbox",rF="loose",nF="http://www.w3.org/2000/svg",iF="http://www.w3.org/1999/xlink",sF="http://www.w3.org/1999/xhtml",aF="100%",oF="100%",lF="border:0;margin:0;",cF="margin:0",uF="allow-top-navigation-by-user-activation allow-popups",hF='The "iframe" tag is not supported by your browser.',dF=["foreignobject"],fF=["dominant-baseline"];function Qh(e){const t=Kh(e);return Ka(),LA(t.config??{}),t}x(Qh,"processAndSetConfigs");async function Iw(e,t){ul();try{const{code:r,config:n}=Qh(e);return{diagramType:(await jw(r)).type,config:n}}catch(r){if(t?.suppressErrors)return!1;throw r}}x(Iw,"parse");var Rp=x((e,t,r=[])=>`
|
|
381
381
|
.${e} ${t} { ${r.join(" !important; ")} !important; }`,"cssImportantStyles"),pF=x((e,t=new Map)=>{let r="";if(e.themeCSS!==void 0&&(r+=`
|
|
@@ -468,4 +468,4 @@ ${wt}`,role:"assistant"}),q(!1);return}w(),h.current.abort(),h.current=null,E(!1
|
|
|
468
468
|
transition-opacity duration-200
|
|
469
469
|
pointer-events-none
|
|
470
470
|
whitespace-nowrap
|
|
471
|
-
`,children:a})]})},RO=({agent:e,projectPath:t,CustomComponent:r})=>{const[n,i]=O.useState(r?"custom":"files"),s=!!r;return p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"h-full bg-white dark:bg-gray-900 overflow-hidden",children:s?p.jsxs(p.Fragment,{children:[p.jsx("div",{className:`h-full ${n==="custom"?"block":"hidden"}`,children:p.jsx(r,{agent:e,projectPath:t})}),p.jsx("div",{className:`h-full ${n==="files"?"block":"hidden"}`,children:p.jsx(pd,{projectPath:t,onFileSelect:a=>{console.log("Selected file:",a)},className:"h-full"})})]}):p.jsx(pd,{projectPath:t,onFileSelect:a=>{console.log("Selected file:",a)},className:"h-full"})}),p.jsx(PO,{currentView:n,onViewChange:i,hasCustomComponent:s,className:"floating-toggle"})]})},FO=({projectPath:e})=>{const{t}=Ce("agents"),{data:r,isLoading:n,error:i}=h1(e),s=Nu(),a=O.useRef({}),o=()=>{s.invalidateQueries({queryKey:["slides",e]}),s.invalidateQueries({queryKey:["slide-content"]}),Object.values(a.current).forEach(c=>{c?.refreshIframe&&c.refreshIframe()})};if(O.useEffect(()=>{const c=u=>{console.log("🔄 Received AI_RESPONSE_COMPLETE event in SlidePreviewPanel:",u),u.projectPath===e&&(console.log("🔄 Auto-refreshing slides after AI response completion"),o())};return cc.on(uc.AI_RESPONSE_COMPLETE,c),()=>{cc.off(uc.AI_RESPONSE_COMPLETE,c)}},[e,s]),n)return p.jsx("div",{className:"flex items-center justify-center h-full",children:p.jsx("div",{className:"text-gray-500",children:t("slidePreview.loading")})});if(i)return p.jsx("div",{className:"flex items-center justify-center h-full",children:p.jsx("div",{className:"text-red-500",children:t("slidePreview.loadError")})});const l=r?.slides||[];return p.jsxs("div",{className:"flex flex-col h-full bg-gray-50 dark:bg-gray-900",children:[p.jsx("div",{className:"h-12 px-5 bg-gray-100 dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700 flex items-center",children:p.jsxs("div",{className:"flex items-center justify-between",children:[p.jsxs("div",{className:"flex items-center space-x-3",children:[p.jsx("h2",{className:"text-lg font-semibold text-gray-800 dark:text-white",children:t("slidePreview.title")}),p.jsx("span",{className:"text-sm text-gray-500 dark:text-gray-400 bg-gray-100 dark:bg-gray-700 px-2 py-0.5 rounded",children:r?.title||"Presentation"})]}),p.jsxs("button",{onClick:o,disabled:n,className:"flex items-center space-x-1 px-3 py-1.5 text-sm bg-blue-50 dark:bg-blue-900/30 hover:bg-blue-100 dark:hover:bg-blue-900/50 text-blue-600 dark:text-blue-400 hover:text-blue-700 dark:hover:text-blue-300 rounded-md transition-colors disabled:opacity-50 disabled:cursor-not-allowed",title:t("slidePreview.refreshTitle"),children:[p.jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:p.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})}),p.jsx("span",{children:t("slidePreview.refresh")})]})]})}),p.jsx("div",{className:"flex-1 overflow-y-auto",children:l.length===0?p.jsxs("div",{className:"flex flex-col items-center justify-center h-full text-gray-500 dark:text-gray-400 p-5",children:[p.jsx("div",{className:"text-lg mb-2",children:t("slidePreview.noSlides")}),p.jsx("div",{className:"text-sm",children:t("slidePreview.createWithAI")})]}):p.jsx("div",{className:"space-y-4 p-5",children:l.map(c=>p.jsx(d1,{ref:u=>{u?a.current[c.index]=u:delete a.current[c.index]},slide:c,totalSlides:l.length,projectPath:e},c.index))})})]})},OO={rightPanelComponent:FO,onMount:e=>{console.log(`Slides agent ${e} mounted`)},onUnmount:e=>{console.log(`Slides agent ${e} unmounted`)}},zO={onMount:e=>{console.log(`Chat agent ${e} mounted`)},onUnmount:e=>{console.log(`Chat agent ${e} unmounted`)}},WO={slides:OO,chat:zO},HO=e=>WO[e];function qO({status:e,originalTitle:t=document.title,workingText:r="🤖 AI 正在工作",completedText:n="✅ 已完成",errorText:i="❌ 发生错误",marqueeSpeed:s=300,blinkInterval:a=800}){const o=O.useRef(null),l=O.useRef(!document.hidden),c=O.useRef(t),u=O.useRef("idle");O.useEffect(()=>{document.hidden||(c.current=t)},[t]);const h=()=>{o.current!==null&&(window.clearInterval(o.current),o.current=null)},d=()=>{h(),document.title=c.current},f=m=>{h();let b=0;const y=`${m}... `,k=()=>{const v=y.slice(b)+y.slice(0,b);document.title=v,b=(b+1)%y.length};k(),o.current=window.setInterval(k,s)},g=m=>{h();let b=!0;const y=()=>{document.title=b?m:c.current,b=!b};y(),o.current=window.setInterval(y,a)};O.useEffect(()=>{const m=()=>{if(l.current=!document.hidden,!document.hidden)d();else{const b=u.current;b==="working"?f(r):b==="completed"?g(n):b==="error"&&g(i)}};return document.addEventListener("visibilitychange",m),()=>{document.removeEventListener("visibilitychange",m),h()}},[r,n,i,s,a]),O.useEffect(()=>{u.current=e,document.hidden&&(e==="working"?f(r):e==="completed"?g(n):e==="error"?g(i):e==="idle"&&d())},[e,r,n,i]),O.useEffect(()=>()=>{h(),document.title=c.current},[])}const UO=()=>{const{t:e}=Ce("pages"),{agentId:t}=O1(),[r]=gg(),n=z1(),i=r.get("project"),s=r.get("session"),a=r.get("message"),{data:o,isLoading:l,error:c}=x1(t),{setCurrentAgent:u,setCurrentSessionId:h,isAiTyping:d}=Xe(),[f,g]=O.useState(!1),[m,b]=O.useState(!1),[y,k]=O.useState(!1),[v,S]=O.useState(null),[_,w]=O.useState(!1),E=xr.useRef(!1),I=o?.agent;O.useEffect(()=>{d?(E.current=!0,w(!1)):E.current&&(document.hidden||(w(!0),E.current=!1))},[d]),O.useEffect(()=>{const W=()=>{!document.hidden&&!d&&E.current&&(w(!0),E.current=!1)};return document.addEventListener("visibilitychange",W),()=>document.removeEventListener("visibilitychange",W)},[d]);const N=O.useMemo(()=>v?"error":d?"working":!d&&E.current&&!_?"completed":"idle",[d,v,_]);qO({status:N,originalTitle:I?`${I.ui.icon} ${I.name} - AgentStudio`:"AgentStudio",workingText:e("chat.tabNotification.working"),completedText:e("chat.tabNotification.completed"),errorText:e("chat.tabNotification.error")}),O.useEffect(()=>{if(c){S(c);const W=setTimeout(()=>S(null),5e3);return()=>clearTimeout(W)}},[c]),O.useEffect(()=>{console.log("🎯 ChatPage agent/session effect:",{hasAgent:!!I,agentId:I?.id,sessionId:s,urlSessionId:r.get("session")}),I&&(console.log("🎯 Setting current agent:",I.id),u(I),s&&(console.log("🎯 Setting session ID:",s),h(s)))},[I,s,u,h]),O.useEffect(()=>{I&&!i&&g(!0)},[I,i]);const T=W=>{const X=new URLSearchParams;X.set("project",W),s&&X.set("session",s),n(`/chat/${t}?${X.toString()}`,{replace:!0}),g(!1)},M=W=>{const X=new URLSearchParams;i&&X.set("project",i),W&&X.set("session",W),n(`/chat/${t}?${X.toString()}`,{replace:!0})},B=()=>{g(!1),n("/agents")},R=O.useMemo(()=>{if(I?.ui?.componentType)return HO(I.ui.componentType)},[I]),$=R?.rightPanelComponent;if(O.useEffect(()=>{if(!(!I||!R))return R.onMount&&R.onMount(I.id),()=>{R.onUnmount&&R.onUnmount(I.id)}},[I,R]),l)return p.jsx("div",{className:"min-h-screen bg-gray-100 dark:bg-gray-900 flex items-center justify-center",children:p.jsxs("div",{className:"text-center",children:[p.jsx("div",{className:"animate-spin rounded-full h-12 w-12 border-b-2 border-blue-600 mx-auto mb-4"}),p.jsx("div",{className:"text-gray-600 dark:text-gray-400",children:e("chat.loading")})]})});if(c||!I)return p.jsx("div",{className:"min-h-screen bg-gray-100 dark:bg-gray-900 flex items-center justify-center",children:p.jsxs("div",{className:"text-center max-w-md",children:[p.jsx("div",{className:"text-6xl mb-6",children:"❌"}),p.jsx("h1",{className:"text-2xl font-bold text-gray-900 dark:text-white mb-4",children:e("chat.agentNotFound")}),p.jsx("p",{className:"text-gray-600 dark:text-gray-400 mb-6",children:e("chat.agentNotFoundDesc")}),p.jsx("button",{onClick:()=>window.close(),className:"px-6 py-3 bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors",children:e("chat.closePage")})]})});if(!I.enabled)return p.jsx("div",{className:"min-h-screen bg-gray-100 dark:bg-gray-900 flex items-center justify-center",children:p.jsxs("div",{className:"text-center max-w-md",children:[p.jsx("div",{className:"text-6xl mb-6 opacity-50",children:I.ui.icon}),p.jsx("h1",{className:"text-2xl font-bold text-gray-900 dark:text-white mb-4",children:e("chat.agentDisabled")}),p.jsx("p",{className:"text-gray-600 dark:text-gray-400 mb-6",children:e("chat.agentDisabledDesc",{name:I.name})}),p.jsx("div",{className:"flex space-x-4 justify-center",children:p.jsx("button",{onClick:()=>window.close(),className:"px-6 py-3 bg-gray-600 text-white rounded-lg hover:bg-gray-700 transition-colors",children:e("chat.closePage")})})]})});const F=()=>{const W=!m;b(W),W&&y&&k(!1)},L=()=>{const W=!y;k(W),W&&m&&b(!1)},P=()=>p.jsxs(DO,{hideLeftPanel:m,hideRightPanel:y,onToggleLeftPanel:F,onToggleRightPanel:L,mobileLayout:"tabs",children:[p.jsx(BO,{agent:I,projectPath:i||void 0,onSessionChange:M,initialMessage:a||void 0}),p.jsx(RO,{agent:I,projectPath:i||void 0,CustomComponent:$})]});return p.jsxs("div",{className:"h-screen bg-gray-100 dark:bg-gray-900",children:[P(),f&&I&&p.jsx(q1,{agent:I,onProjectSelect:T,onClose:B})]})},B6=Object.freeze(Object.defineProperty({__proto__:null,ChatPage:UO},Symbol.toStringTag,{value:"Module"}));export{Df as $,ps as A,FE as B,aN as C,$h as D,_t as E,Bm as F,PD as G,FI as H,sf as I,U$ as J,wA as K,yi as L,l6 as M,el as N,OA as O,Zu as P,Ws as Q,Sr as R,TI as S,hh as T,ve as U,p6 as V,x6 as W,Kn as X,Pf as Y,AD as Z,x as _,eN as a,Vt as a$,b6 as a0,y6 as a1,m6 as a2,d6 as a3,f6 as a4,w6 as a5,g6 as a6,k6 as a7,xf as a8,MI as a9,ue as aA,N6 as aB,X5 as aC,q5 as aD,H5 as aE,Q3 as aF,EI as aG,o6 as aH,Xs as aI,X3 as aJ,Y3 as aK,oh as aL,Zr as aM,Mf as aN,aL as aO,_s as aP,Pn as aQ,_D as aR,$y as aS,Xo as aT,Jo as aU,bo as aV,By as aW,Iy as aX,tD as aY,ce as aZ,wy as a_,Da as aa,DD as ab,YA as ac,zs as ad,se as ae,fe as af,qm as ag,v5 as ah,Hk as ai,L6 as aj,G$ as ak,ft as al,un as am,Ch as an,gb as ao,On as ap,zy as aq,SD as ar,mB as as,xD as at,Sh as au,Bp as av,f4 as aw,M6 as ax,I6 as ay,A6 as az,JA as b,JM as b0,ah as b1,i0 as b2,qs as b3,o0 as b4,h6 as b5,RE as b6,CD as b7,mD as b8,nB as b9,TD as bA,Zo as bB,B6 as bC,_h as ba,QB as bb,ED as bc,Gs as bd,Ni as be,mo as bf,lD as bg,D4 as bh,Vs as bi,yo as bj,rD as bk,Ty as bl,aB as bm,oB as bn,bn as bo,np as bp,lB as bq,Th as br,sB as bs,hB as bt,Mi as bu,cn as bv,Zf as bw,Eh as bx,Ay as by,yu as bz,Pe as c,$e as d,Hm as e,ht as f,rN as g,Or as h,nr as i,J$ as j,Ei as k,K as l,Hy as m,c6 as n,j6 as o,nN as p,iN as q,$6 as r,tN as s,V$ as t,ur as u,O5 as v,OD as w,v6 as x,ZA as y,u6 as z};
|
|
471
|
+
`,children:a})]})},RO=({agent:e,projectPath:t,CustomComponent:r})=>{const[n,i]=O.useState(r?"custom":"files"),s=!!r;return p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"h-full bg-white dark:bg-gray-900 overflow-hidden",children:s?p.jsxs(p.Fragment,{children:[p.jsx("div",{className:`h-full ${n==="custom"?"block":"hidden"}`,children:p.jsx(r,{agent:e,projectPath:t})}),p.jsx("div",{className:`h-full ${n==="files"?"block":"hidden"}`,children:p.jsx(pd,{projectPath:t,onFileSelect:a=>{console.log("Selected file:",a)},className:"h-full"})})]}):p.jsx(pd,{projectPath:t,onFileSelect:a=>{console.log("Selected file:",a)},className:"h-full"})}),p.jsx(PO,{currentView:n,onViewChange:i,hasCustomComponent:s,className:"floating-toggle"})]})},FO=({projectPath:e})=>{const{t}=Ce("agents"),{data:r,isLoading:n,error:i}=h1(e),s=Nu(),a=O.useRef({}),o=()=>{s.invalidateQueries({queryKey:["slides",e]}),s.invalidateQueries({queryKey:["slide-content"]}),Object.values(a.current).forEach(c=>{c?.refreshIframe&&c.refreshIframe()})};if(O.useEffect(()=>{const c=u=>{console.log("🔄 Received AI_RESPONSE_COMPLETE event in SlidePreviewPanel:",u),u.projectPath===e&&(console.log("🔄 Auto-refreshing slides after AI response completion"),o())};return cc.on(uc.AI_RESPONSE_COMPLETE,c),()=>{cc.off(uc.AI_RESPONSE_COMPLETE,c)}},[e,s]),n)return p.jsx("div",{className:"flex items-center justify-center h-full",children:p.jsx("div",{className:"text-gray-500",children:t("slidePreview.loading")})});if(i)return p.jsx("div",{className:"flex items-center justify-center h-full",children:p.jsx("div",{className:"text-red-500",children:t("slidePreview.loadError")})});const l=r?.slides||[];return p.jsxs("div",{className:"flex flex-col h-full bg-gray-50 dark:bg-gray-900",children:[p.jsx("div",{className:"h-12 px-5 bg-gray-100 dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700 flex items-center",children:p.jsxs("div",{className:"flex items-center justify-between",children:[p.jsxs("div",{className:"flex items-center space-x-3",children:[p.jsx("h2",{className:"text-lg font-semibold text-gray-800 dark:text-white",children:t("slidePreview.title")}),p.jsx("span",{className:"text-sm text-gray-500 dark:text-gray-400 bg-gray-100 dark:bg-gray-700 px-2 py-0.5 rounded",children:r?.title||"Presentation"})]}),p.jsxs("button",{onClick:o,disabled:n,className:"flex items-center space-x-1 px-3 py-1.5 text-sm bg-blue-50 dark:bg-blue-900/30 hover:bg-blue-100 dark:hover:bg-blue-900/50 text-blue-600 dark:text-blue-400 hover:text-blue-700 dark:hover:text-blue-300 rounded-md transition-colors disabled:opacity-50 disabled:cursor-not-allowed",title:t("slidePreview.refreshTitle"),children:[p.jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:p.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})}),p.jsx("span",{children:t("slidePreview.refresh")})]})]})}),p.jsx("div",{className:"flex-1 overflow-y-auto",children:l.length===0?p.jsxs("div",{className:"flex flex-col items-center justify-center h-full text-gray-500 dark:text-gray-400 p-5",children:[p.jsx("div",{className:"text-lg mb-2",children:t("slidePreview.noSlides")}),p.jsx("div",{className:"text-sm",children:t("slidePreview.createWithAI")})]}):p.jsx("div",{className:"space-y-4 p-5",children:l.map(c=>p.jsx(d1,{ref:u=>{u?a.current[c.index]=u:delete a.current[c.index]},slide:c,totalSlides:l.length,projectPath:e},c.index))})})]})},OO={rightPanelComponent:FO,onMount:e=>{console.log(`Slides agent ${e} mounted`)},onUnmount:e=>{console.log(`Slides agent ${e} unmounted`)}},zO={onMount:e=>{console.log(`Chat agent ${e} mounted`)},onUnmount:e=>{console.log(`Chat agent ${e} unmounted`)}},WO={slides:OO,chat:zO},HO=e=>WO[e];function qO({status:e,originalTitle:t=document.title,workingText:r="🤖 AI 正在工作",completedText:n="✅ 已完成",errorText:i="❌ 发生错误",marqueeSpeed:s=300,blinkInterval:a=800}){const o=O.useRef(null),l=O.useRef(!document.hidden),c=O.useRef(t),u=O.useRef("idle");O.useEffect(()=>{document.hidden||(c.current=t)},[t]);const h=()=>{o.current!==null&&(window.clearInterval(o.current),o.current=null)},d=()=>{h(),document.title=c.current},f=m=>{h();let b=0;const y=`${m}... `,k=()=>{const v=y.slice(b)+y.slice(0,b);document.title=v,b=(b+1)%y.length};k(),o.current=window.setInterval(k,s)},g=m=>{h();let b=!0;const y=()=>{document.title=b?m:c.current,b=!b};y(),o.current=window.setInterval(y,a)};O.useEffect(()=>{const m=()=>{if(l.current=!document.hidden,!document.hidden)d();else{const b=u.current;b==="working"?f(r):b==="completed"?g(n):b==="error"&&g(i)}};return document.addEventListener("visibilitychange",m),()=>{document.removeEventListener("visibilitychange",m),h()}},[r,n,i,s,a]),O.useEffect(()=>{u.current=e,document.hidden&&(e==="working"?f(r):e==="completed"?g(n):e==="error"?g(i):e==="idle"&&d())},[e,r,n,i]),O.useEffect(()=>()=>{h(),document.title=c.current},[])}const UO=()=>{const{t:e}=Ce("pages"),{agentId:t}=O1(),[r]=gg(),n=z1(),i=r.get("project"),s=r.get("session"),a=r.get("message"),{data:o,isLoading:l,error:c}=x1(t),{setCurrentAgent:u,setCurrentSessionId:h,isAiTyping:d}=Xe(),[f,g]=O.useState(!1),[m,b]=O.useState(!1),[y,k]=O.useState(!1),[v,S]=O.useState(null),[_,w]=O.useState(!1),E=xr.useRef(!1),I=o?.agent;O.useEffect(()=>{d?(E.current=!0,w(!1)):E.current&&(document.hidden||(w(!0),E.current=!1))},[d]),O.useEffect(()=>{const W=()=>{!document.hidden&&!d&&E.current&&(w(!0),E.current=!1)};return document.addEventListener("visibilitychange",W),()=>document.removeEventListener("visibilitychange",W)},[d]);const N=O.useMemo(()=>v?"error":d?"working":!d&&E.current&&!_?"completed":"idle",[d,v,_]);qO({status:N,originalTitle:I?`${I.ui.icon} ${I.name} - AgentStudio`:"AgentStudio",workingText:e("chat.tabNotification.working"),completedText:e("chat.tabNotification.completed"),errorText:e("chat.tabNotification.error")}),O.useEffect(()=>{if(c){S(c);const W=setTimeout(()=>S(null),5e3);return()=>clearTimeout(W)}},[c]),O.useEffect(()=>{console.log("🎯 ChatPage agent/session effect:",{hasAgent:!!I,agentId:I?.id,sessionId:s,urlSessionId:r.get("session")}),I&&(console.log("🎯 Setting current agent:",I.id),u(I),s&&(console.log("🎯 Setting session ID:",s),h(s)))},[I,s,u,h]),O.useEffect(()=>{I&&!i&&g(!0)},[I,i]);const T=W=>{const X=new URLSearchParams;X.set("project",W),s&&X.set("session",s),n(`/chat/${t}?${X.toString()}`,{replace:!0}),g(!1)},M=W=>{const X=new URLSearchParams;i&&X.set("project",i),W&&X.set("session",W),n(`/chat/${t}?${X.toString()}`,{replace:!0})},B=()=>{g(!1),n("/agents")},R=O.useMemo(()=>{if(I?.ui?.componentType)return HO(I.ui.componentType)},[I]),$=R?.rightPanelComponent;if(O.useEffect(()=>{if(!(!I||!R))return R.onMount&&R.onMount(I.id),()=>{R.onUnmount&&R.onUnmount(I.id)}},[I,R]),l)return p.jsx("div",{className:"min-h-screen bg-gray-100 dark:bg-gray-900 flex items-center justify-center",children:p.jsxs("div",{className:"text-center",children:[p.jsx("div",{className:"animate-spin rounded-full h-12 w-12 border-b-2 border-blue-600 mx-auto mb-4"}),p.jsx("div",{className:"text-gray-600 dark:text-gray-400",children:e("chat.loading")})]})});if(c||!I)return p.jsx("div",{className:"min-h-screen bg-gray-100 dark:bg-gray-900 flex items-center justify-center",children:p.jsxs("div",{className:"text-center max-w-md",children:[p.jsx("div",{className:"text-6xl mb-6",children:"❌"}),p.jsx("h1",{className:"text-2xl font-bold text-gray-900 dark:text-white mb-4",children:e("chat.agentNotFound")}),p.jsx("p",{className:"text-gray-600 dark:text-gray-400 mb-6",children:e("chat.agentNotFoundDesc")}),p.jsx("button",{onClick:()=>window.close(),className:"px-6 py-3 bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors",children:e("chat.closePage")})]})});if(!I.enabled)return p.jsx("div",{className:"min-h-screen bg-gray-100 dark:bg-gray-900 flex items-center justify-center",children:p.jsxs("div",{className:"text-center max-w-md",children:[p.jsx("div",{className:"text-6xl mb-6 opacity-50",children:I.ui.icon}),p.jsx("h1",{className:"text-2xl font-bold text-gray-900 dark:text-white mb-4",children:e("chat.agentDisabled")}),p.jsx("p",{className:"text-gray-600 dark:text-gray-400 mb-6",children:e("chat.agentDisabledDesc",{name:I.name})}),p.jsx("div",{className:"flex space-x-4 justify-center",children:p.jsx("button",{onClick:()=>window.close(),className:"px-6 py-3 bg-gray-600 text-white rounded-lg hover:bg-gray-700 transition-colors",children:e("chat.closePage")})})]})});const F=()=>{const W=!m;b(W),W&&y&&k(!1)},L=()=>{const W=!y;k(W),W&&m&&b(!1)},P=()=>p.jsxs(DO,{hideLeftPanel:m,hideRightPanel:y,onToggleLeftPanel:F,onToggleRightPanel:L,mobileLayout:"tabs",children:[p.jsx(BO,{agent:I,projectPath:i||void 0,onSessionChange:M,initialMessage:a||void 0}),p.jsx(RO,{agent:I,projectPath:i||void 0,CustomComponent:$})]});return p.jsxs("div",{className:"h-screen bg-gray-100 dark:bg-gray-900",children:[P(),f&&I&&p.jsx(q1,{agent:I,onProjectSelect:T,onClose:B})]})},B6=Object.freeze(Object.defineProperty({__proto__:null,ChatPage:UO},Symbol.toStringTag,{value:"Module"}));export{w6 as $,ps as A,FE as B,aN as C,$h as D,_t as E,Bm as F,PD as G,FI as H,sf as I,U$ as J,wA as K,Ws as L,Sr as M,TI as N,hh as O,p6 as P,x6 as Q,Kn as R,Pf as S,Df as T,ve as U,b6 as V,y6 as W,m6 as X,d6 as Y,f6 as Z,x as _,eN as a,Vt as a$,g6 as a0,k6 as a1,yi as a2,l6 as a3,el as a4,AD as a5,OA as a6,Zu as a7,xf as a8,MI as a9,ue as aA,N6 as aB,X5 as aC,q5 as aD,H5 as aE,Q3 as aF,EI as aG,o6 as aH,Xs as aI,X3 as aJ,Y3 as aK,oh as aL,Zr as aM,Mf as aN,aL as aO,_s as aP,Pn as aQ,_D as aR,$y as aS,Xo as aT,Jo as aU,bo as aV,By as aW,Iy as aX,tD as aY,ce as aZ,wy as a_,Da as aa,DD as ab,YA as ac,zs as ad,se as ae,fe as af,qm as ag,v5 as ah,Hk as ai,L6 as aj,G$ as ak,ft as al,un as am,Ch as an,gb as ao,On as ap,zy as aq,SD as ar,mB as as,xD as at,Sh as au,Bp as av,f4 as aw,M6 as ax,I6 as ay,A6 as az,JA as b,JM as b0,ah as b1,i0 as b2,qs as b3,o0 as b4,h6 as b5,RE as b6,CD as b7,mD as b8,nB as b9,TD as bA,Zo as bB,B6 as bC,_h as ba,QB as bb,ED as bc,Gs as bd,Ni as be,mo as bf,lD as bg,D4 as bh,Vs as bi,yo as bj,rD as bk,Ty as bl,aB as bm,oB as bn,bn as bo,np as bp,lB as bq,Th as br,sB as bs,hB as bt,Mi as bu,cn as bv,Zf as bw,Eh as bx,Ay as by,yu as bz,Pe as c,$e as d,Hm as e,ht as f,rN as g,Or as h,nr as i,J$ as j,Ei as k,K as l,Hy as m,c6 as n,j6 as o,nN as p,iN as q,$6 as r,tN as s,V$ as t,ur as u,O5 as v,OD as w,v6 as x,ZA as y,u6 as z};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{j as e}from"./data-structures-C0h9Oap1.js";import{r as l}from"./monaco-editor-DHKm5-VF.js";import{b as I,c as Z,d as J,e as K}from"./useCommands-
|
|
1
|
+
import{j as e}from"./data-structures-C0h9Oap1.js";import{r as l}from"./monaco-editor-DHKm5-VF.js";import{b as I,c as Z,d as J,e as K}from"./useCommands-D79pjz3C.js";import{U as Q}from"./UnifiedToolSelector-CnFTY88B.js";import{u as U}from"./tools-XV29tg8x.js";import{d as V,o as X,O as Y,j as ee}from"./ui-components-ND8WdSiV.js";const le=({command:o,projectId:x,onClose:_,onSuccess:z})=>{const{t:a}=U("components"),{t:C}=U("common"),[s,n]=l.useState({name:o?"":"optimize",description:o?"":a("commandForm.exampleDescription"),content:o?"":a("commandForm.exampleContent"),scope:x?"project":"user",namespace:o?"":"frontend",argumentHint:o?"":"[filename] [options]",allowedTools:[],model:""}),[c,T]=l.useState({}),[u,O]=l.useState(!1),[S,p]=l.useState(""),[H,f]=l.useState(!0),[M,$]=l.useState(!1),[m,E]=l.useState([]),[i,j]=l.useState([]),[R,P]=l.useState(!1),w=x?I(x):Z(),N=x?J(x):K(),h=!!o,k=r=>{const t=[];return r.description&&t.push(`description: ${r.description}`),r.argumentHint&&t.push(`argument-hint: ${r.argumentHint}`),r.namespace&&t.push(`namespace: ${r.namespace}`),r.allowedTools&&r.allowedTools.length>0&&t.push(`allowed-tools: ${r.allowedTools.join(", ")}`),r.model&&t.push(`model: ${r.model}`),t.length>0?`---
|
|
2
2
|
${t.join(`
|
|
3
3
|
`)}
|
|
4
4
|
---
|