tarsk 0.5.69 → 0.5.71

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 (91) hide show
  1. package/dist/index.js +130206 -129441
  2. package/dist/public/assets/{account-view-Chzj6v7a.js → account-view-P4Y5-Gf7.js} +1 -1
  3. package/dist/public/assets/{alert-dialog-CLYxQdrK.js → alert-dialog-CQsuxtcP.js} +1 -1
  4. package/dist/public/assets/{async-error-boundary-CM6LU7nT.js → async-error-boundary-DajcyqVg.js} +1 -1
  5. package/dist/public/assets/{browser-tab--1iEoJGu.js → browser-tab-DLvnuyhT.js} +2 -2
  6. package/dist/public/assets/{chat-dock-context-Gg1jpamu.js → chat-dock-context-CUdrQKFm.js} +1 -1
  7. package/dist/public/assets/{commit-dialog-BfdxNX_T.js → commit-dialog-C98fYJ1d.js} +1 -1
  8. package/dist/public/assets/{commit-error-dialog-DrsDKL-B.js → commit-error-dialog-DjFWRUYh.js} +1 -1
  9. package/dist/public/assets/{commit-method-fields-o-xw2faT.js → commit-method-fields-CPKi4MLF.js} +1 -1
  10. package/dist/public/assets/{context-menu-BLvLpqq7.js → context-menu-D4UmleM5.js} +1 -1
  11. package/dist/public/assets/conversation-history-view-CFq844ge.js +1 -0
  12. package/dist/public/assets/create-project-dialog-Du4yuSgt.js +6 -0
  13. package/dist/public/assets/create-project-workspace-Cw58bBNY.js +1 -0
  14. package/dist/public/assets/{create-repo-dialog-CkFACtMf.js → create-repo-dialog-DaCI6QrX.js} +1 -1
  15. package/dist/public/assets/{delete-confirm-dialog-D1zjctrX.js → delete-confirm-dialog-V9X76h-2.js} +1 -1
  16. package/dist/public/assets/diff-view-CzWiyJDW.js +4 -0
  17. package/dist/public/assets/explorer-tab-view-BbukFEig.js +2 -0
  18. package/dist/public/assets/explorer-tree-CKwkrTpU.js +1 -0
  19. package/dist/public/assets/explorer-view-DxvRAs1j.js +75 -0
  20. package/dist/public/assets/{git-history-dialog-X6sVwgPT.js → git-history-dialog-BIl7cN5L.js} +1 -1
  21. package/dist/public/assets/index-BH6Ht-w_.js +3356 -0
  22. package/dist/public/assets/{index-Cndc50ux.css → index-DpGlIV5v.css} +1 -1
  23. package/dist/public/assets/markdown-renderer-BcGbfUdk.js +8 -0
  24. package/dist/public/assets/{mcp-server-card-DPakHrG9.js → mcp-server-card-D8gWLGuB.js} +1 -1
  25. package/dist/public/assets/{merged-pr-dialog-C3euJvCu.js → merged-pr-dialog-BcMvxAAS.js} +1 -1
  26. package/dist/public/assets/{model-list-controls-2JtkzWsp.js → model-list-controls-8f6YNzoF.js} +1 -1
  27. package/dist/public/assets/{monaco-setup-b-rhUj5t.js → monaco-setup-B_kQVsDW.js} +1 -1
  28. package/dist/public/assets/onboarding-CQV3cOCc.js +46 -0
  29. package/dist/public/assets/{project-env-vars-view-D60J_-qQ.js → project-env-vars-view-DHLrARmp.js} +1 -1
  30. package/dist/public/assets/{project-model-aliases-view-EClnOgBH.js → project-model-aliases-view-NaGeOnLB.js} +1 -1
  31. package/dist/public/assets/project-settings-view-DYx0Ejz_.js +1 -0
  32. package/dist/public/assets/{project-tools-view-B_WnVICB.js → project-tools-view-Dwh-9yLK.js} +1 -1
  33. package/dist/public/assets/providers-list-view-BgHPRsyZ.js +1 -0
  34. package/dist/public/assets/{pull-request-dialog-CitbRcub.js → pull-request-dialog-jiDTjl9S.js} +1 -1
  35. package/dist/public/assets/{pull-with-changes-dialog-CpgHqvKf.js → pull-with-changes-dialog-tz5BKYLX.js} +1 -1
  36. package/dist/public/assets/{push-before-pr-dialog-CrcNZDLb.js → push-before-pr-dialog-CsCEcu3D.js} +1 -1
  37. package/dist/public/assets/query-keys-CbACxUOr.js +1 -0
  38. package/dist/public/assets/react-vendor-CVjuv5OI.js +22 -0
  39. package/dist/public/assets/scenic-chrome-CbN3vum7.js +1 -0
  40. package/dist/public/assets/settings-general-view-DFuR-GEd.js +1 -0
  41. package/dist/public/assets/{settings-instructions-view-DN4-73KP.js → settings-instructions-view-DyHQ7P84.js} +1 -1
  42. package/dist/public/assets/{settings-list-CWdsaJKC.js → settings-list-CqAk8BOe.js} +1 -1
  43. package/dist/public/assets/{settings-logs-view-CkkVgGvv.js → settings-logs-view-NuI1wC43.js} +4 -4
  44. package/dist/public/assets/settings-mcp-servers-view-CzbsCA0X.js +5 -0
  45. package/dist/public/assets/settings-models-view-DC-v64Ua.js +1 -0
  46. package/dist/public/assets/{settings-rules-view-DIk0ghSW.js → settings-rules-view-F1cdLdbY.js} +3 -3
  47. package/dist/public/assets/settings-skills-view-Ba8LIeWY.js +3 -0
  48. package/dist/public/assets/{settings-slack-view-RFLP0USW.js → settings-slack-view-DQUSFcUo.js} +1 -1
  49. package/dist/public/assets/settings-slash-commands-view-BRBxLk4J.js +1 -0
  50. package/dist/public/assets/{settings-statistics-view-BgrzVn4R.js → settings-statistics-view-4uiJ9rwT.js} +1 -1
  51. package/dist/public/assets/{settings-storage-view-BS2k7E74.js → settings-storage-view-CuAI5fWL.js} +1 -1
  52. package/dist/public/assets/{settings-subagents-view-BZr1NkVp.js → settings-subagents-view-pSxxHmFV.js} +2 -2
  53. package/dist/public/assets/{settings-system-prompt-view-mQErde93.js → settings-system-prompt-view-CrFpAHz1.js} +1 -1
  54. package/dist/public/assets/settings-view-_YIXCuoG.js +2 -0
  55. package/dist/public/assets/store-fffs6-y9.js +8 -0
  56. package/dist/public/assets/suspense-resource-DnYnmTbs.js +1 -0
  57. package/dist/public/assets/tasks-view-f5xX4AVx.js +2 -0
  58. package/dist/public/assets/{terminal-panel-DCaBWV04.js → terminal-panel-CiCkzKHm.js} +3 -3
  59. package/dist/public/assets/{ui-components-1WsgZqWa.js → ui-components-DioWsrht.js} +1 -1
  60. package/dist/public/assets/{use-active-dock-panel-instance-B9ao_JH2.js → use-active-dock-panel-instance-BAHb-cSH.js} +1 -1
  61. package/dist/public/assets/use-installed-ai-files-D7Y1gZYc.js +1 -0
  62. package/dist/public/assets/use-open-chat-dock-panel-zpT9rr8C.js +1 -0
  63. package/dist/public/assets/use-suspense-resource-BxOFFoEK.js +1 -0
  64. package/dist/public/assets/{web-CEfF0992.js → web-2RomPZ8n.js} +1 -1
  65. package/dist/public/assets/{web-BuYdGVW8.js → web-BRo_4CM5.js} +1 -1
  66. package/dist/public/assets/{web-yeAPC2wm.js → web-CkSlG6TA.js} +1 -1
  67. package/dist/public/assets/{web-D7CwlITA.js → web-DGsiH272.js} +1 -1
  68. package/dist/public/index.html +14 -9
  69. package/package.json +1 -1
  70. package/dist/public/assets/conversation-history-view-ukfe_7qw.js +0 -1
  71. package/dist/public/assets/create-project-dialog-DrXo61FQ.js +0 -6
  72. package/dist/public/assets/diff-view-Cxf7v9t1.js +0 -4
  73. package/dist/public/assets/explorer-tab-view-LkT0bDcR.js +0 -2
  74. package/dist/public/assets/explorer-tree-B6EZUVTn.js +0 -1
  75. package/dist/public/assets/explorer-view-D5y8Uxoi.js +0 -75
  76. package/dist/public/assets/index-CJCQ4bTo.js +0 -3359
  77. package/dist/public/assets/onboarding-KBcwP-kU.js +0 -46
  78. package/dist/public/assets/project-settings-view-Cb0iiyad.js +0 -1
  79. package/dist/public/assets/providers-list-view-CYy82_hl.js +0 -1
  80. package/dist/public/assets/react-vendor-7n7LyU5o.js +0 -22
  81. package/dist/public/assets/settings-general-view-72s5xgPj.js +0 -1
  82. package/dist/public/assets/settings-mcp-servers-view-B8_vnfl6.js +0 -5
  83. package/dist/public/assets/settings-models-view-xIRY7PvW.js +0 -1
  84. package/dist/public/assets/settings-skills-view-qWbr0Vl2.js +0 -3
  85. package/dist/public/assets/settings-slash-commands-view-zFWoR_R7.js +0 -1
  86. package/dist/public/assets/settings-view-D4-XZz2V.js +0 -2
  87. package/dist/public/assets/store-B_cK-gsT.js +0 -8
  88. package/dist/public/assets/tasks-view-DgkXglqW.js +0 -2
  89. package/dist/public/assets/thread-tool-blocks-D9HUkPHB.js +0 -1
  90. package/dist/public/assets/use-installed-ai-files-GpG9ZL8U.js +0 -1
  91. package/dist/public/assets/use-suspense-resource-CExc4Svq.js +0 -1
