@bryanhu/codexly 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. package/CHANGELOG.md +14 -1
  2. package/dist/{chunk-AWQWQU2B.js → chunk-6HXWAD7A.js} +78 -3
  3. package/dist/{chunk-MH54VCZJ.js → chunk-DR6HEQ7V.js} +52 -1
  4. package/dist/{chunk-TEPSAXZZ.js → chunk-VZLNYRY3.js} +1 -1
  5. package/dist/{chunk-2P25XCI6.js → chunk-Y7HG5THF.js} +126 -9
  6. package/dist/cli.js +5 -5
  7. package/dist/client/index.js +25 -3
  8. package/dist/protocol/index.js +1 -1
  9. package/dist/providers/codex/index.js +2 -2
  10. package/dist/server/index.js +4 -4
  11. package/dist/web/.vite/manifest.json +108 -108
  12. package/dist/web/.vite/manifest.json.br +0 -0
  13. package/dist/web/.vite/manifest.json.gz +0 -0
  14. package/dist/web/assets/button-B0Zy5xUw.js +1 -0
  15. package/dist/web/assets/button-B0Zy5xUw.js.br +0 -0
  16. package/dist/web/assets/button-B0Zy5xUw.js.gz +0 -0
  17. package/dist/web/assets/{button-group-CvflSgg8.js → button-group-Czp67RFV.js} +1 -1
  18. package/dist/web/assets/button-group-Czp67RFV.js.br +0 -0
  19. package/dist/web/assets/button-group-Czp67RFV.js.gz +0 -0
  20. package/dist/web/assets/{checkbox-CCES4UbV.js → checkbox-J-dVFT8h.js} +1 -1
  21. package/dist/web/assets/checkbox-J-dVFT8h.js.br +0 -0
  22. package/dist/web/assets/checkbox-J-dVFT8h.js.gz +0 -0
  23. package/dist/web/assets/{chunk-BO2N2NFS-BWAdG1_E.js → chunk-BO2N2NFS-Cv0xdEIU.js} +5 -5
  24. package/dist/web/assets/chunk-BO2N2NFS-Cv0xdEIU.js.br +0 -0
  25. package/dist/web/assets/chunk-BO2N2NFS-Cv0xdEIU.js.gz +0 -0
  26. package/dist/web/assets/{code-highlighter-CHF26Qu6.js → code-highlighter-XA2cEb7n.js} +1 -1
  27. package/dist/web/assets/code-highlighter-XA2cEb7n.js.br +0 -0
  28. package/dist/web/assets/code-highlighter-XA2cEb7n.js.gz +0 -0
  29. package/dist/web/assets/{code-languages-0g9buMoI.js → code-languages-B1bG8xP9.js} +1 -1
  30. package/dist/web/assets/code-languages-B1bG8xP9.js.br +0 -0
  31. package/dist/web/assets/code-languages-B1bG8xP9.js.gz +0 -0
  32. package/dist/web/assets/es2015-D1QRD4rq.js +41 -0
  33. package/dist/web/assets/es2015-D1QRD4rq.js.br +0 -0
  34. package/dist/web/assets/es2015-D1QRD4rq.js.gz +0 -0
  35. package/dist/web/assets/{file-CdvUKvsI.js → file-fDjkn3KE.js} +1 -1
  36. package/dist/web/assets/file-fDjkn3KE.js.br +2 -0
  37. package/dist/web/assets/file-fDjkn3KE.js.gz +0 -0
  38. package/dist/web/assets/{file-review-dialog-D2A8VOae.js → file-review-dialog-a4LVk4QA.js} +2 -2
  39. package/dist/web/assets/file-review-dialog-a4LVk4QA.js.br +0 -0
  40. package/dist/web/assets/file-review-dialog-a4LVk4QA.js.gz +0 -0
  41. package/dist/web/assets/{file-tree-AZsgAlZn.js → file-tree-Dh8mZi4H.js} +1 -1
  42. package/dist/web/assets/file-tree-Dh8mZi4H.js.br +0 -0
  43. package/dist/web/assets/file-tree-Dh8mZi4H.js.gz +0 -0
  44. package/dist/web/assets/{git-commit-horizontal-C0Tc8kLo.js → git-commit-horizontal-DqCudnTd.js} +1 -1
  45. package/dist/web/assets/git-commit-horizontal-DqCudnTd.js.br +0 -0
  46. package/dist/web/assets/git-commit-horizontal-DqCudnTd.js.gz +0 -0
  47. package/dist/web/assets/{git-history-panel-CeJ0MXUi.js → git-history-panel-C0BqsVJw.js} +2 -2
  48. package/dist/web/assets/git-history-panel-C0BqsVJw.js.br +0 -0
  49. package/dist/web/assets/git-history-panel-C0BqsVJw.js.gz +0 -0
  50. package/dist/web/assets/{global-settings-dialog-BdOP1wS8.js → global-settings-dialog-DAk0qzab.js} +1 -1
  51. package/dist/web/assets/global-settings-dialog-DAk0qzab.js.br +0 -0
  52. package/dist/web/assets/global-settings-dialog-DAk0qzab.js.gz +0 -0
  53. package/dist/web/assets/{highlighted-body-OFNGDK62-CBB2e5gz.js → highlighted-body-OFNGDK62-3Xd1uGCw.js} +1 -1
  54. package/dist/web/assets/highlighted-body-OFNGDK62-3Xd1uGCw.js.br +0 -0
  55. package/dist/web/assets/highlighted-body-OFNGDK62-3Xd1uGCw.js.gz +0 -0
  56. package/dist/web/assets/{index-CoRYl0EO.js → index-C9MtcGVc.js} +3 -3
  57. package/dist/web/assets/index-C9MtcGVc.js.br +0 -0
  58. package/dist/web/assets/index-C9MtcGVc.js.gz +0 -0
  59. package/dist/web/assets/index-DAs_avwK.css +2 -0
  60. package/dist/web/assets/index-DAs_avwK.css.br +0 -0
  61. package/dist/web/assets/index-DAs_avwK.css.gz +0 -0
  62. package/dist/web/assets/{lazy-message-response-Be__rdOq.js → lazy-message-response-BDqsH4Ww.js} +2 -2
  63. package/dist/web/assets/lazy-message-response-BDqsH4Ww.js.br +0 -0
  64. package/dist/web/assets/lazy-message-response-BDqsH4Ww.js.gz +0 -0
  65. package/dist/web/assets/mermaid-GHXKKRXX-Cp6mRHuL.js +1 -0
  66. package/dist/web/assets/mermaid-GHXKKRXX-Cp6mRHuL.js.br +0 -0
  67. package/dist/web/assets/mermaid-GHXKKRXX-Cp6mRHuL.js.gz +0 -0
  68. package/dist/web/assets/message-response-DyFE9GSy.js +7 -0
  69. package/dist/web/assets/message-response-DyFE9GSy.js.br +0 -0
  70. package/dist/web/assets/message-response-DyFE9GSy.js.gz +0 -0
  71. package/dist/web/assets/{patch-diff-viewer-BlbG4Z8Q.js → patch-diff-viewer-DHfvCO4S.js} +2 -2
  72. package/dist/web/assets/patch-diff-viewer-DHfvCO4S.js.br +0 -0
  73. package/dist/web/assets/patch-diff-viewer-DHfvCO4S.js.gz +0 -0
  74. package/dist/web/assets/{prompt-input-controls-DRwTXxuF.js → prompt-input-controls-CLj9lxlf.js} +1 -1
  75. package/dist/web/assets/prompt-input-controls-CLj9lxlf.js.br +0 -0
  76. package/dist/web/assets/prompt-input-controls-CLj9lxlf.js.gz +0 -0
  77. package/dist/web/assets/{provider-connection-queries-bzb4TYim.js → provider-connection-queries-C2Fn0xx2.js} +1 -1
  78. package/dist/web/assets/provider-connection-queries-C2Fn0xx2.js.br +0 -0
  79. package/dist/web/assets/provider-connection-queries-C2Fn0xx2.js.gz +0 -0
  80. package/dist/web/assets/{shiki-bundle-BndEhlUP.js → shiki-bundle-CNYWcrCX.js} +1 -1
  81. package/dist/web/assets/shiki-bundle-CNYWcrCX.js.br +0 -0
  82. package/dist/web/assets/shiki-bundle-CNYWcrCX.js.gz +0 -0
  83. package/dist/web/assets/{workbench-inspector-changes-8ZkoC9AD.js → workbench-inspector-changes-fibkZGwp.js} +1 -1
  84. package/dist/web/assets/workbench-inspector-changes-fibkZGwp.js.br +0 -0
  85. package/dist/web/assets/workbench-inspector-changes-fibkZGwp.js.gz +0 -0
  86. package/dist/web/assets/workbench-shell-eo1pFJFk.js +13 -0
  87. package/dist/web/assets/workbench-shell-eo1pFJFk.js.br +0 -0
  88. package/dist/web/assets/workbench-shell-eo1pFJFk.js.gz +0 -0
  89. package/dist/web/index.html +8 -8
  90. package/dist/web/index.html.br +0 -0
  91. package/dist/web/index.html.gz +0 -0
  92. package/package.json +1 -1
  93. package/dist/web/assets/button-DPWbWvQN.js +0 -1
  94. package/dist/web/assets/button-DPWbWvQN.js.br +0 -0
  95. package/dist/web/assets/button-DPWbWvQN.js.gz +0 -0
  96. package/dist/web/assets/button-group-CvflSgg8.js.br +0 -0
  97. package/dist/web/assets/button-group-CvflSgg8.js.gz +0 -0
  98. package/dist/web/assets/checkbox-CCES4UbV.js.br +0 -0
  99. package/dist/web/assets/checkbox-CCES4UbV.js.gz +0 -0
  100. package/dist/web/assets/chunk-BO2N2NFS-BWAdG1_E.js.br +0 -0
  101. package/dist/web/assets/chunk-BO2N2NFS-BWAdG1_E.js.gz +0 -0
  102. package/dist/web/assets/code-highlighter-CHF26Qu6.js.br +0 -0
  103. package/dist/web/assets/code-highlighter-CHF26Qu6.js.gz +0 -0
  104. package/dist/web/assets/code-languages-0g9buMoI.js.br +0 -0
  105. package/dist/web/assets/code-languages-0g9buMoI.js.gz +0 -0
  106. package/dist/web/assets/es2015-DsWAjMth.js +0 -41
  107. package/dist/web/assets/es2015-DsWAjMth.js.br +0 -0
  108. package/dist/web/assets/es2015-DsWAjMth.js.gz +0 -0
  109. package/dist/web/assets/file-CdvUKvsI.js.br +0 -0
  110. package/dist/web/assets/file-CdvUKvsI.js.gz +0 -0
  111. package/dist/web/assets/file-review-dialog-D2A8VOae.js.br +0 -0
  112. package/dist/web/assets/file-review-dialog-D2A8VOae.js.gz +0 -0
  113. package/dist/web/assets/file-tree-AZsgAlZn.js.br +0 -0
  114. package/dist/web/assets/file-tree-AZsgAlZn.js.gz +0 -0
  115. package/dist/web/assets/git-commit-horizontal-C0Tc8kLo.js.br +0 -0
  116. package/dist/web/assets/git-commit-horizontal-C0Tc8kLo.js.gz +0 -0
  117. package/dist/web/assets/git-history-panel-CeJ0MXUi.js.br +0 -0
  118. package/dist/web/assets/git-history-panel-CeJ0MXUi.js.gz +0 -0
  119. package/dist/web/assets/global-settings-dialog-BdOP1wS8.js.br +0 -0
  120. package/dist/web/assets/global-settings-dialog-BdOP1wS8.js.gz +0 -0
  121. package/dist/web/assets/highlighted-body-OFNGDK62-CBB2e5gz.js.br +0 -0
  122. package/dist/web/assets/highlighted-body-OFNGDK62-CBB2e5gz.js.gz +0 -0
  123. package/dist/web/assets/index-BoX8xH2D.css +0 -2
  124. package/dist/web/assets/index-BoX8xH2D.css.br +0 -0
  125. package/dist/web/assets/index-BoX8xH2D.css.gz +0 -0
  126. package/dist/web/assets/index-CoRYl0EO.js.br +0 -0
  127. package/dist/web/assets/index-CoRYl0EO.js.gz +0 -0
  128. package/dist/web/assets/lazy-message-response-Be__rdOq.js.br +0 -0
  129. package/dist/web/assets/lazy-message-response-Be__rdOq.js.gz +0 -0
  130. package/dist/web/assets/mermaid-GHXKKRXX-C4HZuN1f.js +0 -1
  131. package/dist/web/assets/mermaid-GHXKKRXX-C4HZuN1f.js.br +0 -0
  132. package/dist/web/assets/mermaid-GHXKKRXX-C4HZuN1f.js.gz +0 -0
  133. package/dist/web/assets/message-response-UwCHtKG1.js +0 -7
  134. package/dist/web/assets/message-response-UwCHtKG1.js.br +0 -0
  135. package/dist/web/assets/message-response-UwCHtKG1.js.gz +0 -0
  136. package/dist/web/assets/patch-diff-viewer-BlbG4Z8Q.js.br +0 -0
  137. package/dist/web/assets/patch-diff-viewer-BlbG4Z8Q.js.gz +0 -0
  138. package/dist/web/assets/prompt-input-controls-DRwTXxuF.js.br +0 -0
  139. package/dist/web/assets/prompt-input-controls-DRwTXxuF.js.gz +0 -0
  140. package/dist/web/assets/provider-connection-queries-bzb4TYim.js.br +0 -0
  141. package/dist/web/assets/provider-connection-queries-bzb4TYim.js.gz +0 -0
  142. package/dist/web/assets/shiki-bundle-BndEhlUP.js.br +0 -0
  143. package/dist/web/assets/shiki-bundle-BndEhlUP.js.gz +0 -0
  144. package/dist/web/assets/workbench-inspector-changes-8ZkoC9AD.js.br +0 -0
  145. package/dist/web/assets/workbench-inspector-changes-8ZkoC9AD.js.gz +0 -0
  146. package/dist/web/assets/workbench-shell-BLSbA9u6.js +0 -13
  147. package/dist/web/assets/workbench-shell-BLSbA9u6.js.br +0 -0
  148. package/dist/web/assets/workbench-shell-BLSbA9u6.js.gz +0 -0
