@inkeep/open-knowledge 0.46.0-beta.3 → 0.46.0-beta.4

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.
Files changed (367) hide show
  1. package/dist/{acp-harness-probe-BfAZQjw4.mjs → acp-harness-probe-BQ3_wze1.mjs} +2 -2
  2. package/dist/assets/skills/discovery/SKILL.md +1 -1
  3. package/dist/assets/skills/project/SKILL.md +1 -1
  4. package/dist/cli.mjs +20 -20
  5. package/dist/constants-7P_R76Oj.mjs +2 -0
  6. package/dist/{fs-traced-DDm-belY.mjs → fs-traced-B-x7hAhD.mjs} +2 -2
  7. package/dist/fs-traced-Bi88qem0.mjs +1 -0
  8. package/dist/{git-handle-CZzO__rr.mjs → git-handle-BnrTPYj_.mjs} +2 -2
  9. package/dist/git-handle-CHFcUjId.mjs +1 -0
  10. package/dist/index.mjs +1 -1
  11. package/dist/init-C9mmgvW-.mjs +1 -0
  12. package/dist/{init-BbpX_tfM.mjs → init-D0wKKFay.mjs} +4 -4
  13. package/dist/{launch-json-removal-BJBj0U4b.mjs → launch-json-removal-CmpnCINi.mjs} +2 -2
  14. package/dist/loader-D297fMOD.mjs +1 -0
  15. package/dist/{loader-B21NAhXF.mjs → loader-Sk1Z2HXI.mjs} +2 -2
  16. package/dist/md-manager-B9dAVpPF.mjs +2 -0
  17. package/dist/{open-browser-B9YVDd4n.mjs → open-browser-DZWA0mkS.mjs} +2 -2
  18. package/dist/parse-worker.mjs +1 -1
  19. package/dist/{preview-CIemkVcT.mjs → preview-B4nElYVr.mjs} +2 -2
  20. package/dist/preview-DacomZcF.mjs +1 -0
  21. package/dist/public/assets/{ActivityModeContent-CUdU1LSM.js → ActivityModeContent-DKkJMuA9.js} +1 -1
  22. package/dist/public/assets/{AgentDiffPane-C406On9h.js → AgentDiffPane-DkzTKjWa.js} +2 -2
  23. package/dist/public/assets/{AgentThreadClientBinder-B69qnNWb.js → AgentThreadClientBinder-BqONUtGD.js} +1 -1
  24. package/dist/public/assets/{BugReportHistory-DrMLEEP8.js → BugReportHistory-D_60pb7r.js} +1 -1
  25. package/dist/public/assets/{BugReportHistoryDialog-Cf_ZrCjH.js → BugReportHistoryDialog-BzJsPoev.js} +1 -1
  26. package/dist/public/assets/CodeMirrorPropInput-CyIlgGaP.js +3 -0
  27. package/dist/public/assets/{ConsentDialogBody-CiXNBNFL.js → ConsentDialogBody-DWXqUhzJ.js} +1 -1
  28. package/dist/public/assets/{DocumentContext-Bwk1Rcb4.js → DocumentContext-QeD0oigI.js} +11 -11
  29. package/dist/public/assets/{EditorModeToggle-Cc_1CSwt.js → EditorModeToggle-12SdK7ya.js} +2 -2
  30. package/dist/public/assets/{EnableSyncConfirmDialog-CUbRSvVb.js → EnableSyncConfirmDialog-GUnrwfa0.js} +1 -1
  31. package/dist/public/assets/FeedbackForm-B34f3kZF.js +1 -0
  32. package/dist/public/assets/GraphPanel-DE5iijrO.js +44 -0
  33. package/dist/public/assets/{LintConfigEditor-CQvHNEOM.js → LintConfigEditor-BNN0UkHw.js} +1 -1
  34. package/dist/public/assets/{ManagedArtifactProperties-t_bI4fe1.js → ManagedArtifactProperties-Bab8809-.js} +1 -1
  35. package/dist/public/assets/{McpConsentDialogBody-CajikYp7.js → McpConsentDialogBody-xnaSaj_X.js} +1 -1
  36. package/dist/public/assets/{MermaidDocEditor-CftPmzt6.js → MermaidDocEditor-Bw26glK9.js} +1 -1
  37. package/dist/public/assets/PropertyPanel-ANMzlUf0.js +2 -0
  38. package/dist/public/assets/{RegisteredAgentIcon-DplzDEhh.js → RegisteredAgentIcon-CyQDojW_.js} +1 -1
  39. package/dist/public/assets/{ReportBugDialogBody-CYyFn3-x.js → ReportBugDialogBody-SYqc1dep.js} +2 -2
  40. package/dist/public/assets/{SchemaConfigEditor-BpLYvsCk.js → SchemaConfigEditor-RgV92dU4.js} +1 -1
  41. package/dist/public/assets/{SettingsDialogBody-C_wnfFY5.js → SettingsDialogBody-Bhk4NQJN.js} +4 -4
  42. package/dist/public/assets/{ShareBranchSwitchDialog-5gKA4BCe.js → ShareBranchSwitchDialog-BXjj8rUu.js} +1 -1
  43. package/dist/public/assets/{ShareReceiveDialog-DCFP2qk5.js → ShareReceiveDialog-CXqdzDYu.js} +1 -1
  44. package/dist/public/assets/{ShareReceiveMissDialog-CcEXE75K.js → ShareReceiveMissDialog-BaHsueef.js} +1 -1
  45. package/dist/public/assets/{SkillEditorActions-BUn81ISW.js → SkillEditorActions-CDWxVAy1.js} +1 -1
  46. package/dist/public/assets/{SourceEditor-DF-FFwuv.js → SourceEditor-CZhPtXfy.js} +1 -1
  47. package/dist/public/assets/{TerminalPanel-CEIHsphK.js → TerminalPanel-DiVhC52x.js} +3 -3
  48. package/dist/public/assets/TerminalSessionsHost-8wTgxl0R.js +2 -0
  49. package/dist/public/assets/{TerminalWindowApp-B1hXJvlw.js → TerminalWindowApp-CQunMofw.js} +1 -1
  50. package/dist/public/assets/ThreadView-BI4embLm.js +6 -0
  51. package/dist/public/assets/{TimelineDiffPane-D-69ryad.js → TimelineDiffPane-Dd-khPXZ.js} +2 -2
  52. package/dist/public/assets/{abnfDiagram-VRR7QNED-BA0sca5y.js → abnfDiagram-VRR7QNED-Cyah47m9.js} +1 -1
  53. package/dist/public/assets/{agent-diff-store-qaTtNJLp.js → agent-diff-store-CcwDxQK9.js} +1 -1
  54. package/dist/public/assets/{agent-visibility-CANQ951p.js → agent-visibility-mwTztYpe.js} +1 -1
  55. package/dist/public/assets/{arc-DIcYIkPb.js → arc-B3aheyNj.js} +1 -1
  56. package/dist/public/assets/architecture-TIHT7OUA-BfFQVb2N.js +1 -0
  57. package/dist/public/assets/{architectureDiagram-ZJ3FMSHR-CyZsfJqr.js → architectureDiagram-ZJ3FMSHR-lZYHIfAt.js} +1 -1
  58. package/dist/public/assets/auth-state-cache-Bkm-5pQl.js +11 -0
  59. package/dist/public/assets/{blockDiagram-677ZJIJ3-BL4J4ddi.js → blockDiagram-677ZJIJ3-mULu-3uH.js} +1 -1
  60. package/dist/public/assets/{c4Diagram-LMCZKHZV-DtpyWL_l.js → c4Diagram-LMCZKHZV-DN4YpCzk.js} +1 -1
  61. package/dist/public/assets/{calendar-2iQWonjM.js → calendar-DqGTQwGe.js} +1 -1
  62. package/dist/public/assets/channel-D04u7HkE.js +1 -0
  63. package/dist/public/assets/{checkbox-DY-vIhnZ.js → checkbox-BkZH9Oy1.js} +1 -1
  64. package/dist/public/assets/chunk-2Q5K7J3B-Cczs20mb.js +1 -0
  65. package/dist/public/assets/{chunk-32BRIVSS-J_rdnOiy.js → chunk-32BRIVSS-DqkgLIEw.js} +1 -1
  66. package/dist/public/assets/{chunk-52WLFC77-BOMCKXNP.js → chunk-52WLFC77-9s8UsQXp.js} +1 -1
  67. package/dist/public/assets/{chunk-5FCAYU7R-8Y9BJKC-.js → chunk-5FCAYU7R-CkSFjjQr.js} +1 -1
  68. package/dist/public/assets/{chunk-5HE753X5-CQEApaqU.js → chunk-5HE753X5-C1Ig4mMr.js} +1 -1
  69. package/dist/public/assets/{chunk-5JV3BV7I-Wp4ieThX.js → chunk-5JV3BV7I-CIggZV0d.js} +1 -1
  70. package/dist/public/assets/{chunk-5TONJI2A-Dht2oB5p.js → chunk-5TONJI2A-BklATmUd.js} +1 -1
  71. package/dist/public/assets/{chunk-5VM5RSS4-BtUIXst7.js → chunk-5VM5RSS4-g5HeYq-z.js} +1 -1
  72. package/dist/public/assets/{chunk-7BUUIJ7U-B7ItXXvn.js → chunk-7BUUIJ7U-Dw__VSpN.js} +1 -1
  73. package/dist/public/assets/{chunk-BIQX33UG-B4CjyNhu.js → chunk-BIQX33UG-CRLx_yn0.js} +1 -1
  74. package/dist/public/assets/{chunk-BO2N2NFS-DMgXoikU.js → chunk-BO2N2NFS-BptiXfus.js} +3 -3
  75. package/dist/public/assets/{chunk-C7G6YPKG-Bhzd4FsL.js → chunk-C7G6YPKG-CmP7ozUj.js} +1 -1
  76. package/dist/public/assets/{chunk-CQNSW5MT-CVrDoms_.js → chunk-CQNSW5MT-BZUHEMrz.js} +1 -1
  77. package/dist/public/assets/{chunk-CYSBUYHQ-N9puYKAt.js → chunk-CYSBUYHQ-BRTRwmYZ.js} +1 -1
  78. package/dist/public/assets/{chunk-EMLP6XTP-ACA6yW7o.js → chunk-EMLP6XTP-DHUO1B6Q.js} +1 -1
  79. package/dist/public/assets/{chunk-EX3LRPZG-BIvLDOrf.js → chunk-EX3LRPZG-aq_XJzX2.js} +1 -1
  80. package/dist/public/assets/{chunk-FWX5IMBZ-1CESfm5O.js → chunk-FWX5IMBZ-rnR9hrS_.js} +2 -2
  81. package/dist/public/assets/{chunk-HOUHSVGY-DTcG17JD.js → chunk-HOUHSVGY-D0096-9K.js} +1 -1
  82. package/dist/public/assets/{chunk-ICXQ74PX-CDyWyZCQ.js → chunk-ICXQ74PX-BUnmDgqa.js} +1 -1
  83. package/dist/public/assets/{chunk-JG7HCLWE-gt52jYPR.js → chunk-JG7HCLWE-BwRUs0j6.js} +1 -1
  84. package/dist/public/assets/{chunk-JWPE2WC7-BIGkO1cG.js → chunk-JWPE2WC7-BOwE-mq8.js} +1 -1
  85. package/dist/public/assets/{chunk-MOJQB5TN-dX_Ns_6-.js → chunk-MOJQB5TN-CYyw3U64.js} +1 -1
  86. package/dist/public/assets/{chunk-MOZMSUNE-DtIvb1II.js → chunk-MOZMSUNE-_aAOLW1j.js} +1 -1
  87. package/dist/public/assets/{chunk-OGEWGWER-BgCGYbch.js → chunk-OGEWGWER-DLH_3q-Z.js} +1 -1
  88. package/dist/public/assets/{chunk-OSBZ3O6U-BjU8eaT1.js → chunk-OSBZ3O6U-BOkYzK-N.js} +1 -1
  89. package/dist/public/assets/{chunk-PUDLZKDR-BtLyPGmD.js → chunk-PUDLZKDR-Co9OjZVi.js} +1 -1
  90. package/dist/public/assets/{chunk-Q4XR5HBZ-B32WTAPs.js → chunk-Q4XR5HBZ-CjNiHUWo.js} +1 -1
  91. package/dist/public/assets/{chunk-QBLGF6JB-CprENtRb.js → chunk-QBLGF6JB-Cf-f1lin.js} +1 -1
  92. package/dist/public/assets/{chunk-R7FJI6CG-DCV9Dvbs.js → chunk-R7FJI6CG-C_nyMdyL.js} +1 -1
  93. package/dist/public/assets/{chunk-RYQCIY6F-DAyLri1b.js → chunk-RYQCIY6F-DXXN4Rzo.js} +1 -1
  94. package/dist/public/assets/{chunk-U6XO7XAA-DSdpZQB7.js → chunk-U6XO7XAA-Hw5M1kkd.js} +1 -1
  95. package/dist/public/assets/{chunk-V7JOEXUC-9lX7N0EN.js → chunk-V7JOEXUC-CLdet7qK.js} +1 -1
  96. package/dist/public/assets/chunk-VAUOI2AC-D9H5NlkH.js +1 -0
  97. package/dist/public/assets/{chunk-VR4S4FIN-CcTJJ1HA.js → chunk-VR4S4FIN-CnZ3Jw81.js} +1 -1
  98. package/dist/public/assets/{chunk-WYO6CB5R-9yPqK9ib.js → chunk-WYO6CB5R-C-c-Ja6D.js} +1 -1
  99. package/dist/public/assets/chunk-XXDRQBXY-BjAUTr8E.js +1 -0
  100. package/dist/public/assets/{chunk-YOTPTUD7-DBti7bK5.js → chunk-YOTPTUD7-CBowI675.js} +1 -1
  101. package/dist/public/assets/{chunk-ZGVPDNZ5-5ruaVNfo.js → chunk-ZGVPDNZ5-DfBSa8vW.js} +1 -1
  102. package/dist/public/assets/{chunk-ZIRB5QZD-DmY1977n.js → chunk-ZIRB5QZD-Cas2Em51.js} +1 -1
  103. package/dist/public/assets/classDiagram-OUVF2IWQ-BCgYs9Pk.js +1 -0
  104. package/dist/public/assets/classDiagram-v2-EOCWNBFH-BpVLL4-U.js +1 -0
  105. package/dist/public/assets/{client-version-BCgL1GiY.js → client-version-g_nEG2h2.js} +1 -1
  106. package/dist/public/assets/comment-chips--aitTdum.js +7 -0
  107. package/dist/public/assets/{config-provider-CJmVSUcR.js → config-provider-CedEU5Ch.js} +2 -2
  108. package/dist/public/assets/{cose-bilkent-JH36ORCC-D8nyC_t4.js → cose-bilkent-JH36ORCC-CzZaHQ2l.js} +1 -1
  109. package/dist/public/assets/cynefin-VYW2F7L2-BVFEANjh.js +1 -0
  110. package/dist/public/assets/{cynefinDiagram-TSTJHNR4-B4B58YEO.js → cynefinDiagram-TSTJHNR4-7PYslCmH.js} +1 -1
  111. package/dist/public/assets/{dagre-DjTdhlGF.js → dagre-BeM31D08.js} +1 -1
  112. package/dist/public/assets/{dagre-VKFMJZFB-DQHmtQOE.js → dagre-VKFMJZFB-DsY-o9S9.js} +1 -1
  113. package/dist/public/assets/{diagram-FQU43EPY-B28ABQG6.js → diagram-FQU43EPY-Cc40Oq-m.js} +1 -1
  114. package/dist/public/assets/{diagram-G47NLZAW-1MthGQcj.js → diagram-G47NLZAW-DdbiGkJk.js} +1 -1
  115. package/dist/public/assets/{diagram-NH7WQ7WH-B_Fhjw29.js → diagram-NH7WQ7WH-BoEA_7qN.js} +1 -1
  116. package/dist/public/assets/{diagram-OA4YK3LP-1B7_yz5p.js → diagram-OA4YK3LP-ChsGI8c4.js} +1 -1
  117. package/dist/public/assets/{diagram-WEI45ONY-DzfuKRxf.js → diagram-WEI45ONY-znZ94tAq.js} +1 -1
  118. package/dist/public/assets/{dialog-TkFkuYVg.js → dialog-6-bc7qPg.js} +1 -1
  119. package/dist/public/assets/{dist-BObw0jPE.js → dist-B25wDFyk.js} +1 -1
  120. package/dist/public/assets/{dist-C7rVxfRB.js → dist-BMMI5Kdg.js} +1 -1
  121. package/dist/public/assets/{dist-DGzvBIzr.js → dist-C4Kl8QaT.js} +1 -1
  122. package/dist/public/assets/{dist-D1zECWv_.js → dist-C7VIqwIG.js} +1 -1
  123. package/dist/public/assets/{dist-BR00oFrA2.js → dist-CsRIthsw2.js} +1 -1
  124. package/dist/public/assets/{dist-Dhbvx6Ut.js → dist-Cv2LF2DL.js} +178 -176
  125. package/dist/public/assets/{dist-CP0xcBf_.js → dist-CxGvJvCN.js} +1 -1
  126. package/dist/public/assets/{dist-DifRwKW-.js → dist-DPWWCZ4h.js} +1 -1
  127. package/dist/public/assets/{dist-Cqbn6bM9.js → dist-Dcu3hl7e.js} +1 -1
  128. package/dist/public/assets/{dist-CiPafPDy.js → dist-DdFyq-YY.js} +1 -1
  129. package/dist/public/assets/{dist-ChSSPf9y.js → dist-DlSSwTCj.js} +1 -1
  130. package/dist/public/assets/{dist-CslAqn54.js → dist-DmIoqGC0.js} +1 -1
  131. package/dist/public/assets/{dist-DL8cni8v.js → dist-Dolq1sN0.js} +1 -1
  132. package/dist/public/assets/{dist-ioWbCXab.js → dist-P9LB04An.js} +1 -1
  133. package/dist/public/assets/{doc-hash-BzYXjFJp.js → doc-hash-unBeSU8C.js} +1 -1
  134. package/dist/public/assets/{documents-events-NL4RG6fU.js → documents-events-DJXnk07Z.js} +1 -1
  135. package/dist/public/assets/{ebnfDiagram-CCIWWBDH-BjazoYYO.js → ebnfDiagram-CCIWWBDH-DX6whEUG.js} +1 -1
  136. package/dist/public/assets/{erDiagram-Q63AITRT-DvgiLWl5.js → erDiagram-Q63AITRT-CgloxApp.js} +1 -1
  137. package/dist/public/assets/{esm-HV7Pxfbn.js → esm-QF0-_nlB.js} +1 -1
  138. package/dist/public/assets/eventmodeling-45OFAUF4-usNuB_rF.js +1 -0
  139. package/dist/public/assets/{file-tree-adapter-C3r5x-03.js → file-tree-adapter-C9l0Uy9t.js} +1 -1
  140. package/dist/public/assets/{file-tree-utils-DnNGot8D.js → file-tree-utils-Cy6smqXE.js} +1 -1
  141. package/dist/public/assets/flowDiagram-23GEKE2U-CDs0Vlps.js +1 -0
  142. package/dist/public/assets/{follow-file-BghdVu5J.js → follow-file-BVJ6G9Hs.js} +1 -1
  143. package/dist/public/assets/{ganttDiagram-NO4QXBWP-CJgOU-j1.js → ganttDiagram-NO4QXBWP-BZQXYXPf.js} +1 -1
  144. package/dist/public/assets/gitGraph-TEB2WS4Q-DXc_YvuI.js +1 -0
  145. package/dist/public/assets/{gitGraphDiagram-IHSO6WYX-DYP87cJL.js → gitGraphDiagram-IHSO6WYX-DnT15zfc.js} +1 -1
  146. package/dist/public/assets/{globals-C7y6kfQ9.js → globals-CdX3jOLC.js} +2 -2
  147. package/dist/public/assets/globals-Cf_md-qZ.css +1 -0
  148. package/dist/public/assets/{graphlib-DYCc0Y9o.js → graphlib-CIYGRnfF.js} +1 -1
  149. package/dist/public/assets/{highlighted-body-OFNGDK62-C9GzQB8c.js → highlighted-body-OFNGDK62-DN5QVB2g.js} +1 -1
  150. package/dist/public/assets/index-BnCzVIZM.js +2014 -0
  151. package/dist/public/assets/info-DKCQHKI2-C0DL9Ht0.js +1 -0
  152. package/dist/public/assets/{infoDiagram-FWYZ7A6U-CbZOQ254.js → infoDiagram-FWYZ7A6U-CPJF9vn1.js} +1 -1
  153. package/dist/public/assets/{ishikawaDiagram-FXEZZL3T-CUWPHUOP.js → ishikawaDiagram-FXEZZL3T-CPmyb7Oh.js} +1 -1
  154. package/dist/public/assets/{journeyDiagram-5HDEW3XC-RLUp44OU.js → journeyDiagram-5HDEW3XC-DHsl5S9z.js} +1 -1
  155. package/dist/public/assets/{kanban-definition-HUTT4EX6-D4TPhDQW.js → kanban-definition-HUTT4EX6-BS2xX-qh.js} +1 -1
  156. package/dist/public/assets/{line-KTG0S8eM.js → line-PfwSO0Y4.js} +1 -1
  157. package/dist/public/assets/{linear-D6fTctUn.js → linear-DY7zcaob.js} +1 -1
  158. package/dist/public/assets/{lint-config-client-CrVQnAJl.js → lint-config-client-SBOLqEAH.js} +1 -1
  159. package/dist/public/assets/{map-Rw6uJqFR.js → map-B5g_BAkn.js} +1 -1
  160. package/dist/public/assets/{markdownlint-rule-browser-Cb6F_hct.js → markdownlint-rule-browser-u-niNZkQ.js} +1 -1
  161. package/dist/public/assets/mermaid-GHXKKRXX-C9klxgAS.js +1 -0
  162. package/dist/public/assets/{mermaid-parser.core-CusxBOjy.js → mermaid-parser.core-DtiAO5KW.js} +2 -2
  163. package/dist/public/assets/{mermaid.core-okCkIUps.js → mermaid.core-2-fa7F6R.js} +3 -3
  164. package/dist/public/assets/{mindmap-definition-LN4V7U3C-D-eGlMvq.js → mindmap-definition-LN4V7U3C-CTVrQgzc.js} +1 -1
  165. package/dist/public/assets/{navigation-targets-CILnJhFW.js → navigation-targets-CRrgSRY3.js} +1 -1
  166. package/dist/public/assets/{now-DRL8tqfF.js → now-bAD2ZsK-.js} +1 -1
  167. package/dist/public/assets/{open-managed-artifact-tab-CoiXLY4g.js → open-managed-artifact-tab-DKpdEiZk.js} +1 -1
  168. package/dist/public/assets/{ordinal-DnmHW-WD.js → ordinal-Dj8tTCMd.js} +1 -1
  169. package/dist/public/assets/packet-7NZHBO7P-BpFruX6n.js +1 -0
  170. package/dist/public/assets/{panel-C8ZhM4q-.js → panel-BbxjQP3-.js} +1 -1
  171. package/dist/public/assets/{pegDiagram-2B236MQR-Bjnm3xCN.js → pegDiagram-2B236MQR-DVy6JL4F.js} +1 -1
  172. package/dist/public/assets/{pending-receive-nav-store-BYGxrnRS.js → pending-receive-nav-store-EO01lM9G.js} +1 -1
  173. package/dist/public/assets/pie-RZYD4A2V-lVpCCOkJ.js +1 -0
  174. package/dist/public/assets/{pieDiagram-ENE6RG2P-BkLpbnFN.js → pieDiagram-ENE6RG2P-Kxbx45IP.js} +1 -1
  175. package/dist/public/assets/{project-paths-Dwo4Of8C.js → project-paths-DdZAF_-I.js} +1 -1
  176. package/dist/public/assets/{prop-types-BX5rHy8u.js → prop-types-DDnDOUmp.js} +1 -1
  177. package/dist/public/assets/{quadrantDiagram-ABIIQ3AL-eMGNkhp-.js → quadrantDiagram-ABIIQ3AL-BbCFEjhq.js} +1 -1
  178. package/dist/public/assets/radar-I7S5WNFK-Bd-i9axl.js +1 -0
  179. package/dist/public/assets/railroad-3IZDKUUU-D6ewe_eA.js +1 -0
  180. package/dist/public/assets/railroad-abnf-AHOZXSZD-DKqyYXL-.js +1 -0
  181. package/dist/public/assets/railroad-ebnf-EBAXGLYW-CtMezBX2.js +1 -0
  182. package/dist/public/assets/railroad-peg-LSFZ7HO6-DJ-63J6n.js +1 -0
  183. package/dist/public/assets/{railroadDiagram-RFXS5EU6-Cs70gdc4.js → railroadDiagram-RFXS5EU6-6SEpaCgo.js} +1 -1
  184. package/dist/public/assets/{receive-store-Cuer2-MQ.js → receive-store-CCj5OCl8.js} +1 -1
  185. package/dist/public/assets/{requirementDiagram-TGXJPOKE-yQhnovOU.js → requirementDiagram-TGXJPOKE-brbJ6VUS.js} +1 -1
  186. package/dist/public/assets/{sankeyDiagram-HTMAVEWB-C7R3anws.js → sankeyDiagram-HTMAVEWB-DT0MK3ep.js} +1 -1
  187. package/dist/public/assets/{schema-fields-view-intent-D_s-Cynn.js → schema-fields-view-intent-CDu72Aty.js} +1 -1
  188. package/dist/public/assets/{selection-context-BLRRQXPM.js → selection-context-CsoqdVq1.js} +1 -1
  189. package/dist/public/assets/{sequenceDiagram-DBY2YBRQ-CEdbVotz.js → sequenceDiagram-DBY2YBRQ-BPJt9blB.js} +1 -1
  190. package/dist/public/assets/{sizeCapture-X5ZJPWSS-DAh96RVo.js → sizeCapture-X5ZJPWSS-1l7G4SwD.js} +1 -1
  191. package/dist/public/assets/skill-actions-4cV_4pjw.js +1 -0
  192. package/dist/public/assets/{skills-api-By8un6BC.js → skills-api-141pFhWO.js} +1 -1
  193. package/dist/public/assets/{src-oESxEYNL.js → src-0hFiTIuh.js} +1 -1
  194. package/dist/public/assets/{src--OxBHrEw.js → src-CaBa9Z1L.js} +1 -1
  195. package/dist/public/assets/{stateDiagram-2N3HPSRC-q96Dmt4i.js → stateDiagram-2N3HPSRC-QGlUFt6h.js} +1 -1
  196. package/dist/public/assets/stateDiagram-v2-6OUMAXLB-D_6D-nLI.js +1 -0
  197. package/dist/public/assets/{swimlanes-5IMT3BWC--g7Ac5Wk.js → swimlanes-5IMT3BWC-BHsr6MBF.js} +2 -2
  198. package/dist/public/assets/swimlanesDiagram-G3AALYLV-cqXTLbrM.js +8 -0
  199. package/dist/public/assets/{tag-pill-input-BIioVLJo.js → tag-pill-input-C4VKdytg.js} +1 -1
  200. package/dist/public/assets/{target-navigation-intent-YwxjtaLV.js → target-navigation-intent-BzJodEAL.js} +1 -1
  201. package/dist/public/assets/{telemetry-impl-BFTBY40l.js → telemetry-impl-DV07MMfz.js} +2 -2
  202. package/dist/public/assets/{telemetry-startup-DI3YRseI.js → telemetry-startup-Cy1VVosp.js} +1 -1
  203. package/dist/public/assets/terminal-launch-events-Bz4DL9DZ.js +1 -0
  204. package/dist/public/assets/{terminal-telemetry-BLN1ghOs.js → terminal-telemetry-CXqhqIkk.js} +1 -1
  205. package/dist/public/assets/{thread-client-C0O75Kza.js → thread-client-CSOJeVWW.js} +1 -1
  206. package/dist/public/assets/{timeline-definition-FHXFAJF6-DqrkK_6w.js → timeline-definition-FHXFAJF6-DitS4FqW.js} +1 -1
  207. package/dist/public/assets/treeView-QDETBFTQ-CuznZlQn.js +1 -0
  208. package/dist/public/assets/treemap-6X3UGDF4-DCd6umeO.js +1 -0
  209. package/dist/public/assets/typing-burst-detector-DuRvcTVz.js +8 -0
  210. package/dist/public/assets/{uninstall-ousBF288.js → uninstall-9ZXPO59t.js} +1 -1
  211. package/dist/public/assets/use-activity-panel-BBGq_DFB.js +1 -0
  212. package/dist/public/assets/{use-apply-config-color-theme-VdlJaZ0G.js → use-apply-config-color-theme-zM7Oux5u.js} +2 -2
  213. package/dist/public/assets/{use-collab-url-DU2XMK58.js → use-collab-url-81TC8Fvz.js} +1 -1
  214. package/dist/public/assets/{use-live-xterm-theme-DVzY8LXJ.js → use-live-xterm-theme-DeW6SO6V.js} +1 -1
  215. package/dist/public/assets/use-settings-route-KYTTaHV0.js +1 -0
  216. package/dist/public/assets/{use-terminal-enabled-BoKa-wLe.js → use-terminal-enabled-qjUlZ0f0.js} +1 -1
  217. package/dist/public/assets/use-timeline-entry-diff-svkep662.js +6 -0
  218. package/dist/public/assets/{use-workspace-DwK7HqI3.js → use-workspace-CNU53RmX.js} +1 -1
  219. package/dist/public/assets/{vennDiagram-L72KCM5P-DFSXk11G.js → vennDiagram-L72KCM5P-D7jabRjK.js} +1 -1
  220. package/dist/public/assets/wardley-OPB4EBWU-DH0Qf9r4.js +1 -0
  221. package/dist/public/assets/{wardleyDiagram-EHGQE667-Bw65HviB.js → wardleyDiagram-EHGQE667-C3olh_ef.js} +1 -1
  222. package/dist/public/assets/{workspace-paths-DSoqUSNl.js → workspace-paths-DGKkpMQ9.js} +1 -1
  223. package/dist/public/assets/{xychartDiagram-FW5EYKEG-CEVfZ0d5.js → xychartDiagram-FW5EYKEG-WqIWQJdh.js} +1 -1
  224. package/dist/public/index.html +93 -92
  225. package/dist/public/uninstall.html +10 -10
  226. package/dist/{repair-launch-json-DcxpqtPk.mjs → repair-launch-json-B-4hsfw8.mjs} +2 -2
  227. package/dist/{repair-mcp-configs-CR0w_9a_.mjs → repair-mcp-configs--yGPDCBl.mjs} +2 -2
  228. package/dist/repair-skills-C40390Fl.mjs +1 -0
  229. package/dist/{repair-skills-SFM8UbHd.mjs → repair-skills-CH8FwF78.mjs} +2 -2
  230. package/dist/{server-lock-DKdlkhpB.mjs → server-lock-D6rSSnhg.mjs} +2 -2
  231. package/dist/server-lock-RCr-Pegf.mjs +1 -0
  232. package/dist/{sleep-DDnWCWup.mjs → sleep-IcuyYCzq.mjs} +24 -24
  233. package/dist/{src-BK8Vvk9Y.mjs → src-2StQCkyf.mjs} +123 -121
  234. package/dist/{src-D5b5YKY3.mjs → src-CwNOE4ri.mjs} +1 -1
  235. package/dist/src-DV_Dbu6a.mjs +3275 -0
  236. package/dist/{src-CBz1zxch.mjs → src-y0VSl78g.mjs} +6 -6
  237. package/dist/start-Bc5XMp-q.mjs +1 -0
  238. package/dist/{start-BgSe0IWK.mjs → start-D-Yu2Dgc.mjs} +3 -3
  239. package/dist/{write-project-skill-IitZHJK2.mjs → write-project-skill-W6wm8WGO.mjs} +4 -4
  240. package/package.json +5 -5
  241. package/dist/constants-CrnIZ43q.mjs +0 -2
  242. package/dist/fs-traced-CeWo_16n.mjs +0 -1
  243. package/dist/git-handle-CEBr8e47.mjs +0 -1
  244. package/dist/init-DUJ-mhxU.mjs +0 -1
  245. package/dist/loader-D4TBMIRP.mjs +0 -1
  246. package/dist/md-manager-R-9E_3qL.mjs +0 -2
  247. package/dist/preview-EXWt03kG.mjs +0 -1
  248. package/dist/public/assets/CodeMirrorPropInput-BQX8xzkZ.js +0 -3
  249. package/dist/public/assets/FeedbackForm-DyWcK0_u.js +0 -1
  250. package/dist/public/assets/GraphPanel-C0b5lyLq.js +0 -44
  251. package/dist/public/assets/PropertyPanel-DjnXiFVP.js +0 -2
  252. package/dist/public/assets/TerminalSessionsHost-fGKRakWG.js +0 -2
  253. package/dist/public/assets/ThreadView-CQui3mRB.js +0 -6
  254. package/dist/public/assets/architecture-TIHT7OUA-DhKVyAdC.js +0 -1
  255. package/dist/public/assets/auth-state-cache-WFzLfVsU.js +0 -11
  256. package/dist/public/assets/channel-D7XYjy4a.js +0 -1
  257. package/dist/public/assets/chunk-2Q5K7J3B-BpVQiBsM.js +0 -1
  258. package/dist/public/assets/chunk-VAUOI2AC-buA1NS7h.js +0 -1
  259. package/dist/public/assets/chunk-XXDRQBXY-Dpdm1nrz.js +0 -1
  260. package/dist/public/assets/classDiagram-OUVF2IWQ-BdRcUr99.js +0 -1
  261. package/dist/public/assets/classDiagram-v2-EOCWNBFH-4fffeoHu.js +0 -1
  262. package/dist/public/assets/cynefin-VYW2F7L2-BlrdxSfe.js +0 -1
  263. package/dist/public/assets/eventmodeling-45OFAUF4-D8s6Yevv.js +0 -1
  264. package/dist/public/assets/flowDiagram-23GEKE2U-hlKdkNzZ.js +0 -1
  265. package/dist/public/assets/gitGraph-TEB2WS4Q-B-5iqxxO.js +0 -1
  266. package/dist/public/assets/globals-BtCTpjIr.css +0 -1
  267. package/dist/public/assets/index-DuOqh37t.js +0 -2013
  268. package/dist/public/assets/info-DKCQHKI2-CkzkGEPY.js +0 -1
  269. package/dist/public/assets/mermaid-GHXKKRXX-WtDC9WMV.js +0 -1
  270. package/dist/public/assets/packet-7NZHBO7P-DDIvLOTX.js +0 -1
  271. package/dist/public/assets/pie-RZYD4A2V-DnssmCEa.js +0 -1
  272. package/dist/public/assets/radar-I7S5WNFK-0J5y2_MO.js +0 -1
  273. package/dist/public/assets/railroad-3IZDKUUU-BgsONsxl.js +0 -1
  274. package/dist/public/assets/railroad-abnf-AHOZXSZD-BhBo_9j9.js +0 -1
  275. package/dist/public/assets/railroad-ebnf-EBAXGLYW-B5mHA2IL.js +0 -1
  276. package/dist/public/assets/railroad-peg-LSFZ7HO6-BV4uZ4WL.js +0 -1
  277. package/dist/public/assets/skill-actions-DEa7Mqcd.js +0 -1
  278. package/dist/public/assets/stateDiagram-v2-6OUMAXLB-BCNHhMpC.js +0 -1
  279. package/dist/public/assets/swimlanesDiagram-G3AALYLV-hRuoLGg3.js +0 -8
  280. package/dist/public/assets/terminal-launch-events-7D-deCwp.js +0 -1
  281. package/dist/public/assets/treeView-QDETBFTQ-N2YNex2I.js +0 -1
  282. package/dist/public/assets/treemap-6X3UGDF4-DkzYKeau.js +0 -1
  283. package/dist/public/assets/typing-burst-detector-CaC_du54.js +0 -8
  284. package/dist/public/assets/use-activity-panel-CVU0EVdO.js +0 -1
  285. package/dist/public/assets/use-settings-route-FnSIe1ir.js +0 -1
  286. package/dist/public/assets/use-timeline-entry-diff-CF4QQ4Me.js +0 -6
  287. package/dist/public/assets/wardley-OPB4EBWU-OOiOMSoP.js +0 -1
  288. package/dist/repair-skills-Zy_JOsHR.mjs +0 -1
  289. package/dist/server-lock-Dp1Aw6AQ.mjs +0 -1
  290. package/dist/src-BIJtc8LA.mjs +0 -3275
  291. package/dist/start-D2rWspqr.mjs +0 -1
  292. /package/dist/public/assets/{ActivityPanelDiffView-B03Wzvap.js → ActivityPanelDiffView-DYFlG61N.js} +0 -0
  293. /package/dist/public/assets/{AppMenubar-Bisp0k8X.js → AppMenubar-DHWqgWXl.js} +0 -0
  294. /package/dist/public/assets/{ConfigSharingInfoTooltip-DMbsfWD9.js → ConfigSharingInfoTooltip-BMJ7SIjf.js} +0 -0
  295. /package/dist/public/assets/{__vite-browser-external-BckCY-VI.js → __vite-browser-external-z7jTWlYs.js} +0 -0
  296. /package/dist/public/assets/{agent-presence-CEfNcJUY.js → agent-presence-BdWbAeV-.js} +0 -0
  297. /package/dist/public/assets/{array-D9gZmznT.js → array-CC6md2n_.js} +0 -0
  298. /package/dist/public/assets/{badge-Dba4cvJR.js → badge-DXHoKHez.js} +0 -0
  299. /package/dist/public/assets/{chunk-KEIR6QF5-zkgbDrf9.js → chunk-KEIR6QF5-BppCe61B.js} +0 -0
  300. /package/dist/public/assets/{chunk-Y2CYZVJY-BAUBUeAF.js → chunk-Y2CYZVJY-CP7lNZai.js} +0 -0
  301. /package/dist/public/assets/{clike-ccBqxK3t.js → clike-BAopx-wt.js} +0 -0
  302. /package/dist/public/assets/{clipboard-adapter-Cxzkvc1d.js → clipboard-adapter-ZCy01ehf.js} +0 -0
  303. /package/dist/public/assets/{colors-BZ7r12jC.js → colors-QyrgP4ww.js} +0 -0
  304. /package/dist/public/assets/{config-context-gd3BC-iY.js → config-context-D3FvmHZm.js} +0 -0
  305. /package/dist/public/assets/{copilot-CjOGWDvv.js → copilot-BiqH8PgI.js} +0 -0
  306. /package/dist/public/assets/{cursor-B8rehP9c.js → cursor-BDHSyD-9.js} +0 -0
  307. /package/dist/public/assets/{cytoscape.esm-GtliGICm.js → cytoscape.esm-Ci36Fm6r.js} +0 -0
  308. /package/dist/public/assets/{defaultLocale-CqKPYlUZ.js → defaultLocale-ByXO85kN.js} +0 -0
  309. /package/dist/public/assets/{desktop-bridge-types--ZPzhkC9.js → desktop-bridge-types-DHaZbwZ0.js} +0 -0
  310. /package/dist/public/assets/{diff-oW0nWZgn.js → diff-KHO8LkSI.js} +0 -0
  311. /package/dist/public/assets/{dist-BLAMau9Z.js → dist-B8I5m7M1.js} +0 -0
  312. /package/dist/public/assets/{dist-q14fBS3T.js → dist-BCZq3DKc.js} +0 -0
  313. /package/dist/public/assets/{dist-zCmaEyrL.js → dist-Bpk5HQQh.js} +0 -0
  314. /package/dist/public/assets/{dist-B1Jbz0yl.js → dist-Cljnhi3D.js} +0 -0
  315. /package/dist/public/assets/{dist-DNwOaDhC.js → dist-D7mv9smG.js} +0 -0
  316. /package/dist/public/assets/{documents-fetch-CLL0O1of.js → documents-fetch-Db-Ikele.js} +0 -0
  317. /package/dist/public/assets/{external-link-T4Nj1gcG.js → external-link-Ct0_ujyY.js} +0 -0
  318. /package/dist/public/assets/{field-DVIFAnvR.js → field-BNyAQHKf.js} +0 -0
  319. /package/dist/public/assets/{file-tree-rename-validation-wADtjYEi.js → file-tree-rename-validation-DDA1ck2Y.js} +0 -0
  320. /package/dist/public/assets/{form-coxG-8Qw.js → form-gDsa08Xi.js} +0 -0
  321. /package/dist/public/assets/{format-CejNFduS.js → format-4tjAvLkN.js} +0 -0
  322. /package/dist/public/assets/{go-CCS4kWKN.js → go-7c8IMl4m.js} +0 -0
  323. /package/dist/public/assets/{init-CMTNTj66.js → init-CL1Yxhhi.js} +0 -0
  324. /package/dist/public/assets/{input-D0ZW0Opq.js → input-D4OPkja2.js} +0 -0
  325. /package/dist/public/assets/{isObject-Ho9jn-6g.js → isObject-5PVyZ800.js} +0 -0
  326. /package/dist/public/assets/{libesm-Db-3Gx3Z.js → libesm-WVpTb_tB.js} +0 -0
  327. /package/dist/public/assets/{lint-plugin-meta-DKTiO7RO.js → lint-plugin-meta-BoxMoaxR.js} +0 -0
  328. /package/dist/public/assets/{lru-string-cache-BZxOuxTi.js → lru-string-cache-7Y9kMeow.js} +0 -0
  329. /package/dist/public/assets/{lua-DgAwqJ0D.js → lua-DnREcbBQ.js} +0 -0
  330. /package/dist/public/assets/{mcp-consent-store-wvrClpLC.js → mcp-consent-store-CDAQY6Np.js} +0 -0
  331. /package/dist/public/assets/{min-BQPeeNfF.js → min-DVq-2erP.js} +0 -0
  332. /package/dist/public/assets/{minus-SecfYzeQ.js → minus-CI_HyT1V.js} +0 -0
  333. /package/dist/public/assets/{overlay-layers-y-dNUWSd.js → overlay-layers-Dhz8IqAf.js} +0 -0
  334. /package/dist/public/assets/{panel-right-open-B7ziq39V.js → panel-right-open-CWgBRlZa.js} +0 -0
  335. /package/dist/public/assets/{panzoom.es-CxTS7ZPP.js → panzoom.es-D0o6IaL6.js} +0 -0
  336. /package/dist/public/assets/{paperclip-CX7J_G-w.js → paperclip-FiPqbd6f.js} +0 -0
  337. /package/dist/public/assets/{parse-api-error-C_gwkKmG.js → parse-api-error-BtEL2kxi.js} +0 -0
  338. /package/dist/public/assets/{path-DoEWlp6O.js → path-BGTOauh6.js} +0 -0
  339. /package/dist/public/assets/{pdf-Da_O_GF5.js → pdf-DLVdEoR9.js} +0 -0
  340. /package/dist/public/assets/{pdf.worker-Pbs_-93C.js → pdf.worker-Cuhr1SjJ.js} +0 -0
  341. /package/dist/public/assets/{perl-DMwerdcj.js → perl-D6YK7dbe.js} +0 -0
  342. /package/dist/public/assets/{properties-Du1Kuwqc.js → properties-BPzWpIa7.js} +0 -0
  343. /package/dist/public/assets/{r-wSvpRg5h.js → r-tzVlUzeq.js} +0 -0
  344. /package/dist/public/assets/{refresh-cw-BfeWGCsv.js → refresh-cw-DClG_qgN.js} +0 -0
  345. /package/dist/public/assets/{rough.esm-esi5HKC4.js → rough.esm-kQd3CdGR.js} +0 -0
  346. /package/dist/public/assets/{ruby-DuM6hMQW.js → ruby-_eAC-08N.js} +0 -0
  347. /package/dist/public/assets/{share-metadata-rows-CbXHISQ4.js → share-metadata-rows-Ds3RIKZ4.js} +0 -0
  348. /package/dist/public/assets/{shell-BZ7mgeL0.js → shell-CRkrz4LQ.js} +0 -0
  349. /package/dist/public/assets/{skeleton-BG12Hmzn.js → skeleton-Mo1oLtEu.js} +0 -0
  350. /package/dist/public/assets/{sliders-horizontal-34K0eDW2.js → sliders-horizontal-BNv-Koqw.js} +0 -0
  351. /package/dist/public/assets/{sortable.esm-C565D25d.js → sortable.esm-_jt9EfAF.js} +0 -0
  352. /package/dist/public/assets/{sql-BXdRuz6d.js → sql-BtxU5QDI.js} +0 -0
  353. /package/dist/public/assets/{src-DNE52RZP.js → src-BJaEWo8x.js} +0 -0
  354. /package/dist/public/assets/{startup-marks-CqVzdU1y.js → startup-marks-CyxDWRgR.js} +0 -0
  355. /package/dist/public/assets/{stex-CniH6-Mv.js → stex-EWGki41Z.js} +0 -0
  356. /package/dist/public/assets/{swift-DZwxTp-L.js → swift-BmtuXdIg.js} +0 -0
  357. /package/dist/public/assets/{textarea-tdCJViKf.js → textarea-bScbzsdX.js} +0 -0
  358. /package/dist/public/assets/{thread-draft-staging-BuvCYJwg.js → thread-draft-staging-CKJIG41d.js} +0 -0
  359. /package/dist/public/assets/{timeline-diff-store-CYckprSS.js → timeline-diff-store-BwCud4Ug.js} +0 -0
  360. /package/dist/public/assets/{toml-C5KR4pi6.js → toml-yD0H4nkp.js} +0 -0
  361. /package/dist/public/assets/{trash-2-BUuL4OCw.js → trash-2-DE3a7L75.js} +0 -0
  362. /package/dist/public/assets/{triangle-alert-Clgvyc7B.js → triangle-alert-Bcc1P5yx.js} +0 -0
  363. /package/dist/public/assets/{use-installed-clis-UlK7P1aH.js → use-installed-clis-8r2iSkgN.js} +0 -0
  364. /package/dist/public/assets/{useLintConfigViewMode-DKPENttR.js → useLintConfigViewMode-CyzSEZ5z.js} +0 -0
  365. /package/dist/public/assets/{worktree-store-LSx9q9Ga.js → worktree-store-B-NxI13K.js} +0 -0
  366. /package/dist/public/assets/{wrench-BfoTvqT9.js → wrench-4e3jxe5l.js} +0 -0
  367. /package/dist/public/assets/{x-DVkpYo5d.js → x-Du5jsNHa.js} +0 -0
