@bryanhu/codexly 0.35.0 → 0.37.0
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/CHANGELOG.md +60 -1
- package/README.md +29 -6
- package/README.zh-CN.md +35 -6
- package/dist/chunk-3WW7LK46.js +5 -0
- package/dist/chunk-43QCECCY.js +40 -0
- package/dist/chunk-IV4NRE4S.js +2 -0
- package/dist/chunk-JHBSDMIM.js +3 -0
- package/dist/chunk-PQPYP3AR.js +77 -0
- package/dist/chunk-XJOOU7A5.js +2 -0
- package/dist/chunk-YAHXVRU3.js +3 -0
- package/dist/chunk-YXJGRSCL.js +2 -0
- package/dist/chunk-ZK5H37U3.js +1044 -0
- package/dist/cli.js +6 -1270
- package/dist/client/index.js +2 -1613
- package/dist/codex-jsonl-frame-worker.js +2 -120
- package/dist/command-RGXPFWPR.js +84 -0
- package/dist/core/index.js +1 -5
- package/dist/dist-2UQZKK3B.js +2 -0
- package/dist/historical-attachment-worker.js +2 -94
- package/dist/protocol/index.js +1 -6
- package/dist/providers/codex/index.js +1 -9
- package/dist/scheduled-task-recurrence-worker.js +9 -2969
- package/dist/server/index.js +1 -11
- package/dist/sqlite-state-worker.js +31 -872
- package/dist/web/.vite/manifest.json +455 -410
- package/dist/web/.vite/manifest.json.br +0 -0
- package/dist/web/.vite/manifest.json.gz +0 -0
- package/dist/web/assets/abnfDiagram-N423BO3Z-BA9G7eND.js +1 -0
- package/dist/web/assets/abnfDiagram-N423BO3Z-BA9G7eND.js.br +0 -0
- package/dist/web/assets/abnfDiagram-N423BO3Z-BA9G7eND.js.gz +0 -0
- package/dist/web/assets/agent-settings-panel-K1YqqkJL.js +1 -0
- package/dist/web/assets/agent-settings-panel-K1YqqkJL.js.br +0 -0
- package/dist/web/assets/agent-settings-panel-K1YqqkJL.js.gz +0 -0
- package/dist/web/assets/architectureDiagram-T3A2C74G-hY1IIQ-y.js +36 -0
- package/dist/web/assets/architectureDiagram-T3A2C74G-hY1IIQ-y.js.br +0 -0
- package/dist/web/assets/architectureDiagram-T3A2C74G-hY1IIQ-y.js.gz +0 -0
- package/dist/web/assets/arrow-down-DoJlTckg.js +1 -0
- package/dist/web/assets/arrow-down-DoJlTckg.js.br +0 -0
- package/dist/web/assets/arrow-down-DoJlTckg.js.gz +0 -0
- package/dist/web/assets/{background-image-picker-D4xlUwrb.js → background-image-picker-BHqZ3SX1.js} +1 -1
- package/dist/web/assets/background-image-picker-BHqZ3SX1.js.br +0 -0
- package/dist/web/assets/background-image-picker-BHqZ3SX1.js.gz +0 -0
- package/dist/web/assets/{chunk-5RXB4S5H-BDaXxnei.js → chunk-5RXB4S5H-fg31GjQR.js} +1 -1
- package/dist/web/assets/chunk-5RXB4S5H-fg31GjQR.js.br +0 -0
- package/dist/web/assets/chunk-5RXB4S5H-fg31GjQR.js.gz +0 -0
- package/dist/web/assets/{chunk-6Q2QTUOP-BcTojajm.js → chunk-6Q2QTUOP-UGVxaGe-.js} +1 -1
- package/dist/web/assets/chunk-6Q2QTUOP-UGVxaGe-.js.br +0 -0
- package/dist/web/assets/chunk-6Q2QTUOP-UGVxaGe-.js.gz +0 -0
- package/dist/web/assets/{chunk-GF5L2VYU-XelwAXnk.js → chunk-GF5L2VYU-iTLU6Gbu.js} +2 -2
- package/dist/web/assets/chunk-GF5L2VYU-iTLU6Gbu.js.br +0 -0
- package/dist/web/assets/chunk-GF5L2VYU-iTLU6Gbu.js.gz +0 -0
- package/dist/web/assets/{chunk-JQJVKLGR-Cyok4-2b.js → chunk-JQJVKLGR-DzWAKhHq.js} +3 -3
- package/dist/web/assets/chunk-JQJVKLGR-DzWAKhHq.js.br +0 -0
- package/dist/web/assets/chunk-JQJVKLGR-DzWAKhHq.js.gz +0 -0
- package/dist/web/assets/classDiagram-JCYQIIEL-Cc_4r5xo.js +1 -0
- package/dist/web/assets/classDiagram-JCYQIIEL-Cc_4r5xo.js.br +0 -0
- package/dist/web/assets/classDiagram-JCYQIIEL-Cc_4r5xo.js.gz +0 -0
- package/dist/web/assets/classDiagram-v2-OCEON4UE-Cc_4r5xo.js +1 -0
- package/dist/web/assets/classDiagram-v2-OCEON4UE-Cc_4r5xo.js.br +0 -0
- package/dist/web/assets/classDiagram-v2-OCEON4UE-Cc_4r5xo.js.gz +0 -0
- package/dist/web/assets/{clipboard-BboqFbFl.js → clipboard-BxrWcnRh.js} +1 -1
- package/dist/web/assets/clipboard-BxrWcnRh.js.br +0 -0
- package/dist/web/assets/clipboard-BxrWcnRh.js.gz +0 -0
- package/dist/web/assets/{code-highlighter-BDJkbu1d.js → code-highlighter-DIfBIRTg.js} +1 -1
- package/dist/web/assets/code-highlighter-DIfBIRTg.js.br +0 -0
- package/dist/web/assets/code-highlighter-DIfBIRTg.js.gz +0 -0
- package/dist/web/assets/{commit-settings-panel-j2yqctr_.js → commit-settings-panel-B0i2Bqmu.js} +1 -1
- package/dist/web/assets/commit-settings-panel-B0i2Bqmu.js.br +0 -0
- package/dist/web/assets/commit-settings-panel-B0i2Bqmu.js.gz +0 -0
- package/dist/web/assets/cynefinDiagram-MW4NZA55-CarrAQe_.js +62 -0
- package/dist/web/assets/cynefinDiagram-MW4NZA55-CarrAQe_.js.br +0 -0
- package/dist/web/assets/cynefinDiagram-MW4NZA55-CarrAQe_.js.gz +0 -0
- package/dist/web/assets/{diagram-7IWD3JNH-BfnXF08-.js → diagram-7IWD3JNH-CHgQ34Br.js} +3 -3
- package/dist/web/assets/diagram-7IWD3JNH-CHgQ34Br.js.br +0 -0
- package/dist/web/assets/diagram-7IWD3JNH-CHgQ34Br.js.gz +0 -0
- package/dist/web/assets/diagram-B4RE2ZJO-qtdLm98R.js +3 -0
- package/dist/web/assets/diagram-B4RE2ZJO-qtdLm98R.js.br +0 -0
- package/dist/web/assets/diagram-B4RE2ZJO-qtdLm98R.js.gz +0 -0
- package/dist/web/assets/diagram-LBJQPF4R-Do0sclzV.js +24 -0
- package/dist/web/assets/diagram-LBJQPF4R-Do0sclzV.js.br +0 -0
- package/dist/web/assets/diagram-LBJQPF4R-Do0sclzV.js.gz +0 -0
- package/dist/web/assets/diagram-Q27KOJAE-CuX25bnK.js +24 -0
- package/dist/web/assets/diagram-Q27KOJAE-CuX25bnK.js.br +0 -0
- package/dist/web/assets/diagram-Q27KOJAE-CuX25bnK.js.gz +0 -0
- package/dist/web/assets/diagram-UB23O5K3-C8vf7TKH.js +41 -0
- package/dist/web/assets/diagram-UB23O5K3-C8vf7TKH.js.br +0 -0
- package/dist/web/assets/diagram-UB23O5K3-C8vf7TKH.js.gz +0 -0
- package/dist/web/assets/{dist-Ci1kbFbB.js → dist-D2KGXHMS.js} +1 -1
- package/dist/web/assets/dist-D2KGXHMS.js.br +0 -0
- package/dist/web/assets/dist-D2KGXHMS.js.gz +0 -0
- package/dist/web/assets/dist-DHnVkR1t.js +42 -0
- package/dist/web/assets/dist-DHnVkR1t.js.br +0 -0
- package/dist/web/assets/dist-DHnVkR1t.js.gz +0 -0
- package/dist/web/assets/{download-Bl7A9H6k.js → download-05FmZQzE.js} +1 -1
- package/dist/web/assets/download-05FmZQzE.js.br +0 -0
- package/dist/web/assets/download-05FmZQzE.js.gz +0 -0
- package/dist/web/assets/ebnfDiagram-BXEA7PRR-DctRYehy.js +1 -0
- package/dist/web/assets/ebnfDiagram-BXEA7PRR-DctRYehy.js.br +0 -0
- package/dist/web/assets/ebnfDiagram-BXEA7PRR-DctRYehy.js.gz +0 -0
- package/dist/web/assets/{erDiagram-JOGREHBK-BOKR1NS3.js → erDiagram-JOGREHBK-BkfLzWvS.js} +2 -2
- package/dist/web/assets/erDiagram-JOGREHBK-BkfLzWvS.js.br +0 -0
- package/dist/web/assets/{erDiagram-JOGREHBK-BOKR1NS3.js.gz → erDiagram-JOGREHBK-BkfLzWvS.js.gz} +0 -0
- package/dist/web/assets/{external-link-Dk0y44ny.js → external-link-DQSTtNhw.js} +1 -1
- package/dist/web/assets/external-link-DQSTtNhw.js.br +0 -0
- package/dist/web/assets/external-link-DQSTtNhw.js.gz +0 -0
- package/dist/web/assets/{file-navigation-view-preference-t7yCo7RL.js → file-navigation-view-preference-BYYgwRsz.js} +1 -1
- package/dist/web/assets/file-navigation-view-preference-BYYgwRsz.js.br +0 -0
- package/dist/web/assets/file-navigation-view-preference-BYYgwRsz.js.gz +0 -0
- package/dist/web/assets/file-review-dialog-B3jUcADI.js +2 -0
- package/dist/web/assets/file-review-dialog-B3jUcADI.js.br +0 -0
- package/dist/web/assets/file-review-dialog-B3jUcADI.js.gz +0 -0
- package/dist/web/assets/{flowDiagram-UKHOOZJN-CEamRwMR.js → flowDiagram-UKHOOZJN-CQWRJfj_.js} +1 -1
- package/dist/web/assets/flowDiagram-UKHOOZJN-CQWRJfj_.js.br +0 -0
- package/dist/web/assets/flowDiagram-UKHOOZJN-CQWRJfj_.js.gz +0 -0
- package/dist/web/assets/git-commit-review-Bz_j3wJo.js +2 -0
- package/dist/web/assets/git-commit-review-Bz_j3wJo.js.br +0 -0
- package/dist/web/assets/git-commit-review-Bz_j3wJo.js.gz +0 -0
- package/dist/web/assets/{git-fork-5Bj0CoPx.js → git-fork-CElzN7bT.js} +1 -1
- package/dist/web/assets/git-fork-CElzN7bT.js.br +1 -0
- package/dist/web/assets/git-fork-CElzN7bT.js.gz +0 -0
- package/dist/web/assets/git-history-panel-Bk5XtV-h.js +1 -0
- package/dist/web/assets/git-history-panel-Bk5XtV-h.js.br +0 -0
- package/dist/web/assets/git-history-panel-Bk5XtV-h.js.gz +0 -0
- package/dist/web/assets/gitGraphDiagram-DS77QQ5N-JH4oE096.js +106 -0
- package/dist/web/assets/gitGraphDiagram-DS77QQ5N-JH4oE096.js.br +0 -0
- package/dist/web/assets/gitGraphDiagram-DS77QQ5N-JH4oE096.js.gz +0 -0
- package/dist/web/assets/global-search-dialog-nP5Zoo16.js +2 -0
- package/dist/web/assets/global-search-dialog-nP5Zoo16.js.br +0 -0
- package/dist/web/assets/global-search-dialog-nP5Zoo16.js.gz +0 -0
- package/dist/web/assets/global-settings-about-Bdzkr5Fi.js +1 -0
- package/dist/web/assets/global-settings-about-Bdzkr5Fi.js.br +0 -0
- package/dist/web/assets/global-settings-about-Bdzkr5Fi.js.gz +0 -0
- package/dist/web/assets/global-settings-page-Bm6WTYej.js +2 -0
- package/dist/web/assets/global-settings-page-Bm6WTYej.js.br +0 -0
- package/dist/web/assets/global-settings-page-Bm6WTYej.js.gz +0 -0
- package/dist/web/assets/{global-settings-pets-hPG36aUL.js → global-settings-pets-ChV29f_6.js} +1 -1
- package/dist/web/assets/global-settings-pets-ChV29f_6.js.br +0 -0
- package/dist/web/assets/global-settings-pets-ChV29f_6.js.gz +0 -0
- package/dist/web/assets/{highlighted-body-OFNGDK62-CoO9fhim.js → highlighted-body-OFNGDK62-D1VJUKau.js} +1 -1
- package/dist/web/assets/highlighted-body-OFNGDK62-D1VJUKau.js.br +0 -0
- package/dist/web/assets/highlighted-body-OFNGDK62-D1VJUKau.js.gz +0 -0
- package/dist/web/assets/{history-location-Cu79COFx.js → history-location-C2XDYAuy.js} +1 -1
- package/dist/web/assets/history-location-C2XDYAuy.js.br +0 -0
- package/dist/web/assets/history-location-C2XDYAuy.js.gz +0 -0
- package/dist/web/assets/{history-task-timeline-CQphWf0m.js → history-task-timeline-CphChwX0.js} +1 -1
- package/dist/web/assets/history-task-timeline-CphChwX0.js.br +0 -0
- package/dist/web/assets/history-task-timeline-CphChwX0.js.gz +0 -0
- package/dist/web/assets/image-preview-CZiY9KQs.js +2 -0
- package/dist/web/assets/image-preview-CZiY9KQs.js.br +4 -0
- package/dist/web/assets/image-preview-CZiY9KQs.js.gz +0 -0
- package/dist/web/assets/image-preview-content-D54Quns6.js +41 -0
- package/dist/web/assets/image-preview-content-D54Quns6.js.br +0 -0
- package/dist/web/assets/image-preview-content-D54Quns6.js.gz +0 -0
- package/dist/web/assets/index-BJqxQCE6.css +2 -0
- package/dist/web/assets/index-BJqxQCE6.css.br +0 -0
- package/dist/web/assets/index-BJqxQCE6.css.gz +0 -0
- package/dist/web/assets/index-CV7PO8FJ.js +4 -0
- package/dist/web/assets/index-CV7PO8FJ.js.br +0 -0
- package/dist/web/assets/index-CV7PO8FJ.js.gz +0 -0
- package/dist/web/assets/infoDiagram-6WML65LV-smD1e7u3.js +2 -0
- package/dist/web/assets/infoDiagram-6WML65LV-smD1e7u3.js.br +0 -0
- package/dist/web/assets/infoDiagram-6WML65LV-smD1e7u3.js.gz +0 -0
- package/dist/web/assets/{initial-deps-DlvNWQT2.js → initial-deps-B8FrcWWN.js} +11 -11
- package/dist/web/assets/initial-deps-B8FrcWWN.js.br +0 -0
- package/dist/web/assets/{initial-deps-DlvNWQT2.js.gz → initial-deps-B8FrcWWN.js.gz} +0 -0
- package/dist/web/assets/initial-deps-CW5Jl6i2.js +1 -0
- package/dist/web/assets/initial-deps-CW5Jl6i2.js.br +0 -0
- package/dist/web/assets/initial-deps-CW5Jl6i2.js.gz +0 -0
- package/dist/web/assets/initial-deps-Cppvl2Gz.js +1 -0
- package/dist/web/assets/initial-deps-Cppvl2Gz.js.br +0 -0
- package/dist/web/assets/initial-deps-Cppvl2Gz.js.gz +0 -0
- package/dist/web/assets/initial-deps-DElr8S4a.js +2 -0
- package/dist/web/assets/initial-deps-DElr8S4a.js.br +0 -0
- package/dist/web/assets/initial-deps-DElr8S4a.js.gz +0 -0
- package/dist/web/assets/initial-deps-DFOart6r.js +1 -0
- package/dist/web/assets/initial-deps-DFOart6r.js.br +0 -0
- package/dist/web/assets/initial-deps-DFOart6r.js.gz +0 -0
- package/dist/web/assets/initial-deps-DZ-sH4cr.js +1 -0
- package/dist/web/assets/initial-deps-DZ-sH4cr.js.br +0 -0
- package/dist/web/assets/initial-deps-DZ-sH4cr.js.gz +0 -0
- package/dist/web/assets/{installed-skills-pane-DBJ_KuXN.js → installed-skills-pane-DnKCXx4r.js} +1 -1
- package/dist/web/assets/installed-skills-pane-DnKCXx4r.js.br +0 -0
- package/dist/web/assets/installed-skills-pane-DnKCXx4r.js.gz +0 -0
- package/dist/web/assets/{ishikawaDiagram-WSZJBQD7-CcWhd8w9.js → ishikawaDiagram-WSZJBQD7-BMJ0kCX-.js} +1 -1
- package/dist/web/assets/ishikawaDiagram-WSZJBQD7-BMJ0kCX-.js.br +0 -0
- package/dist/web/assets/ishikawaDiagram-WSZJBQD7-BMJ0kCX-.js.gz +0 -0
- package/dist/web/assets/{kanban-definition-27J2QSJJ-DEkge27F.js → kanban-definition-27J2QSJJ-pQQ3ybGq.js} +3 -3
- package/dist/web/assets/kanban-definition-27J2QSJJ-pQQ3ybGq.js.br +0 -0
- package/dist/web/assets/kanban-definition-27J2QSJJ-pQQ3ybGq.js.gz +0 -0
- package/dist/web/assets/lazy-message-response-S2-ZO_oT.js +2 -0
- package/dist/web/assets/lazy-message-response-S2-ZO_oT.js.br +0 -0
- package/dist/web/assets/lazy-message-response-S2-ZO_oT.js.gz +0 -0
- package/dist/web/assets/{maximize-2-B5zOTtsd.js → maximize-2-CawekEKe.js} +1 -1
- package/dist/web/assets/maximize-2-CawekEKe.js.br +0 -0
- package/dist/web/assets/maximize-2-CawekEKe.js.gz +0 -0
- package/dist/web/assets/mcp-management-pane-CAcqH6Ft.js +1 -0
- package/dist/web/assets/mcp-management-pane-CAcqH6Ft.js.br +0 -0
- package/dist/web/assets/mcp-management-pane-CAcqH6Ft.js.gz +0 -0
- package/dist/web/assets/mermaid-GHXKKRXX-CRcc_eOq.js +1 -0
- package/dist/web/assets/mermaid-GHXKKRXX-CRcc_eOq.js.br +1 -0
- package/dist/web/assets/mermaid-GHXKKRXX-CRcc_eOq.js.gz +0 -0
- package/dist/web/assets/message-assistant-directive-7AH4Pn2V.js +3 -0
- package/dist/web/assets/message-assistant-directive-7AH4Pn2V.js.br +0 -0
- package/dist/web/assets/message-assistant-directive-7AH4Pn2V.js.gz +0 -0
- package/dist/web/assets/message-response-D6AZoXZR.js +151 -0
- package/dist/web/assets/message-response-D6AZoXZR.js.br +0 -0
- package/dist/web/assets/message-response-D6AZoXZR.js.gz +0 -0
- package/dist/web/assets/{mindmap-definition-FAOFIHXS-DubrGaue.js → mindmap-definition-FAOFIHXS-CgQ5woK5.js} +2 -2
- package/dist/web/assets/mindmap-definition-FAOFIHXS-CgQ5woK5.js.br +0 -0
- package/dist/web/assets/mindmap-definition-FAOFIHXS-CgQ5woK5.js.gz +0 -0
- package/dist/web/assets/official-plugins-pane-CBk4rbLt.js +1 -0
- package/dist/web/assets/official-plugins-pane-CBk4rbLt.js.br +0 -0
- package/dist/web/assets/official-plugins-pane-CBk4rbLt.js.gz +0 -0
- package/dist/web/assets/patch-diff-viewer-nIzfWkKE.js +1409 -0
- package/dist/web/assets/patch-diff-viewer-nIzfWkKE.js.br +0 -0
- package/dist/web/assets/patch-diff-viewer-nIzfWkKE.js.gz +0 -0
- package/dist/web/assets/pdf-preview-Zrj4u-KR.js +3 -0
- package/dist/web/assets/pdf-preview-Zrj4u-KR.js.br +0 -0
- package/dist/web/assets/pdf-preview-Zrj4u-KR.js.gz +0 -0
- package/dist/web/assets/pegDiagram-VL7TDLO6-CEECg9Qv.js +1 -0
- package/dist/web/assets/pegDiagram-VL7TDLO6-CEECg9Qv.js.br +0 -0
- package/dist/web/assets/pegDiagram-VL7TDLO6-CEECg9Qv.js.gz +0 -0
- package/dist/web/assets/{personalization-settings-panel-Br7qXDQ7.js → personalization-settings-panel-D3OqsNUV.js} +1 -1
- package/dist/web/assets/personalization-settings-panel-D3OqsNUV.js.br +0 -0
- package/dist/web/assets/personalization-settings-panel-D3OqsNUV.js.gz +0 -0
- package/dist/web/assets/pieDiagram-7S7Q4E2Y-C3L4IYmx.js +39 -0
- package/dist/web/assets/pieDiagram-7S7Q4E2Y-C3L4IYmx.js.br +0 -0
- package/dist/web/assets/pieDiagram-7S7Q4E2Y-C3L4IYmx.js.gz +0 -0
- package/dist/web/assets/{project-file-popup-page-CmNJLTSV.js → project-file-popup-page-7yzFqPZq.js} +1 -1
- package/dist/web/assets/project-file-popup-page-7yzFqPZq.js.br +0 -0
- package/dist/web/assets/project-file-popup-page-7yzFqPZq.js.gz +0 -0
- package/dist/web/assets/project-source-panel-C1tTwC1j.js +2 -0
- package/dist/web/assets/project-source-panel-C1tTwC1j.js.br +0 -0
- package/dist/web/assets/project-source-panel-C1tTwC1j.js.gz +0 -0
- package/dist/web/assets/{prompt-input-Brfimssc.js → prompt-input--2KQl6SR.js} +1 -1
- package/dist/web/assets/prompt-input--2KQl6SR.js.br +0 -0
- package/dist/web/assets/prompt-input--2KQl6SR.js.gz +0 -0
- package/dist/web/assets/railroadDiagram-AXF67PYL-CXSGJisB.js +1 -0
- package/dist/web/assets/railroadDiagram-AXF67PYL-CXSGJisB.js.br +0 -0
- package/dist/web/assets/railroadDiagram-AXF67PYL-CXSGJisB.js.gz +0 -0
- package/dist/web/assets/{requirementDiagram-LRYGKXZP-CG8KWt_j.js → requirementDiagram-LRYGKXZP-uB3tW141.js} +2 -2
- package/dist/web/assets/requirementDiagram-LRYGKXZP-uB3tW141.js.br +0 -0
- package/dist/web/assets/requirementDiagram-LRYGKXZP-uB3tW141.js.gz +0 -0
- package/dist/web/assets/resources-en-CNO1wrxl.js +1 -0
- package/dist/web/assets/resources-en-CNO1wrxl.js.br +0 -0
- package/dist/web/assets/resources-en-CNO1wrxl.js.gz +0 -0
- package/dist/web/assets/scan-DyLrpouW.js +1 -0
- package/dist/web/assets/scan-DyLrpouW.js.br +3 -0
- package/dist/web/assets/scan-DyLrpouW.js.gz +0 -0
- package/dist/web/assets/{scheduled-task-date-time-picker-DeOtns9O.js → scheduled-task-date-time-picker-BVYVGT78.js} +1 -1
- package/dist/web/assets/scheduled-task-date-time-picker-BVYVGT78.js.br +0 -0
- package/dist/web/assets/scheduled-task-date-time-picker-BVYVGT78.js.gz +0 -0
- package/dist/web/assets/{scheduled-task-floating-ui~scheduled-task-date-time-picker-CbWhx_7u.js → scheduled-task-floating-ui~scheduled-task-date-time-picker-wwPq7k9m.js} +1 -1
- package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-wwPq7k9m.js.br +0 -0
- package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-wwPq7k9m.js.gz +0 -0
- package/dist/web/assets/scheduled-tasks-BBUd86IL.js +1 -0
- package/dist/web/assets/scheduled-tasks-BBUd86IL.js.br +0 -0
- package/dist/web/assets/scheduled-tasks-BBUd86IL.js.gz +0 -0
- package/dist/web/assets/scheduled-tasks-container-CQkfAgKW.js +2 -0
- package/dist/web/assets/scheduled-tasks-container-CQkfAgKW.js.br +0 -0
- package/dist/web/assets/scheduled-tasks-container-CQkfAgKW.js.gz +0 -0
- package/dist/web/assets/{sequenceDiagram-SI44F4Z6-DbZoTul2.js → sequenceDiagram-SI44F4Z6-BikVJyrh.js} +2 -2
- package/dist/web/assets/sequenceDiagram-SI44F4Z6-BikVJyrh.js.br +0 -0
- package/dist/web/assets/sequenceDiagram-SI44F4Z6-BikVJyrh.js.gz +0 -0
- package/dist/web/assets/{shiki-bundle-BlbGsyMZ.js → shiki-bundle-COC_j-nR.js} +1 -1
- package/dist/web/assets/shiki-bundle-COC_j-nR.js.br +3 -0
- package/dist/web/assets/shiki-bundle-COC_j-nR.js.gz +0 -0
- package/dist/web/assets/skills-market-container-_ME3wZFP.js +2 -0
- package/dist/web/assets/skills-market-container-_ME3wZFP.js.br +0 -0
- package/dist/web/assets/skills-market-container-_ME3wZFP.js.gz +0 -0
- package/dist/web/assets/{sliders-horizontal-CPjDJLH6.js → sliders-horizontal-C6QQuWdW.js} +1 -1
- package/dist/web/assets/sliders-horizontal-C6QQuWdW.js.br +0 -0
- package/dist/web/assets/sliders-horizontal-C6QQuWdW.js.gz +0 -0
- package/dist/web/assets/{split-workspace-menu-content-rImPq6wj.js → split-workspace-menu-content-CkpZv1Nz.js} +1 -1
- package/dist/web/assets/split-workspace-menu-content-CkpZv1Nz.js.br +0 -0
- package/dist/web/assets/split-workspace-menu-content-CkpZv1Nz.js.gz +0 -0
- package/dist/web/assets/stateDiagram-OKZ733FA-CBWRnaGO.js +1 -0
- package/dist/web/assets/stateDiagram-OKZ733FA-CBWRnaGO.js.br +0 -0
- package/dist/web/assets/stateDiagram-OKZ733FA-CBWRnaGO.js.gz +0 -0
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-CJYWLmtB.js +1 -0
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-CJYWLmtB.js.br +0 -0
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-CJYWLmtB.js.gz +0 -0
- package/dist/web/assets/{swimlanesDiagram-ULZ7WXOC-RILHYzJF.js → swimlanesDiagram-ULZ7WXOC-5agQ3ner.js} +1 -1
- package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-5agQ3ner.js.br +0 -0
- package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-5agQ3ner.js.gz +0 -0
- package/dist/web/assets/third-party-marketplace-pane-D3AJNSoF.js +1 -0
- package/dist/web/assets/third-party-marketplace-pane-D3AJNSoF.js.br +0 -0
- package/dist/web/assets/third-party-marketplace-pane-D3AJNSoF.js.gz +0 -0
- package/dist/web/assets/{timeline-definition-Z64GVDOM-BQMes8Ld.js → timeline-definition-Z64GVDOM-D_09Q10V.js} +1 -1
- package/dist/web/assets/timeline-definition-Z64GVDOM-D_09Q10V.js.br +0 -0
- package/dist/web/assets/timeline-definition-Z64GVDOM-D_09Q10V.js.gz +0 -0
- package/dist/web/assets/{upload-BmVXQDIq.js → upload-BQhbr7lC.js} +1 -1
- package/dist/web/assets/upload-BQhbr7lC.js.br +0 -0
- package/dist/web/assets/upload-BQhbr7lC.js.gz +0 -0
- package/dist/web/assets/{vennDiagram-T6HMQDX7-qBMuOWPn.js → vennDiagram-T6HMQDX7-3WtBk1Fg.js} +1 -1
- package/dist/web/assets/vennDiagram-T6HMQDX7-3WtBk1Fg.js.br +0 -0
- package/dist/web/assets/vennDiagram-T6HMQDX7-3WtBk1Fg.js.gz +0 -0
- package/dist/web/assets/{wardleyDiagram-T6FBY63Y-BXVFrJeX.js → wardleyDiagram-T6FBY63Y-DBIzys3u.js} +3 -3
- package/dist/web/assets/wardleyDiagram-T6FBY63Y-DBIzys3u.js.br +0 -0
- package/dist/web/assets/wardleyDiagram-T6FBY63Y-DBIzys3u.js.gz +0 -0
- package/dist/web/assets/workbench-inspector-changes-DSbBqbXe.js +1 -0
- package/dist/web/assets/workbench-inspector-changes-DSbBqbXe.js.br +0 -0
- package/dist/web/assets/workbench-inspector-changes-DSbBqbXe.js.gz +0 -0
- package/dist/web/assets/{workbench-pet-canvas-BM6S31jL.js → workbench-pet-canvas-Ct1J6Adp.js} +1 -1
- package/dist/web/assets/workbench-pet-canvas-Ct1J6Adp.js.br +0 -0
- package/dist/web/assets/workbench-pet-canvas-Ct1J6Adp.js.gz +0 -0
- package/dist/web/assets/workbench-shell-CP0njkD8.js +16 -0
- package/dist/web/assets/workbench-shell-CP0njkD8.js.br +0 -0
- package/dist/web/assets/workbench-shell-CP0njkD8.js.gz +0 -0
- package/dist/web/assets/{xychartDiagram-ELKLHX3M-DT2u1V83.js → xychartDiagram-ELKLHX3M-DwDj5q-W.js} +1 -1
- package/dist/web/assets/xychartDiagram-ELKLHX3M-DwDj5q-W.js.br +0 -0
- package/dist/web/assets/xychartDiagram-ELKLHX3M-DwDj5q-W.js.gz +0 -0
- package/dist/web/index.html +9 -7
- package/dist/web/index.html.br +0 -0
- package/dist/web/index.html.gz +0 -0
- package/docs/git-workflow.md +59 -0
- package/docs/model-context-window.md +31 -0
- package/docs/web-autostart.md +104 -0
- package/docs/web-autostart.zh-CN.md +104 -0
- package/package.json +5 -1
- package/dist/chunk-6TW6YUSL.js +0 -74005
- package/dist/chunk-BRKY2HKI.js +0 -6072
- package/dist/chunk-GBLVWFLZ.js +0 -23
- package/dist/chunk-GT7XTSEG.js +0 -56
- package/dist/chunk-K6J42667.js +0 -43
- package/dist/chunk-OM52Z4J7.js +0 -3360
- package/dist/chunk-REIMOLGX.js +0 -317
- package/dist/chunk-RGMQBXXC.js +0 -16146
- package/dist/dist-NGSIFQU5.js +0 -252
- package/dist/runtime-instance-worker.js +0 -19
- package/dist/web/assets/abnfDiagram-N423BO3Z-DjEUmHES.js +0 -1
- package/dist/web/assets/abnfDiagram-N423BO3Z-DjEUmHES.js.br +0 -0
- package/dist/web/assets/abnfDiagram-N423BO3Z-DjEUmHES.js.gz +0 -0
- package/dist/web/assets/agent-settings-panel-CuLgzC2n.js +0 -1
- package/dist/web/assets/agent-settings-panel-CuLgzC2n.js.br +0 -0
- package/dist/web/assets/agent-settings-panel-CuLgzC2n.js.gz +0 -0
- package/dist/web/assets/architectureDiagram-T3A2C74G-DNtnW8Fq.js +0 -36
- package/dist/web/assets/architectureDiagram-T3A2C74G-DNtnW8Fq.js.br +0 -0
- package/dist/web/assets/architectureDiagram-T3A2C74G-DNtnW8Fq.js.gz +0 -0
- package/dist/web/assets/arrow-down-BqiCeaan.js +0 -1
- package/dist/web/assets/arrow-down-BqiCeaan.js.br +0 -0
- package/dist/web/assets/arrow-down-BqiCeaan.js.gz +0 -0
- package/dist/web/assets/background-image-picker-D4xlUwrb.js.br +0 -0
- package/dist/web/assets/background-image-picker-D4xlUwrb.js.gz +0 -0
- package/dist/web/assets/chunk-5RXB4S5H-BDaXxnei.js.br +0 -0
- package/dist/web/assets/chunk-5RXB4S5H-BDaXxnei.js.gz +0 -0
- package/dist/web/assets/chunk-6Q2QTUOP-BcTojajm.js.br +0 -0
- package/dist/web/assets/chunk-6Q2QTUOP-BcTojajm.js.gz +0 -0
- package/dist/web/assets/chunk-GF5L2VYU-XelwAXnk.js.br +0 -0
- package/dist/web/assets/chunk-GF5L2VYU-XelwAXnk.js.gz +0 -0
- package/dist/web/assets/chunk-JQJVKLGR-Cyok4-2b.js.br +0 -0
- package/dist/web/assets/chunk-JQJVKLGR-Cyok4-2b.js.gz +0 -0
- package/dist/web/assets/classDiagram-JCYQIIEL-B9HBTIG7.js +0 -1
- package/dist/web/assets/classDiagram-JCYQIIEL-B9HBTIG7.js.br +0 -0
- package/dist/web/assets/classDiagram-JCYQIIEL-B9HBTIG7.js.gz +0 -0
- package/dist/web/assets/classDiagram-v2-OCEON4UE-B9HBTIG7.js +0 -1
- package/dist/web/assets/classDiagram-v2-OCEON4UE-B9HBTIG7.js.br +0 -0
- package/dist/web/assets/classDiagram-v2-OCEON4UE-B9HBTIG7.js.gz +0 -0
- package/dist/web/assets/clipboard-BboqFbFl.js.br +0 -0
- package/dist/web/assets/clipboard-BboqFbFl.js.gz +0 -0
- package/dist/web/assets/code-highlighter-BDJkbu1d.js.br +0 -0
- package/dist/web/assets/code-highlighter-BDJkbu1d.js.gz +0 -0
- package/dist/web/assets/commit-settings-panel-j2yqctr_.js.br +0 -0
- package/dist/web/assets/commit-settings-panel-j2yqctr_.js.gz +0 -0
- package/dist/web/assets/cynefinDiagram-MW4NZA55-D9tIBEvv.js +0 -62
- package/dist/web/assets/cynefinDiagram-MW4NZA55-D9tIBEvv.js.br +0 -0
- package/dist/web/assets/cynefinDiagram-MW4NZA55-D9tIBEvv.js.gz +0 -0
- package/dist/web/assets/diagram-7IWD3JNH-BfnXF08-.js.br +0 -0
- package/dist/web/assets/diagram-7IWD3JNH-BfnXF08-.js.gz +0 -0
- package/dist/web/assets/diagram-B4RE2ZJO-Ct90H1dH.js +0 -3
- package/dist/web/assets/diagram-B4RE2ZJO-Ct90H1dH.js.br +0 -0
- package/dist/web/assets/diagram-B4RE2ZJO-Ct90H1dH.js.gz +0 -0
- package/dist/web/assets/diagram-LBJQPF4R-BlYQtbyl.js +0 -24
- package/dist/web/assets/diagram-LBJQPF4R-BlYQtbyl.js.br +0 -0
- package/dist/web/assets/diagram-LBJQPF4R-BlYQtbyl.js.gz +0 -0
- package/dist/web/assets/diagram-Q27KOJAE-CDWObxjb.js +0 -24
- package/dist/web/assets/diagram-Q27KOJAE-CDWObxjb.js.br +0 -0
- package/dist/web/assets/diagram-Q27KOJAE-CDWObxjb.js.gz +0 -0
- package/dist/web/assets/diagram-UB23O5K3-DJnddvpy.js +0 -41
- package/dist/web/assets/diagram-UB23O5K3-DJnddvpy.js.br +0 -0
- package/dist/web/assets/diagram-UB23O5K3-DJnddvpy.js.gz +0 -0
- package/dist/web/assets/dist-Ci1kbFbB.js.br +0 -0
- package/dist/web/assets/dist-Ci1kbFbB.js.gz +0 -0
- package/dist/web/assets/download-Bl7A9H6k.js.br +0 -0
- package/dist/web/assets/download-Bl7A9H6k.js.gz +0 -0
- package/dist/web/assets/ebnfDiagram-BXEA7PRR-D_b18zMS.js +0 -1
- package/dist/web/assets/ebnfDiagram-BXEA7PRR-D_b18zMS.js.br +0 -0
- package/dist/web/assets/ebnfDiagram-BXEA7PRR-D_b18zMS.js.gz +0 -0
- package/dist/web/assets/erDiagram-JOGREHBK-BOKR1NS3.js.br +0 -0
- package/dist/web/assets/external-link-Dk0y44ny.js.br +0 -0
- package/dist/web/assets/external-link-Dk0y44ny.js.gz +0 -0
- package/dist/web/assets/file-navigation-view-preference-t7yCo7RL.js.br +0 -0
- package/dist/web/assets/file-navigation-view-preference-t7yCo7RL.js.gz +0 -0
- package/dist/web/assets/file-review-dialog-DvgO1Ae8.js +0 -2
- package/dist/web/assets/file-review-dialog-DvgO1Ae8.js.br +0 -0
- package/dist/web/assets/file-review-dialog-DvgO1Ae8.js.gz +0 -0
- package/dist/web/assets/flowDiagram-UKHOOZJN-CEamRwMR.js.br +0 -0
- package/dist/web/assets/flowDiagram-UKHOOZJN-CEamRwMR.js.gz +0 -0
- package/dist/web/assets/git-commit-review-D5ge3jwI.js +0 -2
- package/dist/web/assets/git-commit-review-D5ge3jwI.js.br +0 -0
- package/dist/web/assets/git-commit-review-D5ge3jwI.js.gz +0 -0
- package/dist/web/assets/git-fork-5Bj0CoPx.js.br +0 -1
- package/dist/web/assets/git-fork-5Bj0CoPx.js.gz +0 -0
- package/dist/web/assets/git-history-panel-DsGqR_Zc.js +0 -1
- package/dist/web/assets/git-history-panel-DsGqR_Zc.js.br +0 -0
- package/dist/web/assets/git-history-panel-DsGqR_Zc.js.gz +0 -0
- package/dist/web/assets/gitGraphDiagram-DS77QQ5N-CuMvIZdK.js +0 -106
- package/dist/web/assets/gitGraphDiagram-DS77QQ5N-CuMvIZdK.js.br +0 -0
- package/dist/web/assets/gitGraphDiagram-DS77QQ5N-CuMvIZdK.js.gz +0 -0
- package/dist/web/assets/global-search-dialog-JzDBjqX4.js +0 -2
- package/dist/web/assets/global-search-dialog-JzDBjqX4.js.br +0 -0
- package/dist/web/assets/global-search-dialog-JzDBjqX4.js.gz +0 -0
- package/dist/web/assets/global-settings-about-CULXi1Dn.js +0 -1
- package/dist/web/assets/global-settings-about-CULXi1Dn.js.br +0 -0
- package/dist/web/assets/global-settings-about-CULXi1Dn.js.gz +0 -0
- package/dist/web/assets/global-settings-page-AK_j6aZC.js +0 -2
- package/dist/web/assets/global-settings-page-AK_j6aZC.js.br +0 -0
- package/dist/web/assets/global-settings-page-AK_j6aZC.js.gz +0 -0
- package/dist/web/assets/global-settings-pets-hPG36aUL.js.br +0 -0
- package/dist/web/assets/global-settings-pets-hPG36aUL.js.gz +0 -0
- package/dist/web/assets/highlighted-body-OFNGDK62-CoO9fhim.js.br +0 -0
- package/dist/web/assets/highlighted-body-OFNGDK62-CoO9fhim.js.gz +0 -0
- package/dist/web/assets/history-location-Cu79COFx.js.br +0 -0
- package/dist/web/assets/history-location-Cu79COFx.js.gz +0 -0
- package/dist/web/assets/history-task-timeline-CQphWf0m.js.br +0 -0
- package/dist/web/assets/history-task-timeline-CQphWf0m.js.gz +0 -0
- package/dist/web/assets/image-preview-Dtx8uVmp.js +0 -2
- package/dist/web/assets/image-preview-Dtx8uVmp.js.br +0 -0
- package/dist/web/assets/image-preview-Dtx8uVmp.js.gz +0 -0
- package/dist/web/assets/image-preview-content-zLsEpLCA.js +0 -41
- package/dist/web/assets/image-preview-content-zLsEpLCA.js.br +0 -0
- package/dist/web/assets/image-preview-content-zLsEpLCA.js.gz +0 -0
- package/dist/web/assets/index-BUv6KmcO.css +0 -2
- package/dist/web/assets/index-BUv6KmcO.css.br +0 -0
- package/dist/web/assets/index-BUv6KmcO.css.gz +0 -0
- package/dist/web/assets/index-DR8WqP5v.js +0 -4
- package/dist/web/assets/index-DR8WqP5v.js.br +0 -0
- package/dist/web/assets/index-DR8WqP5v.js.gz +0 -0
- package/dist/web/assets/infoDiagram-6WML65LV-DegAUKx4.js +0 -2
- package/dist/web/assets/infoDiagram-6WML65LV-DegAUKx4.js.br +0 -0
- package/dist/web/assets/infoDiagram-6WML65LV-DegAUKx4.js.gz +0 -0
- package/dist/web/assets/initial-deps-Be-R---T.js +0 -1
- package/dist/web/assets/initial-deps-Be-R---T.js.br +0 -0
- package/dist/web/assets/initial-deps-Be-R---T.js.gz +0 -0
- package/dist/web/assets/initial-deps-DRuEePWq.js +0 -2
- package/dist/web/assets/initial-deps-DRuEePWq.js.br +0 -0
- package/dist/web/assets/initial-deps-DRuEePWq.js.gz +0 -0
- package/dist/web/assets/initial-deps-Dk9v1WhK.js +0 -1
- package/dist/web/assets/initial-deps-Dk9v1WhK.js.br +0 -0
- package/dist/web/assets/initial-deps-Dk9v1WhK.js.gz +0 -0
- package/dist/web/assets/initial-deps-DlvNWQT2.js.br +0 -0
- package/dist/web/assets/installed-skills-pane-DBJ_KuXN.js.br +0 -0
- package/dist/web/assets/installed-skills-pane-DBJ_KuXN.js.gz +0 -0
- package/dist/web/assets/ishikawaDiagram-WSZJBQD7-CcWhd8w9.js.br +0 -0
- package/dist/web/assets/ishikawaDiagram-WSZJBQD7-CcWhd8w9.js.gz +0 -0
- package/dist/web/assets/kanban-definition-27J2QSJJ-DEkge27F.js.br +0 -0
- package/dist/web/assets/kanban-definition-27J2QSJJ-DEkge27F.js.gz +0 -0
- package/dist/web/assets/lazy-message-response-3j-D3CVS.js +0 -2
- package/dist/web/assets/lazy-message-response-3j-D3CVS.js.br +0 -0
- package/dist/web/assets/lazy-message-response-3j-D3CVS.js.gz +0 -0
- package/dist/web/assets/maximize-2-B5zOTtsd.js.br +0 -0
- package/dist/web/assets/maximize-2-B5zOTtsd.js.gz +0 -0
- package/dist/web/assets/mcp-management-pane-16qr0aVZ.js +0 -1
- package/dist/web/assets/mcp-management-pane-16qr0aVZ.js.br +0 -0
- package/dist/web/assets/mcp-management-pane-16qr0aVZ.js.gz +0 -0
- package/dist/web/assets/mermaid-GHXKKRXX-kGjGANId.js +0 -1
- package/dist/web/assets/mermaid-GHXKKRXX-kGjGANId.js.br +0 -0
- package/dist/web/assets/mermaid-GHXKKRXX-kGjGANId.js.gz +0 -0
- package/dist/web/assets/message-response-DWYIVlqg.js +0 -188
- package/dist/web/assets/message-response-DWYIVlqg.js.br +0 -0
- package/dist/web/assets/message-response-DWYIVlqg.js.gz +0 -0
- package/dist/web/assets/mindmap-definition-FAOFIHXS-DubrGaue.js.br +0 -0
- package/dist/web/assets/mindmap-definition-FAOFIHXS-DubrGaue.js.gz +0 -0
- package/dist/web/assets/official-plugins-pane-vADxh_le.js +0 -1
- package/dist/web/assets/official-plugins-pane-vADxh_le.js.br +0 -0
- package/dist/web/assets/official-plugins-pane-vADxh_le.js.gz +0 -0
- package/dist/web/assets/patch-diff-viewer-C5hjChAK.js +0 -1409
- package/dist/web/assets/patch-diff-viewer-C5hjChAK.js.br +0 -0
- package/dist/web/assets/patch-diff-viewer-C5hjChAK.js.gz +0 -0
- package/dist/web/assets/pdf-preview-BG-XpATo.js +0 -3
- package/dist/web/assets/pdf-preview-BG-XpATo.js.br +0 -0
- package/dist/web/assets/pdf-preview-BG-XpATo.js.gz +0 -0
- package/dist/web/assets/pegDiagram-VL7TDLO6-CJodWN8I.js +0 -1
- package/dist/web/assets/pegDiagram-VL7TDLO6-CJodWN8I.js.br +0 -0
- package/dist/web/assets/pegDiagram-VL7TDLO6-CJodWN8I.js.gz +0 -0
- package/dist/web/assets/personalization-settings-panel-Br7qXDQ7.js.br +0 -0
- package/dist/web/assets/personalization-settings-panel-Br7qXDQ7.js.gz +0 -0
- package/dist/web/assets/pieDiagram-7S7Q4E2Y-CHATPeJh.js +0 -39
- package/dist/web/assets/pieDiagram-7S7Q4E2Y-CHATPeJh.js.br +0 -0
- package/dist/web/assets/pieDiagram-7S7Q4E2Y-CHATPeJh.js.gz +0 -0
- package/dist/web/assets/project-file-popup-page-CmNJLTSV.js.br +0 -0
- package/dist/web/assets/project-file-popup-page-CmNJLTSV.js.gz +0 -0
- package/dist/web/assets/project-source-panel-ze7jsbMy.js +0 -2
- package/dist/web/assets/project-source-panel-ze7jsbMy.js.br +0 -0
- package/dist/web/assets/project-source-panel-ze7jsbMy.js.gz +0 -0
- package/dist/web/assets/prompt-input-Brfimssc.js.br +0 -0
- package/dist/web/assets/prompt-input-Brfimssc.js.gz +0 -0
- package/dist/web/assets/prompt-reference-token-BW8a7fO2.js +0 -3
- package/dist/web/assets/prompt-reference-token-BW8a7fO2.js.br +0 -0
- package/dist/web/assets/prompt-reference-token-BW8a7fO2.js.gz +0 -0
- package/dist/web/assets/railroadDiagram-AXF67PYL-BOP9pMNb.js +0 -1
- package/dist/web/assets/railroadDiagram-AXF67PYL-BOP9pMNb.js.br +0 -0
- package/dist/web/assets/railroadDiagram-AXF67PYL-BOP9pMNb.js.gz +0 -0
- package/dist/web/assets/requirementDiagram-LRYGKXZP-CG8KWt_j.js.br +0 -0
- package/dist/web/assets/requirementDiagram-LRYGKXZP-CG8KWt_j.js.gz +0 -0
- package/dist/web/assets/scheduled-task-date-time-picker-DeOtns9O.js.br +0 -0
- package/dist/web/assets/scheduled-task-date-time-picker-DeOtns9O.js.gz +0 -0
- package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-CbWhx_7u.js.br +0 -0
- package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-CbWhx_7u.js.gz +0 -0
- package/dist/web/assets/scheduled-tasks-container-a34CrlrM.js +0 -2
- package/dist/web/assets/scheduled-tasks-container-a34CrlrM.js.br +0 -0
- package/dist/web/assets/scheduled-tasks-container-a34CrlrM.js.gz +0 -0
- package/dist/web/assets/sequenceDiagram-SI44F4Z6-DbZoTul2.js.br +0 -0
- package/dist/web/assets/sequenceDiagram-SI44F4Z6-DbZoTul2.js.gz +0 -0
- package/dist/web/assets/sheet-B9MDuGoF.js +0 -1
- package/dist/web/assets/sheet-B9MDuGoF.js.br +0 -0
- package/dist/web/assets/sheet-B9MDuGoF.js.gz +0 -0
- package/dist/web/assets/shiki-bundle-BlbGsyMZ.js.br +0 -0
- package/dist/web/assets/shiki-bundle-BlbGsyMZ.js.gz +0 -0
- package/dist/web/assets/skills-market-container-CWO3CeMr.js +0 -2
- package/dist/web/assets/skills-market-container-CWO3CeMr.js.br +0 -0
- package/dist/web/assets/skills-market-container-CWO3CeMr.js.gz +0 -0
- package/dist/web/assets/sliders-horizontal-CPjDJLH6.js.br +0 -1
- package/dist/web/assets/sliders-horizontal-CPjDJLH6.js.gz +0 -0
- package/dist/web/assets/split-workspace-menu-content-rImPq6wj.js.br +0 -0
- package/dist/web/assets/split-workspace-menu-content-rImPq6wj.js.gz +0 -0
- package/dist/web/assets/stateDiagram-OKZ733FA-BBZnBYr0.js +0 -1
- package/dist/web/assets/stateDiagram-OKZ733FA-BBZnBYr0.js.br +0 -0
- package/dist/web/assets/stateDiagram-OKZ733FA-BBZnBYr0.js.gz +0 -0
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-DrsX6D2d.js +0 -1
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-DrsX6D2d.js.br +0 -1
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-DrsX6D2d.js.gz +0 -0
- package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-RILHYzJF.js.br +0 -0
- package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-RILHYzJF.js.gz +0 -0
- package/dist/web/assets/third-party-marketplace-pane-DKWMNoa3.js +0 -1
- package/dist/web/assets/third-party-marketplace-pane-DKWMNoa3.js.br +0 -0
- package/dist/web/assets/third-party-marketplace-pane-DKWMNoa3.js.gz +0 -0
- package/dist/web/assets/timeline-definition-Z64GVDOM-BQMes8Ld.js.br +0 -0
- package/dist/web/assets/timeline-definition-Z64GVDOM-BQMes8Ld.js.gz +0 -0
- package/dist/web/assets/upload-BmVXQDIq.js.br +0 -0
- package/dist/web/assets/upload-BmVXQDIq.js.gz +0 -0
- package/dist/web/assets/vennDiagram-T6HMQDX7-qBMuOWPn.js.br +0 -0
- package/dist/web/assets/vennDiagram-T6HMQDX7-qBMuOWPn.js.gz +0 -0
- package/dist/web/assets/wardleyDiagram-T6FBY63Y-BXVFrJeX.js.br +0 -0
- package/dist/web/assets/wardleyDiagram-T6FBY63Y-BXVFrJeX.js.gz +0 -0
- package/dist/web/assets/workbench-inspector-changes-D5k96_nR.js +0 -2
- package/dist/web/assets/workbench-inspector-changes-D5k96_nR.js.br +0 -0
- package/dist/web/assets/workbench-inspector-changes-D5k96_nR.js.gz +0 -0
- package/dist/web/assets/workbench-pet-canvas-BM6S31jL.js.br +0 -0
- package/dist/web/assets/workbench-pet-canvas-BM6S31jL.js.gz +0 -0
- package/dist/web/assets/workbench-shell-DEH5FG9a.js +0 -14
- package/dist/web/assets/workbench-shell-DEH5FG9a.js.br +0 -0
- package/dist/web/assets/workbench-shell-DEH5FG9a.js.gz +0 -0
- package/dist/web/assets/xychartDiagram-ELKLHX3M-DT2u1V83.js.br +0 -0
- package/dist/web/assets/xychartDiagram-ELKLHX3M-DT2u1V83.js.gz +0 -0
- /package/dist/web/assets/{scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~git-history-pa~l4z6ozb1-ClgveiMa.js → scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-source~c6tt9j64-ClgveiMa.js} +0 -0
- /package/dist/web/assets/{scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~git-history-pa~l4z6ozb1-ClgveiMa.js.br → scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-source~c6tt9j64-ClgveiMa.js.br} +0 -0
- /package/dist/web/assets/{scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~git-history-pa~l4z6ozb1-ClgveiMa.js.gz → scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-source~c6tt9j64-ClgveiMa.js.gz} +0 -0
package/dist/web/assets/{vennDiagram-T6HMQDX7-qBMuOWPn.js → vennDiagram-T6HMQDX7-3WtBk1Fg.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{p as t}from"./src-BY_WSiz7.js";import{H as n,K as r,U as i,a,b as o,c as s,et as c,f as l,nt as u,rt as d,tt as f,v as p,w as m,y as h}from"./chunk-I66GZJ75-DQ6xf6w7.js";import{i as g}from"./chunk-NSK5VX7P-CWtmfyNT.js";import{t as _}from"./rough.esm-Dy-Kn_BL.js";import{u as v}from"./message-response-DWYIVlqg.js";var y=(e,t)=>u(e,`a`,-t),b=1e-10;function x(e,t){let n=C(e),r=n.filter(t=>S(t,e)),i=0,a=0,o=[];if(r.length>1){let t=O(r);for(let e=0;e<r.length;++e){let n=r[e];n.angle=Math.atan2(n.x-t.x,n.y-t.y)}r.sort((e,t)=>t.angle-e.angle);let n=r[r.length-1];for(let t=0;t<r.length;++t){let s=r[t];a+=(n.x+s.x)*(s.y-n.y);let c={x:(s.x+n.x)/2,y:(s.y+n.y)/2},l=null;for(let t=0;t<s.parentIndex.length;++t)if(n.parentIndex.includes(s.parentIndex[t])){let r=e[s.parentIndex[t]],i=Math.atan2(s.x-r.x,s.y-r.y),a=Math.atan2(n.x-r.x,n.y-r.y),o=a-i;o<0&&(o+=2*Math.PI);let u=a-o/2,d=T(c,{x:r.x+r.radius*Math.sin(u),y:r.y+r.radius*Math.cos(u)});d>r.radius*2&&(d=r.radius*2),(l==null||l.width>d)&&(l={circle:r,width:d,p1:s,p2:n,large:d>r.radius,sweep:!0})}l!=null&&(o.push(l),i+=w(l.circle.radius,l.width),n=s)}}else{let t=e[0];for(let n=1;n<e.length;++n)e[n].radius<t.radius&&(t=e[n]);let n=!1;for(let r=0;r<e.length;++r)if(T(e[r],t)>Math.abs(t.radius-e[r].radius)){n=!0;break}n?i=a=0:(i=t.radius*t.radius*Math.PI,o.push({circle:t,p1:{x:t.x,y:t.y+t.radius},p2:{x:t.x-b,y:t.y+t.radius},width:t.radius*2,large:!0,sweep:!0}))}return a/=2,t&&(t.area=i+a,t.arcArea=i,t.polygonArea=a,t.arcs=o,t.innerPoints=r,t.intersectionPoints=n),i+a}function S(e,t){return t.every(t=>T(e,t)<t.radius+b)}function C(e){let t=[];for(let n=0;n<e.length;++n)for(let r=n+1;r<e.length;++r){let i=D(e[n],e[r]);for(let e of i)e.parentIndex=[n,r],t.push(e)}return t}function w(e,t){return e*e*Math.acos(1-t/e)-(e-t)*Math.sqrt(t*(2*e-t))}function T(e,t){return Math.sqrt((e.x-t.x)*(e.x-t.x)+(e.y-t.y)*(e.y-t.y))}function E(e,t,n){if(n>=e+t)return 0;if(n<=Math.abs(e-t))return Math.PI*Math.min(e,t)*Math.min(e,t);let r=e-(n*n-t*t+e*e)/(2*n),i=t-(n*n-e*e+t*t)/(2*n);return w(e,r)+w(t,i)}function D(e,t){let n=T(e,t),r=e.radius,i=t.radius;if(n>=r+i||n<=Math.abs(r-i))return[];let a=(r*r-i*i+n*n)/(2*n),o=Math.sqrt(r*r-a*a),s=e.x+a*(t.x-e.x)/n,c=e.y+a*(t.y-e.y)/n,l=-(t.y-e.y)*(o/n),u=-(t.x-e.x)*(o/n);return[{x:s+l,y:c-u},{x:s-l,y:c+u}]}function O(e){let t={x:0,y:0};for(let n of e)t.x+=n.x,t.y+=n.y;return t.x/=e.length,t.y/=e.length,t}function k(e,t,n,r){r||={};let i=r.maxIterations||100,a=r.tolerance||1e-10,o=e(t),s=e(n),c=n-t;if(o*s>0)throw`Initial bisect points must have opposite signs`;if(o===0)return t;if(s===0)return n;for(let n=0;n<i;++n){c/=2;let n=t+c,r=e(n);if(r*o>=0&&(t=n),Math.abs(c)<a||r===0)return n}return t+c}function A(e){let t=Array(e);for(let n=0;n<e;++n)t[n]=0;return t}function j(e,t){return A(e).map(()=>A(t))}function M(e,t){let n=0;for(let r=0;r<e.length;++r)n+=e[r]*t[r];return n}function N(e){return Math.sqrt(M(e,e))}function P(e,t,n){for(let r=0;r<t.length;++r)e[r]=t[r]*n}function F(e,t,n,r,i){for(let a=0;a<e.length;++a)e[a]=t*n[a]+r*i[a]}function I(e,t,n){n||={};let r=n.maxIterations||t.length*200,i=n.nonZeroDelta||1.05,a=n.zeroDelta||.001,o=n.minErrorDelta||1e-6,s=n.minErrorDelta||1e-5,c=n.rho===void 0?1:n.rho,l=n.chi===void 0?2:n.chi,u=n.psi===void 0?-.5:n.psi,d=n.sigma===void 0?.5:n.sigma,f,p=t.length,m=Array(p+1);m[0]=t,m[0].fx=e(t),m[0].id=0;for(let n=0;n<p;++n){let r=t.slice();r[n]=r[n]?r[n]*i:a,m[n+1]=r,m[n+1].fx=e(r),m[n+1].id=n+1}function h(e){for(let t=0;t<e.length;t++)m[p][t]=e[t];m[p].fx=e.fx}let g=(e,t)=>e.fx-t.fx,_=t.slice(),v=t.slice(),y=t.slice(),b=t.slice();for(let t=0;t<r;++t){if(m.sort(g),n.history){let e=m.map(e=>{let t=e.slice();return t.fx=e.fx,t.id=e.id,t});e.sort((e,t)=>e.id-t.id),n.history.push({x:m[0].slice(),fx:m[0].fx,simplex:e})}f=0;for(let e=0;e<p;++e)f=Math.max(f,Math.abs(m[0][e]-m[1][e]));if(Math.abs(m[0].fx-m[p].fx)<o&&f<s)break;for(let e=0;e<p;++e){_[e]=0;for(let t=0;t<p;++t)_[e]+=m[t][e];_[e]/=p}let t=m[p];if(F(v,1+c,_,-c,t),v.fx=e(v),v.fx<m[0].fx)F(b,1+l,_,-l,t),b.fx=e(b),b.fx<v.fx?h(b):h(v);else if(v.fx>=m[p-1].fx){let n=!1;if(v.fx>t.fx?(F(y,1+u,_,-u,t),y.fx=e(y),y.fx<t.fx?h(y):n=!0):(F(y,1-u*c,_,u*c,t),y.fx=e(y),y.fx<v.fx?h(y):n=!0),n){if(d>=1)break;for(let t=1;t<m.length;++t)F(m[t],1-d,m[0],d,m[t]),m[t].fx=e(m[t])}}else h(v)}return m.sort(g),{fx:m[0].fx,x:m[0]}}function L(e,t,n,r,i,a,o){let s=n.fx,c=M(n.fxprime,t),l=s,u=s,d=c,f=0;i||=1,a||=1e-6,o||=.1;function p(u,f,p){for(let m=0;m<16;++m)if(i=(u+f)/2,F(r.x,1,n.x,i,t),l=r.fx=e(r.x,r.fxprime),d=M(r.fxprime,t),l>s+a*i*c||l>=p)f=i;else{if(Math.abs(d)<=-o*c)return i;d*(f-u)>=0&&(f=u),u=i,p=l}return 0}for(let m=0;m<10;++m){if(F(r.x,1,n.x,i,t),l=r.fx=e(r.x,r.fxprime),d=M(r.fxprime,t),l>s+a*i*c||m&&l>=u)return p(f,i,u);if(Math.abs(d)<=-o*c)return i;if(d>=0)return p(i,f,l);u=l,f=i,i*=2}return i}function R(e,t,n){let r={x:t.slice(),fx:0,fxprime:t.slice()},i={x:t.slice(),fx:0,fxprime:t.slice()},a=t.slice(),o,s,c=1,l;n||={},l=n.maxIterations||t.length*20,r.fx=e(r.x,r.fxprime),o=r.fxprime.slice(),P(o,r.fxprime,-1);for(let t=0;t<l;++t){if(c=L(e,o,r,i,c),n.history&&n.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:c}),!c)P(o,r.fxprime,-1);else{F(a,1,i.fxprime,-1,r.fxprime);let e=M(r.fxprime,r.fxprime),t=Math.max(0,M(a,i.fxprime)/e);F(o,t,o,-1,i.fxprime),s=r,r=i,i=s}if(N(r.fxprime)<=1e-5)break}return n.history&&n.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:c}),r}function ee(e,t={}){t.maxIterations=t.maxIterations||500;let n=t.initialLayout||ae,r=t.lossFunction||B,i=ne(e,t),a=n(i,t),o=Object.keys(a),s=[];for(let e of o)s.push(a[e].x),s.push(a[e].y);let c=I(e=>{let t={};for(let n=0;n<o.length;++n){let r=o[n];t[r]={x:e[2*n],y:e[2*n+1],radius:a[r].radius}}return r(t,i)},s,t).x;for(let e=0;e<o.length;++e){let t=o[e];a[t].x=c[2*e],a[t].y=c[2*e+1]}return a}var te=1e-10;function z(e,t,n){return Math.min(e,t)*Math.min(e,t)*Math.PI<=n+te?Math.abs(e-t):k(r=>E(e,t,r)-n,0,e+t)}function ne(e,t={}){let n=t.distinct,r=e.map(e=>Object.assign({},e));function i(e){return e.join(`;`)}if(n){let e=new Map;for(let t of r)for(let n=0;n<t.sets.length;n++){let r=String(t.sets[n]);e.set(r,t.size+(e.get(r)||0));for(let i=n+1;i<t.sets.length;i++){let n=String(t.sets[i]),a=`${r};${n}`,o=`${n};${r}`;e.set(a,t.size+(e.get(a)||0)),e.set(o,t.size+(e.get(o)||0))}}for(let t of r)t.sets.length<3&&(t.size=e.get(i(t.sets)))}let a=[],o=new Set;for(let e of r)if(e.sets.length===1)a.push(e.sets[0]);else if(e.sets.length===2){let t=e.sets[0],n=e.sets[1];o.add(i(e.sets)),o.add(i([n,t]))}a.sort((e,t)=>e===t?0:e<t?-1:1);for(let e=0;e<a.length;++e){let t=a[e];for(let n=e+1;n<a.length;++n){let e=a[n];o.has(i([t,e]))||r.push({sets:[t,e],size:0})}}return r}function re(e,t,n){let r=j(t.length,t.length),i=j(t.length,t.length);return e.filter(e=>e.sets.length===2).forEach(e=>{let a=n[e.sets[0]],o=n[e.sets[1]],s=z(Math.sqrt(t[a].size/Math.PI),Math.sqrt(t[o].size/Math.PI),e.size);r[a][o]=r[o][a]=s;let c=0;e.size+1e-10>=Math.min(t[a].size,t[o].size)?c=1:e.size<=1e-10&&(c=-1),i[a][o]=i[o][a]=c}),{distances:r,constraints:i}}function ie(e,t,n,r){for(let e=0;e<t.length;++e)t[e]=0;let i=0;for(let a=0;a<n.length;++a){let o=e[2*a],s=e[2*a+1];for(let c=a+1;c<n.length;++c){let l=e[2*c],u=e[2*c+1],d=n[a][c],f=r[a][c],p=(l-o)*(l-o)+(u-s)*(u-s),m=Math.sqrt(p),h=p-d*d;f>0&&m<=d||f<0&&m>=d||(i+=2*h*h,t[2*a]+=4*h*(o-l),t[2*a+1]+=4*h*(s-u),t[2*c]+=4*h*(l-o),t[2*c+1]+=4*h*(u-s))}}return i}function ae(e,t={}){let n=se(e,t),r=t.lossFunction||B;if(e.length>=8){let i=oe(e,t),a=r(i,e),o=r(n,e);a+1e-8<o&&(n=i)}return n}function oe(e,t={}){let n=t.restarts||10,r=[],i={};for(let t of e)t.sets.length===1&&(i[t.sets[0]]=r.length,r.push(t));let{distances:a,constraints:o}=re(e,r,i),s=N(a.map(N))/a.length;a=a.map(e=>e.map(e=>e/s));let c=(e,t)=>ie(e,t,a,o),l=null;for(let e=0;e<n;++e){let e=R(c,A(a.length*2).map(Math.random),t);(!l||e.fx<l.fx)&&(l=e)}let u=l.x,d={};for(let e=0;e<r.length;++e){let t=r[e];d[t.sets[0]]={x:u[2*e]*s,y:u[2*e+1]*s,radius:Math.sqrt(t.size/Math.PI)}}if(t.history)for(let e of t.history)P(e.x,s);return d}function se(e,t){let n=t&&t.lossFunction?t.lossFunction:B,r={},i={};for(let t of e)if(t.sets.length===1){let e=t.sets[0];r[e]={x:1e10,y:1e10,rowid:r.length,size:t.size,radius:Math.sqrt(t.size/Math.PI)},i[e]=[]}e=e.filter(e=>e.sets.length===2);for(let t of e){let e=t.weight==null?1:t.weight,n=t.sets[0],a=t.sets[1];t.size+te>=Math.min(r[n].size,r[a].size)&&(e=0),i[n].push({set:a,size:t.size,weight:e}),i[a].push({set:n,size:t.size,weight:e})}let a=[];Object.keys(i).forEach(e=>{let t=0;for(let n=0;n<i[e].length;++n)t+=i[e][n].size*i[e][n].weight;a.push({set:e,size:t})});function o(e,t){return t.size-e.size}a.sort(o);let s={};function c(e){return e.set in s}function l(e,t){r[t].x=e.x,r[t].y=e.y,s[t]=!0}l({x:0,y:0},a[0].set);for(let t=1;t<a.length;++t){let s=a[t].set,d=i[s].filter(c),f=r[s];if(d.sort(o),d.length===0)throw`ERROR: missing pairwise overlap information`;let p=[];for(var u=0;u<d.length;++u){let e=r[d[u].set],t=z(f.radius,e.radius,d[u].size);p.push({x:e.x+t,y:e.y}),p.push({x:e.x-t,y:e.y}),p.push({y:e.y+t,x:e.x}),p.push({y:e.y-t,x:e.x});for(let n=u+1;n<d.length;++n){let i=r[d[n].set],a=z(f.radius,i.radius,d[n].size),o=D({x:e.x,y:e.y,radius:t},{x:i.x,y:i.y,radius:a});p.push(...o)}}let m=1e50,h=p[0];for(let t of p){r[s].x=t.x,r[s].y=t.y;let i=n(r,e);i<m&&(m=i,h=t)}l(h,s)}return r}function B(e,t){let n=0;for(let r of t){if(r.sets.length===1)continue;let t;if(r.sets.length===2){let n=e[r.sets[0]],i=e[r.sets[1]];t=E(n.radius,i.radius,T(n,i))}else t=x(r.sets.map(t=>e[t]));let i=r.weight==null?1:r.weight;n+=i*(t-r.size)*(t-r.size)}return n}function ce(e,t){let n=0;for(let r of t){if(r.sets.length===1)continue;let t;if(r.sets.length===2){let n=e[r.sets[0]],i=e[r.sets[1]];t=E(n.radius,i.radius,T(n,i))}else t=x(r.sets.map(t=>e[t]));let i=r.weight==null?1:r.weight,a=Math.log((t+1)/(r.size+1));n+=i*a*a}return n}function le(e,t,n){if(n==null?e.sort((e,t)=>t.radius-e.radius):e.sort(n),e.length>0){let t=e[0].x,n=e[0].y;for(let r of e)r.x-=t,r.y-=n}if(e.length===2&&T(e[0],e[1])<Math.abs(e[1].radius-e[0].radius)&&(e[1].x=e[0].x+e[0].radius-e[1].radius-1e-10,e[1].y=e[0].y),e.length>1){let n=Math.atan2(e[1].x,e[1].y)-t,r=Math.cos(n),i=Math.sin(n);for(let t of e){let e=t.x,n=t.y;t.x=r*e-i*n,t.y=i*e+r*n}}if(e.length>2){let n=Math.atan2(e[2].x,e[2].y)-t;for(;n<0;)n+=2*Math.PI;for(;n>2*Math.PI;)n-=2*Math.PI;if(n>Math.PI){let t=e[1].y/(1e-10+e[1].x);for(let n of e){var r=(n.x+t*n.y)/(1+t*t);n.x=2*r-n.x,n.y=2*r*t-n.y}}}}function ue(e){e.forEach(e=>{e.parent=e});function t(e){return e.parent!==e&&(e.parent=t(e.parent)),e.parent}function n(e,n){let r=t(e);r.parent=t(n)}for(let t=0;t<e.length;++t)for(let r=t+1;r<e.length;++r){let i=e[t].radius+e[r].radius;T(e[t],e[r])+1e-10<i&&n(e[r],e[t])}let r=new Map;for(let n=0;n<e.length;++n){let i=t(e[n]).parent.setid;r.has(i)||r.set(i,[]),r.get(i).push(e[n])}return e.forEach(e=>{delete e.parent}),Array.from(r.values())}function V(e){let t=t=>({max:e.reduce((e,n)=>Math.max(e,n[t]+n.radius),-1/0),min:e.reduce((e,n)=>Math.min(e,n[t]-n.radius),1/0)});return{xRange:t(`x`),yRange:t(`y`)}}function de(e,t,n){t??=Math.PI/2;let r=me(e).map(e=>Object.assign({},e)),i=ue(r);for(let e of i){le(e,t,n);let r=V(e);e.size=(r.xRange.max-r.xRange.min)*(r.yRange.max-r.yRange.min),e.bounds=r}i.sort((e,t)=>t.size-e.size),r=i[0];let a=r.bounds,o=(a.xRange.max-a.xRange.min)/50;function s(e,t,n){if(!e)return;let i=e.bounds,s,c;if(t)s=a.xRange.max-i.xRange.min+o;else{s=a.xRange.max-i.xRange.max;let e=(i.xRange.max-i.xRange.min)/2-(a.xRange.max-a.xRange.min)/2;e<0&&(s+=e)}if(n)c=a.yRange.max-i.yRange.min+o;else{c=a.yRange.max-i.yRange.max;let e=(i.yRange.max-i.yRange.min)/2-(a.yRange.max-a.yRange.min)/2;e<0&&(c+=e)}for(let t of e)t.x+=s,t.y+=c,r.push(t)}let c=1;for(;c<i.length;)s(i[c],!0,!1),s(i[c+1],!1,!0),s(i[c+2],!0,!0),c+=3,a=V(r);return pe(r)}function fe(e,t,n,r,i){let a=me(e);t-=2*r,n-=2*r;let{xRange:o,yRange:s}=V(a);if(o.max===o.min||s.max===s.min)return console.log(`not scaling solution: zero size detected`),e;let c,l;if(i){let e=Math.sqrt(i/Math.PI)*2;c=t/e,l=n/e}else c=t/(o.max-o.min),l=n/(s.max-s.min);let u=Math.min(l,c),d=(t-(o.max-o.min)*u)/2,f=(n-(s.max-s.min)*u)/2;return pe(a.map(e=>({radius:u*e.radius,x:r+d+(e.x-o.min)*u,y:r+f+(e.y-s.min)*u,setid:e.setid})))}function pe(e){let t={};for(let n of e)t[n.setid]=n;return t}function me(e){return Object.keys(e).map(t=>Object.assign(e[t],{setid:t}))}function he(e={}){let t=!1,n=600,r=350,i=15,a=1e3,o=Math.PI/2,s=!0,c=null,l=!0,u=!0,d=null,f=null,p=!1,m=null,h=e&&e.symmetricalTextCentre?e.symmetricalTextCentre:!1,g={},_=e&&e.colourScheme?e.colourScheme:e&&e.colorScheme?e.colorScheme:[`#1f77b4`,`#ff7f0e`,`#2ca02c`,`#d62728`,`#9467bd`,`#8c564b`,`#e377c2`,`#7f7f7f`,`#bcbd22`,`#17becf`],v=0,y=function(e){if(e in g)return g[e];var t=g[e]=_[v];return v+=1,v>=_.length&&(v=0),t},b=ee,x=B;function S(g){let _=g.datum(),v=new Set;_.forEach(e=>{e.size==0&&e.sets.length==1&&v.add(e.sets[0])}),_=_.filter(e=>!e.sets.some(e=>v.has(e)));let S={},C={};if(_.length>0){let e=b(_,{lossFunction:x,distinct:p});s&&(e=de(e,o,f)),S=fe(e,n,r,i,c),C=ve(S,_,h)}let w={};_.forEach(e=>{e.label&&(w[e.sets]=e.label)});function T(e){if(e.sets in w)return w[e.sets];if(e.sets.length==1)return``+e.sets[0]}g.selectAll(`svg`).data([S]).enter().append(`svg`);let E=g.select(`svg`);t?E.attr(`viewBox`,`0 0 ${n} ${r}`):E.attr(`width`,n).attr(`height`,r);let D={},O=!1;E.selectAll(`.venn-area path`).each(function(e){let t=this.getAttribute(`d`);e.sets.length==1&&t&&!p&&(O=!0,D[e.sets[0]]=be(t))});function k(e){return t=>Ce(e.sets.map(e=>{let i=D[e],a=S[e];return i||={x:n/2,y:r/2,radius:1},a||={x:n/2,y:r/2,radius:1},{x:i.x*(1-t)+a.x*t,y:i.y*(1-t)+a.y*t,radius:i.radius*(1-t)+a.radius*t}}),m)}let A=E.selectAll(`.venn-area`).data(_,e=>e.sets),j=A.enter().append(`g`).attr(`class`,e=>`venn-area venn-${e.sets.length==1?`circle`:`intersection`}${e.colour||e.color?` venn-coloured`:``}`).attr(`data-venn-sets`,e=>e.sets.join(`_`)),M=j.append(`path`),N=j.append(`text`).attr(`class`,`label`).text(e=>T(e)).attr(`text-anchor`,`middle`).attr(`dy`,`.35em`).attr(`x`,n/2).attr(`y`,r/2);u&&(M.style(`fill-opacity`,`0`).filter(e=>e.sets.length==1).style(`fill`,e=>e.colour?e.colour:e.color?e.color:y(e.sets)).style(`fill-opacity`,`.25`),N.style(`fill`,t=>t.colour||t.color?`#FFF`:e.textFill?e.textFill:t.sets.length==1?y(t.sets):`#444`));function P(e){return typeof e.transition==`function`?e.transition(`venn`).duration(a):e}let F=g;O&&typeof F.transition==`function`?(F=P(g),F.selectAll(`path`).attrTween(`d`,k)):F.selectAll(`path`).attr(`d`,e=>Ce(e.sets.map(e=>S[e])),m);let I=F.selectAll(`text`).filter(e=>e.sets in C).text(e=>T(e)).attr(`x`,e=>Math.floor(C[e.sets].x)).attr(`y`,e=>Math.floor(C[e.sets].y));l&&(O?`on`in I?I.on(`end`,H(S,T)):I.each(`end`,H(S,T)):I.each(H(S,T)));let L=P(A.exit()).remove();typeof A.transition==`function`&&L.selectAll(`path`).attrTween(`d`,k);let R=L.selectAll(`text`).attr(`x`,n/2).attr(`y`,r/2);return d!==null&&(N.style(`font-size`,`0px`),I.style(`font-size`,d),R.style(`font-size`,`0px`)),{circles:S,textCentres:C,nodes:A,enter:j,update:F,exit:L}}return S.wrap=function(e){return arguments.length?(l=e,S):l},S.useViewBox=function(){return t=!0,S},S.width=function(e){return arguments.length?(n=e,S):n},S.height=function(e){return arguments.length?(r=e,S):r},S.padding=function(e){return arguments.length?(i=e,S):i},S.distinct=function(e){return arguments.length?(p=e,S):p},S.colours=function(e){return arguments.length?(y=e,S):y},S.colors=function(e){return arguments.length?(y=e,S):y},S.fontSize=function(e){return arguments.length?(d=e,S):d},S.round=function(e){return arguments.length?(m=e,S):m},S.duration=function(e){return arguments.length?(a=e,S):a},S.layoutFunction=function(e){return arguments.length?(b=e,S):b},S.normalize=function(e){return arguments.length?(s=e,S):s},S.scaleToFit=function(e){return arguments.length?(c=e,S):c},S.styled=function(e){return arguments.length?(u=e,S):u},S.orientation=function(e){return arguments.length?(o=e,S):o},S.orientationOrder=function(e){return arguments.length?(f=e,S):f},S.lossFunction=function(e){return arguments.length?(x=e==="default"?B:e===`logRatio`?ce:e,S):x},S}function H(e,t){return function(n){let r=this,i=e[n.sets[0]].radius||50,a=t(n)||``,o=a.split(/\s+/).reverse(),s=(a.length+o.length)/3,c=o.pop(),l=[c],u=0,d=1.1;r.textContent=null;let f=[];function p(e){let t=r.ownerDocument.createElementNS(r.namespaceURI,`tspan`);return t.textContent=e,f.push(t),r.append(t),t}let m=p(c);for(;c=o.pop(),c;){l.push(c);let e=l.join(` `);m.textContent=e,e.length>s&&m.getComputedTextLength()>i&&(l.pop(),m.textContent=l.join(` `),l=[c],m=p(c),u++)}let h=.35-u*d/2,g=r.getAttribute(`x`),_=r.getAttribute(`y`);f.forEach((e,t)=>{e.setAttribute(`x`,g),e.setAttribute(`y`,_),e.setAttribute(`dy`,`${h+t*d}em`)})}}function U(e,t,n){let r=t[0].radius-T(t[0],e);for(let n=1;n<t.length;++n){let i=t[n].radius-T(t[n],e);i<=r&&(r=i)}for(let t=0;t<n.length;++t){let i=T(n[t],e)-n[t].radius;i<=r&&(r=i)}return r}function ge(e,t,n){let r=[];for(let t of e)r.push({x:t.x,y:t.y}),r.push({x:t.x+t.radius/2,y:t.y}),r.push({x:t.x-t.radius/2,y:t.y}),r.push({x:t.x,y:t.y+t.radius/2}),r.push({x:t.x,y:t.y-t.radius/2});let i=r[0],a=U(r[0],e,t);for(let n=1;n<r.length;++n){let o=U(r[n],e,t);o>=a&&(i=r[n],a=o)}let o=I(n=>-1*U({x:n[0],y:n[1]},e,t),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,s={x:n?0:o[0],y:o[1]},c=!0;for(let t of e)if(T(s,t)>t.radius){c=!1;break}for(let e of t)if(T(s,e)<e.radius){c=!1;break}if(c)return s;if(e.length==1)return{x:e[0].x,y:e[0].y};let l={};return x(e,l),l.arcs.length===0?{x:0,y:-1e3,disjoint:!0}:l.arcs.length==1?{x:l.arcs[0].circle.x,y:l.arcs[0].circle.y}:t.length?ge(e,[]):O(l.arcs.map(e=>e.p1))}function _e(e){let t={},n=Object.keys(e);for(let e of n)t[e]=[];for(let r=0;r<n.length;r++){let i=n[r],a=e[i];for(let o=r+1;o<n.length;++o){let r=n[o],s=e[r],c=T(a,s);c+s.radius<=a.radius+1e-10?t[r].push(i):c+a.radius<=s.radius+1e-10&&t[i].push(r)}}return t}function ve(e,t,n){let r={},i=_e(e);for(let a=0;a<t.length;++a){let o=t[a].sets,s={},c={};for(let e=0;e<o.length;++e){s[o[e]]=!0;let t=i[o[e]];for(let e=0;e<t.length;++e)c[t[e]]=!0}let l=[],u=[];for(let t in e)t in s?l.push(e[t]):t in c||u.push(e[t]);let d=ge(l,u,n);r[o]=d,d.disjoint&&t[a].size>0&&console.log(`WARNING: area `+o+` not represented on screen`)}return r}function ye(e,t,n){let r=[];return r.push(`
|
|
1
|
+
import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{p as t}from"./src-BY_WSiz7.js";import{H as n,K as r,U as i,a,b as o,c as s,et as c,f as l,nt as u,rt as d,tt as f,v as p,w as m,y as h}from"./chunk-I66GZJ75-DQ6xf6w7.js";import{i as g}from"./chunk-NSK5VX7P-CWtmfyNT.js";import{t as _}from"./rough.esm-Dy-Kn_BL.js";import{a as v}from"./dist-DHnVkR1t.js";var y=(e,t)=>u(e,`a`,-t),b=1e-10;function x(e,t){let n=C(e),r=n.filter(t=>S(t,e)),i=0,a=0,o=[];if(r.length>1){let t=O(r);for(let e=0;e<r.length;++e){let n=r[e];n.angle=Math.atan2(n.x-t.x,n.y-t.y)}r.sort((e,t)=>t.angle-e.angle);let n=r[r.length-1];for(let t=0;t<r.length;++t){let s=r[t];a+=(n.x+s.x)*(s.y-n.y);let c={x:(s.x+n.x)/2,y:(s.y+n.y)/2},l=null;for(let t=0;t<s.parentIndex.length;++t)if(n.parentIndex.includes(s.parentIndex[t])){let r=e[s.parentIndex[t]],i=Math.atan2(s.x-r.x,s.y-r.y),a=Math.atan2(n.x-r.x,n.y-r.y),o=a-i;o<0&&(o+=2*Math.PI);let u=a-o/2,d=T(c,{x:r.x+r.radius*Math.sin(u),y:r.y+r.radius*Math.cos(u)});d>r.radius*2&&(d=r.radius*2),(l==null||l.width>d)&&(l={circle:r,width:d,p1:s,p2:n,large:d>r.radius,sweep:!0})}l!=null&&(o.push(l),i+=w(l.circle.radius,l.width),n=s)}}else{let t=e[0];for(let n=1;n<e.length;++n)e[n].radius<t.radius&&(t=e[n]);let n=!1;for(let r=0;r<e.length;++r)if(T(e[r],t)>Math.abs(t.radius-e[r].radius)){n=!0;break}n?i=a=0:(i=t.radius*t.radius*Math.PI,o.push({circle:t,p1:{x:t.x,y:t.y+t.radius},p2:{x:t.x-b,y:t.y+t.radius},width:t.radius*2,large:!0,sweep:!0}))}return a/=2,t&&(t.area=i+a,t.arcArea=i,t.polygonArea=a,t.arcs=o,t.innerPoints=r,t.intersectionPoints=n),i+a}function S(e,t){return t.every(t=>T(e,t)<t.radius+b)}function C(e){let t=[];for(let n=0;n<e.length;++n)for(let r=n+1;r<e.length;++r){let i=D(e[n],e[r]);for(let e of i)e.parentIndex=[n,r],t.push(e)}return t}function w(e,t){return e*e*Math.acos(1-t/e)-(e-t)*Math.sqrt(t*(2*e-t))}function T(e,t){return Math.sqrt((e.x-t.x)*(e.x-t.x)+(e.y-t.y)*(e.y-t.y))}function E(e,t,n){if(n>=e+t)return 0;if(n<=Math.abs(e-t))return Math.PI*Math.min(e,t)*Math.min(e,t);let r=e-(n*n-t*t+e*e)/(2*n),i=t-(n*n-e*e+t*t)/(2*n);return w(e,r)+w(t,i)}function D(e,t){let n=T(e,t),r=e.radius,i=t.radius;if(n>=r+i||n<=Math.abs(r-i))return[];let a=(r*r-i*i+n*n)/(2*n),o=Math.sqrt(r*r-a*a),s=e.x+a*(t.x-e.x)/n,c=e.y+a*(t.y-e.y)/n,l=-(t.y-e.y)*(o/n),u=-(t.x-e.x)*(o/n);return[{x:s+l,y:c-u},{x:s-l,y:c+u}]}function O(e){let t={x:0,y:0};for(let n of e)t.x+=n.x,t.y+=n.y;return t.x/=e.length,t.y/=e.length,t}function k(e,t,n,r){r||={};let i=r.maxIterations||100,a=r.tolerance||1e-10,o=e(t),s=e(n),c=n-t;if(o*s>0)throw`Initial bisect points must have opposite signs`;if(o===0)return t;if(s===0)return n;for(let n=0;n<i;++n){c/=2;let n=t+c,r=e(n);if(r*o>=0&&(t=n),Math.abs(c)<a||r===0)return n}return t+c}function A(e){let t=Array(e);for(let n=0;n<e;++n)t[n]=0;return t}function j(e,t){return A(e).map(()=>A(t))}function M(e,t){let n=0;for(let r=0;r<e.length;++r)n+=e[r]*t[r];return n}function N(e){return Math.sqrt(M(e,e))}function P(e,t,n){for(let r=0;r<t.length;++r)e[r]=t[r]*n}function F(e,t,n,r,i){for(let a=0;a<e.length;++a)e[a]=t*n[a]+r*i[a]}function I(e,t,n){n||={};let r=n.maxIterations||t.length*200,i=n.nonZeroDelta||1.05,a=n.zeroDelta||.001,o=n.minErrorDelta||1e-6,s=n.minErrorDelta||1e-5,c=n.rho===void 0?1:n.rho,l=n.chi===void 0?2:n.chi,u=n.psi===void 0?-.5:n.psi,d=n.sigma===void 0?.5:n.sigma,f,p=t.length,m=Array(p+1);m[0]=t,m[0].fx=e(t),m[0].id=0;for(let n=0;n<p;++n){let r=t.slice();r[n]=r[n]?r[n]*i:a,m[n+1]=r,m[n+1].fx=e(r),m[n+1].id=n+1}function h(e){for(let t=0;t<e.length;t++)m[p][t]=e[t];m[p].fx=e.fx}let g=(e,t)=>e.fx-t.fx,_=t.slice(),v=t.slice(),y=t.slice(),b=t.slice();for(let t=0;t<r;++t){if(m.sort(g),n.history){let e=m.map(e=>{let t=e.slice();return t.fx=e.fx,t.id=e.id,t});e.sort((e,t)=>e.id-t.id),n.history.push({x:m[0].slice(),fx:m[0].fx,simplex:e})}f=0;for(let e=0;e<p;++e)f=Math.max(f,Math.abs(m[0][e]-m[1][e]));if(Math.abs(m[0].fx-m[p].fx)<o&&f<s)break;for(let e=0;e<p;++e){_[e]=0;for(let t=0;t<p;++t)_[e]+=m[t][e];_[e]/=p}let t=m[p];if(F(v,1+c,_,-c,t),v.fx=e(v),v.fx<m[0].fx)F(b,1+l,_,-l,t),b.fx=e(b),b.fx<v.fx?h(b):h(v);else if(v.fx>=m[p-1].fx){let n=!1;if(v.fx>t.fx?(F(y,1+u,_,-u,t),y.fx=e(y),y.fx<t.fx?h(y):n=!0):(F(y,1-u*c,_,u*c,t),y.fx=e(y),y.fx<v.fx?h(y):n=!0),n){if(d>=1)break;for(let t=1;t<m.length;++t)F(m[t],1-d,m[0],d,m[t]),m[t].fx=e(m[t])}}else h(v)}return m.sort(g),{fx:m[0].fx,x:m[0]}}function L(e,t,n,r,i,a,o){let s=n.fx,c=M(n.fxprime,t),l=s,u=s,d=c,f=0;i||=1,a||=1e-6,o||=.1;function p(u,f,p){for(let m=0;m<16;++m)if(i=(u+f)/2,F(r.x,1,n.x,i,t),l=r.fx=e(r.x,r.fxprime),d=M(r.fxprime,t),l>s+a*i*c||l>=p)f=i;else{if(Math.abs(d)<=-o*c)return i;d*(f-u)>=0&&(f=u),u=i,p=l}return 0}for(let m=0;m<10;++m){if(F(r.x,1,n.x,i,t),l=r.fx=e(r.x,r.fxprime),d=M(r.fxprime,t),l>s+a*i*c||m&&l>=u)return p(f,i,u);if(Math.abs(d)<=-o*c)return i;if(d>=0)return p(i,f,l);u=l,f=i,i*=2}return i}function R(e,t,n){let r={x:t.slice(),fx:0,fxprime:t.slice()},i={x:t.slice(),fx:0,fxprime:t.slice()},a=t.slice(),o,s,c=1,l;n||={},l=n.maxIterations||t.length*20,r.fx=e(r.x,r.fxprime),o=r.fxprime.slice(),P(o,r.fxprime,-1);for(let t=0;t<l;++t){if(c=L(e,o,r,i,c),n.history&&n.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:c}),!c)P(o,r.fxprime,-1);else{F(a,1,i.fxprime,-1,r.fxprime);let e=M(r.fxprime,r.fxprime),t=Math.max(0,M(a,i.fxprime)/e);F(o,t,o,-1,i.fxprime),s=r,r=i,i=s}if(N(r.fxprime)<=1e-5)break}return n.history&&n.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:c}),r}function ee(e,t={}){t.maxIterations=t.maxIterations||500;let n=t.initialLayout||ae,r=t.lossFunction||B,i=ne(e,t),a=n(i,t),o=Object.keys(a),s=[];for(let e of o)s.push(a[e].x),s.push(a[e].y);let c=I(e=>{let t={};for(let n=0;n<o.length;++n){let r=o[n];t[r]={x:e[2*n],y:e[2*n+1],radius:a[r].radius}}return r(t,i)},s,t).x;for(let e=0;e<o.length;++e){let t=o[e];a[t].x=c[2*e],a[t].y=c[2*e+1]}return a}var te=1e-10;function z(e,t,n){return Math.min(e,t)*Math.min(e,t)*Math.PI<=n+te?Math.abs(e-t):k(r=>E(e,t,r)-n,0,e+t)}function ne(e,t={}){let n=t.distinct,r=e.map(e=>Object.assign({},e));function i(e){return e.join(`;`)}if(n){let e=new Map;for(let t of r)for(let n=0;n<t.sets.length;n++){let r=String(t.sets[n]);e.set(r,t.size+(e.get(r)||0));for(let i=n+1;i<t.sets.length;i++){let n=String(t.sets[i]),a=`${r};${n}`,o=`${n};${r}`;e.set(a,t.size+(e.get(a)||0)),e.set(o,t.size+(e.get(o)||0))}}for(let t of r)t.sets.length<3&&(t.size=e.get(i(t.sets)))}let a=[],o=new Set;for(let e of r)if(e.sets.length===1)a.push(e.sets[0]);else if(e.sets.length===2){let t=e.sets[0],n=e.sets[1];o.add(i(e.sets)),o.add(i([n,t]))}a.sort((e,t)=>e===t?0:e<t?-1:1);for(let e=0;e<a.length;++e){let t=a[e];for(let n=e+1;n<a.length;++n){let e=a[n];o.has(i([t,e]))||r.push({sets:[t,e],size:0})}}return r}function re(e,t,n){let r=j(t.length,t.length),i=j(t.length,t.length);return e.filter(e=>e.sets.length===2).forEach(e=>{let a=n[e.sets[0]],o=n[e.sets[1]],s=z(Math.sqrt(t[a].size/Math.PI),Math.sqrt(t[o].size/Math.PI),e.size);r[a][o]=r[o][a]=s;let c=0;e.size+1e-10>=Math.min(t[a].size,t[o].size)?c=1:e.size<=1e-10&&(c=-1),i[a][o]=i[o][a]=c}),{distances:r,constraints:i}}function ie(e,t,n,r){for(let e=0;e<t.length;++e)t[e]=0;let i=0;for(let a=0;a<n.length;++a){let o=e[2*a],s=e[2*a+1];for(let c=a+1;c<n.length;++c){let l=e[2*c],u=e[2*c+1],d=n[a][c],f=r[a][c],p=(l-o)*(l-o)+(u-s)*(u-s),m=Math.sqrt(p),h=p-d*d;f>0&&m<=d||f<0&&m>=d||(i+=2*h*h,t[2*a]+=4*h*(o-l),t[2*a+1]+=4*h*(s-u),t[2*c]+=4*h*(l-o),t[2*c+1]+=4*h*(u-s))}}return i}function ae(e,t={}){let n=se(e,t),r=t.lossFunction||B;if(e.length>=8){let i=oe(e,t),a=r(i,e),o=r(n,e);a+1e-8<o&&(n=i)}return n}function oe(e,t={}){let n=t.restarts||10,r=[],i={};for(let t of e)t.sets.length===1&&(i[t.sets[0]]=r.length,r.push(t));let{distances:a,constraints:o}=re(e,r,i),s=N(a.map(N))/a.length;a=a.map(e=>e.map(e=>e/s));let c=(e,t)=>ie(e,t,a,o),l=null;for(let e=0;e<n;++e){let e=R(c,A(a.length*2).map(Math.random),t);(!l||e.fx<l.fx)&&(l=e)}let u=l.x,d={};for(let e=0;e<r.length;++e){let t=r[e];d[t.sets[0]]={x:u[2*e]*s,y:u[2*e+1]*s,radius:Math.sqrt(t.size/Math.PI)}}if(t.history)for(let e of t.history)P(e.x,s);return d}function se(e,t){let n=t&&t.lossFunction?t.lossFunction:B,r={},i={};for(let t of e)if(t.sets.length===1){let e=t.sets[0];r[e]={x:1e10,y:1e10,rowid:r.length,size:t.size,radius:Math.sqrt(t.size/Math.PI)},i[e]=[]}e=e.filter(e=>e.sets.length===2);for(let t of e){let e=t.weight==null?1:t.weight,n=t.sets[0],a=t.sets[1];t.size+te>=Math.min(r[n].size,r[a].size)&&(e=0),i[n].push({set:a,size:t.size,weight:e}),i[a].push({set:n,size:t.size,weight:e})}let a=[];Object.keys(i).forEach(e=>{let t=0;for(let n=0;n<i[e].length;++n)t+=i[e][n].size*i[e][n].weight;a.push({set:e,size:t})});function o(e,t){return t.size-e.size}a.sort(o);let s={};function c(e){return e.set in s}function l(e,t){r[t].x=e.x,r[t].y=e.y,s[t]=!0}l({x:0,y:0},a[0].set);for(let t=1;t<a.length;++t){let s=a[t].set,d=i[s].filter(c),f=r[s];if(d.sort(o),d.length===0)throw`ERROR: missing pairwise overlap information`;let p=[];for(var u=0;u<d.length;++u){let e=r[d[u].set],t=z(f.radius,e.radius,d[u].size);p.push({x:e.x+t,y:e.y}),p.push({x:e.x-t,y:e.y}),p.push({y:e.y+t,x:e.x}),p.push({y:e.y-t,x:e.x});for(let n=u+1;n<d.length;++n){let i=r[d[n].set],a=z(f.radius,i.radius,d[n].size),o=D({x:e.x,y:e.y,radius:t},{x:i.x,y:i.y,radius:a});p.push(...o)}}let m=1e50,h=p[0];for(let t of p){r[s].x=t.x,r[s].y=t.y;let i=n(r,e);i<m&&(m=i,h=t)}l(h,s)}return r}function B(e,t){let n=0;for(let r of t){if(r.sets.length===1)continue;let t;if(r.sets.length===2){let n=e[r.sets[0]],i=e[r.sets[1]];t=E(n.radius,i.radius,T(n,i))}else t=x(r.sets.map(t=>e[t]));let i=r.weight==null?1:r.weight;n+=i*(t-r.size)*(t-r.size)}return n}function ce(e,t){let n=0;for(let r of t){if(r.sets.length===1)continue;let t;if(r.sets.length===2){let n=e[r.sets[0]],i=e[r.sets[1]];t=E(n.radius,i.radius,T(n,i))}else t=x(r.sets.map(t=>e[t]));let i=r.weight==null?1:r.weight,a=Math.log((t+1)/(r.size+1));n+=i*a*a}return n}function le(e,t,n){if(n==null?e.sort((e,t)=>t.radius-e.radius):e.sort(n),e.length>0){let t=e[0].x,n=e[0].y;for(let r of e)r.x-=t,r.y-=n}if(e.length===2&&T(e[0],e[1])<Math.abs(e[1].radius-e[0].radius)&&(e[1].x=e[0].x+e[0].radius-e[1].radius-1e-10,e[1].y=e[0].y),e.length>1){let n=Math.atan2(e[1].x,e[1].y)-t,r=Math.cos(n),i=Math.sin(n);for(let t of e){let e=t.x,n=t.y;t.x=r*e-i*n,t.y=i*e+r*n}}if(e.length>2){let n=Math.atan2(e[2].x,e[2].y)-t;for(;n<0;)n+=2*Math.PI;for(;n>2*Math.PI;)n-=2*Math.PI;if(n>Math.PI){let t=e[1].y/(1e-10+e[1].x);for(let n of e){var r=(n.x+t*n.y)/(1+t*t);n.x=2*r-n.x,n.y=2*r*t-n.y}}}}function ue(e){e.forEach(e=>{e.parent=e});function t(e){return e.parent!==e&&(e.parent=t(e.parent)),e.parent}function n(e,n){let r=t(e);r.parent=t(n)}for(let t=0;t<e.length;++t)for(let r=t+1;r<e.length;++r){let i=e[t].radius+e[r].radius;T(e[t],e[r])+1e-10<i&&n(e[r],e[t])}let r=new Map;for(let n=0;n<e.length;++n){let i=t(e[n]).parent.setid;r.has(i)||r.set(i,[]),r.get(i).push(e[n])}return e.forEach(e=>{delete e.parent}),Array.from(r.values())}function V(e){let t=t=>({max:e.reduce((e,n)=>Math.max(e,n[t]+n.radius),-1/0),min:e.reduce((e,n)=>Math.min(e,n[t]-n.radius),1/0)});return{xRange:t(`x`),yRange:t(`y`)}}function de(e,t,n){t??=Math.PI/2;let r=me(e).map(e=>Object.assign({},e)),i=ue(r);for(let e of i){le(e,t,n);let r=V(e);e.size=(r.xRange.max-r.xRange.min)*(r.yRange.max-r.yRange.min),e.bounds=r}i.sort((e,t)=>t.size-e.size),r=i[0];let a=r.bounds,o=(a.xRange.max-a.xRange.min)/50;function s(e,t,n){if(!e)return;let i=e.bounds,s,c;if(t)s=a.xRange.max-i.xRange.min+o;else{s=a.xRange.max-i.xRange.max;let e=(i.xRange.max-i.xRange.min)/2-(a.xRange.max-a.xRange.min)/2;e<0&&(s+=e)}if(n)c=a.yRange.max-i.yRange.min+o;else{c=a.yRange.max-i.yRange.max;let e=(i.yRange.max-i.yRange.min)/2-(a.yRange.max-a.yRange.min)/2;e<0&&(c+=e)}for(let t of e)t.x+=s,t.y+=c,r.push(t)}let c=1;for(;c<i.length;)s(i[c],!0,!1),s(i[c+1],!1,!0),s(i[c+2],!0,!0),c+=3,a=V(r);return pe(r)}function fe(e,t,n,r,i){let a=me(e);t-=2*r,n-=2*r;let{xRange:o,yRange:s}=V(a);if(o.max===o.min||s.max===s.min)return console.log(`not scaling solution: zero size detected`),e;let c,l;if(i){let e=Math.sqrt(i/Math.PI)*2;c=t/e,l=n/e}else c=t/(o.max-o.min),l=n/(s.max-s.min);let u=Math.min(l,c),d=(t-(o.max-o.min)*u)/2,f=(n-(s.max-s.min)*u)/2;return pe(a.map(e=>({radius:u*e.radius,x:r+d+(e.x-o.min)*u,y:r+f+(e.y-s.min)*u,setid:e.setid})))}function pe(e){let t={};for(let n of e)t[n.setid]=n;return t}function me(e){return Object.keys(e).map(t=>Object.assign(e[t],{setid:t}))}function he(e={}){let t=!1,n=600,r=350,i=15,a=1e3,o=Math.PI/2,s=!0,c=null,l=!0,u=!0,d=null,f=null,p=!1,m=null,h=e&&e.symmetricalTextCentre?e.symmetricalTextCentre:!1,g={},_=e&&e.colourScheme?e.colourScheme:e&&e.colorScheme?e.colorScheme:[`#1f77b4`,`#ff7f0e`,`#2ca02c`,`#d62728`,`#9467bd`,`#8c564b`,`#e377c2`,`#7f7f7f`,`#bcbd22`,`#17becf`],v=0,y=function(e){if(e in g)return g[e];var t=g[e]=_[v];return v+=1,v>=_.length&&(v=0),t},b=ee,x=B;function S(g){let _=g.datum(),v=new Set;_.forEach(e=>{e.size==0&&e.sets.length==1&&v.add(e.sets[0])}),_=_.filter(e=>!e.sets.some(e=>v.has(e)));let S={},C={};if(_.length>0){let e=b(_,{lossFunction:x,distinct:p});s&&(e=de(e,o,f)),S=fe(e,n,r,i,c),C=ve(S,_,h)}let w={};_.forEach(e=>{e.label&&(w[e.sets]=e.label)});function T(e){if(e.sets in w)return w[e.sets];if(e.sets.length==1)return``+e.sets[0]}g.selectAll(`svg`).data([S]).enter().append(`svg`);let E=g.select(`svg`);t?E.attr(`viewBox`,`0 0 ${n} ${r}`):E.attr(`width`,n).attr(`height`,r);let D={},O=!1;E.selectAll(`.venn-area path`).each(function(e){let t=this.getAttribute(`d`);e.sets.length==1&&t&&!p&&(O=!0,D[e.sets[0]]=be(t))});function k(e){return t=>Ce(e.sets.map(e=>{let i=D[e],a=S[e];return i||={x:n/2,y:r/2,radius:1},a||={x:n/2,y:r/2,radius:1},{x:i.x*(1-t)+a.x*t,y:i.y*(1-t)+a.y*t,radius:i.radius*(1-t)+a.radius*t}}),m)}let A=E.selectAll(`.venn-area`).data(_,e=>e.sets),j=A.enter().append(`g`).attr(`class`,e=>`venn-area venn-${e.sets.length==1?`circle`:`intersection`}${e.colour||e.color?` venn-coloured`:``}`).attr(`data-venn-sets`,e=>e.sets.join(`_`)),M=j.append(`path`),N=j.append(`text`).attr(`class`,`label`).text(e=>T(e)).attr(`text-anchor`,`middle`).attr(`dy`,`.35em`).attr(`x`,n/2).attr(`y`,r/2);u&&(M.style(`fill-opacity`,`0`).filter(e=>e.sets.length==1).style(`fill`,e=>e.colour?e.colour:e.color?e.color:y(e.sets)).style(`fill-opacity`,`.25`),N.style(`fill`,t=>t.colour||t.color?`#FFF`:e.textFill?e.textFill:t.sets.length==1?y(t.sets):`#444`));function P(e){return typeof e.transition==`function`?e.transition(`venn`).duration(a):e}let F=g;O&&typeof F.transition==`function`?(F=P(g),F.selectAll(`path`).attrTween(`d`,k)):F.selectAll(`path`).attr(`d`,e=>Ce(e.sets.map(e=>S[e])),m);let I=F.selectAll(`text`).filter(e=>e.sets in C).text(e=>T(e)).attr(`x`,e=>Math.floor(C[e.sets].x)).attr(`y`,e=>Math.floor(C[e.sets].y));l&&(O?`on`in I?I.on(`end`,H(S,T)):I.each(`end`,H(S,T)):I.each(H(S,T)));let L=P(A.exit()).remove();typeof A.transition==`function`&&L.selectAll(`path`).attrTween(`d`,k);let R=L.selectAll(`text`).attr(`x`,n/2).attr(`y`,r/2);return d!==null&&(N.style(`font-size`,`0px`),I.style(`font-size`,d),R.style(`font-size`,`0px`)),{circles:S,textCentres:C,nodes:A,enter:j,update:F,exit:L}}return S.wrap=function(e){return arguments.length?(l=e,S):l},S.useViewBox=function(){return t=!0,S},S.width=function(e){return arguments.length?(n=e,S):n},S.height=function(e){return arguments.length?(r=e,S):r},S.padding=function(e){return arguments.length?(i=e,S):i},S.distinct=function(e){return arguments.length?(p=e,S):p},S.colours=function(e){return arguments.length?(y=e,S):y},S.colors=function(e){return arguments.length?(y=e,S):y},S.fontSize=function(e){return arguments.length?(d=e,S):d},S.round=function(e){return arguments.length?(m=e,S):m},S.duration=function(e){return arguments.length?(a=e,S):a},S.layoutFunction=function(e){return arguments.length?(b=e,S):b},S.normalize=function(e){return arguments.length?(s=e,S):s},S.scaleToFit=function(e){return arguments.length?(c=e,S):c},S.styled=function(e){return arguments.length?(u=e,S):u},S.orientation=function(e){return arguments.length?(o=e,S):o},S.orientationOrder=function(e){return arguments.length?(f=e,S):f},S.lossFunction=function(e){return arguments.length?(x=e==="default"?B:e===`logRatio`?ce:e,S):x},S}function H(e,t){return function(n){let r=this,i=e[n.sets[0]].radius||50,a=t(n)||``,o=a.split(/\s+/).reverse(),s=(a.length+o.length)/3,c=o.pop(),l=[c],u=0,d=1.1;r.textContent=null;let f=[];function p(e){let t=r.ownerDocument.createElementNS(r.namespaceURI,`tspan`);return t.textContent=e,f.push(t),r.append(t),t}let m=p(c);for(;c=o.pop(),c;){l.push(c);let e=l.join(` `);m.textContent=e,e.length>s&&m.getComputedTextLength()>i&&(l.pop(),m.textContent=l.join(` `),l=[c],m=p(c),u++)}let h=.35-u*d/2,g=r.getAttribute(`x`),_=r.getAttribute(`y`);f.forEach((e,t)=>{e.setAttribute(`x`,g),e.setAttribute(`y`,_),e.setAttribute(`dy`,`${h+t*d}em`)})}}function U(e,t,n){let r=t[0].radius-T(t[0],e);for(let n=1;n<t.length;++n){let i=t[n].radius-T(t[n],e);i<=r&&(r=i)}for(let t=0;t<n.length;++t){let i=T(n[t],e)-n[t].radius;i<=r&&(r=i)}return r}function ge(e,t,n){let r=[];for(let t of e)r.push({x:t.x,y:t.y}),r.push({x:t.x+t.radius/2,y:t.y}),r.push({x:t.x-t.radius/2,y:t.y}),r.push({x:t.x,y:t.y+t.radius/2}),r.push({x:t.x,y:t.y-t.radius/2});let i=r[0],a=U(r[0],e,t);for(let n=1;n<r.length;++n){let o=U(r[n],e,t);o>=a&&(i=r[n],a=o)}let o=I(n=>-1*U({x:n[0],y:n[1]},e,t),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,s={x:n?0:o[0],y:o[1]},c=!0;for(let t of e)if(T(s,t)>t.radius){c=!1;break}for(let e of t)if(T(s,e)<e.radius){c=!1;break}if(c)return s;if(e.length==1)return{x:e[0].x,y:e[0].y};let l={};return x(e,l),l.arcs.length===0?{x:0,y:-1e3,disjoint:!0}:l.arcs.length==1?{x:l.arcs[0].circle.x,y:l.arcs[0].circle.y}:t.length?ge(e,[]):O(l.arcs.map(e=>e.p1))}function _e(e){let t={},n=Object.keys(e);for(let e of n)t[e]=[];for(let r=0;r<n.length;r++){let i=n[r],a=e[i];for(let o=r+1;o<n.length;++o){let r=n[o],s=e[r],c=T(a,s);c+s.radius<=a.radius+1e-10?t[r].push(i):c+a.radius<=s.radius+1e-10&&t[i].push(r)}}return t}function ve(e,t,n){let r={},i=_e(e);for(let a=0;a<t.length;++a){let o=t[a].sets,s={},c={};for(let e=0;e<o.length;++e){s[o[e]]=!0;let t=i[o[e]];for(let e=0;e<t.length;++e)c[t[e]]=!0}let l=[],u=[];for(let t in e)t in s?l.push(e[t]):t in c||u.push(e[t]);let d=ge(l,u,n);r[o]=d,d.disjoint&&t[a].size>0&&console.log(`WARNING: area `+o+` not represented on screen`)}return r}function ye(e,t,n){let r=[];return r.push(`
|
|
2
2
|
M`,e,t),r.push(`
|
|
3
3
|
m`,-n,0),r.push(`
|
|
4
4
|
a`,n,n,0,1,0,n*2,0),r.push(`
|
|
Binary file
|
|
Binary file
|
package/dist/web/assets/{wardleyDiagram-T6FBY63Y-BXVFrJeX.js → wardleyDiagram-T6FBY63Y-DBIzys3u.js}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as
|
|
2
|
-
`+n);let o=W(),s=U(),l=o.nodeRadius*1.6,u=a.db,d=u.getWardleyData(),f=u.getDiagramTitle(),p=d.size?.width??o.width,h=d.size?.height??o.height,g=m(r);g.selectAll(`*`).remove(),c(g,h,p,o.useMaxWidth),g.attr(`viewBox`,`0 0 ${p} ${h}`);let _=g.append(`g`).attr(`class`,`wardley-map`),v=g.append(`defs`);v.append(`marker`).attr(`id`,`arrow-${r}`).attr(`viewBox`,`0 0 10 10`).attr(`refX`,9).attr(`refY`,5).attr(`markerWidth`,6).attr(`markerHeight`,6).attr(`orient`,`auto-start-reverse`).append(`path`).attr(`d`,`M 0 0 L 10 5 L 0 10 z`).attr(`fill`,s.evolutionStroke).attr(`stroke`,`none`),v.append(`marker`).attr(`id`,`link-arrow-end-${r}`).attr(`viewBox`,`0 0 10 10`).attr(`refX`,9).attr(`refY`,5).attr(`markerWidth`,5).attr(`markerHeight`,5).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 0 0 L 10 5 L 0 10 z`).attr(`fill`,s.linkStroke).attr(`stroke`,`none`),v.append(`marker`).attr(`id`,`link-arrow-start-${r}`).attr(`viewBox`,`0 0 10 10`).attr(`refX`,1).attr(`refY`,5).attr(`markerWidth`,5).attr(`markerHeight`,5).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 10 0 L 0 5 L 10 10 z`).attr(`fill`,s.linkStroke).attr(`stroke`,`none`),_.append(`rect`).attr(`class`,`wardley-background`).attr(`width`,p).attr(`height`,h).attr(`fill`,s.backgroundColor);let y=p-o.padding*2,b=h-o.padding*2;f&&_.append(`text`).attr(`class`,`wardley-title`).attr(`x`,p/2).attr(`y`,o.padding/2).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize*1.05).attr(`font-weight`,`bold`).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`middle`).text(f);let x=e(e=>o.padding+e/100*y,`projectX`),S=e(e=>h-o.padding-e/100*b,`projectY`),C=_.append(`g`).attr(`class`,`wardley-axes`);C.append(`line`).attr(`x1`,o.padding).attr(`x2`,p-o.padding).attr(`y1`,h-o.padding).attr(`y2`,h-o.padding).attr(`stroke`,s.axisColor).attr(`stroke-width`,1),C.append(`line`).attr(`x1`,o.padding).attr(`x2`,o.padding).attr(`y1`,o.padding).attr(`y2`,h-o.padding).attr(`stroke`,s.axisColor).attr(`stroke-width`,1);let w=d.axes.xLabel??`Evolution`,T=d.axes.yLabel??`Visibility`;C.append(`text`).attr(`class`,`wardley-axis-label wardley-axis-label-x`).attr(`x`,o.padding+y/2).attr(`y`,h-o.padding/4).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize).attr(`font-weight`,`bold`).attr(`text-anchor`,`middle`).text(w),C.append(`text`).attr(`class`,`wardley-axis-label wardley-axis-label-y`).attr(`x`,o.padding/3).attr(`y`,o.padding+b/2).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize).attr(`font-weight`,`bold`).attr(`text-anchor`,`middle`).attr(`transform`,`rotate(-90 ${o.padding/3} ${o.padding+b/2})`).text(T);let E=d.axes.stages&&d.axes.stages.length>0?d.axes.stages:H;if(E.length>0){let e=_.append(`g`).attr(`class`,`wardley-stages`),t=d.axes.stageBoundaries,n=[];if(t&&t.length===E.length){let e=0;t.forEach(t=>{n.push({start:e,end:t}),e=t})}else{let e=1/E.length;E.forEach((t,r)=>{n.push({start:r*e,end:(r+1)*e})})}E.forEach((t,r)=>{let i=n[r],a=o.padding+i.start*y,c=(a+(o.padding+i.end*y))/2;r>0&&e.append(`line`).attr(`x1`,a).attr(`x2`,a).attr(`y1`,o.padding).attr(`y2`,h-o.padding).attr(`stroke`,`#000`).attr(`stroke-width`,1).attr(`stroke-dasharray`,`5 5`).attr(`opacity`,.8),e.append(`text`).attr(`class`,`wardley-stage-label`).attr(`x`,c).attr(`y`,h-o.padding/1.5).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize-2).attr(`text-anchor`,`middle`).text(t)})}if(o.showGrid){let e=_.append(`g`).attr(`class`,`wardley-grid`);for(let t=1;t<4;t++){let n=t/4,r=o.padding+y*n;e.append(`line`).attr(`x1`,r).attr(`x2`,r).attr(`y1`,o.padding).attr(`y2`,h-o.padding).attr(`stroke`,s.gridColor).attr(`stroke-dasharray`,`2 6`),e.append(`line`).attr(`x1`,o.padding).attr(`x2`,p-o.padding).attr(`y1`,h-o.padding-b*n).attr(`y2`,h-o.padding-b*n).attr(`stroke`,s.gridColor).attr(`stroke-dasharray`,`2 6`)}}let D=new Map;if(d.nodes.forEach(e=>{D.set(e.id,{x:x(e.x),y:S(e.y),node:e})}),d.pipelines.length>0){let e=_.append(`g`).attr(`class`,`wardley-pipelines`),t=_.append(`g`).attr(`class`,`wardley-pipeline-links`);d.pipelines.forEach(n=>{if(n.componentIds.length===0)return;let r=n.componentIds.map(e=>({id:e,pos:D.get(e),node:d.nodes.find(t=>t.id===e)})).filter(e=>e.pos&&e.node).sort((e,t)=>e.node.x-t.node.x);for(let e=0;e<r.length-1;e++){let n=r[e],i=r[e+1];t.append(`line`).attr(`class`,`wardley-pipeline-evolution-link`).attr(`x1`,n.pos.x).attr(`y1`,n.pos.y).attr(`x2`,i.pos.x).attr(`y2`,i.pos.y).attr(`stroke`,s.linkStroke).attr(`stroke-width`,1).attr(`stroke-dasharray`,`4 4`)}let i=1/0,a=-1/0,c=0;if(n.componentIds.forEach(e=>{let t=D.get(e);t&&(i=Math.min(i,t.x),a=Math.max(a,t.x),c=t.y)}),i!==1/0&&a!==-1/0){let t=o.nodeRadius*4,r=c-t/2,u=D.get(n.nodeId);u&&(u.x=(i+a)/2,u.y=r-l/6),e.append(`rect`).attr(`class`,`wardley-pipeline-box`).attr(`x`,i-15).attr(`y`,r).attr(`width`,a-i+30).attr(`height`,t).attr(`fill`,`none`).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5).attr(`rx`,4).attr(`ry`,4)}})}let O=_.append(`g`).attr(`class`,`wardley-links`),k=new Map;d.pipelines.forEach(e=>{k.set(e.nodeId,new Set(e.componentIds))});let A=d.links.filter(e=>!(!D.has(e.source)||!D.has(e.target)||k.get(e.target)?.has(e.source)));O.selectAll(`line`).data(A).enter().append(`line`).attr(`class`,e=>`wardley-link${e.dashed?` wardley-link--dashed`:``}`).attr(`x1`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.source).isPipelineParent?l/Math.sqrt(2):o.nodeRadius,i=n.x-t.x,a=n.y-t.y,s=Math.sqrt(i*i+a*a);return t.x+i/s*r}).attr(`y1`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.source).isPipelineParent?l/Math.sqrt(2):o.nodeRadius,i=n.x-t.x,a=n.y-t.y,s=Math.sqrt(i*i+a*a);return t.y+a/s*r}).attr(`x2`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.target).isPipelineParent?l/Math.sqrt(2):o.nodeRadius,i=t.x-n.x,a=t.y-n.y,s=Math.sqrt(i*i+a*a);return n.x+i/s*r}).attr(`y2`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.target).isPipelineParent?l/Math.sqrt(2):o.nodeRadius,i=t.x-n.x,a=t.y-n.y,s=Math.sqrt(i*i+a*a);return n.y+a/s*r}).attr(`stroke`,s.linkStroke).attr(`stroke-width`,1).attr(`stroke-dasharray`,e=>e.dashed?`6 6`:null).attr(`marker-end`,e=>e.flow===`forward`||e.flow===`bidirectional`?`url(#link-arrow-end-${r})`:null).attr(`marker-start`,e=>e.flow===`backward`||e.flow===`bidirectional`?`url(#link-arrow-start-${r})`:null),O.selectAll(`text`).data(A.filter(e=>e.label)).enter().append(`text`).attr(`class`,`wardley-link-label`).attr(`x`,e=>{let t=D.get(e.source),n=D.get(e.target),r=(t.x+n.x)/2,i=n.y-t.y,a=n.x-t.x;return r+i/Math.sqrt(a*a+i*i)*8}).attr(`y`,e=>{let t=D.get(e.source),n=D.get(e.target),r=(t.y+n.y)/2,i=n.x-t.x,a=n.y-t.y,o=Math.sqrt(i*i+a*a);return r+-i/o*8}).attr(`fill`,s.axisTextColor).attr(`font-size`,o.labelFontSize).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`middle`).attr(`transform`,e=>{let t=D.get(e.source),n=D.get(e.target),r=(t.x+n.x)/2,i=(t.y+n.y)/2,a=n.x-t.x,o=n.y-t.y,s=Math.sqrt(a*a+o*o),c=o/s,l=-a/s,u=r+c*8,d=i+l*8,f=Math.atan2(o,a)*180/Math.PI;return(f>90||f<-90)&&(f+=180),`rotate(${f} ${u} ${d})`}).text(e=>e.label);let j=_.append(`g`).attr(`class`,`wardley-trends`),M=d.trends.map(e=>{let t=D.get(e.nodeId);if(!t)return null;let n=x(e.targetX),r=S(e.targetY),i=n-t.x,a=r-t.y,s=Math.sqrt(i*i+a*a),c=o.nodeRadius+2;return{origin:t,targetX:n,targetY:r,adjustedX2:s>c?n-i/s*c:n,adjustedY2:s>c?r-a/s*c:r}}).filter(e=>e!==null);j.selectAll(`line`).data(M).enter().append(`line`).attr(`class`,`wardley-trend`).attr(`x1`,e=>e.origin.x).attr(`y1`,e=>e.origin.y).attr(`x2`,e=>e.adjustedX2).attr(`y2`,e=>e.adjustedY2).attr(`stroke`,s.evolutionStroke).attr(`stroke-width`,1).attr(`stroke-dasharray`,`4 4`).attr(`marker-end`,`url(#arrow-${r})`);let N=_.append(`g`).attr(`class`,`wardley-nodes`).selectAll(`g`).data(d.nodes).enter().append(`g`).attr(`class`,e=>[`wardley-node`,e.className?`wardley-node--${e.className}`:``].filter(Boolean).join(` `));N.filter(e=>e.sourceStrategy===`outsource`).append(`circle`).attr(`class`,`wardley-outsource-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`#666`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>e.sourceStrategy===`buy`).append(`circle`).attr(`class`,`wardley-buy-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`#ccc`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>e.sourceStrategy===`build`).append(`circle`).attr(`class`,`wardley-build-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`#eee`).attr(`stroke`,`#000`).attr(`stroke-width`,1);let P=N.filter(e=>e.sourceStrategy===`market`);P.append(`circle`).attr(`class`,`wardley-market-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>!e.isPipelineParent&&e.sourceStrategy!==`market`&&e.className!==`anchor`).append(`circle`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius).attr(`fill`,s.componentFill).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1);let F=o.nodeRadius*.7,I=o.nodeRadius*1.2;if(P.append(`line`).attr(`class`,`wardley-market-line`).attr(`x1`,e=>D.get(e.id).x).attr(`y1`,e=>D.get(e.id).y-I).attr(`x2`,e=>D.get(e.id).x-I*Math.cos(Math.PI/6)).attr(`y2`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),P.append(`line`).attr(`class`,`wardley-market-line`).attr(`x1`,e=>D.get(e.id).x-I*Math.cos(Math.PI/6)).attr(`y1`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`x2`,e=>D.get(e.id).x+I*Math.cos(Math.PI/6)).attr(`y2`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),P.append(`line`).attr(`class`,`wardley-market-line`).attr(`x1`,e=>D.get(e.id).x+I*Math.cos(Math.PI/6)).attr(`y1`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`x2`,e=>D.get(e.id).x).attr(`y2`,e=>D.get(e.id).y-I).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),P.append(`circle`).attr(`class`,`wardley-market-dot`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y-I).attr(`r`,F).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,2),P.append(`circle`).attr(`class`,`wardley-market-dot`).attr(`cx`,e=>D.get(e.id).x-I*Math.cos(Math.PI/6)).attr(`cy`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`r`,F).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,2),P.append(`circle`).attr(`class`,`wardley-market-dot`).attr(`cx`,e=>D.get(e.id).x+I*Math.cos(Math.PI/6)).attr(`cy`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`r`,F).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,2),N.filter(e=>e.isPipelineParent===!0).append(`rect`).attr(`x`,e=>D.get(e.id).x-l/2).attr(`y`,e=>D.get(e.id).y-l/2).attr(`width`,l).attr(`height`,l).attr(`fill`,s.componentFill).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>e.inertia===!0).append(`line`).attr(`class`,`wardley-inertia`).attr(`x1`,e=>{let t=D.get(e.id),n=e.isPipelineParent?l/2+15:o.nodeRadius+15;return e.sourceStrategy&&(n+=o.nodeRadius+10),t.x+n}).attr(`y1`,e=>{let t=D.get(e.id),n=e.isPipelineParent?l:o.nodeRadius*2;return t.y-n/2}).attr(`x2`,e=>{let t=D.get(e.id),n=e.isPipelineParent?l/2+15:o.nodeRadius+15;return e.sourceStrategy&&(n+=o.nodeRadius+10),t.x+n}).attr(`y2`,e=>{let t=D.get(e.id),n=e.isPipelineParent?l:o.nodeRadius*2;return t.y+n/2}).attr(`stroke`,s.componentStroke).attr(`stroke-width`,6),N.append(`text`).attr(`x`,e=>{let t=D.get(e.id);if(e.className===`anchor`)return e.labelOffsetX===void 0?t.x:t.x+e.labelOffsetX;let n=o.nodeLabelOffset;e.sourceStrategy&&e.labelOffsetX===void 0&&(n+=10);let r=e.labelOffsetX??n;return t.x+r}).attr(`y`,e=>{let t=D.get(e.id);if(e.className===`anchor`)return e.labelOffsetY===void 0?t.y-3:t.y+e.labelOffsetY;let n=-o.nodeLabelOffset;e.sourceStrategy&&e.labelOffsetY===void 0&&(n-=10);let r=e.labelOffsetY??n;return t.y+r}).attr(`class`,`wardley-node-label`).attr(`fill`,e=>e.className===`evolved`?s.evolutionStroke:e.className===`anchor`?`#000`:s.componentLabelColor).attr(`font-size`,o.labelFontSize).attr(`font-weight`,e=>e.className===`anchor`?`bold`:`normal`).attr(`text-anchor`,e=>e.className===`anchor`?`middle`:`start`).attr(`dominant-baseline`,e=>e.className===`anchor`?`middle`:`auto`).text(e=>e.label),d.annotations.length>0){let e=_.append(`g`).attr(`class`,`wardley-annotations`);if(d.annotations.forEach(t=>{let n=t.coordinates.map(e=>({x:x(e.x),y:S(e.y)}));if(n.length>1)for(let t=0;t<n.length-1;t++)e.append(`line`).attr(`class`,`wardley-annotation-line`).attr(`x1`,n[t].x).attr(`y1`,n[t].y).attr(`x2`,n[t+1].x).attr(`y2`,n[t+1].y).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5).attr(`stroke-dasharray`,`4 4`);n.forEach(n=>{let r=e.append(`g`).attr(`class`,`wardley-annotation`);r.append(`circle`).attr(`cx`,n.x).attr(`cy`,n.y).attr(`r`,10).attr(`fill`,`white`).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5),r.append(`text`).attr(`x`,n.x).attr(`y`,n.y).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,10).attr(`fill`,s.axisTextColor).attr(`font-weight`,`bold`).text(t.number)})}),d.annotationsBox){let t=x(d.annotationsBox.x),n=S(d.annotationsBox.y),r=e.append(`g`).attr(`class`,`wardley-annotations-box`),i=[...d.annotations].filter(e=>e.text).sort((e,t)=>e.number-t.number),a=[];if(i.forEach((e,i)=>{let o=r.append(`text`).attr(`x`,t+10).attr(`y`,n+10+(i+1)*16).attr(`font-size`,11).attr(`fill`,s.axisTextColor).attr(`text-anchor`,`start`).attr(`dominant-baseline`,`middle`).text(`${e.number}. ${e.text}`);a.push(o)}),a.length>0){let e=0,c=0;a.forEach(t=>{let n=t.node(),r=n.getComputedTextLength();e=Math.max(e,r);let i=n.getBBox();c=Math.max(c,i.height)});let l=e+20+105,u=i.length*16+20+c/2,d=o.padding,f=p-o.padding-l,m=o.padding,g=h-o.padding-u;t=Math.max(d,Math.min(t,f)),n=Math.max(m,Math.min(n,g)),a.forEach((e,r)=>{e.attr(`x`,t+10).attr(`y`,n+10+(r+1)*16)}),r.insert(`rect`,`text`).attr(`x`,t).attr(`y`,n).attr(`width`,l).attr(`height`,u).attr(`fill`,`white`).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5).attr(`rx`,4).attr(`ry`,4)}}}if(d.notes.length>0){let e=_.append(`g`).attr(`class`,`wardley-notes`);d.notes.forEach(t=>{let n=x(t.x),r=S(t.y);e.append(`text`).attr(`x`,n).attr(`y`,r).attr(`text-anchor`,`start`).attr(`font-size`,11).attr(`fill`,s.axisTextColor).attr(`font-weight`,`bold`).text(t.text)})}if(d.accelerators.length>0){let e=_.append(`g`).attr(`class`,`wardley-accelerators`);d.accelerators.forEach(t=>{let n=x(t.x),r=S(t.y),i=`
|
|
1
|
+
import{n as e}from"./mermaid-parser.core-DkuqoYE4.js";import{n as t}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as n}from"./src-BY_WSiz7.js";import{D as r,H as i,K as a,U as o,a as s,b as c,c as l,v as u,w as d,x as f,y as p}from"./chunk-I66GZJ75-DQ6xf6w7.js";import{i as m}from"./chunk-NSK5VX7P-CWtmfyNT.js";import{a as h}from"./dist-DHnVkR1t.js";import{t as g}from"./chunk-JWPE2WC7-DVXcaiue.js";var _=t((e,t)=>{let n=e<=1?e*100:e;if(n<0||n>100)throw Error(`${t} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${e}`);return n},`toPercent`),v=t((e,t,n)=>({x:_(t,`${n} evolution`),y:_(e,`${n} visibility`)}),`toCoordinates`),y=t(e=>{if(e){if(e===`+<>`)return`bidirectional`;if(e===`+<`)return`backward`;if(e===`+>`)return`forward`}},`getFlowFromPort`),b=t(e=>{if(!e?.startsWith(`+`))return{};let t=/^\+'([^']*)'/.exec(e)?.[1];return e.includes(`<>`)?{flow:`bidirectional`,label:t}:e.includes(`<`)?{flow:`backward`,label:t}:e.includes(`>`)?{flow:`forward`,label:t}:{label:t}},`extractFlowFromArrow`),x=t((e,t)=>{if(g(e,t),e.size&&t.setSize(e.size.width,e.size.height),e.evolution){let n=e.evolution.stages.map(e=>e.secondName?`${e.name.trim()} / ${e.secondName.trim()}`:e.name.trim()),r=e.evolution.stages.filter(e=>e.boundary!==void 0).map(e=>e.boundary);t.updateAxes({stages:n,stageBoundaries:r})}if(e.anchors.forEach(e=>{let n=v(e.visibility,e.evolution,`Anchor "${e.name}"`);t.addNode(e.name,e.name,n.x,n.y,`anchor`)}),e.components.forEach(e=>{let n=v(e.visibility,e.evolution,`Component "${e.name}"`),r=e.label?(e.label.negX?-1:1)*e.label.offsetX:void 0,i=e.label?(e.label.negY?-1:1)*e.label.offsetY:void 0,a=e.decorator?.strategy;t.addNode(e.name,e.name,n.x,n.y,`component`,r,i,e.inertia,a)}),e.notes.forEach(e=>{let n=v(e.visibility,e.evolution,`Note "${e.text}"`);t.addNote(e.text,n.x,n.y)}),e.pipelines.forEach(e=>{let n=t.getNode(e.parent);if(!n||typeof n.y!=`number`)throw Error(`Pipeline "${e.parent}" must reference an existing component with coordinates.`);let r=n.y;t.startPipeline(e.parent),e.components.forEach(n=>{let i=`${e.parent}_${n.name}`,a=n.label?(n.label.negX?-1:1)*n.label.offsetX:void 0,o=n.label?(n.label.negY?-1:1)*n.label.offsetY:void 0,s=_(n.evolution,`Pipeline component "${n.name}" evolution`);t.addNode(i,n.name,s,r,`pipeline-component`,a,o),t.addPipelineComponent(e.parent,i)})}),e.links.forEach(e=>{let n=!!e.arrow&&(e.arrow.includes(`-.->`)||e.arrow.includes(`.-.`)),r=y(e.fromPort)??y(e.toPort),{flow:i,label:a}=b(e.arrow);!r&&i&&(r=i);let o=e.linkLabel,s=a??o;t.addLink(t.resolveNodeId(e.from),t.resolveNodeId(e.to),n,s,r)}),e.evolves.forEach(e=>{let n=t.getNode(e.component);if(n?.y!==void 0){let r=_(e.target,`Evolve target for "${e.component}"`);t.addTrend(e.component,r,n.y)}}),e.annotations.length>0){let n=e.annotations[0],r=v(n.x,n.y,`Annotations box`);t.setAnnotationsBox(r.x,r.y)}e.annotation.forEach(e=>{let n=v(e.x,e.y,`Annotation ${e.number}`);t.addAnnotation(e.number,[{x:n.x,y:n.y}],e.text)}),e.accelerators.forEach(e=>{let n=v(e.x,e.y,`Accelerator "${e.name}"`);t.addAccelerator(e.name,n.x,n.y)}),e.deaccelerators.forEach(e=>{let n=v(e.x,e.y,`Deaccelerator "${e.name}"`);t.addDeaccelerator(e.name,n.x,n.y)})},`populateDb`),S={parser:{yy:void 0},parse:t(async t=>{let r=await e(`wardley`,t);n.debug(r);let i=S.parser?.yy;if(!i||typeof i.addNode!=`function`)throw Error(`parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.`);x(r,i)},`parse`)},C=new class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}static{t(this,`WardleyBuilder`)}addNode(e){let t=this.nodes.get(e.id)??{id:e.id,label:e.label},n={...t,...e,className:e.className??t.className,labelOffsetX:e.labelOffsetX??t.labelOffsetX,labelOffsetY:e.labelOffsetY??t.labelOffsetY};this.nodes.set(e.id,n)}addLink(e){this.links.push(e)}addTrend(e){this.trends.set(e.nodeId,e)}startPipeline(e){this.pipelines.set(e,{nodeId:e,componentIds:[]});let t=this.nodes.get(e);t&&(t.isPipelineParent=!0)}addPipelineComponent(e,t){let n=this.pipelines.get(e);n&&n.componentIds.push(t);let r=this.nodes.get(t);r&&(r.inPipeline=!0)}addAnnotation(e){this.annotations.push(e)}addNote(e){this.notes.push(e)}addAccelerator(e){this.accelerators.push(e)}addDeaccelerator(e){this.deaccelerators.push(e)}setAnnotationsBox(e,t){this.annotationsBox={x:e,y:t}}setAxes(e){this.axes={...this.axes,...e}}setSize(e,t){this.size={width:e,height:t}}getNode(e){return this.nodes.get(e)}resolveNodeId(e){if(this.nodes.has(e))return e;for(let[t,n]of this.nodes)if(n.label===e)return t;return e}build(){let e=[];for(let t of this.nodes.values()){if(typeof t.x!=`number`||typeof t.y!=`number`)throw Error(`Node "${t.label}" is missing coordinates`);e.push(t)}return{nodes:e,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}};function w(){return f()[`wardley-beta`]}t(w,`getConfig`);function T(e,t,n,r,i,a,o,s,c){C.addNode({id:e,label:t,x:n,y:r,className:i,labelOffsetX:a,labelOffsetY:o,inertia:s,sourceStrategy:c})}t(T,`addNode`);function E(e,t,n=!1,r,i){C.addLink({source:e,target:t,dashed:n,label:r,flow:i})}t(E,`addLink`);function D(e,t,n){C.addTrend({nodeId:e,targetX:t,targetY:n})}t(D,`addTrend`);function O(e,t,n){C.addAnnotation({number:e,coordinates:t,text:n})}t(O,`addAnnotation`);function k(e,t,n){C.addNote({text:e,x:t,y:n})}t(k,`addNote`);function A(e,t,n){C.addAccelerator({name:e,x:t,y:n})}t(A,`addAccelerator`);function j(e,t,n){C.addDeaccelerator({name:e,x:t,y:n})}t(j,`addDeaccelerator`);function M(e,t){C.setAnnotationsBox(e,t)}t(M,`setAnnotationsBox`);function N(e,t){C.setSize(e,t)}t(N,`setSize`);function P(e){C.startPipeline(e)}t(P,`startPipeline`);function F(e,t){C.addPipelineComponent(e,t)}t(F,`addPipelineComponent`);function I(e){C.setAxes(e)}t(I,`updateAxes`);function L(e){return C.getNode(e)}t(L,`getNode`);function R(e){return C.resolveNodeId(e)}t(R,`resolveNodeId`);function z(){return C.build()}t(z,`getWardleyData`);function B(){C.clear(),s()}t(B,`clear`);var V={getConfig:w,addNode:T,addLink:E,addTrend:D,addAnnotation:O,addNote:k,addAccelerator:A,addDeaccelerator:j,setAnnotationsBox:M,setSize:N,startPipeline:P,addPipelineComponent:F,updateAxes:I,getNode:L,resolveNodeId:R,getWardleyData:z,clear:B,setAccTitle:o,getAccTitle:p,setDiagramTitle:a,getDiagramTitle:d,getAccDescription:u,setAccDescription:i},H=[`Genesis`,`Custom Built`,`Product`,`Commodity`],U=t(()=>{let{themeVariables:e}=f();return{backgroundColor:e.wardley?.backgroundColor??e.background??`#fff`,axisColor:e.wardley?.axisColor??`#000`,axisTextColor:e.wardley?.axisTextColor??e.primaryTextColor??`#222`,gridColor:e.wardley?.gridColor??`rgba(100, 100, 100, 0.2)`,componentFill:e.wardley?.componentFill??`#fff`,componentStroke:e.wardley?.componentStroke??`#000`,componentLabelColor:e.wardley?.componentLabelColor??e.primaryTextColor??`#222`,linkStroke:e.wardley?.linkStroke??`#000`,evolutionStroke:e.wardley?.evolutionStroke??`#dc3545`,annotationStroke:e.wardley?.annotationStroke??`#000`,annotationTextColor:e.wardley?.annotationTextColor??e.primaryTextColor??`#222`,annotationFill:e.wardley?.annotationFill??e.background??`#fff`}},`getTheme`),W=t(()=>{let e=f()[`wardley-beta`];return{width:e?.width??900,height:e?.height??600,padding:e?.padding??48,nodeRadius:e?.nodeRadius??6,nodeLabelOffset:e?.nodeLabelOffset??8,axisFontSize:e?.axisFontSize??12,labelFontSize:e?.labelFontSize??10,showGrid:e?.showGrid??!1,useMaxWidth:e?.useMaxWidth??!0}},`getConfigValues`),G={parser:S,db:V,renderer:{draw:t((e,r,i,a)=>{n.debug(`Rendering Wardley map
|
|
2
|
+
`+e);let o=W(),s=U(),c=o.nodeRadius*1.6,u=a.db,d=u.getWardleyData(),f=u.getDiagramTitle(),p=d.size?.width??o.width,m=d.size?.height??o.height,g=h(r);g.selectAll(`*`).remove(),l(g,m,p,o.useMaxWidth),g.attr(`viewBox`,`0 0 ${p} ${m}`);let _=g.append(`g`).attr(`class`,`wardley-map`),v=g.append(`defs`);v.append(`marker`).attr(`id`,`arrow-${r}`).attr(`viewBox`,`0 0 10 10`).attr(`refX`,9).attr(`refY`,5).attr(`markerWidth`,6).attr(`markerHeight`,6).attr(`orient`,`auto-start-reverse`).append(`path`).attr(`d`,`M 0 0 L 10 5 L 0 10 z`).attr(`fill`,s.evolutionStroke).attr(`stroke`,`none`),v.append(`marker`).attr(`id`,`link-arrow-end-${r}`).attr(`viewBox`,`0 0 10 10`).attr(`refX`,9).attr(`refY`,5).attr(`markerWidth`,5).attr(`markerHeight`,5).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 0 0 L 10 5 L 0 10 z`).attr(`fill`,s.linkStroke).attr(`stroke`,`none`),v.append(`marker`).attr(`id`,`link-arrow-start-${r}`).attr(`viewBox`,`0 0 10 10`).attr(`refX`,1).attr(`refY`,5).attr(`markerWidth`,5).attr(`markerHeight`,5).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 10 0 L 0 5 L 10 10 z`).attr(`fill`,s.linkStroke).attr(`stroke`,`none`),_.append(`rect`).attr(`class`,`wardley-background`).attr(`width`,p).attr(`height`,m).attr(`fill`,s.backgroundColor);let y=p-o.padding*2,b=m-o.padding*2;f&&_.append(`text`).attr(`class`,`wardley-title`).attr(`x`,p/2).attr(`y`,o.padding/2).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize*1.05).attr(`font-weight`,`bold`).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`middle`).text(f);let x=t(e=>o.padding+e/100*y,`projectX`),S=t(e=>m-o.padding-e/100*b,`projectY`),C=_.append(`g`).attr(`class`,`wardley-axes`);C.append(`line`).attr(`x1`,o.padding).attr(`x2`,p-o.padding).attr(`y1`,m-o.padding).attr(`y2`,m-o.padding).attr(`stroke`,s.axisColor).attr(`stroke-width`,1),C.append(`line`).attr(`x1`,o.padding).attr(`x2`,o.padding).attr(`y1`,o.padding).attr(`y2`,m-o.padding).attr(`stroke`,s.axisColor).attr(`stroke-width`,1);let w=d.axes.xLabel??`Evolution`,T=d.axes.yLabel??`Visibility`;C.append(`text`).attr(`class`,`wardley-axis-label wardley-axis-label-x`).attr(`x`,o.padding+y/2).attr(`y`,m-o.padding/4).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize).attr(`font-weight`,`bold`).attr(`text-anchor`,`middle`).text(w),C.append(`text`).attr(`class`,`wardley-axis-label wardley-axis-label-y`).attr(`x`,o.padding/3).attr(`y`,o.padding+b/2).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize).attr(`font-weight`,`bold`).attr(`text-anchor`,`middle`).attr(`transform`,`rotate(-90 ${o.padding/3} ${o.padding+b/2})`).text(T);let E=d.axes.stages&&d.axes.stages.length>0?d.axes.stages:H;if(E.length>0){let e=_.append(`g`).attr(`class`,`wardley-stages`),t=d.axes.stageBoundaries,n=[];if(t&&t.length===E.length){let e=0;t.forEach(t=>{n.push({start:e,end:t}),e=t})}else{let e=1/E.length;E.forEach((t,r)=>{n.push({start:r*e,end:(r+1)*e})})}E.forEach((t,r)=>{let i=n[r],a=o.padding+i.start*y,c=(a+(o.padding+i.end*y))/2;r>0&&e.append(`line`).attr(`x1`,a).attr(`x2`,a).attr(`y1`,o.padding).attr(`y2`,m-o.padding).attr(`stroke`,`#000`).attr(`stroke-width`,1).attr(`stroke-dasharray`,`5 5`).attr(`opacity`,.8),e.append(`text`).attr(`class`,`wardley-stage-label`).attr(`x`,c).attr(`y`,m-o.padding/1.5).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize-2).attr(`text-anchor`,`middle`).text(t)})}if(o.showGrid){let e=_.append(`g`).attr(`class`,`wardley-grid`);for(let t=1;t<4;t++){let n=t/4,r=o.padding+y*n;e.append(`line`).attr(`x1`,r).attr(`x2`,r).attr(`y1`,o.padding).attr(`y2`,m-o.padding).attr(`stroke`,s.gridColor).attr(`stroke-dasharray`,`2 6`),e.append(`line`).attr(`x1`,o.padding).attr(`x2`,p-o.padding).attr(`y1`,m-o.padding-b*n).attr(`y2`,m-o.padding-b*n).attr(`stroke`,s.gridColor).attr(`stroke-dasharray`,`2 6`)}}let D=new Map;if(d.nodes.forEach(e=>{D.set(e.id,{x:x(e.x),y:S(e.y),node:e})}),d.pipelines.length>0){let e=_.append(`g`).attr(`class`,`wardley-pipelines`),t=_.append(`g`).attr(`class`,`wardley-pipeline-links`);d.pipelines.forEach(n=>{if(n.componentIds.length===0)return;let r=n.componentIds.map(e=>({id:e,pos:D.get(e),node:d.nodes.find(t=>t.id===e)})).filter(e=>e.pos&&e.node).sort((e,t)=>e.node.x-t.node.x);for(let e=0;e<r.length-1;e++){let n=r[e],i=r[e+1];t.append(`line`).attr(`class`,`wardley-pipeline-evolution-link`).attr(`x1`,n.pos.x).attr(`y1`,n.pos.y).attr(`x2`,i.pos.x).attr(`y2`,i.pos.y).attr(`stroke`,s.linkStroke).attr(`stroke-width`,1).attr(`stroke-dasharray`,`4 4`)}let i=1/0,a=-1/0,l=0;if(n.componentIds.forEach(e=>{let t=D.get(e);t&&(i=Math.min(i,t.x),a=Math.max(a,t.x),l=t.y)}),i!==1/0&&a!==-1/0){let t=o.nodeRadius*4,r=l-t/2,u=D.get(n.nodeId);u&&(u.x=(i+a)/2,u.y=r-c/6),e.append(`rect`).attr(`class`,`wardley-pipeline-box`).attr(`x`,i-15).attr(`y`,r).attr(`width`,a-i+30).attr(`height`,t).attr(`fill`,`none`).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5).attr(`rx`,4).attr(`ry`,4)}})}let O=_.append(`g`).attr(`class`,`wardley-links`),k=new Map;d.pipelines.forEach(e=>{k.set(e.nodeId,new Set(e.componentIds))});let A=d.links.filter(e=>!(!D.has(e.source)||!D.has(e.target)||k.get(e.target)?.has(e.source)));O.selectAll(`line`).data(A).enter().append(`line`).attr(`class`,e=>`wardley-link${e.dashed?` wardley-link--dashed`:``}`).attr(`x1`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.source).isPipelineParent?c/Math.sqrt(2):o.nodeRadius,i=n.x-t.x,a=n.y-t.y,s=Math.sqrt(i*i+a*a);return t.x+i/s*r}).attr(`y1`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.source).isPipelineParent?c/Math.sqrt(2):o.nodeRadius,i=n.x-t.x,a=n.y-t.y,s=Math.sqrt(i*i+a*a);return t.y+a/s*r}).attr(`x2`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.target).isPipelineParent?c/Math.sqrt(2):o.nodeRadius,i=t.x-n.x,a=t.y-n.y,s=Math.sqrt(i*i+a*a);return n.x+i/s*r}).attr(`y2`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.target).isPipelineParent?c/Math.sqrt(2):o.nodeRadius,i=t.x-n.x,a=t.y-n.y,s=Math.sqrt(i*i+a*a);return n.y+a/s*r}).attr(`stroke`,s.linkStroke).attr(`stroke-width`,1).attr(`stroke-dasharray`,e=>e.dashed?`6 6`:null).attr(`marker-end`,e=>e.flow===`forward`||e.flow===`bidirectional`?`url(#link-arrow-end-${r})`:null).attr(`marker-start`,e=>e.flow===`backward`||e.flow===`bidirectional`?`url(#link-arrow-start-${r})`:null),O.selectAll(`text`).data(A.filter(e=>e.label)).enter().append(`text`).attr(`class`,`wardley-link-label`).attr(`x`,e=>{let t=D.get(e.source),n=D.get(e.target),r=(t.x+n.x)/2,i=n.y-t.y,a=n.x-t.x;return r+i/Math.sqrt(a*a+i*i)*8}).attr(`y`,e=>{let t=D.get(e.source),n=D.get(e.target),r=(t.y+n.y)/2,i=n.x-t.x,a=n.y-t.y,o=Math.sqrt(i*i+a*a);return r+-i/o*8}).attr(`fill`,s.axisTextColor).attr(`font-size`,o.labelFontSize).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`middle`).attr(`transform`,e=>{let t=D.get(e.source),n=D.get(e.target),r=(t.x+n.x)/2,i=(t.y+n.y)/2,a=n.x-t.x,o=n.y-t.y,s=Math.sqrt(a*a+o*o),c=o/s,l=-a/s,u=r+c*8,d=i+l*8,f=Math.atan2(o,a)*180/Math.PI;return(f>90||f<-90)&&(f+=180),`rotate(${f} ${u} ${d})`}).text(e=>e.label);let j=_.append(`g`).attr(`class`,`wardley-trends`),M=d.trends.map(e=>{let t=D.get(e.nodeId);if(!t)return null;let n=x(e.targetX),r=S(e.targetY),i=n-t.x,a=r-t.y,s=Math.sqrt(i*i+a*a),c=o.nodeRadius+2;return{origin:t,targetX:n,targetY:r,adjustedX2:s>c?n-i/s*c:n,adjustedY2:s>c?r-a/s*c:r}}).filter(e=>e!==null);j.selectAll(`line`).data(M).enter().append(`line`).attr(`class`,`wardley-trend`).attr(`x1`,e=>e.origin.x).attr(`y1`,e=>e.origin.y).attr(`x2`,e=>e.adjustedX2).attr(`y2`,e=>e.adjustedY2).attr(`stroke`,s.evolutionStroke).attr(`stroke-width`,1).attr(`stroke-dasharray`,`4 4`).attr(`marker-end`,`url(#arrow-${r})`);let N=_.append(`g`).attr(`class`,`wardley-nodes`).selectAll(`g`).data(d.nodes).enter().append(`g`).attr(`class`,e=>[`wardley-node`,e.className?`wardley-node--${e.className}`:``].filter(Boolean).join(` `));N.filter(e=>e.sourceStrategy===`outsource`).append(`circle`).attr(`class`,`wardley-outsource-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`#666`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>e.sourceStrategy===`buy`).append(`circle`).attr(`class`,`wardley-buy-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`#ccc`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>e.sourceStrategy===`build`).append(`circle`).attr(`class`,`wardley-build-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`#eee`).attr(`stroke`,`#000`).attr(`stroke-width`,1);let P=N.filter(e=>e.sourceStrategy===`market`);P.append(`circle`).attr(`class`,`wardley-market-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>!e.isPipelineParent&&e.sourceStrategy!==`market`&&e.className!==`anchor`).append(`circle`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius).attr(`fill`,s.componentFill).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1);let F=o.nodeRadius*.7,I=o.nodeRadius*1.2;if(P.append(`line`).attr(`class`,`wardley-market-line`).attr(`x1`,e=>D.get(e.id).x).attr(`y1`,e=>D.get(e.id).y-I).attr(`x2`,e=>D.get(e.id).x-I*Math.cos(Math.PI/6)).attr(`y2`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),P.append(`line`).attr(`class`,`wardley-market-line`).attr(`x1`,e=>D.get(e.id).x-I*Math.cos(Math.PI/6)).attr(`y1`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`x2`,e=>D.get(e.id).x+I*Math.cos(Math.PI/6)).attr(`y2`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),P.append(`line`).attr(`class`,`wardley-market-line`).attr(`x1`,e=>D.get(e.id).x+I*Math.cos(Math.PI/6)).attr(`y1`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`x2`,e=>D.get(e.id).x).attr(`y2`,e=>D.get(e.id).y-I).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),P.append(`circle`).attr(`class`,`wardley-market-dot`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y-I).attr(`r`,F).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,2),P.append(`circle`).attr(`class`,`wardley-market-dot`).attr(`cx`,e=>D.get(e.id).x-I*Math.cos(Math.PI/6)).attr(`cy`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`r`,F).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,2),P.append(`circle`).attr(`class`,`wardley-market-dot`).attr(`cx`,e=>D.get(e.id).x+I*Math.cos(Math.PI/6)).attr(`cy`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`r`,F).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,2),N.filter(e=>e.isPipelineParent===!0).append(`rect`).attr(`x`,e=>D.get(e.id).x-c/2).attr(`y`,e=>D.get(e.id).y-c/2).attr(`width`,c).attr(`height`,c).attr(`fill`,s.componentFill).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>e.inertia===!0).append(`line`).attr(`class`,`wardley-inertia`).attr(`x1`,e=>{let t=D.get(e.id),n=e.isPipelineParent?c/2+15:o.nodeRadius+15;return e.sourceStrategy&&(n+=o.nodeRadius+10),t.x+n}).attr(`y1`,e=>{let t=D.get(e.id),n=e.isPipelineParent?c:o.nodeRadius*2;return t.y-n/2}).attr(`x2`,e=>{let t=D.get(e.id),n=e.isPipelineParent?c/2+15:o.nodeRadius+15;return e.sourceStrategy&&(n+=o.nodeRadius+10),t.x+n}).attr(`y2`,e=>{let t=D.get(e.id),n=e.isPipelineParent?c:o.nodeRadius*2;return t.y+n/2}).attr(`stroke`,s.componentStroke).attr(`stroke-width`,6),N.append(`text`).attr(`x`,e=>{let t=D.get(e.id);if(e.className===`anchor`)return e.labelOffsetX===void 0?t.x:t.x+e.labelOffsetX;let n=o.nodeLabelOffset;e.sourceStrategy&&e.labelOffsetX===void 0&&(n+=10);let r=e.labelOffsetX??n;return t.x+r}).attr(`y`,e=>{let t=D.get(e.id);if(e.className===`anchor`)return e.labelOffsetY===void 0?t.y-3:t.y+e.labelOffsetY;let n=-o.nodeLabelOffset;e.sourceStrategy&&e.labelOffsetY===void 0&&(n-=10);let r=e.labelOffsetY??n;return t.y+r}).attr(`class`,`wardley-node-label`).attr(`fill`,e=>e.className===`evolved`?s.evolutionStroke:e.className===`anchor`?`#000`:s.componentLabelColor).attr(`font-size`,o.labelFontSize).attr(`font-weight`,e=>e.className===`anchor`?`bold`:`normal`).attr(`text-anchor`,e=>e.className===`anchor`?`middle`:`start`).attr(`dominant-baseline`,e=>e.className===`anchor`?`middle`:`auto`).text(e=>e.label),d.annotations.length>0){let e=_.append(`g`).attr(`class`,`wardley-annotations`);if(d.annotations.forEach(t=>{let n=t.coordinates.map(e=>({x:x(e.x),y:S(e.y)}));if(n.length>1)for(let t=0;t<n.length-1;t++)e.append(`line`).attr(`class`,`wardley-annotation-line`).attr(`x1`,n[t].x).attr(`y1`,n[t].y).attr(`x2`,n[t+1].x).attr(`y2`,n[t+1].y).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5).attr(`stroke-dasharray`,`4 4`);n.forEach(n=>{let r=e.append(`g`).attr(`class`,`wardley-annotation`);r.append(`circle`).attr(`cx`,n.x).attr(`cy`,n.y).attr(`r`,10).attr(`fill`,`white`).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5),r.append(`text`).attr(`x`,n.x).attr(`y`,n.y).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,10).attr(`fill`,s.axisTextColor).attr(`font-weight`,`bold`).text(t.number)})}),d.annotationsBox){let t=x(d.annotationsBox.x),n=S(d.annotationsBox.y),r=e.append(`g`).attr(`class`,`wardley-annotations-box`),i=[...d.annotations].filter(e=>e.text).sort((e,t)=>e.number-t.number),a=[];if(i.forEach((e,i)=>{let o=r.append(`text`).attr(`x`,t+10).attr(`y`,n+10+(i+1)*16).attr(`font-size`,11).attr(`fill`,s.axisTextColor).attr(`text-anchor`,`start`).attr(`dominant-baseline`,`middle`).text(`${e.number}. ${e.text}`);a.push(o)}),a.length>0){let e=0,c=0;a.forEach(t=>{let n=t.node(),r=n.getComputedTextLength();e=Math.max(e,r);let i=n.getBBox();c=Math.max(c,i.height)});let l=e+20+105,u=i.length*16+20+c/2,d=o.padding,f=p-o.padding-l,h=o.padding,g=m-o.padding-u;t=Math.max(d,Math.min(t,f)),n=Math.max(h,Math.min(n,g)),a.forEach((e,r)=>{e.attr(`x`,t+10).attr(`y`,n+10+(r+1)*16)}),r.insert(`rect`,`text`).attr(`x`,t).attr(`y`,n).attr(`width`,l).attr(`height`,u).attr(`fill`,`white`).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5).attr(`rx`,4).attr(`ry`,4)}}}if(d.notes.length>0){let e=_.append(`g`).attr(`class`,`wardley-notes`);d.notes.forEach(t=>{let n=x(t.x),r=S(t.y);e.append(`text`).attr(`x`,n).attr(`y`,r).attr(`text-anchor`,`start`).attr(`font-size`,11).attr(`fill`,s.axisTextColor).attr(`font-weight`,`bold`).text(t.text)})}if(d.accelerators.length>0){let e=_.append(`g`).attr(`class`,`wardley-accelerators`);d.accelerators.forEach(t=>{let n=x(t.x),r=S(t.y),i=`
|
|
3
3
|
M ${n} ${r-15}
|
|
4
4
|
L ${n+60-20} ${r-15}
|
|
5
5
|
L ${n+60-20} ${r-15-8}
|
|
@@ -17,7 +17,7 @@ import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as t}from"./src-BY_WSi
|
|
|
17
17
|
L ${n+20} ${r+15}
|
|
18
18
|
L ${n+60} ${r+15}
|
|
19
19
|
Z
|
|
20
|
-
`;e.append(`path`).attr(`d`,i).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),e.append(`text`).attr(`x`,n+30).attr(`y`,r+15+15).attr(`text-anchor`,`middle`).attr(`font-size`,10).attr(`fill`,s.axisTextColor).attr(`font-weight`,`bold`).text(t.name)})}},`draw`)},styles:
|
|
20
|
+
`;e.append(`path`).attr(`d`,i).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),e.append(`text`).attr(`x`,n+30).attr(`y`,r+15+15).attr(`text-anchor`,`middle`).attr(`font-size`,10).attr(`fill`,s.axisTextColor).attr(`font-weight`,`bold`).text(t.name)})}},`draw`)},styles:t(({wardley:e}={})=>{let t=r(),n=c(),i=m(t,n.themeVariables),a=m(i.wardley,e);return`
|
|
21
21
|
.wardley-background {
|
|
22
22
|
fill: ${a.backgroundColor};
|
|
23
23
|
}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{i as t,t as n}from"./react-runtime-CMZHB3u8.js";import{h as r,i,p as a,s as o,t as s,u as c}from"./initial-deps-CW5Jl6i2.js";import{Bt as l,Et as u,G as d,H as f,Ht as p,J as m,K as h,M as g,P as _,Tt as v,U as y,Ut as b,V as x,Vt as S,W as C,c as w,d as T,h as E,j as D,l as O,u as k,y as A,zt as j}from"./initial-deps-DElr8S4a.js";import{E as M,F as N,H as P,K as F,W as I,X as ee,at as L,ct as R,g as z,k as B,q as V,tt as H}from"./initial-deps-B8FrcWWN.js";import{t as te}from"./arrow-down-DoJlTckg.js";import{C as U,T as W}from"./prompt-input--2KQl6SR.js";import{j as G}from"./message-assistant-directive-7AH4Pn2V.js";import{n as K,r as ne,t as q}from"./file-navigation-view-preference-BYYgwRsz.js";import{t as J}from"./upload-BQhbr7lC.js";import{J as Y,mt as re,pt as ie}from"./index-CV7PO8FJ.js";import{g as ae,l as oe,m as se,n as ce}from"./workbench-shell-CP0njkD8.js";var X=e(t(),1);function le(e,t){let n=c(t);return de({filters:{...e,status:`pending`}},n).length}function ue(e,t){return e.findAll(t.filters).map(e=>t.select?t.select(e):e.state)}function de(e={},t){let n=c(t).getMutationCache(),i=X.useRef(e),o=X.useRef(null);return o.current===null&&(o.current=ue(n,e)),X.useEffect(()=>{i.current=e}),X.useSyncExternalStore(X.useCallback(e=>n.subscribe(()=>{let t=r(o.current,ue(n,i.current));o.current!==t&&(o.current=t,a.schedule(e))}),[n]),()=>o.current,()=>o.current)}var fe=H(`arrow-down-to-line`,[[`path`,{d:`M12 17V3`,key:`1cwfxf`}],[`path`,{d:`m6 11 6 6 6-6`,key:`12ii2o`}],[`path`,{d:`M19 21H5`,key:`150jfl`}]]),pe=H(`file-minus-corner`,[[`path`,{d:`M20 14V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12`,key:`l9p8hp`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M14 18h6`,key:`1m8k6r`}]]),me=H(`settings-2`,[[`path`,{d:`M14 17H5`,key:`gfn3mx`}],[`path`,{d:`M19 7h-9`,key:`6i9tg`}],[`circle`,{cx:`17`,cy:`17`,r:`3`,key:`18b49y`}],[`circle`,{cx:`7`,cy:`7`,r:`3`,key:`dfmy0x`}]]);function Z(e){let t=e?.toLowerCase()??``;return/(?:git|workspace) (?:status|changes|snapshot|state).*changed|head or branch changed|snapshot.?mismatch/u.test(t)?`state_changed`:/commit or set aside working changes|local changes.*overwritten|would be overwritten by merge/u.test(t)?`working_changes`:/resolve and stage all merge conflicts|choose a current merge conflict|complete or cancel.*merge|conflict marker/u.test(t)?`merge_conflicts`:/invalid remote (?:url|name)|invalid remote url or name/u.test(t)?`invalid_remote`:/host key verification|remote host identification has changed/u.test(t)?`host_key`:/protected branch|gh006|changes must be made through a pull request/u.test(t)?`protected_branch`:/authentication failed|publickey|invalid.*(?:token|password)|could not read username/u.test(t)?`authentication`:/write access|permission.*denied|not permitted|403|access denied/u.test(t)?`permission`:/non-fast-forward|not possible to fast-forward|cannot fast-forward|fetch first|tip of your current branch is behind/u.test(t)?`remote_updates`:/gh013|repository rule violations|pre-receive hook declined|hook declined|push declined/u.test(t)?`rules`:/timed out|timeout|connection.*(?:reset|closed)|unexpected disconnect/u.test(t)?`unknown_result`:/could not resolve|couldn't connect|failed to connect|failed to fetch|networkerror|network request failed|econnrefused|network is unreachable|unable to access/u.test(t)?`network`:`unknown`}function Q(e,t,n){return{snapshot:e,message:n?.message??``,selectedPaths:new Set(t.map(e=>e.path)),knownPaths:new Set(t.map(e=>e.path)),previousMessage:n?.previousMessage??null}}function he(e,t,n,r=!0){let i=new Set(n.map(e=>e.path)),a=e.knownPaths.size===0?i:r?new Set([...e.selectedPaths].filter(e=>i.has(e))):e.selectedPaths;return{...e,snapshot:t,selectedPaths:a,knownPaths:new Set([...e.knownPaths,...i])}}function ge(e,t,n){return e.snapshot===t.snapshot&&e.selectedPaths.size===t.selectedPaths.size&&[...e.selectedPaths].every(e=>t.selectedPaths.has(e))?{...e,message:n,previousMessage:e.message}:e}function _e(e){return JSON.stringify({version:1,snapshot:e.snapshot,message:e.message,selectedPaths:[...e.selectedPaths],knownPaths:[...e.knownPaths],previousMessage:e.previousMessage})}function ve(e){if(e===null||e.length>2e6)return null;try{let t=JSON.parse(e),n=e=>Array.isArray(e)&&e.length<=1e5&&e.every(e=>typeof e==`string`);return t.version!==1||typeof t.snapshot!=`string`||typeof t.message!=`string`||t.message.length>1e4||!n(t.selectedPaths)||!n(t.knownPaths)||!(e=>e===null||typeof e==`string`&&e.length<=1e4)(t.previousMessage)?null:{snapshot:t.snapshot,message:t.message,selectedPaths:new Set(t.selectedPaths),knownPaths:new Set(t.knownPaths),previousMessage:t.previousMessage}}catch{return null}}function ye(e){let{remote:t}=e,n=e.pushStatus===`failed`||e.pushStatus===`not_configured`,r=[`commit`,`generate`,`status`].includes(e.failureOperation??``),i=e.failureOperation??`status`,a=e.actionError||e.pushError?Z(e.actionError??e.pushError):e.savedFailureKind??`unknown`,o=n||e.actionError?{kind:a,remote:!r,titleKey:r?`commit.${i}Failed`:`commit.failure_${a}`,helpKey:r&&a===`unknown`?`commit.${i}FailedHelp`:`commit.fix_${a}`}:null,s=(e,t,n)=>({action:e,labelKey:t,...n?{disabledReason:n}:{}}),c=(e,t,n,r)=>({primary:s(e,t,r),summaryKey:n,failure:o});if(t?.operation===`merge`||(t?.conflicts.length??0)>0)return{primary:s(`inspect`,`commit.refreshGitStatus`),summaryKey:`commit.mergePending`,hintKey:`commit.mergeExternalHelp`,failure:null};if(!e.branch)return c(null,`commit.push`,`commit.detachedHead`);if(t?.remotes.length===0)return c(`configure`,`commit.configureRemote`,`commit.noRemote`);if(t?.upstream===null||e.pushStatus===`not_configured`)return c(`publish`,`commit.publishBranch`,`commit.unpublished`);let l=(t?.ahead??0)>0?`commit.ahead`:(t?.behind??0)>0?`commit.behind`:t?.ahead===0&&t.behind===0?`commit.synced`:e.inspecting?`commit.awaitingCheck`:e.pushStatus===`pushed`?`commit.pushedToRemote`:e.commitSha?`commit.savedLocally`:`commit.remoteReady`;if((t?.ahead??0)>0&&(t?.behind??0)>0)return{...c(`inspect`,`commit.refreshGitStatus`,l),hintKey:`commit.divergedExternalHelp`};if(o?.remote&&e.hasActions){if(a===`state_changed`)return c(`inspect`,`commit.refreshGitStatus`,l);if(a===`invalid_remote`||a===`permission`)return c(`configure`,`commit.configureRemote`,l);if(a===`protected_branch`)return c(`branch`,`commit.createFeatureBranch`,l);if([`authentication`,`network`,`unknown_result`].includes(a))return c(`fetch`,`commit.checkConnection`,l);if(a===`remote_updates`&&!(t?.behind??0))return c(`fetch`,`commit.fetchRemote`,l)}return(t?.behind??0)>0?c(`integrate`,`commit.pullRemote`,l,e.hasWorkingChanges?`commit.pullNeedsCommit`:void 0):!t&&e.hasActions?c(`inspect`,`commit.inspectRemote`,e.inspecting?`commit.awaitingCheck`:`commit.remoteUnknown`):t?.ahead===0&&t.behind===0?c(e.hasActions?`fetch`:null,`commit.fetchRemote`,l):e.pushStatus===`pushed`&&!t?c(null,`commit.pushed`,l):c(`push`,o?.remote?`commit.pushAgain`:`commit.push`,l)}var be={push:`commit.pushing`,fetch:`commit.fetchingRemote`,inspect:`commit.inspectingRemote`,configure:`commit.configuringRemote`,publish:`commit.publishingBranch`,integrate:`commit.integratingRemote`,branch:`commit.creatingFeatureBranch`},$=n();function xe({initialName:e,initialUrl:t,busy:n,error:r,onSave:i,onClose:a,returnFocusElement:o,t:s}){let[c,l]=(0,X.useState)(e),[u,p]=(0,X.useState)(t),[m]=(0,X.useState)(()=>o??(typeof document>`u`?null:document.activeElement));return(0,$.jsx)(x,{open:!0,onOpenChange:e=>{!e&&!n&&a()},children:(0,$.jsxs)(f,{"aria-describedby":void 0,onCloseAutoFocus:e=>{e.preventDefault(),m instanceof HTMLElement&&m.isConnected&&m.focus()},children:[(0,$.jsx)(d,{children:(0,$.jsx)(h,{children:s(`commit.configureRemote`)})}),(0,$.jsxs)(`form`,{className:`space-y-4`,onSubmit:e=>{e.preventDefault(),!n&&i(c.trim(),u.trim()).then(e=>{e&&a()})},children:[(0,$.jsxs)(`label`,{className:`block text-label`,children:[s(`commit.remoteName`),(0,$.jsx)(`input`,{className:`mt-1 h-8 w-full rounded-control border border-separator-strong bg-panel px-2 outline-none focus-visible:shadow-focus`,required:!0,pattern:`[A-Za-z0-9_.-]+`,maxLength:128,value:c,disabled:n,autoComplete:`off`,onChange:e=>{l(e.currentTarget.value)}})]}),(0,$.jsxs)(`label`,{className:`block text-label`,children:[s(`commit.remoteUrl`),(0,$.jsx)(`input`,{className:`mt-1 h-8 w-full rounded-control border border-separator-strong bg-panel px-2 outline-none focus-visible:shadow-focus`,required:!0,value:u,disabled:n,autoComplete:`off`,autoCapitalize:`none`,spellCheck:!1,placeholder:`https://github.com/owner/repo.git`,onChange:e=>{p(e.currentTarget.value)}})]}),r?(0,$.jsx)(`p`,{className:`break-words text-caption text-danger`,role:`alert`,children:r}):null,(0,$.jsxs)(C,{children:[(0,$.jsx)(v,{variant:`ghost`,type:`button`,disabled:n,onClick:a,children:s(`commit.cancel`)}),(0,$.jsxs)(v,{type:`submit`,className:`text-[color:light-dark(#ffffff,#181818)]`,disabled:n||!c.trim()||!u.trim(),children:[n?(0,$.jsx)(M,{className:`size-3.5 animate-spin`,"aria-hidden":`true`}):null,s(n?`commit.configuringRemote`:`commit.saveRemote`)]})]})]})]})})}function Se({kind:e,branch:t,remote:n,commitSha:r,defaultRemote:i,busy:a,error:o,failure:s,guidanceKey:c,returnFocus:l,onAction:u,onClose:p,t:m}){let g=(0,X.useId)(),[_,b]=(0,X.useState)(i),[S,w]=(0,X.useState)(`feature/recovery`),[T,E]=(0,X.useState)(!1),D={publish:`commit.publishBranch`,branch:`commit.createFeatureBranch`,info:`commit.remoteInfo`,error:`commit.operationDetails`,guidance:`commit.gitOperationHelp`},O=e===`publish`?`commit.publishHelp`:e===`branch`?`commit.featureBranchHelp`:e===`info`?`commit.remoteInfoHelp`:e===`guidance`?c:c??s?.helpKey,k=async e=>{if(!a){E(!1);try{await u(e)?p():E(!0)}catch{E(!0)}}},A=`${_}/${t??``}`;return(0,$.jsx)(x,{open:!0,onOpenChange:e=>{!e&&!a&&p()},children:(0,$.jsxs)(f,{onCloseAutoFocus:e=>{e.preventDefault(),l?.isConnected&&l.focus()},children:[(0,$.jsxs)(d,{children:[(0,$.jsx)(h,{children:m(e===`error`&&s?s.titleKey:D[e])}),O?(0,$.jsx)(y,{children:m(O)}):null]}),e===`error`&&r&&s?.remote?(0,$.jsx)(`p`,{className:`text-caption text-muted-foreground`,children:m(`commit.localCommitSafe`)}):null,e===`publish`||e===`branch`?(0,$.jsxs)(`form`,{className:`space-y-4`,onSubmit:t=>{t.preventDefault(),k(e===`publish`?{action:`publish`,remote:_}:{action:`branch`,branchName:S.trim()})},children:[e===`publish`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`label`,{htmlFor:g,className:`block text-label`,children:m(`commit.remoteName`)}),(0,$.jsx)(`select`,{id:g,className:`h-9 w-full rounded-control border border-separator-strong bg-panel px-2 text-body-small outline-none focus-visible:shadow-focus`,value:_,disabled:a,onChange:e=>{b(e.currentTarget.value)},children:n?.remotes.map(e=>(0,$.jsx)(`option`,{value:e.name,children:e.name},e.name))}),(0,$.jsxs)(`div`,{className:`rounded-control bg-control px-3 py-2 text-caption`,children:[(0,$.jsx)(`p`,{className:`text-muted-foreground`,children:m(`commit.pushDestination`)}),(0,$.jsx)(`p`,{className:`break-all font-mono`,children:A}),(0,$.jsx)(`p`,{className:`mt-1 break-all text-muted-foreground`,children:n?.remotes.find(e=>e.name===_)?.url})]})]}):(0,$.jsxs)(`label`,{className:`block text-label`,children:[m(`commit.branchName`),(0,$.jsx)(`input`,{className:`mt-1 h-9 w-full rounded-control border border-separator-strong bg-panel px-2 outline-none focus-visible:shadow-focus`,required:!0,maxLength:1024,value:S,disabled:a,autoComplete:`off`,autoCapitalize:`none`,spellCheck:!1,onChange:e=>{w(e.currentTarget.value)}})]}),T?(0,$.jsx)(`p`,{role:`alert`,className:`text-caption text-warning`,children:m(e===`publish`?`commit.publishFailedHelp`:`commit.branchFailedHelp`)}):null,(0,$.jsxs)(C,{children:[(0,$.jsx)(v,{type:`button`,variant:`ghost`,disabled:a,onClick:p,children:m(`commit.cancel`)}),(0,$.jsxs)(v,{type:`submit`,className:`text-[color:light-dark(#ffffff,#181818)]`,disabled:a||(e===`branch`?!S.trim():!_),children:[a?(0,$.jsx)(M,{className:`size-3.5 animate-spin motion-reduce:animate-none`,"aria-hidden":`true`}):null,m(a?e===`publish`?`commit.publishingBranch`:`commit.creatingFeatureBranch`:D[e])]})]})]}):null,e===`info`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`dl`,{className:`space-y-3 text-caption`,children:[(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`dt`,{className:`text-muted-foreground`,children:m(`commit.currentBranch`)}),(0,$.jsx)(`dd`,{className:`break-all font-mono`,children:t??m(`commit.detachedHead`)})]}),(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`dt`,{className:`text-muted-foreground`,children:m(`commit.pushDestination`)}),(0,$.jsx)(`dd`,{className:`break-all font-mono`,children:n?.remote&&n.targetBranch?`${n.remote}/${n.targetBranch}`:m(`commit.unpublished`)})]}),n?.remotes.map(e=>(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`dt`,{className:`text-muted-foreground`,children:e.name}),(0,$.jsx)(`dd`,{className:`break-all font-mono`,children:e.url})]},e.name)),r?(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`dt`,{className:`text-muted-foreground`,children:m(`commit.lastCommit`)}),(0,$.jsx)(`dd`,{className:`break-all font-mono`,children:r})]}):null]}),n?(0,$.jsx)(`p`,{className:`text-caption text-muted-foreground`,children:m(`commit.lastChecked`,{time:new Date(n.checkedAt).toLocaleTimeString()})}):null]}):null,e===`error`&&o?(0,$.jsxs)(`div`,{className:`space-y-2`,children:[(0,$.jsx)(`p`,{className:`text-caption text-muted-foreground`,children:m(`commit.technicalDetails`)}),(0,$.jsx)(`pre`,{className:`max-h-72 overflow-auto whitespace-pre-wrap break-all rounded-control bg-control p-3 font-mono text-caption`,children:o})]}):null,e===`info`||e===`error`||e===`guidance`?(0,$.jsx)(C,{children:(0,$.jsx)(v,{type:`button`,variant:`outline`,onClick:p,children:m(`commit.close`)})}):null]})})}function Ce({busy:e,canPublish:t,dialogOpen:n,onInspect:r,onOpen:i,t:a}){let o=(0,X.useRef)(null);return(0,$.jsxs)(w,{children:[(0,$.jsx)(A,{asChild:!0,children:(0,$.jsx)(v,{ref:o,size:`icon-toolbar`,variant:`ghost`,type:`button`,"data-slot":`git-remote-more`,"aria-label":a(`commit.moreRemoteActions`),title:a(`commit.moreRemoteActions`),children:(0,$.jsx)(N,{className:`size-4`,"aria-hidden":`true`})})}),(0,$.jsxs)(O,{align:`end`,onCloseAutoFocus:e=>{n&&e.preventDefault()},children:[(0,$.jsxs)(T,{disabled:e,onSelect:r,children:[(0,$.jsx)(z,{className:`size-3.5`}),a(`commit.inspectRemote`)]}),(0,$.jsxs)(T,{disabled:e,onSelect:()=>{i(`configure`,o.current)},children:[(0,$.jsx)(me,{className:`size-3.5`}),a(`commit.configureRemote`)]}),t?(0,$.jsxs)(T,{disabled:e,onSelect:()=>{i(`publish`,o.current)},children:[(0,$.jsx)(J,{className:`size-3.5`}),a(`commit.publishBranch`)]}):null,(0,$.jsx)(E,{}),(0,$.jsxs)(T,{onSelect:()=>{i(`info`,o.current)},children:[(0,$.jsx)(U,{className:`size-3.5`}),a(`commit.remoteInfo`)]})]})]})}function we({branch:e,remote:t,pushStatus:n,pushError:r,commitSha:i,busy:a,activeAction:o,actionError:s,failureOperation:c,inspecting:l,onPush:u,onAction:d,onOpenHistory:f,savedFailureKind:p,hasWorkingChanges:m=!1,t:h}){let y=(0,X.useRef)(null),[b,x]=(0,X.useState)(null),S=ye({branch:e,remote:t,pushStatus:n,pushError:r,commitSha:i,actionError:s,failureOperation:c,inspecting:l,savedFailureKind:p,hasWorkingChanges:m,hasActions:!!d}),{primary:C}=S,w=t?.remote??t?.remotes[0]?.name??`origin`,T=s??r,E=(e,t=y.current)=>{x({kind:e,returnFocus:t})},O=()=>{x(null)},k=e=>d?.(e)??Promise.resolve(!1),A=l&&!t,j=a&&o===C.action,N=h(A?`commit.inspectingRemote`:j&&o?be[o]:C.labelKey),F=!!d&&!!t?.remotes.length&&C.action!==`fetch`,L=h(o===`fetch`&&a?`commit.fetchingRemote`:`commit.fetchRemote`),R=b&&![`info`,`error`,`guidance`].includes(b.kind)?null:S.failure,z=t?.ahead??0,B=t?.behind??0,H=!!R||!!C.disabledReason||!!S.hintKey,U=H||z>0&&B>0,W=[`push`,`publish`,`integrate`].includes(C.action??``),K={"commit.fetchRemote":`commit.fetchShort`,"commit.refreshGitStatus":`commit.refreshShort`,"commit.checkConnection":`commit.checkConnectionShort`,"commit.createFeatureBranch":`commit.branchShort`},ne=!j&&!A&&K[C.labelKey]?h(K[C.labelKey]??C.labelKey):N,q=S.summaryKey!==`commit.mergePending`&&(z>0||B>0),Y=t?.remote&&t.targetBranch?`${t.remote}/${t.targetBranch}`:null;return(0,$.jsxs)(`section`,{className:`h-[72px] shrink-0 overflow-hidden border-b border-separator px-3 py-1.5`,"data-slot":`git-remote-status`,"aria-label":h(`commit.remoteStatus`),children:[(0,$.jsxs)(`div`,{className:`flex h-7 min-w-0 items-center gap-2`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1.5`,children:[(0,$.jsx)(G,{className:`size-3.5 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`min-w-0 truncate text-caption font-medium`,title:e??h(`commit.detachedHead`),children:e??h(`commit.detachedHead`)}),Y?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(I,{className:`size-3 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`min-w-0 max-w-[45%] truncate text-caption text-muted-foreground`,title:Y,children:Y})]}):null]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5`,children:[F?(0,$.jsxs)(D,{children:[(0,$.jsx)(_,{asChild:!0,children:(0,$.jsx)(v,{size:`icon-toolbar`,variant:`ghost`,type:`button`,"aria-label":L,disabled:a||!e,onClick:()=>{k({action:`fetch`})},children:o===`fetch`&&a?(0,$.jsx)(M,{className:`size-3.5 animate-spin motion-reduce:animate-none`,"aria-hidden":`true`}):(0,$.jsx)(fe,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,$.jsx)(g,{children:h(`commit.fetchRemoteHint`)})]}):null,d?(0,$.jsx)(Ce,{busy:a,canPublish:!!t?.remotes.length&&t.upstream===null,dialogOpen:b!==null,onInspect:()=>{k({action:`inspect`})},onOpen:E,t:h}):null]})]}),(0,$.jsxs)(`div`,{className:`mt-1.5 flex h-6 min-w-0 items-center gap-2`,"data-slot":`git-remote-summary`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[(0,$.jsx)(`div`,{className:`flex min-w-0 items-center gap-1.5 text-caption ${H?`max-w-[50%]`:`flex-1`}`,role:`status`,children:q?(0,$.jsxs)($.Fragment,{children:[z>0?f?(0,$.jsxs)(`button`,{className:`inline-flex h-6 min-w-0 max-w-full touch-manipulation items-center gap-1.5 rounded-control bg-brand/10 px-1.5 text-brand-strong outline-none hover:bg-brand/15 focus-visible:shadow-focus`,type:`button`,"data-slot":`git-open-unpushed-history`,"aria-label":h(`commit.ahead`,{count:z}),title:h(`commit.ahead`,{count:z}),onClick:f,children:[(0,$.jsx)(ee,{className:`size-3.5 shrink-0`,"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:h(U?`commit.aheadShort`:`commit.ahead`,{count:z})})]}):(0,$.jsxs)(`span`,{className:`inline-flex h-6 min-w-0 items-center gap-1.5 rounded-control bg-brand/10 px-1.5 text-brand-strong`,title:h(`commit.ahead`,{count:z}),children:[(0,$.jsx)(ee,{className:`size-3.5 shrink-0`,"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`truncate`,children:h(U?`commit.aheadShort`:`commit.ahead`,{count:z})})]}):null,B>0?(0,$.jsxs)(`span`,{className:`inline-flex h-6 min-w-0 items-center gap-1.5 rounded-control bg-control px-1.5 text-muted-foreground`,title:h(`commit.behind`,{count:B}),children:[(0,$.jsx)(te,{className:`size-3.5 shrink-0`,"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:`truncate`,children:h(U?`commit.behindShort`:`commit.behind`,{count:B})})]}):null]}):H?null:(0,$.jsxs)(`span`,{className:`inline-flex h-6 min-w-0 items-center gap-1.5 rounded-control bg-control px-1.5 text-muted-foreground`,children:[S.summaryKey===`commit.synced`||S.summaryKey===`commit.pushedToRemote`?(0,$.jsx)(V,{className:`size-3.5 shrink-0 text-muted-foreground`,"aria-hidden":`true`}):null,(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:h(S.summaryKey)})]})}),H?(0,$.jsx)(`div`,{className:`flex h-6 min-w-0 flex-1 items-center text-caption`,children:R?(0,$.jsxs)(`div`,{role:`alert`,className:`flex h-full min-w-0 flex-1 items-center gap-1.5`,"data-slot":`git-remote-notice`,children:[(0,$.jsx)(P,{className:`size-3.5 shrink-0 text-warning`,"aria-hidden":`true`}),(0,$.jsx)(`p`,{className:`min-w-0 flex-1 truncate text-muted-foreground`,title:h(R.titleKey),children:h(R.titleKey)}),(0,$.jsx)(`button`,{className:`min-h-6 shrink-0 touch-manipulation rounded-sm text-muted-foreground underline underline-offset-2 outline-none hover:text-foreground focus-visible:shadow-focus`,type:`button`,"aria-label":h(`commit.viewDetails`),onClick:e=>{E(`error`,e.currentTarget)},children:h(`commit.detailsShort`)})]}):C.disabledReason?(0,$.jsx)(`p`,{className:`min-w-0 truncate text-muted-foreground`,title:h(C.disabledReason),children:h(C.disabledReason)}):S.hintKey?(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1.5 text-muted-foreground`,children:[(0,$.jsx)(`p`,{className:`min-w-0 flex-1 truncate`,children:h(`commit.externalGitRequired`)}),(0,$.jsx)(`button`,{className:`min-h-6 shrink-0 touch-manipulation rounded-sm underline underline-offset-2 outline-none hover:text-foreground focus-visible:shadow-focus`,type:`button`,"aria-label":h(`commit.viewDetails`),onClick:e=>{E(`guidance`,e.currentTarget)},children:h(`commit.detailsShort`)})]}):null}):null]}),C.action?(0,$.jsxs)(v,{ref:y,size:`toolbar`,variant:W?`default`:`outline`,className:W?`text-[color:light-dark(#ffffff,#181818)]`:void 0,type:`button`,"data-slot":`git-remote-primary`,"aria-label":N,title:N,disabled:a||A||!!C.disabledReason||C.action!==`push`&&!d,onClick:()=>{let e=C.action;e===`push`?u():e===`configure`||e===`publish`||e===`branch`?E(e):e&&k({action:e})},children:[j||A?(0,$.jsx)(M,{className:`size-3.5 animate-spin motion-reduce:animate-none`,"aria-hidden":`true`}):C.action===`push`||C.action===`publish`?(0,$.jsx)(J,{className:`size-3.5`,"aria-hidden":`true`}):null,ne]}):null]}),b?.kind===`configure`?(0,$.jsx)(xe,{initialName:w,initialUrl:t?.remotes.find(e=>e.name===w)?.url??``,busy:a,returnFocusElement:b.returnFocus,error:c===`configure`&&s?h(S.failure?.kind===`invalid_remote`?`commit.fix_invalid_remote`:`commit.remoteSaveFailed`):null,onSave:(e,t)=>k({action:`configure`,remote:e,url:t}),onClose:O,t:h}):null,b&&b.kind!==`configure`?(0,$.jsx)(Se,{kind:b.kind,branch:e,remote:t,commitSha:i,defaultRemote:w,busy:a,error:T,failure:S.failure,guidanceKey:S.hintKey,returnFocus:b.returnFocus,onAction:k,onClose:O,t:h}):null]})}var Te=e=>JSON.stringify({version:1,...e});function Ee(e,t){if(!e||e.length>2048)return null;try{let n=JSON.parse(e),r=e=>e===null||typeof e==`string`;return n.version!==1||!r(n.head)||!r(n.commitSha)||typeof n.pushStatus!=`string`||![`failed`,`not_configured`,`not_requested`,`pushed`,`checked`,`updated`].includes(n.pushStatus)||![`state_changed`,`working_changes`,`merge_conflicts`,`invalid_remote`,`authentication`,`permission`,`remote_updates`,`protected_branch`,`network`,`host_key`,`rules`,`unknown_result`,`unknown`].includes(String(n.failureKind))||t!==void 0&&n.head!==null&&n.head!==t?null:{head:n.head,commitSha:n.commitSha,pushStatus:n.pushStatus,failureKind:n.failureKind}}catch{return null}}function De(e,t,n){let r=`codexly:git-receipt:v1:${e}`,[i,a]=(0,X.useState)(()=>{try{return typeof window>`u`?null:Ee(window.localStorage.getItem(r),n)}catch{return null}}),o=t?Te(t):null;return(0,X.useEffect)(()=>{if(!o)return;let e=Ee(o);a(e);try{window.localStorage.setItem(r,o)}catch{}},[r,o]),t??(i&&(n===void 0||i.head===null||i.head===n)?i:null)}function Oe({busyAction:e,canCommit:t,disabled:n,isPending:r,labels:i,onCommit:a}){let o=r?e===`commit_and_push`?i.committingAndPushing:i.committing:i.commit;return(0,$.jsx)(`div`,{className:`mt-2`,"data-slot":`git-changes-actions`,children:(0,$.jsxs)(ce,{className:`w-full`,children:[(0,$.jsxs)(v,{"aria-label":o,className:`min-w-0 flex-1 rounded-r-none disabled:pointer-events-auto disabled:cursor-not-allowed disabled:opacity-100 disabled:hover:bg-brand disabled:active:brightness-100`,disabled:!t,onClick:()=>{a(`commit`)},type:`button`,children:[r?(0,$.jsx)(M,{"aria-hidden":`true`,className:`animate-spin`}):(0,$.jsx)(se,{"aria-hidden":`true`}),o]}),(0,$.jsxs)(w,{children:[(0,$.jsx)(A,{asChild:!0,children:(0,$.jsx)(v,{"aria-label":i.moreGitActions,className:`w-9 shrink-0 rounded-l-none border-l border-brand-contrast/30 px-0 disabled:opacity-100`,disabled:n,type:`button`,children:(0,$.jsx)(F,{"aria-hidden":`true`})})}),(0,$.jsx)(O,{align:`end`,className:`max-w-[calc(100vw-1rem)]`,children:(0,$.jsx)(k,{children:(0,$.jsxs)(T,{className:`focus-visible:!outline-none focus-visible:shadow-none`,disabled:!t,onSelect:()=>{a(`commit_and_push`)},children:[(0,$.jsx)(se,{"aria-hidden":`true`,className:`size-4`}),(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`p`,{children:i.commitAndPush}),(0,$.jsx)(`p`,{className:`mt-0.5 text-caption text-muted-foreground`,children:i.commitAndPushDescription})]})]})})})]})]})})}function ke({draft:e,generating:t,disabled:n,canGenerate:r,onGenerate:i,update:a,t:o}){return(0,$.jsxs)(`div`,{className:`space-y-2`,"data-slot":`git-commit-editor`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,$.jsx)(`label`,{className:`text-label font-semibold`,htmlFor:`commit-message`,children:o(`commit.commitMessage`)}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[e.previousMessage===null?null:(0,$.jsx)(v,{size:`sm`,variant:`link`,type:`button`,onClick:()=>{a(e=>({...e,message:e.previousMessage??``,previousMessage:null}))},children:o(`commit.undoGeneration`)}),(0,$.jsxs)(v,{variant:`ghost`,size:`sm`,disabled:!r||t,onClick:i,type:`button`,"aria-label":o(`commit.generateMessage`),children:[t?(0,$.jsx)(M,{className:`size-3.5 animate-spin`,"aria-hidden":`true`}):(0,$.jsx)(oe,{className:`size-3.5`,"aria-hidden":`true`}),o(t?`commit.generatingMessage`:`commit.generateMessage`)]})]})]}),(0,$.jsx)(`textarea`,{id:`commit-message`,"aria-label":o(`commit.commitMessage`),className:`block min-h-12 w-full resize-none rounded-control border border-separator-strong bg-panel px-2 py-1.5 text-label leading-5 outline-none focus-visible:shadow-focus`,rows:2,maxLength:1e4,disabled:n,placeholder:o(`commit.messagePlaceholder`),value:e.message,onChange:e=>{let t=e.currentTarget.value;a(e=>({...e,message:t,previousMessage:null}))}})]})}function Ae(e,t,n){try{return Q(t,n,typeof window>`u`?null:ve(window.localStorage.getItem(e)))}catch{return Q(t,n)}}function je(e,t,n,r){let i=`codexly:git-draft:v1:${e}`,a=(0,X.useMemo)(()=>`${t}:${n.map(e=>`${e.path}:${String(Number(e.staged))}`).join(`\0`)}:${String(r)}`,[t,n,r]),[o,s]=(0,X.useState)(()=>({range:a,draft:Ae(i,t,n)}));o.range!==a&&s({range:a,draft:he(o.draft,t,n,r)});let c=(0,X.useRef)(o.draft);c.current=o.draft;let l=()=>{try{window.localStorage.setItem(i,_e(c.current))}catch{}};return(0,X.useEffect)(()=>{let e=setTimeout(l,250);return()=>{clearTimeout(e)}},[i,o.draft]),(0,X.useEffect)(()=>{let e=()=>{l()};return window.addEventListener(`pagehide`,e),()=>{window.removeEventListener(`pagehide`,e),e()}},[i]),[o.draft,e=>{s(t=>({...t,draft:e(t.draft)}))}]}function Me(e){let t=new Map;for(let n of e.staged)t.set(n.path,{path:n.path,staged:!0,unstaged:!1});for(let n of e.unstaged)t.set(n.path,{path:n.path,staged:t.has(n.path),unstaged:!0});return[...t.values()].sort((e,t)=>e.path.localeCompare(t.path,`en`))}function Ne({gitStatus:e,draftScope:t=`repository`,error:n=null,isCommitting:r=!1,isPushing:i=!1,activeRemoteAction:a,isGenerating:o=!1,totalChanges:s,complete:c=!0,onLoadMore:l,isLoadingMore:u=!1,onCommit:d,onPush:f,onGenerateMessage:p,result:m=null,pushResult:h=null,remoteResult:g,isInspectingRemote:_=!1,onRemoteAction:y,onOpenHistory:x,t:S,viewMode:C,onViewModeChange:w,renderChanges:T}){let E=(0,X.useMemo)(()=>Me(e),[e]),[D,O]=je(t,e.snapshot,E,c),[k,A]=(0,X.useState)(``),[j,N]=(0,X.useState)(null),[P,F]=(0,X.useState)(!1),[I,ee]=(0,X.useState)(`commit`),L=(0,X.useRef)(!1),R=(0,X.useRef)(0);(0,X.useEffect)(()=>()=>{R.current++},[]);let z=r||i,B=(s??E.length)>0,V=h?.pushError??m?.pushError??null,H=De(t,h||m?{head:h?.remoteState?.head??m?.commitSha??g?.remoteState?.head??null,commitSha:m?.commitSha??null,pushStatus:h?.pushStatus??m?.pushStatus??`not_requested`,failureKind:Z(V)}:null,g?.remoteState?.head),te=h?.pushStatus??m?.pushStatus??H?.pushStatus??null,U=b(e=>S(e)),W=g?.remoteState?.operation!==`merge`&&(g?.remoteState?.conflicts.length??0)===0&&!z&&D.selectedPaths.size>0&&D.message.trim()!==``,G=async(e,t=`push`)=>{if(L.current)return!1;L.current=!0,N(null);try{return await e(),!0}catch(e){return N({message:e instanceof Error?e.message:String(e),operation:t}),!1}finally{L.current=!1}},q=async()=>{if(P||o)return;let e=D,t=++R.current;F(!0),N(null);try{let n=await p({expectedSnapshot:e.snapshot,paths:[...e.selectedPaths]});R.current===t&&O(t=>ge(t,e,n))}catch(e){R.current===t&&N({message:e instanceof Error?e.message:String(e),operation:`generate`})}finally{R.current===t&&F(!1)}},J=t=>G(async()=>{ee(t),await d({action:t,expectedSnapshot:e.snapshot,paths:[...D.selectedPaths],message:D.message}),R.current++,F(!1),O(e=>({...Q(e.snapshot,[]),knownPaths:e.knownPaths}))},`commit`);return e.repositoryMode===`root`?(0,$.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col overflow-hidden`,"data-slot":`commit-changes-panel`,children:[(0,$.jsx)(we,{onOpenHistory:x,branch:e.branch,remote:g?.remoteState,pushStatus:te,pushError:V,commitSha:m?.commitSha??H?.commitSha??void 0,savedFailureKind:H?.failureKind,busy:z,hasWorkingChanges:B,activeAction:i?a??`push`:null,actionError:j?.message??(V?null:n?.message??null),failureOperation:j?.operation??(!V&&n?`status`:void 0),inspecting:_,t:S,onPush:()=>{G(f)},...y?{onAction:e=>G(()=>y(e,H?.failureKind),e.action??`push`)}:{}}),B?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`max-h-[25%] shrink-0 space-y-2 overflow-y-auto px-3 py-2`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,$.jsx)(`p`,{className:`min-w-0 flex-1 text-caption font-semibold`,children:S(`commit.selectedFiles`,{selected:D.selectedPaths.size,total:s??E.length})}),(0,$.jsx)(v,{size:`icon-sm`,variant:`ghost`,type:`button`,"aria-label":S(C===`tree`?`diff.showFileList`:`diff.showFileTree`),onClick:()=>{w(C===`tree`?`list`:`tree`)},children:C===`tree`?(0,$.jsx)(K,{className:`size-3.5`}):(0,$.jsx)(ne,{className:`size-3.5`})})]}),(0,$.jsx)(`input`,{"aria-label":S(`commit.searchFiles`),placeholder:S(`commit.searchFiles`),className:`h-8 w-full rounded-control border border-separator bg-panel px-2 text-label outline-none focus-visible:shadow-focus`,value:k,onChange:e=>{A(e.currentTarget.value)}}),E.some(e=>e.staged&&e.unstaged)?(0,$.jsx)(`p`,{className:`text-caption text-muted-foreground`,children:S(`commit.partialStaged`)}):null]}),(0,$.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden`,children:T(D.selectedPaths,e=>{O(t=>({...t,selectedPaths:e}))},z,k)}),c?null:(0,$.jsx)(`div`,{className:`shrink-0 border-t border-separator px-3 py-1`,children:(0,$.jsxs)(v,{size:`sm`,variant:`ghost`,className:`w-full`,disabled:u,onClick:l,type:`button`,children:[u?(0,$.jsx)(M,{className:`size-3.5 animate-spin`}):null,S(`commit.loadMore`),` · `,E.length,` / `,s??E.length]})}),(0,$.jsxs)(`section`,{className:`max-h-[60%] min-h-0 shrink space-y-2 overflow-y-auto border-t border-separator px-3 py-2`,"data-slot":`git-commit-footer`,children:[(0,$.jsx)(ke,{draft:D,update:O,generating:P||o,disabled:r,canGenerate:D.selectedPaths.size>0&&!z,onGenerate:()=>{q()},t:S}),(0,$.jsx)(Oe,{busyAction:r?I:null,canCommit:W,isPending:r,disabled:z,labels:U,onCommit:e=>{J(e)}})]})]}):null]}):null}function Pe(e){return[...e].sort((e,t)=>e.kind===t.kind?e.name.localeCompare(t.name,`en`):e.kind===`file`?-1:1)}function Fe(e){let t=[e.name],n=e;for(;n.children.size===1;){let e=n.children.values().next().value;if(e?.kind!==`folder`)break;t.push(e.name),n=e}return{children:Pe([...n.children.values()].map(e=>e.kind===`folder`?Fe(e):e)),kind:`folder`,name:t.join(`/`),path:n.path}}function Ie(e){let t={children:new Map,kind:`folder`,name:``,path:``};for(let n of e){let e=n.path.split(`/`),r=e.pop();if(r===void 0)continue;let i=t;for(let t of e){let e=i.path===``?t:`${i.path}/${t}`,n=i.children.get(t);if(n?.kind===`folder`){i=n;continue}let r={children:new Map,kind:`folder`,name:t,path:e};i.children.set(t,r),i=r}i.children.set(r,{kind:`file`,name:r,path:n.path,status:n.kind})}return Pe([...t.children.values()].map(e=>e.kind===`folder`?Fe(e):e))}var Le=[];function Re(e,t,n,r,i,a=0){for(let o of t){let t=`${r}:${o.path}`;if(o.kind===`folder`)e.push({key:t,label:r,depth:a,kind:`folder`,path:o.path,name:o.name}),i.has(t)||Re(e,o.children,n,r,i,a+1);else{let i=n.get(o.path);i&&e.push({key:t,label:r,depth:a,kind:`file`,name:o.name,change:i})}}}function ze({changes:e,disabled:t=!1,label:n,onOpenFileDiff:r,onSelectedPathsChange:i,selectedPaths:a,viewMode:o=`tree`,secondaryChanges:c=Le,secondaryLabel:l=``,statsAvailable:d=!1}){let f=(0,X.useRef)(null),p=(0,X.useRef)(null),[h,g]=(0,X.useState)(new Set),_=(0,X.useMemo)(()=>[{changes:e,label:n},{changes:c,label:l}].filter(e=>e.changes.length>0).map(e=>({...e,paths:e.changes.map(e=>e.path),byPath:new Map(e.changes.map(e=>[e.path,e])),nodes:o===`tree`?Ie(e.changes):[],sorted:o===`list`?e.changes.toSorted((e,t)=>e.path.localeCompare(t.path,`en`)):[]})),[e,n,c,l,o]),v=(0,X.useMemo)(()=>{let e=[];for(let t of _)if(e.push({key:t.label,label:t.label,depth:0,kind:`section`,paths:t.paths}),o===`tree`)Re(e,t.nodes,t.byPath,t.label,h);else for(let n of t.sorted)e.push({key:`${t.label}:${n.path}`,kind:`file`,label:t.label,depth:0,name:n.path,change:n});return e},[_,h,o]),y=s({count:v.length,getScrollElement:()=>f.current,getItemKey:e=>v[e]?.key??e,estimateSize:()=>32,overscan:8,initialRect:{width:400,height:400}}),b=y.getVirtualItems();(0,X.useLayoutEffect)(()=>{if(p.current===null)return;let e=f.current?.querySelector(`[data-row-index="${String(p.current)}"]`);e&&(e.focus(),p.current=null)},[b]);let x=e=>{let t=new Set(a);t.has(e)?t.delete(e):t.add(e),i(t)},S=e=>{g(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},C=(e,t)=>{let n=e.key===`ArrowDown`?t+1:e.key===`ArrowUp`?t-1:e.key===`Home`?0:e.key===`End`?v.length-1:null;n!==null&&(e.preventDefault(),p.current=Math.max(0,Math.min(v.length-1,n)),y.scrollToIndex(p.current,{align:`auto`}),f.current?.querySelector(`[data-row-index="${String(p.current)}"]`)?.focus())};return(0,$.jsx)(`div`,{ref:f,className:`h-full min-h-0 flex-1 overflow-y-auto overscroll-contain`,"data-slot":`commit-changes-scroll`,children:(0,$.jsx)(`div`,{role:`tree`,"aria-label":n,"data-slot":o===`list`?`commit-changes-list`:`commit-changes-tree`,style:{height:y.getTotalSize(),position:`relative`},children:b.map(e=>{let n=v[e.index];if(!n)return null;let s={height:32,left:0,top:0,width:`100%`,position:`absolute`,transform:`translateY(${String(e.start)}px)`,paddingLeft:12+n.depth*14};if(n.kind===`section`){let r=n.paths.reduce((e,t)=>e+Number(a.has(t)),0);return(0,$.jsxs)(`div`,{role:`treeitem`,style:s,className:`flex items-center gap-1.5 pr-3`,"data-row-index":e.index,tabIndex:-1,onKeyDown:t=>{C(t,e.index)},children:[(0,$.jsx)(m,{"aria-label":n.label,checked:r===0?!1:r===n.paths.length||`indeterminate`,disabled:t,onCheckedChange:e=>{let t=new Set(a);for(let r of n.paths)e?t.add(r):t.delete(r);i(t)}}),(0,$.jsx)(`h3`,{className:`text-label font-semibold`,children:n.label}),(0,$.jsx)(`span`,{className:`ml-auto text-caption text-muted-foreground`,children:n.paths.length})]},n.key)}let c=n.kind===`folder`,l=c&&!h.has(n.key),f=c?n.path:n.change.path,p=c?`update`:n.change.kind,g=c?B:p===`create`?W:p===`delete`?pe:ae,_=()=>{c?S(n.key):r(n.change)};return(0,$.jsxs)(`div`,{role:`treeitem`,"aria-label":f,"aria-level":o===`tree`?n.depth+1:void 0,"aria-expanded":c?l:void 0,tabIndex:0,"data-row-index":e.index,style:s,className:`flex cursor-pointer items-center gap-1.5 pr-3 font-mono text-label hover:bg-control-hover focus-visible:shadow-focus`,onClick:_,onKeyDown:t=>{t.target===t.currentTarget&&(C(t,e.index),(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),_()),c&&(t.key===`ArrowLeft`&&l||t.key===`ArrowRight`&&!l)&&(t.preventDefault(),S(n.key)))},children:[c?(0,$.jsx)(I,{"aria-hidden":`true`,className:u(`size-3.5 shrink-0`,l&&`rotate-90`)}):(0,$.jsx)(m,{"aria-label":`${n.label}: ${f}`,checked:a.has(f),disabled:t,onClick:e=>{e.stopPropagation()},onCheckedChange:()=>{x(f)}}),(0,$.jsx)(g,{"aria-hidden":`true`,className:u(`size-3.5 shrink-0`,!c&&(p===`create`?`text-diff-added`:p===`delete`?`text-danger`:`text-warning`))}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:f,children:n.name}),!c&&d&&n.change.stats!==void 0&&(0,$.jsxs)(`span`,{className:`flex shrink-0 gap-1 text-meta`,"aria-label":`+${String(n.change.stats.additions)} -${String(n.change.stats.removals)}`,children:[(0,$.jsxs)(`span`,{className:`text-diff-added`,children:[`+`,n.change.stats.additions]}),(0,$.jsxs)(`span`,{className:`text-diff-removed`,children:[`-`,n.change.stats.removals]})]}),!c&&(0,$.jsx)(`span`,{className:`text-meta text-muted-foreground`,children:p===`create`?`A`:p===`delete`?`D`:`M`})]},n.key)})})})}function Be(e){let{gitStatus:t,onOpenFileDiff:n}=e,{t:r}=L(`workbench`),[i,a]=q(`changes`),o=(0,X.useMemo)(()=>{let e=new Map(t.staged.map(e=>[e.path,e]));for(let n of t.unstaged)e.has(n.path)||e.set(n.path,n);return[...e.values()]},[t]),s=JSON.stringify([e.draftScope??`repository`,t.branch]);return(0,$.jsx)(Ne,{...e,draftScope:s,t:(e,t)=>r(e,t??{}),viewMode:i,onViewModeChange:a,renderChanges:(e,t,a,s)=>{let c=s?o.filter(e=>e.path.toLowerCase().includes(s.toLowerCase())):o;return s&&c.length===0?(0,$.jsx)(`p`,{className:`p-3 text-caption text-muted-foreground`,children:r(`commit.noMatchingFiles`)}):(0,$.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto overscroll-contain`,"data-slot":`commit-changes-scroll`,children:(0,$.jsx)(ze,{changes:c,label:r(`commit.changes`),disabled:a,onOpenFileDiff:n,onSelectedPathsChange:t,selectedPaths:e,viewMode:i})})}},s)}function Ve(e){return e.pushStatus===`pushed`?`commit.commitAndPushSucceeded`:e.pushStatus===`not_requested`?`commit.commitSucceeded`:null}function He(e,t,n,r,i,a){let o=r===void 0?[`projects`,t,n,`git-status`]:[`projects`,t,n,`git-status`,r];e.setQueryData(o,i),e.setQueryData([`projects`,t,n,`git-history`,r??null],{pageParams:[void 0],pages:[a]})}function Ue({client:e,detailsError:t=null,gitStatus:n,onOpenFileDiff:r,onOpenHistory:a,projectId:s,rootPath:u}){let{t:d}=L(`workbench`),f=c(),m=i({...re(s,u,e),meta:{actionNotification:!1}}),h=i({...ie(s,u,e),...j(s,u,f),meta:{actionNotification:!1}}),g=i(S(s,u,e)),[_,v]=(0,X.useState)(),[y,b]=(0,X.useState)(),x=n,C=JSON.stringify([s,u,x.branch]),w=y?.scope===C?y.result:null,T=le({predicate:e=>e.options.scope?.id===`project-git-mutation:${s}:${u}`})>0,E=l(s,u,x.branch,x.snapshot,e,T),D=o({...E,enabled:x.repositoryMode===`root`&&E.enabled}),O=async(e,t)=>{let n=x.snapshot,r;try{r=await g.mutateAsync({...e,expectedSnapshot:n,...[`push`,`publish`,`fetch`].includes(e.action??``)&&x.branch?{expectedBranch:x.branch}:{}})}catch(e){throw v({result:{branch:x.branch,pushStatus:`failed`,pushError:e instanceof Error?e.message:String(e)},snapshot:n,scope:C}),f.invalidateQueries({queryKey:E.queryKey}),e}if(r.remoteState&&f.setQueryData(E.queryKey,r),(e.action!==`inspect`||p(t??Z(_?.scope===C?_.result.pushError:null),r))&&v({result:r,snapshot:n,scope:C}),r.pushStatus===`pushed`&&Y(d(`commit.pushSucceeded`)),[`inspect`,`integrate`,`branch`].includes(e.action??``)&&await f.invalidateQueries({queryKey:[`projects`,s,u,`git-status`]}),f.invalidateQueries({queryKey:[`projects`,s,u,`git-history`]}),r.pushStatus===`failed`||r.pushStatus===`not_configured`)throw Error(r.pushError??d(`commit.pushFailed`))};return(0,$.jsx)(Be,{onOpenHistory:a,draftScope:JSON.stringify([s,u]),error:t??D.error,gitStatus:x,pushResult:_?.scope===C?_.result:null,isPushing:g.isPending,activeRemoteAction:g.isPending?g.variables.action??`push`:null,onPush:()=>O({action:`push`}),onRemoteAction:O,remoteResult:D.data,isInspectingRemote:D.isPending,isCommitting:h.isPending,isGenerating:m.isPending,onCommit:async e=>{v(void 0);let t=await h.mutateAsync(e);b({result:t,snapshot:t.status.snapshot,scope:C}),He(f,s,u,e.repository,t.status,t.history);let n=Ve(t);if(n!==null){Y(d(n));return}},onGenerateMessage:async e=>(await m.mutateAsync(e)).message,onOpenFileDiff:r,result:w})}function We({client:e,detailsError:t,detailsPending:n,detailsStatus:r,gitStatus:i,gitStatusError:a,onOpenFileDiff:o,onOpenHistory:s,projectId:c,rootPath:l}){return c!==void 0&&e!==void 0&&i!==void 0?(0,$.jsx)(Ue,{client:e,detailsError:t,detailsPending:n,gitStatus:r??i,onOpenFileDiff:o,onOpenHistory:s,projectId:c,rootPath:l}):a===null?(0,$.jsx)(`p`,{className:`p-3 text-caption text-muted-foreground`,role:`status`,children:R.t(`inspector.gitLoading`,{ns:`conversation`})}):(0,$.jsx)(`p`,{className:`p-3 text-caption text-danger`,role:`alert`,children:a.message})}export{We as WorkbenchInspectorChanges};
|
|
Binary file
|
|
Binary file
|
package/dist/web/assets/{workbench-pet-canvas-BM6S31jL.js → workbench-pet-canvas-Ct1J6Adp.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{i as t,t as n}from"./react-runtime-CMZHB3u8.js";import{
|
|
1
|
+
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{i as t,t as n}from"./react-runtime-CMZHB3u8.js";import{o as r,r as i}from"./initial-deps-CW5Jl6i2.js";import{yn as a}from"./initial-deps-DElr8S4a.js";import{It as o}from"./index-CV7PO8FJ.js";var s=[`workbench-pets`];function c(e=o){return r({queryFn:({signal:t})=>e.listWorkbenchPets({signal:t}),queryKey:s,staleTime:3e4})}function l(e,t=o){return i({meta:{actionNotification:{successMessage:!1}},mutationFn:async e=>{let n=`workbench-pet-${e}-${globalThis.crypto.randomUUID()}`;return t.downloadWorkbenchPet(e,{idempotencyKey:n})},mutationKey:[`workbench-pets`,`download`],onSuccess:({pets:t})=>{e.setQueryData(s,t)},scope:{id:`workbench-pet-download`}})}var u=e(t(),1);function d(e){return e!==void 0&&e.frames.length>0}function f(e,t){let n=new Set,r=t;for(;!n.has(r);){n.add(r);let t=e[r];if(t!==void 0&&d(t))return t;if(t!==void 0)r=t.fallback;else if(r!==`idle`)r=`idle`;else return}}var p=class{#e;#t;#n=`idle`;#r=!1;#i=0;#a=!1;#o;#s=!0;constructor(e){this.#e=e.animations,this.#t=e.onFrame}play(e){this.#n=e,this.#l()}setReducedMotion(e){this.#a!==e&&(this.#a=e,this.#l())}setVisible(e){this.#s!==e&&(this.#s=e,this.#l())}dispose(){this.#r=!0,this.#i+=1,this.#c()}#c(){this.#o!==void 0&&clearTimeout(this.#o),this.#o=void 0}#l(){if(this.#i+=1,this.#c(),this.#r||!this.#s)return;let e=f(this.#e,this.#n);e!==void 0&&this.#u(e,0,this.#i)}#u(e,t,n){if(n!==this.#i||this.#r||!this.#s)return;let r=e.frames[t];if(r===void 0||(this.#t(r.spriteIndex),this.#a))return;let i=t+1,a=e.loopStart??-1;i>=e.frames.length&&a<0||(this.#o=setTimeout(()=>{this.#o=void 0,this.#u(e,i<e.frames.length?i:a,n)},r.durationMs))}};async function m(e,t){let n=await fetch(e,{credentials:`same-origin`,signal:t});if(!n.ok)throw Error(`Unable to load pet asset: ${String(n.status)}`);return createImageBitmap(await n.blob())}function h(e,t,n,r){let i=e.getContext(`2d`);if(i===null)throw Error(`Canvas 2D context is unavailable`);let a=Math.max(1,e.clientWidth||n.width),o=Math.max(1,e.clientHeight||n.height),s=Math.min(3,Math.max(1,globalThis.devicePixelRatio||1)),c=Math.round(a*s),l=Math.round(o*s);e.width!==c&&(e.width=c),e.height!==l&&(e.height=l);let u=r%n.columns,d=Math.floor(r/n.columns);i.clearRect(0,0,c,l),i.imageSmoothingEnabled=!1,i.drawImage(t,u*n.width,d*n.height,n.width,n.height,0,0,c,l)}var g=n();function _(){let[e,t]=(0,u.useState)(!1);return(0,u.useEffect)(()=>{let e=matchMedia(`(prefers-reduced-motion: reduce)`),n=()=>{t(e.matches)};return n(),e.addEventListener(`change`,n),()=>{e.removeEventListener(`change`,n)}},[]),e}function v({animationName:e,pet:t}){let n=(0,u.useRef)(null),[r,i]=(0,u.useState)(null),[o,s]=(0,u.useState)(!1),c=_(),l=a(t.assetId);return(0,u.useEffect)(()=>{let e=new AbortController,t=!0;return i(null),s(!1),typeof createImageBitmap==`function`?(m(l,e.signal).then(e=>{t?i(e):e.close()}).catch(()=>{t&&!e.signal.aborted&&s(!0)}),()=>{t=!1,e.abort()}):(s(!0),()=>{e.abort()})},[l]),(0,u.useEffect)(()=>()=>{r?.close()},[r]),(0,u.useEffect)(()=>{let i=n.current;if(i===null||r===null)return;let a=0,o=e=>{a=e;try{h(i,r,t.frame,e)}catch{s(!0)}},l=new p({animations:t.animations,onFrame:o});l.setReducedMotion(c),l.setVisible(document.visibilityState===`visible`),l.play(e);let u=new ResizeObserver(()=>{o(a)});u.observe(i);let d=()=>{l.setVisible(document.visibilityState===`visible`)};return document.addEventListener(`visibilitychange`,d),()=>{u.disconnect(),document.removeEventListener(`visibilitychange`,d),l.dispose()}},[e,r,t.animations,t.frame,c]),o?(0,g.jsx)(`span`,{"aria-hidden":`true`,className:`workbench-pet-static-fallback`,style:{backgroundImage:`url(${l})`,backgroundSize:`${String(t.frame.columns*100)}% ${String(t.frame.rows*100)}%`}}):(0,g.jsx)(`canvas`,{"aria-hidden":`true`,className:`workbench-pet-canvas`,ref:n})}export{l as n,c as r,v as t};
|
|
Binary file
|
|
Binary file
|