@vantran-se/openchamber-web 2.4.0 → 2.4.1

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 (80) hide show
  1. package/dist/assets/{AboutDialog-Dh2Z6Rpo.js → AboutDialog-BItSBkkK.js} +1 -1
  2. package/dist/assets/{ArchiveView-31PVMzC2.js → ArchiveView-CEGi3y1V.js} +1 -1
  3. package/dist/assets/{ChangedPathLabel-CbXts83B.js → ChangedPathLabel-CQNGnF-T.js} +1 -1
  4. package/dist/assets/{CommandPalette-DzOIUvyX.js → CommandPalette-DWX1HV4m.js} +1 -1
  5. package/dist/assets/{DiffView-C6UN20mH.js → DiffView-Be1Xoy_F.js} +1 -1
  6. package/dist/assets/{FilesView-V9SCRZ9-.js → FilesView-DONPk8-K.js} +1 -1
  7. package/dist/assets/{GitView-RJHLEROE.js → GitView-D10y-u46.js} +1 -1
  8. package/dist/assets/{GuestSurfacePane-C9dmI3Di.js → GuestSurfacePane-Cot0OO7x.js} +1 -1
  9. package/dist/assets/{HelpDialog-DyGX9_8h.js → HelpDialog-Bw836_tH.js} +1 -1
  10. package/dist/assets/{InProgressOperationBanner-B3oEOw3O.js → InProgressOperationBanner-saAihIub.js} +1 -1
  11. package/dist/assets/{IntegrationsCatalogView-CwBk0nb-.js → IntegrationsCatalogView-BtdMeTHf.js} +1 -1
  12. package/dist/assets/{JsonTreeView-BnV3bUfi.js → JsonTreeView-BOQC0uTM.js} +1 -1
  13. package/dist/assets/{MarkdownRendererImpl-DwFPVpAe.js → MarkdownRendererImpl-CuZntPVf.js} +1 -1
  14. package/dist/assets/{MemoryDebugPanel-DwNkGEQI.js → MemoryDebugPanel-BZgSuf-z.js} +1 -1
  15. package/dist/assets/{OnboardingScreen-CLGQ5tGv.js → OnboardingScreen-Bx2h2w69.js} +1 -1
  16. package/dist/assets/{OpenCodeStatusDialog-D7ZnJOuR.js → OpenCodeStatusDialog-N9JgIC1p.js} +1 -1
  17. package/dist/assets/{PatchDiff-BriSysUP.js → PatchDiff-Ca_Ci2CX.js} +1 -1
  18. package/dist/assets/{PierreDiffViewer-ToKfUZsI.js → PierreDiffViewer-Ck0P8Q2W.js} +1 -1
  19. package/dist/assets/{PlanView-YOnwcP8k.js → PlanView-dx70wKWR.js} +1 -1
  20. package/dist/assets/{ProjectActionsDialog-C3u320eT.js → ProjectActionsDialog-BS20dYCJ.js} +1 -1
  21. package/dist/assets/{PullRequestComparisonSelector-Cvng5foj.js → PullRequestComparisonSelector-DOW9_VlK.js} +1 -1
  22. package/dist/assets/{RunOverview-CX4EWbX4.js → RunOverview-DtxjzGnX.js} +1 -1
  23. package/dist/assets/{ScheduledTasksDialog-Cg0llpjw.js → ScheduledTasksDialog-HcypGtky.js} +1 -1
  24. package/dist/assets/{SettingsView-C5MS7v4D.js → SettingsView-IBrGwDoM.js} +1 -1
  25. package/dist/assets/{SettingsWindow-ZCLlBZBD.js → SettingsWindow-Bugr9Hmx.js} +1 -1
  26. package/dist/assets/{SourceBoardView-DeQ_gjii.js → SourceBoardView-BD5rmib8.js} +1 -1
  27. package/dist/assets/{SpaceAccessDialog-MzV-zdo9.js → SpaceAccessDialog-BYhp5gfB.js} +1 -1
  28. package/dist/assets/{SpaceApplyDialog-DDxyMT0_.js → SpaceApplyDialog-CC0axZal.js} +1 -1
  29. package/dist/assets/{SpaceRow-sK_fpiHu.js → SpaceRow-DDWTQgfP.js} +1 -1
  30. package/dist/assets/{SpaceSetupOutput-DXkmiL2Y.js → SpaceSetupOutput-BqurG7V4.js} +1 -1
  31. package/dist/assets/{SpacesView-DZNEvbJ7.js → SpacesView-Bcbb9aXY.js} +1 -1
  32. package/dist/assets/{SubmoduleDiffSummary-E0GcoYiO.js → SubmoduleDiffSummary-BS1PSa4l.js} +1 -1
  33. package/dist/assets/{ToolOutputDialog-CKl9iGaM.js → ToolOutputDialog-DXWQ17Fv.js} +1 -1
  34. package/dist/assets/{ToolPartDiffPreview-CRANc7sQ.js → ToolPartDiffPreview-DXRs6cSg.js} +1 -1
  35. package/dist/assets/{UsageStatsView-np-Qgyn0.js → UsageStatsView-DFVydqMY.js} +1 -1
  36. package/dist/assets/{Virtualizer-CgLU97RO.js → Virtualizer-B8rX50qD.js} +1 -1
  37. package/dist/assets/{WalkthroughView-oJlQ42QA.js → WalkthroughView-CECS5lDs.js} +1 -1
  38. package/dist/assets/{WorktreesView-XC8e1Gxk.js → WorktreesView-FH0uzPQG.js} +1 -1
  39. package/dist/assets/{appThemeRegistry-DsBAd3cG.js → appThemeRegistry-CnS_OWEL.js} +1 -1
  40. package/dist/assets/{computeVirtualFileMetrics-tFBUWYu1.js → computeVirtualFileMetrics-rZJ-MSfY.js} +1 -1
  41. package/dist/assets/{decorate-N1FIdwTF.js → decorate-Bbbyq0tX.js} +1 -1
  42. package/dist/assets/{flexokiTheme-qbTuJgIP.js → flexokiTheme-DECIbITo.js} +1 -1
  43. package/dist/assets/{index-DppcIt7q.js → index-DElZNtel.js} +1 -1
  44. package/dist/assets/{initializeSharedPreferences-Cfgz92Al.js → initializeSharedPreferences-C5qncsHs.js} +1 -1
  45. package/dist/assets/{install-iZ64WEBd.js → install-D-H6uk7D.js} +1 -1
  46. package/dist/assets/{isDiffPlainText-DxiX2X7Q.js → isDiffPlainText-DMFSMXcK.js} +1 -1
  47. package/dist/assets/{isFilePlainText-y0Pch-hF.js → isFilePlainText-BQGSJxcX.js} +1 -1
  48. package/dist/assets/{main-BggWUmia.js → main-CcnDurk6.js} +4 -4
  49. package/dist/assets/{main-CcAbEyCv.js → main-DMdUGpFx.js} +2 -2
  50. package/dist/assets/{markdownCore-P3Pd8JpY.js → markdownCore-BwFkWhmZ.js} +1 -1
  51. package/dist/assets/{miniChat-iJHNCDmk.js → miniChat-B8DW3cmv.js} +2 -2
  52. package/dist/assets/{mobile-C1tleU1e.js → mobile-Caqsx1Op.js} +2 -2
  53. package/dist/assets/{moveWorkspacePath-CUn1SV66.js → moveWorkspacePath-By4gjwmW.js} +1 -1
  54. package/dist/assets/{parseDiffFromFile-Phw3Q2Mh.js → parseDiffFromFile-C9ASoy7R.js} +1 -1
  55. package/dist/assets/{pierreDiffTint-J7FoDbyq.js → pierreDiffTint-IfgQ6oty.js} +1 -1
  56. package/dist/assets/{relocateRestoredSession-Ch0D1a0g.js → relocateRestoredSession-DBWTClOj.js} +1 -1
  57. package/dist/assets/{renderElectronMiniChatApp-QPvTS_hc.js → renderElectronMiniChatApp-C5irgP-w.js} +2 -2
  58. package/dist/assets/{renderMobileApp-Ci_S1TJm.js → renderMobileApp-DnyN_ARh.js} +3 -3
  59. package/dist/assets/{restartOpenCode-BE2HLPm1.js → restartOpenCode-VU-OEAvZ.js} +1 -1
  60. package/dist/assets/{runtimeEndpointReset-DcZoNIpr.js → runtimeEndpointReset-BJUtkqal.js} +3 -3
  61. package/dist/assets/{selectionMarkdown-Dw3ME6dV.js → selectionMarkdown-DV_HvvmZ.js} +1 -1
  62. package/dist/assets/{shikiHighlight-3Hs_1ia3.js → shikiHighlight-BKmAuapa.js} +1 -1
  63. package/dist/assets/{space-apply-CvoK3fqX.js → space-apply-Br_BRuH8.js} +1 -1
  64. package/dist/assets/{space-close-B_kflt9L.js → space-close-D_1iLJrX.js} +1 -1
  65. package/dist/assets/{spaceNetwork-ClSGQtiE.js → spaceNetwork-Dcj-qJy-.js} +1 -1
  66. package/dist/assets/{textMateThemeFromAppTheme-kAREvDjp.js → textMateThemeFromAppTheme-Bye_bpEL.js} +1 -1
  67. package/dist/assets/{useAppFontEffects-BZrjCfFw.js → useAppFontEffects-d9vsRNKm.js} +13 -13
  68. package/dist/assets/{useCallableModelProviders-CpxZpJTR.js → useCallableModelProviders-8CrUkERW.js} +1 -1
  69. package/dist/assets/{useDiffFindSurface-D6svD0Z1.js → useDiffFindSurface-sw5jZ-9V.js} +1 -1
  70. package/dist/assets/{useInlineCommentController-CV8dwlO7.js → useInlineCommentController-Cw5IRM5Y.js} +1 -1
  71. package/dist/assets/{useMarkdownLocalAssets-D0S_fJEu.js → useMarkdownLocalAssets-D3a1j44d.js} +1 -1
  72. package/dist/assets/{useRootScrollLock-5OfQ_8IH.js → useRootScrollLock-BWsNuapq.js} +2 -2
  73. package/dist/assets/{useWalkthroughReview-CxCd3Z0I.js → useWalkthroughReview-D7I1H6_J.js} +1 -1
  74. package/dist/assets/{vendor-codemirror-language-data-DsRKCbVv.js → vendor-codemirror-language-data-DP_Bh3S8.js} +2 -2
  75. package/dist/index.html +1 -1
  76. package/dist/mini-chat.html +1 -1
  77. package/dist/mobile.html +1 -1
  78. package/package.json +1 -1
  79. package/server/index.js +2 -1
  80. package/server/lib/guests/service-registry.js +3 -0
