factory-factory 0.3.14 → 0.3.16
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/dist/client/assets/{arc-DSBuWL5s.js → arc-CAOrfHBL.js} +1 -1
- package/dist/client/assets/architectureDiagram-3BPJPVTR-CzxGCKeM.js +36 -0
- package/dist/client/assets/blockDiagram-GPEHLZMM-B4k0dvv-.js +132 -0
- package/dist/client/assets/{c4Diagram-AHTNJAMY-DLB6YyaK.js → c4Diagram-AAUBKEIU-ByaECY1u.js} +1 -1
- package/dist/client/assets/channel-D2ho7Eza.js +1 -0
- package/dist/client/assets/{chunk-EDXVE4YY-JtUNKE2M.js → chunk-2J33WTMH-Crxo1uMY.js} +1 -1
- package/dist/client/assets/{chunk-4BX2VUAB-DVPwhCCH.js → chunk-4BX2VUAB-CggFLwAA.js} +1 -1
- package/dist/client/assets/{chunk-55IACEB6-BW_jDeAT.js → chunk-55IACEB6-BSoTWFAF.js} +1 -1
- package/dist/client/assets/chunk-727SXJPM-DcQoeGkQ.js +206 -0
- package/dist/client/assets/chunk-AQP2D5EJ-Ci5tNJvg.js +231 -0
- package/dist/client/assets/{chunk-FMBD7UC4-BVYe-KgE.js → chunk-FMBD7UC4-CjYtwTh4.js} +1 -1
- package/dist/client/assets/{chunk-YZCP3GAM-CDhS7CGF.js → chunk-ND2GUHAM-Dla8Gmku.js} +1 -1
- package/dist/client/assets/{chunk-QZHKN3VN-99tx2X7z.js → chunk-QZHKN3VN-CiblfzNN.js} +1 -1
- package/dist/client/assets/classDiagram-4FO5ZUOK-ZExoOExU.js +1 -0
- package/dist/client/assets/classDiagram-v2-Q7XG4LA2-ZExoOExU.js +1 -0
- package/dist/client/assets/{cose-bilkent-S5V4N54A-GJd1fOeJ.js → cose-bilkent-S5V4N54A-DWuzgvAN.js} +1 -1
- package/dist/client/assets/dagre-BM42HDAG-hvdcGfHc.js +4 -0
- package/dist/client/assets/diagram-2AECGRRQ-DVZDsgVY.js +43 -0
- package/dist/client/assets/diagram-5GNKFQAL-BLXKSUUu.js +10 -0
- package/dist/client/assets/diagram-KO2AKTUF-1nNBdWqs.js +3 -0
- package/dist/client/assets/diagram-LMA3HP47-CTw-M4zU.js +24 -0
- package/dist/client/assets/diagram-OG6HWLK6-D9J0vyno.js +24 -0
- package/dist/client/assets/{erDiagram-SMLLAGMA-b5ieH-Rd.js → erDiagram-TEJ5UH35-DYXcLeDs.js} +1 -1
- package/dist/client/assets/{flowDiagram-DWJPFMVM-C6BT6FGE.js → flowDiagram-I6XJVG4X-CXFyFXcd.js} +1 -1
- package/dist/client/assets/{ganttDiagram-T4ZO3ILL-ANP28BYp.js → ganttDiagram-6RSMTGT7-CPGMIRhg.js} +2 -2
- package/dist/client/assets/gitGraphDiagram-PVQCEYII-BCIDHp-Q.js +106 -0
- package/dist/client/assets/graph--OzhPTMs.js +1 -0
- package/dist/client/assets/index-IJ_NNlgJ.css +1 -0
- package/dist/client/assets/{index-DXhws4gD.js → index-gIy0Sz_B.js} +152 -153
- package/dist/client/assets/infoDiagram-5YYISTIA-ThNaUmLI.js +2 -0
- package/dist/client/assets/{ishikawaDiagram-UXIWVN3A-CqKsMHgP.js → ishikawaDiagram-YF4QCWOH-nD7e1KKT.js} +1 -1
- package/dist/client/assets/{journeyDiagram-VCZTEJTY-BZtfD_AX.js → journeyDiagram-JHISSGLW-DKfK1tIp.js} +1 -1
- package/dist/client/assets/{kanban-definition-6JOO6SKY-BmXsWhyy.js → kanban-definition-UN3LZRKU-C61PkF-T.js} +1 -1
- package/dist/client/assets/layout-SsrduOYp.js +1 -0
- package/dist/client/assets/{linear-D3KSZ58g.js → linear-yYp6Wht8.js} +1 -1
- package/dist/client/assets/{mindmap-definition-QFDTVHPH-Ds6I5xr9.js → mindmap-definition-RKZ34NQL-DI6Bl654.js} +9 -9
- package/dist/client/assets/{mobile-baseline-LNAOKO2v.js → mobile-baseline-DRrQYbFX.js} +1 -1
- package/dist/client/assets/pieDiagram-4H26LBE5-CNV-VY3H.js +30 -0
- package/dist/client/assets/quadrantDiagram-W4KKPZXB-CDBpCVHO.js +7 -0
- package/dist/client/assets/{requirementDiagram-MS252O5E-U4qQHRNe.js → requirementDiagram-4Y6WPE33-D_rxDIc5.js} +1 -1
- package/dist/client/assets/sankeyDiagram-5OEKKPKP-DeyadfL0.js +40 -0
- package/dist/client/assets/{sequenceDiagram-FGHM5R23-BU3bWBgE.js → sequenceDiagram-3UESZ5HK-36_kZ6la.js} +12 -7
- package/dist/client/assets/stateDiagram-AJRCARHV-4ayM-mAT.js +1 -0
- package/dist/client/assets/stateDiagram-v2-BHNVJYJU-ChnnLckY.js +1 -0
- package/dist/client/assets/{terminal-instance-F0JrQZ9R.js → terminal-instance-CMp5bO62.js} +1 -1
- package/dist/client/assets/{timeline-definition-GMOUNBTQ-BLLt9f0n.js → timeline-definition-PNZ67QCA-D0pQgePo.js} +1 -1
- package/dist/client/assets/{vennDiagram-DHZGUBPP-wVxLQieb.js → vennDiagram-CIIHVFJN-CnoMcpwq.js} +1 -1
- package/dist/client/assets/wardley-L42UT6IY-DOtSWmwv.js +161 -0
- package/dist/client/assets/wardleyDiagram-YWT4CUSO-Z3hYGa2_.js +78 -0
- package/dist/client/assets/{xychartDiagram-5P7HB3ND-D-h5ykwN.js → xychartDiagram-2RQKCTM6-CBvgTdkn.js} +1 -1
- package/dist/client/index.html +2 -2
- package/dist/prisma/generated/browser.d.ts +2 -0
- package/dist/prisma/generated/browser.d.ts.map +1 -1
- package/dist/prisma/generated/client.d.ts +2 -0
- package/dist/prisma/generated/client.d.ts.map +1 -1
- package/dist/prisma/generated/commonInputTypes.d.ts +60 -0
- package/dist/prisma/generated/commonInputTypes.d.ts.map +1 -1
- package/dist/prisma/generated/enums.d.ts +16 -0
- package/dist/prisma/generated/enums.d.ts.map +1 -1
- package/dist/prisma/generated/enums.js +15 -1
- package/dist/prisma/generated/enums.js.map +1 -1
- package/dist/prisma/generated/internal/class.d.ts +6 -0
- package/dist/prisma/generated/internal/class.d.ts.map +1 -1
- package/dist/prisma/generated/internal/class.js +4 -4
- package/dist/prisma/generated/internal/class.js.map +1 -1
- package/dist/prisma/generated/internal/prismaNamespace.d.ts +181 -1
- package/dist/prisma/generated/internal/prismaNamespace.d.ts.map +1 -1
- package/dist/prisma/generated/internal/prismaNamespace.js +27 -1
- package/dist/prisma/generated/internal/prismaNamespace.js.map +1 -1
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts +28 -0
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts.map +1 -1
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.js +27 -1
- package/dist/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
- package/dist/prisma/generated/models/PeriodicTask.d.ts +954 -0
- package/dist/prisma/generated/models/PeriodicTask.d.ts.map +1 -0
- package/dist/prisma/generated/models/PeriodicTask.js +2 -0
- package/dist/prisma/generated/models/PeriodicTask.js.map +1 -0
- package/dist/prisma/generated/models/PeriodicTaskExecution.d.ts +813 -0
- package/dist/prisma/generated/models/PeriodicTaskExecution.d.ts.map +1 -0
- package/dist/prisma/generated/models/PeriodicTaskExecution.js +2 -0
- package/dist/prisma/generated/models/PeriodicTaskExecution.js.map +1 -0
- package/dist/prisma/generated/models/Project.d.ts +132 -0
- package/dist/prisma/generated/models/Project.d.ts.map +1 -1
- package/dist/prisma/generated/models/Workspace.d.ts +809 -32
- package/dist/prisma/generated/models/Workspace.d.ts.map +1 -1
- package/dist/prisma/generated/models.d.ts +2 -0
- package/dist/prisma/generated/models.d.ts.map +1 -1
- package/dist/src/backend/lib/env.d.ts +2 -1
- package/dist/src/backend/lib/env.d.ts.map +1 -1
- package/dist/src/backend/lib/env.js +6 -3
- package/dist/src/backend/lib/env.js.map +1 -1
- package/dist/src/backend/lib/session-summaries.d.ts +1 -1
- package/dist/src/backend/lib/session-summaries.d.ts.map +1 -1
- package/dist/src/backend/lib/session-summaries.js +3 -2
- package/dist/src/backend/lib/session-summaries.js.map +1 -1
- package/dist/src/backend/lib/workspace-derived-state.js +1 -1
- package/dist/src/backend/lib/workspace-derived-state.js.map +1 -1
- package/dist/src/backend/lib/workspace-derived-state.test.js +33 -9
- package/dist/src/backend/lib/workspace-derived-state.test.js.map +1 -1
- package/dist/src/backend/orchestration/cli-health.service.d.ts +2 -0
- package/dist/src/backend/orchestration/cli-health.service.d.ts.map +1 -1
- package/dist/src/backend/orchestration/cli-health.service.js +23 -5
- package/dist/src/backend/orchestration/cli-health.service.js.map +1 -1
- package/dist/src/backend/orchestration/data-backup.service.d.ts.map +1 -1
- package/dist/src/backend/orchestration/data-backup.service.js +6 -0
- package/dist/src/backend/orchestration/data-backup.service.js.map +1 -1
- package/dist/src/backend/orchestration/data-backup.service.test.js +55 -4
- package/dist/src/backend/orchestration/data-backup.service.test.js.map +1 -1
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.js +39 -1
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.js.map +1 -1
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.test.js +3 -1
- package/dist/src/backend/orchestration/domain-bridges.orchestrator.test.js.map +1 -1
- package/dist/src/backend/orchestration/event-collector.orchestrator.d.ts +2 -0
- package/dist/src/backend/orchestration/event-collector.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/event-collector.orchestrator.js +17 -0
- package/dist/src/backend/orchestration/event-collector.orchestrator.js.map +1 -1
- package/dist/src/backend/orchestration/event-collector.orchestrator.test.js +14 -3
- package/dist/src/backend/orchestration/event-collector.orchestrator.test.js.map +1 -1
- package/dist/src/backend/orchestration/scheduler.service.d.ts.map +1 -1
- package/dist/src/backend/orchestration/scheduler.service.js +4 -2
- package/dist/src/backend/orchestration/scheduler.service.js.map +1 -1
- package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.d.ts +1 -0
- package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.js +7 -1
- package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.js.map +1 -1
- package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.test.js +34 -0
- package/dist/src/backend/orchestration/snapshot-reconciliation.orchestrator.test.js.map +1 -1
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.d.ts +9 -0
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.js +80 -39
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.js.map +1 -1
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.test.js +74 -2
- package/dist/src/backend/orchestration/workspace-archive.orchestrator.test.js.map +1 -1
- package/dist/src/backend/orchestration/workspace-init.orchestrator.d.ts +1 -0
- package/dist/src/backend/orchestration/workspace-init.orchestrator.d.ts.map +1 -1
- package/dist/src/backend/orchestration/workspace-init.orchestrator.js +101 -17
- package/dist/src/backend/orchestration/workspace-init.orchestrator.js.map +1 -1
- package/dist/src/backend/orchestration/workspace-init.orchestrator.test.js +70 -3
- package/dist/src/backend/orchestration/workspace-init.orchestrator.test.js.map +1 -1
- package/dist/src/backend/prompts/ratchet-dispatch.d.ts.map +1 -1
- package/dist/src/backend/prompts/ratchet-dispatch.js +14 -10
- package/dist/src/backend/prompts/ratchet-dispatch.js.map +1 -1
- package/dist/src/backend/prompts/ratchet-dispatch.test.js +37 -0
- package/dist/src/backend/prompts/ratchet-dispatch.test.js.map +1 -1
- package/dist/src/backend/routers/websocket/setup-terminal.handler.d.ts.map +1 -1
- package/dist/src/backend/routers/websocket/setup-terminal.handler.js +13 -1
- package/dist/src/backend/routers/websocket/setup-terminal.handler.js.map +1 -1
- package/dist/src/backend/routers/websocket/setup-terminal.handler.test.js +89 -3
- package/dist/src/backend/routers/websocket/setup-terminal.handler.test.js.map +1 -1
- package/dist/src/backend/routers/websocket/snapshots.handler.d.ts.map +1 -1
- package/dist/src/backend/routers/websocket/snapshots.handler.js +24 -8
- package/dist/src/backend/routers/websocket/snapshots.handler.js.map +1 -1
- package/dist/src/backend/routers/websocket/terminal.handler.d.ts.map +1 -1
- package/dist/src/backend/routers/websocket/terminal.handler.js +29 -11
- package/dist/src/backend/routers/websocket/terminal.handler.js.map +1 -1
- package/dist/src/backend/routers/websocket/terminal.handler.test.js +98 -0
- package/dist/src/backend/routers/websocket/terminal.handler.test.js.map +1 -1
- package/dist/src/backend/schemas/websocket/terminal-message.schema.d.ts +1 -0
- package/dist/src/backend/schemas/websocket/terminal-message.schema.d.ts.map +1 -1
- package/dist/src/backend/schemas/websocket/terminal-message.schema.js +1 -0
- package/dist/src/backend/schemas/websocket/terminal-message.schema.js.map +1 -1
- package/dist/src/backend/server.d.ts.map +1 -1
- package/dist/src/backend/server.js +84 -62
- package/dist/src/backend/server.js.map +1 -1
- package/dist/src/backend/server.upgrade.test.js +40 -1
- package/dist/src/backend/server.upgrade.test.js.map +1 -1
- package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.d.ts +2 -1
- package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.d.ts.map +1 -1
- package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.js +82 -0
- package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.js.map +1 -1
- package/dist/src/backend/services/config.service.d.ts.map +1 -1
- package/dist/src/backend/services/config.service.js +1 -4
- package/dist/src/backend/services/config.service.js.map +1 -1
- package/dist/src/backend/services/constants.d.ts +1 -0
- package/dist/src/backend/services/constants.d.ts.map +1 -1
- package/dist/src/backend/services/constants.js +1 -0
- package/dist/src/backend/services/constants.js.map +1 -1
- package/dist/src/backend/services/github/service/github-cli/schemas.d.ts +1 -0
- package/dist/src/backend/services/github/service/github-cli/schemas.d.ts.map +1 -1
- package/dist/src/backend/services/github/service/github-cli/schemas.js +1 -1
- package/dist/src/backend/services/github/service/github-cli/schemas.js.map +1 -1
- package/dist/src/backend/services/github/service/github-cli.service.d.ts +10 -0
- package/dist/src/backend/services/github/service/github-cli.service.d.ts.map +1 -1
- package/dist/src/backend/services/github/service/github-cli.service.js +85 -2
- package/dist/src/backend/services/github/service/github-cli.service.js.map +1 -1
- package/dist/src/backend/services/github/service/github-cli.service.test.js +38 -8
- package/dist/src/backend/services/github/service/github-cli.service.test.js.map +1 -1
- package/dist/src/backend/services/periodic-task/index.d.ts +5 -0
- package/dist/src/backend/services/periodic-task/index.d.ts.map +1 -0
- package/dist/src/backend/services/periodic-task/index.js +6 -0
- package/dist/src/backend/services/periodic-task/index.js.map +1 -0
- package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.d.ts +49 -0
- package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.d.ts.map +1 -0
- package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.js +138 -0
- package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.js.map +1 -0
- package/dist/src/backend/services/periodic-task/service/index.d.ts +3 -0
- package/dist/src/backend/services/periodic-task/service/index.d.ts.map +1 -0
- package/dist/src/backend/services/periodic-task/service/index.js +2 -0
- package/dist/src/backend/services/periodic-task/service/index.js.map +1 -0
- package/dist/src/backend/services/periodic-task/service/periodic-task.service.d.ts +44 -0
- package/dist/src/backend/services/periodic-task/service/periodic-task.service.d.ts.map +1 -0
- package/dist/src/backend/services/periodic-task/service/periodic-task.service.js +177 -0
- package/dist/src/backend/services/periodic-task/service/periodic-task.service.js.map +1 -0
- package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.d.ts.map +1 -1
- package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.js +1 -0
- package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.js.map +1 -1
- package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.test.js +74 -1
- package/dist/src/backend/services/ratchet/service/ratchet-pr-state.helpers.test.js.map +1 -1
- package/dist/src/backend/services/ratchet/service/ratchet.service.js +1 -1
- package/dist/src/backend/services/ratchet/service/ratchet.service.js.map +1 -1
- package/dist/src/backend/services/ratchet/service/ratchet.service.test.js +9 -5
- package/dist/src/backend/services/ratchet/service/ratchet.service.test.js.map +1 -1
- package/dist/src/backend/services/registry.d.ts +6 -2
- package/dist/src/backend/services/registry.d.ts.map +1 -1
- package/dist/src/backend/services/registry.js +7 -0
- package/dist/src/backend/services/registry.js.map +1 -1
- package/dist/src/backend/services/resources.integration.test.js +33 -3
- package/dist/src/backend/services/resources.integration.test.js.map +1 -1
- package/dist/src/backend/services/run-script/service/run-script.service.d.ts +2 -1
- package/dist/src/backend/services/run-script/service/run-script.service.d.ts.map +1 -1
- package/dist/src/backend/services/run-script/service/run-script.service.js +7 -1
- package/dist/src/backend/services/run-script/service/run-script.service.js.map +1 -1
- package/dist/src/backend/services/run-script/service/run-script.service.test.js +20 -0
- package/dist/src/backend/services/run-script/service/run-script.service.test.js.map +1 -1
- package/dist/src/backend/services/session/resources/agent-session.accessor.d.ts +2 -0
- package/dist/src/backend/services/session/resources/agent-session.accessor.d.ts.map +1 -1
- package/dist/src/backend/services/session/resources/agent-session.accessor.js +88 -49
- package/dist/src/backend/services/session/resources/agent-session.accessor.js.map +1 -1
- package/dist/src/backend/services/session/resources/agent-session.accessor.test.js +27 -0
- package/dist/src/backend/services/session/resources/agent-session.accessor.test.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-client-handler.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-client-handler.js +31 -16
- package/dist/src/backend/services/session/service/acp/acp-client-handler.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-client-handler.test.js +41 -7
- package/dist/src/backend/services/session/service/acp/acp-client-handler.test.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.d.ts +2 -0
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.js +25 -6
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.test.js +81 -3
- package/dist/src/backend/services/session/service/acp/acp-runtime-manager.test.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.d.ts +1 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.js +13 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.test.js +34 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-app-server-acp-adapter.test.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-rpc-client.d.ts +7 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-rpc-client.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-rpc-client.js +25 -8
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-rpc-client.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-rpc-client.test.js +28 -0
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/codex-rpc-client.test.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/command-metadata.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/command-metadata.js +3 -26
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/command-metadata.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/command-metadata.test.js +30 -4
- package/dist/src/backend/services/session/service/acp/codex-app-server-adapter/command-metadata.test.js.map +1 -1
- package/dist/src/backend/services/session/service/acp/codex-cli-import-resolution.integration.test.js +17 -5
- package/dist/src/backend/services/session/service/acp/codex-cli-import-resolution.integration.test.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/stop.handler.test.js +23 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers/handlers/stop.handler.test.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.d.ts +10 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.js +72 -2
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.js.map +1 -1
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.test.js +66 -0
- package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.test.js.map +1 -1
- package/dist/src/backend/services/session/service/data/session-data.service.d.ts +3 -0
- package/dist/src/backend/services/session/service/data/session-data.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/data/session-data.service.js +3 -0
- package/dist/src/backend/services/session/service/data/session-data.service.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.d.ts +5 -1
- package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.js +14 -5
- package/dist/src/backend/services/session/service/lifecycle/session.lifecycle.service.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.permission.service.d.ts +1 -0
- package/dist/src/backend/services/session/service/lifecycle/session.permission.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.permission.service.js +50 -7
- package/dist/src/backend/services/session/service/lifecycle/session.permission.service.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.permission.service.test.js +68 -0
- package/dist/src/backend/services/session/service/lifecycle/session.permission.service.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.repository.d.ts +2 -0
- package/dist/src/backend/services/session/service/lifecycle/session.repository.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.repository.js +3 -0
- package/dist/src/backend/services/session/service/lifecycle/session.repository.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.repository.test.js +6 -0
- package/dist/src/backend/services/session/service/lifecycle/session.repository.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.service.coverage.test.js +65 -2
- package/dist/src/backend/services/session/service/lifecycle/session.service.coverage.test.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.service.d.ts +7 -0
- package/dist/src/backend/services/session/service/lifecycle/session.service.d.ts.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.service.js +54 -2
- package/dist/src/backend/services/session/service/lifecycle/session.service.js.map +1 -1
- package/dist/src/backend/services/session/service/lifecycle/session.service.test.js +254 -3
- package/dist/src/backend/services/session/service/lifecycle/session.service.test.js.map +1 -1
- package/dist/src/backend/services/terminal/service/terminal.service.d.ts +1 -2
- package/dist/src/backend/services/terminal/service/terminal.service.d.ts.map +1 -1
- package/dist/src/backend/services/terminal/service/terminal.service.js +95 -9
- package/dist/src/backend/services/terminal/service/terminal.service.js.map +1 -1
- package/dist/src/backend/services/terminal/service/terminal.service.test.js +16 -0
- package/dist/src/backend/services/terminal/service/terminal.service.test.js.map +1 -1
- package/dist/src/backend/services/workspace/resources/workspace.accessor.d.ts +3 -1
- package/dist/src/backend/services/workspace/resources/workspace.accessor.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/resources/workspace.accessor.js +15 -0
- package/dist/src/backend/services/workspace/resources/workspace.accessor.js.map +1 -1
- package/dist/src/backend/services/workspace/resources/workspace.accessor.test.js +37 -1
- package/dist/src/backend/services/workspace/resources/workspace.accessor.test.js.map +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/creation.service.test.js +1 -0
- package/dist/src/backend/services/workspace/service/lifecycle/creation.service.test.js.map +1 -1
- package/dist/src/backend/services/workspace/service/lifecycle/data.service.d.ts +9 -0
- package/dist/src/backend/services/workspace/service/lifecycle/data.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/query/project-management.service.d.ts +2 -0
- package/dist/src/backend/services/workspace/service/query/project-management.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/query/workspace-query.service.d.ts +6 -2
- package/dist/src/backend/services/workspace/service/query/workspace-query.service.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/query/workspace-query.service.js +38 -26
- package/dist/src/backend/services/workspace/service/query/workspace-query.service.js.map +1 -1
- package/dist/src/backend/services/workspace/service/query/workspace-query.service.test.js +42 -6
- package/dist/src/backend/services/workspace/service/query/workspace-query.service.test.js.map +1 -1
- package/dist/src/backend/services/workspace/service/state/kanban-state.d.ts.map +1 -1
- package/dist/src/backend/services/workspace/service/state/kanban-state.js +1 -3
- package/dist/src/backend/services/workspace/service/state/kanban-state.js.map +1 -1
- package/dist/src/backend/services/workspace/service/state/pending-request-type.js +2 -2
- package/dist/src/backend/services/workspace/service/state/pending-request-type.js.map +1 -1
- package/dist/src/backend/services/workspace/service/state/pending-request-type.test.js +7 -0
- package/dist/src/backend/services/workspace/service/state/pending-request-type.test.js.map +1 -1
- package/dist/src/backend/services/workspace/service/state/workspace-runtime-state.js +1 -1
- package/dist/src/backend/services/workspace/service/state/workspace-runtime-state.js.map +1 -1
- package/dist/src/backend/services/workspace/service/worktree/worktree-init.test.js +5 -0
- package/dist/src/backend/services/workspace/service/worktree/worktree-init.test.js.map +1 -1
- package/dist/src/backend/services/workspace-snapshot-store.service.test.js +7 -5
- package/dist/src/backend/services/workspace-snapshot-store.service.test.js.map +1 -1
- package/dist/src/backend/trpc/admin.trpc.d.ts +6 -2
- package/dist/src/backend/trpc/admin.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/auto-iteration.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/auto-iteration.trpc.js +38 -2
- package/dist/src/backend/trpc/auto-iteration.trpc.js.map +1 -1
- package/dist/src/backend/trpc/index.d.ts +267 -4
- package/dist/src/backend/trpc/index.d.ts.map +1 -1
- package/dist/src/backend/trpc/index.js +2 -0
- package/dist/src/backend/trpc/index.js.map +1 -1
- package/dist/src/backend/trpc/periodic-task.trpc.d.ts +153 -0
- package/dist/src/backend/trpc/periodic-task.trpc.d.ts.map +1 -0
- package/dist/src/backend/trpc/periodic-task.trpc.js +59 -0
- package/dist/src/backend/trpc/periodic-task.trpc.js.map +1 -0
- package/dist/src/backend/trpc/project.trpc.d.ts +2 -0
- package/dist/src/backend/trpc/project.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/session.router.test.js +6 -6
- package/dist/src/backend/trpc/session.router.test.js.map +1 -1
- package/dist/src/backend/trpc/session.trpc.d.ts +5 -0
- package/dist/src/backend/trpc/session.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/session.trpc.js +2 -2
- package/dist/src/backend/trpc/session.trpc.js.map +1 -1
- package/dist/src/backend/trpc/workspace/init.router.test.js +44 -4
- package/dist/src/backend/trpc/workspace/init.router.test.js.map +1 -1
- package/dist/src/backend/trpc/workspace/init.trpc.d.ts +1 -0
- package/dist/src/backend/trpc/workspace/init.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/workspace/init.trpc.js +25 -19
- package/dist/src/backend/trpc/workspace/init.trpc.js.map +1 -1
- package/dist/src/backend/trpc/workspace/workspace-helpers.d.ts +2 -0
- package/dist/src/backend/trpc/workspace/workspace-helpers.d.ts.map +1 -1
- package/dist/src/backend/trpc/workspace.trpc.d.ts +102 -2
- package/dist/src/backend/trpc/workspace.trpc.d.ts.map +1 -1
- package/dist/src/backend/trpc/workspace.trpc.js +32 -0
- package/dist/src/backend/trpc/workspace.trpc.js.map +1 -1
- package/dist/src/cli/database-path.d.ts +8 -0
- package/dist/src/cli/database-path.d.ts.map +1 -0
- package/dist/src/cli/database-path.js +15 -0
- package/dist/src/cli/database-path.js.map +1 -0
- package/dist/src/cli/database-path.test.d.ts +2 -0
- package/dist/src/cli/database-path.test.d.ts.map +1 -0
- package/dist/src/cli/database-path.test.js +51 -0
- package/dist/src/cli/database-path.test.js.map +1 -0
- package/dist/src/cli/index.js +4 -12
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/cli/proxy.d.ts.map +1 -1
- package/dist/src/cli/proxy.js +2 -5
- package/dist/src/cli/proxy.js.map +1 -1
- package/dist/src/shared/core/ci-status.d.ts.map +1 -1
- package/dist/src/shared/core/ci-status.js +10 -9
- package/dist/src/shared/core/ci-status.js.map +1 -1
- package/dist/src/shared/core/enums.d.ts +16 -0
- package/dist/src/shared/core/enums.d.ts.map +1 -1
- package/dist/src/shared/core/enums.js +14 -0
- package/dist/src/shared/core/enums.js.map +1 -1
- package/dist/src/shared/core/index.d.ts +1 -1
- package/dist/src/shared/core/index.d.ts.map +1 -1
- package/dist/src/shared/core/index.js +1 -1
- package/dist/src/shared/core/index.js.map +1 -1
- package/dist/src/shared/github-types.d.ts +1 -1
- package/dist/src/shared/github-types.d.ts.map +1 -1
- package/dist/src/shared/pending-request-types.d.ts +4 -0
- package/dist/src/shared/pending-request-types.d.ts.map +1 -1
- package/dist/src/shared/pending-request-types.js +6 -0
- package/dist/src/shared/pending-request-types.js.map +1 -1
- package/dist/src/shared/schemas/export-data.schema.d.ts +12 -0
- package/dist/src/shared/schemas/export-data.schema.d.ts.map +1 -1
- package/dist/src/shared/schemas/export-data.schema.js +4 -1
- package/dist/src/shared/schemas/export-data.schema.js.map +1 -1
- package/dist/src/shared/session-runtime.d.ts +2 -0
- package/dist/src/shared/session-runtime.d.ts.map +1 -1
- package/dist/src/shared/session-runtime.js +6 -0
- package/dist/src/shared/session-runtime.js.map +1 -1
- package/dist/tsconfig.backend.tsbuildinfo +1 -1
- package/package.json +23 -15
- package/prisma/migrations/20260217000000_add_auto_approve_permissions/migration.sql +2 -0
- package/prisma/migrations/20260410000000_remove_auto_approve_permissions/migration.sql +2 -0
- package/prisma/migrations/20260414120000_add_performance_indexes/migration.sql +23 -0
- package/prisma/migrations/20260512204732_add_periodic_tasks/migration.sql +125 -0
- package/prisma/schema.prisma +76 -0
- package/dist/client/assets/_baseUniq-CRIXZajf.js +0 -1
- package/dist/client/assets/architectureDiagram-Q4EWVU46-CR--POQ9.js +0 -36
- package/dist/client/assets/blockDiagram-DXYQGD6D-JuBGkp-x.js +0 -132
- package/dist/client/assets/channel-BToPvV0p.js +0 -1
- package/dist/client/assets/chunk-4TB4RGXK-YVAR8wg-.js +0 -206
- package/dist/client/assets/chunk-OYMX7WX6-u9Af6O8U.js +0 -231
- package/dist/client/assets/classDiagram-6PBFFD2Q-CdGzzfRv.js +0 -1
- package/dist/client/assets/classDiagram-v2-HSJHXN6E-CdGzzfRv.js +0 -1
- package/dist/client/assets/clone-DZkyOsGH.js +0 -1
- package/dist/client/assets/dagre-KV5264BT-DzucNBZu.js +0 -4
- package/dist/client/assets/diagram-5BDNPKRD-C6OYvRyt.js +0 -10
- package/dist/client/assets/diagram-G4DWMVQ6-DrQYwY3E.js +0 -24
- package/dist/client/assets/diagram-MMDJMWI5-CfInQsB1.js +0 -43
- package/dist/client/assets/diagram-TYMM5635-CwNYFf_u.js +0 -24
- package/dist/client/assets/gitGraphDiagram-UUTBAWPF-VkjInTZg.js +0 -106
- package/dist/client/assets/graph-C3Zfn3Km.js +0 -1
- package/dist/client/assets/index-CBgUr8yV.css +0 -1
- package/dist/client/assets/infoDiagram-42DDH7IO-Dp-vRCFg.js +0 -2
- package/dist/client/assets/layout-BVsX4tmn.js +0 -1
- package/dist/client/assets/min-DH_RgixA.js +0 -1
- package/dist/client/assets/pieDiagram-DEJITSTG-S9DirkFb.js +0 -30
- package/dist/client/assets/quadrantDiagram-34T5L4WZ-CVmMYBg1.js +0 -7
- package/dist/client/assets/sankeyDiagram-XADWPNL6-Zd2-RQeP.js +0 -10
- package/dist/client/assets/stateDiagram-FHFEXIEX-DX9qwfCK.js +0 -1
- package/dist/client/assets/stateDiagram-v2-QKLJ7IA2-CJ_nRdIj.js +0 -1
- package/dist/client/assets/wardley-RL74JXVD-DiTLa5PU.js +0 -162
- package/dist/client/assets/wardleyDiagram-NUSXRM2D-CJRSuGsS.js +0 -20
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
import{g as oe}from"./chunk-FMBD7UC4-BVYe-KgE.js";import{_ as d,Z as at,u as T,w as he,v as S,V as de,X as ge,aD as ue,ac as pe,ad as fe,t as R,a9 as xe,aE as F,aF as St,aG as $,aH as ye,K as tt,E as be,aI as we,z as Nt,aJ as Ct,aK as me}from"./index-DXhws4gD.js";import{c as Le}from"./clone-DZkyOsGH.js";import{G as Se}from"./graph-C3Zfn3Km.js";import{c as ke}from"./channel-BToPvV0p.js";import"./_baseUniq-CRIXZajf.js";var yt=(function(){var e=d(function(D,w,g,y){for(g=g||{},y=D.length;y--;g[D[y]]=w);return g},"o"),t=[1,15],a=[1,7],i=[1,13],l=[1,14],s=[1,19],r=[1,16],n=[1,17],c=[1,18],x=[8,30],o=[8,10,21,28,29,30,31,39,43,46],u=[1,23],b=[1,24],f=[8,10,15,16,21,28,29,30,31,39,43,46],m=[8,10,15,16,21,27,28,29,30,31,39,43,46],v=[1,49],L={trace:d(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"NODE_ID",34:"DIR",35:"NODE_DSTART",36:"NODE_DEND",37:"BLOCK_ARROW_START",38:"BLOCK_ARROW_END",39:"classDef",40:"CLASSDEF_ID",41:"CLASSDEF_STYLEOPTS",42:"DEFAULT",43:"class",44:"CLASSENTITY_IDS",45:"STYLECLASS",46:"style",47:"STYLE_ENTITY_IDS",48:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:d(function(w,g,y,k,E,h,W){var p=h.length-1;switch(E){case 4:k.getLogger().debug("Rule: separator (NL) ");break;case 5:k.getLogger().debug("Rule: separator (Space) ");break;case 6:k.getLogger().debug("Rule: separator (EOF) ");break;case 7:k.getLogger().debug("Rule: hierarchy: ",h[p-1]),k.setHierarchy(h[p-1]);break;case 8:k.getLogger().debug("Stop NL ");break;case 9:k.getLogger().debug("Stop EOF ");break;case 10:k.getLogger().debug("Stop NL2 ");break;case 11:k.getLogger().debug("Stop EOF2 ");break;case 12:k.getLogger().debug("Rule: statement: ",h[p]),typeof h[p].length=="number"?this.$=h[p]:this.$=[h[p]];break;case 13:k.getLogger().debug("Rule: statement #2: ",h[p-1]),this.$=[h[p-1]].concat(h[p]);break;case 14:k.getLogger().debug("Rule: link: ",h[p],w),this.$={edgeTypeStr:h[p],label:""};break;case 15:k.getLogger().debug("Rule: LABEL link: ",h[p-3],h[p-1],h[p]),this.$={edgeTypeStr:h[p],label:h[p-1]};break;case 18:const O=parseInt(h[p]),Z=k.generateId();this.$={id:Z,type:"space",label:"",width:O,children:[]};break;case 23:k.getLogger().debug("Rule: (nodeStatement link node) ",h[p-2],h[p-1],h[p]," typestr: ",h[p-1].edgeTypeStr);const V=k.edgeStrToEdgeData(h[p-1].edgeTypeStr);this.$=[{id:h[p-2].id,label:h[p-2].label,type:h[p-2].type,directions:h[p-2].directions},{id:h[p-2].id+"-"+h[p].id,start:h[p-2].id,end:h[p].id,label:h[p-1].label,type:"edge",directions:h[p].directions,arrowTypeEnd:V,arrowTypeStart:"arrow_open"},{id:h[p].id,label:h[p].label,type:k.typeStr2Type(h[p].typeStr),directions:h[p].directions}];break;case 24:k.getLogger().debug("Rule: nodeStatement (abc88 node size) ",h[p-1],h[p]),this.$={id:h[p-1].id,label:h[p-1].label,type:k.typeStr2Type(h[p-1].typeStr),directions:h[p-1].directions,widthInColumns:parseInt(h[p],10)};break;case 25:k.getLogger().debug("Rule: nodeStatement (node) ",h[p]),this.$={id:h[p].id,label:h[p].label,type:k.typeStr2Type(h[p].typeStr),directions:h[p].directions,widthInColumns:1};break;case 26:k.getLogger().debug("APA123",this?this:"na"),k.getLogger().debug("COLUMNS: ",h[p]),this.$={type:"column-setting",columns:h[p]==="auto"?-1:parseInt(h[p])};break;case 27:k.getLogger().debug("Rule: id-block statement : ",h[p-2],h[p-1]),k.generateId(),this.$={...h[p-2],type:"composite",children:h[p-1]};break;case 28:k.getLogger().debug("Rule: blockStatement : ",h[p-2],h[p-1],h[p]);const st=k.generateId();this.$={id:st,type:"composite",label:"",children:h[p-1]};break;case 29:k.getLogger().debug("Rule: node (NODE_ID separator): ",h[p]),this.$={id:h[p]};break;case 30:k.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",h[p-1],h[p]),this.$={id:h[p-1],label:h[p].label,typeStr:h[p].typeStr,directions:h[p].directions};break;case 31:k.getLogger().debug("Rule: dirList: ",h[p]),this.$=[h[p]];break;case 32:k.getLogger().debug("Rule: dirList: ",h[p-1],h[p]),this.$=[h[p-1]].concat(h[p]);break;case 33:k.getLogger().debug("Rule: nodeShapeNLabel: ",h[p-2],h[p-1],h[p]),this.$={typeStr:h[p-2]+h[p],label:h[p-1]};break;case 34:k.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",h[p-3],h[p-2]," #3:",h[p-1],h[p]),this.$={typeStr:h[p-3]+h[p],label:h[p-2],directions:h[p-1]};break;case 35:case 36:this.$={type:"classDef",id:h[p-1].trim(),css:h[p].trim()};break;case 37:this.$={type:"applyClass",id:h[p-1].trim(),styleClass:h[p].trim()};break;case 38:this.$={type:"applyStyles",id:h[p-1].trim(),stylesStr:h[p].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:t,11:3,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:i,29:l,31:s,39:r,43:n,46:c},{8:[1,20]},e(x,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:t,21:a,28:i,29:l,31:s,39:r,43:n,46:c}),e(o,[2,16],{14:22,15:u,16:b}),e(o,[2,17]),e(o,[2,18]),e(o,[2,19]),e(o,[2,20]),e(o,[2,21]),e(o,[2,22]),e(f,[2,25],{27:[1,25]}),e(o,[2,26]),{19:26,26:12,31:s},{10:t,11:27,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:i,29:l,31:s,39:r,43:n,46:c},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},e(m,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},e(x,[2,13]),{26:35,31:s},{31:[2,14]},{17:[1,36]},e(f,[2,24]),{10:t,11:37,13:4,14:22,15:u,16:b,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:i,29:l,31:s,39:r,43:n,46:c},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},e(m,[2,30]),{18:[1,43]},{18:[1,44]},e(f,[2,23]),{18:[1,45]},{30:[1,46]},e(o,[2,28]),e(o,[2,35]),e(o,[2,36]),e(o,[2,37]),e(o,[2,38]),{36:[1,47]},{33:48,34:v},{15:[1,50]},e(o,[2,27]),e(m,[2,33]),{38:[1,51]},{33:52,34:v,38:[2,31]},{31:[2,15]},e(m,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:d(function(w,g){if(g.recoverable)this.trace(w);else{var y=new Error(w);throw y.hash=g,y}},"parseError"),parse:d(function(w){var g=this,y=[0],k=[],E=[null],h=[],W=this.table,p="",O=0,Z=0,V=2,st=1,ne=h.slice.call(arguments,1),z=Object.create(this.lexer),q={yy:{}};for(var gt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,gt)&&(q.yy[gt]=this.yy[gt]);z.setInput(w,q.yy),q.yy.lexer=z,q.yy.parser=this,typeof z.yylloc>"u"&&(z.yylloc={});var ut=z.yylloc;h.push(ut);var le=z.options&&z.options.ranges;typeof q.yy.parseError=="function"?this.parseError=q.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ce(Y){y.length=y.length-2*Y,E.length=E.length-Y,h.length=h.length-Y}d(ce,"popStack");function Bt(){var Y;return Y=k.pop()||z.lex()||st,typeof Y!="number"&&(Y instanceof Array&&(k=Y,Y=k.pop()),Y=g.symbols_[Y]||Y),Y}d(Bt,"lex");for(var P,J,K,pt,Q={},it,G,It,nt;;){if(J=y[y.length-1],this.defaultActions[J]?K=this.defaultActions[J]:((P===null||typeof P>"u")&&(P=Bt()),K=W[J]&&W[J][P]),typeof K>"u"||!K.length||!K[0]){var ft="";nt=[];for(it in W[J])this.terminals_[it]&&it>V&&nt.push("'"+this.terminals_[it]+"'");z.showPosition?ft="Parse error on line "+(O+1)+`:
|
|
2
|
-
`+z.showPosition()+`
|
|
3
|
-
Expecting `+nt.join(", ")+", got '"+(this.terminals_[P]||P)+"'":ft="Parse error on line "+(O+1)+": Unexpected "+(P==st?"end of input":"'"+(this.terminals_[P]||P)+"'"),this.parseError(ft,{text:z.match,token:this.terminals_[P]||P,line:z.yylineno,loc:ut,expected:nt})}if(K[0]instanceof Array&&K.length>1)throw new Error("Parse Error: multiple actions possible at state: "+J+", token: "+P);switch(K[0]){case 1:y.push(P),E.push(z.yytext),h.push(z.yylloc),y.push(K[1]),P=null,Z=z.yyleng,p=z.yytext,O=z.yylineno,ut=z.yylloc;break;case 2:if(G=this.productions_[K[1]][1],Q.$=E[E.length-G],Q._$={first_line:h[h.length-(G||1)].first_line,last_line:h[h.length-1].last_line,first_column:h[h.length-(G||1)].first_column,last_column:h[h.length-1].last_column},le&&(Q._$.range=[h[h.length-(G||1)].range[0],h[h.length-1].range[1]]),pt=this.performAction.apply(Q,[p,Z,O,q.yy,K[1],E,h].concat(ne)),typeof pt<"u")return pt;G&&(y=y.slice(0,-1*G*2),E=E.slice(0,-1*G),h=h.slice(0,-1*G)),y.push(this.productions_[K[1]][0]),E.push(Q.$),h.push(Q._$),It=W[y[y.length-2]][y[y.length-1]],y.push(It);break;case 3:return!0}}return!0},"parse")},_=(function(){var D={EOF:1,parseError:d(function(g,y){if(this.yy.parser)this.yy.parser.parseError(g,y);else throw new Error(g)},"parseError"),setInput:d(function(w,g){return this.yy=g||this.yy||{},this._input=w,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:d(function(){var w=this._input[0];this.yytext+=w,this.yyleng++,this.offset++,this.match+=w,this.matched+=w;var g=w.match(/(?:\r\n?|\n).*/g);return g?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),w},"input"),unput:d(function(w){var g=w.length,y=w.split(/(?:\r\n?|\n)/g);this._input=w+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-g),this.offset-=g;var k=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),y.length-1&&(this.yylineno-=y.length-1);var E=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:y?(y.length===k.length?this.yylloc.first_column:0)+k[k.length-y.length].length-y[0].length:this.yylloc.first_column-g},this.options.ranges&&(this.yylloc.range=[E[0],E[0]+this.yyleng-g]),this.yyleng=this.yytext.length,this},"unput"),more:d(function(){return this._more=!0,this},"more"),reject:d(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
|
-
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:d(function(w){this.unput(this.match.slice(w))},"less"),pastInput:d(function(){var w=this.matched.substr(0,this.matched.length-this.match.length);return(w.length>20?"...":"")+w.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:d(function(){var w=this.match;return w.length<20&&(w+=this._input.substr(0,20-w.length)),(w.substr(0,20)+(w.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:d(function(){var w=this.pastInput(),g=new Array(w.length+1).join("-");return w+this.upcomingInput()+`
|
|
5
|
-
`+g+"^"},"showPosition"),test_match:d(function(w,g){var y,k,E;if(this.options.backtrack_lexer&&(E={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(E.yylloc.range=this.yylloc.range.slice(0))),k=w[0].match(/(?:\r\n?|\n).*/g),k&&(this.yylineno+=k.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:k?k[k.length-1].length-k[k.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+w[0].length},this.yytext+=w[0],this.match+=w[0],this.matches=w,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(w[0].length),this.matched+=w[0],y=this.performAction.call(this,this.yy,this,g,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),y)return y;if(this._backtrack){for(var h in E)this[h]=E[h];return!1}return!1},"test_match"),next:d(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var w,g,y,k;this._more||(this.yytext="",this.match="");for(var E=this._currentRules(),h=0;h<E.length;h++)if(y=this._input.match(this.rules[E[h]]),y&&(!g||y[0].length>g[0].length)){if(g=y,k=h,this.options.backtrack_lexer){if(w=this.test_match(y,E[h]),w!==!1)return w;if(this._backtrack){g=!1;continue}else return!1}else if(!this.options.flex)break}return g?(w=this.test_match(g,E[k]),w!==!1?w:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
|
6
|
-
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:d(function(){var g=this.next();return g||this.lex()},"lex"),begin:d(function(g){this.conditionStack.push(g)},"begin"),popState:d(function(){var g=this.conditionStack.length-1;return g>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:d(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:d(function(g){return g=this.conditionStack.length-1-Math.abs(g||0),g>=0?this.conditionStack[g]:"INITIAL"},"topState"),pushState:d(function(g){this.begin(g)},"pushState"),stateStackSize:d(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:d(function(g,y,k,E){switch(k){case 0:return g.getLogger().debug("Found block-beta"),10;case 1:return g.getLogger().debug("Found id-block"),29;case 2:return g.getLogger().debug("Found block"),10;case 3:g.getLogger().debug(".",y.yytext);break;case 4:g.getLogger().debug("_",y.yytext);break;case 5:return 5;case 6:return y.yytext=-1,28;case 7:return y.yytext=y.yytext.replace(/columns\s+/,""),g.getLogger().debug("COLUMNS (LEX)",y.yytext),28;case 8:this.pushState("md_string");break;case 9:return"MD_STR";case 10:this.popState();break;case 11:this.pushState("string");break;case 12:g.getLogger().debug("LEX: POPPING STR:",y.yytext),this.popState();break;case 13:return g.getLogger().debug("LEX: STR end:",y.yytext),"STR";case 14:return y.yytext=y.yytext.replace(/space\:/,""),g.getLogger().debug("SPACE NUM (LEX)",y.yytext),21;case 15:return y.yytext="1",g.getLogger().debug("COLUMNS (LEX)",y.yytext),21;case 16:return 42;case 17:return"LINKSTYLE";case 18:return"INTERPOLATE";case 19:return this.pushState("CLASSDEF"),39;case 20:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 21:return this.popState(),this.pushState("CLASSDEFID"),40;case 22:return this.popState(),41;case 23:return this.pushState("CLASS"),43;case 24:return this.popState(),this.pushState("CLASS_STYLE"),44;case 25:return this.popState(),45;case 26:return this.pushState("STYLE_STMNT"),46;case 27:return this.popState(),this.pushState("STYLE_DEFINITION"),47;case 28:return this.popState(),48;case 29:return this.pushState("acc_title"),"acc_title";case 30:return this.popState(),"acc_title_value";case 31:return this.pushState("acc_descr"),"acc_descr";case 32:return this.popState(),"acc_descr_value";case 33:this.pushState("acc_descr_multiline");break;case 34:this.popState();break;case 35:return"acc_descr_multiline_value";case 36:return 30;case 37:return this.popState(),g.getLogger().debug("Lex: (("),"NODE_DEND";case 38:return this.popState(),g.getLogger().debug("Lex: (("),"NODE_DEND";case 39:return this.popState(),g.getLogger().debug("Lex: ))"),"NODE_DEND";case 40:return this.popState(),g.getLogger().debug("Lex: (("),"NODE_DEND";case 41:return this.popState(),g.getLogger().debug("Lex: (("),"NODE_DEND";case 42:return this.popState(),g.getLogger().debug("Lex: (-"),"NODE_DEND";case 43:return this.popState(),g.getLogger().debug("Lex: -)"),"NODE_DEND";case 44:return this.popState(),g.getLogger().debug("Lex: (("),"NODE_DEND";case 45:return this.popState(),g.getLogger().debug("Lex: ]]"),"NODE_DEND";case 46:return this.popState(),g.getLogger().debug("Lex: ("),"NODE_DEND";case 47:return this.popState(),g.getLogger().debug("Lex: ])"),"NODE_DEND";case 48:return this.popState(),g.getLogger().debug("Lex: /]"),"NODE_DEND";case 49:return this.popState(),g.getLogger().debug("Lex: /]"),"NODE_DEND";case 50:return this.popState(),g.getLogger().debug("Lex: )]"),"NODE_DEND";case 51:return this.popState(),g.getLogger().debug("Lex: )"),"NODE_DEND";case 52:return this.popState(),g.getLogger().debug("Lex: ]>"),"NODE_DEND";case 53:return this.popState(),g.getLogger().debug("Lex: ]"),"NODE_DEND";case 54:return g.getLogger().debug("Lexa: -)"),this.pushState("NODE"),35;case 55:return g.getLogger().debug("Lexa: (-"),this.pushState("NODE"),35;case 56:return g.getLogger().debug("Lexa: ))"),this.pushState("NODE"),35;case 57:return g.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;case 58:return g.getLogger().debug("Lex: ((("),this.pushState("NODE"),35;case 59:return g.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;case 60:return g.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;case 61:return g.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;case 62:return g.getLogger().debug("Lexc: >"),this.pushState("NODE"),35;case 63:return g.getLogger().debug("Lexa: (["),this.pushState("NODE"),35;case 64:return g.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;case 65:return this.pushState("NODE"),35;case 66:return this.pushState("NODE"),35;case 67:return this.pushState("NODE"),35;case 68:return this.pushState("NODE"),35;case 69:return this.pushState("NODE"),35;case 70:return this.pushState("NODE"),35;case 71:return this.pushState("NODE"),35;case 72:return g.getLogger().debug("Lexa: ["),this.pushState("NODE"),35;case 73:return this.pushState("BLOCK_ARROW"),g.getLogger().debug("LEX ARR START"),37;case 74:return g.getLogger().debug("Lex: NODE_ID",y.yytext),31;case 75:return g.getLogger().debug("Lex: EOF",y.yytext),8;case 76:this.pushState("md_string");break;case 77:this.pushState("md_string");break;case 78:return"NODE_DESCR";case 79:this.popState();break;case 80:g.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 81:g.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 82:return g.getLogger().debug("LEX: NODE_DESCR:",y.yytext),"NODE_DESCR";case 83:g.getLogger().debug("LEX POPPING"),this.popState();break;case 84:g.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 85:return y.yytext=y.yytext.replace(/^,\s*/,""),g.getLogger().debug("Lex (right): dir:",y.yytext),"DIR";case 86:return y.yytext=y.yytext.replace(/^,\s*/,""),g.getLogger().debug("Lex (left):",y.yytext),"DIR";case 87:return y.yytext=y.yytext.replace(/^,\s*/,""),g.getLogger().debug("Lex (x):",y.yytext),"DIR";case 88:return y.yytext=y.yytext.replace(/^,\s*/,""),g.getLogger().debug("Lex (y):",y.yytext),"DIR";case 89:return y.yytext=y.yytext.replace(/^,\s*/,""),g.getLogger().debug("Lex (up):",y.yytext),"DIR";case 90:return y.yytext=y.yytext.replace(/^,\s*/,""),g.getLogger().debug("Lex (down):",y.yytext),"DIR";case 91:return y.yytext="]>",g.getLogger().debug("Lex (ARROW_DIR end):",y.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";case 92:return g.getLogger().debug("Lex: LINK","#"+y.yytext+"#"),15;case 93:return g.getLogger().debug("Lex: LINK",y.yytext),15;case 94:return g.getLogger().debug("Lex: LINK",y.yytext),15;case 95:return g.getLogger().debug("Lex: LINK",y.yytext),15;case 96:return g.getLogger().debug("Lex: START_LINK",y.yytext),this.pushState("LLABEL"),16;case 97:return g.getLogger().debug("Lex: START_LINK",y.yytext),this.pushState("LLABEL"),16;case 98:return g.getLogger().debug("Lex: START_LINK",y.yytext),this.pushState("LLABEL"),16;case 99:this.pushState("md_string");break;case 100:return g.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";case 101:return this.popState(),g.getLogger().debug("Lex: LINK","#"+y.yytext+"#"),15;case 102:return this.popState(),g.getLogger().debug("Lex: LINK",y.yytext),15;case 103:return this.popState(),g.getLogger().debug("Lex: LINK",y.yytext),15;case 104:return g.getLogger().debug("Lex: COLON",y.yytext),y.yytext=y.yytext.slice(1),27}},"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block:)/,/^(?:block\b)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[28],inclusive:!1},STYLE_STMNT:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[22],inclusive:!1},CLASSDEF:{rules:[20,21],inclusive:!1},CLASS_STYLE:{rules:[25],inclusive:!1},CLASS:{rules:[24],inclusive:!1},LLABEL:{rules:[99,100,101,102,103],inclusive:!1},ARROW_DIR:{rules:[85,86,87,88,89,90,91],inclusive:!1},BLOCK_ARROW:{rules:[76,81,84],inclusive:!1},NODE:{rules:[37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,77,80],inclusive:!1},md_string:{rules:[9,10,78,79],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[12,13,82,83],inclusive:!1},acc_descr_multiline:{rules:[34,35],inclusive:!1},acc_descr:{rules:[32],inclusive:!1},acc_title:{rules:[30],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,11,14,15,16,17,18,19,23,26,29,31,33,36,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,92,93,94,95,96,97,98,104],inclusive:!0}}};return D})();L.lexer=_;function N(){this.yy={}}return d(N,"Parser"),N.prototype=L,L.Parser=N,new N})();yt.parser=yt;var ve=yt,U=new Map,kt=[],bt=new Map,Ot="color",Rt="fill",Ee="bgFill",Ht=",",_e=R(),ct=new Map,vt="",De=d(e=>be.sanitizeText(e,_e),"sanitizeText"),Te=d(function(e,t=""){let a=ct.get(e);a||(a={id:e,styles:[],textStyles:[]},ct.set(e,a)),t?.split(Ht).forEach(i=>{const l=i.replace(/([^;]*);/,"$1").trim();if(RegExp(Ot).exec(i)){const r=l.replace(Rt,Ee).replace(Ot,Rt);a.textStyles.push(r)}a.styles.push(l)})},"addStyleClass"),Be=d(function(e,t=""){const a=U.get(e);t!=null&&(a.styles=t.split(Ht))},"addStyle2Node"),Ie=d(function(e,t){e.split(",").forEach(function(a){let i=U.get(a);if(i===void 0){const l=a.trim();i={id:l,type:"na",children:[]},U.set(l,i)}i.classes||(i.classes=[]),i.classes.push(t)})},"setCssClass"),Kt=d((e,t)=>{const a=e.flat(),i=[],s=a.find(r=>r?.type==="column-setting")?.columns??-1;for(const r of a){if(typeof s=="number"&&s>0&&r.type!=="column-setting"&&typeof r.widthInColumns=="number"&&r.widthInColumns>s&&S.warn(`Block ${r.id} width ${r.widthInColumns} exceeds configured column width ${s}`),r.label&&(r.label=De(r.label)),r.type==="classDef"){Te(r.id,r.css);continue}if(r.type==="applyClass"){Ie(r.id,r?.styleClass??"");continue}if(r.type==="applyStyles"){r?.stylesStr&&Be(r.id,r?.stylesStr);continue}if(r.type==="column-setting")t.columns=r.columns??-1;else if(r.type==="edge"){const n=(bt.get(r.id)??0)+1;bt.set(r.id,n),r.id=n+"-"+r.id,kt.push(r)}else{r.label||(r.type==="composite"?r.label="":r.label=r.id);const n=U.get(r.id);if(n===void 0?U.set(r.id,r):(r.type!=="na"&&(n.type=r.type),r.label!==r.id&&(n.label=r.label)),r.children&&Kt(r.children,r),r.type==="space"){const c=r.width??1;for(let x=0;x<c;x++){const o=Le(r);o.id=o.id+"-"+x,U.set(o.id,o),i.push(o)}}else n===void 0&&i.push(r)}}t.children=i},"populateBlockDatabase"),Et=[],rt={id:"root",type:"composite",children:[],columns:-1},Ne=d(()=>{S.debug("Clear called"),de(),rt={id:"root",type:"composite",children:[],columns:-1},U=new Map([["root",rt]]),Et=[],ct=new Map,kt=[],bt=new Map,vt=""},"clear");function Xt(e){switch(S.debug("typeStr2Type",e),e){case"[]":return"square";case"()":return S.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}d(Xt,"typeStr2Type");function Ut(e){return S.debug("typeStr2Type",e),e==="=="?"thick":"normal"}d(Ut,"edgeTypeStr2Type");function jt(e){switch(e.replace(/^[\s-]+|[\s-]+$/g,"")){case"x":return"arrow_cross";case"o":return"arrow_circle";case">":return"arrow_point";default:return""}}d(jt,"edgeStrToEdgeData");var zt=0,Ce=d(()=>(zt++,"id-"+Math.random().toString(36).substr(2,12)+"-"+zt),"generateId"),Oe=d(e=>{rt.children=e,Kt(e,rt),Et=rt.children},"setHierarchy"),Re=d(e=>{const t=U.get(e);return t?t.columns?t.columns:t.children?t.children.length:-1:-1},"getColumns"),ze=d(()=>[...U.values()],"getBlocksFlat"),Ae=d(()=>Et||[],"getBlocks"),Me=d(()=>kt,"getEdges"),Fe=d(e=>U.get(e),"getBlock"),Pe=d(e=>{U.set(e.id,e)},"setBlock"),We=d(e=>{vt=e},"setDiagramId"),Ye=d(()=>vt,"getDiagramId"),He=d(()=>S,"getLogger"),Ke=d(function(){return ct},"getClasses"),Xe={getConfig:d(()=>at().block,"getConfig"),typeStr2Type:Xt,edgeTypeStr2Type:Ut,edgeStrToEdgeData:jt,getLogger:He,getBlocksFlat:ze,getBlocks:Ae,getEdges:Me,setHierarchy:Oe,getBlock:Fe,setBlock:Pe,getColumns:Re,getClasses:Ke,clear:Ne,generateId:Ce,setDiagramId:We,getDiagramId:Ye},Ue=Xe,xt=d((e,t)=>{const a=ke,i=a(e,"r"),l=a(e,"g"),s=a(e,"b");return ge(i,l,s,t)},"fade"),je=d(e=>`.label {
|
|
7
|
-
font-family: ${e.fontFamily};
|
|
8
|
-
color: ${e.nodeTextColor||e.textColor};
|
|
9
|
-
}
|
|
10
|
-
.cluster-label text {
|
|
11
|
-
fill: ${e.titleColor};
|
|
12
|
-
}
|
|
13
|
-
.cluster-label span,p {
|
|
14
|
-
color: ${e.titleColor};
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
.label text,span,p {
|
|
20
|
-
fill: ${e.nodeTextColor||e.textColor};
|
|
21
|
-
color: ${e.nodeTextColor||e.textColor};
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
.node rect,
|
|
25
|
-
.node circle,
|
|
26
|
-
.node ellipse,
|
|
27
|
-
.node polygon,
|
|
28
|
-
.node path {
|
|
29
|
-
fill: ${e.mainBkg};
|
|
30
|
-
stroke: ${e.nodeBorder};
|
|
31
|
-
stroke-width: 1px;
|
|
32
|
-
}
|
|
33
|
-
.flowchart-label text {
|
|
34
|
-
text-anchor: middle;
|
|
35
|
-
}
|
|
36
|
-
// .flowchart-label .text-outer-tspan {
|
|
37
|
-
// text-anchor: middle;
|
|
38
|
-
// }
|
|
39
|
-
// .flowchart-label .text-inner-tspan {
|
|
40
|
-
// text-anchor: start;
|
|
41
|
-
// }
|
|
42
|
-
|
|
43
|
-
.node .label {
|
|
44
|
-
text-align: center;
|
|
45
|
-
}
|
|
46
|
-
.node.clickable {
|
|
47
|
-
cursor: pointer;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
.arrowheadPath {
|
|
51
|
-
fill: ${e.arrowheadColor};
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
.edgePath .path {
|
|
55
|
-
stroke: ${e.lineColor};
|
|
56
|
-
stroke-width: 2.0px;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
.flowchart-link {
|
|
60
|
-
stroke: ${e.lineColor};
|
|
61
|
-
fill: none;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
.edgeLabel {
|
|
65
|
-
background-color: ${e.edgeLabelBackground};
|
|
66
|
-
/*
|
|
67
|
-
* This is for backward compatibility with existing code that didn't
|
|
68
|
-
* add a \`<p>\` around edge labels.
|
|
69
|
-
*
|
|
70
|
-
* TODO: We should probably remove this in a future release.
|
|
71
|
-
*/
|
|
72
|
-
p {
|
|
73
|
-
margin: 0;
|
|
74
|
-
padding: 0;
|
|
75
|
-
display: inline;
|
|
76
|
-
}
|
|
77
|
-
rect {
|
|
78
|
-
opacity: 0.5;
|
|
79
|
-
background-color: ${e.edgeLabelBackground};
|
|
80
|
-
fill: ${e.edgeLabelBackground};
|
|
81
|
-
}
|
|
82
|
-
text-align: center;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
/* For html labels only */
|
|
86
|
-
.labelBkg {
|
|
87
|
-
background-color: ${e.edgeLabelBackground};
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
.node .cluster {
|
|
91
|
-
// fill: ${xt(e.mainBkg,.5)};
|
|
92
|
-
fill: ${xt(e.clusterBkg,.5)};
|
|
93
|
-
stroke: ${xt(e.clusterBorder,.2)};
|
|
94
|
-
box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
|
|
95
|
-
stroke-width: 1px;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
.cluster text {
|
|
99
|
-
fill: ${e.titleColor};
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
.cluster span,p {
|
|
103
|
-
color: ${e.titleColor};
|
|
104
|
-
}
|
|
105
|
-
/* .cluster div {
|
|
106
|
-
color: ${e.titleColor};
|
|
107
|
-
} */
|
|
108
|
-
|
|
109
|
-
div.mermaidTooltip {
|
|
110
|
-
position: absolute;
|
|
111
|
-
text-align: center;
|
|
112
|
-
max-width: 200px;
|
|
113
|
-
padding: 2px;
|
|
114
|
-
font-family: ${e.fontFamily};
|
|
115
|
-
font-size: 12px;
|
|
116
|
-
background: ${e.tertiaryColor};
|
|
117
|
-
border: 1px solid ${e.border2};
|
|
118
|
-
border-radius: 2px;
|
|
119
|
-
pointer-events: none;
|
|
120
|
-
z-index: 100;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
.flowchartTitleText {
|
|
124
|
-
text-anchor: middle;
|
|
125
|
-
font-size: 18px;
|
|
126
|
-
fill: ${e.textColor};
|
|
127
|
-
}
|
|
128
|
-
${oe()}
|
|
129
|
-
`,"getStyles"),Ve=je,Ge=d((e,t,a,i)=>{t.forEach(l=>{sr[l](e,a,i)})},"insertMarkers"),Ze=d((e,t,a)=>{S.trace("Making markers for ",a),e.append("defs").append("marker").attr("id",a+"_"+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",a+"_"+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"),qe=d((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+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",a+"_"+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"),Je=d((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+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",a+"_"+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"),Qe=d((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+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",a+"_"+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"),$e=d((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+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",a+"_"+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"),tr=d((e,t,a)=>{e.append("marker").attr("id",a+"_"+t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).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",a+"_"+t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).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"),er=d((e,t,a)=>{e.append("marker").attr("id",a+"_"+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",a+"_"+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"),rr=d((e,t,a)=>{e.append("marker").attr("id",a+"_"+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",a+"_"+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"),ar=d((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),sr={extension:Ze,composition:qe,aggregation:Je,dependency:Qe,lollipop:$e,point:tr,circle:er,cross:rr,barb:ar},ir=Ge,C=R()?.block?.padding??8;function wt(e,t){if(e===0||!Number.isInteger(e))throw new Error("Columns must be an integer !== 0.");if(t<0||!Number.isInteger(t))throw new Error("Position must be a non-negative integer."+t);if(e<0)return{px:t,py:0};if(e===1)return{px:0,py:t};const a=t%e,i=Math.floor(t/e);return{px:a,py:i}}d(wt,"calculateBlockPosition");var nr=d(e=>{let t=0,a=0;for(const i of e.children){const{width:l,height:s,x:r,y:n}=i.size??{width:0,height:0,x:0,y:0};S.debug("getMaxChildSize abc95 child:",i.id,"width:",l,"height:",s,"x:",r,"y:",n,i.type),i.type!=="space"&&(l>t&&(t=l/(i.widthInColumns??1)),s>a&&(a=s))}return{width:t,height:a}},"getMaxChildSize");function ot(e,t,a=0,i=0){S.debug("setBlockSizes abc95 (start)",e.id,e?.size?.x,"block width =",e?.size,"siblingWidth",a),e?.size?.width||(e.size={width:a,height:i,x:0,y:0});let l=0,s=0;if(e.children?.length>0){for(const f of e.children)ot(f,t);const r=nr(e);l=r.width,s=r.height,S.debug("setBlockSizes abc95 maxWidth of",e.id,":s children is ",l,s);for(const f of e.children)f.size&&(S.debug(`abc95 Setting size of children of ${e.id} id=${f.id} ${l} ${s} ${JSON.stringify(f.size)}`),f.size.width=l*(f.widthInColumns??1)+C*((f.widthInColumns??1)-1),f.size.height=s,f.size.x=0,f.size.y=0,S.debug(`abc95 updating size of ${e.id} children child:${f.id} maxWidth:${l} maxHeight:${s}`));for(const f of e.children)ot(f,t,l,s);const n=e.columns??-1;let c=0;for(const f of e.children)c+=f.widthInColumns??1;let x=e.children.length;n>0&&n<c&&(x=n);const o=Math.ceil(c/x);let u=x*(l+C)+C,b=o*(s+C)+C;if(u<a){S.debug(`Detected to small sibling: abc95 ${e.id} siblingWidth ${a} siblingHeight ${i} width ${u}`),u=a,b=i;const f=(a-x*C-C)/x,m=(i-o*C-C)/o;S.debug("Size indata abc88",e.id,"childWidth",f,"maxWidth",l),S.debug("Size indata abc88",e.id,"childHeight",m,"maxHeight",s),S.debug("Size indata abc88 xSize",x,"padding",C);for(const v of e.children)v.size&&(v.size.width=f,v.size.height=m,v.size.x=0,v.size.y=0)}if(S.debug(`abc95 (finale calc) ${e.id} xSize ${x} ySize ${o} columns ${n}${e.children.length} width=${Math.max(u,e.size?.width||0)}`),u<(e?.size?.width||0)){u=e?.size?.width||0;const f=n>0?Math.min(e.children.length,n):e.children.length;if(f>0){const m=(u-f*C-C)/f;S.debug("abc95 (growing to fit) width",e.id,u,e.size?.width,m);for(const v of e.children)v.size&&(v.size.width=m)}}e.size={width:u,height:b,x:0,y:0}}S.debug("setBlockSizes abc94 (done)",e.id,e?.size?.x,e?.size?.width,e?.size?.y,e?.size?.height)}d(ot,"setBlockSizes");function _t(e,t){S.debug(`abc85 layout blocks (=>layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`);const a=e.columns??-1;if(S.debug("layoutBlocks columns abc95",e.id,"=>",a,e),e.children&&e.children.length>0){const i=e?.children[0]?.size?.width??0,l=e.children.length*i+(e.children.length-1)*C;S.debug("widthOfChildren 88",l,"posX");const s=new Map;{let o=0;for(const u of e.children){if(!u.size)continue;const{py:b}=wt(a,o),f=s.get(b)??0;u.size.height>f&&s.set(b,u.size.height);let m=u?.widthInColumns??1;a>0&&(m=Math.min(m,a-o%a)),o+=m}}const r=new Map;{let o=0;const u=[...s.keys()].sort((b,f)=>b-f);for(const b of u)r.set(b,o),o+=(s.get(b)??0)+C}let n=0;S.debug("abc91 block?.size?.x",e.id,e?.size?.x);let c=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-C,x=0;for(const o of e.children){const u=e;if(!o.size)continue;const{width:b,height:f}=o.size,{px:m,py:v}=wt(a,n);if(v!=x&&(x=v,c=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-C,S.debug("New row in layout for block",e.id," and child ",o.id,x)),S.debug(`abc89 layout blocks (child) id: ${o.id} Pos: ${n} (px, py) ${m},${v} (${u?.size?.x},${u?.size?.y}) parent: ${u.id} width: ${b}${C}`),u.size){const _=b/2;o.size.x=c+C+_,S.debug(`abc91 layout blocks (calc) px, pyid:${o.id} startingPos=X${c} new startingPosX${o.size.x} ${_} padding=${C} width=${b} halfWidth=${_} => x:${o.size.x} y:${o.size.y} ${o.widthInColumns} (width * (child?.w || 1)) / 2 ${b*(o?.widthInColumns??1)/2}`),c=o.size.x+_;const N=r.get(v)??0,D=s.get(v)??f;o.size.y=u.size.y-u.size.height/2+N+D/2+C,S.debug(`abc88 layout blocks (calc) px, pyid:${o.id}startingPosX${c}${C}${_}=>x:${o.size.x}y:${o.size.y}${o.widthInColumns}(width * (child?.w || 1)) / 2${b*(o?.widthInColumns??1)/2}`)}o.children&&_t(o);let L=o?.widthInColumns??1;a>0&&(L=Math.min(L,a-n%a)),n+=L,S.debug("abc88 columnsPos",o,n)}}S.debug(`layout blocks (<==layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`)}d(_t,"layoutBlocks");function Dt(e,{minX:t,minY:a,maxX:i,maxY:l}={minX:0,minY:0,maxX:0,maxY:0}){if(e.size&&e.id!=="root"){const{x:s,y:r,width:n,height:c}=e.size;s-n/2<t&&(t=s-n/2),r-c/2<a&&(a=r-c/2),s+n/2>i&&(i=s+n/2),r+c/2>l&&(l=r+c/2)}if(e.children)for(const s of e.children)({minX:t,minY:a,maxX:i,maxY:l}=Dt(s,{minX:t,minY:a,maxX:i,maxY:l}));return{minX:t,minY:a,maxX:i,maxY:l}}d(Dt,"findBounds");function Vt(e){const t=e.getBlock("root");if(!t)return;ot(t,e,0,0),_t(t),S.debug("getBlocks",JSON.stringify(t,null,2));const{minX:a,minY:i,maxX:l,maxY:s}=Dt(t),r=s-i,n=l-a;return{x:a,y:i,width:n,height:r}}d(Vt,"layout");var lr=d(async(e,t,a,i=!1,l=!1)=>{let s=t||"";typeof s=="object"&&(s=s[0]);const r=R(),n=F(r);return await St(e,s,{style:a,isTitle:i,useHtmlLabels:n,markdown:!1,isNode:l,width:Number.POSITIVE_INFINITY},r)},"createLabel"),X=lr,cr=d((e,t,a,i,l)=>{t.arrowTypeStart&&At(e,"start",t.arrowTypeStart,a,i,l),t.arrowTypeEnd&&At(e,"end",t.arrowTypeEnd,a,i,l)},"addEdgeMarkers"),or={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},At=d((e,t,a,i,l,s)=>{const r=or[a];if(!r){S.warn(`Unknown arrow type: ${a}`);return}const n=t==="start"?"Start":"End";e.attr(`marker-${t}`,`url(${i}#${l}_${s}-${r}${n})`)},"addEdgeMarker"),mt={},M={},hr=d(async(e,t)=>{const a=R(),i=F(a),l=e.insert("g").attr("class","edgeLabel"),s=l.insert("g").attr("class","label"),r=t.labelType==="markdown",n=await St(e,t.label,{style:t.labelStyle,useHtmlLabels:i,addSvgBackground:r,isNode:!1,markdown:r,width:r?void 0:Number.POSITIVE_INFINITY},a);s.node().appendChild(n);let c=n.getBBox(),x=c;if(i){const u=n.children[0],b=T(n);c=u.getBoundingClientRect(),x=c,b.attr("width",c.width),b.attr("height",c.height)}else{const u=T(n).select("text").node();u&&typeof u.getBBox=="function"&&(x=u.getBBox())}s.attr("transform",$(x,i)),mt[t.id]=l,t.width=c.width,t.height=c.height;let o;if(t.startLabelLeft){const u=e.insert("g").attr("class","edgeTerminals"),b=u.insert("g").attr("class","inner"),f=await X(b,t.startLabelLeft,t.labelStyle);o=f;let m=f.getBBox();if(i){const v=f.children[0],L=T(f);m=v.getBoundingClientRect(),L.attr("width",m.width),L.attr("height",m.height)}b.attr("transform",$(m,i)),M[t.id]||(M[t.id]={}),M[t.id].startLeft=u,et(o,t.startLabelLeft)}if(t.startLabelRight){const u=e.insert("g").attr("class","edgeTerminals"),b=u.insert("g").attr("class","inner"),f=await X(u,t.startLabelRight,t.labelStyle);o=f,b.node().appendChild(f);let m=f.getBBox();if(i){const v=f.children[0],L=T(f);m=v.getBoundingClientRect(),L.attr("width",m.width),L.attr("height",m.height)}b.attr("transform",$(m,i)),M[t.id]||(M[t.id]={}),M[t.id].startRight=u,et(o,t.startLabelRight)}if(t.endLabelLeft){const u=e.insert("g").attr("class","edgeTerminals"),b=u.insert("g").attr("class","inner"),f=await X(b,t.endLabelLeft,t.labelStyle);o=f;let m=f.getBBox();if(i){const v=f.children[0],L=T(f);m=v.getBoundingClientRect(),L.attr("width",m.width),L.attr("height",m.height)}b.attr("transform",$(m,i)),u.node().appendChild(f),M[t.id]||(M[t.id]={}),M[t.id].endLeft=u,et(o,t.endLabelLeft)}if(t.endLabelRight){const u=e.insert("g").attr("class","edgeTerminals"),b=u.insert("g").attr("class","inner"),f=await X(b,t.endLabelRight,t.labelStyle);o=f;let m=f.getBBox();if(i){const v=f.children[0],L=T(f);m=v.getBoundingClientRect(),L.attr("width",m.width),L.attr("height",m.height)}b.attr("transform",$(m,i)),u.node().appendChild(f),M[t.id]||(M[t.id]={}),M[t.id].endRight=u,et(o,t.endLabelRight)}return n},"insertEdgeLabel");function et(e,t){F(R())&&e&&(e.style.width=t.length*9+"px",e.style.height="12px")}d(et,"setTerminalWidth");var dr=d((e,t)=>{S.debug("Moving label abc88 ",e.id,e.label,mt[e.id],t);let a=t.updatedPath?t.updatedPath:t.originalPath;const i=R(),{subGraphTitleTotalMargin:l}=ye(i);if(e.label){const s=mt[e.id];let r=e.x,n=e.y;if(a){const c=tt.calcLabelPosition(a);S.debug("Moving label "+e.label+" from (",r,",",n,") to (",c.x,",",c.y,") abc88"),t.updatedPath&&(r=c.x,n=c.y)}s.attr("transform",`translate(${r}, ${n+l/2})`)}if(e.startLabelLeft){const s=M[e.id].startLeft;let r=e.x,n=e.y;if(a){const c=tt.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_left",a);r=c.x,n=c.y}s.attr("transform",`translate(${r}, ${n})`)}if(e.startLabelRight){const s=M[e.id].startRight;let r=e.x,n=e.y;if(a){const c=tt.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_right",a);r=c.x,n=c.y}s.attr("transform",`translate(${r}, ${n})`)}if(e.endLabelLeft){const s=M[e.id].endLeft;let r=e.x,n=e.y;if(a){const c=tt.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_left",a);r=c.x,n=c.y}s.attr("transform",`translate(${r}, ${n})`)}if(e.endLabelRight){const s=M[e.id].endRight;let r=e.x,n=e.y;if(a){const c=tt.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_right",a);r=c.x,n=c.y}s.attr("transform",`translate(${r}, ${n})`)}},"positionEdgeLabel"),gr=d((e,t)=>{const a=e.x,i=e.y,l=Math.abs(t.x-a),s=Math.abs(t.y-i),r=e.width/2,n=e.height/2;return l>=r||s>=n},"outsideNode"),ur=d((e,t,a)=>{S.debug(`intersection calc abc89:
|
|
130
|
-
outsidePoint: ${JSON.stringify(t)}
|
|
131
|
-
insidePoint : ${JSON.stringify(a)}
|
|
132
|
-
node : x:${e.x} y:${e.y} w:${e.width} h:${e.height}`);const i=e.x,l=e.y,s=Math.abs(i-a.x),r=e.width/2;let n=a.x<t.x?r-s:r+s;const c=e.height/2,x=Math.abs(t.y-a.y),o=Math.abs(t.x-a.x);if(Math.abs(l-t.y)*r>Math.abs(i-t.x)*c){let u=a.y<t.y?t.y-c-l:l-c-t.y;n=o*u/x;const b={x:a.x<t.x?a.x+n:a.x-o+n,y:a.y<t.y?a.y+x-u:a.y-x+u};return n===0&&(b.x=t.x,b.y=t.y),o===0&&(b.x=t.x),x===0&&(b.y=t.y),S.debug(`abc89 topp/bott calc, Q ${x}, q ${u}, R ${o}, r ${n}`,b),b}else{a.x<t.x?n=t.x-r-i:n=i-r-t.x;let u=x*n/o,b=a.x<t.x?a.x+o-n:a.x-o+n,f=a.y<t.y?a.y+u:a.y-u;return S.debug(`sides calc abc89, Q ${x}, q ${u}, R ${o}, r ${n}`,{_x:b,_y:f}),n===0&&(b=t.x,f=t.y),o===0&&(b=t.x),x===0&&(f=t.y),{x:b,y:f}}},"intersection"),Mt=d((e,t)=>{S.debug("abc88 cutPathAtIntersect",e,t);let a=[],i=e[0],l=!1;return e.forEach(s=>{if(!gr(t,s)&&!l){const r=ur(t,i,s);let n=!1;a.forEach(c=>{n=n||c.x===r.x&&c.y===r.y}),a.some(c=>c.x===r.x&&c.y===r.y)||a.push(r),l=!0}else i=s,l||a.push(s)}),a},"cutPathAtIntersect"),pr=d(function(e,t,a,i,l,s,r){let n=a.points;S.debug("abc88 InsertEdge: edge=",a,"e=",t);let c=!1;const x=s.node(t.v);var o=s.node(t.w);o?.intersect&&x?.intersect&&(n=n.slice(1,a.points.length-1),n.unshift(x.intersect(n[0])),n.push(o.intersect(n[n.length-1]))),a.toCluster&&(S.debug("to cluster abc88",i[a.toCluster]),n=Mt(a.points,i[a.toCluster].node),c=!0),a.fromCluster&&(S.debug("from cluster abc88",i[a.fromCluster]),n=Mt(n.reverse(),i[a.fromCluster].node).reverse(),c=!0);const u=n.filter(w=>!Number.isNaN(w.y));let b=fe;a.curve&&(l==="graph"||l==="flowchart")&&(b=a.curve);const{x:f,y:m}=ue(a),v=pe().x(f).y(m).curve(b);let L;switch(a.thickness){case"normal":L="edge-thickness-normal";break;case"thick":L="edge-thickness-thick";break;case"invisible":L="edge-thickness-thick";break;default:L=""}switch(a.pattern){case"solid":L+=" edge-pattern-solid";break;case"dotted":L+=" edge-pattern-dotted";break;case"dashed":L+=" edge-pattern-dashed";break}const _=e.append("path").attr("d",v(u)).attr("id",a.id).attr("class"," "+L+(a.classes?" "+a.classes:"")).attr("style",a.style);let N="";(R().flowchart.arrowMarkerAbsolute||R().state.arrowMarkerAbsolute)&&(N=xe(!0)),cr(_,a,N,r,l);let D={};return c&&(D.updatedPath=n),D.originalPath=a.points,D},"insertEdge"),fr=d(e=>{const t=new Set;for(const a of e)switch(a){case"x":t.add("right"),t.add("left");break;case"y":t.add("up"),t.add("down");break;default:t.add(a);break}return t},"expandAndDeduplicateDirections"),xr=d((e,t,a)=>{const i=fr(e),l=2,s=t.height+2*a.padding,r=s/l,n=t.width+2*r+a.padding,c=a.padding/2;return i.has("right")&&i.has("left")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:r,y:0},{x:n/2,y:2*c},{x:n-r,y:0},{x:n,y:0},{x:n,y:-s/3},{x:n+2*c,y:-s/2},{x:n,y:-2*s/3},{x:n,y:-s},{x:n-r,y:-s},{x:n/2,y:-s-2*c},{x:r,y:-s},{x:0,y:-s},{x:0,y:-2*s/3},{x:-2*c,y:-s/2},{x:0,y:-s/3}]:i.has("right")&&i.has("left")&&i.has("up")?[{x:r,y:0},{x:n-r,y:0},{x:n,y:-s/2},{x:n-r,y:-s},{x:r,y:-s},{x:0,y:-s/2}]:i.has("right")&&i.has("left")&&i.has("down")?[{x:0,y:0},{x:r,y:-s},{x:n-r,y:-s},{x:n,y:0}]:i.has("right")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:n,y:-r},{x:n,y:-s+r},{x:0,y:-s}]:i.has("left")&&i.has("up")&&i.has("down")?[{x:n,y:0},{x:0,y:-r},{x:0,y:-s+r},{x:n,y:-s}]:i.has("right")&&i.has("left")?[{x:r,y:0},{x:r,y:-c},{x:n-r,y:-c},{x:n-r,y:0},{x:n,y:-s/2},{x:n-r,y:-s},{x:n-r,y:-s+c},{x:r,y:-s+c},{x:r,y:-s},{x:0,y:-s/2}]:i.has("up")&&i.has("down")?[{x:n/2,y:0},{x:0,y:-c},{x:r,y:-c},{x:r,y:-s+c},{x:0,y:-s+c},{x:n/2,y:-s},{x:n,y:-s+c},{x:n-r,y:-s+c},{x:n-r,y:-c},{x:n,y:-c}]:i.has("right")&&i.has("up")?[{x:0,y:0},{x:n,y:-r},{x:0,y:-s}]:i.has("right")&&i.has("down")?[{x:0,y:0},{x:n,y:0},{x:0,y:-s}]:i.has("left")&&i.has("up")?[{x:n,y:0},{x:0,y:-r},{x:n,y:-s}]:i.has("left")&&i.has("down")?[{x:n,y:0},{x:0,y:0},{x:n,y:-s}]:i.has("right")?[{x:r,y:-c},{x:r,y:-c},{x:n-r,y:-c},{x:n-r,y:0},{x:n,y:-s/2},{x:n-r,y:-s},{x:n-r,y:-s+c},{x:r,y:-s+c},{x:r,y:-s+c}]:i.has("left")?[{x:r,y:0},{x:r,y:-c},{x:n-r,y:-c},{x:n-r,y:-s+c},{x:r,y:-s+c},{x:r,y:-s},{x:0,y:-s/2}]:i.has("up")?[{x:r,y:-c},{x:r,y:-s+c},{x:0,y:-s+c},{x:n/2,y:-s},{x:n,y:-s+c},{x:n-r,y:-s+c},{x:n-r,y:-c}]:i.has("down")?[{x:n/2,y:0},{x:0,y:-c},{x:r,y:-c},{x:r,y:-s+c},{x:n-r,y:-s+c},{x:n-r,y:-c},{x:n,y:-c}]:[{x:0,y:0}]},"getArrowPoints");function Gt(e,t){return e.intersect(t)}d(Gt,"intersectNode");var yr=Gt;function Zt(e,t,a,i){var l=e.x,s=e.y,r=l-i.x,n=s-i.y,c=Math.sqrt(t*t*n*n+a*a*r*r),x=Math.abs(t*a*r/c);i.x<l&&(x=-x);var o=Math.abs(t*a*n/c);return i.y<s&&(o=-o),{x:l+x,y:s+o}}d(Zt,"intersectEllipse");var qt=Zt;function Jt(e,t,a){return qt(e,t,t,a)}d(Jt,"intersectCircle");var br=Jt;function Qt(e,t,a,i){var l,s,r,n,c,x,o,u,b,f,m,v,L,_,N;if(l=t.y-e.y,r=e.x-t.x,c=t.x*e.y-e.x*t.y,b=l*a.x+r*a.y+c,f=l*i.x+r*i.y+c,!(b!==0&&f!==0&&Lt(b,f))&&(s=i.y-a.y,n=a.x-i.x,x=i.x*a.y-a.x*i.y,o=s*e.x+n*e.y+x,u=s*t.x+n*t.y+x,!(o!==0&&u!==0&&Lt(o,u))&&(m=l*n-s*r,m!==0)))return v=Math.abs(m/2),L=r*x-n*c,_=L<0?(L-v)/m:(L+v)/m,L=s*c-l*x,N=L<0?(L-v)/m:(L+v)/m,{x:_,y:N}}d(Qt,"intersectLine");function Lt(e,t){return e*t>0}d(Lt,"sameSign");var wr=Qt,mr=$t;function $t(e,t,a){var i=e.x,l=e.y,s=[],r=Number.POSITIVE_INFINITY,n=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(m){r=Math.min(r,m.x),n=Math.min(n,m.y)}):(r=Math.min(r,t.x),n=Math.min(n,t.y));for(var c=i-e.width/2-r,x=l-e.height/2-n,o=0;o<t.length;o++){var u=t[o],b=t[o<t.length-1?o+1:0],f=wr(e,a,{x:c+u.x,y:x+u.y},{x:c+b.x,y:x+b.y});f&&s.push(f)}return s.length?(s.length>1&&s.sort(function(m,v){var L=m.x-a.x,_=m.y-a.y,N=Math.sqrt(L*L+_*_),D=v.x-a.x,w=v.y-a.y,g=Math.sqrt(D*D+w*w);return N<g?-1:N===g?0:1}),s[0]):e}d($t,"intersectPolygon");var Lr=d((e,t)=>{var a=e.x,i=e.y,l=t.x-a,s=t.y-i,r=e.width/2,n=e.height/2,c,x;return Math.abs(s)*r>Math.abs(l)*n?(s<0&&(n=-n),c=s===0?0:n*l/s,x=n):(l<0&&(r=-r),c=r,x=l===0?0:r*s/l),{x:a+c,y:i+x}},"intersectRect"),Sr=Lr,B={node:yr,circle:br,ellipse:qt,polygon:mr,rect:Sr},A=d(async(e,t,a,i)=>{const l=R();let s;const r=t.useHtmlLabels||F(l);a?s=a:s="node default";const n=e.insert("g").attr("class",s).attr("id",t.domId||t.id),c=n.insert("g").attr("class","label").attr("style",t.labelStyle);let x;t.labelText===void 0?x="":x=typeof t.labelText=="string"?t.labelText:t.labelText[0];let o;t.labelType==="markdown"?o=St(c,Nt(Ct(x),l),{useHtmlLabels:r,width:t.width||l.flowchart.wrappingWidth,classes:"markdown-node-label"},l):o=await X(c,Nt(Ct(x),l),t.labelStyle,!1,i);let u=o.getBBox();const b=t.padding/2;if(F(l)){const f=o.children[0],m=T(o);await me(f,x),u=f.getBoundingClientRect(),m.attr("width",u.width),m.attr("height",u.height)}return r?c.attr("transform","translate("+-u.width/2+", "+-u.height/2+")"):c.attr("transform","translate(0, "+-u.height/2+")"),t.centerLabel&&c.attr("transform","translate("+-u.width/2+", "+-u.height/2+")"),c.insert("rect",":first-child"),{shapeSvg:n,bbox:u,halfPadding:b,label:c}},"labelHelper"),I=d((e,t)=>{const a=t.node().getBBox();e.width=a.width,e.height=a.height},"updateNodeBounds");function j(e,t,a,i){return e.insert("polygon",":first-child").attr("points",i.map(function(l){return l.x+","+l.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+a/2+")")}d(j,"insertPolygonShape");var kr=d(async(e,t)=>{t.useHtmlLabels||F(R())||(t.centerLabel=!0);const{shapeSvg:i,bbox:l,halfPadding:s}=await A(e,t,"node "+t.classes,!0);S.info("Classes = ",t.classes);const r=i.insert("rect",":first-child");return r.attr("rx",t.rx).attr("ry",t.ry).attr("x",-l.width/2-s).attr("y",-l.height/2-s).attr("width",l.width+t.padding).attr("height",l.height+t.padding),I(t,r),t.intersect=function(n){return B.rect(t,n)},i},"note"),vr=kr,Ft=d(e=>e?" "+e:"","formatClass"),H=d((e,t)=>`${t||"node default"}${Ft(e.classes)} ${Ft(e.class)}`,"getClassesFromNode"),Pt=d(async(e,t)=>{const{shapeSvg:a,bbox:i}=await A(e,t,H(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=l+s,n=[{x:r/2,y:0},{x:r,y:-r/2},{x:r/2,y:-r},{x:0,y:-r/2}];S.info("Question main (Circle)");const c=j(a,r,r,n);return c.attr("style",t.style),I(t,c),t.intersect=function(x){return S.warn("Intersect called"),B.polygon(t,n,x)},a},"question"),Er=d((e,t)=>{const a=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=28,l=[{x:0,y:i/2},{x:i/2,y:0},{x:0,y:-i/2},{x:-i/2,y:0}];return a.insert("polygon",":first-child").attr("points",l.map(function(r){return r.x+","+r.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),t.width=28,t.height=28,t.intersect=function(r){return B.circle(t,14,r)},a},"choice"),_r=d(async(e,t)=>{const{shapeSvg:a,bbox:i}=await A(e,t,H(t,void 0),!0),l=4,s=i.height+t.padding,r=s/l,n=i.width+2*r+t.padding,c=[{x:r,y:0},{x:n-r,y:0},{x:n,y:-s/2},{x:n-r,y:-s},{x:r,y:-s},{x:0,y:-s/2}],x=j(a,n,s,c);return x.attr("style",t.style),I(t,x),t.intersect=function(o){return B.polygon(t,c,o)},a},"hexagon"),Dr=d(async(e,t)=>{const{shapeSvg:a,bbox:i}=await A(e,t,void 0,!0),l=2,s=i.height+2*t.padding,r=s/l,n=i.width+2*r+t.padding,c=xr(t.directions,i,t),x=j(a,n,s,c);return x.attr("style",t.style),I(t,x),t.intersect=function(o){return B.polygon(t,c,o)},a},"block_arrow"),Tr=d(async(e,t)=>{const{shapeSvg:a,bbox:i}=await A(e,t,H(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:-s/2,y:0},{x:l,y:0},{x:l,y:-s},{x:-s/2,y:-s},{x:0,y:-s/2}];return j(a,l,s,r).attr("style",t.style),t.width=l+s,t.height=s,t.intersect=function(c){return B.polygon(t,r,c)},a},"rect_left_inv_arrow"),Br=d(async(e,t)=>{const{shapeSvg:a,bbox:i}=await A(e,t,H(t),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:-2*s/6,y:0},{x:l-s/6,y:0},{x:l+2*s/6,y:-s},{x:s/6,y:-s}],n=j(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return B.polygon(t,r,c)},a},"lean_right"),Ir=d(async(e,t)=>{const{shapeSvg:a,bbox:i}=await A(e,t,H(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:2*s/6,y:0},{x:l+s/6,y:0},{x:l-2*s/6,y:-s},{x:-s/6,y:-s}],n=j(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return B.polygon(t,r,c)},a},"lean_left"),Nr=d(async(e,t)=>{const{shapeSvg:a,bbox:i}=await A(e,t,H(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:-2*s/6,y:0},{x:l+2*s/6,y:0},{x:l-s/6,y:-s},{x:s/6,y:-s}],n=j(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return B.polygon(t,r,c)},a},"trapezoid"),Cr=d(async(e,t)=>{const{shapeSvg:a,bbox:i}=await A(e,t,H(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:s/6,y:0},{x:l-s/6,y:0},{x:l+2*s/6,y:-s},{x:-2*s/6,y:-s}],n=j(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return B.polygon(t,r,c)},a},"inv_trapezoid"),Or=d(async(e,t)=>{const{shapeSvg:a,bbox:i}=await A(e,t,H(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:0,y:0},{x:l+s/2,y:0},{x:l,y:-s/2},{x:l+s/2,y:-s},{x:0,y:-s}],n=j(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return B.polygon(t,r,c)},a},"rect_right_inv_arrow"),Rr=d(async(e,t)=>{const{shapeSvg:a,bbox:i}=await A(e,t,H(t,void 0),!0),l=i.width+t.padding,s=l/2,r=s/(2.5+l/50),n=i.height+r+t.padding,c="M 0,"+r+" a "+s+","+r+" 0,0,0 "+l+" 0 a "+s+","+r+" 0,0,0 "+-l+" 0 l 0,"+n+" a "+s+","+r+" 0,0,0 "+l+" 0 l 0,"+-n,x=a.attr("label-offset-y",r).insert("path",":first-child").attr("style",t.style).attr("d",c).attr("transform","translate("+-l/2+","+-(n/2+r)+")");return I(t,x),t.intersect=function(o){const u=B.rect(t,o),b=u.x-t.x;if(s!=0&&(Math.abs(b)<t.width/2||Math.abs(b)==t.width/2&&Math.abs(u.y-t.y)>t.height/2-r)){let f=r*r*(1-b*b/(s*s));f!=0&&(f=Math.sqrt(f)),f=r-f,o.y-t.y>0&&(f=-f),u.y+=f}return u},a},"cylinder"),zr=d(async(e,t)=>{const{shapeSvg:a,bbox:i,halfPadding:l}=await A(e,t,"node "+t.classes+" "+t.class,!0),s=a.insert("rect",":first-child"),r=t.positioned?t.width:i.width+t.padding,n=t.positioned?t.height:i.height+t.padding,c=t.positioned?-r/2:-i.width/2-l,x=t.positioned?-n/2:-i.height/2-l;if(s.attr("class","basic label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",c).attr("y",x).attr("width",r).attr("height",n),t.props){const o=new Set(Object.keys(t.props));t.props.borders&&(ht(s,t.props.borders,r,n),o.delete("borders")),o.forEach(u=>{S.warn(`Unknown node property ${u}`)})}return I(t,s),t.intersect=function(o){return B.rect(t,o)},a},"rect"),Ar=d(async(e,t)=>{const{shapeSvg:a,bbox:i,halfPadding:l}=await A(e,t,"node "+t.classes,!0),s=a.insert("rect",":first-child"),r=t.positioned?t.width:i.width+t.padding,n=t.positioned?t.height:i.height+t.padding,c=t.positioned?-r/2:-i.width/2-l,x=t.positioned?-n/2:-i.height/2-l;if(s.attr("class","basic cluster composite label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",c).attr("y",x).attr("width",r).attr("height",n),t.props){const o=new Set(Object.keys(t.props));t.props.borders&&(ht(s,t.props.borders,r,n),o.delete("borders")),o.forEach(u=>{S.warn(`Unknown node property ${u}`)})}return I(t,s),t.intersect=function(o){return B.rect(t,o)},a},"composite"),Mr=d(async(e,t)=>{const{shapeSvg:a}=await A(e,t,"label",!0);S.trace("Classes = ",t.class);const i=a.insert("rect",":first-child"),l=0,s=0;if(i.attr("width",l).attr("height",s),a.attr("class","label edgeLabel"),t.props){const r=new Set(Object.keys(t.props));t.props.borders&&(ht(i,t.props.borders,l,s),r.delete("borders")),r.forEach(n=>{S.warn(`Unknown node property ${n}`)})}return I(t,i),t.intersect=function(r){return B.rect(t,r)},a},"labelRect");function ht(e,t,a,i){const l=[],s=d(n=>{l.push(n,0)},"addBorder"),r=d(n=>{l.push(0,n)},"skipBorder");t.includes("t")?(S.debug("add top border"),s(a)):r(a),t.includes("r")?(S.debug("add right border"),s(i)):r(i),t.includes("b")?(S.debug("add bottom border"),s(a)):r(a),t.includes("l")?(S.debug("add left border"),s(i)):r(i),e.attr("stroke-dasharray",l.join(" "))}d(ht,"applyNodePropertyBorders");var Fr=d(async(e,t)=>{let a;t.classes?a="node "+t.classes:a="node default";const i=e.insert("g").attr("class",a).attr("id",t.domId||t.id),l=i.insert("rect",":first-child"),s=i.insert("line"),r=i.insert("g").attr("class","label"),n=t.labelText.flat?t.labelText.flat():t.labelText;let c="";typeof n=="object"?c=n[0]:c=n,S.info("Label text abc79",c,n,typeof n=="object");const x=await X(r,c,t.labelStyle,!0,!0);let o={width:0,height:0};if(F(R())){const v=x.children[0],L=T(x);o=v.getBoundingClientRect(),L.attr("width",o.width),L.attr("height",o.height)}S.info("Text 2",n);const u=n.slice(1,n.length);let b=x.getBBox();const f=await X(r,u.join?u.join("<br/>"):u,t.labelStyle,!0,!0);if(F(R())){const v=f.children[0],L=T(f);o=v.getBoundingClientRect(),L.attr("width",o.width),L.attr("height",o.height)}const m=t.padding/2;return T(f).attr("transform","translate( "+(o.width>b.width?0:(b.width-o.width)/2)+", "+(b.height+m+5)+")"),T(x).attr("transform","translate( "+(o.width<b.width?0:-(b.width-o.width)/2)+", 0)"),o=r.node().getBBox(),r.attr("transform","translate("+-o.width/2+", "+(-o.height/2-m+3)+")"),l.attr("class","outer title-state").attr("x",-o.width/2-m).attr("y",-o.height/2-m).attr("width",o.width+t.padding).attr("height",o.height+t.padding),s.attr("class","divider").attr("x1",-o.width/2-m).attr("x2",o.width/2+m).attr("y1",-o.height/2-m+b.height+m).attr("y2",-o.height/2-m+b.height+m),I(t,l),t.intersect=function(v){return B.rect(t,v)},i},"rectWithTitle"),Pr=d(async(e,t)=>{const{shapeSvg:a,bbox:i}=await A(e,t,H(t,void 0),!0),l=i.height+t.padding,s=i.width+l/4+t.padding,r=a.insert("rect",":first-child").attr("style",t.style).attr("rx",l/2).attr("ry",l/2).attr("x",-s/2).attr("y",-l/2).attr("width",s).attr("height",l);return I(t,r),t.intersect=function(n){return B.rect(t,n)},a},"stadium"),Wr=d(async(e,t)=>{const{shapeSvg:a,bbox:i,halfPadding:l}=await A(e,t,H(t,void 0),!0),s=a.insert("circle",":first-child");return s.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l).attr("width",i.width+t.padding).attr("height",i.height+t.padding),S.info("Circle main"),I(t,s),t.intersect=function(r){return S.info("Circle intersect",t,i.width/2+l,r),B.circle(t,i.width/2+l,r)},a},"circle"),Yr=d(async(e,t)=>{const{shapeSvg:a,bbox:i,halfPadding:l}=await A(e,t,H(t,void 0),!0),s=5,r=a.insert("g",":first-child"),n=r.insert("circle"),c=r.insert("circle");return r.attr("class",t.class),n.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l+s).attr("width",i.width+t.padding+s*2).attr("height",i.height+t.padding+s*2),c.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l).attr("width",i.width+t.padding).attr("height",i.height+t.padding),S.info("DoubleCircle main"),I(t,n),t.intersect=function(x){return S.info("DoubleCircle intersect",t,i.width/2+l+s,x),B.circle(t,i.width/2+l+s,x)},a},"doublecircle"),Hr=d(async(e,t)=>{const{shapeSvg:a,bbox:i}=await A(e,t,H(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:0,y:0},{x:l,y:0},{x:l,y:-s},{x:0,y:-s},{x:0,y:0},{x:-8,y:0},{x:l+8,y:0},{x:l+8,y:-s},{x:-8,y:-s},{x:-8,y:0}],n=j(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return B.polygon(t,r,c)},a},"subroutine"),Kr=d((e,t)=>{const a=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=a.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),I(t,i),t.intersect=function(l){return B.circle(t,7,l)},a},"start"),Wt=d((e,t,a)=>{const i=e.insert("g").attr("class","node default").attr("id",t.domId||t.id);let l=70,s=10;a==="LR"&&(l=10,s=70);const r=i.append("rect").attr("x",-1*l/2).attr("y",-1*s/2).attr("width",l).attr("height",s).attr("class","fork-join");return I(t,r),t.height=t.height+t.padding/2,t.width=t.width+t.padding/2,t.intersect=function(n){return B.rect(t,n)},i},"forkJoin"),Xr=d((e,t)=>{const a=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=a.insert("circle",":first-child"),l=a.insert("circle",":first-child");return l.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),i.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),I(t,l),t.intersect=function(s){return B.circle(t,7,s)},a},"end"),Ur=d(async(e,t)=>{const a=t.padding/2,i=4,l=8;let s;t.classes?s="node "+t.classes:s="node default";const r=e.insert("g").attr("class",s).attr("id",t.domId||t.id),n=r.insert("rect",":first-child"),c=r.insert("line"),x=r.insert("line");let o=0,u=i;const b=r.insert("g").attr("class","label");let f=0;const m=t.classData.annotations?.[0],v=t.classData.annotations[0]?"«"+t.classData.annotations[0]+"»":"",L=await X(b,v,t.labelStyle,!0,!0);let _=L.getBBox();if(F(R())){const E=L.children[0],h=T(L);_=E.getBoundingClientRect(),h.attr("width",_.width),h.attr("height",_.height)}t.classData.annotations[0]&&(u+=_.height+i,o+=_.width);let N=t.classData.label;t.classData.type!==void 0&&t.classData.type!==""&&(F(R())?N+="<"+t.classData.type+">":N+="<"+t.classData.type+">");const D=await X(b,N,t.labelStyle,!0,!0);T(D).attr("class","classTitle");let w=D.getBBox();if(F(R())){const E=D.children[0],h=T(D);w=E.getBoundingClientRect(),h.attr("width",w.width),h.attr("height",w.height)}u+=w.height+i,w.width>o&&(o=w.width);const g=[];t.classData.members.forEach(async E=>{const h=E.getDisplayDetails();let W=h.displayText;F(R())&&(W=W.replace(/</g,"<").replace(/>/g,">"));const p=await X(b,W,h.cssStyle?h.cssStyle:t.labelStyle,!0,!0);let O=p.getBBox();if(F(R())){const Z=p.children[0],V=T(p);O=Z.getBoundingClientRect(),V.attr("width",O.width),V.attr("height",O.height)}O.width>o&&(o=O.width),u+=O.height+i,g.push(p)}),u+=l;const y=[];if(t.classData.methods.forEach(async E=>{const h=E.getDisplayDetails();let W=h.displayText;F(R())&&(W=W.replace(/</g,"<").replace(/>/g,">"));const p=await X(b,W,h.cssStyle?h.cssStyle:t.labelStyle,!0,!0);let O=p.getBBox();if(F(R())){const Z=p.children[0],V=T(p);O=Z.getBoundingClientRect(),V.attr("width",O.width),V.attr("height",O.height)}O.width>o&&(o=O.width),u+=O.height+i,y.push(p)}),u+=l,m){let E=(o-_.width)/2;T(L).attr("transform","translate( "+(-1*o/2+E)+", "+-1*u/2+")"),f=_.height+i}let k=(o-w.width)/2;return T(D).attr("transform","translate( "+(-1*o/2+k)+", "+(-1*u/2+f)+")"),f+=w.height+i,c.attr("class","divider").attr("x1",-o/2-a).attr("x2",o/2+a).attr("y1",-u/2-a+l+f).attr("y2",-u/2-a+l+f),f+=l,g.forEach(E=>{T(E).attr("transform","translate( "+-o/2+", "+(-1*u/2+f+l/2)+")");const h=E?.getBBox();f+=(h?.height??0)+i}),f+=l,x.attr("class","divider").attr("x1",-o/2-a).attr("x2",o/2+a).attr("y1",-u/2-a+l+f).attr("y2",-u/2-a+l+f),f+=l,y.forEach(E=>{T(E).attr("transform","translate( "+-o/2+", "+(-1*u/2+f)+")");const h=E?.getBBox();f+=(h?.height??0)+i}),n.attr("style",t.style).attr("class","outer title-state").attr("x",-o/2-a).attr("y",-(u/2)-a).attr("width",o+t.padding).attr("height",u+t.padding),I(t,n),t.intersect=function(E){return B.rect(t,E)},r},"class_box"),Yt={rhombus:Pt,composite:Ar,question:Pt,rect:zr,labelRect:Mr,rectWithTitle:Fr,choice:Er,circle:Wr,doublecircle:Yr,stadium:Pr,hexagon:_r,block_arrow:Dr,rect_left_inv_arrow:Tr,lean_right:Br,lean_left:Ir,trapezoid:Nr,inv_trapezoid:Cr,rect_right_inv_arrow:Or,cylinder:Rr,start:Kr,end:Xr,note:vr,subroutine:Hr,fork:Wt,join:Wt,class_box:Ur},lt={},te=d(async(e,t,a)=>{let i,l;if(t.link){let s;R().securityLevel==="sandbox"?s="_top":t.linkTarget&&(s=t.linkTarget||"_blank"),i=e.insert("svg:a").attr("xlink:href",t.link).attr("target",s),l=await Yt[t.shape](i,t,a)}else l=await Yt[t.shape](e,t,a),i=l;return t.tooltip&&l.attr("title",t.tooltip),t.class&&l.attr("class","node default "+t.class),lt[t.id]=i,t.haveCallback&<[t.id].attr("class",lt[t.id].attr("class")+" clickable"),i},"insertNode"),jr=d(e=>{const t=lt[e.id];S.trace("Transforming node",e.diff,e,"translate("+(e.x-e.width/2-5)+", "+e.width/2+")");const a=8,i=e.diff||0;return e.clusterNode?t.attr("transform","translate("+(e.x+i-e.width/2)+", "+(e.y-e.height/2-a)+")"):t.attr("transform","translate("+e.x+", "+e.y+")"),i},"positionNode");function Tt(e,t,a=!1){const i=e;let l="default";(i?.classes?.length||0)>0&&(l=(i?.classes??[]).join(" ")),l=l+" flowchart-label";let s=0,r="",n;switch(i.type){case"round":s=5,r="rect";break;case"composite":s=0,r="composite",n=0;break;case"square":r="rect";break;case"diamond":r="question";break;case"hexagon":r="hexagon";break;case"block_arrow":r="block_arrow";break;case"odd":r="rect_left_inv_arrow";break;case"lean_right":r="lean_right";break;case"lean_left":r="lean_left";break;case"trapezoid":r="trapezoid";break;case"inv_trapezoid":r="inv_trapezoid";break;case"rect_left_inv_arrow":r="rect_left_inv_arrow";break;case"circle":r="circle";break;case"ellipse":r="ellipse";break;case"stadium":r="stadium";break;case"subroutine":r="subroutine";break;case"cylinder":r="cylinder";break;case"group":r="rect";break;case"doublecircle":r="doublecircle";break;default:r="rect"}const c=we(i?.styles??[]),x=i.label,o=i.size??{width:0,height:0,x:0,y:0},u=t.getDiagramId();return{labelStyle:c.labelStyle,shape:r,labelText:x,rx:s,ry:s,class:l,style:c.style,id:i.id,domId:u?`${u}-${i.id}`:i.id,directions:i.directions,width:o.width,height:o.height,x:o.x,y:o.y,positioned:a,intersect:void 0,type:i.type,padding:n??at()?.block?.padding??0}}d(Tt,"getNodeFromBlock");async function ee(e,t,a){const i=Tt(t,a,!1);if(i.type==="group")return;const l=at(),s=await te(e,i,{config:l}),r=s.node().getBBox(),n=a.getBlock(i.id);n.size={width:r.width,height:r.height,x:0,y:0,node:s},a.setBlock(n),s.remove()}d(ee,"calculateBlockSize");async function re(e,t,a){const i=Tt(t,a,!0);if(a.getBlock(i.id).type!=="space"){const s=at();await te(e,i,{config:s}),t.intersect=i?.intersect,jr(i)}}d(re,"insertBlockPositioned");async function dt(e,t,a,i){for(const l of t)await i(e,l,a),l.children&&await dt(e,l.children,a,i)}d(dt,"performOperations");async function ae(e,t,a){await dt(e,t,a,ee)}d(ae,"calculateBlockSizes");async function se(e,t,a){await dt(e,t,a,re)}d(se,"insertBlocks");async function ie(e,t,a,i,l){const s=new Se({multigraph:!0,compound:!0});s.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(const r of a)r.size&&s.setNode(r.id,{width:r.size.width,height:r.size.height,intersect:r.intersect});for(const r of t)if(r.start&&r.end){const n=i.getBlock(r.start),c=i.getBlock(r.end);if(n?.size&&c?.size){const x=n.size,o=c.size,u=[{x:x.x,y:x.y},{x:x.x+(o.x-x.x)/2,y:x.y+(o.y-x.y)/2},{x:o.x,y:o.y}],b=l?`${l}-${r.id}`:r.id;pr(e,{v:r.start,w:r.end,name:b},{...r,id:b,arrowTypeEnd:r.arrowTypeEnd,arrowTypeStart:r.arrowTypeStart,points:u,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"},void 0,"block",s,l),r.label&&(await hr(e,{...r,label:r.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:r.arrowTypeEnd,arrowTypeStart:r.arrowTypeStart,points:u,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"}),dr({...r,x:u[1].x,y:u[1].y},{originalPath:u}))}}}d(ie,"insertEdges");var Vr=d(function(e,t){return t.db.getClasses()},"getClasses"),Gr=d(async function(e,t,a,i){const{securityLevel:l,block:s}=at(),r=i.db;r.setDiagramId(t);let n;l==="sandbox"&&(n=T("#i"+t));const c=l==="sandbox"?T(n.nodes()[0].contentDocument.body):T("body"),x=l==="sandbox"?c.select(`[id="${t}"]`):T(`[id="${t}"]`);ir(x,["point","circle","cross"],i.type,t);const u=r.getBlocks(),b=r.getBlocksFlat(),f=r.getEdges(),m=x.insert("g").attr("class","block");await ae(m,u,r);const v=Vt(r);if(await se(m,u,r),await ie(m,f,b,r,t),v){const L=v,_=Math.max(1,Math.round(.125*(L.width/L.height))),N=L.height+_+10,D=L.width+10,{useMaxWidth:w}=s;he(x,N,D,!!w),S.debug("Here Bounds",v,L),x.attr("viewBox",`${L.x-5} ${L.y-5} ${L.width+10} ${L.height+10}`)}},"draw"),Zr={draw:Gr,getClasses:Vr},ra={parser:ve,db:Ue,renderer:Zr,styles:Ve};export{ra as diagram};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{aL as o,aM as n}from"./index-DXhws4gD.js";const t=(a,r)=>o.lang.round(n.parse(a)[r]);export{t as c};
|
|
@@ -1,206 +0,0 @@
|
|
|
1
|
-
import{g as et}from"./chunk-FMBD7UC4-BVYe-KgE.js";import{c as tt}from"./chunk-YZCP3GAM-CDhS7CGF.js";import{g as st}from"./chunk-55IACEB6-BW_jDeAT.js";import{s as it}from"./chunk-EDXVE4YY-JtUNKE2M.js";import{_ as A,v as Oe,t as F,I as at,J as rt,K as we,u as pe,U as nt,q as ut,p as lt,s as ot,o as ct,M as ht,N as dt,E as v,V as pt,T as At,z as ft,ab as G}from"./index-DXhws4gD.js";var Ve=(function(){var s=A(function(I,o,c,p){for(c=c||{},p=I.length;p--;c[I[p]]=o);return c},"o"),i=[1,18],a=[1,19],u=[1,20],l=[1,41],r=[1,26],h=[1,42],f=[1,24],E=[1,25],T=[1,32],O=[1,33],fe=[1,34],m=[1,45],ge=[1,35],me=[1,36],Ce=[1,37],be=[1,38],ke=[1,27],Ee=[1,28],Te=[1,29],ye=[1,30],De=[1,31],C=[1,44],b=[1,46],k=[1,43],y=[1,47],Fe=[1,9],d=[1,8,9],ee=[1,58],te=[1,59],se=[1,60],ie=[1,61],ae=[1,62],Be=[1,63],_e=[1,64],N=[1,8,9,41],Me=[1,77],P=[1,8,9,12,13,22,39,41,44,46,68,69,70,71,72,73,74,79,81],re=[1,8,9,12,13,18,20,22,39,41,44,46,47,60,68,69,70,71,72,73,74,79,81,86,100,102,103],ne=[13,60,86,100,102,103],K=[13,60,73,74,86,100,102,103],Pe=[13,60,68,69,70,71,72,86,100,102,103],ue=[1,102],Y=[1,120],W=[1,116],Q=[1,112],j=[1,118],X=[1,113],q=[1,114],H=[1,115],J=[1,117],Z=[1,119],Re=[22,50,60,61,82,86,87,88,89,90],Se=[1,8,9,39,41,44,46],le=[1,8,9,22],Ge=[1,150],Ue=[1,8,9,61],L=[1,8,9,22,50,60,61,82,86,87,88,89,90],Ne={trace:A(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,classLiteralName:17,DOT:18,className:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,classDefStatement:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,namespaceIdentifier:38,STRUCT_START:39,classStatements:40,STRUCT_STOP:41,NAMESPACE:42,classIdentifier:43,STYLE_SEPARATOR:44,members:45,ANNOTATION_START:46,ANNOTATION_END:47,CLASS:48,emptyBody:49,SPACE:50,MEMBER:51,SEPARATOR:52,relation:53,NOTE_FOR:54,noteText:55,NOTE:56,CLASSDEF:57,classList:58,stylesOpt:59,ALPHA:60,COMMA:61,direction_tb:62,direction_bt:63,direction_rl:64,direction_lr:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,STYLE:82,CSSCLASS:83,style:84,styleComponent:85,NUM:86,COLON:87,UNIT:88,BRKT:89,PCT:90,commentToken:91,textToken:92,graphCodeTokens:93,textNoTagsToken:94,TAGSTART:95,TAGEND:96,"==":97,"--":98,DEFAULT:99,MINUS:100,keywords:101,UNICODE_TEXT:102,BQUOTE_STR:103,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",18:"DOT",20:"GENERICTYPE",22:"LABEL",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",39:"STRUCT_START",41:"STRUCT_STOP",42:"NAMESPACE",44:"STYLE_SEPARATOR",46:"ANNOTATION_START",47:"ANNOTATION_END",48:"CLASS",50:"SPACE",51:"MEMBER",52:"SEPARATOR",54:"NOTE_FOR",56:"NOTE",57:"CLASSDEF",60:"ALPHA",61:"COMMA",62:"direction_tb",63:"direction_bt",64:"direction_rl",65:"direction_lr",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"STYLE",83:"CSSCLASS",86:"NUM",87:"COLON",88:"UNIT",89:"BRKT",90:"PCT",93:"graphCodeTokens",95:"TAGSTART",96:"TAGEND",97:"==",98:"--",99:"DEFAULT",100:"MINUS",101:"keywords",102:"UNICODE_TEXT",103:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,1],[15,3],[15,2],[19,1],[19,3],[19,1],[19,2],[19,2],[19,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[38,2],[40,1],[40,2],[40,3],[40,1],[40,2],[40,3],[24,1],[24,3],[24,4],[24,3],[24,6],[24,4],[24,7],[24,6],[43,2],[43,3],[49,0],[49,2],[49,2],[26,4],[45,1],[45,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,3],[58,1],[58,3],[32,1],[32,1],[32,1],[32,1],[53,3],[53,2],[53,2],[53,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[59,1],[59,3],[84,1],[84,2],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[91,1],[91,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[94,1],[94,1],[94,1],[94,1],[16,1],[16,1],[16,1],[16,1],[17,1],[55,1]],performAction:A(function(o,c,p,n,g,e,$){var t=e.length-1;switch(g){case 8:this.$=e[t-1];break;case 9:case 10:case 13:case 15:this.$=e[t];break;case 11:case 14:this.$=e[t-2]+"."+e[t];break;case 12:case 16:this.$=e[t-1]+e[t];break;case 17:case 18:this.$=e[t-1]+"~"+e[t]+"~";break;case 19:n.addRelation(e[t]);break;case 20:e[t-1].title=n.cleanupLabel(e[t]),n.addRelation(e[t-1]);break;case 31:this.$=e[t].trim(),n.setAccTitle(this.$);break;case 32:case 33:this.$=e[t].trim(),n.setAccDescription(this.$);break;case 34:n.addClassesToNamespace(e[t-3],e[t-1][0],e[t-1][1]);break;case 35:n.addClassesToNamespace(e[t-4],e[t-1][0],e[t-1][1]);break;case 36:this.$=e[t],n.addNamespace(e[t]);break;case 37:this.$=[[e[t]],[]];break;case 38:this.$=[[e[t-1]],[]];break;case 39:e[t][0].unshift(e[t-2]),this.$=e[t];break;case 40:this.$=[[],[e[t]]];break;case 41:this.$=[[],[e[t-1]]];break;case 42:e[t][1].unshift(e[t-2]),this.$=e[t];break;case 44:n.setCssClass(e[t-2],e[t]);break;case 45:n.addMembers(e[t-3],e[t-1]);break;case 47:n.setCssClass(e[t-5],e[t-3]),n.addMembers(e[t-5],e[t-1]);break;case 48:n.addAnnotation(e[t-3],e[t-1]);break;case 49:n.addAnnotation(e[t-6],e[t-4]),n.addMembers(e[t-6],e[t-1]);break;case 50:n.addAnnotation(e[t-5],e[t-3]);break;case 51:this.$=e[t],n.addClass(e[t]);break;case 52:this.$=e[t-1],n.addClass(e[t-1]),n.setClassLabel(e[t-1],e[t]);break;case 56:n.addAnnotation(e[t],e[t-2]);break;case 57:case 70:this.$=[e[t]];break;case 58:e[t].push(e[t-1]),this.$=e[t];break;case 59:break;case 60:n.addMember(e[t-1],n.cleanupLabel(e[t]));break;case 61:break;case 62:break;case 63:this.$={id1:e[t-2],id2:e[t],relation:e[t-1],relationTitle1:"none",relationTitle2:"none"};break;case 64:this.$={id1:e[t-3],id2:e[t],relation:e[t-1],relationTitle1:e[t-2],relationTitle2:"none"};break;case 65:this.$={id1:e[t-3],id2:e[t],relation:e[t-2],relationTitle1:"none",relationTitle2:e[t-1]};break;case 66:this.$={id1:e[t-4],id2:e[t],relation:e[t-2],relationTitle1:e[t-3],relationTitle2:e[t-1]};break;case 67:this.$=n.addNote(e[t],e[t-1]);break;case 68:this.$=n.addNote(e[t]);break;case 69:this.$=e[t-2],n.defineClass(e[t-1],e[t]);break;case 71:this.$=e[t-2].concat([e[t]]);break;case 72:n.setDirection("TB");break;case 73:n.setDirection("BT");break;case 74:n.setDirection("RL");break;case 75:n.setDirection("LR");break;case 76:this.$={type1:e[t-2],type2:e[t],lineType:e[t-1]};break;case 77:this.$={type1:"none",type2:e[t],lineType:e[t-1]};break;case 78:this.$={type1:e[t-1],type2:"none",lineType:e[t]};break;case 79:this.$={type1:"none",type2:"none",lineType:e[t]};break;case 80:this.$=n.relationType.AGGREGATION;break;case 81:this.$=n.relationType.EXTENSION;break;case 82:this.$=n.relationType.COMPOSITION;break;case 83:this.$=n.relationType.DEPENDENCY;break;case 84:this.$=n.relationType.LOLLIPOP;break;case 85:this.$=n.lineType.LINE;break;case 86:this.$=n.lineType.DOTTED_LINE;break;case 87:case 93:this.$=e[t-2],n.setClickEvent(e[t-1],e[t]);break;case 88:case 94:this.$=e[t-3],n.setClickEvent(e[t-2],e[t-1]),n.setTooltip(e[t-2],e[t]);break;case 89:this.$=e[t-2],n.setLink(e[t-1],e[t]);break;case 90:this.$=e[t-3],n.setLink(e[t-2],e[t-1],e[t]);break;case 91:this.$=e[t-3],n.setLink(e[t-2],e[t-1]),n.setTooltip(e[t-2],e[t]);break;case 92:this.$=e[t-4],n.setLink(e[t-3],e[t-2],e[t]),n.setTooltip(e[t-3],e[t-1]);break;case 95:this.$=e[t-3],n.setClickEvent(e[t-2],e[t-1],e[t]);break;case 96:this.$=e[t-4],n.setClickEvent(e[t-3],e[t-2],e[t-1]),n.setTooltip(e[t-3],e[t]);break;case 97:this.$=e[t-3],n.setLink(e[t-2],e[t]);break;case 98:this.$=e[t-4],n.setLink(e[t-3],e[t-1],e[t]);break;case 99:this.$=e[t-4],n.setLink(e[t-3],e[t-1]),n.setTooltip(e[t-3],e[t]);break;case 100:this.$=e[t-5],n.setLink(e[t-4],e[t-2],e[t]),n.setTooltip(e[t-4],e[t-1]);break;case 101:this.$=e[t-2],n.setCssStyle(e[t-1],e[t]);break;case 102:n.setCssClass(e[t-1],e[t]);break;case 103:this.$=[e[t]];break;case 104:e[t-2].push(e[t]),this.$=e[t-2];break;case 106:this.$=e[t-1]+e[t];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:i,35:a,37:u,38:22,42:l,43:23,46:r,48:h,51:f,52:E,54:T,56:O,57:fe,60:m,62:ge,63:me,64:Ce,65:be,75:ke,76:Ee,78:Te,82:ye,83:De,86:C,100:b,102:k,103:y},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},s(Fe,[2,5],{8:[1,48]}),{8:[1,49]},s(d,[2,19],{22:[1,50]}),s(d,[2,21]),s(d,[2,22]),s(d,[2,23]),s(d,[2,24]),s(d,[2,25]),s(d,[2,26]),s(d,[2,27]),s(d,[2,28]),s(d,[2,29]),s(d,[2,30]),{34:[1,51]},{36:[1,52]},s(d,[2,33]),s(d,[2,59],{53:53,66:56,67:57,13:[1,54],22:[1,55],68:ee,69:te,70:se,71:ie,72:ae,73:Be,74:_e}),{39:[1,65]},s(N,[2,43],{39:[1,67],44:[1,66],46:[1,68]}),s(d,[2,61]),s(d,[2,62]),{16:69,60:m,86:C,100:b,102:k},{16:39,17:40,19:70,60:m,86:C,100:b,102:k,103:y},{16:39,17:40,19:71,60:m,86:C,100:b,102:k,103:y},{16:39,17:40,19:72,60:m,86:C,100:b,102:k,103:y},{60:[1,73]},{13:[1,74]},{16:39,17:40,19:75,60:m,86:C,100:b,102:k,103:y},{13:Me,55:76},{58:78,60:[1,79]},s(d,[2,72]),s(d,[2,73]),s(d,[2,74]),s(d,[2,75]),s(P,[2,13],{16:39,17:40,19:81,18:[1,80],20:[1,82],60:m,86:C,100:b,102:k,103:y}),s(P,[2,15],{20:[1,83]}),{15:84,16:85,17:86,60:m,86:C,100:b,102:k,103:y},{16:39,17:40,19:87,60:m,86:C,100:b,102:k,103:y},s(re,[2,129]),s(re,[2,130]),s(re,[2,131]),s(re,[2,132]),s([1,8,9,12,13,20,22,39,41,44,46,68,69,70,71,72,73,74,79,81],[2,133]),s(Fe,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,19:21,38:22,43:23,16:39,17:40,5:88,33:i,35:a,37:u,42:l,46:r,48:h,51:f,52:E,54:T,56:O,57:fe,60:m,62:ge,63:me,64:Ce,65:be,75:ke,76:Ee,78:Te,82:ye,83:De,86:C,100:b,102:k,103:y}),{5:89,10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:i,35:a,37:u,38:22,42:l,43:23,46:r,48:h,51:f,52:E,54:T,56:O,57:fe,60:m,62:ge,63:me,64:Ce,65:be,75:ke,76:Ee,78:Te,82:ye,83:De,86:C,100:b,102:k,103:y},s(d,[2,20]),s(d,[2,31]),s(d,[2,32]),{13:[1,91],16:39,17:40,19:90,60:m,86:C,100:b,102:k,103:y},{53:92,66:56,67:57,68:ee,69:te,70:se,71:ie,72:ae,73:Be,74:_e},s(d,[2,60]),{67:93,73:Be,74:_e},s(ne,[2,79],{66:94,68:ee,69:te,70:se,71:ie,72:ae}),s(K,[2,80]),s(K,[2,81]),s(K,[2,82]),s(K,[2,83]),s(K,[2,84]),s(Pe,[2,85]),s(Pe,[2,86]),{8:[1,96],24:97,30:98,40:95,43:23,48:h,54:T,56:O},{16:99,60:m,86:C,100:b,102:k},{41:[1,101],45:100,51:ue},{16:103,60:m,86:C,100:b,102:k},{47:[1,104]},{13:[1,105]},{13:[1,106]},{79:[1,107],81:[1,108]},{22:Y,50:W,59:109,60:Q,82:j,84:110,85:111,86:X,87:q,88:H,89:J,90:Z},{60:[1,121]},{13:Me,55:122},s(N,[2,68]),s(N,[2,134]),{22:Y,50:W,59:123,60:Q,61:[1,124],82:j,84:110,85:111,86:X,87:q,88:H,89:J,90:Z},s(Re,[2,70]),{16:39,17:40,19:125,60:m,86:C,100:b,102:k,103:y},s(P,[2,16]),s(P,[2,17]),s(P,[2,18]),{39:[2,36]},{15:127,16:85,17:86,18:[1,126],39:[2,9],60:m,86:C,100:b,102:k,103:y},{39:[2,10]},s(Se,[2,51],{11:128,12:[1,129]}),s(Fe,[2,7]),{9:[1,130]},s(le,[2,63]),{16:39,17:40,19:131,60:m,86:C,100:b,102:k,103:y},{13:[1,133],16:39,17:40,19:132,60:m,86:C,100:b,102:k,103:y},s(ne,[2,78],{66:134,68:ee,69:te,70:se,71:ie,72:ae}),s(ne,[2,77]),{41:[1,135]},{24:97,30:98,40:136,43:23,48:h,54:T,56:O},{8:[1,137],41:[2,37]},{8:[1,138],41:[2,40]},s(N,[2,44],{39:[1,139]}),{41:[1,140]},s(N,[2,46]),{41:[2,57],45:141,51:ue},{47:[1,142]},{16:39,17:40,19:143,60:m,86:C,100:b,102:k,103:y},s(d,[2,87],{13:[1,144]}),s(d,[2,89],{13:[1,146],77:[1,145]}),s(d,[2,93],{13:[1,147],80:[1,148]}),{13:[1,149]},s(d,[2,101],{61:Ge}),s(Ue,[2,103],{85:151,22:Y,50:W,60:Q,82:j,86:X,87:q,88:H,89:J,90:Z}),s(L,[2,105]),s(L,[2,107]),s(L,[2,108]),s(L,[2,109]),s(L,[2,110]),s(L,[2,111]),s(L,[2,112]),s(L,[2,113]),s(L,[2,114]),s(L,[2,115]),s(d,[2,102]),s(N,[2,67]),s(d,[2,69],{61:Ge}),{60:[1,152]},s(P,[2,14]),{15:153,16:85,17:86,60:m,86:C,100:b,102:k,103:y},{39:[2,12]},s(Se,[2,52]),{13:[1,154]},{1:[2,4]},s(le,[2,65]),s(le,[2,64]),{16:39,17:40,19:155,60:m,86:C,100:b,102:k,103:y},s(ne,[2,76]),s(d,[2,34]),{41:[1,156]},{24:97,30:98,40:157,41:[2,38],43:23,48:h,54:T,56:O},{24:97,30:98,40:158,41:[2,41],43:23,48:h,54:T,56:O},{45:159,51:ue},s(N,[2,45]),{41:[2,58]},s(N,[2,48],{39:[1,160]}),s(d,[2,56]),s(d,[2,88]),s(d,[2,90]),s(d,[2,91],{77:[1,161]}),s(d,[2,94]),s(d,[2,95],{13:[1,162]}),s(d,[2,97],{13:[1,164],77:[1,163]}),{22:Y,50:W,60:Q,82:j,84:165,85:111,86:X,87:q,88:H,89:J,90:Z},s(L,[2,106]),s(Re,[2,71]),{39:[2,11]},{14:[1,166]},s(le,[2,66]),s(d,[2,35]),{41:[2,39]},{41:[2,42]},{41:[1,167]},{41:[1,169],45:168,51:ue},s(d,[2,92]),s(d,[2,96]),s(d,[2,98]),s(d,[2,99],{77:[1,170]}),s(Ue,[2,104],{85:151,22:Y,50:W,60:Q,82:j,86:X,87:q,88:H,89:J,90:Z}),s(Se,[2,8]),s(N,[2,47]),{41:[1,171]},s(N,[2,50]),s(d,[2,100]),s(N,[2,49])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],84:[2,36],86:[2,10],127:[2,12],130:[2,4],141:[2,58],153:[2,11],157:[2,39],158:[2,42]},parseError:A(function(o,c){if(c.recoverable)this.trace(o);else{var p=new Error(o);throw p.hash=c,p}},"parseError"),parse:A(function(o){var c=this,p=[0],n=[],g=[null],e=[],$=this.table,t="",ce=0,ze=0,He=2,Ke=1,Je=e.slice.call(arguments,1),D=Object.create(this.lexer),w={yy:{}};for(var Le in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Le)&&(w.yy[Le]=this.yy[Le]);D.setInput(o,w.yy),w.yy.lexer=D,w.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var xe=D.yylloc;e.push(xe);var Ze=D.options&&D.options.ranges;typeof w.yy.parseError=="function"?this.parseError=w.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function $e(_){p.length=p.length-2*_,g.length=g.length-_,e.length=e.length-_}A($e,"popStack");function Ye(){var _;return _=n.pop()||D.lex()||Ke,typeof _!="number"&&(_ instanceof Array&&(n=_,_=n.pop()),_=c.symbols_[_]||_),_}A(Ye,"lex");for(var B,V,S,ve,R={},he,x,We,de;;){if(V=p[p.length-1],this.defaultActions[V]?S=this.defaultActions[V]:((B===null||typeof B>"u")&&(B=Ye()),S=$[V]&&$[V][B]),typeof S>"u"||!S.length||!S[0]){var Ie="";de=[];for(he in $[V])this.terminals_[he]&&he>He&&de.push("'"+this.terminals_[he]+"'");D.showPosition?Ie="Parse error on line "+(ce+1)+`:
|
|
2
|
-
`+D.showPosition()+`
|
|
3
|
-
Expecting `+de.join(", ")+", got '"+(this.terminals_[B]||B)+"'":Ie="Parse error on line "+(ce+1)+": Unexpected "+(B==Ke?"end of input":"'"+(this.terminals_[B]||B)+"'"),this.parseError(Ie,{text:D.match,token:this.terminals_[B]||B,line:D.yylineno,loc:xe,expected:de})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+V+", token: "+B);switch(S[0]){case 1:p.push(B),g.push(D.yytext),e.push(D.yylloc),p.push(S[1]),B=null,ze=D.yyleng,t=D.yytext,ce=D.yylineno,xe=D.yylloc;break;case 2:if(x=this.productions_[S[1]][1],R.$=g[g.length-x],R._$={first_line:e[e.length-(x||1)].first_line,last_line:e[e.length-1].last_line,first_column:e[e.length-(x||1)].first_column,last_column:e[e.length-1].last_column},Ze&&(R._$.range=[e[e.length-(x||1)].range[0],e[e.length-1].range[1]]),ve=this.performAction.apply(R,[t,ze,ce,w.yy,S[1],g,e].concat(Je)),typeof ve<"u")return ve;x&&(p=p.slice(0,-1*x*2),g=g.slice(0,-1*x),e=e.slice(0,-1*x)),p.push(this.productions_[S[1]][0]),g.push(R.$),e.push(R._$),We=$[p[p.length-2]][p[p.length-1]],p.push(We);break;case 3:return!0}}return!0},"parse")},qe=(function(){var I={EOF:1,parseError:A(function(c,p){if(this.yy.parser)this.yy.parser.parseError(c,p);else throw new Error(c)},"parseError"),setInput:A(function(o,c){return this.yy=c||this.yy||{},this._input=o,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:A(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var c=o.match(/(?:\r\n?|\n).*/g);return c?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},"input"),unput:A(function(o){var c=o.length,p=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-c),this.offset-=c;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),p.length-1&&(this.yylineno-=p.length-1);var g=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:p?(p.length===n.length?this.yylloc.first_column:0)+n[n.length-p.length].length-p[0].length:this.yylloc.first_column-c},this.options.ranges&&(this.yylloc.range=[g[0],g[0]+this.yyleng-c]),this.yyleng=this.yytext.length,this},"unput"),more:A(function(){return this._more=!0,this},"more"),reject:A(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
|
-
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:A(function(o){this.unput(this.match.slice(o))},"less"),pastInput:A(function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:A(function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:A(function(){var o=this.pastInput(),c=new Array(o.length+1).join("-");return o+this.upcomingInput()+`
|
|
5
|
-
`+c+"^"},"showPosition"),test_match:A(function(o,c){var p,n,g;if(this.options.backtrack_lexer&&(g={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(g.yylloc.range=this.yylloc.range.slice(0))),n=o[0].match(/(?:\r\n?|\n).*/g),n&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+o[0].length},this.yytext+=o[0],this.match+=o[0],this.matches=o,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(o[0].length),this.matched+=o[0],p=this.performAction.call(this,this.yy,this,c,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),p)return p;if(this._backtrack){for(var e in g)this[e]=g[e];return!1}return!1},"test_match"),next:A(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var o,c,p,n;this._more||(this.yytext="",this.match="");for(var g=this._currentRules(),e=0;e<g.length;e++)if(p=this._input.match(this.rules[g[e]]),p&&(!c||p[0].length>c[0].length)){if(c=p,n=e,this.options.backtrack_lexer){if(o=this.test_match(p,g[e]),o!==!1)return o;if(this._backtrack){c=!1;continue}else return!1}else if(!this.options.flex)break}return c?(o=this.test_match(c,g[n]),o!==!1?o:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
|
6
|
-
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:A(function(){var c=this.next();return c||this.lex()},"lex"),begin:A(function(c){this.conditionStack.push(c)},"begin"),popState:A(function(){var c=this.conditionStack.length-1;return c>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:A(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:A(function(c){return c=this.conditionStack.length-1-Math.abs(c||0),c>=0?this.conditionStack[c]:"INITIAL"},"topState"),pushState:A(function(c){this.begin(c)},"pushState"),stateStackSize:A(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:A(function(c,p,n,g){switch(n){case 0:return 62;case 1:return 63;case 2:return 64;case 3:return 65;case 4:break;case 5:break;case 6:return this.begin("acc_title"),33;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),35;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 8;case 14:break;case 15:return 7;case 16:return 7;case 17:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 19:this.popState();break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 79;case 22:this.popState();break;case 23:return 80;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 82;case 28:return 57;case 29:return this.begin("namespace"),42;case 30:return this.popState(),8;case 31:break;case 32:return this.begin("namespace-body"),39;case 33:return this.popState(),41;case 34:return"EOF_IN_STRUCT";case 35:return 8;case 36:break;case 37:return"EDGE_STATE";case 38:return this.begin("class"),48;case 39:return this.popState(),8;case 40:break;case 41:return this.popState(),this.popState(),41;case 42:return this.begin("class-body"),39;case 43:return this.popState(),41;case 44:return"EOF_IN_STRUCT";case 45:return"EDGE_STATE";case 46:return"OPEN_IN_STRUCT";case 47:break;case 48:return"MEMBER";case 49:return 83;case 50:return 75;case 51:return 76;case 52:return 78;case 53:return 54;case 54:return 56;case 55:return 46;case 56:return 47;case 57:return 81;case 58:this.popState();break;case 59:return"GENERICTYPE";case 60:this.begin("generic");break;case 61:this.popState();break;case 62:return"BQUOTE_STR";case 63:this.begin("bqstring");break;case 64:return 77;case 65:return 77;case 66:return 77;case 67:return 77;case 68:return 69;case 69:return 69;case 70:return 71;case 71:return 71;case 72:return 70;case 73:return 68;case 74:return 72;case 75:return 73;case 76:return 74;case 77:return 22;case 78:return 44;case 79:return 100;case 80:return 18;case 81:return"PLUS";case 82:return 87;case 83:return 61;case 84:return 89;case 85:return 89;case 86:return 90;case 87:return"EQUALS";case 88:return"EQUALS";case 89:return 60;case 90:return 12;case 91:return 14;case 92:return"PUNCTUATION";case 93:return 86;case 94:return 102;case 95:return 50;case 96:return 50;case 97:return 9}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:classDef\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,33,34,35,36,37,38,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},namespace:{rules:[26,29,30,31,32,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},"class-body":{rules:[26,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},class:{rules:[26,39,40,41,42,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr:{rules:[9,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_title:{rules:[7,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_args:{rules:[22,23,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_name:{rules:[19,20,21,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},href:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},struct:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},generic:{rules:[26,49,50,51,52,53,54,55,56,57,58,59,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},bqstring:{rules:[26,49,50,51,52,53,54,55,56,57,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},string:{rules:[24,25,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,29,38,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97],inclusive:!0}}};return I})();Ne.lexer=qe;function oe(){this.yy={}}return A(oe,"Parser"),oe.prototype=Ne,Ne.Parser=oe,new oe})();Ve.parser=Ve;var Ft=Ve,Qe=["#","+","~","-",""],U,je=(U=class{constructor(i,a){this.memberType=a,this.visibility="",this.classifier="",this.text="";const u=ft(i,F());this.parseMember(u)}getDisplayDetails(){let i=this.visibility+G(this.id);this.memberType==="method"&&(i+=`(${G(this.parameters.trim())})`,this.returnType&&(i+=" : "+G(this.returnType))),i=i.trim();const a=this.parseClassifier();return{displayText:i,cssStyle:a}}parseMember(i){let a="";if(this.memberType==="method"){const r=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(i);if(r){const h=r[1]?r[1].trim():"";if(Qe.includes(h)&&(this.visibility=h),this.id=r[2],this.parameters=r[3]?r[3].trim():"",a=r[4]?r[4].trim():"",this.returnType=r[5]?r[5].trim():"",a===""){const f=this.returnType.substring(this.returnType.length-1);/[$*]/.exec(f)&&(a=f,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{const l=i.length,r=i.substring(0,1),h=i.substring(l-1);Qe.includes(r)&&(this.visibility=r),/[$*]/.exec(h)&&(a=h),this.id=i.substring(this.visibility===""?0:1,a===""?l:l-1)}this.classifier=a,this.id=this.id.startsWith(" ")?" "+this.id.trim():this.id.trim();const u=`${this.visibility?"\\"+this.visibility:""}${G(this.id)}${this.memberType==="method"?`(${G(this.parameters)})${this.returnType?" : "+G(this.returnType):""}`:""}`;this.text=u.replaceAll("<","<").replaceAll(">",">"),this.text.startsWith("\\<")&&(this.text=this.text.replace("\\<","~"))}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}},A(U,"ClassMember"),U),Ae="classId-",Xe=0,M=A(s=>v.sanitizeText(s,F()),"sanitizeText"),z,Bt=(z=class{constructor(){this.relations=[],this.classes=new Map,this.styleClasses=new Map,this.notes=new Map,this.interfaces=[],this.namespaces=new Map,this.namespaceCounter=0,this.diagramId="",this.functions=[],this.lineType={LINE:0,DOTTED_LINE:1},this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},this.setupToolTips=A(i=>{const a=tt();pe(i).select("svg").selectAll("g").filter(function(){return pe(this).attr("title")!==null}).on("mouseover",r=>{const h=pe(r.currentTarget),f=h.attr("title");if(!f)return;const E=r.currentTarget.getBoundingClientRect();a.transition().duration(200).style("opacity",".9"),a.html(nt.sanitize(f)).style("left",`${window.scrollX+E.left+E.width/2}px`).style("top",`${window.scrollY+E.bottom+4}px`),h.classed("hover",!0)}).on("mouseout",r=>{a.transition().duration(500).style("opacity",0),pe(r.currentTarget).classed("hover",!1)})},"setupToolTips"),this.direction="TB",this.setAccTitle=ut,this.getAccTitle=lt,this.setAccDescription=ot,this.getAccDescription=ct,this.setDiagramTitle=ht,this.getDiagramTitle=dt,this.getConfig=A(()=>F().class,"getConfig"),this.functions.push(this.setupToolTips.bind(this)),this.clear(),this.addRelation=this.addRelation.bind(this),this.addClassesToNamespace=this.addClassesToNamespace.bind(this),this.addNamespace=this.addNamespace.bind(this),this.setCssClass=this.setCssClass.bind(this),this.addMembers=this.addMembers.bind(this),this.addClass=this.addClass.bind(this),this.setClassLabel=this.setClassLabel.bind(this),this.addAnnotation=this.addAnnotation.bind(this),this.addMember=this.addMember.bind(this),this.cleanupLabel=this.cleanupLabel.bind(this),this.addNote=this.addNote.bind(this),this.defineClass=this.defineClass.bind(this),this.setDirection=this.setDirection.bind(this),this.setLink=this.setLink.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.clear=this.clear.bind(this),this.setTooltip=this.setTooltip.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setCssStyle=this.setCssStyle.bind(this)}splitClassNameAndType(i){const a=v.sanitizeText(i,F());let u="",l=a;if(a.indexOf("~")>0){const r=a.split("~");l=M(r[0]),u=M(r[1])}return{className:l,type:u}}setClassLabel(i,a){const u=v.sanitizeText(i,F());a&&(a=M(a));const{className:l}=this.splitClassNameAndType(u);this.classes.get(l).label=a,this.classes.get(l).text=`${a}${this.classes.get(l).type?`<${this.classes.get(l).type}>`:""}`}addClass(i){const a=v.sanitizeText(i,F()),{className:u,type:l}=this.splitClassNameAndType(a);if(this.classes.has(u))return;const r=v.sanitizeText(u,F());this.classes.set(r,{id:r,type:l,label:r,text:`${r}${l?`<${l}>`:""}`,shape:"classBox",cssClasses:"default",methods:[],members:[],annotations:[],styles:[],domId:Ae+r+"-"+Xe}),Xe++}addInterface(i,a){const u={id:`interface${this.interfaces.length}`,label:i,classId:a};this.interfaces.push(u)}setDiagramId(i){this.diagramId=i}lookUpDomId(i){const a=v.sanitizeText(i,F());if(this.classes.has(a)){const u=this.classes.get(a).domId;return this.diagramId?`${this.diagramId}-${u}`:u}throw new Error("Class not found: "+a)}clear(){this.relations=[],this.classes=new Map,this.notes=new Map,this.interfaces=[],this.functions=[],this.functions.push(this.setupToolTips.bind(this)),this.namespaces=new Map,this.namespaceCounter=0,this.diagramId="",this.direction="TB",pt()}getClass(i){return this.classes.get(i)}getClasses(){return this.classes}getRelations(){return this.relations}getNote(i){const a=typeof i=="number"?`note${i}`:i;return this.notes.get(a)}getNotes(){return this.notes}addRelation(i){Oe.debug("Adding relation: "+JSON.stringify(i));const a=[this.relationType.LOLLIPOP,this.relationType.AGGREGATION,this.relationType.COMPOSITION,this.relationType.DEPENDENCY,this.relationType.EXTENSION];i.relation.type1===this.relationType.LOLLIPOP&&!a.includes(i.relation.type2)?(this.addClass(i.id2),this.addInterface(i.id1,i.id2),i.id1=`interface${this.interfaces.length-1}`):i.relation.type2===this.relationType.LOLLIPOP&&!a.includes(i.relation.type1)?(this.addClass(i.id1),this.addInterface(i.id2,i.id1),i.id2=`interface${this.interfaces.length-1}`):(this.addClass(i.id1),this.addClass(i.id2)),i.id1=this.splitClassNameAndType(i.id1).className,i.id2=this.splitClassNameAndType(i.id2).className,i.relationTitle1=v.sanitizeText(i.relationTitle1.trim(),F()),i.relationTitle2=v.sanitizeText(i.relationTitle2.trim(),F()),this.relations.push(i)}addAnnotation(i,a){const u=this.splitClassNameAndType(i).className;this.classes.get(u).annotations.push(a)}addMember(i,a){this.addClass(i);const u=this.splitClassNameAndType(i).className,l=this.classes.get(u);if(typeof a=="string"){const r=a.trim();r.startsWith("<<")&&r.endsWith(">>")?l.annotations.push(M(r.substring(2,r.length-2))):r.indexOf(")")>0?l.methods.push(new je(r,"method")):r&&l.members.push(new je(r,"attribute"))}}addMembers(i,a){Array.isArray(a)&&(a.reverse(),a.forEach(u=>this.addMember(i,u)))}addNote(i,a){const u=this.notes.size,l={id:`note${u}`,class:a,text:i,index:u};return this.notes.set(l.id,l),l.id}cleanupLabel(i){return i.startsWith(":")&&(i=i.substring(1)),M(i.trim())}setCssClass(i,a){i.split(",").forEach(u=>{let l=u;/\d/.exec(u[0])&&(l=Ae+l);const r=this.classes.get(l);r&&(r.cssClasses+=" "+a)})}defineClass(i,a){for(const u of i){let l=this.styleClasses.get(u);l===void 0&&(l={id:u,styles:[],textStyles:[]},this.styleClasses.set(u,l)),a&&a.forEach(r=>{if(/color/.exec(r)){const h=r.replace("fill","bgFill");l.textStyles.push(h)}l.styles.push(r)}),this.classes.forEach(r=>{r.cssClasses.includes(u)&&r.styles.push(...a.flatMap(h=>h.split(",")))})}}setTooltip(i,a){i.split(",").forEach(u=>{a!==void 0&&(this.classes.get(u).tooltip=M(a))})}getTooltip(i,a){return a&&this.namespaces.has(a)?this.namespaces.get(a).classes.get(i).tooltip:this.classes.get(i).tooltip}setLink(i,a,u){const l=F();i.split(",").forEach(r=>{let h=r;/\d/.exec(r[0])&&(h=Ae+h);const f=this.classes.get(h);f&&(f.link=we.formatUrl(a,l),l.securityLevel==="sandbox"?f.linkTarget="_top":typeof u=="string"?f.linkTarget=M(u):f.linkTarget="_blank")}),this.setCssClass(i,"clickable")}setClickEvent(i,a,u){i.split(",").forEach(l=>{this.setClickFunc(l,a,u),this.classes.get(l).haveCallback=!0}),this.setCssClass(i,"clickable")}setClickFunc(i,a,u){const l=v.sanitizeText(i,F());if(F().securityLevel!=="loose"||a===void 0)return;const h=l;if(this.classes.has(h)){let f=[];if(typeof u=="string"){f=u.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let E=0;E<f.length;E++){let T=f[E].trim();T.startsWith('"')&&T.endsWith('"')&&(T=T.substr(1,T.length-2)),f[E]=T}}f.length===0&&f.push(h),this.functions.push(()=>{const E=this.lookUpDomId(h),T=document.querySelector(`[id="${E}"]`);T!==null&&T.addEventListener("click",()=>{we.runFunc(a,...f)},!1)})}}bindFunctions(i){this.functions.forEach(a=>{a(i)})}escapeHtml(i){return i.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}getDirection(){return this.direction}setDirection(i){this.direction=i}addNamespace(i){this.namespaces.has(i)||(this.namespaces.set(i,{id:i,classes:new Map,notes:new Map,children:new Map,domId:Ae+i+"-"+this.namespaceCounter}),this.namespaceCounter++)}getNamespace(i){return this.namespaces.get(i)}getNamespaces(){return this.namespaces}addClassesToNamespace(i,a,u){if(this.namespaces.has(i)){for(const l of a){const{className:r}=this.splitClassNameAndType(l),h=this.getClass(r);h.parent=i,this.namespaces.get(i).classes.set(r,h)}for(const l of u){const r=this.getNote(l);r.parent=i,this.namespaces.get(i).notes.set(l,r)}}}setCssStyle(i,a){const u=this.classes.get(i);if(!(!a||!u))for(const l of a)l.includes(",")?u.styles.push(...l.split(",")):u.styles.push(l)}getArrowMarker(i){let a;switch(i){case 0:a="aggregation";break;case 1:a="extension";break;case 2:a="composition";break;case 3:a="dependency";break;case 4:a="lollipop";break;default:a="none"}return a}getData(){const i=[],a=[],u=F();for(const r of this.namespaces.values()){const h={id:r.id,label:r.id,isGroup:!0,padding:u.class.padding??16,shape:"rect",cssStyles:[],look:u.look};i.push(h)}for(const r of this.classes.values()){const h={...r,type:void 0,isGroup:!1,parentId:r.parent,look:u.look};i.push(h)}for(const r of this.notes.values()){const h={id:r.id,label:r.text,isGroup:!1,shape:"note",padding:u.class.padding??6,cssStyles:["text-align: left","white-space: nowrap",`fill: ${u.themeVariables.noteBkgColor}`,`stroke: ${u.themeVariables.noteBorderColor}`],look:u.look,parentId:r.parent,labelType:"markdown"};i.push(h);const f=this.classes.get(r.class)?.id;if(f){const E={id:`edgeNote${r.index}`,start:r.id,end:f,type:"normal",thickness:"normal",classes:"relation",arrowTypeStart:"none",arrowTypeEnd:"none",arrowheadStyle:"",labelStyle:[""],style:["fill: none"],pattern:"dotted",look:u.look};a.push(E)}}for(const r of this.interfaces){const h={id:r.id,label:r.label,isGroup:!1,shape:"rect",cssStyles:["opacity: 0;"],look:u.look};i.push(h)}let l=0;for(const r of this.relations){l++;const h={id:At(r.id1,r.id2,{prefix:"id",counter:l}),start:r.id1,end:r.id2,type:"normal",label:r.title,labelpos:"c",thickness:"normal",classes:"relation",arrowTypeStart:this.getArrowMarker(r.relation.type1),arrowTypeEnd:this.getArrowMarker(r.relation.type2),startLabelRight:r.relationTitle1==="none"?"":r.relationTitle1,endLabelLeft:r.relationTitle2==="none"?"":r.relationTitle2,arrowheadStyle:"",labelStyle:["display: inline-block"],style:r.style||"",pattern:r.relation.lineType==1?"dashed":"solid",look:u.look,labelType:"markdown"};a.push(h)}return{nodes:i,edges:a,other:{},config:u,direction:this.getDirection()}}},A(z,"ClassDB"),z),gt=A(s=>`g.classGroup text {
|
|
7
|
-
fill: ${s.nodeBorder||s.classText};
|
|
8
|
-
stroke: none;
|
|
9
|
-
font-family: ${s.fontFamily};
|
|
10
|
-
font-size: 10px;
|
|
11
|
-
|
|
12
|
-
.title {
|
|
13
|
-
font-weight: bolder;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
.cluster-label text {
|
|
19
|
-
fill: ${s.titleColor};
|
|
20
|
-
}
|
|
21
|
-
.cluster-label span {
|
|
22
|
-
color: ${s.titleColor};
|
|
23
|
-
}
|
|
24
|
-
.cluster-label span p {
|
|
25
|
-
background-color: transparent;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
.cluster rect {
|
|
29
|
-
fill: ${s.clusterBkg};
|
|
30
|
-
stroke: ${s.clusterBorder};
|
|
31
|
-
stroke-width: 1px;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
.cluster text {
|
|
35
|
-
fill: ${s.titleColor};
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
.cluster span {
|
|
39
|
-
color: ${s.titleColor};
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
.nodeLabel, .edgeLabel {
|
|
43
|
-
color: ${s.classText};
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
.noteLabel .nodeLabel, .noteLabel .edgeLabel {
|
|
47
|
-
color: ${s.noteTextColor};
|
|
48
|
-
}
|
|
49
|
-
.edgeLabel .label rect {
|
|
50
|
-
fill: ${s.mainBkg};
|
|
51
|
-
}
|
|
52
|
-
.label text {
|
|
53
|
-
fill: ${s.classText};
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
.labelBkg {
|
|
57
|
-
background: ${s.mainBkg};
|
|
58
|
-
}
|
|
59
|
-
.edgeLabel .label span {
|
|
60
|
-
background: ${s.mainBkg};
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
.classTitle {
|
|
64
|
-
font-weight: bolder;
|
|
65
|
-
}
|
|
66
|
-
.node rect,
|
|
67
|
-
.node circle,
|
|
68
|
-
.node ellipse,
|
|
69
|
-
.node polygon,
|
|
70
|
-
.node path {
|
|
71
|
-
fill: ${s.mainBkg};
|
|
72
|
-
stroke: ${s.nodeBorder};
|
|
73
|
-
stroke-width: ${s.strokeWidth};
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
.divider {
|
|
78
|
-
stroke: ${s.nodeBorder};
|
|
79
|
-
stroke-width: 1;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
g.clickable {
|
|
83
|
-
cursor: pointer;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
g.classGroup rect {
|
|
87
|
-
fill: ${s.mainBkg};
|
|
88
|
-
stroke: ${s.nodeBorder};
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
g.classGroup line {
|
|
92
|
-
stroke: ${s.nodeBorder};
|
|
93
|
-
stroke-width: 1;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
.classLabel .box {
|
|
97
|
-
stroke: none;
|
|
98
|
-
stroke-width: 0;
|
|
99
|
-
fill: ${s.mainBkg};
|
|
100
|
-
opacity: 0.5;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
.classLabel .label {
|
|
104
|
-
fill: ${s.nodeBorder};
|
|
105
|
-
font-size: 10px;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
.relation {
|
|
109
|
-
stroke: ${s.lineColor};
|
|
110
|
-
stroke-width: ${s.strokeWidth};
|
|
111
|
-
fill: none;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
.dashed-line{
|
|
115
|
-
stroke-dasharray: 3;
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
.dotted-line{
|
|
119
|
-
stroke-dasharray: 1 2;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
[id$="-compositionStart"], .composition {
|
|
123
|
-
fill: ${s.lineColor} !important;
|
|
124
|
-
stroke: ${s.lineColor} !important;
|
|
125
|
-
stroke-width: 1;
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
[id$="-compositionEnd"], .composition {
|
|
129
|
-
fill: ${s.lineColor} !important;
|
|
130
|
-
stroke: ${s.lineColor} !important;
|
|
131
|
-
stroke-width: 1;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
[id$="-dependencyStart"], .dependency {
|
|
135
|
-
fill: ${s.lineColor} !important;
|
|
136
|
-
stroke: ${s.lineColor} !important;
|
|
137
|
-
stroke-width: 1;
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
[id$="-dependencyEnd"], .dependency {
|
|
141
|
-
fill: ${s.lineColor} !important;
|
|
142
|
-
stroke: ${s.lineColor} !important;
|
|
143
|
-
stroke-width: 1;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
[id$="-extensionStart"], .extension {
|
|
147
|
-
fill: transparent !important;
|
|
148
|
-
stroke: ${s.lineColor} !important;
|
|
149
|
-
stroke-width: 1;
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
[id$="-extensionEnd"], .extension {
|
|
153
|
-
fill: transparent !important;
|
|
154
|
-
stroke: ${s.lineColor} !important;
|
|
155
|
-
stroke-width: 1;
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
[id$="-aggregationStart"], .aggregation {
|
|
159
|
-
fill: transparent !important;
|
|
160
|
-
stroke: ${s.lineColor} !important;
|
|
161
|
-
stroke-width: 1;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
[id$="-aggregationEnd"], .aggregation {
|
|
165
|
-
fill: transparent !important;
|
|
166
|
-
stroke: ${s.lineColor} !important;
|
|
167
|
-
stroke-width: 1;
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
[id$="-lollipopStart"], .lollipop {
|
|
171
|
-
fill: ${s.mainBkg} !important;
|
|
172
|
-
stroke: ${s.lineColor} !important;
|
|
173
|
-
stroke-width: 1;
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
[id$="-lollipopEnd"], .lollipop {
|
|
177
|
-
fill: ${s.mainBkg} !important;
|
|
178
|
-
stroke: ${s.lineColor} !important;
|
|
179
|
-
stroke-width: 1;
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
.edgeTerminals {
|
|
183
|
-
font-size: 11px;
|
|
184
|
-
line-height: initial;
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
.classTitleText {
|
|
188
|
-
text-anchor: middle;
|
|
189
|
-
font-size: 18px;
|
|
190
|
-
fill: ${s.textColor};
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
.edgeLabel[data-look="neo"] {
|
|
194
|
-
background-color: ${s.edgeLabelBackground};
|
|
195
|
-
p {
|
|
196
|
-
background-color: ${s.edgeLabelBackground};
|
|
197
|
-
}
|
|
198
|
-
rect {
|
|
199
|
-
opacity: 0.5;
|
|
200
|
-
background-color: ${s.edgeLabelBackground};
|
|
201
|
-
fill: ${s.edgeLabelBackground};
|
|
202
|
-
}
|
|
203
|
-
text-align: center;
|
|
204
|
-
}
|
|
205
|
-
${et()}
|
|
206
|
-
`,"getStyles"),_t=gt,mt=A((s,i="TB")=>{if(!s.doc)return i;let a=i;for(const u of s.doc)u.stmt==="dir"&&(a=u.value);return a},"getDir"),Ct=A(function(s,i){return i.db.getClasses()},"getClasses"),bt=A(async function(s,i,a,u){Oe.info("REF0:"),Oe.info("Drawing class diagram (v3)",i);const{securityLevel:l,state:r,layout:h}=F();u.db.setDiagramId(i);const f=u.db.getData(),E=st(i,l);f.type=u.type,f.layoutAlgorithm=at(h),f.nodeSpacing=r?.nodeSpacing||50,f.rankSpacing=r?.rankSpacing||50,f.markers=["aggregation","extension","composition","dependency","lollipop"],f.diagramId=i,await rt(f,E);const T=8;we.insertTitle(E,"classDiagramTitleText",r?.titleTopMargin??25,u.db.getDiagramTitle()),it(E,T,"classDiagram",r?.useMaxWidth??!0)},"draw"),St={getClasses:Ct,draw:bt,getDir:mt};export{Bt as C,Ft as a,St as c,_t as s};
|