@vantran-se/openchamber-web 2.4.1 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. package/dist/assets/{AboutDialog-BItSBkkK.js → AboutDialog-C8mAGhnz.js} +1 -1
  2. package/dist/assets/{ArchiveView-CEGi3y1V.js → ArchiveView-4-LVDLmf.js} +1 -1
  3. package/dist/assets/{ChangedPathLabel-CQNGnF-T.js → ChangedPathLabel-BCiU4QDF.js} +1 -1
  4. package/dist/assets/{CommandPalette-DWX1HV4m.js → CommandPalette-DEcmPHdC.js} +1 -1
  5. package/dist/assets/{DiffView-Be1Xoy_F.js → DiffView-CaDZ4gTk.js} +3 -3
  6. package/dist/assets/{FilesView-DONPk8-K.js → FilesView-Csrs_BGv.js} +1 -1
  7. package/dist/assets/{GitView-D10y-u46.js → GitView-DvxCZgCW.js} +3 -3
  8. package/dist/assets/{GuestSurfacePane-Cot0OO7x.js → GuestSurfacePane-DNg0xBTD.js} +1 -1
  9. package/dist/assets/{HelpDialog-Bw836_tH.js → HelpDialog-CLyz3_xd.js} +1 -1
  10. package/dist/assets/{InProgressOperationBanner-saAihIub.js → InProgressOperationBanner-BVDKUDqn.js} +2 -2
  11. package/dist/assets/{IntegrationsCatalogView-BtdMeTHf.js → IntegrationsCatalogView-u1gS0Vk8.js} +1 -1
  12. package/dist/assets/{JsonTreeView-BOQC0uTM.js → JsonTreeView-BpJU14WJ.js} +1 -1
  13. package/dist/assets/{MarkdownRendererImpl-CuZntPVf.js → MarkdownRendererImpl-t3OoYn_0.js} +1 -1
  14. package/dist/assets/{MemoryDebugPanel-BZgSuf-z.js → MemoryDebugPanel-9z1jGWze.js} +1 -1
  15. package/dist/assets/{OnboardingScreen-Bx2h2w69.js → OnboardingScreen-xzT7ckY0.js} +1 -1
  16. package/dist/assets/{OpenCodeStatusDialog-N9JgIC1p.js → OpenCodeStatusDialog-skpJZSjK.js} +1 -1
  17. package/dist/assets/{PatchDiff-Ca_Ci2CX.js → PatchDiff-BWW_8bob.js} +1 -1
  18. package/dist/assets/{PierreDiffViewer-Ck0P8Q2W.js → PierreDiffViewer-BZDNV4Uj.js} +1 -1
  19. package/dist/assets/{PlanView-dx70wKWR.js → PlanView-D7wshtfZ.js} +1 -1
  20. package/dist/assets/{ProjectActionsDialog-BS20dYCJ.js → ProjectActionsDialog-BPh74BCt.js} +1 -1
  21. package/dist/assets/{PullRequestComparisonSelector-DOW9_VlK.js → PullRequestComparisonSelector-BBdU2rL1.js} +3 -3
  22. package/dist/assets/{RunOverview-DtxjzGnX.js → RunOverview-Cngm2OOp.js} +2 -2
  23. package/dist/assets/{ScheduledTasksDialog-HcypGtky.js → ScheduledTasksDialog-DUjDdkw2.js} +1 -1
  24. package/dist/assets/{SettingsView-IBrGwDoM.js → SettingsView-CCZOw018.js} +2 -2
  25. package/dist/assets/{SettingsWindow-Bugr9Hmx.js → SettingsWindow-Cndsj5Vu.js} +1 -1
  26. package/dist/assets/{SourceBoardView-BD5rmib8.js → SourceBoardView-8Wp0oUvB.js} +1 -1
  27. package/dist/assets/{SpaceAccessDialog-BYhp5gfB.js → SpaceAccessDialog-CxfCzTpe.js} +1 -1
  28. package/dist/assets/{SpaceApplyDialog-CC0axZal.js → SpaceApplyDialog-CYp0A76N.js} +1 -1
  29. package/dist/assets/{SpaceRow-DDWTQgfP.js → SpaceRow-CQp4PkPJ.js} +1 -1
  30. package/dist/assets/{SpaceSetupOutput-BqurG7V4.js → SpaceSetupOutput-RNo0mWrR.js} +1 -1
  31. package/dist/assets/{SpacesView-Bcbb9aXY.js → SpacesView-BwcDCv3D.js} +1 -1
  32. package/dist/assets/{SubmoduleDiffSummary-BS1PSa4l.js → SubmoduleDiffSummary-BQduif5s.js} +1 -1
  33. package/dist/assets/{ToolOutputDialog-DXWQ17Fv.js → ToolOutputDialog-BVCvqYsK.js} +1 -1
  34. package/dist/assets/{ToolPartDiffPreview-DXRs6cSg.js → ToolPartDiffPreview-BXpCHBW9.js} +1 -1
  35. package/dist/assets/{UsageStatsView-DFVydqMY.js → UsageStatsView-CsC_RzAH.js} +1 -1
  36. package/dist/assets/{Virtualizer-B8rX50qD.js → Virtualizer-nenVQKi3.js} +1 -1
  37. package/dist/assets/{WalkthroughView-CECS5lDs.js → WalkthroughView-CdIYpttA.js} +1 -1
  38. package/dist/assets/{WorktreesView-FH0uzPQG.js → WorktreesView-D102xE1o.js} +1 -1
  39. package/dist/assets/{appThemeRegistry-CnS_OWEL.js → appThemeRegistry-BWap7OfW.js} +1 -1
  40. package/dist/assets/{ar-BlEU--PN.js → ar-9CiK5cuu.js} +3 -3
  41. package/dist/assets/{computeVirtualFileMetrics-rZJ-MSfY.js → computeVirtualFileMetrics-DDyA16hp.js} +1 -1
  42. package/dist/assets/{de-DWs4Mcjc.js → de-Drq6oIkP.js} +3 -3
  43. package/dist/assets/{decorate-Bbbyq0tX.js → decorate-CemSwkUs.js} +1 -1
  44. package/dist/assets/{es-k5T7CE97.js → es-0bkFr34F.js} +3 -3
  45. package/dist/assets/{flexokiTheme-DECIbITo.js → flexokiTheme-PoX6Vqyn.js} +1 -1
  46. package/dist/assets/{fr-CzmypgZ8.js → fr-CjgWVupK.js} +3 -3
  47. package/dist/assets/{he-DdkxJnUn.js → he-BrJa9oPB.js} +4 -4
  48. package/dist/assets/{index-DElZNtel.js → index-B2WHEal3.js} +1 -1
  49. package/dist/assets/{initializeSharedPreferences-C5qncsHs.js → initializeSharedPreferences-1Vo6G7CM.js} +1 -1
  50. package/dist/assets/{install-D-H6uk7D.js → install-FletzeYD.js} +1 -1
  51. package/dist/assets/{isDiffPlainText-DMFSMXcK.js → isDiffPlainText-yXcpftjI.js} +1 -1
  52. package/dist/assets/{isFilePlainText-BQGSJxcX.js → isFilePlainText-Dpm-_Qu8.js} +1 -1
  53. package/dist/assets/{ja-Qqkyglaf.js → ja-cfyrqWPa.js} +3 -3
  54. package/dist/assets/katex.min-F4TD1ekM.js +69 -0
  55. package/dist/assets/{ko-B8idPK2d.js → ko-herKAlGO.js} +3 -3
  56. package/dist/assets/{main-DMdUGpFx.js → main-CO7wKNtS.js} +2 -2
  57. package/dist/assets/{main-CcnDurk6.js → main-DN47yDMe.js} +19 -19
  58. package/dist/assets/markdownCore-BY21GJ_M.js +10 -0
  59. package/dist/assets/{miniChat-B8DW3cmv.js → miniChat-BmFJFQph.js} +2 -2
  60. package/dist/assets/{mobile-Caqsx1Op.js → mobile-DTi98S93.js} +2 -2
  61. package/dist/assets/{moveWorkspacePath-By4gjwmW.js → moveWorkspacePath-CENAo75W.js} +1 -1
  62. package/dist/assets/{nl-CFXZKHp7.js → nl-mZ4VCoiQ.js} +3 -3
  63. package/dist/assets/{parseDiffFromFile-C9ASoy7R.js → parseDiffFromFile-BSmRvd3V.js} +1 -1
  64. package/dist/assets/{pierreDiffTint-IfgQ6oty.js → pierreDiffTint-cyYFR1bm.js} +1 -1
  65. package/dist/assets/{pl-slLgZWDu.js → pl-C98lvkcZ.js} +4 -4
  66. package/dist/assets/{pt-BR-C319g_nn.js → pt-BR-CB63WPLS.js} +3 -3
  67. package/dist/assets/{relocateRestoredSession-DBWTClOj.js → relocateRestoredSession-D8Sf_FG_.js} +1 -1
  68. package/dist/assets/{renderElectronMiniChatApp-C5irgP-w.js → renderElectronMiniChatApp-DmQ8i5jp.js} +2 -2
  69. package/dist/assets/{renderMobileApp-DnyN_ARh.js → renderMobileApp-CND9CafV.js} +3 -3
  70. package/dist/assets/{restartOpenCode-VU-OEAvZ.js → restartOpenCode-D8ExMl55.js} +1 -1
  71. package/dist/assets/{runtimeEndpointReset-BJUtkqal.js → runtimeEndpointReset-lg1O2gVX.js} +3 -3
  72. package/dist/assets/{scheduledTasksApi-FZ9stPNl.js → scheduledTasksApi-CJBNpwgy.js} +1 -1
  73. package/dist/assets/{selectionMarkdown-DV_HvvmZ.js → selectionMarkdown-B_3WTOUr.js} +1 -1
  74. package/dist/assets/{shikiHighlight-BKmAuapa.js → shikiHighlight-DBj_a_TN.js} +1 -1
  75. package/dist/assets/{space-apply-Br_BRuH8.js → space-apply-COMscpEL.js} +1 -1
  76. package/dist/assets/{space-close-D_1iLJrX.js → space-close-DDLvYCUc.js} +1 -1
  77. package/dist/assets/{spaceNetwork-Dcj-qJy-.js → spaceNetwork-CNxs51y4.js} +1 -1
  78. package/dist/assets/{textMateThemeFromAppTheme-Bye_bpEL.js → textMateThemeFromAppTheme-tYpAceV3.js} +1 -1
  79. package/dist/assets/{tr-DNnJ5oqk.js → tr-C5KUa-8X.js} +3 -3
  80. package/dist/assets/{uk-Bw0BJwHw.js → uk-D44Grdmc.js} +3 -3
  81. package/dist/assets/{useAppFontEffects-d9vsRNKm.js → useAppFontEffects-Dm6zEvrf.js} +200 -199
  82. package/dist/assets/{useCallableModelProviders-8CrUkERW.js → useCallableModelProviders-BK3j8Sde.js} +1 -1
  83. package/dist/assets/{useDiffFindSurface-sw5jZ-9V.js → useDiffFindSurface-CaCh-qt2.js} +1 -1
  84. package/dist/assets/{useInlineCommentController-Cw5IRM5Y.js → useInlineCommentController-a2JepiF3.js} +1 -1
  85. package/dist/assets/{useMarkdownLocalAssets-D3a1j44d.js → useMarkdownLocalAssets-BEApAshz.js} +2 -2
  86. package/dist/assets/{useRootScrollLock-BWsNuapq.js → useRootScrollLock-mqVhK2HB.js} +2 -2
  87. package/dist/assets/{useWalkthroughReview-D7I1H6_J.js → useWalkthroughReview-BspAr9Aa.js} +1 -1
  88. package/dist/assets/{vendor-codemirror-language-data-DP_Bh3S8.js → vendor-codemirror-language-data-VzNDjH03.js} +2 -2
  89. package/dist/assets/{zh-CN-Brx5Btej.js → zh-CN-DwBC4Qtd.js} +3 -3
  90. package/dist/assets/{zh-TW-WokiutLA.js → zh-TW-DXEqDBAm.js} +3 -3
  91. package/dist/index.html +2 -2
  92. package/dist/mini-chat.html +2 -2
  93. package/dist/mobile.html +2 -2
  94. package/package.json +2 -2
  95. package/server/index.js +4 -2
  96. package/server/lib/git/service.test.js +1 -1
  97. package/server/lib/opencode/openchamber-routes.test.js +1 -0
  98. package/server/lib/opencode/settings-helpers.js +2 -2
  99. package/server/lib/opencode/settings-helpers.test.js +1 -1
  100. package/server/lib/opencode/settings-registry.json +1 -1
  101. package/server/lib/outbound-proxy.test.js +2 -2
  102. package/server/lib/spaces/tools.test.js +2 -2
  103. package/dist/assets/katex.min-u4DtE8E5.js +0 -69
  104. package/dist/assets/markdownCore-BwFkWhmZ.js +0 -10