@@ -1 +1 @@
1
- import{R as t,j as e}from"./vendor-react-BUCujlKS.js";import{u as w,t as v,q as D,ac as C,I as m,ad as k}from"./useAppFontEffects-BZrjCfFw.js";import{k as h}from"./katex.min-u4DtE8E5.js";import"./vendor-scheduler-7OC5HNn7.js";import"./vendor-base-ui-CPKyhvxM.js";import"./vendor-floating-ui-utils-D6FqdtJt.js";import"./vendor-floating-ui-dom-BTvzWks8.js";import"./vendor-floating-ui-core-PuGzNPnN.js";import"./vendor-floating-ui-react-dom-DxYCWdHj.js";import"./vendor-use-sync-external-store-D6wYuSt-.js";import"./vendor-zod-DDir2TeQ.js";import"./vendor-simplewebauthn-browser-VDA66rT_.js";import"./vendor-vite-runtime-DD1OZmLC.js";import"./vendor-zustand-BAGL70zf.js";import"./vendor-class-variance-authority-5VPnzWs2.js";import"./vendor-clsx-B-dksMZM.js";import"./vendor-dnd-kit-core-BZknOX2w.js";import"./vendor-dnd-kit-utilities-B_MdXhJC.js";import"./vendor-dnd-kit-accessibility-BHxJPORy.js";import"./vendor-dnd-kit-sortable-CsEagZ81.js";import"./vendor-tanstack-react-virtual-Bmi0tTrf.js";import"./vendor-tanstack-virtual-core-CdGDGrnp.js";import"./vendor-framer-motion-DxDVhOLc.js";import"./vendor-motion-dom-HXPOMxb7.js";import"./vendor-motion-utils-BGh8QBgx.js";import"./vendor-codemirror-commands-dar6chwA.js";import"./vendor-codemirror-state-Dek9sMtw.js";import"./vendor-marijn-find-cluster-break-DXwl3gUT.js";import"./vendor-codemirror-view-B66jUSmE.js";import"./vendor-style-mod-NZ5MEPvj.js";import"./vendor-w3c-keyname-Vcq4gwWv.js";import"./vendor-crelt-C8TCjufn.js";import"./vendor-codemirror-language-DyL0aCoH.js";import"./vendor-lezer-common-B3-cUCR_.js";import"./vendor-lezer-highlight-CDMHUZ74.js";import"./vendor-codemirror-streamparser-CmlTsbN2.js";import"./vendor-codemirror-lang-javascript-Cem6LjJ8.js";import"./vendor-lezer-javascript-D7Tj24ot.js";import"./vendor-lezer-lr-bhwg1HMg.js";import"./vendor-codemirror-autocomplete-CIqXJolH.js";import"./vendor-codemirror-lang-json-C9rLLO0q.js";import"./vendor-lezer-json-Iaex0UN-.js";import"./vendor-codemirror-lang-css-9qjxcVkg.js";import"./vendor-lezer-css-C5xB6jxd.js";import"./vendor-codemirror-lang-html-D7VQUxeE.js";import"./vendor-lezer-html-C0I1p52t.js";import"./vendor-codemirror-lang-markdown-Cikh4w2I.js";import"./vendor-lezer-markdown-C6g-d6P3.js";import"./vendor-codemirror-language-data-DsRKCbVv.js";import"./vendor-codemirror-lang-python-DVl8-2Op.js";import"./vendor-lezer-python-CvuFxeZl.js";import"./vendor-sonner-DFyL3AvE.js";import"./vendor-capacitor-core-B4EWRrHz.js";import"./vendor-cmdk-DgLInKvT.js";import"./vendor-radix-ui-react-dialog-B94Bt2qq.js";import"./vendor-radix-ui-primitive-Dc_FVRD7.js";import"./vendor-radix-ui-react-compose-refs-DcAh5WdT.js";import"./vendor-radix-ui-react-context-Czxm7Z62.js";import"./vendor-radix-ui-react-id-f5BLKEVw.js";import"./vendor-radix-ui-react-use-layout-effect-D_3IhJdJ.js";import"./vendor-radix-ui-react-use-controllable-state-BFT5YmkA.js";import"./vendor-radix-ui-react-dismissable-layer-D7kXcwgJ.js";import"./vendor-radix-ui-react-primitive-DhVoX9SD.js";import"./vendor-radix-ui-react-slot-BQgQOasS.js";import"./vendor-radix-ui-react-use-callback-ref-BZPnuXAC.js";import"./vendor-radix-ui-react-use-escape-keydown-oph88g-F.js";import"./vendor-radix-ui-react-focus-scope-CiaxW4dD.js";import"./vendor-radix-ui-react-portal-BMJYHWck.js";import"./vendor-radix-ui-react-presence-CNxf-uq4.js";import"./vendor-radix-ui-react-focus-guards-B6qJXYua.js";import"./vendor-react-remove-scroll-DO7dCTnK.js";import"./vendor-tslib-De9GV7Vy.js";import"./vendor-react-remove-scroll-bar-BcFYyj3E.js";import"./vendor-react-style-singleton-q6EMHnwf.js";import"./vendor-get-nonce-C-Z93AgS.js";import"./vendor-use-sidecar-zDC0RhA3.js";import"./vendor-use-callback-ref-D3RC8gqK.js";import"./vendor-aria-hidden-DvXkyWUv.js";import"./vendor-legendapp-list-D2O6oUGf.js";import"./vendor-tailwind-merge-CPcsbTWB.js";import"./vendor-fuse.js-Dw8P0qyA.js";import"./vendor-opencode-client-h8RufjAw.js";const f="\0",nt=({open:s,onOpenChange:u})=>{const{t:a}=w(),c=!1,[g,l]=t.useState(void 0),[x,j]=t.useState(void 0),[b,S]=t.useState(!1),[_,R]=t.useState(!1),[y,N]=t.useState(null),[O,V]=t.useState(!1);t.useCallback(async()=>{},[y,b,c,a]),t.useEffect(()=>{if(!s)return;let r=!1;return(async()=>{try{const o=await h("/api/system/info");if(o.ok){const n=await o.json();if(typeof n.openchamberVersion=="string"&&n.openchamberVersion.trim()){r||l(n.openchamberVersion);return}}}catch{}const i=await k().catch(()=>null);r||l(i)})(),()=>{r=!0}},[s]),t.useEffect(()=>{if(!s)return;let r=!1;return(async()=>{let i="";try{const o=await h("/api/opencode/upgrade-status",{headers:{Accept:"application/json"}});if(o.ok){const n=await o.json().catch(()=>null);i=typeof n?.currentVersion=="string"?n.currentVersion.trim():""}}catch{}r||j(i||null)})(),()=>{r=!0}},[s]),t.useEffect(()=>{{N(null),V(!1);return}},[s,c]);const d=(r,p)=>{if(p!==void 0)return e.jsx("p",{children:a(r,{version:p??a("settings.openchamber.about.state.unknown")})});const[i,o=""]=a(r,{version:f}).split(f);return e.jsxs("p",{className:"flex items-center justify-center",children:[e.jsx("span",{className:"whitespace-pre",children:i}),e.jsx(m,{name:"loader",className:"size-3.5 animate-spin"}),e.jsx("span",{className:"whitespace-pre",children:o})]})};return e.jsx(v,{open:s,onOpenChange:u,children:e.jsx(D,{className:"max-w-xs p-6",children:e.jsxs("div",{className:"flex flex-col items-center text-center space-y-4",children:[e.jsx(C,{width:64,height:64}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("h2",{className:"text-lg font-semibold",children:"OpenChamber"}),e.jsxs("div",{className:"space-y-0.5 typography-meta text-muted-foreground",children:[d("aboutDialog.openChamberVersionLabel",g),d("aboutDialog.openCodeVersionLabel",x)]})]}),c,e.jsxs("div",{className:"flex flex-col items-center gap-2 pt-2",children:[e.jsxs("div",{className:"flex items-center justify-center gap-4",children:[e.jsxs("a",{href:"https://github.com/openchamber/openchamber",target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1.5 typography-meta text-muted-foreground hover:text-foreground transition-colors",children:[e.jsx(m,{name:"github-fill",className:"h-4 w-4"}),e.jsx("span",{children:"GitHub"})]}),e.jsxs("a",{href:"https://discord.gg/ZYRSdnwwKA",target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1.5 typography-meta text-muted-foreground hover:text-foreground transition-colors",children:[e.jsx(m,{name:"discord-fill",className:"h-4 w-4"}),e.jsx("span",{children:"Discord"})]})]}),e.jsxs("a",{href:"https://x.com/openchamber_dev",target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1.5 typography-meta text-muted-foreground hover:text-foreground transition-colors",children:[e.jsx(m,{name:"twitter-xfill",className:"h-4 w-4"}),e.jsx("span",{children:"@openchamber_dev"})]})]}),e.jsx("p",{className:"typography-meta text-muted-foreground/60 pt-2",children:a("aboutDialog.footerNote")})]})})})};export{nt as AboutDialog};
1
+ import{R as t,j as e}from"./vendor-react-BUCujlKS.js";import{u as w,t as v,q as D,ac as C,I as m,ad as k}from"./useAppFontEffects-d9vsRNKm.js";import{k as h}from"./katex.min-u4DtE8E5.js";import"./vendor-scheduler-7OC5HNn7.js";import"./vendor-base-ui-CPKyhvxM.js";import"./vendor-floating-ui-utils-D6FqdtJt.js";import"./vendor-floating-ui-dom-BTvzWks8.js";import"./vendor-floating-ui-core-PuGzNPnN.js";import"./vendor-floating-ui-react-dom-DxYCWdHj.js";import"./vendor-use-sync-external-store-D6wYuSt-.js";import"./vendor-zod-DDir2TeQ.js";import"./vendor-simplewebauthn-browser-VDA66rT_.js";import"./vendor-vite-runtime-DD1OZmLC.js";import"./vendor-zustand-BAGL70zf.js";import"./vendor-class-variance-authority-5VPnzWs2.js";import"./vendor-clsx-B-dksMZM.js";import"./vendor-dnd-kit-core-BZknOX2w.js";import"./vendor-dnd-kit-utilities-B_MdXhJC.js";import"./vendor-dnd-kit-accessibility-BHxJPORy.js";import"./vendor-dnd-kit-sortable-CsEagZ81.js";import"./vendor-tanstack-react-virtual-Bmi0tTrf.js";import"./vendor-tanstack-virtual-core-CdGDGrnp.js";import"./vendor-framer-motion-DxDVhOLc.js";import"./vendor-motion-dom-HXPOMxb7.js";import"./vendor-motion-utils-BGh8QBgx.js";import"./vendor-codemirror-commands-dar6chwA.js";import"./vendor-codemirror-state-Dek9sMtw.js";import"./vendor-marijn-find-cluster-break-DXwl3gUT.js";import"./vendor-codemirror-view-B66jUSmE.js";import"./vendor-style-mod-NZ5MEPvj.js";import"./vendor-w3c-keyname-Vcq4gwWv.js";import"./vendor-crelt-C8TCjufn.js";import"./vendor-codemirror-language-DyL0aCoH.js";import"./vendor-lezer-common-B3-cUCR_.js";import"./vendor-lezer-highlight-CDMHUZ74.js";import"./vendor-codemirror-streamparser-CmlTsbN2.js";import"./vendor-codemirror-lang-javascript-Cem6LjJ8.js";import"./vendor-lezer-javascript-D7Tj24ot.js";import"./vendor-lezer-lr-bhwg1HMg.js";import"./vendor-codemirror-autocomplete-CIqXJolH.js";import"./vendor-codemirror-lang-json-C9rLLO0q.js";import"./vendor-lezer-json-Iaex0UN-.js";import"./vendor-codemirror-lang-css-9qjxcVkg.js";import"./vendor-lezer-css-C5xB6jxd.js";import"./vendor-codemirror-lang-html-D7VQUxeE.js";import"./vendor-lezer-html-C0I1p52t.js";import"./vendor-codemirror-lang-markdown-Cikh4w2I.js";import"./vendor-lezer-markdown-C6g-d6P3.js";import"./vendor-codemirror-language-data-DP_Bh3S8.js";import"./vendor-codemirror-lang-python-DVl8-2Op.js";import"./vendor-lezer-python-CvuFxeZl.js";import"./vendor-sonner-DFyL3AvE.js";import"./vendor-capacitor-core-B4EWRrHz.js";import"./vendor-cmdk-DgLInKvT.js";import"./vendor-radix-ui-react-dialog-B94Bt2qq.js";import"./vendor-radix-ui-primitive-Dc_FVRD7.js";import"./vendor-radix-ui-react-compose-refs-DcAh5WdT.js";import"./vendor-radix-ui-react-context-Czxm7Z62.js";import"./vendor-radix-ui-react-id-f5BLKEVw.js";import"./vendor-radix-ui-react-use-layout-effect-D_3IhJdJ.js";import"./vendor-radix-ui-react-use-controllable-state-BFT5YmkA.js";import"./vendor-radix-ui-react-dismissable-layer-D7kXcwgJ.js";import"./vendor-radix-ui-react-primitive-DhVoX9SD.js";import"./vendor-radix-ui-react-slot-BQgQOasS.js";import"./vendor-radix-ui-react-use-callback-ref-BZPnuXAC.js";import"./vendor-radix-ui-react-use-escape-keydown-oph88g-F.js";import"./vendor-radix-ui-react-focus-scope-CiaxW4dD.js";import"./vendor-radix-ui-react-portal-BMJYHWck.js";import"./vendor-radix-ui-react-presence-CNxf-uq4.js";import"./vendor-radix-ui-react-focus-guards-B6qJXYua.js";import"./vendor-react-remove-scroll-DO7dCTnK.js";import"./vendor-tslib-De9GV7Vy.js";import"./vendor-react-remove-scroll-bar-BcFYyj3E.js";import"./vendor-react-style-singleton-q6EMHnwf.js";import"./vendor-get-nonce-C-Z93AgS.js";import"./vendor-use-sidecar-zDC0RhA3.js";import"./vendor-use-callback-ref-D3RC8gqK.js";import"./vendor-aria-hidden-DvXkyWUv.js";import"./vendor-legendapp-list-D2O6oUGf.js";import"./vendor-tailwind-merge-CPcsbTWB.js";import"./vendor-fuse.js-Dw8P0qyA.js";import"./vendor-opencode-client-h8RufjAw.js";const f="\0",nt=({open:s,onOpenChange:u})=>{const{t:a}=w(),c=!1,[g,l]=t.useState(void 0),[x,j]=t.useState(void 0),[b,S]=t.useState(!1),[_,R]=t.useState(!1),[y,N]=t.useState(null),[O,V]=t.useState(!1);t.useCallback(async()=>{},[y,b,c,a]),t.useEffect(()=>{if(!s)return;let r=!1;return(async()=>{try{const o=await h("/api/system/info");if(o.ok){const n=await o.json();if(typeof n.openchamberVersion=="string"&&n.openchamberVersion.trim()){r||l(n.openchamberVersion);return}}}catch{}const i=await k().catch(()=>null);r||l(i)})(),()=>{r=!0}},[s]),t.useEffect(()=>{if(!s)return;let r=!1;return(async()=>{let i="";try{const o=await h("/api/opencode/upgrade-status",{headers:{Accept:"application/json"}});if(o.ok){const n=await o.json().catch(()=>null);i=typeof n?.currentVersion=="string"?n.currentVersion.trim():""}}catch{}r||j(i||null)})(),()=>{r=!0}},[s]),t.useEffect(()=>{{N(null),V(!1);return}},[s,c]);const d=(r,p)=>{if(p!==void 0)return e.jsx("p",{children:a(r,{version:p??a("settings.openchamber.about.state.unknown")})});const[i,o=""]=a(r,{version:f}).split(f);return e.jsxs("p",{className:"flex items-center justify-center",children:[e.jsx("span",{className:"whitespace-pre",children:i}),e.jsx(m,{name:"loader",className:"size-3.5 animate-spin"}),e.jsx("span",{className:"whitespace-pre",children:o})]})};return e.jsx(v,{open:s,onOpenChange:u,children:e.jsx(D,{className:"max-w-xs p-6",children:e.jsxs("div",{className:"flex flex-col items-center text-center space-y-4",children:[e.jsx(C,{width:64,height:64}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("h2",{className:"text-lg font-semibold",children:"OpenChamber"}),e.jsxs("div",{className:"space-y-0.5 typography-meta text-muted-foreground",children:[d("aboutDialog.openChamberVersionLabel",g),d("aboutDialog.openCodeVersionLabel",x)]})]}),c,e.jsxs("div",{className:"flex flex-col items-center gap-2 pt-2",children:[e.jsxs("div",{className:"flex items-center justify-center gap-4",children:[e.jsxs("a",{href:"https://github.com/openchamber/openchamber",target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1.5 typography-meta text-muted-foreground hover:text-foreground transition-colors",children:[e.jsx(m,{name:"github-fill",className:"h-4 w-4"}),e.jsx("span",{children:"GitHub"})]}),e.jsxs("a",{href:"https://discord.gg/ZYRSdnwwKA",target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1.5 typography-meta text-muted-foreground hover:text-foreground transition-colors",children:[e.jsx(m,{name:"discord-fill",className:"h-4 w-4"}),e.jsx("span",{children:"Discord"})]})]}),e.jsxs("a",{href:"https://x.com/openchamber_dev",target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1.5 typography-meta text-muted-foreground hover:text-foreground transition-colors",children:[e.jsx(m,{name:"twitter-xfill",className:"h-4 w-4"}),e.jsx("span",{children:"@openchamber_dev"})]})]}),e.jsx("p",{className:"typography-meta text-muted-foreground/60 pt-2",children:a("aboutDialog.footerNote")})]})})})};export{nt as AboutDialog};
@@ -1 +1 @@
1
- import{f as $e,R as Z,j as s}from"./vendor-react-BUCujlKS.js";import{u as Je,G as Ve,H as Qe,J as Xe,K as De,L as Ze,N as Pe,O as qe,B as Ye,I as oe,P as Ue,Q as et,T as tt,U as st,A as Ke,V as it,W as rt,X as ot}from"./useAppFontEffects-BZrjCfFw.js";import{e as nt,n as Ie,u as ke}from"./katex.min-u4DtE8E5.js";import{u as We}from"./vendor-zustand-BAGL70zf.js";import{S as lt}from"./runtimeEndpointReset-DcZoNIpr.js";import"./vendor-scheduler-7OC5HNn7.js";import"./vendor-base-ui-CPKyhvxM.js";import"./vendor-floating-ui-utils-D6FqdtJt.js";import"./vendor-floating-ui-dom-BTvzWks8.js";import"./vendor-floating-ui-core-PuGzNPnN.js";import"./vendor-floating-ui-react-dom-DxYCWdHj.js";import"./vendor-use-sync-external-store-D6wYuSt-.js";import"./vendor-zod-DDir2TeQ.js";import"./vendor-simplewebauthn-browser-VDA66rT_.js";import"./vendor-vite-runtime-DD1OZmLC.js";import"./vendor-class-variance-authority-5VPnzWs2.js";import"./vendor-clsx-B-dksMZM.js";import"./vendor-dnd-kit-core-BZknOX2w.js";import"./vendor-dnd-kit-utilities-B_MdXhJC.js";import"./vendor-dnd-kit-accessibility-BHxJPORy.js";import"./vendor-dnd-kit-sortable-CsEagZ81.js";import"./vendor-tanstack-react-virtual-Bmi0tTrf.js";import"./vendor-tanstack-virtual-core-CdGDGrnp.js";import"./vendor-framer-motion-DxDVhOLc.js";import"./vendor-motion-dom-HXPOMxb7.js";import"./vendor-motion-utils-BGh8QBgx.js";import"./vendor-codemirror-commands-dar6chwA.js";import"./vendor-codemirror-state-Dek9sMtw.js";import"./vendor-marijn-find-cluster-break-DXwl3gUT.js";import"./vendor-codemirror-view-B66jUSmE.js";import"./vendor-style-mod-NZ5MEPvj.js";import"./vendor-w3c-keyname-Vcq4gwWv.js";import"./vendor-crelt-C8TCjufn.js";import"./vendor-codemirror-language-DyL0aCoH.js";import"./vendor-lezer-common-B3-cUCR_.js";import"./vendor-lezer-highlight-CDMHUZ74.js";import"./vendor-codemirror-streamparser-CmlTsbN2.js";import"./vendor-codemirror-lang-javascript-Cem6LjJ8.js";import"./vendor-lezer-javascript-D7Tj24ot.js";import"./vendor-lezer-lr-bhwg1HMg.js";import"./vendor-codemirror-autocomplete-CIqXJolH.js";import"./vendor-codemirror-lang-json-C9rLLO0q.js";import"./vendor-lezer-json-Iaex0UN-.js";import"./vendor-codemirror-lang-css-9qjxcVkg.js";import"./vendor-lezer-css-C5xB6jxd.js";import"./vendor-codemirror-lang-html-D7VQUxeE.js";import"./vendor-lezer-html-C0I1p52t.js";import"./vendor-codemirror-lang-markdown-Cikh4w2I.js";import"./vendor-lezer-markdown-C6g-d6P3.js";import"./vendor-codemirror-language-data-DsRKCbVv.js";import"./vendor-codemirror-lang-python-DVl8-2Op.js";import"./vendor-lezer-python-CvuFxeZl.js";import"./vendor-sonner-DFyL3AvE.js";import"./vendor-capacitor-core-B4EWRrHz.js";import"./vendor-cmdk-DgLInKvT.js";import"./vendor-radix-ui-react-dialog-B94Bt2qq.js";import"./vendor-radix-ui-primitive-Dc_FVRD7.js";import"./vendor-radix-ui-react-compose-refs-DcAh5WdT.js";import"./vendor-radix-ui-react-context-Czxm7Z62.js";import"./vendor-radix-ui-react-id-f5BLKEVw.js";import"./vendor-radix-ui-react-use-layout-effect-D_3IhJdJ.js";import"./vendor-radix-ui-react-use-controllable-state-BFT5YmkA.js";import"./vendor-radix-ui-react-dismissable-layer-D7kXcwgJ.js";import"./vendor-radix-ui-react-primitive-DhVoX9SD.js";import"./vendor-radix-ui-react-slot-BQgQOasS.js";import"./vendor-radix-ui-react-use-callback-ref-BZPnuXAC.js";import"./vendor-radix-ui-react-use-escape-keydown-oph88g-F.js";import"./vendor-radix-ui-react-focus-scope-CiaxW4dD.js";import"./vendor-radix-ui-react-portal-BMJYHWck.js";import"./vendor-radix-ui-react-presence-CNxf-uq4.js";import"./vendor-radix-ui-react-focus-guards-B6qJXYua.js";import"./vendor-react-remove-scroll-DO7dCTnK.js";import"./vendor-tslib-De9GV7Vy.js";import"./vendor-react-remove-scroll-bar-BcFYyj3E.js";import"./vendor-react-style-singleton-q6EMHnwf.js";import"./vendor-get-nonce-C-Z93AgS.js";import"./vendor-use-sidecar-zDC0RhA3.js";import"./vendor-use-callback-ref-D3RC8gqK.js";import"./vendor-aria-hidden-DvXkyWUv.js";import"./vendor-legendapp-list-D2O6oUGf.js";import"./vendor-tailwind-merge-CPcsbTWB.js";import"./vendor-fuse.js-Dw8P0qyA.js";import"./vendor-opencode-client-h8RufjAw.js";const Ce=100,ze=i=>{const e=new Map;for(const p of i){if(!p.parentID)continue;const j=e.get(p.parentID);j?j.push(p):e.set(p.parentID,[p])}const c=[],x=new Set;for(const p of i){if(!p.parentID){c.push(p);continue}x.has(p.parentID)||(x.add(p.parentID),c.push(...e.get(p.parentID)??[]))}return c};function at(i){const e=$e.c(141),{layout:c,onLeave:x,initialQuery:p}=i,j=p===void 0?"":p,{t}=Je(),y=Ve(jt),Y=Ve(bt),Ae=nt(yt),_e=Qe(We(vt)),ee=Qe(We(gt)),S=Qe(xt),[w,Fe]=Z.useState(j),[d,He]=Z.useState(null),[Te,Le]=Z.useState(Ce),b=Xe(ht);let ne;e[0]===Symbol.for("react.memo_cache_sentinel")?(ne=[],e[0]=ne):ne=e[0],Z.useEffect(dt,ne);let le;e[1]!==Ae||e[2]!==b||e[3]!==t?(le=o=>{const n=b?.get(o);return n?n.name:o?st(o,Ae)||o:t("sessions.archivePage.otherProjects")},e[1]=Ae,e[2]=b,e[3]=t,e[4]=le):le=e[4];const C=le;let ae;e[5]!==w?(ae=w.trim().toLowerCase(),e[5]=w,e[6]=ae):ae=e[6];const u=ae;let ce;e[7]!==_e?(ce=[..._e].sort(mt),e[7]=_e,e[8]=ce):ce=e[8];const m=ce;let te;if(e[9]!==ee){te=new Map;for(let o=0;o<ee.length;o=o+2,o)te.set(ee[o],ee[o+1]);e[9]=ee,e[10]=te}else te=e[10];const Oe=te;let pe;e[11]!==Oe||e[12]!==t?(pe=(o,n)=>{const l=o[n]?.parentID;return!l||o[n-1]?.parentID===l?null:Oe.get(l)||t("sessions.sidebar.session.untitled")},e[11]=Oe,e[12]=t,e[13]=pe):pe=e[13];const ue=pe;let me;if(e[14]!==C||e[15]!==m||e[16]!==b){const o=new Map;for(const n of m){const l=Ie(De(n))??"",g=o.get(l);if(g){g.sessions.push(n);continue}o.set(l,{directory:l,label:C(l),sessions:[n],fromDeletedSpace:b?.has(l)??!1})}me=[...o.values()].sort(ut),e[14]=C,e[15]=m,e[16]=b,e[17]=me}else me=e[17];const D=me;let se;e:{if(u){if(u.startsWith("ses_")){let l;if(e[18]!==u||e[19]!==m){let g;e[21]!==u?(g=fe=>fe.id.toLowerCase()===u,e[21]=u,e[22]=g):g=e[22],l=m.filter(g),e[18]=u,e[19]=m,e[20]=l}else l=e[20];se=l;break e}let n;e[23]!==u||e[24]!==m?(n=ze(Ze(m,u,pt)),e[23]=u,e[24]=m,e[25]=n):n=e[25],se=n;break e}if(d===null){let n;e[26]!==m?(n=ze(m),e[26]=m,e[27]=n):n=e[27],se=n;break e}let o;e[28]!==D||e[29]!==d?(o=ze(D.find(n=>n.directory===d)?.sessions??[]),e[28]=D,e[29]=d,e[30]=o):o=e[30],se=o}const N=se;let A,T,L,O,P,B,I,E,M,Q;if(e[31]!==D||e[32]!==N||e[33]!==C||e[34]!==c||e[35]!==u||e[36]!==x||e[37]!==ue||e[38]!==w||e[39]!==d||e[40]!==S||e[41]!==y||e[42]!==m.length||e[43]!==b||e[44]!==t||e[45]!==Y||e[46]!==Te){M=Symbol.for("react.early_return_sentinel");e:{const o=N.slice(0,Te),n=N.length-o.length,l=m.length;let g;e[57]===Symbol.for("react.memo_cache_sentinel")?(g=r=>{He(r),Le(Ce)},e[57]=g):g=e[57];const fe=g;let he;e[58]!==x||e[59]!==y?(he=r=>{const a=Ie(De(r));y(r.id,a??void 0),x()},e[58]=x,e[59]=y,e[60]=he):he=e[60];const Be=he;let xe;e[61]!==t||e[62]!==Y?(xe=r=>{Y(r.id).then(a=>{a?Ke.success(t("sessions.sidebar.session.restore.success")):Ke.error(t("sessions.sidebar.session.restore.error"))})},e[61]=t,e[62]=Y,e[63]=xe):xe=e[63];const Re=xe;let ge;e[64]===Symbol.for("react.memo_cache_sentinel")?(ge=r=>{Fe(r),Le(Ce)},e[64]=ge):ge=e[64];const Ee=c==="mobile";let q;e[65]!==t?(q=t("sessions.archivePage.searchPlaceholder"),e[65]=t,e[66]=q):q=e[66];let U;e[67]!==t?(U=t("sessions.sidebar.header.search.clear"),e[67]=t,e[68]=U):U=e[68];let ve;e[69]!==w||e[70]!==Ee||e[71]!==q||e[72]!==U?(ve=s.jsx(lt,{value:w,onSearch:ge,mobile:Ee,placeholder:q,clearLabel:U}),e[69]=w,e[70]=Ee,e[71]=q,e[72]=U,e[73]=ve):ve=e[73];const K=ve;let ye;e[74]!==N.length||e[75]!==t?(ye=N.length===1?t("sessions.archivePage.countSingle",{count:N.length}):t("sessions.archivePage.countPlural",{count:N.length}),e[74]=N.length,e[75]=t,e[76]=ye):ye=e[76];const W=ye;let be;e[77]!==u||e[78]!==S||e[79]!==t||e[80]!==l?(be=()=>t(l===0&&S==="error"?"sessions.sidebar.group.empty.loadFailed":l===0&&S!=="ready"?"sessions.sidebar.group.empty.loadingSessions":u?"sessions.archivePage.empty.noMatches":"sessions.archivePage.empty.noArchived"),e[77]=u,e[78]=S,e[79]=t,e[80]=l,e[81]=be):be=e[81];const Me=be;let $;e[82]!==Me?($=Me(),e[82]=Me,e[83]=$):$=e[83];let je;e[84]!==$?(je=s.jsx("div",{className:"py-10 text-center text-muted-foreground",children:s.jsx("p",{className:"typography-ui-label font-semibold",children:$})}),e[84]=$,e[85]=je):je=e[85];const Ge=je;let Se;if(e[86]!==c||e[87]!==n||e[88]!==t?(Se=n>0?s.jsx("button",{type:"button",onClick:()=>Le(ct),className:Pe("flex items-center justify-start rounded-md text-start text-muted-foreground/70 leading-tight hover:text-foreground hover:underline",c==="mobile"?"min-h-10 px-3 typography-micro":"mt-1 px-2 py-1 text-xs"),children:t("sessions.sidebar.group.showMore")}):null,e[86]=c,e[87]=n,e[88]=t,e[89]=Se):Se=e[89],A=Se,c==="mobile"){let r;e[90]!==W||e[91]!==S||e[92]!==l?(r=l>0||S==="ready"?s.jsx("p",{className:"px-1 typography-micro text-muted-foreground",children:W}):null,e[90]=W,e[91]=S,e[92]=l,e[93]=r):r=e[93];let a;e[94]!==K||e[95]!==r?(a=s.jsxs("div",{className:"shrink-0 space-y-1.5 px-3 pt-3",children:[K,r]}),e[94]=K,e[95]=r,e[96]=a):a=e[96];let v;e[97]===Symbol.for("react.memo_cache_sentinel")?(v={paddingBottom:"calc(0.5rem + var(--oc-safe-area-bottom, 0px))"},e[97]=v):v=e[97],M=s.jsxs("div",{className:"flex h-full min-h-0 flex-col",children:[a,s.jsxs("div",{className:"min-h-0 flex-1 overflow-y-auto pt-1",style:v,children:[o.length===0?Ge:o.map((f,ie)=>{const _=Ie(De(f))??"",h=f.title||t("sessions.sidebar.session.untitled"),we=!(b?.has(_)??!1),re=ue(o,ie);return s.jsxs(Z.Fragment,{children:[re?s.jsx("p",{dir:"auto",className:"truncate oc-ui-start-align px-4 pt-2 typography-micro text-muted-foreground",children:re}):null,s.jsxs("div",{className:"flex items-center pe-1.5",children:[s.jsx("button",{type:"button",className:Pe("flex min-h-10 min-w-0 flex-1 items-center py-1 pe-2 text-start focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset",f.parentID?"ps-7":"ps-4"),style:{touchAction:"manipulation"},onClick:()=>Be(f),children:s.jsxs("span",{className:"flex min-w-0 flex-1 flex-col",children:[s.jsx("span",{dir:"auto",className:"block truncate oc-ui-start-align typography-ui-label text-foreground",children:h}),s.jsxs("span",{className:"flex items-center gap-2.5 typography-micro text-muted-foreground",children:[s.jsx("span",{className:"block min-w-0 flex-1 truncate",children:C(_)}),s.jsx("span",{className:"shrink-0 tabular-nums",children:qe(f.time?.archived??f.time?.updated??f.time?.created??Date.now())})]})]})}),we?s.jsx(Ye,{type:"button",variant:"ghost",size:"lg",className:"w-10 shrink-0 px-0 text-muted-foreground",onClick:()=>Re(f),"aria-label":t("sessions.archivePage.restoreSessionAria",{title:h}),style:{touchAction:"manipulation"},children:s.jsx(oe,{name:"inbox-unarchive",className:"size-5"})}):null]})]},f.id)}),A]})]});break e}let Ne;e[98]!==t?(Ne=(r,a,v,f,ie,_,h,we)=>{const re=we===void 0?!1:we;return s.jsxs("div",{className:"group/dir relative",children:[s.jsxs("button",{type:"button",onClick:ie,title:re?t("spaces.archive.groupTitle",{name:a}):_,className:Pe("flex w-full min-w-0 items-center gap-2 rounded-md px-2 py-1.5 text-start typography-ui-label transition-[padding] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",h?"group-hover/dir:pe-8 group-focus-within/dir:pe-8":"",f?"bg-interactive-selection text-foreground":"text-muted-foreground hover:bg-interactive-hover/50 hover:text-foreground"),children:[re?s.jsx(oe,{name:"box-3",className:"h-3.5 w-3.5 flex-shrink-0"}):null,s.jsx("span",{className:"min-w-0 flex-1 truncate",children:a}),s.jsx("span",{className:"flex-shrink-0 typography-micro text-muted-foreground/70",children:v})]}),h?s.jsxs(it,{children:[s.jsx(rt,{asChild:!0,children:s.jsx("button",{type:"button",onClick:()=>Ue.requestDelete({sessions:h,mode:"session"}),className:"absolute inset-e-1 top-1/2 inline-flex h-6 w-6 -translate-y-1/2 items-center justify-center rounded-md text-muted-foreground opacity-0 transition-opacity hover:text-destructive group-hover/dir:opacity-100 focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring","aria-label":t("sessions.archivePage.deleteProjectAria",{label:a}),children:s.jsx(oe,{name:"delete-bin",className:"h-3.5 w-3.5"})})}),s.jsx(ot,{side:"bottom",sideOffset:4,children:t("sessions.archivePage.deleteProject")})]}):null]},r)},e[98]=t,e[99]=Ne):Ne=e[99];const k=Ne;E="absolute inset-0 z-10 flex flex-col bg-background",B="flex min-h-0 flex-1";let F;if(e[100]!==k||e[101]!==d||e[102]!==t||e[103]!==l){let r;e[105]===Symbol.for("react.memo_cache_sentinel")?(r=()=>fe(null),e[105]=r):r=e[105],F=k("__all__",t("sessions.archivePage.allDirectories"),l,d===null,r),e[100]=k,e[101]=d,e[102]=t,e[103]=l,e[104]=F}else F=e[104];let H;if(e[106]!==D||e[107]!==k||e[108]!==d){let r;e[110]!==k||e[111]!==d?(r=a=>k(a.directory||"__none__",a.label,a.sessions.length,d===a.directory,()=>fe(a.directory),a.directory||void 0,a.sessions,a.fromDeletedSpace),e[110]=k,e[111]=d,e[112]=r):r=e[112],H=D.map(r),e[106]=D,e[107]=k,e[108]=d,e[109]=H}else H=e[109];e[113]!==F||e[114]!==H?(I=s.jsx("div",{className:"flex w-64 flex-shrink-0 flex-col border-e border-border/50",children:s.jsxs("div",{className:"flex-1 space-y-0.5 overflow-y-auto p-2",children:[F,H]})}),e[113]=F,e[114]=H,e[115]=I):I=e[115],O="flex min-w-0 flex-1 flex-col";let J;e[116]!==K?(J=s.jsx("div",{className:"min-w-0 flex-1",children:K}),e[116]=K,e[117]=J):J=e[117];let X;e[118]!==W?(X=s.jsx("span",{className:"flex h-8 flex-shrink-0 items-center self-start typography-micro text-muted-foreground",children:W}),e[118]=W,e[119]=X):X=e[119],e[120]!==J||e[121]!==X?(P=s.jsxs("div",{className:"flex items-center gap-3 px-6 pt-3",children:[J,X]}),e[120]=J,e[121]=X,e[122]=P):P=e[122],L="min-h-0 flex-1 overflow-y-auto px-6 py-3",Q="mx-auto w-full max-w-3xl space-y-0.5",T=o.length===0?Ge:o.map((r,a)=>{const v=Ie(De(r))??"",f=v?C(v):null,ie=!(b?.has(v)??!1),_=ue(o,a);return s.jsxs(Z.Fragment,{children:[_?s.jsx("p",{dir:"auto",className:"truncate oc-ui-start-align px-2 pt-2 typography-micro text-muted-foreground",children:_}):null,s.jsxs("div",{className:Pe("group relative flex cursor-pointer items-center gap-3 rounded-md py-1 pe-2 transition-[padding] hover:bg-interactive-hover/40 hover:pe-14 focus-within:pe-14",r.parentID?"ps-6":"ps-2"),onClick:()=>Be(r),role:"button",tabIndex:0,onKeyDown:h=>{(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),Be(r))},children:[s.jsx("span",{dir:"auto",className:"min-w-0 flex-1 truncate oc-ui-start-align typography-ui-label text-foreground",children:r.title||t("sessions.sidebar.session.untitled")}),u&&f?s.jsx("span",{className:"max-w-40 flex-shrink-0 truncate text-[0.72rem] text-muted-foreground/70",title:v,children:f}):null,s.jsx("span",{className:"flex-shrink-0 text-[0.72rem] text-muted-foreground/75",children:qe(r.time?.archived??r.time?.updated??r.time?.created??Date.now())}),ie?s.jsx("button",{type:"button",onClick:h=>{h.stopPropagation(),Re(r)},className:"absolute inset-e-7 top-1/2 inline-flex h-6 w-6 -translate-y-1/2 items-center justify-center rounded-md text-muted-foreground opacity-0 transition-opacity pointer-events-none hover:text-foreground group-hover:opacity-100 group-hover:pointer-events-auto focus-visible:opacity-100 focus-visible:pointer-events-auto focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring","aria-label":t("sessions.archivePage.restoreSessionAria",{title:r.title||t("sessions.sidebar.session.untitled")}),children:s.jsx(oe,{name:"inbox-unarchive",className:"h-3.5 w-3.5"})}):null,s.jsx("button",{type:"button",onClick:h=>{h.stopPropagation(),Ue.requestDelete({sessions:[r],mode:"session"})},className:"absolute inset-e-1 top-1/2 inline-flex h-6 w-6 -translate-y-1/2 items-center justify-center rounded-md text-muted-foreground opacity-0 transition-opacity pointer-events-none hover:text-destructive group-hover:opacity-100 group-hover:pointer-events-auto focus-visible:opacity-100 focus-visible:pointer-events-auto focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring","aria-label":t("sessions.archivePage.deleteSessionAria",{title:r.title||t("sessions.sidebar.session.untitled")}),children:s.jsx(oe,{name:"delete-bin",className:"h-3.5 w-3.5"})})]})]},r.id)})}e[31]=D,e[32]=N,e[33]=C,e[34]=c,e[35]=u,e[36]=x,e[37]=ue,e[38]=w,e[39]=d,e[40]=S,e[41]=y,e[42]=m.length,e[43]=b,e[44]=t,e[45]=Y,e[46]=Te,e[47]=A,e[48]=T,e[49]=L,e[50]=O,e[51]=P,e[52]=B,e[53]=I,e[54]=E,e[55]=M,e[56]=Q}else A=e[47],T=e[48],L=e[49],O=e[50],P=e[51],B=e[52],I=e[53],E=e[54],M=e[55],Q=e[56];if(M!==Symbol.for("react.early_return_sentinel"))return M;let z;e[123]!==A||e[124]!==T||e[125]!==Q?(z=s.jsxs("div",{className:Q,children:[T,A]}),e[123]=A,e[124]=T,e[125]=Q,e[126]=z):z=e[126];let R;e[127]!==L||e[128]!==z?(R=s.jsx("div",{className:L,children:z}),e[127]=L,e[128]=z,e[129]=R):R=e[129];let G;e[130]!==O||e[131]!==P||e[132]!==R?(G=s.jsxs("div",{className:O,children:[P,R]}),e[130]=O,e[131]=P,e[132]=R,e[133]=G):G=e[133];let V;e[134]!==B||e[135]!==I||e[136]!==G?(V=s.jsxs("div",{className:B,children:[I,G]}),e[134]=B,e[135]=I,e[136]=G,e[137]=V):V=e[137];let de;return e[138]!==E||e[139]!==V?(de=s.jsx("div",{className:E,children:V}),e[138]=E,e[139]=V,e[140]=de):de=e[140],de}function ct(i){return i+Ce}function pt(i){return[i.title]}function ut(i,e){return e.sessions.length-i.sessions.length}function mt(i,e){return(e.time?.archived??0)-(i.time?.archived??0)}function dt(){et().catch(ft)}function ft(){}function ht(i){return i.byDirectory}function xt(i){return i.status}function gt(i){return i.archivedSessions.flatMap(e=>{const c=e.parentID?i.entityById.get(e.parentID):void 0;return c?[c.id,c.title]:[]})}function vt(i){return i.archivedSessions.filter(e=>tt(e,i.entityById))}function yt(i){return i.homeDirectory}function bt(i){return i.unarchiveSession}function jt(i){return i.setCurrentSession}function ti(){const i=$e.c(6),e=ke(Dt),c=ke(wt),x=ke(Nt),p=ke(St);let j;i[0]!==p?(j=()=>p(!1),i[0]=p,i[1]=j):j=i[1];const t=j;if(!e)return null;let y;return i[2]!==c||i[3]!==t||i[4]!==x?(y=s.jsx(at,{layout:"page",onLeave:t,initialQuery:c},x),i[2]=c,i[3]=t,i[4]=x,i[5]=y):y=i[5],y}function St(i){return i.setArchivePageOpen}function Nt(i){return i.archivePageOpenCount}function wt(i){return i.archivePageSearch}function Dt(i){return i.isArchivePageOpen}export{at as ArchiveSessionsView,ti as ArchiveView};
1
+ import{f as $e,R as Z,j as s}from"./vendor-react-BUCujlKS.js";import{u as Je,G as Ve,H as Qe,J as Xe,K as De,L as Ze,N as Pe,O as qe,B as Ye,I as oe,P as Ue,Q as et,T as tt,U as st,A as Ke,V as it,W as rt,X as ot}from"./useAppFontEffects-d9vsRNKm.js";import{e as nt,n as Ie,u as ke}from"./katex.min-u4DtE8E5.js";import{u as We}from"./vendor-zustand-BAGL70zf.js";import{S as lt}from"./runtimeEndpointReset-BJUtkqal.js";import"./vendor-scheduler-7OC5HNn7.js";import"./vendor-base-ui-CPKyhvxM.js";import"./vendor-floating-ui-utils-D6FqdtJt.js";import"./vendor-floating-ui-dom-BTvzWks8.js";import"./vendor-floating-ui-core-PuGzNPnN.js";import"./vendor-floating-ui-react-dom-DxYCWdHj.js";import"./vendor-use-sync-external-store-D6wYuSt-.js";import"./vendor-zod-DDir2TeQ.js";import"./vendor-simplewebauthn-browser-VDA66rT_.js";import"./vendor-vite-runtime-DD1OZmLC.js";import"./vendor-class-variance-authority-5VPnzWs2.js";import"./vendor-clsx-B-dksMZM.js";import"./vendor-dnd-kit-core-BZknOX2w.js";import"./vendor-dnd-kit-utilities-B_MdXhJC.js";import"./vendor-dnd-kit-accessibility-BHxJPORy.js";import"./vendor-dnd-kit-sortable-CsEagZ81.js";import"./vendor-tanstack-react-virtual-Bmi0tTrf.js";import"./vendor-tanstack-virtual-core-CdGDGrnp.js";import"./vendor-framer-motion-DxDVhOLc.js";import"./vendor-motion-dom-HXPOMxb7.js";import"./vendor-motion-utils-BGh8QBgx.js";import"./vendor-codemirror-commands-dar6chwA.js";import"./vendor-codemirror-state-Dek9sMtw.js";import"./vendor-marijn-find-cluster-break-DXwl3gUT.js";import"./vendor-codemirror-view-B66jUSmE.js";import"./vendor-style-mod-NZ5MEPvj.js";import"./vendor-w3c-keyname-Vcq4gwWv.js";import"./vendor-crelt-C8TCjufn.js";import"./vendor-codemirror-language-DyL0aCoH.js";import"./vendor-lezer-common-B3-cUCR_.js";import"./vendor-lezer-highlight-CDMHUZ74.js";import"./vendor-codemirror-streamparser-CmlTsbN2.js";import"./vendor-codemirror-lang-javascript-Cem6LjJ8.js";import"./vendor-lezer-javascript-D7Tj24ot.js";import"./vendor-lezer-lr-bhwg1HMg.js";import"./vendor-codemirror-autocomplete-CIqXJolH.js";import"./vendor-codemirror-lang-json-C9rLLO0q.js";import"./vendor-lezer-json-Iaex0UN-.js";import"./vendor-codemirror-lang-css-9qjxcVkg.js";import"./vendor-lezer-css-C5xB6jxd.js";import"./vendor-codemirror-lang-html-D7VQUxeE.js";import"./vendor-lezer-html-C0I1p52t.js";import"./vendor-codemirror-lang-markdown-Cikh4w2I.js";import"./vendor-lezer-markdown-C6g-d6P3.js";import"./vendor-codemirror-language-data-DP_Bh3S8.js";import"./vendor-codemirror-lang-python-DVl8-2Op.js";import"./vendor-lezer-python-CvuFxeZl.js";import"./vendor-sonner-DFyL3AvE.js";import"./vendor-capacitor-core-B4EWRrHz.js";import"./vendor-cmdk-DgLInKvT.js";import"./vendor-radix-ui-react-dialog-B94Bt2qq.js";import"./vendor-radix-ui-primitive-Dc_FVRD7.js";import"./vendor-radix-ui-react-compose-refs-DcAh5WdT.js";import"./vendor-radix-ui-react-context-Czxm7Z62.js";import"./vendor-radix-ui-react-id-f5BLKEVw.js";import"./vendor-radix-ui-react-use-layout-effect-D_3IhJdJ.js";import"./vendor-radix-ui-react-use-controllable-state-BFT5YmkA.js";import"./vendor-radix-ui-react-dismissable-layer-D7kXcwgJ.js";import"./vendor-radix-ui-react-primitive-DhVoX9SD.js";import"./vendor-radix-ui-react-slot-BQgQOasS.js";import"./vendor-radix-ui-react-use-callback-ref-BZPnuXAC.js";import"./vendor-radix-ui-react-use-escape-keydown-oph88g-F.js";import"./vendor-radix-ui-react-focus-scope-CiaxW4dD.js";import"./vendor-radix-ui-react-portal-BMJYHWck.js";import"./vendor-radix-ui-react-presence-CNxf-uq4.js";import"./vendor-radix-ui-react-focus-guards-B6qJXYua.js";import"./vendor-react-remove-scroll-DO7dCTnK.js";import"./vendor-tslib-De9GV7Vy.js";import"./vendor-react-remove-scroll-bar-BcFYyj3E.js";import"./vendor-react-style-singleton-q6EMHnwf.js";import"./vendor-get-nonce-C-Z93AgS.js";import"./vendor-use-sidecar-zDC0RhA3.js";import"./vendor-use-callback-ref-D3RC8gqK.js";import"./vendor-aria-hidden-DvXkyWUv.js";import"./vendor-legendapp-list-D2O6oUGf.js";import"./vendor-tailwind-merge-CPcsbTWB.js";import"./vendor-fuse.js-Dw8P0qyA.js";import"./vendor-opencode-client-h8RufjAw.js";const Ce=100,ze=i=>{const e=new Map;for(const p of i){if(!p.parentID)continue;const j=e.get(p.parentID);j?j.push(p):e.set(p.parentID,[p])}const c=[],x=new Set;for(const p of i){if(!p.parentID){c.push(p);continue}x.has(p.parentID)||(x.add(p.parentID),c.push(...e.get(p.parentID)??[]))}return c};function at(i){const e=$e.c(141),{layout:c,onLeave:x,initialQuery:p}=i,j=p===void 0?"":p,{t}=Je(),y=Ve(jt),Y=Ve(bt),Ae=nt(yt),_e=Qe(We(vt)),ee=Qe(We(gt)),S=Qe(xt),[w,Fe]=Z.useState(j),[d,He]=Z.useState(null),[Te,Le]=Z.useState(Ce),b=Xe(ht);let ne;e[0]===Symbol.for("react.memo_cache_sentinel")?(ne=[],e[0]=ne):ne=e[0],Z.useEffect(dt,ne);let le;e[1]!==Ae||e[2]!==b||e[3]!==t?(le=o=>{const n=b?.get(o);return n?n.name:o?st(o,Ae)||o:t("sessions.archivePage.otherProjects")},e[1]=Ae,e[2]=b,e[3]=t,e[4]=le):le=e[4];const C=le;let ae;e[5]!==w?(ae=w.trim().toLowerCase(),e[5]=w,e[6]=ae):ae=e[6];const u=ae;let ce;e[7]!==_e?(ce=[..._e].sort(mt),e[7]=_e,e[8]=ce):ce=e[8];const m=ce;let te;if(e[9]!==ee){te=new Map;for(let o=0;o<ee.length;o=o+2,o)te.set(ee[o],ee[o+1]);e[9]=ee,e[10]=te}else te=e[10];const Oe=te;let pe;e[11]!==Oe||e[12]!==t?(pe=(o,n)=>{const l=o[n]?.parentID;return!l||o[n-1]?.parentID===l?null:Oe.get(l)||t("sessions.sidebar.session.untitled")},e[11]=Oe,e[12]=t,e[13]=pe):pe=e[13];const ue=pe;let me;if(e[14]!==C||e[15]!==m||e[16]!==b){const o=new Map;for(const n of m){const l=Ie(De(n))??"",g=o.get(l);if(g){g.sessions.push(n);continue}o.set(l,{directory:l,label:C(l),sessions:[n],fromDeletedSpace:b?.has(l)??!1})}me=[...o.values()].sort(ut),e[14]=C,e[15]=m,e[16]=b,e[17]=me}else me=e[17];const D=me;let se;e:{if(u){if(u.startsWith("ses_")){let l;if(e[18]!==u||e[19]!==m){let g;e[21]!==u?(g=fe=>fe.id.toLowerCase()===u,e[21]=u,e[22]=g):g=e[22],l=m.filter(g),e[18]=u,e[19]=m,e[20]=l}else l=e[20];se=l;break e}let n;e[23]!==u||e[24]!==m?(n=ze(Ze(m,u,pt)),e[23]=u,e[24]=m,e[25]=n):n=e[25],se=n;break e}if(d===null){let n;e[26]!==m?(n=ze(m),e[26]=m,e[27]=n):n=e[27],se=n;break e}let o;e[28]!==D||e[29]!==d?(o=ze(D.find(n=>n.directory===d)?.sessions??[]),e[28]=D,e[29]=d,e[30]=o):o=e[30],se=o}const N=se;let A,T,L,O,P,B,I,E,M,Q;if(e[31]!==D||e[32]!==N||e[33]!==C||e[34]!==c||e[35]!==u||e[36]!==x||e[37]!==ue||e[38]!==w||e[39]!==d||e[40]!==S||e[41]!==y||e[42]!==m.length||e[43]!==b||e[44]!==t||e[45]!==Y||e[46]!==Te){M=Symbol.for("react.early_return_sentinel");e:{const o=N.slice(0,Te),n=N.length-o.length,l=m.length;let g;e[57]===Symbol.for("react.memo_cache_sentinel")?(g=r=>{He(r),Le(Ce)},e[57]=g):g=e[57];const fe=g;let he;e[58]!==x||e[59]!==y?(he=r=>{const a=Ie(De(r));y(r.id,a??void 0),x()},e[58]=x,e[59]=y,e[60]=he):he=e[60];const Be=he;let xe;e[61]!==t||e[62]!==Y?(xe=r=>{Y(r.id).then(a=>{a?Ke.success(t("sessions.sidebar.session.restore.success")):Ke.error(t("sessions.sidebar.session.restore.error"))})},e[61]=t,e[62]=Y,e[63]=xe):xe=e[63];const Re=xe;let ge;e[64]===Symbol.for("react.memo_cache_sentinel")?(ge=r=>{Fe(r),Le(Ce)},e[64]=ge):ge=e[64];const Ee=c==="mobile";let q;e[65]!==t?(q=t("sessions.archivePage.searchPlaceholder"),e[65]=t,e[66]=q):q=e[66];let U;e[67]!==t?(U=t("sessions.sidebar.header.search.clear"),e[67]=t,e[68]=U):U=e[68];let ve;e[69]!==w||e[70]!==Ee||e[71]!==q||e[72]!==U?(ve=s.jsx(lt,{value:w,onSearch:ge,mobile:Ee,placeholder:q,clearLabel:U}),e[69]=w,e[70]=Ee,e[71]=q,e[72]=U,e[73]=ve):ve=e[73];const K=ve;let ye;e[74]!==N.length||e[75]!==t?(ye=N.length===1?t("sessions.archivePage.countSingle",{count:N.length}):t("sessions.archivePage.countPlural",{count:N.length}),e[74]=N.length,e[75]=t,e[76]=ye):ye=e[76];const W=ye;let be;e[77]!==u||e[78]!==S||e[79]!==t||e[80]!==l?(be=()=>t(l===0&&S==="error"?"sessions.sidebar.group.empty.loadFailed":l===0&&S!=="ready"?"sessions.sidebar.group.empty.loadingSessions":u?"sessions.archivePage.empty.noMatches":"sessions.archivePage.empty.noArchived"),e[77]=u,e[78]=S,e[79]=t,e[80]=l,e[81]=be):be=e[81];const Me=be;let $;e[82]!==Me?($=Me(),e[82]=Me,e[83]=$):$=e[83];let je;e[84]!==$?(je=s.jsx("div",{className:"py-10 text-center text-muted-foreground",children:s.jsx("p",{className:"typography-ui-label font-semibold",children:$})}),e[84]=$,e[85]=je):je=e[85];const Ge=je;let Se;if(e[86]!==c||e[87]!==n||e[88]!==t?(Se=n>0?s.jsx("button",{type:"button",onClick:()=>Le(ct),className:Pe("flex items-center justify-start rounded-md text-start text-muted-foreground/70 leading-tight hover:text-foreground hover:underline",c==="mobile"?"min-h-10 px-3 typography-micro":"mt-1 px-2 py-1 text-xs"),children:t("sessions.sidebar.group.showMore")}):null,e[86]=c,e[87]=n,e[88]=t,e[89]=Se):Se=e[89],A=Se,c==="mobile"){let r;e[90]!==W||e[91]!==S||e[92]!==l?(r=l>0||S==="ready"?s.jsx("p",{className:"px-1 typography-micro text-muted-foreground",children:W}):null,e[90]=W,e[91]=S,e[92]=l,e[93]=r):r=e[93];let a;e[94]!==K||e[95]!==r?(a=s.jsxs("div",{className:"shrink-0 space-y-1.5 px-3 pt-3",children:[K,r]}),e[94]=K,e[95]=r,e[96]=a):a=e[96];let v;e[97]===Symbol.for("react.memo_cache_sentinel")?(v={paddingBottom:"calc(0.5rem + var(--oc-safe-area-bottom, 0px))"},e[97]=v):v=e[97],M=s.jsxs("div",{className:"flex h-full min-h-0 flex-col",children:[a,s.jsxs("div",{className:"min-h-0 flex-1 overflow-y-auto pt-1",style:v,children:[o.length===0?Ge:o.map((f,ie)=>{const _=Ie(De(f))??"",h=f.title||t("sessions.sidebar.session.untitled"),we=!(b?.has(_)??!1),re=ue(o,ie);return s.jsxs(Z.Fragment,{children:[re?s.jsx("p",{dir:"auto",className:"truncate oc-ui-start-align px-4 pt-2 typography-micro text-muted-foreground",children:re}):null,s.jsxs("div",{className:"flex items-center pe-1.5",children:[s.jsx("button",{type:"button",className:Pe("flex min-h-10 min-w-0 flex-1 items-center py-1 pe-2 text-start focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset",f.parentID?"ps-7":"ps-4"),style:{touchAction:"manipulation"},onClick:()=>Be(f),children:s.jsxs("span",{className:"flex min-w-0 flex-1 flex-col",children:[s.jsx("span",{dir:"auto",className:"block truncate oc-ui-start-align typography-ui-label text-foreground",children:h}),s.jsxs("span",{className:"flex items-center gap-2.5 typography-micro text-muted-foreground",children:[s.jsx("span",{className:"block min-w-0 flex-1 truncate",children:C(_)}),s.jsx("span",{className:"shrink-0 tabular-nums",children:qe(f.time?.archived??f.time?.updated??f.time?.created??Date.now())})]})]})}),we?s.jsx(Ye,{type:"button",variant:"ghost",size:"lg",className:"w-10 shrink-0 px-0 text-muted-foreground",onClick:()=>Re(f),"aria-label":t("sessions.archivePage.restoreSessionAria",{title:h}),style:{touchAction:"manipulation"},children:s.jsx(oe,{name:"inbox-unarchive",className:"size-5"})}):null]})]},f.id)}),A]})]});break e}let Ne;e[98]!==t?(Ne=(r,a,v,f,ie,_,h,we)=>{const re=we===void 0?!1:we;return s.jsxs("div",{className:"group/dir relative",children:[s.jsxs("button",{type:"button",onClick:ie,title:re?t("spaces.archive.groupTitle",{name:a}):_,className:Pe("flex w-full min-w-0 items-center gap-2 rounded-md px-2 py-1.5 text-start typography-ui-label transition-[padding] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",h?"group-hover/dir:pe-8 group-focus-within/dir:pe-8":"",f?"bg-interactive-selection text-foreground":"text-muted-foreground hover:bg-interactive-hover/50 hover:text-foreground"),children:[re?s.jsx(oe,{name:"box-3",className:"h-3.5 w-3.5 flex-shrink-0"}):null,s.jsx("span",{className:"min-w-0 flex-1 truncate",children:a}),s.jsx("span",{className:"flex-shrink-0 typography-micro text-muted-foreground/70",children:v})]}),h?s.jsxs(it,{children:[s.jsx(rt,{asChild:!0,children:s.jsx("button",{type:"button",onClick:()=>Ue.requestDelete({sessions:h,mode:"session"}),className:"absolute inset-e-1 top-1/2 inline-flex h-6 w-6 -translate-y-1/2 items-center justify-center rounded-md text-muted-foreground opacity-0 transition-opacity hover:text-destructive group-hover/dir:opacity-100 focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring","aria-label":t("sessions.archivePage.deleteProjectAria",{label:a}),children:s.jsx(oe,{name:"delete-bin",className:"h-3.5 w-3.5"})})}),s.jsx(ot,{side:"bottom",sideOffset:4,children:t("sessions.archivePage.deleteProject")})]}):null]},r)},e[98]=t,e[99]=Ne):Ne=e[99];const k=Ne;E="absolute inset-0 z-10 flex flex-col bg-background",B="flex min-h-0 flex-1";let F;if(e[100]!==k||e[101]!==d||e[102]!==t||e[103]!==l){let r;e[105]===Symbol.for("react.memo_cache_sentinel")?(r=()=>fe(null),e[105]=r):r=e[105],F=k("__all__",t("sessions.archivePage.allDirectories"),l,d===null,r),e[100]=k,e[101]=d,e[102]=t,e[103]=l,e[104]=F}else F=e[104];let H;if(e[106]!==D||e[107]!==k||e[108]!==d){let r;e[110]!==k||e[111]!==d?(r=a=>k(a.directory||"__none__",a.label,a.sessions.length,d===a.directory,()=>fe(a.directory),a.directory||void 0,a.sessions,a.fromDeletedSpace),e[110]=k,e[111]=d,e[112]=r):r=e[112],H=D.map(r),e[106]=D,e[107]=k,e[108]=d,e[109]=H}else H=e[109];e[113]!==F||e[114]!==H?(I=s.jsx("div",{className:"flex w-64 flex-shrink-0 flex-col border-e border-border/50",children:s.jsxs("div",{className:"flex-1 space-y-0.5 overflow-y-auto p-2",children:[F,H]})}),e[113]=F,e[114]=H,e[115]=I):I=e[115],O="flex min-w-0 flex-1 flex-col";let J;e[116]!==K?(J=s.jsx("div",{className:"min-w-0 flex-1",children:K}),e[116]=K,e[117]=J):J=e[117];let X;e[118]!==W?(X=s.jsx("span",{className:"flex h-8 flex-shrink-0 items-center self-start typography-micro text-muted-foreground",children:W}),e[118]=W,e[119]=X):X=e[119],e[120]!==J||e[121]!==X?(P=s.jsxs("div",{className:"flex items-center gap-3 px-6 pt-3",children:[J,X]}),e[120]=J,e[121]=X,e[122]=P):P=e[122],L="min-h-0 flex-1 overflow-y-auto px-6 py-3",Q="mx-auto w-full max-w-3xl space-y-0.5",T=o.length===0?Ge:o.map((r,a)=>{const v=Ie(De(r))??"",f=v?C(v):null,ie=!(b?.has(v)??!1),_=ue(o,a);return s.jsxs(Z.Fragment,{children:[_?s.jsx("p",{dir:"auto",className:"truncate oc-ui-start-align px-2 pt-2 typography-micro text-muted-foreground",children:_}):null,s.jsxs("div",{className:Pe("group relative flex cursor-pointer items-center gap-3 rounded-md py-1 pe-2 transition-[padding] hover:bg-interactive-hover/40 hover:pe-14 focus-within:pe-14",r.parentID?"ps-6":"ps-2"),onClick:()=>Be(r),role:"button",tabIndex:0,onKeyDown:h=>{(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),Be(r))},children:[s.jsx("span",{dir:"auto",className:"min-w-0 flex-1 truncate oc-ui-start-align typography-ui-label text-foreground",children:r.title||t("sessions.sidebar.session.untitled")}),u&&f?s.jsx("span",{className:"max-w-40 flex-shrink-0 truncate text-[0.72rem] text-muted-foreground/70",title:v,children:f}):null,s.jsx("span",{className:"flex-shrink-0 text-[0.72rem] text-muted-foreground/75",children:qe(r.time?.archived??r.time?.updated??r.time?.created??Date.now())}),ie?s.jsx("button",{type:"button",onClick:h=>{h.stopPropagation(),Re(r)},className:"absolute inset-e-7 top-1/2 inline-flex h-6 w-6 -translate-y-1/2 items-center justify-center rounded-md text-muted-foreground opacity-0 transition-opacity pointer-events-none hover:text-foreground group-hover:opacity-100 group-hover:pointer-events-auto focus-visible:opacity-100 focus-visible:pointer-events-auto focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring","aria-label":t("sessions.archivePage.restoreSessionAria",{title:r.title||t("sessions.sidebar.session.untitled")}),children:s.jsx(oe,{name:"inbox-unarchive",className:"h-3.5 w-3.5"})}):null,s.jsx("button",{type:"button",onClick:h=>{h.stopPropagation(),Ue.requestDelete({sessions:[r],mode:"session"})},className:"absolute inset-e-1 top-1/2 inline-flex h-6 w-6 -translate-y-1/2 items-center justify-center rounded-md text-muted-foreground opacity-0 transition-opacity pointer-events-none hover:text-destructive group-hover:opacity-100 group-hover:pointer-events-auto focus-visible:opacity-100 focus-visible:pointer-events-auto focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring","aria-label":t("sessions.archivePage.deleteSessionAria",{title:r.title||t("sessions.sidebar.session.untitled")}),children:s.jsx(oe,{name:"delete-bin",className:"h-3.5 w-3.5"})})]})]},r.id)})}e[31]=D,e[32]=N,e[33]=C,e[34]=c,e[35]=u,e[36]=x,e[37]=ue,e[38]=w,e[39]=d,e[40]=S,e[41]=y,e[42]=m.length,e[43]=b,e[44]=t,e[45]=Y,e[46]=Te,e[47]=A,e[48]=T,e[49]=L,e[50]=O,e[51]=P,e[52]=B,e[53]=I,e[54]=E,e[55]=M,e[56]=Q}else A=e[47],T=e[48],L=e[49],O=e[50],P=e[51],B=e[52],I=e[53],E=e[54],M=e[55],Q=e[56];if(M!==Symbol.for("react.early_return_sentinel"))return M;let z;e[123]!==A||e[124]!==T||e[125]!==Q?(z=s.jsxs("div",{className:Q,children:[T,A]}),e[123]=A,e[124]=T,e[125]=Q,e[126]=z):z=e[126];let R;e[127]!==L||e[128]!==z?(R=s.jsx("div",{className:L,children:z}),e[127]=L,e[128]=z,e[129]=R):R=e[129];let G;e[130]!==O||e[131]!==P||e[132]!==R?(G=s.jsxs("div",{className:O,children:[P,R]}),e[130]=O,e[131]=P,e[132]=R,e[133]=G):G=e[133];let V;e[134]!==B||e[135]!==I||e[136]!==G?(V=s.jsxs("div",{className:B,children:[I,G]}),e[134]=B,e[135]=I,e[136]=G,e[137]=V):V=e[137];let de;return e[138]!==E||e[139]!==V?(de=s.jsx("div",{className:E,children:V}),e[138]=E,e[139]=V,e[140]=de):de=e[140],de}function ct(i){return i+Ce}function pt(i){return[i.title]}function ut(i,e){return e.sessions.length-i.sessions.length}function mt(i,e){return(e.time?.archived??0)-(i.time?.archived??0)}function dt(){et().catch(ft)}function ft(){}function ht(i){return i.byDirectory}function xt(i){return i.status}function gt(i){return i.archivedSessions.flatMap(e=>{const c=e.parentID?i.entityById.get(e.parentID):void 0;return c?[c.id,c.title]:[]})}function vt(i){return i.archivedSessions.filter(e=>tt(e,i.entityById))}function yt(i){return i.homeDirectory}function bt(i){return i.unarchiveSession}function jt(i){return i.setCurrentSession}function ti(){const i=$e.c(6),e=ke(Dt),c=ke(wt),x=ke(Nt),p=ke(St);let j;i[0]!==p?(j=()=>p(!1),i[0]=p,i[1]=j):j=i[1];const t=j;if(!e)return null;let y;return i[2]!==c||i[3]!==t||i[4]!==x?(y=s.jsx(at,{layout:"page",onLeave:t,initialQuery:c},x),i[2]=c,i[3]=t,i[4]=x,i[5]=y):y=i[5],y}function St(i){return i.setArchivePageOpen}function Nt(i){return i.archivePageOpenCount}function wt(i){return i.archivePageSearch}function Dt(i){return i.isArchivePageOpen}export{at as ArchiveSessionsView,ti as ArchiveView};
@@ -1 +1 @@
1
- import{f as y,j as h}from"./vendor-react-BUCujlKS.js";import{N}from"./useAppFontEffects-BZrjCfFw.js";const w=_=>{const e=y.c(34),{path:t,className:l}=_;let s,n,r,a,c,i,o,m;if(e[0]!==l||e[1]!==t){m=Symbol.for("react.early_return_sentinel");e:{if(s=t.lastIndexOf("/"),s===-1){let u;e[10]!==l?(u=N("block min-w-0 truncate text-foreground",l),e[10]=l,e[11]=u):u=e[11];let j;e[12]!==t||e[13]!==u?(j=h.jsx("span",{dir:"ltr",className:u,title:t,children:t}),e[12]=t,e[13]=u,e[14]=j):j=e[14],m=j;break e}c="ltr",e[15]!==l?(i=N("flex min-w-0 items-baseline overflow-hidden",l),e[15]=l,e[16]=i):i=e[16],o=t,n="oc-ui-start-align min-w-0 truncate text-muted-foreground",e[17]===Symbol.for("react.memo_cache_sentinel")?(r={direction:"rtl",unicodeBidi:"plaintext"},e[17]=r):r=e[17],a=t.slice(0,s)}e[0]=l,e[1]=t,e[2]=s,e[3]=n,e[4]=r,e[5]=a,e[6]=c,e[7]=i,e[8]=o,e[9]=m}else s=e[2],n=e[3],r=e[4],a=e[5],c=e[6],i=e[7],o=e[8],m=e[9];if(m!==Symbol.for("react.early_return_sentinel"))return m;let f;e[18]!==n||e[19]!==r||e[20]!==a?(f=h.jsx("span",{className:n,style:r,children:a}),e[18]=n,e[19]=r,e[20]=a,e[21]=f):f=e[21];let p;e[22]===Symbol.for("react.memo_cache_sentinel")?(p=h.jsx("span",{className:"text-muted-foreground",children:"/"}),e[22]=p):p=e[22];let d;e[23]!==s||e[24]!==t?(d=t.slice(s+1),e[23]=s,e[24]=t,e[25]=d):d=e[25];let x;e[26]!==d?(x=h.jsxs("span",{className:"shrink-0",children:[p,h.jsx("span",{className:"text-foreground",children:d})]}),e[26]=d,e[27]=x):x=e[27];let b;return e[28]!==x||e[29]!==c||e[30]!==i||e[31]!==o||e[32]!==f?(b=h.jsxs("span",{dir:c,className:i,title:o,children:[f,x]}),e[28]=x,e[29]=c,e[30]=i,e[31]=o,e[32]=f,e[33]=b):b=e[33],b};export{w as C};
1
+ import{f as y,j as h}from"./vendor-react-BUCujlKS.js";import{N}from"./useAppFontEffects-d9vsRNKm.js";const w=_=>{const e=y.c(34),{path:t,className:l}=_;let s,n,r,a,c,i,o,m;if(e[0]!==l||e[1]!==t){m=Symbol.for("react.early_return_sentinel");e:{if(s=t.lastIndexOf("/"),s===-1){let u;e[10]!==l?(u=N("block min-w-0 truncate text-foreground",l),e[10]=l,e[11]=u):u=e[11];let j;e[12]!==t||e[13]!==u?(j=h.jsx("span",{dir:"ltr",className:u,title:t,children:t}),e[12]=t,e[13]=u,e[14]=j):j=e[14],m=j;break e}c="ltr",e[15]!==l?(i=N("flex min-w-0 items-baseline overflow-hidden",l),e[15]=l,e[16]=i):i=e[16],o=t,n="oc-ui-start-align min-w-0 truncate text-muted-foreground",e[17]===Symbol.for("react.memo_cache_sentinel")?(r={direction:"rtl",unicodeBidi:"plaintext"},e[17]=r):r=e[17],a=t.slice(0,s)}e[0]=l,e[1]=t,e[2]=s,e[3]=n,e[4]=r,e[5]=a,e[6]=c,e[7]=i,e[8]=o,e[9]=m}else s=e[2],n=e[3],r=e[4],a=e[5],c=e[6],i=e[7],o=e[8],m=e[9];if(m!==Symbol.for("react.early_return_sentinel"))return m;let f;e[18]!==n||e[19]!==r||e[20]!==a?(f=h.jsx("span",{className:n,style:r,children:a}),e[18]=n,e[19]=r,e[20]=a,e[21]=f):f=e[21];let p;e[22]===Symbol.for("react.memo_cache_sentinel")?(p=h.jsx("span",{className:"text-muted-foreground",children:"/"}),e[22]=p):p=e[22];let d;e[23]!==s||e[24]!==t?(d=t.slice(s+1),e[23]=s,e[24]=t,e[25]=d):d=e[25];let x;e[26]!==d?(x=h.jsxs("span",{className:"shrink-0",children:[p,h.jsx("span",{className:"text-foreground",children:d})]}),e[26]=d,e[27]=x):x=e[27];let b;return e[28]!==x||e[29]!==c||e[30]!==i||e[31]!==o||e[32]!==f?(b=h.jsxs("span",{dir:c,className:i,title:o,children:[f,x]}),e[28]=x,e[29]=c,e[30]=i,e[31]=o,e[32]=f,e[33]=b):b=e[33],b};export{w as C};
@@ -1,2 +1,2 @@
1
- import{R as c,f as te,j as n}from"./vendor-react-BUCujlKS.js";import{d1 as ee,d2 as xt,d3 as Ye,u as Pe,d4 as St,x as jt,I as p,av as z,B as tt,G as Z,H as bt,d5 as Qe,d6 as Pt,d7 as yt,a5 as He,aE as wt,b7 as vt,aD as kt,aF as Nt,aq as Ct,ar as Tt,d8 as Mt,K as je,d9 as It,P as At,da as Dt,db as Ft,dc as Et,A as X,aA as Ot,dd as $t,de as Rt,aw as _t,df as Bt,dg as Wt,dh as Lt,di as zt,dj as Gt,dk as Ut,dl as qt,dm as Yt,am as Qt,ap as Ht,t as Vt,D as Kt,l as Jt,F as Zt,q as Xt,az as es,ay as ts,as as ss,at as as,au as Y,dn as ns,N as st,dp as os}from"./useAppFontEffects-BZrjCfFw.js";import{u as w,e as rs,at as is,l as oe,au as ls,av as cs,aw as ms,ax as ds,ay as us}from"./katex.min-u4DtE8E5.js";import{z as ps,A as hs,B as gs}from"./runtimeEndpointReset-DcZoNIpr.js";import{v as fs,a as xs}from"./main-BggWUmia.js";import{r as Ss}from"./restartOpenCode-BE2HLPm1.js";import"./vendor-scheduler-7OC5HNn7.js";import"./vendor-base-ui-CPKyhvxM.js";import"./vendor-floating-ui-utils-D6FqdtJt.js";import"./vendor-floating-ui-dom-BTvzWks8.js";import"./vendor-floating-ui-core-PuGzNPnN.js";import"./vendor-floating-ui-react-dom-DxYCWdHj.js";import"./vendor-use-sync-external-store-D6wYuSt-.js";import"./vendor-zod-DDir2TeQ.js";import"./vendor-simplewebauthn-browser-VDA66rT_.js";import"./vendor-vite-runtime-DD1OZmLC.js";import"./vendor-zustand-BAGL70zf.js";import"./vendor-class-variance-authority-5VPnzWs2.js";import"./vendor-clsx-B-dksMZM.js";import"./vendor-dnd-kit-core-BZknOX2w.js";import"./vendor-dnd-kit-utilities-B_MdXhJC.js";import"./vendor-dnd-kit-accessibility-BHxJPORy.js";import"./vendor-dnd-kit-sortable-CsEagZ81.js";import"./vendor-tanstack-react-virtual-Bmi0tTrf.js";import"./vendor-tanstack-virtual-core-CdGDGrnp.js";import"./vendor-framer-motion-DxDVhOLc.js";import"./vendor-motion-dom-HXPOMxb7.js";import"./vendor-motion-utils-BGh8QBgx.js";import"./vendor-codemirror-commands-dar6chwA.js";import"./vendor-codemirror-state-Dek9sMtw.js";import"./vendor-marijn-find-cluster-break-DXwl3gUT.js";import"./vendor-codemirror-view-B66jUSmE.js";import"./vendor-style-mod-NZ5MEPvj.js";import"./vendor-w3c-keyname-Vcq4gwWv.js";import"./vendor-crelt-C8TCjufn.js";import"./vendor-codemirror-language-DyL0aCoH.js";import"./vendor-lezer-common-B3-cUCR_.js";import"./vendor-lezer-highlight-CDMHUZ74.js";import"./vendor-codemirror-streamparser-CmlTsbN2.js";import"./vendor-codemirror-lang-javascript-Cem6LjJ8.js";import"./vendor-lezer-javascript-D7Tj24ot.js";import"./vendor-lezer-lr-bhwg1HMg.js";import"./vendor-codemirror-autocomplete-CIqXJolH.js";import"./vendor-codemirror-lang-json-C9rLLO0q.js";import"./vendor-lezer-json-Iaex0UN-.js";import"./vendor-codemirror-lang-css-9qjxcVkg.js";import"./vendor-lezer-css-C5xB6jxd.js";import"./vendor-codemirror-lang-html-D7VQUxeE.js";import"./vendor-lezer-html-C0I1p52t.js";import"./vendor-codemirror-lang-markdown-Cikh4w2I.js";import"./vendor-lezer-markdown-C6g-d6P3.js";import"./vendor-codemirror-language-data-DsRKCbVv.js";import"./vendor-codemirror-lang-python-DVl8-2Op.js";import"./vendor-lezer-python-CvuFxeZl.js";import"./vendor-sonner-DFyL3AvE.js";import"./vendor-capacitor-core-B4EWRrHz.js";import"./vendor-cmdk-DgLInKvT.js";import"./vendor-radix-ui-react-dialog-B94Bt2qq.js";import"./vendor-radix-ui-primitive-Dc_FVRD7.js";import"./vendor-radix-ui-react-compose-refs-DcAh5WdT.js";import"./vendor-radix-ui-react-context-Czxm7Z62.js";import"./vendor-radix-ui-react-id-f5BLKEVw.js";import"./vendor-radix-ui-react-use-layout-effect-D_3IhJdJ.js";import"./vendor-radix-ui-react-use-controllable-state-BFT5YmkA.js";import"./vendor-radix-ui-react-dismissable-layer-D7kXcwgJ.js";import"./vendor-radix-ui-react-primitive-DhVoX9SD.js";import"./vendor-radix-ui-react-slot-BQgQOasS.js";import"./vendor-radix-ui-react-use-callback-ref-BZPnuXAC.js";import"./vendor-radix-ui-react-use-escape-keydown-oph88g-F.js";import"./vendor-radix-ui-react-focus-scope-CiaxW4dD.js";import"./vendor-radix-ui-react-portal-BMJYHWck.js";import"./vendor-radix-ui-react-presence-CNxf-uq4.js";import"./vendor-radix-ui-react-focus-guards-B6qJXYua.js";import"./vendor-react-remove-scroll-DO7dCTnK.js";import"./vendor-tslib-De9GV7Vy.js";import"./vendor-react-remove-scroll-bar-BcFYyj3E.js";import"./vendor-react-style-singleton-q6EMHnwf.js";import"./vendor-get-nonce-C-Z93AgS.js";import"./vendor-use-sidecar-zDC0RhA3.js";import"./vendor-use-callback-ref-D3RC8gqK.js";import"./vendor-aria-hidden-DvXkyWUv.js";import"./vendor-legendapp-list-D2O6oUGf.js";import"./vendor-tailwind-merge-CPcsbTWB.js";import"./vendor-fuse.js-Dw8P0qyA.js";import"./vendor-opencode-client-h8RufjAw.js";import"./useRootScrollLock-5OfQ_8IH.js";import"./moveWorkspacePath-CUn1SV66.js";const js=(s,e)=>!s||e.length===0?"":JSON.stringify([s,e]),bs=(s,e,o,r)=>!o||r!==o||s.length===0?[]:ee(s,e,m=>m.relativePath||m.name,{limit:10,threshold:.4}),Ve={status:"idle"},Ps=({query:s,enabled:e,limit:o,sessionId:r=null,directories:m,role:d=null,includeReasoning:f=!0,order:j="desc"})=>{const[b,i]=c.useState(Ve),O=(m??[]).join(`
1
+ import{R as c,f as te,j as n}from"./vendor-react-BUCujlKS.js";import{d1 as ee,d2 as xt,d3 as Ye,u as Pe,d4 as St,x as jt,I as p,av as z,B as tt,G as Z,H as bt,d5 as Qe,d6 as Pt,d7 as yt,a5 as He,aE as wt,b7 as vt,aD as kt,aF as Nt,aq as Ct,ar as Tt,d8 as Mt,K as je,d9 as It,P as At,da as Dt,db as Ft,dc as Et,A as X,aA as Ot,dd as $t,de as Rt,aw as _t,df as Bt,dg as Wt,dh as Lt,di as zt,dj as Gt,dk as Ut,dl as qt,dm as Yt,am as Qt,ap as Ht,t as Vt,D as Kt,l as Jt,F as Zt,q as Xt,az as es,ay as ts,as as ss,at as as,au as Y,dn as ns,N as st,dp as os}from"./useAppFontEffects-d9vsRNKm.js";import{u as w,e as rs,at as is,l as oe,au as ls,av as cs,aw as ms,ax as ds,ay as us}from"./katex.min-u4DtE8E5.js";import{z as ps,A as hs,B as gs}from"./runtimeEndpointReset-BJUtkqal.js";import{v as fs,a as xs}from"./main-CcnDurk6.js";import{r as Ss}from"./restartOpenCode-VU-OEAvZ.js";import"./vendor-scheduler-7OC5HNn7.js";import"./vendor-base-ui-CPKyhvxM.js";import"./vendor-floating-ui-utils-D6FqdtJt.js";import"./vendor-floating-ui-dom-BTvzWks8.js";import"./vendor-floating-ui-core-PuGzNPnN.js";import"./vendor-floating-ui-react-dom-DxYCWdHj.js";import"./vendor-use-sync-external-store-D6wYuSt-.js";import"./vendor-zod-DDir2TeQ.js";import"./vendor-simplewebauthn-browser-VDA66rT_.js";import"./vendor-vite-runtime-DD1OZmLC.js";import"./vendor-zustand-BAGL70zf.js";import"./vendor-class-variance-authority-5VPnzWs2.js";import"./vendor-clsx-B-dksMZM.js";import"./vendor-dnd-kit-core-BZknOX2w.js";import"./vendor-dnd-kit-utilities-B_MdXhJC.js";import"./vendor-dnd-kit-accessibility-BHxJPORy.js";import"./vendor-dnd-kit-sortable-CsEagZ81.js";import"./vendor-tanstack-react-virtual-Bmi0tTrf.js";import"./vendor-tanstack-virtual-core-CdGDGrnp.js";import"./vendor-framer-motion-DxDVhOLc.js";import"./vendor-motion-dom-HXPOMxb7.js";import"./vendor-motion-utils-BGh8QBgx.js";import"./vendor-codemirror-commands-dar6chwA.js";import"./vendor-codemirror-state-Dek9sMtw.js";import"./vendor-marijn-find-cluster-break-DXwl3gUT.js";import"./vendor-codemirror-view-B66jUSmE.js";import"./vendor-style-mod-NZ5MEPvj.js";import"./vendor-w3c-keyname-Vcq4gwWv.js";import"./vendor-crelt-C8TCjufn.js";import"./vendor-codemirror-language-DyL0aCoH.js";import"./vendor-lezer-common-B3-cUCR_.js";import"./vendor-lezer-highlight-CDMHUZ74.js";import"./vendor-codemirror-streamparser-CmlTsbN2.js";import"./vendor-codemirror-lang-javascript-Cem6LjJ8.js";import"./vendor-lezer-javascript-D7Tj24ot.js";import"./vendor-lezer-lr-bhwg1HMg.js";import"./vendor-codemirror-autocomplete-CIqXJolH.js";import"./vendor-codemirror-lang-json-C9rLLO0q.js";import"./vendor-lezer-json-Iaex0UN-.js";import"./vendor-codemirror-lang-css-9qjxcVkg.js";import"./vendor-lezer-css-C5xB6jxd.js";import"./vendor-codemirror-lang-html-D7VQUxeE.js";import"./vendor-lezer-html-C0I1p52t.js";import"./vendor-codemirror-lang-markdown-Cikh4w2I.js";import"./vendor-lezer-markdown-C6g-d6P3.js";import"./vendor-codemirror-language-data-DP_Bh3S8.js";import"./vendor-codemirror-lang-python-DVl8-2Op.js";import"./vendor-lezer-python-CvuFxeZl.js";import"./vendor-sonner-DFyL3AvE.js";import"./vendor-capacitor-core-B4EWRrHz.js";import"./vendor-cmdk-DgLInKvT.js";import"./vendor-radix-ui-react-dialog-B94Bt2qq.js";import"./vendor-radix-ui-primitive-Dc_FVRD7.js";import"./vendor-radix-ui-react-compose-refs-DcAh5WdT.js";import"./vendor-radix-ui-react-context-Czxm7Z62.js";import"./vendor-radix-ui-react-id-f5BLKEVw.js";import"./vendor-radix-ui-react-use-layout-effect-D_3IhJdJ.js";import"./vendor-radix-ui-react-use-controllable-state-BFT5YmkA.js";import"./vendor-radix-ui-react-dismissable-layer-D7kXcwgJ.js";import"./vendor-radix-ui-react-primitive-DhVoX9SD.js";import"./vendor-radix-ui-react-slot-BQgQOasS.js";import"./vendor-radix-ui-react-use-callback-ref-BZPnuXAC.js";import"./vendor-radix-ui-react-use-escape-keydown-oph88g-F.js";import"./vendor-radix-ui-react-focus-scope-CiaxW4dD.js";import"./vendor-radix-ui-react-portal-BMJYHWck.js";import"./vendor-radix-ui-react-presence-CNxf-uq4.js";import"./vendor-radix-ui-react-focus-guards-B6qJXYua.js";import"./vendor-react-remove-scroll-DO7dCTnK.js";import"./vendor-tslib-De9GV7Vy.js";import"./vendor-react-remove-scroll-bar-BcFYyj3E.js";import"./vendor-react-style-singleton-q6EMHnwf.js";import"./vendor-get-nonce-C-Z93AgS.js";import"./vendor-use-sidecar-zDC0RhA3.js";import"./vendor-use-callback-ref-D3RC8gqK.js";import"./vendor-aria-hidden-DvXkyWUv.js";import"./vendor-legendapp-list-D2O6oUGf.js";import"./vendor-tailwind-merge-CPcsbTWB.js";import"./vendor-fuse.js-Dw8P0qyA.js";import"./vendor-opencode-client-h8RufjAw.js";import"./useRootScrollLock-BWsNuapq.js";import"./moveWorkspacePath-By4gjwmW.js";const js=(s,e)=>!s||e.length===0?"":JSON.stringify([s,e]),bs=(s,e,o,r)=>!o||r!==o||s.length===0?[]:ee(s,e,m=>m.relativePath||m.name,{limit:10,threshold:.4}),Ve={status:"idle"},Ps=({query:s,enabled:e,limit:o,sessionId:r=null,directories:m,role:d=null,includeReasoning:f=!0,order:j="desc"})=>{const[b,i]=c.useState(Ve),O=(m??[]).join(`
2
2
  `),v=`${s}\0${r??""}\0${O}\0${d??""}\0${j}\0${o}\0${f}`,N=c.useRef(v);N.current=v;const P=c.useRef(m);P.current=m,c.useEffect(()=>{if(!e||!s.trim()){i(Ve);return}if(!xt(s)){i({status:"too-short"});return}const h=new AbortController;return i(g=>({status:"loading",hits:"hits"in g?g.hits:[]})),Ye({query:s,sessionId:r,directories:P.current,role:d,includeReasoning:f,order:j,limit:o,signal:h.signal}).then(g=>{h.signal.aborted||(g.status==="ok"?i({status:"ready",hits:g.hits,next:g.next,index:g.index,loadingMore:!1}):g.status==="query-too-short"?i({status:"too-short"}):i({status:"unavailable"}))}).catch(()=>{h.signal.aborted||i({status:"error",hits:[]})}),()=>h.abort()},[e,v]);const C=c.useRef(b);C.current=b;const y=c.useCallback(()=>{const h=C.current;if(h.status!=="ready"||!h.next||h.loadingMore)return;const g=N.current,T=h.next;i({...h,loadingMore:!0}),Ye({query:s,sessionId:r,directories:P.current,role:d,includeReasoning:f,order:j,limit:o,before:T}).then(u=>{N.current!==g||u.status!=="ok"||i(x=>x.status==="ready"?{...x,hits:[...x.hits,...u.hits],next:u.next,index:u.index,loadingMore:!1}:x)}).catch(()=>{N.current===g&&i(u=>u.status==="ready"?{...u,loadingMore:!1}:u)})},[s,r,d,f,j,o]);return{state:b,loadMore:y}},ys={user:"user-3",assistant:"chat-ai-3",reasoning:"brain-ai-3"},ws=s=>{const e=te.c(4),{snippet:o}=s;let r;e[0]!==o?(r=St(o).map(Ns),e[0]=o,e[1]=r):r=e[1];let m;return e[2]!==r?(m=n.jsx(n.Fragment,{children:r}),e[2]=r,e[3]=m):m=e[3],m},vs=s=>{const e=new Date(s);if(!Number.isFinite(e.getTime()))return"";const o=e.getFullYear()===new Date().getFullYear();return new Intl.DateTimeFormat(jt(),o?{month:"short",day:"numeric"}:{year:"numeric",month:"short",day:"numeric"}).format(e)},Ke=s=>{const e=te.c(38),{hit:o,projectLabel:r,onSelect:m}=s,{t:d}=Pe();let f;e[0]!==o.sessionTitle||e[1]!==d?(f=o.sessionTitle||d("commandPalette.session.untitled"),e[0]=o.sessionTitle,e[1]=d,e[2]=f):f=e[2];const j=f;let b;e[3]!==o.role||e[4]!==d?(b=o.role==="user"?d("commandPalette.messages.byYou"):o.role==="reasoning"?d("commandPalette.messages.inReasoning"):d("commandPalette.messages.byAgent"),e[3]=o.role,e[4]=d,e[5]=b):b=e[5];const i=b,O=`message:${o.role}:${o.id}`;let v;e[6]!==o||e[7]!==m?(v=()=>m(o),e[6]=o,e[7]=m,e[8]=v):v=e[8];const N=ys[o.role];let P;e[9]!==i||e[10]!==N?(P=n.jsx(p,{name:N,className:"me-2 mt-0.5 h-4 w-4 shrink-0",role:"img","aria-hidden":!1,"aria-label":i}),e[9]=i,e[10]=N,e[11]=P):P=e[11];let C;e[12]!==o.snippet?(C=n.jsx("span",{className:"line-clamp-2 break-words text-foreground",children:n.jsx(ws,{snippet:o.snippet})}),e[12]=o.snippet,e[13]=C):C=e[13];let y;e[14]!==o.role||e[15]!==d?(y=o.role==="reasoning"?n.jsxs("span",{className:"shrink-0",children:[d("commandPalette.messages.inReasoning")," ·"]}):null,e[14]=o.role,e[15]=d,e[16]=y):y=e[16];let h;e[17]!==j?(h=n.jsx("span",{className:"min-w-0 truncate",children:j}),e[17]=j,e[18]=h):h=e[18];let g;e[19]!==r?(g=r?n.jsxs("span",{className:"max-w-[40%] shrink-0 truncate",children:["· ",r]}):null,e[19]=r,e[20]=g):g=e[20];let T;e[21]!==o.createdAt?(T=vs(o.createdAt),e[21]=o.createdAt,e[22]=T):T=e[22];let u;e[23]!==T?(u=n.jsxs("span",{className:"shrink-0",children:["· ",T]}),e[23]=T,e[24]=u):u=e[24];let x;e[25]!==g||e[26]!==u||e[27]!==y||e[28]!==h?(x=n.jsxs("span",{className:"flex min-w-0 items-center gap-1.5 text-muted-foreground typography-micro",children:[y,h,g,u]}),e[25]=g,e[26]=u,e[27]=y,e[28]=h,e[29]=x):x=e[29];let M;e[30]!==x||e[31]!==C?(M=n.jsxs("span",{className:"flex min-w-0 flex-1 flex-col gap-0.5",children:[C,x]}),e[30]=x,e[31]=C,e[32]=M):M=e[32];let A;return e[33]!==M||e[34]!==O||e[35]!==v||e[36]!==P?(A=n.jsxs(z,{value:O,onSelect:v,className:"items-start",children:[P,M]}),e[33]=M,e[34]=O,e[35]=v,e[36]=P,e[37]=A):A=e[37],A},Je=s=>{const e=te.c(10),{options:o,value:r,onChange:m,label:d}=s;let f;if(e[0]!==m||e[1]!==o||e[2]!==r){let b;e[4]!==m||e[5]!==r?(b=i=>n.jsx(tt,{type:"button",variant:"chip",size:"xs","aria-pressed":r===i.value,onClick:()=>m(i.value),children:i.label},i.value),e[4]=m,e[5]=r,e[6]=b):b=e[6],f=o.map(b),e[0]=m,e[1]=o,e[2]=r,e[3]=f}else f=e[3];let j;return e[7]!==d||e[8]!==f?(j=n.jsx("div",{className:"flex items-center gap-1",role:"group","aria-label":d,children:f}),e[7]=d,e[8]=f,e[9]=j):j=e[9],j},ks=s=>{const e=te.c(42),{scope:o,onScopeChange:r,projectScopeAvailable:m,author:d,onAuthorChange:f,reasoningAvailable:j,onBack:b}=s,{t:i}=Pe();let O;e[0]===Symbol.for("react.memo_cache_sentinel")?(O=n.jsx(p,{name:"arrow-left",className:"h-3.5 w-3.5"}),e[0]=O):O=e[0];let v;e[1]!==i?(v=i("commandPalette.messages.back"),e[1]=i,e[2]=v):v=e[2];let N;e[3]!==b||e[4]!==v?(N=n.jsxs(tt,{type:"button",variant:"ghost",size:"xs",onClick:b,children:[O,v]}),e[3]=b,e[4]=v,e[5]=N):N=e[5];let P;e[6]!==r||e[7]!==m||e[8]!==o||e[9]!==i?(P=m?n.jsx(Je,{label:i("commandPalette.messages.filter.scopeLabel"),value:o,onChange:r,options:[{value:"all",label:i("commandPalette.messages.filter.allProjects")},{value:"project",label:i("commandPalette.messages.filter.thisProject")}]}):null,e[6]=r,e[7]=m,e[8]=o,e[9]=i,e[10]=P):P=e[10];let C;e[11]!==i?(C=i("commandPalette.messages.filter.authorLabel"),e[11]=i,e[12]=C):C=e[12];let y;e[13]!==i?(y=i("commandPalette.messages.filter.anyone"),e[13]=i,e[14]=y):y=e[14];let h;e[15]!==y?(h={value:"any",label:y},e[15]=y,e[16]=h):h=e[16];let g;e[17]!==i?(g=i("commandPalette.messages.filter.you"),e[17]=i,e[18]=g):g=e[18];let T;e[19]!==g?(T={value:"user",label:g},e[19]=g,e[20]=T):T=e[20];let u;e[21]!==i?(u=i("commandPalette.messages.filter.agent"),e[21]=i,e[22]=u):u=e[22];let x;e[23]!==u?(x={value:"assistant",label:u},e[23]=u,e[24]=x):x=e[24];let M;e[25]!==j||e[26]!==i?(M=j?[{value:"reasoning",label:i("commandPalette.messages.filter.reasoning")}]:[],e[25]=j,e[26]=i,e[27]=M):M=e[27];let A;e[28]!==x||e[29]!==M||e[30]!==h||e[31]!==T?(A=[h,T,x,...M],e[28]=x,e[29]=M,e[30]=h,e[31]=T,e[32]=A):A=e[32];let _;e[33]!==d||e[34]!==f||e[35]!==A||e[36]!==C?(_=n.jsx(Je,{label:C,value:d,onChange:f,options:A}),e[33]=d,e[34]=f,e[35]=A,e[36]=C,e[37]=_):_=e[37];let G;return e[38]!==_||e[39]!==N||e[40]!==P?(G=n.jsxs("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-1 border-b border-border px-2 py-1.5",children:[N,P,_]}),e[38]=_,e[39]=N,e[40]=P,e[41]=G):G=e[41],G};function Ns(s,e){return s.match?n.jsx("mark",{className:"rounded-[2px] bg-primary/25 text-foreground",children:s.text},e):n.jsx(c.Fragment,{children:s.text},e)}const Cs=new Set,Ts=[],Ms=3,Is=30,be=(s,e)=>{const o=s.toLowerCase().split(/[^\p{L}\p{N}]+/u).filter(Boolean);return e.toLowerCase().split(/\s+/).filter(Boolean).every(r=>o.some(m=>m.startsWith(r)))},Ze=s=>{const e=s.lastIndexOf("/");return e===-1?{name:s,directory:""}:{name:s.slice(e+1),directory:s.slice(0,e)}},Xe="‎",et=s=>{const e=te.c(7),{text:o,className:r}=s;let m;e[0]!==r?(m=st("oc-ui-start-align min-w-0 truncate text-muted-foreground",r),e[0]=r,e[1]=m):m=e[1];let d;e[2]===Symbol.for("react.memo_cache_sentinel")?(d={direction:"rtl"},e[2]=d):d=e[2];const f=`${Xe}${o}${Xe}`;let j;return e[3]!==m||e[4]!==f||e[5]!==o?(j=n.jsx("span",{className:m,style:d,title:o,children:f}),e[3]=m,e[4]=f,e[5]=o,e[6]=j):j=e[6],j},W=s=>{if(!s)return"";const e=s.replace(/\\/g,"/"),o=e.startsWith("//");let r=e.replace(/\/+/g,"/");o&&!r.startsWith("//")&&(r=`/${r}`);const m=r==="/",d=/^[A-Za-z]:\/$/.test(r);return!m&&!d&&(r=r.replace(/\/+$/,"")),r},pn=()=>{const{t:s}=Pe(),e=w(t=>t.isCommandPaletteOpen),o=w(t=>t.setCommandPaletteOpen),r=w(t=>t.setSettingsDialogOpen),m=w(t=>t.setSettingsPage),d=w(t=>t.setSessionSwitcherOpen),f=w(t=>t.toggleSidebar),j=w(t=>t.openContextOverview),b=w(t=>t.openContextSurface),i=w(t=>t.openContextFile),O=w(t=>t.shortcutOverrides),v=w(t=>t.setArchivePageOpen),N=w(t=>t.setProjectContextTab),P=Z(t=>t.openNewSessionDraft),C=Z(t=>t.setCurrentSession),y=Z(t=>t.currentSessionId),h=bt(c.useCallback(t=>e?t.activeSessions:Ts,[e])),g=Qe(c.useCallback(t=>e?t.ids:Cs,[e])),T=Pt(c.useCallback(t=>e?t.rankById:yt,[e])),u=rs(t=>t.currentDirectory),x=He(t=>t.getActiveProject()),M=He(t=>t.projects),A=wt(),_=is(t=>t.searchFiles),{files:G,git:re}=vt(),ye=kt(t=>t.ensureStatus),{isMobile:U}=Nt(),q=Ct();Tt(e);const I=c.useMemo(()=>A?W(A):null,[A]),[se,we]=c.useState(""),Q=Mt(se,200).trim(),$=se.trim(),[B,H]=c.useState(!1),[ve,at]=c.useState("all"),[ke,nt]=c.useState("any");c.useEffect(()=>{e&&(we(""),H(!1))},[e]),c.useEffect(()=>{if(!e||!re)return;const t=setTimeout(()=>{const a=new Set;for(const l of h){const k=je(l);!k||a.has(k)||(a.add(k),ye(k,re))}},0);return()=>clearTimeout(t)},[e,h,re,ye]);const R=c.useCallback(()=>o(!1),[o]),S=c.useCallback(t=>()=>{R(),t()},[R]),ie=c.useMemo(()=>{const t=[{id:"new-session",title:s("commandPalette.item.newSession"),icon:n.jsx(p,{name:"add",className:"me-2 h-4 w-4"}),shortcutId:"new_chat",searchText:s("commandPalette.item.newSession"),onSelect:S(()=>{d(!1),P()})},{id:"new-worktree",title:s("commandPalette.item.quickWorktree"),icon:n.jsx(p,{name:"flashlight",className:"me-2 h-4 w-4"}),shortcutId:"new_chat_worktree",searchText:s("commandPalette.item.quickWorktree"),onSelect:S(()=>{It()})},{id:"new-worktree-dialog",title:s("commandPalette.item.newWorktreeDialog"),icon:n.jsx(p,{name:"git-branch",className:"me-2 h-4 w-4"}),searchText:s("commandPalette.item.newWorktreeDialog"),onSelect:S(()=>{w.getState().setNewWorktreeDialogOpen(!0)})},{id:"add-project",title:s("commandPalette.item.addProject"),icon:n.jsx(p,{name:"folder-add",className:"me-2 h-4 w-4"}),searchText:s("commandPalette.item.addProject"),onSelect:S(()=>{At.requestDirectoryDialog()})},{id:"toggle-sidebar",title:s(U?"commandPalette.item.showSessionSwitcher":"commandPalette.item.toggleSidebar"),icon:n.jsx(p,{name:"layout-left",className:"me-2 h-4 w-4"}),shortcutId:"toggle_sidebar",searchText:s(U?"commandPalette.item.showSessionSwitcher":"commandPalette.item.toggleSidebar"),onSelect:S(()=>{if(U){const{isSessionSwitcherOpen:a}=w.getState();d(!a)}else f()})},{id:"toggle-terminal",title:s("commandPalette.item.toggleTerminal"),icon:n.jsx(p,{name:"terminal-box",className:"me-2 h-4 w-4"}),shortcutId:"toggle_terminal",searchText:s("commandPalette.item.toggleTerminal"),onSelect:S(()=>{u&&b(u,"terminal")})},{id:"context-usage",title:s("commandPalette.item.showContextUsage"),icon:n.jsx(p,{name:"pie-chart",className:"me-2 h-4 w-4"}),searchText:s("commandPalette.item.showContextUsage"),onSelect:S(()=>{u&&j(u)})},{id:"cycle-theme",secondary:!0,title:s("commandPalette.item.cycleTheme"),icon:n.jsx(p,{name:"palette",className:"me-2 h-4 w-4"}),shortcutId:"cycle_theme",searchText:s("commandPalette.item.cycleTheme"),onSelect:S(()=>{Dt.invoke("cycle_theme")})},{id:"open-status",secondary:!0,title:s("commandPalette.item.showOpenCodeStatus"),icon:n.jsx(p,{name:"pulse",className:"me-2 h-4 w-4"}),searchText:s("commandPalette.item.showOpenCodeStatus"),onSelect:S(()=>{Ft()})},{id:"open-settings",title:s("commandPalette.item.openSettings"),icon:n.jsx(p,{name:"settings-3",className:"me-2 h-4 w-4"}),shortcutId:"open_settings",searchText:s("commandPalette.item.openSettings"),onSelect:S(()=>r(!0))}];if(oe()||(t.push({id:"open-source-board",secondary:!0,title:s("sourceBoard.title"),icon:n.jsx(p,{name:"git-pull-request",className:"me-2 h-4 w-4"}),shortcutId:"toggle_source_board",searchText:s("sourceBoard.title"),onSelect:S(()=>w.getState().setSourceBoardOpen(!0))}),t.push({id:"reload-ui",secondary:!0,title:s("commandPalette.item.reloadUi"),icon:n.jsx(p,{name:"refresh",className:"me-2 h-4 w-4"}),searchText:s("commandPalette.item.reloadUi"),onSelect:S(()=>window.location.reload())})),t.push({id:"pin-session",secondary:!0,title:s("commandPalette.item.pinSession"),icon:n.jsx(p,{name:"pushpin",className:"me-2 h-4 w-4"}),searchText:s("commandPalette.item.pinSession"),onSelect:S(()=>{if(y&&u){const a=Et(Qe.getState().ids,u,y)?"sessions.sidebar.session.pin.unpinFailed":"sessions.sidebar.session.pin.pinFailed";ps({directory:u,sessionId:y}).catch(()=>X.error(s(a)))}})},{id:"copy-session-id",secondary:!0,title:s("commandPalette.item.copySessionId"),icon:n.jsx(p,{name:"file-copy",className:"me-2 h-4 w-4"}),searchText:s("commandPalette.item.copySessionId"),onSelect:S(()=>{y&&Ot(y).then(a=>{if(a.ok){X.success(s("sessions.sidebar.session.copyId.success"));return}X.error(s("sessions.sidebar.session.copyId.error"))}).catch(()=>X.error(s("sessions.sidebar.session.copyId.error")))})},{id:"open-multi-run",secondary:!0,title:s("commandPalette.item.openMultiRun"),icon:n.jsx(Rt,{className:"me-2 h-4 w-4"}),searchText:s("commandPalette.item.openMultiRun"),onSelect:S(()=>{d(!1),$t()})},{id:"open-archive",secondary:!0,title:s("commandPalette.item.openArchive"),icon:n.jsx(p,{name:"archive",className:"me-2 h-4 w-4"}),searchText:s("commandPalette.item.openArchive"),onSelect:S(()=>{d(!1),v(!0)})},{id:"open-notes",secondary:!0,title:s("commandPalette.item.openNotes"),icon:n.jsx(p,{name:"sticky-note",className:"me-2 h-4 w-4"}),searchText:s("commandPalette.item.openNotes"),onSelect:S(()=>{u&&(N("notes"),b(u,"notes"))})},{id:"open-todos",secondary:!0,title:s("commandPalette.item.openTodos"),icon:n.jsx(p,{name:"checkbox-circle",className:"me-2 h-4 w-4"}),searchText:s("commandPalette.item.openTodos"),onSelect:S(()=>{u&&(N("todos"),b(u,"notes"))})}),oe()||t.push({id:"restart-opencode",secondary:!0,title:s("commandPalette.item.restartOpenCode"),icon:n.jsx(p,{name:"restart",className:"me-2 h-4 w-4"}),searchText:s("commandPalette.item.restartOpenCode"),onSelect:S(()=>{Ss(s)})}),t.push({id:"toggle-memory-debug",secondary:!0,title:s("commandPalette.item.toggleMemoryDebug"),icon:n.jsx(p,{name:"bug",className:"me-2 h-4 w-4"}),searchText:s("commandPalette.item.toggleMemoryDebug"),onSelect:S(()=>{window.dispatchEvent(new CustomEvent("openchamber:memory-debug-toggle"))})}),q?.available){t.push({id:"open-project-actions",secondary:!0,title:s("commandPalette.item.openProjectActions"),icon:n.jsx(p,{name:"play",className:"me-2 h-4 w-4"}),shortcutId:"open_project_actions",searchText:s("commandPalette.item.openProjectActions"),onSelect:S(()=>w.getState().setProjectActionsDialogOpen(!0))});for(const a of q.actions){const l=q.runOf(a);if(l?.status==="stopping")continue;const k=l?s("commandPalette.item.stopProjectAction",{name:a.name}):s("commandPalette.item.runProjectAction",{name:a.name});t.push({id:`project-action:${a.id}`,secondary:!0,title:k,icon:n.jsx(p,{name:l?"stop":_t(a),className:"me-2 h-4 w-4"}),searchText:k,onSelect:S(()=>{if(l){q.stop(a);return}q.select(a),q.run(a)})})}}return ls()&&t.splice(1,0,{id:"new-mini-chat",title:s("commandPalette.item.newMiniChat"),icon:n.jsx(p,{name:"window",className:"me-2 h-4 w-4"}),shortcutId:"new_mini_chat",searchText:s("commandPalette.item.newMiniChat"),onSelect:S(()=>{cs("desktop_open_draft_mini_chat_window",{directory:W(u||x?.path||""),projectId:x?.id??null,...ms()}).catch(a=>{console.warn("[command-palette] failed to open draft mini chat window",a)})})}),t},[s,S,U,d,P,f,b,u,j,r,x?.id,x?.path,y,v,N,q]),Ne=w(t=>t.routingFeatureAvailable),Ce=Bt(),Te=Wt(),Me=c.useMemo(()=>{const t=ds();return{isVSCode:oe(),isWeb:!t&&us(),isDesktop:t,isMobile:U,routingAvailable:Ne,enterpriseMode:Ce,jevBlockedByEnterprise:Te}},[U,Ne,Ce,Te]),Ie=c.useMemo(()=>hs.filter(t=>t.slug!=="home").filter(t=>t.isAvailable?t.isAvailable(Me):!0).map(t=>{const a=gs(t.slug)??"settings-3",l=(t.keywords??[]).join(" ");return{id:`settings:${t.slug}`,title:t.title,icon:t.slug==="mcp"?n.jsx(Lt,{className:"me-2 h-4 w-4"}):n.jsx(p,{name:a,className:"me-2 h-4 w-4"}),searchText:`${t.title} ${t.group} ${l}`,onSelect:S(()=>{m(t.slug),r(!0)})}}),[Me,S,m,r]),le=c.useMemo(()=>{const t=h.filter(a=>!zt(a)&&!a.parentID);return Gt(t,g,T)},[h,g,T]),Ae=Ut(),De=Z(t=>t.worktreeMetadata),ot=c.useCallback((t,a)=>{const l=De.get(t);return l?.branch?l.branch.trim()||null:a&&Ae.get(a)?.trim()||null},[De,Ae]),[Fe,V]=c.useState([]),[ce,K]=c.useState(""),L=js(I,Q),ae=Z(t=>t.availableWorktrees),Ee=c.useMemo(()=>I?ae.map(t=>W(t.path)).filter(t=>t.startsWith(`${I}/`)).map(t=>`${t}/`):[],[ae,I]),Oe=c.useRef(Ee);Oe.current=Ee;const rt=w(t=>t.messageSearchEnabled)&&!oe(),it=w(t=>t.messageSearchReasoningEnabled),$e=w(t=>t.showReasoningTraces),Re=it&&$e,me=ke==="reasoning"&&!Re?"any":ke,de=c.useMemo(()=>x?.path?[...new Set([W(x.path),...ae.map(t=>W(t.path))])]:[],[x?.path,ae]),lt=B&&ve==="project"&&de.length>0,{state:D,loadMore:ct}=Ps({query:Q,enabled:e&&rt,limit:B?Is:Ms,directories:lt?de:void 0,role:B&&me!=="any"?me:null,includeReasoning:$e}),J="hits"in D?D.hits:[];c.useEffect(()=>{if(!e){V([]),K("");return}if(!L){V([]),K("");return}if(!I){V([]),K("");return}let t=!1;const a=Oe.current,l=a.length>0?100:40;return _(I,Q,l,{type:"file"}).then(k=>{t||(V(k.map(F=>({path:W(F.path),name:F.name,relativePath:F.relativePath})).filter(F=>!a.some(ne=>F.path.startsWith(ne)))),K(L))}).catch(()=>{t||(V([]),K(L))}),()=>{t=!0}},[e,I,Q,L,_]);const E=$.length>0,ue=c.useMemo(()=>{if(!E)return ie.filter(a=>!a.secondary).map(a=>({item:a,score:0}));const t=ie.filter(a=>be(a.searchText,$));return ee(t,$,a=>a.searchText,{limit:7,noFuzzy:!0})},[ie,$,E]),pe=c.useMemo(()=>{if(!E)return[];const t=Ie.filter(a=>be(a.searchText,$));return ee(t,$,a=>a.searchText,{limit:7,noFuzzy:!0})},[Ie,$,E]),he=c.useMemo(()=>E?ee(le,$,t=>t.title||"",{limit:7,threshold:.2}):le.slice(0,5).map(t=>({item:t,score:0})),[le,$,E]),ge=c.useMemo(()=>e?bs(Fe,Q,L,ce):[],[e,Fe,ce,L,Q]),mt=e&&L.length>0&&ce!==L,fe=c.useMemo(()=>{if(!E)return[];const a=M.map(l=>({...l,displayName:l.label||l.path.split("/").pop()||l.path,searchText:`${l.label||""} ${l.path}`})).filter(l=>be(l.searchText,$));return ee(a,$,l=>l.searchText,{limit:7,threshold:.4})},[M,$,E]),xe=w(t=>e&&I?t.contextPanelByDirectory[I]?.tabs:void 0),dt=c.useMemo(()=>!I||!xe?[]:xe.filter(t=>t.mode==="file"&&t.targetPath).sort((t,a)=>a.touchedAt-t.touchedAt).slice(0,5).flatMap(t=>{const a=W(t.targetPath??"");if(!a)return[];const l=a.startsWith(`${I}/`)?a.slice(I.length+1):a;return[{path:a,name:Ze(l).name,relativePath:l}]}),[xe,I]),Se=c.useCallback(t=>{if(!t)return null;const a=W(t);let l=null;for(const k of M){const F=W(k.path);a!==F&&!a.startsWith(`${F}/`)||l&&l.length>=F.length||(l={label:k.label||F.split("/").pop()||F,length:F.length})}return l?.label??null},[M]),_e=ue.map(t=>t.item),Be=pe.map(t=>t.item),We=he.map(t=>t.item),Le=E?ge.map(t=>t.item):[],ze=E?fe.map(t=>t.item):[],Ge=E?[]:dt,ut=c.useMemo(()=>{if(!E)return["openFiles","sessions","commands"];const t=l=>l.length?l[0].score:1/0,a=[{key:"commands",score:t(ue)},{key:"settings",score:t(pe)},{key:"sessions",score:t(he)},{key:"files",score:t(ge)},{key:"projects",score:t(fe)}];return a.sort((l,k)=>l.score-k.score),[...a.map(l=>l.key),"messages"]},[E,ue,pe,he,ge,fe]),Ue=c.useCallback(t=>{R(),qt(t.role==="reasoning"?t.id:null),Yt(t.sessionId,t.id)},[R]),pt=c.useCallback(t=>{R(),C(t.id,je(t))},[R,C]),ht=c.useCallback(async t=>{if(!I)return;const a=await fs(G,t,{directory:I});if(!a.ok){X.error(xs(a.reason));return}i(I,t),R()},[I,G,i,R]),gt=c.useCallback((t,a)=>{R(),P({selectedProjectId:t,directoryOverride:a})},[R,P]),ft=c.useCallback(t=>Qt(Ht(t,O)),[O]),qe=(t,a)=>{const{name:l,directory:k}=Ze(t.relativePath||t.name);return n.jsxs(z,{value:`${a}:${t.path}`,onSelect:()=>{ht(t.path)},children:[n.jsx(os,{filePath:t.path,className:"me-2 size-4 shrink-0"}),n.jsx("span",{className:"shrink-0 truncate","aria-label":t.relativePath,children:l}),k?n.jsx(et,{text:k,className:"flex-1"}):null]},`${a}:${t.path}`)};return n.jsxs(Vt,{open:e,onOpenChange:(t,a)=>{if(!t&&B&&a.reason==="escape-key"){a.cancel(),H(!1);return}o(t)},children:[n.jsxs(Kt,{className:"sr-only",children:[n.jsx(Jt,{children:s("commandPalette.title")}),n.jsx(Zt,{children:s("commandPalette.description")})]}),n.jsx(Xt,{className:"gap-0 overflow-hidden p-0 max-w-[min(720px,calc(100vw-2rem))]",layerClassName:"items-start pt-[12vh]",showCloseButton:!1,children:n.jsxs(es,{shouldFilter:!1,className:"[&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:pt-2 [&_[cmdk-group-heading]]:pb-1 [&_[cmdk-group-heading]]:!text-[11px] [&_[cmdk-group-heading]]:!leading-4 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-4 [&_[cmdk-input-wrapper]_svg]:w-4 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-1.5 [&_[cmdk-item]_svg]:h-4 [&_[cmdk-item]_svg]:w-4 [&_[cmdk-item]]:typography-meta",children:[n.jsx(ts,{value:se,onValueChange:we,placeholder:s(B?"commandPalette.messages.placeholder":"commandPalette.input.placeholder"),onKeyDown:t=>{B&&t.key==="Backspace"&&se.length===0&&(t.preventDefault(),H(!1))}}),B?n.jsx(ks,{scope:ve,onScopeChange:at,projectScopeAvailable:de.length>0,author:me,onAuthorChange:nt,reasoningAvailable:Re,onBack:()=>H(!1)}):null,n.jsx("div",{className:st("min-h-0",B?"h-[min(403px,calc(60vh-37px))]":"h-[min(440px,60vh)]"),children:n.jsx(ss,{children:B?n.jsxs(n.Fragment,{children:[J.map(t=>n.jsx(Ke,{hit:t,projectLabel:Se(t.directory),onSelect:Ue},`${t.role}:${t.id}`)),D.status==="ready"&&D.next?n.jsxs(z,{value:"message:load-more",onSelect:ct,disabled:D.loadingMore,children:[n.jsx(p,{name:"more",className:"me-2 h-4 w-4"}),n.jsx("span",{className:"truncate text-muted-foreground",children:s("commandPalette.messages.loadMore")})]}):null,n.jsxs("div",{className:"px-4 py-2 typography-meta text-muted-foreground",role:"status",children:[D.status==="idle"||D.status==="too-short"?s("commandPalette.messages.tooShort"):D.status==="loading"&&J.length===0?s("commandPalette.messages.searching"):D.status==="error"?s("commandPalette.messages.error"):D.status==="unavailable"?s("commandPalette.messages.unavailable"):D.status==="ready"&&J.length===0?s("commandPalette.messages.empty"):null,D.status==="ready"&&D.index?.backfill.state==="running"?` ${s("commandPalette.messages.indexing",{done:D.index.backfill.done,total:D.index.backfill.total})}`:null]})]}):n.jsxs(n.Fragment,{children:[n.jsx(as,{children:s("commandPalette.empty.noResults")}),ut.map(t=>t==="messages"?!E||J.length===0?null:n.jsxs(Y,{heading:s("commandPalette.group.messages"),children:[J.map(a=>n.jsx(Ke,{hit:a,projectLabel:Se(a.directory),onSelect:Ue},`${a.role}:${a.id}`)),n.jsxs(z,{value:"message:show-all",onSelect:()=>H(!0),children:[n.jsx(p,{name:"search",className:"me-2 h-4 w-4"}),n.jsx("span",{className:"truncate text-muted-foreground",children:s("commandPalette.messages.showAll")})]})]},"messages"):t==="openFiles"&&Ge.length>0?n.jsx(Y,{heading:s("commandPalette.group.openFiles"),children:Ge.map(a=>qe(a,"open-file"))},"openFiles"):t==="commands"&&_e.length>0?n.jsx(Y,{heading:s("commandPalette.group.commands"),children:_e.map(a=>n.jsxs(z,{value:a.id,onSelect:a.onSelect,children:[a.icon,n.jsx("span",{className:"truncate",children:a.title}),a.shortcutId?n.jsx(ns,{children:ft(a.shortcutId)}):null]},a.id))},"commands"):t==="settings"&&Be.length>0?n.jsx(Y,{heading:s("commandPalette.group.settings"),children:Be.map(a=>n.jsxs(z,{value:a.id,onSelect:a.onSelect,children:[a.icon,n.jsx("span",{className:"truncate",children:a.title})]},a.id))},"settings"):t==="sessions"&&We.length>0?n.jsx(Y,{heading:s("commandPalette.group.sessions"),children:We.map(a=>{const l=a.title||s("commandPalette.session.untitled"),k=je(a),F=ot(a.id,k),ne=Se(k);return n.jsxs(z,{value:`session:${a.id}`,onSelect:()=>pt(a),children:[n.jsx(p,{name:"chat-ai-3",className:"me-2 h-4 w-4"}),n.jsx("span",{dir:"auto",className:"min-w-0 flex-1 truncate oc-ui-start-align",children:l}),ne?n.jsx("span",{className:"max-w-[180px] shrink-0 truncate text-muted-foreground typography-meta",children:ne}):null,F?n.jsxs("span",{className:"inline-flex max-w-[160px] shrink-0 items-center gap-1 text-muted-foreground typography-meta",children:[n.jsx(p,{name:"git-branch",className:"h-3 w-3"}),n.jsx("span",{className:"truncate",children:F})]}):null]},a.id)})},"sessions"):t==="files"&&Le.length>0?n.jsx(Y,{heading:s("commandPalette.group.files"),children:Le.map(a=>qe(a,"file"))},"files"):t==="projects"&&ze.length>0?n.jsx(Y,{heading:s("commandPalette.group.projects"),children:ze.map(a=>n.jsxs(z,{value:`project:${a.id}`,onSelect:()=>gt(a.id,a.path),children:[n.jsx(p,{name:"folder",className:"me-2 h-4 w-4"}),n.jsx("span",{className:"shrink-0 truncate",children:a.displayName}),n.jsx(et,{text:a.path,className:"flex-1"})]},`project:${a.id}`))},"projects"):null),mt?n.jsx("div",{className:"px-4 py-2 typography-meta text-muted-foreground",children:s("commandPalette.empty.searchingFiles")}):null]})})}),U?null:n.jsxs("div",{className:"flex items-center gap-4 border-t border-border px-3 py-1.5 typography-micro text-muted-foreground","aria-hidden":"true",children:[n.jsxs("span",{children:[n.jsx("kbd",{className:"font-sans",children:"↑↓"})," ",s("commandPalette.footer.navigate")]}),n.jsxs("span",{children:[n.jsx("kbd",{className:"font-sans",children:"↵"})," ",s("commandPalette.footer.open")]}),n.jsxs("span",{children:[n.jsx("kbd",{className:"font-sans",children:"esc"})," ",s("commandPalette.footer.close")]})]})]})})]})};export{pn as CommandPalette};
@@ -1,4 +1,4 @@
1
- import{R as i,f as Xe,j as t}from"./vendor-react-BUCujlKS.js";import{u as ce,l as Ie,t as pi,n as ts,a8 as ns,aD as sn,a5 as we}from"./katex.min-u4DtE8E5.js";import{c as hi,a as gi,u as ss,b as xi,B as yi,C as bi,P as wi,h as ji,e as vi,g as ki,i as Ni,f as Si}from"./PullRequestComparisonSelector-Cvng5foj.js";import{u as Ci,i as Ri,a as Fi,b as Di,c as Ti,d as Ei,s as Vi,W as is,e as Li,S as Ai}from"./SubmoduleDiffSummary-E0GcoYiO.js";import{u as ze,B as je,I as q,N as ve,b7 as on,aE as Pi,aD as Re,b3 as Mi,b8 as Bi,b4 as Ii,aF as _i,bd as zi,b5 as Oi,ej as Wi,G as hs,dw as $i,P as gs,ek as qi,el as _e,A as St,bR as xs,aR as ys,V as Ki,W as Gi,aS as bs,X as Hi,aT as ws,aU as Ui,em as Xi,en as Ji,dp as an,c$ as Qi,bc as rn,bf as Nt,a5 as Yi,bT as Zi,n as Cn,bj as er,eo as tr,ep as rs,eq as nr,er as sr,es as ir}from"./useAppFontEffects-BZrjCfFw.js";import{u as rr,I as or,J as ar,K as os,C as lr,d as cr,W as dr,L as ln,O as ur}from"./runtimeEndpointReset-DcZoNIpr.js";import{b as fr,c as mr,a as jn,P as pr}from"./PierreDiffViewer-ToKfUZsI.js";import{v as hr,a as gr}from"./main-BggWUmia.js";import{p as js}from"./parseDiffFromFile-Phw3Q2Mh.js";import{r as At,u as xr,a as yr,D as br}from"./useDiffFindSurface-D6svD0Z1.js";import"./vendor-scheduler-7OC5HNn7.js";import"./vendor-zod-DDir2TeQ.js";import"./vendor-vite-runtime-DD1OZmLC.js";import"./vendor-zustand-BAGL70zf.js";import"./vendor-opencode-client-h8RufjAw.js";import"./computeVirtualFileMetrics-tFBUWYu1.js";import"./vendor-shiki-Bbf2GEcE.js";import"./vendor-shikijs-core-CGM_jqPK.js";import"./vendor-shikijs-types-CPSbSeK6.js";import"./vendor-shikijs-vscode-textmate-BgLrS_2D.js";import"./vendor-hast-util-to-html-BKBhbTDb.js";import"./vendor-html-void-elements-CkdplsNl.js";import"./vendor-property-information-rJCbAzvX.js";import"./vendor-zwitch-C2o2j-tx.js";import"./vendor-stringify-entities-CsH1VEn9.js";import"./vendor-character-entities-legacy-BpoLgcEt.js";import"./vendor-character-entities-html4-D7taRCQ7.js";import"./vendor-ccount-c2V3InAJ.js";import"./vendor-comma-separated-tokens-D8TqSuIK.js";import"./vendor-space-separated-tokens-DD3iYX1K.js";import"./vendor-hast-util-whitespace-D4Wp6AEg.js";import"./vendor-shikijs-engine-oniguruma-DPWuIF1G.js";import"./themeResolver-yJ9XpNMI.js";import"./vendor-pierre-theming-Dgp7B_O4.js";import"./vendor-shikijs-engine-javascript-Cme4830A.js";import"./vendor-oniguruma-to-es-DLBnFDCE.js";import"./vendor-oniguruma-parser-C0D4_9rT.js";import"./vendor-regex-BBWcyTkg.js";import"./vendor-regex-utilities-2BQyy0xI.js";import"./vendor-regex-recursion-JU4mF-dD.js";import"./vendor-shikijs-transformers-CZWsLLKm.js";import"./vendor-base-ui-CPKyhvxM.js";import"./vendor-floating-ui-utils-D6FqdtJt.js";import"./vendor-floating-ui-dom-BTvzWks8.js";import"./vendor-floating-ui-core-PuGzNPnN.js";import"./vendor-floating-ui-react-dom-DxYCWdHj.js";import"./vendor-use-sync-external-store-D6wYuSt-.js";import"./vendor-simplewebauthn-browser-VDA66rT_.js";import"./vendor-class-variance-authority-5VPnzWs2.js";import"./vendor-clsx-B-dksMZM.js";import"./vendor-dnd-kit-core-BZknOX2w.js";import"./vendor-dnd-kit-utilities-B_MdXhJC.js";import"./vendor-dnd-kit-accessibility-BHxJPORy.js";import"./vendor-dnd-kit-sortable-CsEagZ81.js";import"./vendor-tanstack-react-virtual-Bmi0tTrf.js";import"./vendor-tanstack-virtual-core-CdGDGrnp.js";import"./vendor-framer-motion-DxDVhOLc.js";import"./vendor-motion-dom-HXPOMxb7.js";import"./vendor-motion-utils-BGh8QBgx.js";import"./vendor-codemirror-commands-dar6chwA.js";import"./vendor-codemirror-state-Dek9sMtw.js";import"./vendor-marijn-find-cluster-break-DXwl3gUT.js";import"./vendor-codemirror-view-B66jUSmE.js";import"./vendor-style-mod-NZ5MEPvj.js";import"./vendor-w3c-keyname-Vcq4gwWv.js";import"./vendor-crelt-C8TCjufn.js";import"./vendor-codemirror-language-DyL0aCoH.js";import"./vendor-lezer-common-B3-cUCR_.js";import"./vendor-lezer-highlight-CDMHUZ74.js";import"./vendor-codemirror-streamparser-CmlTsbN2.js";import"./vendor-codemirror-lang-javascript-Cem6LjJ8.js";import"./vendor-lezer-javascript-D7Tj24ot.js";import"./vendor-lezer-lr-bhwg1HMg.js";import"./vendor-codemirror-autocomplete-CIqXJolH.js";import"./vendor-codemirror-lang-json-C9rLLO0q.js";import"./vendor-lezer-json-Iaex0UN-.js";import"./vendor-codemirror-lang-css-9qjxcVkg.js";import"./vendor-lezer-css-C5xB6jxd.js";import"./vendor-codemirror-lang-html-D7VQUxeE.js";import"./vendor-lezer-html-C0I1p52t.js";import"./vendor-codemirror-lang-markdown-Cikh4w2I.js";import"./vendor-lezer-markdown-C6g-d6P3.js";import"./vendor-codemirror-language-data-DsRKCbVv.js";import"./vendor-codemirror-lang-python-DVl8-2Op.js";import"./vendor-lezer-python-CvuFxeZl.js";import"./vendor-sonner-DFyL3AvE.js";import"./vendor-capacitor-core-B4EWRrHz.js";import"./vendor-cmdk-DgLInKvT.js";import"./vendor-radix-ui-react-dialog-B94Bt2qq.js";import"./vendor-radix-ui-primitive-Dc_FVRD7.js";import"./vendor-radix-ui-react-compose-refs-DcAh5WdT.js";import"./vendor-radix-ui-react-context-Czxm7Z62.js";import"./vendor-radix-ui-react-id-f5BLKEVw.js";import"./vendor-radix-ui-react-use-layout-effect-D_3IhJdJ.js";import"./vendor-radix-ui-react-use-controllable-state-BFT5YmkA.js";import"./vendor-radix-ui-react-dismissable-layer-D7kXcwgJ.js";import"./vendor-radix-ui-react-primitive-DhVoX9SD.js";import"./vendor-radix-ui-react-slot-BQgQOasS.js";import"./vendor-radix-ui-react-use-callback-ref-BZPnuXAC.js";import"./vendor-radix-ui-react-use-escape-keydown-oph88g-F.js";import"./vendor-radix-ui-react-focus-scope-CiaxW4dD.js";import"./vendor-radix-ui-react-portal-BMJYHWck.js";import"./vendor-radix-ui-react-presence-CNxf-uq4.js";import"./vendor-radix-ui-react-focus-guards-B6qJXYua.js";import"./vendor-react-remove-scroll-DO7dCTnK.js";import"./vendor-tslib-De9GV7Vy.js";import"./vendor-react-remove-scroll-bar-BcFYyj3E.js";import"./vendor-react-style-singleton-q6EMHnwf.js";import"./vendor-get-nonce-C-Z93AgS.js";import"./vendor-use-sidecar-zDC0RhA3.js";import"./vendor-use-callback-ref-D3RC8gqK.js";import"./vendor-aria-hidden-DvXkyWUv.js";import"./vendor-legendapp-list-D2O6oUGf.js";import"./vendor-tailwind-merge-CPcsbTWB.js";import"./vendor-fuse.js-Dw8P0qyA.js";import"./isDiffPlainText-DxiX2X7Q.js";import"./vendor-diff-C3JhlQdm.js";import"./pierreDiffTint-J7FoDbyq.js";import"./Virtualizer-CgLU97RO.js";import"./useInlineCommentController-CV8dwlO7.js";import"./appThemeRegistry-DsBAd3cG.js";import"./textMateThemeFromAppTheme-kAREvDjp.js";import"./useRootScrollLock-5OfQ_8IH.js";import"./moveWorkspacePath-CUn1SV66.js";const wr=i.memo(function(e){const s=Xe.c(13),{index:o,staged:x,busyHunk:f,disabled:C,onAction:v}=e,{t:j}=ze();let y;s[0]!==x?(y=x?["unstage"]:["discard","stage"],s[0]=x,s[1]=y):y=s[1];const d=y;let k;s[2]===Symbol.for("react.memo_cache_sentinel")?(k={top:"var(--oc-hunk-action-offset, 0.25rem)"},s[2]=k):k=s[2];let p;s[3]!==d||s[4]!==f||s[5]!==C||s[6]!==o||s[7]!==v||s[8]!==j?(p=t.jsx("div",{className:"pointer-events-auto flex items-center gap-0.5 rounded-full border border-[var(--interactive-border)]/45 bg-[var(--surface-background)]/95 px-1 py-0.5 shadow-sm backdrop-blur-md",children:d.map(R=>{const N=j(R==="stage"?"diffView.hunk.stageTitle":R==="unstage"?"diffView.hunk.unstageTitle":"diffView.hunk.discardTitle",{index:o+1}),S=f?.index===o&&f.action===R;return t.jsx(je,{variant:"ghost",size:"xs",className:ve("rounded-full bg-transparent text-muted-foreground hover:bg-transparent hover:text-foreground",R==="discard"&&"text-[var(--status-error)] hover:text-[var(--status-error)]",R==="stage"&&"text-[var(--status-success)] hover:text-[var(--status-success)]"),disabled:C||f!==null,title:N,"aria-label":N,onPointerDown:jr,onClick:g=>{g.stopPropagation(),v(o,R)},children:t.jsx(q,{name:S?"loader-4":R==="stage"?"add":"arrow-go-back",className:ve(R==="stage"?"size-4":"size-3.5",S&&"animate-spin")})},R)})}),s[3]=d,s[4]=f,s[5]=C,s[6]=o,s[7]=v,s[8]=j,s[9]=p):p=s[9];let m;return s[10]!==o||s[11]!==p?(m=t.jsx("div",{className:"pointer-events-none absolute inset-e-3 z-20",style:k,"data-hunk-actions":o,children:p}),s[10]=o,s[11]=p,s[12]=m):m=s[12],m});function jr(a){return a.stopPropagation()}const as=(a,e)=>{if(e.length===0)return null;let s=null,o=null;for(const f of e)f.top<=a?(!s||f.top>s.top)&&(s=f):(!o||f.top<o.top)&&(o=f);const x=s??o;return x?{path:x.path,topOffset:x.top-a}:null},vr=(a,e,s,o)=>Math.min(Math.max(0,o),Math.max(0,a+s-e)),vs=(a,e)=>{const s=[],o=(x,f)=>{const C=Array.from(x.children.values()).sort((j,y)=>j.name.localeCompare(y.name));for(const j of C){const{node:y,label:d}=mr(j),k=!e.has(y.path);s.push({kind:"directory",key:`dir:${y.path}`,depth:f,path:y.path,label:d,fileCount:y.files.length,expanded:k}),k&&o(y,f+1)}const v=[...x.directFiles].sort((j,y)=>jn(j.path).localeCompare(jn(y.path)));for(const j of v)s.push({kind:"file",key:`file:${j.path}`,depth:f,name:jn(j.path),file:j})};return o(fr(a),0),s},ls=a=>{if(!a)return null;const e=a.split(`
1
+ import{R as i,f as Xe,j as t}from"./vendor-react-BUCujlKS.js";import{u as ce,l as Ie,t as pi,n as ts,a8 as ns,aD as sn,a5 as we}from"./katex.min-u4DtE8E5.js";import{c as hi,a as gi,u as ss,b as xi,B as yi,C as bi,P as wi,h as ji,e as vi,g as ki,i as Ni,f as Si}from"./PullRequestComparisonSelector-DOW9_VlK.js";import{u as Ci,i as Ri,a as Fi,b as Di,c as Ti,d as Ei,s as Vi,W as is,e as Li,S as Ai}from"./SubmoduleDiffSummary-BS1PSa4l.js";import{u as ze,B as je,I as q,N as ve,b7 as on,aE as Pi,aD as Re,b3 as Mi,b8 as Bi,b4 as Ii,aF as _i,bd as zi,b5 as Oi,ej as Wi,G as hs,dw as $i,P as gs,ek as qi,el as _e,A as St,bR as xs,aR as ys,V as Ki,W as Gi,aS as bs,X as Hi,aT as ws,aU as Ui,em as Xi,en as Ji,dp as an,c$ as Qi,bc as rn,bf as Nt,a5 as Yi,bT as Zi,n as Cn,bj as er,eo as tr,ep as rs,eq as nr,er as sr,es as ir}from"./useAppFontEffects-d9vsRNKm.js";import{u as rr,I as or,J as ar,K as os,C as lr,d as cr,W as dr,L as ln,O as ur}from"./runtimeEndpointReset-BJUtkqal.js";import{b as fr,c as mr,a as jn,P as pr}from"./PierreDiffViewer-Ck0P8Q2W.js";import{v as hr,a as gr}from"./main-CcnDurk6.js";import{p as js}from"./parseDiffFromFile-C9ASoy7R.js";import{r as At,u as xr,a as yr,D as br}from"./useDiffFindSurface-sw5jZ-9V.js";import"./vendor-scheduler-7OC5HNn7.js";import"./vendor-zod-DDir2TeQ.js";import"./vendor-vite-runtime-DD1OZmLC.js";import"./vendor-zustand-BAGL70zf.js";import"./vendor-opencode-client-h8RufjAw.js";import"./computeVirtualFileMetrics-rZJ-MSfY.js";import"./vendor-shiki-Bbf2GEcE.js";import"./vendor-shikijs-core-CGM_jqPK.js";import"./vendor-shikijs-types-CPSbSeK6.js";import"./vendor-shikijs-vscode-textmate-BgLrS_2D.js";import"./vendor-hast-util-to-html-BKBhbTDb.js";import"./vendor-html-void-elements-CkdplsNl.js";import"./vendor-property-information-rJCbAzvX.js";import"./vendor-zwitch-C2o2j-tx.js";import"./vendor-stringify-entities-CsH1VEn9.js";import"./vendor-character-entities-legacy-BpoLgcEt.js";import"./vendor-character-entities-html4-D7taRCQ7.js";import"./vendor-ccount-c2V3InAJ.js";import"./vendor-comma-separated-tokens-D8TqSuIK.js";import"./vendor-space-separated-tokens-DD3iYX1K.js";import"./vendor-hast-util-whitespace-D4Wp6AEg.js";import"./vendor-shikijs-engine-oniguruma-DPWuIF1G.js";import"./themeResolver-yJ9XpNMI.js";import"./vendor-pierre-theming-Dgp7B_O4.js";import"./vendor-shikijs-engine-javascript-Cme4830A.js";import"./vendor-oniguruma-to-es-DLBnFDCE.js";import"./vendor-oniguruma-parser-C0D4_9rT.js";import"./vendor-regex-BBWcyTkg.js";import"./vendor-regex-utilities-2BQyy0xI.js";import"./vendor-regex-recursion-JU4mF-dD.js";import"./vendor-shikijs-transformers-CZWsLLKm.js";import"./vendor-base-ui-CPKyhvxM.js";import"./vendor-floating-ui-utils-D6FqdtJt.js";import"./vendor-floating-ui-dom-BTvzWks8.js";import"./vendor-floating-ui-core-PuGzNPnN.js";import"./vendor-floating-ui-react-dom-DxYCWdHj.js";import"./vendor-use-sync-external-store-D6wYuSt-.js";import"./vendor-simplewebauthn-browser-VDA66rT_.js";import"./vendor-class-variance-authority-5VPnzWs2.js";import"./vendor-clsx-B-dksMZM.js";import"./vendor-dnd-kit-core-BZknOX2w.js";import"./vendor-dnd-kit-utilities-B_MdXhJC.js";import"./vendor-dnd-kit-accessibility-BHxJPORy.js";import"./vendor-dnd-kit-sortable-CsEagZ81.js";import"./vendor-tanstack-react-virtual-Bmi0tTrf.js";import"./vendor-tanstack-virtual-core-CdGDGrnp.js";import"./vendor-framer-motion-DxDVhOLc.js";import"./vendor-motion-dom-HXPOMxb7.js";import"./vendor-motion-utils-BGh8QBgx.js";import"./vendor-codemirror-commands-dar6chwA.js";import"./vendor-codemirror-state-Dek9sMtw.js";import"./vendor-marijn-find-cluster-break-DXwl3gUT.js";import"./vendor-codemirror-view-B66jUSmE.js";import"./vendor-style-mod-NZ5MEPvj.js";import"./vendor-w3c-keyname-Vcq4gwWv.js";import"./vendor-crelt-C8TCjufn.js";import"./vendor-codemirror-language-DyL0aCoH.js";import"./vendor-lezer-common-B3-cUCR_.js";import"./vendor-lezer-highlight-CDMHUZ74.js";import"./vendor-codemirror-streamparser-CmlTsbN2.js";import"./vendor-codemirror-lang-javascript-Cem6LjJ8.js";import"./vendor-lezer-javascript-D7Tj24ot.js";import"./vendor-lezer-lr-bhwg1HMg.js";import"./vendor-codemirror-autocomplete-CIqXJolH.js";import"./vendor-codemirror-lang-json-C9rLLO0q.js";import"./vendor-lezer-json-Iaex0UN-.js";import"./vendor-codemirror-lang-css-9qjxcVkg.js";import"./vendor-lezer-css-C5xB6jxd.js";import"./vendor-codemirror-lang-html-D7VQUxeE.js";import"./vendor-lezer-html-C0I1p52t.js";import"./vendor-codemirror-lang-markdown-Cikh4w2I.js";import"./vendor-lezer-markdown-C6g-d6P3.js";import"./vendor-codemirror-language-data-DP_Bh3S8.js";import"./vendor-codemirror-lang-python-DVl8-2Op.js";import"./vendor-lezer-python-CvuFxeZl.js";import"./vendor-sonner-DFyL3AvE.js";import"./vendor-capacitor-core-B4EWRrHz.js";import"./vendor-cmdk-DgLInKvT.js";import"./vendor-radix-ui-react-dialog-B94Bt2qq.js";import"./vendor-radix-ui-primitive-Dc_FVRD7.js";import"./vendor-radix-ui-react-compose-refs-DcAh5WdT.js";import"./vendor-radix-ui-react-context-Czxm7Z62.js";import"./vendor-radix-ui-react-id-f5BLKEVw.js";import"./vendor-radix-ui-react-use-layout-effect-D_3IhJdJ.js";import"./vendor-radix-ui-react-use-controllable-state-BFT5YmkA.js";import"./vendor-radix-ui-react-dismissable-layer-D7kXcwgJ.js";import"./vendor-radix-ui-react-primitive-DhVoX9SD.js";import"./vendor-radix-ui-react-slot-BQgQOasS.js";import"./vendor-radix-ui-react-use-callback-ref-BZPnuXAC.js";import"./vendor-radix-ui-react-use-escape-keydown-oph88g-F.js";import"./vendor-radix-ui-react-focus-scope-CiaxW4dD.js";import"./vendor-radix-ui-react-portal-BMJYHWck.js";import"./vendor-radix-ui-react-presence-CNxf-uq4.js";import"./vendor-radix-ui-react-focus-guards-B6qJXYua.js";import"./vendor-react-remove-scroll-DO7dCTnK.js";import"./vendor-tslib-De9GV7Vy.js";import"./vendor-react-remove-scroll-bar-BcFYyj3E.js";import"./vendor-react-style-singleton-q6EMHnwf.js";import"./vendor-get-nonce-C-Z93AgS.js";import"./vendor-use-sidecar-zDC0RhA3.js";import"./vendor-use-callback-ref-D3RC8gqK.js";import"./vendor-aria-hidden-DvXkyWUv.js";import"./vendor-legendapp-list-D2O6oUGf.js";import"./vendor-tailwind-merge-CPcsbTWB.js";import"./vendor-fuse.js-Dw8P0qyA.js";import"./isDiffPlainText-DMFSMXcK.js";import"./vendor-diff-C3JhlQdm.js";import"./pierreDiffTint-IfgQ6oty.js";import"./Virtualizer-B8rX50qD.js";import"./useInlineCommentController-Cw5IRM5Y.js";import"./appThemeRegistry-CnS_OWEL.js";import"./textMateThemeFromAppTheme-Bye_bpEL.js";import"./useRootScrollLock-BWsNuapq.js";import"./moveWorkspacePath-By4gjwmW.js";const wr=i.memo(function(e){const s=Xe.c(13),{index:o,staged:x,busyHunk:f,disabled:C,onAction:v}=e,{t:j}=ze();let y;s[0]!==x?(y=x?["unstage"]:["discard","stage"],s[0]=x,s[1]=y):y=s[1];const d=y;let k;s[2]===Symbol.for("react.memo_cache_sentinel")?(k={top:"var(--oc-hunk-action-offset, 0.25rem)"},s[2]=k):k=s[2];let p;s[3]!==d||s[4]!==f||s[5]!==C||s[6]!==o||s[7]!==v||s[8]!==j?(p=t.jsx("div",{className:"pointer-events-auto flex items-center gap-0.5 rounded-full border border-[var(--interactive-border)]/45 bg-[var(--surface-background)]/95 px-1 py-0.5 shadow-sm backdrop-blur-md",children:d.map(R=>{const N=j(R==="stage"?"diffView.hunk.stageTitle":R==="unstage"?"diffView.hunk.unstageTitle":"diffView.hunk.discardTitle",{index:o+1}),S=f?.index===o&&f.action===R;return t.jsx(je,{variant:"ghost",size:"xs",className:ve("rounded-full bg-transparent text-muted-foreground hover:bg-transparent hover:text-foreground",R==="discard"&&"text-[var(--status-error)] hover:text-[var(--status-error)]",R==="stage"&&"text-[var(--status-success)] hover:text-[var(--status-success)]"),disabled:C||f!==null,title:N,"aria-label":N,onPointerDown:jr,onClick:g=>{g.stopPropagation(),v(o,R)},children:t.jsx(q,{name:S?"loader-4":R==="stage"?"add":"arrow-go-back",className:ve(R==="stage"?"size-4":"size-3.5",S&&"animate-spin")})},R)})}),s[3]=d,s[4]=f,s[5]=C,s[6]=o,s[7]=v,s[8]=j,s[9]=p):p=s[9];let m;return s[10]!==o||s[11]!==p?(m=t.jsx("div",{className:"pointer-events-none absolute inset-e-3 z-20",style:k,"data-hunk-actions":o,children:p}),s[10]=o,s[11]=p,s[12]=m):m=s[12],m});function jr(a){return a.stopPropagation()}const as=(a,e)=>{if(e.length===0)return null;let s=null,o=null;for(const f of e)f.top<=a?(!s||f.top>s.top)&&(s=f):(!o||f.top<o.top)&&(o=f);const x=s??o;return x?{path:x.path,topOffset:x.top-a}:null},vr=(a,e,s,o)=>Math.min(Math.max(0,o),Math.max(0,a+s-e)),vs=(a,e)=>{const s=[],o=(x,f)=>{const C=Array.from(x.children.values()).sort((j,y)=>j.name.localeCompare(y.name));for(const j of C){const{node:y,label:d}=mr(j),k=!e.has(y.path);s.push({kind:"directory",key:`dir:${y.path}`,depth:f,path:y.path,label:d,fileCount:y.files.length,expanded:k}),k&&o(y,f+1)}const v=[...x.directFiles].sort((j,y)=>jn(j.path).localeCompare(jn(y.path)));for(const j of v)s.push({kind:"file",key:`file:${j.path}`,depth:f,name:jn(j.path),file:j})};return o(fr(a),0),s},ls=a=>{if(!a)return null;const e=a.split(`
2
2
  `);let s=null;for(const o of e){const x=o.match(/^@@\s*-\d+(?:,\d+)?\s+\+(\d+)(?:,\d+)?\s*@@/);if(x){const f=Number.parseInt(x[1]??"",10);s=Number.isFinite(f)&&f>=1?f:null;continue}if(s!==null){if(o.startsWith(" ")){s+=1;continue}if(o.startsWith("+"))return s;if(o.startsWith("-"))return Math.max(1,s)}}return null};function kr(){const a=new Map;return({directory:e,filePath:s,revision:o,staged:x,contextLines:f,peers:C,getGitDiffs:v})=>{const j=(p,m)=>{const R=a.get(p);return R!==void 0&&R.directory===e&&R.revision===m},y=a.get(s);if(y&&j(s,o))return y.read;const d=new Map([[s,o]]);for(const p of C)!d.has(p.filePath)&&!j(p.filePath,p.revision)&&d.set(p.filePath,p.revision);const k=v(e,{paths:[...d.keys()],staged:x,contextLines:f}).then(p=>new Map(p.map(m=>[m.path,m])));for(const[p,m]of d){const R=k.then(N=>N.get(p)??null,()=>(a.get(p)?.read===R&&a.delete(p),null));a.set(p,{directory:e,revision:m,read:R})}return a.get(s)?.read??Promise.resolve(null)}}const Nr=1100,Sr=15e3,kn=500,cs=300,en=1e6,mt=3,Cr=a=>a<=6?a:a<=12?6:a<=25?4:2,Nn={status:"loading"},Rr=3,Fr=i.memo(()=>{const a=Xe.c(4),{t:e}=ze();let s;a[0]!==e?(s=e("diffView.binary.unavailable"),a[0]=e,a[1]=s):s=a[1];let o;return a[2]!==s?(o=t.jsx("div",{className:"rounded-lg border border-border/60 bg-background px-3 py-2",children:t.jsx("div",{className:"typography-meta text-muted-foreground",children:s})}),a[2]=s,a[3]=o):o=a[3],o}),ks=a=>{const{index:e,working_dir:s}=a;return e==="A"||s==="A"||e==="?"||s==="?"},tn=a=>{const e=a.index?.trim();return!!(e&&e!=="?")},nn=a=>!!a.working_dir?.trim()||a.index==="?",Sn=(a,e)=>Qi(a,e),ds=(a,e)=>{const s=a.split(`
3
3
  `),o=e.split(`
4
4
  `),x=Math.min(s.length,o.length);for(let f=0;f<x;f+=1)if(s[f]!==o[f])return f+1;return o.length>s.length?s.length+1:s.length>o.length?Math.max(1,o.length):1},Ct=(a,e,s)=>Ni(e)?{original:"",modified:"",isBinary:!0,patch:e,contextMode:s}:{original:"",modified:"",patch:e,fileDiff:Si(a,e),contextMode:s},Pt=(a,e)=>e.isBinary||e.submodule?null:e.fileDiff?e.fileDiff:!e.original&&!e.modified?null:js({name:a,contents:e.original},{name:a,contents:e.modified}),us=new WeakMap;let fs=0;const ms=a=>{if(!a)return"absent";let e=us.get(a);return e===void 0&&(fs+=1,e=fs,us.set(a,e)),String(e)},ps=(a,e)=>e===a||a.endsWith("/")&&e.startsWith(a),Rn=(a,e,s)=>{const o=a??0,x=e??0;return!o&&!x?null:t.jsxs("span",{className:ve("typography-meta flex items-center gap-1 text-xs whitespace-nowrap","flex-shrink-0",s?.className),children:[o?t.jsxs("span",{style:{color:"var(--status-success)"},children:["+",o]}):null,x?t.jsxs("span",{style:{color:"var(--status-error)"},children:["-",x]}):null]})},Dr=i.memo(a=>{const e=Xe.c(70),{scope:s,workingCount:o,stagedCount:x,turnCount:f,branchCount:C,commitCount:v,prCount:j,showCommitOption:y,showBranchOption:d,changeRequestProvider:k,onScopeChange:p}=a,{t:m}=ze(),[R,N]=i.useState(!1),S=s==="pr"?j??0:s==="staged"?x:s==="turn"?f:s==="branch"?C??0:s==="commit"?v??0:o;let g;e[0]!==k||e[1]!==s||e[2]!==m?(g=m(s==="pr"?rn("session.githubIntegration.tabs.pullRequests",k):s==="staged"?"diffView.scope.staged":s==="turn"?"diffView.scope.lastTurn":s==="branch"?"diffView.scope.branch":s==="commit"?"commitComparison.mode":"diffView.scope.changed"),e[0]=k,e[1]=s,e[2]=m,e[3]=g):g=e[3];const T=g;let L;e[4]!==m?(L=m("diffView.scope.selectorAria"),e[4]=m,e[5]=L):L=e[5];let J;e[6]!==S?(J=t.jsxs("span",{className:"diff-toolbar__scope-count",children:[": ",S]}),e[6]=S,e[7]=J):J=e[7];let K;e[8]!==T||e[9]!==J?(K=t.jsxs("span",{className:"whitespace-nowrap",children:[T,J]}),e[8]=T,e[9]=J,e[10]=K):K=e[10];let fe;e[11]===Symbol.for("react.memo_cache_sentinel")?(fe=t.jsx(q,{name:"arrow-down-s",className:"size-4 flex-shrink-0 opacity-60"}),e[11]=fe):fe=e[11];let ee;e[12]!==L||e[13]!==K?(ee=t.jsx(bs,{asChild:!0,children:t.jsxs("button",{type:"button",className:"flex h-7 flex-shrink-0 items-center gap-1.5 rounded-md px-2 typography-ui-label font-semibold text-foreground outline-none hover:bg-interactive-hover focus-visible:ring-2 focus-visible:ring-ring","aria-label":L,children:[K,fe]})}),e[12]=L,e[13]=K,e[14]=ee):ee=e[14];let ne;e[15]!==p?(ne=A=>{(A==="working"||A==="staged"||A==="turn"||A==="branch"||A==="commit"||A==="pr")&&(p?.(A),N(!1))},e[15]=p,e[16]=ne):ne=e[16];let h;e[17]!==m?(h=m("diffView.scope.changed"),e[17]=m,e[18]=h):h=e[18];let O;e[19]!==h?(O=t.jsx("span",{children:h}),e[19]=h,e[20]=O):O=e[20];let H;e[21]!==o?(H=t.jsx("span",{className:"typography-meta text-muted-foreground",children:o}),e[21]=o,e[22]=H):H=e[22];let P;e[23]!==H||e[24]!==O?(P=t.jsx(Nt,{value:"working",children:t.jsxs("span",{className:"flex min-w-0 flex-1 items-center justify-between gap-3",children:[O,H]})}),e[23]=H,e[24]=O,e[25]=P):P=e[25];let G;e[26]!==m?(G=m("diffView.scope.staged"),e[26]=m,e[27]=G):G=e[27];let U;e[28]!==G?(U=t.jsx("span",{children:G}),e[28]=G,e[29]=U):U=e[29];let te;e[30]!==x?(te=t.jsx("span",{className:"typography-meta text-muted-foreground",children:x}),e[30]=x,e[31]=te):te=e[31];let V;e[32]!==U||e[33]!==te?(V=t.jsx(Nt,{value:"staged",children:t.jsxs("span",{className:"flex min-w-0 flex-1 items-center justify-between gap-3",children:[U,te]})}),e[32]=U,e[33]=te,e[34]=V):V=e[34];let F;e[35]!==m?(F=m("diffView.scope.lastTurn"),e[35]=m,e[36]=F):F=e[36];let z;e[37]!==F?(z=t.jsx("span",{children:F}),e[37]=F,e[38]=z):z=e[38];let B;e[39]!==f?(B=t.jsx("span",{className:"typography-meta text-muted-foreground",children:f}),e[39]=f,e[40]=B):B=e[40];let W;e[41]!==z||e[42]!==B?(W=t.jsx(Nt,{value:"turn",children:t.jsxs("span",{className:"flex min-w-0 flex-1 items-center justify-between gap-3",children:[z,B]})}),e[41]=z,e[42]=B,e[43]=W):W=e[43];let X;e[44]!==C||e[45]!==d||e[46]!==m?(X=d?t.jsx(Nt,{value:"branch",children:t.jsxs("span",{className:"flex min-w-0 flex-1 items-center justify-between gap-3",children:[t.jsx("span",{children:m("diffView.scope.branch")}),t.jsx("span",{className:"typography-meta text-muted-foreground",children:C??"…"})]})}):null,e[44]=C,e[45]=d,e[46]=m,e[47]=X):X=e[47];let de;e[48]!==v||e[49]!==y||e[50]!==m?(de=y&&t.jsx(Nt,{value:"commit",children:t.jsxs("span",{className:"flex min-w-0 flex-1 items-center justify-between gap-3",children:[t.jsx("span",{children:m("commitComparison.mode")}),t.jsx("span",{className:"typography-meta text-muted-foreground",children:v??"…"})]})}),e[48]=v,e[49]=y,e[50]=m,e[51]=de):de=e[51];let re;e[52]!==k||e[53]!==j||e[54]!==y||e[55]!==m?(re=y&&t.jsx(Nt,{value:"pr",children:t.jsxs("span",{className:"flex min-w-0 flex-1 items-center justify-between gap-3",children:[t.jsx("span",{children:m(rn("session.githubIntegration.tabs.pullRequests",k))}),t.jsx("span",{className:"typography-meta text-muted-foreground",children:j??"…"})]})}),e[52]=k,e[53]=j,e[54]=y,e[55]=m,e[56]=re):re=e[56];let ie;e[57]!==s||e[58]!==P||e[59]!==V||e[60]!==W||e[61]!==X||e[62]!==de||e[63]!==re||e[64]!==ne?(ie=t.jsx(ws,{align:"start",className:"w-40",children:t.jsxs(er,{value:s,onValueChange:ne,children:[P,V,W,X,de,re]})}),e[57]=s,e[58]=P,e[59]=V,e[60]=W,e[61]=X,e[62]=de,e[63]=re,e[64]=ne,e[65]=ie):ie=e[65];let me;return e[66]!==R||e[67]!==ie||e[68]!==ee?(me=t.jsxs(ys,{open:R,onOpenChange:N,children:[ee,ie]}),e[66]=R,e[67]=ie,e[68]=ee,e[69]=me):me=e[69],me}),Tr=i.memo(a=>{const e=Xe.c(11),{changedFiles:s,selectedFile:o,onSelectFile:x}=a,{t:f}=ze();if(s.length===0)return null;let C;if(e[0]!==s||e[1]!==x||e[2]!==o||e[3]!==f){let j;e[5]!==x||e[6]!==o||e[7]!==f?(j=y=>{const d=ln(y),k=o===y.path;return t.jsx("li",{children:t.jsxs("button",{type:"button",onClick:()=>x(y.path),className:ve("flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-start transition-colors",k?"bg-interactive-selection text-interactive-selection-foreground":"text-muted-foreground hover:bg-interactive-hover hover:text-foreground"),children:[t.jsx(an,{filePath:y.path,className:"h-3.5 w-3.5 flex-shrink-0"}),t.jsx("span",{className:"typography-micro font-semibold w-4 text-center uppercase",style:{color:d.color},title:f(d.descriptionKey),"aria-label":f(d.descriptionKey),children:d.code}),t.jsx("span",{className:"oc-ui-start-align min-w-0 flex-1 truncate typography-meta",style:{direction:"rtl",unicodeBidi:"plaintext"},title:y.path,children:y.path}),Rn(y.insertions,y.deletions)]})},y.path)},e[5]=x,e[6]=o,e[7]=f,e[8]=j):j=e[8],C=s.map(j),e[0]=s,e[1]=x,e[2]=o,e[3]=f,e[4]=C}else C=e[4];let v;return e[9]!==C?(v=t.jsx(Cn,{outerClassName:"flex-1 min-h-0",className:"px-2 py-2",children:t.jsx("ul",{className:"flex flex-col gap-1",children:C})}),e[9]=C,e[10]=v):v=e[10],v}),vn=160,Er=.5,Vr=i.memo(a=>{const e=Xe.c(18),{changedFiles:s,selectedFile:o,onSelectFile:x}=a,{t:f}=ze(),[C,v]=i.useState(Br);let j;e[0]!==s||e[1]!==C?(j=vs(s,C),e[0]=s,e[1]=C,e[2]=j):j=e[2];const y=j;let d,k;e[3]!==o?(d=()=>{o&&v(S=>{const g=Array.from(S).filter(L=>o.startsWith(`${L}/`));if(g.length===0)return S;const T=new Set(S);return g.forEach(L=>T.delete(L)),T})},k=[o],e[3]=o,e[4]=d,e[5]=k):(d=e[4],k=e[5]),i.useEffect(d,k);let p;e[6]===Symbol.for("react.memo_cache_sentinel")?(p=S=>{v(g=>{const T=new Set(g);return T.delete(S)||T.add(S),T})},e[6]=p):p=e[6];const m=p;let R;if(e[7]!==x||e[8]!==y||e[9]!==o||e[10]!==f){let S;e[12]!==x||e[13]!==o||e[14]!==f?(S=g=>{const T=tr(g.depth);if(g.kind==="directory")return t.jsxs("li",{className:"relative",children:[t.jsx(rs,{depth:g.depth}),t.jsxs("button",{type:"button",onClick:()=>m(g.path),"aria-expanded":g.expanded,"aria-label":g.expanded?f("diffView.fileTree.collapseDirectoryAria",{path:g.path}):f("diffView.fileTree.expandDirectoryAria",{path:g.path}),className:"flex w-full items-center gap-1 rounded-md py-1 pe-2 text-start text-muted-foreground transition-colors hover:bg-interactive-hover hover:text-foreground",style:{paddingInlineStart:T},title:g.path,children:[t.jsx(nr,{expanded:g.expanded}),t.jsx("span",{className:"min-w-0 flex-1 truncate typography-meta",children:g.label})]})]},g.key);const L=ln(g.file),J=o===g.file.path;return t.jsxs("li",{className:"relative",children:[t.jsx(rs,{depth:g.depth}),t.jsxs("button",{type:"button",onClick:()=>x(g.file.path),"aria-current":J?"true":void 0,className:ve("flex w-full items-center gap-1.5 rounded-md py-1 pe-2 text-start transition-colors",ir(J)),style:{paddingInlineStart:T},title:g.file.path,children:[t.jsx(an,{filePath:g.file.path,className:"ms-0.5 size-3.5 flex-shrink-0"}),t.jsx("span",{className:"min-w-0 flex-1 truncate typography-meta",children:g.name}),t.jsx(sr,{code:L.code,color:L.color,label:f(L.descriptionKey)})]})]},g.key)},e[12]=x,e[13]=o,e[14]=f,e[15]=S):S=e[15],R=y.map(S),e[7]=x,e[8]=y,e[9]=o,e[10]=f,e[11]=R}else R=e[11];let N;return e[16]!==R?(N=t.jsx(Cn,{outerClassName:"flex-1 min-h-0",className:"px-1.5 py-1.5",children:t.jsx("ul",{className:"flex flex-col",children:R})}),e[16]=R,e[17]=N):N=e[17],N}),Lr=i.memo(a=>{const e=Xe.c(20),{filePath:s,diff:o,renderSideBySide:x}=a,{t:f}=ze(),C=o.original.length>0,v=o.modified.length>0,j=x?"flex flex-row gap-6 items-start justify-center":"flex flex-col gap-4 items-center",y=x?"flex flex-col items-center gap-2 flex-1 min-w-0":"flex flex-col items-center gap-2";let d;e[0]===Symbol.for("react.memo_cache_sentinel")?(d={contain:"layout"},e[0]=d):d=e[0];let k;e[1]!==o.original||e[2]!==s||e[3]!==C||e[4]!==y||e[5]!==x||e[6]!==f?(k=C&&t.jsxs("div",{className:y,children:[t.jsx("span",{className:"typography-meta text-muted-foreground font-medium",children:f("diffView.image.original")}),t.jsx("img",{src:o.original,alt:f("diffView.image.originalAlt",{path:s}),className:x?"max-w-full max-h-[70vh] object-contain":"max-w-full object-contain",style:{imageRendering:"auto"}})]}),e[1]=o.original,e[2]=s,e[3]=C,e[4]=y,e[5]=x,e[6]=f,e[7]=k):k=e[7];let p;e[8]!==o.modified||e[9]!==s||e[10]!==v||e[11]!==C||e[12]!==y||e[13]!==x||e[14]!==f?(p=v&&t.jsxs("div",{className:y,children:[t.jsx("span",{className:"typography-meta text-muted-foreground font-medium",children:f(C?"diffView.image.modified":"diffView.image.new")}),t.jsx("img",{src:o.modified,alt:f("diffView.image.modifiedAlt",{path:s}),className:x?"max-w-full max-h-[70vh] object-contain":"max-w-full object-contain",style:{imageRendering:"auto"}})]}),e[8]=o.modified,e[9]=s,e[10]=v,e[11]=C,e[12]=y,e[13]=x,e[14]=f,e[15]=p):p=e[15];let m;return e[16]!==j||e[17]!==k||e[18]!==p?(m=t.jsx("div",{className:"w-full overflow-auto p-4",style:d,children:t.jsxs("div",{className:j,children:[k,p]})}),e[16]=j,e[17]=k,e[18]=p,e[19]=m):m=e[19],m}),Ns=i.memo(a=>{const e=Xe.c(26),{filePath:s,diff:o,staged:x,renderSideBySide:f,wrapLines:C,hideWhitespace:v,hunkActions:j,onExpandContextRequest:y,pendingContextExpansion:d,contextLoading:k,viewerRef:p,onFindWordRequest:m}=a;let R;e[0]!==s?(R=Zi(s)||"text",e[0]=s,e[1]=R):R=e[1];const N=R;if(o.submodule){let T;return e[2]!==o.submodule||e[3]!==x?(T=t.jsx(Ai,{state:o.submodule,staged:x}),e[2]=o.submodule,e[3]=x,e[4]=T):T=e[4],T}if(o.isBinary){let T;return e[5]===Symbol.for("react.memo_cache_sentinel")?(T=t.jsx(Fr,{}),e[5]=T):T=e[5],T}if(_e(s)){let T;return e[6]!==o||e[7]!==s||e[8]!==f?(T=t.jsx(Lr,{filePath:s,diff:o,renderSideBySide:f}),e[6]=o,e[7]=s,e[8]=f,e[9]=T):T=e[9],T}let S;e[10]===Symbol.for("react.memo_cache_sentinel")?(S={contain:"layout"},e[10]=S):S=e[10];let g;return e[11]!==k||e[12]!==o.fileDiff||e[13]!==o.modified||e[14]!==o.original||e[15]!==s||e[16]!==v||e[17]!==j||e[18]!==N||e[19]!==y||e[20]!==m||e[21]!==d||e[22]!==f||e[23]!==p||e[24]!==C?(g=t.jsx("div",{className:"w-full",style:S,children:t.jsx(pr,{ref:p,original:o.original,modified:o.modified,fileDiff:o.fileDiff,language:N,fileName:s,renderSideBySide:f,wrapLines:C,hideWhitespace:v,layout:"inline",hunkActions:j,onExpandContextRequest:y,pendingContextExpansion:d,contextLoading:k,onFindWordRequest:m})}),e[11]=k,e[12]=o.fileDiff,e[13]=o.modified,e[14]=o.original,e[15]=s,e[16]=v,e[17]=j,e[18]=N,e[19]=y,e[20]=m,e[21]=d,e[22]=f,e[23]=p,e[24]=C,e[25]=g):g=e[25],g}),Ss=a=>a.files.map(e=>{const s=a.diffStats?.staged?.[e.path],o=a.diffStats?.working?.[e.path];return{...e,insertions:(s?.insertions??0)+(o?.insertions??0),deletions:(s?.deletions??0)+(o?.deletions??0),isNew:ks(e)}}).sort((e,s)=>e.path.localeCompare(s.path)),Ar=i.memo(a=>{const e=Xe.c(55),{directory:s,file:o,revision:x,renderSideBySide:f,wrapLines:C,hideWhitespace:v,findKeyPrefix:j,registerViewerRef:y,onFindWordRequest:d,findReveal:k}=a,p=k===void 0?null:k,{t:m}=ze(),{git:R}=on(),[N,S]=i.useState(Nn),[g,T]=i.useState(!1),L=j===void 0?null:`${j}${o.path}`;let J;e[0]!==L||e[1]!==p?.key?(J=()=>{L!==null&&p?.key===L&&T(!0)},e[0]=L,e[1]=p?.key,e[2]=J):J=e[2];let K;e[3]!==L||e[4]!==p?(K=[L,p],e[3]=L,e[4]=p,e[5]=K):K=e[5],i.useEffect(J,K);let fe;e[6]!==L||e[7]!==y?(fe=V=>{L!==null&&y?.(L,V)},e[6]=L,e[7]=y,e[8]=fe):fe=e[8];const ee=fe;let ne;e[9]!==L||e[10]!==d?(ne=V=>{L!==null&&d?.(L,V)},e[9]=L,e[10]=d,e[11]=ne):ne=e[11];const h=ne;let O;e[12]!==o?(O=tn(o)&&!nn(o),e[12]=o,e[13]=O):O=e[13];const H=O,P=`${o.index}:${o.working_dir}:${o.insertions}:${o.deletions}`;let G;e[14]!==s||e[15]!==o.path||e[16]!==R||e[17]!==H||e[18]!==m?(G=()=>{let V=!1;const F=we();return(_e(o.path)?R.getGitFileDiff(s,{path:o.path,staged:H}).then(Ir):R.getGitDiff(s,{path:o.path,staged:H,contextLines:mt}).then(B=>({...Ct(o.path,B.diff,"patch"),submodule:B.submodule}))).then(B=>{V||F!==we()||S({status:"ready",data:B})},B=>{if(V||F!==we())return;const W=B instanceof sn?B.reason==="nested_repository"?m("diffView.unavailable.nestedRepositoryTitle"):B.reason==="untracked_directory"?m("diffView.unavailable.untrackedDirectoryTitle"):m("diffView.unavailable.missingTitle"):B instanceof Error?B.message:String(B);S({status:"error",message:W})}),()=>{V=!0}},e[14]=s,e[15]=o.path,e[16]=R,e[17]=H,e[18]=m,e[19]=G):G=e[19];let U;if(e[20]!==s||e[21]!==o.path||e[22]!==P||e[23]!==R||e[24]!==x||e[25]!==H||e[26]!==m?(U=[s,o.path,P,R,x,H,m],e[20]=s,e[21]=o.path,e[22]=P,e[23]=R,e[24]=x,e[25]=H,e[26]=m,e[27]=U):U=e[27],i.useEffect(G,U),N.status==="loading"){let V;e[28]===Symbol.for("react.memo_cache_sentinel")?(V=t.jsx(q,{name:"loader-4",className:"size-4 animate-spin"}),e[28]=V):V=e[28];let F;e[29]!==m?(F=m("diffView.state.loadingDiff"),e[29]=m,e[30]=F):F=e[30];let z;return e[31]!==F?(z=t.jsxs("div",{className:"flex items-center justify-center gap-2 px-4 py-4 typography-meta text-muted-foreground",children:[V,F]}),e[31]=F,e[32]=z):z=e[32],z}if(N.status==="error"){let V;return e[33]!==N.message?(V=t.jsx("div",{className:"px-4 py-4 text-center typography-meta text-muted-foreground",children:N.message}),e[33]=N.message,e[34]=V):V=e[34],V}if(!g&&o.insertions+o.deletions>kn){const V=o.insertions+o.deletions;let F;e[35]!==m||e[36]!==V?(F=m("diffView.state.largeDiff",{count:V}),e[35]=m,e[36]=V,e[37]=F):F=e[37];let z;e[38]===Symbol.for("react.memo_cache_sentinel")?(z=()=>T(!0),e[38]=z):z=e[38];let B;e[39]!==m?(B=m("diffView.actions.renderAnyway"),e[39]=m,e[40]=B):B=e[40];let W;e[41]!==B?(W=t.jsx("button",{type:"button",className:"typography-ui-label text-primary hover:underline",onClick:z,children:B}),e[41]=B,e[42]=W):W=e[42];let X;return e[43]!==F||e[44]!==W?(X=t.jsxs("div",{className:"flex flex-col items-center gap-2 px-4 py-4 typography-meta text-muted-foreground",children:[F,W]}),e[43]=F,e[44]=W,e[45]=X):X=e[45],X}let te;return e[46]!==o.path||e[47]!==h||e[48]!==v||e[49]!==f||e[50]!==N.data||e[51]!==ee||e[52]!==H||e[53]!==C?(te=t.jsx(Ns,{filePath:o.path,diff:N.data,staged:H,renderSideBySide:f,wrapLines:C,hideWhitespace:v,viewerRef:ee,onFindWordRequest:h}),e[46]=o.path,e[47]=h,e[48]=v,e[49]=f,e[50]=N.data,e[51]=ee,e[52]=H,e[53]=C,e[54]=te):te=e[54],te}),Pr=i.memo(a=>{const e=Xe.c(71),{directory:s,revision:o,renderSideBySide:x,wrapLines:f,hideWhitespace:C,findKeyPrefix:v,registerViewerRef:j,onFindWordRequest:y,findReveal:d}=a,k=d===void 0?null:d,{t:p}=ze(),{git:m}=on(),R=Yi(_r),N=hs(zr);let S;e[0]===Symbol.for("react.memo_cache_sentinel")?(S={kind:"loading"},e[0]=S):S=e[0];const[g,T]=i.useState(S),[L,J]=i.useState(0),[K,fe]=i.useState(Or);let ee;e[1]!==s||e[2]!==m?(ee=()=>{let M=!1;const le=we();return m.getGitStatus(s,{fresh:!0}).then(oe=>{M||le!==we()||T({kind:"ready",files:Ss(oe)})},oe=>{M||le!==we()||T({kind:"error",message:oe instanceof Error?oe.message:String(oe)})}),()=>{M=!0}},e[1]=s,e[2]=m,e[3]=ee):ee=e[3];let ne;e[4]!==s||e[5]!==m||e[6]!==L||e[7]!==o?(ne=[s,m,o,L],e[4]=s,e[5]=m,e[6]=L,e[7]=o,e[8]=ne):ne=e[8],i.useEffect(ee,ne);let h,O;e[9]!==v||e[10]!==k?(h=()=>{if(!k||v===void 0||!k.key.startsWith(v))return;const M=k.key.slice(v.length);fe(le=>le.has(M)?le:new Set(le).add(M))},O=[v,k],e[9]=v,e[10]=k,e[11]=h,e[12]=O):(h=e[11],O=e[12]),i.useEffect(h,O);let H;e[13]===Symbol.for("react.memo_cache_sentinel")?(H=M=>{fe(le=>{const oe=new Set(le);return oe.delete(M)||oe.add(M),oe})},e[13]=H):H=e[13];const P=H;let G;e[14]!==R||e[15]!==s||e[16]!==N||e[17]!==p?(G=async()=>{const M=await R(s);if(!M){St.error(p("diffView.nestedRepository.openFailed"));return}N({selectedProjectId:M.id,directoryOverride:M.path})},e[14]=R,e[15]=s,e[16]=N,e[17]=p,e[18]=G):G=e[18];const U=G;let te;e[19]!==p?(te=p("diffView.unavailable.nestedRepositoryTitle"),e[19]=p,e[20]=te):te=e[20];let V;e[21]!==te?(V=t.jsx("div",{className:"typography-ui-label font-semibold text-foreground",children:te}),e[21]=te,e[22]=V):V=e[22];let F;e[23]!==p?(F=p("diffView.nestedRepository.description"),e[23]=p,e[24]=F):F=e[24];let z;e[25]!==F?(z=t.jsx("div",{className:"typography-meta text-muted-foreground",children:F}),e[25]=F,e[26]=z):z=e[26];let B;e[27]!==V||e[28]!==z?(B=t.jsxs("div",{className:"min-w-0 flex-1",children:[V,z]}),e[27]=V,e[28]=z,e[29]=B):B=e[29];let W;e[30]!==U?(W=()=>{U()},e[30]=U,e[31]=W):W=e[31];let X;e[32]!==p?(X=p("diffView.nestedRepository.openAsProject"),e[32]=p,e[33]=X):X=e[33];let de;e[34]!==W||e[35]!==X?(de=t.jsx(je,{variant:"outline",size:"sm",className:"shrink-0",onClick:W,children:X}),e[34]=W,e[35]=X,e[36]=de):de=e[36];let re;e[37]!==B||e[38]!==de?(re=t.jsxs("div",{className:"flex items-center gap-3 px-3",children:[B,de]}),e[37]=B,e[38]=de,e[39]=re):re=e[39];let ie;e[40]!==g.kind||e[41]!==p?(ie=g.kind==="loading"?t.jsxs("div",{className:"flex items-center justify-center gap-2 px-4 py-4 typography-meta text-muted-foreground",children:[t.jsx(q,{name:"loader-4",className:"size-4 animate-spin"}),p("diffView.nestedRepository.loading")]}):null,e[40]=g.kind,e[41]=p,e[42]=ie):ie=e[42];let me;e[43]!==g.kind||e[44]!==g.message||e[45]!==p?(me=g.kind==="error"?t.jsxs("div",{className:"flex flex-col items-center gap-2 px-4 py-4",children:[t.jsx("div",{className:"typography-ui-label font-semibold text-foreground",children:p("diffView.nestedRepository.loadFailed")}),t.jsx("div",{className:"typography-meta text-muted-foreground max-w-[32rem] text-center",children:g.message}),t.jsx("button",{type:"button",className:"typography-ui-label text-primary hover:underline",onClick:()=>J(Wr),children:p("diffView.actions.retry")})]}):null,e[43]=g.kind,e[44]=g.message,e[45]=p,e[46]=me):me=e[46];let A;e[47]!==g.files||e[48]!==g.kind||e[49]!==p?(A=g.kind==="ready"&&g.files.length===0?t.jsx("div",{className:"px-3 typography-meta text-muted-foreground",children:p("diffView.nestedRepository.noChanges")}):null,e[47]=g.files,e[48]=g.kind,e[49]=p,e[50]=A):A=e[50];let he;e[51]!==s||e[52]!==K||e[53]!==v||e[54]!==k||e[55]!==C||e[56]!==y||e[57]!==j||e[58]!==x||e[59]!==o||e[60]!==g.files||e[61]!==g.kind||e[62]!==p||e[63]!==f?(he=g.kind==="ready"&&g.files.length>0?t.jsx("ul",{className:"flex flex-col",children:g.files.map(M=>{const le=K.has(M.path),oe=ln(M);return t.jsxs("li",{children:[t.jsxs("button",{type:"button","aria-expanded":le,onClick:()=>P(M.path),className:"flex w-full items-center gap-2 px-3 py-1 text-start text-foreground/80 transition-colors hover:text-foreground",title:M.path,children:[t.jsx(q,{name:le?"arrow-down-s":"arrow-right-s",className:"size-4 shrink-0 text-muted-foreground"}),t.jsx("span",{className:"typography-micro font-semibold w-4 shrink-0 text-center uppercase",style:{color:oe.color},title:p(oe.descriptionKey),"aria-label":p(oe.descriptionKey),children:oe.code}),t.jsx(an,{filePath:M.path,className:"size-3.5 shrink-0"}),t.jsx("span",{className:"oc-ui-start-align min-w-0 flex-1 truncate typography-meta",style:{direction:"rtl",unicodeBidi:"plaintext"},children:M.path}),Rn(M.insertions,M.deletions)]}),le?t.jsx(Ar,{directory:s,file:M,revision:o,renderSideBySide:x,wrapLines:f,hideWhitespace:C,findKeyPrefix:v,registerViewerRef:j,onFindWordRequest:y,findReveal:k?.key===`${v}${M.path}`?k:null}):null]},M.path)})}):null,e[51]=s,e[52]=K,e[53]=v,e[54]=k,e[55]=C,e[56]=y,e[57]=j,e[58]=x,e[59]=o,e[60]=g.files,e[61]=g.kind,e[62]=p,e[63]=f,e[64]=he):he=e[64];let Z;return e[65]!==re||e[66]!==ie||e[67]!==me||e[68]!==A||e[69]!==he?(Z=t.jsxs("div",{className:"flex flex-col gap-2 py-3",children:[re,ie,me,A,he]}),e[65]=re,e[66]=ie,e[67]=me,e[68]=A,e[69]=he,e[70]=Z):Z=e[70],Z}),Mr=i.memo(({visible:a=!0,directory:e,file:s,layout:o,wrapLines:x,hideWhitespace:f=!1,isSelected:C,isExpanded:v,isMounted:j,onSelect:y,onExpandedChange:d,registerSectionRef:k,showOpenInEditorAction:p=!1,isOpeningInEditor:m=!1,onOpenInEditor:R,staged:N=!1,loadFullFiles:S=!1,initialDiffData:g=null,comparisonDiff:T,onRetryComparisonDiff:L,loadFullComparisonDiff:J,readOnlyActions:K=!1,hunkActionsEnabled:fe=!1,contentRevision:ee=0,registerViewerRef:ne,onFindWordRequest:h,onFullContextChange:O,findReveal:H=null})=>{const{t:P}=ze(),{git:G}=on(),U=Re(i.useCallback(w=>w.directories.get(e)?.diffCache.get(s.path)??null,[e,s.path])),te=Re(w=>w.setDiff),V=Re(w=>w.fetchStatus),F=ce(w=>w.setDiffFileLayout),[z,B]=i.useState(0),[W,X]=i.useState(null),[de,re]=i.useState(!1),[ie,me]=i.useState(null),A=ie!==null&&ie.source===T?ie.result:T,he=!!e&&!g&&(!T||!!J),Z=i.useMemo(()=>A?A.status==="error"?{kind:"error",message:A.message}:null:W,[A,W]),M=A?A.status==="loading":de,[le,oe]=i.useState(null),ge=i.useRef(!1),[Oe,Rt]=i.useState(null),[nt,Mt]=i.useState(!1),[st,We]=i.useState(null),[Bt,Je]=i.useState(null),[it,It]=i.useState(null),ke=S||it!==null;i.useEffect(()=>{if(!(!ke||!O))return O(s.path,!0),()=>O(s.path,!1)},[s.path,ke,O]),i.useEffect(()=>{H?.key===s.path&&Mt(!0)},[s.path,H]),i.useEffect(()=>{if(!it||!J||!T||T.status!=="ready"||ie?.source===T)return;let w=!1;return J(s.path).then(Q=>{if(!w){if(Q.status==="error"){St.error(Q.message),It(null);return}me({source:T,result:Q})}}),()=>{w=!0}},[it,s.path,ie,J,T]);const l=i.useRef(null),Qe=i.useRef(null),Le=i.useMemo(()=>ln(s),[s]),pt=o==="side-by-side",De=ke?"full":"patch",rt=`${s.index}:${s.working_dir}:${s.insertions}:${s.deletions}`,Ne=fe&&!K&&!g&&!A&&!_e(s.path),ot=JSON.stringify([we(),e,s.path,N,rt,z,ee]),xe=Oe?.scope===ot?Oe.patch:null,ht=Oe?.scope===ot?Oe.submodule:null,Fe=i.useMemo(()=>A?A.status==="ready"?A.data:null:g||(N?Bt:st||(U?{original:U.original,modified:U.modified,isBinary:U.isBinary,submodule:U.submodule,contextMode:"full"}:null)),[A,U,g,st,N,Bt]),ae=Fe?.contextMode===De,_t=i.useCallback(w=>{Qe.current=w,k(s.path,w)},[s.path,k]),$e=i.useCallback(w=>{ne?.(s.path,w)},[s.path,ne]),zt=i.useCallback(w=>{h?.(s.path,w)},[s.path,h]),Ft=i.useCallback(w=>{d(s.path,w)},[s.path,d]),Ot=i.useCallback(()=>{y(s.path)},[s.path,y]),Ae=i.useRef(N);i.useEffect(()=>{Ae.current!==N&&(Ae.current=N,N?Je(null):We(null),X(null),l.current=null)},[N]);const Ye=`${ee}:${rt}`,[gt,xt]=i.useState(Ye),qe=gt===Ye;i.useEffect(()=>{qe||(X(null),l.current=null)},[qe]),i.useEffect(()=>{if(!a||!v||!j||W)return;if(!e||A||g||Fe&&ae&&qe&&(!Ne||xe!==null)){l.current=null,re(!1);return}const w=`${e}::${s.path}::${N?"staged":"unstaged"}::${rt}::${De}::${z}::${ee}`;if(l.current===w)return;l.current=w,X(null),re(!0);let Q=!1;const ye=we(),lt=ke?en:mt,pe=_e(s.path)?G.getGitFileDiff(e,{path:s.path,staged:N}):!ke&&xe!==null?Promise.resolve({diff:xe,submodule:ht}):G.getGitDiff(e,{path:s.path,staged:N,contextLines:lt}),Dt=Ne&&ke&&xe===null?G.getGitDiff(e,{path:s.path,staged:N,contextLines:mt}).then(Y=>Y.diff):Promise.resolve(xe),qt=Promise.all([pe,Dt]),He=Sr;let be;const ct=new Promise((Y,bt)=>{be=setTimeout(()=>bt(new Error(`Timed out after ${He}ms`)),He)});return Promise.race([qt,ct]).then(([Y,bt])=>{if(Q||ye!==we())return;const Te="diff"in Y&&!ke?Y.diff:bt;if(Ne&&ke&&Te!==null&&/^@@\s/m.test(Te)&&"diff"in Y&&Y.diff!==Te&&!ji(Y.diff,Te))throw Rt(null),new Error(P("diffView.hunk.unavailable"));if(Ne&&Te!==null&&Rt({scope:ot,patch:Te,submodule:Y.submodule}),"diff"in Y){const et={...Ct(s.path,Y.diff,De),submodule:Y.submodule};N?Je(et):We(et)}else{const et={original:Y.original??"",modified:Y.modified??"",isBinary:Y.isBinary,submodule:Y.submodule,contextMode:"full"};N?Je(et):(te(e,s.path,et,ye),We(et))}xt(Ye),re(!1)}).catch(Y=>{if(!(Q||ye!==we())){if(re(!1),Y instanceof sn){X({kind:"unavailable",reason:Y.reason}),Y.reason==="path_not_found"&&V(e,G,{force:!0,silent:!0});return}X({kind:"error",message:Y instanceof Error?Y.message:String(Y)})}}).finally(()=>clearTimeout(be)),()=>{Q=!0,clearTimeout(be),l.current===w&&(l.current=null)}},[xe,ht,ee,Ye,Ne,qe,ot,A,De,Fe,ae,z,e,V,s.path,rt,G,g,v,j,ke,W,te,N,P,a]);const Ke=i.useCallback(()=>{Ft(!v),Ot()},[Ft,Ot,v]),at=i.useCallback(()=>{X(null),Rt(null),We(null),Je(null),l.current=null,B(w=>w+1)},[]),Wt=Ji(),{confirm:$t}=Wt,Pe=i.useCallback(async(w,Q)=>{if(!e||!Ne||M||Z||ge.current||le!==null)return;const ye=xe?vi(xe,w):null;if(!ye){St.error(P("diffView.hunk.unavailable"));return}if(N&&Q!=="unstage"||!N&&Q==="unstage"||Q==="discard"&&!await $t({title:P("diffView.hunk.discardDialogTitle"),message:P("diffView.hunk.discardDescription",{path:s.path}),action:P("diffView.hunk.discard"),destructive:!0})||ge.current)return;ge.current=!0;const lt=we();oe({index:w,action:Q});try{const pe=Q==="stage"?G.stageGitHunk:Q==="unstage"?G.unstageGitHunk:G.revertGitHunk;if(!pe){St.error(P("diffView.hunk.unsupported"));return}if(await pe(e,s.path,ye),lt!==we())return;at(),gs.requestGitRefresh({directory:e,paths:[s.path]}),await V(e,G)}catch(pe){if(lt!==we())return;at(),St.error(pe instanceof Error&&pe.message?pe.message:P("diffView.hunk.unavailable"))}finally{ge.current=!1,oe(pe=>pe?.index===w&&pe.action===Q?null:pe)}},[xe,$t,Ne,M,Z,e,V,s.path,G,le,at,N,P]),yt=i.useMemo(()=>Ne&&xe!==null?ki(xe):[],[xe,Ne]),Ze=i.useCallback(w=>t.jsx(wr,{index:w,staged:N,busyHunk:le,disabled:M||!!Z,onAction:Pe}),[Z,Pe,le,M,N]),Ge=i.useMemo(()=>yt.length>0?{anchors:yt,render:Ze}:void 0,[yt,Ze]);return t.jsxs("div",{ref:_t,className:"scroll-mt-9 border-b border-[var(--interactive-border)]/40 last:border-b-0",children:[t.jsx("div",{className:"sticky top-0 z-30 border-b border-[var(--interactive-border)]/35 bg-[var(--surface-elevated)]/90 backdrop-blur-md supports-[backdrop-filter]:bg-[var(--surface-elevated)]/80",children:t.jsxs("div",{role:"button",tabIndex:0,onClick:Ke,onKeyDown:w=>{w.target===w.currentTarget&&(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),Ke())},className:ve("cursor-pointer","group/header relative grid min-h-9 w-full min-w-0 grid-cols-[minmax(0,1fr)_auto] items-center gap-2 overflow-hidden px-3 py-2","bg-transparent","text-muted-foreground hover:text-foreground",C?"bg-[var(--interactive-selection)]/35":null),children:[t.jsx("div",{className:"absolute inset-0 pointer-events-none group-hover/header:bg-[var(--interactive-hover)]/50"}),t.jsxs("div",{className:"relative flex min-w-0 flex-1 items-center gap-2",children:[t.jsx("span",{className:"flex size-5 items-center justify-center opacity-70 group-hover/header:opacity-100",children:v?t.jsx(q,{name:"arrow-down-s",className:"size-4"}):t.jsx(q,{name:"arrow-right-s",className:"size-4"})}),t.jsx("span",{className:"typography-micro font-semibold leading-none w-4 text-center uppercase",style:{color:Le.color},title:P(Le.descriptionKey),"aria-label":P(Le.descriptionKey),children:Le.code}),t.jsx("span",{className:"min-w-0 flex-1 overflow-hidden typography-ui-label",title:s.path,children:t.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[t.jsx(an,{filePath:s.path,className:"h-3.5 w-3.5 flex-shrink-0 align-middle"}),(()=>{const w=s.path.lastIndexOf("/");if(w===-1)return t.jsx("span",{className:"oc-ui-start-align block min-w-0 truncate typography-ui-label text-foreground",style:{direction:"rtl",unicodeBidi:"plaintext"},children:s.path});const Q=s.path.slice(0,w),ye=s.path.slice(w+1);return t.jsxs("span",{dir:"ltr",className:"flex min-w-0 items-baseline overflow-hidden",children:[t.jsx("span",{className:"oc-ui-start-align min-w-0 truncate typography-ui-label text-muted-foreground",style:{direction:"rtl",unicodeBidi:"plaintext"},children:Q}),t.jsxs("span",{className:"flex-shrink-0 typography-ui-label",children:[t.jsx("span",{className:"text-muted-foreground",children:"/"}),t.jsx("span",{className:"text-foreground",children:ye})]})]})})()]})})]}),t.jsxs("div",{className:"relative flex shrink-0 items-center justify-self-end gap-2",children:[Rn(s.insertions,s.deletions),p&&R?t.jsx(je,{variant:"ghost",size:"sm",className:"h-5 w-5 p-0 opacity-70 hover:opacity-100",title:P("diffView.actions.openFileInEditorAtChange"),onClick:w=>{w.stopPropagation(),R(s.path,Fe)},disabled:m,children:m?t.jsx(q,{name:"loader-4",className:"size-3.5 animate-spin"}):t.jsx(q,{name:"edit",className:"size-3.5"})}):null,t.jsx(xs,{mode:pt?"side-by-side":"unified",onModeChange:w=>{const Q=w==="side-by-side"?"side-by-side":"inline";F(s.path,Q)},className:"opacity-70"})]})]})}),v&&t.jsxs("div",{className:"relative bg-background overflow-clip",children:[!j&&!Z?t.jsx("div",{className:"h-40 border border-border/40 bg-background/40"}):null,Z?.kind==="unavailable"&&Z.reason==="nested_repository"?t.jsx(Pr,{directory:Sn(e,s.path),revision:ee,renderSideBySide:pt,wrapLines:x,hideWhitespace:f,findKeyPrefix:s.path,registerViewerRef:ne,onFindWordRequest:h,findReveal:H}):null,Z?.kind==="unavailable"&&Z.reason!=="nested_repository"?t.jsxs("div",{className:"flex flex-col items-center gap-2 px-4 py-8 text-sm text-muted-foreground",children:[t.jsx("div",{className:"typography-ui-label font-semibold text-foreground",children:Z.reason==="untracked_directory"?P("diffView.unavailable.untrackedDirectoryTitle"):P("diffView.unavailable.missingTitle")}),t.jsx("div",{className:"typography-meta text-muted-foreground max-w-[32rem] text-center",children:Z.reason==="untracked_directory"?P("diffView.unavailable.untrackedDirectoryDescription"):P("diffView.unavailable.missingDescription")}),Z.reason==="path_not_found"?t.jsx("button",{type:"button",className:"typography-ui-label text-primary hover:underline",onClick:at,children:P("diffView.actions.retry")}):null]}):null,Z?.kind==="error"?t.jsxs("div",{className:"flex flex-col items-center gap-2 px-4 py-8 text-sm text-muted-foreground",children:[t.jsx("div",{className:"typography-ui-label font-semibold text-foreground",children:P("diffView.state.failedToLoadDiff")}),t.jsx("div",{className:"typography-meta text-muted-foreground max-w-[32rem] text-center",children:Z.message}),t.jsx("button",{type:"button",className:"typography-ui-label text-primary hover:underline",onClick:()=>A?L?.():at(),children:P("diffView.actions.retry")})]}):null,j&&M&&!Fe&&!Z?t.jsxs("div",{className:"flex items-center justify-center gap-2 px-4 py-8 text-sm text-muted-foreground",children:[t.jsx(q,{name:"loader-4",className:"size-4 animate-spin"}),P("diffView.state.loadingDiff")]}):null,j&&Fe&&!nt&&s.insertions+s.deletions>kn?t.jsxs("div",{className:"flex flex-col items-center gap-2 px-4 py-8 text-sm text-muted-foreground",children:[t.jsx("div",{className:"typography-ui-label font-semibold text-foreground",children:P("diffView.state.largeDiff",{count:s.insertions+s.deletions})}),t.jsx("div",{className:"typography-meta text-muted-foreground",children:P("diffView.state.largeDiffDescription")}),t.jsx("button",{type:"button",className:"typography-ui-label text-primary hover:underline",onClick:()=>Mt(!0),children:P("diffView.actions.renderAnyway")})]}):null,j&&Fe&&(nt||s.insertions+s.deletions<=kn)?t.jsx(t.Fragment,{children:t.jsx(Ns,{filePath:s.path,diff:Fe,staged:N,renderSideBySide:pt,wrapLines:x,hideWhitespace:f,hunkActions:Ge,onExpandContextRequest:he?It:void 0,pendingContextExpansion:it,contextLoading:it!==null&&Fe.contextMode!=="full"&&!Z,viewerRef:$e,onFindWordRequest:zt})}):null]}),Wt.dialog]})}),ol=({visible:a=!0,hideStackedFileSidebar:e=!1,stackedDefaultCollapsedAll:s=!1,pinSelectedFileHeaderToTopOnNavigate:o=!1,showOpenInEditorAction:x=!1,diffScope:f="all",onDiffScopeChange:C,targetFilePath:v=null,flushContent:j=!1,directory:y=null})=>{const{t:d}=ze(),k=rr(),p=i.useRef(null);or(p);const[m,R]=i.useState([]),N=i.useCallback(n=>{if(!n)return;const r=p.current;R(["walkthrough","tree","wrap","whitespace","layout"].filter(c=>r?.hasAttribute(ar[c])??!1))},[]),{git:S,files:g,sourceControl:T}=on(),L=Pi(),J=!!y,K=y??L,fe=Re(n=>n.runtimeKey),{gitDirectory:ee,repositoryOptions:ne}=Mi(K??null,{enabled:a,recheckOnOpen:!0}),h=ee??K,O=Bi(h,T),H=ce(n=>n.openContextSurface),P=ce(n=>n.openContextPanelTab),G=Ii(n=>n.requestTarget),{screenWidth:U,isMobile:te}=_i(),V=zi(h??null),F=Oi(h??null),z=Wi(h??null),B=Re(n=>n.setActiveDirectory),W=Re(n=>n.ensureStatus),X=Re(n=>n.selectNestedRepo),de=Re(n=>n.fetchStatus),re=Re(n=>n.fetchBranches),ie=Re(n=>n.clearDiffCache),me=Re(n=>n.setDiff),[A,he]=i.useState(null),[Z,M]=i.useState(!1),[le,oe]=i.useState(null),[ge,Oe]=i.useState(()=>new Set),[Rt,nt]=i.useState(()=>new Set),[Mt,st]=i.useState(0),[We,Bt]=i.useState(()=>new Map),[Je,it]=i.useState(0),[It,ke]=i.useState(!1),[l,Qe]=i.useState(f??"working");i.useEffect(()=>{f!==null&&Qe(f)},[f]);const Le=ce(n=>n.pendingDiffFile),pt=ce(n=>n.pendingDiffStaged),De=ce(n=>n.pendingDiffScope),rt=ce(n=>n.setPendingDiffFile),Ne=ce(n=>n.diffLayoutPreference),ot=ce(n=>n.diffFileLayout),xe=ce(n=>n.setDiffLayoutForAllFiles),ht=ce(n=>n.diffWrapLines),Fe=ce(n=>n.setDiffWrapLines),ae=ce(n=>n.diffHideWhitespace),_t=ce(n=>n.setDiffHideWhitespace),$e=ce(n=>n.diffFileListMode),zt=ce(n=>n.setDiffFileListMode),Ft=ce(n=>n.openContextFileAtLine),Ot=hs(n=>n.currentSessionId),Ae=J?null:Ot,Ye=$i(l==="turn"?Ae??"":"",K??void 0),gt=ht,xt=l==="staged"?!0:l==="working"?!1:null,qe=xt??Z,Ke=te||U<=768,at=!!Ae&&l!=="turn"&&l!=="commit"&&l!=="pr"&&!Ke&&!Ie(),Wt=l!=="turn"&&!Ke&&!Ie(),$t=!e&&!Ke&&U>=1024,Pe=i.useRef(null),yt=i.useRef(null),Ze=i.useRef(new Map),Ge=i.useRef(null),w=i.useRef(null),Q=i.useRef(!1),ye=i.useRef(null),lt=i.useRef(null),pe=i.useRef(null),Dt=i.useRef(null),qt=i.useCallback(()=>{const n=Pe.current;if(!n)return null;const r=n.getBoundingClientRect().top,c=[];for(const[u,b]of Ze.current)b&&c.push({path:u,top:b.getBoundingClientRect().top});return as(r,c)},[]),He=i.useCallback(()=>{Ge.current=null,Q.current=!1,oe(null),w.current!==null&&(window.cancelAnimationFrame(w.current),w.current=null)},[]),be=i.useCallback(n=>{Oe(r=>{if(r.has(n))return r;const c=new Set(r);return c.add(n),c})},[]),[ct,Y]=i.useState([]),[bt,Te]=i.useState(null),[et,Cs]=i.useReducer(n=>n+1,0);i.useEffect(()=>{Y([]),Te(null)},[Ae]);const Rs=Ye.length>0?Ye[Ye.length-1].id:"";i.useEffect(()=>{if(l!=="turn"||!Ae||!a)return;let n=!1;return pi.getSessionTurnDiff(Ae,{directory:K??void 0}).then(r=>{n||(Y(r.map(c=>({file:c.file,patch:c.patch,status:c.status,additions:c.additions,deletions:c.deletions}))),Te(null))}).catch(r=>{n||(console.warn("[diff-view] turn diff unavailable:",r instanceof Error?r.message:r),Te(r instanceof Error?r.message:d("diffView.state.failedToLoadDiff")))}),()=>{n=!0}},[l,Ae,Rs,K,d,et,a]);const Kt=i.useMemo(()=>{const n=new Map;for(const r of ct)if(r.file){if(typeof r.patch=="string"){n.set(r.file,Ct(r.file,r.patch,"patch"));continue}n.set(r.file,{original:r.before??"",modified:r.after??"",contextMode:"full"})}return n},[ct]),Fs=i.useMemo(()=>F?.files?F.files.filter(nn).length:0,[F]),Ds=i.useMemo(()=>F?.files?F.files.filter(tn).length:0,[F]),Ts=ct.length,ue=F?.current??null,Gt=O.contexts[0]?.provider==="github"||O.contexts[0]?.provider==="gitlab"?O.contexts[0]:null,Tt=os(n=>h?n.diffRequests.get(h):void 0),Se=hi(h??null,ue,Gt,a&&l==="pr"&&!Ie(),Tt),Ue=Se.selectedSource;i.useEffect(()=>{!h||!Tt||!F||Ue!==Tt||os.getState().settleDiffRequest(h,Tt)},[h,Tt,Ue,F]);const tt=gi(h??null,ue,a&&l==="commit"&&!Ie()),dt=tt.selectedCommit?.hash??null;i.useEffect(()=>{(l==="commit"||l==="pr")&&Ie()&&(Qe("working"),C?.("working"))},[l,C]);const cn=Re(n=>h?n.directories.get(h)?.branches??null:null),Es=Re(n=>h?n.directories.get(h)?.isLoadingBranches??!1:!1),Vs=i.useCallback(()=>{h&&re(h,S)},[h,re,S]),Ls=Ci(h??null,a&&V!==!1,Es,!!cn,Vs,Rr),As=ss(n=>n.setOverride),Ps=ss(n=>n.clearOverride),Ms=i.useMemo(()=>new Set(O.read?.repository.remotes.map(n=>n.name)??[]),[O.read]),{base:Ee,source:Bs,resolved:Fn,revision:dn}=xi(h??null,ue,a&&!Ie()&&V!==!1,{branches:cn,remoteNames:Ms,primaryRemote:O.contexts[0]?.primaryRemote,readContext:O.contexts[0]??null}),un=!Ie()&&Ri(ue,Ee);i.useEffect(()=>{f===null&&Qe(un?"branch":"working")},[f,un]);const Is=F!==null,Dn=Ie()||Ls||Fi(ue,Ee,Is,Fn&&O.status==="ready"),[_s,zs]=i.useState(0);i.useEffect(()=>{const n=Li(l,!Dn);n!==l&&(Qe(n),n==="working"&&f!==null&&C?.("working"))},[l,Dn,f,C]);const Os=i.useMemo(()=>l==="pr"?Ue:l==="commit"&&dt?{kind:"commit",hash:dt}:l==="branch"&&Ee&&ue?{kind:"branch",baseRef:Ee,headRef:ue}:null,[l,Ee,ue,dt,Ue]),se=Di(h??null,Os,a&&!Ie(),l==="branch"?dn:"",Se.readContext,Se.provider),{fetchDiff:Tn,fetchFullFile:En}=se,Vn=l==="commit"?se.files:null,Ln=l==="commit"?se.error:null,wt=l==="branch"?se.files:null,An=l==="branch"?se.error:null,Pn=se.files?l==="pr"?JSON.stringify([se.key,se.revision]):se.key:null,Ws=i.useMemo(()=>l==="branch"||l==="commit"||l==="pr"?Array.from(ge).sort().join("\0"):"",[l,ge]),Et=i.useCallback(async(n,r=!1)=>{try{const c=await Tn(n,r?en:mt);return{status:"ready",data:Ct(n,c.diff,r?"full":"patch")}}catch(c){return{status:"error",message:c instanceof Error?c.message:d("diffView.state.failedToLoadDiff")}}},[Tn,d]),Mn=i.useCallback(async n=>{try{const{original:r,modified:c}=await En(n),u=js({name:n,contents:r},{name:n,contents:c});return{status:"ready",data:{original:r,modified:c,fileDiff:u,contextMode:"full"}}}catch(r){return{status:"error",message:r instanceof Error?r.message:d("diffView.state.failedToLoadDiff")}}},[En,d]),Ht=i.useMemo(()=>l==="branch"||l==="commit"?n=>Et(n,!0):l==="pr"?Mn:void 0,[l,Et,Mn]),$s=i.useMemo(()=>l==="branch"?Ti(wt,dn):void 0,[l,wt,dn]),Ut=Ei(Pn,a?Ws:"",Pn?Et:null,Nn,JSON.stringify([l==="pr"?se.revision:0,_s]),$s),qs=wt?.length??null,_=i.useMemo(()=>{if(l==="commit"||l==="pr")return(se.files??[]).map(u=>({path:u.path,index:"",working_dir:u.status,insertions:u.insertions,deletions:u.deletions,isNew:u.status==="A"}));if(l==="branch")return(wt??[]).map(u=>({path:u.path,index:"",working_dir:u.status,insertions:0,deletions:0,isNew:u.status==="A"})).sort((u,b)=>u.path.localeCompare(b.path));if(l==="turn")return ct.map(u=>({path:u.file??"",index:"",working_dir:Vi(u.status),insertions:u.additions??0,deletions:u.deletions??0,isNew:u.status==="added"})).filter(u=>u.path).sort((u,b)=>u.path.localeCompare(b.path));if(!F?.files)return[];const n=F.diffStats,r=l==="staged"?tn:l==="working"?nn:()=>!0,c=u=>{const b=n?.staged?.[u],E=n?.working?.[u];return l==="staged"?{insertions:b?.insertions??0,deletions:b?.deletions??0}:l==="working"?{insertions:E?.insertions??0,deletions:E?.deletions??0}:{insertions:(b?.insertions??0)+(E?.insertions??0),deletions:(b?.deletions??0)+(E?.deletions??0)}};return F.files.filter(r).map(u=>{const b=c(u.path);return{...u,insertions:b.insertions,deletions:b.deletions,isNew:ks(u)}}).sort((u,b)=>u.path.localeCompare(b.path))},[l,wt,se.files,ct,F]),fn=i.useMemo(()=>_.map(n=>n.path).join("\0"),[_]);i.useEffect(()=>{const n=fn?fn.split("\0"):[],r=new Set(n),c=`${h??""}:${l}:${s?"collapsed":"default"}`,u=lt.current!==c;lt.current=c,Oe(b=>{if(u){const $=s?0:Cr(n.length);return new Set(n.slice(0,$))}let E=!1;const D=new Set;for(const $ of b){if(!r.has($)){E=!0;continue}D.add($)}return E?D:b}),nt(b=>{if(u)return new Set;let E=!1;const D=new Set;for(const $ of b){if(!r.has($)){E=!0;continue}D.add($)}return E?D:b})},[l,fn,h,s]);const Bn=i.useCallback(()=>{if(ye.current=null,!a)return;const n=Pe.current;if(!n)return;const r=n.getBoundingClientRect(),c=r.top-cs,u=r.bottom+cs,b={},E=[];for(const[D,$]of Ze.current){if(!$)continue;const I=$.getBoundingClientRect();E.push({path:D,top:I.top}),ge.has(D)&&(I.bottom<c||I.top>u||(b[D]=!0))}pe.current=as(r.top,E),nt(D=>{let $=!1;const I=new Set(D);for(const Be of Object.keys(b))I.has(Be)||(I.add(Be),$=!0);return $?I:D})},[ge,a]),Me=i.useCallback(()=>{a&&(typeof window>"u"||ye.current===null&&(ye.current=window.requestAnimationFrame(Bn)))},[Bn,a]),mn=i.useRef(Me);mn.current=Me,i.useEffect(()=>{const n=Pe.current;if(!(!a||!n))return Me(),n.addEventListener("scroll",Me,{passive:!0}),window.addEventListener("resize",Me),()=>{n.removeEventListener("scroll",Me),window.removeEventListener("resize",Me),ye.current!==null&&(window.cancelAnimationFrame(ye.current),ye.current=null)}},[_,ge,Me,a]);const ut=i.useCallback(n=>{const r=ot[n.path];if(r)return r;if(Ne==="inline")return"inline";if(Ne==="side-by-side")return"side-by-side";const c=U<Nr;return n.isNew||c?"inline":"side-by-side"},[ot,Ne,U]),pn=i.useMemo(()=>_.length===0?null:_.every(n=>ut(n)==="side-by-side")?"side-by-side":"inline",[_,ut]);i.useEffect(()=>{a&&h&&(B(h),W(h,S))},[h,B,W,S,a]);const Xt=JSON.stringify([fe,h]),hn=i.useRef({scope:Xt,paths:new Set,dirty:!1,unscoped:!1}),In=i.useRef(a);i.useEffect(()=>{const n=a&&!In.current;if(In.current=a,hn.current.scope!==Xt&&(hn.current={scope:Xt,paths:new Set,dirty:!1,unscoped:!1}),!h)return;const r=(u,b)=>{u.length&&(Dt.current=qt()??pe.current,ie(h,u),Bt(E=>{const D=new Map(E);for(const $ of u)D.set($,(D.get($)??0)+1);return D})),b&&it(E=>E+1),de(h,S,{silent:!0})},c=hn.current;return a&&(n||c.dirty)&&(r([...c.paths],c.unscoped),c.paths.clear(),c.dirty=!1,c.unscoped=!1),gs.onGitRefreshHint(u=>{if(ts(u.directory)!==ts(h))return;const b=u.paths??[],E=b.length===0;if(!a){c.dirty=!0,c.unscoped||=E;for(const D of b)c.paths.add(D);return}r(b,E)})},[qt,ie,h,de,S,Xt,a]),i.useLayoutEffect(()=>{const n=Dt.current;if(!n)return;Dt.current=null;const r=Pe.current,c=Ze.current.get(n.path);if(!r||!c)return;const u=r.getBoundingClientRect().top,b=c.getBoundingClientRect().top-u;r.scrollTop=vr(r.scrollTop,n.topOffset,b,r.scrollHeight-r.clientHeight),pe.current=n},[We]),i.useEffect(()=>{!a||l!=="all"&&!De||Le&&(De&&Qe(De),he(Le),M(De==="staged"||!De&&pt),rt(null),Q.current=!0,Ge.current=Le,be(Le),st(n=>n+1))},[l,be,Le,De,pt,rt,a]),i.useEffect(()=>{if(l==="all")return;const n=v?.trim();n&&(he(n),M(l==="staged"),Q.current=!0,Ge.current=n,be(n),st(r=>r+1))},[l,be,v]),i.useEffect(()=>{if(!A)return;_.some(r=>r.path===A)||(he(null),M(!1))},[_,A]);const Ks=i.useCallback((n,r)=>{const c=Ze.current;r?c.set(n,r):c.delete(n),mn.current()},[]),Gs=i.useCallback((n,r)=>{He(),Oe(c=>{const u=c.has(n);if(r===u)return c;const b=new Set(c);return r?b.add(n):b.delete(n),b}),r||nt(c=>{if(!c.has(n))return c;const u=new Set(c);return u.delete(n),u}),mn.current()},[He]),Hs=i.useCallback(()=>{He(),Oe(n=>n.size>0?new Set:new Set(_.map(r=>r.path))),nt(new Set),Me()},[He,_,Me]),Us=i.useCallback(()=>ke(!1),[]),{submitting:gn,start:Xs}=qi(Ae,K,Us),jt=i.useCallback(n=>{const r=Ze.current.get(n),c=Pe.current;if(!r||!c)return!1;const u=r.getBoundingClientRect().top-c.getBoundingClientRect().top;return c.scrollTo({top:c.scrollTop+u,behavior:"auto"}),!0},[]),ft=i.useCallback(n=>xt!==null?xt:Z&&n===A,[A,Z,xt]);i.useEffect(()=>{const n=Ge.current;if(!a||!n)return;let r=0;const c=20;let u=!1;const b=(D=!0)=>{u||(u=!0,Ge.current=null,Q.current=!1,D&&oe(null),w.current!==null&&(window.cancelAnimationFrame(w.current),w.current=null))},E=()=>{if(u){w.current=null;return}const D=Ge.current;if(!D){b(),w.current=null;return}if(!jt(D)){r+=1,r<c?w.current=window.requestAnimationFrame(E):(b(),w.current=null);return}if(o&&Q.current){oe(D),b(!1);return}b()};return w.current=window.requestAnimationFrame(E),()=>{u=!0,w.current!==null&&(window.cancelAnimationFrame(w.current),w.current=null)}},[o,Mt,jt,a]);const Js=i.useCallback(n=>{},[]),Ce=$e==="tree"&&!Ke,Qs=ce(n=>n.diffFileTreeWidth),Jt=ce(n=>n.setDiffFileTreeWidth),_n=i.useRef(null),[Ys,zn]=i.useState(!1),Vt=Math.max(Qs,vn),Qt=i.useCallback(n=>{const r=Math.max(vn,(_n.current?.clientWidth??0)*Er);return Math.min(r,Math.max(vn,n))},[]),Zs=i.useCallback(n=>{n.preventDefault();const r=n.clientX,c=Vt,u=ns(n.currentTarget)?-1:1;zn(!0);const b=D=>{Jt(Qt(c+(D.clientX-r)*u))},E=()=>{zn(!1),window.removeEventListener("pointermove",b),window.removeEventListener("pointerup",E),window.removeEventListener("pointercancel",E)};window.addEventListener("pointermove",b),window.addEventListener("pointerup",E),window.addEventListener("pointercancel",E)},[Qt,Vt,Jt]),ei=i.useCallback(n=>{const r=n.shiftKey?40:10,c=ns(n.currentTarget)?-1:1,u=(n.key==="ArrowLeft"?-r:n.key==="ArrowRight"?r:0)*c;u!==0&&(n.preventDefault(),Jt(Qt(Vt+u)))},[Qt,Vt,Jt]),xn=i.useMemo(()=>Ce?vs(_,new Set).flatMap(n=>n.kind==="file"?[n.file]:[]):[],[_,Ce]),Lt=Ce?xn:_,vt=Ce?xn.find(n=>n.path===A)??xn[0]??null:null,Yt=vt?.path??null;i.useEffect(()=>{Yt&&!ge.has(Yt)&&be(Yt)},[be,ge,Yt]);const Zt=i.useCallback(n=>{if(He(),Ce){he(n),M(!1),be(n),Pe.current?.scrollTo({top:0});return}he(n),M(!1),Q.current=!0,Ge.current=n,be(n),st(r=>r+1),jt(n)},[He,be,Ce,jt]);i.useEffect(()=>{const n=r=>{if(!a||!r.altKey||r.metaKey||r.ctrlKey||r.shiftKey||r.key!=="ArrowDown"&&r.key!=="ArrowUp")return;const c=r.target;if(c instanceof HTMLElement&&(c.isContentEditable||c.tagName==="INPUT"||c.tagName==="TEXTAREA"||c.closest('[role="dialog"]'))||(r.preventDefault(),Lt.length===0))return;const u=r.key==="ArrowDown"?1:-1,b=Ce?vt?.path:A,E=b?Lt.findIndex(I=>I.path===b):-1,D=E===-1?u>0?0:Lt.length-1:E+u,$=Lt[D];$&&Zt($.path)};return window.addEventListener("keydown",n),()=>window.removeEventListener("keydown",n)},[A,Zt,Ce,Lt,vt,a]);const[kt,ti]=i.useState(()=>new Set),ni=i.useCallback((n,r)=>{ti(c=>{if(c.has(n)===r)return c;const u=new Set(c);return r?u.add(n):u.delete(n),u})},[]),On=i.useCallback(async(n,r,c)=>{if(!h)return null;const u=Sn(h,n),b=await S.getGitStatus(u,{fresh:!0});return{nestedSources:Ss(b).map(E=>({filePath:`${n}${E.path}`,layout:r,revision:c,load:async()=>{if(_e(E.path))return null;const D=tn(E)&&!nn(E),$=await S.getGitDiff(u,{path:E.path,staged:D,contextLines:mt}),I={...Ct(E.path,$.diff,"patch"),submodule:$.submodule};return At(Pt(E.path,I),ae)}}))}},[ae,h,S]),[Wn]=i.useState(kr),$n=i.useRef([]),qn=i.useCallback((n,r,c,u,b)=>{if(!S.getGitDiffs)return Promise.resolve(null);const E=$n.current.filter(D=>!_e(D.filePath)&&ft(D.filePath)===u&&kt.has(D.filePath)===b).map(D=>({filePath:D.filePath,revision:D.revision??""}));return Wn({directory:n,filePath:r,revision:c,staged:u,contextLines:b?en:mt,peers:E,getGitDiffs:(D,$)=>S.getGitDiffs?.(D,$)??Promise.resolve([])})},[kt,ft,S,Wn]),Kn=i.useCallback(async(n,r)=>{const c=n.path,u=kt.has(c);if(l==="turn"){const I=Kt.get(c);return At(I?Pt(c,I):null,ae)}if(l==="branch"||l==="commit"||l==="pr"){const I=Ut.get(c);if(!u&&I?.status==="ready")return At(Pt(c,I.data),ae);if(!u&&I?.status==="loading")return null;const Be=u&&Ht?await Ht(c):await Et(c);if(Be.status!=="ready")throw new Error(Be.status==="error"?Be.message:"Diff not loaded");return At(Pt(c,Be.data),ae)}if(!h||_e(c))return null;const b=ft(c),E=u?en:mt;let D;try{const I=await qn(h,c,r,b,u);if(I&&!I.ok&&I.reason)throw new sn(I.error,I.reason);D=I?.ok?I.diff:await S.getGitDiff(h,{path:c,staged:b,contextLines:E})}catch(I){if(!(I instanceof sn))throw I;return I.reason==="nested_repository"?On(c,ut(n),r):null}const $={...Ct(c,D.diff,u?"full":"patch"),submodule:D.submodule};return At(Pt(c,$),ae)},[l,Ut,ae,h,Et,kt,ft,ut,S,Kt,Ht,qn,On]),Gn=i.useRef(Kn);Gn.current=Kn;const yn=l==="branch"||l==="commit"||l==="pr"?Ut:null,bn=l==="turn"?Kt:null,Hn=l==="all"||l==="working"||l==="staged",Un=i.useMemo(()=>_.map(n=>{const r=yn?.get(n.path),c=yn?`${r?.status??"absent"}:${ms(r)}`:bn?ms(bn.get(n.path)):Hn?`${ft(n.path)?"staged":"unstaged"}:${Je+(We.get(n.path)??0)}`:"local",u=`${ae?"hide":"show"}|${kt.has(n.path)?"full":"patch"}|${c}`;return{filePath:n.path,layout:ut(n),revision:u,load:()=>Gn.current(n,u)}}),[_,ae,We,kt,yn,bn,Hn,ft,ut,Je]);$n.current=Un;const Ve=xr({sources:Un}),[wn,si]=i.useState(null),Xn=i.useRef(_);Xn.current=_;const ii=i.useCallback(n=>{const r=Xn.current.find(c=>ps(c.path,n.filePath))?.path??n.filePath;si(c=>({key:n.filePath,nonce:(c?.nonce??0)+1})),Ce&&r!==A&&(he(r),M(l==="staged")),be(r),jt(r)},[l,A,be,Ce,jt]),{registerViewer:ri,openOnWord:oi,focusNonce:ai}=yr({find:Ve,visible:a,rootRef:yt,reveal:ii}),Jn=i.useCallback(n=>{xe(n==="side-by-side"?"side-by-side":"inline")},[xe]),[li,Qn]=i.useState(null),Yn=i.useCallback(async(n,r)=>{if(!h||!n)return;Qn(n);const c=we();try{let u=null;if(r?.patch&&!r.isBinary&&!_e(n)?u=ls(r.patch):r&&r.contextMode==="full"&&!r.isBinary&&!_e(n)&&(u=ds(r.original,r.modified)),u===null)try{const I=await S.getGitDiff(h,{path:n,staged:qe,contextLines:3});u=ls(I.diff)}catch{u=null}let b=r;if(u===null||!b){const I=await S.getGitFileDiff(h,{path:n,staged:qe}),Be={original:I.original??"",modified:I.modified??"",isBinary:I.isBinary,submodule:I.submodule};b=Be,qe||me(h,n,Be,c)}const E=u??(b.isBinary||_e(n)?1:ds(b.original,b.modified)),D=Sn(h,n),$=await hr(g,D,{directory:h});if(!$.ok){St.error(gr($.reason));return}Ft(h,D,E,1)}finally{Qn(u=>u===n?null:u)}},[qe,h,g,S,Ft,me]),ci=i.useCallback((n,r)=>{Yn(n,r)},[Yn]),di=i.useCallback(()=>zs(n=>n+1),[]),ui=()=>{if(!h)return null;const n=(r,c=!1)=>{const u=c||ge.has(r.path);return t.jsx(Mr,{visible:a&&u,directory:h,file:r,layout:ut(r),wrapLines:gt,hideWhitespace:ae,isSelected:!1,isExpanded:u,isMounted:c||Rt.has(r.path)||r.path===le,onSelect:Js,onExpandedChange:Gs,registerSectionRef:Ks,registerViewerRef:ri,onFindWordRequest:oi,onFullContextChange:ni,findReveal:wn&&ps(r.path,wn.key)?wn:null,showOpenInEditorAction:x&&l!=="turn"&&!J,isOpeningInEditor:li===r.path,onOpenInEditor:ci,staged:ft(r.path),readOnlyActions:l==="branch"||l==="commit"||l==="pr",hunkActionsEnabled:l==="all"||l==="working"||l==="staged",contentRevision:Je+(We.get(r.path)??0),comparisonDiff:l==="branch"||l==="commit"||l==="pr"?Ut.get(r.path)??Nn:void 0,onRetryComparisonDiff:di,loadFullComparisonDiff:Ht,initialDiffData:l==="turn"?Kt.get(r.path)??null:null},`${we()}:${h}:${r.path}`)};return t.jsxs("div",{ref:_n,className:ve("flex min-w-0 flex-1 min-h-0 h-full",j?"gap-0":"gap-3 px-3 pb-3 pt-2"),children:[Ce&&t.jsxs(t.Fragment,{children:[t.jsx("section",{className:"flex max-w-[50%] flex-shrink-0 flex-col",style:{width:`${Vt}px`},children:t.jsx(Vr,{changedFiles:_,selectedFile:vt?.path??null,onSelectFile:Zt})}),t.jsx("div",{role:"separator","aria-orientation":"vertical","aria-label":d("diffView.fileTree.resize"),tabIndex:0,onPointerDown:Zs,onKeyDown:ei,className:ve("relative w-px shrink-0 cursor-col-resize bg-[var(--interactive-border)]/40","before:absolute before:inset-y-0 before:-inset-s-1 before:-inset-e-1 before:content-['']","hover:bg-interactive-selection focus-visible:bg-interactive-selection focus-visible:outline-none",Ys&&"bg-interactive-selection")})]}),$t&&!Ce&&t.jsxs("section",{className:"hidden lg:flex w-72 flex-col rounded-xl border border-border/60 bg-background/70 overflow-hidden",children:[t.jsxs("div",{className:"flex items-center justify-between px-3 py-1.5 border-b border-border/40",children:[t.jsx("span",{className:"typography-ui-header font-semibold text-foreground",children:d("diffView.section.files")}),t.jsx("span",{className:"typography-meta text-muted-foreground",children:_.length})]}),t.jsx(Tr,{changedFiles:_,selectedFile:null,onSelectFile:Zt})]}),t.jsxs("div",{className:"relative flex-1 min-w-0 min-h-0 h-full",children:[Ve.isOpen&&t.jsx(br,{query:Ve.query,onQueryChange:Ve.setQuery,total:Ve.matches.length,currentIndex:Ve.currentIndex,isSearching:Ve.isSearching,failedCount:Ve.failedCount,onNext:Ve.next,onPrevious:Ve.previous,onClose:Ve.close,focusNonce:ai}),t.jsx(Cn,{ref:Pe,outerClassName:"min-h-0 h-full",className:"[overflow-anchor:none]",disableHorizontal:!0,observeMutations:!1,preventOverscroll:!0,"data-diff-virtual-root":!0,children:t.jsx("div",{className:"flex flex-col [overflow-anchor:none] pb-16","data-diff-virtual-content":!0,children:Ce?vt&&n(vt,!0):_.map(r=>n(r))})})]})]})},fi=()=>{if(!h)return t.jsx("div",{className:"flex flex-1 items-center justify-center text-sm text-muted-foreground",children:d("diffView.state.selectSessionDirectory")});if(l!=="turn"&&z&&!F)return t.jsxs("div",{className:"flex flex-1 items-center justify-center gap-2 text-sm text-muted-foreground",children:[t.jsx(q,{name:"loader-4",className:"size-4 animate-spin"}),d("diffView.state.loadingRepositoryStatus")]});if(l!=="turn"&&V===!1)return t.jsx("div",{className:"flex flex-1 items-center justify-center text-sm text-muted-foreground",children:d("diffView.state.notGitRepository")});if(l==="pr"){if(!Ue||se.error)return t.jsxs("div",{className:"flex flex-1 flex-col items-center justify-center gap-3 p-6 text-center",children:[!se.error&&!Se.error&&!Se.loading&&t.jsx(q,{name:"git-pull-request",className:"size-6 text-muted-foreground"}),t.jsx("p",{className:"typography-meta text-muted-foreground",children:se.error??Se.error??(Se.loading?d(rn("session.githubPrPicker.loading.pullRequests",Se.provider)):d(rn("pullRequestComparison.pickAbove",Se.provider)))}),(se.error||Se.error)&&t.jsx(je,{variant:"outline",size:"sm",onClick:()=>{Ue?se.refresh():Se.refresh()},children:d("diffView.actions.retry")})]});if(!se.files)return t.jsxs("div",{className:"flex flex-1 items-center justify-center gap-2 typography-meta text-muted-foreground",children:[t.jsx(q,{name:"loader-4",className:"size-4 animate-spin"}),d("diffView.state.loadingDiff")]})}if(l==="commit"){if(Ln)return t.jsxs("div",{className:"flex flex-1 flex-col items-center justify-center gap-3 p-6 text-center",children:[t.jsx("p",{className:"typography-meta text-muted-foreground",children:Ln}),t.jsx(je,{variant:"outline",size:"sm",onClick:()=>{se.refresh()},children:d("diffView.actions.retry")})]});if(!dt&&!tt.loading)return t.jsx("div",{className:"flex flex-1 items-center justify-center text-sm text-muted-foreground",children:tt.error??d("commitComparison.noCommits")});if(!Vn)return t.jsxs("div",{className:"flex flex-1 items-center justify-center gap-2 text-sm text-muted-foreground",children:[t.jsx(q,{name:"loader-4",className:"size-4 animate-spin"}),d("diffView.state.loadingDiff")]})}if(l==="branch"){if(!Fn)return t.jsxs("div",{className:"flex flex-1 items-center justify-center gap-2 text-sm text-muted-foreground",children:[t.jsx(q,{name:"loader-4",className:"size-4 animate-spin"}),d("diffView.branch.resolvingBase")]});if(!Ee)return t.jsxs("div",{className:"flex flex-1 flex-col items-center justify-center gap-3 px-6 text-center",children:[t.jsx(q,{name:"git-branch",className:"size-6 text-muted-foreground"}),t.jsx("div",{className:"typography-ui-label font-semibold text-foreground",children:d("diffView.branch.noBaseTitle")}),t.jsx("div",{className:"max-w-sm typography-micro text-muted-foreground",children:d("gitView.pr.toast.baseBranchRequired")})]});if(An)return t.jsxs("div",{className:"flex flex-1 flex-col items-center justify-center gap-3 px-6 text-center",children:[t.jsx("div",{className:"typography-ui-label font-semibold text-foreground",children:d("diffView.branch.loadError")}),t.jsx("div",{className:"max-w-sm typography-micro text-muted-foreground",children:An}),t.jsx(je,{variant:"outline",size:"sm",onClick:()=>{se.refresh()},children:d("diffView.actions.retry")})]});if(wt===null)return t.jsxs("div",{className:"flex flex-1 items-center justify-center gap-2 text-sm text-muted-foreground",children:[t.jsx(q,{name:"loader-4",className:"size-4 animate-spin"}),d("diffView.branch.loadingFiles")]})}return l==="turn"&&bt?t.jsxs("div",{className:"flex flex-1 flex-col items-center justify-center gap-2 px-4 text-sm text-muted-foreground",children:[t.jsx("div",{className:"typography-ui-label font-semibold text-foreground",children:d("diffView.state.failedToLoadDiff")}),t.jsx("div",{className:"typography-meta max-w-[32rem] text-center",children:bt}),t.jsx("button",{type:"button",className:"typography-ui-label text-primary hover:underline",onClick:()=>{Te(null),Cs()},children:d("diffView.actions.retry")})]}):_.length===0?t.jsx("div",{className:"flex flex-1 items-center justify-center text-sm text-muted-foreground",children:l==="turn"?d("diffView.state.noLastTurnChanges"):l==="pr"?d("walkthrough.blocked.emptyDiff.description"):l==="commit"?d("commitComparison.emptyDiff"):l==="branch"&&Ee?d("diffView.branch.empty",{base:ur(Ee)}):d("diffView.state.cleanWorkingTree")}):ui()},Zn=_.length>0&&Wt&&(l!=="pr"||!!Gt),es=()=>{const n=h??"";G(n,l==="pr"&&Ue&&Gt?{source:Ue,context:Gt}:{source:l==="commit"&&dt?{kind:"commit",hash:dt}:l==="branch"&&Ee&&ue?{kind:"branch",baseRef:Ee,headRef:ue}:{kind:"working-tree",scope:l==="staged"||l==="working"?l:"all"}}),J&&L?P(L,{mode:"walkthrough",targetDirectory:K}):H(K??n,"walkthrough")},mi=n=>{switch(n){case"walkthrough":return Zn?{label:d("walkthrough.action.open"),icon:t.jsx(q,{name:"route",className:"size-4"}),on:!1,select:es}:null;case"tree":return Ke?null:{label:d("diffView.fileTree.showAsTree"),icon:t.jsx(q,{name:"node-tree",className:"size-4"}),on:$e==="tree",select:()=>zt($e==="tree"?"flat":"tree")};case"wrap":return{label:d("diffView.actions.wrapLines"),icon:t.jsx(q,{name:"text-wrap",className:"size-4"}),on:gt,select:()=>Fe(!ht)};case"whitespace":return{label:d("diffView.actions.hideWhitespace"),icon:t.jsx(is,{hidden:ae,className:"size-4"}),on:ae,select:()=>_t(!ae)};case"layout":{const r=pn==="side-by-side";return{label:d("diffView.layout.sideBySide"),icon:t.jsx(q,{name:"layout-column",className:"size-4"}),on:r,select:()=>Jn(r?"unified":"side-by-side")}}}};return t.jsxs("div",{ref:yt,"data-find-surface":"",className:"flex h-full flex-col overflow-hidden bg-background",children:[t.jsx(lr,{children:t.jsxs("div",{ref:p,className:ve("flex min-w-0 items-center gap-2",k?"flex-1 py-1 pe-1":"px-3 py-2 bg-background"),children:[ne?t.jsx(cr,{repositories:ne,selectedRepository:ee??null,onSelectRepository:n=>{K&&X(K,n)},repositoryRoot:K??void 0}):null,!te&&!J&&(l!=="all"?t.jsx(Dr,{scope:l,workingCount:Fs,stagedCount:Ds,turnCount:Ts,branchCount:qs,commitCount:l==="commit"?Vn?.length??null:null,prCount:l==="pr"?se.files?.length??null:null,showCommitOption:!Ie(),showBranchOption:un,changeRequestProvider:Se.provider,onScopeChange:n=>{Qe(n),C?.(n)}}):t.jsx("div",{className:"flex items-center gap-1 rounded-md px-2 py-1 text-muted-foreground shrink-0",children:t.jsx("span",{className:"typography-ui-label font-semibold text-foreground",children:z&&!F?d("diffView.state.loadingChanges"):_.length===1?d("diffView.summary.changedFilesSingle",{count:_.length}):d("diffView.summary.changedFilesPlural",{count:_.length})})})),l==="branch"&&t.jsx(yi,{branches:cn?.all??[],currentBranch:ue,base:Ee,automatic:Bs!=="chosen",onSelect:n=>{h&&ue&&As(h,ue,n)},onSelectAutomatic:()=>{h&&ue&&Ps(h,ue)}},JSON.stringify([h,ue])),l==="commit"&&t.jsx(bi,{commits:tt.commits,selectedHash:dt,loading:tt.loading,error:tt.error,onSelect:tt.select,onRefresh:()=>{tt.refresh()}},JSON.stringify([h,ue])),l==="pr"&&t.jsxs(t.Fragment,{children:[t.jsx(wi,{comparison:Se},JSON.stringify([fe,h,ue])),Ue&&t.jsx(je,{variant:"ghost",size:"sm",disabled:se.loading,"aria-label":d("session.githubIssuePicker.actions.refresh"),title:d("session.githubIssuePicker.actions.refresh"),onClick:()=>{se.refresh()},children:t.jsx(q,{name:"refresh",className:"size-4"})})]}),_.length>0&&t.jsxs(je,{variant:"ghost",size:"sm",onClick:Hs,className:ve("diff-toolbar__expand-button h-7 flex-shrink-0 gap-1 px-1.5 text-muted-foreground hover:text-foreground","ms-auto"),title:ge.size>0?d("diffView.actions.collapseAll"):d("diffView.actions.expandAll"),children:[t.jsx(q,{name:"expand-up-down",className:"size-4"}),t.jsx("span",{className:"diff-toolbar__expand-label typography-ui-label",children:ge.size>0?d("diffView.actions.collapseAll"):d("diffView.actions.expandAll")})]}),_.length>0&&at&&t.jsxs(je,{variant:"default",size:"sm",onClick:()=>ke(!0),disabled:gn,className:"diff-toolbar__review-button h-7 flex-shrink-0 gap-1.5 px-2","aria-label":d("diffView.actions.reviewAria"),children:[gn?t.jsx(q,{name:"loader-4",className:"size-4 animate-spin"}):t.jsx(q,{name:"search-eye",className:"size-4"}),t.jsx("span",{className:"diff-toolbar__review-label typography-ui-label",children:d("diffView.actions.review")})]}),Zn&&t.jsxs(je,{variant:"outline",size:"sm",onClick:es,className:ve("diff-toolbar__walkthrough-button h-7 flex-shrink-0 gap-1.5 px-2",dr),"aria-label":d("walkthrough.action.open"),children:[t.jsx(q,{name:"route",className:"size-4"}),t.jsx("span",{className:"diff-toolbar__walkthrough-label typography-ui-label",children:d("walkthrough.action.open")})]}),_.length>0&&!Ke&&t.jsx(je,{variant:"ghost",size:"sm",onClick:()=>zt($e==="tree"?"flat":"tree"),"aria-pressed":$e==="tree",className:ve("diff-toolbar__tree-toggle h-5 w-5 flex-shrink-0 p-0 transition-opacity",$e==="tree"?"text-foreground opacity-100":"text-muted-foreground opacity-60 hover:opacity-100"),title:d($e==="tree"?"diffView.fileTree.showAsList":"diffView.fileTree.showAsTree"),children:t.jsx(q,{name:"node-tree",className:"size-4"})}),_.length>0&&t.jsx(je,{variant:"ghost",size:"sm",onClick:()=>Fe(!ht),className:ve("diff-toolbar__wrap-toggle h-5 w-5 flex-shrink-0 p-0 transition-opacity",gt?"text-foreground opacity-100":"text-muted-foreground opacity-60 hover:opacity-100"),title:d(gt?"diffView.actions.disableLineWrap":"diffView.actions.enableLineWrap"),children:t.jsx(q,{name:"text-wrap",className:"size-4"})}),_.length>0&&t.jsx(je,{variant:"ghost",size:"sm",onClick:()=>_t(!ae),"aria-pressed":ae,className:ve("diff-toolbar__whitespace-toggle h-5 w-5 flex-shrink-0 p-0 transition-opacity",ae?"text-foreground opacity-100":"text-muted-foreground opacity-60 hover:opacity-100"),title:d(ae?"diffView.whitespace.hidden":"diffView.whitespace.shown"),"aria-label":d("diffView.actions.hideWhitespace"),children:t.jsx(is,{hidden:ae,className:"size-4"})}),pn&&t.jsx(xs,{mode:pn==="side-by-side"?"side-by-side":"unified",onModeChange:Jn,className:"diff-toolbar__layout-toggle flex-shrink-0"}),_.length>0&&t.jsxs(ys,{onOpenChange:N,children:[t.jsxs(Ki,{children:[t.jsx(Gi,{asChild:!0,children:t.jsx("span",{className:"diff-toolbar__more flex-shrink-0",children:t.jsx(bs,{asChild:!0,children:t.jsx(je,{variant:"ghost",size:"sm",className:"size-6 p-0 text-foreground hover:bg-transparent focus-visible:bg-transparent active:bg-transparent","aria-label":d("diffView.actions.moreActions"),children:t.jsx(q,{name:"more",className:"size-4"})})})})}),t.jsx(Hi,{side:"bottom",sideOffset:6,children:d("diffView.actions.moreActions")})]}),t.jsx(ws,{align:"end",className:"min-w-56",children:m.map(n=>{const r=mi(n);return r?t.jsxs(Ui,{className:"flex items-center gap-2",onClick:r.select,children:[r.icon,t.jsx("span",{className:"min-w-0 truncate typography-ui-label text-foreground",children:r.label}),r.on?t.jsx(q,{name:"check",className:"ms-auto size-4 text-foreground"}):null]},n):null})})]})]})}),t.jsx(Xi,{open:It,onOpenChange:ke,projectDirectory:h??null,submitting:gn,onConfirm:Xs}),fi()]})};function Br(){return new Set}function Ir(a){return{original:a.original??"",modified:a.modified??"",isBinary:a.isBinary,submodule:a.submodule,contextMode:"full"}}function _r(a){return a.addProject}function zr(a){return a.openNewSessionDraft}function Or(){return new Set}function Wr(a){return a+1}export{ol as DiffView,Mr as MultiFileDiffEntry};