@inkeep/open-knowledge 0.72.0-beta.2 → 0.72.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 (194) hide show
  1. package/dist/THIRD_PARTY_NOTICES.md +24 -4
  2. package/dist/cli.mjs +67 -67
  3. package/dist/constants-tN6BLxqK.mjs +1 -0
  4. package/dist/{dist-C7Oi9AkI.mjs → dist-B7NFh0MZ.mjs} +464 -464
  5. package/dist/dist-D7HUGErx.mjs +1 -0
  6. package/dist/index.d.mts +59 -1
  7. package/dist/index.mjs +2 -2
  8. package/dist/init-0RF5mT_e.mjs +1 -0
  9. package/dist/{init-CFhk-KKz.mjs → init-R__-FL-k.mjs} +26 -26
  10. package/dist/{launch-json-removal-7nhKMMtQ.mjs → launch-json-removal-7D0nQT56.mjs} +1 -1
  11. package/dist/{loader-KtGbC19j.mjs → loader-BRYG-jTN.mjs} +1 -1
  12. package/dist/loader-BicS4rg_.mjs +1 -0
  13. package/dist/{open-browser-B9QXUTKM.mjs → open-browser-4-j8NELI.mjs} +1 -1
  14. package/dist/{preview-CyJ8a7Fo.mjs → preview-DjhHIWGN.mjs} +1 -1
  15. package/dist/preview-DtEWXaoq.mjs +1 -0
  16. package/dist/public/assets/{ActivityModeContent-D6Br5xYs.js → ActivityModeContent-DLnzCgfz.js} +1 -1
  17. package/dist/public/assets/AddPropertiesButton-5U2Y3uKp.js +2 -0
  18. package/dist/public/assets/{AgentDiffPane-Bbm1t3vi.js → AgentDiffPane-B5amlfmP.js} +1 -1
  19. package/dist/public/assets/{AgentIconCluster-RWclNpfz.js → AgentIconCluster-DiWkEX6O.js} +1 -1
  20. package/dist/public/assets/{AgentThreadClientBinder-zhmAd3N4.js → AgentThreadClientBinder-iSWzdyTG.js} +1 -1
  21. package/dist/public/assets/{AppMenubar-B76J1mnO.js → AppMenubar-CCjUhkgg.js} +1 -1
  22. package/dist/public/assets/{BugReportHistory-DdAlxeKa.js → BugReportHistory-CounGQhT.js} +1 -1
  23. package/dist/public/assets/{BugReportHistoryDialog-BWMg-utz.js → BugReportHistoryDialog-CgPrrnbM.js} +1 -1
  24. package/dist/public/assets/CodeMirrorPropInput-Cmq0OheO.js +3 -0
  25. package/dist/public/assets/{ConfigSharingInfoTooltip-BT8NSNpC.js → ConfigSharingInfoTooltip-CK9XrP2K.js} +1 -1
  26. package/dist/public/assets/ConsentDialogBody-BD4DWbp5.js +2 -0
  27. package/dist/public/assets/{DiffViewBoundary-BrG_w2xt.js → DiffViewBoundary-BXdwk2Iq.js} +1 -1
  28. package/dist/public/assets/DocumentContext-TAFDDp6U.js +39 -0
  29. package/dist/public/assets/{EditorModeToggle-Bw00uYRx.js → EditorModeToggle-Dg7vVHl3.js} +1 -1
  30. package/dist/public/assets/{EnableSyncConfirmDialog-AIzGmViP.js → EnableSyncConfirmDialog-R-Z946N5.js} +1 -1
  31. package/dist/public/assets/{ExcalidrawDocEditor-B3lMLUyK.js → ExcalidrawDocEditor-CY1lJS-2.js} +1 -1
  32. package/dist/public/assets/FeedbackForm-CUHxAufb.js +1 -0
  33. package/dist/public/assets/{GraphPanel-BslSE6Rs.js → GraphPanel-omwwsp_N.js} +1 -1
  34. package/dist/public/assets/{ImageAttachments-B3v4V_wq.js → ImageAttachments-BpYJnzlN.js} +1 -1
  35. package/dist/public/assets/{ImportSkillDialog-_-_27gp-.js → ImportSkillDialog-BTpla3g7.js} +1 -1
  36. package/dist/public/assets/{LintConfigEditor-b5hf0c12.js → LintConfigEditor-CVkLVVX0.js} +1 -1
  37. package/dist/public/assets/{ManagedArtifactProperties-C4m9IvIx.js → ManagedArtifactProperties-C1nhYITR.js} +1 -1
  38. package/dist/public/assets/ManagedArtifactProperties-D_9Orim7.js +1 -0
  39. package/dist/public/assets/McpConsentDialogBody-CXF6JRwT.js +1 -0
  40. package/dist/public/assets/{MermaidDocEditor-Bw0spqld.js → MermaidDocEditor-Nc0VfQkz.js} +1 -1
  41. package/dist/public/assets/{OpenInAgentMenuItem-BDg1hjU8.js → OpenInAgentMenuItem-CzPwpHyZ.js} +1 -1
  42. package/dist/public/assets/{PropertyDisplayRow-CqAThkeg.js → PropertyDisplayRow-BGe6-4L9.js} +1 -1
  43. package/dist/public/assets/{RegisteredAgentIcon-D2Kzp4_r.js → RegisteredAgentIcon-Dit7Zlh0.js} +1 -1
  44. package/dist/public/assets/{ReportBugDialogBody-D5gnrY-R.js → ReportBugDialogBody-CiI1lRKj.js} +2 -2
  45. package/dist/public/assets/{ReportBugMenuTrigger-C3h3CSq-.js → ReportBugMenuTrigger-DoDCPu1X.js} +2 -2
  46. package/dist/public/assets/{RowDisclosure-7_AiotxM.js → RowDisclosure-D03pq8gd.js} +1 -1
  47. package/dist/public/assets/{SchemaConfigEditor-D1R3Sh2v.js → SchemaConfigEditor-CSINzXTv.js} +1 -1
  48. package/dist/public/assets/{SessionsHost-BZSJ7b41.js → SessionsHost-Crwf7ff-.js} +2 -2
  49. package/dist/public/assets/SettingsDialogBody-Bl3NZ37F.js +12 -0
  50. package/dist/public/assets/{ShareBranchSwitchDialog-CSAWwldJ.js → ShareBranchSwitchDialog-DqSgSjyg.js} +1 -1
  51. package/dist/public/assets/{ShareReceiveDialog-CuDoDPVy.js → ShareReceiveDialog-BZtxSZra.js} +1 -1
  52. package/dist/public/assets/{ShareReceiveMissDialog-BLGRUEIB.js → ShareReceiveMissDialog-dnAsxL19.js} +1 -1
  53. package/dist/public/assets/{SkillCostValue-n_G2nfYn.js → SkillCostValue-CHZQh8Rq.js} +1 -1
  54. package/dist/public/assets/{SkillEditBanner-rv5kIgLF.js → SkillEditBanner-SYzSHptQ.js} +1 -1
  55. package/dist/public/assets/{SkillForkDialog-B8iWPj-U.js → SkillForkDialog-Cz82rkwA.js} +1 -1
  56. package/dist/public/assets/{SkillInstallMenu-BuIpRm5q.js → SkillInstallMenu-CNY0p5vX.js} +1 -1
  57. package/dist/public/assets/{SkillOriginInline-DkPpXgsk.js → SkillOriginInline-DuKHAOBP.js} +1 -1
  58. package/dist/public/assets/{SkillToolbarControls-o69NuC2o.js → SkillToolbarControls-CjE7B4SI.js} +1 -1
  59. package/dist/public/assets/{SlidesToolbarControls-DRYjoVIj.js → SlidesToolbarControls-C5RytnIw.js} +1 -1
  60. package/dist/public/assets/SourceEditor-CAEGq_cL.js +1 -0
  61. package/dist/public/assets/{TerminalPanel-Dt20JtHr.js → TerminalPanel-Lr-gSBEo.js} +3 -3
  62. package/dist/public/assets/{TerminalWindowApp-BmX3dvBA.js → TerminalWindowApp-Cbqv2j6x.js} +1 -1
  63. package/dist/public/assets/{TextDocEditor-Dg49b5Fz.js → TextDocEditor-BbjLCMRm.js} +1 -1
  64. package/dist/public/assets/{ThreadView-DHQJWRJ8.js → ThreadView-BhfeLCUr.js} +3 -3
  65. package/dist/public/assets/{TimelineDiffPane-ihWm-KX_.js → TimelineDiffPane-DeUhHr6c.js} +1 -1
  66. package/dist/public/assets/agent-connection-status-XSdlZ0uj.js +1 -0
  67. package/dist/public/assets/auth-state-cache-lPOpwdxt.js +11 -0
  68. package/dist/public/assets/{bug-report-send-manager-CdO7h2kH.js → bug-report-send-manager-C8UOqZop.js} +1 -1
  69. package/dist/public/assets/client-version-DMKN1tA1.js +1 -0
  70. package/dist/public/assets/{comment-chips-MmWHfkrw.js → comment-chips-DG6TcreO.js} +1 -1
  71. package/dist/public/assets/config-provider-CL2LHJwy.js +4 -0
  72. package/dist/public/assets/css-color-to-hex-21hHTVNl.js +1 -0
  73. package/dist/public/assets/{dist-CyWcc58M.js → dist-75Tp0j2s.js} +1 -1
  74. package/dist/public/assets/{dist-BjJaywqn.js → dist-BX7qfUal.js} +1 -1
  75. package/dist/public/assets/{dist-DBMXz-r_.js → dist-CsrrNdnj.js} +1 -1
  76. package/dist/public/assets/dist-DYso7MCm.js +1 -0
  77. package/dist/public/assets/{dist-wcXwpuqG.js → dist-tLQ-ULW1.js} +1 -1
  78. package/dist/public/assets/{dist-GoOli512.js → dist-zcYT-cpc.js} +1 -1
  79. package/dist/public/assets/{doc-hash-BEmc5wpM.js → doc-hash-0sJsliMq.js} +1 -1
  80. package/dist/public/assets/{doc-undo-manager-CNOE_leW.js → doc-undo-manager-CUMz1Lu7.js} +1 -1
  81. package/dist/public/assets/{documents-events-D_K3dHNa.js → documents-events-DvTemRtX.js} +1 -1
  82. package/dist/public/assets/{dropdown-menu--ZF4igWe.js → dropdown-menu-SORDKiaq.js} +1 -1
  83. package/dist/public/assets/{file-tree-adapter-D5yCyoxr.js → file-tree-adapter-C-zUZxGY.js} +1 -1
  84. package/dist/public/assets/{file-tree-utils-Css5oRd6.js → file-tree-utils-DQrKhuvs.js} +1 -1
  85. package/dist/public/assets/floating-ui.dom-CDtYEnEj.js +1 -0
  86. package/dist/public/assets/{folder-config-api-CYCg3Hjc.js → folder-config-api-O8wiP8u9.js} +1 -1
  87. package/dist/public/assets/globals-MNUe1ruv.css +1 -0
  88. package/dist/public/assets/index-YzLx3klx.js +2205 -0
  89. package/dist/public/assets/{lint-config-client-D2CVLI8s.js → lint-config-client-D_K_I33M.js} +1 -1
  90. package/dist/public/assets/{markdownlint-rule-browser-C70syIyl.js → markdownlint-rule-browser-D_33Iwwv.js} +1 -1
  91. package/dist/public/assets/messages-BYiJXmNN.js +1 -0
  92. package/dist/public/assets/messages-BwGMYA_G.js +1 -0
  93. package/dist/public/assets/messages-CFWXeDS9.js +1 -0
  94. package/dist/public/assets/messages-CbXu74T2.js +1 -0
  95. package/dist/public/assets/messages-Czy5uUdz.js +1 -0
  96. package/dist/public/assets/messages-DKoHMjaK.js +1 -0
  97. package/dist/public/assets/messages-DVDSsf5u.js +1 -0
  98. package/dist/public/assets/messages-Dnppvuua.js +1 -0
  99. package/dist/public/assets/messages-IHf96h9y.js +1 -0
  100. package/dist/public/assets/messages-ijpiuVRD.js +1 -0
  101. package/dist/public/assets/messages-lPluOXUP.js +1 -0
  102. package/dist/public/assets/messages-nbT9wGXG.js +1 -0
  103. package/dist/public/assets/navigation-targets-CLA-LGSO.js +1 -0
  104. package/dist/public/assets/{page-list-cache-B2Cbn6_1.js → page-list-cache-DmQP_SV8.js} +1 -1
  105. package/dist/public/assets/{pending-receive-nav-store-JHjfq5my.js → pending-receive-nav-store-lpN2Xg2z.js} +1 -1
  106. package/dist/public/assets/{popover-BYD_0UMt.js → popover-CBJqdXoA.js} +1 -1
  107. package/dist/public/assets/{prod-CjhMsIt8.js → prod-DDPjOXpF.js} +1 -1
  108. package/dist/public/assets/{progress-DyuMaHpo.js → progress-CpKCXRqy.js} +3 -3
  109. package/dist/public/assets/{project-paths-CTKMJD3w.js → project-paths-gqDqqCq-.js} +1 -1
  110. package/dist/public/assets/{prop-types-BZCimyh-.js → prop-types-Cz_4UFXS.js} +1 -1
  111. package/dist/public/assets/{receive-store-DzTOlR0N.js → receive-store-CmP1Rnn7.js} +1 -1
  112. package/dist/public/assets/{select-BKzcW_PB.js → select-ByJwKu6h.js} +1 -1
  113. package/dist/public/assets/{selection-context-b6fqlX7H.js → selection-context-BYtzxyLE.js} +1 -1
  114. package/dist/public/assets/{skill-scope-N9lA7J2A.js → skill-scope-zjfKF_hV.js} +1 -1
  115. package/dist/public/assets/{skills-api-t8N6VdpP.js → skills-api-DefDq-V9.js} +1 -1
  116. package/dist/public/assets/{src-YPYliXpo.js → src-DyfxwlyE.js} +2 -2
  117. package/dist/public/assets/{startup-marks-w6Ilv1dh.js → startup-marks-DkofILWo.js} +1 -1
  118. package/dist/public/assets/{tag-pill-input-NZmlTNmF.js → tag-pill-input-fBTfmjgu.js} +1 -1
  119. package/dist/public/assets/{target-navigation-intent-Bu5cNTBP.js → target-navigation-intent-JS6hYcot.js} +1 -1
  120. package/dist/public/assets/{telemetry-impl-CKvjKher.js → telemetry-impl-CFkmFcv6.js} +1 -1
  121. package/dist/public/assets/{telemetry-startup-BfBWUHVq.js → telemetry-startup-Bac091X8.js} +1 -1
  122. package/dist/public/assets/{terminal-cli-display-B4B1SuEp.js → terminal-cli-display-B8ySenln.js} +1 -1
  123. package/dist/public/assets/{terminal-command-events-BGXJdDho.js → terminal-command-events-DrvZC8Eu.js} +1 -1
  124. package/dist/public/assets/{terminal-launch-events-DCbQD5pb.js → terminal-launch-events-qWlFGuUx.js} +1 -1
  125. package/dist/public/assets/{terminal-telemetry-C3BIM0C7.js → terminal-telemetry-CpRQ96Ji.js} +1 -1
  126. package/dist/public/assets/{tooltip-DttaCTqz.js → tooltip-BnyyQDRs.js} +1 -1
  127. package/dist/public/assets/{typing-burst-detector-B8XZFG6h.js → typing-burst-detector-BBbOZnKo.js} +4 -4
  128. package/dist/public/assets/uninstall-v61_ZoXT.js +1 -0
  129. package/dist/public/assets/{use-activity-panel-BTpRB5o1.js → use-activity-panel-DCGFCgW4.js} +1 -1
  130. package/dist/public/assets/use-apply-config-language-BS-vov2w.js +2 -0
  131. package/dist/public/assets/{use-collab-url-B_rNmVb_.js → use-collab-url-mFOjr2IA.js} +1 -1
  132. package/dist/public/assets/{use-conflicts-DwqMCspl.js → use-conflicts-C8dN_iXo.js} +1 -1
  133. package/dist/public/assets/{use-live-xterm-theme-WB5uWQWt.js → use-live-xterm-theme-B9dAAZD3.js} +1 -1
  134. package/dist/public/assets/{use-open-skill-BRRyog-h.js → use-open-skill-BAPaR7kA.js} +1 -1
  135. package/dist/public/assets/{use-settings-route-D7psIUas.js → use-settings-route-BxaIY7g8.js} +1 -1
  136. package/dist/public/assets/{use-skill-origin-D-hrfwwb.js → use-skill-origin-CZlBPaka.js} +1 -1
  137. package/dist/public/assets/{use-skills-Drb1FGEU.js → use-skills-C6QmTsGG.js} +1 -1
  138. package/dist/public/assets/{use-terminal-enabled-D53OcVAl.js → use-terminal-enabled-D0rb9s4e.js} +1 -1
  139. package/dist/public/assets/use-timeline-entry-diff-6pBvX9Gh.js +5 -0
  140. package/dist/public/assets/{use-workspace-BY7Os3yY.js → use-workspace-CPN4D3G_.js} +1 -1
  141. package/dist/public/index.html +70 -70
  142. package/dist/public/uninstall.html +7 -6
  143. package/dist/{registry-probes-RTMO-HFE.mjs → registry-probes-Cthf_D-E.mjs} +10 -10
  144. package/dist/{removal-file-path-Crs4OKht.mjs → removal-file-path-B3Ia2LYa.mjs} +1 -1
  145. package/dist/{repair-launch-json-Tte7sWD6.mjs → repair-launch-json-LAfXDQlt.mjs} +1 -1
  146. package/dist/{repair-mcp-configs-yyQ7PZIM.mjs → repair-mcp-configs-Dz9benJ2.mjs} +1 -1
  147. package/dist/src-BCVXAb8B.mjs +1 -0
  148. package/dist/src-CQqhz0Kv.mjs +11 -0
  149. package/dist/start-C5D7Sm06.mjs +1 -0
  150. package/dist/{start-B4ByX6yB.mjs → start-C9LxTCYi.mjs} +3 -3
  151. package/package.json +4 -4
  152. package/dist/constants-D-T_nFfi.mjs +0 -1
  153. package/dist/dist-s4KdL8xn.mjs +0 -1
  154. package/dist/init-BU3jv3FQ.mjs +0 -1
  155. package/dist/loader-DHDkFl6q.mjs +0 -1
  156. package/dist/preview-CoUWhiJn.mjs +0 -1
  157. package/dist/public/assets/AddPropertiesButton-D2QC5a0y.js +0 -2
  158. package/dist/public/assets/CodeMirrorPropInput-CaBn84Ep.js +0 -3
  159. package/dist/public/assets/ConsentDialogBody-CdTmAsAj.js +0 -2
  160. package/dist/public/assets/DocumentContext-avYx9HfE.js +0 -39
  161. package/dist/public/assets/FeedbackForm-CQP7-Thy.js +0 -1
  162. package/dist/public/assets/ManagedArtifactProperties-BTZ9pf__.js +0 -1
  163. package/dist/public/assets/McpConsentDialogBody-B0cKqNAZ.js +0 -1
  164. package/dist/public/assets/SettingsDialogBody-DJlVd3Lf.js +0 -12
  165. package/dist/public/assets/SourceEditor-j0Oy5-Ub.js +0 -1
  166. package/dist/public/assets/agent-connection-status-DNcSO8Of.js +0 -1
  167. package/dist/public/assets/auth-state-cache-BFwDxz1x.js +0 -11
  168. package/dist/public/assets/client-version-B-nUcRRZ.js +0 -1
  169. package/dist/public/assets/config-provider-DDlH5XLd.js +0 -5
  170. package/dist/public/assets/css-color-to-hex-D4ROZoal.js +0 -1
  171. package/dist/public/assets/dist-CMrReMig.js +0 -1
  172. package/dist/public/assets/floating-ui.dom-BcZPrP06.js +0 -1
  173. package/dist/public/assets/globals-Ch23_3FO.css +0 -1
  174. package/dist/public/assets/i18n-C4053E1c.js +0 -1
  175. package/dist/public/assets/index-CMIN3mxx.js +0 -2205
  176. package/dist/public/assets/messages-3gjCM9Hp.js +0 -1
  177. package/dist/public/assets/messages-4g9WFtqZ.js +0 -1
  178. package/dist/public/assets/messages-82g1isaV.js +0 -1
  179. package/dist/public/assets/messages-A3t6jG7o.js +0 -1
  180. package/dist/public/assets/messages-BYVte33c.js +0 -1
  181. package/dist/public/assets/messages-CFy1VdRh.js +0 -1
  182. package/dist/public/assets/messages-CHMCyj_H.js +0 -1
  183. package/dist/public/assets/messages-CvZuXVc5.js +0 -1
  184. package/dist/public/assets/messages-DCzNz6_z.js +0 -1
  185. package/dist/public/assets/messages-DN76EHsp.js +0 -1
  186. package/dist/public/assets/messages-QY_0Lilx.js +0 -1
  187. package/dist/public/assets/messages-tLVODCA0.js +0 -1
  188. package/dist/public/assets/navigation-targets-Fxss68va.js +0 -1
  189. package/dist/public/assets/uninstall-BxVvvQ3I.js +0 -1
  190. package/dist/public/assets/use-timeline-entry-diff-BCOSn9yc.js +0 -5
  191. package/dist/src-BM5JsMhJ.mjs +0 -11
  192. package/dist/src-XLbP6EmC.mjs +0 -1
  193. package/dist/start-DhToq7IR.mjs +0 -1
  194. /package/dist/public/assets/{globals-CQVYUd1p.js → globals-iI2jjGV8.js} +0 -0
