tarsk 0.5.60 → 0.5.62

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 (172) hide show
  1. package/dist/index.js +41713 -25169
  2. package/dist/public/assets/account-view-D2h4wMCJ.js +1 -0
  3. package/dist/public/assets/alert-dialog-BpJafkQ6.js +1 -0
  4. package/dist/public/assets/api-DkhEo8tW.js +1 -0
  5. package/dist/public/assets/async-error-boundary-DR57nNXL.js +1 -0
  6. package/dist/public/assets/browser-tab-B15D-jTw.js +8 -0
  7. package/dist/public/assets/card-xQfAy2Rx.js +1 -0
  8. package/dist/public/assets/chat-dock-context-4ZMIlxAn.js +1 -0
  9. package/dist/public/assets/commit-dialog-CQH8QaWp.js +1 -0
  10. package/dist/public/assets/commit-method-fields-DYBEHZAP.js +1 -0
  11. package/dist/public/assets/context-menu-cv7nzOcn.js +1 -0
  12. package/dist/public/assets/conversation-history-view-BnhR9dL8.js +1 -0
  13. package/dist/public/assets/create-project-dialog-DCehjzue.js +6 -0
  14. package/dist/public/assets/create-repo-dialog-CVYlw8JI.js +1 -0
  15. package/dist/public/assets/delete-confirm-dialog-DoRgqETX.js +1 -0
  16. package/dist/public/assets/diff-view-B1xi9U57.js +4 -0
  17. package/dist/public/assets/editor.worker-Cn2oRESe.js +26 -0
  18. package/dist/public/assets/explorer-tab-context-8bs_tiCO.js +1 -0
  19. package/dist/public/assets/explorer-tab-view-DssrHe9f.js +2 -0
  20. package/dist/public/assets/explorer-tree-B2SnBNoL.js +1 -0
  21. package/dist/public/assets/explorer-view-B5nGnzAV.js +75 -0
  22. package/dist/public/assets/git-history-dialog-De7D-B_f.js +1 -0
  23. package/dist/public/assets/git-ops-button-DJYzg_I5.js +2 -0
  24. package/dist/public/assets/index-3N_2bBI0.css +1 -0
  25. package/dist/public/assets/index-cAZJlfDA.js +3307 -0
  26. package/dist/public/assets/interactive-WtOIgeV4.js +21 -0
  27. package/dist/public/assets/is-macos-client-BIb4ZSEa.js +1 -0
  28. package/dist/public/assets/local-tool-blocks-DlqmJ7__.js +1 -0
  29. package/dist/public/assets/main-tab-context-DHeKIUsf.js +1 -0
  30. package/dist/public/assets/mcp-server-card-DofWLHvo.js +1 -0
  31. package/dist/public/assets/merged-pr-dialog-CLaSLBzZ.js +1 -0
  32. package/dist/public/assets/model-list-controls-CRnIzfdp.js +1 -0
  33. package/dist/public/assets/monaco-BQve5vfS.css +1 -0
  34. package/dist/public/assets/monaco-D1hpqXQ0.js +1211 -0
  35. package/dist/public/assets/monaco-setup-VhLB0diG.js +1 -0
  36. package/dist/public/assets/ndjson-stream-DeGpE5o5.js +2 -0
  37. package/dist/public/assets/onboarding-Dy7KG3M5.js +46 -0
  38. package/dist/public/assets/project-env-vars-view-wQPOiCa_.js +1 -0
  39. package/dist/public/assets/project-model-aliases-view-CMEFOKJj.js +1 -0
  40. package/dist/public/assets/project-settings-view-BeKBKcaZ.js +1 -0
  41. package/dist/public/assets/project-tools-view-C7rQgJBp.js +1 -0
  42. package/dist/public/assets/providers-list-view-DqSw6lqh.js +1 -0
  43. package/dist/public/assets/pull-request-dialog-CX10DwW3.js +1 -0
  44. package/dist/public/assets/pull-with-changes-dialog-BIkrgGiK.js +1 -0
  45. package/dist/public/assets/push-before-pr-dialog-CMGZ4nuF.js +1 -0
  46. package/dist/public/assets/react-vendor-DgnPMVt4.js +22 -0
  47. package/dist/public/assets/settings-general-view-W0AXfWxp.js +1 -0
  48. package/dist/public/assets/settings-instructions-view-Dd3mwKFL.js +1 -0
  49. package/dist/public/assets/settings-list-Cyr7e0Le.js +1 -0
  50. package/dist/public/assets/settings-logs-view-CGbS3tw4.js +5 -0
  51. package/dist/public/assets/settings-mcp-servers-view-C3IkdzkJ.js +5 -0
  52. package/dist/public/assets/settings-models-view-DV2YF3YN.js +1 -0
  53. package/dist/public/assets/settings-rules-view-BnOeQFrJ.js +8 -0
  54. package/dist/public/assets/settings-skills-view-BvvWBK7C.js +3 -0
  55. package/dist/public/assets/settings-slack-view-CnCzVPQp.js +1 -0
  56. package/dist/public/assets/settings-slash-commands-view-Ds7RbQGD.js +1 -0
  57. package/dist/public/assets/settings-statistics-view-BI6827hL.js +1 -0
  58. package/dist/public/assets/settings-storage-view-Dp1y_kDe.js +1 -0
  59. package/dist/public/assets/settings-subagents-view-Cco1I1-K.js +2 -0
  60. package/dist/public/assets/settings-system-prompt-view-DZKKUgRY.js +1 -0
  61. package/dist/public/assets/settings-view-Ckzg0maK.js +2 -0
  62. package/dist/public/assets/skeleton-B_xdlo2b.js +1 -0
  63. package/dist/public/assets/slug-utils-DVB1L0_r.js +1 -0
  64. package/dist/public/assets/store-CSyJjyNs.js +7 -0
  65. package/dist/public/assets/table-CYWF-RhQ.js +1 -0
  66. package/dist/public/assets/tasks-view-tS75bdWk.js +2 -0
  67. package/dist/public/assets/terminal-panel-B5SzvdGO.js +38 -0
  68. package/dist/public/assets/terminal-panel-BrP-ENHg.css +1 -0
  69. package/dist/public/assets/thread-tool-blocks-BfowiaTH.js +1 -0
  70. package/dist/public/assets/ui-components-CuWavb_S.js +1 -0
  71. package/dist/public/assets/use-active-dock-panel-instance-CKEkba2q.js +1 -0
  72. package/dist/public/assets/use-deferred-search-DXrcdbyC.js +1 -0
  73. package/dist/public/assets/use-installed-ai-files-CTaDJ775.js +1 -0
  74. package/dist/public/assets/use-settings-page-loading-BC_wP7pl.js +1 -0
  75. package/dist/public/assets/use-suspense-resource-rX-GqyWi.js +1 -0
  76. package/dist/public/assets/use-toast-BFQ85Ly5.js +1 -0
  77. package/dist/public/assets/utils-Rlf65JHq.js +1 -0
  78. package/dist/public/assets/web-BNUbWWwf.js +1 -0
  79. package/dist/public/assets/web-CHZVpVHH.js +1 -0
  80. package/dist/public/assets/web-CaXKZtWk.js +1 -0
  81. package/dist/public/assets/web-Du8iyq0K.js +1 -0
  82. package/dist/public/browser-preview-rpc.js +58 -0
  83. package/dist/public/fonts/inter-cyrillic-ext-wght-normal.woff2 +0 -0
  84. package/dist/public/fonts/inter-cyrillic-wght-normal.woff2 +0 -0
  85. package/dist/public/fonts/inter-greek-ext-wght-normal.woff2 +0 -0
  86. package/dist/public/fonts/inter-greek-wght-normal.woff2 +0 -0
  87. package/dist/public/fonts/inter-latin-ext-wght-normal.woff2 +0 -0
  88. package/dist/public/fonts/inter-latin-wght-normal.woff2 +0 -0
  89. package/dist/public/fonts/inter-vietnamese-wght-normal.woff2 +0 -0
  90. package/dist/public/fonts/liberation-mono-regular.woff2 +0 -0
  91. package/dist/public/fonts/plus-jakarta-sans-cyrillic-ext-wght-normal.woff2 +0 -0
  92. package/dist/public/fonts/plus-jakarta-sans-latin-ext-wght-normal.woff2 +0 -0
  93. package/dist/public/fonts/plus-jakarta-sans-latin-wght-normal.woff2 +0 -0
  94. package/dist/public/fonts/plus-jakarta-sans-vietnamese-wght-normal.woff2 +0 -0
  95. package/dist/public/ide/android-studio.svg +10 -1
  96. package/dist/public/ide/antigravity.svg +3 -1
  97. package/dist/public/ide/cursor.svg +3 -12
  98. package/dist/public/ide/devin.svg +3 -1
  99. package/dist/public/ide/kiro.svg +2 -10
  100. package/dist/public/ide/terminal.svg +3 -7
  101. package/dist/public/ide/vscode.svg +5 -2
  102. package/dist/public/ide/windsurf.svg +2 -2
  103. package/dist/public/ide/xcode.svg +3 -2
  104. package/dist/public/index.html +19 -10
  105. package/dist/public/slack-app-icon.png +0 -0
  106. package/dist/scaffold-templates.json +2 -1
  107. package/package.json +10 -4
  108. package/dist/public/assets/account-view-DPM8TZiH.js +0 -1
  109. package/dist/public/assets/api-BcqwPTwD.js +0 -1
  110. package/dist/public/assets/async-error-boundary-B56Jpu_o.js +0 -1
  111. package/dist/public/assets/browser-tab-k2H96rcs.js +0 -8
  112. package/dist/public/assets/card-C2MSBS4a.js +0 -1
  113. package/dist/public/assets/commit-dialog-CPsT5k3n.js +0 -1
  114. package/dist/public/assets/context-menu-7zA2_Vvh.js +0 -1
  115. package/dist/public/assets/create-repo-dialog-wC-DyHKe.js +0 -1
  116. package/dist/public/assets/dialogs-config-C7xqDv5K.js +0 -51
  117. package/dist/public/assets/diff-view-dAnk7skm.js +0 -4
  118. package/dist/public/assets/explorer-file-drop-DaQtKkIj.js +0 -1
  119. package/dist/public/assets/explorer-tab-context-gi63e_bv.js +0 -1
  120. package/dist/public/assets/explorer-tab-view-ai_mDxBQ.js +0 -2
  121. package/dist/public/assets/explorer-tree-BZFGE0sU.js +0 -1
  122. package/dist/public/assets/explorer-view-D6MhosMA.js +0 -75
  123. package/dist/public/assets/git-history-dialog-Dd_DmfZC.js +0 -1
  124. package/dist/public/assets/git-ops-button-BhHIYXxb.js +0 -2
  125. package/dist/public/assets/history-view-DVqIaJOR.js +0 -16
  126. package/dist/public/assets/index-CyxfX_DC.css +0 -1
  127. package/dist/public/assets/index-D2AOIdVd.js +0 -75
  128. package/dist/public/assets/mcp-server-card-CuBKoFtN.js +0 -1
  129. package/dist/public/assets/merged-pr-dialog-M4vwv3lT.js +0 -1
  130. package/dist/public/assets/model-list-controls-DBAyi2PU.js +0 -1
  131. package/dist/public/assets/monaco-Br_kD0ds.css +0 -1
  132. package/dist/public/assets/monaco-D3l3Gbj2.js +0 -1209
  133. package/dist/public/assets/onboarding-BpwQ9yz5.js +0 -1
  134. package/dist/public/assets/project-env-vars-view-Cs3LO_18.js +0 -1
  135. package/dist/public/assets/project-model-aliases-view-Z5b4ZC1k.js +0 -1
  136. package/dist/public/assets/project-settings-view-BOO6FS8b.js +0 -1
  137. package/dist/public/assets/project-tools-view-cjwDYCta.js +0 -1
  138. package/dist/public/assets/providers-list-view-BBGnB3Rq.js +0 -1
  139. package/dist/public/assets/pull-request-dialog-VOoEmwTG.js +0 -1
  140. package/dist/public/assets/pull-with-changes-dialog-CoHIwHJZ.js +0 -1
  141. package/dist/public/assets/push-before-pr-dialog-9fV4cFz5.js +0 -1
  142. package/dist/public/assets/react-vendor-XZeum4Wo.js +0 -14
  143. package/dist/public/assets/settings-general-view-CDr9M3SH.js +0 -1
  144. package/dist/public/assets/settings-instructions-view-B2mWcZiS.js +0 -1
  145. package/dist/public/assets/settings-list-JqM9DgX9.js +0 -1
  146. package/dist/public/assets/settings-logs-view-BjlFrCXc.js +0 -5
  147. package/dist/public/assets/settings-mcp-servers-view-BmVtKqmN.js +0 -5
  148. package/dist/public/assets/settings-models-view-E-HNZWxO.js +0 -1
  149. package/dist/public/assets/settings-rules-view-CdOk3Osl.js +0 -8
  150. package/dist/public/assets/settings-skills-view-Cn-GySxU.js +0 -3
  151. package/dist/public/assets/settings-slash-commands-view-CqYBr6_A.js +0 -1
  152. package/dist/public/assets/settings-statistics-view-B92b4bKS.js +0 -1
  153. package/dist/public/assets/settings-subagents-view-AL0iV3gX.js +0 -2
  154. package/dist/public/assets/settings-system-prompt-view-B6CBgNW3.js +0 -1
  155. package/dist/public/assets/settings-telegram-view-DHQxRoFn.js +0 -1
  156. package/dist/public/assets/settings-view-CBLOR6Gr.js +0 -2
  157. package/dist/public/assets/skeleton-CK0EzL_G.js +0 -1
  158. package/dist/public/assets/slug-utils-CdbHvCiP.js +0 -1
  159. package/dist/public/assets/tasks-view-D1nPjESr.js +0 -2
  160. package/dist/public/assets/terminal-panel-kHJ-D0s7.css +0 -1
  161. package/dist/public/assets/terminal-panel-m9GEHtY2.js +0 -7
  162. package/dist/public/assets/ui-components-BuIiDdYp.js +0 -1
  163. package/dist/public/assets/use-deferred-search-hIqqinof.js +0 -1
  164. package/dist/public/assets/use-installed-ai-files-C1Uta9US.js +0 -1
  165. package/dist/public/assets/use-settings-page-loading-DtwNt6_e.js +0 -1
  166. package/dist/public/assets/utils-B1IYtes_.js +0 -1
  167. package/dist/public/assets/web-BF1VNxf3.js +0 -1
  168. package/dist/public/assets/web-BGxrdTO9.js +0 -1
  169. package/dist/public/assets/web-DrKfK3e-.js +0 -1
  170. package/dist/public/assets/web-LjAIxEG5.js +0 -1
  171. package/dist/public/fonts/google-sans.ttf +0 -0
  172. package/dist/public/snpro.woff2 +0 -0