@@ -1 +1 @@
1
- import{t as e}from"./react-runtime-CVaUQXZF.js";import{n as t,o as n,s as r}from"./button-DPWbWvQN.js";import{J as i,M as a,Y as o}from"./es2015-DsWAjMth.js";var s=r(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),c=r(`refresh-cw`,[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]),l=r(`settings`,[[`path`,{d:`M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915`,key:`1i5ecw`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),u=r(`trash-2`,[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]]),d=e(),f=n(`min-w-0 text-foreground outline-none transition-[border-color,box-shadow] placeholder:text-muted-foreground focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50`,{defaultVariants:{variant:`default`},variants:{variant:{compact:`h-8 w-full rounded-control bg-raised px-2.5 text-label shadow-sm focus-visible:shadow-focus`,default:`h-9 w-full rounded-control bg-control px-3 text-body focus-visible:shadow-focus`,embedded:`flex-1 bg-transparent`,outline:`h-11 w-full rounded-control border border-separator-strong bg-panel px-3 text-body-small focus-visible:border-brand focus-visible:shadow-focus sm:h-9`}}});function p({className:e,type:n,variant:r=`default`,...i}){return(0,d.jsx)(`input`,{className:t(f({className:e,variant:r})),"data-slot":`input`,"data-variant":r,type:n,...i})}var m=[`provider-connection`];function h(e){return e?.state===`pending`&&1e3}function g(e=a){return o({queryFn:({signal:t})=>e.getProviderConnection({signal:t}),queryKey:m,refetchInterval:e=>h(e.state.data)})}async function _(e){await Promise.all([e.invalidateQueries({exact:!0,queryKey:m}),e.invalidateQueries({exact:!0,queryKey:[`models`]}),e.invalidateQueries({exact:!0,queryKey:[`settings`]}),e.invalidateQueries({predicate:e=>e.queryKey[0]===`projects`&&e.queryKey[2]===`defaults`})])}function v(e,t=a){return i({mutationFn:()=>t.startOfficialProviderLogin(),mutationKey:[`provider-connection`,`official-login`],onSuccess:()=>_(e),scope:{id:`provider-connection`}})}function y(e,t=a){return i({mutationFn:e=>t.cancelProviderLogin(e),mutationKey:[`provider-connection`,`official-login`,`cancel`],onSuccess:()=>_(e),scope:{id:`provider-connection`}})}function b(e,t=a){return i({mutationFn:()=>t.logoutProvider(),mutationKey:[`provider-connection`,`logout`],onSuccess:()=>_(e),scope:{id:`provider-connection`}})}async function x(e,t,n=a){let r=await n.configureCustomProvider(e);return await _(t),r}export{v as a,l as c,g as i,c as l,x as n,p as o,b as r,u as s,y as t,s as u};
1
+ import{t as e}from"./react-runtime-CVaUQXZF.js";import{n as t,o as n,s as r}from"./button-B0Zy5xUw.js";import{J as i,M as a,Y as o}from"./es2015-D1QRD4rq.js";var s=r(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),c=r(`refresh-cw`,[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]),l=r(`settings`,[[`path`,{d:`M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915`,key:`1i5ecw`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),u=r(`trash-2`,[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]]),d=e(),f=n(`min-w-0 text-foreground outline-none transition-[border-color,box-shadow] placeholder:text-muted-foreground focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50`,{defaultVariants:{variant:`default`},variants:{variant:{compact:`h-8 w-full rounded-control bg-raised px-2.5 text-label shadow-sm focus-visible:shadow-focus`,default:`h-9 w-full rounded-control bg-control px-3 text-body focus-visible:shadow-focus`,embedded:`flex-1 bg-transparent`,outline:`h-11 w-full rounded-control border border-separator-strong bg-panel px-3 text-body-small focus-visible:border-brand focus-visible:shadow-focus sm:h-9`}}});function p({className:e,type:n,variant:r=`default`,...i}){return(0,d.jsx)(`input`,{className:t(f({className:e,variant:r})),"data-slot":`input`,"data-variant":r,type:n,...i})}var m=[`provider-connection`];function h(e){return e?.state===`pending`&&1e3}function g(e=a){return o({queryFn:({signal:t})=>e.getProviderConnection({signal:t}),queryKey:m,refetchInterval:e=>h(e.state.data)})}async function _(e){await Promise.all([e.invalidateQueries({exact:!0,queryKey:m}),e.invalidateQueries({exact:!0,queryKey:[`models`]}),e.invalidateQueries({exact:!0,queryKey:[`settings`]}),e.invalidateQueries({predicate:e=>e.queryKey[0]===`projects`&&e.queryKey[2]===`defaults`})])}function v(e,t=a){return i({mutationFn:()=>t.startOfficialProviderLogin(),mutationKey:[`provider-connection`,`official-login`],onSuccess:()=>_(e),scope:{id:`provider-connection`}})}function y(e,t=a){return i({mutationFn:e=>t.cancelProviderLogin(e),mutationKey:[`provider-connection`,`official-login`,`cancel`],onSuccess:()=>_(e),scope:{id:`provider-connection`}})}function b(e,t=a){return i({mutationFn:()=>t.logoutProvider(),mutationKey:[`provider-connection`,`logout`],onSuccess:()=>_(e),scope:{id:`provider-connection`}})}async function x(e,t,n=a){let r=await n.configureCustomProvider(e);return await _(t),r}export{v as a,l as c,g as i,c as l,x as n,p as o,b as r,u as s,y as t,s as u};
@@ -1 +1 @@
1
- import{n as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,i as n,n as r,o as i,r as a,t as o}from"./engine-compile-DQ0HPfe0.js";import{i as s}from"./code-languages-0g9buMoI.js";var c=e({bundledLanguages:()=>l,codeToHtml:()=>r,createCssVariablesTheme:()=>a,createHighlighter:()=>u,createJavaScriptRegexEngine:()=>o,createOnigurumaEngine:()=>d,getTokenStyleObject:()=>t,stringifyTokenStyle:()=>i}),l=s;async function u(e){let t=[];for(let n of e.langs??[]){if(n===`ansi`||n===`text`)continue;if(typeof n!=`string`){t.push(n);continue}let e=l[n];t.push((await e()).default)}return n({...e,engine:e.engine??o({forgiving:!0}),langs:t})}function d(){return o({forgiving:!0})}export{c as i,u as n,d as r,l as t};
1
+ import{n as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,i as n,n as r,o as i,r as a,t as o}from"./engine-compile-DQ0HPfe0.js";import{i as s}from"./code-languages-B1bG8xP9.js";var c=e({bundledLanguages:()=>l,codeToHtml:()=>r,createCssVariablesTheme:()=>a,createHighlighter:()=>u,createJavaScriptRegexEngine:()=>o,createOnigurumaEngine:()=>d,getTokenStyleObject:()=>t,stringifyTokenStyle:()=>i}),l=s;async function u(e){let t=[];for(let n of e.langs??[]){if(n===`ansi`||n===`text`)continue;if(typeof n!=`string`){t.push(n);continue}let e=l[n];t.push((await e()).default)}return n({...e,engine:e.engine??o({forgiving:!0}),langs:t})}function d(){return o({forgiving:!0})}export{c as i,u as n,d as r,l as t};
@@ -1 +1 @@
1
- import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{i as t,t as n}from"./react-runtime-CVaUQXZF.js";import{n as r,o as i,s as a,t as o,u as s,y as c}from"./button-DPWbWvQN.js";import{D as l,O as u,X as d,a as f,c as p,o as m,st as h}from"./es2015-DsWAjMth.js";import{l as g,o as _,r as v,s as y,t as b,u as x}from"./checkbox-CCES4UbV.js";import{C as S,S as C,a as w,i as T,j as E,o as D,r as O,t as k}from"./file-tree-AZsgAlZn.js";import{n as A,r as j,t as M}from"./button-group-CvflSgg8.js";import{r as N,x as P}from"./prompt-input-controls-DRwTXxuF.js";import{D as ee,E as te,O as F,T as I,d as ne,f as re,k as L,p as R,u as ie,w as ae,x as oe}from"./index-CoRYl0EO.js";var z=a(`file-minus-corner`,[[`path`,{d:`M20 14V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12`,key:`l9p8hp`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M14 18h6`,key:`1m8k6r`}]]),se=a(`upload`,[[`path`,{d:`M12 3v12`,key:`1x0j5s`}],[`path`,{d:`m17 8-5-5-5 5`,key:`7q97r8`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}]]),B=e(t(),1),V=n(),H=i(`min-w-0 text-foreground outline-none transition-[border-color,box-shadow] placeholder:text-muted-foreground focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50`,{defaultVariants:{variant:`default`},variants:{variant:{default:`min-h-20 w-full resize-y rounded-control bg-control px-3 py-2 text-body focus-visible:shadow-focus`,embedded:`flex-1 resize-none bg-transparent`}}});function U({className:e,variant:t=`default`,...n}){return(0,V.jsx)(`textarea`,{className:r(H({className:e,variant:t})),"data-slot":`textarea`,"data-variant":t,...n})}function W({className:e,...t}){return(0,V.jsx)(`div`,{className:r(`group/input-group flex w-full min-w-0 items-center`,e),"data-slot":`input-group`,role:`group`,...t})}function G({align:e=`inline-start`,className:t,...n}){return(0,V.jsx)(`div`,{className:r(`flex shrink-0 items-center`,t),"data-align":e,"data-slot":`input-group-addon`,role:`group`,...n})}function ce({className:e,...t}){return(0,V.jsx)(U,{className:r(`min-w-0 flex-1`,e),"data-slot":`input-group-control`,variant:`embedded`,...t})}function K(e){return[...e].sort((e,t)=>e.kind===t.kind?e.name.localeCompare(t.name,`en`):e.kind===`file`?-1:1)}function q(e){let t=[e.name],n=e;for(;n.children.size===1;){let e=n.children.values().next().value;if(e?.kind!==`folder`)break;t.push(e.name),n=e}return{children:K([...n.children.values()].map(e=>e.kind===`folder`?q(e):e)),kind:`folder`,name:t.join(`/`),path:n.path}}function le(e){let t={children:new Map,kind:`folder`,name:``,path:``};for(let n of e){let e=n.path.split(`/`),r=e.pop();if(r===void 0)continue;let i=t;for(let t of e){let e=i.path===``?t:`${i.path}/${t}`,n=i.children.get(t);if(n?.kind===`folder`){i=n;continue}let r={children:new Map,kind:`folder`,name:t,path:e};i.children.set(t,r),i=r}i.children.set(r,{kind:`file`,name:r,path:n.path,status:n.kind})}return K([...t.children.values()].map(e=>e.kind===`folder`?q(e):e))}function J(e,t){for(let n of e)n.kind===`folder`&&(t.add(n.path),J(n.children,t))}function Y(e){return e===`create`?`text-diff-added`:e===`delete`?`text-danger`:`text-warning`}function X(e){let t=r(`size-3.5`,Y(e));return e===`create`?(0,V.jsx)(P,{"aria-hidden":`true`,className:t}):e===`delete`?(0,V.jsx)(z,{"aria-hidden":`true`,className:t}):(0,V.jsx)(j,{"aria-hidden":`true`,className:t})}function ue(e){return e===`create`?`A`:e===`delete`?`D`:`M`}function Z({changesByPath:e,disabled:t,label:n,nodes:r,onOpenFileDiff:i,onTogglePath:a,selectedPaths:o}){return r.map(r=>{if(r.kind===`folder`)return(0,V.jsx)(T,{name:r.name,path:r.path,children:(0,V.jsx)(Z,{changesByPath:e,disabled:t,label:n,nodes:r.children,onOpenFileDiff:i,onTogglePath:a,selectedPaths:o})},r.path);let s=o.has(r.path),c=e.get(r.path);return(0,V.jsxs)(O,{"aria-label":r.path,className:Y(r.status),icon:X(r.status),name:r.name,onClick:()=>{c!==void 0&&i(c)},path:r.path,trailing:(0,V.jsx)(`span`,{className:`ml-auto w-3 text-center text-meta font-semibold text-muted-foreground`,children:ue(r.status)}),children:[(0,V.jsx)(`span`,{"aria-hidden":`true`,className:`size-5 shrink-0`}),(0,V.jsx)(b,{"aria-label":`${n}: ${r.path}`,checked:s,disabled:t,onCheckedChange:()=>{a(r.path)},onClick:e=>{e.stopPropagation()}}),(0,V.jsx)(w,{children:X(r.status)}),(0,V.jsx)(D,{title:r.path,children:r.name})]},r.path)})}function Q({changes:e,disabled:t=!1,label:n,onOpenFileDiff:r,onSelectedPathsChange:i,selectedPaths:a}){let o=(0,B.useMemo)(()=>le(e),[e]),s=(0,B.useMemo)(()=>new Map(e.map(e=>[e.path,e])),[e]),c=(0,B.useMemo)(()=>[...new Set(e.map(e=>e.path))],[e]),l=(0,B.useMemo)(()=>{let e=new Set;return J(o,e),e},[o]);if(c.length===0)return null;let u=c.filter(e=>a.has(e)).length,d=u===0?!1:u===c.length||`indeterminate`;return(0,V.jsxs)(`section`,{"aria-label":n,className:`py-0.5`,children:[(0,V.jsxs)(`div`,{className:`flex min-h-7 items-center gap-1.5 px-3`,children:[(0,V.jsx)(b,{"aria-label":n,checked:d,disabled:t||c.length===0,onCheckedChange:e=>{let t=new Set(a);for(let n of c)e===!0?t.add(n):t.delete(n);i(t)}}),(0,V.jsx)(`h3`,{className:`text-label font-semibold text-foreground`,children:n}),(0,V.jsx)(`span`,{className:`ml-auto text-caption text-muted-foreground`,children:c.length})]}),o.length===0?null:(0,V.jsx)(k,{"aria-label":n,className:`px-1`,defaultExpanded:l,children:(0,V.jsx)(Z,{changesByPath:s,disabled:t,label:n,nodes:o,onOpenFileDiff:r,onTogglePath:e=>{let t=new Set(a);t.has(e)?t.delete(e):t.add(e),i(t)},selectedPaths:a})})]})}function de(e){let t=new Map;for(let n of e.staged)t.set(n.path,{path:n.path,staged:!0,unstaged:!1});for(let n of e.unstaged){let e=t.get(n.path);t.set(n.path,{path:n.path,staged:e?.staged??!1,unstaged:!0})}return[...t.values()].sort((e,t)=>e.path.localeCompare(t.path,`en`))}function fe(e){if(e.repositoryMode!==`children`)return[];let t=new Set;for(let n of[...e.staged,...e.unstaged]){let e=n.path.indexOf(`/`);e>0&&t.add(n.path.slice(0,e))}return[...t].toSorted((e,t)=>e.localeCompare(t,`en`))}function $(e,t){return{identity:e,message:``,selectedPaths:new Set(t.map(e=>e.path))}}function pe({error:e=null,gitStatus:t,isCommitting:n=!1,isGenerating:r=!1,isRepositoryLoading:i=!1,onCommit:a,onGenerateMessage:c,onOpenFileDiff:d,onSelectRepository:h=()=>void 0,repositories:_=[],result:y=null,selectedRepository:b=null}){let{t:x}=s(`workbench`),S=(0,B.useMemo)(()=>de(t),[t]),C=`${b??`root`}:${t.snapshot}`,[w,T]=(0,B.useState)(()=>$(C,S)),E=(0,B.useRef)(g());w.identity!==C&&T($(C,S));let{message:D,selectedPaths:O}=w,k=r||n,j=_.length>0||t.repositoryMode===`children`,P=!j||b!==null&&!i&&t.repositoryMode===`root`,z=P&&O.size>0&&!k&&y===null,H=z&&D.trim().length>0,U=()=>E.current.run(async()=>{let e=await c({expectedSnapshot:t.snapshot,paths:[...O],...b===null?{}:{repository:b}});T(t=>({...t,message:e}))}),K=e=>E.current.run(()=>a({action:e,expectedSnapshot:t.snapshot,message:D,paths:[...O],...b===null?{}:{repository:b}}));return(0,V.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col overflow-hidden`,"data-slot":`commit-changes-panel`,children:[j?(0,V.jsxs)(`div`,{className:`shrink-0 border-b border-separator px-3 py-2`,children:[(0,V.jsx)(`label`,{className:`text-label font-medium`,id:`commit-repository-label`,children:x(`commit.repository`)}),(0,V.jsxs)(ae,{disabled:k||y!==null,onValueChange:h,...b===null?{}:{value:b},children:[(0,V.jsx)(F,{"aria-labelledby":`commit-repository-label`,className:`mt-1 w-full`,children:(0,V.jsx)(L,{placeholder:x(`commit.selectRepository`)})}),(0,V.jsx)(I,{position:`popper`,children:(0,V.jsx)(te,{children:_.map(e=>(0,V.jsx)(ee,{value:e,children:e},e))})})]}),i?(0,V.jsx)(`p`,{className:`mt-1 text-caption text-muted-foreground`,role:`status`,children:x(`commit.repositoryLoading`)}):null,_.length===0?(0,V.jsx)(`p`,{className:`mt-1 text-caption text-danger`,role:`alert`,children:x(`commit.repositoryUnavailable`)}):null]}):null,e===null?null:(0,V.jsx)(`p`,{className:`mx-3 mt-2 shrink-0 text-caption text-danger`,role:`alert`,children:e.message}),P?(0,V.jsxs)(V.Fragment,{children:[(0,V.jsxs)(`section`,{className:`shrink-0 px-3 py-2`,children:[(0,V.jsxs)(W,{className:`h-8 gap-1 rounded-surface border border-separator-strong bg-panel shadow-sm focus-within:border-brand focus-within:shadow-focus max-workbench:h-11`,children:[(0,V.jsx)(ce,{"aria-label":x(`commit.commitMessage`),className:`h-full min-h-0 overflow-y-auto px-2 py-1.5 text-label leading-5 max-workbench:py-3`,disabled:k||y!==null,id:`commit-message`,onChange:e=>{let t=e.currentTarget.value;T(e=>({...e,message:t}))},placeholder:x(`commit.messagePlaceholder`),rows:1,value:D}),(0,V.jsx)(G,{align:`inline-end`,className:`ml-auto`,children:(0,V.jsxs)(f,{children:[(0,V.jsx)(p,{asChild:!0,children:(0,V.jsx)(N,{"aria-label":x(`commit.generateMessage`),className:`size-7 shrink-0 justify-center p-0 [&_svg]:size-3.5 max-workbench:size-11`,disabled:!z,onClick:()=>{U().catch(()=>void 0)},type:`button`,children:r?(0,V.jsx)(l,{"aria-hidden":`true`,className:`animate-spin`}):(0,V.jsx)(A,{"aria-hidden":`true`})})}),(0,V.jsx)(m,{side:`top`,children:x(`commit.generateMessage`)})]})})]}),y===null?(0,V.jsxs)(M,{className:`mt-2 w-full`,children:[(0,V.jsxs)(o,{className:`flex-1 rounded-r-none`,disabled:!H,onClick:()=>{K(`commit`).catch(()=>void 0)},type:`button`,children:[n?(0,V.jsx)(l,{"aria-hidden":`true`,className:`animate-spin`}):(0,V.jsx)(v,{"aria-hidden":`true`}),x(`commit.commit`)]}),(0,V.jsxs)(ie,{children:[(0,V.jsx)(oe,{asChild:!0,children:(0,V.jsx)(o,{"aria-label":x(`commit.commitActions`),className:`w-10 rounded-l-none border-l border-brand-contrast/30 px-0`,disabled:!H,type:`button`,children:(0,V.jsx)(u,{"aria-hidden":`true`})})}),(0,V.jsx)(ne,{align:`end`,children:(0,V.jsxs)(re,{children:[(0,V.jsxs)(R,{onSelect:()=>{K(`commit`).catch(()=>void 0)},children:[(0,V.jsx)(v,{"aria-hidden":`true`,className:`size-3.5`}),x(`commit.commit`)]}),(0,V.jsxs)(R,{onSelect:()=>{K(`commit_and_push`).catch(()=>void 0)},children:[(0,V.jsx)(se,{"aria-hidden":`true`,className:`size-3.5`}),x(`commit.commitAndPush`)]})]})})]})]}):(0,V.jsx)(`p`,{className:`mt-2 font-mono text-caption text-muted-foreground`,role:`status`,children:y.commitSha.slice(0,7)})]}),(0,V.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col border-t border-separator`,children:[(0,V.jsxs)(`div`,{className:`flex h-8 shrink-0 items-center px-3 text-label font-semibold`,children:[(0,V.jsx)(`span`,{children:x(`commit.changes`)}),(0,V.jsx)(`span`,{className:`ml-auto text-caption font-normal text-muted-foreground`,children:x(`commit.totalFiles`,{count:S.length})})]}),(0,V.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto overscroll-contain py-0.5`,"data-slot":`commit-changes-scroll`,children:[(0,V.jsx)(Q,{changes:t.staged,disabled:k||y!==null,label:x(`commit.staged`),onOpenFileDiff:d,onSelectedPathsChange:e=>{T(t=>({...t,selectedPaths:e}))},selectedPaths:O}),(0,V.jsx)(Q,{changes:t.unstaged,disabled:k||y!==null,label:x(`commit.unstaged`),onOpenFileDiff:d,onSelectedPathsChange:e=>{T(t=>({...t,selectedPaths:e}))},selectedPaths:O})]})]})]}):null]})}function me(e){return e.pushStatus===`pushed`?`commit.commitAndPushSucceeded`:e.pushStatus===`not_requested`?`commit.commitSucceeded`:null}function he({client:e,detailsError:t=null,detailsPending:n=!1,gitStatus:r,onOpenFileDiff:i,projectId:a,rootPath:o}){let{t:c}=s(`workbench`),l=h(),u=x(S(a,o,e)),f=x({...C(a,o,e),meta:{actionNotification:{successMessage:!1}}}),p=(0,B.useMemo)(()=>fe(r),[r]),[m,g]=(0,B.useState)(),[v,b]=(0,B.useState)(null),w=v!==null&&p.includes(v)?v:p[0]??null,T=d(E(a,o,w,r.repositoryMode===`children`,e)),D=r.repositoryMode===`root`?r:T.data??r,O=m?.snapshot===D.snapshot?m.result:null;return(0,V.jsx)(pe,{error:t??T.error,gitStatus:D,isCommitting:f.isPending,isGenerating:u.isPending,isRepositoryLoading:n||T.isFetching,onCommit:async e=>{let t=e.expectedSnapshot,n=await f.mutateAsync(e);g({result:n,snapshot:t}),l.invalidateQueries({queryKey:[`projects`,a,o,`git-status`]}),l.invalidateQueries({queryKey:[`projects`,a,o,`git-history`]});let r=me(n);if(r!==null){y(c(r));return}_(Error(n.pushError??c(`commit.commitCompletePushFailed`)))},onGenerateMessage:async e=>(await u.mutateAsync(e)).message,onOpenFileDiff:i,onSelectRepository:e=>{g(void 0),u.reset(),f.reset(),b(e)},repositories:p,result:O,selectedRepository:w})}function ge({client:e,detailsError:t,detailsPending:n,detailsStatus:r,gitStatus:i,gitStatusError:a,onOpenFileDiff:o,projectId:s,rootPath:l}){return s!==void 0&&e!==void 0&&i!==void 0?(0,V.jsx)(he,{client:e,detailsError:t,detailsPending:n,gitStatus:r??i,onOpenFileDiff:o,projectId:s,rootPath:l}):a===null?(0,V.jsx)(`p`,{className:`p-3 text-caption text-muted-foreground`,role:`status`,children:c.t(`inspector.gitLoading`,{ns:`conversation`})}):(0,V.jsx)(`p`,{className:`p-3 text-caption text-danger`,role:`alert`,children:a.message})}export{ge as WorkbenchInspectorChanges};
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{i as t,t as n}from"./react-runtime-CVaUQXZF.js";import{n as r,o as i,s as a,t as o,u as s,y as c}from"./button-B0Zy5xUw.js";import{D as l,O as u,X as d,a as f,c as p,o as m,st as h}from"./es2015-D1QRD4rq.js";import{l as g,o as _,r as v,s as y,t as b,u as x}from"./checkbox-J-dVFT8h.js";import{C as S,S as C,a as w,i as T,j as E,o as D,r as O,t as k}from"./file-tree-Dh8mZi4H.js";import{n as A,r as j,t as M}from"./button-group-Czp67RFV.js";import{r as N,x as P}from"./prompt-input-controls-CLj9lxlf.js";import{D as ee,E as te,O as F,T as I,d as ne,f as re,k as L,p as R,u as ie,w as ae,x as oe}from"./index-C9MtcGVc.js";var z=a(`file-minus-corner`,[[`path`,{d:`M20 14V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12`,key:`l9p8hp`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M14 18h6`,key:`1m8k6r`}]]),se=a(`upload`,[[`path`,{d:`M12 3v12`,key:`1x0j5s`}],[`path`,{d:`m17 8-5-5-5 5`,key:`7q97r8`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}]]),B=e(t(),1),V=n(),H=i(`min-w-0 text-foreground outline-none transition-[border-color,box-shadow] placeholder:text-muted-foreground focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50`,{defaultVariants:{variant:`default`},variants:{variant:{default:`min-h-20 w-full resize-y rounded-control bg-control px-3 py-2 text-body focus-visible:shadow-focus`,embedded:`flex-1 resize-none bg-transparent`}}});function U({className:e,variant:t=`default`,...n}){return(0,V.jsx)(`textarea`,{className:r(H({className:e,variant:t})),"data-slot":`textarea`,"data-variant":t,...n})}function W({className:e,...t}){return(0,V.jsx)(`div`,{className:r(`group/input-group flex w-full min-w-0 items-center`,e),"data-slot":`input-group`,role:`group`,...t})}function G({align:e=`inline-start`,className:t,...n}){return(0,V.jsx)(`div`,{className:r(`flex shrink-0 items-center`,t),"data-align":e,"data-slot":`input-group-addon`,role:`group`,...n})}function ce({className:e,...t}){return(0,V.jsx)(U,{className:r(`min-w-0 flex-1`,e),"data-slot":`input-group-control`,variant:`embedded`,...t})}function K(e){return[...e].sort((e,t)=>e.kind===t.kind?e.name.localeCompare(t.name,`en`):e.kind===`file`?-1:1)}function q(e){let t=[e.name],n=e;for(;n.children.size===1;){let e=n.children.values().next().value;if(e?.kind!==`folder`)break;t.push(e.name),n=e}return{children:K([...n.children.values()].map(e=>e.kind===`folder`?q(e):e)),kind:`folder`,name:t.join(`/`),path:n.path}}function le(e){let t={children:new Map,kind:`folder`,name:``,path:``};for(let n of e){let e=n.path.split(`/`),r=e.pop();if(r===void 0)continue;let i=t;for(let t of e){let e=i.path===``?t:`${i.path}/${t}`,n=i.children.get(t);if(n?.kind===`folder`){i=n;continue}let r={children:new Map,kind:`folder`,name:t,path:e};i.children.set(t,r),i=r}i.children.set(r,{kind:`file`,name:r,path:n.path,status:n.kind})}return K([...t.children.values()].map(e=>e.kind===`folder`?q(e):e))}function J(e,t){for(let n of e)n.kind===`folder`&&(t.add(n.path),J(n.children,t))}function Y(e){return e===`create`?`text-diff-added`:e===`delete`?`text-danger`:`text-warning`}function X(e){let t=r(`size-3.5`,Y(e));return e===`create`?(0,V.jsx)(P,{"aria-hidden":`true`,className:t}):e===`delete`?(0,V.jsx)(z,{"aria-hidden":`true`,className:t}):(0,V.jsx)(j,{"aria-hidden":`true`,className:t})}function ue(e){return e===`create`?`A`:e===`delete`?`D`:`M`}function Z({changesByPath:e,disabled:t,label:n,nodes:r,onOpenFileDiff:i,onTogglePath:a,selectedPaths:o}){return r.map(r=>{if(r.kind===`folder`)return(0,V.jsx)(T,{name:r.name,path:r.path,children:(0,V.jsx)(Z,{changesByPath:e,disabled:t,label:n,nodes:r.children,onOpenFileDiff:i,onTogglePath:a,selectedPaths:o})},r.path);let s=o.has(r.path),c=e.get(r.path);return(0,V.jsxs)(O,{"aria-label":r.path,className:Y(r.status),icon:X(r.status),name:r.name,onClick:()=>{c!==void 0&&i(c)},path:r.path,trailing:(0,V.jsx)(`span`,{className:`ml-auto w-3 text-center text-meta font-semibold text-muted-foreground`,children:ue(r.status)}),children:[(0,V.jsx)(`span`,{"aria-hidden":`true`,className:`size-5 shrink-0`}),(0,V.jsx)(b,{"aria-label":`${n}: ${r.path}`,checked:s,disabled:t,onCheckedChange:()=>{a(r.path)},onClick:e=>{e.stopPropagation()}}),(0,V.jsx)(w,{children:X(r.status)}),(0,V.jsx)(D,{title:r.path,children:r.name})]},r.path)})}function Q({changes:e,disabled:t=!1,label:n,onOpenFileDiff:r,onSelectedPathsChange:i,selectedPaths:a}){let o=(0,B.useMemo)(()=>le(e),[e]),s=(0,B.useMemo)(()=>new Map(e.map(e=>[e.path,e])),[e]),c=(0,B.useMemo)(()=>[...new Set(e.map(e=>e.path))],[e]),l=(0,B.useMemo)(()=>{let e=new Set;return J(o,e),e},[o]);if(c.length===0)return null;let u=c.filter(e=>a.has(e)).length,d=u===0?!1:u===c.length||`indeterminate`;return(0,V.jsxs)(`section`,{"aria-label":n,className:`py-0.5`,children:[(0,V.jsxs)(`div`,{className:`flex min-h-7 items-center gap-1.5 px-3`,children:[(0,V.jsx)(b,{"aria-label":n,checked:d,disabled:t||c.length===0,onCheckedChange:e=>{let t=new Set(a);for(let n of c)e===!0?t.add(n):t.delete(n);i(t)}}),(0,V.jsx)(`h3`,{className:`text-label font-semibold text-foreground`,children:n}),(0,V.jsx)(`span`,{className:`ml-auto text-caption text-muted-foreground`,children:c.length})]}),o.length===0?null:(0,V.jsx)(k,{"aria-label":n,className:`px-1`,defaultExpanded:l,children:(0,V.jsx)(Z,{changesByPath:s,disabled:t,label:n,nodes:o,onOpenFileDiff:r,onTogglePath:e=>{let t=new Set(a);t.has(e)?t.delete(e):t.add(e),i(t)},selectedPaths:a})})]})}function de(e){let t=new Map;for(let n of e.staged)t.set(n.path,{path:n.path,staged:!0,unstaged:!1});for(let n of e.unstaged){let e=t.get(n.path);t.set(n.path,{path:n.path,staged:e?.staged??!1,unstaged:!0})}return[...t.values()].sort((e,t)=>e.path.localeCompare(t.path,`en`))}function fe(e){if(e.repositoryMode!==`children`)return[];let t=new Set;for(let n of[...e.staged,...e.unstaged]){let e=n.path.indexOf(`/`);e>0&&t.add(n.path.slice(0,e))}return[...t].toSorted((e,t)=>e.localeCompare(t,`en`))}function $(e,t){return{identity:e,message:``,selectedPaths:new Set(t.map(e=>e.path))}}function pe({error:e=null,gitStatus:t,isCommitting:n=!1,isGenerating:r=!1,isRepositoryLoading:i=!1,onCommit:a,onGenerateMessage:c,onOpenFileDiff:d,onSelectRepository:h=()=>void 0,repositories:_=[],result:y=null,selectedRepository:b=null}){let{t:x}=s(`workbench`),S=(0,B.useMemo)(()=>de(t),[t]),C=`${b??`root`}:${t.snapshot}`,[w,T]=(0,B.useState)(()=>$(C,S)),E=(0,B.useRef)(g());w.identity!==C&&T($(C,S));let{message:D,selectedPaths:O}=w,k=r||n,j=_.length>0||t.repositoryMode===`children`,P=!j||b!==null&&!i&&t.repositoryMode===`root`,z=P&&O.size>0&&!k&&y===null,H=z&&D.trim().length>0,U=()=>E.current.run(async()=>{let e=await c({expectedSnapshot:t.snapshot,paths:[...O],...b===null?{}:{repository:b}});T(t=>({...t,message:e}))}),K=e=>E.current.run(()=>a({action:e,expectedSnapshot:t.snapshot,message:D,paths:[...O],...b===null?{}:{repository:b}}));return(0,V.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col overflow-hidden`,"data-slot":`commit-changes-panel`,children:[j?(0,V.jsxs)(`div`,{className:`shrink-0 border-b border-separator px-3 py-2`,children:[(0,V.jsx)(`label`,{className:`text-label font-medium`,id:`commit-repository-label`,children:x(`commit.repository`)}),(0,V.jsxs)(ae,{disabled:k||y!==null,onValueChange:h,...b===null?{}:{value:b},children:[(0,V.jsx)(F,{"aria-labelledby":`commit-repository-label`,className:`mt-1 w-full`,children:(0,V.jsx)(L,{placeholder:x(`commit.selectRepository`)})}),(0,V.jsx)(I,{position:`popper`,children:(0,V.jsx)(te,{children:_.map(e=>(0,V.jsx)(ee,{value:e,children:e},e))})})]}),i?(0,V.jsx)(`p`,{className:`mt-1 text-caption text-muted-foreground`,role:`status`,children:x(`commit.repositoryLoading`)}):null,_.length===0?(0,V.jsx)(`p`,{className:`mt-1 text-caption text-danger`,role:`alert`,children:x(`commit.repositoryUnavailable`)}):null]}):null,e===null?null:(0,V.jsx)(`p`,{className:`mx-3 mt-2 shrink-0 text-caption text-danger`,role:`alert`,children:e.message}),P?(0,V.jsxs)(V.Fragment,{children:[(0,V.jsxs)(`section`,{className:`shrink-0 px-3 py-2`,children:[(0,V.jsxs)(W,{className:`h-8 gap-1 rounded-surface border border-separator-strong bg-panel shadow-sm focus-within:border-brand focus-within:shadow-focus max-workbench:h-11`,children:[(0,V.jsx)(ce,{"aria-label":x(`commit.commitMessage`),className:`h-full min-h-0 overflow-y-auto px-2 py-1.5 text-label leading-5 max-workbench:py-3`,disabled:k||y!==null,id:`commit-message`,onChange:e=>{let t=e.currentTarget.value;T(e=>({...e,message:t}))},placeholder:x(`commit.messagePlaceholder`),rows:1,value:D}),(0,V.jsx)(G,{align:`inline-end`,className:`ml-auto`,children:(0,V.jsxs)(f,{children:[(0,V.jsx)(p,{asChild:!0,children:(0,V.jsx)(N,{"aria-label":x(`commit.generateMessage`),className:`size-7 shrink-0 justify-center p-0 [&_svg]:size-3.5 max-workbench:size-11`,disabled:!z,onClick:()=>{U().catch(()=>void 0)},type:`button`,children:r?(0,V.jsx)(l,{"aria-hidden":`true`,className:`animate-spin`}):(0,V.jsx)(A,{"aria-hidden":`true`})})}),(0,V.jsx)(m,{side:`top`,children:x(`commit.generateMessage`)})]})})]}),y===null?(0,V.jsxs)(M,{className:`mt-2 w-full`,children:[(0,V.jsxs)(o,{className:`flex-1 rounded-r-none`,disabled:!H,onClick:()=>{K(`commit`).catch(()=>void 0)},type:`button`,children:[n?(0,V.jsx)(l,{"aria-hidden":`true`,className:`animate-spin`}):(0,V.jsx)(v,{"aria-hidden":`true`}),x(`commit.commit`)]}),(0,V.jsxs)(ie,{children:[(0,V.jsx)(oe,{asChild:!0,children:(0,V.jsx)(o,{"aria-label":x(`commit.commitActions`),className:`w-10 rounded-l-none border-l border-brand-contrast/30 px-0`,disabled:!H,type:`button`,children:(0,V.jsx)(u,{"aria-hidden":`true`})})}),(0,V.jsx)(ne,{align:`end`,children:(0,V.jsxs)(re,{children:[(0,V.jsxs)(R,{onSelect:()=>{K(`commit`).catch(()=>void 0)},children:[(0,V.jsx)(v,{"aria-hidden":`true`,className:`size-3.5`}),x(`commit.commit`)]}),(0,V.jsxs)(R,{onSelect:()=>{K(`commit_and_push`).catch(()=>void 0)},children:[(0,V.jsx)(se,{"aria-hidden":`true`,className:`size-3.5`}),x(`commit.commitAndPush`)]})]})})]})]}):(0,V.jsx)(`p`,{className:`mt-2 font-mono text-caption text-muted-foreground`,role:`status`,children:y.commitSha.slice(0,7)})]}),(0,V.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col border-t border-separator`,children:[(0,V.jsxs)(`div`,{className:`flex h-8 shrink-0 items-center px-3 text-label font-semibold`,children:[(0,V.jsx)(`span`,{children:x(`commit.changes`)}),(0,V.jsx)(`span`,{className:`ml-auto text-caption font-normal text-muted-foreground`,children:x(`commit.totalFiles`,{count:S.length})})]}),(0,V.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto overscroll-contain py-0.5`,"data-slot":`commit-changes-scroll`,children:[(0,V.jsx)(Q,{changes:t.staged,disabled:k||y!==null,label:x(`commit.staged`),onOpenFileDiff:d,onSelectedPathsChange:e=>{T(t=>({...t,selectedPaths:e}))},selectedPaths:O}),(0,V.jsx)(Q,{changes:t.unstaged,disabled:k||y!==null,label:x(`commit.unstaged`),onOpenFileDiff:d,onSelectedPathsChange:e=>{T(t=>({...t,selectedPaths:e}))},selectedPaths:O})]})]})]}):null]})}function me(e){return e.pushStatus===`pushed`?`commit.commitAndPushSucceeded`:e.pushStatus===`not_requested`?`commit.commitSucceeded`:null}function he({client:e,detailsError:t=null,detailsPending:n=!1,gitStatus:r,onOpenFileDiff:i,projectId:a,rootPath:o}){let{t:c}=s(`workbench`),l=h(),u=x(S(a,o,e)),f=x({...C(a,o,e),meta:{actionNotification:{successMessage:!1}}}),p=(0,B.useMemo)(()=>fe(r),[r]),[m,g]=(0,B.useState)(),[v,b]=(0,B.useState)(null),w=v!==null&&p.includes(v)?v:p[0]??null,T=d(E(a,o,w,r.repositoryMode===`children`,e)),D=r.repositoryMode===`root`?r:T.data??r,O=m?.snapshot===D.snapshot?m.result:null;return(0,V.jsx)(pe,{error:t??T.error,gitStatus:D,isCommitting:f.isPending,isGenerating:u.isPending,isRepositoryLoading:n||T.isFetching,onCommit:async e=>{let t=e.expectedSnapshot,n=await f.mutateAsync(e);g({result:n,snapshot:t}),l.invalidateQueries({queryKey:[`projects`,a,o,`git-status`]}),l.invalidateQueries({queryKey:[`projects`,a,o,`git-history`]});let r=me(n);if(r!==null){y(c(r));return}_(Error(n.pushError??c(`commit.commitCompletePushFailed`)))},onGenerateMessage:async e=>(await u.mutateAsync(e)).message,onOpenFileDiff:i,onSelectRepository:e=>{g(void 0),u.reset(),f.reset(),b(e)},repositories:p,result:O,selectedRepository:w})}function ge({client:e,detailsError:t,detailsPending:n,detailsStatus:r,gitStatus:i,gitStatusError:a,onOpenFileDiff:o,projectId:s,rootPath:l}){return s!==void 0&&e!==void 0&&i!==void 0?(0,V.jsx)(he,{client:e,detailsError:t,detailsPending:n,gitStatus:r??i,onOpenFileDiff:o,projectId:s,rootPath:l}):a===null?(0,V.jsx)(`p`,{className:`p-3 text-caption text-muted-foreground`,role:`status`,children:c.t(`inspector.gitLoading`,{ns:`conversation`})}):(0,V.jsx)(`p`,{className:`p-3 text-caption text-danger`,role:`alert`,children:a.message})}export{ge as WorkbenchInspectorChanges};