@@ -1 +1 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Di as t,Oi as n,Rr as r,Sn as i,b as a,i as o,ki as s,ln as c,pt as l,y as u}from"./interactive-BrHVRHmQ.js";import{Wt as d}from"./react-vendor-7n7LyU5o.js";import{Ca as f,Eo as p,Gr as m,Lr as h,Vn as g,mt as _,nt as v,rt as y,vn as b}from"./onboarding-KBcwP-kU.js";import{r as x}from"./store-B_cK-gsT.js";import{t as S}from"./use-toast-hxHsVv6a.js";import{t as C}from"./skeleton-CJSNEi3C.js";import{t as w}from"./delete-confirm-dialog-D1zjctrX.js";var T=n(),E=e(s(),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)(y,{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)(_,{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),[n,s]=(0,E.useState)(!0),[_,y]=(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(){s(!0);try{t(await g())}catch(e){S({title:`Error`,description:e instanceof Error?e.message:`Failed to load account info`,variant:`destructive`})}finally{s(!1)}}function F(){h(`https://buy.stripe.com/14AcN6feK0Jjbheb2H3Nm03?client_reference_id=${e?.clientReferenceId??``}`)}function I(){h(`https://buy.stripe.com/9B67sMd6CgIh70Y0o33Nm04?client_reference_id=${e?.clientReferenceId??``}`)}async function L(){T(!0);try{if(await b(),f())try{await m()}catch{}window.close()}catch(e){T(!1),y(!1),S({title:`Error`,description:e instanceof Error?e.message:`Failed to delete account`,variant:`destructive`})}}let R=e?.plan===`unlimited-pro`,z=n&&e===null,B=e===null?n:!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:o(r.label,`flex items-center gap-2 text-muted-foreground`),children:[(0,D.jsx)(l,{className:`h-4 w-4`}),`Balance`]}),(0,D.jsx)(`div`,{className:`flex items-end gap-2`,children:R?(0,D.jsx)(`span`,{className:r.stat,children:`Unlimited`}):(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(`span`,{className:r.stat,children:e?.promptsRemaining.toLocaleString()??0}),(0,D.jsx)(`span`,{className:`${r.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:o(r.label,`flex items-center gap-2 text-muted-foreground`),children:[(0,D.jsx)(c,{className:`h-4 w-4`}),`Current Plan`]}),(0,D.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,D.jsx)(`span`,{className:r.label,children:R?`Unlimited Pro`:`Pay as you go`}),R&&(0,D.jsx)(`span`,{className:o(r.compact,`rounded-full bg-primary/10 px-2 py-0.5 font-medium text-primary`),children:`Active`})]}),(0,D.jsx)(`p`,{className:r.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:r.label,children:`1,000 Prompts`}),(0,D.jsx)(`p`,{className:r.bodyMuted,children:`Top up your balance with 1,000 additional prompts for $5.`})]}),(0,D.jsx)(p,{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)(c,{className:`h-4 w-4 text-primary`}),(0,D.jsx)(`span`,{className:r.label,children:`Unlimited Pro Plan`})]}),(0,D.jsx)(`p`,{className:r.bodyMuted,children:`Unlimited prompts for $100 and lifetime access to Tarsk.`}),(0,D.jsxs)(`ul`,{className:o(r.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)(p,{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)(v,{variant:`error`,children:[(0,D.jsxs)(`span`,{className:`flex items-start gap-2`,children:[(0,D.jsx)(u,{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)(p,{variant:`outline`,size:`sm`,onClick:()=>j(`/settings/storage`),children:`Go to Storage`})})]}):null,(0,D.jsx)(`p`,{className:r.bodyMuted,children:`This removes the Tarsk database and any logs on this machine and cannot be undone.`}),(0,D.jsxs)(p,{variant:`destructive`,onClick:()=>y(!0),children:[(0,D.jsx)(a,{className:`h-4 w-4`}),`Delete Account`]})]})})]}),(0,D.jsx)(w,{open:_,onOpenChange:e=>{!e&&!C&&y(!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};
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Di as t,Oi as n,Rr as r,Sn as i,b as a,i as o,ki as s,ln as c,pt as l,y as u}from"./interactive-BrHVRHmQ.js";import{Wt as d}from"./react-vendor-CVjuv5OI.js";import{Do as f,Hn as p,Kr as m,Rr as h,mt as g,nt as _,rt as v,vn as y,wa as b}from"./onboarding-CQV3cOCc.js";import{r as x}from"./store-fffs6-y9.js";import{t as S}from"./use-toast-hxHsVv6a.js";import{t as C}from"./skeleton-CJSNEi3C.js";import{t as w}from"./delete-confirm-dialog-V9X76h-2.js";var T=n(),E=e(s(),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),[n,s]=(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(){s(!0);try{t(await p())}catch(e){S({title:`Error`,description:e instanceof Error?e.message:`Failed to load account info`,variant:`destructive`})}finally{s(!1)}}function F(){h(`https://buy.stripe.com/14AcN6feK0Jjbheb2H3Nm03?client_reference_id=${e?.clientReferenceId??``}`)}function I(){h(`https://buy.stripe.com/9B67sMd6CgIh70Y0o33Nm04?client_reference_id=${e?.clientReferenceId??``}`)}async function L(){T(!0);try{if(await y(),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=n&&e===null,B=e===null?n:!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:o(r.label,`flex items-center gap-2 text-muted-foreground`),children:[(0,D.jsx)(l,{className:`h-4 w-4`}),`Balance`]}),(0,D.jsx)(`div`,{className:`flex items-end gap-2`,children:R?(0,D.jsx)(`span`,{className:r.stat,children:`Unlimited`}):(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(`span`,{className:r.stat,children:e?.promptsRemaining.toLocaleString()??0}),(0,D.jsx)(`span`,{className:`${r.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:o(r.label,`flex items-center gap-2 text-muted-foreground`),children:[(0,D.jsx)(c,{className:`h-4 w-4`}),`Current Plan`]}),(0,D.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,D.jsx)(`span`,{className:r.label,children:R?`Unlimited Pro`:`Pay as you go`}),R&&(0,D.jsx)(`span`,{className:o(r.compact,`rounded-full bg-primary/10 px-2 py-0.5 font-medium text-primary`),children:`Active`})]}),(0,D.jsx)(`p`,{className:r.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:r.label,children:`1,000 Prompts`}),(0,D.jsx)(`p`,{className:r.bodyMuted,children:`Top up your balance with 1,000 additional prompts for $5.`})]}),(0,D.jsx)(f,{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)(c,{className:`h-4 w-4 text-primary`}),(0,D.jsx)(`span`,{className:r.label,children:`Unlimited Pro Plan`})]}),(0,D.jsx)(`p`,{className:r.bodyMuted,children:`Unlimited prompts for $100 and lifetime access to Tarsk.`}),(0,D.jsxs)(`ul`,{className:o(r.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)(f,{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)(u,{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)(f,{variant:`outline`,size:`sm`,onClick:()=>j(`/settings/storage`),children:`Go to Storage`})})]}):null,(0,D.jsx)(`p`,{className:r.bodyMuted,children:`This removes the Tarsk database and any logs on this machine and cannot be undone.`}),(0,D.jsxs)(f,{variant:`destructive`,onClick:()=>v(!0),children:[(0,D.jsx)(a,{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};
@@ -1 +1 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Di as t,Oi as n,Rr as r,i,ki as a}from"./interactive-BrHVRHmQ.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-7n7LyU5o.js";import{Do as m,U as h}from"./onboarding-KBcwP-kU.js";var g=n(),_=e(a(),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 n=(0,g.c)(9),a,o;n[0]===e?(a=n[1],o=n[2]):({className:a,...o}=e,n[0]=e,n[1]=a,n[2]=o);let s;n[3]===a?s=n[4]:(s=i(r.dialogTitle,a),n[3]=a,n[4]=s);let c;return n[5]!==o||n[6]!==t||n[7]!==s?(c=(0,v.jsx)(p,{ref:t,className:s,...o}),n[5]=o,n[6]=t,n[7]=s,n[8]=c):c=n[8],c});T.displayName=p.displayName;var E=_.forwardRef((e,t)=>{let n=(0,g.c)(9),a,o;n[0]===e?(a=n[1],o=n[2]):({className:a,...o}=e,n[0]=e,n[1]=a,n[2]=o);let s;n[3]===a?s=n[4]:(s=i(r.dialogDescription,a),n[3]=a,n[4]=s);let c;return n[5]!==o||n[6]!==t||n[7]!==s?(c=(0,v.jsx)(d,{ref:t,className:s,...o}),n[5]=o,n[6]=t,n[7]=s,n[8]=c):c=n[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};
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Di as t,Oi as n,Rr as r,i,ki as a}from"./interactive-BrHVRHmQ.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-CVjuv5OI.js";import{Oo as m,U as h}from"./onboarding-CQV3cOCc.js";var g=n(),_=e(a(),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 n=(0,g.c)(9),a,o;n[0]===e?(a=n[1],o=n[2]):({className:a,...o}=e,n[0]=e,n[1]=a,n[2]=o);let s;n[3]===a?s=n[4]:(s=i(r.dialogTitle,a),n[3]=a,n[4]=s);let c;return n[5]!==o||n[6]!==t||n[7]!==s?(c=(0,v.jsx)(p,{ref:t,className:s,...o}),n[5]=o,n[6]=t,n[7]=s,n[8]=c):c=n[8],c});T.displayName=p.displayName;var E=_.forwardRef((e,t)=>{let n=(0,g.c)(9),a,o;n[0]===e?(a=n[1],o=n[2]):({className:a,...o}=e,n[0]=e,n[1]=a,n[2]=o);let s;n[3]===a?s=n[4]:(s=i(r.dialogDescription,a),n[3]=a,n[4]=s);let c;return n[5]!==o||n[6]!==t||n[7]!==s?(c=(0,v.jsx)(d,{ref:t,className:s,...o}),n[5]=o,n[6]=t,n[7]=s,n[8]=c):c=n[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};
@@ -1 +1 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Di as t,Rr as n,ki as r,tr as i}from"./interactive-BrHVRHmQ.js";import{Eo as a}from"./onboarding-KBcwP-kU.js";import{i as o,n as s,r as c,t as l}from"./card-BDQUHsPD.js";var u=e(r(),1),d=t(),f=i(`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};
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Di as t,Rr as n,ki as r,tr as i}from"./interactive-BrHVRHmQ.js";import{Do as a}from"./onboarding-CQV3cOCc.js";import{i as o,n as s,r as c,t as l}from"./card-BDQUHsPD.js";var u=e(r(),1),d=t(),f=i(`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};
@@ -1,4 +1,4 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{A as t,An as n,Di as r,Oi as i,Rr as a,U as o,i as s,in as c,ki as l,kn as u,lt as d,st as f,tr as p,v as m,w as h}from"./interactive-BrHVRHmQ.js";import{Ca as g,Ct as _,Eo as v,G as y,Lr as b,St as x,Tt as S,W as C,qr as w,wt as T,x as E}from"./onboarding-KBcwP-kU.js";import{J as D,n as O,r as k}from"./store-B_cK-gsT.js";import{t as A}from"./use-toast-hxHsVv6a.js";import{Dt as j,P as M,S as N,W as P,_ as F,_t as I,b as L,d as R,f as z,g as B,gt as V,v as H,x as ee,y as U,z as W}from"./index-CJCQ4bTo.js";import{t as G}from"./use-active-dock-panel-instance-B9ao_JH2.js";var K=e(l(),1),q=i();async function J(e){let{projectId:t,oldText:n,newText:r,selection:i,replaceUnique:a=w}=e;if(n===r)return{kind:`unchanged`};try{let e=await a(t,n,r);if(e.applied&&e.path)return{kind:`replaced`,path:e.path}}catch{}return{kind:`prompt`,prompt:H(i,n,r)}}var Y=r();function X(e){let t=(0,q.c)(43),{onCommit:n,onCancelPreview:r}=e,i=O(),a=k(Z),o=k(ne),s=k(te),c;t[0]===a?c=t[1]:(c=e=>a?e.projectModelSelections[a]:void 0,t[0]=a,t[1]=c);let l=k(c),{selectedBrowserElement:u,setSelectedBrowserElement:d,setIsEditModeEnabled:f,setBrowserAgentProcessingThreadId:p}=M(),{handleSend:m}=I(),{paneId:h,conversationId:g}=V(),[_,y]=(0,K.useState)(!1),b;if(t[2]!==s||t[3]!==o){let e;t[5]===o?e=t[6]:(e=e=>e.projectId===o,t[5]=o,t[6]=e),b=s.find(e),t[2]=s,t[3]=o,t[4]=b}else b=t[4];let x=b,S;t[7]===u?S=t[8]:(S=L(u),t[7]=u,t[8]=S);let C=S,w;t[9]!==f||t[10]!==d?(w=()=>{y(!1),f(!1),d(null)},t[9]=f,t[10]=d,t[11]=w):w=t[11];let T=w,E;t[12]!==g||t[13]!==i||t[14]!==T||t[15]!==m||t[16]!==h||t[17]!==x?.lastSelectedModel||t[18]!==x?.lastSelectedModelProvider||t[19]!==o||t[20]!==a||t[21]!==p||t[22]!==l?.id||t[23]!==l?.provider?(E=async e=>{if(!o){A({title:`No project selected`,description:`Open a project to apply text edits.`,variant:`destructive`}),T();return}y(!0);let t=await J({projectId:o,oldText:e.originalText,newText:e.currentText,selection:e.selection});if(t.kind===`unchanged`){T();return}if(t.kind===`replaced`){A({title:`Text updated`,description:`Replaced in ${t.path}`}),T();return}let n=l?.id??x?.lastSelectedModel,r=l?.provider??x?.lastSelectedModelProvider;if(!a||!n){A({title:`Could not apply text change`,description:`Select a chat thread and model to send this change as a prompt.`,variant:`destructive`}),y(!1);return}m(h,g,t.prompt,n,[],r),i({type:D.SetChatInputDraft,threadId:h===`primary`?a:`${a}:${h}`,draft:``}),p(a),T()},t[12]=g,t[13]=i,t[14]=T,t[15]=m,t[16]=h,t[17]=x?.lastSelectedModel,t[18]=x?.lastSelectedModelProvider,t[19]=o,t[20]=a,t[21]=p,t[22]=l?.id,t[23]=l?.provider,t[24]=E):E=t[24],x?.lastSelectedModel,x?.lastSelectedModelProvider,l?.id,l?.provider;let j=E,N,P;t[25]===C?(N=t[26],P=t[27]):(N=()=>{C||y(!1)},P=[C],t[25]=C,t[26]=N,t[27]=P),(0,K.useEffect)(N,P);let F,R;t[28]===j?(F=t[29],R=t[30]):(F=()=>{let e=function(e){let t=e.detail;U(t)&&j(t)},t=function(e){let t=ee(e.data);t&&j(t)};return window.addEventListener(B,e),window.addEventListener(`message`,t),function(){window.removeEventListener(B,e),window.removeEventListener(`message`,t)}},R=[j],t[28]=j,t[29]=F,t[30]=R),(0,K.useEffect)(F,R);let z;t[31]!==T||t[32]!==r?(z=function(){r(),T()},t[31]=T,t[32]=r,t[33]=z):z=t[33];let H=z;if(!C)return null;let W;t[34]!==_||t[35]!==n?(W=(0,Y.jsx)(v,{type:`button`,size:`sm`,onClick:n,disabled:_,children:`Apply Changes`}),t[34]=_,t[35]=n,t[36]=W):W=t[36];let G;t[37]!==H||t[38]!==_?(G=(0,Y.jsx)(v,{type:`button`,size:`sm`,variant:`outline`,onClick:H,disabled:_,children:`Cancel`}),t[37]=H,t[38]=_,t[39]=G):G=t[39];let X;return t[40]!==W||t[41]!==G?(X=(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center justify-center gap-2 border-b border-border px-3 py-2`,children:[W,G]}),t[40]=W,t[41]=G,t[42]=X):X=t[42],X}function te(e){return e.projects}function ne(e){return e.selectedProjectId}function Z(e){return e.selectedThreadId}function Q(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 re(e){let t=Q(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 ie(e){return re(e)}function ae(e){return!e?.trim()}function oe(e,t){return ae(t)?e:t.trim()}var se=p(`app.browser-tab.ui`);function ce(e){let t=e.trim();return t?(!t.startsWith(`http://`)&&!t.startsWith(`https://`)&&(t=`http://${t}`),t):``}function le(e){return e?e.querySelector(`electrobun-webview`):null}function ue(e){e.webviewId!=null&&(e.toggleHidden(!0),e.togglePassthrough(!0))}function de(e){e.webviewId!=null&&(e.toggleHidden(!1),e.togglePassthrough(!1),e.syncDimensions(!0))}function fe(e,t){if(t){de(e);return}ue(e)}var pe=new Set([`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`,`PageUp`,`PageDown`,`Home`,`End`]);function me(e){if(!(e instanceof HTMLElement))return!1;let t=e.tagName;if(t===`INPUT`||t===`TEXTAREA`||t===`SELECT`||e.isContentEditable)return!0;let n=e.getAttribute(`role`);return n===`combobox`||n===`listbox`||n===`menu`||n===`menubar`||n===`menuitem`||n===`option`||n===`radiogroup`||n===`tablist`||n===`tab`||n===`grid`||n===`slider`||n===`spinbutton`}function he(e){return e!=null&&e.getClientRects().length>0}function ge(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),fe(e,n())}}return i=requestAnimationFrame(a),function(){r=!0,cancelAnimationFrame(i)}}function _e(e,t=!1,n=`select`){return`(function () {
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{A as t,An as n,Di as r,Oi as i,Rr as a,U as o,i as s,in as c,ki as l,kn as u,lt as d,st as f,tr as p,v as m,w as h}from"./interactive-BrHVRHmQ.js";import{Ct as g,Do as _,G as v,Jr as y,Rr as b,St as x,Tt as S,W as C,wa as w,wt as T,x as E}from"./onboarding-CQV3cOCc.js";import{J as D,n as O,r as k}from"./store-fffs6-y9.js";import{t as A}from"./use-toast-hxHsVv6a.js";import{Ft as j,P as M,S as N,W as P,_ as F,b as I,d as L,f as R,g as z,gt as B,ht as V,v as H,x as ee,y as U,z as W}from"./index-BH6Ht-w_.js";import{t as G}from"./use-active-dock-panel-instance-BAHb-cSH.js";var K=e(l(),1),q=i();async function J(e){let{projectId:t,oldText:n,newText:r,selection:i,replaceUnique:a=y}=e;if(n===r)return{kind:`unchanged`};try{let e=await a(t,n,r);if(e.applied&&e.path)return{kind:`replaced`,path:e.path}}catch{}return{kind:`prompt`,prompt:H(i,n,r)}}var Y=r();function X(e){let t=(0,q.c)(43),{onCommit:n,onCancelPreview:r}=e,i=O(),a=k(Z),o=k(ne),s=k(te),c;t[0]===a?c=t[1]:(c=e=>a?e.projectModelSelections[a]:void 0,t[0]=a,t[1]=c);let l=k(c),{selectedBrowserElement:u,setSelectedBrowserElement:d,setIsEditModeEnabled:f,setBrowserAgentProcessingThreadId:p}=M(),{handleSend:m}=B(),{paneId:h,conversationId:g}=V(),[v,y]=(0,K.useState)(!1),b;if(t[2]!==s||t[3]!==o){let e;t[5]===o?e=t[6]:(e=e=>e.projectId===o,t[5]=o,t[6]=e),b=s.find(e),t[2]=s,t[3]=o,t[4]=b}else b=t[4];let x=b,S;t[7]===u?S=t[8]:(S=I(u),t[7]=u,t[8]=S);let C=S,w;t[9]!==f||t[10]!==d?(w=()=>{y(!1),f(!1),d(null)},t[9]=f,t[10]=d,t[11]=w):w=t[11];let T=w,E;t[12]!==g||t[13]!==i||t[14]!==T||t[15]!==m||t[16]!==h||t[17]!==x?.lastSelectedModel||t[18]!==x?.lastSelectedModelProvider||t[19]!==o||t[20]!==a||t[21]!==p||t[22]!==l?.id||t[23]!==l?.provider?(E=async e=>{if(!o){A({title:`No project selected`,description:`Open a project to apply text edits.`,variant:`destructive`}),T();return}y(!0);let t=await J({projectId:o,oldText:e.originalText,newText:e.currentText,selection:e.selection});if(t.kind===`unchanged`){T();return}if(t.kind===`replaced`){A({title:`Text updated`,description:`Replaced in ${t.path}`}),T();return}let n=l?.id??x?.lastSelectedModel,r=l?.provider??x?.lastSelectedModelProvider;if(!a||!n){A({title:`Could not apply text change`,description:`Select a chat thread and model to send this change as a prompt.`,variant:`destructive`}),y(!1);return}m(h,g,t.prompt,n,[],r),i({type:D.SetChatInputDraft,threadId:h===`primary`?a:`${a}:${h}`,draft:``}),p(a),T()},t[12]=g,t[13]=i,t[14]=T,t[15]=m,t[16]=h,t[17]=x?.lastSelectedModel,t[18]=x?.lastSelectedModelProvider,t[19]=o,t[20]=a,t[21]=p,t[22]=l?.id,t[23]=l?.provider,t[24]=E):E=t[24],x?.lastSelectedModel,x?.lastSelectedModelProvider,l?.id,l?.provider;let j=E,N,P;t[25]===C?(N=t[26],P=t[27]):(N=()=>{C||y(!1)},P=[C],t[25]=C,t[26]=N,t[27]=P),(0,K.useEffect)(N,P);let F,L;t[28]===j?(F=t[29],L=t[30]):(F=()=>{let e=function(e){let t=e.detail;U(t)&&j(t)},t=function(e){let t=ee(e.data);t&&j(t)};return window.addEventListener(z,e),window.addEventListener(`message`,t),function(){window.removeEventListener(z,e),window.removeEventListener(`message`,t)}},L=[j],t[28]=j,t[29]=F,t[30]=L),(0,K.useEffect)(F,L);let R;t[31]!==T||t[32]!==r?(R=function(){r(),T()},t[31]=T,t[32]=r,t[33]=R):R=t[33];let H=R;if(!C)return null;let W;t[34]!==v||t[35]!==n?(W=(0,Y.jsx)(_,{type:`button`,size:`sm`,onClick:n,disabled:v,children:`Apply Changes`}),t[34]=v,t[35]=n,t[36]=W):W=t[36];let G;t[37]!==H||t[38]!==v?(G=(0,Y.jsx)(_,{type:`button`,size:`sm`,variant:`outline`,onClick:H,disabled:v,children:`Cancel`}),t[37]=H,t[38]=v,t[39]=G):G=t[39];let X;return t[40]!==W||t[41]!==G?(X=(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center justify-center gap-2 border-b border-border px-3 py-2`,children:[W,G]}),t[40]=W,t[41]=G,t[42]=X):X=t[42],X}function te(e){return e.projects}function ne(e){return e.selectedProjectId}function Z(e){return e.selectedThreadId}function Q(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 re(e){let t=Q(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 ie(e){return re(e)}function ae(e){return!e?.trim()}function oe(e,t){return ae(t)?e:t.trim()}var se=p(`app.browser-tab.ui`);function ce(e){let t=e.trim();return t?(!t.startsWith(`http://`)&&!t.startsWith(`https://`)&&(t=`http://${t}`),t):``}function le(e){return e?e.querySelector(`electrobun-webview`):null}function ue(e){e.webviewId!=null&&(e.toggleHidden(!0),e.togglePassthrough(!0))}function de(e){e.webviewId!=null&&(e.toggleHidden(!1),e.togglePassthrough(!1),e.syncDimensions(!0))}function fe(e,t){if(t){de(e);return}ue(e)}var pe=new Set([`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`,`PageUp`,`PageDown`,`Home`,`End`]);function me(e){if(!(e instanceof HTMLElement))return!1;let t=e.tagName;if(t===`INPUT`||t===`TEXTAREA`||t===`SELECT`||e.isContentEditable)return!0;let n=e.getAttribute(`role`);return n===`combobox`||n===`listbox`||n===`menu`||n===`menubar`||n===`menuitem`||n===`option`||n===`radiogroup`||n===`tablist`||n===`tab`||n===`grid`||n===`slider`||n===`spinbutton`}function he(e){return e!=null&&e.getClientRects().length>0}function ge(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),fe(e,n())}}return i=requestAnimationFrame(a),function(){r=!0,cancelAnimationFrame(i)}}function _e(e,t=!1,n=`select`){return`(function () {
2
2
  const api = window.__tarskBrowserPreview;
3
3
  if (!api || typeof api.setSelectMode !== "function") {
4
4
  log.error("[browser-preview] selection API is not available");
@@ -9,4 +9,4 @@ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{A as t,An as n,Di as r
9
9
  const api = window.__tarskBrowserPreview;
10
10
  if (!api || typeof api.${t} !== "function") return;
11
11
  api.${t}();
12
- })();`}function ye(e,t,n=!1,r=`select`){if(typeof e.executeJavascript!=`function`)throw Error(`Browser preview webview JS execution is not available`);try{e.executeJavascript(_e(t,n,r))}catch(i){throw se.error(`[browser-preview] Failed to toggle native preview selection mode`,{enabled:t,preserveSelection:n,interaction:r,src:e.src,webview_id:e.webviewId,error:i instanceof Error?i.message:String(i),stack:i instanceof Error?i.stack:void 0}),i}}function be(e,t){if(typeof e.executeJavascript!=`function`)throw Error(`Browser preview webview JS execution is not available`);e.executeJavascript(t)}function xe(e,t,n=!1,r=`select`){let i=e.contentWindow;if(!i)throw Error(`Browser preview frame is not ready`);let a=i.__tarskBrowserPreview;if(!a?.setSelectMode)throw Error(`Browser preview selection API is not available in iframe preview`);a.setSelectMode(t,n,r)}function Se(e,t){let n=e.contentWindow?.__tarskBrowserPreview;if(t===`commit`){n?.commitTextEdit?.();return}n?.cancelTextEdit?.()}function $(e){let t=(0,q.c)(16),{onClick:n,label:r,children:i,isActive:a,disabled:o,activeStyle:c}=e,l=a===void 0?!1:a,u=o===void 0?!1:o,d=c===void 0?`elevated`:c,f=u&&`cursor-not-allowed text-muted-foreground/50`,p=!u&&!l&&`text-muted-foreground hover:bg-background/50 hover:text-foreground`,m=!u&&l&&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)]`,h=!u&&l&&d===`elevated`&&`bg-background text-foreground shadow-sm`,g;t[0]!==f||t[1]!==p||t[2]!==m||t[3]!==h?(g=s(`rounded p-1.5 transition-all`,f,p,m,h),t[0]=f,t[1]=p,t[2]=m,t[3]=h,t[4]=g):g=t[4];let v;t[5]!==i||t[6]!==u||t[7]!==l||t[8]!==n||t[9]!==g?(v=(0,Y.jsx)(S,{asChild:!0,children:(0,Y.jsx)(`button`,{type:`button`,onClick:n,disabled:u,"aria-pressed":l,className:g,children:i})}),t[5]=i,t[6]=u,t[7]=l,t[8]=n,t[9]=g,t[10]=v):v=t[10];let y;t[11]===r?y=t[12]:(y=(0,Y.jsx)(_,{children:r}),t[11]=r,t[12]=y);let b;return t[13]!==y||t[14]!==v?(b=(0,Y.jsxs)(x,{children:[v,y]}),t[13]=y,t[14]=v,t[15]=b):b=t[15],b}function Ce(e){return typeof e==`string`?e:typeof e==`object`&&e&&`url`in e?String(e.url):``}function we(e,t,n){let[r,i]=(0,K.useState)(!0),a=(0,K.useSyncExternalStore)(z,R),o=(0,K.useSyncExternalStore)(y,C),s=t&&(r&&!o||a),c=(0,K.useRef)(s);c.current=s;let l=(0,K.useCallback)(function(){return c.current},[]),u=(0,K.useCallback)(function(){i(he(e.current))},[]);return(0,K.useLayoutEffect)(u),(0,K.useEffect)(()=>{let t=e.current;if(!t)return;let n=new ResizeObserver(u);return n.observe(t),function(){n.disconnect()}},[u,n]),{shouldShowWebview:s,readWebviewVisibility:l}}function Te(e){let t=(0,q.c)(8),{useNativeWebview:n,shouldRenderNativeWebview:r,currentUrl:i,resolveWebview:a}=e,[o,s]=(0,K.useState)(r),c;t[0]!==a||t[1]!==r||t[2]!==n?(c=()=>{if(!n)return;if(r){s(!0);return}let e=a();e&&ue(e);let t=requestAnimationFrame(()=>{s(!1)});return function(){cancelAnimationFrame(t)}},t[0]=a,t[1]=r,t[2]=n,t[3]=c):c=t[3];let l;return t[4]!==i||t[5]!==r||t[6]!==n?(l=[r,n,i],t[4]=i,t[5]=r,t[6]=n,t[7]=l):l=t[7],(0,K.useLayoutEffect)(c,l),o}function Ee({devServerUrl:e,devServerStopped:t,isBrowserActive:n,currentUrl:r,browserResetTrigger:i,webviewRef:a,iframeRef:o,setCurrentUrl:s,setPendingUrl:c,setInputUrl:l,setSelectionModeError:u,setIsSelectModeEnabled:d,setIsEditModeEnabled:f,setSelectedBrowserElement:p,setIsSelectionPromptOpen:m,setBrowserAgentProcessingThreadId:h,setBrowserPageTitle:g}){let _=(0,K.useRef)(r),v=(0,K.useRef)(null);_.current=r,(0,K.useEffect)(()=>{s(``),c(``),l(``),u(null),g(null),d(!1),f(!1),p(null),m(!1),h(null);let e=a.current;e&&(e.src=``),o.current&&(o.current.src=``)},[i,h,g,d,f,m,p]),(0,K.useEffect)(()=>{if(t&&!e){s(``),c(``),l(``),u(null),n&&(d(!1),f(!1),p(null),m(!1),h(null));let e=a.current;e&&(e.src=``),o.current&&(o.current.src=``);return}if(!e)return;let r=ce(e);l(r),(!_.current||_.current===v.current)&&(s(r),c(r),v.current=r),u(null),n&&(d(!1),f(!1),p(null),m(!1),h(null))},[e,t,n,h,d,f,m,p])}function De(e,t,n,r){let i=(0,q.c)(9),a;i[0]!==n||i[1]!==e||i[2]!==r||i[3]!==t?(a=()=>{if(!e||!t)return;let i=function(e){pe.has(e.key)&&(me(e.target)||r.current?.contains(e.target)||(e.preventDefault(),n()))};return document.addEventListener(`keydown`,i,!0),function(){document.removeEventListener(`keydown`,i,!0)}},i[0]=n,i[1]=e,i[2]=r,i[3]=t,i[4]=a):a=i[4];let o;i[5]!==n||i[6]!==e||i[7]!==t?(o=[e,t,n],i[5]=n,i[6]=e,i[7]=t,i[8]=o):o=i[8],(0,K.useEffect)(a,o)}function Oe(e){let t=(0,q.c)(15),{useNativeWebview:n,nativeWebviewMounted:r,currentUrl:i,resolveWebview:a,setCurrentUrl:o,setPendingUrl:s,setInputUrl:c,setSelectionModeError:l,setBrowserPageTitle:u}=e,d;t[0]!==i||t[1]!==r||t[2]!==a||t[3]!==u||t[4]!==o||t[5]!==c||t[6]!==s||t[7]!==l||t[8]!==n?(d=()=>{let e=a();if(!n||!e||!r)return;let t=function(e){let t=typeof e.detail==`string`?e.detail:i;t&&(o(t),s(``),c(t))},d=function(e){let t=typeof e.detail==`string`?e.detail:i;t&&(o(t),c(t))},f=function(e){let t=Ce(e.detail);t&&b(t)},p=function(e){let t=ie(e.detail);if(t!=null){u(e=>oe(e,t));return}let n=N(e.detail);n&&(l(null),F(n))};return e.on(`did-navigate`,t),e.on(`did-navigate-in-page`,d),e.on(`new-window-open`,f),e.on(`host-message`,p),function(){e.off(`did-navigate`,t),e.off(`did-navigate-in-page`,d),e.off(`new-window-open`,f),e.off(`host-message`,p)}},t[0]=i,t[1]=r,t[2]=a,t[3]=u,t[4]=o,t[5]=c,t[6]=s,t[7]=l,t[8]=n,t[9]=d):d=t[9];let f;t[10]!==i||t[11]!==r||t[12]!==u||t[13]!==n?(f=[i,n,r,u],t[10]=i,t[11]=r,t[12]=u,t[13]=n,t[14]=f):f=t[14],(0,K.useEffect)(d,f)}function ke(e){let t=(0,q.c)(23),{useNativeWebview:n,nativeWebviewMounted:r,currentUrl:i,deviceMode:a,shouldShowWebview:o,pendingUrl:s,readWebviewVisibility:c,resolveWebview:l}=e,u;t[0]!==r||t[1]!==l||t[2]!==o||t[3]!==n?(u=()=>{if(!n||!r)return;let e=l();!e||e.webviewId==null||fe(e,o)},t[0]=r,t[1]=l,t[2]=o,t[3]=n,t[4]=u):u=t[4];let d;t[5]!==i||t[6]!==a||t[7]!==r||t[8]!==o||t[9]!==n?(d=[r,n,i,a,o],t[5]=i,t[6]=a,t[7]=r,t[8]=o,t[9]=n,t[10]=d):d=t[10],(0,K.useLayoutEffect)(u,d);let f;t[11]!==r||t[12]!==s||t[13]!==c||t[14]!==l||t[15]!==n?(f=()=>{let e=l();if(!(!n||!e||!s||!r))return ge(e,s,c)},t[11]=r,t[12]=s,t[13]=c,t[14]=l,t[15]=n,t[16]=f):f=t[16];let p;t[17]!==i||t[18]!==r||t[19]!==s||t[20]!==c||t[21]!==n?(p=[s,n,i,r,c],t[17]=i,t[18]=r,t[19]=s,t[20]=c,t[21]=n,t[22]=p):p=t[22],(0,K.useEffect)(f,p)}function Ae({isBrowserActive:e,currentUrl:t,isSelectModeEnabled:n,isEditModeEnabled:r,isSelectionPromptOpen:i,nativeWebviewMounted:a,useNativeWebview:o,resolveWebview:s,iframeRef:c,setIsSelectModeEnabled:l,setIsEditModeEnabled:u,setSelectionModeError:d}){(0,K.useEffect)(()=>{if(!e)return;if(!t){n&&l(!1),r&&u(!1);return}let f=!1,p=n||r,m=r?`edit`:`select`,h=!p&&i;function g(){try{if(o){let e=s();if(!e||e.webviewId==null||!a)return;ye(e,p,h,m);return}let e=c.current;if(!e)return;xe(e,p,h,m)}catch(e){if(f||!p)return;let t=e instanceof Error?e.message:`Could not enable element selection.`;se.error(`Failed to toggle browser selection mode:`,e),d(t),l(!1),u(!1),A({title:`Selection mode unavailable`,description:t,variant:`destructive`})}}return g(),function(){f=!0}},[t,e,r,n,i,a,u,l,o])}function je(e,t){let n=(0,q.c)(8),r,i;n[0]!==e||n[1]!==t?(r=()=>{if(!e)return;let n=function(e){let n=re(e.data);n!=null&&t(e=>oe(e,n))};return window.addEventListener(`message`,n),function(){window.removeEventListener(`message`,n)}},i=[e,t],n[0]=e,n[1]=t,n[2]=r,n[3]=i):(r=n[2],i=n[3]),(0,K.useEffect)(r,i);let a,o;n[4]!==e||n[5]!==t?(a=()=>{if(e)return function(){t(null)}},o=[e,t],n[4]=e,n[5]=t,n[6]=a,n[7]=o):(a=n[6],o=n[7]),(0,K.useEffect)(a,o)}function Me({instanceId:e}){let t=G(e,`browser`),{devServerUrl:n,devServerStopped:r}=P(),{browserResetTrigger:i,setBrowserPageTitle:a,browserDeviceMode:o,setBrowserDeviceMode:s,isSelectModeEnabled:c,setIsSelectModeEnabled:l,isEditModeEnabled:u,setIsEditModeEnabled:d,selectedBrowserElement:f,setSelectedBrowserElement:p,setIsSelectionPromptOpen:m,isSelectionPromptOpen:h,setBrowserAgentProcessingThreadId:_}=M(),v=k(e=>e.selectedProjectId),y=k(e=>e.projects).find(e=>e.projectId===v),[x,S]=(0,K.useState)(``),[C,w]=(0,K.useState)(``),[E,D]=(0,K.useState)(``),[O,A]=(0,K.useState)(o),[N,F]=(0,K.useState)(null),I=(0,K.useRef)(null),R=(0,K.useRef)(E),z=(0,K.useRef)(null),B=(0,K.useRef)(null),V=g(),H=j(),ee=V&&!!C;R.current=E;function U(){return I.current??le(B.current)}let{shouldShowWebview:W,readWebviewVisibility:q}=we(B,t,C),J=Te({useNativeWebview:V,shouldRenderNativeWebview:ee,currentUrl:C,resolveWebview:U});Ee({devServerUrl:n,devServerStopped:r,isBrowserActive:t,currentUrl:C,browserResetTrigger:i,webviewRef:I,iframeRef:z,setCurrentUrl:w,setPendingUrl:D,setInputUrl:S,setSelectionModeError:F,setIsSelectModeEnabled:l,setIsEditModeEnabled:d,setSelectedBrowserElement:p,setIsSelectionPromptOpen:m,setBrowserAgentProcessingThreadId:_,setBrowserPageTitle:a}),De(t,V,(0,K.useCallback)(function(){V?U()?.focus():z.current?.contentWindow?.focus()},[V]),B),Oe({useNativeWebview:V,nativeWebviewMounted:J,currentUrl:C,resolveWebview:U,setCurrentUrl:w,setPendingUrl:D,setInputUrl:S,setSelectionModeError:F,setBrowserPageTitle:a}),je(t,a),ke({useNativeWebview:V,nativeWebviewMounted:J,currentUrl:C,deviceMode:O,shouldShowWebview:W,pendingUrl:E,readWebviewVisibility:q,resolveWebview:U}),Ae({isBrowserActive:t,currentUrl:C,isSelectModeEnabled:c,isEditModeEnabled:u,isSelectionPromptOpen:h,nativeWebviewMounted:J,useNativeWebview:V,resolveWebview:U,iframeRef:z,setIsSelectModeEnabled:l,setIsEditModeEnabled:d,setSelectionModeError:F}),(0,K.useEffect)(()=>{A(o)},[o]);let te=(0,K.useCallback)(e=>{I.current=e,e&&ge(e,R.current,q)},[q]);function ne(e){A(e),s(e)}function Z(){F(null),l(!1),d(!1),p(null),m(!1)}function Q(e){try{if(V){let t=U();if(!t)return;be(t,ve(e));return}let t=z.current;if(!t)return;Se(t,e)}catch(e){se.error(`Failed to run preview text edit action:`,e)}}function re(e){let t=ce(e);t&&(S(t),w(t),D(t),Z())}function ie(e){e.key===`Enter`&&re(x)}function ae(){if(Z(),V){let e=U();e&&e.reload();return}let e=z.current;if(!e)return;let t=e.src;e.src=``,requestAnimationFrame(()=>{e.src=t})}function oe(){if(Z(),V){let e=U();e&&e.executeJavascript(`history.back()`);return}de(-1)}function ue(){if(Z(),V){let e=U();e&&e.executeJavascript(`history.forward()`);return}de(1)}function de(e){let t=z.current;if(!(!t||!t.contentWindow))try{e<0?t.contentWindow.history.back():t.contentWindow.history.forward()}catch{}}function fe(){F(null),d(!1),L(f)&&(Q(`cancel`),p(null)),l(e=>!e)}function pe(){if(F(null),l(!1),m(!1),L(f)){Q(`cancel`),p(null),d(!1);return}d(e=>!e)}let me=Ne[O],he=(0,Y.jsx)(Pe,{useNativeWebview:V,nativeWebviewMounted:J,currentUrl:C,previewRpcPreload:H,handleWebviewRef:te,iframeRef:z});return t?(0,Y.jsx)(T,{children:(0,Y.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col overflow-hidden`,children:[(0,Y.jsx)(Fe,{currentUrl:C,inputUrl:x,onInputUrlChange:S,onKeyDown:ie,onBack:oe,onForward:ue,onRefresh:ae,onToggleSelectMode:fe,onToggleEditMode:pe,onOpenExternal:()=>void b(C),onDeviceModeChange:ne,selectionModeError:N,isSelectModeEnabled:c,isEditModeEnabled:u||L(f),deviceMode:O}),C?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(X,{onCommit:()=>Q(`commit`),onCancelPreview:()=>Q(`cancel`)}),(0,Y.jsx)(Ie,{selectionModeError:N,isSelectModeEnabled:c||u,deviceMode:O,currentDeviceConfig:me,previewContainerRef:B,children:he})]}):(0,Y.jsx)(Le,{devServerStopped:r,selectedProjectId:v,runCommand:y?.runCommand})]})}):(0,Y.jsx)(Re,{previewContainerRef:B,children:he})}var Ne={desktop:{width:`100%`,height:`100%`},tablet:{width:`768px`,height:`1024px`},mobile:{width:`375px`,height:`667px`}};function Pe(e){let t=(0,q.c)(7),{useNativeWebview:n,nativeWebviewMounted:r,currentUrl:i,previewRpcPreload:a,handleWebviewRef:o,iframeRef:s}=e;if(n){if(!r)return null;let e;return t[0]!==i||t[1]!==o||t[2]!==a?(e=(0,K.createElement)(`electrobun-webview`,{ref:o,src:i,preload:a,renderer:`native`,className:`block h-full w-full bg-background`}),t[0]=i,t[1]=o,t[2]=a,t[3]=e):e=t[3],e}let c;return t[4]!==i||t[5]!==s?(c=(0,Y.jsx)(`iframe`,{ref:s,src:i,className:`h-full w-full border-none`,title:`Browser`,sandbox:`allow-same-origin allow-scripts allow-forms allow-popups allow-modals allow-downloads`}),t[4]=i,t[5]=s,t[6]=c):c=t[6],c}function Fe(e){let r=(0,q.c)(42),{currentUrl:i,inputUrl:a,onInputUrlChange:l,onKeyDown:p,onBack:g,onForward:_,onRefresh:v,onToggleSelectMode:y,onToggleEditMode:b,onOpenExternal:x,onDeviceModeChange:S,selectionModeError:C,isSelectModeEnabled:w,isEditModeEnabled:T,deviceMode:D}=e,O;r[0]!==i||r[1]!==g?(O=i&&(0,Y.jsx)($,{onClick:g,label:`Back`,children:(0,Y.jsx)(n,{size:15})}),r[0]=i,r[1]=g,r[2]=O):O=r[2];let k;r[3]!==i||r[4]!==_?(k=i&&(0,Y.jsx)($,{onClick:_,label:`Forward`,children:(0,Y.jsx)(u,{size:15})}),r[3]=i,r[4]=_,r[5]=k):k=r[5];let A;r[6]===l?A=r[7]:(A=e=>l(e.target.value),r[6]=l,r[7]=A);let j;r[8]===Symbol.for(`react.memo_cache_sentinel`)?(j=s(`flex-1 rounded-full bg-muted font-mono`),r[8]=j):j=r[8];let M;r[9]!==a||r[10]!==p||r[11]!==A?(M=(0,Y.jsx)(E,{type:`text`,value:a,onChange:A,onKeyDown:p,placeholder:`Enter URL...`,className:j,spellCheck:!1}),r[9]=a,r[10]=p,r[11]=A,r[12]=M):M=r[12];let N;r[13]!==i||r[14]!==v?(N=i&&(0,Y.jsx)($,{onClick:v,label:`Refresh page`,children:(0,Y.jsx)(o,{size:15})}),r[13]=i,r[14]=v,r[15]=N):N=r[15];let P;r[16]!==i||r[17]!==w||r[18]!==y||r[19]!==C?(P=i&&(0,Y.jsx)($,{onClick:y,label:C?`Select element unavailable: ${C}`:w?`Exit element selection`:`Select element from preview`,isActive:w,activeStyle:`depressed`,children:(0,Y.jsx)(f,{size:15})}),r[16]=i,r[17]=w,r[18]=y,r[19]=C,r[20]=P):P=r[20];let F;r[21]!==i||r[22]!==T||r[23]!==b||r[24]!==C?(F=i&&(0,Y.jsx)($,{onClick:b,label:C?`Edit text unavailable: ${C}`:T?`Exit text editing`:`Edit text from preview`,isActive:T,activeStyle:`depressed`,children:(0,Y.jsx)(m,{size:15})}),r[21]=i,r[22]=T,r[23]=b,r[24]=C,r[25]=F):F=r[25];let I;r[26]!==i||r[27]!==D||r[28]!==S?(I=i&&(0,Y.jsxs)(`div`,{className:`flex items-center rounded-md bg-muted p-0.5`,children:[(0,Y.jsx)($,{onClick:()=>S(`desktop`),label:`Desktop view`,isActive:D===`desktop`,children:(0,Y.jsx)(d,{size:15})}),(0,Y.jsx)($,{onClick:()=>S(`tablet`),label:`Tablet view`,isActive:D===`tablet`,children:(0,Y.jsx)(h,{size:15})}),(0,Y.jsx)($,{onClick:()=>S(`mobile`),label:`Mobile view`,isActive:D===`mobile`,children:(0,Y.jsx)(t,{size:15})})]}),r[26]=i,r[27]=D,r[28]=S,r[29]=I):I=r[29];let L;r[30]!==i||r[31]!==x?(L=i&&(0,Y.jsx)($,{onClick:x,label:`Open in external browser`,children:(0,Y.jsx)(c,{size:15})}),r[30]=i,r[31]=x,r[32]=L):L=r[32];let R;return r[33]!==O||r[34]!==L||r[35]!==k||r[36]!==M||r[37]!==N||r[38]!==P||r[39]!==F||r[40]!==I?(R=(0,Y.jsx)(`div`,{className:`relative shrink-0 border-b border-border`,children:(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2`,children:[O,k,M,N,P,F,I,L]})}),r[33]=O,r[34]=L,r[35]=k,r[36]=M,r[37]=N,r[38]=P,r[39]=F,r[40]=I,r[41]=R):R=r[41],R}function Ie(e){let t=(0,q.c)(18),{selectionModeError:n,isSelectModeEnabled:r,deviceMode:i,currentDeviceConfig:a,previewContainerRef:o,children:c}=e,l;t[0]===n?l=t[1]:(l=n&&(0,Y.jsxs)(`div`,{className:`border-b border-destructive/20 bg-destructive/5 px-3 py-2 text-sm text-destructive`,children:[`Element selection is unavailable: `,n]}),t[0]=n,t[1]=l);let u=r&&`cursor-crosshair`,d;t[2]===u?d=t[3]:(d=s(`flex min-h-0 flex-1 items-center justify-center bg-background`,u),t[2]=u,t[3]=d);let f=`overflow-hidden border border-border bg-background shadow-sm ${i===`desktop`?`h-full w-full rounded-none border-0 shadow-none`:`rounded-lg`}`,p;t[4]!==a.height||t[5]!==a.width?(p={width:a.width,height:a.height,maxWidth:`100%`,maxHeight:`100%`},t[4]=a.height,t[5]=a.width,t[6]=p):p=t[6];let m;t[7]!==c||t[8]!==f||t[9]!==p?(m=(0,Y.jsx)(`div`,{className:f,style:p,children:c}),t[7]=c,t[8]=f,t[9]=p,t[10]=m):m=t[10];let h;t[11]!==o||t[12]!==d||t[13]!==m?(h=(0,Y.jsx)(`div`,{ref:o,className:d,children:m}),t[11]=o,t[12]=d,t[13]=m,t[14]=h):h=t[14];let g;return t[15]!==l||t[16]!==h?(g=(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col bg-background`,children:[l,h]}),t[15]=l,t[16]=h,t[17]=g):g=t[17],g}function Le(e){let t=(0,q.c)(4),{devServerStopped:n,selectedProjectId:r,runCommand:i}=e,o;return t[0]!==n||t[1]!==i||t[2]!==r?(o=(0,Y.jsx)(`div`,{className:`flex flex-1 flex-col items-center justify-center gap-6 text-muted-foreground`,children:n?(0,Y.jsx)(`p`,{className:a.body,children:`Dev server stopped`}):r&&i?(0,Y.jsx)(W,{projectId:r,runCommand:i,large:!0}):(0,Y.jsx)(`p`,{className:a.body,children:`Enter a URL to browse`})}),t[0]=n,t[1]=i,t[2]=r,t[3]=o):o=t[3],o}function Re(e){let t=(0,q.c)(3),{previewContainerRef:n,children:r}=e,i;return t[0]!==r||t[1]!==n?(i=(0,Y.jsx)(`div`,{className:`hidden`,"aria-hidden":`true`,children:(0,Y.jsx)(`div`,{ref:n,children:r})}),t[0]=r,t[1]=n,t[2]=i):i=t[2],i}export{Me as BrowserTab};
12
+ })();`}function ye(e,t,n=!1,r=`select`){if(typeof e.executeJavascript!=`function`)throw Error(`Browser preview webview JS execution is not available`);try{e.executeJavascript(_e(t,n,r))}catch(i){throw se.error(`[browser-preview] Failed to toggle native preview selection mode`,{enabled:t,preserveSelection:n,interaction:r,src:e.src,webview_id:e.webviewId,error:i instanceof Error?i.message:String(i),stack:i instanceof Error?i.stack:void 0}),i}}function be(e,t){if(typeof e.executeJavascript!=`function`)throw Error(`Browser preview webview JS execution is not available`);e.executeJavascript(t)}function xe(e,t,n=!1,r=`select`){let i=e.contentWindow;if(!i)throw Error(`Browser preview frame is not ready`);let a=i.__tarskBrowserPreview;if(!a?.setSelectMode)throw Error(`Browser preview selection API is not available in iframe preview`);a.setSelectMode(t,n,r)}function Se(e,t){let n=e.contentWindow?.__tarskBrowserPreview;if(t===`commit`){n?.commitTextEdit?.();return}n?.cancelTextEdit?.()}function $(e){let t=(0,q.c)(16),{onClick:n,label:r,children:i,isActive:a,disabled:o,activeStyle:c}=e,l=a===void 0?!1:a,u=o===void 0?!1:o,d=c===void 0?`elevated`:c,f=u&&`cursor-not-allowed text-muted-foreground/50`,p=!u&&!l&&`text-muted-foreground hover:bg-background/50 hover:text-foreground`,m=!u&&l&&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)]`,h=!u&&l&&d===`elevated`&&`bg-background text-foreground shadow-sm`,_;t[0]!==f||t[1]!==p||t[2]!==m||t[3]!==h?(_=s(`rounded p-1.5 transition-all`,f,p,m,h),t[0]=f,t[1]=p,t[2]=m,t[3]=h,t[4]=_):_=t[4];let v;t[5]!==i||t[6]!==u||t[7]!==l||t[8]!==n||t[9]!==_?(v=(0,Y.jsx)(S,{asChild:!0,children:(0,Y.jsx)(`button`,{type:`button`,onClick:n,disabled:u,"aria-pressed":l,className:_,children:i})}),t[5]=i,t[6]=u,t[7]=l,t[8]=n,t[9]=_,t[10]=v):v=t[10];let y;t[11]===r?y=t[12]:(y=(0,Y.jsx)(g,{children:r}),t[11]=r,t[12]=y);let b;return t[13]!==y||t[14]!==v?(b=(0,Y.jsxs)(x,{children:[v,y]}),t[13]=y,t[14]=v,t[15]=b):b=t[15],b}function Ce(e){return typeof e==`string`?e:typeof e==`object`&&e&&`url`in e?String(e.url):``}function we(e,t,n){let[r,i]=(0,K.useState)(!0),a=(0,K.useSyncExternalStore)(R,L),o=(0,K.useSyncExternalStore)(v,C),s=t&&(r&&!o||a),c=(0,K.useRef)(s);c.current=s;let l=(0,K.useCallback)(function(){return c.current},[]),u=(0,K.useCallback)(function(){i(he(e.current))},[]);return(0,K.useLayoutEffect)(u),(0,K.useEffect)(()=>{let t=e.current;if(!t)return;let n=new ResizeObserver(u);return n.observe(t),function(){n.disconnect()}},[u,n]),{shouldShowWebview:s,readWebviewVisibility:l}}function Te(e){let t=(0,q.c)(8),{useNativeWebview:n,shouldRenderNativeWebview:r,currentUrl:i,resolveWebview:a}=e,[o,s]=(0,K.useState)(r),c;t[0]!==a||t[1]!==r||t[2]!==n?(c=()=>{if(!n)return;if(r){s(!0);return}let e=a();e&&ue(e);let t=requestAnimationFrame(()=>{s(!1)});return function(){cancelAnimationFrame(t)}},t[0]=a,t[1]=r,t[2]=n,t[3]=c):c=t[3];let l;return t[4]!==i||t[5]!==r||t[6]!==n?(l=[r,n,i],t[4]=i,t[5]=r,t[6]=n,t[7]=l):l=t[7],(0,K.useLayoutEffect)(c,l),o}function Ee({devServerUrl:e,devServerStopped:t,isBrowserActive:n,currentUrl:r,browserResetTrigger:i,webviewRef:a,iframeRef:o,setCurrentUrl:s,setPendingUrl:c,setInputUrl:l,setSelectionModeError:u,setIsSelectModeEnabled:d,setIsEditModeEnabled:f,setSelectedBrowserElement:p,setIsSelectionPromptOpen:m,setBrowserAgentProcessingThreadId:h,setBrowserPageTitle:g}){let _=(0,K.useRef)(r),v=(0,K.useRef)(null);_.current=r,(0,K.useEffect)(()=>{s(``),c(``),l(``),u(null),g(null),d(!1),f(!1),p(null),m(!1),h(null);let e=a.current;e&&(e.src=``),o.current&&(o.current.src=``)},[i,h,g,d,f,m,p]),(0,K.useEffect)(()=>{if(t&&!e){s(``),c(``),l(``),u(null),n&&(d(!1),f(!1),p(null),m(!1),h(null));let e=a.current;e&&(e.src=``),o.current&&(o.current.src=``);return}if(!e)return;let r=ce(e);l(r),(!_.current||_.current===v.current)&&(s(r),c(r),v.current=r),u(null),n&&(d(!1),f(!1),p(null),m(!1),h(null))},[e,t,n,h,d,f,m,p])}function De(e,t,n,r){let i=(0,q.c)(9),a;i[0]!==n||i[1]!==e||i[2]!==r||i[3]!==t?(a=()=>{if(!e||!t)return;let i=function(e){pe.has(e.key)&&(me(e.target)||r.current?.contains(e.target)||(e.preventDefault(),n()))};return document.addEventListener(`keydown`,i,!0),function(){document.removeEventListener(`keydown`,i,!0)}},i[0]=n,i[1]=e,i[2]=r,i[3]=t,i[4]=a):a=i[4];let o;i[5]!==n||i[6]!==e||i[7]!==t?(o=[e,t,n],i[5]=n,i[6]=e,i[7]=t,i[8]=o):o=i[8],(0,K.useEffect)(a,o)}function Oe(e){let t=(0,q.c)(15),{useNativeWebview:n,nativeWebviewMounted:r,currentUrl:i,resolveWebview:a,setCurrentUrl:o,setPendingUrl:s,setInputUrl:c,setSelectionModeError:l,setBrowserPageTitle:u}=e,d;t[0]!==i||t[1]!==r||t[2]!==a||t[3]!==u||t[4]!==o||t[5]!==c||t[6]!==s||t[7]!==l||t[8]!==n?(d=()=>{let e=a();if(!n||!e||!r)return;let t=function(e){let t=typeof e.detail==`string`?e.detail:i;t&&(o(t),s(``),c(t))},d=function(e){let t=typeof e.detail==`string`?e.detail:i;t&&(o(t),c(t))},f=function(e){let t=Ce(e.detail);t&&b(t)},p=function(e){let t=ie(e.detail);if(t!=null){u(e=>oe(e,t));return}let n=N(e.detail);n&&(l(null),F(n))};return e.on(`did-navigate`,t),e.on(`did-navigate-in-page`,d),e.on(`new-window-open`,f),e.on(`host-message`,p),function(){e.off(`did-navigate`,t),e.off(`did-navigate-in-page`,d),e.off(`new-window-open`,f),e.off(`host-message`,p)}},t[0]=i,t[1]=r,t[2]=a,t[3]=u,t[4]=o,t[5]=c,t[6]=s,t[7]=l,t[8]=n,t[9]=d):d=t[9];let f;t[10]!==i||t[11]!==r||t[12]!==u||t[13]!==n?(f=[i,n,r,u],t[10]=i,t[11]=r,t[12]=u,t[13]=n,t[14]=f):f=t[14],(0,K.useEffect)(d,f)}function ke(e){let t=(0,q.c)(23),{useNativeWebview:n,nativeWebviewMounted:r,currentUrl:i,deviceMode:a,shouldShowWebview:o,pendingUrl:s,readWebviewVisibility:c,resolveWebview:l}=e,u;t[0]!==r||t[1]!==l||t[2]!==o||t[3]!==n?(u=()=>{if(!n||!r)return;let e=l();!e||e.webviewId==null||fe(e,o)},t[0]=r,t[1]=l,t[2]=o,t[3]=n,t[4]=u):u=t[4];let d;t[5]!==i||t[6]!==a||t[7]!==r||t[8]!==o||t[9]!==n?(d=[r,n,i,a,o],t[5]=i,t[6]=a,t[7]=r,t[8]=o,t[9]=n,t[10]=d):d=t[10],(0,K.useLayoutEffect)(u,d);let f;t[11]!==r||t[12]!==s||t[13]!==c||t[14]!==l||t[15]!==n?(f=()=>{let e=l();if(!(!n||!e||!s||!r))return ge(e,s,c)},t[11]=r,t[12]=s,t[13]=c,t[14]=l,t[15]=n,t[16]=f):f=t[16];let p;t[17]!==i||t[18]!==r||t[19]!==s||t[20]!==c||t[21]!==n?(p=[s,n,i,r,c],t[17]=i,t[18]=r,t[19]=s,t[20]=c,t[21]=n,t[22]=p):p=t[22],(0,K.useEffect)(f,p)}function Ae({isBrowserActive:e,currentUrl:t,isSelectModeEnabled:n,isEditModeEnabled:r,isSelectionPromptOpen:i,nativeWebviewMounted:a,useNativeWebview:o,resolveWebview:s,iframeRef:c,setIsSelectModeEnabled:l,setIsEditModeEnabled:u,setSelectionModeError:d}){(0,K.useEffect)(()=>{if(!e)return;if(!t){n&&l(!1),r&&u(!1);return}let f=!1,p=n||r,m=r?`edit`:`select`,h=!p&&i;function g(){try{if(o){let e=s();if(!e||e.webviewId==null||!a)return;ye(e,p,h,m);return}let e=c.current;if(!e)return;xe(e,p,h,m)}catch(e){if(f||!p)return;let t=e instanceof Error?e.message:`Could not enable element selection.`;se.error(`Failed to toggle browser selection mode:`,e),d(t),l(!1),u(!1),A({title:`Selection mode unavailable`,description:t,variant:`destructive`})}}return g(),function(){f=!0}},[t,e,r,n,i,a,u,l,o])}function je(e,t){let n=(0,q.c)(8),r,i;n[0]!==e||n[1]!==t?(r=()=>{if(!e)return;let n=function(e){let n=re(e.data);n!=null&&t(e=>oe(e,n))};return window.addEventListener(`message`,n),function(){window.removeEventListener(`message`,n)}},i=[e,t],n[0]=e,n[1]=t,n[2]=r,n[3]=i):(r=n[2],i=n[3]),(0,K.useEffect)(r,i);let a,o;n[4]!==e||n[5]!==t?(a=()=>{if(e)return function(){t(null)}},o=[e,t],n[4]=e,n[5]=t,n[6]=a,n[7]=o):(a=n[6],o=n[7]),(0,K.useEffect)(a,o)}function Me({instanceId:e}){let t=G(e,`browser`),{devServerUrl:n,devServerStopped:r}=P(),{browserResetTrigger:i,setBrowserPageTitle:a,browserDeviceMode:o,setBrowserDeviceMode:s,isSelectModeEnabled:c,setIsSelectModeEnabled:l,isEditModeEnabled:u,setIsEditModeEnabled:d,selectedBrowserElement:f,setSelectedBrowserElement:p,setIsSelectionPromptOpen:m,isSelectionPromptOpen:h,setBrowserAgentProcessingThreadId:g}=M(),_=k(e=>e.selectedProjectId),v=k(e=>e.projects).find(e=>e.projectId===_),[y,x]=(0,K.useState)(``),[S,C]=(0,K.useState)(``),[E,D]=(0,K.useState)(``),[O,A]=(0,K.useState)(o),[N,F]=(0,K.useState)(null),L=(0,K.useRef)(null),R=(0,K.useRef)(E),z=(0,K.useRef)(null),B=(0,K.useRef)(null),V=w(),H=j(),ee=V&&!!S;R.current=E;function U(){return L.current??le(B.current)}let{shouldShowWebview:W,readWebviewVisibility:q}=we(B,t,S),J=Te({useNativeWebview:V,shouldRenderNativeWebview:ee,currentUrl:S,resolveWebview:U});Ee({devServerUrl:n,devServerStopped:r,isBrowserActive:t,currentUrl:S,browserResetTrigger:i,webviewRef:L,iframeRef:z,setCurrentUrl:C,setPendingUrl:D,setInputUrl:x,setSelectionModeError:F,setIsSelectModeEnabled:l,setIsEditModeEnabled:d,setSelectedBrowserElement:p,setIsSelectionPromptOpen:m,setBrowserAgentProcessingThreadId:g,setBrowserPageTitle:a}),De(t,V,(0,K.useCallback)(function(){V?U()?.focus():z.current?.contentWindow?.focus()},[V]),B),Oe({useNativeWebview:V,nativeWebviewMounted:J,currentUrl:S,resolveWebview:U,setCurrentUrl:C,setPendingUrl:D,setInputUrl:x,setSelectionModeError:F,setBrowserPageTitle:a}),je(t,a),ke({useNativeWebview:V,nativeWebviewMounted:J,currentUrl:S,deviceMode:O,shouldShowWebview:W,pendingUrl:E,readWebviewVisibility:q,resolveWebview:U}),Ae({isBrowserActive:t,currentUrl:S,isSelectModeEnabled:c,isEditModeEnabled:u,isSelectionPromptOpen:h,nativeWebviewMounted:J,useNativeWebview:V,resolveWebview:U,iframeRef:z,setIsSelectModeEnabled:l,setIsEditModeEnabled:d,setSelectionModeError:F}),(0,K.useEffect)(()=>{A(o)},[o]);let te=(0,K.useCallback)(e=>{L.current=e,e&&ge(e,R.current,q)},[q]);function ne(e){A(e),s(e)}function Z(){F(null),l(!1),d(!1),p(null),m(!1)}function Q(e){try{if(V){let t=U();if(!t)return;be(t,ve(e));return}let t=z.current;if(!t)return;Se(t,e)}catch(e){se.error(`Failed to run preview text edit action:`,e)}}function re(e){let t=ce(e);t&&(x(t),C(t),D(t),Z())}function ie(e){e.key===`Enter`&&re(y)}function ae(){if(Z(),V){let e=U();e&&e.reload();return}let e=z.current;if(!e)return;let t=e.src;e.src=``,requestAnimationFrame(()=>{e.src=t})}function oe(){if(Z(),V){let e=U();e&&e.executeJavascript(`history.back()`);return}de(-1)}function ue(){if(Z(),V){let e=U();e&&e.executeJavascript(`history.forward()`);return}de(1)}function de(e){let t=z.current;if(!(!t||!t.contentWindow))try{e<0?t.contentWindow.history.back():t.contentWindow.history.forward()}catch{}}function fe(){F(null),d(!1),I(f)&&(Q(`cancel`),p(null)),l(e=>!e)}function pe(){if(F(null),l(!1),m(!1),I(f)){Q(`cancel`),p(null),d(!1);return}d(e=>!e)}let me=Ne[O],he=(0,Y.jsx)(Pe,{useNativeWebview:V,nativeWebviewMounted:J,currentUrl:S,previewRpcPreload:H,handleWebviewRef:te,iframeRef:z});return t?(0,Y.jsx)(T,{children:(0,Y.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col overflow-hidden`,children:[(0,Y.jsx)(Fe,{currentUrl:S,inputUrl:y,onInputUrlChange:x,onKeyDown:ie,onBack:oe,onForward:ue,onRefresh:ae,onToggleSelectMode:fe,onToggleEditMode:pe,onOpenExternal:()=>void b(S),onDeviceModeChange:ne,selectionModeError:N,isSelectModeEnabled:c,isEditModeEnabled:u||I(f),deviceMode:O}),S?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(X,{onCommit:()=>Q(`commit`),onCancelPreview:()=>Q(`cancel`)}),(0,Y.jsx)(Ie,{selectionModeError:N,isSelectModeEnabled:c||u,deviceMode:O,currentDeviceConfig:me,previewContainerRef:B,children:he})]}):(0,Y.jsx)(Le,{devServerStopped:r,selectedProjectId:_,runCommand:v?.runCommand})]})}):(0,Y.jsx)(Re,{previewContainerRef:B,children:he})}var Ne={desktop:{width:`100%`,height:`100%`},tablet:{width:`768px`,height:`1024px`},mobile:{width:`375px`,height:`667px`}};function Pe(e){let t=(0,q.c)(7),{useNativeWebview:n,nativeWebviewMounted:r,currentUrl:i,previewRpcPreload:a,handleWebviewRef:o,iframeRef:s}=e;if(n){if(!r)return null;let e;return t[0]!==i||t[1]!==o||t[2]!==a?(e=(0,K.createElement)(`electrobun-webview`,{ref:o,src:i,preload:a,renderer:`native`,className:`block h-full w-full bg-background`}),t[0]=i,t[1]=o,t[2]=a,t[3]=e):e=t[3],e}let c;return t[4]!==i||t[5]!==s?(c=(0,Y.jsx)(`iframe`,{ref:s,src:i,className:`h-full w-full border-none`,title:`Browser`,sandbox:`allow-same-origin allow-scripts allow-forms allow-popups allow-modals allow-downloads`}),t[4]=i,t[5]=s,t[6]=c):c=t[6],c}function Fe(e){let r=(0,q.c)(42),{currentUrl:i,inputUrl:a,onInputUrlChange:l,onKeyDown:p,onBack:g,onForward:_,onRefresh:v,onToggleSelectMode:y,onToggleEditMode:b,onOpenExternal:x,onDeviceModeChange:S,selectionModeError:C,isSelectModeEnabled:w,isEditModeEnabled:T,deviceMode:D}=e,O;r[0]!==i||r[1]!==g?(O=i&&(0,Y.jsx)($,{onClick:g,label:`Back`,children:(0,Y.jsx)(n,{size:15})}),r[0]=i,r[1]=g,r[2]=O):O=r[2];let k;r[3]!==i||r[4]!==_?(k=i&&(0,Y.jsx)($,{onClick:_,label:`Forward`,children:(0,Y.jsx)(u,{size:15})}),r[3]=i,r[4]=_,r[5]=k):k=r[5];let A;r[6]===l?A=r[7]:(A=e=>l(e.target.value),r[6]=l,r[7]=A);let j;r[8]===Symbol.for(`react.memo_cache_sentinel`)?(j=s(`flex-1 rounded-full bg-muted font-mono`),r[8]=j):j=r[8];let M;r[9]!==a||r[10]!==p||r[11]!==A?(M=(0,Y.jsx)(E,{type:`text`,value:a,onChange:A,onKeyDown:p,placeholder:`Enter URL...`,className:j,spellCheck:!1}),r[9]=a,r[10]=p,r[11]=A,r[12]=M):M=r[12];let N;r[13]!==i||r[14]!==v?(N=i&&(0,Y.jsx)($,{onClick:v,label:`Refresh page`,children:(0,Y.jsx)(o,{size:15})}),r[13]=i,r[14]=v,r[15]=N):N=r[15];let P;r[16]!==i||r[17]!==w||r[18]!==y||r[19]!==C?(P=i&&(0,Y.jsx)($,{onClick:y,label:C?`Select element unavailable: ${C}`:w?`Exit element selection`:`Select element from preview`,isActive:w,activeStyle:`depressed`,children:(0,Y.jsx)(f,{size:15})}),r[16]=i,r[17]=w,r[18]=y,r[19]=C,r[20]=P):P=r[20];let F;r[21]!==i||r[22]!==T||r[23]!==b||r[24]!==C?(F=i&&(0,Y.jsx)($,{onClick:b,label:C?`Edit text unavailable: ${C}`:T?`Exit text editing`:`Edit text from preview`,isActive:T,activeStyle:`depressed`,children:(0,Y.jsx)(m,{size:15})}),r[21]=i,r[22]=T,r[23]=b,r[24]=C,r[25]=F):F=r[25];let I;r[26]!==i||r[27]!==D||r[28]!==S?(I=i&&(0,Y.jsxs)(`div`,{className:`flex items-center rounded-md bg-muted p-0.5`,children:[(0,Y.jsx)($,{onClick:()=>S(`desktop`),label:`Desktop view`,isActive:D===`desktop`,children:(0,Y.jsx)(d,{size:15})}),(0,Y.jsx)($,{onClick:()=>S(`tablet`),label:`Tablet view`,isActive:D===`tablet`,children:(0,Y.jsx)(h,{size:15})}),(0,Y.jsx)($,{onClick:()=>S(`mobile`),label:`Mobile view`,isActive:D===`mobile`,children:(0,Y.jsx)(t,{size:15})})]}),r[26]=i,r[27]=D,r[28]=S,r[29]=I):I=r[29];let L;r[30]!==i||r[31]!==x?(L=i&&(0,Y.jsx)($,{onClick:x,label:`Open in external browser`,children:(0,Y.jsx)(c,{size:15})}),r[30]=i,r[31]=x,r[32]=L):L=r[32];let R;return r[33]!==O||r[34]!==L||r[35]!==k||r[36]!==M||r[37]!==N||r[38]!==P||r[39]!==F||r[40]!==I?(R=(0,Y.jsx)(`div`,{className:`relative shrink-0 border-b border-border`,children:(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2`,children:[O,k,M,N,P,F,I,L]})}),r[33]=O,r[34]=L,r[35]=k,r[36]=M,r[37]=N,r[38]=P,r[39]=F,r[40]=I,r[41]=R):R=r[41],R}function Ie(e){let t=(0,q.c)(18),{selectionModeError:n,isSelectModeEnabled:r,deviceMode:i,currentDeviceConfig:a,previewContainerRef:o,children:c}=e,l;t[0]===n?l=t[1]:(l=n&&(0,Y.jsxs)(`div`,{className:`border-b border-destructive/20 bg-destructive/5 px-3 py-2 text-sm text-destructive`,children:[`Element selection is unavailable: `,n]}),t[0]=n,t[1]=l);let u=r&&`cursor-crosshair`,d;t[2]===u?d=t[3]:(d=s(`flex min-h-0 flex-1 items-center justify-center bg-background`,u),t[2]=u,t[3]=d);let f=`overflow-hidden border border-border bg-background shadow-sm ${i===`desktop`?`h-full w-full rounded-none border-0 shadow-none`:`rounded-lg`}`,p;t[4]!==a.height||t[5]!==a.width?(p={width:a.width,height:a.height,maxWidth:`100%`,maxHeight:`100%`},t[4]=a.height,t[5]=a.width,t[6]=p):p=t[6];let m;t[7]!==c||t[8]!==f||t[9]!==p?(m=(0,Y.jsx)(`div`,{className:f,style:p,children:c}),t[7]=c,t[8]=f,t[9]=p,t[10]=m):m=t[10];let h;t[11]!==o||t[12]!==d||t[13]!==m?(h=(0,Y.jsx)(`div`,{ref:o,className:d,children:m}),t[11]=o,t[12]=d,t[13]=m,t[14]=h):h=t[14];let g;return t[15]!==l||t[16]!==h?(g=(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col bg-background`,children:[l,h]}),t[15]=l,t[16]=h,t[17]=g):g=t[17],g}function Le(e){let t=(0,q.c)(4),{devServerStopped:n,selectedProjectId:r,runCommand:i}=e,o;return t[0]!==n||t[1]!==i||t[2]!==r?(o=(0,Y.jsx)(`div`,{className:`flex flex-1 flex-col items-center justify-center gap-6 text-muted-foreground`,children:n?(0,Y.jsx)(`p`,{className:a.body,children:`Dev server stopped`}):r&&i?(0,Y.jsx)(W,{projectId:r,runCommand:i,large:!0}):(0,Y.jsx)(`p`,{className:a.body,children:`Enter a URL to browse`})}),t[0]=n,t[1]=i,t[2]=r,t[3]=o):o=t[3],o}function Re(e){let t=(0,q.c)(3),{previewContainerRef:n,children:r}=e,i;return t[0]!==r||t[1]!==n?(i=(0,Y.jsx)(`div`,{className:`hidden`,"aria-hidden":`true`,children:(0,Y.jsx)(`div`,{ref:n,children:r})}),t[0]=r,t[1]=n,t[2]=i):i=t[2],i}export{Me as BrowserTab};
@@ -1 +1 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Di as t,Oi as n,Zn as r,ki as i,mr as a,tr as o}from"./interactive-BrHVRHmQ.js";import{ii as s,pr as c}from"./onboarding-KBcwP-kU.js";import{J as l,i as u,n as d,r as f}from"./store-B_cK-gsT.js";var p=e(i(),1),m=n();function h({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 g(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 _=o(`app.window-state`);function v(e,t,n){return JSON.stringify({nonChatWindows:e,expandedWindowId:t,selectedWindowId:n})}function y({nonChatWindows:e,expandedWindowId:t,selectedWindowId:n,onReset:r,onHydrate:i}){let a=d(),o=f(e=>e.selectedProjectId),u=f(e=>e.projects),m=f(e=>e.threadMultiPaneStates),g=u.find(e=>e.projectId===o),y=(g?.threads.map(e=>e.threadId)??[]).join(`\0`),b=g!==void 0,[x,S]=(0,p.useState)(null),C=(0,p.useRef)(null),w=(0,p.useRef)(Promise.resolve()),T=(0,p.useRef)(null),ee=(0,p.useRef)(0),E=(0,p.useRef)(v(e,t,n));E.current=v(e,t,n),(0,p.useEffect)(()=>{let e=T.current!==o;if(T.current=o,!o||!b){r(),S(null),C.current=null;return}e&&(r(),S(null),C.current=null);let t=o,n=y?y.split(`\0`):[],s=E.current,u=++ee.current,d=!1;async function f(){try{let e=await c(t);if(d||u!==ee.current)return;if(a({type:l.HydrateProjectChatPanes,threadIds:n,chatPanesByThread:e.chatPanesByThread}),E.current!==s){S(t);return}C.current=JSON.stringify(e),i(e),S(t)}catch(e){d||_.error(`Failed to restore project window state`,e)}}return f(),()=>{d=!0}},[a,b,i,r,y,o]),(0,p.useEffect)(()=>{if(!o||o!==x||!b)return;let r=h({nonChatWindows:e,expandedWindowId:t,selectedWindowId:n,threadIds:y?y.split(`\0`):[],threadMultiPaneStates:m}),i=JSON.stringify(r);if(i===C.current)return;let a=o;C.current=i,w.current=w.current.catch(()=>void 0).then(()=>s(a,r)).catch(e=>{_.error(`Failed to save project window state`,e),C.current===i&&(C.current=null)})},[t,b,x,e,o,n,y,m])}var b=t(),x=(0,p.createContext)(null);function S(e){let t=(0,m.c)(19),{windows:n,extraChatPanes:r,primaryChatOpen:i,expandedWindowId:o,selectedWindowId:s,setExpandedWindowId:c,setSelectedWindowId:l}=e,u,d;t[0]!==o||t[1]!==r||t[2]!==i||t[3]!==c||t[4]!==n?(u=()=>{if(o){if(o===`primary`){if(i)return;c(n.length>0?n[0].id:null);return}!n.some(e=>e.id===o)&&!r[o]&&c(i?a:n[0]?.id??null)}},d=[o,r,i,n,c],t[0]=o,t[1]=r,t[2]=i,t[3]=c,t[4]=n,t[5]=u,t[6]=d):(u=t[5],d=t[6]),(0,p.useEffect)(u,d);let f,h;t[7]!==r||t[8]!==i||t[9]!==s||t[10]!==l||t[11]!==n?(f=()=>{if(s===`primary`){if(i||n.length===0)return;l(n[0].id);return}!n.some(e=>e.id===s)&&!r[s]&&l(i?a:n[0]?.id??`primary`)},h=[r,i,s,n,l],t[7]=r,t[8]=i,t[9]=s,t[10]=l,t[11]=n,t[12]=f,t[13]=h):(f=t[12],h=t[13]),(0,p.useEffect)(f,h);let g,_;t[14]!==o||t[15]!==c||t[16]!==n.length?(g=()=>{n.length===0&&o!==null&&c(null)},_=[o,n.length,c],t[14]=o,t[15]=c,t[16]=n.length,t[17]=g,t[18]=_):(g=t[17],_=t[18]),(0,p.useEffect)(g,_)}function C(e,t,n,r){t.panelId===`chat`?n({type:l.RemoveChatPane,paneId:e}):r(t=>t.filter(t=>t.id!==e))}function w(e,t,n,r){if(n.length===1)return null;if(e!==t)return e;let i=n.filter(e=>e.id!==t);return r?a:i[0]?.id??null}function T(e,t,n,r){if(e!==t)return e;let i=n.filter(e=>e.id!==t);return r?a:i[0]?.id??`primary`}function ee(e,t,n){return t.length===0?null:e===`primary`?n:e}function E(e,t){return e===`primary`&&t?t:e}function D(e){let t=(0,m.c)(57),{children:n}=e,i=d(),o=u(),s=f(ie),c=f(re),h;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(h=[],t[0]=h):h=t[0];let[_,v]=(0,p.useState)(h),[D,O]=(0,p.useState)(!0),[k,A]=(0,p.useState)(null),[j,M]=(0,p.useState)(a),[ae,N]=(0,p.useState)(null),P;t[1]===c?P=t[2]:(P=Object.keys(c).map(ne),t[1]=c,t[2]=P);let oe=P,F;t[3]!==oe||t[4]!==_?(F=[...oe,..._],t[3]=oe,t[4]=_,t[5]=F):F=t[5];let I=F,L;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(L=()=>{v([]),O(!0),A(null),M(a),N(null)},t[6]=L):L=t[6];let se=L,R;t[7]===o?R=t[8]:(R=e=>{let t=g(e,o.getState().selectedThreadId);v(t.nonChatWindows),A(t.expandedWindowId),M(t.selectedWindowId),N(null)},t[7]=o,t[8]=R);let ce=R,z;t[9]!==k||t[10]!==ce||t[11]!==_||t[12]!==j?(z={nonChatWindows:_,expandedWindowId:k,selectedWindowId:j,onReset:se,onHydrate:ce},t[9]=k,t[10]=ce,t[11]=_,t[12]=j,t[13]=z):z=t[13],y(z);let B;t[14]!==k||t[15]!==c||t[16]!==D||t[17]!==j||t[18]!==I?(B={windows:I,extraChatPanes:c,primaryChatOpen:D,expandedWindowId:k,selectedWindowId:j,setExpandedWindowId:A,setSelectedWindowId:M},t[14]=k,t[15]=c,t[16]=D,t[17]=j,t[18]=I,t[19]=B):B=t[19],S(B);let V;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(V=e=>{M(e)},t[20]=V):V=t[20];let le=V,H;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(H=e=>{M(e),A(e)},t[21]=H):H=t[21];let ue=H,U;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(U=()=>{A(null)},t[22]=U):U=t[22];let de=U,W;t[23]!==D||t[24]!==I.length?(W=e=>{e===`primary`&&O(!0),A(t=>t===null&&I.length>0||t===null&&D&&e!==`primary`?null:e),N(e)},t[23]=D,t[24]=I.length,t[25]=W):W=t[25];let G=W,K;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(K=()=>{N(null)},t[26]=K):K=t[26];let fe=K,q;t[27]!==i||t[28]!==G||t[29]!==s?(q=e=>{let t=r();return e===`chat`?s?(i({type:l.AddChatPane,paneId:t,conversationId:r()}),G(t),t):t:(v(n=>[...n,{id:t,panelId:e}]),G(t),t)},t[27]=i,t[28]=G,t[29]=s,t[30]=q):q=t[30];let J=q,Y;t[31]!==i||t[32]!==D||t[33]!==I?(Y=e=>{if(e===`primary`){O(!1);let e=I[0]?.id??null;A(t=>ee(t,I,e)),M(t=>E(t,e));return}let t=I.find(t=>t.id===e);t&&(C(e,t,i,v),A(t=>w(t,e,I,D)),M(t=>T(t,e,I,D)))},t[31]=i,t[32]=D,t[33]=I,t[34]=Y):Y=t[34];let pe=Y,X;t[35]!==i||t[36]!==I?(X=()=>{A(null),M(a),O(!0);for(let e of I)e.panelId===`chat`&&i({type:l.RemoveChatPane,paneId:e.id});v([])},t[35]=i,t[36]=I,t[37]=X):X=t[37];let me=X,Z;t[38]!==D||t[39]!==I?(Z=e=>e===`chat`?D||I.some(te):I.some(t=>t.panelId===e),t[38]=D,t[39]=I,t[40]=Z):Z=t[40];let he=Z,ge=I.length>0,_e=k!==null,Q;t[41]!==J||t[42]!==me||t[43]!==pe||t[44]!==k||t[45]!==ge||t[46]!==_e||t[47]!==he||t[48]!==ae||t[49]!==D||t[50]!==G||t[51]!==j||t[52]!==I?(Q={windows:I,addWindow:J,closeWindow:pe,closeAllWindows:me,isPrimaryChatOpen:D,isPanelOpen:he,hasOpenWindows:ge,isLayoutExpanded:_e,expandedWindowId:k,expandWindow:ue,collapseLayout:de,selectedWindowId:j,selectWindow:le,revealWindow:G,pendingScrollWindowId:ae,clearPendingScrollWindow:fe},t[41]=J,t[42]=me,t[43]=pe,t[44]=k,t[45]=ge,t[46]=_e,t[47]=he,t[48]=ae,t[49]=D,t[50]=G,t[51]=j,t[52]=I,t[53]=Q):Q=t[53];let ve=Q,$;return t[54]!==n||t[55]!==ve?($=(0,b.jsx)(x.Provider,{value:ve,children:n}),t[54]=n,t[55]=ve,t[56]=$):$=t[56],$}function te(e){return e.panelId===`chat`}function ne(e){return{id:e,panelId:`chat`}}function re(e){return e.extraChatPanes}function ie(e){return e.selectedThreadId}function O(){let e=(0,p.useContext)(x);if(!e)throw Error(`useChatDock must be used within a ChatDockProvider`);return e}export{O as n,D as t};
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Di as t,Oi as n,Zn as r,ki as i,mr as a,tr as o}from"./interactive-BrHVRHmQ.js";import{ai as s,mr as c}from"./onboarding-CQV3cOCc.js";import{J as l,i as u,n as d,r as f}from"./store-fffs6-y9.js";var p=e(i(),1),m=n();function h({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 g(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 _=o(`app.window-state`);function v(e,t,n){return JSON.stringify({nonChatWindows:e,expandedWindowId:t,selectedWindowId:n})}function y({nonChatWindows:e,expandedWindowId:t,selectedWindowId:n,onReset:r,onHydrate:i}){let a=d(),o=f(e=>e.selectedProjectId),u=f(e=>e.projects),m=f(e=>e.threadMultiPaneStates),g=u.find(e=>e.projectId===o),y=(g?.threads.map(e=>e.threadId)??[]).join(`\0`),b=g!==void 0,[x,S]=(0,p.useState)(null),C=(0,p.useRef)(null),w=(0,p.useRef)(Promise.resolve()),T=(0,p.useRef)(null),ee=(0,p.useRef)(0),E=(0,p.useRef)(v(e,t,n));E.current=v(e,t,n),(0,p.useEffect)(()=>{let e=T.current!==o;if(T.current=o,!o||!b){r(),S(null),C.current=null;return}e&&(r(),S(null),C.current=null);let t=o,n=y?y.split(`\0`):[],s=E.current,u=++ee.current,d=!1;async function f(){try{let e=await c(t);if(d||u!==ee.current)return;if(a({type:l.HydrateProjectChatPanes,threadIds:n,chatPanesByThread:e.chatPanesByThread}),E.current!==s){S(t);return}C.current=JSON.stringify(e),i(e),S(t)}catch(e){d||_.error(`Failed to restore project window state`,e)}}return f(),()=>{d=!0}},[a,b,i,r,y,o]),(0,p.useEffect)(()=>{if(!o||o!==x||!b)return;let r=h({nonChatWindows:e,expandedWindowId:t,selectedWindowId:n,threadIds:y?y.split(`\0`):[],threadMultiPaneStates:m}),i=JSON.stringify(r);if(i===C.current)return;let a=o;C.current=i,w.current=w.current.catch(()=>void 0).then(()=>s(a,r)).catch(e=>{_.error(`Failed to save project window state`,e),C.current===i&&(C.current=null)})},[t,b,x,e,o,n,y,m])}var b=t(),x=(0,p.createContext)(null);function S(e){let t=(0,m.c)(19),{windows:n,extraChatPanes:r,primaryChatOpen:i,expandedWindowId:o,selectedWindowId:s,setExpandedWindowId:c,setSelectedWindowId:l}=e,u,d;t[0]!==o||t[1]!==r||t[2]!==i||t[3]!==c||t[4]!==n?(u=()=>{if(o){if(o===`primary`){if(i)return;c(n.length>0?n[0].id:null);return}!n.some(e=>e.id===o)&&!r[o]&&c(i?a:n[0]?.id??null)}},d=[o,r,i,n,c],t[0]=o,t[1]=r,t[2]=i,t[3]=c,t[4]=n,t[5]=u,t[6]=d):(u=t[5],d=t[6]),(0,p.useEffect)(u,d);let f,h;t[7]!==r||t[8]!==i||t[9]!==s||t[10]!==l||t[11]!==n?(f=()=>{if(s===`primary`){if(i||n.length===0)return;l(n[0].id);return}!n.some(e=>e.id===s)&&!r[s]&&l(i?a:n[0]?.id??`primary`)},h=[r,i,s,n,l],t[7]=r,t[8]=i,t[9]=s,t[10]=l,t[11]=n,t[12]=f,t[13]=h):(f=t[12],h=t[13]),(0,p.useEffect)(f,h);let g,_;t[14]!==o||t[15]!==c||t[16]!==n.length?(g=()=>{n.length===0&&o!==null&&c(null)},_=[o,n.length,c],t[14]=o,t[15]=c,t[16]=n.length,t[17]=g,t[18]=_):(g=t[17],_=t[18]),(0,p.useEffect)(g,_)}function C(e,t,n,r){t.panelId===`chat`?n({type:l.RemoveChatPane,paneId:e}):r(t=>t.filter(t=>t.id!==e))}function w(e,t,n,r){if(n.length===1)return null;if(e!==t)return e;let i=n.filter(e=>e.id!==t);return r?a:i[0]?.id??null}function T(e,t,n,r){if(e!==t)return e;let i=n.filter(e=>e.id!==t);return r?a:i[0]?.id??`primary`}function ee(e,t,n){return t.length===0?null:e===`primary`?n:e}function E(e,t){return e===`primary`&&t?t:e}function D(e){let t=(0,m.c)(57),{children:n}=e,i=d(),o=u(),s=f(ie),c=f(re),h;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(h=[],t[0]=h):h=t[0];let[_,v]=(0,p.useState)(h),[D,O]=(0,p.useState)(!0),[k,A]=(0,p.useState)(null),[j,M]=(0,p.useState)(a),[ae,N]=(0,p.useState)(null),P;t[1]===c?P=t[2]:(P=Object.keys(c).map(ne),t[1]=c,t[2]=P);let oe=P,F;t[3]!==oe||t[4]!==_?(F=[...oe,..._],t[3]=oe,t[4]=_,t[5]=F):F=t[5];let I=F,L;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(L=()=>{v([]),O(!0),A(null),M(a),N(null)},t[6]=L):L=t[6];let se=L,R;t[7]===o?R=t[8]:(R=e=>{let t=g(e,o.getState().selectedThreadId);v(t.nonChatWindows),A(t.expandedWindowId),M(t.selectedWindowId),N(null)},t[7]=o,t[8]=R);let ce=R,z;t[9]!==k||t[10]!==ce||t[11]!==_||t[12]!==j?(z={nonChatWindows:_,expandedWindowId:k,selectedWindowId:j,onReset:se,onHydrate:ce},t[9]=k,t[10]=ce,t[11]=_,t[12]=j,t[13]=z):z=t[13],y(z);let B;t[14]!==k||t[15]!==c||t[16]!==D||t[17]!==j||t[18]!==I?(B={windows:I,extraChatPanes:c,primaryChatOpen:D,expandedWindowId:k,selectedWindowId:j,setExpandedWindowId:A,setSelectedWindowId:M},t[14]=k,t[15]=c,t[16]=D,t[17]=j,t[18]=I,t[19]=B):B=t[19],S(B);let V;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(V=e=>{M(e)},t[20]=V):V=t[20];let le=V,H;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(H=e=>{M(e),A(e)},t[21]=H):H=t[21];let ue=H,U;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(U=()=>{A(null)},t[22]=U):U=t[22];let de=U,W;t[23]!==D||t[24]!==I.length?(W=e=>{e===`primary`&&O(!0),A(t=>t===null&&I.length>0||t===null&&D&&e!==`primary`?null:e),N(e)},t[23]=D,t[24]=I.length,t[25]=W):W=t[25];let G=W,K;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(K=()=>{N(null)},t[26]=K):K=t[26];let fe=K,q;t[27]!==i||t[28]!==G||t[29]!==s?(q=e=>{let t=r();return e===`chat`?s?(i({type:l.AddChatPane,paneId:t,conversationId:r()}),G(t),t):t:(v(n=>[...n,{id:t,panelId:e}]),G(t),t)},t[27]=i,t[28]=G,t[29]=s,t[30]=q):q=t[30];let J=q,Y;t[31]!==i||t[32]!==D||t[33]!==I?(Y=e=>{if(e===`primary`){O(!1);let e=I[0]?.id??null;A(t=>ee(t,I,e)),M(t=>E(t,e));return}let t=I.find(t=>t.id===e);t&&(C(e,t,i,v),A(t=>w(t,e,I,D)),M(t=>T(t,e,I,D)))},t[31]=i,t[32]=D,t[33]=I,t[34]=Y):Y=t[34];let pe=Y,X;t[35]!==i||t[36]!==I?(X=()=>{A(null),M(a),O(!0);for(let e of I)e.panelId===`chat`&&i({type:l.RemoveChatPane,paneId:e.id});v([])},t[35]=i,t[36]=I,t[37]=X):X=t[37];let me=X,Z;t[38]!==D||t[39]!==I?(Z=e=>e===`chat`?D||I.some(te):I.some(t=>t.panelId===e),t[38]=D,t[39]=I,t[40]=Z):Z=t[40];let he=Z,ge=I.length>0,_e=k!==null,Q;t[41]!==J||t[42]!==me||t[43]!==pe||t[44]!==k||t[45]!==ge||t[46]!==_e||t[47]!==he||t[48]!==ae||t[49]!==D||t[50]!==G||t[51]!==j||t[52]!==I?(Q={windows:I,addWindow:J,closeWindow:pe,closeAllWindows:me,isPrimaryChatOpen:D,isPanelOpen:he,hasOpenWindows:ge,isLayoutExpanded:_e,expandedWindowId:k,expandWindow:ue,collapseLayout:de,selectedWindowId:j,selectWindow:le,revealWindow:G,pendingScrollWindowId:ae,clearPendingScrollWindow:fe},t[41]=J,t[42]=me,t[43]=pe,t[44]=k,t[45]=ge,t[46]=_e,t[47]=he,t[48]=ae,t[49]=D,t[50]=G,t[51]=j,t[52]=I,t[53]=Q):Q=t[53];let ve=Q,$;return t[54]!==n||t[55]!==ve?($=(0,b.jsx)(x.Provider,{value:ve,children:n}),t[54]=n,t[55]=ve,t[56]=$):$=t[56],$}function te(e){return e.panelId===`chat`}function ne(e){return{id:e,panelId:`chat`}}function re(e){return e.extraChatPanes}function ie(e){return e.selectedThreadId}function O(){let e=(0,p.useContext)(x);if(!e)throw Error(`useChatDock must be used within a ChatDockProvider`);return e}export{O as n,D as t};
@@ -1 +1 @@
1
- import{Di as e,Oi as t,Rr as n,k as r}from"./interactive-BrHVRHmQ.js";import{A as i,Ct as a,D as o,Eo as s,O as c,St as l,T as u,Tt as d,b as f,j as p,k as m,wt as h}from"./onboarding-KBcwP-kU.js";import{Mt as g,U as _,ft as v}from"./index-CJCQ4bTo.js";var y=t(),b=e();function x(e){let t=(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;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,b.jsx)(p,{children:`Commit Changes`}),t[0]=M):M=t[0];let N;t[1]===j?N=t[2]:(N=(0,b.jsxs)(i,{children:[M,(0,b.jsxs)(c,{children:[`Enter a commit message for your changes on branch `,j]})]}),t[1]=j,t[2]=N);let P;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,b.jsx)(f,{htmlFor:`commit-message`,children:`Commit Message`}),t[3]=P):P=t[3];let F;t[4]===w?F=t[5]:(F=e=>w(e.target.value),t[4]=w,t[5]=F);let I;t[6]!==C||t[7]!==D||t[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`}),t[6]=C,t[7]=D,t[8]=F,t[9]=I):I=t[9];let L=D||O,R;t[10]===D?R=t[11]:(R=D?(0,b.jsx)(g,{}):(0,b.jsx)(r,{className:`h-3.5 w-3.5`}),t[10]=D,t[11]=R);let z;t[12]!==k||t[13]!==L||t[14]!==R?(z=(0,b.jsx)(d,{asChild:!0,children:(0,b.jsx)(s,{type:`button`,variant:`ghost`,size:`icon`,className:`absolute top-2 right-2 h-6 w-6`,onClick:k,disabled:L,children:R})}),t[12]=k,t[13]=L,t[14]=R,t[15]=z):z=t[15];let B=D?`Generating commit message...`:`Generate commit message with AI`,V;t[16]===B?V=t[17]:(V=(0,b.jsx)(a,{children:B}),t[16]=B,t[17]=V);let H;t[18]!==V||t[19]!==z?(H=(0,b.jsx)(h,{children:(0,b.jsxs)(l,{children:[z,V]})}),t[18]=V,t[19]=z,t[20]=H):H=t[20];let U;t[21]!==H||t[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]})]})}),t[21]=H,t[22]=I,t[23]=U):U=t[23];let W;t[24]!==T||t[25]!==E?(W=(0,b.jsx)(v,{value:T,onChange:E,ariaLabel:`Auto generate commit messages`}),t[24]=T,t[25]=E,t[26]=W):W=t[26];let G;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(G=(0,b.jsx)(f,{htmlFor:`auto-generate`,className:n.labelNormal,children:`Auto generate commit messages`}),t[27]=G):G=t[27];let K;t[28]===W?K=t[29]:(K=(0,b.jsxs)(`div`,{className:`mr-auto flex items-center gap-3`,children:[W,G]}),t[28]=W,t[29]=K);let q;t[30]!==C||t[31]!==O?(q=O||!C.trim(),t[30]=C,t[31]=O,t[32]=q):q=t[32];let J;t[33]===O?J=t[34]:(J=O?(0,b.jsxs)(b.Fragment,{children:[`Commit`,(0,b.jsx)(g,{size:`sm`})]}):`Commit`,t[33]=O,t[34]=J);let Y;t[35]!==A||t[36]!==q||t[37]!==J?(Y=(0,b.jsx)(s,{className:`ml-auto`,onClick:A,disabled:q,children:J}),t[35]=A,t[36]=q,t[37]=J,t[38]=Y):Y=t[38];let X;t[39]!==K||t[40]!==Y?(X=(0,b.jsxs)(m,{className:`w-full items-center gap-4`,children:[K,Y]}),t[39]=K,t[40]=Y,t[41]=X):X=t[41];let Z;t[42]!==U||t[43]!==X||t[44]!==N?(Z=(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,X]}),t[42]=U,t[43]=X,t[44]=N,t[45]=Z):Z=t[45];let Q;return t[46]!==S||t[47]!==x||t[48]!==Z?(Q=(0,b.jsx)(u,{open:x,onOpenChange:S,children:Z}),t[46]=S,t[47]=x,t[48]=Z,t[49]=Q):Q=t[49],Q}export{x as CommitDialog};
1
+ import{Di as e,Oi as t,Rr as n,k as r}from"./interactive-BrHVRHmQ.js";import{A as i,Ct as a,D as o,Do as s,O as c,St as l,T as u,Tt as d,b as f,j as p,k as m,wt as h}from"./onboarding-CQV3cOCc.js";import{Bt as g,U as _,ft as v}from"./index-BH6Ht-w_.js";var y=t(),b=e();function x(e){let t=(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;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,b.jsx)(p,{children:`Commit Changes`}),t[0]=M):M=t[0];let N;t[1]===j?N=t[2]:(N=(0,b.jsxs)(i,{children:[M,(0,b.jsxs)(c,{children:[`Enter a commit message for your changes on branch `,j]})]}),t[1]=j,t[2]=N);let P;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,b.jsx)(f,{htmlFor:`commit-message`,children:`Commit Message`}),t[3]=P):P=t[3];let F;t[4]===w?F=t[5]:(F=e=>w(e.target.value),t[4]=w,t[5]=F);let I;t[6]!==C||t[7]!==D||t[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`}),t[6]=C,t[7]=D,t[8]=F,t[9]=I):I=t[9];let L=D||O,R;t[10]===D?R=t[11]:(R=D?(0,b.jsx)(g,{}):(0,b.jsx)(r,{className:`h-3.5 w-3.5`}),t[10]=D,t[11]=R);let z;t[12]!==k||t[13]!==L||t[14]!==R?(z=(0,b.jsx)(d,{asChild:!0,children:(0,b.jsx)(s,{type:`button`,variant:`ghost`,size:`icon`,className:`absolute top-2 right-2 h-6 w-6`,onClick:k,disabled:L,children:R})}),t[12]=k,t[13]=L,t[14]=R,t[15]=z):z=t[15];let B=D?`Generating commit message...`:`Generate commit message with AI`,V;t[16]===B?V=t[17]:(V=(0,b.jsx)(a,{children:B}),t[16]=B,t[17]=V);let H;t[18]!==V||t[19]!==z?(H=(0,b.jsx)(h,{children:(0,b.jsxs)(l,{children:[z,V]})}),t[18]=V,t[19]=z,t[20]=H):H=t[20];let U;t[21]!==H||t[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]})]})}),t[21]=H,t[22]=I,t[23]=U):U=t[23];let W;t[24]!==T||t[25]!==E?(W=(0,b.jsx)(v,{value:T,onChange:E,ariaLabel:`Auto generate commit messages`}),t[24]=T,t[25]=E,t[26]=W):W=t[26];let G;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(G=(0,b.jsx)(f,{htmlFor:`auto-generate`,className:n.labelNormal,children:`Auto generate commit messages`}),t[27]=G):G=t[27];let K;t[28]===W?K=t[29]:(K=(0,b.jsxs)(`div`,{className:`mr-auto flex items-center gap-3`,children:[W,G]}),t[28]=W,t[29]=K);let q;t[30]!==C||t[31]!==O?(q=O||!C.trim(),t[30]=C,t[31]=O,t[32]=q):q=t[32];let J;t[33]===O?J=t[34]:(J=O?(0,b.jsxs)(b.Fragment,{children:[`Commit`,(0,b.jsx)(g,{size:`sm`})]}):`Commit`,t[33]=O,t[34]=J);let Y;t[35]!==A||t[36]!==q||t[37]!==J?(Y=(0,b.jsx)(s,{className:`ml-auto`,onClick:A,disabled:q,children:J}),t[35]=A,t[36]=q,t[37]=J,t[38]=Y):Y=t[38];let X;t[39]!==K||t[40]!==Y?(X=(0,b.jsxs)(m,{className:`w-full items-center gap-4`,children:[K,Y]}),t[39]=K,t[40]=Y,t[41]=X):X=t[41];let Z;t[42]!==U||t[43]!==X||t[44]!==N?(Z=(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,X]}),t[42]=U,t[43]=X,t[44]=N,t[45]=Z):Z=t[45];let Q;return t[46]!==S||t[47]!==x||t[48]!==Z?(Q=(0,b.jsx)(u,{open:x,onOpenChange:S,children:Z}),t[46]=S,t[47]=x,t[48]=Z,t[49]=Q):Q=t[49],Q}export{x as CommitDialog};
@@ -1 +1 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Di as t,Oi as n,Rr as r,Sn as i,dn as a,i as o,ki as s,mt as c}from"./interactive-BrHVRHmQ.js";import{A as l,D as u,Eo as d,O as f,T as p,gt as m,j as h,k as g}from"./onboarding-KBcwP-kU.js";var _=n(),v=e(s(),1),y=t(),b=1500;function x(e){let t=(0,_.c)(41),{error:n,onDismiss:s,onFixInChat:x}=e,[S,C]=(0,v.useState)(!1),w=(0,v.useRef)(null),T,E;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(T=()=>()=>{w.current!==null&&(clearTimeout(w.current),w.current=null)},E=[],t[0]=T,t[1]=E):(T=t[0],E=t[1]),(0,v.useEffect)(T,E);let D;t[2]===s?D=t[3]:(D=function(e){e||s()},t[2]=s,t[3]=D);let O=D,k;t[4]===n.message?k=t[5]:(k=async function(){try{await navigator.clipboard.writeText(n.message)}catch{}C(!0),w.current!==null&&clearTimeout(w.current),w.current=setTimeout(()=>{C(!1),w.current=null},b)},t[4]=n.message,t[5]=k);let A=k,j;t[6]!==n||t[7]!==x?(j=function(){x(n)},t[6]=n,t[7]=x,t[8]=j):j=t[8];let M=j,N;t[9]===n.title?N=t[10]:(N=(0,y.jsx)(h,{children:n.title}),t[9]=n.title,t[10]=N);let P;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,y.jsx)(f,{children:`Git returned an error, so the commit was not created. Fix the issue below, then try again.`}),t[11]=P):P=t[11];let F;t[12]===N?F=t[13]:(F=(0,y.jsxs)(l,{children:[N,P]}),t[12]=N,t[13]=F);let I;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(I=o(r.compact,`whitespace-pre-wrap break-words p-3 font-mono text-foreground`),t[14]=I):I=t[14];let L;t[15]===n.message?L=t[16]:(L=(0,y.jsx)(m,{className:`max-h-56 rounded-md border bg-muted/40`,children:(0,y.jsx)(`pre`,{className:I,children:n.message})}),t[15]=n.message,t[16]=L);let R;t[17]===s?R=t[18]:(R=(0,y.jsx)(d,{variant:`outline`,onClick:s,children:`Close`}),t[17]=s,t[18]=R);let z;t[19]===A?z=t[20]:(z=()=>void A(),t[19]=A,t[20]=z);let B;t[21]===S?B=t[22]:(B=S?(0,y.jsx)(i,{className:`h-4 w-4`}):(0,y.jsx)(a,{className:`h-4 w-4`}),t[21]=S,t[22]=B);let V=S?`Copied`:`Copy`,H;t[23]!==z||t[24]!==B||t[25]!==V?(H=(0,y.jsxs)(d,{variant:`outline`,onClick:z,children:[B,V]}),t[23]=z,t[24]=B,t[25]=V,t[26]=H):H=t[26];let U;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,y.jsx)(c,{className:`h-4 w-4`}),t[27]=U):U=t[27];let W;t[28]===M?W=t[29]:(W=(0,y.jsxs)(d,{onClick:M,children:[U,`Fix in Chat`]}),t[28]=M,t[29]=W);let G;t[30]!==R||t[31]!==H||t[32]!==W?(G=(0,y.jsxs)(g,{className:`gap-2`,children:[R,H,W]}),t[30]=R,t[31]=H,t[32]=W,t[33]=G):G=t[33];let K;t[34]!==G||t[35]!==F||t[36]!==L?(K=(0,y.jsxs)(u,{className:`max-w-xl`,children:[F,L,G]}),t[34]=G,t[35]=F,t[36]=L,t[37]=K):K=t[37];let q;return t[38]!==O||t[39]!==K?(q=(0,y.jsx)(p,{open:!0,onOpenChange:O,children:K}),t[38]=O,t[39]=K,t[40]=q):q=t[40],q}export{x as CommitErrorDialog};
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Di as t,Oi as n,Rr as r,Sn as i,dn as a,i as o,ki as s,mt as c}from"./interactive-BrHVRHmQ.js";import{A as l,D as u,Do as d,O as f,T as p,gt as m,j as h,k as g}from"./onboarding-CQV3cOCc.js";var _=n(),v=e(s(),1),y=t(),b=1500;function x(e){let t=(0,_.c)(41),{error:n,onDismiss:s,onFixInChat:x}=e,[S,C]=(0,v.useState)(!1),w=(0,v.useRef)(null),T,E;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(T=()=>()=>{w.current!==null&&(clearTimeout(w.current),w.current=null)},E=[],t[0]=T,t[1]=E):(T=t[0],E=t[1]),(0,v.useEffect)(T,E);let D;t[2]===s?D=t[3]:(D=function(e){e||s()},t[2]=s,t[3]=D);let O=D,k;t[4]===n.message?k=t[5]:(k=async function(){try{await navigator.clipboard.writeText(n.message)}catch{}C(!0),w.current!==null&&clearTimeout(w.current),w.current=setTimeout(()=>{C(!1),w.current=null},b)},t[4]=n.message,t[5]=k);let A=k,j;t[6]!==n||t[7]!==x?(j=function(){x(n)},t[6]=n,t[7]=x,t[8]=j):j=t[8];let M=j,N;t[9]===n.title?N=t[10]:(N=(0,y.jsx)(h,{children:n.title}),t[9]=n.title,t[10]=N);let P;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,y.jsx)(f,{children:`Git returned an error, so the commit was not created. Fix the issue below, then try again.`}),t[11]=P):P=t[11];let F;t[12]===N?F=t[13]:(F=(0,y.jsxs)(l,{children:[N,P]}),t[12]=N,t[13]=F);let I;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(I=o(r.compact,`whitespace-pre-wrap break-words p-3 font-mono text-foreground`),t[14]=I):I=t[14];let L;t[15]===n.message?L=t[16]:(L=(0,y.jsx)(m,{className:`max-h-56 rounded-md border bg-muted/40`,children:(0,y.jsx)(`pre`,{className:I,children:n.message})}),t[15]=n.message,t[16]=L);let R;t[17]===s?R=t[18]:(R=(0,y.jsx)(d,{variant:`outline`,onClick:s,children:`Close`}),t[17]=s,t[18]=R);let z;t[19]===A?z=t[20]:(z=()=>void A(),t[19]=A,t[20]=z);let B;t[21]===S?B=t[22]:(B=S?(0,y.jsx)(i,{className:`h-4 w-4`}):(0,y.jsx)(a,{className:`h-4 w-4`}),t[21]=S,t[22]=B);let V=S?`Copied`:`Copy`,H;t[23]!==z||t[24]!==B||t[25]!==V?(H=(0,y.jsxs)(d,{variant:`outline`,onClick:z,children:[B,V]}),t[23]=z,t[24]=B,t[25]=V,t[26]=H):H=t[26];let U;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,y.jsx)(c,{className:`h-4 w-4`}),t[27]=U):U=t[27];let W;t[28]===M?W=t[29]:(W=(0,y.jsxs)(d,{onClick:M,children:[U,`Fix in Chat`]}),t[28]=M,t[29]=W);let G;t[30]!==R||t[31]!==H||t[32]!==W?(G=(0,y.jsxs)(g,{className:`gap-2`,children:[R,H,W]}),t[30]=R,t[31]=H,t[32]=W,t[33]=G):G=t[33];let K;t[34]!==G||t[35]!==F||t[36]!==L?(K=(0,y.jsxs)(u,{className:`max-w-xl`,children:[F,L,G]}),t[34]=G,t[35]=F,t[36]=L,t[37]=K):K=t[37];let q;return t[38]!==O||t[39]!==K?(q=(0,y.jsx)(p,{open:!0,onOpenChange:O,children:K}),t[38]=O,t[39]=K,t[40]=q):q=t[40],q}export{x as CommitErrorDialog};
@@ -1 +1 @@
1
- import{Di as e,Oi as t,Rr as n,i as r,ii as i}from"./interactive-BrHVRHmQ.js";import{a,b as o,o as s}from"./onboarding-KBcwP-kU.js";var c=t(),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 t=(0,c.c)(11),{commitMethod:o,onCommitMethodChange:f,disabled:p,className:m}=e,h=p===void 0?!1:p,g;t[0]===f?g=t[1]:(g=e=>{(e===i.PullRequest||e===i.Direct)&&f(e)},t[0]=f,t[1]=g);let _;t[2]===m?_=t[3]:(_=r(u,m),t[2]=m,t[3]=_);let v;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,l.jsx)(s,{value:i.PullRequest,"aria-label":`Pull Requests`,className:r(n.body,d),children:`Pull Requests`}),t[4]=v):v=t[4];let y;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,l.jsx)(s,{value:i.Direct,"aria-label":`Direct Commits`,className:r(n.body,d),children:`Direct Commits`}),t[5]=y):y=t[5];let b;return t[6]!==o||t[7]!==h||t[8]!==g||t[9]!==_?(b=(0,l.jsxs)(a,{type:`single`,value:o,disabled:h,onValueChange:g,"aria-label":`Commit method`,className:_,children:[v,y]}),t[6]=o,t[7]=h,t[8]=g,t[9]=_,t[10]=b):b=t[10],b}function p(e){let t=(0,c.c)(9),{commitMethod:r,onCommitMethodChange:a}=e,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,l.jsx)(o,{children:`Commit method`}),t[0]=s):s=t[0];let u;t[1]!==r||t[2]!==a?(u=(0,l.jsx)(f,{commitMethod:r,onCommitMethodChange:a}),t[1]=r,t[2]=a,t[3]=u):u=t[3];let d=r===i.PullRequest?`Creates a feature branch and allows you to create pull requests.`:`Commits directly to the main branch without creating feature branches.`,p;t[4]===d?p=t[5]:(p=(0,l.jsx)(`p`,{className:n.bodyMuted,children:d}),t[4]=d,t[5]=p);let m;return t[6]!==u||t[7]!==p?(m=(0,l.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[s,u,p]}),t[6]=u,t[7]=p,t[8]=m):m=t[8],m}export{f as i,d as n,p as r,u as t};
1
+ import{Di as e,Oi as t,Rr as n,i as r,ii as i}from"./interactive-BrHVRHmQ.js";import{a,b as o,o as s}from"./onboarding-CQV3cOCc.js";var c=t(),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 t=(0,c.c)(11),{commitMethod:o,onCommitMethodChange:f,disabled:p,className:m}=e,h=p===void 0?!1:p,g;t[0]===f?g=t[1]:(g=e=>{(e===i.PullRequest||e===i.Direct)&&f(e)},t[0]=f,t[1]=g);let _;t[2]===m?_=t[3]:(_=r(u,m),t[2]=m,t[3]=_);let v;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,l.jsx)(s,{value:i.PullRequest,"aria-label":`Pull Requests`,className:r(n.body,d),children:`Pull Requests`}),t[4]=v):v=t[4];let y;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,l.jsx)(s,{value:i.Direct,"aria-label":`Direct Commits`,className:r(n.body,d),children:`Direct Commits`}),t[5]=y):y=t[5];let b;return t[6]!==o||t[7]!==h||t[8]!==g||t[9]!==_?(b=(0,l.jsxs)(a,{type:`single`,value:o,disabled:h,onValueChange:g,"aria-label":`Commit method`,className:_,children:[v,y]}),t[6]=o,t[7]=h,t[8]=g,t[9]=_,t[10]=b):b=t[10],b}function p(e){let t=(0,c.c)(9),{commitMethod:r,onCommitMethodChange:a}=e,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,l.jsx)(o,{children:`Commit method`}),t[0]=s):s=t[0];let u;t[1]!==r||t[2]!==a?(u=(0,l.jsx)(f,{commitMethod:r,onCommitMethodChange:a}),t[1]=r,t[2]=a,t[3]=u):u=t[3];let d=r===i.PullRequest?`Creates a feature branch and allows you to create pull requests.`:`Commits directly to the main branch without creating feature branches.`,p;t[4]===d?p=t[5]:(p=(0,l.jsx)(`p`,{className:n.bodyMuted,children:d}),t[4]=d,t[5]=p);let m;return t[6]!==u||t[7]!==p?(m=(0,l.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[s,u,p]}),t[6]=u,t[7]=p,t[8]=m):m=t[8],m}export{f as i,d as n,p as r,u as t};
@@ -1 +1 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Di as t,Oi as n,Rr as r,Sn as i,i as a,ki as o,pn as s,yn as c}from"./interactive-BrHVRHmQ.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-7n7LyU5o.js";var x=n(),S=e(o(),1),C=t(),w=f,T=v,E=S.forwardRef((e,t)=>{let n=(0,x.c)(14),i,o,s,u;n[0]===e?(i=n[1],o=n[2],s=n[3],u=n[4]):({className:o,inset:s,children:i,...u}=e,n[0]=e,n[1]=i,n[2]=o,n[3]=s,n[4]=u);let d;n[5]!==o||n[6]!==s?(d=a(a(r.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`),s&&`pl-8`,o),n[5]=o,n[6]=s,n[7]=d):d=n[7];let f;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,C.jsx)(c,{className:`ml-auto h-4 w-4`}),n[8]=f):f=n[8];let p;return n[9]!==i||n[10]!==u||n[11]!==t||n[12]!==d?(p=(0,C.jsxs)(l,{ref:t,className:d,...u,children:[i,f]}),n[9]=i,n[10]=u,n[11]=t,n[12]=d,n[13]=p):p=n[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 o;n[3]===r?o=n[4]:(o=a(`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]=o);let s;return n[5]!==i||n[6]!==t||n[7]!==o?(s=(0,C.jsx)(u,{ref:t,className:o,...i}),n[5]=i,n[6]=t,n[7]=o,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 o;n[3]===r?o=n[4]:(o=a(`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]=o);let s;return n[5]!==i||n[6]!==t||n[7]!==o?(s=(0,C.jsx)(_,{children:(0,C.jsx)(h,{ref:t,className:o,...i})}),n[5]=i,n[6]=t,n[7]=o,n[8]=s):s=n[8],s});O.displayName=h.displayName;var k=S.forwardRef((e,t)=>{let n=(0,x.c)(11),i,o,s;n[0]===e?(i=n[1],o=n[2],s=n[3]):({className:i,inset:o,...s}=e,n[0]=e,n[1]=i,n[2]=o,n[3]=s);let c;n[4]!==i||n[5]!==o?(c=a(a(r.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`),o&&`pl-8`,i),n[4]=i,n[5]=o,n[6]=c):c=n[6];let l;return n[7]!==s||n[8]!==t||n[9]!==c?(l=(0,C.jsx)(m,{ref:t,className:c,...s}),n[7]=s,n[8]=t,n[9]=c,n[10]=l):l=n[10],l});k.displayName=m.displayName;var A=S.forwardRef((e,t)=>{let n=(0,x.c)(14),o,s,c,l;n[0]===e?(o=n[1],s=n[2],c=n[3],l=n[4]):({className:c,children:s,checked:o,...l}=e,n[0]=e,n[1]=o,n[2]=s,n[3]=c,n[4]=l);let u;n[5]===c?u=n[6]:(u=a(a(r.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),n[5]=c,n[6]=u);let d;n[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)(i,{className:`h-4 w-4`})})}),n[7]=d):d=n[7];let f;return n[8]!==o||n[9]!==s||n[10]!==l||n[11]!==t||n[12]!==u?(f=(0,C.jsxs)(g,{ref:t,className:u,checked:o,...l,children:[d,s]}),n[8]=o,n[9]=s,n[10]=l,n[11]=t,n[12]=u,n[13]=f):f=n[13],f});A.displayName=g.displayName;var j=S.forwardRef((e,t)=>{let n=(0,x.c)(12),i,o,c;n[0]===e?(i=n[1],o=n[2],c=n[3]):({className:o,children:i,...c}=e,n[0]=e,n[1]=i,n[2]=o,n[3]=c);let l;n[4]===o?l=n[5]:(l=a(a(r.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`),o),n[4]=o,n[5]=l);let u;n[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`})})}),n[6]=u):u=n[6];let d;return n[7]!==i||n[8]!==c||n[9]!==t||n[10]!==l?(d=(0,C.jsxs)(b,{ref:t,className:l,...c,children:[u,i]}),n[7]=i,n[8]=c,n[9]=t,n[10]=l,n[11]=d):d=n[11],d});j.displayName=b.displayName;var M=S.forwardRef((e,t)=>{let n=(0,x.c)(11),i,o,s;n[0]===e?(i=n[1],o=n[2],s=n[3]):({className:i,inset:o,...s}=e,n[0]=e,n[1]=i,n[2]=o,n[3]=s);let c;n[4]!==i||n[5]!==o?(c=a(a(r.body,`px-2 py-1.5 font-semibold text-foreground`),o&&`pl-8`,i),n[4]=i,n[5]=o,n[6]=c):c=n[6];let l;return n[7]!==s||n[8]!==t||n[9]!==c?(l=(0,C.jsx)(d,{ref:t,className:c,...s}),n[7]=s,n[8]=t,n[9]=c,n[10]=l):l=n[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 o;n[3]===r?o=n[4]:(o=a(`-mx-1 my-1 h-px bg-divider`,r),n[3]=r,n[4]=o);let s;return n[5]!==i||n[6]!==t||n[7]!==o?(s=(0,C.jsx)(y,{ref:t,className:o,...i}),n[5]=i,n[6]=t,n[7]=o,n[8]=s):s=n[8],s});N.displayName=y.displayName;var P=e=>{let t=(0,x.c)(8),n,i;t[0]===e?(n=t[1],i=t[2]):({className:n,...i}=e,t[0]=e,t[1]=n,t[2]=i);let o;t[3]===n?o=t[4]:(o=a(r.compact,`ml-auto tracking-widest text-muted-foreground`,n),t[3]=n,t[4]=o);let s;return t[5]!==i||t[6]!==o?(s=(0,C.jsx)(`span`,{className:o,...i}),t[5]=i,t[6]=o,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};
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Di as t,Oi as n,Rr as r,Sn as i,i as a,ki as o,pn as s,yn as c}from"./interactive-BrHVRHmQ.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-CVjuv5OI.js";var x=n(),S=e(o(),1),C=t(),w=f,T=v,E=S.forwardRef((e,t)=>{let n=(0,x.c)(14),i,o,s,u;n[0]===e?(i=n[1],o=n[2],s=n[3],u=n[4]):({className:o,inset:s,children:i,...u}=e,n[0]=e,n[1]=i,n[2]=o,n[3]=s,n[4]=u);let d;n[5]!==o||n[6]!==s?(d=a(a(r.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`),s&&`pl-8`,o),n[5]=o,n[6]=s,n[7]=d):d=n[7];let f;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,C.jsx)(c,{className:`ml-auto h-4 w-4`}),n[8]=f):f=n[8];let p;return n[9]!==i||n[10]!==u||n[11]!==t||n[12]!==d?(p=(0,C.jsxs)(l,{ref:t,className:d,...u,children:[i,f]}),n[9]=i,n[10]=u,n[11]=t,n[12]=d,n[13]=p):p=n[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 o;n[3]===r?o=n[4]:(o=a(`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]=o);let s;return n[5]!==i||n[6]!==t||n[7]!==o?(s=(0,C.jsx)(u,{ref:t,className:o,...i}),n[5]=i,n[6]=t,n[7]=o,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 o;n[3]===r?o=n[4]:(o=a(`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]=o);let s;return n[5]!==i||n[6]!==t||n[7]!==o?(s=(0,C.jsx)(_,{children:(0,C.jsx)(h,{ref:t,className:o,...i})}),n[5]=i,n[6]=t,n[7]=o,n[8]=s):s=n[8],s});O.displayName=h.displayName;var k=S.forwardRef((e,t)=>{let n=(0,x.c)(11),i,o,s;n[0]===e?(i=n[1],o=n[2],s=n[3]):({className:i,inset:o,...s}=e,n[0]=e,n[1]=i,n[2]=o,n[3]=s);let c;n[4]!==i||n[5]!==o?(c=a(a(r.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`),o&&`pl-8`,i),n[4]=i,n[5]=o,n[6]=c):c=n[6];let l;return n[7]!==s||n[8]!==t||n[9]!==c?(l=(0,C.jsx)(m,{ref:t,className:c,...s}),n[7]=s,n[8]=t,n[9]=c,n[10]=l):l=n[10],l});k.displayName=m.displayName;var A=S.forwardRef((e,t)=>{let n=(0,x.c)(14),o,s,c,l;n[0]===e?(o=n[1],s=n[2],c=n[3],l=n[4]):({className:c,children:s,checked:o,...l}=e,n[0]=e,n[1]=o,n[2]=s,n[3]=c,n[4]=l);let u;n[5]===c?u=n[6]:(u=a(a(r.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),n[5]=c,n[6]=u);let d;n[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)(i,{className:`h-4 w-4`})})}),n[7]=d):d=n[7];let f;return n[8]!==o||n[9]!==s||n[10]!==l||n[11]!==t||n[12]!==u?(f=(0,C.jsxs)(g,{ref:t,className:u,checked:o,...l,children:[d,s]}),n[8]=o,n[9]=s,n[10]=l,n[11]=t,n[12]=u,n[13]=f):f=n[13],f});A.displayName=g.displayName;var j=S.forwardRef((e,t)=>{let n=(0,x.c)(12),i,o,c;n[0]===e?(i=n[1],o=n[2],c=n[3]):({className:o,children:i,...c}=e,n[0]=e,n[1]=i,n[2]=o,n[3]=c);let l;n[4]===o?l=n[5]:(l=a(a(r.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`),o),n[4]=o,n[5]=l);let u;n[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`})})}),n[6]=u):u=n[6];let d;return n[7]!==i||n[8]!==c||n[9]!==t||n[10]!==l?(d=(0,C.jsxs)(b,{ref:t,className:l,...c,children:[u,i]}),n[7]=i,n[8]=c,n[9]=t,n[10]=l,n[11]=d):d=n[11],d});j.displayName=b.displayName;var M=S.forwardRef((e,t)=>{let n=(0,x.c)(11),i,o,s;n[0]===e?(i=n[1],o=n[2],s=n[3]):({className:i,inset:o,...s}=e,n[0]=e,n[1]=i,n[2]=o,n[3]=s);let c;n[4]!==i||n[5]!==o?(c=a(a(r.body,`px-2 py-1.5 font-semibold text-foreground`),o&&`pl-8`,i),n[4]=i,n[5]=o,n[6]=c):c=n[6];let l;return n[7]!==s||n[8]!==t||n[9]!==c?(l=(0,C.jsx)(d,{ref:t,className:c,...s}),n[7]=s,n[8]=t,n[9]=c,n[10]=l):l=n[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 o;n[3]===r?o=n[4]:(o=a(`-mx-1 my-1 h-px bg-divider`,r),n[3]=r,n[4]=o);let s;return n[5]!==i||n[6]!==t||n[7]!==o?(s=(0,C.jsx)(y,{ref:t,className:o,...i}),n[5]=i,n[6]=t,n[7]=o,n[8]=s):s=n[8],s});N.displayName=y.displayName;var P=e=>{let t=(0,x.c)(8),n,i;t[0]===e?(n=t[1],i=t[2]):({className:n,...i}=e,t[0]=e,t[1]=n,t[2]=i);let o;t[3]===n?o=t[4]:(o=a(r.compact,`ml-auto tracking-widest text-muted-foreground`,n),t[3]=n,t[4]=o);let s;return t[5]!==i||t[6]!==o?(s=(0,C.jsx)(`span`,{className:o,...i}),t[5]=i,t[6]=o,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{Di as t,Oi as n,Rr as r,b as i,i as a,ki as o,o as s,on as ee,pt as c}from"./interactive-BrHVRHmQ.js";import{_t as l,rt as u}from"./react-vendor-CVjuv5OI.js";import{Do as d,Pa as f,bt as p,dt as te,mo as m,nn as h,qa as g,rt as _,yr as v}from"./onboarding-CQV3cOCc.js";import{n as y}from"./use-toast-hxHsVv6a.js";import{t as b}from"./query-keys-CbACxUOr.js";import{Gt as x,Jt as ne,Kt as re,O as S,Qt as C,Ut as w,Wt as T,qt as E}from"./index-BH6Ht-w_.js";import{t as D}from"./delete-confirm-dialog-V9X76h-2.js";import{i as O,r as k}from"./table-Cb2C1rQy.js";var A=e(o(),1),j=n(),M=25;function ie(){let e=(0,j.c)(12),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={queryKey:b.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 v(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(g(f.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 m(f.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=t(),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)(p,{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}=S(),{toast:t}=y(),[n,o]=(0,A.useState)(!1),[l,f]=(0,A.useState)(!1),{visibleColumns:m,isColumnVisible:g,setColumnVisible:v}=R(),{conversations:b,isInitialLoading:j,isLoadingMore:M,error:N,hasNextPage:F,fetchNextPage:I,refetch:L}=ie(),G=V+m.length,K=(0,A.useCallback)(()=>{F&&!M&&I()},[I,F,M]);async function q(){f(!0);try{await h(),await L(),o(!1),t({title:`Conversation history cleared`})}catch(e){t({title:`Failed to clear conversation history`,description:e instanceof Error?e.message:String(e),variant:`destructive`})}finally{f(!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)(c,{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 g(e.id)?ge(t,e.id):null}),(0,z.jsx)(k,{className:le,"aria-label":`Last updated ${s(t.lastMessageAt)} ago`,children:s(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 g(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:b.length>0?Q:void 0,action:(0,z.jsxs)(w,{children:[(0,z.jsx)(C,{asChild:!0,children:(0,z.jsx)(d,{type:`button`,variant:`ghost`,size:`icon`,className:`h-8 w-8`,"aria-label":`Choose columns`,children:(0,z.jsx)(ee,{className:`h-4 w-4`})})}),(0,z.jsxs)(x,{align:`end`,className:`w-48`,children:[(0,z.jsx)(E,{className:r.body,children:`Columns`}),P.map(function(e){return(0,z.jsx)(T,{checked:g(e.id),onCheckedChange:t=>{v(e.id,t===!0)},onSelect:e=>{e.preventDefault()},children:e.label},e.id)}),(0,z.jsx)(ne,{}),(0,z.jsxs)(re,{className:a(r.body,`gap-2 text-destructive focus:text-destructive`),disabled:b.length===0,onSelect:()=>o(!0),children:[(0,z.jsx)(i,{className:`h-4 w-4`}),`Clear history`]})]})]})}),(0,z.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:j?(0,z.jsx)(p,{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)(d,{onClick:()=>void L(),children:`Try again`})]})}):b.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:b,computeItemKey:(e,t)=>t.conversationId,itemContent:X,endReached:K,defaultItemHeight:B,increaseViewportBy:B*5,components:Y})})]}),(0,z.jsx)(D,{open:n,onOpenChange:o,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{Di as t,Oi as n,Rr as r,i,ii as a,in as o,ki as s,ri as c,tr as l}from"./interactive-BrHVRHmQ.js";import{A as u,D as d,Do as f,Ha as p,O as m,Pr as h,T as g,Xa as _,a as v,b as y,br as b,en as x,go as S,ht as C,io as w,j as T,k as E,o as D,uo as O,wo as k,x as A}from"./onboarding-CQV3cOCc.js";import{D as j}from"./index-BH6Ht-w_.js";import{r as M}from"./commit-method-fields-CPKi4MLF.js";var N=e(s(),1),P=n(),F={"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 ee(e){return e.trim().toLowerCase().replace(/[\\/]+/g,` `).replace(/[^a-z0-9._ -]+/g,``).replace(/\s+/g,`-`).replace(/-+/g,`-`).replace(/^-|-$/g,``)}function te(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 ne=l(`app.create-project-dialog.ui`);async function re(){try{if(await x())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 h();return e?!0:(window.alert(`Failed to install Vite Plus:\n${t||`Unknown error`}`),!1)}catch(e){return ne.error(`Vite Plus check/install failed:`,e),!0}}function ie(e){let t=(0,P.c)(38),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=[],t[0]=n):n=t[0];let[r,i]=(0,N.useState)(n),[a,o]=(0,N.useState)(!1),s=Array.isArray(r)&&r.length>0,c;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(c=()=>{o(!0),b().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:m,templatesByTypeName:h}=p,g;if(t[8]!==h){g={};for(let e of Object.keys(h)){let t=h[e]??[];if(t.length===0)continue;let n=t.find(ce),r=t.filter(se),i=n?[n,...r]:t;g[e]=i[0].id}t[8]=h,t[9]=g}else g=t[9];let _=g,v;bb0:{if(!Array.isArray(r)){v=e;break bb0}if(r.find(t=>t.id===e)){v=e;break bb0}if(r.length===0){v=e;break bb0}let n=m[0],i;t[10]!==n||t[11]!==h?(i=n?h[n]??[]:[],t[10]=n,t[11]=h,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),v=(o??a[0])?.id??e}let y=v,x;bb1:{if(!y||!Array.isArray(r)||r.length===0){x=null;break bb1}let e;t[15]!==y||t[16]!==r?(e=r.find(e=>e.id===y)?.typeName??null,t[15]=y,t[16]=r,t[17]=e):e=t[17],x=e}let S=x,C;if(t[18]!==S||t[19]!==h){bb2:{let e=S?h[S]??[]:[];if(e.length<=1){C=e;break bb2}let t=e.find(ae),n=e.filter(I);C=t?[t,...n]:e}t[18]=S,t[19]=h,t[20]=C}else C=t[20];let w=C,T;t[21]!==y||t[22]!==r?(T=y&&Array.isArray(r)?r.find(e=>e.id===y):null,t[21]=y,t[22]=r,t[23]=T):T=t[23];let E=T,D,O;t[24]===y?(D=t[25],O=t[26]):(D=()=>{y&&k(y)},O=[y],t[24]=y,t[25]=D,t[26]=O),(0,N.useEffect)(D,O);let A;return t[27]!==y||t[28]!==_||t[29]!==s||t[30]!==E||t[31]!==S||t[32]!==r||t[33]!==h||t[34]!==a||t[35]!==m||t[36]!==w?(A={templates:r,templatesLoading:a,hasTemplates:s,loadTemplates:l,typeNames:m,templatesByTypeName:h,firstVariationIdByTypeName:_,effectiveTemplateId:y,selectedTypeNameFromEffective:S,variations:w,selectedTemplate:E},t[27]=y,t[28]=_,t[29]=s,t[30]=E,t[31]=S,t[32]=r,t[33]=h,t[34]=a,t[35]=m,t[36]=w,t[37]=A):A=t[37],A}function I(e){return e.variationName!==`Starter`}function ae(e){return e.variationName===`Starter`}function oe(e){return e.variationName===`Starter`}function se(e){return e.variationName!==`Starter`}function ce(e){return e.variationName===`Starter`}var L=t();function R(e){let t=(0,P.c)(10),{gitUrl:n,onGitUrlChange:r,canProceed:i,onNext:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,L.jsx)(y,{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,L.jsx)(C,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,L.jsx)(`div`,{className:`px-6 py-4`,children:(0,L.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[o,(0,L.jsx)(A,{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,P.c)(11),{templatesLoading:n,typeNames:a,templatesByTypeName:o,selectedTypeName:s,loadedImages:c,onImageLoad:l,onSelectType:u,onSelectTypeAndAdvance:d}=e,f;t[0]!==c||t[1]!==l||t[2]!==u||t[3]!==d||t[4]!==s||t[5]!==o||t[6]!==n||t[7]!==a?(f=n?(0,L.jsx)(`p`,{className:i(r.bodyMuted,`col-span-full p-4`),children:`Loading…`}):a.map(e=>{let t=o[e]?.[0]?.type,n=t?F[t]:null,a=s===e;return(0,L.jsxs)(`button`,{type:`button`,onClick:()=>u(e),onDoubleClick:()=>d(e),className:i(`group flex flex-col items-center gap-0 rounded-lg px-1 py-1 text-center transition-colors`,a?`text-accent-foreground`:`text-foreground`),children:[(0,L.jsx)(`div`,{className:i(`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]`,a&&`ring-[3px] ring-brand`),children:n?(0,L.jsx)(`img`,{src:`/template-types/${n}`,alt:``,className:i(`relative size-8 shrink-0 transition-opacity duration-300`,c.has(n)?`opacity-100`:`opacity-0`),onLoad:()=>l(n),"aria-hidden":!0}):null}),(0,L.jsx)(`span`,{className:i(r.compact,`w-full truncate pt-1 font-medium`),children:e})]},e)}),t[0]=c,t[1]=l,t[2]=u,t[3]=d,t[4]=s,t[5]=o,t[6]=n,t[7]=a,t[8]=f):f=t[8];let p;return t[9]===f?p=t[10]:(p=(0,L.jsx)(`div`,{className:`flex flex-col flex-1 min-h-0 px-6 pb-4`,children:(0,L.jsx)(`div`,{className:`flex-1 min-h-0 flex flex-col py-2`,children:(0,L.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto -mx-1`,children:(0,L.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,P.c)(17),{projectName:n,onProjectNameChange:i,canSubmit:a,onSubmit:o}=e,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,L.jsx)(y,{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,L.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[s,(0,L.jsx)(A,{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=ee(n)||`project-name`,t[10]=n,t[11]=d);let f;t[12]===d?f=t[13]:(f=(0,L.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,L.jsx)(C,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,L.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 t=(0,P.c)(33),{projectNameDisplay:n,onProjectNameChange:i,variations:a,effectiveTemplateId:s,onTemplateIdChange:l,selectedTemplate:u,packageManager:d,onPackageManagerChange:f,commitMethod:p,onCommitMethodChange:m}=e,h;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,L.jsx)(y,{htmlFor:`projectName`,children:`Project Name`}),t[0]=h):h=t[0];let g;t[1]===i?g=t[2]:(g=e=>i(e.target.value),t[1]=i,t[2]=g);let _;t[3]!==n||t[4]!==g?(_=(0,L.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[h,(0,L.jsx)(A,{id:`projectName`,placeholder:`My App`,value:n,onChange:g,className:`w-full`})]}),t[3]=n,t[4]=g,t[5]=_):_=t[5];let b;t[6]!==s||t[7]!==l||t[8]!==a?(b=a.length>1&&(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(y,{children:`Variation`}),(0,L.jsx)(v,{type:`single`,value:s,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:a.map(pe)})]}),t[6]=s,t[7]=l,t[8]=a,t[9]=b):b=t[9];let x=u?.description??a[0]?.description??``,S;t[10]===u?S=t[11]:(S=u?.url&&(0,L.jsxs)(L.Fragment,{children:[` `,(0,L.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,L.jsx)(o,{className:`h-3 w-3`})]})]}),t[10]=u,t[11]=S);let w;t[12]!==x||t[13]!==S?(w=(0,L.jsxs)(`p`,{className:r.bodyMuted,children:[x,S]}),t[12]=x,t[13]=S,t[14]=w):w=t[14];let T;t[15]!==b||t[16]!==w?(T=(0,L.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[b,w]}),t[15]=b,t[16]=w,t[17]=T):T=t[17];let E;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,L.jsx)(y,{children:`Package manager`}),t[18]=E):E=t[18];let D;t[19]===f?D=t[20]:(D=e=>{e&&f(e)},t[19]=f,t[20]=D);let O;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(O=Object.values(c).map(fe),t[21]=O):O=t[21];let k;t[22]!==d||t[23]!==D?(k=(0,L.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[E,(0,L.jsx)(v,{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:O})]}),t[22]=d,t[23]=D,t[24]=k):k=t[24];let j;t[25]!==p||t[26]!==m?(j=(0,L.jsx)(M,{commitMethod:p,onCommitMethodChange:m}),t[25]=p,t[26]=m,t[27]=j):j=t[27];let N;return t[28]!==k||t[29]!==j||t[30]!==_||t[31]!==T?(N=(0,L.jsx)(C,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,L.jsxs)(`div`,{className:`px-6 py-4 flex flex-col gap-6`,children:[_,T,k,j]})}),t[28]=k,t[29]=j,t[30]=_,t[31]=T,t[32]=N):N=t[32],N}function fe(e){return(0,L.jsx)(D,{value:e.id,className:r.body,children:e.label},e.id)}function pe(e){return(0,L.jsx)(D,{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 ge(e){let t=(0,P.c)(5),{canGoToStep3:n,gitUrl:r,onGitUrlChange:i,onNext:a}=e,o;return t[0]!==n||t[1]!==r||t[2]!==i||t[3]!==a?(o=(0,L.jsx)(R,{gitUrl:r,onGitUrlChange:i,canProceed:n,onNext:a}),t[0]=n,t[1]=r,t[2]=i,t[3]=a,t[4]=o):o=t[4],o}function _e(e){let t=(0,P.c)(9),{templatesLoading:n,typeNames:r,templatesByTypeName:i,selectedTypeNameFromEffective:a,loadedImages:o,onImageLoad:s,onSelectType:c,onSelectTypeAndAdvance:l}=e,u;return t[0]!==o||t[1]!==s||t[2]!==c||t[3]!==l||t[4]!==a||t[5]!==i||t[6]!==n||t[7]!==r?(u=(0,L.jsx)(le,{templatesLoading:n,typeNames:r,templatesByTypeName:i,selectedTypeName:a,loadedImages:o,onImageLoad:s,onSelectType:c,onSelectTypeAndAdvance:l}),t[0]=o,t[1]=s,t[2]=c,t[3]=l,t[4]=a,t[5]=i,t[6]=n,t[7]=r,t[8]=u):u=t[8],u}function ve(e){let t=(0,P.c)(5),{canGoToStep3:n,projectName:r,onProjectNameChange:i,onSubmitFolder:a}=e,o;return t[0]!==n||t[1]!==i||t[2]!==a||t[3]!==r?(o=(0,L.jsx)(ue,{projectName:r,onProjectNameChange:i,canSubmit:n,onSubmit:a}),t[0]=n,t[1]=i,t[2]=a,t[3]=r,t[4]=o):o=t[4],o}function ye(e){let t=(0,P.c)(11),{projectNameDisplay:n,onProjectNameChange:r,variations:i,effectiveTemplateId:a,onTemplateIdChange:o,selectedTemplate:s,packageManager:c,onPackageManagerChange:l,commitMethod:u,onCommitMethodChange:d}=e,f;return t[0]!==u||t[1]!==a||t[2]!==d||t[3]!==l||t[4]!==r||t[5]!==o||t[6]!==c||t[7]!==n||t[8]!==s||t[9]!==i?(f=(0,L.jsx)(de,{projectNameDisplay:n,onProjectNameChange:r,variations:i,effectiveTemplateId:a,onTemplateIdChange:o,selectedTemplate:s,packageManager:c,onPackageManagerChange:l,commitMethod:u,onCommitMethodChange:d}),t[0]=u,t[1]=a,t[2]=d,t[3]=l,t[4]=r,t[5]=o,t[6]=c,t[7]=n,t[8]=s,t[9]=i,t[10]=f):f=t[10],f}function be(e){let t=(0,P.c)(3),{commitMethod:n,onCommitMethodChange:r}=e,i;return t[0]!==n||t[1]!==r?(i=(0,L.jsx)(C,{className:`min-h-0 flex-1 overflow-hidden`,children:(0,L.jsx)(`div`,{className:`flex flex-col gap-6 px-6 py-4`,children:(0,L.jsx)(M,{commitMethod:n,onCommitMethodChange:r})})}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i}function xe(e){let t=(0,P.c)(33),{step:n,mode:r,canGoToStep3:i,gitUrl:a,onGitUrlChange:o,onNext:s,templatesLoading:c,typeNames:l,templatesByTypeName:u,selectedTypeNameFromEffective:d,loadedImages:f,onImageLoad:p,onSelectType:m,onSelectTypeAndAdvance:h,projectName:g,onProjectNameChange:_,onSubmitFolder:v,projectNameDisplay:y,variations:b,effectiveTemplateId:x,onTemplateIdChange:S,selectedTemplate:C,packageManager:w,onPackageManagerChange:T,commitMethod:E,onCommitMethodChange:D}=e;switch(`${n}:${r}`){case`2:clone`:{let e;return t[0]!==i||t[1]!==a||t[2]!==o||t[3]!==s?(e=(0,L.jsx)(ge,{canGoToStep3:i,gitUrl:a,onGitUrlChange:o,onNext:s}),t[0]=i,t[1]=a,t[2]=o,t[3]=s,t[4]=e):e=t[4],e}case`2:webapp`:{let e;return t[5]!==f||t[6]!==p||t[7]!==m||t[8]!==h||t[9]!==d||t[10]!==u||t[11]!==c||t[12]!==l?(e=(0,L.jsx)(_e,{templatesLoading:c,typeNames:l,templatesByTypeName:u,selectedTypeNameFromEffective:d,loadedImages:f,onImageLoad:p,onSelectType:m,onSelectTypeAndAdvance:h}),t[5]=f,t[6]=p,t[7]=m,t[8]=h,t[9]=d,t[10]=u,t[11]=c,t[12]=l,t[13]=e):e=t[13],e}case`3:folder`:{let e;return t[14]!==i||t[15]!==_||t[16]!==v||t[17]!==g?(e=(0,L.jsx)(ve,{canGoToStep3:i,projectName:g,onProjectNameChange:_,onSubmitFolder:v}),t[14]=i,t[15]=_,t[16]=v,t[17]=g,t[18]=e):e=t[18],e}case`3:webapp`:{let e;return t[19]!==E||t[20]!==x||t[21]!==D||t[22]!==T||t[23]!==_||t[24]!==S||t[25]!==w||t[26]!==y||t[27]!==C||t[28]!==b?(e=(0,L.jsx)(ye,{projectNameDisplay:y,onProjectNameChange:_,variations:b,effectiveTemplateId:x,onTemplateIdChange:S,selectedTemplate:C,packageManager:w,onPackageManagerChange:T,commitMethod:E,onCommitMethodChange:D}),t[19]=E,t[20]=x,t[21]=D,t[22]=T,t[23]=_,t[24]=S,t[25]=w,t[26]=y,t[27]=C,t[28]=b,t[29]=e):e=t[29],e}default:{let e;return t[30]!==E||t[31]!==D?(e=(0,L.jsx)(be,{commitMethod:E,onCommitMethodChange:D}),t[30]=E,t[31]=D,t[32]=e):e=t[32],e}}}function Se(e){let t=(0,P.c)(28),{step:n,mode:r,canGoToStep3:i,projectName:a,projectNameDisplay:o,isCheckingVp:s,onBack:c,onNext:l,onSubmitClone:u,onSubmitFolder:d,onSubmitWebApp:p}=e,m;t[0]===c?m=t[1]:(m=(0,L.jsx)(f,{variant:`ghost`,onClick:c,children:`Back`}),t[0]=c,t[1]=m);let h;t[2]!==i||t[3]!==r||t[4]!==l||t[5]!==n?(h=n===2&&r!==`folder`&&(0,L.jsx)(f,{onClick:l,disabled:!i,children:`Next`}),t[2]=i,t[3]=r,t[4]=l,t[5]=n,t[6]=h):h=t[6];let g;t[7]!==r||t[8]!==u||t[9]!==n?(g=n===3&&r===`clone`&&(0,L.jsx)(f,{onClick:u,children:`Create Project`}),t[7]=r,t[8]=u,t[9]=n,t[10]=g):g=t[10];let _;t[11]!==r||t[12]!==d||t[13]!==a||t[14]!==n?(_=n===3&&r===`folder`&&(0,L.jsx)(f,{onClick:d,disabled:!a.trim()||!ee(a),children:`Create Project`}),t[11]=r,t[12]=d,t[13]=a,t[14]=n,t[15]=_):_=t[15];let v;t[16]!==s||t[17]!==r||t[18]!==p||t[19]!==o||t[20]!==n?(v=n===3&&r===`webapp`&&(0,L.jsx)(f,{onClick:p,disabled:!o.trim()||s,children:s?`Preparing...`:`Create Project`}),t[16]=s,t[17]=r,t[18]=p,t[19]=o,t[20]=n,t[21]=v):v=t[21];let y;return t[22]!==m||t[23]!==h||t[24]!==g||t[25]!==_||t[26]!==v?(y=(0,L.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,L.jsxs)(E,{children:[m,h,g,_,v]})}),t[22]=m,t[23]=h,t[24]=g,t[25]=_,t[26]=v,t[27]=y):y=t[27],y}function z(e){let t=(0,P.c)(117),{open:n,onOpenChange:r,onDialogDismissed:i,initialMode:o,onSubmitClone:s,onSubmitWebApp:c,onSubmitFolder:l}=e,[f,h]=(0,N.useState)(o??`clone`),v=o??`clone`,y;t[0]===v?y=t[1]:(y=me(v),t[0]=v,t[1]=y);let[b,x]=(0,N.useState)(y),[C,E]=(0,N.useState)(``),D;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(D=p(a.PullRequest),t[2]=D):D=t[2];let[k,A]=(0,N.useState)(D),[M,F]=(0,N.useState)(`My App`),[ne,I]=(0,N.useState)(!1),ae;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(ae=w(),t[3]=ae):ae=t[3];let[oe,se]=(0,N.useState)(ae),ce;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(ce=_(),t[4]=ce):ce=t[4];let[R,le]=(0,N.useState)(ce),[ue,de]=(0,N.useState)(!1),fe;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(fe=new Set,t[5]=fe):fe=t[5];let[pe,ge]=(0,N.useState)(fe),_e;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(_e=e=>{ge(t=>new Set(t).add(e))},t[6]=_e):_e=t[6];let ve=_e,{templatesLoading:ye,hasTemplates:be,loadTemplates:z,typeNames:we,templatesByTypeName:Te,firstVariationIdByTypeName:B,effectiveTemplateId:V,selectedTypeNameFromEffective:H,variations:Ee,selectedTemplate:U}=ie(oe),De,Oe;t[7]!==be||t[8]!==o||t[9]!==z||t[10]!==n?(De=()=>{if(!n||!o)return;let e=he(o);h(o),x(me(o)),E(``),F(e.projectName),I(e.projectNameUserEdited),ge(e.loadedImages),o===`webapp`&&!be&&z()},Oe=[n,o,be,z],t[7]=be,t[8]=o,t[9]=z,t[10]=n,t[11]=De,t[12]=Oe):(De=t[11],Oe=t[12]),(0,N.useEffect)(De,Oe);let W=ne?M:H?`My ${H} App`:`My App`,ke;t[13]!==i||t[14]!==r?(ke=function(){i?.(),h(`clone`),x(2),E(``),F(`My App`),I(!1),ge(new Set),r(!1)},t[13]=i,t[14]=r,t[15]=ke):ke=t[15];let G=ke,Ae;t[16]!==b||t[17]!==f||t[18]!==G?(Ae=function(){if(b===2||f===`folder`){G();return}x(2)},t[16]=b,t[17]=f,t[18]=G,t[19]=Ae):Ae=t[19];let je=Ae,Me;t[20]!==C||t[21]!==f||t[22]!==M||t[23]!==H?(Me=f===`clone`?C.trim().length>0:f===`folder`?M.trim().length>0&&!!ee(M):H!==null,t[20]=C,t[21]=f,t[22]=M,t[23]=H,t[24]=Me):Me=t[24];let K=Me,Ne;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(Ne=function(e){A(e),O(e)},t[25]=Ne):Ne=t[25];let Pe=Ne,Fe;t[26]!==k||t[27]!==C||t[28]!==r||t[29]!==s?(Fe=function(){if(!C.trim())return;let e=C.trim();E(``),x(2),r(!1),h(`clone`),s(e,k).catch(Ce)},t[26]=k,t[27]=C,t[28]=r,t[29]=s,t[30]=Fe):Fe=t[30];let Ie=Fe,Le;t[31]!==V||t[32]!==r||t[33]!==c||t[34]!==R||t[35]!==W||t[36]!==U?.variation?(Le=async function(){if(!W.trim()||!V||!ee(W))return;if(U?.variation===`vite-plus`){de(!0);let e=await re();if(de(!1),!e)return}let e=W.trim();F(``),I(!1),x(2),r(!1),h(`clone`),c(e,V,R)},t[31]=V,t[32]=r,t[33]=c,t[34]=R,t[35]=W,t[36]=U?.variation,t[37]=Le):Le=t[37];let Re=Le,ze;t[38]!==r||t[39]!==l||t[40]!==M?(ze=function(){let e=M.trim();!e||!ee(e)||(F(``),I(!1),x(2),r(!1),h(`clone`),l(e))},t[38]=r,t[39]=l,t[40]=M,t[41]=ze):ze=t[41];let q=ze,J=b,Be=f===`folder`?1:b-1,Ve;t[42]!==K||t[43]!==b||t[44]!==f?(Ve=function(e){return f===`folder`?e===1:e===1?b>2:b>=3||b===2&&K},t[42]=K,t[43]=b,t[44]=f,t[45]=Ve):Ve=t[45];let He=Ve,Ue;t[46]===f?Ue=t[47]:(Ue=function(e){f!==`folder`&&x(e===1?2:3)},t[46]=f,t[47]=Ue);let We=Ue,Ge;t[48]!==f||t[49]!==H||t[50]!==J?(Ge=te(J,f,H),t[48]=f,t[49]=H,t[50]=J,t[51]=Ge):Ge=t[51];let Y=Ge,Ke=f!==`folder`,qe;t[52]===Symbol.for(`react.memo_cache_sentinel`)?(qe=function(e){F(e),I(!0)},t[52]=qe):qe=t[52];let Je=qe,Ye;t[53]===B?Ye=t[54]:(Ye=function(e){se(B[e]??``)},t[53]=B,t[54]=Ye);let Xe=Ye,Ze;t[55]===B?Ze=t[56]:(Ze=function(e){se(B[e]??``),x(3)},t[55]=B,t[56]=Ze);let Qe=Ze,$e;t[57]===Symbol.for(`react.memo_cache_sentinel`)?($e=function(e){le(e),S(e)},t[57]=$e):$e=t[57];let et=$e,tt;t[58]===Symbol.for(`react.memo_cache_sentinel`)?(tt=function(){x(3)},t[58]=tt):tt=t[58];let nt=tt,X;t[59]===G?X=t[60]:(X=e=>!e&&G(),t[59]=G,t[60]=X);let Z;t[61]!==He||t[62]!==Be||t[63]!==We||t[64]!==Ke?(Z=Ke?(0,L.jsx)(j,{currentStep:Be,canGoToStep:He,onGoToStep:We}):null,t[61]=He,t[62]=Be,t[63]=We,t[64]=Ke,t[65]=Z):Z=t[65];let rt;t[66]===Y.title?rt=t[67]:(rt=(0,L.jsx)(T,{children:Y.title}),t[66]=Y.title,t[67]=rt);let Q;t[68]===Y.description?Q=t[69]:(Q=(0,L.jsx)(m,{children:Y.description}),t[68]=Y.description,t[69]=Q);let it;t[70]!==rt||t[71]!==Q?(it=(0,L.jsxs)(u,{children:[rt,Q]}),t[70]=rt,t[71]=Q,t[72]=it):it=t[72];let at;t[73]!==Z||t[74]!==it?(at=(0,L.jsxs)(`div`,{className:`px-6 pb-2 pt-6`,children:[Z,it]}),t[73]=Z,t[74]=it,t[75]=at):at=t[75];let ot;t[76]!==K||t[77]!==k||t[78]!==V||t[79]!==C||t[80]!==Xe||t[81]!==Qe||t[82]!==q||t[83]!==pe||t[84]!==f||t[85]!==R||t[86]!==M||t[87]!==W||t[88]!==U||t[89]!==H||t[90]!==J||t[91]!==Te||t[92]!==ye||t[93]!==we||t[94]!==Ee?(ot=(0,L.jsx)(xe,{step:J,mode:f,canGoToStep3:K,gitUrl:C,onGitUrlChange:E,onNext:nt,templatesLoading:ye,typeNames:we,templatesByTypeName:Te,selectedTypeNameFromEffective:H,loadedImages:pe,onImageLoad:ve,onSelectType:Xe,onSelectTypeAndAdvance:Qe,projectName:M,onProjectNameChange:Je,onSubmitFolder:q,projectNameDisplay:W,variations:Ee,effectiveTemplateId:V,onTemplateIdChange:se,selectedTemplate:U,packageManager:R,onPackageManagerChange:et,commitMethod:k,onCommitMethodChange:Pe}),t[76]=K,t[77]=k,t[78]=V,t[79]=C,t[80]=Xe,t[81]=Qe,t[82]=q,t[83]=pe,t[84]=f,t[85]=R,t[86]=M,t[87]=W,t[88]=U,t[89]=H,t[90]=J,t[91]=Te,t[92]=ye,t[93]=we,t[94]=Ee,t[95]=ot):ot=t[95];let st;t[96]===Re?st=t[97]:(st=()=>void Re(),t[96]=Re,t[97]=st);let ct;t[98]!==K||t[99]!==je||t[100]!==Ie||t[101]!==q||t[102]!==ue||t[103]!==f||t[104]!==M||t[105]!==W||t[106]!==J||t[107]!==st?(ct=(0,L.jsx)(Se,{step:J,mode:f,canGoToStep3:K,projectName:M,projectNameDisplay:W,isCheckingVp:ue,onBack:je,onNext:nt,onSubmitClone:Ie,onSubmitFolder:q,onSubmitWebApp:st}),t[98]=K,t[99]=je,t[100]=Ie,t[101]=q,t[102]=ue,t[103]=f,t[104]=M,t[105]=W,t[106]=J,t[107]=st,t[108]=ct):ct=t[108];let $;t[109]!==at||t[110]!==ot||t[111]!==ct?($=(0,L.jsxs)(d,{className:`flex h-[min(42rem,90dvh)] max-w-2xl flex-col overflow-hidden p-0`,children:[at,ot,ct]}),t[109]=at,t[110]=ot,t[111]=ct,t[112]=$):$=t[112];let lt;return t[113]!==n||t[114]!==X||t[115]!==$?(lt=(0,L.jsx)(g,{open:n,onOpenChange:X,children:$}),t[113]=n,t[114]=X,t[115]=$,t[116]=lt):lt=t[116],lt}function Ce(){}export{z as CreateProjectDialog,z as default};
@@ -0,0 +1 @@
1
+ import{c as e,tr as t}from"./interactive-BrHVRHmQ.js";import{Fr as n,mn as r}from"./onboarding-CQV3cOCc.js";import{J as i}from"./store-fffs6-y9.js";import{t as a}from"./ndjson-stream-DeGpE5o5.js";function o(e,t,n){return JSON.stringify([{type:`tool_use`,name:`bash`,id:t,input:e===null?{}:{command:e},...n?.displayName?{displayName:n.displayName}:{},...n?.activeDisplayName?{activeDisplayName:n.activeDisplayName}:{}}])}function s(e,t,n,r){return JSON.stringify([{type:`tool-result`,toolCallId:e,toolName:`bash`,content:t,isError:n,...r?.displayName?{displayName:r.displayName}:{},...r?.activeDisplayName?{activeDisplayName:r.activeDisplayName}:{}}])}function c(e,t,n,r,i){return e+s(t,n,r,i)}function l(e){return{messageId:e.messageId,sender:`agent`,content:o(e.command,e.toolCallId,e.labels),contentType:`markdown`,timestamp:new Date().toISOString(),isThinking:!1}}var u={create:`Creating thread`,delete:`Deleting thread`},d={create:`Created thread`,delete:`Deleted thread`},f={create:`Thread creation failed`,delete:`Thread deletion failed`},p={webapp:`Creating app`,clone:`Cloning repository`,folder:`Creating project`,zip:`Creating project from zip`},m={webapp:`App creation failed`,clone:`Clone failed`,folder:`Project creation failed`,zip:`Project creation failed`};function h(e){return e?.kind===`create`||e?.kind===`create-project`}function g(e){return e.mode??`webapp`}function _(e){return e.kind===`create-project`?p[g(e)]:u[e.kind]}function v(e){return e.kind===`create-project`?m[g(e)]:f[e.kind]}function y(e){return{displayName:_(e),activeDisplayName:_(e)}}function b(e,t){return t?`The branch I created is ${t} and I'm ready to start working on ${e}.`:`I'm ready to start working on ${e}.`}function x(e,t){let n=`thread-${e}-${t.threadId}`;return{kind:e,...e===`create-project`?{mode:t.mode??`webapp`}:{},threadId:t.threadId,projectId:t.projectId,projectName:t.projectName,toolCallId:n,messageId:`msg-${n}`}}function S(e){return x(`create`,e)}function C(e){return x(`delete`,e)}function w(e){return x(`create-project`,e)}function T(e){return l({messageId:e.messageId,command:e.projectName,toolCallId:e.toolCallId,labels:y(e)})}function E(e,t,n){e({type:i.SetThreadToolSession,session:t}),e({type:i.UpdateToolExecutionOutput,toolCallId:t.toolCallId,threadId:t.threadId,toolName:`bash`,executionOutput:n})}function D(e,t,n){e({type:i.SetThreadToolSession,session:t}),e({type:i.SelectThread,threadId:t.threadId,projectId:t.projectId,focusInput:!0}),e({type:i.SetMessages,messages:[T(t)]}),E(e,t,n)}function O(e,t,n){e({type:i.AddMessage,message:T(t),threadId:t.threadId}),E(e,t,n)}function k(e,t,n,r){r&&e({type:i.AppendToolExecutionOutput,toolCallId:t,threadId:n,toolName:`bash`,delta:r})}function A(e,t,n,r){let a=r?.isError===!0,s=h(t),l=s?b(t.projectName,t.kind===`create`?r?.branch:void 0):d.delete,u={displayName:a?v(t):l,activeDisplayName:_(t)},f=c(o(!a&&s?null:t.projectName,t.toolCallId,u),t.toolCallId,n,a,u);e({type:i.UpdateMessage,messageId:t.messageId,threadId:t.threadId,content:f}),s&&!a&&e({type:i.SetThreadCreationSummary,threadId:t.threadId,message:{...T(t),content:f}}),e({type:i.ClearToolCallProgress,toolCallId:t.toolCallId}),e({type:i.ClearThreadToolSession,threadId:t.threadId})}var j=t(`app.create-project-workspace`);async function M(t){let{projectId:o,title:s,project:c,dispatch:l,toast:u,refreshProjects:d,onThreadCreateStart:f}=t,p={current:null};try{let t=c?e(c):`project`;f?.(o);let m=s??(()=>{let e=c?.threads.map(e=>e.title)??[],t=/^thread-(\d+)$/i,n=0;for(let r of e){let e=r.match(t);e&&(n=Math.max(n,parseInt(e[1],10)))}return`thread-${n+1}`})(),h=await r(o,s);if(!h){await d();return}let g=!0,_,v=`Creating thread "${m}"...`,y=[{type:`system`,content:v}],b=`${v}\n`;function x(e,t){let n={type:t,content:e};b+=`${e}\n`;let r=p.current;if(!r){y.push(n);return}l({type:i.AppendTerminalLine,threadId:r.threadId,line:n}),k(l,r.toolCallId,r.threadId,`${e}\n`)}function C(e){l({type:i.AddCreatingThread,projectId:o,threadId:e,title:m}),l({type:i.AddProcessingThread,threadId:e}),l({type:i.ClearTerminalOutput,threadId:e});for(let t of y)l({type:i.AppendTerminalLine,threadId:e,line:t});y.length=0;let n=S({threadId:e,projectId:o,projectName:t});p.current=n,D(l,n,b)}function w(e){l({type:i.RemoveCreatingThread,projectId:o,threadId:e}),l({type:i.SelectProject,projectId:o})}try{await a(h,e=>{if(!e||typeof e!=`object`){typeof e==`string`&&j.error(`Failed to parse thread event`,e);return}let t=e;if(t.type===`progress`)!p.current&&typeof t.threadId==`string`&&C(t.threadId),x(typeof t.message==`string`?t.message:``,`output`);else if(t.type===`complete`){let e=t.thread;typeof e?.currentBranch==`string`&&(_=e.currentBranch)}else if(t.type===`error`){let e=typeof t.message==`string`?t.message:`Unknown error`;x(`Error: ${e}`,`error`),j.error(`Thread creation error:`,e),u({title:`Thread Creation Failed`,description:e,variant:`destructive`}),g=!1}});let e=p.current;return e&&(A(l,e,b,{branch:_,isError:!g}),l({type:i.RemoveProcessingThread,threadId:e.threadId}),g||w(e.threadId)),n(),await d(),g?p.current?.threadId:void 0}catch(e){let t=e instanceof Error?e.message:String(e),n=p.current;n&&(x(`Error: ${t}`,`error`),A(l,n,b,{isError:!0}),l({type:i.RemoveProcessingThread,threadId:n.threadId}),w(n.threadId)),u({title:`Thread Creation Failed`,description:t,variant:`destructive`});return}}catch(e){j.error(`Failed to create thread:`,e);let t=`Failed to create thread: ${e instanceof Error?e.message:`Unknown error`}`;l({type:i.AppendTerminalLine,line:{type:`error`,content:t}}),u({variant:`destructive`,title:`Thread Creation Failed`,description:t});return}}export{T as a,D as c,o as d,l as f,C as i,O as l,k as n,A as o,w as r,h as s,M as t,c as u};
@@ -1 +1 @@
1
- import{Di as e,Oi as t,Rr as n}from"./interactive-BrHVRHmQ.js";import{A as r,D as i,Eo as a,O as o,T as s,b as c,j as l,k as u,s as d,x as f}from"./onboarding-KBcwP-kU.js";import{U as p}from"./index-CJCQ4bTo.js";var m=t(),h=e();function g(e){let t=(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;t[0]!==_||t[1]!==x||t[2]!==y?(E=e=>{e||(y(``),x(``)),_(e)},t[0]=_,t[1]=x,t[2]=y,t[3]=E):E=t[3];let D;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,h.jsxs)(r,{children:[(0,h.jsx)(l,{children:`Create GitHub Repository`}),(0,h.jsx)(o,{children:`Create a new GitHub repository and push your local repository`})]}),t[4]=D):D=t[4];let O;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,h.jsx)(c,{htmlFor:`repo-name`,children:`Repository Name (optional)`}),t[5]=O):O=t[5];let k;t[6]===y?k=t[7]:(k=e=>y(e.target.value),t[6]=y,t[7]=k);let A;t[8]!==v||t[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})]}),t[8]=v,t[9]=k,t[10]=A):A=t[10];let j;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,h.jsx)(c,{htmlFor:`repo-description`,children:`Description (optional)`}),t[11]=j):j=t[11];let M;t[12]===x?M=t[13]:(M=e=>x(e.target.value),t[12]=x,t[13]=M);let N;t[14]!==b||t[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})]}),t[14]=b,t[15]=M,t[16]=N):N=t[16];let P;t[17]===C?P=t[18]:(P=e=>C(e===!0),t[17]=C,t[18]=P);let F;t[19]!==S||t[20]!==P?(F=(0,h.jsx)(d,{id:`repo-private`,checked:S,onCheckedChange:P}),t[19]=S,t[20]=P,t[21]=F):F=t[21];let I;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,h.jsx)(c,{htmlFor:`repo-private`,className:n.labelNormal,children:`Private repository`}),t[22]=I):I=t[22];let L;t[23]===F?L=t[24]:(L=(0,h.jsxs)(`div`,{className:`flex items-center gap-2`,children:[F,I]}),t[23]=F,t[24]=L);let R;t[25]!==L||t[26]!==A||t[27]!==N?(R=(0,h.jsxs)(`div`,{className:`grid gap-4 py-4`,children:[A,N,L]}),t[25]=L,t[26]=A,t[27]=N,t[28]=R):R=t[28];let z;t[29]===_?z=t[30]:(z=()=>_(!1),t[29]=_,t[30]=z);let B;t[31]!==w||t[32]!==z?(B=(0,h.jsx)(a,{variant:`outline`,onClick:z,disabled:w,children:`Cancel`}),t[31]=w,t[32]=z,t[33]=B):B=t[33];let V=w?`Creating...`:`Create & Push`,H;t[34]!==w||t[35]!==T||t[36]!==V?(H=(0,h.jsx)(a,{onClick:T,disabled:w,children:V}),t[34]=w,t[35]=T,t[36]=V,t[37]=H):H=t[37];let U;t[38]!==B||t[39]!==H?(U=(0,h.jsxs)(u,{children:[B,H]}),t[38]=B,t[39]=H,t[40]=U):U=t[40];let W;t[41]!==R||t[42]!==U?(W=(0,h.jsxs)(i,{children:[D,R,U]}),t[41]=R,t[42]=U,t[43]=W):W=t[43];let G;return t[44]!==g||t[45]!==E||t[46]!==W?(G=(0,h.jsx)(s,{open:g,onOpenChange:E,children:W}),t[44]=g,t[45]=E,t[46]=W,t[47]=G):G=t[47],G}export{g as CreateRepoDialog};
1
+ import{Di as e,Oi as t,Rr as n}from"./interactive-BrHVRHmQ.js";import{A as r,D as i,Do as a,O as o,T as s,b as c,j as l,k as u,s as d,x as f}from"./onboarding-CQV3cOCc.js";import{U as p}from"./index-BH6Ht-w_.js";var m=t(),h=e();function g(e){let t=(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;t[0]!==_||t[1]!==x||t[2]!==y?(E=e=>{e||(y(``),x(``)),_(e)},t[0]=_,t[1]=x,t[2]=y,t[3]=E):E=t[3];let D;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,h.jsxs)(r,{children:[(0,h.jsx)(l,{children:`Create GitHub Repository`}),(0,h.jsx)(o,{children:`Create a new GitHub repository and push your local repository`})]}),t[4]=D):D=t[4];let O;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,h.jsx)(c,{htmlFor:`repo-name`,children:`Repository Name (optional)`}),t[5]=O):O=t[5];let k;t[6]===y?k=t[7]:(k=e=>y(e.target.value),t[6]=y,t[7]=k);let A;t[8]!==v||t[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})]}),t[8]=v,t[9]=k,t[10]=A):A=t[10];let j;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,h.jsx)(c,{htmlFor:`repo-description`,children:`Description (optional)`}),t[11]=j):j=t[11];let M;t[12]===x?M=t[13]:(M=e=>x(e.target.value),t[12]=x,t[13]=M);let N;t[14]!==b||t[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})]}),t[14]=b,t[15]=M,t[16]=N):N=t[16];let P;t[17]===C?P=t[18]:(P=e=>C(e===!0),t[17]=C,t[18]=P);let F;t[19]!==S||t[20]!==P?(F=(0,h.jsx)(d,{id:`repo-private`,checked:S,onCheckedChange:P}),t[19]=S,t[20]=P,t[21]=F):F=t[21];let I;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,h.jsx)(c,{htmlFor:`repo-private`,className:n.labelNormal,children:`Private repository`}),t[22]=I):I=t[22];let L;t[23]===F?L=t[24]:(L=(0,h.jsxs)(`div`,{className:`flex items-center gap-2`,children:[F,I]}),t[23]=F,t[24]=L);let R;t[25]!==L||t[26]!==A||t[27]!==N?(R=(0,h.jsxs)(`div`,{className:`grid gap-4 py-4`,children:[A,N,L]}),t[25]=L,t[26]=A,t[27]=N,t[28]=R):R=t[28];let z;t[29]===_?z=t[30]:(z=()=>_(!1),t[29]=_,t[30]=z);let B;t[31]!==w||t[32]!==z?(B=(0,h.jsx)(a,{variant:`outline`,onClick:z,disabled:w,children:`Cancel`}),t[31]=w,t[32]=z,t[33]=B):B=t[33];let V=w?`Creating...`:`Create & Push`,H;t[34]!==w||t[35]!==T||t[36]!==V?(H=(0,h.jsx)(a,{onClick:T,disabled:w,children:V}),t[34]=w,t[35]=T,t[36]=V,t[37]=H):H=t[37];let U;t[38]!==B||t[39]!==H?(U=(0,h.jsxs)(u,{children:[B,H]}),t[38]=B,t[39]=H,t[40]=U):U=t[40];let W;t[41]!==R||t[42]!==U?(W=(0,h.jsxs)(i,{children:[D,R,U]}),t[41]=R,t[42]=U,t[43]=W):W=t[43];let G;return t[44]!==g||t[45]!==E||t[46]!==W?(G=(0,h.jsx)(s,{open:g,onOpenChange:E,children:W}),t[44]=g,t[45]=E,t[46]=W,t[47]=G):G=t[47],G}export{g as CreateRepoDialog};
@@ -1 +1 @@
1
- import{Di as e,Oi as t}from"./interactive-BrHVRHmQ.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-CLYxQdrK.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};
1
+ import{Di as e,Oi as t}from"./interactive-BrHVRHmQ.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-CQsuxtcP.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{Di as t,Oi as n,Rr as r,Rt as i,Vt as a,W as o,_t as s,at as c,bn as l,dt as u,f as d,i as f,it as p,ki as m,pt as h,tr as g,yn as _,zt as v}from"./interactive-BrHVRHmQ.js";import{f as y}from"./react-vendor-CVjuv5OI.js";import{A as b,Ai as x,Ct as S,D as C,Do as w,Dr as T,Gn as E,Ln as D,Qi as O,St as k,T as A,Tt as j,Xi as M,bt as N,f as P,ht as F,j as I,k as ee,sa as L}from"./onboarding-CQV3cOCc.js";import{c as R}from"./monaco-D1hpqXQ0.js";import{F as te,I as ne,J as z,n as re,r as ie}from"./store-fffs6-y9.js";import{t as B}from"./suspense-resource-DnYnmTbs.js";import{t as ae}from"./use-suspense-resource-BxOFFoEK.js";import{n as oe}from"./utils-SsF94Pkg.js";import{$t as se,Ht as V,I as H,J as ce,R as le,U,c as W,l as G,mt as ue,s as de,u as fe}from"./index-BH6Ht-w_.js";import{a as pe,n as K,r as q,t as J}from"./context-menu-D4UmleM5.js";import{t as me}from"./async-error-boundary-DajcyqVg.js";import"./monaco-setup-B_kQVsDW.js";var Y=e(m(),1),X=n(),Z=t();function Q(e){let t=(0,X.c)(12),{children:n,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:r.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]===n?l=t[5]:(l=(0,Z.jsx)(F,{className:`min-h-0 flex-1`,children:n}),t[4]=n,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,p=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=f(`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]!==p||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]!==p||t[25]!==h||t[26]!==r?(e=e=>(0,Z.jsx)($,{node:e,level:0,renderNode:r,defaultOpen:d,indent:p,childContainerClassName:l,openState:h,onToggle:w,forceOpenIds:b},e.id),t[20]=l,t[21]=d,t[22]=b,t[23]=w,t[24]=p,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]=p,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 f(f(r.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:n,files:s,error:c,selectedFileIndex:l,onFileSelect:u,onRevertFile:d}=e,{setStats:p}=H(),m;t[0]===s?m=t[1]:(m=s.reduce(Te,0),t[0]=s,t[1]=m);let h=m,g;t[2]===s?g=t[3]:(g=s.reduce(Se,0),t[2]=s,t[3]=g);let y=g,b,x;if(t[4]!==s.length||t[5]!==p||t[6]!==h||t[7]!==y?(b=()=>{p({fileCount:s.length,additions:h,deletions:y})},x=[s.length,h,y,p],t[4]=s.length,t[5]=p,t[6]=h,t[7]=y,t[8]=b,t[9]=x):(b=t[8],x=t[9]),(0,Y.useEffect)(b,x),c){let e;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(e=f(r.compact,`text-destructive text-center`),t[10]=e):e=t[10];let n;return t[11]===c?n=t[12]:(n=(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:c})})}),t[11]=c,t[12]=n),n}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:f(r.compact,r.bodyMuted,`text-center`),children:`No changes to review`})})}),t[13]=e):e=t[13],e}let S;t[14]!==s||t[15]!==u||t[16]!==d||t[17]!==l?(S=(e,t)=>{let{isOpen:n,toggle:c}=t,p=!!e.children,m=(0,Z.jsxs)(P,{onClick:()=>{p?c():e.fileIndex!==void 0&&u(e.fileIndex)},selected:!p&&e.fileIndex===l,className:f(r.conversationBody,`gap-1.5`),children:[p?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(_,{className:f(`h-3.5 w-3.5 shrink-0 text-muted-foreground transition-transform`,n&&`rotate-90`)}),n?(0,Z.jsx)(v,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`}):(0,Z.jsx)(i,{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)(`span`,{className:`truncate flex-1 min-w-0`,children:e.name}),!p&&e.status&&(0,Z.jsx)(`span`,{className:ye(e.status),children:be(e.status)})]});return p?m:(0,Z.jsxs)(J,{children:[(0,Z.jsx)(pe,{asChild:!0,children:(0,Z.jsx)(`div`,{children:m})}),(0,Z.jsx)(K,{children:(0,Z.jsxs)(q,{onClick:()=>{e.fileIndex!==void 0&&d?.(s[e.fileIndex])},children:[(0,Z.jsx)(o,{className:`mr-2 h-3.5 w-3.5`}),`Revert Change`]})})]})},t[14]=s,t[15]=u,t[16]=d,t[17]=l,t[18]=S):S=t[18];let C;return t[19]!==S||t[20]!==n?(C=(0,Z.jsx)(Q,{children:(0,Z.jsx)(`div`,{className:`px-1 pt-3 pb-2`,children:(0,Z.jsx)(he,{nodes:n,defaultOpen:!0,indent:16,childContainerClassName:`ml-4 border-l border-sidebar-border pl-2`,renderNode:S})})}),t[19]=S,t[20]=n,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:n,lineNumber:i,lineContent:a,initialComment:o,isEditing:s,onSave:c,onDelete:l,onClose:u}=e,[d,p]=(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)(I,{children:[`Comment on line `,i]})}),t[7]=i,t[8]=y);let x;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(x=f(r.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 S=a||` `,T;t[10]===S?T=t[11]:(T=(0,Z.jsx)(`div`,{className:x,children:S}),t[10]=S,t[11]=T);let E;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(E=e=>p(e.target.value),t[12]=E):E=t[12];let D;t[13]!==_||t[14]!==d?(D=(0,Z.jsx)(U,{autoFocus:!0,placeholder:`Add a comment... (Cmd+Enter to save)`,value:d,onChange:E,onKeyDown:_,rows:12,className:`resize-none text-base`}),t[13]=_,t[14]=d,t[15]=D):D=t[15];let O;t[16]!==s||t[17]!==l?(O=s&&l&&(0,Z.jsx)(w,{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 j=!k,M;t[21]!==h||t[22]!==j?(M=(0,Z.jsx)(w,{size:`sm`,onClick:h,disabled:j,children:`Save`}),t[21]=h,t[22]=j,t[23]=M):M=t[23];let N;t[24]!==O||t[25]!==M?(N=(0,Z.jsxs)(ee,{className:`gap-2 sm:gap-0`,children:[O,M]}),t[24]=O,t[25]=M,t[26]=N):N=t[26];let P;t[27]!==D||t[28]!==N||t[29]!==y||t[30]!==T?(P=(0,Z.jsxs)(C,{className:`max-w-2xl`,children:[y,T,D,N]}),t[27]=D,t[28]=N,t[29]=y,t[30]=T,t[31]=P):P=t[31];let F;return t[32]!==n||t[33]!==P||t[34]!==v?(F=(0,Z.jsx)(A,{open:n,onOpenChange:v,children:P}),t[32]=n,t[33]=P,t[34]=v,t[35]=F):F=t[35],F}function ke(e){let t=re(),n=ie(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:z.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}T(e).then(n=>{n.diffComments&&n.diffComments.length>0&&t({type:z.SetDiffComments,threadId:e,comments:n.diffComments}),a.current=!0}).catch(()=>{a.current=!0})},[e]),(0,Y.useEffect)(()=>{a.current&&x(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([M(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:R.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:R.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=()=>{h.current={original:[],modified:[]};let e=setTimeout(()=>T(),150);return()=>clearTimeout(e)},t[18]=O):O=t[18];let k;t[19]===a?k=t[20]:(k=[a,T],t[19]=a,t[20]=k),(0,Y.useEffect)(O,k);let A;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(A=()=>{T()},t[21]=A):A=t[21];let j;t[22]!==r||t[23]!==n||t[24]!==i||t[25]!==s||t[26]!==a?(j=[T,n,r,a,i,s],t[22]=r,t[23]=n,t[24]=i,t[25]=s,t[26]=a,t[27]=j):j=t[27],(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===R.MouseTargetType.GUTTER_GLYPH_MARGIN||e===R.MouseTargetType.GUTTER_LINE_NUMBERS||e===R.MouseTargetType.GUTTER_LINE_DECORATIONS||e===R.MouseTargetType.GUTTER_VIEW_ZONE}function We(e){return e!==null}function Ge(e){let t=(0,X.c)(6),{onRetry:n}=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)(N,{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:r.bodyMuted,children:`Loading review changes is taking longer than expected.`}),t[3]=c):c=t[3];let l;return t[4]===n?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)(w,{variant:`outline`,onClick:n,children:`Retry`})]})}),t[4]=n,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=()=>O(e,t,n),r[4]=t,r[5]=e,r[6]=n,r[7]=a):a=r[7];let o=ae(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:n,filePath:i,version:a,label:o}=e,s=qe(n,i,a),c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=f(r.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 p;return t[6]!==l||t[7]!==d?(p=(0,Z.jsxs)(`div`,{className:`flex flex-col h-full`,children:[l,d]}),t[6]=l,t[7]=d,t[8]=p):p=t[8],p}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)(N,{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)(N,{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)(N,{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)(69),{threadId:n,selectedFile:i,isImageFile:a,diffOriginal:o,diffModified:m,resolvedTheme:g,onEditorMount:v,diffEditorOptions:b,isPanelCollapsed:x,showTreeBackButton:C,onShowTree:T,onTogglePanel:E,isFullView:D,onToggleFullView:O,comments:A,activeCommentIndex:M,onPrevComment:N,onNextComment:P,onFixComments:F,isChatOpen:I,onOpenChat:ee,onCloseChat:L}=e,R=ie(Ze),z;t[0]===R?z=t[1]:(z=e=>te(e,R),t[0]=R,t[1]=z);let re=ie(z),B;t[2]===R?B=t[3]:(B=e=>ne(e,R),t[2]=R,t[3]=B);let ae=ie(B),oe=x&&`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`,V;t[4]===oe?V=t[5]:(V=f(`bg-transparent`,oe),t[4]=oe,t[5]=V);let H;t[6]!==x||t[7]!==T||t[8]!==E||t[9]!==C?(H=C?(0,Z.jsxs)(w,{variant:`ghost`,size:`icon`,className:`h-8 w-8 text-muted-foreground shrink-0`,onClick:T,children:[(0,Z.jsx)(p,{className:`h-4 w-4`}),(0,Z.jsx)(`span`,{className:`sr-only`,children:`Show file tree`})]}):(0,Z.jsxs)(w,{variant:`ghost`,size:`icon`,className:`h-8 w-8 text-muted-foreground shrink-0`,onClick:E,children:[x?(0,Z.jsx)(p,{className:`h-4 w-4`}):(0,Z.jsx)(c,{className:`h-4 w-4`}),(0,Z.jsx)(`span`,{className:`sr-only`,children:`Toggle file tree`})]}),t[6]=x,t[7]=T,t[8]=E,t[9]=C,t[10]=H):H=t[10];let U;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(U=f(r.label,`text-foreground`),t[11]=U):U=t[11];let W=i?i.path:`Review Changes`,G;t[12]===W?G=t[13]:(G=(0,Z.jsx)(`span`,{className:U,children:W}),t[12]=W,t[13]=G);let de;t[14]!==H||t[15]!==G?(de=(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[H,G]}),t[14]=H,t[15]=G,t[16]=de):de=t[16];let fe=x&&`ml-0`,pe=!x&&`ml-auto`,K;t[17]!==fe||t[18]!==pe?(K=f(`flex items-center gap-2`,fe,pe,`md:ml-auto`),t[17]=fe,t[18]=pe,t[19]=K):K=t[19];let q;t[20]!==D||t[21]!==a||t[22]!==O||t[23]!==i?(q=!a&&(0,Z.jsx)(w,{variant:`ghost`,size:`sm`,onClick:O,disabled:!i,className:f(r.compact,`h-8 gap-1 px-2`),children:D?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(u,{className:`h-3 w-3`}),` Show changes only`]}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(s,{className:`h-3 w-3`}),` Show full file`]})}),t[20]=D,t[21]=a,t[22]=O,t[23]=i,t[24]=q):q=t[24];let J;t[25]!==M||t[26]!==A.length||t[27]!==P||t[28]!==N?(J=A.length>0&&(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsxs)(k,{children:[(0,Z.jsx)(j,{asChild:!0,children:(0,Z.jsx)(w,{variant:`ghost`,size:`icon`,className:`h-8 w-8 rounded-full`,onClick:N,disabled:(M??0)===0,children:(0,Z.jsx)(l,{className:`h-3 w-3`})})}),(0,Z.jsx)(S,{children:`Previous comment`})]}),(0,Z.jsx)(`span`,{className:f(r.caption,`whitespace-nowrap`),children:A.length===1?`1 Comment`:`Comment ${(M??0)+1} of ${A.length}`}),(0,Z.jsxs)(k,{children:[(0,Z.jsx)(j,{asChild:!0,children:(0,Z.jsx)(w,{variant:`ghost`,size:`icon`,className:`h-8 w-8 rounded-full`,onClick:P,disabled:(M??0)===A.length-1,children:(0,Z.jsx)(_,{className:`h-3 w-3`})})}),(0,Z.jsx)(S,{children:`Next comment`})]})]}),t[25]=M,t[26]=A.length,t[27]=P,t[28]=N,t[29]=J):J=t[29];let me;t[30]!==A.length||t[31]!==F?(me=A.length>0&&(0,Z.jsxs)(k,{children:[(0,Z.jsx)(j,{asChild:!0,children:(0,Z.jsxs)(w,{size:`sm`,onClick:F,className:f(r.compact,`h-8 gap-1 px-3 bg-foreground text-background hover:bg-foreground/90`),children:[(0,Z.jsx)(h,{className:`h-3 w-3`}),`Fix all comments`]})}),(0,Z.jsx)(S,{children:`Send all comments to Tarsk for resolution`})]}),t[30]=A.length,t[31]=F,t[32]=me):me=t[32];let Y;t[33]!==K||t[34]!==q||t[35]!==J||t[36]!==me?(Y=(0,Z.jsxs)(`div`,{className:K,children:[q,J,me]}),t[33]=K,t[34]=q,t[35]=J,t[36]=me,t[37]=Y):Y=t[37];let Q;t[38]!==Y||t[39]!==V||t[40]!==de?(Q=(0,Z.jsxs)(se,{className:V,children:[de,Y]}),t[38]=Y,t[39]=V,t[40]=de,t[41]=Q):Q=t[41];let $;t[42]!==b||t[43]!==m||t[44]!==o||t[45]!==a||t[46]!==v||t[47]!==g||t[48]!==i||t[49]!==n?($=a&&i?(0,Z.jsx)(Ye,{threadId:n,file:i}):(0,Z.jsx)(y,{height:`100%`,language:Ve(i?.path||``),original:o,modified:m,keepCurrentOriginalModel:!0,keepCurrentModifiedModel:!0,theme:g===`dark`?`vs-dark`:`vs-light`,onMount:v,options:b}),t[42]=b,t[43]=m,t[44]=o,t[45]=a,t[46]=v,t[47]=g,t[48]=i,t[49]=n,t[50]=$):$=t[50];let he;t[51]!==re||t[52]!==R||t[53]!==I||t[54]!==L||t[55]!==ae?(he=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)(w,{variant:`ghost`,size:`icon`,className:`h-8 w-8`,onClick:L,children:[(0,Z.jsx)(d,{className:`h-4 w-4`}),(0,Z.jsx)(`span`,{className:`sr-only`,children:`Close chat`})]})}),(0,Z.jsx)(ue,{paneId:R,conversationId:re,children:(0,Z.jsx)(ce,{children:(0,Z.jsx)(le,{messages:ae})})})]}),t[51]=re,t[52]=R,t[53]=I,t[54]=L,t[55]=ae,t[56]=he):he=t[56];let ge;t[57]!==I||t[58]!==ee?(ge=!I&&(0,Z.jsxs)(k,{children:[(0,Z.jsx)(j,{asChild:!0,children:(0,Z.jsxs)(w,{size:`icon`,className:`pointer-events-auto h-12 w-12 rounded-full shadow-lg`,onClick:ee,children:[(0,Z.jsx)(h,{className:`h-5 w-5`}),(0,Z.jsx)(`span`,{className:`sr-only`,children:`Open review chat`})]})}),(0,Z.jsx)(S,{children:`Chat about this diff`})]}),t[57]=I,t[58]=ee,t[59]=ge):ge=t[59];let _e;t[60]!==he||t[61]!==ge?(_e=(0,Z.jsxs)(`div`,{className:`pointer-events-none absolute bottom-4 right-4 z-20 flex flex-col items-end gap-3`,children:[he,ge]}),t[60]=he,t[61]=ge,t[62]=_e):_e=t[62];let ve;t[63]!==$||t[64]!==_e?(ve=(0,Z.jsxs)(`div`,{className:`flex-1 bg-transparent relative`,children:[$,_e]}),t[63]=$,t[64]=_e,t[65]=ve):ve=t[65];let ye;return t[66]!==Q||t[67]!==ve?(ye=(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:[Q,ve]}),t[66]=Q,t[67]=ve,t[68]=ye):ye=t[68],ye}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)(W,{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:f(`flex min-h-0 w-full min-w-0 flex-1 flex-col overflow-hidden`,!r&&`hidden`),children:s}),(0,Z.jsx)(`div`,{className:f(`flex min-h-0 w-full min-w-0 flex-1 flex-col overflow-hidden`,r&&`hidden`),children:c})]}):(0,Z.jsxs)(fe,{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=g(`app.diff-view.ui`);function tt(e,t){if(!e)return{diffOriginal:``,diffModified:``};if(t)return{diffOriginal:e.oldContent,diffModified:e.newContent};let n=Ie(e);return n?{diffOriginal:Le(e.oldContent,n.original.startLine,n.original.endLine),diffModified:Le(e.newContent,n.modified.startLine,n.modified.endLine)}:{diffOriginal:e.oldContent,diffModified:e.newContent}}function nt(e,t){return!!(e&&(t||Re(e)))}function rt(e,t,n){let r=n?null:Ie(e),i=r?t.side===`original`?r.original:r.modified:null;return ze(t.lineNumber,i)}async function it(e,t){let n=t[e];if(n)return n;try{let e=await E(),t=Object.values(e).flat();return t.length>0?t[0]:null}catch(e){return et.error(`Failed to load models:`,e),null}}function at(e){let t=(0,X.c)(7),{treeData:n,files:r,error:i,selectedFileIndex:a,onFileSelect:o,onRevertFile:s}=e,c;return t[0]!==i||t[1]!==r||t[2]!==o||t[3]!==s||t[4]!==a||t[5]!==n?(c=(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:n,files:r,error:i,selectedFileIndex:a,onFileSelect:o,onRevertFile:s})}),t[0]=i,t[1]=r,t[2]=o,t[3]=s,t[4]=a,t[5]=n,t[6]=c):c=t[6],c}function ot(e){let t=(0,X.c)(10),{editingComment:n,pendingLine:r,onSave:i,onDelete:a,onClose:o}=e,s=`${n?.id??``}-${r?.lineNumber??``}-${r?.side??``}`,c=r!==null||n!==null,l=n?.lineNumber??r?.lineNumber??0,u=n?.lineContent??r?.lineContent??``,d=n?.comment,f=n!==null,p;return t[0]!==o||t[1]!==a||t[2]!==i||t[3]!==s||t[4]!==c||t[5]!==l||t[6]!==u||t[7]!==d||t[8]!==f?(p=(0,Z.jsx)(Oe,{open:c,lineNumber:l,lineContent:u,initialComment:d,isEditing:f,onSave:i,onDelete:a,onClose:o},s),t[0]=o,t[1]=a,t[2]=i,t[3]=s,t[4]=c,t[5]=l,t[6]=u,t[7]=d,t[8]=f,t[9]=p):p=t[9],p}function st(e,t){return Math.min(e,Math.max(t-1,0))}function ct(e,t,n,r){e(r??[]),t(e=>st(n??e,r?.length??1))}function lt(e,t,n){let r=st(t,e.length);return n?.files===e&&n.selectedFileIndex===r?n:{files:e,selectedFileIndex:r}}function ut(e,t,n,r){return{id:`comment-${Date.now()}`,filePath:t.path,fileIndex:n,lineNumber:e.lineNumber,lineContent:e.lineContent,comment:r,side:e.side}}function dt(e,t){return(t%e+e)%e}function ft(e,t,n,r){if(!e)return;let i=t[n.fileIndex];if(!i)return;let a=rt(i,n,r);(n.side===`original`?e.getOriginalEditor():e.getModifiedEditor()).revealLineInCenter(Math.max(1,a))}function pt(e,t,n){return{readOnly:!0,renderSideBySide:!e,ignoreTrimWhitespace:!1,renderOverviewRuler:!0,scrollBeyondLastLine:!1,minimap:{enabled:!1},folding:!1,glyphMargin:!0,lineNumbers:nt(t,n)?`on`:`off`,diffWordWrap:`on`,originalEditable:!1,automaticLayout:!0}}function mt(e,t){e.current&&(t?e.current.expand():e.current.collapse())}async function ht(e){return(await M(e)).files||[]}async function gt(e,t,n,r){try{return await L(e,t.path),await Promise.all([n(),r(!0)]),null}catch(e){return e instanceof Error?e.message:`Failed to revert file`}}async function _t({threadId:e,comments:t,selectedModel:n,clearComments:r,dispatch:i,onExit:a}){try{let{prompt:o}=await D(e,t);r(),i({type:z.SetPendingChatMessage,message:{threadId:e,message:o,model:n.id,provider:n.provider}}),a()}catch(e){et.error(`Failed to fix comments:`,e),typeof window<`u`&&window.alert(`Failed to process comments. Please try again.`)}}function vt(e,t){return e?.files??t??[]}function yt(e){return e?.selectedFileIndex??0}function bt(e){return e?.isBinary??!1}function xt(e,t,n,r){ct(e,t,n?.selectedFileIndex,r)}function St(e,t,n){n&&n(n=>lt(e,t,n))}function Ct(e,t,n,r){n(e),t&&r(!1)}async function wt(e,t,n,r){if(e){r(null);try{let r=await ht(e);t(r),n(e=>st(e,r.length))}catch(e){r(e instanceof Error?e.message:`Failed to load diff`)}}}async function Tt(e,t,n,r,i){let a=await gt(t,e,n,r);a&&i(a)}function Et(e,t,n,r,i,a){e?i(e):a({lineNumber:t,lineContent:n,side:r})}function Dt(e,t,n,r,i,a){return t&&r?[...e,ut(t,r,i,a)]:n?e.map(e=>e.id===n.id?{...e,comment:a}:e):e}function Ot(e,t){return t?e.filter(e=>e.id!==t.id):e}function kt(e,t){if(e.length===0)return null;let n=dt(e.length,t);return{idx:n,comment:e[n]}}function At(e,t,n,r,i,a,o,s,c,l){let u=kt(e,t);u&&(n(u.idx),r(u.comment.fileIndex),i&&a(!1),setTimeout(()=>{ft(o.current,s,u.comment,c),l()},100))}async function jt(e,t,n,r,i,a){let o=await it(e,t);if(!o){et.error(`No models available to process comments`);return}await _t({threadId:e,comments:n,selectedModel:o,clearComments:a,dispatch:r,onExit:i})}function Mt(e,t,n,r,i){let a=(0,X.c)(38),{fetchUnifiedStatus:o}=V(),s;a[0]!==n||a[1]!==t?(s=()=>vt(n,t),a[0]=n,a[1]=t,a[2]=s):s=a[2];let[c,l]=(0,Y.useState)(s),[u,d]=(0,Y.useState)(null),f;a[3]===n?f=a[4]:(f=()=>yt(n),a[3]=n,a[4]=f);let[p,m]=(0,Y.useState)(f),[h,g]=(0,Y.useState)(!0),_;a[5]!==n||a[6]!==t?(_=()=>{xt(l,m,n,t)},a[5]=n,a[6]=t,a[7]=_):_=a[7];let v=n?.selectedFileIndex,y;a[8]!==t||a[9]!==v?(y=[v,t],a[8]=t,a[9]=v,a[10]=y):y=a[10],(0,Y.useEffect)(_,y);let b;a[11]===Symbol.for(`react.memo_cache_sentinel`)?(b=()=>{g(!0)},a[11]=b):b=a[11];let x;a[12]===e?x=a[13]:(x=[e],a[12]=e,a[13]=x),(0,Y.useEffect)(b,x);let S,C;a[14]!==c||a[15]!==r||a[16]!==p?(S=()=>{St(c,p,r)},C=[c,r,p],a[14]=c,a[15]=r,a[16]=p,a[17]=S,a[18]=C):(S=a[17],C=a[18]),(0,Y.useEffect)(S,C);let w;a[19]===i?w=a[20]:(w=e=>{Ct(e,i,m,g)},a[19]=i,a[20]=w);let T=w,E;a[21]===Symbol.for(`react.memo_cache_sentinel`)?(E=()=>{g(!0)},a[21]=E):E=a[21];let D=E,O;a[22]===e?O=a[23]:(O=async()=>{await wt(e,l,m,d)},a[22]=e,a[23]=O);let k=O,A;a[24]!==o||a[25]!==k||a[26]!==e?(A=async t=>{await Tt(t,e,k,o,d)},a[24]=o,a[25]=k,a[26]=e,a[27]=A):A=a[27];let j=A,M;a[28]===c?M=a[29]:(M=ge(c),a[28]=c,a[29]=M);let N=M,P;return a[30]!==u||a[31]!==c||a[32]!==T||a[33]!==j||a[34]!==h||a[35]!==p||a[36]!==N?(P={files:c,error:u,selectedFileIndex:p,mobileShowTree:h,treeData:N,setSelectedFileIndex:m,setMobileShowTree:g,handleFileSelect:T,handleShowTree:D,handleRevertFile:j},a[30]=u,a[31]=c,a[32]=T,a[33]=j,a[34]=h,a[35]=p,a[36]=N,a[37]=P):P=a[37],P}function Nt(e,t,n,r){let i=(0,X.c)(17),[a,o]=(0,Y.useState)(null),[s,c]=(0,Y.useState)(null),l;i[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=e=>{let{existing:t,lineNumber:n,lineContent:r,side:i}=e;Et(t,n,r,i,c,o)},i[0]=l):l=i[0];let u=l,d;i[1]!==e||i[2]!==s||i[3]!==a||i[4]!==n||i[5]!==r||i[6]!==t?(d=i=>{t(Dt(e,a,s,n,r,i)),o(null),c(null)},i[1]=e,i[2]=s,i[3]=a,i[4]=n,i[5]=r,i[6]=t,i[7]=d):d=i[7];let f=d,p;i[8]!==s||i[9]!==t?(p=()=>{t(e=>Ot(e,s)),s&&c(null)},i[8]=s,i[9]=t,i[10]=p):p=i[10];let m=p,h;i[11]===Symbol.for(`react.memo_cache_sentinel`)?(h=()=>{o(null),c(null)},i[11]=h):h=i[11];let g=h,_;return i[12]!==s||i[13]!==m||i[14]!==f||i[15]!==a?(_={pendingLine:a,editingComment:s,handleLineGutterClick:u,handleSaveComment:f,handleDeleteComment:m,handleCloseCommentPopup:g},i[12]=s,i[13]=m,i[14]=f,i[15]=a,i[16]=_):_=i[16],_}function Pt(e){let t=(0,X.c)(19),{comments:n,files:r,isFullView:i,isMobile:a,activeCommentIndex:o,setActiveCommentIndex:s,setSelectedFileIndex:c,setMobileShowTree:l,diffEditorRef:u,applyAllDecorations:d}=e,f;t[0]!==d||t[1]!==n||t[2]!==u||t[3]!==r||t[4]!==i||t[5]!==a||t[6]!==s||t[7]!==l||t[8]!==c?(f=e=>{At(n,e,s,c,a,l,u,r,i,d)},t[0]=d,t[1]=n,t[2]=u,t[3]=r,t[4]=i,t[5]=a,t[6]=s,t[7]=l,t[8]=c,t[9]=f):f=t[9];let p=f,m;t[10]!==o||t[11]!==p?(m=()=>{p((o??0)-1)},t[10]=o,t[11]=p,t[12]=m):m=t[12];let h=m,g;t[13]!==o||t[14]!==p?(g=()=>{p((o??-1)+1)},t[13]=o,t[14]=p,t[15]=g):g=t[15];let _=g,v;return t[16]!==_||t[17]!==h?(v={handlePrevComment:h,handleNextComment:_},t[16]=_,t[17]=h,t[18]=v):v=t[18],v}function Ft(e,t,n,r,i,a){let o=(0,X.c)(9),s;o[0]!==n||o[1]!==r||o[2]!==i||o[3]!==t||o[4]!==a||o[5]!==e?(s=()=>jt(e,t,n,r,i,()=>a([])),o[0]=n,o[1]=r,o[2]=i,o[3]=t,o[4]=a,o[5]=e,o[6]=s):s=o[6];let c=s,l;return o[7]===c?l=o[8]:(l={handleFixComments:c},o[7]=c,o[8]=l),l}function It({threadId:e,selectedFile:t,isImageFile:n,diffOriginal:r,diffModified:i,resolvedTheme:a,onEditorMount:o,diffEditorOptions:s,isPanelCollapsed:c,showTreeBackButton:l,onShowTree:u,onTogglePanel:d,isFullView:f,onToggleFullView:p,comments:m,activeCommentIndex:h,onPrevComment:g,onNextComment:_,onFixComments:v,isChatOpen:y,onOpenChat:b,onCloseChat:x}){return{threadId:e,selectedFile:t,isImageFile:n,diffOriginal:r,diffModified:i,resolvedTheme:a,onEditorMount:o,diffEditorOptions:s,isPanelCollapsed:c,showTreeBackButton:l,onShowTree:u,onTogglePanel:d,isFullView:f,onToggleFullView:p,comments:m,activeCommentIndex:h,onPrevComment:g,onNextComment:_,onFixComments:v,isChatOpen:y,onOpenChat:b,onCloseChat:x}}function Lt({threadId:e,selectedFile:t,isImageFile:n,diffOriginal:r,diffModified:i,resolvedTheme:a,onEditorMount:o,isMobile:s,showTreeBackButton:c,onShowTree:l,isFullView:u,onToggleFullView:d,comments:f,activeCommentIndex:p,onPrevComment:m,onNextComment:h,onFixComments:g}){let[_,v]=(0,Y.useState)(!1),[y,b]=(0,Y.useState)(!1),x=(0,Y.useRef)(null),S=(0,Y.useCallback)(()=>{mt(x,_)},[_]);return{panelRef:x,editorPanelProps:It({threadId:e,selectedFile:t,isImageFile:n,diffOriginal:r,diffModified:i,resolvedTheme:a,onEditorMount:o,diffEditorOptions:(0,Y.useMemo)(()=>pt(s,t,u),[s,t,u]),isPanelCollapsed:_,showTreeBackButton:c,onShowTree:l,onTogglePanel:S,isFullView:u,onToggleFullView:d,comments:f,activeCommentIndex:p,onPrevComment:m,onNextComment:h,onFixComments:g,isChatOpen:y,onOpenChat:()=>b(!0),onCloseChat:()=>b(!1)}),onPanelCollapse:()=>v(!0),onPanelExpand:()=>v(!1)}}function Rt(e){let t=(0,X.c)(64),{threadId:n,onExit:r,loadVersion:i,cachedState:a,onCachedStateChange:o}=e,s;t[0]!==i||t[1]!==n?(s=Ae(n,i),t[0]=i,t[1]=n,t[2]=s):s=t[2];let c;t[3]===n?c=t[4]:(c=()=>Me(n),t[3]=n,t[4]=c);let l=ae(s,c),u=re(),d=ie(Bt),{resolvedTheme:f}=oe(),p=de(),[m,h]=(0,Y.useState)(!1),[g,_]=(0,Y.useState)(null),{files:v,error:y,selectedFileIndex:b,mobileShowTree:x,treeData:S,setSelectedFileIndex:C,setMobileShowTree:w,handleFileSelect:T,handleShowTree:E,handleRevertFile:D}=Mt(n,l.files,a,o,p),{comments:O,setComments:k}=ke(n),A=v[b],j;t[5]===A?j=t[6]:(j=bt(A),t[5]=A,t[6]=j);let M=j,N;t[7]!==m||t[8]!==A?(N=tt(A,m),t[7]=m,t[8]=A,t[9]=N):N=t[9];let{diffOriginal:P,diffModified:F}=N,{pendingLine:I,editingComment:ee,handleLineGutterClick:L,handleSaveComment:R,handleDeleteComment:te,handleCloseCommentPopup:ne}=Nt(O,k,A,b),z;t[10]!==g||t[11]!==O||t[12]!==v||t[13]!==L||t[14]!==m||t[15]!==A||t[16]!==b?(z={comments:O,activeCommentIndex:g,isFullView:m,selectedFileIndex:b,files:v,selectedFile:A,onLineGutterClick:L},t[10]=g,t[11]=O,t[12]=v,t[13]=L,t[14]=m,t[15]=A,t[16]=b,t[17]=z):z=t[17];let{diffEditorRef:B,applyAllDecorations:se,handleEditorDidMount:V}=He(z),H;t[18]!==g||t[19]!==se||t[20]!==O||t[21]!==B||t[22]!==v||t[23]!==m||t[24]!==p||t[25]!==w||t[26]!==C?(H={comments:O,files:v,isFullView:m,isMobile:p,activeCommentIndex:g,setActiveCommentIndex:_,setSelectedFileIndex:C,setMobileShowTree:w,diffEditorRef:B,applyAllDecorations:se},t[18]=g,t[19]=se,t[20]=O,t[21]=B,t[22]=v,t[23]=m,t[24]=p,t[25]=w,t[26]=C,t[27]=H):H=t[27];let{handlePrevComment:ce,handleNextComment:le}=Pt(H),{handleFixComments:U}=Ft(n,d,O,u,r,k),W=p&&!x,G;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(G=()=>h(zt),t[28]=G):G=t[28];let ue;t[29]!==g||t[30]!==O||t[31]!==F||t[32]!==P||t[33]!==V||t[34]!==U||t[35]!==le||t[36]!==ce||t[37]!==E||t[38]!==m||t[39]!==M||t[40]!==p||t[41]!==f||t[42]!==A||t[43]!==W||t[44]!==n?(ue={threadId:n,selectedFile:A,isImageFile:M,diffOriginal:P,diffModified:F,resolvedTheme:f,onEditorMount:V,isMobile:p,showTreeBackButton:W,onShowTree:E,isFullView:m,onToggleFullView:G,comments:O,activeCommentIndex:g,onPrevComment:ce,onNextComment:le,onFixComments:U},t[29]=g,t[30]=O,t[31]=F,t[32]=P,t[33]=V,t[34]=U,t[35]=le,t[36]=ce,t[37]=E,t[38]=m,t[39]=M,t[40]=p,t[41]=f,t[42]=A,t[43]=W,t[44]=n,t[45]=ue):ue=t[45];let{panelRef:fe,editorPanelProps:pe,onPanelCollapse:K,onPanelExpand:q}=Lt(ue),J;return t[46]!==ee||t[47]!==pe||t[48]!==y||t[49]!==v||t[50]!==ne||t[51]!==te||t[52]!==T||t[53]!==D||t[54]!==R||t[55]!==p||t[56]!==x||t[57]!==K||t[58]!==q||t[59]!==fe||t[60]!==I||t[61]!==b||t[62]!==S?(J={isMobile:p,mobileShowTree:x,panelRef:fe,files:v,error:y,selectedFileIndex:b,treeData:S,handleFileSelect:T,handleRevertFile:D,editorPanelProps:pe,editingComment:ee,pendingLine:I,handleSaveComment:R,handleDeleteComment:te,handleCloseCommentPopup:ne,onPanelCollapse:K,onPanelExpand:q},t[46]=ee,t[47]=pe,t[48]=y,t[49]=v,t[50]=ne,t[51]=te,t[52]=T,t[53]=D,t[54]=R,t[55]=p,t[56]=x,t[57]=K,t[58]=q,t[59]=fe,t[60]=I,t[61]=b,t[62]=S,t[63]=J):J=t[63],J}function zt(e){return!e}function Bt(e){return e.projectModelSelections}function Vt(e){let t=(0,X.c)(26),{isMobile:n,mobileShowTree:r,panelRef:i,files:a,error:o,selectedFileIndex:s,treeData:c,handleFileSelect:l,handleRevertFile:u,editorPanelProps:d,editingComment:f,pendingLine:p,handleSaveComment:m,handleDeleteComment:h,handleCloseCommentPopup:g,onPanelCollapse:_,onPanelExpand:v}=Rt(e),y;t[0]!==o||t[1]!==a||t[2]!==l||t[3]!==u||t[4]!==s||t[5]!==c?(y=(0,Z.jsx)(at,{treeData:c,files:a,error:o,selectedFileIndex:s,onFileSelect:l,onRevertFile:u}),t[0]=o,t[1]=a,t[2]=l,t[3]=u,t[4]=s,t[5]=c,t[6]=y):y=t[6];let b;t[7]===d?b=t[8]:(b=(0,Z.jsx)(Xe,{...d}),t[7]=d,t[8]=b);let x;t[9]!==n||t[10]!==r||t[11]!==_||t[12]!==v||t[13]!==i||t[14]!==y||t[15]!==b?(x=(0,Z.jsx)($e,{isMobile:n,mobileShowTree:r,panelRef:i,onPanelCollapse:_,onPanelExpand:v,fileTreePanel:y,diffEditorPanel:b}),t[9]=n,t[10]=r,t[11]=_,t[12]=v,t[13]=i,t[14]=y,t[15]=b,t[16]=x):x=t[16];let S;t[17]!==f||t[18]!==g||t[19]!==h||t[20]!==m||t[21]!==p?(S=(0,Z.jsx)(ot,{editingComment:f,pendingLine:p,onSave:m,onDelete:h,onClose:g}),t[17]=f,t[18]=g,t[19]=h,t[20]=m,t[21]=p,t[22]=S):S=t[22];let C;return t[23]!==x||t[24]!==S?(C=(0,Z.jsxs)(`div`,{className:`diff-view-root flex h-full min-h-0 w-full flex-col`,children:[x,S]}),t[23]=x,t[24]=S,t[25]=C):C=t[25],C}function Ht(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=>(B(Ae(e.threadId,t)),t+1)),a(Wt)},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=>(B(Ae(e.threadId,t)),t+1)),a(Ut))},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)(Vt,{...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)(me,{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 Ut(e){return e+1}function Wt(e){return e+1}export{Ht as DiffView,Ht as default};
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/explorer-tree-CKwkrTpU.js","assets/rolldown-runtime-aKtaBQYM.js","assets/index-BH6Ht-w_.js","assets/monaco-D1hpqXQ0.js","assets/monaco-BQve5vfS.css","assets/markdown-renderer-BcGbfUdk.js","assets/onboarding-CQV3cOCc.js","assets/interactive-BrHVRHmQ.js","assets/use-toast-hxHsVv6a.js","assets/explorer-tab-context-BdjTEbFh.js","assets/use-open-chat-dock-panel-zpT9rr8C.js","assets/chat-dock-context-CUdrQKFm.js","assets/store-fffs6-y9.js","assets/main-tab-context-zQSuRQQG.js","assets/react-vendor-CVjuv5OI.js","assets/query-keys-CbACxUOr.js","assets/alert-dialog-CQsuxtcP.js","assets/use-suspense-resource-BxOFFoEK.js","assets/suspense-resource-DnYnmTbs.js","assets/create-project-workspace-Cw58bBNY.js","assets/ndjson-stream-DeGpE5o5.js","assets/scenic-chrome-CbN3vum7.js","assets/utils-SsF94Pkg.js","assets/index-DpGlIV5v.css","assets/async-error-boundary-DajcyqVg.js","assets/card-BDQUHsPD.js","assets/context-menu-D4UmleM5.js","assets/ui-components-DioWsrht.js","assets/explorer-view-DxvRAs1j.js","assets/monaco-setup-B_kQVsDW.js"])))=>i.map(i=>d[i]);
2
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Di as t,Rr as n,_ as r,i,ki as a}from"./interactive-BrHVRHmQ.js";import{bt as o,ht as ee,xt as s}from"./onboarding-CQV3cOCc.js";import{l as c}from"./monaco-D1hpqXQ0.js";import{r as l}from"./store-fffs6-y9.js";import{t as u}from"./use-toast-hxHsVv6a.js";import{n as d}from"./explorer-tab-context-BdjTEbFh.js";import{$ as f,Q as p,Vt as m,X as h,Y as g,Z as _,c as v,l as y,s as b,u as x}from"./index-BH6Ht-w_.js";import{t as S}from"./async-error-boundary-DajcyqVg.js";var C=e(a(),1),w=t(),te=(0,C.lazy)(()=>c(()=>import(`./explorer-tree-CKwkrTpU.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27]))),ne=(0,C.lazy)(()=>c(()=>import(`./explorer-view-DxvRAs1j.js`),__vite__mapDeps([28,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,29])));function T(){let e=l(e=>e.selectedThreadId),t=b(),[a,c]=(0,C.useState)(null),[T,E]=(0,C.useState)(!0),[D,O]=(0,C.useState)(null),[k,A]=(0,C.useState)(!1),[j,M]=(0,C.useState)(!1),N=(0,C.useRef)(0),{pendingExplorerPath:P,setPendingExplorerPath:F,explorerClearPath:I,setExplorerClearPath:L,triggerExplorerRefresh:R}=d();(0,C.useEffect)(()=>{function e(e){f(e.dataTransfer)&&e.preventDefault()}return window.addEventListener(`dragover`,e),window.addEventListener(`drop`,e),()=>{window.removeEventListener(`dragover`,e),window.removeEventListener(`drop`,e)}},[]),(0,C.useEffect)(()=>{E(!0)},[e]);let z=(0,C.useCallback)(e=>{c(e),t&&E(!1)},[t]),B=(0,C.useCallback)(()=>{E(!0)},[]),V=(0,C.useCallback)(e=>{c(e),t&&E(!1)},[t]);(0,C.useEffect)(()=>{P&&(c({name:P.split(`/`).pop()??P,path:P,type:`file`}),t&&E(!1),F(null))},[t,P,F]),(0,C.useEffect)(()=>{I&&(a&&(a.path===I||a.path.startsWith(I+`/`))&&(c(null),t&&E(!0)),L(null))},[I,t,a,L]);function H(){N.current=0,M(!1)}function U(e){f(e.dataTransfer)&&(N.current+=1,M(!0))}function W(e){f(e.dataTransfer)&&(e.preventDefault(),e.dataTransfer.dropEffect=`copy`)}function G(e){f(e.dataTransfer)&&(N.current=Math.max(0,N.current-1),N.current===0&&M(!1))}function K(e){if(!f(e.dataTransfer))return;e.preventDefault(),H();let{files:t,skippedFolders:n}=p(e.dataTransfer);n>0&&u({title:`Folders skipped`,description:`Only files can be copied. Drop individual files instead of folders.`}),t.length!==0&&O({files:t,dirPath:``})}let q=(0,C.useCallback)((e,t)=>{N.current=0,M(!1),O({files:e,dirPath:t})},[]);async function J(){if(!(!D||!e||k)){A(!0);try{let{copied:t,failures:n}=await _(e,D.dirPath,D.files);t.length>0&&R(),u(h(D,t.length,n))}finally{A(!1),O(null)}}}let Y={onDragEnter:U,onDragOver:W,onDragLeave:G,onDrop:K},X=j?(0,w.jsx)(`div`,{className:`pointer-events-none absolute inset-0 z-50 flex items-center justify-center bg-background/70`,children:(0,w.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border-2 border-dashed border-primary bg-background px-6 py-4`,children:[(0,w.jsx)(r,{className:`h-4 w-4 text-primary`}),(0,w.jsx)(`span`,{className:n.label,children:`Drop files to copy them into the repository`})]})}):null,Z=(0,w.jsx)(ee,{className:`h-full`,children:e?(0,w.jsx)(m,{threadId:e,children:(0,w.jsx)(S,{fallbackTitle:`Failed to load files`,children:(0,w.jsx)(C.Suspense,{fallback:(0,w.jsx)(s,{}),children:(0,w.jsx)(te,{threadId:e,selectedPath:a?.path??null,onNodeSelect:z,onFilesDrop:q})})})}):(0,w.jsx)(`p`,{className:i(n.caption,`px-3 py-4 text-center`),children:`No thread selected.`})}),Q=(0,w.jsx)(C.Suspense,{fallback:(0,w.jsx)(o,{}),children:(0,w.jsx)(ne,{selectedFile:a,showTreeBackButton:t&&!T,onShowTree:B,onFileCreated:V})}),$=(0,w.jsx)(g,{pendingDrop:D,dropCopying:k,onConfirm:()=>{J()},onDismiss:()=>{O(null)}});return t?(0,w.jsxs)(`div`,{className:`relative flex h-full flex-col overflow-hidden`,...Y,children:[X,$,(0,w.jsx)(`div`,{className:i(`flex-1 min-h-0 overflow-hidden`,!T&&`hidden`),children:Z}),(0,w.jsx)(`div`,{className:i(`flex-1 min-h-0 overflow-hidden`,T&&`hidden`),children:Q})]}):(0,w.jsxs)(`div`,{className:`relative flex h-full flex-col overflow-hidden`,...Y,children:[X,$,(0,w.jsxs)(x,{direction:`horizontal`,className:`flex-1 overflow-hidden`,children:[(0,w.jsx)(y,{defaultSize:25,minSize:15,maxSize:50,className:`overflow-hidden border-r border-border`,children:Z}),(0,w.jsx)(v,{withHandle:!0}),(0,w.jsx)(y,{className:`overflow-hidden`,children:Q})]})]})}export{T as default};