@@ -0,0 +1 @@
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Ci as t,Fr as n,Ti as r,hn as i,i as a,nn as o,ut as s,v as c,wi as l,y as u}from"./interactive-WtOIgeV4.js";import{Wt as d}from"./react-vendor-DgnPMVt4.js";import{Bn as f,Fr as p,Ur as m,_n as h,mt as g,nt as _,rt as v,wo as y,xa as b}from"./onboarding-Dy7KG3M5.js";import{r as x}from"./store-CSyJjyNs.js";import{t as S}from"./use-toast-BFQ85Ly5.js";import{t as C}from"./skeleton-B_xdlo2b.js";import{t as w}from"./delete-confirm-dialog-DoRgqETX.js";var T=l(),E=e(r(),1),D=t();function O(e){let t=(0,T.c)(6),{title:n,description:r,children:i}=e,a;t[0]!==r||t[1]!==n?(a=(0,D.jsx)(v,{title:n,description:r,sticky:!1}),t[0]=r,t[1]=n,t[2]=a):a=t[2];let o;return t[3]!==i||t[4]!==a?(o=(0,D.jsxs)(g,{children:[a,i]}),t[3]=i,t[4]=a,t[5]=o):o=t[5],o}function k(){let e=(0,T.c)(2),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,D.jsxs)(`div`,{className:`flex-1 space-y-2 rounded-xl border bg-card p-5`,children:[(0,D.jsx)(C,{className:`h-4 w-20`}),(0,D.jsx)(C,{className:`h-9 w-28`})]}),e[0]=t):t=e[0];let n;return e[1]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,D.jsxs)(`div`,{className:`flex gap-4 px-6 pb-6 pt-6`,children:[t,(0,D.jsxs)(`div`,{className:`flex-1 space-y-3 rounded-xl border bg-card p-5`,children:[(0,D.jsx)(C,{className:`h-4 w-24`}),(0,D.jsx)(C,{className:`h-6 w-32`}),(0,D.jsx)(C,{className:`h-4 w-full`})]})]}),e[1]=n):n=e[1],n}function A(){let e=(0,T.c)(2),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,D.jsxs)(`div`,{className:`flex items-center justify-between gap-4 px-6 py-5`,children:[(0,D.jsxs)(`div`,{className:`flex-1 space-y-1`,children:[(0,D.jsx)(C,{className:`h-5 w-28`}),(0,D.jsx)(C,{className:`h-4 w-64`})]}),(0,D.jsx)(C,{className:`h-9 w-28 shrink-0`})]}),e[0]=t):t=e[0];let n;return e[1]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,D.jsxs)(`div`,{className:`divide-y divide-table-border`,children:[t,(0,D.jsxs)(`div`,{className:`flex items-center justify-between gap-4 px-6 py-5`,children:[(0,D.jsxs)(`div`,{className:`flex-1 space-y-1`,children:[(0,D.jsx)(C,{className:`h-5 w-36`}),(0,D.jsx)(C,{className:`h-4 w-56`}),(0,D.jsx)(C,{className:`h-4 w-32`})]}),(0,D.jsx)(C,{className:`h-9 w-24 shrink-0`})]})]}),e[1]=n):n=e[1],n}function j(){let[e,t]=(0,E.useState)(null),[r,l]=(0,E.useState)(!0),[g,v]=(0,E.useState)(!1),[C,T]=(0,E.useState)(!1),j=d(),M=x(e=>e.projects),N=(0,E.useMemo)(()=>M.reduce((e,t)=>e+t.threads.length,0),[M]);(0,E.useEffect)(()=>{P();let e=()=>{document.visibilityState===`visible`&&P()};return document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)},[]);async function P(){l(!0);try{t(await f())}catch(e){S({title:`Error`,description:e instanceof Error?e.message:`Failed to load account info`,variant:`destructive`})}finally{l(!1)}}function F(){p(`https://buy.stripe.com/14AcN6feK0Jjbheb2H3Nm03?client_reference_id=${e?.clientReferenceId??``}`)}function I(){p(`https://buy.stripe.com/9B67sMd6CgIh70Y0o33Nm04?client_reference_id=${e?.clientReferenceId??``}`)}async function L(){T(!0);try{if(await h(),b())try{await m()}catch{}window.close()}catch(e){T(!1),v(!1),S({title:`Error`,description:e instanceof Error?e.message:`Failed to delete account`,variant:`destructive`})}}let R=e?.plan===`unlimited-pro`,z=r&&e===null,B=e===null?r:!R;return(0,D.jsxs)(`div`,{className:`frosted-scrollbar flex h-full min-h-0 flex-col overflow-auto`,children:[(0,D.jsxs)(`div`,{className:`divide-y divide-table-border [&>*]:rounded-none`,children:[(0,D.jsx)(O,{title:`Account`,description:`Manage your Tarsk plan and prompt balance.`,children:z?(0,D.jsx)(k,{}):(0,D.jsxs)(`div`,{className:`flex gap-4 px-6 pb-6 pt-6`,children:[(0,D.jsxs)(`div`,{className:`flex-1 space-y-2 rounded-xl border bg-card p-5`,children:[(0,D.jsxs)(`div`,{className:a(n.label,`flex items-center gap-2 text-muted-foreground`),children:[(0,D.jsx)(s,{className:`h-4 w-4`}),`Balance`]}),(0,D.jsx)(`div`,{className:`flex items-end gap-2`,children:R?(0,D.jsx)(`span`,{className:n.stat,children:`Unlimited`}):(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(`span`,{className:n.stat,children:e?.promptsRemaining.toLocaleString()??0}),(0,D.jsx)(`span`,{className:`${n.caption} mb-1`,children:`prompts remaining`})]})})]}),(0,D.jsxs)(`div`,{className:`flex-1 space-y-3 rounded-xl border bg-card p-5`,children:[(0,D.jsxs)(`div`,{className:a(n.label,`flex items-center gap-2 text-muted-foreground`),children:[(0,D.jsx)(o,{className:`h-4 w-4`}),`Current Plan`]}),(0,D.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,D.jsx)(`span`,{className:n.label,children:R?`Unlimited Pro`:`Pay as you go`}),R&&(0,D.jsx)(`span`,{className:a(n.compact,`rounded-full bg-primary/10 px-2 py-0.5 font-medium text-primary`),children:`Active`})]}),(0,D.jsx)(`p`,{className:n.bodyMuted,children:R?`You have unlimited prompts with no restrictions.`:`Purchase prompts as needed. Upgrade to Pro for unlimited access.`})]})]})}),B?(0,D.jsx)(O,{title:`Add Prompts`,description:`Top up your balance or upgrade to Pro for unlimited access.`,children:z?(0,D.jsx)(A,{}):(0,D.jsxs)(`div`,{className:`divide-y divide-table-border`,children:[(0,D.jsxs)(`div`,{className:`flex items-center justify-between gap-4 px-6 py-5`,children:[(0,D.jsxs)(`div`,{className:`space-y-1`,children:[(0,D.jsx)(`span`,{className:n.label,children:`1,000 Prompts`}),(0,D.jsx)(`p`,{className:n.bodyMuted,children:`Top up your balance with 1,000 additional prompts for $5.`})]}),(0,D.jsx)(y,{onClick:F,className:`shrink-0`,children:`Top Up Balance`})]}),(0,D.jsxs)(`div`,{className:`flex items-center justify-between gap-4 px-6 py-5`,children:[(0,D.jsxs)(`div`,{className:`space-y-1`,children:[(0,D.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,D.jsx)(o,{className:`h-4 w-4 text-primary`}),(0,D.jsx)(`span`,{className:n.label,children:`Unlimited Pro Plan`})]}),(0,D.jsx)(`p`,{className:n.bodyMuted,children:`Unlimited prompts for $100 and lifetime access to Tarsk.`}),(0,D.jsxs)(`ul`,{className:a(n.bodyMuted,`space-y-0.5`),children:[(0,D.jsxs)(`li`,{className:`flex items-center gap-1.5`,children:[(0,D.jsx)(i,{className:`h-3 w-3 text-primary`}),`Unlimited prompts`]}),(0,D.jsxs)(`li`,{className:`flex items-center gap-1.5`,children:[(0,D.jsx)(i,{className:`h-3 w-3 text-primary`}),`Priority access`]})]})]}),(0,D.jsx)(y,{onClick:I,className:`shrink-0`,children:`Purchase`})]})]})}):null,(0,D.jsx)(O,{title:`Delete Account`,description:`Permanently delete the Tarsk database and any logs on this device.`,children:(0,D.jsxs)(`div`,{className:`space-y-4 px-6 pb-6 pt-6`,children:[N>0?(0,D.jsxs)(_,{variant:`error`,children:[(0,D.jsxs)(`span`,{className:`flex items-start gap-2`,children:[(0,D.jsx)(c,{className:`mt-0.5 h-4 w-4 shrink-0`}),(0,D.jsxs)(`span`,{children:[`You have `,N,` workspace`,` `,N===1?`folder`:`folders`,` listed in Storage. Clear`,` `,N===1?`it`:`them`,` first under Storage — deleting your account does not remove those folders.`]})]}),(0,D.jsx)(`div`,{className:`mt-3`,children:(0,D.jsx)(y,{variant:`outline`,size:`sm`,onClick:()=>j(`/settings/storage`),children:`Go to Storage`})})]}):null,(0,D.jsx)(`p`,{className:n.bodyMuted,children:`This removes the Tarsk database and any logs on this machine and cannot be undone.`}),(0,D.jsxs)(y,{variant:`destructive`,onClick:()=>v(!0),children:[(0,D.jsx)(u,{className:`h-4 w-4`}),`Delete Account`]})]})})]}),(0,D.jsx)(w,{open:g,onOpenChange:e=>{!e&&!C&&v(!1)},title:`Delete account?`,description:`This permanently deletes the Tarsk database and any logs on this device. The app will close and you can relaunch it. This action cannot be undone.`,onConfirm:()=>void L(),confirming:C,confirmLabel:`Delete Account`,confirmingLabel:`Deleting...`})]})}export{j as default};
@@ -0,0 +1 @@
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Ci as t,Fr as n,Ti as r,i,wi as a}from"./interactive-WtOIgeV4.js";import{$ as o,J as s,Q as c,X as l,Y as u,Z as d,et as f,tt as p}from"./react-vendor-DgnPMVt4.js";import{To as m,U as h}from"./onboarding-Dy7KG3M5.js";var g=a(),_=e(r(),1),v=t();function y(e){let t=(0,g.c)(14),n,r,i,a;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4]):({open:i,defaultOpen:n,onOpenChange:r,...a}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a);let o;t[5]!==n||t[6]!==r||t[7]!==i?(o={open:i,defaultOpen:n,onOpenChange:r},t[5]=n,t[6]=r,t[7]=i,t[8]=o):o=t[8];let s=h(o),c;return t[9]!==n||t[10]!==s||t[11]!==i||t[12]!==a?(c=(0,v.jsx)(f,{open:i,defaultOpen:n,onOpenChange:s,...a}),t[9]=n,t[10]=s,t[11]=i,t[12]=a,t[13]=c):c=t[13],c}var b=o,x=_.forwardRef((e,t)=>{let n=(0,g.c)(9),r,a;n[0]===e?(r=n[1],a=n[2]):({className:r,...a}=e,n[0]=e,n[1]=r,n[2]=a);let o;n[3]===r?o=n[4]:(o=i(`fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0`,r),n[3]=r,n[4]=o);let s;return n[5]!==a||n[6]!==t||n[7]!==o?(s=(0,v.jsx)(c,{className:o,...a,ref:t}),n[5]=a,n[6]=t,n[7]=o,n[8]=s):s=n[8],s});x.displayName=c.displayName;var S=_.forwardRef((e,t)=>{let n=(0,g.c)(10),r,a;n[0]===e?(r=n[1],a=n[2]):({className:r,...a}=e,n[0]=e,n[1]=r,n[2]=a);let o;n[3]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,v.jsx)(x,{}),n[3]=o):o=n[3];let s;n[4]===r?s=n[5]:(s=i(`fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg`,r),n[4]=r,n[5]=s);let c;return n[6]!==a||n[7]!==t||n[8]!==s?(c=(0,v.jsxs)(b,{children:[o,(0,v.jsx)(l,{ref:t,className:s,...a})]}),n[6]=a,n[7]=t,n[8]=s,n[9]=c):c=n[9],c});S.displayName=l.displayName;var C=e=>{let t=(0,g.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let a;t[3]===n?a=t[4]:(a=i(`flex flex-col space-y-2 text-center sm:text-left`,n),t[3]=n,t[4]=a);let o;return t[5]!==r||t[6]!==a?(o=(0,v.jsx)(`div`,{className:a,...r}),t[5]=r,t[6]=a,t[7]=o):o=t[7],o};C.displayName=`AlertDialogHeader`;var w=e=>{let t=(0,g.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let a;t[3]===n?a=t[4]:(a=i(`flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2`,n),t[3]=n,t[4]=a);let o;return t[5]!==r||t[6]!==a?(o=(0,v.jsx)(`div`,{className:a,...r}),t[5]=r,t[6]=a,t[7]=o):o=t[7],o};w.displayName=`AlertDialogFooter`;var T=_.forwardRef((e,t)=>{let r=(0,g.c)(9),a,o;r[0]===e?(a=r[1],o=r[2]):({className:a,...o}=e,r[0]=e,r[1]=a,r[2]=o);let s;r[3]===a?s=r[4]:(s=i(n.dialogTitle,a),r[3]=a,r[4]=s);let c;return r[5]!==o||r[6]!==t||r[7]!==s?(c=(0,v.jsx)(p,{ref:t,className:s,...o}),r[5]=o,r[6]=t,r[7]=s,r[8]=c):c=r[8],c});T.displayName=p.displayName;var E=_.forwardRef((e,t)=>{let r=(0,g.c)(9),a,o;r[0]===e?(a=r[1],o=r[2]):({className:a,...o}=e,r[0]=e,r[1]=a,r[2]=o);let s;r[3]===a?s=r[4]:(s=i(n.dialogDescription,a),r[3]=a,r[4]=s);let c;return r[5]!==o||r[6]!==t||r[7]!==s?(c=(0,v.jsx)(d,{ref:t,className:s,...o}),r[5]=o,r[6]=t,r[7]=s,r[8]=c):c=r[8],c});E.displayName=d.displayName;var D=_.forwardRef((e,t)=>{let n=(0,g.c)(9),r,a;n[0]===e?(r=n[1],a=n[2]):({className:r,...a}=e,n[0]=e,n[1]=r,n[2]=a);let o;n[3]===r?o=n[4]:(o=i(m(),r),n[3]=r,n[4]=o);let c;return n[5]!==a||n[6]!==t||n[7]!==o?(c=(0,v.jsx)(s,{ref:t,className:o,...a}),n[5]=a,n[6]=t,n[7]=o,n[8]=c):c=n[8],c});D.displayName=s.displayName;var O=_.forwardRef((e,t)=>{let n=(0,g.c)(9),r,a;n[0]===e?(r=n[1],a=n[2]):({className:r,...a}=e,n[0]=e,n[1]=r,n[2]=a);let o;n[3]===r?o=n[4]:(o=i(m({variant:`outline`}),`mt-2 sm:mt-0`,r),n[3]=r,n[4]=o);let s;return n[5]!==a||n[6]!==t||n[7]!==o?(s=(0,v.jsx)(u,{ref:t,className:o,...a}),n[5]=a,n[6]=t,n[7]=o,n[8]=s):s=n[8],s});O.displayName=u.displayName;export{E as a,T as c,S as i,D as n,w as o,O as r,C as s,y as t};
@@ -0,0 +1 @@
1
+ import{_a as e,da as t,fa as n,ga as r,ha as i,pa as a,va as o,ya as s}from"./onboarding-Dy7KG3M5.js";async function c(e,t,r=!1){return a(`api/threads/${n(e)}/explorer?path=${encodeURIComponent(t)}&recursive=${r}`)}async function l(e,t){return a(`api/threads/${n(e)}/ai-file?path=${encodeURIComponent(t)}`)}async function u(e,t,r){return s(`api/threads/${n(e)}/ai-file`,{path:t,content:r})}async function d(e,r){return t(`api/threads/${n(e)}/explorer?path=${encodeURIComponent(r)}`)}async function f(e,t,i){return r(`api/threads/${n(e)}/explorer`,{path:t,newName:i})}async function p(t,r,i){return e(`api/threads/${n(t)}/explorer/file`,{dirPath:r,name:i})}async function m(e,t,r){let i=new URLSearchParams({dirPath:t,name:r.name});return o(`api/threads/${n(e)}/explorer/upload?${i.toString()}`,r)}async function h(e,t){return i(`api/threads/${n(e)}/explorer/media?path=${encodeURIComponent(t)}`)}async function g(t,r,i){return e(`api/threads/${n(t)}/explorer/folder`,{dirPath:r,name:i})}async function _(t,r){return e(`api/threads/${n(t)}/explorer/open`,{path:r})}async function v(t,r){return e(`api/threads/${n(t)}/explorer/print-markdown`,{path:r})}export{l as a,v as c,m as d,h as i,f as l,g as n,c as o,d as r,_ as s,p as t,u};
@@ -0,0 +1 @@
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Ci as t,Fr as n,Jn as r,Ti as i}from"./interactive-WtOIgeV4.js";import{wo as a}from"./onboarding-Dy7KG3M5.js";import{i as o,n as s,r as c,t as l}from"./card-xQfAy2Rx.js";var u=e(i(),1),d=t(),f=r(`app.async-error-boundary.ui`),p=class extends u.Component{state={error:null};static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,t){f.error(`AsyncErrorBoundary caught an error`,{error:e,info:t})}handleRetry=()=>{this.setState({error:null}),this.props.onRetry?.()};render(){let{error:e}=this.state;return e?this.props.renderFallback?this.props.renderFallback(e,this.handleRetry):(0,d.jsx)(`div`,{className:`flex h-full items-center justify-center p-6`,children:(0,d.jsxs)(l,{className:`max-w-md`,children:[(0,d.jsx)(c,{children:(0,d.jsx)(o,{className:`text-destructive`,children:this.props.fallbackTitle??`Something went wrong`})}),(0,d.jsxs)(s,{className:`space-y-4`,children:[(0,d.jsx)(`p`,{className:n.body,children:e.message}),(0,d.jsx)(a,{variant:`outline`,onClick:this.handleRetry,children:`Retry`})]})]})}):this.props.children}};export{p as t};
@@ -0,0 +1,8 @@
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{C as t,Ci as n,Cn as r,Fr as i,H as a,Jn as o,Qt as s,Sn as c,Ti as l,i as u,it as d,k as f,ot as p,wi as m}from"./interactive-WtOIgeV4.js";import{Ct as h,Fr as g,G as _,St as v,Tt as ee,W as y,wt as b,x,xa as te}from"./onboarding-Dy7KG3M5.js";import{r as ne}from"./store-CSyJjyNs.js";import{t as re}from"./use-toast-BFQ85Ly5.js";import{K as ie,W as ae,c as oe,ht as se,l as ce,m as le,p as ue,z as de}from"./index-cAZJlfDA.js";import{t as fe}from"./use-active-dock-panel-instance-CKEkba2q.js";var S=e(l(),1),C=m();function w(e){if(!e)return null;if(typeof e==`string`)try{let t=JSON.parse(e);return t&&typeof t==`object`?t:null}catch{return null}return typeof e==`object`?e:null}function pe(e){let t=w(e);if(!t||t.type!==`tarsk-browser-page-title`)return null;let n=t.payload;if(!n||typeof n!=`object`)return null;let r=n.title;return typeof r==`string`?r:null}function me(e){return pe(e)}function T(e){return!e?.trim()}function he(e,t){return T(t)?e:t.trim()}var E=n(),ge=o(`app.browser-tab.ui`);function _e(e){let t=e.trim();return t?(!t.startsWith(`http://`)&&!t.startsWith(`https://`)&&(t=`http://${t}`),t):``}function ve(e){return e?e.querySelector(`electrobun-webview`):null}function ye(e){e.webviewId!=null&&(e.toggleHidden(!0),e.togglePassthrough(!0))}function D(e){e.webviewId!=null&&(e.toggleHidden(!1),e.togglePassthrough(!1),e.syncDimensions(!0))}function be(e,t){if(t){D(e);return}ye(e)}function xe(e){return e!=null&&e.getClientRects().length>0}function Se(e,t,n){let r=!1,i=0;function a(){if(!r){if(e.webviewId==null){i=requestAnimationFrame(a);return}t&&e.getAttribute(`src`)!==t&&e.loadURL(t),be(e,n())}}return i=requestAnimationFrame(a),function(){r=!0,cancelAnimationFrame(i)}}function O(e,t=!1){return`(function () {
2
+ const api = window.__tarskBrowserPreview;
3
+ if (!api || typeof api.setSelectMode !== "function") {
4
+ log.error("[browser-preview] selection API is not available");
5
+ return;
6
+ }
7
+ api.setSelectMode(${e?`true`:`false`}, ${t?`true`:`false`});
8
+ })();`}function Ce(e,t,n=!1){if(typeof e.executeJavascript!=`function`)throw Error(`Browser preview webview JS execution is not available`);try{e.executeJavascript(O(t,n))}catch(r){throw ge.error(`[browser-preview] Failed to toggle native preview selection mode`,{enabled:t,preserveSelection:n,src:e.src,webview_id:e.webviewId,error:r instanceof Error?r.message:String(r),stack:r instanceof Error?r.stack:void 0}),r}}function we(e,t,n=!1){let r=e.contentWindow;if(!r)throw Error(`Browser preview frame is not ready`);let i=r.__tarskBrowserPreview;if(!i?.setSelectMode)throw Error(`Browser preview selection API is not available in iframe preview`);i.setSelectMode(t,n)}function k(e){let t=(0,C.c)(16),{onClick:n,label:r,children:i,isActive:a,disabled:o,activeStyle:s}=e,c=a===void 0?!1:a,l=o===void 0?!1:o,d=s===void 0?`elevated`:s,f=l&&`cursor-not-allowed text-muted-foreground/50`,p=!l&&!c&&`text-muted-foreground hover:bg-background/50 hover:text-foreground`,m=!l&&c&&d===`depressed`&&`bg-muted text-primary shadow-[inset_0_2px_4px_rgba(0,0,0,0.14)] ring-1 ring-inset ring-border/80 dark:shadow-[inset_0_2px_4px_rgba(0,0,0,0.35)]`,g=!l&&c&&d===`elevated`&&`bg-background text-foreground shadow-sm`,_;t[0]!==f||t[1]!==p||t[2]!==m||t[3]!==g?(_=u(`rounded p-1.5 transition-all`,f,p,m,g),t[0]=f,t[1]=p,t[2]=m,t[3]=g,t[4]=_):_=t[4];let y;t[5]!==i||t[6]!==l||t[7]!==c||t[8]!==n||t[9]!==_?(y=(0,E.jsx)(ee,{asChild:!0,children:(0,E.jsx)(`button`,{type:`button`,onClick:n,disabled:l,"aria-pressed":c,className:_,children:i})}),t[5]=i,t[6]=l,t[7]=c,t[8]=n,t[9]=_,t[10]=y):y=t[10];let b;t[11]===r?b=t[12]:(b=(0,E.jsx)(h,{children:r}),t[11]=r,t[12]=b);let x;return t[13]!==b||t[14]!==y?(x=(0,E.jsxs)(v,{children:[y,b]}),t[13]=b,t[14]=y,t[15]=x):x=t[15],x}function A({instanceId:e}){let n=fe(e,`browser`),{devServerUrl:o,devServerStopped:l}=ie(),{browserResetTrigger:m,setBrowserPageTitle:h,browserDeviceMode:v,setBrowserDeviceMode:ee,isSelectModeEnabled:C,setIsSelectModeEnabled:w,setSelectedBrowserElement:T,setIsSelectionPromptOpen:D,isSelectionPromptOpen:O,setBrowserAgentProcessingThreadId:A}=de(),j=ne(e=>e.selectedProjectId),Te=ne(e=>e.projects).find(e=>e.projectId===j),[Ee,M]=(0,S.useState)(``),[N,P]=(0,S.useState)(``),[F,I]=(0,S.useState)(``),[L,De]=(0,S.useState)(v),R=(0,S.useRef)(null),Oe=(0,S.useRef)(F),z=(0,S.useRef)(null),B=(0,S.useRef)(null),V=te(),ke=se(),H=V&&!!N,[U,Ae]=(0,S.useState)(H),[je,Me]=(0,S.useState)(!0),[W,G]=(0,S.useState)(null),Ne=(0,S.useSyncExternalStore)(ce,oe),Pe=(0,S.useSyncExternalStore)(_,y),K=n&&(je&&!Pe||Ne),Fe=(0,S.useRef)(K);Oe.current=F,Fe.current=K;let q=(0,S.useCallback)(function(){return Fe.current},[]),J=(0,S.useCallback)(function(){Me(xe(B.current))},[]);(0,S.useEffect)(()=>{De(v)},[v]);function Y(e){De(e),ee(e)}function X(){return R.current??ve(B.current)}(0,S.useLayoutEffect)(J),(0,S.useEffect)(()=>{let e=B.current;if(!e)return;let t=new ResizeObserver(J);return t.observe(e),function(){t.disconnect()}},[J,N,U]),(0,S.useLayoutEffect)(()=>{if(!V)return;if(H){Ae(!0);return}let e=X();e&&ye(e);let t=requestAnimationFrame(()=>{Ae(!1)});return function(){cancelAnimationFrame(t)}},[H,V,N]),(0,S.useEffect)(()=>{P(``),I(``),M(``),G(null),h(null),w(!1),T(null),D(!1),A(null);let e=R.current;e&&(e.src=``),z.current&&(z.current.src=``)},[m,A,h,w,D,T]);let Z=(0,S.useRef)(N),Q=(0,S.useRef)(null);Z.current=N,(0,S.useEffect)(()=>{if(l&&!o){P(``),I(``),M(``),G(null),n&&(w(!1),T(null),D(!1),A(null));let e=R.current;e&&(e.src=``),z.current&&(z.current.src=``);return}if(!o)return;let e=_e(o);M(e),(!Z.current||Z.current===Q.current)&&(P(e),I(e),Q.current=e),G(null),n&&(w(!1),T(null),D(!1),A(null))},[o,l,n,A,w,D,T]);let Ie=(0,S.useCallback)(e=>{R.current=e,e&&Se(e,Oe.current,q)},[q]);(0,S.useLayoutEffect)(()=>{if(!V||!U)return;let e=X();!e||e.webviewId==null||be(e,K)},[U,V,N,L,K]),(0,S.useEffect)(()=>{let e=X();if(!(!V||!e||!F||!U))return Se(e,F,q)},[F,V,N,U,q]),(0,S.useEffect)(()=>{let e=X();if(!V||!e||!U)return;function t(e){let t=typeof e.detail==`string`?e.detail:N;t&&(P(t),I(``),M(t))}function n(e){let t=typeof e.detail==`string`?e.detail:N;t&&(P(t),M(t))}function r(e){let t=e.detail,n=typeof t==`string`?t:typeof t==`object`&&t&&`url`in t?String(t.url):``;n&&g(n)}function i(e){let t=me(e.detail);if(t!=null){h(e=>he(e,t));return}let n=le(e.detail);n&&(G(null),ue(n))}return e.on(`did-navigate`,t),e.on(`did-navigate-in-page`,n),e.on(`new-window-open`,r),e.on(`host-message`,i),function(){e.off(`did-navigate`,t),e.off(`did-navigate-in-page`,n),e.off(`new-window-open`,r),e.off(`host-message`,i)}},[N,V,U,h]),(0,S.useEffect)(()=>{if(!n)return;function e(e){let t=pe(e.data);t!=null&&h(e=>he(e,t))}return window.addEventListener(`message`,e),function(){window.removeEventListener(`message`,e)}},[n,h]),(0,S.useEffect)(()=>{if(n)return function(){h(null)}},[n,h]);function Le(e){let t=_e(e);t&&(M(t),P(t),I(t),G(null),w(!1),T(null),D(!1))}function Re(e){e.key===`Enter`&&Le(Ee)}function ze(){if(G(null),w(!1),T(null),D(!1),V){let e=X();e&&e.reload();return}let e=z.current;if(!e)return;let t=e.src;e.src=``,requestAnimationFrame(()=>{e.src=t})}function Be(){if(G(null),w(!1),T(null),D(!1),V){let e=X();e&&e.executeJavascript(`history.back()`);return}He(-1)}function Ve(){if(G(null),w(!1),T(null),D(!1),V){let e=X();e&&e.executeJavascript(`history.forward()`);return}He(1)}function He(e){let t=z.current;if(!(!t||!t.contentWindow))try{e<0?t.contentWindow.history.back():t.contentWindow.history.forward()}catch{}}(0,S.useEffect)(()=>{if(!n)return;if(!N){C&&w(!1);return}let e=!1,t=!C&&O;function r(){try{if(V){let e=X();if(!e||e.webviewId==null||!U)return;Ce(e,C,t);return}let e=z.current;if(!e)return;we(e,C,t)}catch(t){if(e||!C)return;let n=t instanceof Error?t.message:`Could not enable element selection.`;ge.error(`Failed to toggle browser selection mode:`,t),G(n),w(!1),re({title:`Selection mode unavailable`,description:n,variant:`destructive`})}}return r(),function(){e=!0}},[N,n,C,O,U,w,V]);function Ue(){G(null),w(e=>!e)}let We={desktop:{width:`100%`,height:`100%`},tablet:{width:`768px`,height:`1024px`},mobile:{width:`375px`,height:`667px`}}[L];function $(){return V?U?(0,S.createElement)(`electrobun-webview`,{ref:Ie,src:N,preload:ke,renderer:`native`,className:`block h-full w-full bg-background`}):null:(0,E.jsx)(`iframe`,{ref:z,src:N,className:`h-full w-full border-none`,title:`Browser`,sandbox:`allow-same-origin allow-scripts allow-forms allow-popups allow-modals allow-downloads`})}return n?(0,E.jsx)(b,{children:(0,E.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col overflow-hidden`,children:[(0,E.jsx)(`div`,{className:`relative shrink-0 border-b border-border`,children:(0,E.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2`,children:[N&&(0,E.jsx)(k,{onClick:Be,label:`Back`,children:(0,E.jsx)(r,{size:15})}),N&&(0,E.jsx)(k,{onClick:Ve,label:`Forward`,children:(0,E.jsx)(c,{size:15})}),(0,E.jsx)(x,{type:`text`,value:Ee,onChange:e=>M(e.target.value),onKeyDown:Re,placeholder:`Enter URL...`,className:u(`flex-1 rounded-full bg-muted font-mono`),spellCheck:!1}),N&&(0,E.jsx)(k,{onClick:ze,label:`Refresh page`,children:(0,E.jsx)(a,{size:15})}),N&&(0,E.jsx)(k,{onClick:Ue,label:W?`Select element unavailable: ${W}`:C?`Exit element selection`:`Select element from preview`,isActive:C,activeStyle:`depressed`,children:(0,E.jsx)(d,{size:15})}),N&&(0,E.jsxs)(`div`,{className:`flex items-center rounded-md bg-muted p-0.5`,children:[(0,E.jsx)(k,{onClick:()=>Y(`desktop`),label:`Desktop view`,isActive:L===`desktop`,children:(0,E.jsx)(p,{size:15})}),(0,E.jsx)(k,{onClick:()=>Y(`tablet`),label:`Tablet view`,isActive:L===`tablet`,children:(0,E.jsx)(t,{size:15})}),(0,E.jsx)(k,{onClick:()=>Y(`mobile`),label:`Mobile view`,isActive:L===`mobile`,children:(0,E.jsx)(f,{size:15})})]}),N&&(0,E.jsx)(k,{onClick:()=>void g(N),label:`Open in external browser`,children:(0,E.jsx)(s,{size:15})})]})}),N?(0,E.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col bg-background`,children:[W&&(0,E.jsxs)(`div`,{className:`border-b border-destructive/20 bg-destructive/5 px-3 py-2 text-sm text-destructive`,children:[`Element selection is unavailable: `,W]}),(0,E.jsx)(`div`,{ref:B,className:u(`flex min-h-0 flex-1 items-center justify-center bg-background`,C&&`cursor-crosshair`),children:(0,E.jsx)(`div`,{className:`overflow-hidden border border-border bg-background shadow-sm ${L===`desktop`?`h-full w-full rounded-none border-0 shadow-none`:`rounded-lg`}`,style:{width:We.width,height:We.height,maxWidth:`100%`,maxHeight:`100%`},children:$()})})]}):(0,E.jsx)(`div`,{className:`flex flex-1 flex-col items-center justify-center gap-6 text-muted-foreground`,children:l?(0,E.jsx)(`p`,{className:i.body,children:`Dev server stopped`}):j&&Te?.runCommand?(0,E.jsx)(ae,{projectId:j,runCommand:Te.runCommand,large:!0}):(0,E.jsx)(`p`,{className:i.body,children:`Enter a URL to browse`})})]})}):(0,E.jsx)(`div`,{className:`hidden`,"aria-hidden":`true`,children:(0,E.jsx)(`div`,{ref:B,children:$()})})}export{A as BrowserTab};
@@ -0,0 +1 @@
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Ci as t,Fr as n,Ti as r,i,wi as a}from"./interactive-WtOIgeV4.js";var o=a(),s=e(r(),1),c=t(),l=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,a;n[0]===e?(r=n[1],a=n[2]):({className:r,...a}=e,n[0]=e,n[1]=r,n[2]=a);let s;n[3]===r?s=n[4]:(s=i(`rounded-lg border bg-card text-card-foreground shadow-sm`,r),n[3]=r,n[4]=s);let l;return n[5]!==a||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`div`,{ref:t,className:s,...a}),n[5]=a,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});l.displayName=`Card`;var u=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,a;n[0]===e?(r=n[1],a=n[2]):({className:r,...a}=e,n[0]=e,n[1]=r,n[2]=a);let s;n[3]===r?s=n[4]:(s=i(`flex flex-col space-y-1.5 p-6`,r),n[3]=r,n[4]=s);let l;return n[5]!==a||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`div`,{ref:t,className:s,...a}),n[5]=a,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});u.displayName=`CardHeader`;var d=s.forwardRef((e,t)=>{let r=(0,o.c)(9),a,s;r[0]===e?(a=r[1],s=r[2]):({className:a,...s}=e,r[0]=e,r[1]=a,r[2]=s);let l;r[3]===a?l=r[4]:(l=i(n.sectionTitle,`leading-none tracking-tight`,a),r[3]=a,r[4]=l);let u;return r[5]!==s||r[6]!==t||r[7]!==l?(u=(0,c.jsx)(`div`,{ref:t,className:l,...s}),r[5]=s,r[6]=t,r[7]=l,r[8]=u):u=r[8],u});d.displayName=`CardTitle`;var f=s.forwardRef((e,t)=>{let r=(0,o.c)(9),a,s;r[0]===e?(a=r[1],s=r[2]):({className:a,...s}=e,r[0]=e,r[1]=a,r[2]=s);let l;r[3]===a?l=r[4]:(l=i(n.bodyMuted,a),r[3]=a,r[4]=l);let u;return r[5]!==s||r[6]!==t||r[7]!==l?(u=(0,c.jsx)(`div`,{ref:t,className:l,...s}),r[5]=s,r[6]=t,r[7]=l,r[8]=u):u=r[8],u});f.displayName=`CardDescription`;var p=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,a;n[0]===e?(r=n[1],a=n[2]):({className:r,...a}=e,n[0]=e,n[1]=r,n[2]=a);let s;n[3]===r?s=n[4]:(s=i(`p-6 pt-0`,r),n[3]=r,n[4]=s);let l;return n[5]!==a||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`div`,{ref:t,className:s,...a}),n[5]=a,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});p.displayName=`CardContent`;var m=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,a;n[0]===e?(r=n[1],a=n[2]):({className:r,...a}=e,n[0]=e,n[1]=r,n[2]=a);let s;n[3]===r?s=n[4]:(s=i(`flex items-center p-6 pt-0`,r),n[3]=r,n[4]=s);let l;return n[5]!==a||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`div`,{ref:t,className:s,...a}),n[5]=a,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});m.displayName=`CardFooter`;export{d as i,p as n,u as r,l as t};
@@ -0,0 +1 @@
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Ci as t,Jn as n,Ti as r,Wn as i,dr as a,wi as o}from"./interactive-WtOIgeV4.js";import{dr as s,ti as c}from"./onboarding-Dy7KG3M5.js";import{i as ee,n as l,q as u,r as d}from"./store-CSyJjyNs.js";var f=e(r(),1),te=o();function p({nonChatWindows:e,expandedWindowId:t,selectedWindowId:n,threadIds:r,threadMultiPaneStates:i}){let a={};for(let e of r){let t=i[e];!t||Object.keys(t.extraChatPanes).length===0||(a[e]={focusedPaneId:t.focusedPane,panes:Object.entries(t.extraChatPanes).map(([e,t])=>({paneId:e,conversationId:t.conversationId}))})}return{version:1,nonChatWindows:e,layout:t===null?`grid`:`expanded`,expandedWindowId:t,selectedWindowId:n,chatPanesByThread:a}}function m(e,t){let n=new Set(t?e.chatPanesByThread[t]?.panes.map(e=>e.paneId)??[]:[]),r=new Set(e.nonChatWindows.map(e=>e.id)),i=n.size>0||r.size>0;function o(e){return e===`primary`||e!==null&&(n.has(e)||r.has(e))}let s=o(e.selectedWindowId)?e.selectedWindowId:a,c=null;return e.layout===`expanded`&&i&&(c=o(e.expandedWindowId)?e.expandedWindowId:a),{nonChatWindows:e.nonChatWindows,expandedWindowId:c,selectedWindowId:s}}var h=n(`app.window-state`);function g(e,t,n){return JSON.stringify({nonChatWindows:e,expandedWindowId:t,selectedWindowId:n})}function _({nonChatWindows:e,expandedWindowId:t,selectedWindowId:n,onReset:r,onHydrate:i}){let a=l(),o=d(e=>e.selectedProjectId),ee=d(e=>e.projects),te=d(e=>e.threadMultiPaneStates),m=ee.find(e=>e.projectId===o),_=(m?.threads.map(e=>e.threadId)??[]).join(`\0`),v=m!==void 0,[y,b]=(0,f.useState)(null),x=(0,f.useRef)(null),S=(0,f.useRef)(Promise.resolve()),ne=(0,f.useRef)(null),re=(0,f.useRef)(0),C=(0,f.useRef)(g(e,t,n));C.current=g(e,t,n),(0,f.useEffect)(()=>{let e=ne.current!==o;if(ne.current=o,!o||!v){r(),b(null),x.current=null;return}e&&(r(),b(null),x.current=null);let t=o,n=_?_.split(`\0`):[],c=C.current,ee=++re.current,l=!1;async function d(){try{let e=await s(t);if(l||ee!==re.current)return;if(a({type:u.HydrateProjectChatPanes,threadIds:n,chatPanesByThread:e.chatPanesByThread}),C.current!==c){b(t);return}x.current=JSON.stringify(e),i(e),b(t)}catch(e){l||h.error(`Failed to restore project window state`,e)}}return d(),()=>{l=!0}},[a,v,i,r,_,o]),(0,f.useEffect)(()=>{if(!o||o!==y||!v)return;let r=p({nonChatWindows:e,expandedWindowId:t,selectedWindowId:n,threadIds:_?_.split(`\0`):[],threadMultiPaneStates:te}),i=JSON.stringify(r);if(i===x.current)return;let a=o;x.current=i,S.current=S.current.catch(()=>void 0).then(()=>c(a,r)).catch(e=>{h.error(`Failed to save project window state`,e),x.current===i&&(x.current=null)})},[t,v,y,e,o,n,_,te])}var v=t(),y=(0,f.createContext)(null);function b(e){let t=(0,te.c)(67),{children:n}=e,r=l(),o=ee(),s=d(re),c=d(ne),p;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(p=[],t[0]=p):p=t[0];let[h,g]=(0,f.useState)(p),[b,C]=(0,f.useState)(!0),[w,T]=(0,f.useState)(null),[E,D]=(0,f.useState)(a),[ie,O]=(0,f.useState)(null),k;t[1]===c?k=t[2]:(k=Object.keys(c).map(S),t[1]=c,t[2]=k);let ae=k,A;t[3]!==ae||t[4]!==h?(A=[...ae,...h],t[3]=ae,t[4]=h,t[5]=A):A=t[5];let j=A,M;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(M=()=>{g([]),C(!0),T(null),D(a),O(null)},t[6]=M):M=t[6];let oe=M,N;t[7]===o?N=t[8]:(N=e=>{let t=m(e,o.getState().selectedThreadId);g(t.nonChatWindows),T(t.expandedWindowId),D(t.selectedWindowId),O(null)},t[7]=o,t[8]=N);let se=N,P;t[9]!==w||t[10]!==se||t[11]!==h||t[12]!==E?(P={nonChatWindows:h,expandedWindowId:w,selectedWindowId:E,onReset:oe,onHydrate:se},t[9]=w,t[10]=se,t[11]=h,t[12]=E,t[13]=P):P=t[13],_(P);let F,I;t[14]!==w||t[15]!==c||t[16]!==b||t[17]!==j?(F=()=>{if(w){if(w===`primary`){if(b)return;T(j.length>0?j[0].id:null);return}!j.some(e=>e.id===w)&&!c[w]&&T(b?a:j[0]?.id??null)}},I=[w,c,b,j],t[14]=w,t[15]=c,t[16]=b,t[17]=j,t[18]=F,t[19]=I):(F=t[18],I=t[19]),(0,f.useEffect)(F,I);let L,R;t[20]!==c||t[21]!==b||t[22]!==E||t[23]!==j?(R=()=>{if(E===`primary`){if(b||j.length===0)return;D(j[0].id);return}!j.some(e=>e.id===E)&&!c[E]&&D(b?a:j[0]?.id??`primary`)},L=[c,b,E,j],t[20]=c,t[21]=b,t[22]=E,t[23]=j,t[24]=L,t[25]=R):(L=t[24],R=t[25]),(0,f.useEffect)(R,L);let z,B;t[26]!==w||t[27]!==j.length?(z=()=>{j.length===0&&w!==null&&T(null)},B=[w,j.length],t[26]=w,t[27]=j.length,t[28]=z,t[29]=B):(z=t[28],B=t[29]),(0,f.useEffect)(z,B);let V;t[30]===Symbol.for(`react.memo_cache_sentinel`)?(V=e=>{D(e)},t[30]=V):V=t[30];let ce=V,H;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(H=e=>{D(e),T(e)},t[31]=H):H=t[31];let le=H,U;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(U=()=>{T(null)},t[32]=U):U=t[32];let ue=U,W;t[33]!==b||t[34]!==j.length?(W=e=>{e===`primary`&&C(!0),T(t=>t===null&&j.length>0||t===null&&b&&e!==`primary`?null:e),O(e)},t[33]=b,t[34]=j.length,t[35]=W):W=t[35];let G=W,K;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(K=()=>{O(null)},t[36]=K):K=t[36];let de=K,q;t[37]!==r||t[38]!==G||t[39]!==s?(q=e=>{let t=i();return e===`chat`?s?(r({type:u.AddChatPane,paneId:t,conversationId:i()}),G(t),t):t:(g(n=>[...n,{id:t,panelId:e}]),G(t),t)},t[37]=r,t[38]=G,t[39]=s,t[40]=q):q=t[40];let fe=q,J;t[41]!==r||t[42]!==b||t[43]!==j?(J=e=>{if(e===`primary`){C(!1);let e=j[0]?.id??null;T(t=>j.length===0?null:t===`primary`?e:t),D(t=>t===`primary`&&e?e:t);return}let t=j.find(t=>t.id===e);t&&(t.panelId===`chat`?r({type:u.RemoveChatPane,paneId:e}):g(t=>t.filter(t=>t.id!==e)),T(t=>{if(j.length===1)return null;if(t===e){let t=j.filter(t=>t.id!==e);return b?a:t[0]?.id??null}return t}),D(t=>{if(t!==e)return t;let n=j.filter(t=>t.id!==e);return b?a:n[0]?.id??`primary`}))},t[41]=r,t[42]=b,t[43]=j,t[44]=J):J=t[44];let Y=J,X;t[45]!==r||t[46]!==j?(X=()=>{T(null),D(a),C(!0);for(let e of j)e.panelId===`chat`&&r({type:u.RemoveChatPane,paneId:e.id});g([])},t[45]=r,t[46]=j,t[47]=X):X=t[47];let pe=X,Z;t[48]!==b||t[49]!==j?(Z=e=>e===`chat`?b||j.some(x):j.some(t=>t.panelId===e),t[48]=b,t[49]=j,t[50]=Z):Z=t[50];let me=Z,he=j.length>0,ge=w!==null,Q;t[51]!==fe||t[52]!==pe||t[53]!==Y||t[54]!==w||t[55]!==he||t[56]!==ge||t[57]!==me||t[58]!==ie||t[59]!==b||t[60]!==G||t[61]!==E||t[62]!==j?(Q={windows:j,addWindow:fe,closeWindow:Y,closeAllWindows:pe,isPrimaryChatOpen:b,isPanelOpen:me,hasOpenWindows:he,isLayoutExpanded:ge,expandedWindowId:w,expandWindow:le,collapseLayout:ue,selectedWindowId:E,selectWindow:ce,revealWindow:G,pendingScrollWindowId:ie,clearPendingScrollWindow:de},t[51]=fe,t[52]=pe,t[53]=Y,t[54]=w,t[55]=he,t[56]=ge,t[57]=me,t[58]=ie,t[59]=b,t[60]=G,t[61]=E,t[62]=j,t[63]=Q):Q=t[63];let _e=Q,$;return t[64]!==n||t[65]!==_e?($=(0,v.jsx)(y.Provider,{value:_e,children:n}),t[64]=n,t[65]=_e,t[66]=$):$=t[66],$}function x(e){return e.panelId===`chat`}function S(e){return{id:e,panelId:`chat`}}function ne(e){return e.extraChatPanes}function re(e){return e.selectedThreadId}function C(){let e=(0,f.useContext)(y);if(!e)throw Error(`useChatDock must be used within a ChatDockProvider`);return e}export{C as n,b as t};
@@ -0,0 +1 @@
1
+ import{Ci as e,Fr as t,O as n,wi as r}from"./interactive-WtOIgeV4.js";import{A as i,Ct as a,D as o,O as s,St as c,T as l,Tt as u,b as d,j as f,k as p,s as m,wo as h,wt as g}from"./onboarding-Dy7KG3M5.js";import{G as _,bt as v}from"./index-cAZJlfDA.js";var y=r(),b=e();function x(e){let r=(0,y.c)(50),{open:x,onOpenChange:S,commitMessage:C,onCommitMessageChange:w,autoGenerateCommitMessage:T,onAutoGenerateChange:E,isGeneratingMessage:D,isLoading:O,onGenerateMessage:k,onCommit:A,currentBranch:j}=e,M;r[0]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,b.jsx)(f,{children:`Commit Changes`}),r[0]=M):M=r[0];let N;r[1]===j?N=r[2]:(N=(0,b.jsxs)(i,{children:[M,(0,b.jsxs)(s,{children:[`Enter a commit message for your changes on branch `,j]})]}),r[1]=j,r[2]=N);let P;r[3]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,b.jsx)(d,{htmlFor:`commit-message`,children:`Commit Message`}),r[3]=P):P=r[3];let F;r[4]===w?F=r[5]:(F=e=>w(e.target.value),r[4]=w,r[5]=F);let I;r[6]!==C||r[7]!==D||r[8]!==F?(I=(0,b.jsx)(_,{id:`commit-message`,placeholder:`Enter commit message...`,value:C,onChange:F,disabled:D,className:`pr-10 h-full min-h-[14rem] resize-none`}),r[6]=C,r[7]=D,r[8]=F,r[9]=I):I=r[9];let L=D||O,R;r[10]===D?R=r[11]:(R=D?(0,b.jsx)(v,{}):(0,b.jsx)(n,{className:`h-3.5 w-3.5`}),r[10]=D,r[11]=R);let z;r[12]!==k||r[13]!==L||r[14]!==R?(z=(0,b.jsx)(u,{asChild:!0,children:(0,b.jsx)(h,{type:`button`,variant:`ghost`,size:`icon`,className:`absolute top-2 right-2 h-6 w-6`,onClick:k,disabled:L,children:R})}),r[12]=k,r[13]=L,r[14]=R,r[15]=z):z=r[15];let B=D?`Generating commit message...`:`Generate commit message with AI`,V;r[16]===B?V=r[17]:(V=(0,b.jsx)(a,{children:B}),r[16]=B,r[17]=V);let H;r[18]!==V||r[19]!==z?(H=(0,b.jsx)(g,{children:(0,b.jsxs)(c,{children:[z,V]})}),r[18]=V,r[19]=z,r[20]=H):H=r[20];let U;r[21]!==H||r[22]!==I?(U=(0,b.jsx)(`div`,{className:`grid gap-4 py-4 flex-1 min-h-0`,children:(0,b.jsxs)(`div`,{className:`grid gap-2 flex-1 min-h-0`,children:[P,(0,b.jsxs)(`div`,{className:`relative flex-1 min-h-0`,children:[I,H]})]})}),r[21]=H,r[22]=I,r[23]=U):U=r[23];let W;r[24]===E?W=r[25]:(W=e=>E(e===!0),r[24]=E,r[25]=W);let G;r[26]!==T||r[27]!==W?(G=(0,b.jsx)(m,{id:`auto-generate`,checked:T,onCheckedChange:W}),r[26]=T,r[27]=W,r[28]=G):G=r[28];let K;r[29]===Symbol.for(`react.memo_cache_sentinel`)?(K=(0,b.jsx)(d,{htmlFor:`auto-generate`,className:t.labelNormal,children:`Auto generate commit messages`}),r[29]=K):K=r[29];let q;r[30]===G?q=r[31]:(q=(0,b.jsxs)(`div`,{className:`mr-auto flex items-center gap-2`,children:[G,K]}),r[30]=G,r[31]=q);let J;r[32]!==C||r[33]!==O?(J=O||!C.trim(),r[32]=C,r[33]=O,r[34]=J):J=r[34];let Y=O?`Committing...`:`Commit`,X;r[35]!==A||r[36]!==J||r[37]!==Y?(X=(0,b.jsx)(h,{className:`ml-auto`,onClick:A,disabled:J,children:Y}),r[35]=A,r[36]=J,r[37]=Y,r[38]=X):X=r[38];let Z;r[39]!==q||r[40]!==X?(Z=(0,b.jsxs)(p,{className:`w-full items-end gap-4`,children:[q,X]}),r[39]=q,r[40]=X,r[41]=Z):Z=r[41];let Q;r[42]!==U||r[43]!==N||r[44]!==Z?(Q=(0,b.jsxs)(o,{className:`flex max-w-2xl flex-col max-md:top-[max(1rem,env(safe-area-inset-top,0px))] max-md:max-h-[calc(100dvh-2rem)] max-md:translate-y-0 max-md:overflow-y-auto max-md:data-[state=closed]:slide-out-to-top max-md:data-[state=open]:slide-in-from-top max-md:data-[state=closed]:slide-out-to-left-0 max-md:data-[state=open]:slide-in-from-left-0 max-md:data-[state=closed]:zoom-out-100 max-md:data-[state=open]:zoom-in-100 md:h-[min(36rem,85dvh)]`,children:[N,U,Z]}),r[42]=U,r[43]=N,r[44]=Z,r[45]=Q):Q=r[45];let $;return r[46]!==S||r[47]!==x||r[48]!==Q?($=(0,b.jsx)(l,{open:x,onOpenChange:S,children:Q}),r[46]=S,r[47]=x,r[48]=Q,r[49]=$):$=r[49],$}export{x as CommitDialog};
@@ -0,0 +1 @@
1
+ import{Ci as e,Fr as t,ei as n,i as r,wi as i}from"./interactive-WtOIgeV4.js";import{a,b as o,o as s}from"./onboarding-Dy7KG3M5.js";var c=i(),l=e(),u=`inline-flex h-auto w-fit justify-start rounded-full border-0 bg-background p-1 text-muted-foreground`,d=`h-auto min-h-0 min-w-0 rounded-full border-0 bg-background px-4 py-1.5 data-[state=on]:bg-foreground data-[state=on]:text-background data-[state=on]:shadow-sm hover:bg-background hover:text-muted-foreground data-[state=on]:hover:bg-foreground data-[state=on]:hover:text-background`;function f(e){let i=(0,c.c)(11),{commitMethod:o,onCommitMethodChange:f,disabled:p,className:m}=e,h=p===void 0?!1:p,g;i[0]===f?g=i[1]:(g=e=>{(e===n.PullRequest||e===n.Direct)&&f(e)},i[0]=f,i[1]=g);let _;i[2]===m?_=i[3]:(_=r(u,m),i[2]=m,i[3]=_);let v;i[4]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,l.jsx)(s,{value:n.PullRequest,"aria-label":`Pull Requests`,className:r(t.body,d),children:`Pull Requests`}),i[4]=v):v=i[4];let y;i[5]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,l.jsx)(s,{value:n.Direct,"aria-label":`Direct Commits`,className:r(t.body,d),children:`Direct Commits`}),i[5]=y):y=i[5];let b;return i[6]!==o||i[7]!==h||i[8]!==g||i[9]!==_?(b=(0,l.jsxs)(a,{type:`single`,value:o,disabled:h,onValueChange:g,"aria-label":`Commit method`,className:_,children:[v,y]}),i[6]=o,i[7]=h,i[8]=g,i[9]=_,i[10]=b):b=i[10],b}function p(e){let r=(0,c.c)(9),{commitMethod:i,onCommitMethodChange:a}=e,s;r[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,l.jsx)(o,{children:`Commit method`}),r[0]=s):s=r[0];let u;r[1]!==i||r[2]!==a?(u=(0,l.jsx)(f,{commitMethod:i,onCommitMethodChange:a}),r[1]=i,r[2]=a,r[3]=u):u=r[3];let d=i===n.PullRequest?`Creates a feature branch and allows you to create pull requests.`:`Commits directly to the main branch without creating feature branches.`,p;r[4]===d?p=r[5]:(p=(0,l.jsx)(`p`,{className:t.bodyMuted,children:d}),r[4]=d,r[5]=p);let m;return r[6]!==u||r[7]!==p?(m=(0,l.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[s,u,p]}),r[6]=u,r[7]=p,r[8]=m):m=r[8],m}export{f as i,d as n,p as r,u as t};
@@ -0,0 +1 @@
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Ci as t,Fr as n,Ti as r,fn as i,hn as a,i as o,on as s,wi as c}from"./interactive-WtOIgeV4.js";import{C as l,S as u,_ as d,b as f,g as p,h as m,m as h,p as g,v as _,w as v,x as y,y as b}from"./react-vendor-DgnPMVt4.js";var x=c(),S=e(r(),1),C=t(),w=f,T=v,E=S.forwardRef((e,t)=>{let r=(0,x.c)(14),a,s,c,u;r[0]===e?(a=r[1],s=r[2],c=r[3],u=r[4]):({className:s,inset:c,children:a,...u}=e,r[0]=e,r[1]=a,r[2]=s,r[3]=c,r[4]=u);let d;r[5]!==s||r[6]!==c?(d=o(o(n.body,`flex cursor-default select-none items-center rounded-sm px-2 py-1.5 outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground`),c&&`pl-8`,s),r[5]=s,r[6]=c,r[7]=d):d=r[7];let f;r[8]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,C.jsx)(i,{className:`ml-auto h-4 w-4`}),r[8]=f):f=r[8];let p;return r[9]!==a||r[10]!==u||r[11]!==t||r[12]!==d?(p=(0,C.jsxs)(l,{ref:t,className:d,...u,children:[a,f]}),r[9]=a,r[10]=u,r[11]=t,r[12]=d,r[13]=p):p=r[13],p});E.displayName=l.displayName;var D=S.forwardRef((e,t)=>{let n=(0,x.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=o(`z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,r),n[3]=r,n[4]=a);let s;return n[5]!==i||n[6]!==t||n[7]!==a?(s=(0,C.jsx)(u,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=s):s=n[8],s});D.displayName=u.displayName;var O=S.forwardRef((e,t)=>{let n=(0,x.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=o(`z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md animate-in fade-in-80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,r),n[3]=r,n[4]=a);let s;return n[5]!==i||n[6]!==t||n[7]!==a?(s=(0,C.jsx)(_,{children:(0,C.jsx)(h,{ref:t,className:a,...i})}),n[5]=i,n[6]=t,n[7]=a,n[8]=s):s=n[8],s});O.displayName=h.displayName;var k=S.forwardRef((e,t)=>{let r=(0,x.c)(11),i,a,s;r[0]===e?(i=r[1],a=r[2],s=r[3]):({className:i,inset:a,...s}=e,r[0]=e,r[1]=i,r[2]=a,r[3]=s);let c;r[4]!==i||r[5]!==a?(c=o(o(n.body,`relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50`),a&&`pl-8`,i),r[4]=i,r[5]=a,r[6]=c):c=r[6];let l;return r[7]!==s||r[8]!==t||r[9]!==c?(l=(0,C.jsx)(m,{ref:t,className:c,...s}),r[7]=s,r[8]=t,r[9]=c,r[10]=l):l=r[10],l});k.displayName=m.displayName;var A=S.forwardRef((e,t)=>{let r=(0,x.c)(14),i,s,c,l;r[0]===e?(i=r[1],s=r[2],c=r[3],l=r[4]):({className:c,children:s,checked:i,...l}=e,r[0]=e,r[1]=i,r[2]=s,r[3]=c,r[4]=l);let u;r[5]===c?u=r[6]:(u=o(o(n.body,`relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50`),c),r[5]=c,r[6]=u);let d;r[7]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,C.jsx)(`span`,{className:`absolute left-2 flex h-3.5 w-3.5 items-center justify-center`,children:(0,C.jsx)(p,{children:(0,C.jsx)(a,{className:`h-4 w-4`})})}),r[7]=d):d=r[7];let f;return r[8]!==i||r[9]!==s||r[10]!==l||r[11]!==t||r[12]!==u?(f=(0,C.jsxs)(g,{ref:t,className:u,checked:i,...l,children:[d,s]}),r[8]=i,r[9]=s,r[10]=l,r[11]=t,r[12]=u,r[13]=f):f=r[13],f});A.displayName=g.displayName;var j=S.forwardRef((e,t)=>{let r=(0,x.c)(12),i,a,c;r[0]===e?(i=r[1],a=r[2],c=r[3]):({className:a,children:i,...c}=e,r[0]=e,r[1]=i,r[2]=a,r[3]=c);let l;r[4]===a?l=r[5]:(l=o(o(n.body,`relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50`),a),r[4]=a,r[5]=l);let u;r[6]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,C.jsx)(`span`,{className:`absolute left-2 flex h-3.5 w-3.5 items-center justify-center`,children:(0,C.jsx)(p,{children:(0,C.jsx)(s,{className:`h-2 w-2 fill-current`})})}),r[6]=u):u=r[6];let d;return r[7]!==i||r[8]!==c||r[9]!==t||r[10]!==l?(d=(0,C.jsxs)(b,{ref:t,className:l,...c,children:[u,i]}),r[7]=i,r[8]=c,r[9]=t,r[10]=l,r[11]=d):d=r[11],d});j.displayName=b.displayName;var M=S.forwardRef((e,t)=>{let r=(0,x.c)(11),i,a,s;r[0]===e?(i=r[1],a=r[2],s=r[3]):({className:i,inset:a,...s}=e,r[0]=e,r[1]=i,r[2]=a,r[3]=s);let c;r[4]!==i||r[5]!==a?(c=o(o(n.body,`px-2 py-1.5 font-semibold text-foreground`),a&&`pl-8`,i),r[4]=i,r[5]=a,r[6]=c):c=r[6];let l;return r[7]!==s||r[8]!==t||r[9]!==c?(l=(0,C.jsx)(d,{ref:t,className:c,...s}),r[7]=s,r[8]=t,r[9]=c,r[10]=l):l=r[10],l});M.displayName=d.displayName;var N=S.forwardRef((e,t)=>{let n=(0,x.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=o(`-mx-1 my-1 h-px bg-divider`,r),n[3]=r,n[4]=a);let s;return n[5]!==i||n[6]!==t||n[7]!==a?(s=(0,C.jsx)(y,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=s):s=n[8],s});N.displayName=y.displayName;var P=e=>{let t=(0,x.c)(8),r,i;t[0]===e?(r=t[1],i=t[2]):({className:r,...i}=e,t[0]=e,t[1]=r,t[2]=i);let a;t[3]===r?a=t[4]:(a=o(n.compact,`ml-auto tracking-widest text-muted-foreground`,r),t[3]=r,t[4]=a);let s;return t[5]!==i||t[6]!==a?(s=(0,C.jsx)(`span`,{className:a,...i}),t[5]=i,t[6]=a,t[7]=s):s=t[7],s};P.displayName=`ContextMenuShortcut`;export{T as a,N as i,O as n,k as r,w as t};
@@ -0,0 +1 @@
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{$t as t,Ci as n,Fr as r,Ti as i,i as a,o,ut as s,wi as c,y as ee}from"./interactive-WtOIgeV4.js";import{_t as l,nt as u}from"./react-vendor-DgnPMVt4.js";import{Wa as d,bt as f,do as p,dt as te,gr as m,ja as h,nn as g,rt as _,wo as v}from"./onboarding-Dy7KG3M5.js";import{n as ne}from"./use-toast-BFQ85Ly5.js";import{At as y,Dt as b,Et as x,Mt as S,Ot as re,S as C,Tt as w,it as T,kt as E}from"./index-cAZJlfDA.js";import{t as D}from"./delete-confirm-dialog-DoRgqETX.js";import{i as O,r as k}from"./table-CYWF-RhQ.js";var A=e(i(),1),j=c(),M=25;function ie(){let e=(0,j.c)(12),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={queryKey:T.conversations.recent(),queryFn:N,initialPageParam:0,getNextPageParam(e){let t=e.offset+e.conversations.length;return t<e.total?t:void 0}},e[0]=t):t=e[0];let n=l(t),r;e[1]===n.data?.pages?r=e[2]:(r=n.data?.pages.flatMap(function(e){return e.conversations})??[],e[1]=n.data?.pages,e[2]=r);let i=r,a=n.data?.pages[0]?.total??0,o;return e[3]!==i||e[4]!==n.error||e[5]!==n.fetchNextPage||e[6]!==n.hasNextPage||e[7]!==n.isFetchingNextPage||e[8]!==n.isPending||e[9]!==n.refetch||e[10]!==a?(o={conversations:i,total:a,isInitialLoading:n.isPending,isLoadingMore:n.isFetchingNextPage,error:n.error,hasNextPage:n.hasNextPage,fetchNextPage:n.fetchNextPage,refetch:n.refetch},e[3]=i,e[4]=n.error,e[5]=n.fetchNextPage,e[6]=n.hasNextPage,e[7]=n.isFetchingNextPage,e[8]=n.isPending,e[9]=n.refetch,e[10]=a,e[11]=o):o=e[11],o}function N(e){let{pageParam:t}=e;return m(M,t)}var P=[{id:`turns`,label:`Turns`},{id:`inputTokens`,label:`Input Tokens`},{id:`outputTokens`,label:`Output Tokens`},{id:`model`,label:`Model`},{id:`branch`,label:`Branch`}],F=new Set(P.map(function(e){return e.id}));function I(e){if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.filter(function(e){return typeof e==`string`&&F.has(e)}):[]}catch{return[]}}function L(){return I(d(h.HISTORY_COLUMNS))}function R(){let e=(0,j.c)(6),[t,n]=(0,A.useState)(L),r;e[0]===t?r=e[1]:(r=function(e){return t.includes(e)},e[0]=t,e[1]=r);let i=r,a;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(a=function(e,t){n(function(n){let r=t?n.includes(e)?n:[...n,e]:n.filter(function(t){return t!==e});return p(h.HISTORY_COLUMNS,JSON.stringify(r)),r})},e[2]=a):a=e[2];let o=a,s;return e[3]!==i||e[4]!==t?(s={visibleColumns:t,isColumnVisible:i,setColumnVisible:o},e[3]=i,e[4]=t,e[5]=s):s=e[5],s}var z=n(),B=36,V=3,H=`table-fixed`,U=`h-9 w-48 bg-transparent py-2`,W=`h-9 bg-transparent py-2`,G=`h-9 w-20 bg-transparent py-2 text-right`,K=`h-9 w-28 bg-transparent py-2 text-right`,q=`h-9 w-28 bg-transparent py-2 text-right`,J=`h-9 w-40 bg-transparent py-2`,Y=`h-9 w-32 bg-transparent py-2`,ae=`h-9 w-24 bg-transparent py-2 text-right`,oe=a(r.bodyMuted,`w-48 truncate py-1.5`),se=`py-1.5`,X=a(r.bodyMuted,`w-20 py-1.5 text-right tabular-nums`),Z=a(r.bodyMuted,`w-28 py-1.5 text-right tabular-nums`),Q=a(r.bodyMuted,`w-28 py-1.5 text-right tabular-nums`),ce=a(r.bodyMuted,`w-40 truncate py-1.5`),$=a(r.bodyMuted,`w-32 truncate py-1.5`),le=a(r.bodyMuted,`w-24 py-1.5 text-right tabular-nums`);function ue(e){let t=(0,j.c)(4),n;if(t[0]!==e){let{style:i,...o}=e,s;t[2]===i?s=t[3]:(s={...i,width:`100%`},t[2]=i,t[3]=s),n=(0,z.jsx)(`table`,{...o,style:s,className:a(`w-full caption-bottom select-text`,H,r.body,o.className)}),t[0]=e,t[1]=n}else n=t[1];return n}function de(e){let t=(0,j.c)(5),n;t[0]===e.className?n=t[1]:(n=a(`hidden`,e.className),t[0]=e.className,t[1]=n);let r;return t[2]!==e||t[3]!==n?(r=(0,z.jsx)(`thead`,{...e,className:n}),t[2]=e,t[3]=n,t[4]=r):r=t[4],r}function fe(e){let t=(0,j.c)(5),n;t[0]===e.className?n=t[1]:(n=a(`[&_tr:last-child]:border-0`,e.className),t[0]=e.className,t[1]=n);let r;return t[2]!==e||t[3]!==n?(r=(0,z.jsx)(`tbody`,{...e,className:n}),t[2]=e,t[3]=n,t[4]=r):r=t[4],r}function pe(e){let t=(0,j.c)(5),n;t[0]===e.className?n=t[1]:(n=a(`frosted-scrollbar`,e.className),t[0]=e.className,t[1]=n);let r;return t[2]!==e||t[3]!==n?(r=(0,z.jsx)(`div`,{...e,className:n}),t[2]=e,t[3]=n,t[4]=r):r=t[4],r}function me(e){return function(){return(0,z.jsx)(`tr`,{children:(0,z.jsx)(`td`,{colSpan:e,className:`py-3 text-center`,children:(0,z.jsx)(f,{label:`Loading more…`,size:`sm`})})})}}function he(e){switch(e){case`turns`:return(0,z.jsx)(O,{className:G,children:`Turns`},e);case`inputTokens`:return(0,z.jsx)(O,{className:K,children:`Input Tokens`},e);case`outputTokens`:return(0,z.jsx)(O,{className:q,children:`Output Tokens`},e);case`model`:return(0,z.jsx)(O,{className:J,children:`Model`},e);case`branch`:return(0,z.jsx)(O,{className:Y,children:`Branch`},e)}}function ge(e,t){switch(t){case`turns`:return(0,z.jsx)(k,{className:X,children:e.turnCount.toLocaleString()},t);case`inputTokens`:return(0,z.jsx)(k,{className:Z,children:e.inputTokens.toLocaleString()},t);case`outputTokens`:return(0,z.jsx)(k,{className:Q,children:e.outputTokens.toLocaleString()},t);case`model`:return(0,z.jsx)(k,{className:ce,children:e.model??`—`},t);case`branch`:return(0,z.jsx)(k,{className:$,children:e.branch},t)}}function _e(){let{openConversation:e}=C(),{toast:n}=ne(),[i,c]=(0,A.useState)(!1),[l,d]=(0,A.useState)(!1),{visibleColumns:p,isColumnVisible:m,setColumnVisible:h}=R(),{conversations:T,isInitialLoading:j,isLoadingMore:M,error:N,hasNextPage:F,fetchNextPage:I,refetch:L}=ie(),G=V+p.length,K=(0,A.useCallback)(()=>{F&&!M&&I()},[I,F,M]);async function q(){d(!0);try{await g(),await L(),c(!1),n({title:`Conversation history cleared`})}catch(e){n({title:`Failed to clear conversation history`,description:e instanceof Error?e.message:String(e),variant:`destructive`})}finally{d(!1)}}let J=(0,A.useMemo)(function(){return function({item:t,...n}){return(0,z.jsx)(`tr`,{...n,className:a(`cursor-pointer border-0 transition-colors hover:bg-muted/50`,n.className),onClick:()=>{t&&e(t)}})}},[e]),Y=(0,A.useMemo)(function(){return{Table:ue,TableHead:de,TableBody:fe,TableRow:J,Scroller:pe,Footer:M?me(G):void 0}},[J,G,M]);function X(e,t){return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(k,{className:oe,children:t.projectName}),(0,z.jsx)(k,{className:se,children:(0,z.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,z.jsx)(s,{className:`h-4 w-4 shrink-0 text-muted-foreground`}),(0,z.jsx)(`span`,{className:a(r.body,`truncate`),children:t.title})]})}),P.map(function(e){return m(e.id)?ge(t,e.id):null}),(0,z.jsx)(k,{className:le,"aria-label":`Last updated ${o(t.lastMessageAt)} ago`,children:o(t.lastMessageAt)})]})}function Z(){return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(O,{className:U,children:`Project`}),(0,z.jsx)(O,{className:W,children:`Chat`}),P.map(function(e){return m(e.id)?he(e.id):null}),(0,z.jsx)(O,{className:ae,children:`Updated`})]})}let Q=(0,z.jsx)(`table`,{className:a(`w-full caption-bottom`,H,r.body),children:(0,z.jsx)(`thead`,{className:`[&_tr]:border-b [&_tr]:border-table-border`,children:(0,z.jsx)(`tr`,{children:Z()})})});return(0,z.jsxs)(`div`,{className:`flex h-full min-h-0 w-full min-w-0 flex-1 flex-col`,children:[(0,z.jsxs)(te,{className:`flex w-full max-w-none min-w-0 min-h-0 flex-1 flex-col pb-0 pt-0`,children:[(0,z.jsx)(_,{title:`History`,description:`Browse recent chats across all projects.`,tableHeader:T.length>0?Q:void 0,action:(0,z.jsxs)(w,{children:[(0,z.jsx)(S,{asChild:!0,children:(0,z.jsx)(v,{type:`button`,variant:`ghost`,size:`icon`,className:`h-8 w-8`,"aria-label":`Choose columns`,children:(0,z.jsx)(t,{className:`h-4 w-4`})})}),(0,z.jsxs)(b,{align:`end`,className:`w-48`,children:[(0,z.jsx)(E,{className:r.body,children:`Columns`}),P.map(function(e){return(0,z.jsx)(x,{checked:m(e.id),onCheckedChange:t=>{h(e.id,t===!0)},onSelect:e=>{e.preventDefault()},children:e.label},e.id)}),(0,z.jsx)(y,{}),(0,z.jsxs)(re,{className:a(r.body,`gap-2 text-destructive focus:text-destructive`),disabled:T.length===0,onSelect:()=>c(!0),children:[(0,z.jsx)(ee,{className:`h-4 w-4`}),`Clear history`]})]})]})}),(0,z.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:j?(0,z.jsx)(f,{label:`Loading conversation history...`,size:`lg`}):N?(0,z.jsx)(`div`,{className:`flex h-full items-center justify-center p-6`,children:(0,z.jsxs)(`div`,{className:`max-w-md space-y-4 text-center`,children:[(0,z.jsx)(`p`,{className:r.body,children:N instanceof Error?N.message:`Failed to load conversation history`}),(0,z.jsx)(v,{onClick:()=>void L(),children:`Try again`})]})}):T.length===0?(0,z.jsx)(`div`,{className:`flex h-full items-center justify-center p-6`,children:(0,z.jsxs)(`div`,{className:`max-w-md space-y-2 text-center`,children:[(0,z.jsx)(`h3`,{className:r.emptyStateTitle,children:`No history`}),(0,z.jsx)(`p`,{className:r.bodyMuted,children:`No conversations found yet.`})]})}):(0,z.jsx)(u,{style:{height:`100%`},data:T,computeItemKey:(e,t)=>t.conversationId,itemContent:X,endReached:K,defaultItemHeight:B,increaseViewportBy:B*5,components:Y})})]}),(0,z.jsx)(D,{open:i,onOpenChange:c,title:`Clear conversation history?`,description:`This permanently clears conversation history across all projects. This action cannot be undone.`,onConfirm:()=>void q(),confirming:l,confirmLabel:`Clear`,confirmingLabel:`Clearing...`})]})}export{_e as default};
@@ -0,0 +1,6 @@
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{$r as t,Ci as n,Fr as r,Jn as i,Qt as a,Ti as o,ei as s,i as c,wi as l}from"./interactive-WtOIgeV4.js";import{A as u,D as d,O as f,T as p,_r as m,a as h,b as g,en as _,ht as v,j as y,jr as b,k as x,o as S,po as C,qa as w,so as T,to as E,wo as D,x as O,xo as k,za as A}from"./onboarding-Dy7KG3M5.js";import{x as j}from"./index-cAZJlfDA.js";import{r as ee}from"./commit-method-fields-DYBEHZAP.js";var M=e(o(),1),N=l(),P={"angular-standalone":`logo-angular.svg`,"custom-angular":`logo-angular.svg`,react:`logo-react.svg`,"vite-react":`logo-react.svg`,vue:`logo-vue.svg`,"vite-vue":`logo-vue.svg`,"custom-svelte":`logo-svelte.svg`,"custom-ionic-svelte":`logo-svelte.svg`,"vite-svelte":`logo-svelte.svg`,"vite-solid":`logo-solid.svg`,astro:`logo-astro.svg`,nextjs:`logo-nextjs.svg`,nuxt:`logo-nuxt.svg`,"vite-qwik":`logo-qwik.svg`,"vite-preact":`logo-preact.svg`,"vite-lit":`logo-lit.svg`,"vite-web":`logo-web.svg`,"tanstack-start":`logo-vite.svg`,waku:`logo-waku.svg`,hydrogen:`logo-hydrogen.svg`,plugin:`logo-capacitor.svg`};function te(e){return e.trim().toLowerCase().replace(/[\\/]+/g,` `).replace(/[^a-z0-9._ -]+/g,``).replace(/\s+/g,`-`).replace(/-+/g,`-`).replace(/^-|-$/g,``)}function ne(e,t,n){return e===2&&t===`clone`?{title:`Clone Repository`,description:`Enter a git repository URL to clone.`}:e===2&&t===`webapp`?{title:`Create App`,description:`Choose a template type.`}:e===3&&t===`clone`?{title:`Clone Repository`,description:`Choose commit workflow.`}:e===3&&t===`folder`?{title:`Blank Starter`,description:`Enter a project name.`}:e===3&&t===`webapp`?{title:n===`Capacitor Plugin`?`Create Capacitor Plugin`:n?`Create ${n} App`:`Create App`,description:`Name your project and choose variation, package manager, and commit workflow.`}:{title:``,description:``}}var re=i(`app.create-project-dialog.ui`);async function ie(){try{if(await _())return!0;if(!window.confirm(`Vite Plus is required for this template but is not installed.
2
+
3
+ Is it ok to install Vite Plus using the following command?
4
+
5
+ macOS / Linux: curl -fsSL https://vite.plus | bash
6
+ Windows: irm https://vite.plus/ps1 | iex`))return!1;let{success:e,error:t}=await b();return e?!0:(window.alert(`Failed to install Vite Plus:\n${t||`Unknown error`}`),!1)}catch(e){return re.error(`Vite Plus check/install failed:`,e),!0}}function ae(e){let t=(0,N.c)(38),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=[],t[0]=n):n=t[0];let[r,i]=(0,M.useState)(n),[a,o]=(0,M.useState)(!1),s=Array.isArray(r)&&r.length>0,c;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(c=()=>{o(!0),m().then(e=>i(e?.templates||[])).catch(()=>i([])).finally(()=>o(!1))},t[1]=c):c=t[1];let l=c,u,d;if(t[2]!==r){if(u={},Array.isArray(r))for(let e of r){let t=e.typeName;u[t]||(u[t]=[]),u[t].push(e)}d=Object.keys(u).sort(),t[2]=r,t[3]=u,t[4]=d}else u=t[3],d=t[4];let f=d,p;t[5]!==u||t[6]!==f?(p={typeNames:f,templatesByTypeName:u},t[5]=u,t[6]=f,t[7]=p):p=t[7];let{typeNames:h,templatesByTypeName:g}=p,_;if(t[8]!==g){_={};for(let e of Object.keys(g)){let t=g[e]??[];if(t.length===0)continue;let n=t.find(se),r=t.filter(L),i=n?[n,...r]:t;_[e]=i[0].id}t[8]=g,t[9]=_}else _=t[9];let v=_,y;bb0:{if(!Array.isArray(r)){y=e;break bb0}if(r.find(t=>t.id===e)){y=e;break bb0}if(r.length===0){y=e;break bb0}let n=h[0],i;t[10]!==n||t[11]!==g?(i=n?g[n]??[]:[],t[10]=n,t[11]=g,t[12]=i):i=t[12];let a=i,o;t[13]===a?o=t[14]:(o=a.find(oe),t[13]=a,t[14]=o),y=(o??a[0])?.id??e}let b=y,x;bb1:{if(!b||!Array.isArray(r)||r.length===0){x=null;break bb1}let e;t[15]!==b||t[16]!==r?(e=r.find(e=>e.id===b)?.typeName??null,t[15]=b,t[16]=r,t[17]=e):e=t[17],x=e}let S=x,C;if(t[18]!==S||t[19]!==g){bb2:{let e=S?g[S]??[]:[];if(e.length<=1){C=e;break bb2}let t=e.find(I),n=e.filter(F);C=t?[t,...n]:e}t[18]=S,t[19]=g,t[20]=C}else C=t[20];let w=C,T;t[21]!==b||t[22]!==r?(T=b&&Array.isArray(r)?r.find(e=>e.id===b):null,t[21]=b,t[22]=r,t[23]=T):T=t[23];let E=T,D,O;t[24]===b?(D=t[25],O=t[26]):(D=()=>{b&&k(b)},O=[b],t[24]=b,t[25]=D,t[26]=O),(0,M.useEffect)(D,O);let A;return t[27]!==b||t[28]!==v||t[29]!==s||t[30]!==E||t[31]!==S||t[32]!==r||t[33]!==g||t[34]!==a||t[35]!==h||t[36]!==w?(A={templates:r,templatesLoading:a,hasTemplates:s,loadTemplates:l,typeNames:h,templatesByTypeName:g,firstVariationIdByTypeName:v,effectiveTemplateId:b,selectedTypeNameFromEffective:S,variations:w,selectedTemplate:E},t[27]=b,t[28]=v,t[29]=s,t[30]=E,t[31]=S,t[32]=r,t[33]=g,t[34]=a,t[35]=h,t[36]=w,t[37]=A):A=t[37],A}function F(e){return e.variationName!==`Starter`}function I(e){return e.variationName===`Starter`}function oe(e){return e.variationName===`Starter`}function L(e){return e.variationName!==`Starter`}function se(e){return e.variationName===`Starter`}var R=n();function ce(e){let t=(0,N.c)(10),{gitUrl:n,onGitUrlChange:r,canProceed:i,onNext:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,R.jsx)(g,{htmlFor:`gitUrl`,children:`Repository URL`}),t[0]=o):o=t[0];let s;t[1]===r?s=t[2]:(s=e=>r(e.target.value),t[1]=r,t[2]=s);let c;t[3]!==i||t[4]!==a?(c=e=>e.key===`Enter`&&i&&a(),t[3]=i,t[4]=a,t[5]=c):c=t[5];let l;return t[6]!==n||t[7]!==s||t[8]!==c?(l=(0,R.jsx)(v,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,R.jsx)(`div`,{className:`px-6 py-4`,children:(0,R.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[o,(0,R.jsx)(O,{id:`gitUrl`,placeholder:`https://github.com/user/repo.git`,value:n,onChange:s,onKeyDown:c,autoFocus:!0})]})})}),t[6]=n,t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function le(e){let t=(0,N.c)(11),{templatesLoading:n,typeNames:i,templatesByTypeName:a,selectedTypeName:o,loadedImages:s,onImageLoad:l,onSelectType:u,onSelectTypeAndAdvance:d}=e,f;t[0]!==s||t[1]!==l||t[2]!==u||t[3]!==d||t[4]!==o||t[5]!==a||t[6]!==n||t[7]!==i?(f=n?(0,R.jsx)(`p`,{className:c(r.bodyMuted,`col-span-full p-4`),children:`Loading…`}):i.map(e=>{let t=a[e]?.[0]?.type,n=t?P[t]:null,i=o===e;return(0,R.jsxs)(`button`,{type:`button`,onClick:()=>u(e),onDoubleClick:()=>d(e),className:c(`group flex flex-col items-center gap-0 rounded-lg px-1 py-1 text-center transition-colors`,i?`text-accent-foreground`:`text-foreground`),children:[(0,R.jsx)(`div`,{className:c(`relative flex size-20 shrink-0 items-center justify-center overflow-hidden rounded-xl bg-[hsl(0_0%_35%)] bg-gradient-to-br from-[hsl(0_0%_35%)] to-[hsl(0_0%_25%)] text-white/70 transition-transform can-hover:group-hover:scale-[1.03]`,i&&`ring-[3px] ring-brand`),children:n?(0,R.jsx)(`img`,{src:`/template-types/${n}`,alt:``,className:c(`relative size-8 shrink-0 transition-opacity duration-300`,s.has(n)?`opacity-100`:`opacity-0`),onLoad:()=>l(n),"aria-hidden":!0}):null}),(0,R.jsx)(`span`,{className:c(r.compact,`w-full truncate pt-1 font-medium`),children:e})]},e)}),t[0]=s,t[1]=l,t[2]=u,t[3]=d,t[4]=o,t[5]=a,t[6]=n,t[7]=i,t[8]=f):f=t[8];let p;return t[9]===f?p=t[10]:(p=(0,R.jsx)(`div`,{className:`flex flex-col flex-1 min-h-0 px-6 pb-4`,children:(0,R.jsx)(`div`,{className:`flex-1 min-h-0 flex flex-col py-2`,children:(0,R.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto -mx-1`,children:(0,R.jsx)(`div`,{className:`grid grid-cols-2 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-1 p-1 mr-2`,children:f})})})}),t[9]=f,t[10]=p),p}function ue(e){let t=(0,N.c)(17),{projectName:n,onProjectNameChange:i,canSubmit:a,onSubmit:o}=e,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,R.jsx)(g,{htmlFor:`folderProjectName`,children:`Project Name`}),t[0]=s):s=t[0];let c;t[1]===i?c=t[2]:(c=e=>i(e.target.value),t[1]=i,t[2]=c);let l;t[3]!==a||t[4]!==o?(l=e=>e.key===`Enter`&&a&&o(),t[3]=a,t[4]=o,t[5]=l):l=t[5];let u;t[6]!==n||t[7]!==c||t[8]!==l?(u=(0,R.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[s,(0,R.jsx)(O,{id:`folderProjectName`,placeholder:`My Project`,value:n,onChange:c,onKeyDown:l,autoFocus:!0,className:`w-full`})]}),t[6]=n,t[7]=c,t[8]=l,t[9]=u):u=t[9];let d;t[10]===n?d=t[11]:(d=te(n)||`project-name`,t[10]=n,t[11]=d);let f;t[12]===d?f=t[13]:(f=(0,R.jsxs)(`p`,{className:r.bodyMuted,children:[`Folder name: `,d]}),t[12]=d,t[13]=f);let p;return t[14]!==u||t[15]!==f?(p=(0,R.jsx)(v,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,R.jsxs)(`div`,{className:`px-6 py-4 flex flex-col gap-3`,children:[u,f]})}),t[14]=u,t[15]=f,t[16]=p):p=t[16],p}function de(e){let n=(0,N.c)(33),{projectNameDisplay:i,onProjectNameChange:o,variations:s,effectiveTemplateId:c,onTemplateIdChange:l,selectedTemplate:u,packageManager:d,onPackageManagerChange:f,commitMethod:p,onCommitMethodChange:m}=e,_;n[0]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,R.jsx)(g,{htmlFor:`projectName`,children:`Project Name`}),n[0]=_):_=n[0];let y;n[1]===o?y=n[2]:(y=e=>o(e.target.value),n[1]=o,n[2]=y);let b;n[3]!==i||n[4]!==y?(b=(0,R.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[_,(0,R.jsx)(O,{id:`projectName`,placeholder:`My App`,value:i,onChange:y,className:`w-full`})]}),n[3]=i,n[4]=y,n[5]=b):b=n[5];let x;n[6]!==c||n[7]!==l||n[8]!==s?(x=s.length>1&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(g,{children:`Variation`}),(0,R.jsx)(h,{type:`single`,value:c,onValueChange:e=>e&&l(e),variant:`outline`,className:`flex flex-wrap gap-0 justify-start [&>button]:rounded-none [&>button:first-child]:rounded-l-md [&>button:last-child]:rounded-r-md [&>button:not(:first-child)]:-ml-px`,children:s.map(pe)})]}),n[6]=c,n[7]=l,n[8]=s,n[9]=x):x=n[9];let S=u?.description??s[0]?.description??``,C;n[10]===u?C=n[11]:(C=u?.url&&(0,R.jsxs)(R.Fragment,{children:[` `,(0,R.jsxs)(`a`,{href:u.url,target:`_blank`,rel:`noreferrer`,className:`text-brand hover:underline hover:text-brand/80 inline-flex items-center gap-0.5`,children:[`Documentation `,(0,R.jsx)(a,{className:`h-3 w-3`})]})]}),n[10]=u,n[11]=C);let w;n[12]!==S||n[13]!==C?(w=(0,R.jsxs)(`p`,{className:r.bodyMuted,children:[S,C]}),n[12]=S,n[13]=C,n[14]=w):w=n[14];let T;n[15]!==x||n[16]!==w?(T=(0,R.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[x,w]}),n[15]=x,n[16]=w,n[17]=T):T=n[17];let E;n[18]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,R.jsx)(g,{children:`Package manager`}),n[18]=E):E=n[18];let D;n[19]===f?D=n[20]:(D=e=>{e&&f(e)},n[19]=f,n[20]=D);let k;n[21]===Symbol.for(`react.memo_cache_sentinel`)?(k=Object.values(t).map(fe),n[21]=k):k=n[21];let A;n[22]!==d||n[23]!==D?(A=(0,R.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[E,(0,R.jsx)(h,{type:`single`,value:d,onValueChange:D,variant:`outline`,className:`flex flex-wrap gap-0 justify-start [&>button]:rounded-none [&>button:first-child]:rounded-l-md [&>button:last-child]:rounded-r-md [&>button:not(:first-child)]:-ml-px`,children:k})]}),n[22]=d,n[23]=D,n[24]=A):A=n[24];let j;n[25]!==p||n[26]!==m?(j=(0,R.jsx)(ee,{commitMethod:p,onCommitMethodChange:m}),n[25]=p,n[26]=m,n[27]=j):j=n[27];let M;return n[28]!==A||n[29]!==j||n[30]!==b||n[31]!==T?(M=(0,R.jsx)(v,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,R.jsxs)(`div`,{className:`px-6 py-4 flex flex-col gap-6`,children:[b,T,A,j]})}),n[28]=A,n[29]=j,n[30]=b,n[31]=T,n[32]=M):M=n[32],M}function fe(e){return(0,R.jsx)(S,{value:e.id,className:r.body,children:e.label},e.id)}function pe(e){return(0,R.jsx)(S,{value:e.id,className:r.body,children:e.variationName},e.id)}function me(e){return e===`folder`?3:2}function he(e){return e===`folder`?{projectName:``,projectNameUserEdited:!1,loadedImages:new Set}:{projectName:`My App`,projectNameUserEdited:!1,loadedImages:new Set}}function z(e){let t=(0,N.c)(140),{open:n,onOpenChange:r,initialMode:i,onSubmitClone:a,onSubmitWebApp:o,onSubmitFolder:c}=e,[l,m]=(0,M.useState)(i??`clone`),h=i??`clone`,g;t[0]===h?g=t[1]:(g=me(h),t[0]=h,t[1]=g);let[_,b]=(0,M.useState)(g),[S,O]=(0,M.useState)(``),k;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(k=A(s.PullRequest),t[2]=k):k=t[2];let[P,re]=(0,M.useState)(k),[F,I]=(0,M.useState)(`My App`),[oe,L]=(0,M.useState)(!1),se;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(se=E(),t[3]=se):se=t[3];let[fe,pe]=(0,M.useState)(se),z;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(z=w(),t[4]=z):z=t[4];let[B,_e]=(0,M.useState)(z),[ve,ye]=(0,M.useState)(!1),be;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(be=new Set,t[5]=be):be=t[5];let[xe,Se]=(0,M.useState)(be),Ce;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(Ce=e=>{Se(t=>new Set(t).add(e))},t[6]=Ce):Ce=t[6];let we=Ce,{templatesLoading:Te,hasTemplates:Ee,loadTemplates:De,typeNames:Oe,templatesByTypeName:ke,firstVariationIdByTypeName:Ae,effectiveTemplateId:V,selectedTypeNameFromEffective:H,variations:je,selectedTemplate:U}=ae(fe),Me,Ne;t[7]!==Ee||t[8]!==i||t[9]!==De||t[10]!==n?(Me=()=>{if(!n||!i)return;let e=he(i);m(i),b(me(i)),O(``),I(e.projectName),L(e.projectNameUserEdited),Se(e.loadedImages),i===`webapp`&&!Ee&&De()},Ne=[n,i,Ee,De],t[7]=Ee,t[8]=i,t[9]=De,t[10]=n,t[11]=Me,t[12]=Ne):(Me=t[11],Ne=t[12]),(0,M.useEffect)(Me,Ne);let W=oe?F:H?`My ${H} App`:`My App`,Pe;t[13]===r?Pe=t[14]:(Pe=function(){m(`clone`),b(2),O(``),I(`My App`),L(!1),Se(new Set),r(!1)},t[13]=r,t[14]=Pe);let Fe=Pe,Ie;t[15]!==_||t[16]!==l||t[17]!==Fe?(Ie=function(){if(_===2||l===`folder`){Fe();return}b(2)},t[15]=_,t[16]=l,t[17]=Fe,t[18]=Ie):Ie=t[18];let Le=Ie,Re;t[19]!==S||t[20]!==l||t[21]!==F||t[22]!==H?(Re=l===`clone`?S.trim().length>0:l===`folder`?F.trim().length>0&&!!te(F):H!==null,t[19]=S,t[20]=l,t[21]=F,t[22]=H,t[23]=Re):Re=t[23];let G=Re,ze;t[24]===Symbol.for(`react.memo_cache_sentinel`)?(ze=function(e){re(e),T(e)},t[24]=ze):ze=t[24];let Be=ze,Ve;t[25]!==P||t[26]!==S||t[27]!==r||t[28]!==a?(Ve=function(){if(!S.trim())return;let e=S.trim();O(``),b(2),r(!1),m(`clone`),a(e,P).catch(ge)},t[25]=P,t[26]=S,t[27]=r,t[28]=a,t[29]=Ve):Ve=t[29];let He=Ve,Ue;t[30]!==V||t[31]!==r||t[32]!==o||t[33]!==B||t[34]!==W||t[35]!==U?.variation?(Ue=async function(){if(!W.trim()||!V||!te(W))return;if(U?.variation===`vite-plus`){ye(!0);let e=await ie();if(ye(!1),!e)return}let e=W.trim();I(``),L(!1),b(2),r(!1),m(`clone`),o(e,V,B)},t[30]=V,t[31]=r,t[32]=o,t[33]=B,t[34]=W,t[35]=U?.variation,t[36]=Ue):Ue=t[36];let We=Ue,Ge;t[37]!==r||t[38]!==c||t[39]!==F?(Ge=function(){let e=F.trim();!e||!te(e)||(I(``),L(!1),b(2),r(!1),m(`clone`),c(e))},t[37]=r,t[38]=c,t[39]=F,t[40]=Ge):Ge=t[40];let K=Ge,q=_,Ke=l===`folder`?1:_-1,qe;t[41]!==G||t[42]!==_||t[43]!==l?(qe=function(e){return l===`folder`?e===1:e===1?_>2:_>=3||_===2&&G},t[41]=G,t[42]=_,t[43]=l,t[44]=qe):qe=t[44];let Je=qe,Ye;t[45]===l?Ye=t[46]:(Ye=function(e){l!==`folder`&&b(e===1?2:3)},t[45]=l,t[46]=Ye);let Xe=Ye,Ze;t[47]!==l||t[48]!==H||t[49]!==q?(Ze=ne(q,l,H),t[47]=l,t[48]=H,t[49]=q,t[50]=Ze):Ze=t[50];let J=Ze,Qe=l!==`folder`,Y;t[51]===Fe?Y=t[52]:(Y=e=>!e&&Fe(),t[51]=Fe,t[52]=Y);let X;t[53]!==Je||t[54]!==Ke||t[55]!==Xe||t[56]!==Qe?(X=Qe?(0,R.jsx)(j,{currentStep:Ke,canGoToStep:Je,onGoToStep:Xe}):null,t[53]=Je,t[54]=Ke,t[55]=Xe,t[56]=Qe,t[57]=X):X=t[57];let Z;t[58]===J.title?Z=t[59]:(Z=(0,R.jsx)(y,{children:J.title}),t[58]=J.title,t[59]=Z);let $e;t[60]===J.description?$e=t[61]:($e=(0,R.jsx)(f,{children:J.description}),t[60]=J.description,t[61]=$e);let et;t[62]!==Z||t[63]!==$e?(et=(0,R.jsxs)(u,{children:[Z,$e]}),t[62]=Z,t[63]=$e,t[64]=et):et=t[64];let tt;t[65]!==X||t[66]!==et?(tt=(0,R.jsxs)(`div`,{className:`px-6 pb-2 pt-6`,children:[X,et]}),t[65]=X,t[66]=et,t[67]=tt):tt=t[67];let nt;t[68]!==G||t[69]!==S||t[70]!==l||t[71]!==q?(nt=q===2&&l===`clone`&&(0,R.jsx)(ce,{gitUrl:S,onGitUrlChange:O,canProceed:G,onNext:()=>b(3)}),t[68]=G,t[69]=S,t[70]=l,t[71]=q,t[72]=nt):nt=t[72];let Q;t[73]!==Ae||t[74]!==xe||t[75]!==l||t[76]!==H||t[77]!==q||t[78]!==ke||t[79]!==Te||t[80]!==Oe?(Q=q===2&&l===`webapp`&&(0,R.jsx)(le,{templatesLoading:Te,typeNames:Oe,templatesByTypeName:ke,selectedTypeName:H,loadedImages:xe,onImageLoad:we,onSelectType:e=>pe(Ae[e]??``),onSelectTypeAndAdvance:e=>{pe(Ae[e]??``),b(3)}}),t[73]=Ae,t[74]=xe,t[75]=l,t[76]=H,t[77]=q,t[78]=ke,t[79]=Te,t[80]=Oe,t[81]=Q):Q=t[81];let rt;t[82]!==G||t[83]!==K||t[84]!==l||t[85]!==F||t[86]!==q?(rt=q===3&&l===`folder`&&(0,R.jsx)(ue,{projectName:F,onProjectNameChange:e=>{I(e),L(!0)},canSubmit:G,onSubmit:K}),t[82]=G,t[83]=K,t[84]=l,t[85]=F,t[86]=q,t[87]=rt):rt=t[87];let it;t[88]!==P||t[89]!==V||t[90]!==l||t[91]!==B||t[92]!==W||t[93]!==U||t[94]!==q||t[95]!==je?(it=q===3&&l===`webapp`&&(0,R.jsx)(de,{projectNameDisplay:W,onProjectNameChange:e=>{I(e),L(!0)},variations:je,effectiveTemplateId:V,onTemplateIdChange:pe,selectedTemplate:U,packageManager:B,onPackageManagerChange:e=>{_e(e),C(e)},commitMethod:P,onCommitMethodChange:Be}),t[88]=P,t[89]=V,t[90]=l,t[91]=B,t[92]=W,t[93]=U,t[94]=q,t[95]=je,t[96]=it):it=t[96];let at;t[97]!==P||t[98]!==l||t[99]!==q?(at=q===3&&l===`clone`&&(0,R.jsx)(v,{className:`min-h-0 flex-1 overflow-hidden`,children:(0,R.jsx)(`div`,{className:`flex flex-col gap-6 px-6 py-4`,children:(0,R.jsx)(ee,{commitMethod:P,onCommitMethodChange:Be})})}),t[97]=P,t[98]=l,t[99]=q,t[100]=at):at=t[100];let ot;t[101]===Le?ot=t[102]:(ot=(0,R.jsx)(D,{variant:`ghost`,onClick:Le,children:`Back`}),t[101]=Le,t[102]=ot);let st;t[103]!==G||t[104]!==l||t[105]!==q?(st=q===2&&l!==`folder`&&(0,R.jsx)(D,{onClick:()=>b(3),disabled:!G,children:`Next`}),t[103]=G,t[104]=l,t[105]=q,t[106]=st):st=t[106];let ct;t[107]!==He||t[108]!==l||t[109]!==q?(ct=q===3&&l===`clone`&&(0,R.jsx)(D,{onClick:He,children:`Create Project`}),t[107]=He,t[108]=l,t[109]=q,t[110]=ct):ct=t[110];let lt;t[111]!==K||t[112]!==l||t[113]!==F||t[114]!==q?(lt=q===3&&l===`folder`&&(0,R.jsx)(D,{onClick:K,disabled:!F.trim()||!te(F),children:`Create Project`}),t[111]=K,t[112]=l,t[113]=F,t[114]=q,t[115]=lt):lt=t[115];let ut;t[116]!==We||t[117]!==ve||t[118]!==l||t[119]!==W||t[120]!==q?(ut=q===3&&l===`webapp`&&(0,R.jsx)(D,{onClick:()=>void We(),disabled:!W.trim()||ve,children:ve?`Preparing...`:`Create Project`}),t[116]=We,t[117]=ve,t[118]=l,t[119]=W,t[120]=q,t[121]=ut):ut=t[121];let dt;t[122]!==ot||t[123]!==st||t[124]!==ct||t[125]!==lt||t[126]!==ut?(dt=(0,R.jsx)(`div`,{className:`flex min-h-[4.5rem] flex-col justify-end border-t border-border bg-muted/10 px-6 py-4`,children:(0,R.jsxs)(x,{children:[ot,st,ct,lt,ut]})}),t[122]=ot,t[123]=st,t[124]=ct,t[125]=lt,t[126]=ut,t[127]=dt):dt=t[127];let $;t[128]!==tt||t[129]!==nt||t[130]!==Q||t[131]!==rt||t[132]!==it||t[133]!==at||t[134]!==dt?($=(0,R.jsxs)(d,{className:`flex h-[min(42rem,90dvh)] max-w-2xl flex-col overflow-hidden p-0`,children:[tt,nt,Q,rt,it,at,dt]}),t[128]=tt,t[129]=nt,t[130]=Q,t[131]=rt,t[132]=it,t[133]=at,t[134]=dt,t[135]=$):$=t[135];let ft;return t[136]!==n||t[137]!==Y||t[138]!==$?(ft=(0,R.jsx)(p,{open:n,onOpenChange:Y,children:$}),t[136]=n,t[137]=Y,t[138]=$,t[139]=ft):ft=t[139],ft}function ge(){}export{z as CreateProjectDialog,z as default};
@@ -0,0 +1 @@
1
+ import{Ci as e,Fr as t,wi as n}from"./interactive-WtOIgeV4.js";import{A as r,D as i,O as a,T as o,b as s,j as c,k as l,s as u,wo as d,x as f}from"./onboarding-Dy7KG3M5.js";import{G as p}from"./index-cAZJlfDA.js";var m=n(),h=e();function g(e){let n=(0,m.c)(48),{open:g,onOpenChange:_,repoName:v,onRepoNameChange:y,repoDescription:b,onRepoDescriptionChange:x,isPrivateRepo:S,onPrivateRepoChange:C,isLoading:w,onCreateRepo:T}=e,E;n[0]!==_||n[1]!==x||n[2]!==y?(E=e=>{e||(y(``),x(``)),_(e)},n[0]=_,n[1]=x,n[2]=y,n[3]=E):E=n[3];let D;n[4]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,h.jsxs)(r,{children:[(0,h.jsx)(c,{children:`Create GitHub Repository`}),(0,h.jsx)(a,{children:`Create a new GitHub repository and push your local repository`})]}),n[4]=D):D=n[4];let O;n[5]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,h.jsx)(s,{htmlFor:`repo-name`,children:`Repository Name (optional)`}),n[5]=O):O=n[5];let k;n[6]===y?k=n[7]:(k=e=>y(e.target.value),n[6]=y,n[7]=k);let A;n[8]!==v||n[9]!==k?(A=(0,h.jsxs)(`div`,{className:`grid gap-2`,children:[O,(0,h.jsx)(f,{id:`repo-name`,placeholder:`Leave empty to use current folder name`,value:v,onChange:k})]}),n[8]=v,n[9]=k,n[10]=A):A=n[10];let j;n[11]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,h.jsx)(s,{htmlFor:`repo-description`,children:`Description (optional)`}),n[11]=j):j=n[11];let M;n[12]===x?M=n[13]:(M=e=>x(e.target.value),n[12]=x,n[13]=M);let N;n[14]!==b||n[15]!==M?(N=(0,h.jsxs)(`div`,{className:`grid gap-2`,children:[j,(0,h.jsx)(p,{id:`repo-description`,placeholder:`Enter repository description...`,value:b,onChange:M,rows:3})]}),n[14]=b,n[15]=M,n[16]=N):N=n[16];let P;n[17]===C?P=n[18]:(P=e=>C(e===!0),n[17]=C,n[18]=P);let F;n[19]!==S||n[20]!==P?(F=(0,h.jsx)(u,{id:`repo-private`,checked:S,onCheckedChange:P}),n[19]=S,n[20]=P,n[21]=F):F=n[21];let I;n[22]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,h.jsx)(s,{htmlFor:`repo-private`,className:t.labelNormal,children:`Private repository`}),n[22]=I):I=n[22];let L;n[23]===F?L=n[24]:(L=(0,h.jsxs)(`div`,{className:`flex items-center gap-2`,children:[F,I]}),n[23]=F,n[24]=L);let R;n[25]!==L||n[26]!==A||n[27]!==N?(R=(0,h.jsxs)(`div`,{className:`grid gap-4 py-4`,children:[A,N,L]}),n[25]=L,n[26]=A,n[27]=N,n[28]=R):R=n[28];let z;n[29]===_?z=n[30]:(z=()=>_(!1),n[29]=_,n[30]=z);let B;n[31]!==w||n[32]!==z?(B=(0,h.jsx)(d,{variant:`outline`,onClick:z,disabled:w,children:`Cancel`}),n[31]=w,n[32]=z,n[33]=B):B=n[33];let V=w?`Creating...`:`Create & Push`,H;n[34]!==w||n[35]!==T||n[36]!==V?(H=(0,h.jsx)(d,{onClick:T,disabled:w,children:V}),n[34]=w,n[35]=T,n[36]=V,n[37]=H):H=n[37];let U;n[38]!==B||n[39]!==H?(U=(0,h.jsxs)(l,{children:[B,H]}),n[38]=B,n[39]=H,n[40]=U):U=n[40];let W;n[41]!==R||n[42]!==U?(W=(0,h.jsxs)(i,{children:[D,R,U]}),n[41]=R,n[42]=U,n[43]=W):W=n[43];let G;return n[44]!==g||n[45]!==E||n[46]!==W?(G=(0,h.jsx)(o,{open:g,onOpenChange:E,children:W}),n[44]=g,n[45]=E,n[46]=W,n[47]=G):G=n[47],G}export{g as CreateRepoDialog};
@@ -0,0 +1 @@
1
+ import{Ci as e,wi as t}from"./interactive-WtOIgeV4.js";import{a as n,c as r,i,n as a,o,r as s,s as c,t as l}from"./alert-dialog-BpJafkQ6.js";var u=t(),d=e();function f(e){let t=(0,u.c)(19),{open:f,onOpenChange:p,title:m,description:h,onConfirm:g,confirming:_,confirmLabel:v,confirmingLabel:y}=e,b=_===void 0?!1:_,x=v===void 0?`Delete`:v,S=y===void 0?`Deleting...`:y,C;t[0]===m?C=t[1]:(C=(0,d.jsx)(r,{children:m}),t[0]=m,t[1]=C);let w;t[2]===h?w=t[3]:(w=(0,d.jsx)(n,{children:h}),t[2]=h,t[3]=w);let T;t[4]!==C||t[5]!==w?(T=(0,d.jsxs)(c,{children:[C,w]}),t[4]=C,t[5]=w,t[6]=T):T=t[6];let E;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,d.jsx)(s,{children:`Cancel`}),t[7]=E):E=t[7];let D=b?S:x,O;t[8]!==b||t[9]!==g||t[10]!==D?(O=(0,d.jsxs)(o,{children:[E,(0,d.jsx)(a,{onClick:g,disabled:b,className:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,children:D})]}),t[8]=b,t[9]=g,t[10]=D,t[11]=O):O=t[11];let k;t[12]!==T||t[13]!==O?(k=(0,d.jsxs)(i,{children:[T,O]}),t[12]=T,t[13]=O,t[14]=k):k=t[14];let A;return t[15]!==p||t[16]!==f||t[17]!==k?(A=(0,d.jsx)(l,{open:f,onOpenChange:p,children:k}),t[15]=p,t[16]=f,t[17]=k,t[18]=A):A=t[18],A}export{f as t};
@@ -0,0 +1,4 @@
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Ci as t,Fr as n,Ft as r,Jn as i,Mt as a,Nt as o,Ti as s,U as c,ct as l,f as u,fn as d,ft as f,i as p,nt as m,pn as h,tt as g,ut as _,wi as v}from"./interactive-WtOIgeV4.js";import{f as y}from"./react-vendor-DgnPMVt4.js";import{A as b,Ct as x,D as S,In as C,Ji as w,Oi as T,St as E,T as D,Tt as O,Un as k,Xi as A,aa as j,bt as M,f as N,ht as P,j as F,k as I,wo as L,wr as R}from"./onboarding-Dy7KG3M5.js";import{c as z}from"./monaco-D1hpqXQ0.js";import{I as ee,L as te,n as B,q as V,r as ne}from"./store-CSyJjyNs.js";import{n as re,t as ie}from"./use-suspense-resource-rX-GqyWi.js";import{n as ae}from"./utils-Rlf65JHq.js";import{A as oe,Ct as se,G as H,Nt as U,O as ce,U as le,V as ue,at as de,j as W,k as G,q as fe}from"./index-cAZJlfDA.js";import{a as pe,n as me,r as K,t as q}from"./context-menu-cv7nzOcn.js";import{t as J}from"./async-error-boundary-DR57nNXL.js";import"./monaco-setup-VhLB0diG.js";var Y=e(s(),1),X=v(),Z=t();function Q(e){let t=(0,X.c)(12),{children:r,title:i,subtitle:a,headerAction:o,footer:s}=e,c;t[0]!==o||t[1]!==a||t[2]!==i?(c=(i||a||o)&&(0,Z.jsxs)(`div`,{className:`flex shrink-0 flex-col gap-1 border-b border-sidebar-border px-4 py-6`,children:[(i||o)&&(0,Z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Z.jsx)(`div`,{className:`flex items-center gap-2`,children:i&&(0,Z.jsx)(`span`,{className:n.sectionTitle,children:i})}),o&&(0,Z.jsx)(`div`,{className:`flex items-center gap-2 ml-auto`,children:o})]}),a]}),t[0]=o,t[1]=a,t[2]=i,t[3]=c):c=t[3];let l;t[4]===r?l=t[5]:(l=(0,Z.jsx)(P,{className:`min-h-0 flex-1`,children:r}),t[4]=r,t[5]=l);let u;t[6]===s?u=t[7]:(u=s&&(0,Z.jsx)(`div`,{className:`border-t border-sidebar-border`,children:s}),t[6]=s,t[7]=u);let d;return t[8]!==c||t[9]!==l||t[10]!==u?(d=(0,Z.jsxs)(`div`,{className:`flex h-full min-h-0 w-full flex-col`,children:[c,l,u]}),t[8]=c,t[9]=l,t[10]=u,t[11]=d):d=t[11],d}function $(e){let t=(0,X.c)(30),{node:n,level:r,renderNode:i,defaultOpen:a,indent:o,childContainerClassName:s,openState:c,onToggle:l,forceOpenIds:u}=e,d=!!(n.children&&n.children.length>0),f,p,m;if(t[0]!==a||t[1]!==u||t[2]!==d||t[3]!==r||t[4]!==n||t[5]!==l||t[6]!==c||t[7]!==i){f=u?.has(n.id)||(c[n.id]??a);let e;t[11]!==n.id||t[12]!==l?(e=()=>l(n.id),t[11]=n.id,t[12]=l,t[13]=e):e=t[13];let o=e;p=`min-w-0`,m=i(n,{isOpen:f,level:r,toggle:o,hasChildren:d}),t[0]=a,t[1]=u,t[2]=d,t[3]=r,t[4]=n,t[5]=l,t[6]=c,t[7]=i,t[8]=f,t[9]=p,t[10]=m}else f=t[8],p=t[9],m=t[10];let h;t[14]!==s||t[15]!==a||t[16]!==u||t[17]!==d||t[18]!==o||t[19]!==f||t[20]!==r||t[21]!==n.children||t[22]!==l||t[23]!==c||t[24]!==i?(h=d&&f&&(0,Z.jsx)(`div`,{style:{paddingLeft:o},className:s,children:n.children.map(e=>(0,Z.jsx)($,{node:e,level:r+1,renderNode:i,defaultOpen:a,indent:o,childContainerClassName:s,openState:c,onToggle:l,forceOpenIds:u},e.id))}),t[14]=s,t[15]=a,t[16]=u,t[17]=d,t[18]=o,t[19]=f,t[20]=r,t[21]=n.children,t[22]=l,t[23]=c,t[24]=i,t[25]=h):h=t[25];let g;return t[26]!==p||t[27]!==m||t[28]!==h?(g=(0,Z.jsxs)(`div`,{className:p,children:[m,h]}),t[26]=p,t[27]=m,t[28]=h,t[29]=g):g=t[29],g}function he(e){let t=(0,X.c)(31),{nodes:n,renderNode:r,resetKey:i,defaultOpen:a,forceOpenIds:o,initialOpenIds:s,indent:c,childContainerClassName:l,className:u}=e,d=a===void 0?!1:a,f=c===void 0?16:c,m;t[0]===s?m=t[1]:(m=()=>{let e={};if(s)for(let t of s)e[t]=!0;return e},t[0]=s,t[1]=m);let[h,g]=(0,Y.useState)(m),[_,v]=(0,Y.useState)(i);if(i!==_){v(i);let e={};if(s)for(let t of s)e[t]=!0;g(e)}let y;t[2]===o?y=t[3]:(y=o?new Set(o):void 0,t[2]=o,t[3]=y);let b=y,x,S;t[4]===o?(x=t[5],S=t[6]):(x=()=>{o?.length&&g(e=>{let t={...e},n=!1;for(let e of o)t[e]!==!0&&(t[e]=!0,n=!0);return n?t:e})},S=[o],t[4]=o,t[5]=x,t[6]=S),(0,Y.useEffect)(x,S);let C;t[7]===d?C=t[8]:(C=e=>{g(t=>({...t,[e]:!(t[e]??d)}))},t[7]=d,t[8]=C);let w=C,T;t[9]===u?T=t[10]:(T=p(`min-w-0`,u),t[9]=u,t[10]=T);let E;if(t[11]!==l||t[12]!==d||t[13]!==b||t[14]!==w||t[15]!==f||t[16]!==n||t[17]!==h||t[18]!==r){let e;t[20]!==l||t[21]!==d||t[22]!==b||t[23]!==w||t[24]!==f||t[25]!==h||t[26]!==r?(e=e=>(0,Z.jsx)($,{node:e,level:0,renderNode:r,defaultOpen:d,indent:f,childContainerClassName:l,openState:h,onToggle:w,forceOpenIds:b},e.id),t[20]=l,t[21]=d,t[22]=b,t[23]=w,t[24]=f,t[25]=h,t[26]=r,t[27]=e):e=t[27],E=n.map(e),t[11]=l,t[12]=d,t[13]=b,t[14]=w,t[15]=f,t[16]=n,t[17]=h,t[18]=r,t[19]=E}else E=t[19];let D;return t[28]!==T||t[29]!==E?(D=(0,Z.jsx)(`div`,{className:T,children:E}),t[28]=T,t[29]=E,t[30]=D):D=t[30],D}function ge(e){let t=[],n={};return e.forEach((e,r)=>{let i=e.path.split(`/`),a=t,o=``;for(let e=0;e<i.length-1;e++){if(o=o?`${o}/${i[e]}`:i[e],!n[o]){let t={id:`dir:${o}`,name:i[e],children:[]};n[o]=t,a.push(t)}a=n[o].children}a.push({id:`file:${e.path}`,name:i[i.length-1],fileIndex:r,status:e.status})}),t}var _e={added:`text-green-500`,deleted:`text-red-500`,untracked:`text-green-500`,renamed:`text-blue-500`,modified:`text-orange-500`},ve={added:`A`,deleted:`D`,untracked:`U`,renamed:`R`,modified:`M`};function ye(e){return p(p(n.compact,`status-badge font-mono font-semibold`),_e[e]??`text-orange-500`)}function be(e){return ve[e]??`M`}function xe(e){let t=(0,X.c)(22),{treeData:i,files:s,error:l,selectedFileIndex:u,onFileSelect:f,onRevertFile:m}=e,{setStats:h}=ue(),g;t[0]===s?g=t[1]:(g=s.reduce(Te,0),t[0]=s,t[1]=g);let _=g,v;t[2]===s?v=t[3]:(v=s.reduce(Se,0),t[2]=s,t[3]=v);let y=v,b,x;if(t[4]!==s.length||t[5]!==h||t[6]!==_||t[7]!==y?(b=()=>{h({fileCount:s.length,additions:_,deletions:y})},x=[s.length,_,y,h],t[4]=s.length,t[5]=h,t[6]=_,t[7]=y,t[8]=b,t[9]=x):(b=t[8],x=t[9]),(0,Y.useEffect)(b,x),l){let e;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(e=p(n.compact,`text-destructive text-center`),t[10]=e):e=t[10];let r;return t[11]===l?r=t[12]:(r=(0,Z.jsx)(Q,{children:(0,Z.jsx)(`div`,{className:`flex-1 flex items-center justify-center p-4 pt-7 pb-2`,children:(0,Z.jsx)(`p`,{className:e,children:l})})}),t[11]=l,t[12]=r),r}if(s.length===0){let e;return t[13]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsx)(Q,{children:(0,Z.jsx)(`div`,{className:`flex-1 flex items-center justify-center p-4 pt-7 pb-2`,children:(0,Z.jsx)(`p`,{className:p(n.compact,n.bodyMuted,`text-center`),children:`No changes to review`})})}),t[13]=e):e=t[13],e}let S;t[14]!==s||t[15]!==f||t[16]!==m||t[17]!==u?(S=(e,t)=>{let{isOpen:i,toggle:l}=t,h=!!e.children,g=(0,Z.jsxs)(N,{onClick:()=>{h?l():e.fileIndex!==void 0&&f(e.fileIndex)},selected:!h&&e.fileIndex===u,className:p(n.conversationBody,`gap-1.5`),children:[h?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(d,{className:p(`h-3.5 w-3.5 shrink-0 text-muted-foreground transition-transform`,i&&`rotate-90`)}),i?(0,Z.jsx)(o,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`}):(0,Z.jsx)(a,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`})]}):(0,Z.jsx)(r,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`}),(0,Z.jsx)(`span`,{className:`truncate flex-1 min-w-0`,children:e.name}),!h&&e.status&&(0,Z.jsx)(`span`,{className:ye(e.status),children:be(e.status)})]});return h?g:(0,Z.jsxs)(q,{children:[(0,Z.jsx)(pe,{asChild:!0,children:(0,Z.jsx)(`div`,{children:g})}),(0,Z.jsx)(me,{children:(0,Z.jsxs)(K,{onClick:()=>{e.fileIndex!==void 0&&m?.(s[e.fileIndex])},children:[(0,Z.jsx)(c,{className:`mr-2 h-3.5 w-3.5`}),`Revert Change`]})})]})},t[14]=s,t[15]=f,t[16]=m,t[17]=u,t[18]=S):S=t[18];let C;return t[19]!==S||t[20]!==i?(C=(0,Z.jsx)(Q,{children:(0,Z.jsx)(`div`,{className:`px-1 pt-3 pb-2`,children:(0,Z.jsx)(he,{nodes:i,defaultOpen:!0,indent:16,childContainerClassName:`ml-4 border-l border-sidebar-border pl-2`,renderNode:S})})}),t[19]=S,t[20]=i,t[21]=C):C=t[21],C}function Se(e,t){return e+t.hunks.reduce(Ce,0)}function Ce(e,t){return e+t.changes.filter(we).length}function we(e){return e.type===`delete`}function Te(e,t){return e+t.hunks.reduce(Ee,0)}function Ee(e,t){return e+t.changes.filter(De).length}function De(e){return e.type===`add`}function Oe(e){let t=(0,X.c)(36),{open:r,lineNumber:i,lineContent:a,initialComment:o,isEditing:s,onSave:c,onDelete:l,onClose:u}=e,[d,f]=(0,Y.useState)((o===void 0?``:o)??``),m;t[0]!==c||t[1]!==d?(m=()=>{d.trim()&&c(d.trim())},t[0]=c,t[1]=d,t[2]=m):m=t[2];let h=m,g;t[3]===h?g=t[4]:(g=e=>{(e.metaKey||e.ctrlKey)&&e.key===`Enter`&&(e.preventDefault(),h())},t[3]=h,t[4]=g);let _=g,v;t[5]===u?v=t[6]:(v=e=>{e||u()},t[5]=u,t[6]=v);let y;t[7]===i?y=t[8]:(y=(0,Z.jsx)(b,{children:(0,Z.jsxs)(F,{children:[`Comment on line `,i]})}),t[7]=i,t[8]=y);let x;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(x=p(n.compact,`font-mono rounded bg-muted px-3 py-2 text-muted-foreground overflow-x-auto whitespace-pre`),t[9]=x):x=t[9];let C=a||` `,w;t[10]===C?w=t[11]:(w=(0,Z.jsx)(`div`,{className:x,children:C}),t[10]=C,t[11]=w);let T;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(T=e=>f(e.target.value),t[12]=T):T=t[12];let E;t[13]!==_||t[14]!==d?(E=(0,Z.jsx)(H,{autoFocus:!0,placeholder:`Add a comment... (Cmd+Enter to save)`,value:d,onChange:T,onKeyDown:_,rows:12,className:`resize-none text-base`}),t[13]=_,t[14]=d,t[15]=E):E=t[15];let O;t[16]!==s||t[17]!==l?(O=s&&l&&(0,Z.jsx)(L,{variant:`destructive`,size:`sm`,onClick:l,className:`mr-auto`,children:`Delete`}),t[16]=s,t[17]=l,t[18]=O):O=t[18];let k;t[19]===d?k=t[20]:(k=d.trim(),t[19]=d,t[20]=k);let A=!k,j;t[21]!==h||t[22]!==A?(j=(0,Z.jsx)(L,{size:`sm`,onClick:h,disabled:A,children:`Save`}),t[21]=h,t[22]=A,t[23]=j):j=t[23];let M;t[24]!==O||t[25]!==j?(M=(0,Z.jsxs)(I,{className:`gap-2 sm:gap-0`,children:[O,j]}),t[24]=O,t[25]=j,t[26]=M):M=t[26];let N;t[27]!==E||t[28]!==M||t[29]!==y||t[30]!==w?(N=(0,Z.jsxs)(S,{className:`max-w-2xl`,children:[y,w,E,M]}),t[27]=E,t[28]=M,t[29]=y,t[30]=w,t[31]=N):N=t[31];let P;return t[32]!==r||t[33]!==N||t[34]!==v?(P=(0,Z.jsx)(D,{open:r,onOpenChange:v,children:N}),t[32]=r,t[33]=N,t[34]=v,t[35]=P):P=t[35],P}function ke(e){let t=B(),n=ne(e=>e.diffComments),r=(0,Y.useMemo)(()=>n[e]??[],[n,e]),i=(0,Y.useCallback)(r=>{let i=n[e]??[],a=typeof r==`function`?r(i):r;t({type:V.SetDiffComments,threadId:e,comments:a})},[t,e,n]),a=(0,Y.useRef)(!1);return(0,Y.useEffect)(()=>{if((n[e]??[]).length>0){a.current=!0;return}R(e).then(n=>{n.diffComments&&n.diffComments.length>0&&t({type:V.SetDiffComments,threadId:e,comments:n.diffComments}),a.current=!0}).catch(()=>{a.current=!0})},[e]),(0,Y.useEffect)(()=>{a.current&&T(e,{diffComments:r}).catch(()=>{})},[e,r]),{comments:r,setComments:i}}function Ae(e,t){return`git-diff:${e}:${t}`}function je(){return Error(`Loading review changes timed out. Please try again.`)}async function Me(e,t=15e3){return Promise.race([w(e),new Promise((e,n)=>{window.setTimeout(()=>n(je()),t)})])}var Ne=2;function Pe(e,t){return t<=0?{min:e,max:e}:{min:e,max:e+t-1}}function Fe(e,t){return{startLine:Math.max(1,e-Ne),endLine:t+Ne}}function Ie(e){if(e.hunks.length===0)return null;let t=1/0,n=0,r=1/0,i=0;for(let a of e.hunks){let e=Pe(a.oldStart,a.oldLines),o=Pe(a.newStart,a.newLines);t=Math.min(t,e.min),n=Math.max(n,e.max),r=Math.min(r,o.min),i=Math.max(i,o.max)}return t===1/0||r===1/0?null:{original:Fe(t,n),modified:Fe(r,i)}}function Le(e,t,n){if(e.length===0)return``;let r=e.endsWith(`
2
+ `),i=e.split(`
3
+ `);return r&&i.length>0&&i[i.length-1]===``&&i.pop(),i.slice(Math.max(0,t-1),Math.max(t-1,n)).join(`
4
+ `)}function Re(e){let t=Ie(e);return t?t.original.startLine<=1||t.modified.startLine<=1:!0}function ze(e,t){return t?e-t.startLine+1:e}function Be(e,t){return t?t.startLine+e-1:e}function Ve(e){return{ts:`typescript`,tsx:`typescript`,js:`javascript`,jsx:`javascript`,json:`json`,md:`markdown`,css:`css`,scss:`scss`,html:`html`,py:`python`,rb:`ruby`,go:`go`,rs:`rust`,java:`java`,kt:`kotlin`,swift:`swift`,c:`c`,cpp:`cpp`,h:`c`,hpp:`cpp`,sh:`shell`,yaml:`yaml`,yml:`yaml`,xml:`xml`,sql:`sql`}[e.split(`.`).pop()??``]||`plaintext`}function He(e){let t=(0,X.c)(34),{comments:n,activeCommentIndex:r,isFullView:i,selectedFileIndex:a,files:o,selectedFile:s,onLineGutterClick:c}=e,l=(0,Y.useRef)(null),u=(0,Y.useRef)(n),d=(0,Y.useRef)(r),f;t[0]!==o||t[1]!==i||t[2]!==a?(f={isFullView:i,selectedFileIndex:a,files:o},t[0]=o,t[1]=i,t[2]=a,t[3]=f):f=t[3];let p=(0,Y.useRef)(f),m;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(m={original:[],modified:[]},t[4]=m):m=t[4];let h=(0,Y.useRef)(m),g=(0,Y.useRef)(null),_=(0,Y.useRef)(!0),v,y;t[5]===n?(v=t[6],y=t[7]):(v=()=>{u.current=n},y=[n],t[5]=n,t[6]=v,t[7]=y),(0,Y.useEffect)(v,y);let b,x;t[8]===r?(b=t[9],x=t[10]):(b=()=>{d.current=r},x=[r],t[8]=r,t[9]=b,t[10]=x),(0,Y.useEffect)(b,x);let S,C;t[11]!==o||t[12]!==i||t[13]!==a?(S=()=>{p.current={isFullView:i,selectedFileIndex:a,files:o}},C=[i,a,o],t[11]=o,t[12]=i,t[13]=a,t[14]=S,t[15]=C):(S=t[14],C=t[15]),(0,Y.useEffect)(S,C);let w;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(w=()=>{if(!_.current)return;let e=l.current;if(!e)return;let{isFullView:t,selectedFileIndex:n,files:r}=p.current,i=u.current,a=d.current,o=r[n];if(!o)return;let s=(e,r)=>{let s=t?null:Ie(o),c=s?r===`original`?s.original:s.modified:null,l=i.filter(e=>e.fileIndex===n&&e.side===r),u=new Set(l.map(e=>ze(e.lineNumber,c))),d=e.getModel()?.getLineCount()??0,f=[];for(let e=1;e<=d;e++)u.has(e)||f.push({range:{startLineNumber:e,startColumn:1,endLineNumber:e,endColumn:1},options:{isWholeLine:!0,glyphMarginClassName:`diff-gutter-add-comment`,glyphMarginHoverMessage:{value:`$(add) Click to add a comment`},stickiness:z.TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges}});let p=l.map(e=>{let t=ze(e.lineNumber,c);if(t<1)return null;let n=i.indexOf(e)===a;return{range:{startLineNumber:t,startColumn:1,endLineNumber:t,endColumn:1},options:{isWholeLine:!0,className:n?`diff-comment-active-line`:`diff-comment-marked-line`,glyphMarginClassName:n?`diff-comment-glyph-active`:`diff-comment-glyph`,glyphMarginHoverMessage:{value:e.comment},stickiness:z.TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges}}}).filter(We);f.push(...p);let m=r===`original`?h.current.original:h.current.modified,g=e.deltaDecorations(m,f);r===`original`?h.current.original=g:h.current.modified=g};s(e.getOriginalEditor(),`original`),s(e.getModifiedEditor(),`modified`)},t[16]=w):w=t[16];let T=w,E;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(E=()=>{let e=g.current;g.current=null,e?.original?.dispose(),e?.modified?.dispose()},t[17]=E):E=t[17];let D=E,O;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(O=()=>{T()},t[18]=O):O=t[18];let k;t[19]!==r||t[20]!==n||t[21]!==i||t[22]!==s||t[23]!==a?(k=[T,n,r,a,i,s],t[19]=r,t[20]=n,t[21]=i,t[22]=s,t[23]=a,t[24]=k):k=t[24],(0,Y.useEffect)(O,k);let A;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(A=()=>()=>{l.current=null,h.current={original:[],modified:[]},D()},t[25]=A):A=t[25];let j;t[26]===a?j=t[27]:(j=[a,D],t[26]=a,t[27]=j),(0,Y.useEffect)(A,j);let M,N;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(M=()=>()=>{_.current=!1,l.current=null,h.current={original:[],modified:[]},D()},N=[D],t[28]=M,t[29]=N):(M=t[28],N=t[29]),(0,Y.useEffect)(M,N);let P;t[30]===c?P=t[31]:(P=e=>{l.current=e;let t=e.getModel();g.current=t?{original:t.original,modified:t.modified}:null;let n=Ue,r=(e,t)=>{e.onMouseDown(r=>{if(!r.target?.position||!n(r.target.type))return;let i=r.target.position.lineNumber,{isFullView:a,selectedFileIndex:o,files:s}=p.current,l=s[o];if(!l)return;let d=a?null:Ie(l),f=Be(i,d?t===`original`?d.original:d.modified:null),m=e.getModel()?.getLineContent(i)??``;c({existing:u.current.find(e=>e.fileIndex===o&&e.lineNumber===f&&e.side===t),lineNumber:f,lineContent:m,side:t})})};r(e.getOriginalEditor(),`original`),r(e.getModifiedEditor(),`modified`),setTimeout(()=>{l.current===e&&T()},150)},t[30]=c,t[31]=P);let F=P,I;return t[32]===F?I=t[33]:(I={diffEditorRef:l,applyAllDecorations:T,handleEditorDidMount:F},t[32]=F,t[33]=I),I}function Ue(e){return e===z.MouseTargetType.GUTTER_GLYPH_MARGIN||e===z.MouseTargetType.GUTTER_LINE_NUMBERS||e===z.MouseTargetType.GUTTER_LINE_DECORATIONS||e===z.MouseTargetType.GUTTER_VIEW_ZONE}function We(e){return e!==null}function Ge(e){let t=(0,X.c)(6),{onRetry:r}=e,[i,a]=(0,Y.useState)(!1),o,s;if(t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=()=>{let e=window.setTimeout(()=>{a(!0)},15e3);return()=>{window.clearTimeout(e)}},s=[],t[0]=o,t[1]=s):(o=t[0],s=t[1]),(0,Y.useEffect)(o,s),!i){let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsx)(M,{label:`Loading review changes...`}),t[2]=e):e=t[2],e}let c;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Z.jsx)(`p`,{className:n.bodyMuted,children:`Loading review changes is taking longer than expected.`}),t[3]=c):c=t[3];let l;return t[4]===r?l=t[5]:(l=(0,Z.jsx)(`div`,{className:`flex h-full items-center justify-center p-6`,children:(0,Z.jsxs)(`div`,{className:`space-y-4 text-center`,children:[c,(0,Z.jsx)(L,{variant:`outline`,onClick:r,children:`Retry`})]})}),t[4]=r,t[5]=l),l}function Ke(e,t,n){return`git-media:${e}:${t}:${n}`}function qe(e,t,n){let r=(0,X.c)(13),i;r[0]!==t||r[1]!==e||r[2]!==n?(i=Ke(e,t,n),r[0]=t,r[1]=e,r[2]=n,r[3]=i):i=r[3];let a;r[4]!==t||r[5]!==e||r[6]!==n?(a=()=>A(e,t,n),r[4]=t,r[5]=e,r[6]=n,r[7]=a):a=r[7];let o=ie(i,a),s;r[8]===o?s=r[9]:(s=URL.createObjectURL(o),r[8]=o,r[9]=s);let c=s,l,u;return r[10]===c?(l=r[11],u=r[12]):(l=()=>()=>{URL.revokeObjectURL(c)},u=[c],r[10]=c,r[11]=l,r[12]=u),(0,Y.useEffect)(l,u),c}function Je(e){let t=(0,X.c)(9),{threadId:r,filePath:i,version:a,label:o}=e,s=qe(r,i,a),c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=p(n.caption,`px-3 py-1.5 border-b text-muted-foreground bg-muted/30`),t[0]=c):c=t[0];let l;t[1]===o?l=t[2]:(l=(0,Z.jsx)(`div`,{className:c,children:o}),t[1]=o,t[2]=l);let u=`${o} - ${i}`,d;t[3]!==s||t[4]!==u?(d=(0,Z.jsx)(`div`,{className:`flex-1 flex items-center justify-center p-4 overflow-auto bg-background`,children:(0,Z.jsx)(`img`,{src:s,alt:u,className:`max-w-full max-h-full object-contain`})}),t[3]=s,t[4]=u,t[5]=d):d=t[5];let f;return t[6]!==l||t[7]!==d?(f=(0,Z.jsxs)(`div`,{className:`flex flex-col h-full`,children:[l,d]}),t[6]=l,t[7]=d,t[8]=f):f=t[8],f}function Ye(e){let t=(0,X.c)(23),{threadId:n,file:r}=e,i=r.status===`modified`||r.status===`deleted`||r.status===`renamed`,a=r.status===`modified`||r.status===`added`||r.status===`untracked`||r.status===`renamed`;if(i&&a){let e;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsx)(M,{label:`Loading before...`}),t[0]=e):e=t[0];let i=r.status===`renamed`&&r.oldPath?r.oldPath:r.path,a;t[1]!==i||t[2]!==n?(a=(0,Z.jsx)(`div`,{className:`flex-1 border-r border-border`,children:(0,Z.jsx)(Y.Suspense,{fallback:e,children:(0,Z.jsx)(Je,{threadId:n,filePath:i,version:`old`,label:`Before`})})}),t[1]=i,t[2]=n,t[3]=a):a=t[3];let o;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Z.jsx)(M,{label:`Loading after...`}),t[4]=o):o=t[4];let s;t[5]!==r.path||t[6]!==n?(s=(0,Z.jsx)(`div`,{className:`flex-1`,children:(0,Z.jsx)(Y.Suspense,{fallback:o,children:(0,Z.jsx)(Je,{threadId:n,filePath:r.path,version:`new`,label:`After`})})}),t[5]=r.path,t[6]=n,t[7]=s):s=t[7];let c;return t[8]!==a||t[9]!==s?(c=(0,Z.jsxs)(`div`,{className:`flex h-full`,children:[a,s]}),t[8]=a,t[9]=s,t[10]=c):c=t[10],c}let o=a?`new`:`old`,s=a?`Added`:`Deleted`,c;t[11]===s?c=t[12]:(c=s.toLowerCase(),t[11]=s,t[12]=c);let l=`Loading ${c} image...`,u;t[13]===l?u=t[14]:(u=(0,Z.jsx)(M,{label:l}),t[13]=l,t[14]=u);let d;t[15]!==r.path||t[16]!==s||t[17]!==n||t[18]!==o?(d=(0,Z.jsx)(Je,{threadId:n,filePath:r.path,version:o,label:s}),t[15]=r.path,t[16]=s,t[17]=n,t[18]=o,t[19]=d):d=t[19];let f;return t[20]!==u||t[21]!==d?(f=(0,Z.jsx)(`div`,{className:`flex h-full flex-col`,children:(0,Z.jsx)(Y.Suspense,{fallback:u,children:d})}),t[20]=u,t[21]=d,t[22]=f):f=t[22],f}function Xe(e){let t=(0,X.c)(70),{threadId:r,selectedFile:i,selectedFileIndex:a,isImageFile:o,diffOriginal:s,diffModified:c,resolvedTheme:v,onEditorMount:b,diffEditorOptions:S,isPanelCollapsed:C,showTreeBackButton:w,onShowTree:T,onTogglePanel:D,isFullView:k,onToggleFullView:A,comments:j,activeCommentIndex:M,onPrevComment:N,onNextComment:P,onFixComments:F,isChatOpen:I,onOpenChat:R,onCloseChat:z}=e,B=ne(Ze),V;t[0]===B?V=t[1]:(V=e=>ee(e,B),t[0]=B,t[1]=V);let re=ne(V),ie;t[2]===B?ie=t[3]:(ie=e=>te(e,B),t[2]=B,t[3]=ie);let ae=ne(ie),oe=C&&`h-auto py-3 flex-col items-start gap-3 md:flex-row md:items-center md:h-[71px] md:py-0 md:gap-2 justify-between`,se;t[4]===oe?se=t[5]:(se=p(`bg-transparent`,oe),t[4]=oe,t[5]=se);let H;t[6]!==C||t[7]!==T||t[8]!==D||t[9]!==w?(H=w?(0,Z.jsxs)(L,{variant:`ghost`,size:`icon`,className:`h-8 w-8 text-muted-foreground shrink-0`,onClick:T,children:[(0,Z.jsx)(g,{className:`h-4 w-4`}),(0,Z.jsx)(`span`,{className:`sr-only`,children:`Show file tree`})]}):(0,Z.jsxs)(L,{variant:`ghost`,size:`icon`,className:`h-8 w-8 text-muted-foreground shrink-0`,onClick:D,children:[C?(0,Z.jsx)(g,{className:`h-4 w-4`}):(0,Z.jsx)(m,{className:`h-4 w-4`}),(0,Z.jsx)(`span`,{className:`sr-only`,children:`Toggle file tree`})]}),t[6]=C,t[7]=T,t[8]=D,t[9]=w,t[10]=H):H=t[10];let ce;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(ce=p(n.label,`text-foreground`),t[11]=ce):ce=t[11];let ue=i?i.path:`Review Changes`,W;t[12]===ue?W=t[13]:(W=(0,Z.jsx)(`span`,{className:ce,children:ue}),t[12]=ue,t[13]=W);let G;t[14]!==H||t[15]!==W?(G=(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[H,W]}),t[14]=H,t[15]=W,t[16]=G):G=t[16];let pe=C&&`ml-0`,me=!C&&`ml-auto`,K;t[17]!==pe||t[18]!==me?(K=p(`flex items-center gap-2`,pe,me,`md:ml-auto`),t[17]=pe,t[18]=me,t[19]=K):K=t[19];let q;t[20]!==k||t[21]!==o||t[22]!==A||t[23]!==i?(q=!o&&(0,Z.jsx)(L,{variant:`ghost`,size:`sm`,onClick:A,disabled:!i,className:p(n.compact,`h-8 gap-1 px-2`),children:k?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(l,{className:`h-3 w-3`}),` Show changes only`]}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(f,{className:`h-3 w-3`}),` Show full file`]})}),t[20]=k,t[21]=o,t[22]=A,t[23]=i,t[24]=q):q=t[24];let J;t[25]!==M||t[26]!==j.length||t[27]!==P||t[28]!==N?(J=j.length>0&&(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsxs)(E,{children:[(0,Z.jsx)(O,{asChild:!0,children:(0,Z.jsx)(L,{variant:`ghost`,size:`icon`,className:`h-8 w-8 rounded-full`,onClick:N,disabled:(M??0)===0,children:(0,Z.jsx)(h,{className:`h-3 w-3`})})}),(0,Z.jsx)(x,{children:`Previous comment`})]}),(0,Z.jsx)(`span`,{className:p(n.caption,`whitespace-nowrap`),children:j.length===1?`1 Comment`:`Comment ${(M??0)+1} of ${j.length}`}),(0,Z.jsxs)(E,{children:[(0,Z.jsx)(O,{asChild:!0,children:(0,Z.jsx)(L,{variant:`ghost`,size:`icon`,className:`h-8 w-8 rounded-full`,onClick:P,disabled:(M??0)===j.length-1,children:(0,Z.jsx)(d,{className:`h-3 w-3`})})}),(0,Z.jsx)(x,{children:`Next comment`})]})]}),t[25]=M,t[26]=j.length,t[27]=P,t[28]=N,t[29]=J):J=t[29];let Y;t[30]!==j.length||t[31]!==F?(Y=j.length>0&&(0,Z.jsxs)(E,{children:[(0,Z.jsx)(O,{asChild:!0,children:(0,Z.jsxs)(L,{size:`sm`,onClick:F,className:p(n.compact,`h-8 gap-1 px-3 bg-foreground text-background hover:bg-foreground/90`),children:[(0,Z.jsx)(_,{className:`h-3 w-3`}),`Fix all comments`]})}),(0,Z.jsx)(x,{children:`Send all comments to Tarsk for resolution`})]}),t[30]=j.length,t[31]=F,t[32]=Y):Y=t[32];let Q;t[33]!==K||t[34]!==q||t[35]!==J||t[36]!==Y?(Q=(0,Z.jsxs)(`div`,{className:K,children:[q,J,Y]}),t[33]=K,t[34]=q,t[35]=J,t[36]=Y,t[37]=Q):Q=t[37];let $;t[38]!==Q||t[39]!==se||t[40]!==G?($=(0,Z.jsxs)(U,{className:se,children:[G,Q]}),t[38]=Q,t[39]=se,t[40]=G,t[41]=$):$=t[41];let he;t[42]!==S||t[43]!==c||t[44]!==s||t[45]!==o||t[46]!==b||t[47]!==v||t[48]!==i||t[49]!==a||t[50]!==r?(he=o&&i?(0,Z.jsx)(Ye,{threadId:r,file:i}):(0,Z.jsx)(y,{height:`100%`,language:Ve(i?.path||``),original:s,modified:c,keepCurrentOriginalModel:!0,keepCurrentModifiedModel:!0,theme:v===`dark`?`vs-dark`:`vs-light`,onMount:b,options:S},`diff-${a}`),t[42]=S,t[43]=c,t[44]=s,t[45]=o,t[46]=b,t[47]=v,t[48]=i,t[49]=a,t[50]=r,t[51]=he):he=t[51];let ge;t[52]!==re||t[53]!==B||t[54]!==I||t[55]!==z||t[56]!==ae?(ge=I&&(0,Z.jsxs)(`div`,{className:`pointer-events-auto w-[min(100%,48rem)] rounded-2xl bg-background/50 p-4 backdrop-blur-md`,children:[(0,Z.jsx)(`div`,{className:`mb-3 flex items-center justify-end`,children:(0,Z.jsxs)(L,{variant:`ghost`,size:`icon`,className:`h-8 w-8`,onClick:z,children:[(0,Z.jsx)(u,{className:`h-4 w-4`}),(0,Z.jsx)(`span`,{className:`sr-only`,children:`Close chat`})]})}),(0,Z.jsx)(de,{paneId:B,conversationId:re,children:(0,Z.jsx)(fe,{children:(0,Z.jsx)(le,{messages:ae})})})]}),t[52]=re,t[53]=B,t[54]=I,t[55]=z,t[56]=ae,t[57]=ge):ge=t[57];let _e;t[58]!==I||t[59]!==R?(_e=!I&&(0,Z.jsxs)(E,{children:[(0,Z.jsx)(O,{asChild:!0,children:(0,Z.jsxs)(L,{size:`icon`,className:`pointer-events-auto h-12 w-12 rounded-full shadow-lg`,onClick:R,children:[(0,Z.jsx)(_,{className:`h-5 w-5`}),(0,Z.jsx)(`span`,{className:`sr-only`,children:`Open review chat`})]})}),(0,Z.jsx)(x,{children:`Chat about this diff`})]}),t[58]=I,t[59]=R,t[60]=_e):_e=t[60];let ve;t[61]!==ge||t[62]!==_e?(ve=(0,Z.jsxs)(`div`,{className:`pointer-events-none absolute bottom-4 right-4 z-20 flex flex-col items-end gap-3`,children:[ge,_e]}),t[61]=ge,t[62]=_e,t[63]=ve):ve=t[63];let ye;t[64]!==he||t[65]!==ve?(ye=(0,Z.jsxs)(`div`,{className:`flex-1 bg-transparent relative`,children:[he,ve]}),t[64]=he,t[65]=ve,t[66]=ye):ye=t[66];let be;return t[67]!==$||t[68]!==ye?(be=(0,Z.jsxs)(`div`,{className:`diff-editor-panel flex h-full min-h-0 w-full min-w-0 flex-1 flex-col overflow-hidden bg-transparent`,children:[$,ye]}),t[67]=$,t[68]=ye,t[69]=be):be=t[69],be}function Ze(e){return e.focusedPane}function Qe(){let e=(0,X.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Z.jsx)(ce,{withHandle:!0,className:`z-10 shrink-0`}),e[0]=t):t=e[0],t}function $e(e){let t=(0,X.c)(8),{isMobile:n,mobileShowTree:r,panelRef:i,onPanelCollapse:a,onPanelExpand:o,fileTreePanel:s,diffEditorPanel:c}=e,l;return t[0]!==c||t[1]!==s||t[2]!==n||t[3]!==r||t[4]!==a||t[5]!==o||t[6]!==i?(l=(0,Z.jsx)(`div`,{className:`diff-body flex min-h-0 w-full flex-1 overflow-hidden`,children:n?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:p(`flex min-h-0 w-full min-w-0 flex-1 flex-col overflow-hidden`,!r&&`hidden`),children:s}),(0,Z.jsx)(`div`,{className:p(`flex min-h-0 w-full min-w-0 flex-1 flex-col overflow-hidden`,r&&`hidden`),children:c})]}):(0,Z.jsxs)(oe,{direction:`horizontal`,children:[(0,Z.jsx)(G,{ref:i,defaultSize:25,minSize:12,maxSize:40,collapsible:!0,collapsedSize:0,onCollapse:a,onExpand:o,className:`overflow-hidden border-r border-transparent`,children:s}),(0,Z.jsx)(Qe,{}),(0,Z.jsx)(G,{className:`overflow-hidden border-l border-border bg-transparent`,children:c})]})}),t[0]=c,t[1]=s,t[2]=n,t[3]=r,t[4]=a,t[5]=o,t[6]=i,t[7]=l):l=t[7],l}var et=i(`app.diff-view.ui`);function tt({threadId:e,onExit:t,loadVersion:n,cachedState:r,onCachedStateChange:i}){let a=ie(Ae(e,n),()=>Me(e)),o=B(),s=ne(e=>e.projectModelSelections),{resolvedTheme:c}=ae(),l=W(),{fetchUnifiedStatus:u}=se(),[d,f]=(0,Y.useState)(r?.files??a.files??[]),[p,m]=(0,Y.useState)(null),[h,g]=(0,Y.useState)(r?.selectedFileIndex??0),[_,v]=(0,Y.useState)(!1),[y,b]=(0,Y.useState)(!1),[x,S]=(0,Y.useState)(!1),[T,E]=(0,Y.useState)(!0),D=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{f(a.files??[]),g(e=>{let t=r?.selectedFileIndex??e,n=Math.max((a.files?.length??1)-1,0);return Math.min(t,n)})},[r?.selectedFileIndex,a.files]),(0,Y.useEffect)(()=>{E(!0)},[e]);let O=(0,Y.useCallback)(e=>{g(e),l&&E(!1)},[l]);(0,Y.useEffect)(()=>{i&&i(e=>{let t=d,n=Math.max(t.length-1,0),r=Math.min(h,n);return e?.files===t&&e.selectedFileIndex===r?e:{files:t,selectedFileIndex:r}})},[d,i,h]);let A=(0,Y.useCallback)(()=>{E(!0)},[]),M=l&&!T,{comments:N,setComments:P}=ke(e),[F,I]=(0,Y.useState)(null),[L,R]=(0,Y.useState)(null),[z,ee]=(0,Y.useState)(null),te=(0,Y.useCallback)(()=>{D.current&&(y?D.current.expand():D.current.collapse())},[y]),re=(0,Y.useCallback)(async()=>{if(e){m(null);try{let t=await w(e);f(t.files||[]),g(e=>{let n=t.files||[],r=Math.max(n.length-1,0);return Math.min(e,r)})}catch(e){m(e instanceof Error?e.message:`Failed to load diff`)}}},[e]),oe=(0,Y.useCallback)(async t=>{try{await j(e,t.path),await Promise.all([re(),u(!0)])}catch(e){m(e instanceof Error?e.message:`Failed to revert file`)}},[e,re,u]),H=(0,Y.useMemo)(()=>ge(d),[d]),U=d[h],ce=U?.isBinary??!1,le=U?_?U.oldContent:(()=>{let e=Ie(U);return e?Le(U.oldContent,e.original.startLine,e.original.endLine):U.oldContent})():``,ue=U?_?U.newContent:(()=>{let e=Ie(U);return e?Le(U.newContent,e.modified.startLine,e.modified.endLine):U.newContent})():``,{diffEditorRef:de,applyAllDecorations:G,handleEditorDidMount:fe}=He({comments:N,activeCommentIndex:F,isFullView:_,selectedFileIndex:h,files:d,selectedFile:U,onLineGutterClick:(0,Y.useCallback)(({existing:e,lineNumber:t,lineContent:n,side:r})=>{e?ee(e):R({lineNumber:t,lineContent:n,side:r})},[])}),pe=(0,Y.useCallback)(e=>{if(L&&U){let t={id:`comment-${Date.now()}`,filePath:U.path,fileIndex:h,lineNumber:L.lineNumber,lineContent:L.lineContent,comment:e,side:L.side};P(e=>[...e,t]),R(null)}else z&&(P(t=>t.map(t=>t.id===z.id?{...t,comment:e}:t)),ee(null))},[L,z,U,h,P]),me=(0,Y.useCallback)(()=>{z&&(P(e=>e.filter(e=>e.id!==z.id)),ee(null))},[z,P]),K=(0,Y.useCallback)(e=>{if(N.length===0)return;let t=(e%N.length+N.length)%N.length,n=N[t];I(t),g(n.fileIndex),l&&E(!1),setTimeout(()=>{let e=de.current;if(!e)return;let t=d[n.fileIndex];if(!t)return;let r=_?null:Ie(t),i=r?n.side===`original`?r.original:r.modified:null,a=ze(n.lineNumber,i);(n.side===`original`?e.getOriginalEditor():e.getModifiedEditor()).revealLineInCenter(Math.max(1,a)),G()},100)},[N,d,_,G,l]),q=(0,Y.useCallback)(()=>{K((F??0)-1)},[K,F]),J=(0,Y.useCallback)(()=>{K((F??-1)+1)},[K,F]),X=(0,Y.useCallback)(async()=>{let n=s[e];if(!n)try{let e=await k(),t=Object.values(e).flat();if(t.length>0)n=t[0];else{et.error(`No models available to process comments`);return}}catch(e){et.error(`Failed to load models:`,e);return}let r=n.id,i=n.provider;try{let{prompt:n}=await C(e,N);P([]),o({type:V.SetPendingChatMessage,message:{threadId:e,message:n,model:r,provider:i}}),t()}catch(e){et.error(`Failed to fix comments:`,e),typeof window<`u`&&window.alert(`Failed to process comments. Please try again.`)}},[N,s,o,e,t,P]),Q={readOnly:!0,renderSideBySide:!l,ignoreTrimWhitespace:!1,renderOverviewRuler:!0,scrollBeyondLastLine:!1,minimap:{enabled:!1},folding:!1,glyphMargin:!0,lineNumbers:U&&(_||Re(U))?`on`:`off`,diffWordWrap:`on`,originalEditable:!1,automaticLayout:!0};return(0,Z.jsxs)(`div`,{className:`diff-view-root flex h-full min-h-0 w-full flex-col`,children:[(0,Z.jsx)($e,{isMobile:l,mobileShowTree:T,panelRef:D,onPanelCollapse:()=>b(!0),onPanelExpand:()=>b(!1),fileTreePanel:(0,Z.jsx)(`div`,{className:`flex h-full min-h-0 w-full min-w-0 flex-1 flex-col overflow-hidden`,children:(0,Z.jsx)(xe,{treeData:H,files:d,error:p,selectedFileIndex:h,onFileSelect:O,onRevertFile:oe})}),diffEditorPanel:(0,Z.jsx)(Xe,{threadId:e,selectedFile:U,selectedFileIndex:h,isImageFile:ce,diffOriginal:le,diffModified:ue,resolvedTheme:c,onEditorMount:fe,diffEditorOptions:Q,isPanelCollapsed:y,showTreeBackButton:M,onShowTree:A,onTogglePanel:te,isFullView:_,onToggleFullView:()=>v(e=>!e),comments:N,activeCommentIndex:F,onPrevComment:q,onNextComment:J,onFixComments:X,isChatOpen:x,onOpenChat:()=>S(!0),onCloseChat:()=>S(!1)})}),(0,Z.jsx)(Oe,{open:L!==null||z!==null,lineNumber:z?.lineNumber??L?.lineNumber??0,lineContent:z?.lineContent??L?.lineContent??``,initialComment:z?.comment,isEditing:z!==null,onSave:pe,onDelete:me,onClose:()=>{R(null),ee(null)}},`${z?.id??``}-${L?.lineNumber??``}-${L?.side??``}`)]})}function nt(e){let t=(0,X.c)(23),[n,r]=(0,Y.useState)(0),[i,a]=(0,Y.useState)(0),o=(0,Y.useRef)(0),s=!!e.cachedState,c;t[0]===e.threadId?c=t[1]:(c=()=>{r(t=>(re(Ae(e.threadId,t)),t+1)),a(it)},t[0]=e.threadId,t[1]=c);let l=c,u;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=()=>{a(0),r(0),o.current=0},t[2]=u):u=t[2];let d;t[3]===e.threadId?d=t[4]:(d=[e.threadId],t[3]=e.threadId,t[4]=d),(0,Y.useEffect)(u,d);let f,p;t[5]!==e.refreshTrigger||t[6]!==e.threadId?(f=()=>{!e.refreshTrigger||e.refreshTrigger<=o.current||(o.current=e.refreshTrigger,r(t=>(re(Ae(e.threadId,t)),t+1)),a(rt))},p=[e.refreshTrigger,e.threadId],t[5]=e.refreshTrigger,t[6]=e.threadId,t[7]=f,t[8]=p):(f=t[7],p=t[8]),(0,Y.useEffect)(f,p);let m=`${e.threadId}:${i}`,h;t[9]!==l||t[10]!==s?(h=s?null:(0,Z.jsx)(Ge,{onRetry:l}),t[9]=l,t[10]=s,t[11]=h):h=t[11];let g=`${e.threadId}:${n}`,_;t[12]!==n||t[13]!==e||t[14]!==g?(_=(0,Z.jsx)(tt,{...e,loadVersion:n},g),t[12]=n,t[13]=e,t[14]=g,t[15]=_):_=t[15];let v;t[16]!==h||t[17]!==_?(v=(0,Z.jsx)(Y.Suspense,{fallback:h,children:_}),t[16]=h,t[17]=_,t[18]=v):v=t[18];let y;return t[19]!==l||t[20]!==m||t[21]!==v?(y=(0,Z.jsx)(J,{fallbackTitle:`Failed to load review changes`,onRetry:l,children:v},m),t[19]=l,t[20]=m,t[21]=v,t[22]=y):y=t[22],y}function rt(e){return e+1}function it(e){return e+1}export{nt as DiffView,nt as default};