@@ -1,4 +1,4 @@
1
- import{n as e}from"./chunk-Y2CYZVJY-BAUBUeAF.js";import{t}from"./src--OxBHrEw.js";import{D as n,H as r,K as i,U as a,a as o,b as s,c,v as l,w as u,x as d,y as f}from"./chunk-WYO6CB5R-9yPqK9ib.js";import{i as p}from"./chunk-ICXQ74PX-CDyWyZCQ.js";import{t as m}from"./chunk-VAUOI2AC-buA1NS7h.js";import{t as h}from"./chunk-JWPE2WC7-BIGkO1cG.js";import{n as g}from"./mermaid-parser.core-CusxBOjy.js";var _=e((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=e((e,t,n)=>({x:_(t,`${n} evolution`),y:_(e,`${n} visibility`)}),`toCoordinates`),y=e(e=>{if(e){if(e===`+<>`)return`bidirectional`;if(e===`+<`)return`backward`;if(e===`+>`)return`forward`}},`getFlowFromPort`),b=e(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=e((e,t)=>{if(h(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:e(async e=>{let n=await g(`wardley`,e);t.debug(n);let r=S.parser?.yy;if(!r||typeof r.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(n,r)},`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{e(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 d()[`wardley-beta`]}e(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})}e(T,`addNode`);function E(e,t,n=!1,r,i){C.addLink({source:e,target:t,dashed:n,label:r,flow:i})}e(E,`addLink`);function D(e,t,n){C.addTrend({nodeId:e,targetX:t,targetY:n})}e(D,`addTrend`);function O(e,t,n){C.addAnnotation({number:e,coordinates:t,text:n})}e(O,`addAnnotation`);function k(e,t,n){C.addNote({text:e,x:t,y:n})}e(k,`addNote`);function A(e,t,n){C.addAccelerator({name:e,x:t,y:n})}e(A,`addAccelerator`);function j(e,t,n){C.addDeaccelerator({name:e,x:t,y:n})}e(j,`addDeaccelerator`);function M(e,t){C.setAnnotationsBox(e,t)}e(M,`setAnnotationsBox`);function N(e,t){C.setSize(e,t)}e(N,`setSize`);function P(e){C.startPipeline(e)}e(P,`startPipeline`);function F(e,t){C.addPipelineComponent(e,t)}e(F,`addPipelineComponent`);function I(e){C.setAxes(e)}e(I,`updateAxes`);function L(e){return C.getNode(e)}e(L,`getNode`);function R(e){return C.resolveNodeId(e)}e(R,`resolveNodeId`);function z(){return C.build()}e(z,`getWardleyData`);function B(){C.clear(),o()}e(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:a,getAccTitle:f,setDiagramTitle:i,getDiagramTitle:u,getAccDescription:l,setAccDescription:r},H=[`Genesis`,`Custom Built`,`Product`,`Commodity`],U=e(()=>{let{themeVariables:e}=d();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=e(()=>{let e=d()[`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:e((n,r,i,a)=>{t.debug(`Rendering Wardley map
1
+ import{n as e}from"./chunk-Y2CYZVJY-CP7lNZai.js";import{t}from"./src-CaBa9Z1L.js";import{D as n,H as r,K as i,U as a,a as o,b as s,c,v as l,w as u,x as d,y as f}from"./chunk-WYO6CB5R-C-c-Ja6D.js";import{i as p}from"./chunk-ICXQ74PX-BUnmDgqa.js";import{t as m}from"./chunk-VAUOI2AC-D9H5NlkH.js";import{t as h}from"./chunk-JWPE2WC7-BOwE-mq8.js";import{n as g}from"./mermaid-parser.core-DtiAO5KW.js";var _=e((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=e((e,t,n)=>({x:_(t,`${n} evolution`),y:_(e,`${n} visibility`)}),`toCoordinates`),y=e(e=>{if(e){if(e===`+<>`)return`bidirectional`;if(e===`+<`)return`backward`;if(e===`+>`)return`forward`}},`getFlowFromPort`),b=e(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=e((e,t)=>{if(h(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:e(async e=>{let n=await g(`wardley`,e);t.debug(n);let r=S.parser?.yy;if(!r||typeof r.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(n,r)},`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{e(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 d()[`wardley-beta`]}e(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})}e(T,`addNode`);function E(e,t,n=!1,r,i){C.addLink({source:e,target:t,dashed:n,label:r,flow:i})}e(E,`addLink`);function D(e,t,n){C.addTrend({nodeId:e,targetX:t,targetY:n})}e(D,`addTrend`);function O(e,t,n){C.addAnnotation({number:e,coordinates:t,text:n})}e(O,`addAnnotation`);function k(e,t,n){C.addNote({text:e,x:t,y:n})}e(k,`addNote`);function A(e,t,n){C.addAccelerator({name:e,x:t,y:n})}e(A,`addAccelerator`);function j(e,t,n){C.addDeaccelerator({name:e,x:t,y:n})}e(j,`addDeaccelerator`);function M(e,t){C.setAnnotationsBox(e,t)}e(M,`setAnnotationsBox`);function N(e,t){C.setSize(e,t)}e(N,`setSize`);function P(e){C.startPipeline(e)}e(P,`startPipeline`);function F(e,t){C.addPipelineComponent(e,t)}e(F,`addPipelineComponent`);function I(e){C.setAxes(e)}e(I,`updateAxes`);function L(e){return C.getNode(e)}e(L,`getNode`);function R(e){return C.resolveNodeId(e)}e(R,`resolveNodeId`);function z(){return C.build()}e(z,`getWardleyData`);function B(){C.clear(),o()}e(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:a,getAccTitle:f,setDiagramTitle:i,getDiagramTitle:u,getAccDescription:l,setAccDescription:r},H=[`Genesis`,`Custom Built`,`Product`,`Commodity`],U=e(()=>{let{themeVariables:e}=d();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=e(()=>{let e=d()[`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:e((n,r,i,a)=>{t.debug(`Rendering Wardley map
2
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=`
3
3
  M ${n} ${r-30/2}
4
4
  L ${n+60-20} ${r-30/2}
@@ -1 +1 @@
1
- import{o as e}from"./chunk-CYidjpOJ.js";import{t}from"./react-f2sANaYj.js";import{r as n}from"./dist-Nvb76hAm.js";import{t as r}from"./createLucideIcon-DAkhoPjT.js";import{Rn as i}from"./dist-Dhbvx6Ut.js";var a=r(`copy-plus`,[[`line`,{x1:`15`,x2:`15`,y1:`12`,y2:`18`,key:`1p7wdc`}],[`line`,{x1:`12`,x2:`18`,y1:`15`,y2:`15`,key:`1nscbv`}],[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),o=r(`pencil`,[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]),s=r(`sparkles`,[[`path`,{d:`M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z`,key:`1s2grr`}],[`path`,{d:`M20 2v4`,key:`1rf3ol`}],[`path`,{d:`M22 4h-4`,key:`gwowj6`}],[`circle`,{cx:`4`,cy:`20`,r:`2`,key:`6kqj1y`}]]),c=[`global`,`project`];function l(e){return{project:new Set(e.filter(e=>e.scope===`project`).map(e=>e.name)),global:new Set(e.filter(e=>e.scope===`global`).map(e=>e.name))}}var u=`open-knowledge-pack-`;function d(e){return e.startsWith(u)?e.slice(20):e}function f(){let{_:e}=n();return{project:e({id:`e0NrBM`}),global:e({id:`2GT3Hf`})}}function p(){let{_:e}=n();return{project:e({id:`HyvSqq`}),global:e({id:`C7XjNB`})}}var m=e(t(),1);function h(){let[e]=(0,m.useState)(g);return e}function g(){return i()!=null}function _(e,t,n){let r=n===`\\`?t.replaceAll(`/`,`\\`):t;return`${e.endsWith(n)?e.slice(0,-1):e}${n}${r}`}var v=/\.(md|mdx)$/i;function y(e){return v.test(e)?e:`${e}.md`}export{d as a,p as c,a as d,c as i,s as l,_ as n,l as o,h as r,f as s,y as t,o as u};
1
+ import{o as e}from"./chunk-CYidjpOJ.js";import{t}from"./react-f2sANaYj.js";import{r as n}from"./dist-Nvb76hAm.js";import{t as r}from"./createLucideIcon-DAkhoPjT.js";import{Un as i}from"./dist-Cv2LF2DL.js";var a=r(`copy-plus`,[[`line`,{x1:`15`,x2:`15`,y1:`12`,y2:`18`,key:`1p7wdc`}],[`line`,{x1:`12`,x2:`18`,y1:`15`,y2:`15`,key:`1nscbv`}],[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),o=r(`pencil`,[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]),s=r(`sparkles`,[[`path`,{d:`M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z`,key:`1s2grr`}],[`path`,{d:`M20 2v4`,key:`1rf3ol`}],[`path`,{d:`M22 4h-4`,key:`gwowj6`}],[`circle`,{cx:`4`,cy:`20`,r:`2`,key:`6kqj1y`}]]),c=[`global`,`project`];function l(e){return{project:new Set(e.filter(e=>e.scope===`project`).map(e=>e.name)),global:new Set(e.filter(e=>e.scope===`global`).map(e=>e.name))}}var u=`open-knowledge-pack-`;function d(e){return e.startsWith(u)?e.slice(20):e}function f(){let{_:e}=n();return{project:e({id:`e0NrBM`}),global:e({id:`2GT3Hf`})}}function p(){let{_:e}=n();return{project:e({id:`HyvSqq`}),global:e({id:`C7XjNB`})}}var m=e(t(),1);function h(){let[e]=(0,m.useState)(g);return e}function g(){return i()!=null}function _(e,t,n){let r=n===`\\`?t.replaceAll(`/`,`\\`):t;return`${e.endsWith(n)?e.slice(0,-1):e}${n}${r}`}var v=/\.(md|mdx)$/i;function y(e){return v.test(e)?e:`${e}.md`}export{d as a,p as c,a as d,c as i,s as l,_ as n,l as o,h as r,f as s,y as t,o as u};
@@ -1,4 +1,4 @@
1
- import{n as e}from"./chunk-Y2CYZVJY-BAUBUeAF.js";import{t}from"./src--OxBHrEw.js";import{D as n,H as r,K as i,U as a,a as o,b as s,c,f as l,v as u,w as d,y as f,z as p}from"./chunk-WYO6CB5R-9yPqK9ib.js";import{t as m}from"./linear-D6fTctUn.js";import{t as h}from"./ordinal-DnmHW-WD.js";import{t as g}from"./init-CMTNTj66.js";import{i as _}from"./chunk-ICXQ74PX-CDyWyZCQ.js";import{t as v}from"./line-KTG0S8eM.js";import{t as y}from"./chunk-VAUOI2AC-buA1NS7h.js";import"./chunk-HOUHSVGY-DTcG17JD.js";import{t as b}from"./chunk-Q4XR5HBZ-B32WTAPs.js";function x(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=Array(i);++r<i;)a[r]=e+r*n;return a}function S(){var e=h().unknown(void 0),t=e.domain,n=e.range,r=0,i=1,a,o,s=!1,c=0,l=0,u=.5;delete e.unknown;function d(){var e=t().length,d=i<r,f=d?i:r,p=d?r:i;a=(p-f)/Math.max(1,e-c+l*2),s&&(a=Math.floor(a)),f+=(p-f-a*(e-c))*u,o=a*(1-c),s&&(f=Math.round(f),o=Math.round(o));var m=x(e).map(function(e){return f+a*e});return n(d?m.reverse():m)}return e.domain=function(e){return arguments.length?(t(e),d()):t()},e.range=function(e){return arguments.length?([r,i]=e,r=+r,i=+i,d()):[r,i]},e.rangeRound=function(e){return[r,i]=e,r=+r,i=+i,s=!0,d()},e.bandwidth=function(){return o},e.step=function(){return a},e.round=function(e){return arguments.length?(s=!!e,d()):s},e.padding=function(e){return arguments.length?(c=Math.min(1,l=+e),d()):c},e.paddingInner=function(e){return arguments.length?(c=Math.min(1,e),d()):c},e.paddingOuter=function(e){return arguments.length?(l=+e,d()):l},e.align=function(e){return arguments.length?(u=Math.max(0,Math.min(1,e)),d()):u},e.copy=function(){return S(t(),[r,i]).round(s).paddingInner(c).paddingOuter(l).align(u)},g.apply(d(),arguments)}var C=(function(){var t=e(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,10,12,14,16,18,19,21,23],r=[2,6],i=[1,3],a=[1,5],o=[1,6],s=[1,7],c=[1,5,10,12,14,16,18,19,21,23,36,37,38],l=[1,25],u=[1,26],d=[1,28],f=[1,29],p=[1,30],m=[1,31],h=[1,32],g=[1,33],_=[1,34],v=[1,35],y=[1,36],b=[1,37],x=[1,43],S=[1,42],C=[1,47],w=[1,50],T=[1,10,12,14,16,18,19,21,23,36,37,38],E=[1,10,12,14,16,18,19,21,23,24,26,28,29,36,37,38],D=[1,10,12,14,16,18,19,21,23,24,26,28,29,36,37,38,42,43,44,45,46,47,48,49,50,51],O=[1,65],k=[26,28],A={trace:e(function(){},`trace`),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,dataPoints:25,SQUARE_BRACES_END:26,dataPoint:27,COMMA:28,NUMBER_WITH_DECIMAL:29,STR:30,xAxisData:31,bandData:32,ARROW_DELIMITER:33,commaSeparatedTexts:34,yAxisData:35,NEWLINE:36,SEMI:37,EOF:38,alphaNum:39,MD_STR:40,alphaNumToken:41,AMP:42,NUM:43,ALPHA:44,PLUS:45,EQUALS:46,MULT:47,DOT:48,BRKT:49,MINUS:50,UNDERSCORE:51,$accept:0,$end:1},terminals_:{2:`error`,5:`XYCHART`,8:`CHART_ORIENTATION`,10:`title`,12:`X_AXIS`,14:`Y_AXIS`,16:`LINE`,18:`BAR`,19:`acc_title`,20:`acc_title_value`,21:`acc_descr`,22:`acc_descr_value`,23:`acc_descr_multiline_value`,24:`SQUARE_BRACES_START`,26:`SQUARE_BRACES_END`,28:`COMMA`,29:`NUMBER_WITH_DECIMAL`,30:`STR`,33:`ARROW_DELIMITER`,36:`NEWLINE`,37:`SEMI`,38:`EOF`,40:`MD_STR`,42:`AMP`,43:`NUM`,44:`ALPHA`,45:`PLUS`,46:`EQUALS`,47:`MULT`,48:`DOT`,49:`BRKT`,50:`MINUS`,51:`UNDERSCORE`},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[27,2],[27,1],[13,1],[13,2],[13,1],[31,1],[31,3],[32,3],[34,3],[34,1],[15,1],[15,2],[15,1],[35,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[39,1],[39,2],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1]],performAction:e(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 5:r.setOrientation(a[s]);break;case 9:r.setDiagramTitle(a[s].text.trim());break;case 12:r.setLineData({text:``,type:`text`},a[s]);break;case 13:r.setLineData(a[s-1],a[s]);break;case 14:r.setBarData({text:``,type:`text`},a[s]);break;case 15:r.setBarData(a[s-1],a[s]);break;case 16:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 17:case 18:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 19:this.$=a[s-1];break;case 20:case 30:this.$=[a[s-2],...a[s]];break;case 21:case 31:this.$=[a[s]];break;case 22:this.$={value:Number(a[s-1]),label:a[s]};break;case 23:this.$={value:Number(a[s]),label:``};break;case 24:r.setXAxisTitle(a[s]);break;case 25:r.setXAxisTitle(a[s-1]);break;case 26:r.setXAxisTitle({type:`text`,text:``});break;case 27:r.setXAxisBand(a[s]);break;case 28:r.setXAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 29:this.$=a[s-1];break;case 32:r.setYAxisTitle(a[s]);break;case 33:r.setYAxisTitle(a[s-1]);break;case 34:r.setYAxisTitle({type:`text`,text:``});break;case 35:r.setYAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 39:this.$={text:a[s],type:`text`};break;case 40:this.$={text:a[s],type:`text`};break;case 41:this.$={text:a[s],type:`markdown`};break;case 42:this.$=a[s];break;case 43:this.$=a[s-1]+``+a[s];break}},`anonymous`),table:[t(n,r,{3:1,4:2,7:4,5:i,36:a,37:o,38:s}),{1:[3]},t(n,r,{4:2,7:4,3:8,5:i,36:a,37:o,38:s}),t(n,r,{4:2,7:4,6:9,3:10,5:i,8:[1,11],36:a,37:o,38:s}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},t(c,[2,36]),t(c,[2,37]),t(c,[2,38]),{1:[2,1]},t(n,r,{4:2,7:4,3:21,5:i,36:a,37:o,38:s}),{1:[2,3]},t(c,[2,5]),t(n,[2,7],{4:22,36:a,37:o,38:s}),{11:23,30:l,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:39,13:38,24:x,29:S,30:l,31:40,32:41,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:45,15:44,29:C,30:l,35:46,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:49,17:48,24:w,30:l,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:52,17:51,24:w,30:l,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{20:[1,53]},{22:[1,54]},t(T,[2,18]),{1:[2,2]},t(T,[2,8]),t(T,[2,9]),t(E,[2,39],{41:55,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b}),t(E,[2,40]),t(E,[2,41]),t(D,[2,42]),t(D,[2,44]),t(D,[2,45]),t(D,[2,46]),t(D,[2,47]),t(D,[2,48]),t(D,[2,49]),t(D,[2,50]),t(D,[2,51]),t(D,[2,52]),t(D,[2,53]),t(T,[2,10]),t(T,[2,24],{32:41,31:56,24:x,29:S}),t(T,[2,26]),t(T,[2,27]),{33:[1,57]},{11:59,30:l,34:58,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},t(T,[2,11]),t(T,[2,32],{35:60,29:C}),t(T,[2,34]),{33:[1,61]},t(T,[2,12]),{17:62,24:w},{25:63,27:64,29:O},t(T,[2,14]),{17:66,24:w},t(T,[2,16]),t(T,[2,17]),t(D,[2,43]),t(T,[2,25]),{29:[1,67]},{26:[1,68]},{26:[2,31],28:[1,69]},t(T,[2,33]),{29:[1,70]},t(T,[2,13]),{26:[1,71]},{26:[2,21],28:[1,72]},t(k,[2,23],{30:[1,73]}),t(T,[2,15]),t(T,[2,28]),t(T,[2,29]),{11:59,30:l,34:74,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},t(T,[2,35]),t(T,[2,19]),{25:75,27:64,29:O},t(k,[2,22]),{26:[2,30]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],74:[2,30],75:[2,20]},parseError:e(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:e(function(t){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=o.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(t,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;o.push(v);var y=h.options&&h.options.ranges;typeof g.yy.parseError==`function`?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}e(b,`popStack`);function x(){var e=i.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}e(x,`lex`);for(var S,C,w,T,E,D={},O,k,A,j;;){if(w=r[r.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var M=``;for(O in j=[],s[w])this.terminals_[O]&&O>f&&j.push(`'`+this.terminals_[O]+`'`);M=h.showPosition?`Parse error on line `+(l+1)+`:
1
+ import{n as e}from"./chunk-Y2CYZVJY-CP7lNZai.js";import{t}from"./src-CaBa9Z1L.js";import{D as n,H as r,K as i,U as a,a as o,b as s,c,f as l,v as u,w as d,y as f,z as p}from"./chunk-WYO6CB5R-C-c-Ja6D.js";import{t as m}from"./linear-DY7zcaob.js";import{t as h}from"./ordinal-Dj8tTCMd.js";import{t as g}from"./init-CL1Yxhhi.js";import{i as _}from"./chunk-ICXQ74PX-BUnmDgqa.js";import{t as v}from"./line-PfwSO0Y4.js";import{t as y}from"./chunk-VAUOI2AC-D9H5NlkH.js";import"./chunk-HOUHSVGY-D0096-9K.js";import{t as b}from"./chunk-Q4XR5HBZ-CjNiHUWo.js";function x(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=Array(i);++r<i;)a[r]=e+r*n;return a}function S(){var e=h().unknown(void 0),t=e.domain,n=e.range,r=0,i=1,a,o,s=!1,c=0,l=0,u=.5;delete e.unknown;function d(){var e=t().length,d=i<r,f=d?i:r,p=d?r:i;a=(p-f)/Math.max(1,e-c+l*2),s&&(a=Math.floor(a)),f+=(p-f-a*(e-c))*u,o=a*(1-c),s&&(f=Math.round(f),o=Math.round(o));var m=x(e).map(function(e){return f+a*e});return n(d?m.reverse():m)}return e.domain=function(e){return arguments.length?(t(e),d()):t()},e.range=function(e){return arguments.length?([r,i]=e,r=+r,i=+i,d()):[r,i]},e.rangeRound=function(e){return[r,i]=e,r=+r,i=+i,s=!0,d()},e.bandwidth=function(){return o},e.step=function(){return a},e.round=function(e){return arguments.length?(s=!!e,d()):s},e.padding=function(e){return arguments.length?(c=Math.min(1,l=+e),d()):c},e.paddingInner=function(e){return arguments.length?(c=Math.min(1,e),d()):c},e.paddingOuter=function(e){return arguments.length?(l=+e,d()):l},e.align=function(e){return arguments.length?(u=Math.max(0,Math.min(1,e)),d()):u},e.copy=function(){return S(t(),[r,i]).round(s).paddingInner(c).paddingOuter(l).align(u)},g.apply(d(),arguments)}var C=(function(){var t=e(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,10,12,14,16,18,19,21,23],r=[2,6],i=[1,3],a=[1,5],o=[1,6],s=[1,7],c=[1,5,10,12,14,16,18,19,21,23,36,37,38],l=[1,25],u=[1,26],d=[1,28],f=[1,29],p=[1,30],m=[1,31],h=[1,32],g=[1,33],_=[1,34],v=[1,35],y=[1,36],b=[1,37],x=[1,43],S=[1,42],C=[1,47],w=[1,50],T=[1,10,12,14,16,18,19,21,23,36,37,38],E=[1,10,12,14,16,18,19,21,23,24,26,28,29,36,37,38],D=[1,10,12,14,16,18,19,21,23,24,26,28,29,36,37,38,42,43,44,45,46,47,48,49,50,51],O=[1,65],k=[26,28],A={trace:e(function(){},`trace`),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,dataPoints:25,SQUARE_BRACES_END:26,dataPoint:27,COMMA:28,NUMBER_WITH_DECIMAL:29,STR:30,xAxisData:31,bandData:32,ARROW_DELIMITER:33,commaSeparatedTexts:34,yAxisData:35,NEWLINE:36,SEMI:37,EOF:38,alphaNum:39,MD_STR:40,alphaNumToken:41,AMP:42,NUM:43,ALPHA:44,PLUS:45,EQUALS:46,MULT:47,DOT:48,BRKT:49,MINUS:50,UNDERSCORE:51,$accept:0,$end:1},terminals_:{2:`error`,5:`XYCHART`,8:`CHART_ORIENTATION`,10:`title`,12:`X_AXIS`,14:`Y_AXIS`,16:`LINE`,18:`BAR`,19:`acc_title`,20:`acc_title_value`,21:`acc_descr`,22:`acc_descr_value`,23:`acc_descr_multiline_value`,24:`SQUARE_BRACES_START`,26:`SQUARE_BRACES_END`,28:`COMMA`,29:`NUMBER_WITH_DECIMAL`,30:`STR`,33:`ARROW_DELIMITER`,36:`NEWLINE`,37:`SEMI`,38:`EOF`,40:`MD_STR`,42:`AMP`,43:`NUM`,44:`ALPHA`,45:`PLUS`,46:`EQUALS`,47:`MULT`,48:`DOT`,49:`BRKT`,50:`MINUS`,51:`UNDERSCORE`},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[27,2],[27,1],[13,1],[13,2],[13,1],[31,1],[31,3],[32,3],[34,3],[34,1],[15,1],[15,2],[15,1],[35,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[39,1],[39,2],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1]],performAction:e(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 5:r.setOrientation(a[s]);break;case 9:r.setDiagramTitle(a[s].text.trim());break;case 12:r.setLineData({text:``,type:`text`},a[s]);break;case 13:r.setLineData(a[s-1],a[s]);break;case 14:r.setBarData({text:``,type:`text`},a[s]);break;case 15:r.setBarData(a[s-1],a[s]);break;case 16:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 17:case 18:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 19:this.$=a[s-1];break;case 20:case 30:this.$=[a[s-2],...a[s]];break;case 21:case 31:this.$=[a[s]];break;case 22:this.$={value:Number(a[s-1]),label:a[s]};break;case 23:this.$={value:Number(a[s]),label:``};break;case 24:r.setXAxisTitle(a[s]);break;case 25:r.setXAxisTitle(a[s-1]);break;case 26:r.setXAxisTitle({type:`text`,text:``});break;case 27:r.setXAxisBand(a[s]);break;case 28:r.setXAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 29:this.$=a[s-1];break;case 32:r.setYAxisTitle(a[s]);break;case 33:r.setYAxisTitle(a[s-1]);break;case 34:r.setYAxisTitle({type:`text`,text:``});break;case 35:r.setYAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 39:this.$={text:a[s],type:`text`};break;case 40:this.$={text:a[s],type:`text`};break;case 41:this.$={text:a[s],type:`markdown`};break;case 42:this.$=a[s];break;case 43:this.$=a[s-1]+``+a[s];break}},`anonymous`),table:[t(n,r,{3:1,4:2,7:4,5:i,36:a,37:o,38:s}),{1:[3]},t(n,r,{4:2,7:4,3:8,5:i,36:a,37:o,38:s}),t(n,r,{4:2,7:4,6:9,3:10,5:i,8:[1,11],36:a,37:o,38:s}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},t(c,[2,36]),t(c,[2,37]),t(c,[2,38]),{1:[2,1]},t(n,r,{4:2,7:4,3:21,5:i,36:a,37:o,38:s}),{1:[2,3]},t(c,[2,5]),t(n,[2,7],{4:22,36:a,37:o,38:s}),{11:23,30:l,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:39,13:38,24:x,29:S,30:l,31:40,32:41,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:45,15:44,29:C,30:l,35:46,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:49,17:48,24:w,30:l,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:52,17:51,24:w,30:l,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{20:[1,53]},{22:[1,54]},t(T,[2,18]),{1:[2,2]},t(T,[2,8]),t(T,[2,9]),t(E,[2,39],{41:55,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b}),t(E,[2,40]),t(E,[2,41]),t(D,[2,42]),t(D,[2,44]),t(D,[2,45]),t(D,[2,46]),t(D,[2,47]),t(D,[2,48]),t(D,[2,49]),t(D,[2,50]),t(D,[2,51]),t(D,[2,52]),t(D,[2,53]),t(T,[2,10]),t(T,[2,24],{32:41,31:56,24:x,29:S}),t(T,[2,26]),t(T,[2,27]),{33:[1,57]},{11:59,30:l,34:58,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},t(T,[2,11]),t(T,[2,32],{35:60,29:C}),t(T,[2,34]),{33:[1,61]},t(T,[2,12]),{17:62,24:w},{25:63,27:64,29:O},t(T,[2,14]),{17:66,24:w},t(T,[2,16]),t(T,[2,17]),t(D,[2,43]),t(T,[2,25]),{29:[1,67]},{26:[1,68]},{26:[2,31],28:[1,69]},t(T,[2,33]),{29:[1,70]},t(T,[2,13]),{26:[1,71]},{26:[2,21],28:[1,72]},t(k,[2,23],{30:[1,73]}),t(T,[2,15]),t(T,[2,28]),t(T,[2,29]),{11:59,30:l,34:74,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},t(T,[2,35]),t(T,[2,19]),{25:75,27:64,29:O},t(k,[2,22]),{26:[2,30]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],74:[2,30],75:[2,20]},parseError:e(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:e(function(t){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=o.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(t,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;o.push(v);var y=h.options&&h.options.ranges;typeof g.yy.parseError==`function`?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}e(b,`popStack`);function x(){var e=i.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}e(x,`lex`);for(var S,C,w,T,E,D={},O,k,A,j;;){if(w=r[r.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var M=``;for(O in j=[],s[w])this.terminals_[O]&&O>f&&j.push(`'`+this.terminals_[O]+`'`);M=h.showPosition?`Parse error on line `+(l+1)+`:
2
2
  `+h.showPosition()+`
3
3
  Expecting `+j.join(`, `)+`, got '`+(this.terminals_[S]||S)+`'`:`Parse error on line `+(l+1)+`: Unexpected `+(S==p?`end of input`:`'`+(this.terminals_[S]||S)+`'`),this.parseError(M,{text:h.match,token:this.terminals_[S]||S,line:h.yylineno,loc:v,expected:j})}if(T[0]instanceof Array&&T.length>1)throw Error(`Parse Error: multiple actions possible at state: `+w+`, token: `+S);switch(T[0]){case 1:r.push(S),a.push(h.yytext),o.push(h.yylloc),r.push(T[1]),S=null,C?(S=C,C=null):(u=h.yyleng,c=h.yytext,l=h.yylineno,v=h.yylloc,d>0&&d--);break;case 2:if(k=this.productions_[T[1]][1],D.$=a[a.length-k],D._$={first_line:o[o.length-(k||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(k||1)].first_column,last_column:o[o.length-1].last_column},y&&(D._$.range=[o[o.length-(k||1)].range[0],o[o.length-1].range[1]]),E=this.performAction.apply(D,[c,u,l,g.yy,T[1],a,o].concat(m)),E!==void 0)return E;k&&(r=r.slice(0,-1*k*2),a=a.slice(0,-1*k),o=o.slice(0,-1*k)),r.push(this.productions_[T[1]][0]),a.push(D.$),o.push(D._$),A=s[r[r.length-2]][r[r.length-1]],r.push(A);break;case 3:return!0}}return!0},`parse`)};A.lexer=(function(){return{EOF:1,parseError:e(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},`parseError`),setInput:e(function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match=``,this.conditionStack=[`INITIAL`],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},`setInput`),input:e(function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},`input`),unput:e(function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},`unput`),more:e(function(){return this._more=!0,this},`more`),reject:e(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError(`Lexical error on line `+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:``,token:null,line:this.yylineno});return this},`reject`),less:e(function(e){this.unput(this.match.slice(e))},`less`),pastInput:e(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?`...`:``)+e.substr(-20).replace(/\n/g,``)},`pastInput`),upcomingInput:e(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?`...`:``)).replace(/\n/g,``)},`upcomingInput`),showPosition:e(function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
@@ -58,35 +58,35 @@
58
58
  -->
59
59
  <script>(() => { let t = 'system'; try { const r = localStorage.getItem('ok-theme-v1'); if (r === 'light' || r === 'dark' || r === 'system') t = r; } catch {} let ct = null; try { const c = localStorage.getItem('ok-color-theme-v1'); if (c && ['dracula', 'catppuccin-frappe', 'catppuccin-latte', 'monokai', 'gruvbox', 'solarized', 'custom'].includes(c)) ct = c; } catch {} let dark = t === 'dark'; if (t === 'system') { try { dark = window.matchMedia('(prefers-color-scheme: dark)').matches; } catch {} } let customCss = null; if (ct === 'custom') { try { const raw = localStorage.getItem('ok-custom-theme-v1'); if (raw) { const o = JSON.parse(raw); if (o?.css) { customCss = o.css; dark = !!o.dark; } } } catch {} if (!customCss) ct = null; } else if (ct) { dark = !['catppuccin-latte'].includes(ct); } if (dark) document.documentElement.classList.add('dark'); if (ct) document.documentElement.setAttribute('data-color-theme', ct); if (customCss) { const s = document.createElement('style'); s.id = 'ok-custom-theme'; s.textContent = customCss; document.head.appendChild(s); } if (window.okDesktop) { document.documentElement.classList.add('electron-mode'); document.documentElement.classList.add(`electron-platform-${window.okDesktop.platform}`); } })();</script>
60
60
  <style>html { background-color: #fafafa } html.dark { background-color: #171717 }</style>
61
- <script type="module" crossorigin src="./assets/index-DuOqh37t.js"></script>
61
+ <script type="module" crossorigin src="./assets/index-BnCzVIZM.js"></script>
62
62
  <link rel="modulepreload" crossorigin href="./assets/chunk-CYidjpOJ.js">
63
- <link rel="modulepreload" crossorigin href="./assets/dist-q14fBS3T.js">
63
+ <link rel="modulepreload" crossorigin href="./assets/dist-BCZq3DKc.js">
64
64
  <link rel="modulepreload" crossorigin href="./assets/react-f2sANaYj.js">
65
65
  <link rel="modulepreload" crossorigin href="./assets/react-dom-DPxgxlDT.js">
66
- <link rel="modulepreload" crossorigin href="./assets/globals-C7y6kfQ9.js">
66
+ <link rel="modulepreload" crossorigin href="./assets/globals-CdX3jOLC.js">
67
67
  <link rel="modulepreload" crossorigin href="./assets/preload-helper-Chd9yIcd.js">
68
68
  <link rel="modulepreload" crossorigin href="./assets/w3c-keyname-DtWCia6R.js">
69
- <link rel="modulepreload" crossorigin href="./assets/dist-DNwOaDhC.js">
70
- <link rel="modulepreload" crossorigin href="./assets/esm-HV7Pxfbn.js">
71
- <link rel="modulepreload" crossorigin href="./assets/dist-CiPafPDy.js">
72
- <link rel="modulepreload" crossorigin href="./assets/dist-ioWbCXab.js">
73
- <link rel="modulepreload" crossorigin href="./assets/dist-CP0xcBf_.js">
74
- <link rel="modulepreload" crossorigin href="./assets/dist-BObw0jPE.js">
75
- <link rel="modulepreload" crossorigin href="./assets/dist-DifRwKW-.js">
76
- <link rel="modulepreload" crossorigin href="./assets/dist-DGzvBIzr.js">
77
- <link rel="modulepreload" crossorigin href="./assets/sortable.esm-C565D25d.js">
69
+ <link rel="modulepreload" crossorigin href="./assets/dist-D7mv9smG.js">
70
+ <link rel="modulepreload" crossorigin href="./assets/esm-QF0-_nlB.js">
71
+ <link rel="modulepreload" crossorigin href="./assets/dist-DdFyq-YY.js">
72
+ <link rel="modulepreload" crossorigin href="./assets/dist-P9LB04An.js">
73
+ <link rel="modulepreload" crossorigin href="./assets/dist-CxGvJvCN.js">
74
+ <link rel="modulepreload" crossorigin href="./assets/dist-B25wDFyk.js">
75
+ <link rel="modulepreload" crossorigin href="./assets/dist-DPWWCZ4h.js">
76
+ <link rel="modulepreload" crossorigin href="./assets/dist-C4Kl8QaT.js">
77
+ <link rel="modulepreload" crossorigin href="./assets/sortable.esm-_jt9EfAF.js">
78
78
  <link rel="modulepreload" crossorigin href="./assets/floating-ui.dom-DxCSXcm6.js">
79
79
  <link rel="modulepreload" crossorigin href="./assets/trace-api-DHyWZzIa.js">
80
80
  <link rel="modulepreload" crossorigin href="./assets/lib-Iu39CNZE.js">
81
81
  <link rel="modulepreload" crossorigin href="./assets/markdownit-YwcN3EvW.js">
82
- <link rel="modulepreload" crossorigin href="./assets/dist-Dhbvx6Ut.js">
82
+ <link rel="modulepreload" crossorigin href="./assets/dist-Cv2LF2DL.js">
83
83
  <link rel="modulepreload" crossorigin href="./assets/dist-PQ5KMVDh.js">
84
84
  <link rel="modulepreload" crossorigin href="./assets/compiler-runtime-BfE3aGVn.js">
85
85
  <link rel="modulepreload" crossorigin href="./assets/jsx-runtime-BUgB2tll.js">
86
- <link rel="modulepreload" crossorigin href="./assets/client-version-BCgL1GiY.js">
87
- <link rel="modulepreload" crossorigin href="./assets/use-apply-config-color-theme-VdlJaZ0G.js">
88
- <link rel="modulepreload" crossorigin href="./assets/config-context-gd3BC-iY.js">
89
- <link rel="modulepreload" crossorigin href="./assets/config-provider-CJmVSUcR.js">
86
+ <link rel="modulepreload" crossorigin href="./assets/client-version-g_nEG2h2.js">
87
+ <link rel="modulepreload" crossorigin href="./assets/use-apply-config-color-theme-zM7Oux5u.js">
88
+ <link rel="modulepreload" crossorigin href="./assets/config-context-D3FvmHZm.js">
89
+ <link rel="modulepreload" crossorigin href="./assets/config-provider-CedEU5Ch.js">
90
90
  <link rel="modulepreload" crossorigin href="./assets/dist-Nvb76hAm.js">
91
91
  <link rel="modulepreload" crossorigin href="./assets/bundle-mjs-SHeFpKGC.js">
92
92
  <link rel="modulepreload" crossorigin href="./assets/createLucideIcon-DAkhoPjT.js">
@@ -101,12 +101,12 @@
101
101
  <link rel="modulepreload" crossorigin href="./assets/check-GqWaoTdV.js">
102
102
  <link rel="modulepreload" crossorigin href="./assets/chevron-down-Bx9f3tW-.js">
103
103
  <link rel="modulepreload" crossorigin href="./assets/switch-DYic2V-1.js">
104
- <link rel="modulepreload" crossorigin href="./assets/minus-SecfYzeQ.js">
105
- <link rel="modulepreload" crossorigin href="./assets/checkbox-DY-vIhnZ.js">
104
+ <link rel="modulepreload" crossorigin href="./assets/minus-CI_HyT1V.js">
105
+ <link rel="modulepreload" crossorigin href="./assets/checkbox-BkZH9Oy1.js">
106
106
  <link rel="modulepreload" crossorigin href="./assets/collapsible-B1mS1n9y.js">
107
107
  <link rel="modulepreload" crossorigin href="./assets/button-Gol9BgNB.js">
108
- <link rel="modulepreload" crossorigin href="./assets/x-DVkpYo5d.js">
109
- <link rel="modulepreload" crossorigin href="./assets/dialog-TkFkuYVg.js">
108
+ <link rel="modulepreload" crossorigin href="./assets/x-Du5jsNHa.js">
109
+ <link rel="modulepreload" crossorigin href="./assets/dialog-6-bc7qPg.js">
110
110
  <link rel="modulepreload" crossorigin href="./assets/dist-DAU1MdSo.js">
111
111
  <link rel="modulepreload" crossorigin href="./assets/dist-BJa2CfR3.js">
112
112
  <link rel="modulepreload" crossorigin href="./assets/chevron-right-C8oTR6gu.js">
@@ -117,92 +117,93 @@
117
117
  <link rel="modulepreload" crossorigin href="./assets/separator-DExEeoYE.js">
118
118
  <link rel="modulepreload" crossorigin href="./assets/toggle-group-CjXmmTGy.js">
119
119
  <link rel="modulepreload" crossorigin href="./assets/useQuery-ZeEDLtxh.js">
120
- <link rel="modulepreload" crossorigin href="./assets/dist-BR00oFrA2.js">
121
- <link rel="modulepreload" crossorigin href="./assets/dist-C7rVxfRB.js">
122
- <link rel="modulepreload" crossorigin href="./assets/stex-CniH6-Mv.js">
120
+ <link rel="modulepreload" crossorigin href="./assets/dist-CsRIthsw2.js">
121
+ <link rel="modulepreload" crossorigin href="./assets/dist-BMMI5Kdg.js">
122
+ <link rel="modulepreload" crossorigin href="./assets/stex-EWGki41Z.js">
123
123
  <link rel="modulepreload" crossorigin href="./assets/propagation-api-OHat7V1z.js">
124
124
  <link rel="modulepreload" crossorigin href="./assets/folder-open-wLd69QUc.js">
125
- <link rel="modulepreload" crossorigin href="./assets/trash-2-BUuL4OCw.js">
126
- <link rel="modulepreload" crossorigin href="./assets/triangle-alert-Clgvyc7B.js">
127
- <link rel="modulepreload" crossorigin href="./assets/file-tree-utils-DnNGot8D.js">
128
- <link rel="modulepreload" crossorigin href="./assets/doc-hash-BzYXjFJp.js">
129
- <link rel="modulepreload" crossorigin href="./assets/navigation-targets-CILnJhFW.js">
130
- <link rel="modulepreload" crossorigin href="./assets/external-link-T4Nj1gcG.js">
131
- <link rel="modulepreload" crossorigin href="./assets/documents-fetch-CLL0O1of.js">
132
- <link rel="modulepreload" crossorigin href="./assets/CodeMirrorPropInput-BQX8xzkZ.js">
125
+ <link rel="modulepreload" crossorigin href="./assets/trash-2-DE3a7L75.js">
126
+ <link rel="modulepreload" crossorigin href="./assets/triangle-alert-Bcc1P5yx.js">
127
+ <link rel="modulepreload" crossorigin href="./assets/file-tree-utils-Cy6smqXE.js">
128
+ <link rel="modulepreload" crossorigin href="./assets/doc-hash-unBeSU8C.js">
129
+ <link rel="modulepreload" crossorigin href="./assets/navigation-targets-CRrgSRY3.js">
130
+ <link rel="modulepreload" crossorigin href="./assets/external-link-Ct0_ujyY.js">
131
+ <link rel="modulepreload" crossorigin href="./assets/documents-fetch-Db-Ikele.js">
132
+ <link rel="modulepreload" crossorigin href="./assets/CodeMirrorPropInput-CyIlgGaP.js">
133
133
  <link rel="modulepreload" crossorigin href="./assets/git-branch-CMJAiYLz.js">
134
134
  <link rel="modulepreload" crossorigin href="./assets/copy-9EDFYcyR.js">
135
135
  <link rel="modulepreload" crossorigin href="./assets/CopyButton-1Q6Wnnjb.js">
136
- <link rel="modulepreload" crossorigin href="./assets/documents-events-NL4RG6fU.js">
137
- <link rel="modulepreload" crossorigin href="./assets/parse-api-error-C_gwkKmG.js">
138
- <link rel="modulepreload" crossorigin href="./assets/startup-marks-CqVzdU1y.js">
139
- <link rel="modulepreload" crossorigin href="./assets/prop-types-BX5rHy8u.js">
140
- <link rel="modulepreload" crossorigin href="./assets/workspace-paths-DSoqUSNl.js">
136
+ <link rel="modulepreload" crossorigin href="./assets/documents-events-DJXnk07Z.js">
137
+ <link rel="modulepreload" crossorigin href="./assets/parse-api-error-BtEL2kxi.js">
138
+ <link rel="modulepreload" crossorigin href="./assets/startup-marks-CyxDWRgR.js">
139
+ <link rel="modulepreload" crossorigin href="./assets/prop-types-DDnDOUmp.js">
140
+ <link rel="modulepreload" crossorigin href="./assets/workspace-paths-DGKkpMQ9.js">
141
141
  <link rel="modulepreload" crossorigin href="./assets/eye-CASw1HTi.js">
142
142
  <link rel="modulepreload" crossorigin href="./assets/hash-DNKDqZ18.js">
143
143
  <link rel="modulepreload" crossorigin href="./assets/info-yKMseklR.js">
144
144
  <link rel="modulepreload" crossorigin href="./assets/loader-circle-Cg5SU7AZ.js">
145
- <link rel="modulepreload" crossorigin href="./assets/paperclip-CX7J_G-w.js">
146
- <link rel="modulepreload" crossorigin href="./assets/sliders-horizontal-34K0eDW2.js">
147
- <link rel="modulepreload" crossorigin href="./assets/dist-BLAMau9Z.js">
148
- <link rel="modulepreload" crossorigin href="./assets/file-tree-rename-validation-wADtjYEi.js">
149
- <link rel="modulepreload" crossorigin href="./assets/badge-Dba4cvJR.js">
150
- <link rel="modulepreload" crossorigin href="./assets/input-D0ZW0Opq.js">
151
- <link rel="modulepreload" crossorigin href="./assets/use-collab-url-DU2XMK58.js">
152
- <link rel="modulepreload" crossorigin href="./assets/DocumentContext-Bwk1Rcb4.js">
153
- <link rel="modulepreload" crossorigin href="./assets/dist-ChSSPf9y.js">
154
- <link rel="modulepreload" crossorigin href="./assets/dist-CslAqn54.js">
155
- <link rel="modulepreload" crossorigin href="./assets/format-CejNFduS.js">
145
+ <link rel="modulepreload" crossorigin href="./assets/paperclip-FiPqbd6f.js">
146
+ <link rel="modulepreload" crossorigin href="./assets/sliders-horizontal-BNv-Koqw.js">
147
+ <link rel="modulepreload" crossorigin href="./assets/dist-B8I5m7M1.js">
148
+ <link rel="modulepreload" crossorigin href="./assets/file-tree-rename-validation-DDA1ck2Y.js">
149
+ <link rel="modulepreload" crossorigin href="./assets/badge-DXHoKHez.js">
150
+ <link rel="modulepreload" crossorigin href="./assets/input-D4OPkja2.js">
151
+ <link rel="modulepreload" crossorigin href="./assets/use-collab-url-81TC8Fvz.js">
152
+ <link rel="modulepreload" crossorigin href="./assets/DocumentContext-QeD0oigI.js">
153
+ <link rel="modulepreload" crossorigin href="./assets/dist-DlSSwTCj.js">
154
+ <link rel="modulepreload" crossorigin href="./assets/dist-DmIoqGC0.js">
155
+ <link rel="modulepreload" crossorigin href="./assets/format-4tjAvLkN.js">
156
156
  <link rel="modulepreload" crossorigin href="./assets/braces-DwnwFx_V.js">
157
- <link rel="modulepreload" crossorigin href="./assets/open-managed-artifact-tab-CoiXLY4g.js">
158
- <link rel="modulepreload" crossorigin href="./assets/lint-config-client-CrVQnAJl.js">
159
- <link rel="modulepreload" crossorigin href="./assets/selection-context-BLRRQXPM.js">
160
- <link rel="modulepreload" crossorigin href="./assets/PropertyPanel-DjnXiFVP.js">
161
- <link rel="modulepreload" crossorigin href="./assets/EnableSyncConfirmDialog-CUbRSvVb.js">
157
+ <link rel="modulepreload" crossorigin href="./assets/open-managed-artifact-tab-DKpdEiZk.js">
158
+ <link rel="modulepreload" crossorigin href="./assets/comment-chips--aitTdum.js">
159
+ <link rel="modulepreload" crossorigin href="./assets/textarea-bScbzsdX.js">
160
+ <link rel="modulepreload" crossorigin href="./assets/lint-config-client-SBOLqEAH.js">
161
+ <link rel="modulepreload" crossorigin href="./assets/selection-context-CsoqdVq1.js">
162
+ <link rel="modulepreload" crossorigin href="./assets/PropertyPanel-ANMzlUf0.js">
163
+ <link rel="modulepreload" crossorigin href="./assets/EnableSyncConfirmDialog-GUnrwfa0.js">
162
164
  <link rel="modulepreload" crossorigin href="./assets/arrow-up-right-obRIg3Sv.js">
163
- <link rel="modulepreload" crossorigin href="./assets/cursor-B8rehP9c.js">
164
- <link rel="modulepreload" crossorigin href="./assets/RegisteredAgentIcon-DplzDEhh.js">
165
+ <link rel="modulepreload" crossorigin href="./assets/cursor-BDHSyD-9.js">
166
+ <link rel="modulepreload" crossorigin href="./assets/RegisteredAgentIcon-CyQDojW_.js">
165
167
  <link rel="modulepreload" crossorigin href="./assets/case-sensitive-nl0tWMnZ.js">
166
168
  <link rel="modulepreload" crossorigin href="./assets/chevron-left-BQ6OM94c.js">
167
- <link rel="modulepreload" crossorigin href="./assets/refresh-cw-BfeWGCsv.js">
168
- <link rel="modulepreload" crossorigin href="./assets/copilot-CjOGWDvv.js">
169
- <link rel="modulepreload" crossorigin href="./assets/agent-visibility-CANQ951p.js">
170
- <link rel="modulepreload" crossorigin href="./assets/use-settings-route-FnSIe1ir.js">
171
- <link rel="modulepreload" crossorigin href="./assets/clipboard-adapter-Cxzkvc1d.js">
172
- <link rel="modulepreload" crossorigin href="./assets/skills-api-By8un6BC.js">
173
- <link rel="modulepreload" crossorigin href="./assets/use-workspace-DwK7HqI3.js">
174
- <link rel="modulepreload" crossorigin href="./assets/skill-actions-DEa7Mqcd.js">
169
+ <link rel="modulepreload" crossorigin href="./assets/refresh-cw-DClG_qgN.js">
170
+ <link rel="modulepreload" crossorigin href="./assets/copilot-BiqH8PgI.js">
171
+ <link rel="modulepreload" crossorigin href="./assets/agent-visibility-mwTztYpe.js">
172
+ <link rel="modulepreload" crossorigin href="./assets/use-settings-route-KYTTaHV0.js">
173
+ <link rel="modulepreload" crossorigin href="./assets/clipboard-adapter-ZCy01ehf.js">
174
+ <link rel="modulepreload" crossorigin href="./assets/skills-api-141pFhWO.js">
175
+ <link rel="modulepreload" crossorigin href="./assets/use-workspace-CNU53RmX.js">
176
+ <link rel="modulepreload" crossorigin href="./assets/skill-actions-4cV_4pjw.js">
175
177
  <link rel="modulepreload" crossorigin href="./assets/square-pen-C1vIlMAW.js">
176
- <link rel="modulepreload" crossorigin href="./assets/field-DVIFAnvR.js">
177
- <link rel="modulepreload" crossorigin href="./assets/textarea-tdCJViKf.js">
178
- <link rel="modulepreload" crossorigin href="./assets/auth-state-cache-WFzLfVsU.js">
178
+ <link rel="modulepreload" crossorigin href="./assets/field-BNyAQHKf.js">
179
+ <link rel="modulepreload" crossorigin href="./assets/auth-state-cache-Bkm-5pQl.js">
179
180
  <link rel="modulepreload" crossorigin href="./assets/miss-dialog-store-Bx4JLuKB.js">
180
- <link rel="modulepreload" crossorigin href="./assets/pending-receive-nav-store-BYGxrnRS.js">
181
- <link rel="modulepreload" crossorigin href="./assets/terminal-launch-events-7D-deCwp.js">
182
- <link rel="modulepreload" crossorigin href="./assets/panel-right-open-B7ziq39V.js">
183
- <link rel="modulepreload" crossorigin href="./assets/timeline-diff-store-CYckprSS.js">
184
- <link rel="modulepreload" crossorigin href="./assets/form-coxG-8Qw.js">
185
- <link rel="modulepreload" crossorigin href="./assets/EditorModeToggle-Cc_1CSwt.js">
186
- <link rel="modulepreload" crossorigin href="./assets/wrench-BfoTvqT9.js">
187
- <link rel="modulepreload" crossorigin href="./assets/lint-plugin-meta-DKTiO7RO.js">
188
- <link rel="modulepreload" crossorigin href="./assets/panel-C8ZhM4q-.js">
189
- <link rel="modulepreload" crossorigin href="./assets/skeleton-BG12Hmzn.js">
190
- <link rel="modulepreload" crossorigin href="./assets/typing-burst-detector-CaC_du54.js">
191
- <link rel="modulepreload" crossorigin href="./assets/ConfigSharingInfoTooltip-DMbsfWD9.js">
192
- <link rel="modulepreload" crossorigin href="./assets/project-paths-Dwo4Of8C.js">
193
- <link rel="modulepreload" crossorigin href="./assets/follow-file-BghdVu5J.js">
194
- <link rel="modulepreload" crossorigin href="./assets/file-tree-adapter-C3r5x-03.js">
195
- <link rel="modulepreload" crossorigin href="./assets/agent-diff-store-qaTtNJLp.js">
196
- <link rel="modulepreload" crossorigin href="./assets/target-navigation-intent-YwxjtaLV.js">
197
- <link rel="modulepreload" crossorigin href="./assets/use-live-xterm-theme-DVzY8LXJ.js">
198
- <link rel="modulepreload" crossorigin href="./assets/use-installed-clis-UlK7P1aH.js">
199
- <link rel="modulepreload" crossorigin href="./assets/terminal-telemetry-BLN1ghOs.js">
200
- <link rel="modulepreload" crossorigin href="./assets/agent-presence-CEfNcJUY.js">
201
- <link rel="modulepreload" crossorigin href="./assets/mcp-consent-store-wvrClpLC.js">
202
- <link rel="modulepreload" crossorigin href="./assets/overlay-layers-y-dNUWSd.js">
203
- <link rel="modulepreload" crossorigin href="./assets/receive-store-Cuer2-MQ.js">
204
- <link rel="modulepreload" crossorigin href="./assets/worktree-store-LSx9q9Ga.js">
205
- <link rel="stylesheet" crossorigin href="./assets/globals-BtCTpjIr.css">
181
+ <link rel="modulepreload" crossorigin href="./assets/pending-receive-nav-store-EO01lM9G.js">
182
+ <link rel="modulepreload" crossorigin href="./assets/terminal-launch-events-Bz4DL9DZ.js">
183
+ <link rel="modulepreload" crossorigin href="./assets/panel-right-open-CWgBRlZa.js">
184
+ <link rel="modulepreload" crossorigin href="./assets/timeline-diff-store-BwCud4Ug.js">
185
+ <link rel="modulepreload" crossorigin href="./assets/form-gDsa08Xi.js">
186
+ <link rel="modulepreload" crossorigin href="./assets/EditorModeToggle-12SdK7ya.js">
187
+ <link rel="modulepreload" crossorigin href="./assets/wrench-4e3jxe5l.js">
188
+ <link rel="modulepreload" crossorigin href="./assets/lint-plugin-meta-BoxMoaxR.js">
189
+ <link rel="modulepreload" crossorigin href="./assets/panel-BbxjQP3-.js">
190
+ <link rel="modulepreload" crossorigin href="./assets/skeleton-Mo1oLtEu.js">
191
+ <link rel="modulepreload" crossorigin href="./assets/typing-burst-detector-DuRvcTVz.js">
192
+ <link rel="modulepreload" crossorigin href="./assets/ConfigSharingInfoTooltip-BMJ7SIjf.js">
193
+ <link rel="modulepreload" crossorigin href="./assets/project-paths-DdZAF_-I.js">
194
+ <link rel="modulepreload" crossorigin href="./assets/follow-file-BVJ6G9Hs.js">
195
+ <link rel="modulepreload" crossorigin href="./assets/file-tree-adapter-C9l0Uy9t.js">
196
+ <link rel="modulepreload" crossorigin href="./assets/agent-diff-store-CcwDxQK9.js">
197
+ <link rel="modulepreload" crossorigin href="./assets/target-navigation-intent-BzJodEAL.js">
198
+ <link rel="modulepreload" crossorigin href="./assets/use-live-xterm-theme-DeW6SO6V.js">
199
+ <link rel="modulepreload" crossorigin href="./assets/use-installed-clis-8r2iSkgN.js">
200
+ <link rel="modulepreload" crossorigin href="./assets/terminal-telemetry-CXqhqIkk.js">
201
+ <link rel="modulepreload" crossorigin href="./assets/agent-presence-BdWbAeV-.js">
202
+ <link rel="modulepreload" crossorigin href="./assets/mcp-consent-store-CDAQY6Np.js">
203
+ <link rel="modulepreload" crossorigin href="./assets/overlay-layers-Dhz8IqAf.js">
204
+ <link rel="modulepreload" crossorigin href="./assets/receive-store-CCj5OCl8.js">
205
+ <link rel="modulepreload" crossorigin href="./assets/worktree-store-B-NxI13K.js">
206
+ <link rel="stylesheet" crossorigin href="./assets/globals-Cf_md-qZ.css">
206
207
  <link rel="stylesheet" crossorigin href="./assets/DocumentContext-B0sQn39F.css">
207
208
  <link rel="stylesheet" crossorigin href="./assets/index-CDpJ2gXn.css">
208
209
  </head>
@@ -32,18 +32,18 @@
32
32
  script above.
33
33
  -->
34
34
  <style>html { background-color: #fafafa } html.dark { background-color: #171717 }</style>
35
- <script type="module" crossorigin src="./assets/uninstall-ousBF288.js"></script>
35
+ <script type="module" crossorigin src="./assets/uninstall-9ZXPO59t.js"></script>
36
36
  <link rel="modulepreload" crossorigin href="./assets/chunk-CYidjpOJ.js">
37
- <link rel="modulepreload" crossorigin href="./assets/dist-q14fBS3T.js">
37
+ <link rel="modulepreload" crossorigin href="./assets/dist-BCZq3DKc.js">
38
38
  <link rel="modulepreload" crossorigin href="./assets/react-f2sANaYj.js">
39
39
  <link rel="modulepreload" crossorigin href="./assets/react-dom-DPxgxlDT.js">
40
- <link rel="modulepreload" crossorigin href="./assets/globals-C7y6kfQ9.js">
40
+ <link rel="modulepreload" crossorigin href="./assets/globals-CdX3jOLC.js">
41
41
  <link rel="modulepreload" crossorigin href="./assets/preload-helper-Chd9yIcd.js">
42
42
  <link rel="modulepreload" crossorigin href="./assets/trace-api-DHyWZzIa.js">
43
43
  <link rel="modulepreload" crossorigin href="./assets/lib-Iu39CNZE.js">
44
44
  <link rel="modulepreload" crossorigin href="./assets/markdownit-YwcN3EvW.js">
45
45
  <link rel="modulepreload" crossorigin href="./assets/w3c-keyname-DtWCia6R.js">
46
- <link rel="modulepreload" crossorigin href="./assets/dist-Dhbvx6Ut.js">
46
+ <link rel="modulepreload" crossorigin href="./assets/dist-Cv2LF2DL.js">
47
47
  <link rel="modulepreload" crossorigin href="./assets/jsx-runtime-BUgB2tll.js">
48
48
  <link rel="modulepreload" crossorigin href="./assets/dist-Nvb76hAm.js">
49
49
  <link rel="modulepreload" crossorigin href="./assets/bundle-mjs-SHeFpKGC.js">
@@ -52,19 +52,19 @@
52
52
  <link rel="modulepreload" crossorigin href="./assets/dist-DFt8VaPU.js">
53
53
  <link rel="modulepreload" crossorigin href="./assets/dist-DEamjSXE.js">
54
54
  <link rel="modulepreload" crossorigin href="./assets/check-GqWaoTdV.js">
55
- <link rel="modulepreload" crossorigin href="./assets/minus-SecfYzeQ.js">
55
+ <link rel="modulepreload" crossorigin href="./assets/minus-CI_HyT1V.js">
56
56
  <link rel="modulepreload" crossorigin href="./assets/compiler-runtime-BfE3aGVn.js">
57
- <link rel="modulepreload" crossorigin href="./assets/checkbox-DY-vIhnZ.js">
57
+ <link rel="modulepreload" crossorigin href="./assets/checkbox-BkZH9Oy1.js">
58
58
  <link rel="modulepreload" crossorigin href="./assets/label-DyipnO5I.js">
59
59
  <link rel="modulepreload" crossorigin href="./assets/dist-BjDuLI_j.js">
60
60
  <link rel="modulepreload" crossorigin href="./assets/dist-DAU1MdSo.js">
61
61
  <link rel="modulepreload" crossorigin href="./assets/radio-group-CGEdWasQ.js">
62
62
  <link rel="modulepreload" crossorigin href="./assets/button-Gol9BgNB.js">
63
63
  <link rel="modulepreload" crossorigin href="./assets/loader-circle-Cg5SU7AZ.js">
64
- <link rel="modulepreload" crossorigin href="./assets/badge-Dba4cvJR.js">
65
- <link rel="modulepreload" crossorigin href="./assets/input-D0ZW0Opq.js">
66
- <link rel="modulepreload" crossorigin href="./assets/textarea-tdCJViKf.js">
67
- <link rel="stylesheet" crossorigin href="./assets/globals-BtCTpjIr.css">
64
+ <link rel="modulepreload" crossorigin href="./assets/badge-DXHoKHez.js">
65
+ <link rel="modulepreload" crossorigin href="./assets/input-D4OPkja2.js">
66
+ <link rel="modulepreload" crossorigin href="./assets/textarea-bScbzsdX.js">
67
+ <link rel="stylesheet" crossorigin href="./assets/globals-Cf_md-qZ.css">
68
68
  </head>
69
69
 
70
70
  <body class="antialiased">
@@ -1,2 +1,2 @@
1
- import{t as e}from"./launch-json-removal-BJBj0U4b.mjs";import{join as t}from"node:path";function n(n){let i=n.logger??r,a=t(n.projectDir,`.claude`,`launch.json`);if(n.reclaimDisableEnv===`1`)return i({event:`launch-json-repair-skipped`,reason:`reclaim-disabled`}),{outcome:{configPath:a,outcome:`skipped-reclaim-disabled`},repairedCount:0};let o;try{o=e(n.projectDir)}catch(e){let t=e instanceof Error?e.message:String(e);return i({event:`launch-json-repair-write-failed`,configPath:a}),{outcome:{configPath:a,outcome:`write-failed`,error:t},repairedCount:0}}let s=o.kind===`removed`||o.kind===`removed-file`;return s&&i({event:`launch-json-repair-removed`,configPath:a}),{outcome:{configPath:a,outcome:o.kind},repairedCount:+!!s}}function r(e){process.stderr.write(`${JSON.stringify(e)}\n`)}export{n as repairLaunchJson};
2
- //# sourceMappingURL=repair-launch-json-DcxpqtPk.mjs.map
1
+ import{t as e}from"./launch-json-removal-CmpnCINi.mjs";import{join as t}from"node:path";function n(n){let i=n.logger??r,a=t(n.projectDir,`.claude`,`launch.json`);if(n.reclaimDisableEnv===`1`)return i({event:`launch-json-repair-skipped`,reason:`reclaim-disabled`}),{outcome:{configPath:a,outcome:`skipped-reclaim-disabled`},repairedCount:0};let o;try{o=e(n.projectDir)}catch(e){let t=e instanceof Error?e.message:String(e);return i({event:`launch-json-repair-write-failed`,configPath:a}),{outcome:{configPath:a,outcome:`write-failed`,error:t},repairedCount:0}}let s=o.kind===`removed`||o.kind===`removed-file`;return s&&i({event:`launch-json-repair-removed`,configPath:a}),{outcome:{configPath:a,outcome:o.kind},repairedCount:+!!s}}function r(e){process.stderr.write(`${JSON.stringify(e)}\n`)}export{n as repairLaunchJson};
2
+ //# sourceMappingURL=repair-launch-json-B-4hsfw8.mjs.map
@@ -1,2 +1,2 @@
1
- import{d as e,l as t,v as n}from"./write-project-skill-IitZHJK2.mjs";import{d as r,v as i}from"./init-BbpX_tfM.mjs";import{t as a}from"./mcp-migrate-event-CWx0WLdE.mjs";import{homedir as o}from"node:os";function s(n){let r=n.logger??u,i=n.home??o(),a=[];if(n.reclaimDisableEnv===`1`)return r({event:`mcp-config-repair-skipped`,reason:`reclaim-disabled`}),{outcomes:a,repairedCount:0};for(let o of t){let t=e[o],s=c(()=>t.configPath(``,i));if(s!==null&&a.push(l({scope:`user`,editorId:o,target:t,home:i,cwd:``,configPath:s,configPathOverride:void 0,logger:r})),t.projectConfigPath){let e=t.projectConfigPath,i=c(()=>e(n.projectDir));i!==null&&a.push(l({scope:`project`,editorId:o,target:t,home:void 0,cwd:n.projectDir,configPath:i,configPathOverride:i,logger:r}))}}return{outcomes:a,repairedCount:a.filter(e=>e.outcome===`repaired`).length}}function c(e){try{return e()}catch{return null}}function l(e){let t={scope:e.scope,editorId:e.editorId,configPath:e.configPath},o=r(e.target,e.cwd,e.home,e.configPathOverride);if(o===null)return{...t,outcome:`no-entry`};if(n(o))return{...t,outcome:`canonical`};e.logger(a({scope:e.scope,surface:`cli-repair`,editorId:e.editorId,configPath:e.configPath,priorEntry:o}));let s=i(e.target,e.cwd,{mode:`published`,skipAvailabilityCheck:!0},e.home,e.configPathOverride);if(s.action===`failed`){let n=s.error??`unknown write failure`;return e.logger({event:`mcp-config-repair-write-failed`,scope:e.scope,editorId:e.editorId,configPath:e.configPath,error:n}),{...t,outcome:`write-failed`,error:n}}return s.action===`declined`?(e.logger({event:`mcp-config-repair-declined`,scope:e.scope,editorId:e.editorId,configPath:e.configPath,reason:s.declineReason}),{...t,outcome:`declined`}):{...t,outcome:`repaired`}}function u(e){process.stderr.write(`${JSON.stringify(e)}\n`)}export{s as repairMcpConfigs};
2
- //# sourceMappingURL=repair-mcp-configs-CR0w_9a_.mjs.map
1
+ import{d as e,l as t,v as n}from"./write-project-skill-W6wm8WGO.mjs";import{d as r,v as i}from"./init-D0wKKFay.mjs";import{t as a}from"./mcp-migrate-event-CWx0WLdE.mjs";import{homedir as o}from"node:os";function s(n){let r=n.logger??u,i=n.home??o(),a=[];if(n.reclaimDisableEnv===`1`)return r({event:`mcp-config-repair-skipped`,reason:`reclaim-disabled`}),{outcomes:a,repairedCount:0};for(let o of t){let t=e[o],s=c(()=>t.configPath(``,i));if(s!==null&&a.push(l({scope:`user`,editorId:o,target:t,home:i,cwd:``,configPath:s,configPathOverride:void 0,logger:r})),t.projectConfigPath){let e=t.projectConfigPath,i=c(()=>e(n.projectDir));i!==null&&a.push(l({scope:`project`,editorId:o,target:t,home:void 0,cwd:n.projectDir,configPath:i,configPathOverride:i,logger:r}))}}return{outcomes:a,repairedCount:a.filter(e=>e.outcome===`repaired`).length}}function c(e){try{return e()}catch{return null}}function l(e){let t={scope:e.scope,editorId:e.editorId,configPath:e.configPath},o=r(e.target,e.cwd,e.home,e.configPathOverride);if(o===null)return{...t,outcome:`no-entry`};if(n(o))return{...t,outcome:`canonical`};e.logger(a({scope:e.scope,surface:`cli-repair`,editorId:e.editorId,configPath:e.configPath,priorEntry:o}));let s=i(e.target,e.cwd,{mode:`published`,skipAvailabilityCheck:!0},e.home,e.configPathOverride);if(s.action===`failed`){let n=s.error??`unknown write failure`;return e.logger({event:`mcp-config-repair-write-failed`,scope:e.scope,editorId:e.editorId,configPath:e.configPath,error:n}),{...t,outcome:`write-failed`,error:n}}return s.action===`declined`?(e.logger({event:`mcp-config-repair-declined`,scope:e.scope,editorId:e.editorId,configPath:e.configPath,reason:s.declineReason}),{...t,outcome:`declined`}):{...t,outcome:`repaired`}}function u(e){process.stderr.write(`${JSON.stringify(e)}\n`)}export{s as repairMcpConfigs};
2
+ //# sourceMappingURL=repair-mcp-configs--yGPDCBl.mjs.map
@@ -0,0 +1 @@
1
+ import{t as e}from"./repair-skills-CH8FwF78.mjs";export{e as repairSkills};
@@ -1,4 +1,4 @@
1
- import{w as e}from"./src-BK8Vvk9Y.mjs";import{ar as t,dr as n,gr as r,hr as i,lr as a,nr as o,or as s,sr as c,tr as l}from"./src-BIJtc8LA.mjs";import{C as u,a as d,d as f,f as p,o as m,s as h,t as g}from"./write-project-skill-IitZHJK2.mjs";import{n as _,s as v,t as y}from"./colors-BsmVIwfM.mjs";import{dirname as b,join as x,relative as S,resolve as C}from"node:path";import{existsSync as w,mkdirSync as T,readFileSync as E,readdirSync as D,rmSync as O,statSync as k,writeFileSync as A}from"node:fs";import{homedir as j}from"node:os";import{createInterface as M}from"node:readline/promises";const N={existsSync:e=>w(e),isDirectory:e=>{try{return k(e).isDirectory()}catch(e){if(e.code===`ENOENT`)return!1;throw e}},readdirSync:e=>D(e),readFileSync:e=>E(e),writeFileSync:(e,t)=>{A(e,t)},mkdirSync:(e,t)=>{T(e,t)},rmSync:(e,t)=>{O(e,t)}},P={resolveProjectBundledSkillDir:()=>n(`project`,{checkDesktop:!1}),resolveUserBundledSkillDir:e=>n(e,{checkDesktop:!1}),readBundledVersion:()=>o(),readRecordedVersion:e=>t(e,`cli-hosts`),writeRecordedVersion:(e,t)=>c(e,`cli-hosts`,t,`cli-start`),recordEvent:e=>a(e),readBundleDecision:(e,t)=>l(e,t),writeBundleDecision:(e,t,n)=>s(e,t,n),removeBundleFromDisk:(e,t)=>h(e,t)};function F(e){process.stderr.write(`${JSON.stringify(e)}\n`)}function I(e,t,n){n.rmSync(t,{recursive:!0,force:!0}),n.mkdirSync(b(t),{recursive:!0}),L(e,t,n)}function L(e,t,n){n.mkdirSync(t,{recursive:!0});for(let r of n.readdirSync(e)){let i=x(e,r),a=x(t,r);n.isDirectory(i)?L(i,a,n):n.writeFileSync(a,n.readFileSync(i))}}function R(e,t,n,r,i,a){let o=[],s=x(e,`.agents`,`skills`,t),c=r.existsSync(s),l=!1;try{I(n,s,r),l=!0,o.push({kind:`central`,path:s,outcome:c?`overwritten`:`written`}),i({event:`user-skill-reclaim-central-written`,scope:`user`,path:s,preexisting:c,version:a})}catch(e){let t=e instanceof Error?e.message:String(e);o.push({kind:`central`,path:s,outcome:`failed`,error:t}),i({event:`user-skill-reclaim-central-failed`,scope:`user`,path:s,error:t})}for(let c of p){let l=x(e,c.hostDir),u=x(l,`skills`,t);if(u===s){o.push({kind:`host`,editorId:c.editorId,hostDir:c.hostDir,path:u,outcome:`skipped-collapsed-with-central`});continue}if(!r.existsSync(l)){o.push({kind:`host`,editorId:c.editorId,hostDir:c.hostDir,path:u,outcome:`skipped-host-absent`});continue}let d=r.existsSync(u);try{I(n,u,r),o.push({kind:`host`,editorId:c.editorId,hostDir:c.hostDir,path:u,outcome:d?`overwritten`:`written`}),i({event:`user-skill-reclaim-host-written`,scope:`user`,editorId:c.editorId,hostDir:c.hostDir,path:u,preexisting:d,version:a})}catch(e){let t=e instanceof Error?e.message:String(e);o.push({kind:`host`,editorId:c.editorId,hostDir:c.hostDir,path:u,outcome:`failed`,error:t}),i({event:`user-skill-reclaim-host-failed`,scope:`user`,editorId:c.editorId,hostDir:c.hostDir,path:u,error:t})}}return{entries:o,centralWritten:l}}function z(e,t){if(!e)return!1;try{return t.existsSync(e)?t.readFileSync(e).toString(`utf8`).includes(`# ok-mcp-`):!1}catch{return!1}}function B(e,t,n,r){let i;try{i=t.resolveProjectBundledSkillDir()}catch(e){return r({event:`project-skill-reclaim-bundle-missing`,scope:`project`,error:e instanceof Error?e.message:String(e)}),{outcome:`skipped`,reason:`bundle-missing`}}let a=[];for(let t of p){let o=x(e,t.hostDir,`skills`,`open-knowledge`),s=x(o,`SKILL.md`),c=n.existsSync(s),l=f[t.editorId]?.projectConfigPath?.(e),u=!c&&z(l,n);if(!c&&!u){a.push({editorId:t.editorId,hostDir:t.hostDir,path:o,outcome:`no-token`}),r({event:`project-skill-reclaim-no-token`,scope:`project`,editorId:t.editorId,path:o});continue}try{g(o,e),I(i,o,n);let s=c?`reclaimed`:`created`;a.push({editorId:t.editorId,hostDir:t.hostDir,path:o,outcome:s}),r({event:c?`project-skill-reclaim-reclaimed`:`project-skill-reclaim-created`,scope:`project`,editorId:t.editorId,path:o})}catch(e){let n=e instanceof Error?e.message:String(e);a.push({editorId:t.editorId,hostDir:t.hostDir,path:o,outcome:`failed`,error:n}),r({event:`project-skill-reclaim-failed`,scope:`project`,editorId:t.editorId,path:o,error:n})}}return{outcome:`done`,entries:a}}async function V(t,n,a,o){let s=e=>{n.recordEvent(e).catch(()=>{})},c=()=>new Date().toISOString(),l;try{l=await n.readBundledVersion()}catch(e){let t=e instanceof Error?e.message:String(e);return o({event:`user-skill-reclaim-version-read-failed`,scope:`user`,error:t}),s({ts:c(),surface:`cli-start`,target:`cli-hosts`,bundle:`discovery`,outcome:`failed`,reason:`version-read-failed:${t}`}),{outcome:`skipped`,reason:`version-read-failed`}}let u;try{u=await n.readRecordedVersion(t)}catch(e){o({event:`user-skill-reclaim-version-read-error`,scope:`user`,error:e instanceof Error?e.message:String(e)}),u=null}let d=[],f=null;for(let e of r)try{d.push({id:e,sourceDir:n.resolveUserBundledSkillDir(e)})}catch(e){f=e instanceof Error?e.message:String(e)}if(d.length===0)return o({event:`user-skill-reclaim-bundle-missing`,scope:`user`,error:f??`no user-global bundles`}),s({ts:c(),surface:`cli-start`,target:`cli-hosts`,outcome:`failed`,reason:`bundle-missing:${f}`}),{outcome:`skipped`,reason:`bundle-missing`};let p=[];for(let r of d){let s=i[r.id],c=a.existsSync(x(t,`.agents`,`skills`,s)),l=await n.readBundleDecision(t,s).catch(()=>null);if(!e(l,{installedOnDisk:c})){if(c)try{n.removeBundleFromDisk(t,r.id),o({event:`user-skill-reclaim-bundle-declined-removed`,scope:`user`,bundle:r.id})}catch(e){o({event:`user-skill-reclaim-bundle-remove-failed`,scope:`user`,bundle:r.id,error:e instanceof Error?e.message:String(e)})}continue}if(l===null&&c)try{await n.writeBundleDecision(t,s,!0)}catch(e){o({event:`user-skill-reclaim-grandfather-write-failed`,scope:`user`,bundle:r.id,error:e instanceof Error?e.message:String(e)})}p.push(r)}if(p.length===0)return{outcome:`skipped`,reason:`all-bundles-declined`};let m=p.every(e=>a.existsSync(x(t,`.agents`,`skills`,i[e.id])));if(u!==null&&u===l&&m)return o({event:`user-skill-reclaim-skipped-version-current`,scope:`user`,version:l}),{outcome:`skipped`,reason:`version-current`};let h=[],g=d.length===r.length,_=!0;for(let{id:e,sourceDir:n}of p){let r=R(t,i[e],n,a,o,l);h.push(...r.entries),r.centralWritten||(_=!1)}let v=h.some(e=>e.kind===`central`&&(e.outcome===`written`||e.outcome===`overwritten`));if(g&&_&&v){let e=null;try{await n.writeRecordedVersion(t,l),o({event:`user-skill-reclaim-version-recorded`,scope:`user`,version:l})}catch(t){e=t instanceof Error?t.message:String(t),o({event:`user-skill-reclaim-version-record-failed`,scope:`user`,version:l,error:e})}for(let{id:t}of p)s({ts:c(),surface:`cli-start`,target:`cli-hosts`,bundle:t,outcome:e===null?`installed`:`failed`,version:l,...e===null?{}:{reason:`state-write-failed:${e}`}})}else{let e=h.some(e=>e.kind===`host`&&e.outcome===`failed`);s({ts:c(),surface:`cli-start`,target:`cli-hosts`,outcome:`failed`,version:l,reason:e?`all-writes-failed`:`no-hosts-installed`})}return{outcome:`done`,version:l,entries:h}}async function H(e){let t=e.logger??F,n=e.fs??N,r=e.home??j(),i={...P,...e.deps};if(e.reclaimDisableEnv===`1`)return t({event:`skill-repair-skipped`,reason:`reclaim-disabled`}),{status:`skipped`,reason:`reclaim-disabled`};let a=B(e.projectDir,i,n,t),o=await V(r,i,n,t),s=m(r),c=[],l=!1,u=!1;if(s.skillDirs.length>0||s.emptyDirs.length>0)if(e.confirmLegacyCleanup&&await e.confirmLegacyCleanup(s)){try{c=d(r,s)}catch(e){u=!0,t({event:`legacy-fanout-cleanup-refused`,scope:`user`,error:e instanceof Error?e.message:String(e)})}for(let e of c)t({event:`legacy-fanout-path-removed`,scope:`user`,path:e})}else l=!0,t({event:`legacy-fanout-cleanup-declined`,scope:`user`});return{status:`done`,project:a,user:o,legacySwept:c,legacyCleanupDeclined:l,legacyCleanupFailed:u}}function U(e){return e.status===`skipped`?e.reason===`reclaim-disabled`?0:1:e.project.outcome===`skipped`||e.user.outcome===`skipped`&&e.user.reason!==`version-current`&&e.user.reason!==`all-bundles-declined`||e.project.entries.some(e=>e.outcome===`failed`)||e.user.outcome===`done`&&e.user.entries.some(e=>e.outcome===`failed`)?1:0}function W(e){if(e.status===`skipped`)return`Skipped: ${e.reason}`;let t=[`Skill reclaim complete.`];if(e.project.outcome===`done`){let n=e.project.entries.filter(e=>e.outcome===`reclaimed`).length,r=e.project.entries.filter(e=>e.outcome===`created`).length,i=e.project.entries.filter(e=>e.outcome===`no-token`).length,a=e.project.entries.filter(e=>e.outcome===`failed`).length;t.push(` Project: ${n} reclaimed, ${r} created, ${i} no-token, ${a} failed.`)}else t.push(` Project: skipped (${e.project.reason}).`);if(e.user.outcome===`done`){let n=e.user.entries.filter(e=>e.outcome===`written`||e.outcome===`overwritten`).length,r=e.user.entries.filter(e=>e.outcome===`skipped-host-absent`||e.outcome===`skipped-collapsed-with-central`).length,i=e.user.entries.filter(e=>e.outcome===`failed`).length;t.push(` User (${e.user.version}): ${n} written, ${r} skipped, ${i} failed.`)}else t.push(` User: skipped (${e.user.reason}).`);return e.legacySwept.length>0?t.push(` Cleanup: removed ${e.legacySwept.length} path(s) from a pre-0.42 install.`):e.legacyCleanupFailed?t.push(` Cleanup: failed — see logs; pre-0.42 directories left in place.`):e.legacyCleanupDeclined&&t.push(` Cleanup: declined — pre-0.42 directories left in place.`),t.join(`
1
+ import{w as e}from"./src-2StQCkyf.mjs";import{ar as t,dr as n,gr as r,hr as i,lr as a,nr as o,or as s,sr as c,tr as l}from"./src-DV_Dbu6a.mjs";import{C as u,a as d,d as f,f as p,o as m,s as h,t as g}from"./write-project-skill-W6wm8WGO.mjs";import{n as _,s as v,t as y}from"./colors-BsmVIwfM.mjs";import{dirname as b,join as x,relative as S,resolve as C}from"node:path";import{existsSync as w,mkdirSync as T,readFileSync as E,readdirSync as D,rmSync as O,statSync as k,writeFileSync as A}from"node:fs";import{homedir as j}from"node:os";import{createInterface as M}from"node:readline/promises";const N={existsSync:e=>w(e),isDirectory:e=>{try{return k(e).isDirectory()}catch(e){if(e.code===`ENOENT`)return!1;throw e}},readdirSync:e=>D(e),readFileSync:e=>E(e),writeFileSync:(e,t)=>{A(e,t)},mkdirSync:(e,t)=>{T(e,t)},rmSync:(e,t)=>{O(e,t)}},P={resolveProjectBundledSkillDir:()=>n(`project`,{checkDesktop:!1}),resolveUserBundledSkillDir:e=>n(e,{checkDesktop:!1}),readBundledVersion:()=>o(),readRecordedVersion:e=>t(e,`cli-hosts`),writeRecordedVersion:(e,t)=>c(e,`cli-hosts`,t,`cli-start`),recordEvent:e=>a(e),readBundleDecision:(e,t)=>l(e,t),writeBundleDecision:(e,t,n)=>s(e,t,n),removeBundleFromDisk:(e,t)=>h(e,t)};function F(e){process.stderr.write(`${JSON.stringify(e)}\n`)}function I(e,t,n){n.rmSync(t,{recursive:!0,force:!0}),n.mkdirSync(b(t),{recursive:!0}),L(e,t,n)}function L(e,t,n){n.mkdirSync(t,{recursive:!0});for(let r of n.readdirSync(e)){let i=x(e,r),a=x(t,r);n.isDirectory(i)?L(i,a,n):n.writeFileSync(a,n.readFileSync(i))}}function R(e,t,n,r,i,a){let o=[],s=x(e,`.agents`,`skills`,t),c=r.existsSync(s),l=!1;try{I(n,s,r),l=!0,o.push({kind:`central`,path:s,outcome:c?`overwritten`:`written`}),i({event:`user-skill-reclaim-central-written`,scope:`user`,path:s,preexisting:c,version:a})}catch(e){let t=e instanceof Error?e.message:String(e);o.push({kind:`central`,path:s,outcome:`failed`,error:t}),i({event:`user-skill-reclaim-central-failed`,scope:`user`,path:s,error:t})}for(let c of p){let l=x(e,c.hostDir),u=x(l,`skills`,t);if(u===s){o.push({kind:`host`,editorId:c.editorId,hostDir:c.hostDir,path:u,outcome:`skipped-collapsed-with-central`});continue}if(!r.existsSync(l)){o.push({kind:`host`,editorId:c.editorId,hostDir:c.hostDir,path:u,outcome:`skipped-host-absent`});continue}let d=r.existsSync(u);try{I(n,u,r),o.push({kind:`host`,editorId:c.editorId,hostDir:c.hostDir,path:u,outcome:d?`overwritten`:`written`}),i({event:`user-skill-reclaim-host-written`,scope:`user`,editorId:c.editorId,hostDir:c.hostDir,path:u,preexisting:d,version:a})}catch(e){let t=e instanceof Error?e.message:String(e);o.push({kind:`host`,editorId:c.editorId,hostDir:c.hostDir,path:u,outcome:`failed`,error:t}),i({event:`user-skill-reclaim-host-failed`,scope:`user`,editorId:c.editorId,hostDir:c.hostDir,path:u,error:t})}}return{entries:o,centralWritten:l}}function z(e,t){if(!e)return!1;try{return t.existsSync(e)?t.readFileSync(e).toString(`utf8`).includes(`# ok-mcp-`):!1}catch{return!1}}function B(e,t,n,r){let i;try{i=t.resolveProjectBundledSkillDir()}catch(e){return r({event:`project-skill-reclaim-bundle-missing`,scope:`project`,error:e instanceof Error?e.message:String(e)}),{outcome:`skipped`,reason:`bundle-missing`}}let a=[];for(let t of p){let o=x(e,t.hostDir,`skills`,`open-knowledge`),s=x(o,`SKILL.md`),c=n.existsSync(s),l=f[t.editorId]?.projectConfigPath?.(e),u=!c&&z(l,n);if(!c&&!u){a.push({editorId:t.editorId,hostDir:t.hostDir,path:o,outcome:`no-token`}),r({event:`project-skill-reclaim-no-token`,scope:`project`,editorId:t.editorId,path:o});continue}try{g(o,e),I(i,o,n);let s=c?`reclaimed`:`created`;a.push({editorId:t.editorId,hostDir:t.hostDir,path:o,outcome:s}),r({event:c?`project-skill-reclaim-reclaimed`:`project-skill-reclaim-created`,scope:`project`,editorId:t.editorId,path:o})}catch(e){let n=e instanceof Error?e.message:String(e);a.push({editorId:t.editorId,hostDir:t.hostDir,path:o,outcome:`failed`,error:n}),r({event:`project-skill-reclaim-failed`,scope:`project`,editorId:t.editorId,path:o,error:n})}}return{outcome:`done`,entries:a}}async function V(t,n,a,o){let s=e=>{n.recordEvent(e).catch(()=>{})},c=()=>new Date().toISOString(),l;try{l=await n.readBundledVersion()}catch(e){let t=e instanceof Error?e.message:String(e);return o({event:`user-skill-reclaim-version-read-failed`,scope:`user`,error:t}),s({ts:c(),surface:`cli-start`,target:`cli-hosts`,bundle:`discovery`,outcome:`failed`,reason:`version-read-failed:${t}`}),{outcome:`skipped`,reason:`version-read-failed`}}let u;try{u=await n.readRecordedVersion(t)}catch(e){o({event:`user-skill-reclaim-version-read-error`,scope:`user`,error:e instanceof Error?e.message:String(e)}),u=null}let d=[],f=null;for(let e of r)try{d.push({id:e,sourceDir:n.resolveUserBundledSkillDir(e)})}catch(e){f=e instanceof Error?e.message:String(e)}if(d.length===0)return o({event:`user-skill-reclaim-bundle-missing`,scope:`user`,error:f??`no user-global bundles`}),s({ts:c(),surface:`cli-start`,target:`cli-hosts`,outcome:`failed`,reason:`bundle-missing:${f}`}),{outcome:`skipped`,reason:`bundle-missing`};let p=[];for(let r of d){let s=i[r.id],c=a.existsSync(x(t,`.agents`,`skills`,s)),l=await n.readBundleDecision(t,s).catch(()=>null);if(!e(l,{installedOnDisk:c})){if(c)try{n.removeBundleFromDisk(t,r.id),o({event:`user-skill-reclaim-bundle-declined-removed`,scope:`user`,bundle:r.id})}catch(e){o({event:`user-skill-reclaim-bundle-remove-failed`,scope:`user`,bundle:r.id,error:e instanceof Error?e.message:String(e)})}continue}if(l===null&&c)try{await n.writeBundleDecision(t,s,!0)}catch(e){o({event:`user-skill-reclaim-grandfather-write-failed`,scope:`user`,bundle:r.id,error:e instanceof Error?e.message:String(e)})}p.push(r)}if(p.length===0)return{outcome:`skipped`,reason:`all-bundles-declined`};let m=p.every(e=>a.existsSync(x(t,`.agents`,`skills`,i[e.id])));if(u!==null&&u===l&&m)return o({event:`user-skill-reclaim-skipped-version-current`,scope:`user`,version:l}),{outcome:`skipped`,reason:`version-current`};let h=[],g=d.length===r.length,_=!0;for(let{id:e,sourceDir:n}of p){let r=R(t,i[e],n,a,o,l);h.push(...r.entries),r.centralWritten||(_=!1)}let v=h.some(e=>e.kind===`central`&&(e.outcome===`written`||e.outcome===`overwritten`));if(g&&_&&v){let e=null;try{await n.writeRecordedVersion(t,l),o({event:`user-skill-reclaim-version-recorded`,scope:`user`,version:l})}catch(t){e=t instanceof Error?t.message:String(t),o({event:`user-skill-reclaim-version-record-failed`,scope:`user`,version:l,error:e})}for(let{id:t}of p)s({ts:c(),surface:`cli-start`,target:`cli-hosts`,bundle:t,outcome:e===null?`installed`:`failed`,version:l,...e===null?{}:{reason:`state-write-failed:${e}`}})}else{let e=h.some(e=>e.kind===`host`&&e.outcome===`failed`);s({ts:c(),surface:`cli-start`,target:`cli-hosts`,outcome:`failed`,version:l,reason:e?`all-writes-failed`:`no-hosts-installed`})}return{outcome:`done`,version:l,entries:h}}async function H(e){let t=e.logger??F,n=e.fs??N,r=e.home??j(),i={...P,...e.deps};if(e.reclaimDisableEnv===`1`)return t({event:`skill-repair-skipped`,reason:`reclaim-disabled`}),{status:`skipped`,reason:`reclaim-disabled`};let a=B(e.projectDir,i,n,t),o=await V(r,i,n,t),s=m(r),c=[],l=!1,u=!1;if(s.skillDirs.length>0||s.emptyDirs.length>0)if(e.confirmLegacyCleanup&&await e.confirmLegacyCleanup(s)){try{c=d(r,s)}catch(e){u=!0,t({event:`legacy-fanout-cleanup-refused`,scope:`user`,error:e instanceof Error?e.message:String(e)})}for(let e of c)t({event:`legacy-fanout-path-removed`,scope:`user`,path:e})}else l=!0,t({event:`legacy-fanout-cleanup-declined`,scope:`user`});return{status:`done`,project:a,user:o,legacySwept:c,legacyCleanupDeclined:l,legacyCleanupFailed:u}}function U(e){return e.status===`skipped`?e.reason===`reclaim-disabled`?0:1:e.project.outcome===`skipped`||e.user.outcome===`skipped`&&e.user.reason!==`version-current`&&e.user.reason!==`all-bundles-declined`||e.project.entries.some(e=>e.outcome===`failed`)||e.user.outcome===`done`&&e.user.entries.some(e=>e.outcome===`failed`)?1:0}function W(e){if(e.status===`skipped`)return`Skipped: ${e.reason}`;let t=[`Skill reclaim complete.`];if(e.project.outcome===`done`){let n=e.project.entries.filter(e=>e.outcome===`reclaimed`).length,r=e.project.entries.filter(e=>e.outcome===`created`).length,i=e.project.entries.filter(e=>e.outcome===`no-token`).length,a=e.project.entries.filter(e=>e.outcome===`failed`).length;t.push(` Project: ${n} reclaimed, ${r} created, ${i} no-token, ${a} failed.`)}else t.push(` Project: skipped (${e.project.reason}).`);if(e.user.outcome===`done`){let n=e.user.entries.filter(e=>e.outcome===`written`||e.outcome===`overwritten`).length,r=e.user.entries.filter(e=>e.outcome===`skipped-host-absent`||e.outcome===`skipped-collapsed-with-central`).length,i=e.user.entries.filter(e=>e.outcome===`failed`).length;t.push(` User (${e.user.version}): ${n} written, ${r} skipped, ${i} failed.`)}else t.push(` User: skipped (${e.user.reason}).`);return e.legacySwept.length>0?t.push(` Cleanup: removed ${e.legacySwept.length} path(s) from a pre-0.42 install.`):e.legacyCleanupFailed?t.push(` Cleanup: failed — see logs; pre-0.42 directories left in place.`):e.legacyCleanupDeclined&&t.push(` Cleanup: declined — pre-0.42 directories left in place.`),t.join(`
2
2
  `)}function G(){return new u(`repair-skills`).description("Refresh bundled SKILL.md files for installed AI editors (project-local + user-global). Runs automatically during `ok start`; this command forces an explicit sweep.").option(`-y, --yes`,`Skip the confirmation prompt for removing directories left by a pre-0.42 install.`).action(async e=>{let t=await H({projectDir:C(process.cwd()),reclaimDisableEnv:process.env.OK_RECLAIM_DISABLE??null,confirmLegacyCleanup:t=>K(t,{yes:e.yes===!0})});process.stdout.write(`${W(t)}\n`),process.exitCode=U(t)})}async function K(e,t){let n=j(),r=e=>`~/${S(n,e)}`,i=t.input??process.stdin,a=[``,y(`A previous version of OpenKnowledge installed its skill into agent tools you may never have used.`),_(`(Versions before 0.42 wrote to every host a third-party installer knew about — see issue #820.)`)];if(e.skillDirs.length>0&&a.push(``,`${y(`Remove OpenKnowledge skills:`)} ${e.skillDirs.length}`,...e.skillDirs.map(e=>` ${r(e)}`)),e.emptyDirs.length>0){let t=e.skillDirs.length>0?`Then remove these, which hold nothing else once the above are gone:`:`Remove these empty directories, left behind by that install:`;a.push(``,`${y(t)} ${e.emptyDirs.length}`,...e.emptyDirs.map(e=>` ${r(e)}`))}if(a.push(``,_(`Nothing outside these paths is touched. A directory that still holds anything is kept.`)),process.stdout.write(`${a.join(`
3
3
  `)}\n`),t.yes)return!0;if(!i.isTTY)return process.stdout.write(`${v("Not a terminal — skipping cleanup. Re-run with `ok repair-skills --yes` to remove these.")}\n`),!1;let o=M({input:i,output:process.stdout});try{let e=(await o.question(`\n${y(`Remove them?`)} ${_(`[y/N] `)}`)).trim().toLowerCase();return e===`y`||e===`yes`}finally{o.close()}}export{G as n,H as t};
4
- //# sourceMappingURL=repair-skills-SFM8UbHd.mjs.map
4
+ //# sourceMappingURL=repair-skills-CH8FwF78.mjs.map
@@ -1,2 +1,2 @@
1
- import"./src-BK8Vvk9Y.mjs";import{r as e}from"./logger-B7Z8XO-z.mjs";import{dirname as t,join as n,resolve as r}from"node:path";import{closeSync as i,existsSync as a,mkdirSync as o,openSync as s,readFileSync as c,unlinkSync as l,writeFileSync as u,writeSync as d}from"node:fs";import{homedir as f,hostname as p}from"node:os";import{fileURLToPath as m}from"node:url";import{randomUUID as h}from"node:crypto";function g(e){try{return process.kill(e,0),!0}catch(e){return!!(e&&typeof e==`object`&&`code`in e&&e.code===`EPERM`)}}function _(e){return!(typeof e!=`number`||!Number.isInteger(e)||e<2||e>2147483647)}function v(e){return new URL(e.url??``,`http://localhost`).searchParams}function y(e){let t=e?.code;return typeof t==`string`?t:void 0}const b=/^[A-Za-z0-9-]{8,64}$/;let x=null;function S(e){return n(e??f(),`.ok`,`machine-id`)}function C(n){if(n===void 0&&x!==null)return x;let r=S(n),i=null;try{let e=c(r,`utf-8`).trim();b.test(e)&&(i=e)}catch{}if(i===null){i=h();try{o(t(r),{recursive:!0}),u(r,`${i}\n`,{encoding:`utf-8`,mode:384})}catch(t){e(`machine-id`).warn({path:r,err:t},`Failed to persist ${r} — using an ephemeral per-process id; lock ownership checks will fail closed (collision) instead of recognizing this machine: ${t instanceof Error?t.message:String(t)}`)}}return n===void 0&&(x=i),i}function w(){try{let e=r(t(m(import.meta.url)),`..`,`package.json`),n=JSON.parse(c(e,`utf-8`));if(typeof n.version==`string`&&n.version.length>0)return n.version}catch{}return`0.0.0-unknown`}const T=w(),E=1,D=e(`process-lock`);var O=class extends Error{existing;lockPath;lockName;constructor(e,t,n){super(`OpenKnowledge ${n} already running on port ${e.port} (pid ${e.pid}, started ${e.startedAt}). Stop it first or use a different directory. Lock: ${t}`),this.name=`ProcessLockCollisionError`,this.existing=e,this.lockPath=t,this.lockName=n}};function k(e,t){return r(e,`${t}.lock`)}const A=new Map;function j(e){A.set(e,(A.get(e)??0)+1)}function M(e){let t=A.get(e);return t===void 0||t<=1?(A.delete(e),!0):(A.set(e,t-1),!1)}function N(e){return typeof e.machineId==`string`?e.machineId===C():e.hostname===p()}const P=new Set;let F=!1;function I(e){P.add(e),!F&&(F=!0,process.on(`exit`,()=>{for(let e of P)try{let t=JSON.parse(c(e,`utf-8`));if(t?.pid!==process.pid||typeof t.machineId==`string`&&t.machineId!==C()||t.machineId===void 0&&typeof t.hostname==`string`&&t.hostname!==p())continue;l(e)}catch{}}))}function L(e,t){try{let n=JSON.parse(c(e,`utf-8`));return n&&typeof n==`object`&&_(n.pid)?n:(D.warn({lockPath:e},`${t} Corrupt lock file at ${e} — replacing`),null)}catch{return D.warn({lockPath:e},`${t} Corrupt lock file at ${e} — replacing`),null}}function R(e){let{lockName:t,lockDir:n,metadata:r}=e,c=`[${t}-lock]`;o(n,{recursive:!0});let f=k(n,t),m={pid:process.pid,hostname:p(),port:r.port,startedAt:new Date().toISOString(),worktreeRoot:r.worktreeRoot,machineId:C(),...r.kind!==void 0&&{kind:r.kind},...r.parentPid!==void 0&&{parentPid:r.parentPid},...r.capabilities!==void 0&&{capabilities:r.capabilities},protocolVersion:r.protocolVersion??1,runtimeVersion:r.runtimeVersion??T},h=JSON.stringify(m,null,2);for(let e=0;e<3;e++){if(!a(f))try{let e=s(f,`wx`,384);try{d(e,h)}finally{i(e)}return j(f),I(f),z({lockName:t,lockDir:n,lockPath:f})}catch(e){if(y(e)!==`EEXIST`)throw e}let e=L(f,c);if(e){if(N(e)&&e.pid===process.pid)return u(f,h,{encoding:`utf-8`,mode:384}),j(f),I(f),z({lockName:t,lockDir:n,lockPath:f});if(g(e.pid))throw new O(e,f,t);D.warn({pid:e.pid,host:e.hostname},`${c} Stale lock detected (pid=${e.pid}, host=${e.hostname}) — replacing`)}try{l(f)}catch{}}throw Error(`${c} Failed to acquire ${f} after 3 attempts (concurrent acquire contention).`)}function z(e){let{lockName:t,lockDir:n,lockPath:r}=e;return{lockPath:r,release:()=>G({lockName:t,lockDir:n}),updatePort:e=>B({lockName:t,lockDir:n,port:e})}}function B(e){let{lockName:t,lockDir:n,port:r}=e,i=`[${t}-lock]`,o=k(n,t);if(!a(o)){D.warn({lockPath:o},`${i} Lock file missing at ${o} during port update — skipping`);return}let s;try{let e=JSON.parse(c(o,`utf-8`));if(!e||typeof e!=`object`||!_(e.pid)){D.warn({lockPath:o},`${i} Corrupt lock at ${o} during port update — skipping`);return}s=e}catch{D.warn({lockPath:o},`${i} Unreadable lock at ${o} during port update — skipping`);return}if(s.pid===process.pid&&N(s)){s.port=r;try{u(o,JSON.stringify(s,null,2),{encoding:`utf-8`,mode:384})}catch(e){D.warn({lockPath:o,err:e},`${i} Failed to update port in ${o}: ${e instanceof Error?e.message:String(e)}`)}}}function V(e){let{lockName:t,lockDir:n}=e,r=`[${t}-lock]`,i=k(n,t);if((A.get(i)??0)>1)return;let a;try{let e=JSON.parse(c(i,`utf-8`));if(!e||typeof e!=`object`||!_(e.pid)){D.warn({lockPath:i},`${r} Corrupt lock at ${i} during draining mark — skipping`);return}a=e}catch(e){y(e)!==`ENOENT`&&D.warn({lockPath:i,err:e},`${r} Unreadable lock at ${i} during draining mark — skipping: ${e instanceof Error?e.message:String(e)}`);return}if(a.pid===process.pid&&N(a)&&a.draining!==!0){a.draining=!0;try{u(i,JSON.stringify(a,null,2),{encoding:`utf-8`,mode:384})}catch(e){D.warn({lockPath:i,err:e},`${r} Failed to mark ${i} draining: ${e instanceof Error?e.message:String(e)}`)}}}function H(e){let{lockName:t,lockDir:n}=e,r=k(n,t);if(!a(r))return null;let i;try{let e=JSON.parse(c(r,`utf-8`));if(!e||typeof e!=`object`||!_(e.pid))return null;i=e}catch{return null}if(!N(i))return null;if(!g(i.pid)){try{l(r)}catch{}return null}return i}function U(e){let{lockName:t,lockDir:n}=e,r=k(n,t);if(!a(r))return{status:`absent`};let i;try{i=JSON.parse(c(r,`utf-8`))}catch{return{status:`incompatible`,reason:`corrupt`,raw:void 0}}if(!i||typeof i!=`object`)return{status:`incompatible`,reason:`corrupt`,raw:i};let o=i;if(!_(o.pid)||typeof o.hostname!=`string`||typeof o.port!=`number`||typeof o.startedAt!=`string`||typeof o.worktreeRoot!=`string`)return{status:`incompatible`,reason:`corrupt`,raw:i};let s={pid:o.pid,hostname:o.hostname,port:o.port,startedAt:o.startedAt,worktreeRoot:o.worktreeRoot,machineId:typeof o.machineId==`string`?o.machineId:void 0,draining:o.draining===!0?!0:void 0,protocolVersion:typeof o.protocolVersion==`number`?o.protocolVersion:void 0,runtimeVersion:typeof o.runtimeVersion==`string`?o.runtimeVersion:void 0};if(!N(s))return{status:`stale`,lock:s};if(!g(s.pid)){try{l(r)}catch{}return{status:`stale`,lock:s}}return s.protocolVersion===void 0||s.runtimeVersion===void 0?{status:`incompatible`,reason:`missing-fields`,raw:i}:{status:`live`,lock:s}}async function W(e){let{lockName:t,lockDir:n}=e,r=e.timeoutMs??1e4,i=e.pollIntervalMs??100,a=e.readLock??(()=>H({lockName:t,lockDir:n})),o=e.sleep??(e=>new Promise(t=>setTimeout(t,e))),s=a();if(s===null||s.draining!==!0)return`no-drain`;let c=Date.now()+r;for(;Date.now()<c;){await o(i);let e=a();if(e===null)return`released`;if(e.draining!==!0)return`no-drain`}return`timeout`}function G(e){let{lockName:t,lockDir:n,deferUnlinkToExit:r=!1}=e,i=`[${t}-lock]`,o=k(n,t);if(M(o)){if(r){V({lockName:t,lockDir:n});return}if(a(o))try{let e=JSON.parse(c(o,`utf-8`));if(!e||typeof e!=`object`||typeof e.pid!=`number`||e.pid!==process.pid||!N(e))return;l(o),P.delete(o)}catch(e){D.warn({lockPath:o,err:e},`${i} Failed to release ${o}: ${e instanceof Error?e.message:String(e)}`)}}}var K=class extends O{constructor(e,t){super(e,t,`server`),this.name=`ServerLockCollisionError`}};function q(e,t){try{return R({lockName:`server`,lockDir:e,metadata:t}).lockPath}catch(e){throw e instanceof O&&e.lockName===`server`?new K(e.existing,e.lockPath):e}}function J(e,t){B({lockName:`server`,lockDir:e,port:t})}function Y(e){return H({lockName:`server`,lockDir:e})}function X(e,t){G({lockName:`server`,lockDir:e,...t})}function Z(e){V({lockName:`server`,lockDir:e})}function Q(e,t){return W({lockName:`server`,lockDir:e,...t})}export{_ as S,E as _,X as a,v as b,O as c,V as d,H as f,T as g,B as h,Y as i,R as l,G as m,q as n,J as o,U as p,Z as r,Q as s,K as t,k as u,C as v,g as x,y};
2
- //# sourceMappingURL=server-lock-DKdlkhpB.mjs.map
1
+ import"./src-2StQCkyf.mjs";import{r as e}from"./logger-B7Z8XO-z.mjs";import{dirname as t,join as n,resolve as r}from"node:path";import{closeSync as i,existsSync as a,mkdirSync as o,openSync as s,readFileSync as c,unlinkSync as l,writeFileSync as u,writeSync as d}from"node:fs";import{homedir as f,hostname as p}from"node:os";import{fileURLToPath as m}from"node:url";import{randomUUID as h}from"node:crypto";function g(e){try{return process.kill(e,0),!0}catch(e){return!!(e&&typeof e==`object`&&`code`in e&&e.code===`EPERM`)}}function _(e){return!(typeof e!=`number`||!Number.isInteger(e)||e<2||e>2147483647)}function v(e){return new URL(e.url??``,`http://localhost`).searchParams}function y(e){let t=e?.code;return typeof t==`string`?t:void 0}const b=/^[A-Za-z0-9-]{8,64}$/;let x=null;function S(e){return n(e??f(),`.ok`,`machine-id`)}function C(n){if(n===void 0&&x!==null)return x;let r=S(n),i=null;try{let e=c(r,`utf-8`).trim();b.test(e)&&(i=e)}catch{}if(i===null){i=h();try{o(t(r),{recursive:!0}),u(r,`${i}\n`,{encoding:`utf-8`,mode:384})}catch(t){e(`machine-id`).warn({path:r,err:t},`Failed to persist ${r} — using an ephemeral per-process id; lock ownership checks will fail closed (collision) instead of recognizing this machine: ${t instanceof Error?t.message:String(t)}`)}}return n===void 0&&(x=i),i}function w(){try{let e=r(t(m(import.meta.url)),`..`,`package.json`),n=JSON.parse(c(e,`utf-8`));if(typeof n.version==`string`&&n.version.length>0)return n.version}catch{}return`0.0.0-unknown`}const T=w(),E=1,D=e(`process-lock`);var O=class extends Error{existing;lockPath;lockName;constructor(e,t,n){super(`OpenKnowledge ${n} already running on port ${e.port} (pid ${e.pid}, started ${e.startedAt}). Stop it first or use a different directory. Lock: ${t}`),this.name=`ProcessLockCollisionError`,this.existing=e,this.lockPath=t,this.lockName=n}};function k(e,t){return r(e,`${t}.lock`)}const A=new Map;function j(e){A.set(e,(A.get(e)??0)+1)}function M(e){let t=A.get(e);return t===void 0||t<=1?(A.delete(e),!0):(A.set(e,t-1),!1)}function N(e){return typeof e.machineId==`string`?e.machineId===C():e.hostname===p()}const P=new Set;let F=!1;function I(e){P.add(e),!F&&(F=!0,process.on(`exit`,()=>{for(let e of P)try{let t=JSON.parse(c(e,`utf-8`));if(t?.pid!==process.pid||typeof t.machineId==`string`&&t.machineId!==C()||t.machineId===void 0&&typeof t.hostname==`string`&&t.hostname!==p())continue;l(e)}catch{}}))}function L(e,t){try{let n=JSON.parse(c(e,`utf-8`));return n&&typeof n==`object`&&_(n.pid)?n:(D.warn({lockPath:e},`${t} Corrupt lock file at ${e} — replacing`),null)}catch{return D.warn({lockPath:e},`${t} Corrupt lock file at ${e} — replacing`),null}}function R(e){let{lockName:t,lockDir:n,metadata:r}=e,c=`[${t}-lock]`;o(n,{recursive:!0});let f=k(n,t),m={pid:process.pid,hostname:p(),port:r.port,startedAt:new Date().toISOString(),worktreeRoot:r.worktreeRoot,machineId:C(),...r.kind!==void 0&&{kind:r.kind},...r.parentPid!==void 0&&{parentPid:r.parentPid},...r.capabilities!==void 0&&{capabilities:r.capabilities},protocolVersion:r.protocolVersion??1,runtimeVersion:r.runtimeVersion??T},h=JSON.stringify(m,null,2);for(let e=0;e<3;e++){if(!a(f))try{let e=s(f,`wx`,384);try{d(e,h)}finally{i(e)}return j(f),I(f),z({lockName:t,lockDir:n,lockPath:f})}catch(e){if(y(e)!==`EEXIST`)throw e}let e=L(f,c);if(e){if(N(e)&&e.pid===process.pid)return u(f,h,{encoding:`utf-8`,mode:384}),j(f),I(f),z({lockName:t,lockDir:n,lockPath:f});if(g(e.pid))throw new O(e,f,t);D.warn({pid:e.pid,host:e.hostname},`${c} Stale lock detected (pid=${e.pid}, host=${e.hostname}) — replacing`)}try{l(f)}catch{}}throw Error(`${c} Failed to acquire ${f} after 3 attempts (concurrent acquire contention).`)}function z(e){let{lockName:t,lockDir:n,lockPath:r}=e;return{lockPath:r,release:()=>G({lockName:t,lockDir:n}),updatePort:e=>B({lockName:t,lockDir:n,port:e})}}function B(e){let{lockName:t,lockDir:n,port:r}=e,i=`[${t}-lock]`,o=k(n,t);if(!a(o)){D.warn({lockPath:o},`${i} Lock file missing at ${o} during port update — skipping`);return}let s;try{let e=JSON.parse(c(o,`utf-8`));if(!e||typeof e!=`object`||!_(e.pid)){D.warn({lockPath:o},`${i} Corrupt lock at ${o} during port update — skipping`);return}s=e}catch{D.warn({lockPath:o},`${i} Unreadable lock at ${o} during port update — skipping`);return}if(s.pid===process.pid&&N(s)){s.port=r;try{u(o,JSON.stringify(s,null,2),{encoding:`utf-8`,mode:384})}catch(e){D.warn({lockPath:o,err:e},`${i} Failed to update port in ${o}: ${e instanceof Error?e.message:String(e)}`)}}}function V(e){let{lockName:t,lockDir:n}=e,r=`[${t}-lock]`,i=k(n,t);if((A.get(i)??0)>1)return;let a;try{let e=JSON.parse(c(i,`utf-8`));if(!e||typeof e!=`object`||!_(e.pid)){D.warn({lockPath:i},`${r} Corrupt lock at ${i} during draining mark — skipping`);return}a=e}catch(e){y(e)!==`ENOENT`&&D.warn({lockPath:i,err:e},`${r} Unreadable lock at ${i} during draining mark — skipping: ${e instanceof Error?e.message:String(e)}`);return}if(a.pid===process.pid&&N(a)&&a.draining!==!0){a.draining=!0;try{u(i,JSON.stringify(a,null,2),{encoding:`utf-8`,mode:384})}catch(e){D.warn({lockPath:i,err:e},`${r} Failed to mark ${i} draining: ${e instanceof Error?e.message:String(e)}`)}}}function H(e){let{lockName:t,lockDir:n}=e,r=k(n,t);if(!a(r))return null;let i;try{let e=JSON.parse(c(r,`utf-8`));if(!e||typeof e!=`object`||!_(e.pid))return null;i=e}catch{return null}if(!N(i))return null;if(!g(i.pid)){try{l(r)}catch{}return null}return i}function U(e){let{lockName:t,lockDir:n}=e,r=k(n,t);if(!a(r))return{status:`absent`};let i;try{i=JSON.parse(c(r,`utf-8`))}catch{return{status:`incompatible`,reason:`corrupt`,raw:void 0}}if(!i||typeof i!=`object`)return{status:`incompatible`,reason:`corrupt`,raw:i};let o=i;if(!_(o.pid)||typeof o.hostname!=`string`||typeof o.port!=`number`||typeof o.startedAt!=`string`||typeof o.worktreeRoot!=`string`)return{status:`incompatible`,reason:`corrupt`,raw:i};let s={pid:o.pid,hostname:o.hostname,port:o.port,startedAt:o.startedAt,worktreeRoot:o.worktreeRoot,machineId:typeof o.machineId==`string`?o.machineId:void 0,draining:o.draining===!0?!0:void 0,protocolVersion:typeof o.protocolVersion==`number`?o.protocolVersion:void 0,runtimeVersion:typeof o.runtimeVersion==`string`?o.runtimeVersion:void 0};if(!N(s))return{status:`stale`,lock:s};if(!g(s.pid)){try{l(r)}catch{}return{status:`stale`,lock:s}}return s.protocolVersion===void 0||s.runtimeVersion===void 0?{status:`incompatible`,reason:`missing-fields`,raw:i}:{status:`live`,lock:s}}async function W(e){let{lockName:t,lockDir:n}=e,r=e.timeoutMs??1e4,i=e.pollIntervalMs??100,a=e.readLock??(()=>H({lockName:t,lockDir:n})),o=e.sleep??(e=>new Promise(t=>setTimeout(t,e))),s=a();if(s===null||s.draining!==!0)return`no-drain`;let c=Date.now()+r;for(;Date.now()<c;){await o(i);let e=a();if(e===null)return`released`;if(e.draining!==!0)return`no-drain`}return`timeout`}function G(e){let{lockName:t,lockDir:n,deferUnlinkToExit:r=!1}=e,i=`[${t}-lock]`,o=k(n,t);if(M(o)){if(r){V({lockName:t,lockDir:n});return}if(a(o))try{let e=JSON.parse(c(o,`utf-8`));if(!e||typeof e!=`object`||typeof e.pid!=`number`||e.pid!==process.pid||!N(e))return;l(o),P.delete(o)}catch(e){D.warn({lockPath:o,err:e},`${i} Failed to release ${o}: ${e instanceof Error?e.message:String(e)}`)}}}var K=class extends O{constructor(e,t){super(e,t,`server`),this.name=`ServerLockCollisionError`}};function q(e,t){try{return R({lockName:`server`,lockDir:e,metadata:t}).lockPath}catch(e){throw e instanceof O&&e.lockName===`server`?new K(e.existing,e.lockPath):e}}function J(e,t){B({lockName:`server`,lockDir:e,port:t})}function Y(e){return H({lockName:`server`,lockDir:e})}function X(e,t){G({lockName:`server`,lockDir:e,...t})}function Z(e){V({lockName:`server`,lockDir:e})}function Q(e,t){return W({lockName:`server`,lockDir:e,...t})}export{_ as S,E as _,X as a,v as b,O as c,V as d,H as f,T as g,B as h,Y as i,R as l,G as m,q as n,J as o,U as p,Z as r,Q as s,K as t,k as u,C as v,g as x,y};
2
+ //# sourceMappingURL=server-lock-D6rSSnhg.mjs.map
@@ -0,0 +1 @@
1
+ import{a as e,o as t,r as n}from"./server-lock-D6rSSnhg.mjs";export{n as markServerLockDraining,e as releaseServerLock,t as updateServerLockPort};