@@ -1 +0,0 @@
1
- import{$s as e,A as t,Gs as n,Js as r,Us as i,Ws as a,Xo as o,Xs as s,Yr as c,Ys as l,Zo as u,aa as d,ec as f,qs as p,rs as m,ts as h,zs as g}from"./dist-CyWcc58M.js";import{r as _}from"./doc-paths-CExjBWO9.js";import{o as v,r as y}from"./file-tree-utils-Css5oRd6.js";function b(t){return t.scope===`project`?e(x(t)):s(t.scope,t.name,t.hostQualifier)}function x(e){return e.canonicalPath??e.path}function S(t,n){return t.scope===`project`?`${x(t).replace(/\/SKILL\.mdx?$/i,``)}/${e(n)}`:l(t.scope,t.name,n,t.hostQualifier)}function C(e){let t=n(e);return t?.kind===`skill`?t.name:null}function w(e){let t=e.trim();return{normalizedTarget:t.replace(/^\.\/+/,``).replace(/^\/+/,``).replace(/\/+$/g,``),expectsFolder:/\/+$/.test(t)}}function T(e){return _(e).replace(/\/+$/g,``)}var E=/\.(md|mdx)$/i;function D(e){let t=e;for(;E.test(t);){let e=t.replace(E,``);if(!e)return t;t=e}return t}function O(e,t){let{normalizedTarget:n,expectsFolder:r}=w(e);if(r||!E.test(n))return e;let i=D(n);return t.has(n)&&!t.has(i)?e:i}function k(e){let t=new Set;for(let n of e)for(let e of y(n))t.add(e);return t}function A(e,t){if(!t)return;let n=d(e);if(n)return t.get(n)}function j(e,t){if(!t||e.includes(`/`))return;let n=d(e);if(n)return t.get(n)}function M(e,t){return t?`${e}${t}`:(e.split(`/`).pop()??``).lastIndexOf(`.`)>0?e:`${e}.md`}function N(e,t){if(!v(e)||p(e)||t.pages.has(e))return null;let n=M(e,t.docExt);return{kind:`asset`,target:n,assetPath:n,mediaKind:m(n.slice(n.lastIndexOf(`.`)+1))}}function P(e,t){let n=O(e,t.pages);if(g(n)){let e=a(n);if(e?.kind===`skill`&&e.scope===`project`){let t=r(e.name);return{kind:`doc`,target:t,docName:t}}let t=i(n);if(t){let e=f(t.folder,t.name);return{kind:`doc`,target:e,docName:e}}return{kind:`doc`,target:n,docName:n}}if(C(n))return{kind:`doc`,target:n,docName:n};let s=p(n);if(s){let e=f(s.folder,s.name);return{kind:`doc`,target:e,docName:e}}let{normalizedTarget:c,expectsFolder:l}=w(n);if(!c)return{kind:`missing`,target:c};if(!l&&(h(c)||u(c)||o(c)))return{kind:`doc`,target:c,docName:c};let d=T(n);if(!l&&d!==c&&t.pages.has(d))return{kind:`doc`,target:d,docName:d};if(!l&&t.pages.has(c))return{kind:`doc`,target:c,docName:c};if(!l){let e=A(d,t.pagesBySlug);if(e)return{kind:`doc`,target:e,docName:e}}let m=`${d}/index`;if(t.pages.has(m))return{kind:`folder-index`,target:d,folderPath:d,docName:m,noteKind:`canonical-index`};let _=d.split(`/`).pop(),v=_?`${d}/${_}`:null;if(v&&t.pages.has(v))return{kind:`folder-index`,target:d,folderPath:d,docName:v,noteKind:`legacy-folder-note`};if(!l){let e=j(d,t.pagesByBasename);if(e)return{kind:`doc`,target:e,docName:e}}if((t.folderPaths??k(t.pages)).has(d))return{kind:`folder`,target:d,folderPath:d};if(!l){let e=N(c,t);if(e)return e}return{kind:`missing`,target:d||c}}function F(e){return e.kind===`folder-index`?{kind:`folder`,target:e.folderPath,folderPath:e.folderPath}:e}function I(e,n,r=t){return typeof n!=`number`||!c(n,r)?null:{kind:`large-file`,target:e,docName:e,size:n,limit:r}}function L(e,n,r=t){return e.kind!==`doc`&&e.kind!==`folder-index`?e:I(e.docName,n.get(e.docName)?.size,r)??e}function R(e){switch(e.kind){case`doc`:case`folder-index`:case`large-file`:return e.docName;case`missing`:return e.target;case`asset`:case`skill-file`:case`skills`:case`skill-preview`:case`folder`:return null}}export{N as a,C as c,I as i,S as l,R as n,P as o,F as r,L as s,k as t,b as u};
@@ -1 +0,0 @@
1
- import{o as e}from"./chunk-CYidjpOJ.js";import{t}from"./globals-CQVYUd1p.js";import{t as n}from"./jsx-runtime-BUgB2tll.js";import{t as r}from"./react-f2sANaYj.js";import{n as i,r as a,t as o}from"./dist-Nvb76hAm.js";import{t as s}from"./compiler-runtime-BfE3aGVn.js";import{t as c}from"./button-Cym3gapE.js";import{t as l}from"./checkbox-Crs_F_Np.js";import{t as u}from"./label-D-K3fWtj.js";import{n as d,t as f}from"./radio-group-npdxiS6E.js";import{on as p,sn as m}from"./dist-CyWcc58M.js";import{t as h}from"./dist-Cr4-nBVI.js";import{t as g}from"./spinner-Bp2_BYkl.js";import{t as _}from"./input-f41fkc3m.js";import"./i18n-C4053E1c.js";import{t as v}from"./badge-Dk9RrOMI.js";import{t as y}from"./textarea-DYYN2PV4.js";var b=e(r(),1),x=t(),S=s();async function C(){let e=typeof window>`u`?void 0:window.okUninstall;if(e===void 0)return null;try{let t=await e.ready();return t.kind===`screen`?t.screen:null}catch{return null}}function w(e){let t=typeof window>`u`?void 0:window.okUninstall;t!==void 0&&t.send(e).catch(()=>void 0)}var T=n();function E(e){let t=(0,S.c)(37),{notice:n,onConfirm:r,onCancel:i}=e,{_:o}=a(),s=(0,b.useId)(),l=(0,b.useId)(),u=n.cancelLabel!==void 0,d,f;t[0]!==u||t[1]!==i||t[2]!==r?(d=()=>{let e=e=>{e.key===`Escape`&&(u?i():r())};return document.addEventListener(`keydown`,e),()=>{document.removeEventListener(`keydown`,e)}},f=[u,i,r],t[0]=u,t[1]=i,t[2]=r,t[3]=d,t[4]=f):(d=t[3],f=t[4]),(0,b.useEffect)(d,f);let p;t[5]!==n.title||t[6]!==s?(p=(0,T.jsx)(`header`,{className:`shrink-0 px-6 pt-5 pb-3.5`,children:(0,T.jsx)(`h1`,{id:s,className:`font-medium text-base leading-none`,children:n.title})}),t[5]=n.title,t[6]=s,t[7]=p):p=t[7];let m;t[8]===n.paragraphs?m=t[9]:(m=n.paragraphs.map(D),t[8]=n.paragraphs,t[9]=m);let h;t[10]!==o||t[11]!==n.log?(h=n.log!==void 0&&(0,T.jsx)(`section`,{"aria-label":o({id:`Oi56Cu`}),tabIndex:0,className:`subtle-scrollbar mt-0.5 mb-2.5 min-h-20 flex-1 overflow-auto rounded-lg border border-border border-dotted bg-muted/40 px-3 py-2.5 focus-visible:outline-none focus-visible:ring-3 focus-visible:ring-ring/50`,children:(0,T.jsx)(`pre`,{className:`select-text whitespace-pre-wrap font-mono text-xs leading-relaxed wrap-anywhere`,children:n.log})}),t[10]=o,t[11]=n.log,t[12]=h):h=t[12];let g;t[13]===n.footnote?g=t[14]:(g=n.footnote!==void 0&&(0,T.jsx)(`p`,{className:`select-text text-muted-foreground text-xs wrap-anywhere`,children:n.footnote}),t[13]=n.footnote,t[14]=g);let _;t[15]!==l||t[16]!==m||t[17]!==h||t[18]!==g?(_=(0,T.jsxs)(`div`,{id:l,className:`flex min-h-0 flex-1 flex-col px-6 pt-1 pb-4 text-sm`,children:[m,h,g]}),t[15]=l,t[16]=m,t[17]=h,t[18]=g,t[19]=_):_=t[19];let v;t[20]!==n.cancelLabel||t[21]!==i?(v=n.cancelLabel!==void 0&&(0,T.jsx)(c,{type:`button`,variant:`outline-mono`,autoFocus:!0,onClick:i,children:n.cancelLabel}),t[20]=n.cancelLabel,t[21]=i,t[22]=v):v=t[22];let y=n.danger===!0?`destructive`:`default`,x=!u,C;t[23]!==n.confirmLabel||t[24]!==r||t[25]!==x||t[26]!==y?(C=(0,T.jsx)(c,{type:`button`,variant:y,autoFocus:x,onClick:r,children:n.confirmLabel}),t[23]=n.confirmLabel,t[24]=r,t[25]=x,t[26]=y,t[27]=C):C=t[27];let w;t[28]!==C||t[29]!==v?(w=(0,T.jsxs)(`footer`,{className:`flex items-center justify-end gap-2.5 border-border border-t bg-muted/50 px-6 pt-3.5 pb-4`,children:[v,C]}),t[28]=C,t[29]=v,t[30]=w):w=t[30];let E;return t[31]!==l||t[32]!==w||t[33]!==p||t[34]!==_||t[35]!==s?(E=(0,T.jsxs)(`div`,{role:`alertdialog`,"aria-labelledby":s,"aria-describedby":l,className:`flex h-dvh flex-col bg-background text-foreground`,children:[p,_,w]}),t[31]=l,t[32]=w,t[33]=p,t[34]=_,t[35]=s,t[36]=E):E=t[36],E}function D(e){return(0,T.jsx)(`p`,{className:`mb-2.5 leading-normal`,children:e},e)}function O(e){return e.open||e.running?`active`:e.recent?`recent`:null}function k(e){return e.split(`/`).filter(Boolean).at(-1)??e}function A(e){let t=(0,S.c)(9),{status:n}=e,{_:r}=a(),i;t[0]===r?i=t[1]:(i=r({id:`s_ereB`}),t[0]=r,t[1]=i);let o;t[2]===r?o=t[3]:(o=r({id:`_2cM9E`}),t[2]=r,t[3]=o);let s;t[4]!==i||t[5]!==o?(s={active:i,recent:o},t[4]=i,t[5]=o,t[6]=s):s=t[6];let c=s[n],l;return t[7]===c?l=t[8]:(l=(0,T.jsx)(v,{variant:`secondary`,className:`rounded-sm text-muted-foreground`,children:c}),t[7]=c,t[8]=l),l}function j(e){let t=(0,S.c)(28),{project:n,checked:r,onCheckedChange:i}=e,{_:o}=a(),s=(0,b.useId)(),c;t[0]===n?c=t[1]:(c=O(n),t[0]=n,t[1]=c);let d=c,f;t[2]===i?f=t[3]:(f=e=>i(e===!0),t[2]=i,t[3]=f);let p;t[4]!==o||t[5]!==n.path?(p=o({id:`CHfFN_`,values:{0:n.path}}),t[4]=o,t[5]=n.path,t[6]=p):p=t[6];let m;t[7]!==s||t[8]!==r||t[9]!==f||t[10]!==p?(m=(0,T.jsx)(l,{id:s,className:`mt-0.5`,checked:r,onCheckedChange:f,"aria-label":p}),t[7]=s,t[8]=r,t[9]=f,t[10]=p,t[11]=m):m=t[11];let h;t[12]===n.path?h=t[13]:(h=k(n.path),t[12]=n.path,t[13]=h);let g;t[14]===h?g=t[15]:(g=(0,T.jsx)(`span`,{className:`w-full truncate font-medium text-sm`,children:h}),t[14]=h,t[15]=g);let _;t[16]===n.path?_=t[17]:(_=(0,T.jsx)(`span`,{className:`w-full select-text break-words text-muted-foreground text-xs`,children:n.path}),t[16]=n.path,t[17]=_);let v;t[18]!==s||t[19]!==g||t[20]!==_?(v=(0,T.jsxs)(u,{htmlFor:s,className:`min-w-0 flex-col items-start gap-0.5 font-normal`,children:[g,_]}),t[18]=s,t[19]=g,t[20]=_,t[21]=v):v=t[21];let y;t[22]===d?y=t[23]:(y=d!==null&&(0,T.jsx)(`div`,{className:`flex justify-end max-sm:col-start-2 max-sm:justify-start`,children:(0,T.jsx)(A,{status:d})}),t[22]=d,t[23]=y);let x;return t[24]!==m||t[25]!==v||t[26]!==y?(x=(0,T.jsxs)(`div`,{className:`grid grid-cols-[auto_minmax(0,1fr)_auto] items-start gap-2.5 border-border/60 border-b px-3 py-2.5 last:border-b-0 hover:bg-accent/40 max-sm:grid-cols-[auto_minmax(0,1fr)]`,children:[m,v,y]}),t[24]=m,t[25]=v,t[26]=y,t[27]=x):x=t[27],x}function M(e){let t=(0,S.c)(45),{projects:n,onConfirm:r,onCancel:o}=e,{_:s}=a(),[d,f]=(0,b.useState)(te),p=(0,b.useId)(),m=(0,b.useId)(),h=(0,b.useId)(),g=n.length>0&&d.size===n.length?!0:d.size>0?`indeterminate`:!1,_;t[0]===n?_=t[1]:(_=e=>f(e?new Set(n.map(ee)):new Set),t[0]=n,t[1]=_);let v=_,y,x;t[2]!==o||t[3]!==n?(y=()=>{let e=e=>{if(e.key===`Escape`){o();return}(e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===`a`&&(e.preventDefault(),f(new Set(n.map(P))))};return document.addEventListener(`keydown`,e),()=>{document.removeEventListener(`keydown`,e)}},x=[o,n],t[2]=o,t[3]=n,t[4]=y,t[5]=x):(y=t[4],x=t[5]),(0,b.useEffect)(y,x);let C;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,T.jsx)(i,{id:`PrVaZo`}),t[6]=C):C=t[6];let w;t[7]===p?w=t[8]:(w=(0,T.jsx)(`h1`,{id:p,className:`font-medium leading-none text-base`,children:C}),t[7]=p,t[8]=w);let E;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,T.jsx)(i,{id:`keop3U`}),t[9]=E):E=t[9];let D;t[10]===m?D=t[11]:(D=(0,T.jsx)(`p`,{id:m,className:`text-sm text-muted-foreground`,children:E}),t[10]=m,t[11]=D);let O;t[12]!==w||t[13]!==D?(O=(0,T.jsxs)(`header`,{className:`shrink-0 px-6 pt-5 pb-3.5 space-y-4`,children:[w,D]}),t[12]=w,t[13]=D,t[14]=O):O=t[14];let k;t[15]===s?k=t[16]:(k=s({id:`QySH4I`}),t[15]=s,t[16]=k);let A;t[17]!==s||t[18]!==n||t[19]!==h||t[20]!==g||t[21]!==d||t[22]!==v?(A=n.length===0?(0,T.jsx)(`div`,{className:`rounded-lg border border-border p-4`,children:(0,T.jsx)(`p`,{className:`text-muted-foreground text-sm`,children:(0,T.jsx)(i,{id:`bKt9Jk`})})}):(0,T.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden rounded-lg border border-border`,children:[(0,T.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2.5 border-border border-b px-3 py-2.5 bg-muted/30`,children:[(0,T.jsx)(l,{id:h,checked:g,onCheckedChange:e=>v(e===!0)}),(0,T.jsx)(u,{htmlFor:h,className:`flex-1 font-medium text-sm`,children:(0,T.jsx)(i,{id:`wgNoIs`})}),(0,T.jsxs)(`span`,{role:`status`,"aria-label":s({id:`nsUDL8`,values:{0:d.size,1:n.length}}),className:`text-muted-foreground text-xs tabular-nums`,children:[d.size,` / `,n.length]})]}),(0,T.jsx)(`div`,{className:`subtle-scrollbar min-h-0 flex-1 overflow-y-scroll [scrollbar-gutter:stable]`,children:n.map((e,t)=>(0,T.jsx)(j,{project:e,checked:d.has(t),onCheckedChange:e=>{f(n=>{let r=new Set(n);return e?r.add(t):r.delete(t),r})}},e.path))})]}),t[17]=s,t[18]=n,t[19]=h,t[20]=g,t[21]=d,t[22]=v,t[23]=A):A=t[23];let M;t[24]!==A||t[25]!==k?(M=(0,T.jsx)(`section`,{"aria-label":k,className:`flex min-h-0 flex-1 flex-col px-6 py-3.5`,children:A}),t[24]=A,t[25]=k,t[26]=M):M=t[26];let F;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(F=(0,T.jsx)(i,{id:`dEgA5A`}),t[27]=F):F=t[27];let I;t[28]===o?I=t[29]:(I=(0,T.jsx)(c,{type:`button`,variant:`outline-mono`,autoFocus:!0,onClick:o,children:F}),t[28]=o,t[29]=I);let L;t[30]!==r||t[31]!==d?(L=()=>r([...d].sort(N)),t[30]=r,t[31]=d,t[32]=L):L=t[32];let R;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,T.jsx)(i,{id:`J7nMqi`}),t[33]=R):R=t[33];let z;t[34]===L?z=t[35]:(z=(0,T.jsx)(c,{type:`button`,variant:`destructive`,onClick:L,children:R}),t[34]=L,t[35]=z);let B;t[36]!==I||t[37]!==z?(B=(0,T.jsxs)(`footer`,{className:`flex items-center justify-end gap-2.5 border-border border-t bg-muted/50 px-6 pt-3.5 pb-4`,children:[I,z]}),t[36]=I,t[37]=z,t[38]=B):B=t[38];let V;return t[39]!==m||t[40]!==M||t[41]!==B||t[42]!==O||t[43]!==p?(V=(0,T.jsxs)(`div`,{role:`dialog`,"aria-labelledby":p,"aria-describedby":m,className:`flex h-dvh flex-col overflow-hidden bg-background text-foreground`,children:[O,M,B]}),t[39]=m,t[40]=M,t[41]=B,t[42]=O,t[43]=p,t[44]=V):V=t[44],V}function N(e,t){return e-t}function P(e,t){return t}function ee(e,t){return t}function te(){return new Set}function F(){let e=(0,S.c)(3),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,T.jsx)(g,{"aria-hidden":`true`,className:`mx-auto mb-4 size-8 text-primary`}),e[0]=t):t=e[0];let n;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,T.jsx)(`h1`,{className:`mb-2 font-medium text-base leading-none`,children:(0,T.jsx)(i,{id:`j2229h`})}),e[1]=n):n=e[1];let r;return e[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,T.jsx)(`main`,{className:`grid h-dvh place-items-center bg-background text-foreground`,children:(0,T.jsxs)(`div`,{role:`status`,className:`max-w-vw px-7 py-7 text-center`,children:[t,n,(0,T.jsx)(`p`,{className:`text-muted-foreground text-sm leading-relaxed`,children:(0,T.jsx)(i,{id:`kCjkGY`})})]})}),e[2]=r):r=e[2],r}function I(){let{_:e}=a();return{"workflow-fit":e({id:`5vAI6Z`}),"missing-feature":e({id:`cH0dkG`}),"hard-to-start":e({id:`uoJF_D`}),unreliable:e({id:`WGMoTY`}),"switched-tool":e({id:`jO18NZ`}),"one-off":e({id:`S3qu11`}),other:e({id:`aQyGJc`})}}function L(e){let t=(0,S.c)(86),{onSend:n,onSkip:r}=e,{_:o}=a(),s=I(),[h,g]=(0,b.useState)(``),[v,x]=(0,b.useState)(``),[C,w]=(0,b.useState)(!1),[E,D]=(0,b.useState)(``),O=(0,b.useRef)(null),k=(0,b.useId)(),A=(0,b.useId)(),j=(0,b.useId)(),M=(0,b.useId)(),N=(0,b.useId)(),P=(0,b.useId)(),ee,te;t[0]===C?(ee=t[1],te=t[2]):(ee=()=>{C&&O.current?.focus()},te=[C],t[0]=C,t[1]=ee,t[2]=te),(0,b.useEffect)(ee,te);let F;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(F=(0,T.jsx)(i,{id:`ElyuiT`}),t[3]=F):F=t[3];let L;t[4]===k?L=t[5]:(L=(0,T.jsx)(`h1`,{id:k,className:`font-medium leading-none text-base`,children:F}),t[4]=k,t[5]=L);let R;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,T.jsx)(i,{id:`ZDOq9A`}),t[6]=R):R=t[6];let z;t[7]===A?z=t[8]:(z=(0,T.jsx)(`p`,{id:A,className:`text-muted-foreground text-sm`,children:R}),t[7]=A,t[8]=z);let B;t[9]!==L||t[10]!==z?(B=(0,T.jsxs)(`header`,{className:`px-6 pt-5 pb-3.5 space-y-4`,children:[L,z]}),t[9]=L,t[10]=z,t[11]=B):B=t[11];let V;t[12]!==E||t[13]!==C||t[14]!==v||t[15]!==n||t[16]!==h?(V=e=>{e.preventDefault();let t=v.trim(),r=C?E.trim():``;n({...h===``?{}:{reason:h},...t===``?{}:{note:t},...r===``?{}:{email:r}})},t[12]=E,t[13]=C,t[14]=v,t[15]=n,t[16]=h,t[17]=V):V=t[17];let ne;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(ne=(0,T.jsx)(i,{id:`oxdGJn`}),t[18]=ne):ne=t[18];let H;t[19]===j?H=t[20]:(H=(0,T.jsx)(`p`,{id:j,className:`mb-2 font-medium text-sm`,children:ne}),t[19]=j,t[20]=H);let U;t[21]!==j||t[22]!==s?(U=m.map(e=>(0,T.jsxs)(`div`,{className:`flex items-center gap-2.5 rounded-md px-1 py-1`,children:[(0,T.jsx)(d,{id:`${j}-${e.value}`,value:e.value}),(0,T.jsx)(u,{htmlFor:`${j}-${e.value}`,className:`font-normal text-sm leading-snug`,children:s[e.value]})]},e.value)),t[21]=j,t[22]=s,t[23]=U):U=t[23];let W;t[24]!==j||t[25]!==h||t[26]!==U?(W=(0,T.jsx)(f,{"aria-labelledby":j,value:h,onValueChange:g,children:U}),t[24]=j,t[25]=h,t[26]=U,t[27]=W):W=t[27];let G;t[28]!==H||t[29]!==W?(G=(0,T.jsxs)(`div`,{className:`mb-6`,children:[H,W]}),t[28]=H,t[29]=W,t[30]=G):G=t[30];let re;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(re=(0,T.jsx)(i,{id:`axQ1h6`}),t[31]=re):re=t[31];let K;t[32]===M?K=t[33]:(K=(0,T.jsx)(u,{htmlFor:M,className:`mb-2 font-medium text-sm`,children:re}),t[32]=M,t[33]=K);let ie;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(ie=e=>x(e.target.value),t[34]=ie):ie=t[34];let q;t[35]!==v||t[36]!==M?(q=(0,T.jsx)(y,{id:M,rows:3,maxLength:p,value:v,onChange:ie}),t[35]=v,t[36]=M,t[37]=q):q=t[37];let J;t[38]!==K||t[39]!==q?(J=(0,T.jsxs)(`div`,{className:`mb-6`,children:[K,q]}),t[38]=K,t[39]=q,t[40]=J):J=t[40];let ae;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(ae=e=>w(e===!0),t[41]=ae):ae=t[41];let Y;t[42]!==C||t[43]!==N?(Y=(0,T.jsx)(l,{id:N,checked:C,onCheckedChange:ae}),t[42]=C,t[43]=N,t[44]=Y):Y=t[44];let oe;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(oe=(0,T.jsx)(i,{id:`xEb24l`}),t[45]=oe):oe=t[45];let X;t[46]===N?X=t[47]:(X=(0,T.jsx)(u,{htmlFor:N,className:`font-medium text-sm`,children:oe}),t[46]=N,t[47]=X);let Z;t[48]!==Y||t[49]!==X?(Z=(0,T.jsxs)(`div`,{className:`mb-2 flex items-center gap-2.5`,children:[Y,X]}),t[48]=Y,t[49]=X,t[50]=Z):Z=t[50];let se=!C,ce;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(ce=(0,T.jsx)(i,{id:`ATGYL1`}),t[51]=ce):ce=t[51];let Q;t[52]===P?Q=t[53]:(Q=(0,T.jsx)(u,{htmlFor:P,className:`mb-2 font-medium text-sm sr-only`,children:ce}),t[52]=P,t[53]=Q);let $;t[54]===o?$=t[55]:($=o({id:`JHf6qZ`}),t[54]=o,t[55]=$);let le=!C,ue;t[56]===Symbol.for(`react.memo_cache_sentinel`)?(ue=e=>D(e.target.value),t[56]=ue):ue=t[56];let de;t[57]!==E||t[58]!==P||t[59]!==$||t[60]!==le?(de=(0,T.jsx)(_,{id:P,ref:O,type:`email`,maxLength:320,autoComplete:`email`,spellCheck:!1,placeholder:$,disabled:le,value:E,onChange:ue}),t[57]=E,t[58]=P,t[59]=$,t[60]=le,t[61]=de):de=t[61];let fe;t[62]!==se||t[63]!==Q||t[64]!==de?(fe=(0,T.jsxs)(`div`,{className:`mb-6`,hidden:se,children:[Q,de]}),t[62]=se,t[63]=Q,t[64]=de,t[65]=fe):fe=t[65];let pe;t[66]!==G||t[67]!==J||t[68]!==Z||t[69]!==fe?(pe=(0,T.jsxs)(`div`,{className:`subtle-scrollbar min-h-0 flex-1 overflow-y-auto px-6 pt-1 pb-4`,children:[G,J,Z,fe]}),t[66]=G,t[67]=J,t[68]=Z,t[69]=fe,t[70]=pe):pe=t[70];let me;t[71]===Symbol.for(`react.memo_cache_sentinel`)?(me=(0,T.jsx)(i,{id:`6Uau97`}),t[71]=me):me=t[71];let he;t[72]===r?he=t[73]:(he=(0,T.jsx)(c,{type:`button`,variant:`outline-mono`,autoFocus:!0,onClick:r,children:me}),t[72]=r,t[73]=he);let ge;t[74]===Symbol.for(`react.memo_cache_sentinel`)?(ge=(0,T.jsx)(c,{type:`submit`,children:(0,T.jsx)(i,{id:`xMsnTe`})}),t[74]=ge):ge=t[74];let _e;t[75]===he?_e=t[76]:(_e=(0,T.jsxs)(`footer`,{className:`flex items-center justify-end gap-2.5 border-border border-t bg-muted/50 px-6 pt-3.5 pb-4`,children:[he,ge]}),t[75]=he,t[76]=_e);let ve;t[77]!==pe||t[78]!==_e||t[79]!==V?(ve=(0,T.jsxs)(`form`,{className:`flex min-h-0 flex-1 flex-col`,onSubmit:V,children:[pe,_e]}),t[77]=pe,t[78]=_e,t[79]=V,t[80]=ve):ve=t[80];let ye;return t[81]!==A||t[82]!==ve||t[83]!==B||t[84]!==k?(ye=(0,T.jsxs)(`div`,{role:`dialog`,"aria-labelledby":k,"aria-describedby":A,className:`flex h-dvh flex-col bg-background text-foreground`,children:[B,ve]}),t[81]=A,t[82]=ve,t[83]=B,t[84]=k,t[85]=ye):ye=t[85],ye}function R(){let e=(0,S.c)(9),[t,n]=(0,b.useState)(null),r,a;if(e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=()=>{let e=!0;return C().then(t=>{e&&n(t)}),()=>{e=!1}},a=[],e[0]=r,e[1]=a):(r=e[0],a=e[1]),(0,b.useEffect)(r,a),t!==null)switch(t.kind){case`picker`:{let n;return e[2]===t.projects?n=e[3]:(n=(0,T.jsx)(M,{projects:t.projects,onConfirm:U,onCancel:H}),e[2]=t.projects,e[3]=n),n}case`survey`:{let t;return e[4]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,T.jsx)(L,{onSend:ne,onSkip:V}),e[4]=t):t=e[4],t}case`progress`:{let t;return e[5]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,T.jsx)(F,{}),e[5]=t):t=e[5],t}case`notice`:{let n;return e[6]===t.notice?n=e[7]:(n=(0,T.jsx)(E,{notice:t.notice,onConfirm:B,onCancel:z}),e[6]=t.notice,e[7]=n),n}default:return t}let o;return e[8]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,T.jsx)(`main`,{className:`flex min-h-dvh items-center justify-center bg-background p-8 text-foreground`,children:(0,T.jsx)(`p`,{className:`text-center text-muted-foreground text-sm`,children:(0,T.jsx)(i,{id:`tzGWeg`})})}),e[8]=o):o=e[8],o}function z(){return w({kind:`notice-cancel`})}function B(){return w({kind:`notice-confirm`})}function V(){return w({kind:`survey-skip`})}function ne(e){return w({kind:`survey-send`,...e})}function H(){return w({kind:`picker-cancel`})}function U(e){return w({kind:`picker-confirm`,selectedIndexes:e})}var W=document.getElementById(`root`);if(!W)throw Error(`Root element not found`);(0,x.createRoot)(W).render((0,T.jsx)(b.StrictMode,{children:(0,T.jsx)(o,{i18n:h,children:(0,T.jsx)(R,{})})}));
@@ -1,5 +0,0 @@
1
- import{o as e,t}from"./chunk-CYidjpOJ.js";import{t as n}from"./jsx-runtime-BUgB2tll.js";import{g as r,i,pr as a}from"./DocumentContext-avYx9HfE.js";import{t as o}from"./react-f2sANaYj.js";import{n as s,r as c}from"./dist-Nvb76hAm.js";import{t as l}from"./react-dom-DPxgxlDT.js";import{t as u}from"./compiler-runtime-BfE3aGVn.js";import{$a as d,Ca as f,Ia as p,Is as m,Ja as h,Qs as g,Y as _,Ya as v,co as y,do as b,eo as ee,io as te,lo as x,oo as ne,ur as re}from"./dist-CyWcc58M.js";import{i as ie}from"./local-menu-action-bus-4I1Xm40D.js";import{i as ae,l as oe,m as S,n as se,t as ce}from"./PropertyDisplayRow-CqAThkeg.js";import{J as le,V as ue,X as de}from"./CodeMirrorPropInput-CaBn84Ep.js";import{t as fe}from"./minus-cd1ERTPg.js";import{t as pe}from"./libesm-CFNuVJUm.js";var C=u(),w=n(),T=200;function me(e){let t=(0,C.c)(27),{delta:n,open:r,onOpenChange:i}=e;if(n.unparseable!==null){let e;return t[0]===n.unparseable?e=t[1]:(e=(0,w.jsx)(ye,{regions:n.unparseable}),t[0]=n.unparseable,t[1]=e),e}if(n.changes.length===0)return null;let a,o,c,l,u,d,f,p,m;if(t[2]!==n.changes||t[3]!==i||t[4]!==r){let e=n.changes.slice(0,50);o=n.changes.length-e.length,a=se,t[14]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,w.jsx)(s,{id:`l_UFPv`}),t[14]=c):c=t[14],l=n.changes.length,u=`property-diff-block`,d=`border-b border-border py-3`,f=r,p=i,m=e.map(he),t[2]=n.changes,t[3]=i,t[4]=r,t[5]=a,t[6]=o,t[7]=c,t[8]=l,t[9]=u,t[10]=d,t[11]=f,t[12]=p,t[13]=m}else a=t[5],o=t[6],c=t[7],l=t[8],u=t[9],d=t[10],f=t[11],p=t[12],m=t[13];let h;t[15]===o?h=t[16]:(h=o>0&&(0,w.jsx)(`p`,{className:`px-2 pt-1 text-xs text-muted-foreground italic`,children:(0,w.jsx)(s,{id:`6qFchx`,values:{omitted:o}})}),t[15]=o,t[16]=h);let g;return t[17]!==a||t[18]!==c||t[19]!==l||t[20]!==u||t[21]!==d||t[22]!==f||t[23]!==p||t[24]!==m||t[25]!==h?(g=(0,w.jsxs)(a,{title:c,count:l,testId:u,className:d,open:f,onOpenChange:p,children:[m,h]}),t[17]=a,t[18]=c,t[19]=l,t[20]=u,t[21]=d,t[22]=f,t[23]=p,t[24]=m,t[25]=h,t[26]=g):g=t[26],g}function he(e){return(0,w.jsx)(ge,{change:e},`${e.kind}-${e.key}`)}function ge(e){let t=(0,C.c)(22),{change:n}=e,{_:r}=c(),i=oe[m(n.kind===`removed`?n.before:n.after)],o;t[0]!==r||t[1]!==n.kind?(o=n.kind===`added`?{KindIcon:ie,kindLabel:r({id:`hp8OtS`})}:n.kind===`removed`?{KindIcon:fe,kindLabel:r({id:`eps54V`})}:{KindIcon:a,kindLabel:r({id:`cNsIJf`})},t[0]=r,t[1]=n.kind,t[2]=o):o=t[2];let{KindIcon:s,kindLabel:l}=o,u;t[3]===s?u=t[4]:(u=(0,w.jsx)(s,{"aria-hidden":`true`,className:`size-3.5`}),t[3]=s,t[4]=u);let d;t[5]===l?d=t[6]:(d=(0,w.jsx)(`span`,{className:`sr-only`,children:l}),t[5]=l,t[6]=d);let f;t[7]!==u||t[8]!==d?(f=(0,w.jsxs)(`span`,{className:`flex size-7 shrink-0 items-center justify-center text-muted-foreground`,children:[u,d]}),t[7]=u,t[8]=d,t[9]=f):f=t[9];let p;t[10]===i?p=t[11]:(p=(0,w.jsx)(i,{"aria-hidden":`true`,className:`size-3.5`}),t[10]=i,t[11]=p);let h;t[12]===n?h=t[13]:(h=(0,w.jsx)(_e,{change:n}),t[12]=n,t[13]=h);let g;t[14]!==n.key||t[15]!==p||t[16]!==h?(g=(0,w.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,w.jsx)(ce,{icon:p,label:n.key,dataKey:n.key,children:h})}),t[14]=n.key,t[15]=p,t[16]=h,t[17]=g):g=t[17];let _;return t[18]!==n.key||t[19]!==f||t[20]!==g?(_=(0,w.jsxs)(`div`,{"data-property-change":``,"data-key":n.key,"data-testid":`property-diff-row`,className:`flex items-start gap-1`,children:[f,g]}),t[18]=n.key,t[19]=f,t[20]=g,t[21]=_):_=t[21],_}function _e(e){let t=(0,C.c)(17),{change:n}=e;if(n.kind===`added`){let e;return t[0]!==n.after||t[1]!==n.key?(e=(0,w.jsx)(E,{value:n.after,keyName:n.key}),t[0]=n.after,t[1]=n.key,t[2]=e):e=t[2],e}if(n.kind===`removed`){let e;return t[3]!==n.before||t[4]!==n.key?(e=(0,w.jsx)(E,{value:n.before,keyName:n.key,removed:!0}),t[3]=n.before,t[4]=n.key,t[5]=e):e=t[5],e}let r=S(n.before)||S(n.after)?`flex flex-col gap-1`:`flex flex-wrap items-center gap-1.5`,i;t[6]!==n.before||t[7]!==n.key?(i=(0,w.jsx)(E,{value:n.before,keyName:n.key,removed:!0}),t[6]=n.before,t[7]=n.key,t[8]=i):i=t[8];let a;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,w.jsx)(`span`,{"aria-hidden":`true`,className:`text-muted-foreground`,children:`→`}),t[9]=a):a=t[9];let o;t[10]!==n.after||t[11]!==n.key?(o=(0,w.jsx)(E,{value:n.after,keyName:n.key}),t[10]=n.after,t[11]=n.key,t[12]=o):o=t[12];let s;return t[13]!==r||t[14]!==i||t[15]!==o?(s=(0,w.jsxs)(`div`,{className:r,"data-testid":`property-diff-change-pair`,children:[i,a,o]}),t[13]=r,t[14]=i,t[15]=o,t[16]=s):s=t[16],s}function E(e){let t=(0,C.c)(17),{value:n,keyName:r,removed:i}=e,a=i===void 0?!1:i;if(S(n)){let e=a?`opacity-70`:void 0,i;t[0]!==r||t[1]!==n?(i=(0,w.jsx)(ae,{keyName:r,value:n}),t[0]=r,t[1]=n,t[2]=i):i=t[2];let o;return t[3]!==e||t[4]!==i?(o=(0,w.jsx)(`div`,{className:e,children:i}),t[3]=e,t[4]=i,t[5]=o):o=t[5],o}let o,s,c,l;if(t[6]!==a||t[7]!==n){let e=Array.isArray(n)?n.filter(ve).join(`, `):String(n),r=e.length>T;o=a?`px-1 text-sm break-words text-muted-foreground line-through`:`px-1 text-sm break-words`,s=r?e:void 0,c=`property-diff-value`,l=r?`${e.slice(0,T)}…`:e,t[6]=a,t[7]=n,t[8]=o,t[9]=s,t[10]=c,t[11]=l}else o=t[8],s=t[9],c=t[10],l=t[11];let u;return t[12]!==o||t[13]!==s||t[14]!==c||t[15]!==l?(u=(0,w.jsx)(`span`,{className:o,title:s,"data-testid":c,children:l}),t[12]=o,t[13]=s,t[14]=c,t[15]=l,t[16]=u):u=t[16],u}function ve(e){return typeof e==`string`}function ye(e){let t=(0,C.c)(10),{regions:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,w.jsx)(`p`,{className:`text-xs text-muted-foreground italic`,children:(0,w.jsx)(s,{id:`wFyXOW`})}),t[0]=r):r=t[0];let i;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,w.jsx)(s,{id:`EmSrGB`}),t[1]=i):i=t[1];let a;t[2]===n.before?a=t[3]:(a=(0,w.jsx)(D,{label:i,text:n.before}),t[2]=n.before,t[3]=a);let o;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,w.jsx)(s,{id:`NawEr2`}),t[4]=o):o=t[4];let c;t[5]===n.after?c=t[6]:(c=(0,w.jsx)(D,{label:o,text:n.after}),t[5]=n.after,t[6]=c);let l;return t[7]!==a||t[8]!==c?(l=(0,w.jsxs)(`div`,{className:`border-b border-border px-4 py-3`,"data-testid":`property-diff-unparseable`,"data-property-change":``,children:[r,(0,w.jsxs)(`div`,{className:`mt-2 grid gap-2 sm:grid-cols-2`,children:[a,c]})]}),t[7]=a,t[8]=c,t[9]=l):l=t[9],l}function D(e){let t=(0,C.c)(7),{label:n,text:r}=e,i;t[0]===n?i=t[1]:(i=(0,w.jsx)(`p`,{className:`mb-1 text-xs font-medium text-muted-foreground`,children:n}),t[0]=n,t[1]=i);let a=r===``?`—`:r,o;t[2]===a?o=t[3]:(o=(0,w.jsx)(`pre`,{className:`overflow-x-auto rounded-md bg-muted px-2 py-1.5 font-mono text-xs whitespace-pre-wrap`,children:a}),t[2]=a,t[3]=o);let s;return t[4]!==i||t[5]!==o?(s=(0,w.jsxs)(`div`,{children:[i,o]}),t[4]=i,t[5]=o,t[6]=s):s=t[6],s}var O=t((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Pointer=void 0,e.unescapeToken=t,e.escapeToken=n;function t(e){return e.replace(/~1/g,`/`).replace(/~0/g,`~`)}function n(e){return e.replace(/~/g,`~0`).replace(/\//g,`~1`)}e.Pointer=function(){function e(e){e===void 0&&(e=[``]),this.tokens=e}return e.fromJSON=function(n){var r=n.split(`/`).map(t);if(r[0]!==``)throw Error(`Invalid JSON Pointer: ${n}`);return new e(r)},e.prototype.toString=function(){return this.tokens.map(n).join(`/`)},e.prototype.evaluate=function(e){for(var t=null,n=``,r=e,i=1,a=this.tokens.length;i<a;i++)t=r,n=this.tokens[i],!(n==`__proto__`||n==`constructor`||n==`prototype`)&&(r=(t||{})[n]);return{parent:t,key:n,value:r}},e.prototype.get=function(e){return this.evaluate(e).value},e.prototype.set=function(e,t){var n=this.evaluate(e);n.parent&&(n.parent[n.key]=t)},e.prototype.push=function(e){this.tokens.push(e)},e.prototype.add=function(t){return new e(this.tokens.concat(String(t)))},e.prototype.parent=function(){return new e(this.tokens.length>1?this.tokens.slice(0,-1):[``])},e}()})),k=t((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.hasOwnProperty=void 0,e.objectType=t,e.clone=r,e.hasOwnProperty=Object.prototype.hasOwnProperty;function t(e){return e===void 0?`undefined`:e===null?`null`:Array.isArray(e)?`array`:typeof e}function n(e){return typeof e==`object`&&!!e}function r(t){if(!n(t))return t;if(t.constructor==Array){for(var i=t.length,a=Array(i),o=0;o<i;o++)a[o]=r(t[o]);return a}if(t.constructor==Date)return new Date(+t);var s={};for(var c in t)e.hasOwnProperty.call(t,c)&&(s[c]=r(t[c]));return s}})),A=t((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.isDestructive=n,e.subtract=r,e.intersection=i,e.diffArrays=l,e.diffObjects=u,e.diffAny=d;var t=k();function n(e){var t=e.op;return t===`remove`||t===`replace`||t===`copy`||t===`move`}function r(e,n){var r=[];for(var i in e)t.hasOwnProperty.call(e,i)&&e[i]!==void 0&&!(t.hasOwnProperty.call(n,i)&&n[i]!==void 0)&&r.push(i);return r}function i(e){for(var n=e.length,r={},i=0;i<n;i++){var a=e[i];for(var o in a)t.hasOwnProperty.call(a,o)&&a[o]!==void 0&&(r[o]=(r[o]||0)+1)}for(var o in r)r[o]<n&&delete r[o];return Object.keys(r)}function a(e,n){var r=[];for(var i in e)t.hasOwnProperty.call(e,i)&&e[i]!==void 0&&t.hasOwnProperty.call(n,i)&&n[i]!==void 0&&r.push(i);return r}function o(e){return e.op===`add`}function s(e){return e.op===`remove`}function c(e,t){return{operations:e.operations.concat(t),cost:e.cost+1}}function l(e,t,n,r){r===void 0&&(r=d);var i=Math.max(e.length,t.length),a=new Map([[0,{operations:[],cost:0}]]);function l(o,s){var u=o*i+s,d=a.get(u);if(d===void 0){if(o>0&&s>0&&!r(e[o-1],t[s-1],n.add(String(o-1))).length)d=l(o-1,s-1);else{var f=[];if(o>0){var p=l(o-1,s),m={op:`remove`,index:o-1};f.push(c(p,m))}if(s>0){var h=l(o,s-1),g={op:`add`,index:o-1,value:t[s-1]};f.push(c(h,g))}if(o>0&&s>0){var _=l(o-1,s-1),v={op:`replace`,index:o-1,original:e[o-1],value:t[s-1]};f.push(c(_,v))}d=f.sort(function(e,t){return e.cost-t.cost})[0]}a.set(u,d)}return d}var u=isNaN(e.length)||e.length<=0?0:e.length;return l(u,isNaN(t.length)||t.length<=0?0:t.length).operations.reduce(function(e,t){var i=e[0],a=e[1];if(o(t)){var c=t.index+1+a,l=c<u+a?String(c):`-`,d={op:t.op,path:n.add(l).toString(),value:t.value};return[i.concat(d),a+1]}else if(s(t)){var d={op:t.op,path:n.add(String(t.index+a)).toString()};return[i.concat(d),a-1]}else{var f=n.add(String(t.index+a)),p=r(t.original,t.value,f);return[i.concat.apply(i,p),a]}},[[],0])[0]}function u(e,t,n,i){i===void 0&&(i=d);var o=[];return r(e,t).forEach(function(e){o.push({op:`remove`,path:n.add(e).toString()})}),r(t,e).forEach(function(e){o.push({op:`add`,path:n.add(e).toString(),value:t[e]})}),a(e,t).forEach(function(r){o.push.apply(o,i(e[r],t[r],n.add(r)))}),o}function d(e,n,r,i){if(i===void 0&&(i=d),e===n)return[];var a=(0,t.objectType)(e),o=(0,t.objectType)(n);return a==`array`&&o==`array`?l(e,n,r,i):a==`object`&&o==`object`?u(e,n,r,i):[{op:`replace`,path:r.toString(),value:n}]}})),be=t((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,`__esModule`,{value:!0}),e.InvalidOperationError=e.TestError=e.MissingError=void 0,e.add=l,e.remove=u,e.replace=d,e.move=f,e.copy=p,e.test=m,e.apply=g;var n=O(),r=k(),i=A(),a=function(e){t(n,e);function n(t){var n=e.call(this,`Value required at path: ${t}`)||this;return n.path=t,n.name=`MissingError`,n}return n}(Error);e.MissingError=a;var o=function(e){t(n,e);function n(t,n){var r=e.call(this,`Test failed: ${t} != ${n}`)||this;return r.actual=t,r.expected=n,r.name=`TestError`,r}return n}(Error);e.TestError=o;function s(e,t,n){if(Array.isArray(e))if(t==`-`)e.push(n);else{var r=parseInt(t,10);e.splice(r,0,n)}else e[t]=n}function c(e,t){if(Array.isArray(e)){var n=parseInt(t,10);e.splice(n,1)}else delete e[t]}function l(e,t,i){var o=n.Pointer.fromJSON(t.path);if(i?.implicitArrayCreation&&o.tokens[o.tokens.length-1]===`-`){var c=o.parent().evaluate(e);c.value===void 0&&(0,r.objectType)(c.parent)===`object`&&(c.parent[c.key]=[])}var l=o.evaluate(e);return l.parent===void 0||i?.implicitArrayCreation&&l.key===`-`&&!Array.isArray(l.parent)?new a(t.path):(s(l.parent,l.key,(0,r.clone)(t.value)),null)}function u(e,t,r){var i=n.Pointer.fromJSON(t.path).evaluate(e);return i.value===void 0?new a(t.path):(c(i.parent,i.key),null)}function d(e,t,i){var o=n.Pointer.fromJSON(t.path).evaluate(e);if(o.parent===null)return new a(t.path);if(Array.isArray(o.parent)){if(parseInt(o.key,10)>=o.parent.length)return new a(t.path)}else if(o.value===void 0)return new a(t.path);return o.parent[o.key]=(0,r.clone)(t.value),null}function f(e,t,r){var i=n.Pointer.fromJSON(t.from).evaluate(e);if(i.value===void 0)return new a(t.from);var o=n.Pointer.fromJSON(t.path).evaluate(e);return o.parent===void 0?new a(t.path):(c(i.parent,i.key),s(o.parent,o.key,i.value),null)}function p(e,t,i){var o=n.Pointer.fromJSON(t.from).evaluate(e);if(o.value===void 0)return new a(t.from);var c=n.Pointer.fromJSON(t.path).evaluate(e);return c.parent===void 0?new a(t.path):(s(c.parent,c.key,(0,r.clone)(o.value)),null)}function m(e,t,r){var a=n.Pointer.fromJSON(t.path).evaluate(e);return(0,i.diffAny)(a.value,t.value,new n.Pointer).length?new o(a.value,t.value):null}var h=function(e){t(n,e);function n(t){var n=e.call(this,`Invalid operation: ${t.op}`)||this;return n.operation=t,n.name=`InvalidOperationError`,n}return n}(Error);e.InvalidOperationError=h;function g(e,t,n){switch(t.op){case`add`:return l(e,t,n);case`remove`:return u(e,t,n);case`replace`:return d(e,t,n);case`move`:return f(e,t,n);case`copy`:return p(e,t,n);case`test`:return m(e,t,n)}return new h(t)}})),xe=t((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Pointer=void 0,e.applyPatch=i,e.createPatch=o;var t=O();Object.defineProperty(e,`Pointer`,{enumerable:!0,get:function(){return t.Pointer}});var n=be(),r=A();function i(e,t,r){return t.map(function(t){return(0,n.apply)(e,t,r)})}function a(e){function t(n,i,a){var o=e(n,i,a);return Array.isArray(o)?o:(0,r.diffAny)(n,i,a,t)}return t}function o(e,n,i){var o=new t.Pointer;return(i?a(i):r.diffAny)(e,n,o)}})),j=e(o(),1),M=e(l(),1),N=xe();function P(){}P.prototype={diff:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=n.callback;typeof n==`function`&&(r=n,n={}),this.options=n;var i=this;function a(e){return r?(setTimeout(function(){r(void 0,e)},0),!0):e}e=this.castInput(e),t=this.castInput(t),e=this.removeEmpty(this.tokenize(e)),t=this.removeEmpty(this.tokenize(t));var o=t.length,s=e.length,c=1,l=o+s;n.maxEditLength&&(l=Math.min(l,n.maxEditLength));var u=n.timeout??1/0,d=Date.now()+u,f=[{oldPos:-1,lastComponent:void 0}],p=this.extractCommon(f[0],t,e,0);if(f[0].oldPos+1>=s&&p+1>=o)return a([{value:this.join(t),count:t.length}]);var m=-1/0,h=1/0;function g(){for(var n=Math.max(m,-c);n<=Math.min(h,c);n+=2){var r=void 0,l=f[n-1],u=f[n+1];l&&(f[n-1]=void 0);var d=!1;if(u){var g=u.oldPos-n;d=u&&0<=g&&g<o}var _=l&&l.oldPos+1<s;if(!d&&!_){f[n]=void 0;continue}if(r=!_||d&&l.oldPos+1<u.oldPos?i.addToPath(u,!0,void 0,0):i.addToPath(l,void 0,!0,1),p=i.extractCommon(r,t,e,n),r.oldPos+1>=s&&p+1>=o)return a(Se(i,r.lastComponent,t,e,i.useLongestToken));f[n]=r,r.oldPos+1>=s&&(h=Math.min(h,n-1)),p+1>=o&&(m=Math.max(m,n+1))}c++}if(r)(function e(){setTimeout(function(){if(c>l||Date.now()>d)return r();g()||e()},0)})();else for(;c<=l&&Date.now()<=d;){var _=g();if(_)return _}},addToPath:function(e,t,n,r){var i=e.lastComponent;return i&&i.added===t&&i.removed===n?{oldPos:e.oldPos+r,lastComponent:{count:i.count+1,added:t,removed:n,previousComponent:i.previousComponent}}:{oldPos:e.oldPos+r,lastComponent:{count:1,added:t,removed:n,previousComponent:i}}},extractCommon:function(e,t,n,r){for(var i=t.length,a=n.length,o=e.oldPos,s=o-r,c=0;s+1<i&&o+1<a&&this.equals(t[s+1],n[o+1]);)s++,o++,c++;return c&&(e.lastComponent={count:c,previousComponent:e.lastComponent}),e.oldPos=o,s},equals:function(e,t){return this.options.comparator?this.options.comparator(e,t):e===t||this.options.ignoreCase&&e.toLowerCase()===t.toLowerCase()},removeEmpty:function(e){for(var t=[],n=0;n<e.length;n++)e[n]&&t.push(e[n]);return t},castInput:function(e){return e},tokenize:function(e){return e.split(``)},join:function(e){return e.join(``)}};function Se(e,t,n,r,i){for(var a=[],o;t;)a.push(t),o=t.previousComponent,delete t.previousComponent,t=o;a.reverse();for(var s=0,c=a.length,l=0,u=0;s<c;s++){var d=a[s];if(!d.removed){if(!d.added&&i){var f=n.slice(l,l+d.count);f=f.map(function(e,t){var n=r[u+t];return n.length>e.length?n:e}),d.value=e.join(f)}else d.value=e.join(n.slice(l,l+d.count));l+=d.count,d.added||(u+=d.count)}else if(d.value=e.join(r.slice(u,u+d.count)),u+=d.count,s&&a[s-1].added){var p=a[s-1];a[s-1]=a[s],a[s]=p}}var m=a[c-1];return c>1&&typeof m.value==`string`&&(m.added||m.removed)&&e.equals(``,m.value)&&(a[c-2].value+=m.value,a.pop()),a}var Ce=new P;function we(e,t,n){return Ce.diff(e,t,n)}var F=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,I=/\S/,L=new P;L.equals=function(e,t){return this.options.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e===t||this.options.ignoreWhitespace&&!I.test(e)&&!I.test(t)},L.tokenize=function(e){for(var t=e.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/),n=0;n<t.length-1;n++)!t[n+1]&&t[n+2]&&F.test(t[n])&&F.test(t[n+2])&&(t[n]+=t[n+2],t.splice(n+1,2),n--);return t};function Te(e,t,n){return L.diff(e,t,n)}var R=new P;R.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\r\n/g,`
2
- `));var t=[],n=e.split(/(\n|\r\n)/);n[n.length-1]||n.pop();for(var r=0;r<n.length;r++){var i=n[r];r%2&&!this.options.newlineIsToken?t[t.length-1]+=i:(this.options.ignoreWhitespace&&(i=i.trim()),t.push(i))}return t};var Ee=new P;Ee.tokenize=function(e){return e.split(/(\S.+?[.!?])(?=\s+|$)/)};var De=new P;De.tokenize=function(e){return e.split(/([{}:;,]|\s+)/)};function z(e){"@babel/helpers - typeof";return z=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},z(e)}var Oe=Object.prototype.toString,B=new P;B.useLongestToken=!0,B.tokenize=R.tokenize,B.castInput=function(e){var t=this.options,n=t.undefinedReplacement,r=t.stringifyReplacer,i=r===void 0?function(e,t){return t===void 0?n:t}:r;return typeof e==`string`?e:JSON.stringify(V(e,null,null,i),i,` `)},B.equals=function(e,t){return P.prototype.equals.call(B,e.replace(/,([\r\n])/g,`$1`),t.replace(/,([\r\n])/g,`$1`))};function V(e,t,n,r,i){t||=[],n||=[],r&&(e=r(i,e));var a;for(a=0;a<t.length;a+=1)if(t[a]===e)return n[a];var o;if(Oe.call(e)===`[object Array]`){for(t.push(e),o=Array(e.length),n.push(o),a=0;a<e.length;a+=1)o[a]=V(e[a],t,n,r,i);return t.pop(),n.pop(),o}if(e&&e.toJSON&&(e=e.toJSON()),z(e)===`object`&&e!==null){t.push(e),o={},n.push(o);var s=[],c;for(c in e)e.hasOwnProperty(c)&&s.push(c);for(s.sort(),a=0;a<s.length;a+=1)c=s[a],o[c]=V(e[c],t,n,r,c);t.pop(),n.pop()}else o=e;return o}var H=new P;H.tokenize=function(e){return e.slice()},H.join=H.removeEmpty=function(e){return e};function U(e,t){let n=t.content.findDiffStart(e.content);if(n===null)return!1;let{a:r,b:i}=t.content.findDiffEnd(e.content),a=n-Math.min(r,i);return a>0&&(e.resolve(n-a).depth<t.resolve(r+a).depth?n-=a:(r+=a,i+=a)),new y(n,i,t.slice(n,r))}function ke(e){if(!e.steps.length)return;let t=new x(e.docs[0]),n=e.steps.slice();for(;n.length;){let e=n.shift();for(;n.length&&e.merge(n[0]);){let r=n.shift();e=e instanceof y&&r instanceof y?U(t.doc,r.apply(e.apply(t.doc).doc).doc):e.merge(r)}t.step(e)}return t}function W(e){let t=new x(e);return t.removeMark(0,e.nodeSize-2),t.doc}function Ae(e,t){let n=t.split(`/`);for(n.shift();n.length;){if(typeof e!=`object`)throw Error();let t=n.shift();e=e[t]}return e}function G(e){return JSON.parse(JSON.stringify(e))}var K=class{fromDoc;toDoc;complexSteps;wordDiffs;simplifyDiff;schema;tr;currentJSON;finalJSON;ops;constructor(e,t,n={}){let r={complexSteps:!0,wordDiffs:!1,simplifyDiff:!0,...n};this.fromDoc=e,this.toDoc=t,this.complexSteps=r.complexSteps,this.wordDiffs=r.wordDiffs,this.simplifyDiff=r.simplifyDiff,this.schema=e.type.schema,this.tr=new x(e),this.currentJSON={},this.finalJSON={},this.ops=[]}init(){return this.complexSteps?(this.currentJSON=W(this.fromDoc).toJSON(),this.finalJSON=W(this.toDoc).toJSON(),this.ops=(0,N.createPatch)(this.currentJSON,this.finalJSON),this.recreateChangeContentSteps(),this.recreateChangeMarkSteps()):(this.currentJSON=this.fromDoc.toJSON(),this.finalJSON=this.toDoc.toJSON(),this.ops=(0,N.createPatch)(this.currentJSON,this.finalJSON),this.recreateChangeContentSteps()),this.simplifyDiff&&(this.tr=ke(this.tr)||this.tr),this.tr}recreateChangeContentSteps(){let e=[];for(;this.ops.length;){let t=this.ops.shift();e.push(t);let n,r=G(this.currentJSON),i=t.path.split(`/`);for(;n==null;){(0,N.applyPatch)(r,[t]);try{n=this.schema.nodeFromJSON(r),n.check()}catch{if(n=null,this.ops.length>0)t=this.ops.shift(),e.push(t);else throw Error(`No valid diff possible applying ${t.path}`)}}this.complexSteps&&e.length===1&&(i.includes(`attrs`)||i.includes(`type`))?(this.addSetNodeMarkup(),e=[]):e.length===1&&t.op===`replace`&&i[i.length-1]===`text`?(this.addReplaceTextSteps(t,r),e=[]):this.addReplaceStep(n,r)&&(e=[])}}addSetNodeMarkup(){let e=this.schema.nodeFromJSON(this.currentJSON),t=this.schema.nodeFromJSON(this.finalJSON),n=t.content.findDiffStart(e.content),r=e.nodeAt(n),i=t.nodeAt(n);if(n!=null){let e=r.type===i.type?null:i.type;try{this.tr.setNodeMarkup(n,e,i.attrs,i.marks)}catch(t){if(e&&t.message.includes(`Invalid content`))this.tr.replaceWith(n,n+r.nodeSize,i);else throw t}return this.currentJSON=W(this.tr.doc).toJSON(),this.ops=(0,N.createPatch)(this.currentJSON,this.finalJSON),!0}return!1}recreateChangeMarkSteps(){this.toDoc.descendants((e,t)=>{if(!e.isInline)return!0;this.tr.doc.nodesBetween(t,t+e.nodeSize,(n,r)=>{if(!n.isInline)return!0;let i=Math.max(t,r),a=Math.min(t+e.nodeSize,r+n.nodeSize);n.marks.forEach(t=>{t.isInSet(e.marks)||this.tr.removeMark(i,a,t)}),e.marks.forEach(e=>{e.isInSet(n.marks)||this.tr.addMark(i,a,e)})})})}addReplaceStep(e,t){let n=U(this.schema.nodeFromJSON(this.currentJSON),e);if(!n)return!1;if(!this.tr.maybeStep(n).failed)return this.currentJSON=t,!0;throw Error(`No valid step found.`)}addReplaceTextSteps(e,t){let n={...e,value:`xx`},r={...e,value:`yy`},i=G(this.currentJSON),a=G(this.currentJSON);(0,N.applyPatch)(i,[n]),(0,N.applyPatch)(a,[r]);let o=this.schema.nodeFromJSON(i),s=this.schema.nodeFromJSON(a),c=e.value,l=Ae(this.currentJSON,e.path),u=this.wordDiffs?Te(l,c):we(l,c),d=o.content.findDiffStart(s.content),f=o.resolve(d+1).marks();for(;u.length;){let e=u.shift();if(e.added){let t=this.schema.nodeFromJSON({type:`text`,text:e.value}).mark(f);if(u.length&&u[0].removed){let e=u.shift();this.tr.replaceWith(d,d+e.value.length,t)}else this.tr.insert(d,t);d+=e.value.length}else if(e.removed)if(u.length&&u[0].added){let t=u.shift(),n=this.schema.nodeFromJSON({type:`text`,text:t.value}).mark(f);this.tr.replaceWith(d,d+e.value.length,n),d+=t.value.length}else this.tr.delete(d,d+e.value.length);else d+=e.value.length}this.currentJSON=t}};function je(e,t,n={}){return new K(e,t,n).init()}var Me=new Set([`list`,`bulletList`,`orderedList`,`taskList`]);function q(e){let t=[];return e.forEach((e,n)=>{if(Me.has(e.type.name)){let r=n+1,i=0;e.forEach(e=>{let n=r+i;t.push({from:n,to:n+e.nodeSize,key:`${e.type.name}:${e.textContent}`}),i+=e.nodeSize})}else t.push({from:n,to:n+e.nodeSize,key:`${e.type.name}:${e.textContent}`})}),t}function Ne(e,t){let n=e.length,r=t.length,i=Array.from({length:n+1},()=>Array(r+1).fill(0));for(let a=n-1;a>=0;a--)for(let n=r-1;n>=0;n--)i[a][n]=e[a].key===t[n].key?i[a+1][n+1]+1:Math.max(i[a+1][n],i[a][n+1]);let a=[],o=0,s=0;for(;o<n&&s<r;)e[o].key===t[s].key?(a.push({type:`same`,b:t[s]}),o++,s++):i[o+1][s]>=i[o][s+1]?(a.push({type:`del`,a:e[o]}),o++):(a.push({type:`ins`,b:t[s]}),s++);for(;o<n;)a.push({type:`del`,a:e[o++]});for(;s<r;)a.push({type:`ins`,b:t[s++]});return a}function Pe(e,t){let n=Ne(q(e),q(t)),r=[],i=0;for(let e of n)e.type===`same`?i=e.b.to:e.type===`ins`?(r.push({fromA:0,toA:0,fromB:e.b.from,toB:e.b.to}),i=e.b.to):r.push({fromA:e.a.from,toA:e.a.to,fromB:i,toB:i});return r}var Fe=400;function J(e,t,n){return t.nodeFromJSON(e.parseWithFallback(n))}function Ie(e,t){let n=t.filter(e=>e.toB>e.fromB),r=[];return e.steps.forEach((t,i)=>{let a=t instanceof te?`add`:t instanceof ne?`remove`:null;if(a===null)return;let o=t,s=e.mapping.slice(i+1),c=s.map(o.from,-1),l=s.map(o.to,1);if(l<=c||n.some(e=>e.fromB<=c&&l<=e.toB))return;let u=e.mapping.slice(0,i).invert(),d=u.map(o.from),f=u.map(o.to);f<=d||r.push({fromA:d,toA:f,fromB:c,toB:l,markName:o.mark.type.name,kind:a})}),r}function Le(e,t,n,r){if(e.length>2e5||t.length>2e5)return{ok:!1,reason:`ceiling`};let i,a;try{i=J(r,n,e),a=J(r,n,t)}catch{return{ok:!1,reason:`parse`}}let o=a,s=null;try{s=je(i,a,{complexSteps:!0,wordDiffs:!0,simplifyDiff:!0}),o=s.doc}catch{}let c=Pe(i,o),l=s?Ie(s,c):[];return c.length+l.length>Fe?{ok:!1,reason:`ceiling`}:{ok:!0,afterDoc:o,beforeDoc:i,changes:c,markChanges:l}}var Re=`.ok-diff-ins, .ok-diff-ins-block, [data-diff-deleted]`;function ze(e){return e.changes.length+2*e.markChanges.length}function Y(e){let t=!1;return e.forEach(e=>{e.isBlock&&(t=!0)}),t}function Be(e){if(e.childCount===0)return!1;let t=!0;return e.forEach(e=>{e.type.name!==`listItem`&&e.type.name!==`taskItem`&&(t=!1)}),t}function X(e,t,n){let r=document.createElement(n?`div`:`span`);r.className=n?`ok-diff-del ok-diff-del-block`:`ok-diff-del`,r.setAttribute(`data-diff-deleted`,``);let i=e.serializeFragment(t);if(n&&Be(t)){let e=document.createElement(`ul`);e.appendChild(i),r.appendChild(e)}else r.appendChild(i);return r}function Ve(e,t,n,r,i){let a=b.fromSchema(i),o=[];for(let e of r){let n=t.slice(e.fromA,e.toA),r=Y(n.content);o.push(h.widget(e.fromB,()=>X(a,n.content,r),{side:-1,ignoreSelection:!0,marks:[]})),o.push(h.inline(e.fromB,e.toB,{class:`ok-diff-ins`},{inclusiveEnd:!0}))}for(let e of n)if(e.toB>e.fromB&&o.push(h.node(e.fromB,e.toB,{class:`ok-diff-ins-block`})),e.toA>e.fromA){let n=t.slice(e.fromA,e.toA),r=Y(n.content);o.push(h.widget(e.fromB,()=>X(a,n.content,r),{side:-1,ignoreSelection:!0,marks:[]}))}return v.create(e,o)}var He=new Set([`slashCommand`,`blockDragHandle`,`blockMover`,`tableInsertControls`,`trailingAffordance`,`fileHandler`,`gfmAutolink`,`inlineLinkInputRule`,`keyboardNav`,`tiptapFindReplace`,`selectionState`,`sourceDirtyObserver`,`tabFocusTrap`]),Z=r.filter(e=>!He.has(e.name)).map(e=>e.name===`jsxComponent`?_:e),Q=p(Z);function Ue(e,t){return Le(e,t,Q,de())}var We=f.create({name:`renderedDiffDecorations`,addOptions(){return{decorations:v.empty}},addProseMirrorPlugins(){let e=this.options.decorations;return[new d({key:new ee(`renderedDiffDecorations`),props:{decorations:()=>e}})]}});function Ge(e){let t=(0,C.c)(31),{diff:n}=e,r,i,a,o;if(t[0]!==n.afterDoc||t[1]!==n.beforeDoc||t[2]!==n.changes||t[3]!==n.markChanges){let e=Ve(n.afterDoc,n.beforeDoc,n.changes,n.markChanges,Q);o=le,a=!1,r=Z,i=We.configure({decorations:e}),t[0]=n.afterDoc,t[1]=n.beforeDoc,t[2]=n.changes,t[3]=n.markChanges,t[4]=r,t[5]=i,t[6]=a,t[7]=o}else r=t[4],i=t[5],a=t[6],o=t[7];let s;t[8]!==r||t[9]!==i?(s=[...r,i],t[8]=r,t[9]=i,t[10]=s):s=t[10];let c;t[11]===n.afterDoc?c=t[12]:(c=n.afterDoc.toJSON(),t[11]=n.afterDoc,t[12]=c);let l;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(l={attributes:{class:`pt-4`}},t[13]=l):l=t[13];let u;t[14]!==a||t[15]!==s||t[16]!==c?(u={editable:a,extensions:s,content:c,editorProps:l},t[14]=a,t[15]=s,t[16]=c,t[17]=u):u=t[17];let d;t[18]===n?d=t[19]:(d=[n],t[18]=n,t[19]=d);let f=o(u,d),[p]=(0,j.useState)(Ke),m=(0,j.useRef)(null),h,g;t[20]===p?(h=t[21],g=t[22]):(h=()=>{let e=m.current;if(e)return e.appendChild(p),()=>{p.parentNode===e&&e.removeChild(p)}},g=[p],t[20]=p,t[21]=h,t[22]=g),(0,j.useLayoutEffect)(h,g);let _;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,w.jsx)(`div`,{className:`tiptap-editor`,children:(0,w.jsx)(`div`,{ref:m,style:{display:`contents`}})}),t[23]=_):_=t[23];let v;t[24]===f?v=t[25]:(v=(0,w.jsx)(ue,{editor:f,className:`tiptap-editor-portal-content`}),t[24]=f,t[25]=v);let y;t[26]!==p||t[27]!==v?(y=(0,M.createPortal)(v,p),t[26]=p,t[27]=v,t[28]=y):y=t[28];let b;return t[29]===y?b=t[30]:(b=(0,w.jsxs)(`div`,{className:`editor-doc-scroll min-h-0 flex-1`,"data-testid":`rendered-diff-view`,children:[_,y]}),t[29]=y,t[30]=b),b}function Ke(){let e=document.createElement(`div`);return e.style.display=`contents`,e}var qe=`[data-property-change]`,Je=`[data-content] > [data-line-type="change-addition"], [data-content] > [data-line-type="change-deletion"]`;function Ye(e){let t=[];for(let n of e.querySelectorAll(`diffs-container`)){let e=n.shadowRoot;e&&t.push(...e.querySelectorAll(Je))}return t}function Xe(e,t){let n=new Map;return{sync(){for(let r of e.querySelectorAll(`diffs-container`)){let e=r.shadowRoot;if(e===null||n.has(e))continue;let i=new MutationObserver(t);i.observe(e,{childList:!0,subtree:!0}),n.set(e,i)}},disconnect(){for(let e of n.values())e.disconnect();n.clear()}}}function Ze(e){let t=Ye(e),n=[],r=null;for(let e of t)(r===null||e.previousElementSibling!==r)&&n.push(e),r=e;return n}function $(e){let t=0,n=0;for(let r of e.split(`
3
- `))r.startsWith(`+`)&&!r.startsWith(`+++`)?t++:r.startsWith(`-`)&&!r.startsWith(`---`)&&n++;return{additions:t,deletions:n}}function Qe(e,t){return`${e}\u0000${t}`}function $e(e,t,n){let r=g(e).body,i=g(t).body;return r===i?``:pe(n,r,i,``,``,{context:Math.max(r.split(`
4
- `).length,i.split(`
5
- `).length)})}function et(e,t,n,r,a){let o=(0,C.c)(10),s=r===void 0?`vs-live`:r,c=a===void 0?null:a,{activeProvider:l}=i(),u;o[0]===Symbol.for(`react.memo_cache_sentinel`)?(u={status:`idle`,diff:null},o[0]=u):u=o[0];let[d,f]=(0,j.useState)(u),p=(0,j.useRef)(l),m;o[1]===l?m=o[2]:(m=()=>{p.current=l},o[1]=l,o[2]=m),(0,j.useEffect)(m);let h,_;return o[3]!==n||o[4]!==t||o[5]!==s||o[6]!==c||o[7]!==e?(h=()=>{if(!e){f({status:`idle`,diff:null});return}let r=e,i=!1;f({status:`loading`,diff:null});let a=async function(e){let r=Qe(t,e),i=n.get(r);if(i!==void 0)return i;let a=await fetch(`/api/history/${e}?docName=${encodeURIComponent(t)}`);if(!a.ok)return console.error(`[timeline-diff] history fetch returned non-ok response`,{sha:e,docName:t,status:a.status}),null;let o=(await a.json()).content??``;return n.set(r,o),o};return(async function(){try{let e=await a(r);if(i)return;if(e===null){f({status:`error`,diff:null});return}let n,o;if(s===`vs-parent`){let t=c?await a(c):``;if(i)return;if(t===null){f({status:`error`,diff:null});return}n=t,o=e}else n=e,o=p.current?.document.getText(`source`).toString()??``;let l=g(n).body,u=g(o).body,d=$e(n,o,t),m=re(n,o);if(i)return;let{additions:h,deletions:_}=$(d);f({status:`ready`,diff:d,additions:h,deletions:_,before:l,after:u,properties:m})}catch(e){i||(console.error(`[timeline-diff] failed to load entry diff`,{sha:r,docName:t,mode:s,err:e}),f({status:`error`,diff:null}))}})(),()=>{i=!0}},_=[e,t,n,s,c],o[3]=n,o[4]=t,o[5]=s,o[6]=c,o[7]=e,o[8]=h,o[9]=_):(h=o[8],_=o[9]),(0,j.useEffect)(h,_),d}export{Xe as a,Re as c,Ze as i,ze as l,et as n,Ge as o,qe as r,Ue as s,$ as t,me as u};
@@ -1,11 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-tZXQYakl.mjs";import{An as t,Ec as n,Es as r,Oc as i,Tc as a,_o as o,bd as s,fu as c,hs as l,jn as ee,nc as te,zn as ne}from"./md-manager-BGnqyqi1-hmuoZRep.mjs";import{$r as u,Co as d,Ct as f,Fn as p,Gn as m,Gr as h,Qa as g,Qr as _,To as v,Xi as y,Yn as b,Zr as x,cr as S,gi as C,hi as w,m as T,wo as E,zr as D}from"./dist-C7Oi9AkI.mjs";import{t as O}from"./yazl-BBz29IQN.mjs";import{at as k,ot as A,vt as j}from"./init-CFhk-KKz.mjs";import{b as M,l as re}from"./registry-probes-RTMO-HFE.mjs";import{c as N}from"./colors-r_owlCuY.mjs";import{t as P}from"./is-object-BGze3w87.mjs";import{n as ie}from"./constants-D-T_nFfi.mjs";import"./loader-KtGbC19j.mjs";import"./preview-CyJ8a7Fo.mjs";import{execSync as ae,spawnSync as oe}from"node:child_process";import{basename as F,dirname as I,isAbsolute as se,join as L,relative as R,resolve as z,sep as B}from"node:path";import{closeSync as ce,cpSync as le,createWriteStream as ue,existsSync as V,lstatSync as de,mkdirSync as H,mkdtempSync as fe,openSync as pe,readFileSync as U,readSync as me,readdirSync as W,rmSync as G,rmdirSync as he,statSync as ge,writeFileSync as K}from"node:fs";import{arch as _e,freemem as ve,homedir as q,hostname as ye,platform as be,release as xe,tmpdir as Se,totalmem as Ce,type as we,uptime as Te}from"node:os";import"node:fs/promises";import{createHash as Ee}from"node:crypto";const De=new Set([`start`,`stop`,`status`,`clean`,`ui`,`mcp`,`preview`,`lint`,`deinit`,`auth`]);function Oe(e,t,n=b){if(e!==void 0&&!De.has(e))return null;let r=n(t);return r===null||r.distance===0?null:r.rootPath}let ke=null;function Ae(e){ke=e}function je(){return ke??process.cwd()}const Me=`Open Knowledge`;function Ne(e={}){let t=e.platformName??process.platform,n=e.productName??`OpenKnowledge`;return k(t).join(A({...e,platformName:t}),n)}function Pe(e={}){let t=e.platformName??process.platform,n=e.home??q(),r=e.env??process.env,i=k(t),a;return a=t===`win32`?r.LOCALAPPDATA||i.join(n,`AppData`,`Local`):t===`darwin`?i.join(n,`Library`,`Caches`):r.XDG_CACHE_HOME||i.join(n,`.cache`),i.join(a,`@inkeepopen-knowledge-desktop-updater`)}function Fe(e){if(typeof e!=`object`||!e)return null;let t=e.recentProjects;if(!Array.isArray(t))return null;let n=[];for(let e of t){if(typeof e!=`object`||!e)continue;let t=e;typeof t.path==`string`&&typeof t.name==`string`&&n.push({path:t.path,name:t.name})}return n}function Ie(e){let t=L(e,`state.json`);if(!V(t))return[];let n;try{n=JSON.parse(U(t,`utf-8`))}catch{return[]}return Fe(n)??[]}function Le(e){let t=L(e,`state.json`);if(!V(t))return!1;try{return Fe(JSON.parse(U(t,`utf-8`)))!==null}catch{return!1}}const Re=8192;function ze(e,t){if(e.outcome===`not-present`)return`not-present (no DiagnosticReports directory)`;if(e.outcome===`unreadable-directory`)return`unreadable (${e.directoryErrorCode??`unknown`} reading DiagnosticReports)`;let n=[`${e.windowDays}d`,`${e.foreignIgnored} other-process report(s) ignored`,`${e.unparseable} unparseable`];e.droppedOverCap>0&&n.push(`${e.droppedOverCap} older dropped over cap`);let r=e.files.length-t;return r>0&&n.push(`${r} vanished before staging`),e.outcome===`none-in-window`?`none found in window (${n.join(`; `)})`:`${t} collected (${n.join(`; `)})`}function Be(e){return e.replace(/\\+\/?/g,e=>{if(!e.endsWith(`/`))return e;let t=e.length-1;return`${`\\`.repeat(t-t%2)}/`})}const Ve=RegExp(`("(?:${[`crashReporterKey`,`bootSessionUUID`,`deviceIdentifierForVendor`].join(`|`)})"\\s*:\\s*)"[^"]*"`,`g`);function He(e){return e.replace(Ve,`$1"[REDACTED-DEVICE-ID]"`)}function Ue(e){return He(Be(e))}const We=/^(\d{4}-\d{2}-\d{2}) (\d{2}:\d{2}:\d{2})(\.\d+)? ([+-]\d{2})(\d{2})$/;function Ge(e){if(typeof e!=`string`)return null;let t=We.exec(e.trim());if(t===null)return null;let[,n,r,i=``,a,o]=t,s=Date.parse(`${n}T${r}${i}${a}:${o}`);return Number.isNaN(s)?null:s}function Ke(e){let t=pe(e,`r`);try{let e=Buffer.alloc(Re),n=0,r=!1;for(;n<Re;){let i=me(t,e,n,Re-n,n);if(i===0){r=!0;break}let a=n;n+=i;let o=e.subarray(0,n).indexOf(10,a);if(o!==-1)return e.subarray(0,o).toString(`utf-8`)}return r?e.subarray(0,n).toString(`utf-8`):null}finally{ce(t)}}function qe(e){try{let t=Ke(e);if(t===null)return{kind:`unreadable`};let n=JSON.parse(t);if(typeof n!=`object`||!n)return{kind:`unreadable`};let{name:r,app_name:i,timestamp:a}=n,o=typeof r==`string`?r:typeof i==`string`?i:null;return o===null?{kind:`unreadable`}:{kind:`named`,name:o,timestampMs:Ge(a)}}catch{return{kind:`unreadable`}}}function Je(e){return e===`OpenKnowledge`||e.startsWith(`OpenKnowledge `)}function Ye(e,t){let n={files:[],foreignIgnored:0,unparseable:0,droppedOverCap:0,windowDays:7},r;try{r=W(e,{withFileTypes:!0})}catch(e){let t=e.code;return t===`ENOENT`?{...n,outcome:`not-present`}:{...n,outcome:`unreadable-directory`,directoryErrorCode:t??`unknown`}}let i=t.getTime()-6048e5,a=[],o=0,s=0;for(let t of r){if(!t.isFile()||!t.name.endsWith(`.ips`))continue;let n=L(e,t.name),r;try{r=ge(n).mtimeMs}catch{continue}if(r<i)continue;let c=qe(n),l=c.kind===`named`&&c.timestampMs!==null?c.timestampMs:r;if(c.kind===`unreadable`){s+=1;continue}if(!Je(c.name)){o+=1;continue}a.push({path:n,atMs:l})}a.sort((e,t)=>t.atMs-e.atMs);let c=a.slice(0,25),l={foreignIgnored:o,unparseable:s,droppedOverCap:a.length-c.length,windowDays:7};return c.length===0?{...l,files:[],outcome:`none-in-window`}:{...l,files:c.map(e=>e.path),outcome:`collected`}}function J(){return L(q(),`.ok`,`bug-reports`)}function Xe(e=new Date){let t=e.toISOString().replace(/[:.]/g,`-`),n=J(),r=`${t}-bugreport`,i=L(n,`${r}.zip`);for(let e=2;V(i);e+=1)i=L(n,`${r}-${e}.zip`);return i}function Ze(e,t){let n=L(e,`.ok`,`config.yml`);if(V(n))try{let e=U(n,`utf8`).match(/^\s*name:\s*['"]?(.+?)['"]?\s*$/m);if(e?.[1])return e[1]}catch(e){t?.warn({configPath:n,err:e},`bug-report: failed to read .ok/config.yml for project slug; using path-hash fallback`)}return V(L(e,`.ok`))?Ee(`sha256`).update(z(e)).digest(`hex`).slice(0,12):null}function Qe(){let e={timestamp:new Date().toISOString(),platform:be(),osType:we(),osRelease:xe(),hostname:`[redacted]`,uptime:Te(),freeMem:ve(),totalMem:Ce(),nodeVersion:process.version,bunVersion:process.versions.bun??null,v8Version:process.versions.v8??null,pid:process.pid};try{e.macosVersion=ae(`sw_vers -productVersion 2>/dev/null`,g({encoding:`utf8`})).trim()}catch{}try{let t=L(__dirname,`..`,`..`,`package.json`);V(t)&&(e.okVersion=JSON.parse(U(t,`utf8`)).version)}catch{}return e}const $e=[{prefix:`cli`,projectTagged:!0},{prefix:`desktop`,projectTagged:!1},{prefix:`mcp`,projectTagged:!1}];function et(e){let t=F(e);return $e.some(e=>e.projectTagged&&t.startsWith(`${e.prefix}.`))}function tt(e,t){return at(e,t).files}const nt=[`ShipIt_stderr.log`,`ShipIt_stdout.log`];function rt(e,t=re){let n=L(e,`${t}.ShipIt`);if(!V(n))return[];let r;try{r=W(n)}catch{return[]}return nt.flatMap(e=>r.map(t=>{if(t===e)return{entry:t,suffix:-1};if(!t.startsWith(`${e}.`))return null;let n=t.slice(e.length+1);return/^\d+$/.test(n)?{entry:t,suffix:Number(n)}:null}).filter(e=>e!==null).sort((e,t)=>e.suffix-t.suffix).slice(0,4).map(e=>L(n,e.entry)))}function it(e){if(!V(e))return[];try{let n=new Map;for(let r of W(e).filter(e=>e.endsWith(`.yaml`)).sort()){let e=r.endsWith(`.sent.yaml`)?r.slice(0,-t.length):r.slice(0,-5),i=n.get(e);i===void 0?n.set(e,[r]):i.push(r)}return[...n.values()].slice(-25).flat().map(t=>L(e,t))}catch{return[]}}function at(e,t){if(!V(t))return{files:[],excludedByProjectSlug:0};let n=W(t).filter(e=>e.endsWith(`.log`)||/\.log\.\d+$/.test(e)).map(e=>L(t,e));if(!e)return{files:n,excludedByProjectSlug:0};let r=n.filter(et),i=[],a=r.filter(t=>{try{return U(t,`utf8`).includes(`"project":"${e}"`)}catch{return i.push(t),!1}});if(a.length===0)return{files:n,excludedByProjectSlug:0};let o=new Set([...a,...i]);return{files:n.filter(e=>!et(e)||o.has(e)),excludedByProjectSlug:r.length-o.size}}function ot(e){let t=L(e,`.ok`,`local`);return V(t)?{files:[`server.lock`,`last-spawn-error.log`,a].map(e=>L(t,e)).filter(e=>V(e))}:{files:[]}}function st(e){let t=L(e,`.ok`,`local`,`logs`);return V(t)?{files:[`server-current.jsonl`,`server-prev.jsonl`].map(e=>L(t,e)).filter(e=>V(e))}:{files:[]}}function ct(e){let t=0,n=new Map,r=e.replace(/("(?:docName|doc\.name|documentName)"\s*:\s*")((?:[^"\\]|\\.)*)"/g,(e,r,i)=>{t+=1;let a=n.get(i);return a===void 0&&(a=`doc#${Ee(`sha256`).update(i).digest(`hex`).slice(0,12)}`,n.set(i,a)),`${r}${a}"`});for(let[e,i]of[...n].sort(([e],[t])=>t.length-e.length)){if(e.length===0||!r.includes(e))continue;let n=r.split(e);t+=n.length-1,r=n.join(i)}return{text:r,count:t}}function lt(e){let t=e.revealDocNames?e.content:ct(e.content).text;if(e.redact){let{redacted:n,patterns:r,lineCount:i}=l(t);e.zipfile.addBuffer(Buffer.from(n,`utf8`),e.name),e.bundleFiles.push(e.name),r.length>0&&e.redactions.push({file:e.name,lineCount:i,patterns:r})}else e.zipfile.addBuffer(Buffer.from(t,`utf8`),e.name),e.bundleFiles.push(e.name)}function Y(e){for(let t of e.files)try{let n=U(t,`utf8`);lt({zipfile:e.zipfile,name:`${e.prefix}/${F(t)}`,content:t.endsWith(`.ips`)?Ue(n):n,redact:e.redact,revealDocNames:e.revealDocNames,bundleFiles:e.bundleFiles,redactions:e.redactions})}catch(n){e.logger?.warn({file:t,prefix:e.prefix,err:n},`bug-report: skipped unreadable file`)}}async function ut(t){let{redact:n,outputPath:r,logger:i}=t,a=t.revealDocNames??!1,o=t.userLogsDir??L(q(),`.ok`,`logs`),s=t.projectDir?Ze(t.projectDir,i):null;H(I(r),{recursive:!0}),i?.info({projectSlug:s},`gathering diagnostic data`);let c=Qe();c.desktop=t.desktop??null,c.language=t.language??null;let{files:l,excludedByProjectSlug:te}=at(s,o),{files:u}=t.projectDir?ot(t.projectDir):{files:[]},{files:d}=t.projectDir?st(t.projectDir):{files:[]},f=t.shipItLogFiles??[],p=t.diagnosticReports?.files??[];i?.info({logFileCount:l.length,logFilesExcludedByProjectSlug:te,lockFileCount:u.length,localSinkFileCount:d.length,shipItLogFileCount:f.length,diagnosticReportCount:p.length},`files collected`);let m=[],h=[],{ZipFile:g}=await import(`./yazl-BsCX6KWo.mjs`).then(t=>e(t.default,1)),_=new g;Y({zipfile:_,files:[...l,...f],prefix:`logs`,redact:n,revealDocNames:a,bundleFiles:h,redactions:m,logger:i}),Y({zipfile:_,files:u,prefix:`lockdir`,redact:n,revealDocNames:a,bundleFiles:h,redactions:m,logger:i}),Y({zipfile:_,files:d,prefix:`local-logs`,redact:n,revealDocNames:a,bundleFiles:h,redactions:m,logger:i}),Y({zipfile:_,files:t.bugReportLedgerFiles??[],prefix:ee,redact:n,revealDocNames:a,bundleFiles:h,redactions:m,logger:i}),Y({zipfile:_,files:p,prefix:`diagnostic-reports`,redact:n,revealDocNames:a,bundleFiles:h,redactions:m,logger:i});for(let e of t.extraFiles??[])try{let t=U(e.sourcePath),n=`extra/${e.zipName??F(e.sourcePath)}`;_.addBuffer(t,n),h.push(n)}catch(t){i?.warn({sourcePath:e.sourcePath,err:t},`extra file unreadable; omitted from bundle`)}t.note&&lt({zipfile:_,name:`note.txt`,content:t.note,redact:n,revealDocNames:a,bundleFiles:h,redactions:m});let v=new Set(p.map(e=>`diagnostic-reports/${F(e)}`)),y=h.filter(e=>v.has(e)),b=t.diagnosticReports===void 0?`not-collected (no collection attempted)`:ze(t.diagnosticReports,y.length);_.addBuffer(Buffer.from(`${b}\n`,`utf8`),`state/diagnostic-reports-status.txt`),h.push(`state/diagnostic-reports-status.txt`);let x=JSON.stringify(c,null,2);_.addBuffer(Buffer.from(x,`utf8`),`sysinfo.json`),h.push(`sysinfo.json`);let S={generatedAt:new Date().toISOString(),disciplineVersion:`1.0.0`,projectSlug:s,files:h,redactions:m,sysinfo:c};_.addBuffer(Buffer.from(JSON.stringify(S,null,2),`utf8`),`MANIFEST.json`);let C=m.reduce((e,t)=>e+t.lineCount,0),w=new Set(f.map(e=>`logs/${F(e)}`)),T=h.filter(e=>w.has(e)),E=new Set((t.bugReportLedgerFiles??[]).map(e=>`${ee}/${F(e)}`)),D=h.filter(e=>E.has(e)),O=s?h.filter(e=>e.startsWith(`logs/`)&&!et(e)&&!w.has(e)):[],k=y.length>0?[`Crash reports under diagnostic-reports/ are rewritten on the way in,`,`independently of this setting: escaped path separators are normalised`,`so the scrub above can read them, and the identifiers that link this`,`machine's bundles to each other are replaced. Nothing else is changed;`,`they are not byte-identical to the files macOS wrote.`]:[],A=k.length>0?[`Redaction was disabled for this bundle; file contents are unmodified,`,`with one exception.`,...k]:[`Redaction was disabled for this bundle; file contents are unmodified.`],j=[`# Bug Report Bundle`,``,`Generated: ${S.generatedAt}`,`Project: ${s??`(unscoped)`}`,`Discipline version: ${S.disciplineVersion}`,``,`## Contents`,``,...h.map(e=>`- ${e}`),``,`## Privacy`,``,...O.length>0?[`Scope: some collected logs are user-wide rather than project-scoped.`,`These are written once per machine per day and can contain activity`,`from other projects open on this machine, including captured console`,`output:`,...O.map(e=>`- ${e}`),``]:[],...T.length>0?[`Installer logs: written by the macOS update helper rather than by`,`OpenKnowledge itself, and machine-wide rather than scoped to any one`,`project. They record the install and update history of this app on`,`this machine. Only this app is collected, never other applications`,`that use the same update mechanism:`,...T.map(e=>`- ${e}`),``]:[],...y.length>0?[`Crash reports: written by macOS itself rather than by OpenKnowledge,`,`and machine-wide rather than scoped to any one project. They record`,`why the operating system ended a process of this app — the signal or`,`exception, the code-signing verdict, and whatever text the process`,`left behind as it died. They also carry machine details the OS puts`,`in every report: the account uid, the Mac model, and the name of the`,`process that launched this app, which on a managed machine can be`,`internal tooling. The identifiers that would link this machine's`,`bundles to each other are replaced before bundling. Only this`,`app's own reports are collected, never another application's, though`,`a report of ours still names the processes it ran alongside:`,...y.map(e=>`- ${e}`),``]:[],...D.length>0?[`Send history: a small record for each bug report previously generated`,`on this machine — when it was generated, whether sending it`,`succeeded, and why it failed if it did. This is what makes a failed`,`send diagnosable at all. It is machine-wide rather than scoped to`,`this project, so it names the other projects reports were filed`,`from. It carries no document content:`,...D.map(e=>`- ${e}`),``]:[],...n?[`This bundle was auto-redacted before packaging.`,`Patterns checked: ${ne.join(`, `)}`,C>0?`${C} line(s) were scrubbed across ${m.length} file(s).`:`No redactions were needed.`,`See MANIFEST.json for the full redaction audit report.`,...k,``,`This bundle is safe to attach to a GitHub issue.`]:A].join(`
2
- `);_.addBuffer(Buffer.from(j,`utf8`),`README.md`),_.end();let M=ue(r);return _.outputStream.pipe(M),await new Promise((e,t)=>{M.on(`close`,e),M.on(`error`,t)}),i?.info({bundlePath:r,fileCount:h.length,redactionCount:C},`bundle written`),{zipPath:r,summary:{projectSlug:s,files:h,redactions:m,redactedLineCount:C,generatedAt:S.generatedAt}}}var dt=c(),ft=e(O(),1),X=e(N(),1);function pt(e){let t=v(`user`,e,e);return d({absPath:t,sideline:!1,warn:()=>{}}).value.appearance?.language??`system`}function mt({home:e=q(),env:t=process.env}={}){let n=pt(e),{override:a,preferenceList:o}=E(t),{locale:s,source:c}=r({override:a,storedPreference:n,supportedLocales:i,preferenceList:o,autoDetectableLocales:te});return{preference:n,locale:s,source:c,systemLanguages:o}}function ht(e,t){return t.length===0||!e.includes(t)?e:e.split(t).join(`<CONTENT_DIR>`)}function gt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Z(e,t){if(typeof e==`string`)return ht(e,t.contentDir);if(Array.isArray(e))return e.map(e=>Z(e,t));if(!gt(e))return e;let n={};for(let[r,i]of Object.entries(e))n[r]=Z(i,t);return n}function _t(e,t){let n=U(e,`utf-8`);if(n.length===0)return;let r=n.endsWith(`
3
- `),i=n.split(`
4
- `),a=[];for(let e=0;e<i.length;e++){let n=i[e]??``;if(e!==i.length-1||n!==``){if(n.length===0){a.push(``);continue}try{let e=Z(JSON.parse(n),t);a.push(JSON.stringify(e))}catch{a.push(n)}}}let o=r?`${a.join(`
5
- `)}\n`:a.join(`
6
- `);K(e,o)}function vt(e,t){let n=U(e,`utf-8`);if(n.trim().length!==0)try{let r=Z(JSON.parse(n),t),i=n.endsWith(`
7
- `)?`
8
- `:``;K(e,`${JSON.stringify(r,null,2)}${i}`)}catch{let r=ht(n,t.contentDir);r!==n&&K(e,r)}}function yt(e,t){let n=U(e,`utf-8`),r=ht(n,t.contentDir);r!==n&&K(e,r)}function bt(e){try{return W(e,{withFileTypes:!0}).filter(e=>e.isFile()).map(t=>L(e,t.name))}catch{return[]}}const xt=new Set([`agent-presence.json`,`agent-effects.json`,`runtime.json`]);function St(e){return/\.log\.\d+$/.test(e)}function Ct(e){return e.endsWith(`.jsonl`)||e.endsWith(`.log`)||St(e)}const wt=[`telemetry`,`logs`,`process`,`diagnostic-reports`];function Tt(e){let t={contentDir:e.contentDir};for(let n of wt)for(let r of bt(L(e.stagingDir,n)))Ct(r)?_t(r,t):r.endsWith(`.json`)?vt(r,t):yt(r,t);for(let n of bt(L(e.stagingDir,`state`))){let e=F(n);n.endsWith(`.jsonl`)?_t(n,t):xt.has(e)?vt(n,t):yt(n,t)}}const Et=[`.ok`,`local`,`telemetry`],Dt=[`.ok`,`local`,`logs`],Ot=[`.ok`,`local`,`loss-capture`],kt=`spans-current.jsonl`,At=`spans-prev.jsonl`,jt=`server-current.jsonl`,Mt=`server-prev.jsonl`,Nt=`loss-current.jsonl`,Pt=`loss-prev.jsonl`;function Ft(e){return L(e,...Et,kt)}function It(e){return L(e,...Et,At)}function Lt(e){return L(e,...Dt,jt)}function Rt(e){return L(e,...Dt,Mt)}function zt(e){return L(e,...Ot,Nt)}function Bt(e){return L(e,...Ot,Pt)}const Vt=1e3;async function Ht(e){try{let t=await fetch(`http://127.0.0.1:${e}/api/metrics/agent-presence`,{signal:AbortSignal.timeout(Vt)});return t.ok?await t.text():null}catch{return null}}async function Ut(e){try{let t=await fetch(`http://127.0.0.1:${e}/api/metrics/agent-effects`,{signal:AbortSignal.timeout(Vt)});return t.ok?await t.text():null}catch{return null}}async function Wt(e){try{let t=await fetch(`http://127.0.0.1:${e}/api/metrics/watcher-recent`,{signal:AbortSignal.timeout(Vt)});return t.ok?await t.text():null}catch{return null}}function Gt(e){try{let t=JSON.parse(e);if(typeof t!=`object`||!t)return null;let n=t.decisions;return Array.isArray(n)?n.length===0?``:`${n.map(e=>JSON.stringify(e)).join(`
9
- `)}\n`:null}catch{return null}}function Kt(e){let t=L(e,`.git`,`ok`);if(!V(t))return null;let n=oe(`git`,[`-C`,t,`log`,`--oneline`,`-50`],g({encoding:`utf-8`,timeout:2e3}));return n.error||n.status!==0?null:n.stdout??``}function qt(e){let t=L(e,`.git`,`ok`);if(!V(t))return null;let n=oe(`git`,[`-C`,t,`for-each-ref`,`--sort=-creatordate`,`--count=50`,`--format=%(refname)%09%(creatordate:iso-strict)%09%(contents:subject)`,`refs/checkpoints/`],g({encoding:`utf-8`,timeout:2e3}));return n.error||n.status!==0?null:n.stdout??``}function Jt(){let e=process.env.OK_DESKTOP_VERSION,t=process.env.OK_DESKTOP_PACKAGED,n=process.env.OK_DESKTOP_CHANNEL;return e===void 0||t===void 0||n===void 0?null:{electronVersion:e,packaged:t===`1`||t.toLowerCase()===`true`,channel:n}}function Yt(){return{nodeVersion:process.version,platform:be(),arch:_e()}}function Xt(){return process.env.OTEL_SDK_DISABLED===`false`}function Zt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Qt(e){if(!V(e))return{};let t;try{t=(0,dt.parse)(U(e,`utf-8`))}catch(t){return console.warn(`[ok diagnose bundle] failed to parse ${e} for manifest config; manifest will report schema defaults. Reason: ${t instanceof Error?t.message:String(t)}`),{}}if(!Zt(t))return{};let n=t.telemetry;if(!Zt(n))return{};let r=n.localSink;return Zt(r)?r:{}}function $t(e){return typeof e==`boolean`?e:void 0}function en(e){return typeof e==`number`&&Number.isFinite(e)&&e>0?e:void 0}function tn(e){if(Zt(e))return en(e.maxBytes)}function nn(e){let t=Qt(v(`project`,e)),n=Qt(v(`project-local`,e));return{enabled:$t(n.enabled)??$t(t.enabled)??!0,spansMaxBytes:tn(n.spans)??tn(t.spans)??52428800,logsMaxBytes:tn(n.logs)??tn(t.logs)??26214400}}function rn(e){return Ee(`sha256`).update(e).digest(`hex`)}function an(e){let t=U(e),n=0;for(let e=0;e<t.length;e++)t[e]===10&&n++;return n}const on=[`"doc.name"`,`"docName"`];function sn(e){let t=U(e,`utf-8`),n=0;for(let e of on){let r=t.indexOf(e);for(;r!==-1;)n++,r=t.indexOf(e,r+e.length)}return n}function Q(e,t){if(!V(e))return!1;try{return H(I(t),{recursive:!0}),e.endsWith(`.ips`)?K(t,Ue(U(e,`utf-8`))):le(e,t),!0}catch{return!1}}function cn(e){let t=[],n=e=>{let r=W(e,{withFileTypes:!0});for(let i of r){let r=L(e,i.name);i.isDirectory()?n(r):i.isFile()&&t.push(r)}};return n(e),t.sort()}const ln=new Set([`.jsonl`]);function un(e){let t=e.lastIndexOf(`.`);return t!==-1&&ln.has(e.slice(t))}const dn=new Set([`.jsonl`,`.json`,`.txt`,`.log`,`.lock`,`.yaml`,`.yml`,`.ips`]);function fn(e){if(St(e))return!0;let t=e.lastIndexOf(`.`);return t!==-1&&dn.has(e.slice(t))}function pn(e){let t=[];for(let n of cn(e)){let r=mn(e,n);if(!fn(r))continue;let{redacted:i,patterns:a,lineCount:o}=l(U(n,`utf-8`));a.length!==0&&(K(n,i),t.push({file:r,lineCount:o,patterns:a}))}return{redactions:t,redactedLineCount:t.reduce((e,t)=>e+t.lineCount,0)}}function mn(e,t){return R(e,t).split(B).join(`/`)}async function hn(e){let t=z(e.contentDir),r=z(e.projectDir??e.contentDir),i=e.deps??{},o=i.fetchAgentPresence??Ht,s=i.fetchAgentEffects??Ut,c=i.fetchWatcherRecent??Wt,l=i.readShadowHead??Kt,te=i.readCheckpointRefs??qt,ne=i.now??(()=>new Date),u=i.okVersion??(()=>ie),d=i.readDesktopEnv??Jt,f=i.readLanguage??mt,p=i.readRuntime??Yt,m=i.isOtlpPushEnabled??Xt,h=fe(L(Se(),`ok-bundle-`));try{H(L(h,`telemetry`),{recursive:!0}),H(L(h,`logs`),{recursive:!0}),H(L(h,`state`),{recursive:!0}),Q(Ft(r),L(h,`telemetry`,kt)),Q(It(r),L(h,`telemetry`,At)),Q(Lt(r),L(h,`logs`,jt)),Q(Rt(r),L(h,`logs`,Mt));for(let t of e.userLogFiles??[])Q(t,L(h,`logs`,F(t)));for(let t of e.userStateFiles??[])Q(t,L(h,ee,F(t)));let g=0;for(let t of e.diagnosticReports?.files??[])Q(t,L(h,`diagnostic-reports`,F(t)))&&(g+=1);let _=L(r,`.ok`,`local`),v=L(_,`server.lock`),y=`not-running`,b=`no server.lock`,x=null;if(V(v)){Q(v,L(h,`state`,`server.lock`));try{let e=U(v,`utf-8`),t=JSON.parse(e);typeof t.port==`number`?x=t.port:b=`lock present but no port`}catch{b=`lock present but unparseable`}}if(x!==null){let e=await o(x);e===null?b=`agent-presence endpoint at :${x} unreachable`:(K(L(h,`state`,`agent-presence.json`),e),y=`running`,b=``);let t=await s(x);t!==null&&K(L(h,`state`,`agent-effects.json`),t);let n=await c(x);if(n!==null){let e=Gt(n);e!==null&&K(L(h,`state`,`watcher-recent.jsonl`),e)}}let S=l(t);S!==null&&K(L(h,`state`,`shadow-head.txt`),S);let C=te(t);C!==null&&K(L(h,`state`,`checkpoint-refs.txt`),C),Q(zt(r),L(h,`state`,Nt)),Q(Bt(r),L(h,`state`,Pt)),Q(L(_,`last-spawn-error.log`),L(h,`state`,`last-spawn-error.log`)),Q(L(_,n),L(h,`state`,n)),Q(L(_,a),L(h,`state`,a));let w=p(),T=d(),E=f(),D={ok:{version:u(),nodeVersion:w.nodeVersion,platform:w.platform,arch:w.arch},host:{desktop:T,language:E}};K(L(h,`state`,`runtime.json`),`${JSON.stringify(D,null,2)}\n`);let O=y===`running`?`running
10
- `:`not-running (${b})\n`;K(L(h,`state`,`server-status.txt`),O);let k=e.diagnosticReports===void 0?`not-collected (no collection attempted)`:ze(e.diagnosticReports,g);if(K(L(h,`state`,`diagnostic-reports-status.txt`),`${k}\n`),e.processDir&&V(e.processDir)){let t=L(h,`process`);H(t,{recursive:!0}),le(e.processDir,t,{recursive:!0})}let A=e.redact===!0;A&&Tt({stagingDir:h,contentDir:t}),e.note&&K(L(h,`note.txt`),e.note);let j=null;e.scrubSecrets===!0&&(j=pn(h));for(let t of e.extraFiles??[])Q(t.sourcePath,L(h,`extra`,t.zipName??F(t.sourcePath)))||i.logger?.warn({sourcePath:t.sourcePath},`extra file missing; omitted from bundle`);let M=nn(r),re=cn(h),N=[],P=0,ie=0;for(let e of re){let t=mn(h,e),n=ge(e).size,r=un(t)?an(e):0;N.push({path:t,bytes:n,lines:r}),P+=n,(t.startsWith(`telemetry/`)||t.startsWith(`logs/`))&&(ie+=sn(e))}let ae={applied:A};j!==null&&(ae.secretScrub=j);let oe={schemaVersion:2,createdAt:ne().toISOString(),ok:{version:u(),nodeVersion:w.nodeVersion,platform:w.platform,arch:w.arch},host:{desktop:T,language:E},contentDir:{pathSha256:rn(t),absolutePath:A?`<CONTENT_DIR>`:t},telemetry:{localSink:M,otlpPushEnabled:m()},redaction:ae,serverStatus:y,files:N};K(L(h,`manifest.json`),`${JSON.stringify(oe,null,2)}\n`);let I=re.some(e=>{try{return U(e,`utf-8`).includes(t)}catch{return!1}}),se={stagedDiagnosticReports:g,totalBytes:P,fileCount:N.length,docNameCount:ie,contentDirVisible:I,redacted:A},R=!1;return{stagingDir:h,manifest:oe,summary:se,cleanup:()=>{R||(R=!0,G(h,{recursive:!0,force:!0}))}}}catch(e){throw G(h,{recursive:!0,force:!0}),e}}async function gn(e){let{collected:t,outputPath:n}=e,r=I(n);if(!V(r))throw Error(`ok diagnose bundle: parent directory does not exist: ${r}. Create it or pass --out with an existing parent.`);let i=new ft.ZipFile,a=cn(t.stagingDir);for(let e of a){let n=mn(t.stagingDir,e);i.addFile(e,n)}i.end();let o=ue(n);return i.outputStream.pipe(o),await new Promise((e,t)=>{o.on(`close`,e),o.on(`error`,t),i.outputStream.on(`error`,t)}),n}function _n(e,t){let n=L(e,`.ok`,`config.yml`);if(V(n))try{let t=(0,dt.parse)(U(n,`utf-8`)),r=P(t)?t.content:void 0,i=P(r)?r.dir:void 0;if(typeof i==`string`&&i.length>0)return z(e,i)}catch(e){t?.warn({configPath:n,err:e},`bug-report: failed to read .ok/config.yml; falling back to project root as content dir`)}return z(e)}async function vn(e,t,n,r,i){let a=Ze(t,e.logger),o=await hn({contentDir:_n(t,e.logger),projectDir:t,redact:e.redact,scrubSecrets:e.redact,note:e.note,extraFiles:e.extraFiles,userLogFiles:[...tt(a,e.userLogsDir??L(q(),`.ok`,`logs`)),...rt(e.cachesDir??L(q(),`Library`,`Caches`))],userStateFiles:it(e.bugReportsDir??J()),diagnosticReports:i,deps:{readDesktopEnv:n,readLanguage:r,logger:e.logger}});try{H(I(e.outputPath),{recursive:!0}),await gn({collected:o,outputPath:e.outputPath});let t=o.manifest.redaction.secretScrub;return{zipPath:e.outputPath,summary:{level:`full`,systemWide:!1,projectSlug:a,files:o.manifest.files.map(e=>e.path),redactions:t?.redactions??[],redactedLineCount:t?.redactedLineCount??0,generatedAt:o.manifest.createdAt}}}finally{o.cleanup()}}async function yn(e){let{projectDir:t}=e,n=e.readDesktopEnv??Jt,r=e.readLanguage??mt,i=()=>Ye(e.diagnosticReportsDir??L(q(),`Library`,`Logs`,`DiagnosticReports`),new Date);if(e.level===`full`&&t!==void 0)return vn(e,t,n,r,i());let{zipPath:a,summary:o}=await ut({projectDir:t,redact:e.redact,revealDocNames:e.level===`full`,outputPath:e.outputPath,userLogsDir:e.userLogsDir,shipItLogFiles:rt(e.cachesDir??L(q(),`Library`,`Caches`)),bugReportLedgerFiles:it(e.bugReportsDir??J()),diagnosticReports:e.level===`full`?i():void 0,logger:e.logger,note:e.note,extraFiles:e.extraFiles,desktop:n(),language:r()});return{zipPath:a,summary:{level:e.level,systemWide:t===void 0,projectSlug:o.projectSlug,files:o.files,redactions:o.redactions,redactedLineCount:o.redactedLineCount,generatedAt:o.generatedAt}}}function $(e,t,n={}){let r=u(e,t);if(!V(r))return{status:`missing`,lockPath:r};let i;try{i=JSON.parse(U(r,`utf-8`))}catch{return{status:`corrupt`,lockPath:r}}if(!i||typeof i!=`object`||!h(i.pid))return{status:`corrupt`,lockPath:r};let a=i;if(!(n.isAlive??D)(a.pid))return{status:`dead-pid`,lockPath:r,lock:a};if(typeof a.machineId==`string`)return a.machineId===(n.machineId??S())?{status:`alive`,lockPath:r,lock:a}:{status:`foreign-host`,lockPath:r,lock:a};let o=n.host??ye();return a.hostname===o?{status:`alive`,lockPath:r,lock:a}:{status:`foreign-host`,lockPath:r,lock:a}}function bn(e){return e.replace(/:\d+$/,``)}function xn(e){let t=e.trim();if(!t)return null;{let e=/^https?:\/\/(?:[^/?#]*@)?([^@/?#]+)\/([\w.\-~%]+)\/([\w.\-~%]+?)(?:\.git)?\/?$/.exec(t);if(e)return{protocol:`https`,hostname:bn(e[1]),owner:e[2],name:e[3]}}{let e=/^ssh:\/\/(?:[^/?#]*@)?([^@/?#]+)\/([\w.\-~%]+)\/([\w.\-~%]+?)(?:\.git)?\/?$/.exec(t);if(e)return{protocol:`ssh`,hostname:bn(e[1]),owner:e[2],name:e[3]}}{let e=/^git:\/\/([^/?#]+)\/([\w.\-~%]+)\/([\w.\-~%]+?)(?:\.git)?\/?$/.exec(t);if(e)return{protocol:`git`,hostname:bn(e[1]),owner:e[2],name:e[3]}}{let e=/^(?:[\w.\-~%]+@)?([\w.-]+):([\w.\-~%]+)\/([\w.\-~%]+?)(?:\.git)?$/.exec(t);if(e?.[1].includes(`.`)||e&&t.startsWith(`git@`))return{protocol:`ssh`,hostname:e[1],owner:e[2],name:e[3]}}{let e=/^git:([\w.-]+)\/([\w.\-~%]+)\/([\w.\-~%]+?)(?:\.git)?\/?$/.exec(t);if(e)return{protocol:`git`,hostname:e[1],owner:e[2],name:e[3]}}if(!t.includes(`://`)&&!t.includes(`@`)&&!t.startsWith(`/`)){let e=/^([\w.-]+)\/([\w.\-~%]+?)(?:\.git)?$/.exec(t);if(e)return{protocol:`https`,hostname:`github.com`,owner:e[1],name:e[2]}}return null}const Sn=[{hostDir:`.adal`,pruneRoot:`.adal`},{hostDir:`.aider-desk`,pruneRoot:`.aider-desk`},{hostDir:`.astrbot/data`,pruneRoot:`.astrbot`},{hostDir:`.augment`,pruneRoot:`.augment`},{hostDir:`.autohand`,pruneRoot:`.autohand`},{hostDir:`.bob`,pruneRoot:`.bob`},{hostDir:`.codeartsdoer`,pruneRoot:`.codeartsdoer`},{hostDir:`.codebuddy`,pruneRoot:`.codebuddy`},{hostDir:`.codeium/windsurf`,pruneRoot:`.codeium`},{hostDir:`.codemaker`,pruneRoot:`.codemaker`},{hostDir:`.codestudio`,pruneRoot:`.codestudio`},{hostDir:`.commandcode`,pruneRoot:`.commandcode`},{hostDir:`.config/crush`,pruneRoot:`.config/crush`},{hostDir:`.config/devin`,pruneRoot:`.config/devin`},{hostDir:`.config/goose`,pruneRoot:`.config/goose`},{hostDir:`.config/kimchi/harness`,pruneRoot:`.config/kimchi`},{hostDir:`.continue`,pruneRoot:`.continue`},{hostDir:`.factory`,pruneRoot:`.factory`},{hostDir:`.forge`,pruneRoot:`.forge`},{hostDir:`.grok`,pruneRoot:`.grok`},{hostDir:`.iflow`,pruneRoot:`.iflow`},{hostDir:`.inferencesh`,pruneRoot:`.inferencesh`},{hostDir:`.jazz`,pruneRoot:`.jazz`},{hostDir:`.junie`,pruneRoot:`.junie`},{hostDir:`.kilocode`,pruneRoot:`.kilocode`},{hostDir:`.kiro`,pruneRoot:`.kiro`},{hostDir:`.kode`,pruneRoot:`.kode`},{hostDir:`.lingma`,pruneRoot:`.lingma`},{hostDir:`.mcpjam`,pruneRoot:`.mcpjam`},{hostDir:`.moxby`,pruneRoot:`.moxby`},{hostDir:`.mux`,pruneRoot:`.mux`},{hostDir:`.neovate`,pruneRoot:`.neovate`},{hostDir:`.ona`,pruneRoot:`.ona`},{hostDir:`.openhands`,pruneRoot:`.openhands`},{hostDir:`.pochi`,pruneRoot:`.pochi`},{hostDir:`.qoder`,pruneRoot:`.qoder`},{hostDir:`.qoder-cn`,pruneRoot:`.qoder-cn`},{hostDir:`.qwen`,pruneRoot:`.qwen`},{hostDir:`.reasonix`,pruneRoot:`.reasonix`},{hostDir:`.roo`,pruneRoot:`.roo`},{hostDir:`.rovodev`,pruneRoot:`.rovodev`},{hostDir:`.snowflake/cortex`,pruneRoot:`.snowflake`},{hostDir:`.tabnine/agent`,pruneRoot:`.tabnine`},{hostDir:`.terramind`,pruneRoot:`.terramind`},{hostDir:`.tinycloud`,pruneRoot:`.tinycloud`},{hostDir:`.trae`,pruneRoot:`.trae`},{hostDir:`.trae-cn`,pruneRoot:`.trae-cn`},{hostDir:`.vibe`,pruneRoot:`.vibe`},{hostDir:`.zcode`,pruneRoot:`.zcode`},{hostDir:`.zencoder`,pruneRoot:`.zencoder`}],Cn=[...f.map(e=>T[e]),`open-knowledge`];function wn(e){if(!se(e))throw Error(`skill cleanup requires an absolute home directory; got ${JSON.stringify(e)}`);let t=z(e);if(t===B||I(t)===t)throw Error(`skill cleanup refuses to operate on the filesystem root (${t})`);return t}function Tn(e,t){let n=R(e,t);if(n.startsWith(`..`)||se(n))return!1;let r=e;for(let e of n.split(B)){r=L(r,e);try{if(!de(r).isDirectory())return!1}catch{return!1}}return!0}function En(e,t){try{return W(e).every(n=>t.has(L(e,n)))}catch{return!1}}function Dn(e){let t=wn(e),n=[],r=[],i=new Set;for(let e of Sn){let a=L(t,e.hostDir,`skills`);if(!Tn(t,a))continue;let o=Cn.map(e=>L(a,e)).filter(e=>V(e));n.push(...o);for(let e of o)i.add(e);let s=L(t,e.pruneRoot),c=a;for(;En(c,i)&&(r.push(c),i.add(c),c!==s);){let e=I(c);if(e===c||e===t||!e.startsWith(t+B))break;c=e}}return{skillDirs:n,emptyDirs:r}}function On(e){try{if(!de(e).isDirectory())return!1;let t=W(e);return t.length===0||t.includes(`SKILL.md`)}catch{return!1}}function kn(e){let t=new Set,n=new Set;for(let r of Sn){let i=L(e,r.hostDir,`skills`);for(let e of Cn)t.add(L(i,e));let a=L(e,r.pruneRoot),o=i;for(;n.add(o),o!==a;){let t=I(o);if(t===o||t===e||!t.startsWith(e+B))break;o=t}}return{skillDirs:t,emptyDirs:n}}function An(e,t){let n=wn(e),r=kn(n),i=[...t.skillDirs.filter(e=>!r.skillDirs.has(e)),...t.emptyDirs.filter(e=>!r.emptyDirs.has(e))];if(i.length>0)throw Error(`refusing skill cleanup — ${i.length} path(s) outside the known legacy set: ${i.join(`, `)}`);let a=[];for(let e of t.skillDirs)if(Tn(n,e)&&On(e))try{G(e,{recursive:!0,force:!0}),a.push(e)}catch{}for(let e of t.emptyDirs)if(Tn(n,e))try{he(e),a.push(e)}catch{}return a}function jn(e){let t=wn(e),n=[];for(let e of f){let r=T[e];n.push({path:L(t,`.agents`,`skills`,r),bundleId:e,scope:`central`});for(let i of s)n.push({path:L(t,i.skillsRoot,r),bundleId:e,scope:`host`,hostDir:i.hostDir})}return n}function Mn(e,t){let n=[];for(let r of jn(e))if(r.bundleId===t)try{G(r.path,{recursive:!0,force:!0})}catch(e){n.push(e instanceof Error?e:Error(String(e)))}if(n.length>0)throw AggregateError(n,`Failed to remove ${n.length} path(s) for ${t}`)}function Nn(e){return e!=null&&e.includes(`--type=utility`)&&e.includes(`--utility-sub-type=node.mojom.NodeService`)}function Pn(e,t=Date.now()){let n=o(e,t);return n===`unknown`?`—`:n}function Fn(e,t,n,r){if(t.status===`missing`||t.status===`corrupt`)return null;let i=t.lock,a=t.status===`alive`&&x(i)?{port:i.port,status:t.status,pid:i.pid,startedAt:i.startedAt,usage:r}:null;return{directory:i.worktreeRoot,server:{port:i.port,status:t.status,pid:i.pid,startedAt:i.startedAt,usage:r},ui:a,hostname:i.hostname,lockPath:t.lockPath,binary:n==null?null:m(n),command:n,isDesktop:Nn(n)}}function In(e){let t=e.server.status;return t===`alive`||t===`foreign-host`?e.isDesktop?`desktop`:t===`alive`?`running`:`foreign`:`stale`}const Ln=new Set([`running`,`desktop`,`foreign`]);function Rn(e){switch(e){case`running`:return X.default.green(e);case`desktop`:return X.default.blue(e);case`foreign`:return X.default.cyan(e);case`stale`:return X.default.yellow(e)}}function zn(e){return e==null?`—`:`${e.cpuPercent.toFixed(1)}% / ${e.memPercent.toFixed(1)}%`}function Bn(e){return`${zn(e.server.usage)} | ${zn(e.ui?.usage??null)}`}function Vn(e){return`${e.server.port===0?`(starting)`:String(e.server.port)} / ${e.ui==null?`—`:String(e.ui.port)}`}function Hn(e){if(e.length===0)return`No open-knowledge servers found.`;let t=[`DIRECTORY`,`PORTS (API/UI)`,`CPU/MEM (API | UI)`,`STATUS`,`PID`,`STARTED`,`BINARY`],n=e.map(e=>[e.directory,Vn(e),Bn(e),In(e),String(e.server.pid),Pn(e.server.startedAt),e.binary??`—`]),r=t.length,i=t.map(e=>e.length);for(let e of n)for(let t=0;t<r;t++)i[t]=Math.max(i[t]??0,(e[t]??``).length);let a=t.map((e,t)=>e.padEnd(i[t]??0)).join(` `).trimEnd(),o=e.map((e,t)=>{let a=n[t]??[],o=[];for(let t=0;t<r;t++){let n=(a[t]??``).padEnd(i[t]??0);if(t===3){let r=a[t]??``;n=Rn(In(e))+` `.repeat(Math.max(0,(i[t]??0)-r.length))}o.push(n)}return o.join(` `).trimEnd()}),s=X.default.dim(`To stop a server: ok stop <port|pid|directory|all>`);return[a,...o,``,s].join(`
11
- `)}async function Un(e={}){let t=e.discover??p,n=e.inspect??(e=>$(e,`server`)),r=e.log??(e=>console.log(e)),i=e.resolveCommand??w,a=e.resolveUsage??C,o=await t(),s=[];for(let e of o){let t=n(e),r=Fn(e,t,t.status===`missing`||t.status===`corrupt`?null:i(t.lock.pid),t.status===`missing`||t.status===`corrupt`?null:a(t.lock.pid));r!=null&&s.push(r)}if(e.json){let e=s.map(e=>({...e,displayStatus:In(e)}));r(JSON.stringify(e,null,2));return}r(Hn(e.all?s:s.filter(e=>Ln.has(In(e)))))}function Wn(){return new j(`ps`).description(`List all running open-knowledge servers`).argument(`[modifier]`,`"all" to include stale (dead-pid) entries`).option(`--all`,`Include stale (dead-pid) entries (foreign-host shows by default)`).option(`--json`,`Emit structured JSON (always includes all statuses)`).action(async(e,t)=>{await Un({all:t.all===!0||e===`all`,json:t.json===!0})})}async function Gn(e,t=M()){let n=$(e,`server`);if(n.status!==`alive`&&n.status!==`foreign-host`)return null;let r=_(n.lock);if(r===null)return null;try{let n=await fetch(`${r}/api/server-info`,{signal:AbortSignal.timeout(1500)});if(!n.ok)return t?.warn({lockDir:e,baseUrl:r,outcome:`http-error`,status:n.status},`stop client-probe failed`),null;let i=(await n.json())?.collabClients;return typeof i==`number`&&Number.isFinite(i)?i:(t?.warn({lockDir:e,baseUrl:r,outcome:`no-client-count`,received:typeof i},`stop client-probe failed`),null)}catch(n){return t?.warn({lockDir:e,baseUrl:r,outcome:`unreachable`,err:n},`stop client-probe failed`),null}}function Kn(e,t={}){return{targets:Jn(e,t.isAlive??D)?[{name:`server`,pid:e.lock.pid,port:e.lock.port}]:[]}}async function qn(e){let t=e.inspect??(()=>$(e.lockDir,`server`)),n=e.kill??((e,t)=>process.kill(e,t)),r=e.log??(e=>console.log(e)),i=e.error??(e=>console.error(e)),a=e.probeClients??Gn,o=e.logger??M(),s=Kn(t(),{isAlive:e.isAlive});if(s.targets.length===0)return r(`No running open-knowledge processes.`),o?.info({lockDir:e.lockDir,targets:0},`stop found nothing to signal`),{stopped:[],failed:[],hadTargets:!1};if(e.force!==!0){let t=await a(e.lockDir,o);if(t!==null&&t>0)return i(`Not stopping: ${t} collaboration client${t===1?``:`s`} (editor window${t===1?``:`s`} or agents) still connected to the server at ${e.lockDir}. Close them, or re-run with --force to terminate anyway.`),o?.warn({lockDir:e.lockDir,clients:t,pids:s.targets.map(e=>e.pid)},`stop declined: live collaboration clients`),{stopped:[],failed:[],hadTargets:!0,declined:{clients:t}}}let c=[],l=[];for(let e of s.targets)try{n(e.pid,`SIGTERM`),c.push(e)}catch(t){l.push({target:e,error:t instanceof Error?t.message:String(t)})}return c.length>0&&r(`Stopped: ${c.map(e=>`${e.name} (pid=${e.pid}, port=${e.port})`).join(`, `)}`),o?.info({lockDir:e.lockDir,signalled:c.map(e=>({name:e.name,pid:e.pid,port:e.port})),failed:l.map(({target:e,error:t})=>({pid:e.pid,error:t})),forced:e.force===!0},`stop signalled processes`),l.length>0&&i(`Failed to stop: ${l.map(({target:e,error:t})=>`${e.name} (pid=${e.pid}): ${t}`).join(`; `)}`),{stopped:c,failed:l,hadTargets:!0}}function Jn(e,t){return e.status===`alive`||e.status===`foreign-host`&&t(e.lock.pid)}async function Yn(e,t=D){let n=await p(),r=null;for(let i of n){let n=$(i,`server`);if(Jn(n,t)){if(n.lock.port===e)return i;r===null&&n.lock.pid===e&&(r=i)}}return r}async function Xn(e,t){let n=await qn({lockDir:e,force:t});return(n.failed.length>0||n.declined!==void 0)&&(process.exitCode=1),n}function Zn(e,t,n={}){return t===0?`Nothing was running for ${e}, and no other open-knowledge servers are running.`:`Nothing was running for ${e}. ${t} other open-knowledge server${t===1?` is`:`s are`} running${n.listingFollows===!0?``:" — run `ok ps` to list them"}.`}async function Qn(e){let t=await p(),n=0;for(let r of t)r!==e&&Jn($(r,`server`),D)&&n++;return n}function $n(e){return new j(`stop`).description(`Stop open-knowledge server(s). With no argument: stops the server for the enclosing project — run it from anywhere inside the project. Pass a port number, a directory path, or "all" to target globally.`).argument(`[target...]`,`port number, directory path (spaces OK), or "all"`).option(`--force`,`Stop even when editor windows or agents are still connected to the server`).action(async(t,n)=>{let r=n.force===!0,i=t.length===0?void 0:t.join(` `);if(i===void 0){e();let t=y(process.cwd()),n=await qn({lockDir:t,force:r,log:()=>{}});if(n.hadTargets){if(n.stopped.length>0){let e=n.stopped.map(e=>`${e.name} (pid=${e.pid}, port=${e.port})`).join(`, `);console.log(`Stopped: ${e}`)}(n.failed.length>0||n.declined!==void 0)&&(process.exitCode=1)}else{let e=await Qn(t);console.log(Zn(process.cwd(),e,{listingFollows:e>0})),e>0&&await Un({})}return}if(i===`all`){let e=await p();if(e.length===0){console.log(`No running open-knowledge servers found.`);return}let t=0;for(let n of e)Jn($(n,`server`),D)&&(await Xn(n,r),t++);t===0&&console.log(`No running open-knowledge servers found.`);return}if(/^\d+$/.test(i)){let e=Number.parseInt(i,10),t=await Yn(e);if(t===null){console.log(`No running open-knowledge server found with port or PID ${e}.`);return}await Xn(t,r);return}let a=z(je(),i),o=y(a),s=[],c=await qn({lockDir:o,force:r,log:e=>s.push(e)});if((c.failed.length>0||c.declined!==void 0)&&(process.exitCode=1),c.hadTargets)for(let e of s)console.log(e);else console.log(Zn(a,await Qn(o)))})}export{je as C,Le as S,Oe as T,ze as _,An as a,Ne as b,jn as c,yn as d,hn as f,Ye as g,J as h,Wn as i,xn as l,Xe as m,qn as n,Dn as o,gn as p,$n as r,Mn as s,Gn as t,$ as u,Me as v,Ae as w,Ie as x,Pe as y};
@@ -1 +0,0 @@
1
- import"./md-manager-BGnqyqi1-hmuoZRep.mjs";import"./init-CFhk-KKz.mjs";import"./registry-probes-RTMO-HFE.mjs";import"./src-BM5JsMhJ.mjs";import"./start-B4ByX6yB.mjs";import{n as e}from"./loader-KtGbC19j.mjs";import"./preview-CyJ8a7Fo.mjs";import"./cli.mjs";import"./repair-mcp-configs-yyQ7PZIM.mjs";export{e as loadConfig};
@@ -1 +0,0 @@
1
- import{S as e,m as t,p as n,r}from"./start-B4ByX6yB.mjs";export{r as bootStartServer,n as resolveBundledReactShellDir,t as resolveHost,e as startCommand};