@@ -1 +1 @@
1
- import{f as z,R as B,j as r}from"./vendor-react-BUCujlKS.js";import{u as E,a5 as O,f as T,h as _,aB as k,I as F,B as D,aC as J}from"./useAppFontEffects-d9vsRNKm.js";import{S as U}from"./SpaceRow-DDWTQgfP.js";import{u as V,y as $,z as q}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"./runtimeEndpointReset-BJUtkqal.js";import"./vendor-opencode-client-h8RufjAw.js";function Ne(){const t=z.c(52),{t:e}=E(),b=V(G);let v;t[0]!==b?(v=n=>n.projects.find(N=>N.id===b)??null,t[0]=b,t[1]=v):v=t[1];const i=O(v),{journey:p,error:o}=$(),[C,P]=B.useState(!1);if(!i)return null;let c,m,s,l,u,f,d,a,x,j;if(t[2]!==o||t[3]!==p||t[4]!==i||t[5]!==e){const n=p?q(p,i.path):[];j="absolute inset-0 z-10 flex flex-col bg-background",x="flex-1 overflow-y-auto px-6 py-4",d="mx-auto w-full max-w-4xl space-y-4";let N,R;t[16]===Symbol.for("react.memo_cache_sentinel")?(N=()=>P(!0),R=r.jsx(F,{name:"box-3",className:"me-1 h-3.5 w-3.5"}),t[16]=N,t[17]=R):(N=t[16],R=t[17]);let w;t[18]!==e?(w=e("spaces.page.new"),t[18]=e,t[19]=w):w=t[19],t[20]!==w?(a=r.jsx("div",{className:"flex items-center",children:r.jsxs(D,{size:"sm",onClick:N,children:[R,w]})}),t[20]=w,t[21]=a):a=t[21],c=J,t[22]!==e?(m=e("spaces.page.listTitle"),t[22]=e,t[23]=m):m=t[23],t[24]!==o||t[25]!==e?(s=o?r.jsx("p",{className:"typography-meta text-[var(--status-error)]",children:e("spaces.page.loadFailed",{reason:T(e,_(o))})}):null,t[24]=o,t[25]=e,t[26]=s):s=t[26],t[27]!==o||t[28]!==p||t[29]!==e?(l=p===null&&!o?r.jsx("p",{className:"typography-meta text-muted-foreground",children:e("spaces.page.loading")}):null,t[27]=o,t[28]=p,t[29]=e,t[30]=l):l=t[30],u=p!==null&&!o&&n.length===0?r.jsx("p",{className:"typography-meta text-muted-foreground/70",children:e("spaces.page.empty")}):null,f=n.length>0?r.jsx("div",{className:"space-y-1",children:n.map(A)}):null,t[2]=o,t[3]=p,t[4]=i,t[5]=e,t[6]=c,t[7]=m,t[8]=s,t[9]=l,t[10]=u,t[11]=f,t[12]=d,t[13]=a,t[14]=x,t[15]=j}else c=t[6],m=t[7],s=t[8],l=t[9],u=t[10],f=t[11],d=t[12],a=t[13],x=t[14],j=t[15];let h;t[31]!==c||t[32]!==m||t[33]!==s||t[34]!==l||t[35]!==u||t[36]!==f?(h=r.jsxs(c,{title:m,children:[s,l,u,f]}),t[31]=c,t[32]=m,t[33]=s,t[34]=l,t[35]=u,t[36]=f,t[37]=h):h=t[37];let g;t[38]!==h||t[39]!==d||t[40]!==a?(g=r.jsxs("div",{className:d,children:[a,h]}),t[38]=h,t[39]=d,t[40]=a,t[41]=g):g=t[41];let y;t[42]!==g||t[43]!==x?(y=r.jsx("div",{className:x,children:g}),t[42]=g,t[43]=x,t[44]=y):y=t[44];let S;t[45]!==C||t[46]!==i?(S=C?r.jsx(k,{open:!0,onOpenChange:n=>{n||P(!1)},project:{id:i.id,path:i.path}}):null,t[45]=C,t[46]=i,t[47]=S):S=t[47];let I;return t[48]!==y||t[49]!==S||t[50]!==j?(I=r.jsxs("div",{className:j,children:[y,S]}),t[48]=y,t[49]=S,t[50]=j,t[51]=I):I=t[51],I}function A(t){return r.jsx(U,{entry:t,actions:"menu"},t.id)}function G(t){return t.spacesPageProjectId}export{Ne as SpacesView};
1
+ import{f as z,R as B,j as r}from"./vendor-react-BUCujlKS.js";import{u as E,a5 as O,f as T,h as _,aB as k,I as F,B as D,aC as J}from"./useAppFontEffects-Dm6zEvrf.js";import{S as U}from"./SpaceRow-CQp4PkPJ.js";import{u as V,y as $,z as q}from"./katex.min-F4TD1ekM.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-VzNDjH03.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"./runtimeEndpointReset-lg1O2gVX.js";import"./vendor-opencode-client-h8RufjAw.js";function Ne(){const t=z.c(52),{t:e}=E(),b=V(G);let v;t[0]!==b?(v=n=>n.projects.find(N=>N.id===b)??null,t[0]=b,t[1]=v):v=t[1];const i=O(v),{journey:p,error:o}=$(),[C,P]=B.useState(!1);if(!i)return null;let c,m,s,l,u,f,d,a,x,j;if(t[2]!==o||t[3]!==p||t[4]!==i||t[5]!==e){const n=p?q(p,i.path):[];j="absolute inset-0 z-10 flex flex-col bg-background",x="flex-1 overflow-y-auto px-6 py-4",d="mx-auto w-full max-w-4xl space-y-4";let N,R;t[16]===Symbol.for("react.memo_cache_sentinel")?(N=()=>P(!0),R=r.jsx(F,{name:"box-3",className:"me-1 h-3.5 w-3.5"}),t[16]=N,t[17]=R):(N=t[16],R=t[17]);let w;t[18]!==e?(w=e("spaces.page.new"),t[18]=e,t[19]=w):w=t[19],t[20]!==w?(a=r.jsx("div",{className:"flex items-center",children:r.jsxs(D,{size:"sm",onClick:N,children:[R,w]})}),t[20]=w,t[21]=a):a=t[21],c=J,t[22]!==e?(m=e("spaces.page.listTitle"),t[22]=e,t[23]=m):m=t[23],t[24]!==o||t[25]!==e?(s=o?r.jsx("p",{className:"typography-meta text-[var(--status-error)]",children:e("spaces.page.loadFailed",{reason:T(e,_(o))})}):null,t[24]=o,t[25]=e,t[26]=s):s=t[26],t[27]!==o||t[28]!==p||t[29]!==e?(l=p===null&&!o?r.jsx("p",{className:"typography-meta text-muted-foreground",children:e("spaces.page.loading")}):null,t[27]=o,t[28]=p,t[29]=e,t[30]=l):l=t[30],u=p!==null&&!o&&n.length===0?r.jsx("p",{className:"typography-meta text-muted-foreground/70",children:e("spaces.page.empty")}):null,f=n.length>0?r.jsx("div",{className:"space-y-1",children:n.map(A)}):null,t[2]=o,t[3]=p,t[4]=i,t[5]=e,t[6]=c,t[7]=m,t[8]=s,t[9]=l,t[10]=u,t[11]=f,t[12]=d,t[13]=a,t[14]=x,t[15]=j}else c=t[6],m=t[7],s=t[8],l=t[9],u=t[10],f=t[11],d=t[12],a=t[13],x=t[14],j=t[15];let h;t[31]!==c||t[32]!==m||t[33]!==s||t[34]!==l||t[35]!==u||t[36]!==f?(h=r.jsxs(c,{title:m,children:[s,l,u,f]}),t[31]=c,t[32]=m,t[33]=s,t[34]=l,t[35]=u,t[36]=f,t[37]=h):h=t[37];let g;t[38]!==h||t[39]!==d||t[40]!==a?(g=r.jsxs("div",{className:d,children:[a,h]}),t[38]=h,t[39]=d,t[40]=a,t[41]=g):g=t[41];let y;t[42]!==g||t[43]!==x?(y=r.jsx("div",{className:x,children:g}),t[42]=g,t[43]=x,t[44]=y):y=t[44];let S;t[45]!==C||t[46]!==i?(S=C?r.jsx(k,{open:!0,onOpenChange:n=>{n||P(!1)},project:{id:i.id,path:i.path}}):null,t[45]=C,t[46]=i,t[47]=S):S=t[47];let I;return t[48]!==y||t[49]!==S||t[50]!==j?(I=r.jsxs("div",{className:j,children:[y,S]}),t[48]=y,t[49]=S,t[50]=j,t[51]=I):I=t[51],I}function A(t){return r.jsx(U,{entry:t,actions:"menu"},t.id)}function G(t){return t.spacesPageProjectId}export{Ne as SpacesView};
@@ -1 +1 @@
1
- import{f as L,j,R as b,r as v}from"./vendor-react-BUCujlKS.js";import{N as J,I as Q,ex as I,ey as H,u as K,aD as X,ez as Y,bc as Z,eA as ee,eB as te,eC as se,eD as ne}from"./useAppFontEffects-d9vsRNKm.js";import{k as U,aa as re,a9 as ae,a5 as $}from"./katex.min-u4DtE8E5.js";import{o as W,s as G}from"./vendor-zod-DDir2TeQ.js";const pe=t=>{const e=L.c(8),{hidden:s,className:r}=t;let n;e[0]!==r?(n=J("relative inline-flex",r),e[0]=r,e[1]=n):n=e[1];let l;e[2]===Symbol.for("react.memo_cache_sentinel")?(l=j.jsx(Q,{name:"space",className:"size-full"}),e[2]=l):l=e[2];let a;e[3]!==s?(a=s?j.jsx("span",{className:"absolute left-1/2 top-1/2 h-[1.5px] w-[130%] -translate-x-1/2 -translate-y-1/2 -rotate-45 rounded-full bg-current"}):null,e[3]=s,e[4]=a):a=e[4];let o;return e[5]!==n||e[6]!==a?(o=j.jsxs("span",{className:n,"aria-hidden":"true",children:[l,a]}),e[5]=n,e[6]=a,e[7]=o):o=e[7],o},ge=t=>t==="added"?"A":t==="deleted"?"D":"M",we=(t,e)=>!!t&&e!==null,ye=(t,e,s,r)=>s?t===null?!0:r&&e===null:!1,be=(t,e)=>t==="branch"&&!e?"working":t,ke=(t,e,s,r,n,l)=>{const a=b.useRef({directory:"",attempts:0}),[o,u]=b.useState(()=>({directory:"",exhausted:!1})),d=b.useRef(n);d.current=n;const i=!!t&&o.directory===t&&o.exhausted;return b.useEffect(()=>{if(!t||!e||r||s)return;const m=a.current.directory===t?a.current.attempts:0;if(m>=l){o.directory===t&&o.exhausted||u({directory:t,exhausted:!0});return}a.current={directory:t,attempts:m+1},d.current()},[t,o,r,e,s,l]),i},Re=(t,e)=>new Map((t??[]).map(s=>[s.path,s.revision??`status:${e}`])),ve=(t,e,s,r,n="",l)=>{const[a,o]=b.useState(()=>new Map),u=b.useRef(a);u.current=a;const d=b.useRef(new Map),i=b.useRef(null),m=b.useRef(new Map),f=b.useRef(s);f.current=s;const w=b.useCallback((p,x)=>{const S=new Map(u.current);if(x===null){if(!S.delete(p))return}else S.set(p,x);u.current=S,o(S)},[]);b.useEffect(()=>{i.current=t,d.current.clear(),u.current=new Map,o(u.current)},[t]);const c=(e?e.split("\0"):[]).map(p=>`${p}\0${l?.has(p)?`${n}|${l.get(p)}`:n}`).join("\0");return b.useEffect(()=>{const p=f.current;if(!t||!p||!c)return;const x=c.split("\0");let S=!1;const F=new Set,P=d.current;for(let q=0;q<x.length;q+=2){const h=x[q],T=x[q+1];u.current.has(h)&&P.get(h)===T||(F.add(h),u.current.has(h)||w(h,r),p(h).then(V=>{S||(F.delete(h),P.set(h,T),w(h,V))}).catch(()=>{S||(F.delete(h),P.delete(h),w(h,null))}))}return()=>{S=!0;for(const q of F)P.has(q)||w(q,null)}},[r,t,c,w]),i.current===t?a:m.current};function ie(t){if(!t.trim())return[];if(!t.startsWith("diff --git "))throw new Error("Invalid pull request diff");return t.split(/(?=^diff --git )/m).filter(Boolean).map(e=>{const s=H(e);if(!s)throw new Error("Invalid pull request file diff");return{path:s.name,previousPath:s.prevName,status:/^new file mode /m.test(e)?"A":/^deleted file mode /m.test(e)?"D":/^rename from /m.test(e)?"R":/^copy from /m.test(e)?"C":"M",insertions:s.hunks.reduce((r,n)=>r+n.additionLines,0),deletions:s.hunks.reduce((r,n)=>r+n.deletionLines,0),patch:e}})}async function O(t,e){const s=W({error:G()}).safeParse(await t.json().catch(()=>null));throw new Error(s.success?s.data.error:`${e} (${t.status})`)}async function oe(t,e,s){const r=await U("/api/walkthrough/pr-diff",{query:I(t,{source:e,context:s}),signal:AbortSignal.timeout(3e4)});if(r.ok||await O(r,"Failed to load pull request diff"),!r.headers.get("content-type")?.includes("text/plain"))throw new Error("Pull request comparison is unavailable on this server");return ie(await r.text())}const ue=W({original:G(),modified:G()});async function le(t,e,s,r){const n=await U("/api/walkthrough/pr-file",{query:{...I(t,{source:e,context:s}),path:r.path,previousPath:r.previousPath??"",status:r.status},signal:AbortSignal.timeout(3e4)});n.ok||await O(n,"Failed to load pull request file");const l=ue.safeParse(await n.json().catch(()=>null));if(!l.success)throw new Error("Pull request file contents are unavailable on this server");return l.data}class ce{entries=new Map;load(e,s,r,n=!1,l=""){const a=JSON.stringify([e,s,l]),o=this.entries.get(a);if(o&&(!n||o.files===null))return o.pending;const u={scope:e,pending:r(),files:null,bytes:0};return u.pending=u.pending.then(d=>{if(this.entries.get(a)!==u)return d;u.files=d,u.bytes=d.reduce((m,f)=>m+2*(f.patch.length+f.path.length),0);let i=[...this.entries.values()].reduce((m,f)=>m+f.bytes,0);for(const[m,f]of this.entries){if(this.entries.size<=8&&i<=32*1024*1024)break;f===u||f.files===null||(i-=f.bytes,this.entries.delete(m))}return d}).catch(d=>{throw this.entries.get(a)===u&&this.entries.delete(a),d}),this.entries.delete(a),this.entries.set(a,u),u.pending}invalidate(e){for(const[s,r]of this.entries)r.scope===e&&this.entries.delete(s)}}function xe(t,e,s=!0,r="",n=null,l=null){const{t:a}=K(),o=X(g=>g.runtimeKey),u=n?.provider??l,d=e?.kind==="pr"&&n?JSON.stringify(Y(n)):"",i=t&&e?JSON.stringify([o,t,e,d]):null,m=re(t??"",o),f=v.useRef({key:i,source:e,enabled:s,pushScope:m,readContext:n,authority:d});f.current={key:i,source:e,enabled:s,pushScope:m,readContext:n,authority:d};const[w,c]=v.useState(null),p=v.useRef(0),[x]=v.useState(()=>new ce),[S,F]=v.useState(0);v.useEffect(()=>ae(g=>{x.invalidate(g),!(g!==f.current.pushScope||f.current.source?.kind!=="pr")&&(p.current+=1,F(D=>D+1))}),[x]);const P=v.useCallback(async g=>{const{key:D,source:y,enabled:E,readContext:N,authority:C}=f.current;if(!s||!E||!i||D!==i||!t||!y)return;const B=++p.current,A=$();c(k=>k?.key===i&&k.status==="ready"?{...k,refreshing:!0}:{key:i,status:"loading"});try{let k;if(y.kind==="pr"){if(!N)throw new Error(a(Z("session.githubPrPicker.empty.notConnected",u)));k=await x.load(m,y,()=>oe(t,y,N),g,C)}else y.kind==="branch"?k=(await ee(t,{base:y.baseRef,head:y.headRef,includeWorkingTree:!0})).map(R=>({...R,insertions:0,deletions:0})):k=(await te(t,y.hash)).files.map(R=>({path:R.path,status:R.changeType,previousPath:R.previousPath,insertions:R.insertions,deletions:R.deletions}));if(p.current!==B||$()!==A)return;c(R=>R?.key===i&&R.status==="ready"&&R.files===k?{...R,refreshing:!1}:{key:i,status:"ready",files:k,revision:B,refreshing:!1})}catch(k){if(p.current!==B||$()!==A)return;c({key:i,status:"error",message:k instanceof Error?k.message:a("diffView.state.failedToLoadDiff")})}},[t,s,i,x,u,m,a]),q=v.useCallback(()=>P(!0),[P]);v.useEffect(()=>(P(!1),()=>{p.current+=1}),[P,r,S]);const h=w?.key===i?w:null,T=h?.status==="ready"?h.files:null,V=v.useMemo(()=>new Map((T??[]).map(g=>[g.path,g])),[T]),_=v.useCallback(async(g,D=3)=>{const{key:y,source:E,enabled:N}=f.current,C=V.get(g);if(!t||y!==i||!E||!C||!s||!N)throw new Error(a("diffView.state.failedToLoadDiff"));if(E.kind==="pr"){if(C.patch===void 0)throw new Error(a("diffView.state.failedToLoadDiff"));return{diff:C.patch}}return E.kind==="branch"?se(t,{base:E.baseRef,head:E.headRef,path:g,contextLines:D,includeWorkingTree:!0}):ne(t,{hash:E.hash,path:g,previousPath:C.previousPath,contextLines:D})},[t,s,V,i,a]),z=v.useCallback(async g=>{const{key:D,source:y,enabled:E,readContext:N}=f.current,C=V.get(g);if(!t||D!==i||y?.kind!=="pr"||!N||!C||!s||!E)throw new Error(a("diffView.state.failedToLoadDiff"));return le(t,y,N,{path:C.path,previousPath:C.previousPath,status:C.status})},[t,s,V,i,a]);return{key:i,revision:h?.status==="ready"?h.revision:0,files:T,loading:!!(s&&i&&(!h||h.status==="loading"||h.status==="ready"&&h.refreshing)),error:h?.status==="error"?h.message:null,refresh:q,fetchDiff:_,fetchFullFile:z}}const M=t=>t.slice(0,7),Ce=t=>{const e=L.c(32),{state:s,staged:r}=t,{t:n}=K(),l=r?s.headCommit:s.indexCommit,a=r?s.indexCommit:s.worktreeCommit;let o=null;if(s.hasConflict){let c;e[0]!==n?(c=n("diffView.submodule.conflict"),e[0]=n,e[1]=c):c=e[1],o=c}else if(l&&a){let c;e[2]!==l||e[3]!==n||e[4]!==a?(c=l===a?n("diffView.submodule.commitUnchanged",{commit:M(a)}):n("diffView.submodule.commitChanged",{from:M(l),to:M(a)}),e[2]=l,e[3]=n,e[4]=a,e[5]=c):c=e[5],o=c}else if(a){let c;e[6]!==n||e[7]!==a?(c=n("diffView.submodule.added",{commit:M(a)}),e[6]=n,e[7]=a,e[8]=c):c=e[8],o=c}else if(l){let c;e[9]!==l||e[10]!==r||e[11]!==n?(c=r?n("diffView.submodule.removed",{commit:M(l)}):n("diffView.submodule.notCheckedOut",{commit:M(l)}),e[9]=l,e[10]=r,e[11]=n,e[12]=c):c=e[12],o=c}let u;e[13]!==n?(u=n("diffView.submodule.title"),e[13]=n,e[14]=u):u=e[14];let d;e[15]!==u?(d=j.jsx("div",{className:"typography-ui-label font-semibold text-foreground",children:u}),e[15]=u,e[16]=d):d=e[16];let i;e[17]!==o?(i=o?j.jsx("div",{className:"typography-meta text-muted-foreground",children:o}):null,e[17]=o,e[18]=i):i=e[18];let m;e[19]!==r||e[20]!==s.hasTrackedChanges||e[21]!==n?(m=!r&&s.hasTrackedChanges?j.jsx("div",{className:"typography-meta text-muted-foreground",children:n("diffView.submodule.trackedChanges")}):null,e[19]=r,e[20]=s.hasTrackedChanges,e[21]=n,e[22]=m):m=e[22];let f;e[23]!==r||e[24]!==s.hasUntrackedFiles||e[25]!==n?(f=!r&&s.hasUntrackedFiles?j.jsx("div",{className:"typography-meta text-muted-foreground",children:n("diffView.submodule.untrackedFiles")}):null,e[23]=r,e[24]=s.hasUntrackedFiles,e[25]=n,e[26]=f):f=e[26];let w;return e[27]!==d||e[28]!==i||e[29]!==m||e[30]!==f?(w=j.jsxs("div",{className:"flex flex-col gap-1 rounded-lg border border-border/60 bg-background px-3 py-2",children:[d,i,m,f]}),e[27]=d,e[28]=i,e[29]=m,e[30]=f,e[31]=w):w=e[31],w};export{Ce as S,pe as W,ye as a,xe as b,Re as c,ve as d,be as e,we as i,ge as s,ke as u};
1
+ import{f as L,j,R as b,r as v}from"./vendor-react-BUCujlKS.js";import{N as J,I as Q,ey as I,ez as H,u as K,aD as X,eA as Y,bc as Z,eB as ee,eC as te,eD as se,eE as ne}from"./useAppFontEffects-Dm6zEvrf.js";import{k as U,aa as re,a9 as ae,a5 as $}from"./katex.min-F4TD1ekM.js";import{o as W,s as G}from"./vendor-zod-DDir2TeQ.js";const pe=t=>{const e=L.c(8),{hidden:s,className:r}=t;let n;e[0]!==r?(n=J("relative inline-flex",r),e[0]=r,e[1]=n):n=e[1];let l;e[2]===Symbol.for("react.memo_cache_sentinel")?(l=j.jsx(Q,{name:"space",className:"size-full"}),e[2]=l):l=e[2];let a;e[3]!==s?(a=s?j.jsx("span",{className:"absolute left-1/2 top-1/2 h-[1.5px] w-[130%] -translate-x-1/2 -translate-y-1/2 -rotate-45 rounded-full bg-current"}):null,e[3]=s,e[4]=a):a=e[4];let o;return e[5]!==n||e[6]!==a?(o=j.jsxs("span",{className:n,"aria-hidden":"true",children:[l,a]}),e[5]=n,e[6]=a,e[7]=o):o=e[7],o},ge=t=>t==="added"?"A":t==="deleted"?"D":"M",we=(t,e)=>!!t&&e!==null,ye=(t,e,s,r)=>s?t===null?!0:r&&e===null:!1,be=(t,e)=>t==="branch"&&!e?"working":t,ke=(t,e,s,r,n,l)=>{const a=b.useRef({directory:"",attempts:0}),[o,u]=b.useState(()=>({directory:"",exhausted:!1})),d=b.useRef(n);d.current=n;const i=!!t&&o.directory===t&&o.exhausted;return b.useEffect(()=>{if(!t||!e||r||s)return;const m=a.current.directory===t?a.current.attempts:0;if(m>=l){o.directory===t&&o.exhausted||u({directory:t,exhausted:!0});return}a.current={directory:t,attempts:m+1},d.current()},[t,o,r,e,s,l]),i},Re=(t,e)=>new Map((t??[]).map(s=>[s.path,s.revision??`status:${e}`])),ve=(t,e,s,r,n="",l)=>{const[a,o]=b.useState(()=>new Map),u=b.useRef(a);u.current=a;const d=b.useRef(new Map),i=b.useRef(null),m=b.useRef(new Map),f=b.useRef(s);f.current=s;const w=b.useCallback((p,x)=>{const S=new Map(u.current);if(x===null){if(!S.delete(p))return}else S.set(p,x);u.current=S,o(S)},[]);b.useEffect(()=>{i.current=t,d.current.clear(),u.current=new Map,o(u.current)},[t]);const c=(e?e.split("\0"):[]).map(p=>`${p}\0${l?.has(p)?`${n}|${l.get(p)}`:n}`).join("\0");return b.useEffect(()=>{const p=f.current;if(!t||!p||!c)return;const x=c.split("\0");let S=!1;const F=new Set,P=d.current;for(let q=0;q<x.length;q+=2){const h=x[q],T=x[q+1];u.current.has(h)&&P.get(h)===T||(F.add(h),u.current.has(h)||w(h,r),p(h).then(V=>{S||(F.delete(h),P.set(h,T),w(h,V))}).catch(()=>{S||(F.delete(h),P.delete(h),w(h,null))}))}return()=>{S=!0;for(const q of F)P.has(q)||w(q,null)}},[r,t,c,w]),i.current===t?a:m.current};function ie(t){if(!t.trim())return[];if(!t.startsWith("diff --git "))throw new Error("Invalid pull request diff");return t.split(/(?=^diff --git )/m).filter(Boolean).map(e=>{const s=H(e);if(!s)throw new Error("Invalid pull request file diff");return{path:s.name,previousPath:s.prevName,status:/^new file mode /m.test(e)?"A":/^deleted file mode /m.test(e)?"D":/^rename from /m.test(e)?"R":/^copy from /m.test(e)?"C":"M",insertions:s.hunks.reduce((r,n)=>r+n.additionLines,0),deletions:s.hunks.reduce((r,n)=>r+n.deletionLines,0),patch:e}})}async function O(t,e){const s=W({error:G()}).safeParse(await t.json().catch(()=>null));throw new Error(s.success?s.data.error:`${e} (${t.status})`)}async function oe(t,e,s){const r=await U("/api/walkthrough/pr-diff",{query:I(t,{source:e,context:s}),signal:AbortSignal.timeout(3e4)});if(r.ok||await O(r,"Failed to load pull request diff"),!r.headers.get("content-type")?.includes("text/plain"))throw new Error("Pull request comparison is unavailable on this server");return ie(await r.text())}const ue=W({original:G(),modified:G()});async function le(t,e,s,r){const n=await U("/api/walkthrough/pr-file",{query:{...I(t,{source:e,context:s}),path:r.path,previousPath:r.previousPath??"",status:r.status},signal:AbortSignal.timeout(3e4)});n.ok||await O(n,"Failed to load pull request file");const l=ue.safeParse(await n.json().catch(()=>null));if(!l.success)throw new Error("Pull request file contents are unavailable on this server");return l.data}class ce{entries=new Map;load(e,s,r,n=!1,l=""){const a=JSON.stringify([e,s,l]),o=this.entries.get(a);if(o&&(!n||o.files===null))return o.pending;const u={scope:e,pending:r(),files:null,bytes:0};return u.pending=u.pending.then(d=>{if(this.entries.get(a)!==u)return d;u.files=d,u.bytes=d.reduce((m,f)=>m+2*(f.patch.length+f.path.length),0);let i=[...this.entries.values()].reduce((m,f)=>m+f.bytes,0);for(const[m,f]of this.entries){if(this.entries.size<=8&&i<=32*1024*1024)break;f===u||f.files===null||(i-=f.bytes,this.entries.delete(m))}return d}).catch(d=>{throw this.entries.get(a)===u&&this.entries.delete(a),d}),this.entries.delete(a),this.entries.set(a,u),u.pending}invalidate(e){for(const[s,r]of this.entries)r.scope===e&&this.entries.delete(s)}}function xe(t,e,s=!0,r="",n=null,l=null){const{t:a}=K(),o=X(g=>g.runtimeKey),u=n?.provider??l,d=e?.kind==="pr"&&n?JSON.stringify(Y(n)):"",i=t&&e?JSON.stringify([o,t,e,d]):null,m=re(t??"",o),f=v.useRef({key:i,source:e,enabled:s,pushScope:m,readContext:n,authority:d});f.current={key:i,source:e,enabled:s,pushScope:m,readContext:n,authority:d};const[w,c]=v.useState(null),p=v.useRef(0),[x]=v.useState(()=>new ce),[S,F]=v.useState(0);v.useEffect(()=>ae(g=>{x.invalidate(g),!(g!==f.current.pushScope||f.current.source?.kind!=="pr")&&(p.current+=1,F(D=>D+1))}),[x]);const P=v.useCallback(async g=>{const{key:D,source:y,enabled:E,readContext:N,authority:C}=f.current;if(!s||!E||!i||D!==i||!t||!y)return;const B=++p.current,A=$();c(k=>k?.key===i&&k.status==="ready"?{...k,refreshing:!0}:{key:i,status:"loading"});try{let k;if(y.kind==="pr"){if(!N)throw new Error(a(Z("session.githubPrPicker.empty.notConnected",u)));k=await x.load(m,y,()=>oe(t,y,N),g,C)}else y.kind==="branch"?k=(await ee(t,{base:y.baseRef,head:y.headRef,includeWorkingTree:!0})).map(R=>({...R,insertions:0,deletions:0})):k=(await te(t,y.hash)).files.map(R=>({path:R.path,status:R.changeType,previousPath:R.previousPath,insertions:R.insertions,deletions:R.deletions}));if(p.current!==B||$()!==A)return;c(R=>R?.key===i&&R.status==="ready"&&R.files===k?{...R,refreshing:!1}:{key:i,status:"ready",files:k,revision:B,refreshing:!1})}catch(k){if(p.current!==B||$()!==A)return;c({key:i,status:"error",message:k instanceof Error?k.message:a("diffView.state.failedToLoadDiff")})}},[t,s,i,x,u,m,a]),q=v.useCallback(()=>P(!0),[P]);v.useEffect(()=>(P(!1),()=>{p.current+=1}),[P,r,S]);const h=w?.key===i?w:null,T=h?.status==="ready"?h.files:null,V=v.useMemo(()=>new Map((T??[]).map(g=>[g.path,g])),[T]),_=v.useCallback(async(g,D=3)=>{const{key:y,source:E,enabled:N}=f.current,C=V.get(g);if(!t||y!==i||!E||!C||!s||!N)throw new Error(a("diffView.state.failedToLoadDiff"));if(E.kind==="pr"){if(C.patch===void 0)throw new Error(a("diffView.state.failedToLoadDiff"));return{diff:C.patch}}return E.kind==="branch"?se(t,{base:E.baseRef,head:E.headRef,path:g,contextLines:D,includeWorkingTree:!0}):ne(t,{hash:E.hash,path:g,previousPath:C.previousPath,contextLines:D})},[t,s,V,i,a]),z=v.useCallback(async g=>{const{key:D,source:y,enabled:E,readContext:N}=f.current,C=V.get(g);if(!t||D!==i||y?.kind!=="pr"||!N||!C||!s||!E)throw new Error(a("diffView.state.failedToLoadDiff"));return le(t,y,N,{path:C.path,previousPath:C.previousPath,status:C.status})},[t,s,V,i,a]);return{key:i,revision:h?.status==="ready"?h.revision:0,files:T,loading:!!(s&&i&&(!h||h.status==="loading"||h.status==="ready"&&h.refreshing)),error:h?.status==="error"?h.message:null,refresh:q,fetchDiff:_,fetchFullFile:z}}const M=t=>t.slice(0,7),Ce=t=>{const e=L.c(32),{state:s,staged:r}=t,{t:n}=K(),l=r?s.headCommit:s.indexCommit,a=r?s.indexCommit:s.worktreeCommit;let o=null;if(s.hasConflict){let c;e[0]!==n?(c=n("diffView.submodule.conflict"),e[0]=n,e[1]=c):c=e[1],o=c}else if(l&&a){let c;e[2]!==l||e[3]!==n||e[4]!==a?(c=l===a?n("diffView.submodule.commitUnchanged",{commit:M(a)}):n("diffView.submodule.commitChanged",{from:M(l),to:M(a)}),e[2]=l,e[3]=n,e[4]=a,e[5]=c):c=e[5],o=c}else if(a){let c;e[6]!==n||e[7]!==a?(c=n("diffView.submodule.added",{commit:M(a)}),e[6]=n,e[7]=a,e[8]=c):c=e[8],o=c}else if(l){let c;e[9]!==l||e[10]!==r||e[11]!==n?(c=r?n("diffView.submodule.removed",{commit:M(l)}):n("diffView.submodule.notCheckedOut",{commit:M(l)}),e[9]=l,e[10]=r,e[11]=n,e[12]=c):c=e[12],o=c}let u;e[13]!==n?(u=n("diffView.submodule.title"),e[13]=n,e[14]=u):u=e[14];let d;e[15]!==u?(d=j.jsx("div",{className:"typography-ui-label font-semibold text-foreground",children:u}),e[15]=u,e[16]=d):d=e[16];let i;e[17]!==o?(i=o?j.jsx("div",{className:"typography-meta text-muted-foreground",children:o}):null,e[17]=o,e[18]=i):i=e[18];let m;e[19]!==r||e[20]!==s.hasTrackedChanges||e[21]!==n?(m=!r&&s.hasTrackedChanges?j.jsx("div",{className:"typography-meta text-muted-foreground",children:n("diffView.submodule.trackedChanges")}):null,e[19]=r,e[20]=s.hasTrackedChanges,e[21]=n,e[22]=m):m=e[22];let f;e[23]!==r||e[24]!==s.hasUntrackedFiles||e[25]!==n?(f=!r&&s.hasUntrackedFiles?j.jsx("div",{className:"typography-meta text-muted-foreground",children:n("diffView.submodule.untrackedFiles")}):null,e[23]=r,e[24]=s.hasUntrackedFiles,e[25]=n,e[26]=f):f=e[26];let w;return e[27]!==d||e[28]!==i||e[29]!==m||e[30]!==f?(w=j.jsxs("div",{className:"flex flex-col gap-1 rounded-lg border border-border/60 bg-background px-3 py-2",children:[d,i,m,f]}),e[27]=d,e[28]=i,e[29]=m,e[30]=f,e[31]=w):w=e[31],w};export{Ce as S,pe as W,ye as a,xe as b,Re as c,ve as d,be as e,we as i,ge as s,ke as u};
@@ -1,4 +1,4 @@
1
- import{R as N,f as he,j as n,c as We}from"./vendor-react-BUCujlKS.js";import{ag as Ce,ah as Me,ai as Ne,aj as Qe,k as et}from"./katex.min-u4DtE8E5.js";import{aG as tt,bM as it,bN as ot,u as Pe,bO as nt,bP as st,N as ge,bQ as rt,I as je,bR as at,bS as ke,bT as Ue,bU as lt,bV as ct,bW as mt,aW as qe,bX as ut,bY as dt,a9 as ft,aa as Oe,bZ as pt,q as ht,t as gt}from"./useAppFontEffects-d9vsRNKm.js";import{F as Be,J as xt}from"./JsonTreeView-BOQC0uTM.js";import{P as wt}from"./PatchDiff-Ca_Ci2CX.js";import{ensurePierreThemeRegistered as Ae}from"./appThemeRegistry-CnS_OWEL.js";import{u as yt}from"./vendor-tanstack-react-virtual-Bmi0tTrf.js";import{P as bt}from"./pierreDiffTint-IfgQ6oty.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"./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-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"./parseDiffFromFile-C9ASoy7R.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-diff-C3JhlQdm.js";import"./Virtualizer-BP6uuKe_.js";import"./isFilePlainText-BQGSJxcX.js";import"./vendor-strip-json-comments-5dJlOkP1.js";import"./isDiffPlainText-DMFSMXcK.js";import"./textMateThemeFromAppTheme-Bye_bpEL.js";import"./vendor-tanstack-virtual-core-CdGDGrnp.js";const vt=80,Fe=20,Ge=N.memo(i=>{const e=he.c(26),{lines:t,language:r,maxHeight:c,showLineNumbers:s,lineStyles:a}=i,l=c===void 0?"60vh":c,o=s===void 0?!0:s,{currentTheme:d}=tt();let u;e[0]!==d?(u=it(d),e[0]=d,e[1]=u):u=e[1];const x=u;let R;e[2]!==t?(R=t.map(jt).join(`
1
+ import{R as N,f as he,j as n,c as We}from"./vendor-react-BUCujlKS.js";import{ag as Ce,ah as Me,ai as Ne,aj as Qe,k as et}from"./katex.min-F4TD1ekM.js";import{aG as tt,bN as it,bO as ot,u as Pe,bP as nt,bQ as st,N as ge,bR as rt,I as je,bS as at,bT as ke,bU as Ue,bV as lt,bW as ct,bX as mt,aW as qe,bY as ut,bZ as dt,a9 as ft,aa as Oe,b_ as pt,q as ht,t as gt}from"./useAppFontEffects-Dm6zEvrf.js";import{F as Be,J as xt}from"./JsonTreeView-BpJU14WJ.js";import{P as wt}from"./PatchDiff-BWW_8bob.js";import{ensurePierreThemeRegistered as Ae}from"./appThemeRegistry-BWap7OfW.js";import{u as yt}from"./vendor-tanstack-react-virtual-Bmi0tTrf.js";import{P as bt}from"./pierreDiffTint-cyYFR1bm.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"./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-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-VzNDjH03.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"./parseDiffFromFile-BSmRvd3V.js";import"./computeVirtualFileMetrics-DDyA16hp.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-diff-C3JhlQdm.js";import"./Virtualizer-BP6uuKe_.js";import"./isFilePlainText-Dpm-_Qu8.js";import"./vendor-strip-json-comments-5dJlOkP1.js";import"./isDiffPlainText-yXcpftjI.js";import"./textMateThemeFromAppTheme-tYpAceV3.js";import"./vendor-tanstack-virtual-core-CdGDGrnp.js";const vt=80,Fe=20,Ge=N.memo(i=>{const e=he.c(26),{lines:t,language:r,maxHeight:c,showLineNumbers:s,lineStyles:a}=i,l=c===void 0?"60vh":c,o=s===void 0?!0:s,{currentTheme:d}=tt();let u;e[0]!==d?(u=it(d),e[0]=d,e[1]=u):u=e[1];const x=u;let R;e[2]!==t?(R=t.map(jt).join(`
2
2
  `),e[2]=t,e[3]=R):R=e[3];const M=ot(R,r),v=M.status==="loading"?M.carriedLines:M.lines;if(!(t.length>vt)){const T=x;let b;e[4]!==l||e[5]!==T?(b={...T,maxHeight:l,overflow:"auto"},e[4]=l,e[5]=T,e[6]=b):b=e[6];let w;if(e[7]!==v||e[8]!==a||e[9]!==t||e[10]!==o){let h;e[12]!==v||e[13]!==a||e[14]!==o?(h=(y,C)=>n.jsx(Ee,{line:y,html:v?.[C],showLineNumbers:o,style:a?.(y)},C),e[12]=v,e[13]=a,e[14]=o,e[15]=h):h=e[15],w=t.map(h),e[7]=v,e[8]=a,e[9]=t,e[10]=o,e[11]=w}else w=e[11];let f;return e[16]!==b||e[17]!==w?(f=n.jsx("div",{className:"oc-surface-code bg-[var(--syntax-background)] typography-code font-mono w-full min-w-0",style:b,children:w}),e[16]=b,e[17]=w,e[18]=f):f=e[18],f}let S;return e[19]!==v||e[20]!==a||e[21]!==t||e[22]!==l||e[23]!==o||e[24]!==x?(S=n.jsx(Je,{lines:t,highlighted:v,syntaxVars:x,maxHeight:l,showLineNumbers:o,lineStyles:a}),e[19]=v,e[20]=a,e[21]=t,e[22]=l,e[23]=o,e[24]=x,e[25]=S):S=e[25],S});Ge.displayName="VirtualizedCodeBlock";const Je=N.memo(({lines:i,highlighted:e,syntaxVars:t,maxHeight:r,showLineNumbers:c,lineStyles:s})=>{const a=N.useRef(null),l=`min(${i.length*Fe}px, ${r})`,o=yt({count:i.length,getScrollElement:()=>a.current,estimateSize:()=>Fe,overscan:20}),d=o.getVirtualItems();return n.jsx("div",{ref:a,className:"oc-surface-code bg-[var(--syntax-background)] typography-code font-mono w-full min-w-0",style:{...t,height:l,maxHeight:r,overflow:"auto"},children:n.jsx("div",{style:{height:o.getTotalSize(),position:"relative"},children:d.map(u=>{const x=i[u.index];return x?n.jsx("div",{"data-index":u.index,ref:o.measureElement,style:{position:"absolute",top:0,left:0,width:"100%",transform:`translateY(${u.start}px)`},children:n.jsx(Ee,{line:x,html:e?.[u.index],showLineNumbers:c,style:s?.(x)})},u.index):null})})})});Je.displayName="VirtualizedRows";const Ee=N.memo(i=>{const e=he.c(12),{line:t,html:r,showLineNumbers:c,style:s}=i;let a;e[0]!==t.isInfo||e[1]!==t.lineNumber||e[2]!==c?(a=c&&n.jsx("span",{className:"w-10 flex-shrink-0 text-end pe-3 select-none border-e me-3 -my-0.5 py-0.5",style:{color:"var(--syntax-line-number)",borderColor:"var(--interactive-border)"},children:!t.isInfo&&t.lineNumber!=null?t.lineNumber:""}),e[0]=t.isInfo,e[1]=t.lineNumber,e[2]=c,e[3]=a):a=e[3];let l;e[4]!==r||e[5]!==t.isInfo||e[6]!==t.text?(l=n.jsx("div",{className:"flex-1 min-w-0",children:t.isInfo?n.jsx("div",{className:"whitespace-pre-wrap break-words text-muted-foreground/70 italic",children:t.text}):r!==void 0?n.jsx("div",{className:"whitespace-pre",dangerouslySetInnerHTML:{__html:r}}):n.jsx("div",{className:"whitespace-pre",children:t.text})}),e[4]=r,e[5]=t.isInfo,e[6]=t.text,e[7]=l):l=e[7];let o;return e[8]!==s||e[9]!==a||e[10]!==l?(o=n.jsxs("div",{className:"typography-code font-mono flex w-full min-w-0",style:s,children:[a,l]}),e[8]=s,e[9]=a,e[10]=l,e[11]=o):o=e[11],o});Ee.displayName="VirtualizedCodeBlock.Row";function jt(i){return i.text}class Le extends Error{key;params;constructor(e,t){super(e),this.name="MermaidLoadFailure",this.key=e,this.params=t}}const Nt=(i,e)=>new Le(i,e),St=i=>i instanceof Le,Tt=i=>i+1,ze=(i,e)=>i===e,Rt=i=>{const e=i.indexOf(",");if(e<0)throw Nt("chat.toolOutputDialog.mermaid.dataUrlMalformed");const t=i.slice(0,e).toLowerCase(),r=i.slice(e+1);return t.includes(";base64")?atob(r):decodeURIComponent(r)},Dt=i=>Promise.resolve().then(()=>Rt(i)),De=(i,e)=>new Le(i,e),Ve=150,It=40,Mt=120,kt=3,_e={style:{background:"transparent",backgroundColor:"transparent",fontSize:"inherit"}},_t={download:!1,copy:!1,showPanZoomControls:!0},Pt=`
3
3
  ${bt}
4
4
  [data-diff-header],
@@ -1,4 +1,4 @@
1
- import{R as D,f as x,j as b}from"./vendor-react-BUCujlKS.js";import{P as v}from"./PatchDiff-Ca_Ci2CX.js";import{a9 as P,aa as S,ab as _}from"./useAppFontEffects-d9vsRNKm.js";import{ensurePierreThemeRegistered as k}from"./appThemeRegistry-CnS_OWEL.js";import{P as I}from"./pierreDiffTint-IfgQ6oty.js";import"./vendor-scheduler-7OC5HNn7.js";import"./parseDiffFromFile-C9ASoy7R.js";import"./computeVirtualFileMetrics-rZJ-MSfY.js";import"./vendor-vite-runtime-DD1OZmLC.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-diff-C3JhlQdm.js";import"./Virtualizer-BP6uuKe_.js";import"./isDiffPlainText-DMFSMXcK.js";import"./katex.min-u4DtE8E5.js";import"./vendor-zod-DDir2TeQ.js";import"./vendor-zustand-BAGL70zf.js";import"./vendor-opencode-client-h8RufjAw.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"./textMateThemeFromAppTheme-Bye_bpEL.js";const F=`
1
+ import{R as D,f as x,j as b}from"./vendor-react-BUCujlKS.js";import{P as v}from"./PatchDiff-BWW_8bob.js";import{a9 as P,aa as S,ab as _}from"./useAppFontEffects-Dm6zEvrf.js";import{ensurePierreThemeRegistered as k}from"./appThemeRegistry-BWap7OfW.js";import{P as I}from"./pierreDiffTint-cyYFR1bm.js";import"./vendor-scheduler-7OC5HNn7.js";import"./parseDiffFromFile-BSmRvd3V.js";import"./computeVirtualFileMetrics-DDyA16hp.js";import"./vendor-vite-runtime-DD1OZmLC.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-diff-C3JhlQdm.js";import"./Virtualizer-BP6uuKe_.js";import"./isDiffPlainText-yXcpftjI.js";import"./katex.min-F4TD1ekM.js";import"./vendor-zod-DDir2TeQ.js";import"./vendor-zustand-BAGL70zf.js";import"./vendor-opencode-client-h8RufjAw.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-VzNDjH03.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"./textMateThemeFromAppTheme-tYpAceV3.js";const F=`
2
2
  ${I}
3
3
  [data-diff-header],
4
4
  [data-diff] {
@@ -1 +1 @@
1
- import{f as U,R as Q,j as r}from"./vendor-react-BUCujlKS.js";import{u as W,x as je,c2 as Ne,a5 as we,N as _,I as ce,B as le,c3 as fe,c4 as ke,c5 as De,a1 as Ee,c6 as pe,c7 as Ie,c8 as $e,c9 as Te,ca as Re,cb as Fe,cc as Pe,W as Ae,X as Ce,V as Me}from"./useAppFontEffects-d9vsRNKm.js";import{t as ge,an as Le,a5 as me,a7 as Ue,u as ze}from"./katex.min-u4DtE8E5.js";import{c as Be}from"./vendor-zustand-BAGL70zf.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 Oe=["7d","30d","90d","all"],We={"7d":7,"30d":30,"90d":90},Ke=92;function Ye(s,e){if(s==="all")return;const t=new Date(e.getFullYear(),e.getMonth(),e.getDate());return t.setDate(t.getDate()-(We[s]-1)),t.getTime()}const re=s=>{const e=String(s.getMonth()+1).padStart(2,"0"),t=String(s.getDate()).padStart(2,"0");return`${s.getFullYear()}-${e}-${t}`};function Ge(s){const e=new Map(s.activity.map(m=>[m.date,m.steps])),t=new Date(s.range.from),a=new Date(t.getFullYear(),t.getMonth(),t.getDate()),l=new Date(s.range.to-1),o=re(l),n=[];for(;;){const m=re(a);if(n.push({start:m,end:m,steps:e.get(m)??0}),m>=o)break;a.setDate(a.getDate()+1)}if(n.length<=Ke)return{unit:"day",bars:n,max:Math.max(0,...n.map(m=>m.steps))};const i=[];for(let m=0;m<n.length;m+=7){const u=n.slice(m,m+7);i.push({start:u[0].start,end:u[u.length-1].end,steps:u.reduce((p,d)=>p+d.steps,0)})}return{unit:"week",bars:i,max:Math.max(0,...i.map(m=>m.steps))}}const Ve=s=>s.prompts===0&&s.steps===0,He=s=>{const e=s.input+s.cacheWrite+s.cacheRead;return e>0?s.cacheRead/e:null},ne=(s,e)=>e>0?s/e:null,Xe=s=>{const e=s.succeeded+s.failed;return e>0?s.succeeded/e:null},Ze=(s,e)=>e>0?s/e*1e6:null,qe=s=>{const e=s.output+s.reasoning;return e>0?s.reasoning/e:null},he=s=>[{key:"input",value:s.input},{key:"output",value:s.output+s.reasoning},{key:"cacheRead",value:s.cacheRead},{key:"cacheWrite",value:s.cacheWrite}],xe=s=>{const e=s.label?.trim();if(e)return e;const t=s.path.split(/[\\/]/).filter(Boolean);return t[t.length-1]??s.path},Je=(s,e)=>re(new Date(s))===re(new Date(e)),de=s=>({input:s.input,output:s.output,reasoning:s.reasoning,cacheRead:s.cache.read,cacheWrite:s.cache.write,total:s.input+s.output+s.reasoning+s.cache.read+s.cache.write}),ye=s=>{if(s.mode==="none")return{mode:"none"};const e={calls:s.totals.calls,succeeded:s.totals.succeeded,failed:s.totals.failed,unfinished:s.totals.unfinished};return s.mode==="summary"?{mode:"summary",totals:e}:{mode:"detail",totals:e,usage:s.usage.map(t=>({name:t.name,calls:t.calls,succeeded:t.succeeded,failed:t.failed,unfinished:t.unfinished,durationP50:t.durationP50??null}))}},Qe=s=>({range:{from:s.range.from,to:s.range.to},sessions:s.sessions,subagents:s.subagents,prompts:s.prompts,steps:s.steps,tokens:de(s.tokens),cost:s.cost,tools:ye(s.tools),activeDays:s.activeDays,streak:s.streak,activity:s.activity.map(e=>({date:e.date,steps:e.steps})),models:s.models.map(e=>({providerID:e.model.providerID,modelID:e.model.id,variant:e.model.variant??null,steps:e.steps,tokens:de(e.tokens),cost:e.cost}))}),ve=async(s,e,t)=>{try{return await ge.getSdkClient().session.stats({from:s.from,to:s.to,project:s.projectID,timezone:s.timezone,tools:e},{signal:t})}catch(a){throw Le("session.stats",a)}};async function _e(s,e){return Qe(await ve(s,"none",e))}async function et(s,e){return ye((await ve(s,"detail",e)).tools)}async function be(s){return(await ge.getCurrentProject(s)).id}const oe=(s,e)=>`${s}::${e.range}::${e.projectDirectory??"__all__"}`,Se=()=>Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC",tt=async({range:s,projectDirectory:e},t)=>{const a=e?await be(e):void 0;return t.throwIfAborted(),_e({from:Ye(s,new Date),projectID:a,timezone:Se()},t)},st=async({projectDirectory:s},e,t)=>{const a=s?await be(s):void 0;return t.throwIfAborted(),et({from:e.from,to:e.to,projectID:a,timezone:Se()},t)};function at(s,e,t=Date.now,a=st){let l=new AbortController;return Be()((o,n)=>{const i=(u,p)=>o(d=>{const f=d.entries[u]??{stats:null,fetchedAt:null,loading:!1,error:null};return{entries:{...d.entries,[u]:{...f,...p}}}}),m=(u,p)=>o(d=>{const f=d.toolEntries[u]??{tools:null,loading:!1,error:null};return{toolEntries:{...d.toolEntries,[u]:{...f,...p}}}});return{entries:{},toolEntries:{},toolsRequested:!1,load:async(u,p)=>{const d=oe(e(),u),f=n().entries[d];if(f?.loading||!p?.force&&(f?.stats||f?.error))return;const{signal:g}=l;i(d,{loading:!0});try{const x=await s(u,g);if(g.aborted)return;i(d,{stats:x,fetchedAt:t(),loading:!1,error:null}),n().toolsRequested&&n().loadTools(u,{force:!!n().toolEntries[d]?.tools})}catch(x){if(g.aborted)return;i(d,{loading:!1,error:x instanceof Error?x.message:String(x)})}},loadTools:async(u,p)=>{const d=oe(e(),u),f=n().entries[d]?.stats?.range;if(!f)return;o({toolsRequested:!0});const g=n().toolEntries[d];if(g?.loading||!p?.force&&(g?.tools||g?.error))return;const{signal:x}=l;m(d,{loading:!0});try{const y=await a(u,f,x);if(x.aborted)return;m(d,{tools:y,loading:!1,error:null})}catch(y){if(x.aborted)return;m(d,{loading:!1,error:y instanceof Error?y.message:String(y)})}},reset:()=>{l.abort(),l=new AbortController,o({entries:{},toolEntries:{}})}}})}const J=at(tt,me),lt=(s,e)=>s.toolEntries[oe(me(),e)],rt=(s,e)=>s.entries[oe(me(),e)];Ue(()=>J.getState().reset());const ie="__all__",ue={input:"bg-chart-1",output:"bg-chart-2",cacheRead:"bg-chart-3",cacheWrite:"bg-chart-4"},ot={input:"usageStats.tokens.input",output:"usageStats.tokens.output",cacheRead:"usageStats.tokens.cacheRead",cacheWrite:"usageStats.tokens.cacheWrite"},nt={"7d":"usageStats.range.7d","30d":"usageStats.range.30d","90d":"usageStats.range.90d",all:"usageStats.range.all"};function it(s,e){const t=U.c(33);let a;t[0]!==e||t[1]!==s?(a={range:s,projectDirectory:e},t[0]=e,t[1]=s,t[2]=a):a=t[2];const l=a;let o;t[3]!==l?(o=b=>rt(b,l),t[3]=l,t[4]=o):o=t[4];const n=J(o),i=J(mt);let m;t[5]!==i||t[6]!==l?(m=()=>{i(l)},t[5]=i,t[6]=l,t[7]=m):m=t[7];let u;t[8]!==n||t[9]!==i||t[10]!==l?(u=[i,l,n],t[8]=n,t[9]=i,t[10]=l,t[11]=u):u=t[11],Q.useEffect(m,u);let p;t[12]!==i||t[13]!==l?(p=()=>{i(l,{force:!0})},t[12]=i,t[13]=l,t[14]=p):p=t[14];const d=p;let f;t[15]!==l?(f=b=>lt(b,l),t[15]=l,t[16]=f):f=t[16];const g=J(f),x=J(ut),y=J(ct),v=!!n?.stats;let h,c;t[17]!==v||t[18]!==y||t[19]!==l||t[20]!==x?(h=()=>{x&&v&&y(l)},c=[v,y,l,x],t[17]=v,t[18]=y,t[19]=l,t[20]=x,t[21]=h,t[22]=c):(h=t[21],c=t[22]),Q.useEffect(h,c);let S;t[23]!==y||t[24]!==l?(S=()=>{y(l,{force:!0})},t[23]=y,t[24]=l,t[25]=S):S=t[25];const w=S;let j;t[26]!==w||t[27]!==g?(j={entry:g,load:w},t[26]=w,t[27]=g,t[28]=j):j=t[28];let N;return t[29]!==n||t[30]!==d||t[31]!==j?(N={entry:n,refresh:d,tools:j},t[29]=n,t[30]=d,t[31]=j,t[32]=N):N=t[32],N}function ct(s){return s.loadTools}function ut(s){return s.toolsRequested}function mt(s){return s.load}function aa(s){const e=U.c(79),{className:t}=s,{t:a}=W();let l;e[0]===Symbol.for("react.memo_cache_sentinel")?(l=je(),e[0]=l):l=e[0];const o=l,n=Ne(we(pt)),[i,m]=Q.useState("30d"),[u,p]=Q.useState(ie);let d;e[1]!==u||e[2]!==n?(d=n.find(ae=>ae.id===u)??null,e[1]=u,e[2]=n,e[3]=d):d=e[3];const f=d,{entry:g,refresh:x,tools:y}=it(i,f?.path??null),v=ze(ft),h=g?.stats??null,c=g?.loading??!0;let S;e[4]===Symbol.for("react.memo_cache_sentinel")?(S={integer:new Intl.NumberFormat(o),compact:new Intl.NumberFormat(o,{notation:"compact",maximumFractionDigits:1}),decimal:new Intl.NumberFormat(o,{maximumFractionDigits:1}),percent:new Intl.NumberFormat(o,{style:"percent",maximumFractionDigits:1}),cost:new Intl.NumberFormat(o,{style:"currency",currency:"USD",maximumFractionDigits:2}),day:new Intl.DateTimeFormat(o,{month:"short",day:"numeric",year:"numeric"}),milliseconds:new Intl.NumberFormat(o,{style:"unit",unit:"millisecond",unitDisplay:"short",maximumFractionDigits:0}),seconds:new Intl.NumberFormat(o,{style:"unit",unit:"second",unitDisplay:"short",maximumFractionDigits:1}),wholeSeconds:new Intl.NumberFormat(o,{style:"unit",unit:"second",unitDisplay:"short",maximumFractionDigits:0}),minutes:new Intl.NumberFormat(o,{style:"unit",unit:"minute",unitDisplay:"short",maximumFractionDigits:0})},e[4]=S):S=e[4];const w=S;let j;e[5]!==t?(j=_("h-full overflow-y-auto",t),e[5]=t,e[6]=j):j=e[6];let N;e[7]!==a?(N=a("usageStats.range.label"),e[7]=a,e[8]=N):N=e[8];let b;e[9]!==a?(b=Oe.map(ae=>({value:ae,label:a(nt[ae])})),e[9]=a,e[10]=b):b=e[10];let P;e[11]!==i||e[12]!==N||e[13]!==b?(P=r.jsx(pe,{value:i,onChange:m,"aria-label":N,options:b}),e[11]=i,e[12]=N,e[13]=b,e[14]=P):P=e[14];const $=f?f.id:ie;let C;e[15]!==a?(C=a("usageStats.scope.label"),e[15]=a,e[16]=C):C=e[16];let I;e[17]!==f||e[18]!==a?(I=r.jsx(Te,{children:()=>f?xe(f):a("usageStats.scope.all")}),e[17]=f,e[18]=a,e[19]=I):I=e[19];let T;e[20]!==I||e[21]!==C?(T=r.jsx(Re,{className:"w-fit min-w-[140px] max-w-64","aria-label":C,children:I}),e[20]=I,e[21]=C,e[22]=T):T=e[22];let D;e[23]!==a?(D=a("usageStats.scope.all"),e[23]=a,e[24]=D):D=e[24];let R;e[25]!==D?(R=r.jsx(fe,{value:ie,children:D}),e[25]=D,e[26]=R):R=e[26];let E;e[27]!==n?(E=n.map(dt),e[27]=n,e[28]=E):E=e[28];let F;e[29]!==R||e[30]!==E?(F=r.jsxs(Fe,{align:"start",children:[R,E]}),e[29]=R,e[30]=E,e[31]=F):F=e[31];let A;e[32]!==T||e[33]!==F||e[34]!==$?(A=r.jsxs(Pe,{value:$,onValueChange:p,children:[T,F]}),e[32]=T,e[33]=F,e[34]=$,e[35]=A):A=e[35];let k;e[36]!==g||e[37]!==h||e[38]!==a||e[39]!==v?(k=h&&g?.fetchedAt?r.jsx("span",{className:"truncate typography-micro text-muted-foreground",title:g.error??void 0,role:g.error?"status":void 0,children:a(g.error?"usageStats.refresh.failed":"usageStats.refresh.updated",{time:gt(g.fetchedAt,v)})}):null,e[36]=g,e[37]=h,e[38]=a,e[39]=v,e[40]=k):k=e[40];let L;e[41]!==a?(L=a("usageStats.refresh.action"),e[41]=a,e[42]=L):L=e[42];const z=c&&"animate-spin";let B;e[43]!==z?(B=_("size-4",z),e[43]=z,e[44]=B):B=e[44];let O;e[45]!==B?(O=r.jsx(ce,{name:"refresh",className:B}),e[45]=B,e[46]=O):O=e[46];let K;e[47]!==c||e[48]!==x||e[49]!==L||e[50]!==O?(K=r.jsx(Ae,{asChild:!0,children:r.jsx(le,{type:"button",variant:"ghost",size:"icon",className:"h-7 w-7 text-muted-foreground",onClick:x,disabled:c,"aria-label":L,children:O})}),e[47]=c,e[48]=x,e[49]=L,e[50]=O,e[51]=K):K=e[51];let Y;e[52]!==a?(Y=a("usageStats.refresh.action"),e[52]=a,e[53]=Y):Y=e[53];let G;e[54]!==Y?(G=r.jsx(Ce,{side:"bottom",sideOffset:4,children:Y}),e[54]=Y,e[55]=G):G=e[55];let V;e[56]!==K||e[57]!==G?(V=r.jsxs(Me,{children:[K,G]}),e[56]=K,e[57]=G,e[58]=V):V=e[58];let H;e[59]!==k||e[60]!==V?(H=r.jsxs("div",{className:"ms-auto flex min-w-0 items-center gap-1.5",children:[k,V]}),e[59]=k,e[60]=V,e[61]=H):H=e[61];let X;e[62]!==A||e[63]!==H||e[64]!==P?(X=r.jsxs("div",{className:"flex flex-wrap items-center gap-x-4 gap-y-2",children:[P,A,H]}),e[62]=A,e[63]=H,e[64]=P,e[65]=X):X=e[65];let Z;e[66]!==g?.error||e[67]!==c||e[68]!==x||e[69]!==h||e[70]!==a||e[71]!==y?(Z=h?Ve(h)?r.jsxs("div",{className:"flex flex-col items-center gap-1 py-16 text-center",children:[r.jsx("p",{className:"typography-ui-label font-semibold text-foreground",children:a("usageStats.empty.title")}),r.jsx("p",{className:"typography-micro text-muted-foreground",children:a("usageStats.empty.description")})]}):r.jsx(ht,{stats:h,formats:w,tools:y}):c?r.jsxs("div",{className:"flex items-center justify-center gap-2 py-16 text-muted-foreground",role:"status",children:[r.jsx(ce,{name:"loader-4",className:"size-4 animate-spin"}),r.jsx("span",{className:"typography-ui-label",children:a("usageStats.loading")})]}):r.jsxs("div",{className:"flex flex-col items-center gap-3 py-16 text-center",role:"alert",children:[r.jsx("p",{className:"typography-ui-label font-semibold text-foreground",children:a("usageStats.error.title")}),r.jsx("p",{className:"max-w-md break-words typography-micro text-muted-foreground",children:g?.error}),r.jsx(le,{type:"button",variant:"outline",size:"sm",onClick:x,children:a("usageStats.error.retry")})]}),e[66]=g?.error,e[67]=c,e[68]=x,e[69]=h,e[70]=a,e[71]=y,e[72]=Z):Z=e[72];let q;e[73]!==X||e[74]!==Z?(q=r.jsxs("div",{className:"mx-auto flex w-full max-w-4xl flex-col gap-5 px-4 py-4 sm:px-6",children:[X,Z]}),e[73]=X,e[74]=Z,e[75]=q):q=e[75];let se;return e[76]!==q||e[77]!==j?(se=r.jsx("div",{className:j,children:q}),e[76]=q,e[77]=j,e[78]=se):se=e[78],se}function dt(s){return r.jsx(fe,{value:s.id,children:r.jsx("span",{className:"truncate",title:s.path,children:xe(s)})},s.id)}function ft(s){return s.timeFormatPreference}function pt(s){return s.projects}function gt(s,e){return Je(s,Date.now())?ke(s,e):De(s,e,{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"})}function ht(s){const e=U.c(86),{stats:t,formats:a,tools:l}=s,{t:o}=W(),n=t.tokens.cacheRead+t.tokens.cacheWrite;let i;e[0]!==o?(i=o("usageStats.metric.sessions"),e[0]=o,e[1]=i):i=e[1];let m;e[2]!==a.integer||e[3]!==t.sessions?(m=a.integer.format(t.sessions),e[2]=a.integer,e[3]=t.sessions,e[4]=m):m=e[4];let u;e[5]!==a.integer||e[6]!==t.subagents||e[7]!==o?(u=o("usageStats.metric.subagents",{count:a.integer.format(t.subagents)}),e[5]=a.integer,e[6]=t.subagents,e[7]=o,e[8]=u):u=e[8];let p;e[9]!==i||e[10]!==m||e[11]!==u?(p=r.jsx(M,{label:i,value:m,hint:u}),e[9]=i,e[10]=m,e[11]=u,e[12]=p):p=e[12];let d;e[13]!==o?(d=o("usageStats.metric.prompts"),e[13]=o,e[14]=d):d=e[14];let f;e[15]!==a.integer||e[16]!==t.prompts?(f=a.integer.format(t.prompts),e[15]=a.integer,e[16]=t.prompts,e[17]=f):f=e[17];let g;e[18]!==d||e[19]!==f?(g=r.jsx(M,{label:d,value:f}),e[18]=d,e[19]=f,e[20]=g):g=e[20];let x;e[21]!==o?(x=o("usageStats.metric.tokens"),e[21]=o,e[22]=x):x=e[22];let y;e[23]!==a.compact||e[24]!==t.tokens.total?(y=a.compact.format(t.tokens.total),e[23]=a.compact,e[24]=t.tokens.total,e[25]=y):y=e[25];let v;e[26]!==n||e[27]!==a.compact||e[28]!==t.tokens.input||e[29]!==t.tokens.output||e[30]!==t.tokens.reasoning||e[31]!==o?(v=o("usageStats.metric.tokensBreakdown",{input:a.compact.format(t.tokens.input),output:a.compact.format(t.tokens.output+t.tokens.reasoning),cache:a.compact.format(n)}),e[26]=n,e[27]=a.compact,e[28]=t.tokens.input,e[29]=t.tokens.output,e[30]=t.tokens.reasoning,e[31]=o,e[32]=v):v=e[32];let h;e[33]!==v||e[34]!==x||e[35]!==y?(h=r.jsx(M,{label:x,value:y,hint:v}),e[33]=v,e[34]=x,e[35]=y,e[36]=h):h=e[36];let c;e[37]!==o?(c=o("usageStats.metric.cost"),e[37]=o,e[38]=c):c=e[38];let S;e[39]!==a.cost||e[40]!==t.cost?(S=a.cost.format(t.cost),e[39]=a.cost,e[40]=t.cost,e[41]=S):S=e[41];let w;e[42]!==c||e[43]!==S?(w=r.jsx(M,{label:c,value:S}),e[42]=c,e[43]=S,e[44]=w):w=e[44];let j;e[45]!==o?(j=o("usageStats.metric.activeDays"),e[45]=o,e[46]=j):j=e[46];let N;e[47]!==a.integer||e[48]!==t.activeDays?(N=a.integer.format(t.activeDays),e[47]=a.integer,e[48]=t.activeDays,e[49]=N):N=e[49];let b;e[50]!==j||e[51]!==N?(b=r.jsx(M,{label:j,value:N}),e[50]=j,e[51]=N,e[52]=b):b=e[52];let P;e[53]!==o?(P=o("usageStats.metric.streak"),e[53]=o,e[54]=P):P=e[54];let $;e[55]!==a.integer||e[56]!==t.streak?($=a.integer.format(t.streak),e[55]=a.integer,e[56]=t.streak,e[57]=$):$=e[57];let C;e[58]!==P||e[59]!==$?(C=r.jsx(M,{label:P,value:$}),e[58]=P,e[59]=$,e[60]=C):C=e[60];let I;e[61]!==h||e[62]!==w||e[63]!==b||e[64]!==C||e[65]!==p||e[66]!==g?(I=r.jsxs("div",{className:"grid grid-cols-2 gap-2 sm:grid-cols-3",children:[p,g,h,w,b,C]}),e[61]=h,e[62]=w,e[63]=b,e[64]=C,e[65]=p,e[66]=g,e[67]=I):I=e[67];let T,D,R;e[68]!==a||e[69]!==t?(T=r.jsx(xt,{stats:t,formats:a}),D=r.jsx(yt,{stats:t,formats:a}),R=r.jsx(bt,{stats:t,formats:a}),e[68]=a,e[69]=t,e[70]=T,e[71]=D,e[72]=R):(T=e[70],D=e[71],R=e[72]);let E;e[73]!==a||e[74]!==t.models?(E=r.jsx(Dt,{models:t.models,formats:a}),e[73]=a,e[74]=t.models,e[75]=E):E=e[75];let F;e[76]!==a||e[77]!==l?(F=r.jsx(jt,{state:l,formats:a}),e[76]=a,e[77]=l,e[78]=F):F=e[78];let A;return e[79]!==I||e[80]!==T||e[81]!==D||e[82]!==R||e[83]!==E||e[84]!==F?(A=r.jsxs(r.Fragment,{children:[I,T,D,R,E,F]}),e[79]=I,e[80]=T,e[81]=D,e[82]=R,e[83]=E,e[84]=F,e[85]=A):A=e[85],A}function M(s){const e=U.c(10),{label:t,value:a,hint:l}=s;let o;e[0]!==t?(o=r.jsx("span",{className:"truncate typography-micro text-muted-foreground",children:t}),e[0]=t,e[1]=o):o=e[1];let n;e[2]!==a?(n=r.jsx("span",{className:"truncate text-xl font-semibold tabular-nums text-foreground",children:a}),e[2]=a,e[3]=n):n=e[3];let i;e[4]!==l?(i=l?r.jsx("span",{className:"truncate typography-micro text-muted-foreground/80",title:l,children:l}):null,e[4]=l,e[5]=i):i=e[5];let m;return e[6]!==o||e[7]!==n||e[8]!==i?(m=r.jsxs("div",{className:"flex min-w-0 flex-col gap-0.5 rounded-lg border border-border/60 bg-[var(--surface-elevated)] px-3 py-2.5",children:[o,n,i]}),e[6]=o,e[7]=n,e[8]=i,e[9]=m):m=e[9],m}function ee(s){const e=U.c(11),{title:t,caption:a,actions:l,children:o}=s;let n;e[0]!==t?(n=r.jsx("h2",{className:"typography-ui-label font-semibold text-foreground",children:t}),e[0]=t,e[1]=n):n=e[1];let i;e[2]!==l||e[3]!==a?(i=l??(a?r.jsx("span",{className:"truncate typography-micro text-muted-foreground",children:a}):null),e[2]=l,e[3]=a,e[4]=i):i=e[4];let m;e[5]!==n||e[6]!==i?(m=r.jsxs("div",{className:"flex flex-wrap items-baseline justify-between gap-x-2 gap-y-1",children:[n,i]}),e[5]=n,e[6]=i,e[7]=m):m=e[7];let u;return e[8]!==o||e[9]!==m?(u=r.jsxs("section",{className:"flex min-w-0 flex-col gap-2",children:[m,o]}),e[8]=o,e[9]=m,e[10]=u):u=e[10],u}const te=s=>{const[e,t,a]=s.split("-").map(Number);return new Date(e,t-1,a)};function xt(s){const e=U.c(52),{stats:t,formats:a}=s,{t:l}=W();let o;e[0]!==t?(o=Ge(t),e[0]=t,e[1]=o):o=e[1];const n=o,[i,m]=Q.useState(null),u=n.unit==="week",p=u?"usageStats.activity.titleWeekly":"usageStats.activity.titleDaily";let d;e[2]!==l||e[3]!==p?(d=l(p),e[2]=l,e[3]=p,e[4]=d):d=e[4];const f=d;let g;e[5]!==a.day?(g=k=>k.start===k.end?a.day.format(te(k.start)):`${a.day.format(te(k.start))} – ${a.day.format(te(k.end))}`,e[5]=a.day,e[6]=g):g=e[6];const x=g;let y;e[7]!==a.integer||e[8]!==x||e[9]!==l?(y=k=>l("usageStats.activity.barLabel",{date:x(k),count:a.integer.format(k.steps)}),e[7]=a.integer,e[8]=x,e[9]=l,e[10]=y):y=e[10];const v=y,h=n.bars.length,c=i!==null&&i<h?n.bars[i]:null,S=n.bars[0],w=n.bars[h-1];let j;e[11]!==i||e[12]!==h?(j=k=>{if(h===0)return;const L=i??h-1,z=k.key==="ArrowLeft"?Math.max(0,L-1):k.key==="ArrowRight"?Math.min(h-1,L+1):k.key==="Home"?0:k.key==="End"?h-1:null;z!==null&&(k.preventDefault(),m(z))},e[11]=i,e[12]=h,e[13]=j):j=e[13];const N=j,b=u?"usageStats.activity.captionWeekly":"usageStats.activity.captionDaily";let P;e[14]!==l||e[15]!==b?(P=l(b),e[14]=l,e[15]=b,e[16]=P):P=e[16];let $;e[17]!==h?($=()=>m(k=>k??(h>0?h-1:null)),e[17]=h,e[18]=$):$=e[18];let C,I;e[19]===Symbol.for("react.memo_cache_sentinel")?(C=()=>m(null),I=()=>m(null),e[19]=C,e[20]=I):(C=e[19],I=e[20]);let T;if(e[21]!==i||e[22]!==c||e[23]!==n.bars||e[24]!==n.max){let k;e[26]!==i||e[27]!==c||e[28]!==n.max?(k=(L,z)=>{const B=n.max>0?Math.max(L.steps>0?4:0,L.steps/n.max*100):0,O=c!==null&&z!==i;return r.jsx("div",{className:"flex h-full min-w-0 flex-1 items-end",onPointerEnter:()=>m(z),children:r.jsx("div",{className:_("w-full rounded-t-[2px] transition-opacity duration-100",L.steps>0?"bg-chart-1":"bg-border/60",O&&"opacity-40"),style:{height:L.steps>0?`${B}%`:"1px"}})},L.start)},e[26]=i,e[27]=c,e[28]=n.max,e[29]=k):k=e[29],T=n.bars.map(k),e[21]=i,e[22]=c,e[23]=n.bars,e[24]=n.max,e[25]=T}else T=e[25];let D;e[30]!==i||e[31]!==c||e[32]!==h||e[33]!==v?(D=c&&i!==null?r.jsx("div",{className:"oc-glass-tooltip pointer-events-none absolute bottom-full z-10 mb-1.5 w-max max-w-56 rounded-xl border border-border/60 px-3 py-1.5 typography-meta text-[var(--surface-elevated-foreground)]",style:{left:`${(i+.5)/h*100}%`,transform:`translateX(${i<h/3?"-15%":i>h*2/3?"-85%":"-50%"})`},"aria-live":"polite",children:v(c)}):null,e[30]=i,e[31]=c,e[32]=h,e[33]=v,e[34]=D):D=e[34];let R;e[35]!==N||e[36]!==T||e[37]!==D||e[38]!==$||e[39]!==f?(R=r.jsxs("div",{className:"relative flex h-32 items-end gap-px rounded-sm outline-none focus-visible:ring-2 focus-visible:ring-[var(--interactive-focus-ring)]",role:"group",tabIndex:0,"aria-label":f,onKeyDown:N,onFocus:$,onBlur:C,onPointerLeave:I,children:[T,D]}),e[35]=N,e[36]=T,e[37]=D,e[38]=$,e[39]=f,e[40]=R):R=e[40];let E;e[41]!==S||e[42]!==a.day||e[43]!==w?(E=S&&w?r.jsxs("div",{className:"mt-1.5 flex justify-between gap-2 typography-micro text-muted-foreground",children:[r.jsx("span",{children:a.day.format(te(S.start))}),r.jsx("span",{children:a.day.format(te(w.end))})]}):null,e[41]=S,e[42]=a.day,e[43]=w,e[44]=E):E=e[44];let F;e[45]!==R||e[46]!==E?(F=r.jsxs("div",{dir:"ltr",className:"rounded-lg border border-border/60 bg-[var(--surface-elevated)] px-3 pb-2 pt-3",children:[R,E]}),e[45]=R,e[46]=E,e[47]=F):F=e[47];let A;return e[48]!==F||e[49]!==P||e[50]!==f?(A=r.jsx(ee,{title:f,caption:P,children:F}),e[48]=F,e[49]=P,e[50]=f,e[51]=A):A=e[51],A}function yt(s){const e=U.c(29),{stats:t,formats:a}=s,{t:l}=W();let o,n,i,m,u,p,d;if(e[0]!==a||e[1]!==t.tokens||e[2]!==l){d=Symbol.for("react.early_return_sentinel");e:{const y=he(t.tokens);if(t.tokens.total<=0){d=null;break e}o=ee,e[10]!==l?(p=l("usageStats.tokens.title"),e[10]=l,e[11]=p):p=e[11],m="flex flex-col gap-2.5 rounded-lg border border-border/60 bg-[var(--surface-elevated)] px-3 py-3";let v;e[12]!==t.tokens.total?(v=c=>r.jsx("div",{className:_("h-full",ue[c.key]),style:{width:`${c.value/t.tokens.total*100}%`}},c.key),e[12]=t.tokens.total,e[13]=v):v=e[13],u=r.jsx("div",{className:"flex h-2.5 w-full overflow-hidden rounded-full","aria-hidden":"true",children:y.filter(vt).map(v)}),n="grid grid-cols-2 gap-x-4 gap-y-1 sm:grid-cols-4";let h;e[14]!==a||e[15]!==t.tokens.total||e[16]!==l?(h=c=>r.jsxs("div",{className:"flex min-w-0 items-center gap-1.5",children:[r.jsx("span",{className:_("size-2 shrink-0 rounded-full",ue[c.key]),"aria-hidden":"true"}),r.jsx("span",{className:"min-w-0 truncate typography-micro text-muted-foreground",children:l(ot[c.key])}),r.jsx("span",{className:"ms-auto shrink-0 typography-micro tabular-nums text-foreground",children:l("usageStats.tokens.legendValue",{value:a.compact.format(c.value),share:a.percent.format(c.value/t.tokens.total)})})]},c.key),e[14]=a,e[15]=t.tokens.total,e[16]=l,e[17]=h):h=e[17],i=y.map(h)}e[0]=a,e[1]=t.tokens,e[2]=l,e[3]=o,e[4]=n,e[5]=i,e[6]=m,e[7]=u,e[8]=p,e[9]=d}else o=e[3],n=e[4],i=e[5],m=e[6],u=e[7],p=e[8],d=e[9];if(d!==Symbol.for("react.early_return_sentinel"))return d;let f;e[18]!==n||e[19]!==i?(f=r.jsx("div",{className:n,children:i}),e[18]=n,e[19]=i,e[20]=f):f=e[20];let g;e[21]!==m||e[22]!==u||e[23]!==f?(g=r.jsxs("div",{className:m,children:[u,f]}),e[21]=m,e[22]=u,e[23]=f,e[24]=g):g=e[24];let x;return e[25]!==o||e[26]!==p||e[27]!==g?(x=r.jsx(o,{title:p,children:g}),e[25]=o,e[26]=p,e[27]=g,e[28]=x):x=e[28],x}function vt(s){return s.value>0}function bt(s){const e=U.c(62),{stats:t,formats:a}=s,{t:l}=W();let o,n,i,m,u,p,d,f,g,x,y;if(e[0]!==a||e[1]!==t.cost||e[2]!==t.sessions||e[3]!==t.steps||e[4]!==t.tokens||e[5]!==l){const S=He(t.tokens),w=ne(t.cost,t.sessions),j=Ze(t.cost,t.tokens.total),N=ne(t.tokens.total,t.sessions),b=ne(t.steps,t.sessions),P=qe(t.tokens);n=ee,e[17]!==l?(y=l("usageStats.efficiency.title"),e[17]=l,e[18]=y):y=e[18],u="grid grid-cols-2 gap-2 sm:grid-cols-3";let $;e[19]!==l?($=l("usageStats.efficiency.cacheHitRate"),e[19]=l,e[20]=$):$=e[20];const C=S===null?"—":a.percent.format(S);e[21]!==$||e[22]!==C?(p=r.jsx(M,{label:$,value:C}),e[21]=$,e[22]=C,e[23]=p):p=e[23];let I;e[24]!==l?(I=l("usageStats.efficiency.costPerSession"),e[24]=l,e[25]=I):I=e[25];const T=w===null?"—":a.cost.format(w);e[26]!==I||e[27]!==T?(d=r.jsx(M,{label:I,value:T}),e[26]=I,e[27]=T,e[28]=d):d=e[28];let D;e[29]!==l?(D=l("usageStats.efficiency.costPerMillion"),e[29]=l,e[30]=D):D=e[30];const R=j===null?"—":a.cost.format(j);e[31]!==D||e[32]!==R?(f=r.jsx(M,{label:D,value:R}),e[31]=D,e[32]=R,e[33]=f):f=e[33];let E;e[34]!==l?(E=l("usageStats.efficiency.tokensPerSession"),e[34]=l,e[35]=E):E=e[35];const F=N===null?"—":a.compact.format(N);e[36]!==E||e[37]!==F?(g=r.jsx(M,{label:E,value:F}),e[36]=E,e[37]=F,e[38]=g):g=e[38];let A;e[39]!==l?(A=l("usageStats.efficiency.stepsPerSession"),e[39]=l,e[40]=A):A=e[40];const k=b===null?"—":a.decimal.format(b);e[41]!==A||e[42]!==k?(x=r.jsx(M,{label:A,value:k}),e[41]=A,e[42]=k,e[43]=x):x=e[43],o=M,e[44]!==l?(i=l("usageStats.efficiency.reasoningShare"),e[44]=l,e[45]=i):i=e[45],m=P===null?"—":a.percent.format(P),e[0]=a,e[1]=t.cost,e[2]=t.sessions,e[3]=t.steps,e[4]=t.tokens,e[5]=l,e[6]=o,e[7]=n,e[8]=i,e[9]=m,e[10]=u,e[11]=p,e[12]=d,e[13]=f,e[14]=g,e[15]=x,e[16]=y}else o=e[6],n=e[7],i=e[8],m=e[9],u=e[10],p=e[11],d=e[12],f=e[13],g=e[14],x=e[15],y=e[16];let v;e[46]!==o||e[47]!==i||e[48]!==m?(v=r.jsx(o,{label:i,value:m}),e[46]=o,e[47]=i,e[48]=m,e[49]=v):v=e[49];let h;e[50]!==v||e[51]!==u||e[52]!==p||e[53]!==d||e[54]!==f||e[55]!==g||e[56]!==x?(h=r.jsxs("div",{className:u,children:[p,d,f,g,x,v]}),e[50]=v,e[51]=u,e[52]=p,e[53]=d,e[54]=f,e[55]=g,e[56]=x,e[57]=h):h=e[57];let c;return e[58]!==n||e[59]!==h||e[60]!==y?(c=r.jsx(n,{title:y,children:h}),e[58]=n,e[59]=h,e[60]=y,e[61]=c):c=e[61],c}function St(s,e){if(s<1e3)return e.milliseconds.format(Math.round(s));const t=s/1e3;return t<60?e.seconds.format(t):`${e.minutes.format(Math.floor(t/60))} ${e.wholeSeconds.format(Math.round(t%60))}`}function jt(s){const e=U.c(55),{state:t,formats:a}=s,{t:l}=W(),o=t.entry?.tools??null;if(!o||o.mode==="none"){const i=t.entry?.loading??!1,m=t.entry?.error??null;let u;e[0]!==l?(u=l("usageStats.tools.title"),e[0]=l,e[1]=u):u=e[1];let p;e[2]!==l?(p=l("usageStats.tools.caption"),e[2]=l,e[3]=p):p=e[3];let d;e[4]!==m||e[5]!==i||e[6]!==t.load||e[7]!==l?(d=m&&!i?r.jsxs("div",{className:"flex flex-col items-start gap-2",role:"alert",children:[r.jsx("p",{className:"typography-micro text-foreground",children:l("usageStats.tools.loadFailed")}),r.jsx("p",{className:"max-w-md break-words typography-micro text-muted-foreground",children:m}),r.jsx(le,{type:"button",variant:"outline",size:"sm",onClick:t.load,children:l("usageStats.error.retry")})]}):r.jsx("div",{children:r.jsxs(le,{type:"button",variant:"outline",size:"sm",onClick:t.load,disabled:i,"aria-busy":i,children:[i?r.jsx(ce,{name:"loader-4",className:"size-4 animate-spin"}):null,l("usageStats.tools.load")]})}),e[4]=m,e[5]=i,e[6]=t.load,e[7]=l,e[8]=d):d=e[8];let f;return e[9]!==u||e[10]!==p||e[11]!==d?(f=r.jsx(ee,{title:u,caption:p,children:d}),e[9]=u,e[10]=p,e[11]=d,e[12]=f):f=e[12],f}let n;if(e[13]!==a||e[14]!==l||e[15]!==o.mode||e[16]!==o.totals||e[17]!==o.usage){const i=Xe(o.totals),m=o.mode==="detail"?o.usage.filter(Nt).slice(0,8):[];let u;e[19]!==l?(u=l("usageStats.tools.title"),e[19]=l,e[20]=u):u=e[20];let p;e[21]!==l?(p=l("usageStats.tools.calls"),e[21]=l,e[22]=p):p=e[22];let d;e[23]!==a.integer||e[24]!==o.totals.calls?(d=a.integer.format(o.totals.calls),e[23]=a.integer,e[24]=o.totals.calls,e[25]=d):d=e[25];let f;e[26]!==p||e[27]!==d?(f=r.jsx(M,{label:p,value:d}),e[26]=p,e[27]=d,e[28]=f):f=e[28];let g;e[29]!==l?(g=l("usageStats.tools.successRate"),e[29]=l,e[30]=g):g=e[30];const x=i===null?"—":a.percent.format(i);let y;e[31]!==g||e[32]!==x?(y=r.jsx(M,{label:g,value:x}),e[31]=g,e[32]=x,e[33]=y):y=e[33];let v;e[34]!==l?(v=l("usageStats.tools.failed"),e[34]=l,e[35]=v):v=e[35];let h;e[36]!==a.integer||e[37]!==o.totals.failed?(h=a.integer.format(o.totals.failed),e[36]=a.integer,e[37]=o.totals.failed,e[38]=h):h=e[38];let c;e[39]!==h||e[40]!==v?(c=r.jsx(M,{label:v,value:h}),e[39]=h,e[40]=v,e[41]=c):c=e[41];let S;e[42]!==l?(S=l("usageStats.tools.unfinished"),e[42]=l,e[43]=S):S=e[43];let w;e[44]!==a.integer||e[45]!==o.totals.unfinished?(w=a.integer.format(o.totals.unfinished),e[44]=a.integer,e[45]=o.totals.unfinished,e[46]=w):w=e[46];let j;e[47]!==S||e[48]!==w?(j=r.jsx(M,{label:S,value:w}),e[47]=S,e[48]=w,e[49]=j):j=e[49];let N;e[50]!==c||e[51]!==j||e[52]!==f||e[53]!==y?(N=r.jsxs("div",{className:"grid grid-cols-2 gap-2 sm:grid-cols-4",children:[f,y,c,j]}),e[50]=c,e[51]=j,e[52]=f,e[53]=y,e[54]=N):N=e[54],n=r.jsxs(ee,{title:u,children:[N,m.length>0?r.jsx("ul",{className:"flex flex-col gap-2.5 rounded-lg border border-border/60 bg-[var(--surface-elevated)] px-3 py-3",children:m.map(b=>r.jsxs("li",{className:"flex min-w-0 flex-col gap-1",children:[r.jsxs("div",{className:"flex min-w-0 items-baseline gap-2",children:[r.jsx("span",{className:"min-w-0 flex-1 truncate font-mono typography-micro text-foreground",title:b.name,children:b.name}),r.jsx("span",{className:"shrink-0 typography-micro tabular-nums text-muted-foreground",children:b.durationP50!==null?l("usageStats.tools.rowStats",{count:a.integer.format(b.calls),duration:St(b.durationP50,a)}):l("usageStats.tools.rowStatsNoDuration",{count:a.integer.format(b.calls)})})]}),r.jsxs("div",{className:"flex h-1.5 w-full overflow-hidden rounded-full bg-border/50","aria-hidden":"true",children:[b.succeeded>0?r.jsx("div",{className:"h-full bg-status-success",style:{width:`${b.succeeded/b.calls*100}%`}}):null,b.failed>0?r.jsx("div",{className:"h-full bg-status-error",style:{width:`${b.failed/b.calls*100}%`}}):null]})]},b.name))}):null]}),e[13]=a,e[14]=l,e[15]=o.mode,e[16]=o.totals,e[17]=o.usage,e[18]=n}else n=e[18];return n}function Nt(s){return s.calls>0}const wt=["tokens","cost","steps"],kt={tokens:"usageStats.models.byTokens",cost:"usageStats.models.byCost",steps:"usageStats.models.bySteps"};function Dt(s){const e=U.c(28),{models:t,formats:a}=s,{t:l}=W(),o=Ee(It),[n,i]=Q.useState("tokens");let m;e[0]!==n?(m=c=>n==="tokens"?c.tokens.total:n==="cost"?c.cost:c.steps,e[0]=n,e[1]=m):m=e[1];const u=m;let p;if(e[2]!==t||e[3]!==u){let c;e[5]!==u?(c=(S,w)=>u(w)-u(S),e[5]=u,e[6]=c):c=e[6],p=[...t].sort(c),e[2]=t,e[3]=u,e[4]=p}else p=e[4];const d=p;let f;e[7]!==u?(f=(c,S)=>Math.max(c,u(S)),e[7]=u,e[8]=f):f=e[8];const g=d.reduce(f,0);let x;e[9]!==l?(x=l("usageStats.models.title"),e[9]=l,e[10]=x):x=e[10];let y;e[11]!==n||e[12]!==t.length||e[13]!==l?(y=t.length>0?r.jsx(pe,{value:n,onChange:i,"aria-label":l("usageStats.models.compareBy"),options:wt.map(c=>({value:c,label:l(kt[c])}))}):void 0,e[11]=n,e[12]=t.length,e[13]=l,e[14]=y):y=e[14];let v;e[15]!==n||e[16]!==a||e[17]!==g||e[18]!==t.length||e[19]!==o||e[20]!==d||e[21]!==l||e[22]!==u?(v=t.length===0?r.jsx("p",{className:"typography-micro text-muted-foreground",children:l("usageStats.models.empty")}):r.jsx("ul",{className:"flex flex-col gap-3",children:d.map(c=>{const S=o.find(b=>b.id===c.providerID),w=S?.name||c.providerID,j=Ie(S,c.modelID)||c.modelID,N=g>0?u(c)/g*100:0;return r.jsxs("li",{className:"flex min-w-0 flex-col gap-1",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[r.jsx($e,{providerId:c.providerID,alt:w,className:"size-4 shrink-0"}),r.jsxs("span",{className:"flex min-w-0 flex-1 items-baseline gap-1.5 truncate",title:`${w} · ${c.providerID}/${c.modelID}`,children:[r.jsx("span",{className:"truncate typography-ui-label text-foreground",children:j}),c.variant?r.jsx("span",{className:"shrink-0 typography-micro text-muted-foreground",children:c.variant}):null,r.jsx("span",{className:"hidden shrink-0 typography-micro text-muted-foreground/80 sm:inline",children:w})]}),r.jsx("span",{className:"shrink-0 typography-micro tabular-nums text-muted-foreground",children:n==="steps"?`${a.integer.format(c.steps)} · ${a.cost.format(c.cost)}`:`${a.compact.format(c.tokens.total)} · ${a.cost.format(c.cost)}`})]}),r.jsx("div",{className:"flex h-1.5 w-full overflow-hidden rounded-full bg-border/50","aria-hidden":"true",children:n==="tokens"?r.jsx("div",{className:"flex h-full",style:{width:`${N}%`},children:he(c.tokens).filter(Et).map(b=>r.jsx("div",{className:_("h-full",ue[b.key]),style:{width:`${b.value/c.tokens.total*100}%`}},b.key))}):N>0?r.jsx("div",{className:"h-full bg-chart-1",style:{width:`${N}%`}}):null})]},`${c.providerID}/${c.modelID}#${c.variant??""}`)})}),e[15]=n,e[16]=a,e[17]=g,e[18]=t.length,e[19]=o,e[20]=d,e[21]=l,e[22]=u,e[23]=v):v=e[23];let h;return e[24]!==x||e[25]!==y||e[26]!==v?(h=r.jsx(ee,{title:x,actions:y,children:v}),e[24]=x,e[25]=y,e[26]=v,e[27]=h):h=e[27],h}function Et(s){return s.value>0}function It(s){return s.providers}export{aa as UsageStatsView};
1
+ import{f as U,R as Q,j as r}from"./vendor-react-BUCujlKS.js";import{u as W,x as je,c3 as Ne,a5 as we,N as _,I as ce,B as le,c4 as fe,c5 as ke,c6 as De,a1 as Ee,c7 as pe,c8 as Ie,c9 as $e,ca as Te,cb as Re,cc as Fe,cd as Pe,W as Ae,X as Ce,V as Me}from"./useAppFontEffects-Dm6zEvrf.js";import{t as ge,an as Le,a5 as me,a7 as Ue,u as ze}from"./katex.min-F4TD1ekM.js";import{c as Be}from"./vendor-zustand-BAGL70zf.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-VzNDjH03.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 Oe=["7d","30d","90d","all"],We={"7d":7,"30d":30,"90d":90},Ke=92;function Ye(s,e){if(s==="all")return;const t=new Date(e.getFullYear(),e.getMonth(),e.getDate());return t.setDate(t.getDate()-(We[s]-1)),t.getTime()}const re=s=>{const e=String(s.getMonth()+1).padStart(2,"0"),t=String(s.getDate()).padStart(2,"0");return`${s.getFullYear()}-${e}-${t}`};function Ge(s){const e=new Map(s.activity.map(m=>[m.date,m.steps])),t=new Date(s.range.from),a=new Date(t.getFullYear(),t.getMonth(),t.getDate()),l=new Date(s.range.to-1),o=re(l),n=[];for(;;){const m=re(a);if(n.push({start:m,end:m,steps:e.get(m)??0}),m>=o)break;a.setDate(a.getDate()+1)}if(n.length<=Ke)return{unit:"day",bars:n,max:Math.max(0,...n.map(m=>m.steps))};const i=[];for(let m=0;m<n.length;m+=7){const u=n.slice(m,m+7);i.push({start:u[0].start,end:u[u.length-1].end,steps:u.reduce((p,d)=>p+d.steps,0)})}return{unit:"week",bars:i,max:Math.max(0,...i.map(m=>m.steps))}}const Ve=s=>s.prompts===0&&s.steps===0,He=s=>{const e=s.input+s.cacheWrite+s.cacheRead;return e>0?s.cacheRead/e:null},ne=(s,e)=>e>0?s/e:null,Xe=s=>{const e=s.succeeded+s.failed;return e>0?s.succeeded/e:null},Ze=(s,e)=>e>0?s/e*1e6:null,qe=s=>{const e=s.output+s.reasoning;return e>0?s.reasoning/e:null},he=s=>[{key:"input",value:s.input},{key:"output",value:s.output+s.reasoning},{key:"cacheRead",value:s.cacheRead},{key:"cacheWrite",value:s.cacheWrite}],xe=s=>{const e=s.label?.trim();if(e)return e;const t=s.path.split(/[\\/]/).filter(Boolean);return t[t.length-1]??s.path},Je=(s,e)=>re(new Date(s))===re(new Date(e)),de=s=>({input:s.input,output:s.output,reasoning:s.reasoning,cacheRead:s.cache.read,cacheWrite:s.cache.write,total:s.input+s.output+s.reasoning+s.cache.read+s.cache.write}),ye=s=>{if(s.mode==="none")return{mode:"none"};const e={calls:s.totals.calls,succeeded:s.totals.succeeded,failed:s.totals.failed,unfinished:s.totals.unfinished};return s.mode==="summary"?{mode:"summary",totals:e}:{mode:"detail",totals:e,usage:s.usage.map(t=>({name:t.name,calls:t.calls,succeeded:t.succeeded,failed:t.failed,unfinished:t.unfinished,durationP50:t.durationP50??null}))}},Qe=s=>({range:{from:s.range.from,to:s.range.to},sessions:s.sessions,subagents:s.subagents,prompts:s.prompts,steps:s.steps,tokens:de(s.tokens),cost:s.cost,tools:ye(s.tools),activeDays:s.activeDays,streak:s.streak,activity:s.activity.map(e=>({date:e.date,steps:e.steps})),models:s.models.map(e=>({providerID:e.model.providerID,modelID:e.model.id,variant:e.model.variant??null,steps:e.steps,tokens:de(e.tokens),cost:e.cost}))}),ve=async(s,e,t)=>{try{return await ge.getSdkClient().session.stats({from:s.from,to:s.to,project:s.projectID,timezone:s.timezone,tools:e},{signal:t})}catch(a){throw Le("session.stats",a)}};async function _e(s,e){return Qe(await ve(s,"none",e))}async function et(s,e){return ye((await ve(s,"detail",e)).tools)}async function be(s){return(await ge.getCurrentProject(s)).id}const oe=(s,e)=>`${s}::${e.range}::${e.projectDirectory??"__all__"}`,Se=()=>Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC",tt=async({range:s,projectDirectory:e},t)=>{const a=e?await be(e):void 0;return t.throwIfAborted(),_e({from:Ye(s,new Date),projectID:a,timezone:Se()},t)},st=async({projectDirectory:s},e,t)=>{const a=s?await be(s):void 0;return t.throwIfAborted(),et({from:e.from,to:e.to,projectID:a,timezone:Se()},t)};function at(s,e,t=Date.now,a=st){let l=new AbortController;return Be()((o,n)=>{const i=(u,p)=>o(d=>{const f=d.entries[u]??{stats:null,fetchedAt:null,loading:!1,error:null};return{entries:{...d.entries,[u]:{...f,...p}}}}),m=(u,p)=>o(d=>{const f=d.toolEntries[u]??{tools:null,loading:!1,error:null};return{toolEntries:{...d.toolEntries,[u]:{...f,...p}}}});return{entries:{},toolEntries:{},toolsRequested:!1,load:async(u,p)=>{const d=oe(e(),u),f=n().entries[d];if(f?.loading||!p?.force&&(f?.stats||f?.error))return;const{signal:g}=l;i(d,{loading:!0});try{const x=await s(u,g);if(g.aborted)return;i(d,{stats:x,fetchedAt:t(),loading:!1,error:null}),n().toolsRequested&&n().loadTools(u,{force:!!n().toolEntries[d]?.tools})}catch(x){if(g.aborted)return;i(d,{loading:!1,error:x instanceof Error?x.message:String(x)})}},loadTools:async(u,p)=>{const d=oe(e(),u),f=n().entries[d]?.stats?.range;if(!f)return;o({toolsRequested:!0});const g=n().toolEntries[d];if(g?.loading||!p?.force&&(g?.tools||g?.error))return;const{signal:x}=l;m(d,{loading:!0});try{const y=await a(u,f,x);if(x.aborted)return;m(d,{tools:y,loading:!1,error:null})}catch(y){if(x.aborted)return;m(d,{loading:!1,error:y instanceof Error?y.message:String(y)})}},reset:()=>{l.abort(),l=new AbortController,o({entries:{},toolEntries:{}})}}})}const J=at(tt,me),lt=(s,e)=>s.toolEntries[oe(me(),e)],rt=(s,e)=>s.entries[oe(me(),e)];Ue(()=>J.getState().reset());const ie="__all__",ue={input:"bg-chart-1",output:"bg-chart-2",cacheRead:"bg-chart-3",cacheWrite:"bg-chart-4"},ot={input:"usageStats.tokens.input",output:"usageStats.tokens.output",cacheRead:"usageStats.tokens.cacheRead",cacheWrite:"usageStats.tokens.cacheWrite"},nt={"7d":"usageStats.range.7d","30d":"usageStats.range.30d","90d":"usageStats.range.90d",all:"usageStats.range.all"};function it(s,e){const t=U.c(33);let a;t[0]!==e||t[1]!==s?(a={range:s,projectDirectory:e},t[0]=e,t[1]=s,t[2]=a):a=t[2];const l=a;let o;t[3]!==l?(o=b=>rt(b,l),t[3]=l,t[4]=o):o=t[4];const n=J(o),i=J(mt);let m;t[5]!==i||t[6]!==l?(m=()=>{i(l)},t[5]=i,t[6]=l,t[7]=m):m=t[7];let u;t[8]!==n||t[9]!==i||t[10]!==l?(u=[i,l,n],t[8]=n,t[9]=i,t[10]=l,t[11]=u):u=t[11],Q.useEffect(m,u);let p;t[12]!==i||t[13]!==l?(p=()=>{i(l,{force:!0})},t[12]=i,t[13]=l,t[14]=p):p=t[14];const d=p;let f;t[15]!==l?(f=b=>lt(b,l),t[15]=l,t[16]=f):f=t[16];const g=J(f),x=J(ut),y=J(ct),v=!!n?.stats;let h,c;t[17]!==v||t[18]!==y||t[19]!==l||t[20]!==x?(h=()=>{x&&v&&y(l)},c=[v,y,l,x],t[17]=v,t[18]=y,t[19]=l,t[20]=x,t[21]=h,t[22]=c):(h=t[21],c=t[22]),Q.useEffect(h,c);let S;t[23]!==y||t[24]!==l?(S=()=>{y(l,{force:!0})},t[23]=y,t[24]=l,t[25]=S):S=t[25];const w=S;let j;t[26]!==w||t[27]!==g?(j={entry:g,load:w},t[26]=w,t[27]=g,t[28]=j):j=t[28];let N;return t[29]!==n||t[30]!==d||t[31]!==j?(N={entry:n,refresh:d,tools:j},t[29]=n,t[30]=d,t[31]=j,t[32]=N):N=t[32],N}function ct(s){return s.loadTools}function ut(s){return s.toolsRequested}function mt(s){return s.load}function aa(s){const e=U.c(79),{className:t}=s,{t:a}=W();let l;e[0]===Symbol.for("react.memo_cache_sentinel")?(l=je(),e[0]=l):l=e[0];const o=l,n=Ne(we(pt)),[i,m]=Q.useState("30d"),[u,p]=Q.useState(ie);let d;e[1]!==u||e[2]!==n?(d=n.find(ae=>ae.id===u)??null,e[1]=u,e[2]=n,e[3]=d):d=e[3];const f=d,{entry:g,refresh:x,tools:y}=it(i,f?.path??null),v=ze(ft),h=g?.stats??null,c=g?.loading??!0;let S;e[4]===Symbol.for("react.memo_cache_sentinel")?(S={integer:new Intl.NumberFormat(o),compact:new Intl.NumberFormat(o,{notation:"compact",maximumFractionDigits:1}),decimal:new Intl.NumberFormat(o,{maximumFractionDigits:1}),percent:new Intl.NumberFormat(o,{style:"percent",maximumFractionDigits:1}),cost:new Intl.NumberFormat(o,{style:"currency",currency:"USD",maximumFractionDigits:2}),day:new Intl.DateTimeFormat(o,{month:"short",day:"numeric",year:"numeric"}),milliseconds:new Intl.NumberFormat(o,{style:"unit",unit:"millisecond",unitDisplay:"short",maximumFractionDigits:0}),seconds:new Intl.NumberFormat(o,{style:"unit",unit:"second",unitDisplay:"short",maximumFractionDigits:1}),wholeSeconds:new Intl.NumberFormat(o,{style:"unit",unit:"second",unitDisplay:"short",maximumFractionDigits:0}),minutes:new Intl.NumberFormat(o,{style:"unit",unit:"minute",unitDisplay:"short",maximumFractionDigits:0})},e[4]=S):S=e[4];const w=S;let j;e[5]!==t?(j=_("h-full overflow-y-auto",t),e[5]=t,e[6]=j):j=e[6];let N;e[7]!==a?(N=a("usageStats.range.label"),e[7]=a,e[8]=N):N=e[8];let b;e[9]!==a?(b=Oe.map(ae=>({value:ae,label:a(nt[ae])})),e[9]=a,e[10]=b):b=e[10];let P;e[11]!==i||e[12]!==N||e[13]!==b?(P=r.jsx(pe,{value:i,onChange:m,"aria-label":N,options:b}),e[11]=i,e[12]=N,e[13]=b,e[14]=P):P=e[14];const $=f?f.id:ie;let C;e[15]!==a?(C=a("usageStats.scope.label"),e[15]=a,e[16]=C):C=e[16];let I;e[17]!==f||e[18]!==a?(I=r.jsx(Te,{children:()=>f?xe(f):a("usageStats.scope.all")}),e[17]=f,e[18]=a,e[19]=I):I=e[19];let T;e[20]!==I||e[21]!==C?(T=r.jsx(Re,{className:"w-fit min-w-[140px] max-w-64","aria-label":C,children:I}),e[20]=I,e[21]=C,e[22]=T):T=e[22];let D;e[23]!==a?(D=a("usageStats.scope.all"),e[23]=a,e[24]=D):D=e[24];let R;e[25]!==D?(R=r.jsx(fe,{value:ie,children:D}),e[25]=D,e[26]=R):R=e[26];let E;e[27]!==n?(E=n.map(dt),e[27]=n,e[28]=E):E=e[28];let F;e[29]!==R||e[30]!==E?(F=r.jsxs(Fe,{align:"start",children:[R,E]}),e[29]=R,e[30]=E,e[31]=F):F=e[31];let A;e[32]!==T||e[33]!==F||e[34]!==$?(A=r.jsxs(Pe,{value:$,onValueChange:p,children:[T,F]}),e[32]=T,e[33]=F,e[34]=$,e[35]=A):A=e[35];let k;e[36]!==g||e[37]!==h||e[38]!==a||e[39]!==v?(k=h&&g?.fetchedAt?r.jsx("span",{className:"truncate typography-micro text-muted-foreground",title:g.error??void 0,role:g.error?"status":void 0,children:a(g.error?"usageStats.refresh.failed":"usageStats.refresh.updated",{time:gt(g.fetchedAt,v)})}):null,e[36]=g,e[37]=h,e[38]=a,e[39]=v,e[40]=k):k=e[40];let L;e[41]!==a?(L=a("usageStats.refresh.action"),e[41]=a,e[42]=L):L=e[42];const z=c&&"animate-spin";let B;e[43]!==z?(B=_("size-4",z),e[43]=z,e[44]=B):B=e[44];let O;e[45]!==B?(O=r.jsx(ce,{name:"refresh",className:B}),e[45]=B,e[46]=O):O=e[46];let K;e[47]!==c||e[48]!==x||e[49]!==L||e[50]!==O?(K=r.jsx(Ae,{asChild:!0,children:r.jsx(le,{type:"button",variant:"ghost",size:"icon",className:"h-7 w-7 text-muted-foreground",onClick:x,disabled:c,"aria-label":L,children:O})}),e[47]=c,e[48]=x,e[49]=L,e[50]=O,e[51]=K):K=e[51];let Y;e[52]!==a?(Y=a("usageStats.refresh.action"),e[52]=a,e[53]=Y):Y=e[53];let G;e[54]!==Y?(G=r.jsx(Ce,{side:"bottom",sideOffset:4,children:Y}),e[54]=Y,e[55]=G):G=e[55];let V;e[56]!==K||e[57]!==G?(V=r.jsxs(Me,{children:[K,G]}),e[56]=K,e[57]=G,e[58]=V):V=e[58];let H;e[59]!==k||e[60]!==V?(H=r.jsxs("div",{className:"ms-auto flex min-w-0 items-center gap-1.5",children:[k,V]}),e[59]=k,e[60]=V,e[61]=H):H=e[61];let X;e[62]!==A||e[63]!==H||e[64]!==P?(X=r.jsxs("div",{className:"flex flex-wrap items-center gap-x-4 gap-y-2",children:[P,A,H]}),e[62]=A,e[63]=H,e[64]=P,e[65]=X):X=e[65];let Z;e[66]!==g?.error||e[67]!==c||e[68]!==x||e[69]!==h||e[70]!==a||e[71]!==y?(Z=h?Ve(h)?r.jsxs("div",{className:"flex flex-col items-center gap-1 py-16 text-center",children:[r.jsx("p",{className:"typography-ui-label font-semibold text-foreground",children:a("usageStats.empty.title")}),r.jsx("p",{className:"typography-micro text-muted-foreground",children:a("usageStats.empty.description")})]}):r.jsx(ht,{stats:h,formats:w,tools:y}):c?r.jsxs("div",{className:"flex items-center justify-center gap-2 py-16 text-muted-foreground",role:"status",children:[r.jsx(ce,{name:"loader-4",className:"size-4 animate-spin"}),r.jsx("span",{className:"typography-ui-label",children:a("usageStats.loading")})]}):r.jsxs("div",{className:"flex flex-col items-center gap-3 py-16 text-center",role:"alert",children:[r.jsx("p",{className:"typography-ui-label font-semibold text-foreground",children:a("usageStats.error.title")}),r.jsx("p",{className:"max-w-md break-words typography-micro text-muted-foreground",children:g?.error}),r.jsx(le,{type:"button",variant:"outline",size:"sm",onClick:x,children:a("usageStats.error.retry")})]}),e[66]=g?.error,e[67]=c,e[68]=x,e[69]=h,e[70]=a,e[71]=y,e[72]=Z):Z=e[72];let q;e[73]!==X||e[74]!==Z?(q=r.jsxs("div",{className:"mx-auto flex w-full max-w-4xl flex-col gap-5 px-4 py-4 sm:px-6",children:[X,Z]}),e[73]=X,e[74]=Z,e[75]=q):q=e[75];let se;return e[76]!==q||e[77]!==j?(se=r.jsx("div",{className:j,children:q}),e[76]=q,e[77]=j,e[78]=se):se=e[78],se}function dt(s){return r.jsx(fe,{value:s.id,children:r.jsx("span",{className:"truncate",title:s.path,children:xe(s)})},s.id)}function ft(s){return s.timeFormatPreference}function pt(s){return s.projects}function gt(s,e){return Je(s,Date.now())?ke(s,e):De(s,e,{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"})}function ht(s){const e=U.c(86),{stats:t,formats:a,tools:l}=s,{t:o}=W(),n=t.tokens.cacheRead+t.tokens.cacheWrite;let i;e[0]!==o?(i=o("usageStats.metric.sessions"),e[0]=o,e[1]=i):i=e[1];let m;e[2]!==a.integer||e[3]!==t.sessions?(m=a.integer.format(t.sessions),e[2]=a.integer,e[3]=t.sessions,e[4]=m):m=e[4];let u;e[5]!==a.integer||e[6]!==t.subagents||e[7]!==o?(u=o("usageStats.metric.subagents",{count:a.integer.format(t.subagents)}),e[5]=a.integer,e[6]=t.subagents,e[7]=o,e[8]=u):u=e[8];let p;e[9]!==i||e[10]!==m||e[11]!==u?(p=r.jsx(M,{label:i,value:m,hint:u}),e[9]=i,e[10]=m,e[11]=u,e[12]=p):p=e[12];let d;e[13]!==o?(d=o("usageStats.metric.prompts"),e[13]=o,e[14]=d):d=e[14];let f;e[15]!==a.integer||e[16]!==t.prompts?(f=a.integer.format(t.prompts),e[15]=a.integer,e[16]=t.prompts,e[17]=f):f=e[17];let g;e[18]!==d||e[19]!==f?(g=r.jsx(M,{label:d,value:f}),e[18]=d,e[19]=f,e[20]=g):g=e[20];let x;e[21]!==o?(x=o("usageStats.metric.tokens"),e[21]=o,e[22]=x):x=e[22];let y;e[23]!==a.compact||e[24]!==t.tokens.total?(y=a.compact.format(t.tokens.total),e[23]=a.compact,e[24]=t.tokens.total,e[25]=y):y=e[25];let v;e[26]!==n||e[27]!==a.compact||e[28]!==t.tokens.input||e[29]!==t.tokens.output||e[30]!==t.tokens.reasoning||e[31]!==o?(v=o("usageStats.metric.tokensBreakdown",{input:a.compact.format(t.tokens.input),output:a.compact.format(t.tokens.output+t.tokens.reasoning),cache:a.compact.format(n)}),e[26]=n,e[27]=a.compact,e[28]=t.tokens.input,e[29]=t.tokens.output,e[30]=t.tokens.reasoning,e[31]=o,e[32]=v):v=e[32];let h;e[33]!==v||e[34]!==x||e[35]!==y?(h=r.jsx(M,{label:x,value:y,hint:v}),e[33]=v,e[34]=x,e[35]=y,e[36]=h):h=e[36];let c;e[37]!==o?(c=o("usageStats.metric.cost"),e[37]=o,e[38]=c):c=e[38];let S;e[39]!==a.cost||e[40]!==t.cost?(S=a.cost.format(t.cost),e[39]=a.cost,e[40]=t.cost,e[41]=S):S=e[41];let w;e[42]!==c||e[43]!==S?(w=r.jsx(M,{label:c,value:S}),e[42]=c,e[43]=S,e[44]=w):w=e[44];let j;e[45]!==o?(j=o("usageStats.metric.activeDays"),e[45]=o,e[46]=j):j=e[46];let N;e[47]!==a.integer||e[48]!==t.activeDays?(N=a.integer.format(t.activeDays),e[47]=a.integer,e[48]=t.activeDays,e[49]=N):N=e[49];let b;e[50]!==j||e[51]!==N?(b=r.jsx(M,{label:j,value:N}),e[50]=j,e[51]=N,e[52]=b):b=e[52];let P;e[53]!==o?(P=o("usageStats.metric.streak"),e[53]=o,e[54]=P):P=e[54];let $;e[55]!==a.integer||e[56]!==t.streak?($=a.integer.format(t.streak),e[55]=a.integer,e[56]=t.streak,e[57]=$):$=e[57];let C;e[58]!==P||e[59]!==$?(C=r.jsx(M,{label:P,value:$}),e[58]=P,e[59]=$,e[60]=C):C=e[60];let I;e[61]!==h||e[62]!==w||e[63]!==b||e[64]!==C||e[65]!==p||e[66]!==g?(I=r.jsxs("div",{className:"grid grid-cols-2 gap-2 sm:grid-cols-3",children:[p,g,h,w,b,C]}),e[61]=h,e[62]=w,e[63]=b,e[64]=C,e[65]=p,e[66]=g,e[67]=I):I=e[67];let T,D,R;e[68]!==a||e[69]!==t?(T=r.jsx(xt,{stats:t,formats:a}),D=r.jsx(yt,{stats:t,formats:a}),R=r.jsx(bt,{stats:t,formats:a}),e[68]=a,e[69]=t,e[70]=T,e[71]=D,e[72]=R):(T=e[70],D=e[71],R=e[72]);let E;e[73]!==a||e[74]!==t.models?(E=r.jsx(Dt,{models:t.models,formats:a}),e[73]=a,e[74]=t.models,e[75]=E):E=e[75];let F;e[76]!==a||e[77]!==l?(F=r.jsx(jt,{state:l,formats:a}),e[76]=a,e[77]=l,e[78]=F):F=e[78];let A;return e[79]!==I||e[80]!==T||e[81]!==D||e[82]!==R||e[83]!==E||e[84]!==F?(A=r.jsxs(r.Fragment,{children:[I,T,D,R,E,F]}),e[79]=I,e[80]=T,e[81]=D,e[82]=R,e[83]=E,e[84]=F,e[85]=A):A=e[85],A}function M(s){const e=U.c(10),{label:t,value:a,hint:l}=s;let o;e[0]!==t?(o=r.jsx("span",{className:"truncate typography-micro text-muted-foreground",children:t}),e[0]=t,e[1]=o):o=e[1];let n;e[2]!==a?(n=r.jsx("span",{className:"truncate text-xl font-semibold tabular-nums text-foreground",children:a}),e[2]=a,e[3]=n):n=e[3];let i;e[4]!==l?(i=l?r.jsx("span",{className:"truncate typography-micro text-muted-foreground/80",title:l,children:l}):null,e[4]=l,e[5]=i):i=e[5];let m;return e[6]!==o||e[7]!==n||e[8]!==i?(m=r.jsxs("div",{className:"flex min-w-0 flex-col gap-0.5 rounded-lg border border-border/60 bg-[var(--surface-elevated)] px-3 py-2.5",children:[o,n,i]}),e[6]=o,e[7]=n,e[8]=i,e[9]=m):m=e[9],m}function ee(s){const e=U.c(11),{title:t,caption:a,actions:l,children:o}=s;let n;e[0]!==t?(n=r.jsx("h2",{className:"typography-ui-label font-semibold text-foreground",children:t}),e[0]=t,e[1]=n):n=e[1];let i;e[2]!==l||e[3]!==a?(i=l??(a?r.jsx("span",{className:"truncate typography-micro text-muted-foreground",children:a}):null),e[2]=l,e[3]=a,e[4]=i):i=e[4];let m;e[5]!==n||e[6]!==i?(m=r.jsxs("div",{className:"flex flex-wrap items-baseline justify-between gap-x-2 gap-y-1",children:[n,i]}),e[5]=n,e[6]=i,e[7]=m):m=e[7];let u;return e[8]!==o||e[9]!==m?(u=r.jsxs("section",{className:"flex min-w-0 flex-col gap-2",children:[m,o]}),e[8]=o,e[9]=m,e[10]=u):u=e[10],u}const te=s=>{const[e,t,a]=s.split("-").map(Number);return new Date(e,t-1,a)};function xt(s){const e=U.c(52),{stats:t,formats:a}=s,{t:l}=W();let o;e[0]!==t?(o=Ge(t),e[0]=t,e[1]=o):o=e[1];const n=o,[i,m]=Q.useState(null),u=n.unit==="week",p=u?"usageStats.activity.titleWeekly":"usageStats.activity.titleDaily";let d;e[2]!==l||e[3]!==p?(d=l(p),e[2]=l,e[3]=p,e[4]=d):d=e[4];const f=d;let g;e[5]!==a.day?(g=k=>k.start===k.end?a.day.format(te(k.start)):`${a.day.format(te(k.start))} – ${a.day.format(te(k.end))}`,e[5]=a.day,e[6]=g):g=e[6];const x=g;let y;e[7]!==a.integer||e[8]!==x||e[9]!==l?(y=k=>l("usageStats.activity.barLabel",{date:x(k),count:a.integer.format(k.steps)}),e[7]=a.integer,e[8]=x,e[9]=l,e[10]=y):y=e[10];const v=y,h=n.bars.length,c=i!==null&&i<h?n.bars[i]:null,S=n.bars[0],w=n.bars[h-1];let j;e[11]!==i||e[12]!==h?(j=k=>{if(h===0)return;const L=i??h-1,z=k.key==="ArrowLeft"?Math.max(0,L-1):k.key==="ArrowRight"?Math.min(h-1,L+1):k.key==="Home"?0:k.key==="End"?h-1:null;z!==null&&(k.preventDefault(),m(z))},e[11]=i,e[12]=h,e[13]=j):j=e[13];const N=j,b=u?"usageStats.activity.captionWeekly":"usageStats.activity.captionDaily";let P;e[14]!==l||e[15]!==b?(P=l(b),e[14]=l,e[15]=b,e[16]=P):P=e[16];let $;e[17]!==h?($=()=>m(k=>k??(h>0?h-1:null)),e[17]=h,e[18]=$):$=e[18];let C,I;e[19]===Symbol.for("react.memo_cache_sentinel")?(C=()=>m(null),I=()=>m(null),e[19]=C,e[20]=I):(C=e[19],I=e[20]);let T;if(e[21]!==i||e[22]!==c||e[23]!==n.bars||e[24]!==n.max){let k;e[26]!==i||e[27]!==c||e[28]!==n.max?(k=(L,z)=>{const B=n.max>0?Math.max(L.steps>0?4:0,L.steps/n.max*100):0,O=c!==null&&z!==i;return r.jsx("div",{className:"flex h-full min-w-0 flex-1 items-end",onPointerEnter:()=>m(z),children:r.jsx("div",{className:_("w-full rounded-t-[2px] transition-opacity duration-100",L.steps>0?"bg-chart-1":"bg-border/60",O&&"opacity-40"),style:{height:L.steps>0?`${B}%`:"1px"}})},L.start)},e[26]=i,e[27]=c,e[28]=n.max,e[29]=k):k=e[29],T=n.bars.map(k),e[21]=i,e[22]=c,e[23]=n.bars,e[24]=n.max,e[25]=T}else T=e[25];let D;e[30]!==i||e[31]!==c||e[32]!==h||e[33]!==v?(D=c&&i!==null?r.jsx("div",{className:"oc-glass-tooltip pointer-events-none absolute bottom-full z-10 mb-1.5 w-max max-w-56 rounded-xl border border-border/60 px-3 py-1.5 typography-meta text-[var(--surface-elevated-foreground)]",style:{left:`${(i+.5)/h*100}%`,transform:`translateX(${i<h/3?"-15%":i>h*2/3?"-85%":"-50%"})`},"aria-live":"polite",children:v(c)}):null,e[30]=i,e[31]=c,e[32]=h,e[33]=v,e[34]=D):D=e[34];let R;e[35]!==N||e[36]!==T||e[37]!==D||e[38]!==$||e[39]!==f?(R=r.jsxs("div",{className:"relative flex h-32 items-end gap-px rounded-sm outline-none focus-visible:ring-2 focus-visible:ring-[var(--interactive-focus-ring)]",role:"group",tabIndex:0,"aria-label":f,onKeyDown:N,onFocus:$,onBlur:C,onPointerLeave:I,children:[T,D]}),e[35]=N,e[36]=T,e[37]=D,e[38]=$,e[39]=f,e[40]=R):R=e[40];let E;e[41]!==S||e[42]!==a.day||e[43]!==w?(E=S&&w?r.jsxs("div",{className:"mt-1.5 flex justify-between gap-2 typography-micro text-muted-foreground",children:[r.jsx("span",{children:a.day.format(te(S.start))}),r.jsx("span",{children:a.day.format(te(w.end))})]}):null,e[41]=S,e[42]=a.day,e[43]=w,e[44]=E):E=e[44];let F;e[45]!==R||e[46]!==E?(F=r.jsxs("div",{dir:"ltr",className:"rounded-lg border border-border/60 bg-[var(--surface-elevated)] px-3 pb-2 pt-3",children:[R,E]}),e[45]=R,e[46]=E,e[47]=F):F=e[47];let A;return e[48]!==F||e[49]!==P||e[50]!==f?(A=r.jsx(ee,{title:f,caption:P,children:F}),e[48]=F,e[49]=P,e[50]=f,e[51]=A):A=e[51],A}function yt(s){const e=U.c(29),{stats:t,formats:a}=s,{t:l}=W();let o,n,i,m,u,p,d;if(e[0]!==a||e[1]!==t.tokens||e[2]!==l){d=Symbol.for("react.early_return_sentinel");e:{const y=he(t.tokens);if(t.tokens.total<=0){d=null;break e}o=ee,e[10]!==l?(p=l("usageStats.tokens.title"),e[10]=l,e[11]=p):p=e[11],m="flex flex-col gap-2.5 rounded-lg border border-border/60 bg-[var(--surface-elevated)] px-3 py-3";let v;e[12]!==t.tokens.total?(v=c=>r.jsx("div",{className:_("h-full",ue[c.key]),style:{width:`${c.value/t.tokens.total*100}%`}},c.key),e[12]=t.tokens.total,e[13]=v):v=e[13],u=r.jsx("div",{className:"flex h-2.5 w-full overflow-hidden rounded-full","aria-hidden":"true",children:y.filter(vt).map(v)}),n="grid grid-cols-2 gap-x-4 gap-y-1 sm:grid-cols-4";let h;e[14]!==a||e[15]!==t.tokens.total||e[16]!==l?(h=c=>r.jsxs("div",{className:"flex min-w-0 items-center gap-1.5",children:[r.jsx("span",{className:_("size-2 shrink-0 rounded-full",ue[c.key]),"aria-hidden":"true"}),r.jsx("span",{className:"min-w-0 truncate typography-micro text-muted-foreground",children:l(ot[c.key])}),r.jsx("span",{className:"ms-auto shrink-0 typography-micro tabular-nums text-foreground",children:l("usageStats.tokens.legendValue",{value:a.compact.format(c.value),share:a.percent.format(c.value/t.tokens.total)})})]},c.key),e[14]=a,e[15]=t.tokens.total,e[16]=l,e[17]=h):h=e[17],i=y.map(h)}e[0]=a,e[1]=t.tokens,e[2]=l,e[3]=o,e[4]=n,e[5]=i,e[6]=m,e[7]=u,e[8]=p,e[9]=d}else o=e[3],n=e[4],i=e[5],m=e[6],u=e[7],p=e[8],d=e[9];if(d!==Symbol.for("react.early_return_sentinel"))return d;let f;e[18]!==n||e[19]!==i?(f=r.jsx("div",{className:n,children:i}),e[18]=n,e[19]=i,e[20]=f):f=e[20];let g;e[21]!==m||e[22]!==u||e[23]!==f?(g=r.jsxs("div",{className:m,children:[u,f]}),e[21]=m,e[22]=u,e[23]=f,e[24]=g):g=e[24];let x;return e[25]!==o||e[26]!==p||e[27]!==g?(x=r.jsx(o,{title:p,children:g}),e[25]=o,e[26]=p,e[27]=g,e[28]=x):x=e[28],x}function vt(s){return s.value>0}function bt(s){const e=U.c(62),{stats:t,formats:a}=s,{t:l}=W();let o,n,i,m,u,p,d,f,g,x,y;if(e[0]!==a||e[1]!==t.cost||e[2]!==t.sessions||e[3]!==t.steps||e[4]!==t.tokens||e[5]!==l){const S=He(t.tokens),w=ne(t.cost,t.sessions),j=Ze(t.cost,t.tokens.total),N=ne(t.tokens.total,t.sessions),b=ne(t.steps,t.sessions),P=qe(t.tokens);n=ee,e[17]!==l?(y=l("usageStats.efficiency.title"),e[17]=l,e[18]=y):y=e[18],u="grid grid-cols-2 gap-2 sm:grid-cols-3";let $;e[19]!==l?($=l("usageStats.efficiency.cacheHitRate"),e[19]=l,e[20]=$):$=e[20];const C=S===null?"—":a.percent.format(S);e[21]!==$||e[22]!==C?(p=r.jsx(M,{label:$,value:C}),e[21]=$,e[22]=C,e[23]=p):p=e[23];let I;e[24]!==l?(I=l("usageStats.efficiency.costPerSession"),e[24]=l,e[25]=I):I=e[25];const T=w===null?"—":a.cost.format(w);e[26]!==I||e[27]!==T?(d=r.jsx(M,{label:I,value:T}),e[26]=I,e[27]=T,e[28]=d):d=e[28];let D;e[29]!==l?(D=l("usageStats.efficiency.costPerMillion"),e[29]=l,e[30]=D):D=e[30];const R=j===null?"—":a.cost.format(j);e[31]!==D||e[32]!==R?(f=r.jsx(M,{label:D,value:R}),e[31]=D,e[32]=R,e[33]=f):f=e[33];let E;e[34]!==l?(E=l("usageStats.efficiency.tokensPerSession"),e[34]=l,e[35]=E):E=e[35];const F=N===null?"—":a.compact.format(N);e[36]!==E||e[37]!==F?(g=r.jsx(M,{label:E,value:F}),e[36]=E,e[37]=F,e[38]=g):g=e[38];let A;e[39]!==l?(A=l("usageStats.efficiency.stepsPerSession"),e[39]=l,e[40]=A):A=e[40];const k=b===null?"—":a.decimal.format(b);e[41]!==A||e[42]!==k?(x=r.jsx(M,{label:A,value:k}),e[41]=A,e[42]=k,e[43]=x):x=e[43],o=M,e[44]!==l?(i=l("usageStats.efficiency.reasoningShare"),e[44]=l,e[45]=i):i=e[45],m=P===null?"—":a.percent.format(P),e[0]=a,e[1]=t.cost,e[2]=t.sessions,e[3]=t.steps,e[4]=t.tokens,e[5]=l,e[6]=o,e[7]=n,e[8]=i,e[9]=m,e[10]=u,e[11]=p,e[12]=d,e[13]=f,e[14]=g,e[15]=x,e[16]=y}else o=e[6],n=e[7],i=e[8],m=e[9],u=e[10],p=e[11],d=e[12],f=e[13],g=e[14],x=e[15],y=e[16];let v;e[46]!==o||e[47]!==i||e[48]!==m?(v=r.jsx(o,{label:i,value:m}),e[46]=o,e[47]=i,e[48]=m,e[49]=v):v=e[49];let h;e[50]!==v||e[51]!==u||e[52]!==p||e[53]!==d||e[54]!==f||e[55]!==g||e[56]!==x?(h=r.jsxs("div",{className:u,children:[p,d,f,g,x,v]}),e[50]=v,e[51]=u,e[52]=p,e[53]=d,e[54]=f,e[55]=g,e[56]=x,e[57]=h):h=e[57];let c;return e[58]!==n||e[59]!==h||e[60]!==y?(c=r.jsx(n,{title:y,children:h}),e[58]=n,e[59]=h,e[60]=y,e[61]=c):c=e[61],c}function St(s,e){if(s<1e3)return e.milliseconds.format(Math.round(s));const t=s/1e3;return t<60?e.seconds.format(t):`${e.minutes.format(Math.floor(t/60))} ${e.wholeSeconds.format(Math.round(t%60))}`}function jt(s){const e=U.c(55),{state:t,formats:a}=s,{t:l}=W(),o=t.entry?.tools??null;if(!o||o.mode==="none"){const i=t.entry?.loading??!1,m=t.entry?.error??null;let u;e[0]!==l?(u=l("usageStats.tools.title"),e[0]=l,e[1]=u):u=e[1];let p;e[2]!==l?(p=l("usageStats.tools.caption"),e[2]=l,e[3]=p):p=e[3];let d;e[4]!==m||e[5]!==i||e[6]!==t.load||e[7]!==l?(d=m&&!i?r.jsxs("div",{className:"flex flex-col items-start gap-2",role:"alert",children:[r.jsx("p",{className:"typography-micro text-foreground",children:l("usageStats.tools.loadFailed")}),r.jsx("p",{className:"max-w-md break-words typography-micro text-muted-foreground",children:m}),r.jsx(le,{type:"button",variant:"outline",size:"sm",onClick:t.load,children:l("usageStats.error.retry")})]}):r.jsx("div",{children:r.jsxs(le,{type:"button",variant:"outline",size:"sm",onClick:t.load,disabled:i,"aria-busy":i,children:[i?r.jsx(ce,{name:"loader-4",className:"size-4 animate-spin"}):null,l("usageStats.tools.load")]})}),e[4]=m,e[5]=i,e[6]=t.load,e[7]=l,e[8]=d):d=e[8];let f;return e[9]!==u||e[10]!==p||e[11]!==d?(f=r.jsx(ee,{title:u,caption:p,children:d}),e[9]=u,e[10]=p,e[11]=d,e[12]=f):f=e[12],f}let n;if(e[13]!==a||e[14]!==l||e[15]!==o.mode||e[16]!==o.totals||e[17]!==o.usage){const i=Xe(o.totals),m=o.mode==="detail"?o.usage.filter(Nt).slice(0,8):[];let u;e[19]!==l?(u=l("usageStats.tools.title"),e[19]=l,e[20]=u):u=e[20];let p;e[21]!==l?(p=l("usageStats.tools.calls"),e[21]=l,e[22]=p):p=e[22];let d;e[23]!==a.integer||e[24]!==o.totals.calls?(d=a.integer.format(o.totals.calls),e[23]=a.integer,e[24]=o.totals.calls,e[25]=d):d=e[25];let f;e[26]!==p||e[27]!==d?(f=r.jsx(M,{label:p,value:d}),e[26]=p,e[27]=d,e[28]=f):f=e[28];let g;e[29]!==l?(g=l("usageStats.tools.successRate"),e[29]=l,e[30]=g):g=e[30];const x=i===null?"—":a.percent.format(i);let y;e[31]!==g||e[32]!==x?(y=r.jsx(M,{label:g,value:x}),e[31]=g,e[32]=x,e[33]=y):y=e[33];let v;e[34]!==l?(v=l("usageStats.tools.failed"),e[34]=l,e[35]=v):v=e[35];let h;e[36]!==a.integer||e[37]!==o.totals.failed?(h=a.integer.format(o.totals.failed),e[36]=a.integer,e[37]=o.totals.failed,e[38]=h):h=e[38];let c;e[39]!==h||e[40]!==v?(c=r.jsx(M,{label:v,value:h}),e[39]=h,e[40]=v,e[41]=c):c=e[41];let S;e[42]!==l?(S=l("usageStats.tools.unfinished"),e[42]=l,e[43]=S):S=e[43];let w;e[44]!==a.integer||e[45]!==o.totals.unfinished?(w=a.integer.format(o.totals.unfinished),e[44]=a.integer,e[45]=o.totals.unfinished,e[46]=w):w=e[46];let j;e[47]!==S||e[48]!==w?(j=r.jsx(M,{label:S,value:w}),e[47]=S,e[48]=w,e[49]=j):j=e[49];let N;e[50]!==c||e[51]!==j||e[52]!==f||e[53]!==y?(N=r.jsxs("div",{className:"grid grid-cols-2 gap-2 sm:grid-cols-4",children:[f,y,c,j]}),e[50]=c,e[51]=j,e[52]=f,e[53]=y,e[54]=N):N=e[54],n=r.jsxs(ee,{title:u,children:[N,m.length>0?r.jsx("ul",{className:"flex flex-col gap-2.5 rounded-lg border border-border/60 bg-[var(--surface-elevated)] px-3 py-3",children:m.map(b=>r.jsxs("li",{className:"flex min-w-0 flex-col gap-1",children:[r.jsxs("div",{className:"flex min-w-0 items-baseline gap-2",children:[r.jsx("span",{className:"min-w-0 flex-1 truncate font-mono typography-micro text-foreground",title:b.name,children:b.name}),r.jsx("span",{className:"shrink-0 typography-micro tabular-nums text-muted-foreground",children:b.durationP50!==null?l("usageStats.tools.rowStats",{count:a.integer.format(b.calls),duration:St(b.durationP50,a)}):l("usageStats.tools.rowStatsNoDuration",{count:a.integer.format(b.calls)})})]}),r.jsxs("div",{className:"flex h-1.5 w-full overflow-hidden rounded-full bg-border/50","aria-hidden":"true",children:[b.succeeded>0?r.jsx("div",{className:"h-full bg-status-success",style:{width:`${b.succeeded/b.calls*100}%`}}):null,b.failed>0?r.jsx("div",{className:"h-full bg-status-error",style:{width:`${b.failed/b.calls*100}%`}}):null]})]},b.name))}):null]}),e[13]=a,e[14]=l,e[15]=o.mode,e[16]=o.totals,e[17]=o.usage,e[18]=n}else n=e[18];return n}function Nt(s){return s.calls>0}const wt=["tokens","cost","steps"],kt={tokens:"usageStats.models.byTokens",cost:"usageStats.models.byCost",steps:"usageStats.models.bySteps"};function Dt(s){const e=U.c(28),{models:t,formats:a}=s,{t:l}=W(),o=Ee(It),[n,i]=Q.useState("tokens");let m;e[0]!==n?(m=c=>n==="tokens"?c.tokens.total:n==="cost"?c.cost:c.steps,e[0]=n,e[1]=m):m=e[1];const u=m;let p;if(e[2]!==t||e[3]!==u){let c;e[5]!==u?(c=(S,w)=>u(w)-u(S),e[5]=u,e[6]=c):c=e[6],p=[...t].sort(c),e[2]=t,e[3]=u,e[4]=p}else p=e[4];const d=p;let f;e[7]!==u?(f=(c,S)=>Math.max(c,u(S)),e[7]=u,e[8]=f):f=e[8];const g=d.reduce(f,0);let x;e[9]!==l?(x=l("usageStats.models.title"),e[9]=l,e[10]=x):x=e[10];let y;e[11]!==n||e[12]!==t.length||e[13]!==l?(y=t.length>0?r.jsx(pe,{value:n,onChange:i,"aria-label":l("usageStats.models.compareBy"),options:wt.map(c=>({value:c,label:l(kt[c])}))}):void 0,e[11]=n,e[12]=t.length,e[13]=l,e[14]=y):y=e[14];let v;e[15]!==n||e[16]!==a||e[17]!==g||e[18]!==t.length||e[19]!==o||e[20]!==d||e[21]!==l||e[22]!==u?(v=t.length===0?r.jsx("p",{className:"typography-micro text-muted-foreground",children:l("usageStats.models.empty")}):r.jsx("ul",{className:"flex flex-col gap-3",children:d.map(c=>{const S=o.find(b=>b.id===c.providerID),w=S?.name||c.providerID,j=Ie(S,c.modelID)||c.modelID,N=g>0?u(c)/g*100:0;return r.jsxs("li",{className:"flex min-w-0 flex-col gap-1",children:[r.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[r.jsx($e,{providerId:c.providerID,alt:w,className:"size-4 shrink-0"}),r.jsxs("span",{className:"flex min-w-0 flex-1 items-baseline gap-1.5 truncate",title:`${w} · ${c.providerID}/${c.modelID}`,children:[r.jsx("span",{className:"truncate typography-ui-label text-foreground",children:j}),c.variant?r.jsx("span",{className:"shrink-0 typography-micro text-muted-foreground",children:c.variant}):null,r.jsx("span",{className:"hidden shrink-0 typography-micro text-muted-foreground/80 sm:inline",children:w})]}),r.jsx("span",{className:"shrink-0 typography-micro tabular-nums text-muted-foreground",children:n==="steps"?`${a.integer.format(c.steps)} · ${a.cost.format(c.cost)}`:`${a.compact.format(c.tokens.total)} · ${a.cost.format(c.cost)}`})]}),r.jsx("div",{className:"flex h-1.5 w-full overflow-hidden rounded-full bg-border/50","aria-hidden":"true",children:n==="tokens"?r.jsx("div",{className:"flex h-full",style:{width:`${N}%`},children:he(c.tokens).filter(Et).map(b=>r.jsx("div",{className:_("h-full",ue[b.key]),style:{width:`${b.value/c.tokens.total*100}%`}},b.key))}):N>0?r.jsx("div",{className:"h-full bg-chart-1",style:{width:`${N}%`}}):null})]},`${c.providerID}/${c.modelID}#${c.variant??""}`)})}),e[15]=n,e[16]=a,e[17]=g,e[18]=t.length,e[19]=o,e[20]=d,e[21]=l,e[22]=u,e[23]=v):v=e[23];let h;return e[24]!==x||e[25]!==y||e[26]!==v?(h=r.jsx(ee,{title:x,actions:y,children:v}),e[24]=x,e[25]=y,e[26]=v,e[27]=h):h=e[27],h}function Et(s){return s.value>0}function It(s){return s.providers}export{aa as UsageStatsView};
@@ -1 +1 @@
1
- import{q as h,d as w}from"./parseDiffFromFile-C9ASoy7R.js";function S({scrollTop:u,scrollHeight:e,height:t,fitPerfectly:s=!1,fitPerfectlyOverscroll:i=0,overscrollSize:n}){const o=t+n*2,l=s?t+i*2:o;if(e=Math.max(e,l),o>=e||s){const a=Math.max(u-i,0),d=Math.min(u+l,e);return{top:a,bottom:Math.max(d,a)}}let r=u+t/2-o/2,c=r+o;return r<0&&(r=0),c>e&&(c=e),r=Math.floor(Math.max(r,0)),{top:r,bottom:Math.ceil(Math.max(Math.min(c,e),r))}}function E(u,e){return u==null||e==null?u===e:u.top===e.top&&u.bottom===e.bottom}const D=1e3,O=D*4,R=[0,1e-6,.99999,1],y={overscrollSize:D,intersectionObserverMargin:O,resizeDebugging:!1};let m=0,T=-1;var I=class f{static __STOP=!1;static __lastScrollPosition=0;__id=`virtualizer-${++T}`;config;type="simple";intersectionObserver;scrollTop=0;height=0;scrollHeight=0;windowSpecs={top:0,bottom:0};root;contentContainer;resizeObserver;observers=new Map;visibleInstances=new Map;visibleInstancesDirty=!1;instancesChanged=new Set;reconcileQueue=new Set;scrollDirty=!0;heightDirty=!0;scrollHeightDirty=!0;renderedObservers=0;connectQueue=new Map;constructor(e){this.config={...y,...e}}setup(e,t){if(this.root==null){this.root=e,this.resizeObserver=new ResizeObserver(this.handleContainerResize),this.intersectionObserver=new IntersectionObserver(this.handleIntersectionChange,{root:this.root,threshold:R,rootMargin:`${this.config.intersectionObserverMargin}px 0px ${this.config.intersectionObserverMargin}px 0px`}),e instanceof Document?this.setupWindow():this.setupElement(t),window.__INSTANCE=this,window.__TOGGLE=()=>{f.__STOP?(f.__STOP=!1,(this.getScrollContainerElement()??window).scrollTo({top:f.__lastScrollPosition}),h(this.computeRenderRangeAndEmit)):(f.__lastScrollPosition=this.getScrollTop(),f.__STOP=!0)};for(const[s,i]of this.connectQueue.entries())this.connect(s,i);this.connectQueue.clear(),this.markDOMDirty(),h(this.computeRenderRangeAndEmit)}}instanceChanged(e,t){this.instancesChanged.add(e),t&&this.markDOMDirty(),h(this.computeRenderRangeAndEmit)}requestHeightReconcile(e){this.reconcileQueue.add(e),h(this.computeRenderRangeAndEmit)}getWindowSpecs(){return this.windowSpecs.top===0&&this.windowSpecs.bottom===0&&(this.windowSpecs=S({scrollTop:this.getScrollTop(),height:this.getHeight(),scrollHeight:this.getScrollHeight(),overscrollSize:this.config.overscrollSize})),this.windowSpecs}getRoot(){return this.root}isInstanceVisible(e,t){const s=this.getScrollTop(),i=this.getHeight(),n=this.config.intersectionObserverMargin,o=s-n,l=s+i+n;return!(e<o-t||e>l)}handleContainerResize=e=>{if(this.root==null)return;let t=!1;for(const s of e){const i=s.borderBoxSize[0].blockSize;this.root instanceof Document?i!==this.scrollHeight&&(this.scrollHeightDirty=!0,t=!0,this.config.resizeDebugging&&(console.log("Virtualizer: content size change",this.__id,{sizeChange:i-m,newSize:i}),m=i)):s.target===this.root?i!==this.height&&(this.heightDirty=!0,t=!0):s.target===this.contentContainer&&(this.scrollHeightDirty=!0,t=!0,this.config.resizeDebugging&&(console.log("Virtualizer: scroller size change",this.__id,{sizeChange:i-m,newSize:i}),m=i))}t&&h(this.computeRenderRangeAndEmit)};setupWindow(){if(this.root==null||!(this.root instanceof Document))throw new Error("Virtualizer.setupWindow: Invalid setup method");window.addEventListener("scroll",this.handleWindowScroll,{passive:!0}),window.addEventListener("resize",this.handleWindowResize,{passive:!0}),this.resizeObserver?.observe(this.root.documentElement)}setupElement(e){if(this.root==null||this.root instanceof Document)throw new Error("Virtualizer.setupElement: Invalid setup method");this.root.addEventListener("scroll",this.handleElementScroll,{passive:!0}),this.resizeObserver?.observe(this.root),e??=this.root.firstElementChild??void 0,e instanceof HTMLElement&&(this.contentContainer=e,this.resizeObserver?.observe(e))}cleanUp(){w(this.computeRenderRangeAndEmit),this.resizeObserver?.disconnect(),this.resizeObserver=void 0,this.intersectionObserver?.disconnect(),this.intersectionObserver=void 0,this.root?.removeEventListener("scroll",this.handleElementScroll),window.removeEventListener("scroll",this.handleWindowScroll),window.removeEventListener("resize",this.handleWindowResize),this.root=void 0,this.contentContainer=void 0,this.observers.clear(),this.visibleInstances.clear(),this.instancesChanged.clear(),this.reconcileQueue.clear(),this.connectQueue.clear(),this.visibleInstancesDirty=!1,this.windowSpecs={top:0,bottom:0},this.scrollTop=0,this.height=0,this.scrollHeight=0,this.scrollDirty=!0,this.heightDirty=!0,this.scrollHeightDirty=!0}getOffsetInScrollContainer(e){return this.getScrollTop()+g(e,this.getScrollContainerElement())}connect(e,t){if(this.observers.has(e))throw new Error("Virtualizer.connect: instance is already connected...");return this.intersectionObserver==null?this.connectQueue.set(e,t):(this.intersectionObserver.observe(e),this.observers.set(e,t),this.instancesChanged.add(t),this.markDOMDirty(),h(this.computeRenderRangeAndEmit)),()=>this.disconnect(e)}disconnect(e){const t=this.observers.get(e);this.connectQueue.delete(e),t!=null&&(this.intersectionObserver?.unobserve(e),this.observers.delete(e),this.instancesChanged.delete(t),this.reconcileQueue.delete(t),this.visibleInstances.delete(e)&&(this.visibleInstancesDirty=!0),this.markDOMDirty(),h(this.computeRenderRangeAndEmit))}handleWindowResize=()=>{f.__STOP||window.innerHeight===this.height||(this.heightDirty=!0,h(this.computeRenderRangeAndEmit))};handleWindowScroll=()=>{f.__STOP||this.root==null||!(this.root instanceof Document)||(this.scrollDirty=!0,h(this.computeRenderRangeAndEmit))};handleElementScroll=()=>{f.__STOP||this.root==null||this.root instanceof Document||(this.scrollDirty=!0,h(this.computeRenderRangeAndEmit))};computeRenderRangeAndEmit=()=>{if(f.__STOP)return;const e=this.heightDirty||this.scrollHeightDirty;let t=this.instancesChanged.size>0;if(this.instancesChanged.size===0){const n=S({scrollTop:this.getScrollTop(),height:this.getHeight(),scrollHeight:this.getScrollHeight(),overscrollSize:this.config.overscrollSize});if(!e&&E(this.windowSpecs,n)&&this.renderedObservers===this.observers.size&&!this.visibleInstancesDirty&&this.reconcileQueue.size===0)return;this.windowSpecs=n}this.visibleInstancesDirty=!1,this.renderedObservers=this.observers.size;const s=this.getScrollAnchor(this.height),i=new Set;for(const n of e?this.observers.values():this.visibleInstances.values())n.onRender(e)&&i.add(n);for(const n of this.instancesChanged)i.has(n)||n.onRender(e)&&i.add(n);this.scrollFix(s);for(const n of i)this.reconcileQueue.delete(n),n.reconcileHeights();for(const n of this.reconcileQueue)n.reconcileHeights()&&(t=!0);this.reconcileQueue.clear(),t||=this.instancesChanged.size>0,t&&this.markDOMDirty(),(t||e)&&h(this.computeRenderRangeAndEmit),i.clear(),this.instancesChanged.clear()};scrollFix(e){if(e==null)return;const t=this.getScrollContainerElement(),{lineIndex:s,lineOffset:i,fileElement:n,fileOffset:o,fileTypeOffset:l}=e;if(s!=null&&i!=null){const c=n.shadowRoot?.querySelector(`[data-line][data-line-index="${s}"]`);if(c instanceof HTMLElement){const a=g(c,t);if(a!==i){const d=a-i;this.applyScrollFix(d)}return}}const r=g(n,t);if(l==="top")r!==o&&this.applyScrollFix(r-o);else{const c=r+n.getBoundingClientRect().height;c!==o&&this.applyScrollFix(c-o)}}applyScrollFix(e){this.root==null||this.root instanceof Document?window.scrollTo({top:window.scrollY+e,behavior:"instant"}):this.root.scrollTo({top:this.root.scrollTop+e,behavior:"instant"}),this.markDOMDirty()}getScrollAnchor(e){const t=this.getScrollContainerElement();let s;for(const[i]of this.visibleInstances.entries()){const n=g(i,t),o=n+i.offsetHeight;let l,r;o<=0?(l=o,r="bottom"):(l=n,r="top");let c,a;if(o>0&&n<e)for(const p of i.shadowRoot?.querySelectorAll("[data-line][data-line-index]")??[]){if(!(p instanceof HTMLElement))continue;const v=p.dataset.lineIndex;if(v==null)continue;const b=g(p,t);if(!(b<0)){c=v,a=b;break}}if(s?.lineOffset!=null&&a==null)continue;let d=!1;(s==null||a!=null&&(s.lineOffset==null||a<s.lineOffset)||a==null&&s.lineOffset==null&&(l>=0&&(s.fileOffset<0||l<s.fileOffset)||l<0&&s.fileOffset<0&&l>s.fileOffset))&&(d=!0),d&&(s={fileElement:i,fileTypeOffset:r,fileOffset:l,lineIndex:c,lineOffset:a})}return s}handleIntersectionChange=e=>{this.scrollDirty=!0;for(const{target:t,isIntersecting:s}of e){if(!(t instanceof HTMLElement))throw new Error("Virtualizer.handleIntersectionChange: target not an HTMLElement");const i=this.observers.get(t);i!=null&&(s&&!this.visibleInstances.has(t)?(i.setVisibility(!0),this.visibleInstances.set(t,i),this.visibleInstancesDirty=!0):!s&&this.visibleInstances.has(t)&&(i.setVisibility(!1),this.visibleInstances.delete(t),this.visibleInstancesDirty=!0))}this.visibleInstancesDirty&&h(this.computeRenderRangeAndEmit)};getScrollTop(){if(!this.scrollDirty)return this.scrollTop;this.scrollDirty=!1;let e=this.root==null?0:this.root instanceof Document?window.scrollY:this.root.scrollTop;return e=this.clampScrollTop(e),this.scrollTop=e,e}scrollTo({top:e,behavior:t="auto"}){const{root:s}=this;if(s==null)return;const i=this.clampScrollTop(e);s instanceof Document?window.scrollTo({top:i,behavior:t}):s.scrollTo({top:i,behavior:t}),this.scrollDirty=!0,h(this.computeRenderRangeAndEmit)}clampScrollTop(e){return Math.max(0,Math.min(e,this.getScrollHeight()-this.getHeight()))}getScrollHeight(){return this.scrollHeightDirty?(this.scrollHeightDirty=!1,this.scrollHeight=this.root==null?0:this.root instanceof Document?this.root.documentElement.scrollHeight:this.root.scrollHeight,this.scrollHeight):this.scrollHeight}getHeight(){return this.heightDirty?(this.heightDirty=!1,this.height=this.root==null?0:this.root instanceof Document?globalThis.innerHeight:this.root.getBoundingClientRect().height,this.height):this.height}markDOMDirty(){this.scrollDirty=!0,this.scrollHeightDirty=!0,this.heightDirty=!0}getScrollContainerElement(){return this.root==null||this.root instanceof Document?void 0:this.root}};function g(u,e){const t=u.getBoundingClientRect(),s=e?.getBoundingClientRect().top??0;return t.top-s}export{I as V};
1
+ import{q as h,d as w}from"./parseDiffFromFile-BSmRvd3V.js";function S({scrollTop:u,scrollHeight:e,height:t,fitPerfectly:s=!1,fitPerfectlyOverscroll:i=0,overscrollSize:n}){const o=t+n*2,l=s?t+i*2:o;if(e=Math.max(e,l),o>=e||s){const a=Math.max(u-i,0),d=Math.min(u+l,e);return{top:a,bottom:Math.max(d,a)}}let r=u+t/2-o/2,c=r+o;return r<0&&(r=0),c>e&&(c=e),r=Math.floor(Math.max(r,0)),{top:r,bottom:Math.ceil(Math.max(Math.min(c,e),r))}}function E(u,e){return u==null||e==null?u===e:u.top===e.top&&u.bottom===e.bottom}const D=1e3,O=D*4,R=[0,1e-6,.99999,1],y={overscrollSize:D,intersectionObserverMargin:O,resizeDebugging:!1};let m=0,T=-1;var I=class f{static __STOP=!1;static __lastScrollPosition=0;__id=`virtualizer-${++T}`;config;type="simple";intersectionObserver;scrollTop=0;height=0;scrollHeight=0;windowSpecs={top:0,bottom:0};root;contentContainer;resizeObserver;observers=new Map;visibleInstances=new Map;visibleInstancesDirty=!1;instancesChanged=new Set;reconcileQueue=new Set;scrollDirty=!0;heightDirty=!0;scrollHeightDirty=!0;renderedObservers=0;connectQueue=new Map;constructor(e){this.config={...y,...e}}setup(e,t){if(this.root==null){this.root=e,this.resizeObserver=new ResizeObserver(this.handleContainerResize),this.intersectionObserver=new IntersectionObserver(this.handleIntersectionChange,{root:this.root,threshold:R,rootMargin:`${this.config.intersectionObserverMargin}px 0px ${this.config.intersectionObserverMargin}px 0px`}),e instanceof Document?this.setupWindow():this.setupElement(t),window.__INSTANCE=this,window.__TOGGLE=()=>{f.__STOP?(f.__STOP=!1,(this.getScrollContainerElement()??window).scrollTo({top:f.__lastScrollPosition}),h(this.computeRenderRangeAndEmit)):(f.__lastScrollPosition=this.getScrollTop(),f.__STOP=!0)};for(const[s,i]of this.connectQueue.entries())this.connect(s,i);this.connectQueue.clear(),this.markDOMDirty(),h(this.computeRenderRangeAndEmit)}}instanceChanged(e,t){this.instancesChanged.add(e),t&&this.markDOMDirty(),h(this.computeRenderRangeAndEmit)}requestHeightReconcile(e){this.reconcileQueue.add(e),h(this.computeRenderRangeAndEmit)}getWindowSpecs(){return this.windowSpecs.top===0&&this.windowSpecs.bottom===0&&(this.windowSpecs=S({scrollTop:this.getScrollTop(),height:this.getHeight(),scrollHeight:this.getScrollHeight(),overscrollSize:this.config.overscrollSize})),this.windowSpecs}getRoot(){return this.root}isInstanceVisible(e,t){const s=this.getScrollTop(),i=this.getHeight(),n=this.config.intersectionObserverMargin,o=s-n,l=s+i+n;return!(e<o-t||e>l)}handleContainerResize=e=>{if(this.root==null)return;let t=!1;for(const s of e){const i=s.borderBoxSize[0].blockSize;this.root instanceof Document?i!==this.scrollHeight&&(this.scrollHeightDirty=!0,t=!0,this.config.resizeDebugging&&(console.log("Virtualizer: content size change",this.__id,{sizeChange:i-m,newSize:i}),m=i)):s.target===this.root?i!==this.height&&(this.heightDirty=!0,t=!0):s.target===this.contentContainer&&(this.scrollHeightDirty=!0,t=!0,this.config.resizeDebugging&&(console.log("Virtualizer: scroller size change",this.__id,{sizeChange:i-m,newSize:i}),m=i))}t&&h(this.computeRenderRangeAndEmit)};setupWindow(){if(this.root==null||!(this.root instanceof Document))throw new Error("Virtualizer.setupWindow: Invalid setup method");window.addEventListener("scroll",this.handleWindowScroll,{passive:!0}),window.addEventListener("resize",this.handleWindowResize,{passive:!0}),this.resizeObserver?.observe(this.root.documentElement)}setupElement(e){if(this.root==null||this.root instanceof Document)throw new Error("Virtualizer.setupElement: Invalid setup method");this.root.addEventListener("scroll",this.handleElementScroll,{passive:!0}),this.resizeObserver?.observe(this.root),e??=this.root.firstElementChild??void 0,e instanceof HTMLElement&&(this.contentContainer=e,this.resizeObserver?.observe(e))}cleanUp(){w(this.computeRenderRangeAndEmit),this.resizeObserver?.disconnect(),this.resizeObserver=void 0,this.intersectionObserver?.disconnect(),this.intersectionObserver=void 0,this.root?.removeEventListener("scroll",this.handleElementScroll),window.removeEventListener("scroll",this.handleWindowScroll),window.removeEventListener("resize",this.handleWindowResize),this.root=void 0,this.contentContainer=void 0,this.observers.clear(),this.visibleInstances.clear(),this.instancesChanged.clear(),this.reconcileQueue.clear(),this.connectQueue.clear(),this.visibleInstancesDirty=!1,this.windowSpecs={top:0,bottom:0},this.scrollTop=0,this.height=0,this.scrollHeight=0,this.scrollDirty=!0,this.heightDirty=!0,this.scrollHeightDirty=!0}getOffsetInScrollContainer(e){return this.getScrollTop()+g(e,this.getScrollContainerElement())}connect(e,t){if(this.observers.has(e))throw new Error("Virtualizer.connect: instance is already connected...");return this.intersectionObserver==null?this.connectQueue.set(e,t):(this.intersectionObserver.observe(e),this.observers.set(e,t),this.instancesChanged.add(t),this.markDOMDirty(),h(this.computeRenderRangeAndEmit)),()=>this.disconnect(e)}disconnect(e){const t=this.observers.get(e);this.connectQueue.delete(e),t!=null&&(this.intersectionObserver?.unobserve(e),this.observers.delete(e),this.instancesChanged.delete(t),this.reconcileQueue.delete(t),this.visibleInstances.delete(e)&&(this.visibleInstancesDirty=!0),this.markDOMDirty(),h(this.computeRenderRangeAndEmit))}handleWindowResize=()=>{f.__STOP||window.innerHeight===this.height||(this.heightDirty=!0,h(this.computeRenderRangeAndEmit))};handleWindowScroll=()=>{f.__STOP||this.root==null||!(this.root instanceof Document)||(this.scrollDirty=!0,h(this.computeRenderRangeAndEmit))};handleElementScroll=()=>{f.__STOP||this.root==null||this.root instanceof Document||(this.scrollDirty=!0,h(this.computeRenderRangeAndEmit))};computeRenderRangeAndEmit=()=>{if(f.__STOP)return;const e=this.heightDirty||this.scrollHeightDirty;let t=this.instancesChanged.size>0;if(this.instancesChanged.size===0){const n=S({scrollTop:this.getScrollTop(),height:this.getHeight(),scrollHeight:this.getScrollHeight(),overscrollSize:this.config.overscrollSize});if(!e&&E(this.windowSpecs,n)&&this.renderedObservers===this.observers.size&&!this.visibleInstancesDirty&&this.reconcileQueue.size===0)return;this.windowSpecs=n}this.visibleInstancesDirty=!1,this.renderedObservers=this.observers.size;const s=this.getScrollAnchor(this.height),i=new Set;for(const n of e?this.observers.values():this.visibleInstances.values())n.onRender(e)&&i.add(n);for(const n of this.instancesChanged)i.has(n)||n.onRender(e)&&i.add(n);this.scrollFix(s);for(const n of i)this.reconcileQueue.delete(n),n.reconcileHeights();for(const n of this.reconcileQueue)n.reconcileHeights()&&(t=!0);this.reconcileQueue.clear(),t||=this.instancesChanged.size>0,t&&this.markDOMDirty(),(t||e)&&h(this.computeRenderRangeAndEmit),i.clear(),this.instancesChanged.clear()};scrollFix(e){if(e==null)return;const t=this.getScrollContainerElement(),{lineIndex:s,lineOffset:i,fileElement:n,fileOffset:o,fileTypeOffset:l}=e;if(s!=null&&i!=null){const c=n.shadowRoot?.querySelector(`[data-line][data-line-index="${s}"]`);if(c instanceof HTMLElement){const a=g(c,t);if(a!==i){const d=a-i;this.applyScrollFix(d)}return}}const r=g(n,t);if(l==="top")r!==o&&this.applyScrollFix(r-o);else{const c=r+n.getBoundingClientRect().height;c!==o&&this.applyScrollFix(c-o)}}applyScrollFix(e){this.root==null||this.root instanceof Document?window.scrollTo({top:window.scrollY+e,behavior:"instant"}):this.root.scrollTo({top:this.root.scrollTop+e,behavior:"instant"}),this.markDOMDirty()}getScrollAnchor(e){const t=this.getScrollContainerElement();let s;for(const[i]of this.visibleInstances.entries()){const n=g(i,t),o=n+i.offsetHeight;let l,r;o<=0?(l=o,r="bottom"):(l=n,r="top");let c,a;if(o>0&&n<e)for(const p of i.shadowRoot?.querySelectorAll("[data-line][data-line-index]")??[]){if(!(p instanceof HTMLElement))continue;const v=p.dataset.lineIndex;if(v==null)continue;const b=g(p,t);if(!(b<0)){c=v,a=b;break}}if(s?.lineOffset!=null&&a==null)continue;let d=!1;(s==null||a!=null&&(s.lineOffset==null||a<s.lineOffset)||a==null&&s.lineOffset==null&&(l>=0&&(s.fileOffset<0||l<s.fileOffset)||l<0&&s.fileOffset<0&&l>s.fileOffset))&&(d=!0),d&&(s={fileElement:i,fileTypeOffset:r,fileOffset:l,lineIndex:c,lineOffset:a})}return s}handleIntersectionChange=e=>{this.scrollDirty=!0;for(const{target:t,isIntersecting:s}of e){if(!(t instanceof HTMLElement))throw new Error("Virtualizer.handleIntersectionChange: target not an HTMLElement");const i=this.observers.get(t);i!=null&&(s&&!this.visibleInstances.has(t)?(i.setVisibility(!0),this.visibleInstances.set(t,i),this.visibleInstancesDirty=!0):!s&&this.visibleInstances.has(t)&&(i.setVisibility(!1),this.visibleInstances.delete(t),this.visibleInstancesDirty=!0))}this.visibleInstancesDirty&&h(this.computeRenderRangeAndEmit)};getScrollTop(){if(!this.scrollDirty)return this.scrollTop;this.scrollDirty=!1;let e=this.root==null?0:this.root instanceof Document?window.scrollY:this.root.scrollTop;return e=this.clampScrollTop(e),this.scrollTop=e,e}scrollTo({top:e,behavior:t="auto"}){const{root:s}=this;if(s==null)return;const i=this.clampScrollTop(e);s instanceof Document?window.scrollTo({top:i,behavior:t}):s.scrollTo({top:i,behavior:t}),this.scrollDirty=!0,h(this.computeRenderRangeAndEmit)}clampScrollTop(e){return Math.max(0,Math.min(e,this.getScrollHeight()-this.getHeight()))}getScrollHeight(){return this.scrollHeightDirty?(this.scrollHeightDirty=!1,this.scrollHeight=this.root==null?0:this.root instanceof Document?this.root.documentElement.scrollHeight:this.root.scrollHeight,this.scrollHeight):this.scrollHeight}getHeight(){return this.heightDirty?(this.heightDirty=!1,this.height=this.root==null?0:this.root instanceof Document?globalThis.innerHeight:this.root.getBoundingClientRect().height,this.height):this.height}markDOMDirty(){this.scrollDirty=!0,this.scrollHeightDirty=!0,this.heightDirty=!0}getScrollContainerElement(){return this.root==null||this.root instanceof Document?void 0:this.root}};function g(u,e){const t=u.getBoundingClientRect(),s=e?.getBoundingClientRect().top??0;return t.top-s}export{I as V};
@@ -1 +1 @@
1
- import{f as $o,r as p,j as t}from"./vendor-react-BUCujlKS.js";import{u as nr,b3 as ir,b4 as Do,aE as ar,b5 as lr,aD as lo,b6 as cr,b7 as ur,b8 as mr,b9 as pr,ah as tt,ba as Ko,bb as Ho,bc as it,bd as dr,N as at,be as hr,bf as co,bg as Vo,B as lt,I,b0 as fr,bh as gr,aS as xr,bi as br,aT as kr,bj as Sr,aR as vr,W as wr,X as yr,V as Cr}from"./useAppFontEffects-d9vsRNKm.js";import{u as ct,a8 as Uo,a9 as jr,aa as Rr}from"./katex.min-u4DtE8E5.js";import{u as Xo,a as _r,b as Nr,c as Pr,B as Tr,C as Or,P as Wr}from"./PullRequestComparisonSelector-DOW9_VlK.js";import{u as Ir,a as Ar,D as qr}from"./useDiffFindSurface-sw5jZ-9V.js";import{e as Br,b as Er,U as Dr,u as Mr,W as Lr,a as zr,c as Gr,d as Fr,f as Kr,g as Hr,h as Vr,i as Ur,j as Xr,k as Jr,l as $r}from"./useWalkthroughReview-D7I1H6_J.js";import{u as Qr,c as Yr,N as Zr,d as es,M as ts,e as os,C as rs}from"./runtimeEndpointReset-BJUtkqal.js";import{P as ss,e as ns,f as is,g as as,h as ls}from"./vendor-base-ui-CPKyhvxM.js";import"./vendor-scheduler-7OC5HNn7.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-use-sync-external-store-D6wYuSt-.js";import"./vendor-tailwind-merge-CPcsbTWB.js";import"./vendor-fuse.js-Dw8P0qyA.js";import"./vendor-opencode-client-h8RufjAw.js";import"./parseDiffFromFile-C9ASoy7R.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-diff-C3JhlQdm.js";import"./PierreDiffViewer-Ck0P8Q2W.js";import"./isDiffPlainText-DMFSMXcK.js";import"./pierreDiffTint-IfgQ6oty.js";import"./Virtualizer-B8rX50qD.js";import"./useInlineCommentController-Cw5IRM5Y.js";import"./appThemeRegistry-CnS_OWEL.js";import"./textMateThemeFromAppTheme-Bye_bpEL.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"./useCallableModelProviders-8CrUkERW.js";import"./ChangedPathLabel-CQNGnF-T.js";const cs=s=>{const e=$o.c(22),{view:c,renderSideBySide:ut,visible:m,rootRef:r,selectStop:A,markStopActive:rt}=s;let E;e[0]!==c?(E=c?Br(c):[],e[0]=c,e[1]=E):E=e[1];const D=E,M=ut?"side-by-side":"inline";let q;e[2]!==M||e[3]!==D?(q=Er(D,M),e[2]=M,e[3]=D,e[4]=q):q=e[4];const B=q;let L;e[5]!==B?(L={sources:B},e[5]=B,e[6]=L):L=e[6];const N=Ir(L);let o;e[7]!==D?(o=new Map(D.map(us)),e[7]=D,e[8]=o):o=e[8];const z=o,[G,mt]=p.useState(0);let te;e[9]!==rt||e[10]!==z||e[11]!==A?(te=(P,J)=>{const K=z.get(P.filePath);if(K){if(K.stopId===Dr){J||mt(ms);return}J?rt(K.stopId):A(K.stopId)}},e[9]=rt,e[10]=z,e[11]=A,e[12]=te):te=e[12];const O=te;let F;e[13]!==N||e[14]!==O||e[15]!==r||e[16]!==m?(F={find:N,visible:m,rootRef:r,reveal:O},e[13]=N,e[14]=O,e[15]=r,e[16]=m,e[17]=F):F=e[17];const oe=Ar(F);let S;return e[18]!==N||e[19]!==oe||e[20]!==G?(S={find:N,uncoveredOpenRequest:G,...oe},e[18]=N,e[19]=oe,e[20]=G,e[21]=S):S=e[21],S};function us(s){return[s.key,s]}function ms(s){return s+1}const ps=["all","staged","working"],Jo=720,ot=180,Mo=.5,ds={steps:["data-walkthrough-header-compact","data-walkthrough-header-tight","data-walkthrough-header-minimal","data-walkthrough-header-narrow"]},Yi=s=>{const e=$o.c(312),{directory:c,visible:ut}=s,m=ut===void 0?!0:ut,{t:r}=nr(),A=p.useRef(null),rt=Qr(),[E,D]=p.useState(0);let M;e[0]!==m?(M={enabled:m},e[0]=m,e[1]=M):M=e[1];const{rootIsGitRepo:q,gitDirectory:B,nestedRepos:L,repositoryOptions:N}=ir(c||null,M),o=B??c;let z,G;e[2]===Symbol.for("react.memo_cache_sentinel")?(z=()=>{const n=A.current;if(!n||typeof ResizeObserver>"u")return;const k=new ResizeObserver(Z=>{D(Z[0]?.contentRect.width??0)});return k.observe(n),()=>k.disconnect()},G=[],e[2]=z,e[3]=G):(z=e[2],G=e[3]),p.useEffect(z,G);const mt=p.useRef(null);Yr(mt,ds);const te=ct(hs),O=ct(fs),[F,oe]=p.useState(!1),S=E===0||E>=Jo,P=Math.min(Math.max(te,ot),Math.max(ot,(E||Jo)*Mo));let J;e[4]!==O||e[5]!==P?(J=n=>{n.preventDefault();const k=n.clientX,Z=P,ee=Uo(n.currentTarget)?-1:1,Eo=Math.max(ot,(A.current?.clientWidth??0)*Mo);oe(!0);const Fo=rr=>{const sr=Math.min(Eo,Math.max(ot,Z+(rr.clientX-k)*ee));O(sr)},ao=()=>{oe(!1),window.removeEventListener("pointermove",Fo),window.removeEventListener("pointerup",ao),window.removeEventListener("pointercancel",ao)};window.addEventListener("pointermove",Fo),window.addEventListener("pointerup",ao),window.addEventListener("pointercancel",ao)},e[4]=O,e[5]=P,e[6]=J):J=e[6];const K=J;let pt;e[7]!==O||e[8]!==P?(pt=n=>{const k=n.shiftKey?40:10,Z=Uo(n.currentTarget)?-1:1,ee=(n.key==="ArrowLeft"?-k:n.key==="ArrowRight"?k:0)*Z;if(ee===0)return;n.preventDefault();const Eo=Math.max(ot,(A.current?.clientWidth??0)*Mo);O(Math.min(Eo,Math.max(ot,P+ee)))},e[7]=O,e[8]=P,e[9]=pt):pt=e[9];const uo=pt,[$,Qo]=p.useState("all"),[re,H]=p.useState(null),Yo=ct(gs),mo=ct(xs),se=Yo==="side-by-side";let dt;e[10]!==o?(dt=n=>n.getRequestedTarget(o),e[10]=o,e[11]=dt):dt=e[11];const f=Do(dt),V=Do(bs),po=ct(ks),ho=ar()??c,Zo=lr(o||null),ht=lo(Ss),[er,tr]=p.useState(0);let ft,gt;e[12]!==o||e[13]!==ht?(ft=()=>jr(n=>{n===Rr(o,ht)&&tr(vs)}),gt=[o,ht],e[12]=o,e[13]=ht,e[14]=ft,e[15]=gt):(ft=e[14],gt=e[15]),p.useEffect(ft,gt);const ne=cr(o||null),fo=Xo(ws),go=Xo(ys),xt=lo(Cs),{sourceControl:st,git:bt}=ur(),g=mr(o,st);let kt,St;e[16]!==o||e[17]!==xt||e[18]!==bt||e[19]!==m?(kt=()=>{m&&o&&xt(o,bt)},St=[o,xt,bt,m],e[16]=o,e[17]=xt,e[18]=bt,e[19]=m,e[20]=kt,e[21]=St):(kt=e[20],St=e[21]),p.useEffect(kt,St);const a=Zo?.current??null,ie=re?.directory===o&&re.kind==="commit"&&!f,v=ie||f?.source.kind==="commit",Lo=f?.source.kind==="commit"?f.source.hash:void 0,x=_r(o||null,a,m&&v,Lo),w=x.selectedCommit?.hash??Lo??null;let vt;e[22]!==g.read?.repository.remotes?(vt=new Set(g.read?.repository.remotes.map(js)??[]),e[22]=g.read?.repository.remotes,e[23]=vt):vt=e[23];const xo=vt,bo=g.contexts[0]?.primaryRemote,ko=g.contexts[0]??null;let wt;e[24]!==ne||e[25]!==xo||e[26]!==bo||e[27]!==ko?(wt={branches:ne,remoteNames:xo,primaryRemote:bo,readContext:ko},e[24]=ne,e[25]=xo,e[26]=bo,e[27]=ko,e[28]=wt):wt=e[28];const{base:Q,source:So,resolved:vo,revision:or}=Nr(o||null,a,m,wt);let yt;e[29]!==Q||e[30]!==a?(yt=a&&Q?{kind:"branch",baseRef:Q,headRef:a}:null,e[29]=Q,e[30]=a,e[31]=yt):yt=e[31];const y=yt,Y=pr(Rs),Ct=tt(_s),jt=tt(Ns),Rt=tt(Ps),_t=tt(Ts),Nt=tt(Os),ae=p.useId(),Pt=tt(Ws);let Tt,Ot;e[32]!==Rt||e[33]!==g.contexts||e[34]!==g.scope.runtimeKey||e[35]!==_t||e[36]!==o||e[37]!==Nt||e[38]!==Y||e[39]!==ae?(Tt=()=>{if(!o)return;const n=g.scope.runtimeKey,k=Rt(n,o,ae),Z=g.contexts.filter(ee=>Ho(Y[Ko(ee)],ee).connected);return _t(n,o,ae,k,Z),()=>{Nt(n,o,ae)}},Ot=[Rt,g.contexts,g.scope.runtimeKey,_t,o,Nt,Y,ae],e[32]=Rt,e[33]=g.contexts,e[34]=g.scope.runtimeKey,e[35]=_t,e[36]=o,e[37]=Nt,e[38]=Y,e[39]=ae,e[40]=Tt,e[41]=Ot):(Tt=e[40],Ot=e[41]),p.useEffect(Tt,Ot);const l=g.contexts[0]??null;let Wt;e[42]!==l||e[43]!==Y?(Wt=l?Y[Ko(l)]:void 0,e[42]=l,e[43]=Y,e[44]=Wt):Wt=e[44];const wo=Wt;let It;e[45]!==wo||e[46]!==l?(It=l?Ho(wo,l):{authChecked:!1,connected:!1},e[45]=wo,e[46]=l,e[47]=It):It=e[47];const U=It;let At,qt;e[48]!==a||e[49]!==Ct||e[50]!==U.authChecked||e[51]!==U.connected||e[52]!==l||e[53]!==Pt||e[54]!==jt||e[55]!==st?(At=()=>{if(!l||!a)return;const n=gr(l,a);Ct(n),jt(n,{directory:l.directory,branch:a,remoteName:l.primaryRemote,canShow:!0,identity:l,readContext:l,sourceControl:st,authChecked:U.authChecked,connected:U.connected}),Pt([{context:l,branch:a}])},qt=[a,Ct,l,U.authChecked,U.connected,Pt,jt,st],e[48]=a,e[49]=Ct,e[50]=U.authChecked,e[51]=U.connected,e[52]=l,e[53]=Pt,e[54]=jt,e[55]=st,e[56]=At,e[57]=qt):(At=e[56],qt=e[57]),p.useEffect(At,qt);const nt=re?.directory===o&&re.kind==="pr"&&!f,d=nt||f?.source.kind==="pr",C=Pr(o||null,a,l,m&&d,f?.source.kind==="pr"?f.source:void 0),b=C.selectedSource,W=l?.provider==="github"||l?.provider==="gitlab",T=C.provider;let Bt;e[58]!==y||e[59]!==v||e[60]!==d||e[61]!==l||e[62]!==W||e[63]!==f||e[64]!==$||e[65]!==w||e[66]!==b?(Bt=d&&b&&W&&l?{source:b,context:l}:v&&w?{source:{kind:"commit",hash:w}}:f?.source.kind==="branch"?{source:y??f.source}:f??{source:{kind:"working-tree",scope:$}},e[58]=y,e[59]=v,e[60]=d,e[61]=l,e[62]=W,e[63]=f,e[64]=$,e[65]=w,e[66]=b,e[67]=Bt):Bt=e[67];const Et=Bt,j=Et.source,le=re?.directory===o&&re.kind==="branch"&&!f,X=le||j.kind==="branch",Dt=le||j.kind==="branch"&&!y,Mt=ie||v&&!w,Lt=d&&!b,yo=Dt||Mt||Lt;let zt;e[68]!==V||e[69]!==o?(zt=n=>{H(null),V(o),Qo(n)},e[68]=V,e[69]=o,e[70]=zt):zt=e[70];const Co=zt,h=Do(Is);let Gt,Ft;e[71]!==nt||e[72]!==o||e[73]!==l||e[74]!==W||e[75]!==h||e[76]!==b?(Gt=()=>{!nt||!b||!W||!l||(h(o,{source:b,context:l}),H(null))},Ft=[nt,o,l,W,h,b],e[71]=nt,e[72]=o,e[73]=l,e[74]=W,e[75]=h,e[76]=b,e[77]=Gt,e[78]=Ft):(Gt=e[77],Ft=e[78]),p.useEffect(Gt,Ft);let Kt,Ht;e[79]!==y||e[80]!==le||e[81]!==o||e[82]!==h?(Kt=()=>{!le||!y||(h(o,{source:y}),H(null))},Ht=[y,le,o,h],e[79]=y,e[80]=le,e[81]=o,e[82]=h,e[83]=Kt,e[84]=Ht):(Kt=e[83],Ht=e[84]),p.useEffect(Kt,Ht);let Vt,Ut;e[85]!==ie||e[86]!==o||e[87]!==h||e[88]!==w?(Vt=()=>{!ie||!w||(h(o,{source:{kind:"commit",hash:w}}),H(null))},Ut=[ie,o,h,w],e[85]=ie,e[86]=o,e[87]=h,e[88]=w,e[89]=Vt,e[90]=Ut):(Vt=e[89],Ut=e[90]),p.useEffect(Vt,Ut);const jo=j.kind==="branch"?or:"",Ro=j.kind==="pr"?er:0;let ce;e[91]!==Ro||e[92]!==jo?(ce=JSON.stringify([jo,Ro]),e[91]=Ro,e[92]=jo,e[93]=ce):ce=e[93];let Xt;e[94]!==o||e[95]!==yo||e[96]!==ce||e[97]!==Et||e[98]!==m?(Xt={directory:o,target:Et,visible:m,needsSourceSelection:yo,revision:ce},e[94]=o,e[95]=yo,e[96]=ce,e[97]=Et,e[98]=m,e[99]=Xt):Xt=e[99];const i=Mr(Xt),{view:u}=i;let Jt;e[100]!==se||e[101]!==i.handleActiveStopChange||e[102]!==i.handleSelectStop||e[103]!==u||e[104]!==m?(Jt={view:u,renderSideBySide:se,visible:m,rootRef:A,selectStop:i.handleSelectStop,markStopActive:i.handleActiveStopChange},e[100]=se,e[101]=i.handleActiveStopChange,e[102]=i.handleSelectStop,e[103]=u,e[104]=m,e[105]=Jt):Jt=e[105];const R=cs(Jt),_=R.find,[_o,zo]=p.useState(!1),[No,Go]=p.useState(!1),Po=d?"pr":v?"commit":X?"branch":j.kind==="working-tree"?j.scope:j.kind;let $t;e[106]!==T||e[107]!==X||e[108]!==v||e[109]!==d||e[110]!==$||e[111]!==j.kind||e[112]!==j.number||e[113]!==r?($t=d?r(it("session.githubIntegration.tabs.pullRequests",T)):v?r("commitComparison.mode"):X?r("walkthrough.scope.branch"):j.kind==="pr"?r(it("walkthrough.scope.pullRequest",T),{number:j.number}):r($==="all"?"walkthrough.scope.all":$==="staged"?"walkthrough.scope.staged":"walkthrough.scope.working"),e[106]=T,e[107]=X,e[108]=v,e[109]=d,e[110]=$,e[111]=j.kind,e[112]=j.number,e[113]=r,e[114]=$t):$t=e[114];const ue=$t;let Qt;e[115]!==po||e[116]!==ho||e[117]!==c?(Qt=()=>po(ho,{mode:"diff",diffScope:"pr",targetDirectory:c}),e[115]=po,e[116]=ho,e[117]=c,e[118]=Qt):Qt=e[118];const Yt=Qt,me=!!(u||i.blocked),To=d?"git-pull-request":v?"git-commit":X?"git-branch":"file-edit",Zt=dr(B||null),Oo=lo(As),Wo=lo(qs);if(q===!1&&Zt!==!0){let n;e[119]!==Oo||e[120]!==c?(n=()=>{c&&Oo(c,{force:!0})},e[119]=Oo,e[120]=c,e[121]=n):n=e[121];let k;return e[122]!==Zt||e[123]!==L||e[124]!==c||e[125]!==q||e[126]!==n?(k=t.jsx(Zr,{root:c,rootIsGitRepo:q,resolvedIsGitRepo:Zt,nestedRepos:L,onRetryDiscovery:n}),e[122]=Zt,e[123]=L,e[124]=c,e[125]=q,e[126]=n,e[127]=k):k=e[127],k}const Io=rt?"flex-1 py-1 pe-1":"shrink-0 border-b border-border/60 px-3 py-2";let pe;e[128]!==Io?(pe=at("walkthrough-header flex min-w-0 flex-nowrap items-center gap-2 overflow-hidden",Io),e[128]=Io,e[129]=pe):pe=e[129];let de;e[130]!==B||e[131]!==N||e[132]!==c||e[133]!==Wo?(de=N?t.jsx("div",{className:"shrink-0",children:t.jsx(es,{repositories:N,selectedRepository:B??null,onSelectRepository:n=>{c&&Wo(c,n)},repositoryRoot:c??void 0})}):null,e[130]=B,e[131]=N,e[132]=c,e[133]=Wo,e[134]=de):de=e[134];let he;e[135]===Symbol.for("react.memo_cache_sentinel")?(he=at(hr(),"shrink-0"),e[135]=he):he=e[135];let fe;e[136]!==r?(fe=r("walkthrough.scope.selectorAria"),e[136]=r,e[137]=fe):fe=e[137];let ge;e[138]!==To?(ge=t.jsx(I,{name:To,className:"walkthrough-header__source-icon"}),e[138]=To,e[139]=ge):ge=e[139];let xe;e[140]!==ue?(xe=t.jsx("span",{className:"walkthrough-header__source-label",children:ue}),e[140]=ue,e[141]=xe):xe=e[141];let eo;e[142]===Symbol.for("react.memo_cache_sentinel")?(eo=t.jsx(I,{name:"arrow-down-s"}),e[142]=eo):eo=e[142];let be;e[143]!==ue||e[144]!==he||e[145]!==fe||e[146]!==ge||e[147]!==xe?(be=t.jsx(xr,{asChild:!0,children:t.jsxs("button",{type:"button",className:he,"aria-label":fe,title:ue,children:[ge,xe,eo]})}),e[143]=ue,e[144]=he,e[145]=fe,e[146]=ge,e[147]=xe,e[148]=be):be=e[148];let ke;e[149]!==y||e[150]!==V||e[151]!==o||e[152]!==h||e[153]!==Co?(ke=n=>{if(zo(!1),n==="commit"){V(o),H({directory:o,kind:"commit"});return}if(n==="branch"){y?(H(null),h(o,{source:y})):(V(o),H({directory:o,kind:"branch"}));return}if(n==="pr"){V(o),H({directory:o,kind:"pr"});return}Co(n)},e[149]=y,e[150]=V,e[151]=o,e[152]=h,e[153]=Co,e[154]=ke):ke=e[154];let Se;e[155]!==r?(Se=r("walkthrough.scope.group.workingTree"),e[155]=r,e[156]=Se):Se=e[156];let ve;e[157]!==Se?(ve=t.jsx(br,{className:ts,children:Se}),e[157]=Se,e[158]=ve):ve=e[158];let we;e[159]!==r?(we=ps.map(n=>t.jsx(co,{value:n,children:r(n==="all"?"walkthrough.scope.all":n==="staged"?"walkthrough.scope.staged":"walkthrough.scope.working")},n)),e[159]=r,e[160]=we):we=e[160];let ye;e[161]!==a||e[162]!==r?(ye=a&&t.jsxs(t.Fragment,{children:[t.jsx(Vo,{}),t.jsx(co,{value:"branch",children:r("walkthrough.scope.branch")})]}),e[161]=a,e[162]=r,e[163]=ye):ye=e[163];let to;e[164]===Symbol.for("react.memo_cache_sentinel")?(to=t.jsx(Vo,{}),e[164]=to):to=e[164];let Ce;e[165]!==r?(Ce=r("commitComparison.mode"),e[165]=r,e[166]=Ce):Ce=e[166];let je;e[167]!==Ce?(je=t.jsx(co,{value:"commit",children:Ce}),e[167]=Ce,e[168]=je):je=e[168];let Re;e[169]!==T||e[170]!==W||e[171]!==r?(Re=W&&t.jsx(co,{value:"pr",children:r(it("session.githubIntegration.tabs.pullRequests",T))}),e[169]=T,e[170]=W,e[171]=r,e[172]=Re):Re=e[172];let _e;e[173]!==Po||e[174]!==ke||e[175]!==ve||e[176]!==we||e[177]!==ye||e[178]!==je||e[179]!==Re?(_e=t.jsx(kr,{align:"start",className:"w-48",children:t.jsxs(Sr,{value:Po,onValueChange:ke,children:[ve,we,ye,to,je,Re]})}),e[173]=Po,e[174]=ke,e[175]=ve,e[176]=we,e[177]=ye,e[178]=je,e[179]=Re,e[180]=_e):_e=e[180];let Ne;e[181]!==_o||e[182]!==be||e[183]!==_e?(Ne=t.jsxs(vr,{open:_o,onOpenChange:zo,children:[be,_e]}),e[181]=_o,e[182]=be,e[183]=_e,e[184]=Ne):Ne=e[184];let Pe;e[185]!==ne?.all||e[186]!==go||e[187]!==Q||e[188]!==So||e[189]!==a||e[190]!==o||e[191]!==X||e[192]!==fo?(Pe=X&&t.jsx("div",{className:"min-w-0 shrink",children:t.jsx(Tr,{branches:ne?.all??[],currentBranch:a,base:Q,automatic:So!=="chosen",onSelect:n=>{o&&a&&fo(o,a,n)},onSelectAutomatic:()=>{o&&a&&go(o,a)}},JSON.stringify([o,a]))}),e[185]=ne?.all,e[186]=go,e[187]=Q,e[188]=So,e[189]=a,e[190]=o,e[191]=X,e[192]=fo,e[193]=Pe):Pe=e[193];let Te;e[194]!==x||e[195]!==a||e[196]!==o||e[197]!==v||e[198]!==w?(Te=v&&t.jsx("div",{className:"min-w-0 shrink",children:t.jsx(Or,{commits:x.commits,selectedHash:w,loading:x.loading,error:x.error,onSelect:x.select,onRefresh:()=>{x.refresh()}},JSON.stringify([o,a]))}),e[194]=x,e[195]=a,e[196]=o,e[197]=v,e[198]=w,e[199]=Te):Te=e[199];let Oe;e[200]!==a||e[201]!==o||e[202]!==d||e[203]!==C?(Oe=d&&t.jsx("div",{className:"min-w-0 shrink",children:t.jsx(Wr,{comparison:C},JSON.stringify([o,a]))}),e[200]=a,e[201]=o,e[202]=d,e[203]=C,e[204]=Oe):Oe=e[204];let We;e[205]!==d||e[206]!==Yt||e[207]!==b||e[208]!==r?(We=d&&b&&t.jsxs(lt,{variant:"ghost",size:"sm",className:"walkthrough-header__option","aria-label":r("contextPanel.mode.diff"),title:r("contextPanel.mode.diff"),onClick:Yt,children:[t.jsx(I,{name:"arrow-left-right",className:"size-4"}),t.jsx("span",{className:"walkthrough-header__label",children:r("contextPanel.mode.diff")})]}),e[205]=d,e[206]=Yt,e[207]=b,e[208]=r,e[209]=We):We=e[209];let Ie;e[210]!==r?(Ie=r("walkthrough.help.guide"),e[210]=r,e[211]=Ie):Ie=e[211];let oo;e[212]===Symbol.for("react.memo_cache_sentinel")?(oo=t.jsx(I,{name:"question",className:"size-4"}),e[212]=oo):oo=e[212];let Ae;e[213]!==Ie?(Ae=t.jsx(wr,{asChild:!0,children:t.jsx(lt,{type:"button",variant:"ghost",size:"sm",className:"walkthrough-header__option","aria-label":Ie,onClick:os,children:oo})}),e[213]=Ie,e[214]=Ae):Ae=e[214];let qe;e[215]!==r?(qe=r("walkthrough.help.guide"),e[215]=r,e[216]=qe):qe=e[216];let Be;e[217]!==qe?(Be=t.jsx(yr,{children:t.jsx("p",{className:"typography-micro leading-tight",children:qe})}),e[217]=qe,e[218]=Be):Be=e[218];let Ee;e[219]!==Ae||e[220]!==Be?(Ee=t.jsxs(Cr,{children:[Ae,Be]}),e[219]=Ae,e[220]=Be,e[221]=Ee):Ee=e[221];let De;e[222]!==me||e[223]!==i?(De=me&&t.jsxs(t.Fragment,{children:[t.jsx(Ur,{review:i,className:"walkthrough-header__option max-w-40"}),t.jsx(Xr,{review:i,className:"walkthrough-header__option walkthrough-header__model h-7 min-w-0 max-w-48"})]}),e[222]=me,e[223]=i,e[224]=De):De=e[224];let Me;e[225]!==i||e[226]!==S||e[227]!==r||e[228]!==u?(Me=u&&t.jsxs(t.Fragment,{children:[t.jsx(lt,{type:"button",variant:"ghost",size:"sm",className:"walkthrough-header__step-arrow","aria-label":r("walkthrough.action.previous"),onClick:()=>i.step(-1),children:t.jsx(I,{name:"arrow-right-s",className:"size-4 rotate-180"})}),!S&&t.jsx(Lr,{review:i,view:u}),t.jsx(lt,{type:"button",variant:"ghost",size:"sm",className:"walkthrough-header__step-arrow","aria-label":r("walkthrough.action.next"),onClick:()=>i.step(1),children:t.jsx(I,{name:"arrow-right-s",className:"size-4"})})]}),e[225]=i,e[226]=S,e[227]=r,e[228]=u,e[229]=Me):Me=e[229];let Le;e[230]!==me||e[231]!==i||e[232]!==u?(Le=(me||i.isGenerating)&&t.jsx(zr,{review:i,hasView:!!u,className:"walkthrough-header__generate",labelClassName:"walkthrough-header__label"}),e[230]=me,e[231]=i,e[232]=u,e[233]=Le):Le=e[233];let ze;e[234]!==r?(ze=r("walkthrough.options.moreAria"),e[234]=r,e[235]=ze):ze=e[235];let Ge;e[236]!==r?(Ge=r("walkthrough.options.moreAria"),e[236]=r,e[237]=Ge):Ge=e[237];let Fe;e[238]!==ze||e[239]!==Ge?(Fe=t.jsx(lt,{type:"button",variant:"ghost",size:"sm",className:"walkthrough-header__more data-[popup-open]:bg-interactive-hover","aria-label":ze,title:Ge}),e[238]=ze,e[239]=Ge,e[240]=Fe):Fe=e[240];let ro;e[241]===Symbol.for("react.memo_cache_sentinel")?(ro=t.jsx(I,{name:"more",className:"size-4"}),e[241]=ro):ro=e[241];let Ke;e[242]!==Fe?(Ke=t.jsx(ss,{render:Fe,children:ro}),e[242]=Fe,e[243]=Ke):Ke=e[243];let He;e[244]!==r?(He=r("walkthrough.options.title"),e[244]=r,e[245]=He):He=e[245];let so;e[246]===Symbol.for("react.memo_cache_sentinel")?(so=at(fr,"w-64 max-w-[calc(100vw-2rem)] p-3"),e[246]=so):so=e[246];const Ao=!!u,qo=d&&b?Yt:void 0;let no;e[247]===Symbol.for("react.memo_cache_sentinel")?(no=()=>Go(!1),e[247]=no):no=e[247];let Ve;e[248]!==i||e[249]!==Ao||e[250]!==qo?(Ve=t.jsx(Jr,{review:i,hasView:Ao,onOpenChanges:qo,onActed:no}),e[248]=i,e[249]=Ao,e[250]=qo,e[251]=Ve):Ve=e[251];let Ue;e[252]!==He||e[253]!==Ve?(Ue=t.jsx(ns,{children:t.jsx(is,{side:"bottom",align:"end",sideOffset:4,className:"z-50",children:t.jsx(as,{"aria-label":He,className:so,children:Ve})})}),e[252]=He,e[253]=Ve,e[254]=Ue):Ue=e[254];let Xe;e[255]!==No||e[256]!==Ke||e[257]!==Ue?(Xe=t.jsxs(ls,{open:No,onOpenChange:Go,children:[Ke,Ue]}),e[255]=No,e[256]=Ke,e[257]=Ue,e[258]=Xe):Xe=e[258];let Je;e[259]!==We||e[260]!==Ee||e[261]!==De||e[262]!==Me||e[263]!==Le||e[264]!==Xe?(Je=t.jsxs("div",{className:"ms-auto flex shrink-0 items-center gap-1",children:[We,Ee,De,Me,Le,Xe]}),e[259]=We,e[260]=Ee,e[261]=De,e[262]=Me,e[263]=Le,e[264]=Xe,e[265]=Je):Je=e[265];let $e;e[266]!==pe||e[267]!==de||e[268]!==Ne||e[269]!==Pe||e[270]!==Te||e[271]!==Oe||e[272]!==Je?($e=t.jsx(rs,{children:t.jsxs("header",{ref:mt,className:pe,children:[de,Ne,Pe,Te,Oe,Je]})}),e[266]=pe,e[267]=de,e[268]=Ne,e[269]=Pe,e[270]=Te,e[271]=Oe,e[272]=Je,e[273]=$e):$e=e[273];let Qe;e[274]!==i||e[275]!==u?(Qe=t.jsx($r,{review:i,view:u}),e[274]=i,e[275]=u,e[276]=Qe):Qe=e[276];const Bo=S?"flex-row":"flex-col";let Ye;e[277]!==Bo?(Ye=at("flex min-h-0 flex-1",Bo),e[277]=Bo,e[278]=Ye):Ye=e[278];let Ze;e[279]!==Dt||e[280]!==T||e[281]!==x.error||e[282]!==x.loading||e[283]!==Mt||e[284]!==vo||e[285]!==a||e[286]!==_||e[287]!==F||e[288]!==R.focusNonce||e[289]!==R.openOnWord||e[290]!==R.registerViewer||e[291]!==R.uncoveredOpenRequest||e[292]!==uo||e[293]!==K||e[294]!==C.error||e[295]!==C.loading||e[296]!==Lt||e[297]!==se||e[298]!==i||e[299]!==S||e[300]!==r||e[301]!==P||e[302]!==u||e[303]!==mo?(Ze=Lt?t.jsxs("div",{className:"flex flex-1 flex-col items-center justify-center gap-3 p-8 text-center",children:[!C.error&&!C.loading&&t.jsx(I,{name:"git-pull-request",className:"size-6 text-muted-foreground"}),t.jsx("p",{className:"typography-meta text-muted-foreground",children:C.error??(C.loading?r(it("session.githubPrPicker.loading.pullRequests",T)):r(it("pullRequestComparison.pickAbove",T)))})]}):Mt?t.jsx("div",{className:"flex flex-1 items-center justify-center gap-2 p-8 typography-meta text-muted-foreground",children:x.loading?t.jsx(I,{name:"loader-4",className:"size-6 animate-spin"}):x.error??r("commitComparison.noCommits")}):Dt?t.jsx("div",{className:"flex flex-1 flex-col items-center justify-center gap-3 p-8 text-center",children:!vo&&a?t.jsx(I,{name:"loader-4",className:"size-6 animate-spin text-muted-foreground"}):t.jsx("p",{className:"typography-meta text-muted-foreground",children:r("gitView.pr.toast.baseBranchRequired")})}):i.blocked?t.jsx(Gr,{reason:i.blocked.reason,model:i.blocked.model,requiredChars:i.blocked.requiredChars,availableChars:i.blocked.availableChars,onRetry:i.retry}):i.showStages?t.jsx("div",{className:"flex flex-1 flex-col items-center justify-center gap-3 p-8",children:t.jsx(Fr,{progress:i.stageProgress})}):u?t.jsxs(t.Fragment,{children:[S&&t.jsxs(t.Fragment,{children:[t.jsx(Kr,{view:u,activeStopId:i.activeStopId,visitedStopIds:i.visitedStopIds,onSelectStop:i.handleSelectStop,width:P}),t.jsx("div",{role:"separator","aria-orientation":"vertical","aria-label":r("walkthrough.toc.resize"),tabIndex:0,onPointerDown:K,onKeyDown:uo,className:at("group relative w-1 shrink-0 cursor-col-resize","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",F&&"bg-interactive-selection")})]}),t.jsxs("div",{className:"relative flex min-h-0 flex-1 flex-col",children:[_.isOpen&&t.jsx(qr,{query:_.query,onQueryChange:_.setQuery,total:_.matches.length,currentIndex:_.currentIndex,isSearching:_.isSearching,failedCount:_.failedCount,onNext:_.next,onPrevious:_.previous,onClose:_.close,focusNonce:R.focusNonce}),t.jsx(Hr,{view:u,activeStopId:i.activeStopId,scrollToStopId:i.scrollToStopId,onActiveStopChange:i.handleActiveStopChange,onScrollHandled:i.clearScrollRequest,renderSideBySide:se,wrapLines:mo,summary:S?void 0:u.walkthrough.focus,uncoveredOpenRequest:R.uncoveredOpenRequest,registerFindViewerRef:R.registerViewer,onFindWordRequest:R.openOnWord})]})]}):t.jsx(Vr,{review:i}),e[279]=Dt,e[280]=T,e[281]=x.error,e[282]=x.loading,e[283]=Mt,e[284]=vo,e[285]=a,e[286]=_,e[287]=F,e[288]=R.focusNonce,e[289]=R.openOnWord,e[290]=R.registerViewer,e[291]=R.uncoveredOpenRequest,e[292]=uo,e[293]=K,e[294]=C.error,e[295]=C.loading,e[296]=Lt,e[297]=se,e[298]=i,e[299]=S,e[300]=r,e[301]=P,e[302]=u,e[303]=mo,e[304]=Ze):Ze=e[304];let et;e[305]!==Ye||e[306]!==Ze?(et=t.jsx("div",{className:Ye,children:Ze}),e[305]=Ye,e[306]=Ze,e[307]=et):et=e[307];let io;return e[308]!==$e||e[309]!==Qe||e[310]!==et?(io=t.jsxs("div",{ref:A,"data-find-surface":"",className:"flex h-full min-h-0 flex-col",children:[$e,Qe,et]}),e[308]=$e,e[309]=Qe,e[310]=et,e[311]=io):io=e[311],io};function hs(s){return s.walkthroughTocWidth}function fs(s){return s.setWalkthroughTocWidth}function gs(s){return s.diffLayoutPreference}function xs(s){return s.diffWrapLines}function bs(s){return s.clearRequestedTarget}function ks(s){return s.openContextPanelTab}function Ss(s){return s.runtimeKey}function vs(s){return s+1}function ws(s){return s.setOverride}function ys(s){return s.clearOverride}function Cs(s){return s.ensureAll}function js(s){return s.name}function Rs(s){return s.entries}function _s(s){return s.ensureEntry}function Ns(s){return s.setParams}function Ps(s){return s.beginActiveContextsLoad}function Ts(s){return s.commitActiveContexts}function Os(s){return s.releaseActiveContexts}function Ws(s){return s.refreshTargets}function Is(s){return s.requestTarget}function As(s){return s.ensureNestedRepos}function qs(s){return s.selectNestedRepo}export{Yi as WalkthroughView};
1
+ import{f as $o,r as p,j as t}from"./vendor-react-BUCujlKS.js";import{u as nr,b3 as ir,b4 as Do,aE as ar,b5 as lr,aD as lo,b6 as cr,b7 as ur,b8 as mr,b9 as pr,ah as tt,ba as Ko,bb as Ho,bc as it,bd as dr,N as at,be as hr,bf as co,bg as Vo,B as lt,I,b0 as fr,bh as gr,aS as xr,bi as br,aT as kr,bj as Sr,aR as vr,W as wr,X as yr,V as Cr}from"./useAppFontEffects-Dm6zEvrf.js";import{u as ct,a8 as Uo,a9 as jr,aa as Rr}from"./katex.min-F4TD1ekM.js";import{u as Xo,a as _r,b as Nr,c as Pr,B as Tr,C as Or,P as Wr}from"./PullRequestComparisonSelector-BBdU2rL1.js";import{u as Ir,a as Ar,D as qr}from"./useDiffFindSurface-CaCh-qt2.js";import{e as Br,b as Er,U as Dr,u as Mr,W as Lr,a as zr,c as Gr,d as Fr,f as Kr,g as Hr,h as Vr,i as Ur,j as Xr,k as Jr,l as $r}from"./useWalkthroughReview-BspAr9Aa.js";import{u as Qr,c as Yr,N as Zr,d as es,M as ts,e as os,C as rs}from"./runtimeEndpointReset-lg1O2gVX.js";import{P as ss,e as ns,f as is,g as as,h as ls}from"./vendor-base-ui-CPKyhvxM.js";import"./vendor-scheduler-7OC5HNn7.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-VzNDjH03.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-use-sync-external-store-D6wYuSt-.js";import"./vendor-tailwind-merge-CPcsbTWB.js";import"./vendor-fuse.js-Dw8P0qyA.js";import"./vendor-opencode-client-h8RufjAw.js";import"./parseDiffFromFile-BSmRvd3V.js";import"./computeVirtualFileMetrics-DDyA16hp.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-diff-C3JhlQdm.js";import"./PierreDiffViewer-BZDNV4Uj.js";import"./isDiffPlainText-yXcpftjI.js";import"./pierreDiffTint-cyYFR1bm.js";import"./Virtualizer-nenVQKi3.js";import"./useInlineCommentController-a2JepiF3.js";import"./appThemeRegistry-BWap7OfW.js";import"./textMateThemeFromAppTheme-tYpAceV3.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"./useCallableModelProviders-BK3j8Sde.js";import"./ChangedPathLabel-BCiU4QDF.js";const cs=s=>{const e=$o.c(22),{view:c,renderSideBySide:ut,visible:m,rootRef:r,selectStop:A,markStopActive:rt}=s;let E;e[0]!==c?(E=c?Br(c):[],e[0]=c,e[1]=E):E=e[1];const D=E,M=ut?"side-by-side":"inline";let q;e[2]!==M||e[3]!==D?(q=Er(D,M),e[2]=M,e[3]=D,e[4]=q):q=e[4];const B=q;let L;e[5]!==B?(L={sources:B},e[5]=B,e[6]=L):L=e[6];const N=Ir(L);let o;e[7]!==D?(o=new Map(D.map(us)),e[7]=D,e[8]=o):o=e[8];const z=o,[G,mt]=p.useState(0);let te;e[9]!==rt||e[10]!==z||e[11]!==A?(te=(P,J)=>{const K=z.get(P.filePath);if(K){if(K.stopId===Dr){J||mt(ms);return}J?rt(K.stopId):A(K.stopId)}},e[9]=rt,e[10]=z,e[11]=A,e[12]=te):te=e[12];const O=te;let F;e[13]!==N||e[14]!==O||e[15]!==r||e[16]!==m?(F={find:N,visible:m,rootRef:r,reveal:O},e[13]=N,e[14]=O,e[15]=r,e[16]=m,e[17]=F):F=e[17];const oe=Ar(F);let S;return e[18]!==N||e[19]!==oe||e[20]!==G?(S={find:N,uncoveredOpenRequest:G,...oe},e[18]=N,e[19]=oe,e[20]=G,e[21]=S):S=e[21],S};function us(s){return[s.key,s]}function ms(s){return s+1}const ps=["all","staged","working"],Jo=720,ot=180,Mo=.5,ds={steps:["data-walkthrough-header-compact","data-walkthrough-header-tight","data-walkthrough-header-minimal","data-walkthrough-header-narrow"]},Yi=s=>{const e=$o.c(312),{directory:c,visible:ut}=s,m=ut===void 0?!0:ut,{t:r}=nr(),A=p.useRef(null),rt=Qr(),[E,D]=p.useState(0);let M;e[0]!==m?(M={enabled:m},e[0]=m,e[1]=M):M=e[1];const{rootIsGitRepo:q,gitDirectory:B,nestedRepos:L,repositoryOptions:N}=ir(c||null,M),o=B??c;let z,G;e[2]===Symbol.for("react.memo_cache_sentinel")?(z=()=>{const n=A.current;if(!n||typeof ResizeObserver>"u")return;const k=new ResizeObserver(Z=>{D(Z[0]?.contentRect.width??0)});return k.observe(n),()=>k.disconnect()},G=[],e[2]=z,e[3]=G):(z=e[2],G=e[3]),p.useEffect(z,G);const mt=p.useRef(null);Yr(mt,ds);const te=ct(hs),O=ct(fs),[F,oe]=p.useState(!1),S=E===0||E>=Jo,P=Math.min(Math.max(te,ot),Math.max(ot,(E||Jo)*Mo));let J;e[4]!==O||e[5]!==P?(J=n=>{n.preventDefault();const k=n.clientX,Z=P,ee=Uo(n.currentTarget)?-1:1,Eo=Math.max(ot,(A.current?.clientWidth??0)*Mo);oe(!0);const Fo=rr=>{const sr=Math.min(Eo,Math.max(ot,Z+(rr.clientX-k)*ee));O(sr)},ao=()=>{oe(!1),window.removeEventListener("pointermove",Fo),window.removeEventListener("pointerup",ao),window.removeEventListener("pointercancel",ao)};window.addEventListener("pointermove",Fo),window.addEventListener("pointerup",ao),window.addEventListener("pointercancel",ao)},e[4]=O,e[5]=P,e[6]=J):J=e[6];const K=J;let pt;e[7]!==O||e[8]!==P?(pt=n=>{const k=n.shiftKey?40:10,Z=Uo(n.currentTarget)?-1:1,ee=(n.key==="ArrowLeft"?-k:n.key==="ArrowRight"?k:0)*Z;if(ee===0)return;n.preventDefault();const Eo=Math.max(ot,(A.current?.clientWidth??0)*Mo);O(Math.min(Eo,Math.max(ot,P+ee)))},e[7]=O,e[8]=P,e[9]=pt):pt=e[9];const uo=pt,[$,Qo]=p.useState("all"),[re,H]=p.useState(null),Yo=ct(gs),mo=ct(xs),se=Yo==="side-by-side";let dt;e[10]!==o?(dt=n=>n.getRequestedTarget(o),e[10]=o,e[11]=dt):dt=e[11];const f=Do(dt),V=Do(bs),po=ct(ks),ho=ar()??c,Zo=lr(o||null),ht=lo(Ss),[er,tr]=p.useState(0);let ft,gt;e[12]!==o||e[13]!==ht?(ft=()=>jr(n=>{n===Rr(o,ht)&&tr(vs)}),gt=[o,ht],e[12]=o,e[13]=ht,e[14]=ft,e[15]=gt):(ft=e[14],gt=e[15]),p.useEffect(ft,gt);const ne=cr(o||null),fo=Xo(ws),go=Xo(ys),xt=lo(Cs),{sourceControl:st,git:bt}=ur(),g=mr(o,st);let kt,St;e[16]!==o||e[17]!==xt||e[18]!==bt||e[19]!==m?(kt=()=>{m&&o&&xt(o,bt)},St=[o,xt,bt,m],e[16]=o,e[17]=xt,e[18]=bt,e[19]=m,e[20]=kt,e[21]=St):(kt=e[20],St=e[21]),p.useEffect(kt,St);const a=Zo?.current??null,ie=re?.directory===o&&re.kind==="commit"&&!f,v=ie||f?.source.kind==="commit",Lo=f?.source.kind==="commit"?f.source.hash:void 0,x=_r(o||null,a,m&&v,Lo),w=x.selectedCommit?.hash??Lo??null;let vt;e[22]!==g.read?.repository.remotes?(vt=new Set(g.read?.repository.remotes.map(js)??[]),e[22]=g.read?.repository.remotes,e[23]=vt):vt=e[23];const xo=vt,bo=g.contexts[0]?.primaryRemote,ko=g.contexts[0]??null;let wt;e[24]!==ne||e[25]!==xo||e[26]!==bo||e[27]!==ko?(wt={branches:ne,remoteNames:xo,primaryRemote:bo,readContext:ko},e[24]=ne,e[25]=xo,e[26]=bo,e[27]=ko,e[28]=wt):wt=e[28];const{base:Q,source:So,resolved:vo,revision:or}=Nr(o||null,a,m,wt);let yt;e[29]!==Q||e[30]!==a?(yt=a&&Q?{kind:"branch",baseRef:Q,headRef:a}:null,e[29]=Q,e[30]=a,e[31]=yt):yt=e[31];const y=yt,Y=pr(Rs),Ct=tt(_s),jt=tt(Ns),Rt=tt(Ps),_t=tt(Ts),Nt=tt(Os),ae=p.useId(),Pt=tt(Ws);let Tt,Ot;e[32]!==Rt||e[33]!==g.contexts||e[34]!==g.scope.runtimeKey||e[35]!==_t||e[36]!==o||e[37]!==Nt||e[38]!==Y||e[39]!==ae?(Tt=()=>{if(!o)return;const n=g.scope.runtimeKey,k=Rt(n,o,ae),Z=g.contexts.filter(ee=>Ho(Y[Ko(ee)],ee).connected);return _t(n,o,ae,k,Z),()=>{Nt(n,o,ae)}},Ot=[Rt,g.contexts,g.scope.runtimeKey,_t,o,Nt,Y,ae],e[32]=Rt,e[33]=g.contexts,e[34]=g.scope.runtimeKey,e[35]=_t,e[36]=o,e[37]=Nt,e[38]=Y,e[39]=ae,e[40]=Tt,e[41]=Ot):(Tt=e[40],Ot=e[41]),p.useEffect(Tt,Ot);const l=g.contexts[0]??null;let Wt;e[42]!==l||e[43]!==Y?(Wt=l?Y[Ko(l)]:void 0,e[42]=l,e[43]=Y,e[44]=Wt):Wt=e[44];const wo=Wt;let It;e[45]!==wo||e[46]!==l?(It=l?Ho(wo,l):{authChecked:!1,connected:!1},e[45]=wo,e[46]=l,e[47]=It):It=e[47];const U=It;let At,qt;e[48]!==a||e[49]!==Ct||e[50]!==U.authChecked||e[51]!==U.connected||e[52]!==l||e[53]!==Pt||e[54]!==jt||e[55]!==st?(At=()=>{if(!l||!a)return;const n=gr(l,a);Ct(n),jt(n,{directory:l.directory,branch:a,remoteName:l.primaryRemote,canShow:!0,identity:l,readContext:l,sourceControl:st,authChecked:U.authChecked,connected:U.connected}),Pt([{context:l,branch:a}])},qt=[a,Ct,l,U.authChecked,U.connected,Pt,jt,st],e[48]=a,e[49]=Ct,e[50]=U.authChecked,e[51]=U.connected,e[52]=l,e[53]=Pt,e[54]=jt,e[55]=st,e[56]=At,e[57]=qt):(At=e[56],qt=e[57]),p.useEffect(At,qt);const nt=re?.directory===o&&re.kind==="pr"&&!f,d=nt||f?.source.kind==="pr",C=Pr(o||null,a,l,m&&d,f?.source.kind==="pr"?f.source:void 0),b=C.selectedSource,W=l?.provider==="github"||l?.provider==="gitlab",T=C.provider;let Bt;e[58]!==y||e[59]!==v||e[60]!==d||e[61]!==l||e[62]!==W||e[63]!==f||e[64]!==$||e[65]!==w||e[66]!==b?(Bt=d&&b&&W&&l?{source:b,context:l}:v&&w?{source:{kind:"commit",hash:w}}:f?.source.kind==="branch"?{source:y??f.source}:f??{source:{kind:"working-tree",scope:$}},e[58]=y,e[59]=v,e[60]=d,e[61]=l,e[62]=W,e[63]=f,e[64]=$,e[65]=w,e[66]=b,e[67]=Bt):Bt=e[67];const Et=Bt,j=Et.source,le=re?.directory===o&&re.kind==="branch"&&!f,X=le||j.kind==="branch",Dt=le||j.kind==="branch"&&!y,Mt=ie||v&&!w,Lt=d&&!b,yo=Dt||Mt||Lt;let zt;e[68]!==V||e[69]!==o?(zt=n=>{H(null),V(o),Qo(n)},e[68]=V,e[69]=o,e[70]=zt):zt=e[70];const Co=zt,h=Do(Is);let Gt,Ft;e[71]!==nt||e[72]!==o||e[73]!==l||e[74]!==W||e[75]!==h||e[76]!==b?(Gt=()=>{!nt||!b||!W||!l||(h(o,{source:b,context:l}),H(null))},Ft=[nt,o,l,W,h,b],e[71]=nt,e[72]=o,e[73]=l,e[74]=W,e[75]=h,e[76]=b,e[77]=Gt,e[78]=Ft):(Gt=e[77],Ft=e[78]),p.useEffect(Gt,Ft);let Kt,Ht;e[79]!==y||e[80]!==le||e[81]!==o||e[82]!==h?(Kt=()=>{!le||!y||(h(o,{source:y}),H(null))},Ht=[y,le,o,h],e[79]=y,e[80]=le,e[81]=o,e[82]=h,e[83]=Kt,e[84]=Ht):(Kt=e[83],Ht=e[84]),p.useEffect(Kt,Ht);let Vt,Ut;e[85]!==ie||e[86]!==o||e[87]!==h||e[88]!==w?(Vt=()=>{!ie||!w||(h(o,{source:{kind:"commit",hash:w}}),H(null))},Ut=[ie,o,h,w],e[85]=ie,e[86]=o,e[87]=h,e[88]=w,e[89]=Vt,e[90]=Ut):(Vt=e[89],Ut=e[90]),p.useEffect(Vt,Ut);const jo=j.kind==="branch"?or:"",Ro=j.kind==="pr"?er:0;let ce;e[91]!==Ro||e[92]!==jo?(ce=JSON.stringify([jo,Ro]),e[91]=Ro,e[92]=jo,e[93]=ce):ce=e[93];let Xt;e[94]!==o||e[95]!==yo||e[96]!==ce||e[97]!==Et||e[98]!==m?(Xt={directory:o,target:Et,visible:m,needsSourceSelection:yo,revision:ce},e[94]=o,e[95]=yo,e[96]=ce,e[97]=Et,e[98]=m,e[99]=Xt):Xt=e[99];const i=Mr(Xt),{view:u}=i;let Jt;e[100]!==se||e[101]!==i.handleActiveStopChange||e[102]!==i.handleSelectStop||e[103]!==u||e[104]!==m?(Jt={view:u,renderSideBySide:se,visible:m,rootRef:A,selectStop:i.handleSelectStop,markStopActive:i.handleActiveStopChange},e[100]=se,e[101]=i.handleActiveStopChange,e[102]=i.handleSelectStop,e[103]=u,e[104]=m,e[105]=Jt):Jt=e[105];const R=cs(Jt),_=R.find,[_o,zo]=p.useState(!1),[No,Go]=p.useState(!1),Po=d?"pr":v?"commit":X?"branch":j.kind==="working-tree"?j.scope:j.kind;let $t;e[106]!==T||e[107]!==X||e[108]!==v||e[109]!==d||e[110]!==$||e[111]!==j.kind||e[112]!==j.number||e[113]!==r?($t=d?r(it("session.githubIntegration.tabs.pullRequests",T)):v?r("commitComparison.mode"):X?r("walkthrough.scope.branch"):j.kind==="pr"?r(it("walkthrough.scope.pullRequest",T),{number:j.number}):r($==="all"?"walkthrough.scope.all":$==="staged"?"walkthrough.scope.staged":"walkthrough.scope.working"),e[106]=T,e[107]=X,e[108]=v,e[109]=d,e[110]=$,e[111]=j.kind,e[112]=j.number,e[113]=r,e[114]=$t):$t=e[114];const ue=$t;let Qt;e[115]!==po||e[116]!==ho||e[117]!==c?(Qt=()=>po(ho,{mode:"diff",diffScope:"pr",targetDirectory:c}),e[115]=po,e[116]=ho,e[117]=c,e[118]=Qt):Qt=e[118];const Yt=Qt,me=!!(u||i.blocked),To=d?"git-pull-request":v?"git-commit":X?"git-branch":"file-edit",Zt=dr(B||null),Oo=lo(As),Wo=lo(qs);if(q===!1&&Zt!==!0){let n;e[119]!==Oo||e[120]!==c?(n=()=>{c&&Oo(c,{force:!0})},e[119]=Oo,e[120]=c,e[121]=n):n=e[121];let k;return e[122]!==Zt||e[123]!==L||e[124]!==c||e[125]!==q||e[126]!==n?(k=t.jsx(Zr,{root:c,rootIsGitRepo:q,resolvedIsGitRepo:Zt,nestedRepos:L,onRetryDiscovery:n}),e[122]=Zt,e[123]=L,e[124]=c,e[125]=q,e[126]=n,e[127]=k):k=e[127],k}const Io=rt?"flex-1 py-1 pe-1":"shrink-0 border-b border-border/60 px-3 py-2";let pe;e[128]!==Io?(pe=at("walkthrough-header flex min-w-0 flex-nowrap items-center gap-2 overflow-hidden",Io),e[128]=Io,e[129]=pe):pe=e[129];let de;e[130]!==B||e[131]!==N||e[132]!==c||e[133]!==Wo?(de=N?t.jsx("div",{className:"shrink-0",children:t.jsx(es,{repositories:N,selectedRepository:B??null,onSelectRepository:n=>{c&&Wo(c,n)},repositoryRoot:c??void 0})}):null,e[130]=B,e[131]=N,e[132]=c,e[133]=Wo,e[134]=de):de=e[134];let he;e[135]===Symbol.for("react.memo_cache_sentinel")?(he=at(hr(),"shrink-0"),e[135]=he):he=e[135];let fe;e[136]!==r?(fe=r("walkthrough.scope.selectorAria"),e[136]=r,e[137]=fe):fe=e[137];let ge;e[138]!==To?(ge=t.jsx(I,{name:To,className:"walkthrough-header__source-icon"}),e[138]=To,e[139]=ge):ge=e[139];let xe;e[140]!==ue?(xe=t.jsx("span",{className:"walkthrough-header__source-label",children:ue}),e[140]=ue,e[141]=xe):xe=e[141];let eo;e[142]===Symbol.for("react.memo_cache_sentinel")?(eo=t.jsx(I,{name:"arrow-down-s"}),e[142]=eo):eo=e[142];let be;e[143]!==ue||e[144]!==he||e[145]!==fe||e[146]!==ge||e[147]!==xe?(be=t.jsx(xr,{asChild:!0,children:t.jsxs("button",{type:"button",className:he,"aria-label":fe,title:ue,children:[ge,xe,eo]})}),e[143]=ue,e[144]=he,e[145]=fe,e[146]=ge,e[147]=xe,e[148]=be):be=e[148];let ke;e[149]!==y||e[150]!==V||e[151]!==o||e[152]!==h||e[153]!==Co?(ke=n=>{if(zo(!1),n==="commit"){V(o),H({directory:o,kind:"commit"});return}if(n==="branch"){y?(H(null),h(o,{source:y})):(V(o),H({directory:o,kind:"branch"}));return}if(n==="pr"){V(o),H({directory:o,kind:"pr"});return}Co(n)},e[149]=y,e[150]=V,e[151]=o,e[152]=h,e[153]=Co,e[154]=ke):ke=e[154];let Se;e[155]!==r?(Se=r("walkthrough.scope.group.workingTree"),e[155]=r,e[156]=Se):Se=e[156];let ve;e[157]!==Se?(ve=t.jsx(br,{className:ts,children:Se}),e[157]=Se,e[158]=ve):ve=e[158];let we;e[159]!==r?(we=ps.map(n=>t.jsx(co,{value:n,children:r(n==="all"?"walkthrough.scope.all":n==="staged"?"walkthrough.scope.staged":"walkthrough.scope.working")},n)),e[159]=r,e[160]=we):we=e[160];let ye;e[161]!==a||e[162]!==r?(ye=a&&t.jsxs(t.Fragment,{children:[t.jsx(Vo,{}),t.jsx(co,{value:"branch",children:r("walkthrough.scope.branch")})]}),e[161]=a,e[162]=r,e[163]=ye):ye=e[163];let to;e[164]===Symbol.for("react.memo_cache_sentinel")?(to=t.jsx(Vo,{}),e[164]=to):to=e[164];let Ce;e[165]!==r?(Ce=r("commitComparison.mode"),e[165]=r,e[166]=Ce):Ce=e[166];let je;e[167]!==Ce?(je=t.jsx(co,{value:"commit",children:Ce}),e[167]=Ce,e[168]=je):je=e[168];let Re;e[169]!==T||e[170]!==W||e[171]!==r?(Re=W&&t.jsx(co,{value:"pr",children:r(it("session.githubIntegration.tabs.pullRequests",T))}),e[169]=T,e[170]=W,e[171]=r,e[172]=Re):Re=e[172];let _e;e[173]!==Po||e[174]!==ke||e[175]!==ve||e[176]!==we||e[177]!==ye||e[178]!==je||e[179]!==Re?(_e=t.jsx(kr,{align:"start",className:"w-48",children:t.jsxs(Sr,{value:Po,onValueChange:ke,children:[ve,we,ye,to,je,Re]})}),e[173]=Po,e[174]=ke,e[175]=ve,e[176]=we,e[177]=ye,e[178]=je,e[179]=Re,e[180]=_e):_e=e[180];let Ne;e[181]!==_o||e[182]!==be||e[183]!==_e?(Ne=t.jsxs(vr,{open:_o,onOpenChange:zo,children:[be,_e]}),e[181]=_o,e[182]=be,e[183]=_e,e[184]=Ne):Ne=e[184];let Pe;e[185]!==ne?.all||e[186]!==go||e[187]!==Q||e[188]!==So||e[189]!==a||e[190]!==o||e[191]!==X||e[192]!==fo?(Pe=X&&t.jsx("div",{className:"min-w-0 shrink",children:t.jsx(Tr,{branches:ne?.all??[],currentBranch:a,base:Q,automatic:So!=="chosen",onSelect:n=>{o&&a&&fo(o,a,n)},onSelectAutomatic:()=>{o&&a&&go(o,a)}},JSON.stringify([o,a]))}),e[185]=ne?.all,e[186]=go,e[187]=Q,e[188]=So,e[189]=a,e[190]=o,e[191]=X,e[192]=fo,e[193]=Pe):Pe=e[193];let Te;e[194]!==x||e[195]!==a||e[196]!==o||e[197]!==v||e[198]!==w?(Te=v&&t.jsx("div",{className:"min-w-0 shrink",children:t.jsx(Or,{commits:x.commits,selectedHash:w,loading:x.loading,error:x.error,onSelect:x.select,onRefresh:()=>{x.refresh()}},JSON.stringify([o,a]))}),e[194]=x,e[195]=a,e[196]=o,e[197]=v,e[198]=w,e[199]=Te):Te=e[199];let Oe;e[200]!==a||e[201]!==o||e[202]!==d||e[203]!==C?(Oe=d&&t.jsx("div",{className:"min-w-0 shrink",children:t.jsx(Wr,{comparison:C},JSON.stringify([o,a]))}),e[200]=a,e[201]=o,e[202]=d,e[203]=C,e[204]=Oe):Oe=e[204];let We;e[205]!==d||e[206]!==Yt||e[207]!==b||e[208]!==r?(We=d&&b&&t.jsxs(lt,{variant:"ghost",size:"sm",className:"walkthrough-header__option","aria-label":r("contextPanel.mode.diff"),title:r("contextPanel.mode.diff"),onClick:Yt,children:[t.jsx(I,{name:"arrow-left-right",className:"size-4"}),t.jsx("span",{className:"walkthrough-header__label",children:r("contextPanel.mode.diff")})]}),e[205]=d,e[206]=Yt,e[207]=b,e[208]=r,e[209]=We):We=e[209];let Ie;e[210]!==r?(Ie=r("walkthrough.help.guide"),e[210]=r,e[211]=Ie):Ie=e[211];let oo;e[212]===Symbol.for("react.memo_cache_sentinel")?(oo=t.jsx(I,{name:"question",className:"size-4"}),e[212]=oo):oo=e[212];let Ae;e[213]!==Ie?(Ae=t.jsx(wr,{asChild:!0,children:t.jsx(lt,{type:"button",variant:"ghost",size:"sm",className:"walkthrough-header__option","aria-label":Ie,onClick:os,children:oo})}),e[213]=Ie,e[214]=Ae):Ae=e[214];let qe;e[215]!==r?(qe=r("walkthrough.help.guide"),e[215]=r,e[216]=qe):qe=e[216];let Be;e[217]!==qe?(Be=t.jsx(yr,{children:t.jsx("p",{className:"typography-micro leading-tight",children:qe})}),e[217]=qe,e[218]=Be):Be=e[218];let Ee;e[219]!==Ae||e[220]!==Be?(Ee=t.jsxs(Cr,{children:[Ae,Be]}),e[219]=Ae,e[220]=Be,e[221]=Ee):Ee=e[221];let De;e[222]!==me||e[223]!==i?(De=me&&t.jsxs(t.Fragment,{children:[t.jsx(Ur,{review:i,className:"walkthrough-header__option max-w-40"}),t.jsx(Xr,{review:i,className:"walkthrough-header__option walkthrough-header__model h-7 min-w-0 max-w-48"})]}),e[222]=me,e[223]=i,e[224]=De):De=e[224];let Me;e[225]!==i||e[226]!==S||e[227]!==r||e[228]!==u?(Me=u&&t.jsxs(t.Fragment,{children:[t.jsx(lt,{type:"button",variant:"ghost",size:"sm",className:"walkthrough-header__step-arrow","aria-label":r("walkthrough.action.previous"),onClick:()=>i.step(-1),children:t.jsx(I,{name:"arrow-right-s",className:"size-4 rotate-180"})}),!S&&t.jsx(Lr,{review:i,view:u}),t.jsx(lt,{type:"button",variant:"ghost",size:"sm",className:"walkthrough-header__step-arrow","aria-label":r("walkthrough.action.next"),onClick:()=>i.step(1),children:t.jsx(I,{name:"arrow-right-s",className:"size-4"})})]}),e[225]=i,e[226]=S,e[227]=r,e[228]=u,e[229]=Me):Me=e[229];let Le;e[230]!==me||e[231]!==i||e[232]!==u?(Le=(me||i.isGenerating)&&t.jsx(zr,{review:i,hasView:!!u,className:"walkthrough-header__generate",labelClassName:"walkthrough-header__label"}),e[230]=me,e[231]=i,e[232]=u,e[233]=Le):Le=e[233];let ze;e[234]!==r?(ze=r("walkthrough.options.moreAria"),e[234]=r,e[235]=ze):ze=e[235];let Ge;e[236]!==r?(Ge=r("walkthrough.options.moreAria"),e[236]=r,e[237]=Ge):Ge=e[237];let Fe;e[238]!==ze||e[239]!==Ge?(Fe=t.jsx(lt,{type:"button",variant:"ghost",size:"sm",className:"walkthrough-header__more data-[popup-open]:bg-interactive-hover","aria-label":ze,title:Ge}),e[238]=ze,e[239]=Ge,e[240]=Fe):Fe=e[240];let ro;e[241]===Symbol.for("react.memo_cache_sentinel")?(ro=t.jsx(I,{name:"more",className:"size-4"}),e[241]=ro):ro=e[241];let Ke;e[242]!==Fe?(Ke=t.jsx(ss,{render:Fe,children:ro}),e[242]=Fe,e[243]=Ke):Ke=e[243];let He;e[244]!==r?(He=r("walkthrough.options.title"),e[244]=r,e[245]=He):He=e[245];let so;e[246]===Symbol.for("react.memo_cache_sentinel")?(so=at(fr,"w-64 max-w-[calc(100vw-2rem)] p-3"),e[246]=so):so=e[246];const Ao=!!u,qo=d&&b?Yt:void 0;let no;e[247]===Symbol.for("react.memo_cache_sentinel")?(no=()=>Go(!1),e[247]=no):no=e[247];let Ve;e[248]!==i||e[249]!==Ao||e[250]!==qo?(Ve=t.jsx(Jr,{review:i,hasView:Ao,onOpenChanges:qo,onActed:no}),e[248]=i,e[249]=Ao,e[250]=qo,e[251]=Ve):Ve=e[251];let Ue;e[252]!==He||e[253]!==Ve?(Ue=t.jsx(ns,{children:t.jsx(is,{side:"bottom",align:"end",sideOffset:4,className:"z-50",children:t.jsx(as,{"aria-label":He,className:so,children:Ve})})}),e[252]=He,e[253]=Ve,e[254]=Ue):Ue=e[254];let Xe;e[255]!==No||e[256]!==Ke||e[257]!==Ue?(Xe=t.jsxs(ls,{open:No,onOpenChange:Go,children:[Ke,Ue]}),e[255]=No,e[256]=Ke,e[257]=Ue,e[258]=Xe):Xe=e[258];let Je;e[259]!==We||e[260]!==Ee||e[261]!==De||e[262]!==Me||e[263]!==Le||e[264]!==Xe?(Je=t.jsxs("div",{className:"ms-auto flex shrink-0 items-center gap-1",children:[We,Ee,De,Me,Le,Xe]}),e[259]=We,e[260]=Ee,e[261]=De,e[262]=Me,e[263]=Le,e[264]=Xe,e[265]=Je):Je=e[265];let $e;e[266]!==pe||e[267]!==de||e[268]!==Ne||e[269]!==Pe||e[270]!==Te||e[271]!==Oe||e[272]!==Je?($e=t.jsx(rs,{children:t.jsxs("header",{ref:mt,className:pe,children:[de,Ne,Pe,Te,Oe,Je]})}),e[266]=pe,e[267]=de,e[268]=Ne,e[269]=Pe,e[270]=Te,e[271]=Oe,e[272]=Je,e[273]=$e):$e=e[273];let Qe;e[274]!==i||e[275]!==u?(Qe=t.jsx($r,{review:i,view:u}),e[274]=i,e[275]=u,e[276]=Qe):Qe=e[276];const Bo=S?"flex-row":"flex-col";let Ye;e[277]!==Bo?(Ye=at("flex min-h-0 flex-1",Bo),e[277]=Bo,e[278]=Ye):Ye=e[278];let Ze;e[279]!==Dt||e[280]!==T||e[281]!==x.error||e[282]!==x.loading||e[283]!==Mt||e[284]!==vo||e[285]!==a||e[286]!==_||e[287]!==F||e[288]!==R.focusNonce||e[289]!==R.openOnWord||e[290]!==R.registerViewer||e[291]!==R.uncoveredOpenRequest||e[292]!==uo||e[293]!==K||e[294]!==C.error||e[295]!==C.loading||e[296]!==Lt||e[297]!==se||e[298]!==i||e[299]!==S||e[300]!==r||e[301]!==P||e[302]!==u||e[303]!==mo?(Ze=Lt?t.jsxs("div",{className:"flex flex-1 flex-col items-center justify-center gap-3 p-8 text-center",children:[!C.error&&!C.loading&&t.jsx(I,{name:"git-pull-request",className:"size-6 text-muted-foreground"}),t.jsx("p",{className:"typography-meta text-muted-foreground",children:C.error??(C.loading?r(it("session.githubPrPicker.loading.pullRequests",T)):r(it("pullRequestComparison.pickAbove",T)))})]}):Mt?t.jsx("div",{className:"flex flex-1 items-center justify-center gap-2 p-8 typography-meta text-muted-foreground",children:x.loading?t.jsx(I,{name:"loader-4",className:"size-6 animate-spin"}):x.error??r("commitComparison.noCommits")}):Dt?t.jsx("div",{className:"flex flex-1 flex-col items-center justify-center gap-3 p-8 text-center",children:!vo&&a?t.jsx(I,{name:"loader-4",className:"size-6 animate-spin text-muted-foreground"}):t.jsx("p",{className:"typography-meta text-muted-foreground",children:r("gitView.pr.toast.baseBranchRequired")})}):i.blocked?t.jsx(Gr,{reason:i.blocked.reason,model:i.blocked.model,requiredChars:i.blocked.requiredChars,availableChars:i.blocked.availableChars,onRetry:i.retry}):i.showStages?t.jsx("div",{className:"flex flex-1 flex-col items-center justify-center gap-3 p-8",children:t.jsx(Fr,{progress:i.stageProgress})}):u?t.jsxs(t.Fragment,{children:[S&&t.jsxs(t.Fragment,{children:[t.jsx(Kr,{view:u,activeStopId:i.activeStopId,visitedStopIds:i.visitedStopIds,onSelectStop:i.handleSelectStop,width:P}),t.jsx("div",{role:"separator","aria-orientation":"vertical","aria-label":r("walkthrough.toc.resize"),tabIndex:0,onPointerDown:K,onKeyDown:uo,className:at("group relative w-1 shrink-0 cursor-col-resize","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",F&&"bg-interactive-selection")})]}),t.jsxs("div",{className:"relative flex min-h-0 flex-1 flex-col",children:[_.isOpen&&t.jsx(qr,{query:_.query,onQueryChange:_.setQuery,total:_.matches.length,currentIndex:_.currentIndex,isSearching:_.isSearching,failedCount:_.failedCount,onNext:_.next,onPrevious:_.previous,onClose:_.close,focusNonce:R.focusNonce}),t.jsx(Hr,{view:u,activeStopId:i.activeStopId,scrollToStopId:i.scrollToStopId,onActiveStopChange:i.handleActiveStopChange,onScrollHandled:i.clearScrollRequest,renderSideBySide:se,wrapLines:mo,summary:S?void 0:u.walkthrough.focus,uncoveredOpenRequest:R.uncoveredOpenRequest,registerFindViewerRef:R.registerViewer,onFindWordRequest:R.openOnWord})]})]}):t.jsx(Vr,{review:i}),e[279]=Dt,e[280]=T,e[281]=x.error,e[282]=x.loading,e[283]=Mt,e[284]=vo,e[285]=a,e[286]=_,e[287]=F,e[288]=R.focusNonce,e[289]=R.openOnWord,e[290]=R.registerViewer,e[291]=R.uncoveredOpenRequest,e[292]=uo,e[293]=K,e[294]=C.error,e[295]=C.loading,e[296]=Lt,e[297]=se,e[298]=i,e[299]=S,e[300]=r,e[301]=P,e[302]=u,e[303]=mo,e[304]=Ze):Ze=e[304];let et;e[305]!==Ye||e[306]!==Ze?(et=t.jsx("div",{className:Ye,children:Ze}),e[305]=Ye,e[306]=Ze,e[307]=et):et=e[307];let io;return e[308]!==$e||e[309]!==Qe||e[310]!==et?(io=t.jsxs("div",{ref:A,"data-find-surface":"",className:"flex h-full min-h-0 flex-col",children:[$e,Qe,et]}),e[308]=$e,e[309]=Qe,e[310]=et,e[311]=io):io=e[311],io};function hs(s){return s.walkthroughTocWidth}function fs(s){return s.setWalkthroughTocWidth}function gs(s){return s.diffLayoutPreference}function xs(s){return s.diffWrapLines}function bs(s){return s.clearRequestedTarget}function ks(s){return s.openContextPanelTab}function Ss(s){return s.runtimeKey}function vs(s){return s+1}function ws(s){return s.setOverride}function ys(s){return s.clearOverride}function Cs(s){return s.ensureAll}function js(s){return s.name}function Rs(s){return s.entries}function _s(s){return s.ensureEntry}function Ns(s){return s.setParams}function Ps(s){return s.beginActiveContextsLoad}function Ts(s){return s.commitActiveContexts}function Os(s){return s.releaseActiveContexts}function Ws(s){return s.refreshTargets}function Is(s){return s.requestTarget}function As(s){return s.ensureNestedRepos}function qs(s){return s.selectNestedRepo}export{Yi as WalkthroughView};