@inkeep/open-knowledge 0.63.0-beta.15 → 0.63.0-beta.17

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 (143) hide show
  1. package/README.md +1 -1
  2. package/dist/{acp-harness-probe-C4iHkeM8.mjs → acp-harness-probe-CjwmOpr9.mjs} +2 -2
  3. package/dist/assets/skills/discovery/SKILL.md +12 -3
  4. package/dist/assets/skills/project/references/preview.md +1 -0
  5. package/dist/cli.d.mts +1 -7
  6. package/dist/cli.mjs +63 -61
  7. package/dist/constants-BrRax3VQ.mjs +2 -0
  8. package/dist/{git-handle-NTLKBuxQ.mjs → git-handle-B-wIq9_v.mjs} +2 -2
  9. package/dist/git-handle-Die2olDM.mjs +1 -0
  10. package/dist/index.d.mts +17 -1
  11. package/dist/index.mjs +184 -184
  12. package/dist/init-BwNHg8oR.mjs +1 -0
  13. package/dist/{init-XMbWjso8.mjs → init-HvJh60Ld.mjs} +34 -34
  14. package/dist/{launch-json-removal-BiZLUU31.mjs → launch-json-removal-Cj-sYhg8.mjs} +2 -2
  15. package/dist/loader-BHFseQa5.mjs +1 -0
  16. package/dist/{loader-CVDhU5xC.mjs → loader-Dy9F-Lpw.mjs} +2 -2
  17. package/dist/md-manager-B5SZ3ICb.mjs +2 -0
  18. package/dist/{open-browser-gwcJC18V.mjs → open-browser-BR2Im42W.mjs} +2 -2
  19. package/dist/parse-worker.mjs +1 -1
  20. package/dist/preview-B1NCzRmQ.mjs +1 -0
  21. package/dist/{preview-CdSoc1z2.mjs → preview-BsEfxem0.mjs} +2 -2
  22. package/dist/public/assets/{ActivityModeContent-CkdaznRM.js → ActivityModeContent-R02cizpm.js} +1 -1
  23. package/dist/public/assets/{AddPropertiesButton-CvM0BKAc.js → AddPropertiesButton-I1ggRsVQ.js} +1 -1
  24. package/dist/public/assets/{AgentDiffPane-Bnwlf1Li.js → AgentDiffPane-uzXmOYIj.js} +1 -1
  25. package/dist/public/assets/{AgentThreadClientBinder-D3-u9JDY.js → AgentThreadClientBinder-D_zD7Qhi.js} +1 -1
  26. package/dist/public/assets/{BugReportHistory-C0wa0XGQ.js → BugReportHistory-abS5-Ay2.js} +1 -1
  27. package/dist/public/assets/{BugReportHistoryDialog-DHqxk14p.js → BugReportHistoryDialog-8QT0K3U_.js} +1 -1
  28. package/dist/public/assets/{CodeMirrorPropInput-CG6EP7Wy.js → CodeMirrorPropInput-CmmYeoCU.js} +1 -1
  29. package/dist/public/assets/DocumentContext-FaHb8ylL.js +38 -0
  30. package/dist/public/assets/{EditorModeToggle-bhfSOn_q.js → EditorModeToggle-CpRunW-7.js} +1 -1
  31. package/dist/public/assets/{EnableSyncConfirmDialog-B6yilqtJ.js → EnableSyncConfirmDialog-BxI2-RmX.js} +1 -1
  32. package/dist/public/assets/{ExcalidrawDocEditor-bKvVPHEp.js → ExcalidrawDocEditor-GDV0N0y0.js} +1 -1
  33. package/dist/public/assets/FeedbackForm-b-BXpkAf.js +1 -0
  34. package/dist/public/assets/{GraphPanel-BUCcv-kh.js → GraphPanel-ClyvhOAv.js} +2 -2
  35. package/dist/public/assets/{ImportSkillDialog-DZ0eTUfk.js → ImportSkillDialog-BZetMzZM.js} +1 -1
  36. package/dist/public/assets/{LintConfigEditor-Bjo--Jlu.js → LintConfigEditor-B336z-mr.js} +1 -1
  37. package/dist/public/assets/ManagedArtifactProperties-CqWQpzLt.js +1 -0
  38. package/dist/public/assets/ManagedArtifactProperties-wJGeDztw.js +1 -0
  39. package/dist/public/assets/{MermaidDocEditor-Bnr9cCBQ.js → MermaidDocEditor-aTs0O3AE.js} +1 -1
  40. package/dist/public/assets/{PropertyDisplayRow-Cqo45U9W.js → PropertyDisplayRow-BpvBaWUs.js} +1 -1
  41. package/dist/public/assets/{ReportBugDialogBody-IBysJpfl.js → ReportBugDialogBody-moJAIoCV.js} +1 -1
  42. package/dist/public/assets/{SchemaConfigEditor-DRO7Pk3U.js → SchemaConfigEditor-COVkp03B.js} +1 -1
  43. package/dist/public/assets/{SessionsHost-DPPwdpa6.js → SessionsHost-BXAVZ5Bw.js} +2 -2
  44. package/dist/public/assets/{SettingsDialogBody-DS5WxJ_c.js → SettingsDialogBody-Bj1MIZNv.js} +4 -4
  45. package/dist/public/assets/{ShareBranchSwitchDialog-AhlfSSFn.js → ShareBranchSwitchDialog-DuNe1fvO.js} +1 -1
  46. package/dist/public/assets/{ShareReceiveDialog-CtBx5On-.js → ShareReceiveDialog-CrNNOfJJ.js} +1 -1
  47. package/dist/public/assets/{ShareReceiveMissDialog-DLEnh_5D.js → ShareReceiveMissDialog-DkV_lrpZ.js} +1 -1
  48. package/dist/public/assets/{SkillCostValue-CvzNMqXu.js → SkillCostValue-CY9c551q.js} +1 -1
  49. package/dist/public/assets/{SkillEditBanner-tXNHuYvo.js → SkillEditBanner-BpHHcvIx.js} +1 -1
  50. package/dist/public/assets/{SkillInstallMenu-Ekfu2KMU.js → SkillInstallMenu-BD_PAM_a.js} +1 -1
  51. package/dist/public/assets/{SkillOriginInline-o3OTyjM5.js → SkillOriginInline-DA8DJ_ql.js} +1 -1
  52. package/dist/public/assets/{SkillToolbarControls-CNe6pc04.js → SkillToolbarControls-W23kGjss.js} +1 -1
  53. package/dist/public/assets/{SlidesToolbarControls-3EMlFJ8t.js → SlidesToolbarControls-EzaE1WhP.js} +1 -1
  54. package/dist/public/assets/{SourceEditor-kFqRpbcx.js → SourceEditor-BaL1qejh.js} +1 -1
  55. package/dist/public/assets/{TerminalPanel-BCA5YFGB.js → TerminalPanel-CKDxPvjU.js} +1 -1
  56. package/dist/public/assets/{TerminalWindowApp-D0UuAi49.js → TerminalWindowApp-C7CNxjf5.js} +1 -1
  57. package/dist/public/assets/{TextDocEditor-BDYvjXou.js → TextDocEditor-BVN0RUMF.js} +1 -1
  58. package/dist/public/assets/{ThreadView-Ca9jMAPt.js → ThreadView-CMZK-BpJ.js} +1 -1
  59. package/dist/public/assets/{TimelineDiffPane-CXMGhQWd.js → TimelineDiffPane-Bc-XAZLu.js} +1 -1
  60. package/dist/public/assets/{agent-diff-store-BWKp12gT.js → agent-diff-store-DD0f4NIB.js} +1 -1
  61. package/dist/public/assets/auth-state-cache-ClD5JYWh.js +11 -0
  62. package/dist/public/assets/{bug-report-send-manager-D8S8BM9G.js → bug-report-send-manager-DdvaCbm6.js} +1 -1
  63. package/dist/public/assets/{client-version-DgFD9pEA.js → client-version-qNp09UHQ.js} +1 -1
  64. package/dist/public/assets/{comment-chips-lFGydPzB.js → comment-chips-Bwj8YFje.js} +1 -1
  65. package/dist/public/assets/config-provider-CXDAzztA.js +5 -0
  66. package/dist/public/assets/{dist-ClHGFbjP2.js → dist-D4WRKOt72.js} +162 -162
  67. package/dist/public/assets/{doc-paths-DAr9Ew0q.js → doc-paths-C9Yc1vg4.js} +1 -1
  68. package/dist/public/assets/{documents-events-BYjMJCtr.js → documents-events-BMKlYUVN.js} +1 -1
  69. package/dist/public/assets/{file-tree-adapter-DsXEGhjb.js → file-tree-adapter-C198EExA.js} +1 -1
  70. package/dist/public/assets/{file-tree-utils-B2Axpvgc.js → file-tree-utils-CSs5f-WZ.js} +1 -1
  71. package/dist/public/assets/{folder-config-api-yRQlw6u0.js → folder-config-api-gOsj5i-2.js} +1 -1
  72. package/dist/public/assets/i18n-DFmfogPj.js +1 -0
  73. package/dist/public/assets/index-5eK_rkHt.js +2196 -0
  74. package/dist/public/assets/{lint-config-client-CvBLe774.js → lint-config-client-wKgtGEL8.js} +1 -1
  75. package/dist/public/assets/{markdownlint-rule-browser-DPzJ-2Lh.js → markdownlint-rule-browser-RISjNeT6.js} +1 -1
  76. package/dist/public/assets/page-list-cache-ZTSzNmQ2.js +1 -0
  77. package/dist/public/assets/{pending-receive-nav-store-DWJKoDM1.js → pending-receive-nav-store-3iX9ti04.js} +1 -1
  78. package/dist/public/assets/{progress-0OtpqQCi.js → progress-Dudp7Wq_.js} +1 -1
  79. package/dist/public/assets/{prop-types-CNBRspY6.js → prop-types-COnv01nG.js} +1 -1
  80. package/dist/public/assets/{receive-store-B9Ct8-SS.js → receive-store-D8jjMxsp.js} +1 -1
  81. package/dist/public/assets/{selection-context-DpPu_Xh_.js → selection-context-KQJN1S83.js} +1 -1
  82. package/dist/public/assets/{skill-scope-2ZCES3JH.js → skill-scope-CKFdVRvp.js} +1 -1
  83. package/dist/public/assets/{skills-api--ee5EeEm.js → skills-api-wXXUkQPb.js} +1 -1
  84. package/dist/public/assets/{src-DbondUJS.js → src-DrSSm1I_.js} +1 -1
  85. package/dist/public/assets/{tag-pill-input-BNoYWhVX.js → tag-pill-input-ITKkwMf-.js} +1 -1
  86. package/dist/public/assets/{target-navigation-intent-DHP7_t_c.js → target-navigation-intent-BxoCTAKA.js} +1 -1
  87. package/dist/public/assets/{terminal-cli-display-BocYbbO4.js → terminal-cli-display-B0DTXWZ8.js} +1 -1
  88. package/dist/public/assets/{terminal-launch-events-CAYVVL7j.js → terminal-launch-events-CUHlf5cm.js} +1 -1
  89. package/dist/public/assets/{terminal-telemetry-DVozpHQ9.js → terminal-telemetry-As1X_jSS.js} +1 -1
  90. package/dist/public/assets/{typing-burst-detector-BRCl1pVd.js → typing-burst-detector-ehxDWEji.js} +2 -2
  91. package/dist/public/assets/{uninstall-buWlLaEV.js → uninstall-N0nR0dg8.js} +1 -1
  92. package/dist/public/assets/{use-activity-panel-7QCLjFWD.js → use-activity-panel-Ctnb4QnY.js} +1 -1
  93. package/dist/public/assets/{use-apply-config-color-theme-CFCI2GNF.js → use-apply-config-color-theme-Bmc7PaVf.js} +1 -1
  94. package/dist/public/assets/{use-collab-url-DEYfnaMS.js → use-collab-url-DIf136Th.js} +1 -1
  95. package/dist/public/assets/{use-live-xterm-theme-BFOnU-eC.js → use-live-xterm-theme-DdmLLA-o.js} +1 -1
  96. package/dist/public/assets/{use-open-skill-Cb6nVVrt.js → use-open-skill-B0DZvwmE.js} +1 -1
  97. package/dist/public/assets/{use-settings-route-BoEnTMeF.js → use-settings-route-BTLmH_OQ.js} +1 -1
  98. package/dist/public/assets/{use-skill-origin-DDhmkGv4.js → use-skill-origin-Cynf4hpk.js} +1 -1
  99. package/dist/public/assets/{use-skills-D4lRvSJa.js → use-skills-sd8MATov.js} +1 -1
  100. package/dist/public/assets/{use-terminal-enabled-CTRJVZCQ.js → use-terminal-enabled-D6E1QfuU.js} +1 -1
  101. package/dist/public/assets/use-timeline-entry-diff-BQo-PoMT.js +6 -0
  102. package/dist/public/assets/{use-workspace-BuMImy8_.js → use-workspace-56M_LxvQ.js} +1 -1
  103. package/dist/public/index.html +45 -45
  104. package/dist/public/uninstall.html +3 -3
  105. package/dist/{repair-launch-json-CGiiCy_y.mjs → repair-launch-json-cekUGXko.mjs} +2 -2
  106. package/dist/{repair-mcp-configs-DJluMHvw.mjs → repair-mcp-configs-YtT5-lif.mjs} +2 -2
  107. package/dist/repair-skills-BAuMFgEP.mjs +1 -0
  108. package/dist/{repair-skills-DjaHfS6E.mjs → repair-skills-Bc9E4eeA.mjs} +2 -2
  109. package/dist/{resolve-project-root-CPytwxzP.mjs → resolve-project-root-C8lkeQRG.mjs} +3 -3
  110. package/dist/server-lock-6JxF9TCZ.mjs +1 -0
  111. package/dist/{server-lock-_XWgcmNh.mjs → server-lock-D3VEPV5W.mjs} +2 -2
  112. package/dist/{skill-teardown-D9VvS5qp.mjs → skill-teardown-CrI8hOjf.mjs} +2 -2
  113. package/dist/src-BFBB04eA.mjs +1 -0
  114. package/dist/src-Byf6fEJN.mjs +20 -0
  115. package/dist/src-CADYcyVw.mjs +2038 -0
  116. package/dist/{src-B5PnzP5L.mjs → src-DI-4tHhA.mjs} +2 -2
  117. package/dist/src-DKJ4ztC7.mjs +1 -0
  118. package/dist/{start-CR2CT-vo.mjs → start-CWSVMIjl.mjs} +3 -3
  119. package/dist/start-DR3dcjJ8.mjs +1 -0
  120. package/package.json +4 -4
  121. package/dist/constants-BRkzM7uA.mjs +0 -2
  122. package/dist/git-handle-CxBV0Wpn.mjs +0 -1
  123. package/dist/init-CZpSLmdU.mjs +0 -1
  124. package/dist/loader-DMPwRLmw.mjs +0 -1
  125. package/dist/md-manager-BZ9HvsZ5.mjs +0 -2
  126. package/dist/preview-R0sdPHy_.mjs +0 -1
  127. package/dist/public/assets/DocumentContext-Bvx7mXXE.js +0 -38
  128. package/dist/public/assets/FeedbackForm-BcWkKyUY.js +0 -1
  129. package/dist/public/assets/ManagedArtifactProperties-DOopSr77.js +0 -1
  130. package/dist/public/assets/ManagedArtifactProperties-DyBKBJky.js +0 -1
  131. package/dist/public/assets/auth-state-cache-CE8T6IzT.js +0 -11
  132. package/dist/public/assets/config-provider-dIusLQHf.js +0 -5
  133. package/dist/public/assets/i18n-DxXpBJoo.js +0 -1
  134. package/dist/public/assets/index-BbMnlVFR.js +0 -2196
  135. package/dist/public/assets/page-list-cache-DJODoSOh.js +0 -1
  136. package/dist/public/assets/use-timeline-entry-diff-DRN0Y_os.js +0 -6
  137. package/dist/repair-skills-B6gZ9sOT.mjs +0 -1
  138. package/dist/server-lock-CyzgE09K.mjs +0 -1
  139. package/dist/src-BWl-Pf3T.mjs +0 -1
  140. package/dist/src-BvV3skiE.mjs +0 -20
  141. package/dist/src-Cgbvt9_P.mjs +0 -2038
  142. package/dist/src-Y4R4Qtqe.mjs +0 -1
  143. package/dist/start-m2eSE7Im.mjs +0 -1
@@ -1 +0,0 @@
1
- import{Bo as e,D as t,Es as n,Fo as r,Ho as i,Io as a,Ko as o,Lo as s,Ts as c,Uo as l,Ur as u,Zi as d,jo as f,js as p,ks as m,qo as h,zo as g}from"./dist-ClHGFbjP2.js";import{r as _}from"./doc-paths-DAr9Ew0q.js";import{o as v,r as y}from"./file-tree-utils-B2Axpvgc.js";function b(e){return e.scope===`project`?o(x(e)):l(e.scope,e.name,e.hostQualifier)}function x(e){return e.canonicalPath??e.path}function S(e,t){return e.scope===`project`?`${x(e).replace(/\/SKILL\.mdx?$/i,``)}/${o(t)}`:i(e.scope,e.name,t,e.hostQualifier)}function C(e){let t=s(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,``)}function E(e){let t=new Set;for(let n of e)for(let e of y(n))t.add(e);return t}function D(e,t){if(!t)return;let n=d(e);if(n)return t.get(n)}function O(e,t){if(!t||e.includes(`/`))return;let n=d(e);if(n)return t.get(n)}function k(e,t){return t?`${e}${t}`:(e.split(`/`).pop()??``).lastIndexOf(`.`)>0?e:`${e}.md`}function A(e,t){if(!v(e)||g(e)||t.pages.has(e))return null;let n=k(e,t.docExt);return{kind:`asset`,target:n,assetPath:n,mediaKind:p(n.slice(n.lastIndexOf(`.`)+1))}}function j(t,i){if(f(t)){let n=a(t);if(n?.kind===`skill`&&n.scope===`project`){let t=e(n.name);return{kind:`doc`,target:t,docName:t}}let i=r(t);if(i){let e=h(i.folder,i.name);return{kind:`doc`,target:e,docName:e}}return{kind:`doc`,target:t,docName:t}}if(C(t))return{kind:`doc`,target:t,docName:t};let o=g(t);if(o){let e=h(o.folder,o.name);return{kind:`doc`,target:e,docName:e}}let{normalizedTarget:s,expectsFolder:l}=w(t);if(!s)return{kind:`missing`,target:s};if(!l&&(m(s)||n(s)||c(s)))return{kind:`doc`,target:s,docName:s};let u=T(t);if(!l&&i.pages.has(s))return{kind:`doc`,target:s,docName:s};if(!l&&u!==s&&i.pages.has(u))return{kind:`doc`,target:u,docName:u};if(!l){let e=D(u,i.pagesBySlug);if(e)return{kind:`doc`,target:e,docName:e}}let d=`${u}/index`;if(i.pages.has(d))return{kind:`folder-index`,target:u,folderPath:u,docName:d,noteKind:`canonical-index`};let p=u.split(`/`).pop(),_=p?`${u}/${p}`:null;if(_&&i.pages.has(_))return{kind:`folder-index`,target:u,folderPath:u,docName:_,noteKind:`legacy-folder-note`};if(!l){let e=O(u,i.pagesByBasename);if(e)return{kind:`doc`,target:e,docName:e}}if((i.folderPaths??E(i.pages)).has(u))return{kind:`folder`,target:u,folderPath:u};if(!l){let e=A(s,i);if(e)return e}return{kind:`missing`,target:u||s}}function M(e){return e.kind===`folder-index`?{kind:`folder`,target:e.folderPath,folderPath:e.folderPath}:e}function N(e,n,r=t){return typeof n!=`number`||!u(n,r)?null:{kind:`large-file`,target:e,docName:e,size:n,limit:r}}function P(e,n,r=t){return e.kind!==`doc`&&e.kind!==`folder-index`?e:N(e.docName,n.get(e.docName)?.size,r)??e}function F(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}}var I=null,L=new Set;function R(e,t){if(e===t)return!0;if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function z(e,t){return e===null?!1:e===t?!0:R(e.pages,t.pages)&&R(e.folderPaths,t.folderPaths)&&R(e.assetPaths??new Set,t.assetPaths??new Set)&&R(e.filePaths??new Set,t.filePaths??new Set)&&B(e.pageIcons,t.pageIcons)}function B(e,t){if(e===t)return!0;let n=e?.size??0;if(n!==(t?.size??0))return!1;if(n===0)return!0;for(let[n,r]of e)if(t.get(n)!==r)return!1;return!0}function V(e){let t=new Map;for(let[n,r]of e){let e=r.icon;typeof e==`string`&&e.trim()!==``&&t.set(n,e)}return t}function H(){return I}function U(e){if(!z(I,e)){I=e;for(let t of Array.from(L))try{t(e)}catch(e){console.error(`[page-list-cache] subscriber threw:`,e)}}}function W(e){if(L.add(e),I!==null)try{e(I)}catch(e){console.error(`[page-list-cache] subscriber threw on replay:`,e)}return()=>{L.delete(e)}}export{E as a,N as c,P as d,C as f,W as i,A as l,b as m,H as n,F as o,S as p,U as r,M as s,V as t,j as u};
@@ -1,6 +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,sr as a}from"./DocumentContext-Bvx7mXXE.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{i as d}from"./local-menu-action-bus-BuSRFm5g.js";import{L as f,W as p,q as m}from"./CodeMirrorPropInput-CG6EP7Wy.js";import{$a as h,Ba as g,Da as _,Ga as v,Go as y,K as b,Oo as x,Wa as S,Ya as ee,Za as te,cr as ne,eo as C,ma as re,to as ie,za as w}from"./dist-ClHGFbjP2.js";import{i as ae,l as oe,m as T,n as se,t as ce}from"./PropertyDisplayRow-Cqo45U9W.js";import{t as le}from"./minus-HJRULrSt.js";import{t as ue}from"./libesm-DJMS1nIV.js";var E=u(),D=n(),O=200;function de(e){let t=(0,E.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,D.jsx)(ge,{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,D.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(fe),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,D.jsx)(`p`,{className:`px-2 pt-1 text-xs text-muted-foreground italic`,children:(0,D.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,D.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 fe(e){return(0,D.jsx)(pe,{change:e},`${e.kind}-${e.key}`)}function pe(e){let t=(0,E.c)(22),{change:n}=e,{_:r}=c(),i=oe[x(n.kind===`removed`?n.before:n.after)],o;t[0]!==r||t[1]!==n.kind?(o=n.kind===`added`?{KindIcon:d,kindLabel:r({id:`hp8OtS`})}:n.kind===`removed`?{KindIcon:le,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,D.jsx)(s,{"aria-hidden":`true`,className:`size-3.5`}),t[3]=s,t[4]=u);let f;t[5]===l?f=t[6]:(f=(0,D.jsx)(`span`,{className:`sr-only`,children:l}),t[5]=l,t[6]=f);let p;t[7]!==u||t[8]!==f?(p=(0,D.jsxs)(`span`,{className:`flex size-7 shrink-0 items-center justify-center text-muted-foreground`,children:[u,f]}),t[7]=u,t[8]=f,t[9]=p):p=t[9];let m;t[10]===i?m=t[11]:(m=(0,D.jsx)(i,{"aria-hidden":`true`,className:`size-3.5`}),t[10]=i,t[11]=m);let h;t[12]===n?h=t[13]:(h=(0,D.jsx)(me,{change:n}),t[12]=n,t[13]=h);let g;t[14]!==n.key||t[15]!==m||t[16]!==h?(g=(0,D.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,D.jsx)(ce,{icon:m,label:n.key,dataKey:n.key,children:h})}),t[14]=n.key,t[15]=m,t[16]=h,t[17]=g):g=t[17];let _;return t[18]!==n.key||t[19]!==p||t[20]!==g?(_=(0,D.jsxs)(`div`,{"data-property-change":``,"data-key":n.key,"data-testid":`property-diff-row`,className:`flex items-start gap-1`,children:[p,g]}),t[18]=n.key,t[19]=p,t[20]=g,t[21]=_):_=t[21],_}function me(e){let t=(0,E.c)(17),{change:n}=e;if(n.kind===`added`){let e;return t[0]!==n.after||t[1]!==n.key?(e=(0,D.jsx)(k,{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,D.jsx)(k,{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=T(n.before)||T(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,D.jsx)(k,{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,D.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,D.jsx)(k,{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,D.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 k(e){let t=(0,E.c)(17),{value:n,keyName:r,removed:i}=e,a=i===void 0?!1:i;if(T(n)){let e=a?`opacity-70`:void 0,i;t[0]!==r||t[1]!==n?(i=(0,D.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,D.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(he).join(`, `):String(n),r=e.length>O;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,O)}…`: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,D.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 he(e){return typeof e==`string`}function ge(e){let t=(0,E.c)(10),{regions:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,D.jsx)(`p`,{className:`text-xs text-muted-foreground italic`,children:(0,D.jsx)(s,{id:`wFyXOW`})}),t[0]=r):r=t[0];let i;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,D.jsx)(s,{id:`EmSrGB`}),t[1]=i):i=t[1];let a;t[2]===n.before?a=t[3]:(a=(0,D.jsx)(A,{label:i,text:n.before}),t[2]=n.before,t[3]=a);let o;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,D.jsx)(s,{id:`NawEr2`}),t[4]=o):o=t[4];let c;t[5]===n.after?c=t[6]:(c=(0,D.jsx)(A,{label:o,text:n.after}),t[5]=n.after,t[6]=c);let l;return t[7]!==a||t[8]!==c?(l=(0,D.jsxs)(`div`,{className:`border-b border-border px-4 py-3`,"data-testid":`property-diff-unparseable`,"data-property-change":``,children:[r,(0,D.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 A(e){let t=(0,E.c)(7),{label:n,text:r}=e,i;t[0]===n?i=t[1]:(i=(0,D.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,D.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,D.jsxs)(`div`,{children:[i,o]}),t[4]=i,t[5]=o,t[6]=s):s=t[6],s}var j=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}()})),M=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}})),N=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=M();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}]}})),_e=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=j(),r=M(),i=N(),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)}})),ve=t((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Pointer=void 0,e.applyPatch=i,e.createPatch=o;var t=j();Object.defineProperty(e,`Pointer`,{enumerable:!0,get:function(){return t.Pointer}});var n=_e(),r=N();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)}})),P=e(o(),1),ye=e(l(),1),F=ve();function I(){}I.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(be(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 be(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 xe=new I;function Se(e,t,n){return xe.diff(e,t,n)}var L=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,R=/\S/,z=new I;z.equals=function(e,t){return this.options.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e===t||this.options.ignoreWhitespace&&!R.test(e)&&!R.test(t)},z.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]&&L.test(t[n])&&L.test(t[n+2])&&(t[n]+=t[n+2],t.splice(n+1,2),n--);return t};function Ce(e,t,n){return z.diff(e,t,n)}var B=new I;B.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 we=new I;we.tokenize=function(e){return e.split(/(\S.+?[.!?])(?=\s+|$)/)};var Te=new I;Te.tokenize=function(e){return e.split(/([{}:;,]|\s+)/)};function V(e){"@babel/helpers - typeof";return V=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},V(e)}var Ee=Object.prototype.toString,H=new I;H.useLongestToken=!0,H.tokenize=B.tokenize,H.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(U(e,null,null,i),i,` `)},H.equals=function(e,t){return I.prototype.equals.call(H,e.replace(/,([\r\n])/g,`$1`),t.replace(/,([\r\n])/g,`$1`))};function U(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(Ee.call(e)===`[object Array]`){for(t.push(e),o=Array(e.length),n.push(o),a=0;a<e.length;a+=1)o[a]=U(e[a],t,n,r,i);return t.pop(),n.pop(),o}if(e&&e.toJSON&&(e=e.toJSON()),V(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]=U(e[c],t,n,r,c);t.pop(),n.pop()}else o=e;return o}var W=new I;W.tokenize=function(e){return e.slice()},W.join=W.removeEmpty=function(e){return e};function G(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 h(n,i,t.slice(n,r))}function De(e){if(!e.steps.length)return;let t=new C(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 h&&r instanceof h?G(t.doc,r.apply(e.apply(t.doc).doc).doc):e.merge(r)}t.step(e)}return t}function K(e){let t=new C(e);return t.removeMark(0,e.nodeSize-2),t.doc}function Oe(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 q(e){return JSON.parse(JSON.stringify(e))}var ke=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 C(e),this.currentJSON={},this.finalJSON={},this.ops=[]}init(){return this.complexSteps?(this.currentJSON=K(this.fromDoc).toJSON(),this.finalJSON=K(this.toDoc).toJSON(),this.ops=(0,F.createPatch)(this.currentJSON,this.finalJSON),this.recreateChangeContentSteps(),this.recreateChangeMarkSteps()):(this.currentJSON=this.fromDoc.toJSON(),this.finalJSON=this.toDoc.toJSON(),this.ops=(0,F.createPatch)(this.currentJSON,this.finalJSON),this.recreateChangeContentSteps()),this.simplifyDiff&&(this.tr=De(this.tr)||this.tr),this.tr}recreateChangeContentSteps(){let e=[];for(;this.ops.length;){let t=this.ops.shift();e.push(t);let n,r=q(this.currentJSON),i=t.path.split(`/`);for(;n==null;){(0,F.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=K(this.tr.doc).toJSON(),this.ops=(0,F.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=G(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=q(this.currentJSON),a=q(this.currentJSON);(0,F.applyPatch)(i,[n]),(0,F.applyPatch)(a,[r]);let o=this.schema.nodeFromJSON(i),s=this.schema.nodeFromJSON(a),c=e.value,l=Oe(this.currentJSON,e.path),u=this.wordDiffs?Ce(l,c):Se(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 Ae(e,t,n={}){return new ke(e,t,n).init()}var je=new Set([`list`,`bulletList`,`orderedList`,`taskList`]);function J(e){let t=[];return e.forEach((e,n)=>{if(je.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 Me(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 Ne(e,t){let n=Me(J(e),J(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 Pe=400;function Y(e,t,n){return t.nodeFromJSON(e.parseWithFallback(n))}function Fe(e,t){let n=t.filter(e=>e.toB>e.fromB),r=[];return e.steps.forEach((t,i)=>{let a=t instanceof ee?`add`:t instanceof te?`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 Ie(e,t,n,r){if(e.length>2e5||t.length>2e5)return{ok:!1,reason:`ceiling`};let i,a;try{i=Y(r,n,e),a=Y(r,n,t)}catch{return{ok:!1,reason:`parse`}}let o=a,s=null;try{s=Ae(i,a,{complexSteps:!0,wordDiffs:!0,simplifyDiff:!0}),o=s.doc}catch{}let c=Ne(i,o),l=s?Fe(s,c):[];return c.length+l.length>Pe?{ok:!1,reason:`ceiling`}:{ok:!0,afterDoc:o,beforeDoc:i,changes:c,markChanges:l}}var Le=`.ok-diff-ins, .ok-diff-ins-block, [data-diff-deleted]`;function Re(e){return e.changes.length+2*e.markChanges.length}function X(e){let t=!1;return e.forEach(e=>{e.isBlock&&(t=!0)}),t}function ze(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 Z(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&&ze(t)){let e=document.createElement(`ul`);e.appendChild(i),r.appendChild(e)}else r.appendChild(i);return r}function Be(e,t,n,r,i){let a=ie.fromSchema(i),o=[];for(let e of r){let n=t.slice(e.fromA,e.toA),r=X(n.content);o.push(w.widget(e.fromB,()=>Z(a,n.content,r),{side:-1,ignoreSelection:!0,marks:[]})),o.push(w.inline(e.fromB,e.toB,{class:`ok-diff-ins`},{inclusiveEnd:!0}))}for(let e of n)if(e.toB>e.fromB&&o.push(w.node(e.fromB,e.toB,{class:`ok-diff-ins-block`})),e.toA>e.fromA){let n=t.slice(e.fromA,e.toA),r=X(n.content);o.push(w.widget(e.fromB,()=>Z(a,n.content,r),{side:-1,ignoreSelection:!0,marks:[]}))}return g.create(e,o)}var Ve=new Set([`slashCommand`,`blockDragHandle`,`blockMover`,`tableInsertControls`,`fileHandler`,`gfmAutolink`,`inlineLinkInputRule`,`keyboardNav`,`tiptapFindReplace`,`selectionState`,`sourceDirtyObserver`,`tabFocusTrap`]),Q=r.filter(e=>!Ve.has(e.name)).map(e=>e.name===`jsxComponent`?b:e),He=_(Q);function Ue(e,t){return Ie(e,t,He,m())}var We=re.create({name:`renderedDiffDecorations`,addOptions(){return{decorations:g.empty}},addProseMirrorPlugins(){let e=this.options.decorations;return[new S({key:new v(`renderedDiffDecorations`),props:{decorations:()=>e}})]}});function Ge(e){let t=(0,E.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=Be(n.afterDoc,n.beforeDoc,n.changes,n.markChanges,He);o=p,a=!1,r=Q,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 m=o(u,d),[h]=(0,P.useState)(Ke),g=(0,P.useRef)(null),_,v;t[20]===h?(_=t[21],v=t[22]):(_=()=>{let e=g.current;if(e)return e.appendChild(h),()=>{h.parentNode===e&&e.removeChild(h)}},v=[h],t[20]=h,t[21]=_,t[22]=v),(0,P.useLayoutEffect)(_,v);let y;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,D.jsx)(`div`,{className:`tiptap-editor`,children:(0,D.jsx)(`div`,{ref:g,style:{display:`contents`}})}),t[23]=y):y=t[23];let b;t[24]===m?b=t[25]:(b=(0,D.jsx)(f,{editor:m,className:`tiptap-editor-portal-content`}),t[24]=m,t[25]=b);let x;t[26]!==h||t[27]!==b?(x=(0,ye.createPortal)(b,h),t[26]=h,t[27]=b,t[28]=x):x=t[28];let S;return t[29]===x?S=t[30]:(S=(0,D.jsxs)(`div`,{className:`editor-doc-scroll min-h-0 flex-1`,"data-testid":`rendered-diff-view`,children:[y,x]}),t[29]=x,t[30]=S),S}function Ke(){let e=document.createElement(`div`);return e.style.display=`contents`,e}var qe=`[data-property-change]`;function Je(e){let t=0,n=!1;for(let r of e.split(`
3
- `)){let e=r.startsWith(`+`)&&!r.startsWith(`+++`)||r.startsWith(`-`)&&!r.startsWith(`---`);e&&!n&&(t+=1),n=e}return t}function Ye(e){let t=Array.from(e.querySelectorAll(`.diff-code-insert, .diff-code-delete`)),n=[],r=null;for(let e of t){let t=e.closest(`tr`);t&&((r===null||t.previousElementSibling!==r)&&n.push(e),r=t)}return n}function $(e){let t=0,n=0;for(let r of e.split(`
4
- `))r.startsWith(`+`)&&!r.startsWith(`+++`)?t++:r.startsWith(`-`)&&!r.startsWith(`---`)&&n++;return{additions:t,deletions:n}}function Xe(e,t){return`${e}\u0000${t}`}function Ze(e,t,n){let r=y(e).body,i=y(t).body;return r===i?``:ue(n,r,i,``,``,{context:Math.max(r.split(`
5
- `).length,i.split(`
6
- `).length)})}function Qe(e,t,n,r,a){let o=(0,E.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,P.useState)(u),p=(0,P.useRef)(l),m;o[1]===l?m=o[2]:(m=()=>{p.current=l},o[1]=l,o[2]=m),(0,P.useEffect)(m);let h,g;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=Xe(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=y(n).body,u=y(o).body,d=Ze(n,o,t),m=ne(n,o);if(i)return;let{additions:h,deletions:g}=$(d);f({status:`ready`,diff:d,additions:h,deletions:g,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}},g=[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]=g):(h=o[8],g=o[9]),(0,P.useEffect)(h,g),d}export{Je as a,Le as c,Ye as i,Re as l,Qe as n,Ge as o,qe as r,Ue as s,$ as t,de as u};
@@ -1 +0,0 @@
1
- import{t as e}from"./repair-skills-DjaHfS6E.mjs";export{e as repairSkills};
@@ -1 +0,0 @@
1
- import{i as e,o as t,s as n}from"./server-lock-_XWgcmNh.mjs";export{e as markServerLockDraining,t as releaseServerLock,n as updateServerLockPort};
@@ -1 +0,0 @@
1
- import"./src-B5PnzP5L.mjs";import"./resolve-project-root-CPytwxzP.mjs";import"./src-BvV3skiE.mjs";import"./acp-harness-probe-C4iHkeM8.mjs";import"./init-XMbWjso8.mjs";import{n as e}from"./loader-CVDhU5xC.mjs";import"./skill-teardown-D9VvS5qp.mjs";import"./preview-CdSoc1z2.mjs";import"./mcp-migrate-event-9DFnNzHa.mjs";export{e as loadConfig};
@@ -1,20 +0,0 @@
1
- import{o as e}from"./chunk-DTipWd-i.mjs";import{K as t,pt as n,q as r}from"./sleep-BZo73vVn.mjs";import{Bc as i,Do as a,Fc as o,Pc as s,lt as c,ut as l,zc as u}from"./src-B5PnzP5L.mjs";import{Ri as d,ct as f,di as p,kn as m,lt as h,ot as g,st as ee}from"./src-Cgbvt9_P.mjs";import{D as _,F as v,I as y,k as b}from"./fs-traced-Cu6kXy54.mjs";import{C as x,S,_ as C,f as w,r as T}from"./server-lock-_XWgcmNh.mjs";import{t as E}from"./yazl-DejPO9b3.mjs";import{h as D,m as te,x as ne}from"./resolve-project-root-CPytwxzP.mjs";import{c as O}from"./colors-DSyAT9Cz.mjs";import{a as k,i as re}from"./acp-harness-probe-C4iHkeM8.mjs";import{D as ie,E as A,S as ae,T as j,_ as oe,b as se,o as ce}from"./init-XMbWjso8.mjs";import{n as le}from"./constants-BRkzM7uA.mjs";import{t as M}from"./is-object-Bw0-z8qH.mjs";import"./loader-CVDhU5xC.mjs";import"./skill-teardown-D9VvS5qp.mjs";import"./preview-CdSoc1z2.mjs";import{execSync as ue,spawnSync as de}from"node:child_process";import{basename as N,dirname as P,join as F,relative as fe,resolve as I,sep as pe}from"node:path";import{cpSync as me,createWriteStream as he,existsSync as L,lstatSync as ge,mkdirSync as R,mkdtempSync as _e,readFileSync as z,readdirSync as B,readlinkSync as ve,rmSync as ye,statSync as be,writeFileSync as V}from"node:fs";import{arch as xe,freemem as Se,homedir as H,hostname as Ce,platform as we,release as Te,tmpdir as Ee,totalmem as De,type as Oe,uptime as ke}from"node:os";import"node:fs/promises";import{createHash as Ae}from"node:crypto";var je=n();const Me=new Set([`start`,`stop`,`status`,`clean`,`ui`,`mcp`,`preview`,`lint`,`deinit`,`auth`]);function Ne(e,t,n=m){if(e!==void 0&&!Me.has(e))return null;let r=n(t);return r===null||r.distance===0?null:r.rootPath}let Pe=null;function Fe(e){Pe=e}function Ie(){return Pe??process.cwd()}function U(){return F(H(),`.ok`,`bug-reports`)}function Le(e=new Date){let t=e.toISOString().replace(/[:.]/g,`-`),n=U(),r=`${t}-bugreport`,i=F(n,`${r}.zip`);for(let e=2;L(i);e+=1)i=F(n,`${r}-${e}.zip`);return i}function Re(e,t){let n=F(e,`.ok`,`config.yml`);if(L(n))try{let e=z(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 L(F(e,`.ok`))?Ae(`sha256`).update(I(e)).digest(`hex`).slice(0,12):null}function ze(){let e={timestamp:new Date().toISOString(),platform:we(),osType:Oe(),osRelease:Te(),hostname:`[redacted]`,uptime:ke(),freeMem:Se(),totalMem:De(),nodeVersion:process.version,bunVersion:process.versions.bun??null,v8Version:process.versions.v8??null,pid:process.pid};try{e.macosVersion=ue(`sw_vers -productVersion 2>/dev/null`,d({encoding:`utf8`})).trim()}catch{}try{let t=F(__dirname,`..`,`..`,`package.json`);L(t)&&(e.okVersion=JSON.parse(z(t,`utf8`)).version)}catch{}return e}const Be=[{prefix:`cli`,projectTagged:!0},{prefix:`desktop`,projectTagged:!1},{prefix:`mcp`,projectTagged:!1}];function Ve(e){let t=N(e);return Be.some(e=>e.projectTagged&&t.startsWith(`${e.prefix}.`))}function He(e,t){return Ke(e,t).files}const Ue=[`ShipIt_stderr.log`,`ShipIt_stdout.log`];function We(e,t=k){let n=F(e,`${t}.ShipIt`);return L(n)?Ue.map(e=>F(n,e)).filter(e=>L(e)):[]}function Ge(e){if(!L(e))return[];try{let t=new Map;for(let n of B(e).filter(e=>e.endsWith(`.yaml`)).sort()){let e=n.endsWith(`.sent.yaml`)?n.slice(0,-u.length):n.slice(0,-5),r=t.get(e);r===void 0?t.set(e,[n]):r.push(n)}return[...t.values()].slice(-25).flat().map(t=>F(e,t))}catch{return[]}}function Ke(e,t){if(!L(t))return{files:[],excludedByProjectSlug:0};let n=B(t).filter(e=>e.endsWith(`.log`)||/\.log\.\d+$/.test(e)).map(e=>F(t,e));if(!e)return{files:n,excludedByProjectSlug:0};let r=n.filter(Ve),i=[],a=r.filter(t=>{try{return z(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=>!Ve(e)||o.has(e)),excludedByProjectSlug:r.length-o.size}}function qe(e){let t=F(e,`.ok`,`local`);return L(t)?{files:[`server.lock`,`last-spawn-error.log`,c].map(e=>F(t,e)).filter(e=>L(e))}:{files:[]}}function Je(e){let t=F(e,`.ok`,`local`,`logs`);return L(t)?{files:[`server-current.jsonl`,`server-prev.jsonl`].map(e=>F(t,e)).filter(e=>L(e))}:{files:[]}}function Ye(e){if(e.redact){let{redacted:t,patterns:n,lineCount:r}=o(e.content);e.zipfile.addBuffer(Buffer.from(t,`utf8`),e.name),e.bundleFiles.push(e.name),n.length>0&&e.redactions.push({file:e.name,lineCount:r,patterns:n})}else e.zipfile.addBuffer(Buffer.from(e.content,`utf8`),e.name),e.bundleFiles.push(e.name)}function W(e){for(let t of e.files)try{Ye({zipfile:e.zipfile,name:`${e.prefix}/${N(t)}`,content:z(t,`utf8`),redact:e.redact,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 Xe(t){let{redact:n,outputPath:r,logger:a}=t,o=t.userLogsDir??F(H(),`.ok`,`logs`),c=t.projectDir?Re(t.projectDir,a):null;R(P(r),{recursive:!0}),a?.info({projectSlug:c},`gathering diagnostic data`);let l=ze();l.desktop=t.desktop??null,l.language=t.language??null;let{files:u,excludedByProjectSlug:d}=Ke(c,o),{files:f}=t.projectDir?qe(t.projectDir):{files:[]},{files:p}=t.projectDir?Je(t.projectDir):{files:[]},m=t.shipItLogFiles??[];a?.info({logFileCount:u.length,logFilesExcludedByProjectSlug:d,lockFileCount:f.length,localSinkFileCount:p.length,shipItLogFileCount:m.length},`files collected`);let h=[],g=[],{ZipFile:ee}=await import(`./yazl-BwMlCqRQ.mjs`).then(t=>e(t.default,1)),_=new ee;W({zipfile:_,files:[...u,...m],prefix:`logs`,redact:n,bundleFiles:g,redactions:h,logger:a}),W({zipfile:_,files:f,prefix:`lockdir`,redact:n,bundleFiles:g,redactions:h,logger:a}),W({zipfile:_,files:p,prefix:`local-logs`,redact:n,bundleFiles:g,redactions:h,logger:a}),W({zipfile:_,files:t.bugReportLedgerFiles??[],prefix:i,redact:n,bundleFiles:g,redactions:h,logger:a});for(let e of t.extraFiles??[])try{let t=z(e.sourcePath),n=`extra/${e.zipName??N(e.sourcePath)}`;_.addBuffer(t,n),g.push(n)}catch(t){a?.warn({sourcePath:e.sourcePath,err:t},`extra file unreadable; omitted from bundle`)}t.note&&Ye({zipfile:_,name:`note.txt`,content:t.note,redact:n,bundleFiles:g,redactions:h});let v=JSON.stringify(l,null,2);_.addBuffer(Buffer.from(v,`utf8`),`sysinfo.json`),g.push(`sysinfo.json`);let y={generatedAt:new Date().toISOString(),disciplineVersion:`1.0.0`,projectSlug:c,files:g,redactions:h,sysinfo:l};_.addBuffer(Buffer.from(JSON.stringify(y,null,2),`utf8`),`MANIFEST.json`);let b=h.reduce((e,t)=>e+t.lineCount,0),x=new Set(m.map(e=>`logs/${N(e)}`)),S=g.filter(e=>x.has(e)),C=new Set((t.bugReportLedgerFiles??[]).map(e=>`${i}/${N(e)}`)),w=g.filter(e=>C.has(e)),T=c?g.filter(e=>e.startsWith(`logs/`)&&!Ve(e)&&!x.has(e)):[],E=[`# Bug Report Bundle`,``,`Generated: ${y.generatedAt}`,`Project: ${c??`(unscoped)`}`,`Discipline version: ${y.disciplineVersion}`,``,`## Contents`,``,...g.map(e=>`- ${e}`),``,`## Privacy`,``,...T.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:`,...T.map(e=>`- ${e}`),``]:[],...S.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:`,...S.map(e=>`- ${e}`),``]:[],...w.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:`,...w.map(e=>`- ${e}`),``]:[],...n?[`This bundle was auto-redacted before packaging.`,`Patterns checked: ${s.join(`, `)}`,b>0?`${b} line(s) were scrubbed across ${h.length} file(s).`:`No redactions were needed.`,`See MANIFEST.json for the full redaction audit report.`,``,`This bundle is safe to attach to a GitHub issue.`]:[`Redaction was disabled for this bundle; file contents are unmodified.`]].join(`
2
- `);_.addBuffer(Buffer.from(E,`utf8`),`README.md`),_.end();let D=he(r);return _.outputStream.pipe(D),await new Promise((e,t)=>{D.on(`close`,e),D.on(`error`,t)}),a?.info({bundlePath:r,fileCount:g.length,redactionCount:b},`bundle written`),{zipPath:r,summary:{projectSlug:c,files:g,redactions:h,redactedLineCount:b,generatedAt:y.generatedAt}}}var Ze=e(E(),1),G=e(O(),1);function Qe(e){return y({absPath:b(`user`,e,e),sideline:!1,warn:()=>{}}).value.appearance?.language??`system`}function $e({home:e=H(),env:n=process.env}={}){let i=Qe(e),{override:o,preferenceList:s}=_(n),{locale:c,source:l}=a({override:o,storedPreference:i,supportedLocales:r,preferenceList:s,autoDetectableLocales:t});return{preference:i,locale:c,source:l,systemLanguages:s}}function et(e,t){return t.length===0||!e.includes(t)?e:e.split(t).join(`<CONTENT_DIR>`)}function tt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function K(e,t){if(typeof e==`string`)return et(e,t.contentDir);if(Array.isArray(e))return e.map(e=>K(e,t));if(!tt(e))return e;let n={};for(let[r,i]of Object.entries(e))n[r]=K(i,t);return n}function nt(e,t){let n=z(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=K(JSON.parse(n),t);a.push(JSON.stringify(e))}catch{a.push(n)}}}V(e,r?`${a.join(`
5
- `)}\n`:a.join(`
6
- `))}function rt(e,t){let n=z(e,`utf-8`);if(n.trim().length!==0)try{let r=K(JSON.parse(n),t),i=n.endsWith(`
7
- `)?`
8
- `:``;V(e,`${JSON.stringify(r,null,2)}${i}`)}catch{let r=et(n,t.contentDir);r!==n&&V(e,r)}}function it(e,t){let n=z(e,`utf-8`),r=et(n,t.contentDir);r!==n&&V(e,r)}function at(e){try{return B(e,{withFileTypes:!0}).filter(e=>e.isFile()).map(t=>F(e,t.name))}catch{return[]}}const ot=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)}function lt(e){let t={contentDir:e.contentDir};for(let n of[`telemetry`,`logs`,`process`])for(let r of at(F(e.stagingDir,n)))ct(r)?nt(r,t):r.endsWith(`.json`)?rt(r,t):it(r,t);for(let n of at(F(e.stagingDir,`state`))){let e=N(n);n.endsWith(`.jsonl`)?nt(n,t):ot.has(e)?rt(n,t):it(n,t)}}const ut=[`.ok`,`local`,`telemetry`],dt=[`.ok`,`local`,`logs`],ft=[`.ok`,`local`,`loss-capture`],pt=`spans-current.jsonl`,mt=`spans-prev.jsonl`,ht=`server-current.jsonl`,gt=`server-prev.jsonl`,_t=`loss-current.jsonl`,vt=`loss-prev.jsonl`;function yt(e){return F(e,...ut,pt)}function bt(e){return F(e,...ut,mt)}function xt(e){return F(e,...dt,ht)}function St(e){return F(e,...dt,gt)}function Ct(e){return F(e,...ft,_t)}function wt(e){return F(e,...ft,vt)}const Tt=1e3;async function Et(e){try{let t=await fetch(`http://127.0.0.1:${e}/api/metrics/agent-presence`,{signal:AbortSignal.timeout(Tt)});return t.ok?await t.text():null}catch{return null}}async function Dt(e){try{let t=await fetch(`http://127.0.0.1:${e}/api/metrics/agent-effects`,{signal:AbortSignal.timeout(Tt)});return t.ok?await t.text():null}catch{return null}}async function Ot(e){try{let t=await fetch(`http://127.0.0.1:${e}/api/metrics/watcher-recent`,{signal:AbortSignal.timeout(Tt)});return t.ok?await t.text():null}catch{return null}}function kt(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 At(e){let t=F(e,`.git`,`ok`);if(!L(t))return null;let n=de(`git`,[`-C`,t,`log`,`--oneline`,`-50`],d({encoding:`utf-8`,timeout:2e3}));return n.error||n.status!==0?null:n.stdout??``}function jt(e){let t=F(e,`.git`,`ok`);if(!L(t))return null;let n=de(`git`,[`-C`,t,`for-each-ref`,`--sort=-creatordate`,`--count=50`,`--format=%(refname)%09%(creatordate:iso-strict)%09%(contents:subject)`,`refs/checkpoints/`],d({encoding:`utf-8`,timeout:2e3}));return n.error||n.status!==0?null:n.stdout??``}function Mt(){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 Nt(){return{nodeVersion:process.version,platform:we(),arch:xe()}}function Pt(){return process.env.OTEL_SDK_DISABLED===`false`}function q(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Ft(e){if(!L(e))return{};let t;try{t=(0,je.parse)(z(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(!q(t))return{};let n=t.telemetry;if(!q(n))return{};let r=n.localSink;return q(r)?r:{}}function It(e){return typeof e==`boolean`?e:void 0}function Lt(e){return typeof e==`number`&&Number.isFinite(e)&&e>0?e:void 0}function J(e){if(q(e))return Lt(e.maxBytes)}function Rt(e){let t=Ft(b(`project`,e)),n=Ft(b(`project-local`,e));return{enabled:It(n.enabled)??It(t.enabled)??!0,spansMaxBytes:J(n.spans)??J(t.spans)??52428800,logsMaxBytes:J(n.logs)??J(t.logs)??26214400}}function zt(e){return Ae(`sha256`).update(e).digest(`hex`)}function Bt(e){let t=z(e),n=0;for(let e=0;e<t.length;e++)t[e]===10&&n++;return n}function Vt(e){let t=z(e,`utf-8`),n=`"doc.name"`,r=0,i=t.indexOf(n);for(;i!==-1;)r++,i=t.indexOf(n,i+10);return r}function Y(e,t){if(!L(e))return!1;try{return R(P(t),{recursive:!0}),me(e,t),!0}catch{return!1}}function Ht(e){let t=[],n=e=>{let r=B(e,{withFileTypes:!0});for(let i of r){let r=F(e,i.name);i.isDirectory()?n(r):i.isFile()&&t.push(r)}};return n(e),t.sort()}const Ut=new Set([`.jsonl`]);function Wt(e){let t=e.lastIndexOf(`.`);return t===-1?!1:Ut.has(e.slice(t))}const Gt=new Set([`.jsonl`,`.json`,`.txt`,`.log`,`.lock`,`.yaml`,`.yml`]);function Kt(e){if(st(e))return!0;let t=e.lastIndexOf(`.`);return t===-1?!1:Gt.has(e.slice(t))}function qt(e){let t=[];for(let n of Ht(e)){let r=Jt(e,n);if(!Kt(r))continue;let{redacted:i,patterns:a,lineCount:s}=o(z(n,`utf-8`));a.length!==0&&(V(n,i),t.push({file:r,lineCount:s,patterns:a}))}return{redactions:t,redactedLineCount:t.reduce((e,t)=>e+t.lineCount,0)}}function Jt(e,t){return fe(e,t).split(pe).join(`/`)}async function Yt(e){let t=I(e.contentDir),n=I(e.projectDir??e.contentDir),r=e.deps??{},a=r.fetchAgentPresence??Et,o=r.fetchAgentEffects??Dt,s=r.fetchWatcherRecent??Ot,u=r.readShadowHead??At,d=r.readCheckpointRefs??jt,f=r.now??(()=>new Date),p=r.okVersion??(()=>le),m=r.readDesktopEnv??Mt,h=r.readLanguage??$e,g=r.readRuntime??Nt,ee=r.isOtlpPushEnabled??Pt,_=_e(F(Ee(),`ok-bundle-`));try{R(F(_,`telemetry`),{recursive:!0}),R(F(_,`logs`),{recursive:!0}),R(F(_,`state`),{recursive:!0}),Y(yt(n),F(_,`telemetry`,pt)),Y(bt(n),F(_,`telemetry`,mt)),Y(xt(n),F(_,`logs`,ht)),Y(St(n),F(_,`logs`,gt));for(let t of e.userLogFiles??[])Y(t,F(_,`logs`,N(t)));for(let t of e.userStateFiles??[])Y(t,F(_,i,N(t)));let v=F(n,`.ok`,`local`),y=F(v,`server.lock`),b=`not-running`,x=`no server.lock`,S=null;if(L(y)){Y(y,F(_,`state`,`server.lock`));try{let e=z(y,`utf-8`),t=JSON.parse(e);typeof t.port==`number`?S=t.port:x=`lock present but no port`}catch{x=`lock present but unparseable`}}if(S!==null){let e=await a(S);e===null?x=`agent-presence endpoint at :${S} unreachable`:(V(F(_,`state`,`agent-presence.json`),e),b=`running`,x=``);let t=await o(S);t!==null&&V(F(_,`state`,`agent-effects.json`),t);let n=await s(S);if(n!==null){let e=kt(n);e!==null&&V(F(_,`state`,`watcher-recent.jsonl`),e)}}let C=u(t);C!==null&&V(F(_,`state`,`shadow-head.txt`),C);let w=d(t);w!==null&&V(F(_,`state`,`checkpoint-refs.txt`),w),Y(Ct(n),F(_,`state`,_t)),Y(wt(n),F(_,`state`,vt)),Y(F(v,`last-spawn-error.log`),F(_,`state`,`last-spawn-error.log`)),Y(F(v,l),F(_,`state`,l)),Y(F(v,c),F(_,`state`,c));let T=g(),E=m(),D=h(),te={ok:{version:p(),nodeVersion:T.nodeVersion,platform:T.platform,arch:T.arch},host:{desktop:E,language:D}};V(F(_,`state`,`runtime.json`),`${JSON.stringify(te,null,2)}\n`);let ne=b===`running`?`running
10
- `:`not-running (${x})\n`;if(V(F(_,`state`,`server-status.txt`),ne),e.processDir&&L(e.processDir)){let t=F(_,`process`);R(t,{recursive:!0}),me(e.processDir,t,{recursive:!0})}let O=e.redact===!0;O&&lt({stagingDir:_,contentDir:t}),e.note&&V(F(_,`note.txt`),e.note);let k=null;e.scrubSecrets===!0&&(k=qt(_));for(let t of e.extraFiles??[])Y(t.sourcePath,F(_,`extra`,t.zipName??N(t.sourcePath)))||r.logger?.warn({sourcePath:t.sourcePath},`extra file missing; omitted from bundle`);let re=Rt(n),ie=Ht(_),A=[],ae=0,j=0;for(let e of ie){let t=Jt(_,e),n=be(e).size,r=Wt(t)?Bt(e):0;A.push({path:t,bytes:n,lines:r}),ae+=n,t.startsWith(`telemetry/`)&&Wt(t)&&(j+=Vt(e))}let oe={applied:O};k!==null&&(oe.secretScrub=k);let se={schemaVersion:2,createdAt:f().toISOString(),ok:{version:p(),nodeVersion:T.nodeVersion,platform:T.platform,arch:T.arch},host:{desktop:E,language:D},contentDir:{pathSha256:zt(t),absolutePath:O?`<CONTENT_DIR>`:t},telemetry:{localSink:re,otlpPushEnabled:ee()},redaction:oe,serverStatus:b,files:A};V(F(_,`manifest.json`),`${JSON.stringify(se,null,2)}\n`);let ce=ie.some(e=>{try{return z(e,`utf-8`).includes(t)}catch{return!1}}),le={totalBytes:ae,fileCount:A.length,docNameCount:j,contentDirVisible:ce,redacted:O},M=!1;return{stagingDir:_,manifest:se,summary:le,cleanup:()=>{M||(M=!0,ye(_,{recursive:!0,force:!0}))}}}catch(e){throw ye(_,{recursive:!0,force:!0}),e}}async function Xt(e){let{collected:t,outputPath:n}=e,r=P(n);if(!L(r))throw Error(`ok diagnose bundle: parent directory does not exist: ${r}. Create it or pass --out with an existing parent.`);let i=new Ze.ZipFile,a=Ht(t.stagingDir);for(let e of a){let n=Jt(t.stagingDir,e);i.addFile(e,n)}i.end();let o=he(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 Zt(e,t){let n=F(e,`.ok`,`config.yml`);if(L(n))try{let t=(0,je.parse)(z(n,`utf-8`)),r=M(t)?t.content:void 0,i=M(r)?r.dir:void 0;if(typeof i==`string`&&i.length>0)return I(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 I(e)}async function Qt(e,t,n,r){let i=Re(t,e.logger),a=await Yt({contentDir:Zt(t,e.logger),projectDir:t,redact:e.redact,scrubSecrets:e.redact,note:e.note,extraFiles:e.extraFiles,userLogFiles:[...He(i,e.userLogsDir??F(H(),`.ok`,`logs`)),...We(e.cachesDir??F(H(),`Library`,`Caches`))],userStateFiles:Ge(e.bugReportsDir??U()),deps:{readDesktopEnv:n,readLanguage:r,logger:e.logger}});try{R(P(e.outputPath),{recursive:!0}),await Xt({collected:a,outputPath:e.outputPath});let t=a.manifest.redaction.secretScrub;return{zipPath:e.outputPath,summary:{level:`full`,systemWide:!1,projectSlug:i,files:a.manifest.files.map(e=>e.path),redactions:t?.redactions??[],redactedLineCount:t?.redactedLineCount??0,generatedAt:a.manifest.createdAt}}}finally{a.cleanup()}}async function $t(e){let{projectDir:t}=e,n=e.readDesktopEnv??Mt,r=e.readLanguage??$e;if(e.level===`full`&&t!==void 0)return Qt(e,t,n,r);let{zipPath:i,summary:a}=await Xe({projectDir:t,redact:e.redact,outputPath:e.outputPath,userLogsDir:e.userLogsDir,shipItLogFiles:We(e.cachesDir??F(H(),`Library`,`Caches`)),bugReportLedgerFiles:Ge(e.bugReportsDir??U()),logger:e.logger,note:e.note,extraFiles:e.extraFiles,desktop:n(),language:r()});return{zipPath:i,summary:{level:e.level,systemWide:t===void 0,projectSlug:a.projectSlug,files:a.files,redactions:a.redactions,redactedLineCount:a.redactedLineCount,generatedAt:a.generatedAt}}}function en(e,t){if(!L(e))return{status:`missing`,lockPath:e};let n;try{n=JSON.parse(z(e,`utf-8`))}catch{return{status:`corrupt`,lockPath:e}}if(!n||typeof n!=`object`||!x(n.pid))return{status:`corrupt`,lockPath:e};let r=n;if(!(t.isAlive??S)(r.pid))return{status:`dead-pid`,lockPath:e,lock:r};if(typeof r.machineId==`string`)return r.machineId===(t.machineId??C())?{status:`alive`,lockPath:e,lock:r}:{status:`foreign-host`,lockPath:e,lock:r};let i=t.host??Ce();return r.hostname===i?{status:`alive`,lockPath:e,lock:r}:{status:`foreign-host`,lockPath:e,lock:r}}function X(e,t,n={}){return en(w(e,t),n)}function Z(e,t={}){return en(F(e,`ui.lock`),t)}function tn(e){return e.replace(/:\d+$/,``)}function nn(e){let t=e.trim();if(!t)return null;{let e=/^https?:\/\/(?:[^/?#]*@)?([^@/?#]+)\/([\w.\-~%]+)\/([\w.\-~%]+?)(?:\.git)?\/?$/.exec(t);if(e)return{protocol:`https`,hostname:tn(e[1]),owner:e[2],name:e[3]}}{let e=/^ssh:\/\/(?:[^/?#]*@)?([^@/?#]+)\/([\w.\-~%]+)\/([\w.\-~%]+?)(?:\.git)?\/?$/.exec(t);if(e)return{protocol:`ssh`,hostname:tn(e[1]),owner:e[2],name:e[3]}}{let e=/^git:\/\/([^/?#]+)\/([\w.\-~%]+)\/([\w.\-~%]+?)(?:\.git)?\/?$/.exec(t);if(e)return{protocol:`git`,hostname:tn(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 rn=/^# >>> open-knowledge cli >>>\n[\s\S]*?^# <<< open-knowledge cli <<<\n?/m;function an(e){return F(e,`Library`,`Application Support`,`OpenKnowledge`,`path-install.json`)}const on={existsSync:e=>L(e),readFileSync:(e,t)=>z(e,t),lstatSync:e=>ge(e),readlinkSync:e=>ve(e)};function sn(e,t=on){let n=an(e);if(!t.existsSync(n))return null;try{let e=JSON.parse(t.readFileSync(n,`utf8`));return e?.version===1?e:null}catch{return null}}function cn(e){let t=e.replace(rn,``);return{text:t,changed:t!==e,emptyAfter:t.trim()===``}}function ln(e,t,n=on){try{return n.lstatSync(e).isSymbolicLink()?n.readlinkSync(e)===t:!1}catch{return!1}}function un(e){return te(e)||D(e)||ae(e)}const dn=10*1024*1024;function fn(e,t,n,r){let i=ce(e,t,n,r);if(i.kind===`absent`||i.kind===`no-entry`)return{kind:`not-present`};if(i.kind===`decline`)return{kind:`declined`,reason:i.reason};if(!un(i.entry))return{kind:`left-foreign`};let a;try{a=r??e.configPath(t,n)}catch{return{kind:`not-present`}}let o=e.serverName(t);if(e.format===`file`){ye(a,{force:!0});let e=re(t,n);return{kind:`removed`,trust:e.action,...e.error===void 0?{}:{trustError:e.error}}}return e.format===`toml`?hn(a,o):e.format===`yaml`?mn(a,e.topLevelKey,o):pn(a,e.topLevelKey,e.serverMapSubKey,o)}function pn(e,t,n,r){let i;try{i=z(e,`utf-8`)}catch{return{kind:`declined`,reason:`unparseable`}}if(Buffer.byteLength(i,`utf-8`)>dn)return{kind:`declined`,reason:`oversize`};let{text:a,changed:o}=ie(i,oe(t,n,r));return o?(v(e,a,{mode:j(e)}),{kind:`removed`}):{kind:`not-present`}}function mn(e,t,n){let r;try{r=z(e,`utf-8`)}catch{return{kind:`declined`,reason:`unparseable`}}if(Buffer.byteLength(r,`utf-8`)>dn)return{kind:`declined`,reason:`oversize`};let i=r.charCodeAt(0)===65279,a=i?r.slice(1):r,o=(0,je.parseDocument)(a);if(o.errors.length>0)return{kind:`declined`,reason:`unparseable`};let s=[t,n];if(!o.hasIn(s))return{kind:`not-present`};o.deleteIn(s);let c=o.toString(),l=A(a);a.trim()===``||a.endsWith(`
11
- `)?c.endsWith(`
12
- `)||(c=`${c}\n`):c=c.replace(/\n+$/,``),l&&(c=c.replace(/\r\n/g,`
13
- `).replace(/\n/g,`\r
14
- `));let u=`${i?``:``}${c}`;return u!==r&&v(e,u,{mode:j(e)}),{kind:`removed`}}function hn(e,t){let n=se();if(n.backend===`fallback`)return{kind:`declined`,reason:`no-native-writer`};let r;try{r=z(e,`utf-8`)}catch{return{kind:`declined`,reason:`unparseable`}}let i=r.charCodeAt(0)===65279,a=i?r.slice(1):r,o=A(a),s=a.trim()===``||a.endsWith(`
15
- `),c;try{c=n.removeEntry(a,t)}catch{return{kind:`declined`,reason:`unparseable`}}if(!c.existed)return{kind:`not-present`};let l=c.text;s?l.endsWith(`
16
- `)||(l=`${l}\n`):l=l.replace(/\n+$/,``),o&&(l=l.replace(/\r\n/g,`
17
- `).replace(/\n/g,`\r
18
- `));let u=`${i?``:``}${l}`;return u!==r&&v(e,u,{mode:j(e)}),{kind:`removed`}}function gn(e){return e==null?!1:e.includes(`--type=utility`)&&e.includes(`--utility-sub-type=node.mojom.NodeService`)}function _n(e,t=Date.now()){let n=new Date(e).getTime();if(Number.isNaN(n))return`—`;let r=t-n,i=Math.floor(r/1e3);if(i<60)return`${i}s`;let a=Math.floor(i/60);if(a<60)return`${a}m ago`;let o=Math.floor(a/60);return o<24?`${o}h ago`:`${Math.floor(o/24)}d ago`}function vn(e,t,n,r){if(t.status===`missing`||t.status===`corrupt`)return null;let i=t.lock,a=t.status===`alive`&&T(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:ee(n),command:n,isDesktop:gn(n)}}function Q(e){let t=e.server.status;return t===`alive`||t===`foreign-host`?e.isDesktop?`desktop`:t===`alive`?`running`:`foreign`:`stale`}const yn=new Set([`running`,`desktop`,`foreign`]);function bn(e){switch(e){case`running`:return G.default.green(e);case`desktop`:return G.default.blue(e);case`foreign`:return G.default.cyan(e);case`stale`:return G.default.yellow(e)}}function xn(e){return e==null?`—`:`${e.cpuPercent.toFixed(1)}% / ${e.memPercent.toFixed(1)}%`}function Sn(e){return`${xn(e.server.usage)} | ${xn(e.ui?.usage??null)}`}function Cn(e){return`${e.server.port===0?`(starting)`:String(e.server.port)} / ${e.ui==null?`—`:String(e.ui.port)}`}function wn(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,Cn(e),Sn(e),Q(e),String(e.server.pid),_n(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=bn(Q(e))+` `.repeat(Math.max(0,(i[t]??0)-r.length))}o.push(n)}return o.join(` `).trimEnd()}),s=G.default.dim(`To stop a server: ok stop <port|pid|directory|all>`);return[a,...o,``,s].join(`
19
- `)}async function Tn(e={}){let t=e.discover??g,n=e.inspect??X,r=e.log??(e=>console.log(e)),i=e.resolveCommand??f,a=e.resolveUsage??h,o=await t(),s=[];for(let e of o){let t=n(e,`server`),r=vn(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:Q(e)}));r(JSON.stringify(e,null,2));return}r(wn(e.all?s:s.filter(e=>yn.has(Q(e)))))}function En(){return new ne(`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 Tn({all:t.all===!0||e===`all`,json:t.json===!0})})}function Dn(e,t,n={}){let r=n.isAlive??S,i=[];for(let[n,a]of[[`server`,e],[`ui`,t]])(a.status===`alive`||a.status===`foreign-host`&&r(a.lock.pid))&&i.push({name:n,pid:a.lock.pid,port:a.lock.port});return{targets:i}}function On(e){let t=e.inspect??(t=>t===`ui`?Z(e.lockDir):X(e.lockDir,t)),n=e.kill??((e,t)=>process.kill(e,t)),r=e.log??(e=>console.log(e)),i=e.error??(e=>console.error(e)),a=Dn(t(`server`),t(`ui`),{isAlive:e.isAlive});if(a.targets.length===0)return r(`No running open-knowledge processes.`),{stopped:[],failed:[],hadTargets:!1};let o=[],s=[];for(let e of a.targets)try{n(e.pid,`SIGTERM`),o.push(e)}catch(t){s.push({target:e,error:t instanceof Error?t.message:String(t)})}return o.length>0&&r(`Stopped: ${o.map(e=>`${e.name} (pid=${e.pid}, port=${e.port})`).join(`, `)}`),s.length>0&&i(`Failed to stop: ${s.map(({target:e,error:t})=>`${e.name} (pid=${e.pid}): ${t}`).join(`; `)}`),{stopped:o,failed:s,hadTargets:!0}}function $(e,t){return e.status===`alive`?!0:e.status===`foreign-host`?t(e.lock.pid):!1}async function kn(e,t=S){let n=await g(),r=null;for(let i of n){let n=X(i,`server`),a=Z(i);if($(n,t)&&n.lock.port===e||$(a,t)&&a.lock.port===e)return i;r===null&&($(n,t)&&n.lock.pid===e||$(a,t)&&a.lock.pid===e)&&(r=i)}return r}function An(e){let t=On({lockDir:e});return t.failed.length>0&&(process.exitCode=1),t}function jn(e){return new ne(`stop`).description(`Stop open-knowledge server(s). With no argument: stops the server for the current directory. Pass a port number, a directory path, or "all" to target globally.`).argument(`[target...]`,`port number, directory path (spaces OK), or "all"`).action(async t=>{let n=t.length===0?void 0:t.join(` `);if(n===void 0){e();let t=On({lockDir:p(process.cwd()),log:()=>{}});if(t.hadTargets){if(t.stopped.length>0){let e=t.stopped.map(e=>`${e.name} (pid=${e.pid}, port=${e.port})`).join(`, `);console.log(`Stopped: ${e}`)}t.failed.length>0&&(process.exitCode=1)}else await Tn({});return}if(n===`all`){let e=await g();if(e.length===0){console.log(`No running open-knowledge servers found.`);return}let t=0;for(let n of e){let e=X(n,`server`),r=Z(n);!$(e,S)&&!$(r,S)||(An(n),t++)}t===0&&console.log(`No running open-knowledge servers found.`);return}if(/^\d+$/.test(n)){let e=Number.parseInt(n,10),t=await kn(e);if(t===null){console.log(`No running open-knowledge server found with port or PID ${e}.`);return}An(t);return}An(p(I(Ie(),n)))})}export{U as _,rn as a,Ne as b,sn as c,Z as d,X as f,Le as g,Xt as h,fn as i,cn as l,Yt as m,jn as n,ln as o,$t as p,En as r,an as s,On as t,nn as u,Ie as v,Fe as y};
20
- //# sourceMappingURL=src-BvV3skiE.mjs.map