tarsk 0.5.72 → 0.5.74

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 (111) hide show
  1. package/dist/index.js +147040 -177714
  2. package/dist/public/assets/{Combination-lwI_j-mU.js → Combination-BdvBzSm4.js} +1 -1
  3. package/dist/public/assets/{account-view-C_WBVXA3.js → account-view-c-UG0JKH.js} +1 -1
  4. package/dist/public/assets/{alert-dialog-FQ5_FqBX.js → alert-dialog-DAHkynVZ.js} +1 -1
  5. package/dist/public/assets/api-D1GxdEEp.js +2 -0
  6. package/dist/public/assets/{async-error-boundary-DCDTsNTO.js → async-error-boundary-DNJqC4BV.js} +1 -1
  7. package/dist/public/assets/{async-loading-fallback-C173aA9v.js → async-loading-fallback-D2X0o4Qa.js} +1 -1
  8. package/dist/public/assets/browser-tab-BKQJKTg8.js +12 -0
  9. package/dist/public/assets/{button-sfGyFWfz.js → button-B6HDsfd5.js} +1 -1
  10. package/dist/public/assets/{card-D5k0GHxM.js → card-DZGd45nw.js} +1 -1
  11. package/dist/public/assets/chat-dock-context-8_5G30KG.js +1 -0
  12. package/dist/public/assets/{commit-dialog-Bmh1QdHK.js → commit-dialog-OQFa4W6i.js} +1 -1
  13. package/dist/public/assets/{commit-error-dialog-Dpu8C-0w.js → commit-error-dialog-BFByxoUG.js} +1 -1
  14. package/dist/public/assets/{commit-method-fields-CYzy7rmY.js → commit-method-fields-BihSf23f.js} +1 -1
  15. package/dist/public/assets/context-menu-e5jeH0Jl.js +1 -0
  16. package/dist/public/assets/{conversation-history-view-COFXqD0e.js → conversation-history-view-BUlO9oJ6.js} +1 -1
  17. package/dist/public/assets/create-project-dialog-CY5wIGQV.js +2 -0
  18. package/dist/public/assets/{create-project-workspace-BiRMezO9.js → create-project-workspace-ClILToZd.js} +1 -1
  19. package/dist/public/assets/{create-repo-dialog-CYiCHWgi.js → create-repo-dialog-CKUQoOaX.js} +1 -1
  20. package/dist/public/assets/{delete-confirm-dialog-B99gEJN8.js → delete-confirm-dialog-3DX1u0Dg.js} +1 -1
  21. package/dist/public/assets/{dialog-CP2cYR59.js → dialog--0foS3aw.js} +1 -1
  22. package/dist/public/assets/{diff-view-Cnuntc3l.js → diff-view-DLPu21IR.js} +2 -2
  23. package/dist/public/assets/{dist-CWnEmdyL.js → dist-Bxyh1Ml_.js} +1 -1
  24. package/dist/public/assets/{dist-BZvmHCxP.js → dist-CFXDhuA_.js} +1 -1
  25. package/dist/public/assets/{dist-DIjomljy.js → dist-CNOCRPxn.js} +1 -1
  26. package/dist/public/assets/{dist-DiMgghKn.js → dist-Cda_ffeR.js} +1 -1
  27. package/dist/public/assets/{dist-CWq9XRXF.js → dist-CkQILg8A.js} +1 -1
  28. package/dist/public/assets/{dist-DjKXDRW7.js → dist-CqGsum35.js} +1 -1
  29. package/dist/public/assets/dist-DjiNKpTV.js +2 -0
  30. package/dist/public/assets/{dist-DrpdKPSI.js → dist-eMdiO0P3.js} +1 -1
  31. package/dist/public/assets/{dist-mdooLpmq.js → dist-rO95BjzU.js} +1 -1
  32. package/dist/public/assets/explorer-tab-view-nzl0M0Vm.js +2 -0
  33. package/dist/public/assets/explorer-tree-Bkb6dzmf.js +1 -0
  34. package/dist/public/assets/explorer-view-NcArt0_H.js +75 -0
  35. package/dist/public/assets/{git-history-dialog-DHdzijZS.js → git-history-dialog-rWkjoaR5.js} +1 -1
  36. package/dist/public/assets/index-BOB3ZUQs.js +3386 -0
  37. package/dist/public/assets/index-BdGMz8sL.css +1 -0
  38. package/dist/public/assets/{markdown-renderer-Dx9-Ljv0.js → markdown-renderer-BkKibNMs.js} +4 -4
  39. package/dist/public/assets/{mcp-server-card-DPNG9Up7.js → mcp-server-card-DFT7uyRh.js} +1 -1
  40. package/dist/public/assets/{merged-pr-dialog-CEvS2z8D.js → merged-pr-dialog-BOrFaYk6.js} +1 -1
  41. package/dist/public/assets/model-list-controls-CpQjn6i7.js +1 -0
  42. package/dist/public/assets/onboarding-dialog-HJpyzVWa.js +1 -0
  43. package/dist/public/assets/{project-env-vars-view-DTGwl4wr.js → project-env-vars-view-C9VTTfTo.js} +1 -1
  44. package/dist/public/assets/project-model-aliases-view-DKRoV7Gc.js +1 -0
  45. package/dist/public/assets/{project-settings-view-DniUno1i.js → project-settings-view-BDYqpibk.js} +1 -1
  46. package/dist/public/assets/{project-tools-view-DknCaJu_.js → project-tools-view-9WUc4Yca.js} +1 -1
  47. package/dist/public/assets/providers-list-view-BgvIWP_0.js +1 -0
  48. package/dist/public/assets/pull-request-dialog-BM1dkFpK.js +1 -0
  49. package/dist/public/assets/{pull-with-changes-dialog-rKmqSi73.js → pull-with-changes-dialog-Bjl_esir.js} +1 -1
  50. package/dist/public/assets/{push-before-pr-dialog-BeEx6Po_.js → push-before-pr-dialog-Cbc_zaI8.js} +1 -1
  51. package/dist/public/assets/{radio-group-CU59hGiA.js → radio-group-CMW5ku-w.js} +1 -1
  52. package/dist/public/assets/{scroll-area-nbNFO91g.js → scroll-area-BMQFeWmq.js} +1 -1
  53. package/dist/public/assets/settings-general-view-BaMVw6kD.js +1 -0
  54. package/dist/public/assets/{settings-instructions-view-Bpx_dUaJ.js → settings-instructions-view-BRE87H2U.js} +1 -1
  55. package/dist/public/assets/{settings-list-PMi8ZniW.js → settings-list-BpPbGcpS.js} +1 -1
  56. package/dist/public/assets/settings-logs-view-Bbue8ZOn.js +5 -0
  57. package/dist/public/assets/settings-mcp-servers-view-BiMCy8sH.js +5 -0
  58. package/dist/public/assets/{settings-models-view-DdRC4YXo.js → settings-models-view-BkZtGcUP.js} +1 -1
  59. package/dist/public/assets/{settings-rules-view-CGLh95Ta.js → settings-rules-view-TK7LEC-0.js} +3 -3
  60. package/dist/public/assets/settings-skills-view-Bv9Kn55r.js +3 -0
  61. package/dist/public/assets/{settings-slack-view-OFNrG_DW.js → settings-slack-view-Dy2bFJqU.js} +1 -1
  62. package/dist/public/assets/{settings-slash-commands-view-DOo0BimH.js → settings-slash-commands-view-DiR1IyMF.js} +1 -1
  63. package/dist/public/assets/{settings-statistics-view-DpaSoVqG.js → settings-statistics-view-DX1UVeCJ.js} +1 -1
  64. package/dist/public/assets/settings-storage-view-D8tHP8XT.js +1 -0
  65. package/dist/public/assets/{settings-subagents-view-D7o69YzB.js → settings-subagents-view-Bz7jBhbB.js} +2 -2
  66. package/dist/public/assets/{settings-system-prompt-view-BFGfrXfe.js → settings-system-prompt-view-VHGAqfQk.js} +1 -1
  67. package/dist/public/assets/settings-view-QBOhYAyv.js +2 -0
  68. package/dist/public/assets/store-CHF6tOp2.js +9 -0
  69. package/dist/public/assets/{switch-pIBaqatj.js → switch-P5m18oUl.js} +1 -1
  70. package/dist/public/assets/{table-B2TDbGGl.js → table-MUx4ZxvS.js} +1 -1
  71. package/dist/public/assets/tasks-view-l00Nc2fV.js +2 -0
  72. package/dist/public/assets/terminal-panel-DHDoOXAH.js +38 -0
  73. package/dist/public/assets/{toggle-group-BiUqOiP6.js → toggle-group-DMR7z3pz.js} +1 -1
  74. package/dist/public/assets/{tooltip-B6ziVyTv.js → tooltip-BtJG5fZl.js} +1 -1
  75. package/dist/public/assets/{use-active-dock-panel-instance-CcCdDHzX.js → use-active-dock-panel-instance-cO_DR87G.js} +1 -1
  76. package/dist/public/assets/use-installed-ai-files-CJr_PVcY.js +1 -0
  77. package/dist/public/assets/{use-open-chat-dock-panel-D1D5bnsL.js → use-open-chat-dock-panel-B31lwcQF.js} +1 -1
  78. package/dist/public/assets/{web-C5UYr_H-.js → web-C7jr0n2X.js} +1 -1
  79. package/dist/public/assets/{web-Rx_XWVAQ.js → web-D0nlJHDu.js} +1 -1
  80. package/dist/public/assets/{web-iwWEZ1P2.js → web-DPW3m0cL.js} +1 -1
  81. package/dist/public/assets/{web-DaSLtaQ7.js → web-jJ1krOD-.js} +1 -1
  82. package/dist/public/index.html +24 -24
  83. package/dist/recommended-models.txt +1 -1
  84. package/package.json +5 -3
  85. package/dist/public/assets/api-ODizoHnY.js +0 -2
  86. package/dist/public/assets/browser-tab-Cl9d7ESj.js +0 -12
  87. package/dist/public/assets/chat-dock-context-DIyMsJHM.js +0 -1
  88. package/dist/public/assets/context-menu-Bo0OMC7-.js +0 -1
  89. package/dist/public/assets/create-project-dialog-DQ4AbwQP.js +0 -6
  90. package/dist/public/assets/dist-ZlK7I-y-.js +0 -2
  91. package/dist/public/assets/explorer-tab-view-BoCoREoE.js +0 -2
  92. package/dist/public/assets/explorer-tree-DvD1-WW3.js +0 -1
  93. package/dist/public/assets/explorer-view-B4WJUy7s.js +0 -75
  94. package/dist/public/assets/index-Bmkj1Qwa.js +0 -3380
  95. package/dist/public/assets/index-DPMRI86E.css +0 -1
  96. package/dist/public/assets/is-macos-client-BIb4ZSEa.js +0 -1
  97. package/dist/public/assets/model-list-controls-ChoemIJa.js +0 -1
  98. package/dist/public/assets/onboarding-dialog-DCull5p_.js +0 -1
  99. package/dist/public/assets/project-model-aliases-view-CEDz_6NW.js +0 -1
  100. package/dist/public/assets/providers-list-view-D_n1Ai6S.js +0 -1
  101. package/dist/public/assets/pull-request-dialog-BkQBaJkw.js +0 -1
  102. package/dist/public/assets/settings-general-view-CVHlxpTM.js +0 -1
  103. package/dist/public/assets/settings-logs-view-64Aq1hEw.js +0 -5
  104. package/dist/public/assets/settings-mcp-servers-view-B84c4h47.js +0 -5
  105. package/dist/public/assets/settings-skills-view-DeVnXDl-.js +0 -3
  106. package/dist/public/assets/settings-storage-view-DlyXWB__.js +0 -1
  107. package/dist/public/assets/settings-view-Dw1Zh2Qn.js +0 -2
  108. package/dist/public/assets/store-Be_7VK0D.js +0 -8
  109. package/dist/public/assets/tasks-view-FR7c1qFr.js +0 -2
  110. package/dist/public/assets/terminal-panel-DBZpuMz9.js +0 -38
  111. package/dist/public/assets/use-installed-ai-files-BNrsyACe.js +0 -1
@@ -1,4 +1,4 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{o as t,t as n}from"./react-vendor-Ee0-5T4I.js";import{l as r,u as i}from"./dist-DIjomljy.js";import{c as a}from"./utils-CT-Dw22R.js";var o=e(t(),1),s=0;function c(){o.useEffect(()=>{let e=document.querySelectorAll(`[data-radix-focus-guard]`);return document.body.insertAdjacentElement(`afterbegin`,e[0]??l()),document.body.insertAdjacentElement(`beforeend`,e[1]??l()),s++,()=>{s===1&&document.querySelectorAll(`[data-radix-focus-guard]`).forEach(e=>e.remove()),s--}},[])}function l(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}var u=n(),d=`focusScope.autoFocusOnMount`,f=`focusScope.autoFocusOnUnmount`,p={bubbles:!1,cancelable:!0},m=`FocusScope`,h=o.forwardRef((e,t)=>{let{loop:n=!1,trapped:s=!1,onMountAutoFocus:c,onUnmountAutoFocus:l,...m}=e,[h,y]=o.useState(null),b=r(c),x=r(l),w=o.useRef(null),T=a(t,e=>y(e)),E=o.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;o.useEffect(()=>{if(s){let e=function(e){if(E.paused||!h)return;let t=e.target;h.contains(t)?w.current=t:S(w.current,{select:!0})},t=function(e){if(E.paused||!h)return;let t=e.relatedTarget;t!==null&&(h.contains(t)||S(w.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&S(h)};document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return h&&r.observe(h,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[s,h,E.paused]),o.useEffect(()=>{if(h){C.add(E);let e=document.activeElement;if(!h.contains(e)){let t=new CustomEvent(d,p);h.addEventListener(d,b),h.dispatchEvent(t),t.defaultPrevented||(g(ee(v(h)),{select:!0}),document.activeElement===e&&S(h))}return()=>{h.removeEventListener(d,b),setTimeout(()=>{let t=new CustomEvent(f,p);h.addEventListener(f,x),h.dispatchEvent(t),t.defaultPrevented||S(e??document.body,{select:!0}),h.removeEventListener(f,x),C.remove(E)},0)}}},[h,b,x,E]);let D=o.useCallback(e=>{if(!n&&!s||E.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,r=document.activeElement;if(t&&r){let t=e.currentTarget,[i,a]=_(t);i&&a?!e.shiftKey&&r===a?(e.preventDefault(),n&&S(i,{select:!0})):e.shiftKey&&r===i&&(e.preventDefault(),n&&S(a,{select:!0})):r===t&&e.preventDefault()}},[n,s,E.paused]);return(0,u.jsx)(i.div,{tabIndex:-1,...m,ref:T,onKeyDown:D})});h.displayName=m;function g(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(S(r,{select:t}),document.activeElement!==n)return}function _(e){let t=v(e);return[y(t,e),y(t.reverse(),e)]}function v(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function y(e,t){for(let n of e)if(!b(n,{upTo:t}))return n}function b(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function x(e){return e instanceof HTMLInputElement&&`select`in e}function S(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&x(e)&&t&&e.select()}}var C=w();function w(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=T(e,t),e.unshift(t)},remove(t){e=T(e,t),e[0]?.resume()}}}function T(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function ee(e){return e.filter(e=>e.tagName!==`A`)}var E=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},D=new WeakMap,O=new WeakMap,k={},A=0,j=function(e){return e&&(e.host||j(e.parentNode))},te=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=j(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},ne=function(e,t,n,r){var i=te(t,Array.isArray(e)?e:[e]);k[n]||(k[n]=new WeakMap);var a=k[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(D.get(e)||0)+1,l=(a.get(e)||0)+1;D.set(e,c),a.set(e,l),o.push(e),c===1&&i&&O.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),A++,function(){o.forEach(function(e){var t=D.get(e)-1,i=a.get(e)-1;D.set(e,t),a.set(e,i),t||(O.has(e)||e.removeAttribute(r),O.delete(e)),i||e.removeAttribute(n)}),A--,A||(D=new WeakMap,D=new WeakMap,O=new WeakMap,k={})}},re=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||E(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),ne(r,i,n,`aria-hidden`)):function(){return null}},M=function(){return M=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},M.apply(this,arguments)};function N(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function ie(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var P=`right-scroll-bar-position`,F=`width-before-scroll-bar`,ae=`with-scroll-bars-hidden`,oe=`--removed-body-scroll-bar-size`;function I(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function se(e,t){var n=(0,o.useState)(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var ce=typeof window<`u`?o.useLayoutEffect:o.useEffect,L=new WeakMap;function le(e,t){var n=se(t||null,function(t){return e.forEach(function(e){return I(e,t)})});return ce(function(){var t=L.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||I(e,null)}),i.forEach(function(e){r.has(e)||I(e,a)})}L.set(n,e)},[e]),n}function ue(e){return e}function de(e,t){t===void 0&&(t=ue);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function fe(e){e===void 0&&(e={});var t=de(null);return t.options=M({async:!0,ssr:!1},e),t}var R=function(e){var t=e.sideCar,n=N(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return o.createElement(r,M({},n))};R.isSideCarExport=!0;function pe(e,t){return e.useMedium(t),R}var z=fe(),B=function(){},V=o.forwardRef(function(e,t){var n=o.useRef(null),r=o.useState({onScrollCapture:B,onWheelCapture:B,onTouchMoveCapture:B}),i=r[0],a=r[1],s=e.forwardProps,c=e.children,l=e.className,u=e.removeScrollBar,d=e.enabled,f=e.shards,p=e.sideCar,m=e.noRelative,h=e.noIsolation,g=e.inert,_=e.allowPinchZoom,v=e.as,y=v===void 0?`div`:v,b=e.gapMode,x=N(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),S=p,C=le([n,t]),w=M(M({},x),i);return o.createElement(o.Fragment,null,d&&o.createElement(S,{sideCar:z,removeScrollBar:u,shards:f,noRelative:m,noIsolation:h,inert:g,setCallbacks:a,allowPinchZoom:!!_,lockRef:n,gapMode:b}),s?o.cloneElement(o.Children.only(c),M(M({},w),{ref:C})):o.createElement(y,M({},w,{className:l,ref:C}),c))});V.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},V.classNames={fullWidth:F,zeroRight:P};var H,me=function(){if(H)return H;if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function he(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=me();return t&&e.setAttribute(`nonce`,t),e}function ge(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function _e(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var ve=function(){var e=0,t=null;return{add:function(n){e==0&&(t=he())&&(ge(t,n),_e(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},ye=function(){var e=ve();return function(t,n){o.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},U=function(){var e=ye();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},be={left:0,top:0,right:0,gap:0},W=function(e){return parseInt(e||``,10)||0},xe=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[W(n),W(r),W(i)]},Se=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return be;var t=xe(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},Ce=U(),G=`data-scroll-locked`,we=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{o as t,t as n}from"./react-vendor-Ee0-5T4I.js";import{l as r,u as i}from"./dist-CNOCRPxn.js";import{c as a}from"./utils-CT-Dw22R.js";var o=e(t(),1),s=0;function c(){o.useEffect(()=>{let e=document.querySelectorAll(`[data-radix-focus-guard]`);return document.body.insertAdjacentElement(`afterbegin`,e[0]??l()),document.body.insertAdjacentElement(`beforeend`,e[1]??l()),s++,()=>{s===1&&document.querySelectorAll(`[data-radix-focus-guard]`).forEach(e=>e.remove()),s--}},[])}function l(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}var u=n(),d=`focusScope.autoFocusOnMount`,f=`focusScope.autoFocusOnUnmount`,p={bubbles:!1,cancelable:!0},m=`FocusScope`,h=o.forwardRef((e,t)=>{let{loop:n=!1,trapped:s=!1,onMountAutoFocus:c,onUnmountAutoFocus:l,...m}=e,[h,y]=o.useState(null),b=r(c),x=r(l),w=o.useRef(null),T=a(t,e=>y(e)),E=o.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;o.useEffect(()=>{if(s){let e=function(e){if(E.paused||!h)return;let t=e.target;h.contains(t)?w.current=t:S(w.current,{select:!0})},t=function(e){if(E.paused||!h)return;let t=e.relatedTarget;t!==null&&(h.contains(t)||S(w.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&S(h)};document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return h&&r.observe(h,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[s,h,E.paused]),o.useEffect(()=>{if(h){C.add(E);let e=document.activeElement;if(!h.contains(e)){let t=new CustomEvent(d,p);h.addEventListener(d,b),h.dispatchEvent(t),t.defaultPrevented||(g(ee(v(h)),{select:!0}),document.activeElement===e&&S(h))}return()=>{h.removeEventListener(d,b),setTimeout(()=>{let t=new CustomEvent(f,p);h.addEventListener(f,x),h.dispatchEvent(t),t.defaultPrevented||S(e??document.body,{select:!0}),h.removeEventListener(f,x),C.remove(E)},0)}}},[h,b,x,E]);let D=o.useCallback(e=>{if(!n&&!s||E.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,r=document.activeElement;if(t&&r){let t=e.currentTarget,[i,a]=_(t);i&&a?!e.shiftKey&&r===a?(e.preventDefault(),n&&S(i,{select:!0})):e.shiftKey&&r===i&&(e.preventDefault(),n&&S(a,{select:!0})):r===t&&e.preventDefault()}},[n,s,E.paused]);return(0,u.jsx)(i.div,{tabIndex:-1,...m,ref:T,onKeyDown:D})});h.displayName=m;function g(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(S(r,{select:t}),document.activeElement!==n)return}function _(e){let t=v(e);return[y(t,e),y(t.reverse(),e)]}function v(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function y(e,t){for(let n of e)if(!b(n,{upTo:t}))return n}function b(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function x(e){return e instanceof HTMLInputElement&&`select`in e}function S(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&x(e)&&t&&e.select()}}var C=w();function w(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=T(e,t),e.unshift(t)},remove(t){e=T(e,t),e[0]?.resume()}}}function T(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function ee(e){return e.filter(e=>e.tagName!==`A`)}var E=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},D=new WeakMap,O=new WeakMap,k={},A=0,j=function(e){return e&&(e.host||j(e.parentNode))},te=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=j(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},ne=function(e,t,n,r){var i=te(t,Array.isArray(e)?e:[e]);k[n]||(k[n]=new WeakMap);var a=k[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(D.get(e)||0)+1,l=(a.get(e)||0)+1;D.set(e,c),a.set(e,l),o.push(e),c===1&&i&&O.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),A++,function(){o.forEach(function(e){var t=D.get(e)-1,i=a.get(e)-1;D.set(e,t),a.set(e,i),t||(O.has(e)||e.removeAttribute(r),O.delete(e)),i||e.removeAttribute(n)}),A--,A||(D=new WeakMap,D=new WeakMap,O=new WeakMap,k={})}},re=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||E(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),ne(r,i,n,`aria-hidden`)):function(){return null}},M=function(){return M=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},M.apply(this,arguments)};function N(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function ie(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var P=`right-scroll-bar-position`,F=`width-before-scroll-bar`,ae=`with-scroll-bars-hidden`,oe=`--removed-body-scroll-bar-size`;function I(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function se(e,t){var n=(0,o.useState)(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var ce=typeof window<`u`?o.useLayoutEffect:o.useEffect,L=new WeakMap;function le(e,t){var n=se(t||null,function(t){return e.forEach(function(e){return I(e,t)})});return ce(function(){var t=L.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||I(e,null)}),i.forEach(function(e){r.has(e)||I(e,a)})}L.set(n,e)},[e]),n}function ue(e){return e}function de(e,t){t===void 0&&(t=ue);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function fe(e){e===void 0&&(e={});var t=de(null);return t.options=M({async:!0,ssr:!1},e),t}var R=function(e){var t=e.sideCar,n=N(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return o.createElement(r,M({},n))};R.isSideCarExport=!0;function pe(e,t){return e.useMedium(t),R}var z=fe(),B=function(){},V=o.forwardRef(function(e,t){var n=o.useRef(null),r=o.useState({onScrollCapture:B,onWheelCapture:B,onTouchMoveCapture:B}),i=r[0],a=r[1],s=e.forwardProps,c=e.children,l=e.className,u=e.removeScrollBar,d=e.enabled,f=e.shards,p=e.sideCar,m=e.noRelative,h=e.noIsolation,g=e.inert,_=e.allowPinchZoom,v=e.as,y=v===void 0?`div`:v,b=e.gapMode,x=N(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),S=p,C=le([n,t]),w=M(M({},x),i);return o.createElement(o.Fragment,null,d&&o.createElement(S,{sideCar:z,removeScrollBar:u,shards:f,noRelative:m,noIsolation:h,inert:g,setCallbacks:a,allowPinchZoom:!!_,lockRef:n,gapMode:b}),s?o.cloneElement(o.Children.only(c),M(M({},w),{ref:C})):o.createElement(y,M({},w,{className:l,ref:C}),c))});V.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},V.classNames={fullWidth:F,zeroRight:P};var H,me=function(){if(H)return H;if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function he(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=me();return t&&e.setAttribute(`nonce`,t),e}function ge(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function _e(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var ve=function(){var e=0,t=null;return{add:function(n){e==0&&(t=he())&&(ge(t,n),_e(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},ye=function(){var e=ve();return function(t,n){o.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},U=function(){var e=ye();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},be={left:0,top:0,right:0,gap:0},W=function(e){return parseInt(e||``,10)||0},xe=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[W(n),W(r),W(i)]},Se=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return be;var t=xe(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},Ce=U(),G=`data-scroll-locked`,we=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
2
2
  .${ae} {
3
3
  overflow: hidden ${r};
4
4
  padding-right: ${s}px ${r};
@@ -1 +1 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{s as i}from"./chunk-QFMPRPBF-COsSkB7x.js";import{at as a}from"./dist-ZlK7I-y-.js";import{r as o}from"./store-Be_7VK0D.js";import{An as s,D as c,E as l,_n as u,bt as d}from"./dist-DIjomljy.js";import{t as f}from"./utils-CT-Dw22R.js";import{t as p}from"./button-sfGyFWfz.js";import{D as m,Ir as h,Q as g,Xt as _,in as v}from"./api-ODizoHnY.js";import{t as y}from"./use-toast-xpb5jNtN.js";import{Bn as b,On as x,kn as S}from"./index-Bmkj1Qwa.js";import{t as C}from"./skeleton-DvLd14RU.js";import{t as w}from"./delete-confirm-dialog-B99gEJN8.js";var T=t(),E=e(n(),1),D=r();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)(S,{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)(b,{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,r]=(0,E.useState)(!0),[b,S]=(0,E.useState)(!1),[C,T]=(0,E.useState)(!1),j=i(),M=o(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(){r(!0);try{t(await g())}catch(e){y({title:`Error`,description:e instanceof Error?e.message:`Failed to load account info`,variant:`destructive`})}finally{r(!1)}}function F(){_(`https://buy.stripe.com/14AcN6feK0Jjbheb2H3Nm03?client_reference_id=${e?.clientReferenceId??``}`)}function I(){_(`https://buy.stripe.com/9B67sMd6CgIh70Y0o33Nm04?client_reference_id=${e?.clientReferenceId??``}`)}async function L(){T(!0);try{if(await m(),h())try{await v()}catch{}window.close()}catch(e){T(!1),S(!1),y({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:f(a.label,`flex items-center gap-2 text-muted-foreground`),children:[(0,D.jsx)(d,{className:`h-4 w-4`}),`Balance`]}),(0,D.jsx)(`div`,{className:`flex items-end gap-2`,children:R?(0,D.jsx)(`span`,{className:a.stat,children:`Unlimited`}):(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(`span`,{className:a.stat,children:e?.promptsRemaining.toLocaleString()??0}),(0,D.jsx)(`span`,{className:`${a.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:f(a.label,`flex items-center gap-2 text-muted-foreground`),children:[(0,D.jsx)(u,{className:`h-4 w-4`}),`Current Plan`]}),(0,D.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,D.jsx)(`span`,{className:a.label,children:R?`Unlimited Pro`:`Pay as you go`}),R&&(0,D.jsx)(`span`,{className:f(a.compact,`rounded-full bg-primary/10 px-2 py-0.5 font-medium text-primary`),children:`Active`})]}),(0,D.jsx)(`p`,{className:a.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:a.label,children:`1,000 Prompts`}),(0,D.jsx)(`p`,{className:a.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)(u,{className:`h-4 w-4 text-primary`}),(0,D.jsx)(`span`,{className:a.label,children:`Unlimited Pro Plan`})]}),(0,D.jsx)(`p`,{className:a.bodyMuted,children:`Unlimited prompts for $100 and lifetime access to Tarsk.`}),(0,D.jsxs)(`ul`,{className:f(a.bodyMuted,`space-y-0.5`),children:[(0,D.jsxs)(`li`,{className:`flex items-center gap-1.5`,children:[(0,D.jsx)(s,{className:`h-3 w-3 text-primary`}),`Unlimited prompts`]}),(0,D.jsxs)(`li`,{className:`flex items-center gap-1.5`,children:[(0,D.jsx)(s,{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)(x,{variant:`error`,children:[(0,D.jsxs)(`span`,{className:`flex items-start gap-2`,children:[(0,D.jsx)(l,{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:a.bodyMuted,children:`This removes the Tarsk database and any logs on this machine and cannot be undone.`}),(0,D.jsxs)(p,{variant:`destructive`,onClick:()=>S(!0),children:[(0,D.jsx)(c,{className:`h-4 w-4`}),`Delete Account`]})]})})]}),(0,D.jsx)(w,{open:b,onOpenChange:e=>{!e&&!C&&S(!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{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{s as i}from"./chunk-QFMPRPBF-COsSkB7x.js";import{ot as a}from"./dist-DjiNKpTV.js";import{r as o}from"./store-CHF6tOp2.js";import{D as s,E as c,bt as l,gn as u,jn as d}from"./dist-CNOCRPxn.js";import{t as f}from"./utils-CT-Dw22R.js";import{t as p}from"./button-B6HDsfd5.js";import{D as m,Q as h,Xt as g,in as _,zr as v}from"./api-D1GxdEEp.js";import{t as y}from"./use-toast-xpb5jNtN.js";import{Mn as b,bn as x,xn as S}from"./index-BOB3ZUQs.js";import{t as C}from"./skeleton-DvLd14RU.js";import{t as w}from"./delete-confirm-dialog-3DX1u0Dg.js";var T=t(),E=e(n(),1),D=r();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)(S,{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)(b,{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,r]=(0,E.useState)(!0),[b,S]=(0,E.useState)(!1),[C,T]=(0,E.useState)(!1),j=i(),M=o(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(){r(!0);try{t(await h())}catch(e){y({title:`Error`,description:e instanceof Error?e.message:`Failed to load account info`,variant:`destructive`})}finally{r(!1)}}function F(){g(`https://buy.stripe.com/14AcN6feK0Jjbheb2H3Nm03?client_reference_id=${e?.clientReferenceId??``}`)}function I(){g(`https://buy.stripe.com/9B67sMd6CgIh70Y0o33Nm04?client_reference_id=${e?.clientReferenceId??``}`)}async function L(){T(!0);try{if(await m(),v())try{await _()}catch{}window.close()}catch(e){T(!1),S(!1),y({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:f(a.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:a.stat,children:`Unlimited`}):(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(`span`,{className:a.stat,children:e?.promptsRemaining.toLocaleString()??0}),(0,D.jsx)(`span`,{className:`${a.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:f(a.label,`flex items-center gap-2 text-muted-foreground`),children:[(0,D.jsx)(u,{className:`h-4 w-4`}),`Current Plan`]}),(0,D.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,D.jsx)(`span`,{className:a.label,children:R?`Unlimited Pro`:`Pay as you go`}),R&&(0,D.jsx)(`span`,{className:f(a.compact,`rounded-full bg-primary/10 px-2 py-0.5 font-medium text-primary`),children:`Active`})]}),(0,D.jsx)(`p`,{className:a.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:a.label,children:`1,000 Prompts`}),(0,D.jsx)(`p`,{className:a.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)(u,{className:`h-4 w-4 text-primary`}),(0,D.jsx)(`span`,{className:a.label,children:`Unlimited Pro Plan`})]}),(0,D.jsx)(`p`,{className:a.bodyMuted,children:`Unlimited prompts for $100 and lifetime access to Tarsk.`}),(0,D.jsxs)(`ul`,{className:f(a.bodyMuted,`space-y-0.5`),children:[(0,D.jsxs)(`li`,{className:`flex items-center gap-1.5`,children:[(0,D.jsx)(d,{className:`h-3 w-3 text-primary`}),`Unlimited prompts`]}),(0,D.jsxs)(`li`,{className:`flex items-center gap-1.5`,children:[(0,D.jsx)(d,{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)(x,{variant:`error`,children:[(0,D.jsxs)(`span`,{className:`flex items-start gap-2`,children:[(0,D.jsx)(c,{className:`mt-0.5 h-4 w-4 shrink-0`}),(0,D.jsxs)(`span`,{children:[`You have `,N,` workspace`,` `,N===1?`folder`:`folders`,` listed in Storage. Clear`,` `,N===1?`it`:`them`,` first under Storage — deleting your account does not remove those folders.`]})]}),(0,D.jsx)(`div`,{className:`mt-3`,children:(0,D.jsx)(p,{variant:`outline`,size:`sm`,onClick:()=>j(`/settings/storage`),children:`Go to Storage`})})]}):null,(0,D.jsx)(`p`,{className:a.bodyMuted,children:`This removes the Tarsk database and any logs on this machine and cannot be undone.`}),(0,D.jsxs)(p,{variant:`destructive`,onClick:()=>S(!0),children:[(0,D.jsx)(s,{className:`h-4 w-4`}),`Delete Account`]})]})})]}),(0,D.jsx)(w,{open:b,onOpenChange:e=>{!e&&!C&&S(!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,4 +1,4 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{at as i}from"./dist-ZlK7I-y-.js";import{g as a,h as o,p as s}from"./dist-DIjomljy.js";import{c,t as l}from"./utils-CT-Dw22R.js";import{n as u}from"./button-sfGyFWfz.js";import{n as ee}from"./use-browser-overlay-block-DyprQSIG.js";import{a as d,c as te,i as ne,l as re,n as ie,o as ae,r as f,s as oe,t as p,u as m}from"./dist-BZvmHCxP.js";var h=t(),g=e(n(),1),_=r(),v=`AlertDialog`,[se,ce]=o(v,[m]),y=m(),b=e=>{let{__scopeAlertDialog:t,...n}=e,r=y(t);return(0,_.jsx)(ae,{...r,...n,modal:!0})};b.displayName=v;var x=`AlertDialogTrigger`,S=g.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,i=y(n);return(0,_.jsx)(te,{...i,...r,ref:t})});S.displayName=x;var C=`AlertDialogPortal`,w=e=>{let{__scopeAlertDialog:t,...n}=e,r=y(t);return(0,_.jsx)(d,{...r,...n})};w.displayName=C;var T=`AlertDialogOverlay`,E=g.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,i=y(n);return(0,_.jsx)(ne,{...i,...r,ref:t})});E.displayName=T;var D=`AlertDialogContent`,[le,ue]=se(D),de=s(`AlertDialogContent`),O=g.forwardRef((e,t)=>{let{__scopeAlertDialog:n,children:r,...i}=e,o=y(n),s=g.useRef(null),l=c(t,s),u=g.useRef(null);return(0,_.jsx)(re,{contentName:D,titleName:k,docsSlug:`alert-dialog`,children:(0,_.jsx)(le,{scope:n,cancelRef:u,children:(0,_.jsxs)(ie,{role:`alertdialog`,...o,...i,ref:l,onOpenAutoFocus:a(i.onOpenAutoFocus,e=>{e.preventDefault(),u.current?.focus({preventScroll:!0})}),onPointerDownOutside:e=>e.preventDefault(),onInteractOutside:e=>e.preventDefault(),children:[(0,_.jsx)(de,{children:r}),(0,_.jsx)(I,{contentRef:s})]})})})});O.displayName=D;var k=`AlertDialogTitle`,A=g.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,i=y(n);return(0,_.jsx)(oe,{...i,...r,ref:t})});A.displayName=k;var j=`AlertDialogDescription`,M=g.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,i=y(n);return(0,_.jsx)(f,{...i,...r,ref:t})});M.displayName=j;var fe=`AlertDialogAction`,N=g.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,i=y(n);return(0,_.jsx)(p,{...i,...r,ref:t})});N.displayName=fe;var P=`AlertDialogCancel`,F=g.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,{cancelRef:i}=ue(P,n),a=y(n),o=c(t,i);return(0,_.jsx)(p,{...a,...r,ref:o})});F.displayName=P;var I=({contentRef:e})=>{let t=`\`${D}\` requires a description for the component to be accessible for screen reader users.
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{ot as i}from"./dist-DjiNKpTV.js";import{g as a,h as o,p as s}from"./dist-CNOCRPxn.js";import{c,t as l}from"./utils-CT-Dw22R.js";import{n as u}from"./button-B6HDsfd5.js";import{n as ee}from"./use-browser-overlay-block-DyprQSIG.js";import{a as d,c as te,i as ne,l as re,n as ie,o as ae,r as f,s as oe,t as p,u as m}from"./dist-CFXDhuA_.js";var h=t(),g=e(n(),1),_=r(),v=`AlertDialog`,[se,ce]=o(v,[m]),y=m(),b=e=>{let{__scopeAlertDialog:t,...n}=e,r=y(t);return(0,_.jsx)(ae,{...r,...n,modal:!0})};b.displayName=v;var x=`AlertDialogTrigger`,S=g.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,i=y(n);return(0,_.jsx)(te,{...i,...r,ref:t})});S.displayName=x;var C=`AlertDialogPortal`,w=e=>{let{__scopeAlertDialog:t,...n}=e,r=y(t);return(0,_.jsx)(d,{...r,...n})};w.displayName=C;var T=`AlertDialogOverlay`,E=g.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,i=y(n);return(0,_.jsx)(ne,{...i,...r,ref:t})});E.displayName=T;var D=`AlertDialogContent`,[le,ue]=se(D),de=s(`AlertDialogContent`),O=g.forwardRef((e,t)=>{let{__scopeAlertDialog:n,children:r,...i}=e,o=y(n),s=g.useRef(null),l=c(t,s),u=g.useRef(null);return(0,_.jsx)(re,{contentName:D,titleName:k,docsSlug:`alert-dialog`,children:(0,_.jsx)(le,{scope:n,cancelRef:u,children:(0,_.jsxs)(ie,{role:`alertdialog`,...o,...i,ref:l,onOpenAutoFocus:a(i.onOpenAutoFocus,e=>{e.preventDefault(),u.current?.focus({preventScroll:!0})}),onPointerDownOutside:e=>e.preventDefault(),onInteractOutside:e=>e.preventDefault(),children:[(0,_.jsx)(de,{children:r}),(0,_.jsx)(I,{contentRef:s})]})})})});O.displayName=D;var k=`AlertDialogTitle`,A=g.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,i=y(n);return(0,_.jsx)(oe,{...i,...r,ref:t})});A.displayName=k;var j=`AlertDialogDescription`,M=g.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,i=y(n);return(0,_.jsx)(f,{...i,...r,ref:t})});M.displayName=j;var fe=`AlertDialogAction`,N=g.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,i=y(n);return(0,_.jsx)(p,{...i,...r,ref:t})});N.displayName=fe;var P=`AlertDialogCancel`,F=g.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,{cancelRef:i}=ue(P,n),a=y(n),o=c(t,i);return(0,_.jsx)(p,{...a,...r,ref:o})});F.displayName=P;var I=({contentRef:e})=>{let t=`\`${D}\` requires a description for the component to be accessible for screen reader users.
2
2
 
3
3
  You can add a description to the \`${D}\` by passing a \`${j}\` component as a child, which also benefits sighted users by adding visible context to the dialog.
4
4
 
@@ -0,0 +1,2 @@
1
+ import{n as e}from"./rolldown-runtime-aKtaBQYM.js";import{D as t,Mt as n,S as r,ct as i,m as a,ut as o}from"./dist-DjiNKpTV.js";var s=function(e){return e.PACKAGE_MANAGER=`tarsk.create-project.packageManager`,e.COMMIT_METHOD=`tarsk.create-project.commitMethod`,e.TEMPLATE_ID=`tarsk.create-project.templateId`,e.AUTO_GENERATE_COMMIT_MESSAGE=`autoGenerateCommitMessage`,e.CREATE_BRANCH_AFTER_PR=`createBranchAfterPR`,e.CREATE_WORKSPACE_AFTER_PR=`createWorkspaceAfterPR`,e.PRIVATE_REPOSITORY_DEFAULT=`privateRepositoryDefault`,e.NEW_CHAT_ON_NEW_BRANCH=`newChatOnNewBranch`,e.SELECTED_MODEL_PREFIX=`selected-model-`,e.FONT_SCALE=`tarsk.general.fontScale`,e.FROSTED_PANEL_OPACITY=`tarsk.general.frostedPanelOpacity`,e.IMAGE_BACKGROUND=`tarsk.general.imageBackground`,e.WALLPAPER_MODE=`tarsk.general.wallpaperMode`,e.WALLPAPER_COLOR=`tarsk.general.wallpaperColor`,e.BRAND_COLOR=`tarsk.general.brandColor`,e.OPEN_WITH_PROGRAM=`tarsk.general.openWithProgram`,e.SERVER_URL=`tarsk.server.url`,e.SERVER_BIND_MODE=`tarsk.general.serverBindMode`,e.HISTORY_COLUMNS=`tarsk.settings.historyColumns`,e}({}),c=function(e){return e.MESSAGE_HISTORY=`chat_message_history`,e.BASH_COMMAND_DURATIONS=`tarsk.bash-command-durations`,e.SKILL_CATALOG_PREFIX=`tarsk.skills.catalog.`,e.SKILL_SOURCE_SELECTION=`tarsk.skills.selectedSource`,e}({});function l(e){return typeof localStorage>`u`?null:localStorage.getItem(e)}function u(e,t){typeof localStorage>`u`||localStorage.setItem(e,t)}function d(e){return typeof sessionStorage>`u`?null:sessionStorage.getItem(e)}function f(e,t){typeof sessionStorage>`u`||sessionStorage.setItem(e,t)}function p(e=`npm`){return l(`tarsk.create-project.packageManager`)??e}function ee(e){u(`tarsk.create-project.packageManager`,e)}function m(e=`pull-request`){return l(`tarsk.create-project.commitMethod`)??e}function h(e){u(`tarsk.create-project.commitMethod`,e)}function g(e=``){return l(`tarsk.create-project.templateId`)??e}function _(e){u(`tarsk.create-project.templateId`,e)}function te(e=!1){let t=l(`autoGenerateCommitMessage`);return t===null?e:t===`true`}function ne(e){u(`autoGenerateCommitMessage`,e.toString())}function re(e=!1){let t=l(`createBranchAfterPR`);return t===null?e:t===`true`}function ie(e){u(`createBranchAfterPR`,e.toString())}function ae(e=!1){let t=l(`createWorkspaceAfterPR`);return t===null?e:t===`true`}function oe(e){u(`createWorkspaceAfterPR`,e.toString())}function se(e=!1){let t=l(`privateRepositoryDefault`);return t===null?e:t===`true`}function ce(e){u(`privateRepositoryDefault`,e.toString())}function le(e=!1){let t=l(`newChatOnNewBranch`);return t===null?e:t===`true`}function ue(e){u(`newChatOnNewBranch`,e.toString())}function de(){let e=d(`chat_message_history`);return e?JSON.parse(e):[]}function fe(e){let t=de();e.trim()&&t[t.length-1]!==e&&(t.push(e),f(`chat_message_history`,JSON.stringify(t)))}function pe(e){return typeof sessionStorage>`u`?null:sessionStorage.getItem(e)}function me(e,t){typeof sessionStorage>`u`||sessionStorage.setItem(e,t)}function he(e=`default`){return pe(`tarsk.skills.selectedSource`)??e}function ge(e){me(`tarsk.skills.selectedSource`,e)}function v(e){return`tarsk.skills.catalog.${e}`}function _e(e){let t=pe(v(e));if(!t)return null;try{return JSON.parse(t)}catch{return null}}function ve(e,t){me(v(e),JSON.stringify(t))}function ye(e){typeof sessionStorage>`u`||sessionStorage.removeItem(v(e))}var be=`tarsk.skills.customSources`;function xe(){if(typeof localStorage>`u`)return[];let e=localStorage.getItem(be);if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`object`&&!!e&&typeof e.id==`string`&&typeof e.title==`string`&&typeof e.url==`string`):[]}catch{return[]}}function Se(){typeof localStorage>`u`||localStorage.removeItem(be)}function Ce(e=100){let t=l(`tarsk.general.fontScale`);if(t!==null){let e=Number(t);if(Number.isFinite(e)&&e>=50&&e<=300)return e}return e}function we(e){u(`tarsk.general.fontScale`,String(e))}function Te(e=80){let t=l(`tarsk.general.frostedPanelOpacity`);if(t!==null){let e=Number(t);if(Number.isFinite(e)&&e>=60&&e<=100)return e}return e}function Ee(e){u(`tarsk.general.frostedPanelOpacity`,String(e))}var De=new Set([`image`,`background`,`color`]),y=/^#[0-9a-fA-F]{6}$/,b=`#1f2937`,x=`#82c309`;function Oe(e){return e!==null&&De.has(e)}function ke(e=`background`){let t=l(`tarsk.general.wallpaperMode`);if(Oe(t))return t;if(t===`brand`)return`background`;let n=l(`tarsk.general.imageBackground`);return n===`false`?`background`:n===`true`?`image`:e}function Ae(e){u(`tarsk.general.wallpaperMode`,e)}function je(e=b){let t=l(`tarsk.general.wallpaperColor`);return t!==null&&y.test(t)?t:e}function Me(e){y.test(e)&&u(`tarsk.general.wallpaperColor`,e.toLowerCase())}function Ne(e=x){let t=l(`tarsk.general.brandColor`);return t!==null&&y.test(t)?t:e}function Pe(e){y.test(e)&&u(`tarsk.general.brandColor`,e.toLowerCase())}function Fe(e=`VS Code`){return l(`tarsk.general.openWithProgram`)??e}function Ie(e){u(`tarsk.general.openWithProgram`,e)}function Le(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.fetchedAt==`number`&&(t.serverBindMode===`local`||t.serverBindMode===`network`)&&Array.isArray(t.networkAddresses)&&t.networkAddresses.every(e=>typeof e==`string`)}function Re(){let e=l(`tarsk.general.serverBindMode`);if(!e)return null;try{let t=JSON.parse(e);return Le(t)?t:null}catch{return null}}function ze(e){u(`tarsk.general.serverBindMode`,JSON.stringify({...e,fetchedAt:e.fetchedAt??Date.now()}))}var Be=`641`;function S(){return typeof window>`u`?null:window.Capacitor?.getPlatform?.()??null}function Ve(){return T()&&S()===`ios`}function C(){return l(s.SERVER_URL)}function He(e){u(s.SERVER_URL,e)}function Ue(e){try{return new URL(e).hostname}catch{return``}}function w(e){let t=e.trim();if(!t)return``;let n=t.replace(/^https?:\/\//,``).split(`/`)[0]?.split(`:`)[0]??``;return n?`http://${n}:${Be}`:``}function T(){if(typeof window>`u`)return!1;if(window.Capacitor?.isNativePlatform?.())return!0;let e=window.location.protocol;return e===`capacitor:`||e===`ionic:`||e===`file:`}function We(){let e=C();if(e){let t=Ue(e);if(t)return t}return T()?``:document.location.hostname}async function Ge(e){try{return(await fetch(`${e.replace(/\/$/,``)}/health`,{method:`GET`})).ok}catch{return!1}}function Ke(e){let t=w(e);if(t){if(T()){He(t),window.location.reload();return}window.location.assign(t)}}function E(){return typeof window<`u`&&`__electrobunWebviewId`in window}function qe(){return typeof document<`u`&&document.location.port===`8100`}function D(){if(typeof document>`u`)return null;let{protocol:e,hostname:t,port:n,host:r,origin:i}=document.location;return e!==`http:`&&e!==`https:`?null:i||`${e}//${r??(n?`${t}:${n}`:t)}`}function O(){if(typeof document>`u`)return`http://localhost:641`;let{hostname:e,port:t}=document.location;return t===`8100`?`http://${e}:462`:D()||`http://${e}:641`}function k(){if(E()){let e=D();if(e)return e}if(!T())return O();let e=C();return e?e.replace(/\/$/,``):O()}function A(e){let t=e.startsWith(`/`)?e:`/${e}`;return`${k()}${t}`}function j(e){if(!e)return`Unknown error`;if(typeof e.error==`string`)return e.error.trim()||`Unknown error`;if(e.error&&typeof e.error==`object`){let t=e.error.message;if(typeof t==`string`&&t.trim())return t.trim();let n=e.error.details;return typeof n==`string`&&n.trim()?n.trim():`Unknown error`}return`Unknown error`}async function M(e){try{return j(await e.json())}catch{}return e.statusText||`Unknown error`}function N(e,t,n){let r=Error(e);return n?.error&&typeof n.error==`object`&&(r.details=n.error.details,r.code=n.error.code),r}async function P(e){let t;try{t=await e.json()}catch{}throw N(j(t)||e.statusText||`Unknown error`,e,t)}async function F(e,t){let n=await fetch(A(e),{...t,method:`GET`});if(!n.ok){let e=await M(n);throw Error(e)}return n.blob()}async function I(e,t){let n=await fetch(A(e),{...t,method:`GET`});if(!n.ok){let e=await M(n);throw Error(e)}return n.json()}async function L(e,t,n){let r=await fetch(A(e),{...n,method:`POST`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0});if(!r.ok){let e=await M(r);throw Error(e)}return r.json()}async function Je(e,t,n){let r=await fetch(A(e),{...n,method:`POST`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0});if(!r.ok){let e=await M(r);throw Error(e)}return r.blob()}async function Ye(e,t,n){let r=await fetch(A(e),{...n,method:`POST`,headers:{"Content-Type":`application/octet-stream`,...n?.headers},body:t});if(!r.ok){let e=await M(r);throw Error(e)}return r.json()}async function R(e,t,n){let r=await fetch(A(e),{...n,method:`PUT`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0});if(!r.ok){let e=await M(r);throw Error(e)}return r.json()}async function Xe(e,t,n){let r=await fetch(A(e),{...n,method:`PATCH`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0});if(!r.ok){let e=await M(r);throw Error(e)}return r.json()}async function Ze(e,t,n){let r=await fetch(A(e),{...n,method:`PUT`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0});if(!r.ok){let e=await M(r);throw Error(e)}return r.body}async function z(e,t){let n=await fetch(A(e),{...t,method:`DELETE`});if(!n.ok){let e=await M(n);throw Error(e)}if(n.status!==204)return n.json()}async function Qe(e,t){let n=await fetch(A(e),{...t,method:`DELETE`});if(!n.ok){let e=await M(n);throw Error(e)}return n.body}async function B(e,t,n){let r=await fetch(A(e),{...n,method:`POST`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0,signal:n?.signal});return r.ok||await P(r),r.body}async function $e(e,t){let n=await fetch(A(e),{...t,method:`GET`});return n.ok||await P(n),n.body}async function V(e,t,n){let r=await fetch(A(e),{...n,method:`POST`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0});if(!r.ok){let e;try{e=await r.json()}catch{}throw N(j(e)||r.statusText||`Unknown error`,r,e)}return r.json()}async function et(e,t,n){let r=await fetch(A(e),{...n,method:`PUT`,headers:{"Content-Type":`application/json`,...n?.headers},body:t?JSON.stringify(t):void 0});if(!r.ok){let e;try{e=await r.json()}catch{}throw N(j(e)||r.statusText||`Unknown error`,r,e)}return r.json()}function H(...e){return e.map(e=>encodeURIComponent(String(e))).join(`/`)}var U=r(`gitops.ttl-cache`),W=new class{cache=new Map;inFlightRequests=new Map;generations=new Map;async get(e,t,n){let r=e.startsWith(`unified-git-status-`),i=r?performance.now():0,a=this.inFlightRequests.get(e);if(a)return r&&U.debug(`in-flight-reuse`,{key:e}),a;let o=this.cache.get(e);if(o&&Date.now()<o.expires){if(r){let t=Math.round(performance.now()-i);U.debug(`cache hit`,{key:e,duration:t})}return o.data}r&&U.debug(`cache miss, fetching`,{key:e});let s=this.generations.get(e)??0,c=t().then(t=>{if((this.generations.get(e)??0)===s){if(this.cache.set(e,{data:t,expires:Date.now()+n}),r){let t=Math.round(performance.now()-i);U.debug(`stored in cache`,{key:e,duration:t})}}else r&&U.debug(`skipped stale cache write`,{key:e});return t}).finally(()=>{this.inFlightRequests.get(e)===c&&this.inFlightRequests.delete(e)});return this.inFlightRequests.set(e,c),c}getSync(e){let t=this.cache.get(e);if(t&&Date.now()<t.expires)return t.data}bumpGeneration(e){this.generations.set(e,(this.generations.get(e)??0)+1)}invalidate(e){this.cache.delete(e),this.inFlightRequests.delete(e),this.bumpGeneration(e)}invalidatePattern(e){let t=[];for(let n of this.cache.keys())e.test(n)&&t.push(n);for(let n of this.inFlightRequests.keys())e.test(n)&&!t.includes(n)&&t.push(n);for(let e of t)this.cache.delete(e),this.inFlightRequests.delete(e),this.bumpGeneration(e)}clear(){for(let e of new Set([...this.cache.keys(),...this.inFlightRequests.keys(),...this.generations.keys()]))this.bumpGeneration(e);this.cache.clear(),this.inFlightRequests.clear()}};function tt(e,t){let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=t,r.rel=`noopener`,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(n)}function nt(e,t=`image/png`){let n=atob(e),r=new Uint8Array(n.length);for(let e=0;e<n.length;e++)r[e]=n.charCodeAt(e);return new Blob([r],{type:t})}function rt(e){let t=e.indexOf(`,`),n=e.slice(0,t);return nt(e.slice(t+1),n.match(/^data:([^;]+)/)?.[1]??`image/png`)}async function it(e){if(e.imageData)return nt(e.imageData);if(e.imageUrl){if(e.imageUrl.startsWith(`data:`))return rt(e.imageUrl);let t=o(e.imageUrl,k()),n=await fetch(t);if(!n.ok)throw Error(`Failed to fetch image: ${n.status}`);return n.blob()}throw Error(`imageUrl or imageData is required`)}function at(e){return!e.imageUrl||i(e.imageUrl)?e:{...e,imageUrl:o(e.imageUrl,k())}}async function ot(e){let t=e.filename??`generated-image-${Date.now()}.png`;try{return tt(await it(e),t),{path:t}}catch{if(!e.imageUrl||e.imageUrl.startsWith(`data:`))throw Error(`imageUrl or imageData is required`);let n=document.createElement(`a`);return n.href=e.imageUrl,n.download=t,n.target=`_blank`,n.rel=`noopener noreferrer`,document.body.appendChild(n),n.click(),document.body.removeChild(n),{path:t}}}async function st(e){let t=await it(e);if(!navigator.clipboard?.write)throw Error(`Clipboard API not available`);let n=t.type||`image/png`,r=t.type?t:new Blob([t],{type:n});await navigator.clipboard.write([new ClipboardItem({[n]:r})])}async function ct(e){return E()?L(`api/image/save`,at(e)):ot(e)}async function lt(e){if(E()){await L(`api/image/clipboard`,at(e));return}await st(e)}function ut(e){let t=e.trim().toLowerCase();return t===`load failed`||t.includes(`failed to fetch`)||t.includes(`network error`)||t.includes(`network connection was lost`)||t.includes(`networkrequestfailed`)||t.includes(`networkrequest failed`)||t.includes(`socket is not connected`)}function dt(e){if(e instanceof Error&&`code`in e&&typeof e.code==`string`)return e.code}function ft(e){if(dt(e)===`THREAD_BUSY`)return!0;if(!(e instanceof Error))return!1;let t=e.message.toLowerCase();return t.includes(`already processing a message`)||t.includes(`already being processed`)||t.includes(`multiple chat windows are processing`)}function pt(e,t){return ft(e)?t?.trim()?!0:e instanceof Error?!e.message.toLowerCase().includes(`multiple chat windows`):!1:!1}var mt=50;function ht(e,t,n,r,i){let o=e.getReader(),s=!1;function c(){s=!0,o.cancel().catch(()=>{})}let l=new TextDecoder,u=``,d=0;function f(e){let t=e.content?.trim();if(t)return a(t);let n=e.error?.message?.trim();if(n)return a(n);let r=e.message?.trim();return r?a(r):`Unknown error`}function p(e){if(!e)return!1;let t=e.trim();return t.length>200?!1:[/^Cannot read properties/i,/^Error:/i,/^TypeError:/i,/^ReferenceError:/i,/^SyntaxError:/i,/^failed to/i,/^error:/i,/^forbidden/i,/^unauthorized/i].some(e=>e.test(t))}async function ee(){d+=1,!(d<mt)&&(d=0,await new Promise(e=>{setTimeout(e,0)}))}async function m(e){return e.type===`ping`?`continue`:e.type===`error`?(r(f(e)),n(),`stop`):e.type===`message`?(i?.({role:e.role??`assistant`,content:e.content??``,isThinking:e.isThinking}),`continue`):e.type===`complete`?(n(),`stop`):e.type===`result`&&p(e.content)?(r(a(e.content??`Unknown error`)),n(),`stop`):(t(e),await ee(),`continue`)}async function h(){if(!u.trim())return`continue`;try{return await m(JSON.parse(u))}catch{return u.trim()&&t({type:`result`,content:u}),`continue`}}async function g(e){let t=e.trim();if(!t)return`continue`;try{return await m(JSON.parse(t))}catch{return`continue`}}async function _(){try{for(;!s;){let{done:e,value:t}=await o.read();if(e||s){if(!s&&e){if(await h()===`stop`)return;n()}break}u+=l.decode(t,{stream:!0});let r=u.split(`
2
+ `);u=r.pop()??``;for(let e of r)if(s||await g(e)===`stop`)return}}catch(e){s||(r(e instanceof Error?e.message:`Stream error`),n())}}return _(),c}var gt=r(`gitops.api`);async function _t(e,t=!1,n=!1){let r=new URLSearchParams;t&&r.set(`fresh`,`true`),n&&r.set(`asyncRefresh`,`true`);let i=r.toString(),a=i?`api/git/unified-status/${H(e)}?${i}`:`api/git/unified-status/${H(e)}`,o=performance.now();gt.debug(`getUnifiedGitStatus start`,{threadId:e,fresh:t});try{return await I(a)}finally{let n=Math.round(performance.now()-o);gt.debug(`getUnifiedGitStatus end`,{threadId:e,fresh:t,duration:n})}}async function vt(e,t,n){return(await L(`api/git/generate-commit-message/${H(e)}`,{model:t,provider:n})).message}async function yt(e,t){await L(`api/git/commit/${H(e)}`,{message:t})}async function bt(e){await L(`api/git/push/${H(e)}`)}async function xt(e){await L(`api/git/pull/${H(e)}`)}async function St(e){return L(`api/git/sync-branch/${H(e)}`,{})}async function Ct(e,t,n){return L(`api/git/generate-pr-info/${H(e)}`,{model:t,provider:n})}async function wt(e,t,n,r){return L(`api/git/create-pr/${H(e)}`,{title:t,description:n,baseBranch:r})}async function Tt(e){await L(`api/git/fetch/${H(e)}`)}async function Et(e,t,n){return L(`api/git/create-branch/${H(e)}`,{baseBranch:t,branchName:n})}async function Dt(e,t){return L(`api/git/revert-file/${H(e)}`,{filePath:t})}async function Ot(e,t=50){return(await I(`api/git/log/${H(e)}?limit=${t}`)).commits}async function kt(e){return I(`api/git/pr-status/${H(e)}`)}async function At(e,t,n,r){return L(`api/git/create-repo/${H(e)}`,{repoName:t,description:n,isPrivate:r})}async function jt(e,t){return L(`api/git/checkpoint/${H(e)}`,{messageId:t})}async function Mt(e,t){return L(`api/git/checkpoint-restore/${H(e)}`,{checkpointRef:t})}async function Nt(e){return I(`api/git/diff/${H(e)}`)}async function Pt(e,t,n){return F(`api/git/media/${H(e)}?path=${encodeURIComponent(t)}&version=${n}`)}async function Ft(e){return L(`api/git/cleanup-deleted-branches/${H(e)}`)}async function It(){return(await I(`api/skills/popular`)).skills??[]}async function Lt(){return(await I(`api/skills/sources`)).sources??[]}async function Rt(e){return(await I(`api/skills/catalog?${new URLSearchParams({sourceId:e}).toString()}`)).skills??[]}async function zt(e,t){return L(`api/skills/sources/verify`,{title:e,url:t})}async function Bt(e,t,n){return R(`api/skills/sources/${H(e)}`,{title:t,url:n})}async function Vt(e){await z(`api/skills/sources/${H(e)}`)}async function Ht(e){return(await L(`api/skills/sources/import`,{sources:e})).sources??[]}async function Ut(e,t){return I(`api/skills/catalog/files?${new URLSearchParams({sourceId:e,skillId:t}).toString()}`)}async function Wt(e,t,n){return I(`api/skills/catalog/file?${new URLSearchParams({sourceId:e,skillId:t,relativePath:n}).toString()}`)}async function Gt(){return(await I(`api/agents/popular`)).agents??[]}async function Kt(){return(await I(`api/rules/popular`)).rules??[]}async function qt(){return(await I(`api/slash-commands/popular`)).commands??[]}async function Jt(e,t,n,r,i){return L(`api/threads/${H(e)}/ai-files/github-folder`,{gitHubRepo:t,gitHubFolder:n,destPath:r,gitHubRef:i})}async function Yt(e,t,n,r){return L(`api/threads/${H(e)}/ai-files/catalog-skill`,{sourceId:t,skillId:n,destPath:r})}var Xt=e({EmptyBalanceError:()=>G,acknowledgeBrowserJsStarted:()=>Ci,applyAppUpdate:()=>gi,authorizeMCPOAuth:()=>ji,checkForAppUpdate:()=>hi,checkGitInstalled:()=>ni,checkVpInstalled:()=>an,clearChatHistory:()=>dr,clearConversationHistory:()=>ui,clearLogFeed:()=>xn,clearProjectTaskModifications:()=>Ln,clearSlackTokens:()=>En,compactChat:()=>fr,completeOnboarding:()=>ri,copyImageToClipboard:()=>jr,createFolderProject:()=>Vn,createProject:()=>Rn,createProjectFromZip:()=>Un,createScaffoldedProject:()=>sn,createSlackBinding:()=>Dn,createSlashCommand:()=>ci,createThread:()=>Zn,createThreadAgent:()=>Bi,createThreadSkill:()=>zi,createUserTask:()=>qr,deleteAccount:()=>hn,deleteCommand:()=>zr,deleteMCPServer:()=>Oi,deleteProject:()=>Xn,deleteProjectAIFile:()=>Fi,deleteSlackBinding:()=>On,deleteSlashCommand:()=>li,deleteThread:()=>Qn,deleteThreadAIFile:()=>$,deleteUserTask:()=>Jr,disableImageModel:()=>kr,disableModel:()=>Cr,discoverMCPServers:()=>ki,enableImageModel:()=>Or,enableModel:()=>Sr,exportProjectPlugin:()=>Nr,fetchAllAvailableModels:()=>xr,fetchAvailableImageModels:()=>Er,fetchAvailableModels:()=>br,fetchPendingAskUserQuestions:()=>_i,fixComments:()=>nr,freeDevServerPort:()=>Qr,generateImage:()=>Ar,generateThreadTitle:()=>er,generateWorkspaceHandoff:()=>pr,getAccountInfo:()=>J,getAccountSettings:()=>yn,getAllEnabledImageModels:()=>Dr,getAllEnabledModels:()=>Tr,getAvailablePrograms:()=>jn,getChatHistory:()=>ir,getCliProcesses:()=>Mn,getContextBreakdown:()=>pi,getConversationFolderPath:()=>or,getConversationUsage:()=>fi,getGitUser:()=>X,getGitUserName:()=>Fn,getLatencyStatistics:()=>vn,getMCPConfig:()=>Ei,getMCPOAuthStatus:()=>Mi,getObservationPage:()=>ar,getOnboardingStatus:()=>ti,getPackageScripts:()=>Br,getPopularMCPServers:()=>Ai,getProcessingState:()=>Y,getProcessingThreads:()=>Pn,getProject:()=>Wn,getProjectAIFiles:()=>Pi,getProjectEnvVars:()=>Gn,getProjectScripts:()=>Hr,getProjectSystemPrompt:()=>ei,getProjectWindowState:()=>Kn,getProjects:()=>In,getProviderCredits:()=>dn,getProviderLogoCdnUrl:()=>un,getProviderLogoUrl:()=>ln,getProviders:()=>cn,getRecentConversations:()=>di,getRecommendedModels:()=>ai,getScaffoldTemplates:()=>rn,getSessionToolLearnings:()=>sr,getSlackManifest:()=>wn,getSlackSettings:()=>bn,getSlashCommands:()=>oi,getSlashCommandsAndSkills:()=>si,getSpendSummary:()=>_n,getThread:()=>Gr,getThreadAIFile:()=>Li,getThreadAIFiles:()=>Ii,getThreadFiles:()=>Vr,getToolDefinitionsBreakdown:()=>mi,getUserTasks:()=>Kr,installProjectPluginImport:()=>Fr,installVp:()=>on,invalidateProjectsCache:()=>Z,isDevServerRunning:()=>$r,killCliProcess:()=>Nn,openExternalUrl:()=>mn,openFolderProject:()=>zn,openPathProject:()=>Bn,openProjectWith:()=>hr,openThreadWith:()=>gr,postClientLog:()=>Cn,previewProjectPluginImport:()=>Pr,processVoiceTranscript:()=>An,quitAccount:()=>gn,refreshModels:()=>Lr,replaceUniqueProjectText:()=>Jn,reportBrowserActionResult:()=>Ti,reportBrowserWebviewReady:()=>wi,resetOnboarding:()=>ii,revokeMCPOAuth:()=>Ni,routeChatPrompt:()=>tr,runProjectScript:()=>Ur,saveCommand:()=>Rr,saveImageToDownloads:()=>Mr,saveMCPServer:()=>Di,saveModelSettings:()=>wr,saveProjectWindowState:()=>qn,saveProviderEnvironment:()=>pn,saveProviderKey:()=>fn,saveThreadAIFile:()=>Ri,selectThread:()=>rr,sendChatMessage:()=>cr,setLowBalanceListener:()=>tn,setSlackTokens:()=>Tn,startDevServer:()=>Xr,steerChatMessage:()=>lr,stopChatGeneration:()=>mr,stopDevServer:()=>Zr,stopProjectScript:()=>Wr,streamLogFeed:()=>Sn,submitAskUserAnswer:()=>vi,submitBrowserJsResult:()=>Si,submitSeatbeltEscalationResponse:()=>bi,submitShellPermissionResponse:()=>yi,submitWebFetchPermissionResponse:()=>xi,subscribeToChatStream:()=>ur,suggestRunCommand:()=>Yr,syncProjectEnvVars:()=>Yn,ttlCache:()=>W,updateAccountSettings:()=>kn,updateProject:()=>Q,updateProjectName:()=>yr,updateProjectOpenWith:()=>_r,updateProjectSetupScript:()=>vr,updateThread:()=>$n,uploadProjectPlugin:()=>Ir}),Zt=r(`gitops.api`),G=class extends Error{constructor(){super(`No prompts remaining`),this.name=`EmptyBalanceError`}},Qt=50;async function $t(){let{plan:e,promptsRemaining:t}=await J();return e===`unlimited-pro`?{isEmpty:!1,isLow:!1,promptsRemaining:-1}:{isEmpty:t<=0,isLow:t>0&&t<=Qt,promptsRemaining:t}}var en=null,K=!1;function tn(e){en=e}function nn(e){K||(K=!0,en?.(e))}async function rn(){return I(`api/scaffold/templates`)}async function an(){return(await I(`api/scaffold/check-vp`)).installed}async function on(){return L(`api/scaffold/install-vp`,{})}async function sn(e,t,n,r){return B(`api/scaffold`,{projectName:e,templateId:t,packageManager:n},{signal:r})}async function cn(){return W.get(`providers`,async()=>I(`api/providers`),6e4)}function ln(e){return`${k()}/api/providers/${H(e)}/logo`}function un(e){return`https://models.tarsk.io/svg/${H(e)}.svg`}async function dn(e){return W.get(`provider-credits-${e}`,async()=>I(`api/providers/${H(e)}/credits`),3e4)}async function fn(e,t){await L(`api/providers/keys`,{providerName:e,apiKey:t}),W.invalidate(`providers`)}async function pn(e){await L(`api/providers/env`,{values:e}),W.invalidate(`providers`)}function q(e){return typeof window>`u`?!1:window.open(e,`_blank`,`noopener,noreferrer`)!==null}async function mn(e){if(typeof window<`u`&&!E()){q(e);return}try{await L(`api/providers/open-external`,{url:e})}catch(t){if(q(e))return;throw t instanceof Error?t:Error(`Failed to open URL`)}}async function J(){return I(`api/account/info`)}async function hn(){return L(`api/account/delete`,{})}async function gn(){return L(`api/account/quit`,{})}async function _n(){return I(`api/account/spend`)}async function vn(){return I(`api/account/statistics`)}async function yn(){return I(`api/account/settings`)}async function bn(){return I(`api/slack/settings`)}async function xn(){await z(`api/logs`)}async function Sn(e){return $e(`api/logs/stream`,e)}async function Cn(e){try{await L(`api/logs`,e)}catch(e){Zt.debug(`Failed to post client log entry`,e)}}async function wn(){return I(`api/slack/manifest`)}async function Tn(e){return R(`api/slack/tokens`,e)}async function En(){await z(`api/slack/tokens`)}async function Dn(e){return L(`api/slack/bindings`,e)}async function On(e,t){await z(`api/slack/bindings/${H(e)}/${H(t)}`)}async function kn(e){return R(`api/account/settings`,e)}async function An(e,t){return(await L(`api/voice-model/process-transcript`,{text:e,threadId:t?.threadId,provider:t?.provider,model:t?.model})).text}async function jn(){return W.get(`available-programs`,async()=>(await I(`api/programs`)).programs??[],3e5)}async function Mn(){return(await I(`api/processes`)).processes}async function Nn(e){await L(`api/processes/${H(e)}/kill`)}async function Y(){return W.get(`processing-threads`,async()=>{let e=await I(`api/threads/processing`);return{processingThreadIds:e.processingThreadIds??[],processingRuns:e.processingRuns??[]}},0)}async function Pn(){return(await Y()).processingThreadIds}async function X(){return W.get(`git-user`,async()=>{try{let e=await I(`api/git/user`);return{name:e.name??``,email:e.email??``}}catch{return{name:``,email:``}}},6e5)}async function Fn(){return(await X()).name}async function In(){return W.get(`projects`,async()=>{let e=await I(`api/projects`),r=Array.isArray(e)?e:e.projects??[],i=Array.isArray(e)?null:e.cloneRootPath??null;return{projects:(r||[]).map(e=>{let t=e;return{projectId:t.projectId??t.id,name:t.name,gitUrl:t.gitUrl,projectPath:t.projectPath??t.path,threads:t.threads??[],commands:t.commands??[],setupScript:t.setupScript,validationScript:t.validationScript,runCommand:t.runCommand,planPrompt:t.planPrompt,testPrompt:t.testPrompt,reviewPrompt:t.reviewPrompt,customSystemPrompt:t.customSystemPrompt,useCustomSystemPrompt:!!t.useCustomSystemPrompt,allowAllCommands:t.allowAllCommands!==!1,allowedCommandPatterns:t.allowedCommandPatterns??[],defaultChatMode:n(t.defaultChatMode)?t.defaultChatMode:void 0,disabledTools:t.disabledTools??void 0,smartJsEnabled:t.smartJsEnabled===!0,useBuiltInBrowser:t.useBuiltInBrowser!==!1,projectIcon:t.projectIcon,tasksModifiedCount:Number(t.tasksModifiedCount)||0}}).map(e=>{let n=(e.threads||[]).map(e=>{let n=e,r=n.threadId??n.id;return{threadId:r,title:n.title??r,path:n.path??``,currentBranch:n.currentBranch??``,isSelected:!!n.isSelected,model:n.model??void 0,modelProvider:n.modelProvider??void 0,gitStatusDot:t(n.gitStatusDot)}});return{...e,threads:n}}),cloneRootPath:i}},3e4)}async function Ln(e){await L(`api/projects/${H(e)}/tasks/clear-modifications`)}async function Rn(e,t,n){return B(`api/projects`,{gitUrl:e,commitMethod:t},{signal:n})}async function zn(e){return B(`api/projects/open-folder`,{},{signal:e})}async function Bn(e,t){return B(`api/projects/open-path`,{path:e},{signal:t})}async function Vn(e,t){return B(`api/projects/new-folder`,{projectName:e},{signal:t})}function Hn(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>{let e=typeof r.result==`string`?r.result:``,n=e.indexOf(`,`);t(n>=0?e.slice(n+1):e)},r.onerror=()=>n(r.error),r.readAsDataURL(e)})}async function Un(e,t,n,r){return B(`api/projects/from-zip`,{data:await Hn(e),name:t,overrideProjectId:n},{signal:r})}async function Wn(e){return W.get(`project-${e}`,async()=>{let t=await I(`api/projects/${H(e)}`);return{...t,projectPath:t.projectPath??t.path}},3e4)}async function Gn(e){return I(`api/projects/${H(e)}/env-vars`)}async function Kn(e){return(await I(`api/projects/${H(e)}/window-state`)).state}async function qn(e,t){await et(`api/projects/${H(e)}/window-state`,{state:t})}async function Jn(e,t,n){return L(`api/projects/${H(e)}/replace-unique-text`,{oldText:t,newText:n})}async function Yn(e,t){await R(`api/projects/${H(e)}/env-vars`,{vars:t})}async function Xn(e){await z(`api/projects/${H(e)}`),W.invalidate(`projects`)}function Z(e){W.invalidate(`projects`),e&&W.invalidate(`project-${e}`)}async function Zn(e,t,n){return B(`api/threads`,{projectId:e,title:t,sourceThreadId:n?.sourceThreadId})}async function Qn(e,t){let n=await Qe(`api/threads/${H(t)}?stream=true`);return W.invalidate(`projects`),n}async function $n(e,t){await Xe(`api/threads/${H(e)}`,t),W.invalidate(`thread-${e}`),(`model`in t||`modelProvider`in t||`chatTitles`in t||`diffComments`in t)&&W.invalidate(`projects`)}async function er(e,t,n){return(await L(`api/threads/${H(e)}/generate-title`,{prompt:t,provider:n?.provider,model:n?.model})).title}async function tr(e,t){return(await L(`api/chat/${H(e)}/auto-route`,{prompt:t})).decision}async function nr(e,t){return L(`api/threads/${H(e)}/fix-comments`,{comments:t})}async function rr(e,t){await L(`api/threads/${H(t)}/select`)}async function ir(e,t){let n=t?`?conversationId=${encodeURIComponent(t)}`:``;return{threadId:e,messages:await I(`api/threads/${H(e)}/messages${n}`)}}async function ar(e,t,n=1,r=2e3){let i=new URLSearchParams({offset:String(n),limit:String(r)});return I(`api/threads/${H(e)}/observations/${H(t)}?${i}`)}async function or(e){return(await I(`api/threads/${H(e)}/conversation-folder-path`)).path}async function sr(e){return(await I(`api/threads/${H(e)}/session-learnings`)).learnings}async function cr(e,t,n,r=[],i,a,o,s,c,l,u){let{isEmpty:d,isLow:f,promptsRemaining:p}=await $t();if(d)throw new G;return f?nn(p):K=!1,B(`api/chat`,{threadId:e,content:t,model:n,provider:a,planMode:o,ralphMode:s,orchestrateMode:u,checkpointRef:c,conversationId:l,attachments:r.map(e=>({name:e.fileName,content:e.content.split(`,`)[1]||e.content,size:0,mimeType:e.mimeType||`application/octet-stream`}))},{signal:i})}async function lr(e,t,n,r,i,a){await L(`api/chat/${H(e)}/steer`,{messageId:t,content:n,conversationId:r,model:i,attachments:a.map(e=>({name:e.fileName,content:e.content.split(`,`)[1]||e.content,size:0,mimeType:e.mimeType||`application/octet-stream`}))})}async function ur(e,t,n){let r=new URLSearchParams({replay:`compact`}),i=n?.trim();return i&&r.set(`conversationId`,i),$e(`api/chat/subscribe/${H(e)}?${r.toString()}`,{signal:t})}async function dr(e){let t=await z(`api/chat/${H(e)}`);return W.invalidate(`thread-${e}`),t?.conversationId||``}async function fr(e,t){return V(`api/chat/${H(e)}/compact`,t)}async function pr(e,t){let n=await L(`api/chat/${H(e)}/workspace-handoff`,t);return typeof n.brief==`string`?n.brief:``}async function mr(e,t){try{let n=new URLSearchParams,r=t?.conversationId?.trim();r&&n.set(`conversationId`,r),t?.all&&n.set(`all`,`1`);let i=n.size>0?`?${n.toString()}`:``;await L(`api/chat/stop/${H(e)}${i}`)}catch{}}async function Q(e,t){return t.runNow&&t.setupScript?Ze(`api/projects/${H(e)}`,t):(await et(`api/projects/${H(e)}`,t),Z(e),null)}async function hr(e,t){await V(`api/projects/${H(e)}/open`,{program:t})}async function gr(e,t){await V(`api/threads/${H(e)}/open`,{program:t})}async function _r(e,t){await Q(e,{program:t})}async function vr(e,t,n){return Q(e,{setupScript:t,runNow:n})}async function yr(e,t){await Q(e,{name:t})}async function br(e,t){let n=new URLSearchParams({provider:e});t!==void 0&&n.set(`supportedTools`,t?`true`:`false`),n.set(`useCase`,`coding`);let r=`available-models-${n.toString()}`;return W.get(r,async()=>{let e=await I(`api/models?${n.toString()}`);return{models:e.models??[],enabledModelIds:e.enabledModelIds??[]}},12e4)}async function xr(e){let t=new URLSearchParams({useCase:e}),n=`available-models-all-${e}`;return W.get(n,async()=>(await I(`api/models/all?${t.toString()}`)).providers??{},12e4)}async function Sr(e,t){await L(`api/models/${H(e,t)}/enable`),W.invalidate(`enabled-models`),W.invalidatePattern(/^available-models-/),W.invalidatePattern(/^available-image-models-/)}async function Cr(e,t){await L(`api/models/${H(e,t)}/disable`),W.invalidate(`enabled-models`),W.invalidatePattern(/^available-models-/),W.invalidatePattern(/^available-image-models-/)}async function wr(e,t,n){await L(`api/models/${H(e,t)}/settings`,n),W.invalidatePattern(/^available-models-/),W.invalidate(`enabled-models`)}async function Tr(){return W.get(`enabled-models`,async()=>(await I(`api/models/enabled?useCase=coding`)).enabledModels??{},12e4)}async function Er(e){let t=new URLSearchParams({provider:e,useCase:`image`}),n=`available-image-models-${e}`;return W.get(n,async()=>{let e=await I(`api/models?${t.toString()}`);return{models:e.models??[],enabledModelIds:e.enabledModelIds??[]}},12e4)}async function Dr(){return W.get(`enabled-image-models`,async()=>(await I(`api/models/enabled?useCase=image`)).enabledModels??{},12e4)}async function Or(e,t){await L(`api/models/${H(e,t)}/enable?useCase=image`),W.invalidate(`enabled-image-models`),W.invalidatePattern(/^available-models-/),W.invalidatePattern(/^available-image-models-/)}async function kr(e,t){await L(`api/models/${H(e,t)}/disable?useCase=image`),W.invalidate(`enabled-image-models`),W.invalidatePattern(/^available-models-/),W.invalidatePattern(/^available-image-models-/)}async function Ar(e,t,n,r){return L(`api/image/generate`,{prompt:e,model:t,provider:n,threadId:r})}async function jr(e){await lt(e)}async function Mr(e){return ct(e)}async function Nr(e,t){return Je(`api/projects/${H(e)}/plugin-export`,t)}async function Pr(e,t){return L(`api/projects/${H(e)}/plugin-import/preview`,{url:t})}async function Fr(e,t){return L(`api/projects/${H(e)}/plugin-import`,t)}async function Ir(e,t){return L(`api/projects/${H(e)}/plugin-upload`,t)}async function Lr(e){let t=await L(`api/models/${H(e)}/refresh`);return W.invalidatePattern(/^available-models-/),W.invalidatePattern(/^available-image-models-/),W.invalidate(`enabled-models`),W.invalidate(`enabled-image-models`),t.modelCount??0}async function Rr(e,t){await L(`api/projects/${H(e)}/commands`,t)}async function zr(e,t){await z(`api/projects/${H(e)}/commands/${H(t)}`)}async function Br(e){return I(`api/projects/${H(e)}/package-scripts`)}async function Vr(e){return I(`api/threads/${H(e)}/files`)}async function Hr(e){return(await I(`api/threads/${H(e)}/project-scripts`)).scripts}async function Ur(e,t,n,r){let{relativeFolder:i,...a}=r??{},o={scriptName:t,command:n};return i&&(o.relativeFolder=i),B(`api/threads/${H(e)}/project-scripts/run`,o,a)}async function Wr(e,t){return L(`api/threads/${H(e)}/project-scripts/stop`,{scriptName:t})}async function Gr(e){return W.get(`thread-${e}`,async()=>I(`api/threads/${e}`),45e3)}async function Kr(e){return(await I(`api/projects/${H(e)}/user-tasks`)).tasks??[]}async function qr(e,t){return L(`api/projects/${H(e)}/user-tasks`,{content:t})}async function Jr(e,t){await z(`api/projects/${H(e)}/user-tasks/${H(t)}`)}async function Yr(e){return L(`api/projects/${H(e)}/run-suggest`,{})}async function Xr(e,t,n){return Zt.info(`Start dev server requested`,{projectId:e,threadId:t}),W.invalidate(`dev-server-running-${e}`),B(`api/projects/${H(e)}/run`,{threadId:t},{signal:n})}async function Zr(e){return W.invalidate(`dev-server-running-${e}`),L(`api/projects/${H(e)}/stop`,{})}async function Qr(e,t){return L(`api/projects/${H(e)}/free-port`,{port:t})}async function $r(e){return W.get(`dev-server-running-${e}`,async()=>I(`api/projects/${H(e)}/running`),3e3)}async function ei(e){return I(`api/projects/${H(e)}/system-prompt`)}async function ti(){return I(`api/onboarding/status`)}async function ni(){return I(`api/onboarding/git-check`)}async function ri(){return L(`api/onboarding/complete`,{})}async function ii(){return L(`api/onboarding/reset`,{})}async function ai(){return I(`api/onboarding/recommended-models`)}async function oi(e){return(await I(`api/slash-commands?threadId=${H(e)}`)).commands??[]}async function si(e){let t=await I(`api/slash-commands?threadId=${H(e)}`);return{commands:t.commands??[],skills:t.skills??[],bundledSkills:t.bundledSkills??[]}}async function ci(e,t,n,r,i){return L(`api/slash-commands`,{name:e,content:t,metadata:n,scope:r,threadId:i})}async function li(e){let t=await fetch(`http://localhost:641/api/slash-commands`,{method:`DELETE`,headers:{"Content-Type":`application/json`},body:JSON.stringify({filePath:e})});if(!t.ok)throw Error(`Failed to delete slash command: ${t.statusText}`);return t.json()}async function ui(e){let t=new URLSearchParams;e?.threadId?t.set(`threadId`,e.threadId):e?.projectId&&t.set(`projectId`,e.projectId);let n=t.toString();await z(`api/conversations${n?`?${n}`:``}`)}async function di(e=20,t=0,n){return I(`api/conversations/recent?limit=${Math.min(Math.max(e,1),100)}&offset=${Math.max(t,0)}${n?`&projectId=${encodeURIComponent(n)}`:``}`)}async function fi(e,t){return I(`api/conversations/${H(e)}/${H(t)}/usage`)}async function pi(e,t,n){let r=`context-breakdown-${e}-${t}`;return n?.forceRefresh&&W.invalidate(r),W.get(r,async()=>I(`api/conversations/${H(e)}/${H(t)}/context`),45e3)}async function mi(e,t){return I(`api/conversations/${H(e)}/${H(t)}/context/tool-definitions`)}async function hi(){try{return await I(`api/update/check`)}catch{return{updateAvailable:!1,supported:!1}}}async function gi(){return L(`api/update/apply`)}async function _i(){return(await I(`api/ask-user/pending`)).questions??[]}async function vi(e,t){await L(`api/ask-user/respond`,typeof t==`string`?{toolCallId:e,answer:t}:{toolCallId:e,answers:t})}async function yi(e,t,n){await L(`api/shell-permission/respond`,{toolCallId:e,decision:t,pattern:n?.pattern,projectId:n?.projectId})}async function bi(e,t){await L(`api/shell-permission/respond`,{toolCallId:e,escalationScope:t===`skip`?void 0:t,escalationDecision:t===`skip`?`skip`:void 0})}async function xi(e,t){await L(`api/web-fetch-permission/respond`,{toolCallId:e,decision:t})}async function Si(e,t,n){await L(`api/browser-js/respond`,{toolCallId:e,result:t,threadId:n})}async function Ci(e,t){await L(`api/browser-js/respond`,{toolCallId:e,started:!0,threadId:t})}async function wi(e,t){await L(`api/browser/ready`,{toolCallId:e,webviewId:t})}async function Ti(e,t){await L(`api/browser/action-result`,{toolCallId:e,result:t})}async function Ei(e){return I(`api/mcp/config?projectPath=${encodeURIComponent(e)}`)}async function Di(e,t,n){return R(`api/mcp/config`,{projectPath:e,serverName:t,serverConfig:n})}async function Oi(e,t){return z(`api/mcp/config/${H(t)}?projectPath=${encodeURIComponent(e)}`)}async function ki(e,t){return L(`api/mcp/discover`,{projectPath:e,serverName:t})}async function Ai(){return(await I(`api/mcp/popular`)).servers??[]}async function ji(e,t){return L(`api/mcp/oauth/authorize`,{projectPath:e,serverName:t})}async function Mi(e,t){return I(`api/mcp/oauth/status?projectPath=${encodeURIComponent(e)}&serverName=${encodeURIComponent(t)}`)}async function Ni(e,t){return z(`api/mcp/oauth?projectPath=${encodeURIComponent(e)}&serverName=${encodeURIComponent(t)}`)}async function Pi(e){return(await I(`api/projects/${H(e)}/ai-files`)).nodes??[]}async function Fi(e,t){return z(`api/projects/${H(e)}/ai-file?path=${encodeURIComponent(t)}`)}async function Ii(e){return(await I(`api/threads/${H(e)}/ai-files`)).nodes??[]}async function Li(e,t){return I(`api/threads/${H(e)}/ai-file?path=${encodeURIComponent(t)}`)}async function Ri(e,t,n){return R(`api/threads/${H(e)}/ai-file`,{path:t,content:n})}async function zi(e,t,n){return L(`api/threads/${H(e)}/ai-files/skill`,{name:t,description:n})}async function Bi(e,t,n,r){return L(`api/threads/${H(e)}/ai-files/agent`,{name:t,description:n,tools:r})}async function $(e,t){return z(`api/threads/${H(e)}/ai-file?path=${encodeURIComponent(t)}`)}export{yn as $,Rt as $n,ye as $r,hr as $t,Xn as A,ee as Ai,Sn as An,H as Ar,di as At,Or as B,Q as Bn,w as Br,Li as Bt,Zn as C,h as Ci,tn as Cn,St as Cr,ei as Ct,hn as D,Ee as Di,mr as Dn,pt as Dr,un as Dt,qr as E,we as Ei,lr as En,ht as Er,dn as Et,$ as F,f as Fi,xi as Fn,L as Fr,bn as Ft,br as G,Ir as Gn,T as Gr,Fr as Gt,Nr as H,_r as Hn,We as Hr,Vr as Ht,Jr as I,ve as Ii,ur as In,Ye as Ir,oi as It,Qr as J,Ut as Jn,b as Jr,$r as Jt,_i as K,Vt as Kn,Ge as Kr,on as Kt,kr as L,_ as Li,Yr as Ln,R as Lr,si as Lt,On as M,ce as Mi,Si as Mn,k as Mr,rn as Mt,li as N,ge as Ni,bi as Nn,F as Nr,sr as Nt,zr as O,u as Oi,Zr as On,W as Or,ln as Ot,Qn as P,ze as Pi,yi as Pn,Xe as Pr,wn as Pt,J as Q,qt as Qn,Se as Qr,Bn as Qt,Cr as R,Me as Ri,Yn as Rn,qe as Rr,_n as Rt,ci as S,Pe as Si,cr as Sn,Dt as Sr,Hr as St,zi as T,oe as Ti,Xr as Tn,ut as Tr,In as Tt,xr as U,vr as Un,S as Ur,mi as Ut,Sr as V,yr as Vn,Ke as Vr,Ii as Vt,Er as W,$n as Wn,Ve as Wr,Kr as Wt,er as X,Kt as Xn,c as Xr,mn as Xt,Ar as Y,Gt as Yn,s as Yr,Nn as Yt,pr as Z,It as Zn,fe as Zr,zn as Zt,Vn as _,_e as _i,qn as _n,Et as _r,Y as _t,ji as a,Ce as ai,Lr as an,zt as ar,pi as at,sn as b,ke as bi,Ri as bn,xt as br,Pi as bt,an as c,l as ci,wi as cn,vt as cr,X as ct,xn as d,p as di,tr as dn,Ot as dr,Ei as dt,te as ei,gr as en,Lt as er,Dr as et,Ln as f,Fe as fi,Ur as fn,Pt as fr,Mi as ft,jr as g,d as gi,wr as gn,yt as gr,Ai as gt,ri as h,Re as hi,Di as hn,Ft as hr,Br as ht,gi as i,ae as ii,gn as in,Bt as ir,Mn as it,Fi as j,Ie as ji,vi as jn,I as jr,ai as jt,Oi as k,ue as ki,Wr as kn,z as kr,cn as kt,dr as l,de as li,ii as ln,Ct as lr,Fn as lt,fr as m,he as mi,Mr as mn,_t as mr,ti as mt,Ci as n,m as ni,Pr as nn,Yt as nr,jn as nt,hi as o,Te as oi,Jn as on,jt as or,or as ot,En as p,se as pi,Rr as pn,kt as pr,ar as pt,nr as q,Wt as qn,x as qr,Z as qt,Xt as r,re as ri,An as rn,Jt as rr,ir as rt,ni as s,xe as si,Ti as sn,At as sr,fi as st,G as t,Ne as ti,Cn as tn,Ht as tr,Tr as tt,ui as u,le as ui,Ni as un,Nt as ur,vn as ut,Rn as v,g as vi,pn as vn,wt as vr,Pn as vt,Bi as w,ie as wi,Tn as wn,Mt as wr,Kn as wt,Dn as x,ne as xi,rr as xn,bt as xr,Gn as xt,Un as y,je as yi,fn as yn,Tt as yr,Wn as yt,ki as z,Ae as zi,kn as zn,E as zr,Gr as zt};
@@ -1 +1 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{o as t,t as n}from"./react-vendor-Ee0-5T4I.js";import{at as r,x as i}from"./dist-ZlK7I-y-.js";import{t as a}from"./button-sfGyFWfz.js";import{i as o,n as s,r as c,t as l}from"./card-D5k0GHxM.js";var u=e(t(),1),d=n(),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:r.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{o as t,t as n}from"./react-vendor-Ee0-5T4I.js";import{S as r,ot as i}from"./dist-DjiNKpTV.js";import{t as a}from"./button-B6HDsfd5.js";import{i as o,n as s,r as c,t as l}from"./card-DZGd45nw.js";var u=e(t(),1),d=n(),f=r(`app.async-error-boundary.ui`),p=class extends u.Component{state={error:null};static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,t){f.error(`AsyncErrorBoundary caught an error`,{error:e,info:t})}handleRetry=()=>{this.setState({error:null}),this.props.onRetry?.()};render(){let{error:e}=this.state;return e?this.props.renderFallback?this.props.renderFallback(e,this.handleRetry):(0,d.jsx)(`div`,{className:`flex h-full items-center justify-center p-6`,children:(0,d.jsxs)(l,{className:`max-w-md`,children:[(0,d.jsx)(c,{children:(0,d.jsx)(o,{className:`text-destructive`,children:this.props.fallbackTitle??`Something went wrong`})}),(0,d.jsxs)(s,{className:`space-y-4`,children:[(0,d.jsx)(`p`,{className:i.body,children:e.message}),(0,d.jsx)(a,{variant:`outline`,onClick:this.handleRetry,children:`Retry`})]})]})}):this.props.children}};export{p as t};
@@ -1 +1 @@
1
- import{n as e,t}from"./react-vendor-Ee0-5T4I.js";import{at as n}from"./dist-ZlK7I-y-.js";import{Et as r}from"./dist-DIjomljy.js";import{t as i}from"./utils-CT-Dw22R.js";var a=e(),o=t();function s(e){let t=(0,a.c)(16),{className:s,label:c,size:l,overScenic:u}=e,d=l===void 0?`md`:l,f=u===void 0?!1:u,p=d===`sm`?`h-4 w-4`:d===`lg`?`h-8 w-8`:`h-6 w-6`,m;t[0]===s?m=t[1]:(m=i(`flex h-full items-center justify-center`,s),t[0]=s,t[1]=m);let h=f?`scenic-foreground`:`text-muted-foreground`,g;t[2]!==p||t[3]!==h?(g=i(p,`animate-spin mx-auto`,h),t[2]=p,t[3]=h,t[4]=g):g=t[4];let _;t[5]===g?_=t[6]:(_=(0,o.jsx)(r,{className:g}),t[5]=g,t[6]=_);let v;t[7]!==c||t[8]!==f?(v=c?(0,o.jsx)(`p`,{className:i(f?i(n.body,`scenic-foreground-muted`):n.bodyMuted,`mt-2`),children:c}):null,t[7]=c,t[8]=f,t[9]=v):v=t[9];let y;t[10]!==_||t[11]!==v?(y=(0,o.jsxs)(`div`,{className:`text-center`,children:[_,v]}),t[10]=_,t[11]=v,t[12]=y):y=t[12];let b;return t[13]!==m||t[14]!==y?(b=(0,o.jsx)(`div`,{className:m,children:y}),t[13]=m,t[14]=y,t[15]=b):b=t[15],b}function c(){let e=(0,a.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,o.jsx)(`div`,{className:`space-y-1 px-2 py-2`,children:[1,2,3].map(l)}),e[0]=t):t=e[0],t}function l(e){return(0,o.jsx)(`div`,{className:`animate-pulse h-7 bg-muted rounded-full`},e)}function u(){let e=(0,a.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,o.jsx)(`div`,{className:`animate-pulse h-4 bg-muted rounded mx-4 my-1`}),e[0]=t):t=e[0],t}export{s as n,c as r,u as t};
1
+ import{n as e,t}from"./react-vendor-Ee0-5T4I.js";import{ot as n}from"./dist-DjiNKpTV.js";import{Et as r}from"./dist-CNOCRPxn.js";import{t as i}from"./utils-CT-Dw22R.js";var a=e(),o=t();function s(e){let t=(0,a.c)(16),{className:s,label:c,size:l,overScenic:u}=e,d=l===void 0?`md`:l,f=u===void 0?!1:u,p=d===`sm`?`h-4 w-4`:d===`lg`?`h-8 w-8`:`h-6 w-6`,m;t[0]===s?m=t[1]:(m=i(`flex h-full items-center justify-center`,s),t[0]=s,t[1]=m);let h=f?`scenic-foreground`:`text-muted-foreground`,g;t[2]!==p||t[3]!==h?(g=i(p,`animate-spin mx-auto`,h),t[2]=p,t[3]=h,t[4]=g):g=t[4];let _;t[5]===g?_=t[6]:(_=(0,o.jsx)(r,{className:g}),t[5]=g,t[6]=_);let v;t[7]!==c||t[8]!==f?(v=c?(0,o.jsx)(`p`,{className:i(f?i(n.body,`scenic-foreground-muted`):n.bodyMuted,`mt-2`),children:c}):null,t[7]=c,t[8]=f,t[9]=v):v=t[9];let y;t[10]!==_||t[11]!==v?(y=(0,o.jsxs)(`div`,{className:`text-center`,children:[_,v]}),t[10]=_,t[11]=v,t[12]=y):y=t[12];let b;return t[13]!==m||t[14]!==y?(b=(0,o.jsx)(`div`,{className:m,children:y}),t[13]=m,t[14]=y,t[15]=b):b=t[15],b}function c(){let e=(0,a.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,o.jsx)(`div`,{className:`space-y-1 px-2 py-2`,children:[1,2,3].map(l)}),e[0]=t):t=e[0],t}function l(e){return(0,o.jsx)(`div`,{className:`animate-pulse h-7 bg-muted rounded-full`},e)}function u(){let e=(0,a.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,o.jsx)(`div`,{className:`animate-pulse h-4 bg-muted rounded mx-4 my-1`}),e[0]=t):t=e[0],t}export{s as n,c as r,u as t};
@@ -0,0 +1,12 @@
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{S as i,ot as a}from"./dist-DjiNKpTV.js";import{Q as o,n as s,r as c}from"./store-CHF6tOp2.js";import{L as l,Rn as u,T as d,X as f,gt as p,j as m,mt as h,un as g,zn as _}from"./dist-CNOCRPxn.js";import{t as v}from"./utils-CT-Dw22R.js";import{t as y}from"./button-B6HDsfd5.js";import{Xt as b,on as x,zr as S}from"./api-D1GxdEEp.js";import{i as C,n as w,r as T,t as E}from"./tooltip-BtJG5fZl.js";import{i as D,r as O}from"./browser-overlay-block-CiDtkfup.js";import{t as k}from"./use-toast-xpb5jNtN.js";import{n as A}from"./chat-dock-context-8_5G30KG.js";import{B as j,C as M,Ht as N,It as P,K as F,S as I,T as L,Vt as R,Z as z,_ as B,b as V,f as H,p as U,sn as W,v as G,w as K,x as ee,y as te}from"./index-BOB3ZUQs.js";import{t as ne}from"./use-active-dock-panel-instance-cO_DR87G.js";var q=e(n(),1),J=t();async function Y(e){let{projectId:t,oldText:n,newText:r,selection:i,replaceUnique:a=x}=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:V(i,n,r)}}var X=r();function re(e){let t=(0,J.c)(43),{onCommit:n,onCancelPreview:r}=e,i=s(),a=c(ae),l=c(ie),u=c(Z),d;t[0]===a?d=t[1]:(d=e=>a?e.projectModelSelections[a]:void 0,t[0]=a,t[1]=d);let f=c(d),{selectedBrowserElement:p,setSelectedBrowserElement:m,setIsEditModeEnabled:h,setBrowserAgentProcessingThreadId:g}=j(),{handleSend:_}=N(),{paneId:v,conversationId:b}=R(),[x,S]=(0,q.useState)(!1),C;if(t[2]!==u||t[3]!==l){let e;t[5]===l?e=t[6]:(e=e=>e.projectId===l,t[5]=l,t[6]=e),C=u.find(e),t[2]=u,t[3]=l,t[4]=C}else C=t[4];let w=C,T;t[7]===p?T=t[8]:(T=I(p),t[7]=p,t[8]=T);let E=T,D;t[9]!==h||t[10]!==m?(D=()=>{S(!1),h(!1),m(null)},t[9]=h,t[10]=m,t[11]=D):D=t[11];let O=D,A;t[12]!==b||t[13]!==i||t[14]!==O||t[15]!==_||t[16]!==v||t[17]!==w?.lastSelectedModel||t[18]!==w?.lastSelectedModelProvider||t[19]!==l||t[20]!==a||t[21]!==g||t[22]!==f?.id||t[23]!==f?.provider?(A=async e=>{if(!l){k({title:`No project selected`,description:`Open a project to apply text edits.`,variant:`destructive`}),O();return}S(!0);let t=await Y({projectId:l,oldText:e.originalText,newText:e.currentText,selection:e.selection});if(t.kind===`unchanged`){k({title:`No text changes detected`}),O();return}if(t.kind===`replaced`){k({title:`Text updated`,description:`Replaced in ${t.path}`}),O();return}let n=f?.id??w?.lastSelectedModel,r=f?.provider??w?.lastSelectedModelProvider;if(!a||!n){k({title:`Could not apply text change`,description:`Select a chat thread and model to send this change as a prompt.`,variant:`destructive`}),S(!1);return}_(v,b,t.prompt,n,[],r),i({type:o.SetChatInputDraft,threadId:v===`primary`?a:`${a}:${v}`,draft:``}),g(a),O()},t[12]=b,t[13]=i,t[14]=O,t[15]=_,t[16]=v,t[17]=w?.lastSelectedModel,t[18]=w?.lastSelectedModelProvider,t[19]=l,t[20]=a,t[21]=g,t[22]=f?.id,t[23]=f?.provider,t[24]=A):A=t[24],w?.lastSelectedModel,w?.lastSelectedModelProvider,f?.id,f?.provider;let P=A,F,L;t[25]===E?(F=t[26],L=t[27]):(F=()=>{E||S(!1)},L=[E],t[25]=E,t[26]=F,t[27]=L),(0,q.useEffect)(F,L);let z,V;t[28]===P?(z=t[29],V=t[30]):(z=()=>{let e=function(e){let t=e.detail;ee(t)&&P(t)},t=function(e){let t=M(e.data);t&&P(t)};return window.addEventListener(B,e),window.addEventListener(`message`,t),function(){window.removeEventListener(B,e),window.removeEventListener(`message`,t)}},V=[P],t[28]=P,t[29]=z,t[30]=V),(0,q.useEffect)(z,V);let H;t[31]!==O||t[32]!==r?(H=function(){r(),O()},t[31]=O,t[32]=r,t[33]=H):H=t[33];let U=H;if(!E)return null;let W;t[34]!==x||t[35]!==n?(W=(0,X.jsx)(y,{type:`button`,size:`sm`,onClick:n,disabled:x,children:`Apply Changes`}),t[34]=x,t[35]=n,t[36]=W):W=t[36];let G;t[37]!==U||t[38]!==x?(G=(0,X.jsx)(y,{type:`button`,size:`sm`,variant:`outline`,onClick:U,disabled:x,children:`Cancel`}),t[37]=U,t[38]=x,t[39]=G):G=t[39];let K;return t[40]!==W||t[41]!==G?(K=(0,X.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]=K):K=t[42],K}function Z(e){return e.projects}function ie(e){return e.selectedProjectId}function ae(e){return e.selectedThreadId}function oe(e){let t=e.trim();return t?(!t.startsWith(`http://`)&&!t.startsWith(`https://`)&&(t=`http://${t}`),t):``}function Q(e){return typeof e==`string`?e:typeof e==`object`&&e&&`url`in e&&typeof e.url==`string`?e.url:``}var se=`tarsk-browser-page-title`;function ce(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 le(e){let t=ce(e);if(!t||t.type!==se)return null;let n=t.payload;if(!n||typeof n!=`object`)return null;let r=n.title;return typeof r==`string`?r:null}function ue(e){return le(e)}function de(e){return!e?.trim()}function fe(e,t){return de(t)?e:t.trim()}function pe(e){return e?e.querySelector(`electrobun-webview`):null}function me(e){e.webviewId!=null&&(e.toggleHidden(!0),e.togglePassthrough(!0))}function he(e){e.webviewId!=null&&(e.toggleHidden(!1),e.togglePassthrough(!1),e.syncDimensions(!0))}function ge(e,t){if(t){he(e);return}me(e)}function _e(e){return e!=null&&e.getClientRects().length>0}function ve(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),ge(e,n())}}return i=requestAnimationFrame(a),function(){r=!0,cancelAnimationFrame(i)}}function ye(e){let t=(0,J.c)(8),{useNativeWebview:n,shouldRenderNativeWebview:r,currentUrl:i,resolveWebview:a}=e,[o,s]=(0,q.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&&me(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,q.useLayoutEffect)(c,l),o}var be=i(`browser.preview-scripting`);function xe(e,t=!1,n=`select`){return`(function () {
2
+ const api = window.__tarskBrowserPreview;
3
+ if (!api || typeof api.setSelectMode !== "function") {
4
+ log.error("[browser-preview] selection API is not available");
5
+ return;
6
+ }
7
+ api.setSelectMode(${e?`true`:`false`}, ${t?`true`:`false`}, ${JSON.stringify(n)});
8
+ })();`}function Se(e){let t=e===`commit`?`commitTextEdit`:`cancelTextEdit`;return`(function () {
9
+ const api = window.__tarskBrowserPreview;
10
+ if (!api || typeof api.${t} !== "function") return;
11
+ api.${t}();
12
+ })();`}function Ce(e,t,n=!1,r=`select`){if(typeof e.executeJavascript!=`function`)throw Error(`Browser preview webview JS execution is not available`);try{e.executeJavascript(xe(t,n,r))}catch(i){throw be.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 we(e,t){if(typeof e.executeJavascript!=`function`)throw Error(`Browser preview webview JS execution is not available`);e.executeJavascript(t)}function Te(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 Ee(e,t){let n=e.contentWindow?.__tarskBrowserPreview;if(!n||typeof n[t===`commit`?`commitTextEdit`:`cancelTextEdit`]!=`function`){be.warn(`[browser-preview] Preview text-edit API unavailable; action ignored`,{action:t,src:e.src});return}if(t===`commit`){n.commitTextEdit?.();return}n.cancelTextEdit?.()}var De=i(`app.browser-tab.ui`),Oe=new Set([`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`,`PageUp`,`PageDown`,`Home`,`End`]);function ke(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 Ae(e,t,n){let[r,i]=(0,q.useState)(!0),a=(0,q.useSyncExternalStore)(U,H),o=(0,q.useSyncExternalStore)(D,O),s=t&&(r&&!o||a),c=(0,q.useRef)(s);c.current=s;let l=(0,q.useCallback)(function(){return c.current},[]),u=(0,q.useCallback)(function(){i(_e(e.current))},[]);return(0,q.useLayoutEffect)(u),(0,q.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 je({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,q.useRef)(r),v=(0,q.useRef)(null);_.current=r,(0,q.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,q.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=oe(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 Me(e,t,n,r){let i=(0,J.c)(9),a;i[0]!==n||i[1]!==e||i[2]!==r||i[3]!==t?(a=()=>{if(!e||!t)return;let i=function(e){Oe.has(e.key)&&(ke(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,q.useEffect)(a,o)}function Ne(e){let t=(0,J.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=Q(e.detail);t&&b(t)},p=function(e){let t=ue(e.detail);if(t!=null){u(e=>fe(e,t));return}let n=L(e.detail);if(n){te(n);return}let r=K(e.detail);r&&(l(null),G(r))};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,q.useEffect)(d,f)}function Pe(e){let t=(0,J.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||ge(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,q.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 ve(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,q.useEffect)(f,p)}function Fe({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,q.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;Ce(e,p,h,m);return}let e=c.current;if(!e)return;Te(e,p,h,m)}catch(e){if(f||!p)return;let t=e instanceof Error?e.message:`Could not enable element selection.`;De.error(`Failed to toggle browser selection mode:`,e),d(t),l(!1),u(!1),k({title:`Selection mode unavailable`,description:t,variant:`destructive`})}}return g(),function(){f=!0}},[t,e,r,n,i,a,u,l,o])}function Ie(e,t){let n=(0,J.c)(8),r,i;n[0]!==e||n[1]!==t?(r=()=>{if(!e)return;let n=function(e){let n=le(e.data);n!=null&&t(e=>fe(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,q.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,q.useEffect)(a,o)}function Le(e){let t=ne(e,`browser`),{devServerUrl:n,devServerStopped:r}=z(),{browserResetTrigger:i,setBrowserPageTitle:a,browserDeviceMode:o,setBrowserDeviceMode:s,isSelectModeEnabled:l,setIsSelectModeEnabled:u,isEditModeEnabled:d,setIsEditModeEnabled:f,selectedBrowserElement:p,setSelectedBrowserElement:m,setIsSelectionPromptOpen:h,isSelectionPromptOpen:g,setBrowserAgentProcessingThreadId:_}=j(),v=c(e=>e.selectedProjectId),y=c(e=>e.projects).find(e=>e.projectId===v),[x,C]=(0,q.useState)(``),[w,T]=(0,q.useState)(``),[E,D]=(0,q.useState)(``),[O,k]=(0,q.useState)(o),[A,M]=(0,q.useState)(null),N=(0,q.useRef)(null),P=(0,q.useRef)(E),F=(0,q.useRef)(null),L=(0,q.useRef)(null),R=S(),B=W(),V=R&&!!w;P.current=E;function H(){return N.current??pe(L.current)}let{shouldShowWebview:U,readWebviewVisibility:G}=Ae(L,t,w),K=ye({useNativeWebview:R,shouldRenderNativeWebview:V,currentUrl:w,resolveWebview:H});je({devServerUrl:n,devServerStopped:r,isBrowserActive:t,currentUrl:w,browserResetTrigger:i,webviewRef:N,iframeRef:F,setCurrentUrl:T,setPendingUrl:D,setInputUrl:C,setSelectionModeError:M,setIsSelectModeEnabled:u,setIsEditModeEnabled:f,setSelectedBrowserElement:m,setIsSelectionPromptOpen:h,setBrowserAgentProcessingThreadId:_,setBrowserPageTitle:a}),Me(t,R,(0,q.useCallback)(function(){R?H()?.focus():F.current?.contentWindow?.focus()},[R]),L),Ne({useNativeWebview:R,nativeWebviewMounted:K,currentUrl:w,resolveWebview:H,setCurrentUrl:T,setPendingUrl:D,setInputUrl:C,setSelectionModeError:M,setBrowserPageTitle:a}),Ie(t,a),Pe({useNativeWebview:R,nativeWebviewMounted:K,currentUrl:w,deviceMode:O,shouldShowWebview:U,pendingUrl:E,readWebviewVisibility:G,resolveWebview:H}),Fe({isBrowserActive:t,currentUrl:w,isSelectModeEnabled:l,isEditModeEnabled:d,isSelectionPromptOpen:g,nativeWebviewMounted:K,useNativeWebview:R,resolveWebview:H,iframeRef:F,setIsSelectModeEnabled:u,setIsEditModeEnabled:f,setSelectionModeError:M}),(0,q.useEffect)(()=>{k(o)},[o]);let ee=(0,q.useCallback)(e=>{N.current=e,e&&ve(e,P.current,G)},[G]);function te(e){k(e),s(e)}function J(){M(null),u(!1),f(!1),m(null),h(!1)}function Y(e){try{if(R){let t=H();if(!t)return;we(t,Se(e));return}let t=F.current;if(!t)return;Ee(t,e)}catch(e){De.error(`Failed to run preview text edit action:`,e)}}function X(e){let t=oe(e);t&&(C(t),T(t),D(t),J())}function re(e){e.key===`Enter`&&X(x)}function Z(){if(J(),R){let e=H();e&&e.reload();return}let e=F.current;if(!e)return;let t=e.src;e.src=``,requestAnimationFrame(()=>{e.src=t})}function ie(){if(J(),R){let e=H();e&&e.executeJavascript(`history.back()`);return}Q(-1)}function ae(){if(J(),R){let e=H();e&&e.executeJavascript(`history.forward()`);return}Q(1)}function Q(e){let t=F.current;if(!(!t||!t.contentWindow))try{e<0?t.contentWindow.history.back():t.contentWindow.history.forward()}catch{}}function se(){M(null),f(!1),I(p)&&(Y(`cancel`),m(null)),u(e=>!e)}function ce(){if(M(null),u(!1),h(!1),I(p)){Y(`cancel`),m(null),f(!1);return}f(e=>!e)}return{isBrowserActive:t,devServerStopped:r,selectedProjectId:v,runCommand:y?.runCommand,currentUrl:w,inputUrl:x,setInputUrl:C,handleKeyDown:re,deviceMode:O,updateDeviceMode:te,selectionModeError:A,isSelectModeEnabled:l,isEditModeActive:d||I(p),isSurfaceSelectInteraction:l||d,toggleSelectMode:se,toggleEditMode:ce,refresh:Z,goBack:ie,goForward:ae,openExternal:()=>void b(w),runPreviewTextEdit:Y,previewContainerRef:L,iframeRef:F,handleWebviewRef:ee,useNativeWebview:R,nativeWebviewMounted:K,previewRpcPreload:B}}var Re={desktop:{width:`100%`,height:`100%`},tablet:{width:`768px`,height:`1024px`},mobile:{width:`375px`,height:`667px`}};function ze(e){let t=(0,J.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,q.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,X.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 Be(e){let t=(0,J.c)(18),{selectionModeError:n,isSelectModeEnabled:r,deviceMode:i,currentDeviceConfig:a,previewContainerRef:o,children:s}=e,c;t[0]===n?c=t[1]:(c=n&&(0,X.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]=c);let l=r&&`cursor-crosshair`,u;t[2]===l?u=t[3]:(u=v(`flex min-h-0 flex-1 items-center justify-center bg-background`,l),t[2]=l,t[3]=u);let d=`overflow-hidden border border-border bg-background shadow-sm ${i===`desktop`?`h-full w-full rounded-none border-0 shadow-none`:`rounded-lg`}`,f;t[4]!==a.height||t[5]!==a.width?(f={width:a.width,height:a.height,maxWidth:`100%`,maxHeight:`100%`},t[4]=a.height,t[5]=a.width,t[6]=f):f=t[6];let p;t[7]!==s||t[8]!==d||t[9]!==f?(p=(0,X.jsx)(`div`,{className:d,style:f,children:s}),t[7]=s,t[8]=d,t[9]=f,t[10]=p):p=t[10];let m;t[11]!==o||t[12]!==u||t[13]!==p?(m=(0,X.jsx)(`div`,{ref:o,className:u,children:p}),t[11]=o,t[12]=u,t[13]=p,t[14]=m):m=t[14];let h;return t[15]!==c||t[16]!==m?(h=(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col bg-background`,children:[c,m]}),t[15]=c,t[16]=m,t[17]=h):h=t[17],h}function Ve(e){let t=(0,J.c)(3),{previewContainerRef:n,children:r}=e,i;return t[0]!==r||t[1]!==n?(i=(0,X.jsx)(`div`,{className:`hidden`,"aria-hidden":`true`,children:(0,X.jsx)(`div`,{ref:n,children:r})}),t[0]=r,t[1]=n,t[2]=i):i=t[2],i}function $(e){let t=(0,J.c)(16),{onClick:n,label:r,children:i,isActive:a,disabled:o,activeStyle:s}=e,c=a===void 0?!1:a,l=o===void 0?!1:o,u=s===void 0?`elevated`:s,d=l&&`cursor-not-allowed text-muted-foreground/50`,f=!l&&!c&&`text-muted-foreground hover:bg-background/50 hover:text-foreground`,p=!l&&c&&u===`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)]`,m=!l&&c&&u===`elevated`&&`bg-background text-foreground shadow-sm`,h;t[0]!==d||t[1]!==f||t[2]!==p||t[3]!==m?(h=v(`rounded p-1.5 transition-all`,d,f,p,m),t[0]=d,t[1]=f,t[2]=p,t[3]=m,t[4]=h):h=t[4];let g;t[5]!==i||t[6]!==l||t[7]!==c||t[8]!==n||t[9]!==h?(g=(0,X.jsx)(C,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,onClick:n,disabled:l,"aria-pressed":c,className:h,children:i})}),t[5]=i,t[6]=l,t[7]=c,t[8]=n,t[9]=h,t[10]=g):g=t[10];let _;t[11]===r?_=t[12]:(_=(0,X.jsx)(w,{children:r}),t[11]=r,t[12]=_);let y;return t[13]!==_||t[14]!==g?(y=(0,X.jsxs)(E,{children:[g,_]}),t[13]=_,t[14]=g,t[15]=y):y=t[15],y}function He(e){let t=(0,J.c)(43),{controller:n,urlInputRef:r}=e,{currentUrl:i,inputUrl:a,setInputUrl:o,handleKeyDown:s,goBack:c,goForward:y,refresh:b,toggleSelectMode:x,toggleEditMode:S,openExternal:C,updateDeviceMode:w,selectionModeError:T,isSelectModeEnabled:E,isEditModeActive:D,deviceMode:O}=n,k;t[0]!==i||t[1]!==c?(k=i&&(0,X.jsx)($,{onClick:c,label:`Back`,children:(0,X.jsx)(_,{size:15})}),t[0]=i,t[1]=c,t[2]=k):k=t[2];let A;t[3]!==i||t[4]!==y?(A=i&&(0,X.jsx)($,{onClick:y,label:`Forward`,children:(0,X.jsx)(u,{size:15})}),t[3]=i,t[4]=y,t[5]=A):A=t[5];let j;t[6]===o?j=t[7]:(j=e=>o(e.target.value),t[6]=o,t[7]=j);let M;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(M=v(`flex-1 rounded-full bg-muted font-mono`),t[8]=M):M=t[8];let N;t[9]!==s||t[10]!==a||t[11]!==j||t[12]!==r?(N=(0,X.jsx)(P,{ref:r,type:`text`,value:a,onChange:j,onKeyDown:s,placeholder:`Enter URL...`,className:M,spellCheck:!1}),t[9]=s,t[10]=a,t[11]=j,t[12]=r,t[13]=N):N=t[13];let F;t[14]!==i||t[15]!==b?(F=i&&(0,X.jsx)($,{onClick:b,label:`Refresh page`,children:(0,X.jsx)(f,{size:15})}),t[14]=i,t[15]=b,t[16]=F):F=t[16];let I;t[17]!==i||t[18]!==E||t[19]!==T||t[20]!==x?(I=i&&(0,X.jsx)($,{onClick:x,label:T?`Select element unavailable: ${T}`:E?`Exit element selection`:`Select element from preview`,isActive:E,activeStyle:`depressed`,children:(0,X.jsx)(h,{size:15})}),t[17]=i,t[18]=E,t[19]=T,t[20]=x,t[21]=I):I=t[21];let L;t[22]!==i||t[23]!==D||t[24]!==T||t[25]!==S?(L=i&&(0,X.jsx)($,{onClick:S,label:T?`Edit text unavailable: ${T}`:D?`Exit text editing`:`Edit text from preview`,isActive:D,activeStyle:`depressed`,children:(0,X.jsx)(d,{size:15})}),t[22]=i,t[23]=D,t[24]=T,t[25]=S,t[26]=L):L=t[26];let R;t[27]!==i||t[28]!==O||t[29]!==w?(R=i&&(0,X.jsxs)(`div`,{className:`flex items-center rounded-md bg-muted p-0.5`,children:[(0,X.jsx)($,{onClick:()=>w(`desktop`),label:`Desktop view`,isActive:O===`desktop`,children:(0,X.jsx)(p,{size:15})}),(0,X.jsx)($,{onClick:()=>w(`tablet`),label:`Tablet view`,isActive:O===`tablet`,children:(0,X.jsx)(m,{size:15})}),(0,X.jsx)($,{onClick:()=>w(`mobile`),label:`Mobile view`,isActive:O===`mobile`,children:(0,X.jsx)(l,{size:15})})]}),t[27]=i,t[28]=O,t[29]=w,t[30]=R):R=t[30];let z;t[31]!==i||t[32]!==C?(z=i&&(0,X.jsx)($,{onClick:C,label:`Open in external browser`,children:(0,X.jsx)(g,{size:15})}),t[31]=i,t[32]=C,t[33]=z):z=t[33];let B;return t[34]!==k||t[35]!==z||t[36]!==A||t[37]!==N||t[38]!==F||t[39]!==I||t[40]!==L||t[41]!==R?(B=(0,X.jsx)(`div`,{className:`relative shrink-0 border-b border-border`,children:(0,X.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2`,children:[k,A,N,F,I,L,R,z]})}),t[34]=k,t[35]=z,t[36]=A,t[37]=N,t[38]=F,t[39]=I,t[40]=L,t[41]=R,t[42]=B):B=t[42],B}function Ue(e){let t=(0,J.c)(4),{devServerStopped:n,selectedProjectId:r,runCommand:i}=e,o;return t[0]!==n||t[1]!==i||t[2]!==r?(o=(0,X.jsx)(`div`,{className:`flex flex-1 flex-col items-center justify-center gap-6 text-muted-foreground`,children:n?(0,X.jsx)(`p`,{className:a.body,children:`Dev server stopped`}):r&&i?(0,X.jsx)(F,{projectId:r,runCommand:i,large:!0}):(0,X.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 We(e){let t=(0,J.c)(23),{instanceId:n}=e,r=Le(n),i=Re[r.deviceMode],{registerPanelFocus:a}=A(),o=(0,q.useRef)(null),s,c;t[0]!==n||t[1]!==a?(s=()=>a(n,()=>o.current?.focus()),c=[n,a],t[0]=n,t[1]=a,t[2]=s,t[3]=c):(s=t[2],c=t[3]),(0,q.useEffect)(s,c);let l;t[4]!==r.currentUrl||t[5]!==r.handleWebviewRef||t[6]!==r.iframeRef||t[7]!==r.nativeWebviewMounted||t[8]!==r.previewRpcPreload||t[9]!==r.useNativeWebview?(l=(0,X.jsx)(ze,{useNativeWebview:r.useNativeWebview,nativeWebviewMounted:r.nativeWebviewMounted,currentUrl:r.currentUrl,previewRpcPreload:r.previewRpcPreload,handleWebviewRef:r.handleWebviewRef,iframeRef:r.iframeRef}),t[4]=r.currentUrl,t[5]=r.handleWebviewRef,t[6]=r.iframeRef,t[7]=r.nativeWebviewMounted,t[8]=r.previewRpcPreload,t[9]=r.useNativeWebview,t[10]=l):l=t[10];let u=l;if(!r.isBrowserActive){let e;return t[11]!==r.previewContainerRef||t[12]!==u?(e=(0,X.jsx)(Ve,{previewContainerRef:r.previewContainerRef,children:u}),t[11]=r.previewContainerRef,t[12]=u,t[13]=e):e=t[13],e}let d;t[14]===r?d=t[15]:(d=(0,X.jsx)(He,{controller:r,urlInputRef:o}),t[14]=r,t[15]=d);let f;t[16]!==r||t[17]!==i||t[18]!==u?(f=r.currentUrl?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(re,{onCommit:()=>r.runPreviewTextEdit(`commit`),onCancelPreview:()=>r.runPreviewTextEdit(`cancel`)}),(0,X.jsx)(Be,{selectionModeError:r.selectionModeError,isSelectModeEnabled:r.isSurfaceSelectInteraction,deviceMode:r.deviceMode,currentDeviceConfig:i,previewContainerRef:r.previewContainerRef,children:u})]}):(0,X.jsx)(Ue,{devServerStopped:r.devServerStopped,selectedProjectId:r.selectedProjectId,runCommand:r.runCommand}),t[16]=r,t[17]=i,t[18]=u,t[19]=f):f=t[19];let p;return t[20]!==d||t[21]!==f?(p=(0,X.jsx)(T,{children:(0,X.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col overflow-hidden`,children:[d,f]})}),t[20]=d,t[21]=f,t[22]=p):p=t[22],p}export{We as BrowserTab};
@@ -1 +1 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{at as i}from"./dist-ZlK7I-y-.js";import{o as a,s as o,t as s}from"./utils-CT-Dw22R.js";var c=t(),l=e(n(),1),u=r(),d=Symbol.for(`react.lazy`),f=l.use;function p(e){return typeof e==`object`&&!!e&&`then`in e}function m(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===d&&`_payload`in e&&p(e._payload)}function h(e){let t=_(e),n=l.forwardRef((e,n)=>{let{children:r,...i}=e;m(r)&&typeof f==`function`&&(r=f(r._payload));let a=l.Children.toArray(r),o=a.find(y);if(o){let e=o.props.children,r=a.map(t=>t===o?l.Children.count(e)>1?l.Children.only(null):l.isValidElement(e)?e.props.children:null:t);return(0,u.jsx)(t,{...i,ref:n,children:l.isValidElement(e)?l.cloneElement(e,void 0,r):null})}return(0,u.jsx)(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}var g=h(`Slot`);function _(e){let t=l.forwardRef((e,t)=>{let{children:n,...r}=e;if(m(n)&&typeof f==`function`&&(n=f(n._payload)),l.isValidElement(n)){let e=x(n),i=b(r,n.props);return n.type!==l.Fragment&&(i.ref=t?o(t,e):e),l.cloneElement(n,i)}return l.Children.count(n)>1?l.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var v=Symbol(`radix.slottable`);function y(e){return l.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===v}function b(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function x(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var S=a(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-full ${i.body} font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`,{variants:{variant:{default:`bg-primary text-primary-foreground hover:bg-primary/90`,destructive:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,outline:`border border-input bg-background hover:bg-accent hover:text-accent-foreground`,secondary:`bg-secondary text-secondary-foreground hover:bg-secondary/80`,ghost:`hover:bg-foreground hover:text-background transition-colors`,action:`text-muted-foreground hover:bg-foreground hover:text-background transition-colors`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-10 px-6 py-3`,sm:`h-9 rounded-full px-4`,lg:`h-11 rounded-full px-10`,icon:`h-10 w-10 [&_svg]:size-5`,"icon-md":`h-8 w-8 [&_svg]:size-4`,"icon-sm":`h-7 w-7 [&_svg]:size-4`,"icon-xs":`h-5 w-5 [&_svg]:size-3`}},defaultVariants:{variant:`default`,size:`default`}}),C=l.forwardRef((e,t)=>{let n=(0,c.c)(15),r,i,a,o,l;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4],l=n[5]):({className:r,variant:l,size:a,asChild:o,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o,n[5]=l);let d=o!==void 0&&o?g:`button`,f;n[6]!==r||n[7]!==a||n[8]!==l?(f=s(S({variant:l,size:a,className:r})),n[6]=r,n[7]=a,n[8]=l,n[9]=f):f=n[9];let p;return n[10]!==d||n[11]!==i||n[12]!==t||n[13]!==f?(p=(0,u.jsx)(d,{className:f,ref:t,...i}),n[10]=d,n[11]=i,n[12]=t,n[13]=f,n[14]=p):p=n[14],p});C.displayName=`Button`;export{h as i,S as n,g as r,C as t};
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{ot as i}from"./dist-DjiNKpTV.js";import{o as a,s as o,t as s}from"./utils-CT-Dw22R.js";var c=t(),l=e(n(),1),u=r(),d=Symbol.for(`react.lazy`),f=l.use;function p(e){return typeof e==`object`&&!!e&&`then`in e}function m(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===d&&`_payload`in e&&p(e._payload)}function h(e){let t=_(e),n=l.forwardRef((e,n)=>{let{children:r,...i}=e;m(r)&&typeof f==`function`&&(r=f(r._payload));let a=l.Children.toArray(r),o=a.find(y);if(o){let e=o.props.children,r=a.map(t=>t===o?l.Children.count(e)>1?l.Children.only(null):l.isValidElement(e)?e.props.children:null:t);return(0,u.jsx)(t,{...i,ref:n,children:l.isValidElement(e)?l.cloneElement(e,void 0,r):null})}return(0,u.jsx)(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}var g=h(`Slot`);function _(e){let t=l.forwardRef((e,t)=>{let{children:n,...r}=e;if(m(n)&&typeof f==`function`&&(n=f(n._payload)),l.isValidElement(n)){let e=x(n),i=b(r,n.props);return n.type!==l.Fragment&&(i.ref=t?o(t,e):e),l.cloneElement(n,i)}return l.Children.count(n)>1?l.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var v=Symbol(`radix.slottable`);function y(e){return l.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===v}function b(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function x(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var S=a(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-full ${i.body} font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`,{variants:{variant:{default:`bg-primary text-primary-foreground hover:bg-primary/90`,destructive:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,outline:`border border-input bg-background hover:bg-accent hover:text-accent-foreground`,secondary:`bg-secondary text-secondary-foreground hover:bg-secondary/80`,ghost:`hover:bg-foreground hover:text-background transition-colors`,action:`text-muted-foreground hover:bg-foreground hover:text-background transition-colors`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-10 px-6 py-3`,sm:`h-9 rounded-full px-4`,lg:`h-11 rounded-full px-10`,icon:`h-10 w-10 [&_svg]:size-5`,"icon-md":`h-8 w-8 [&_svg]:size-4`,"icon-sm":`h-7 w-7 [&_svg]:size-4`,"icon-xs":`h-5 w-5 [&_svg]:size-3`}},defaultVariants:{variant:`default`,size:`default`}}),C=l.forwardRef((e,t)=>{let n=(0,c.c)(15),r,i,a,o,l;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4],l=n[5]):({className:r,variant:l,size:a,asChild:o,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o,n[5]=l);let d=o!==void 0&&o?g:`button`,f;n[6]!==r||n[7]!==a||n[8]!==l?(f=s(S({variant:l,size:a,className:r})),n[6]=r,n[7]=a,n[8]=l,n[9]=f):f=n[9];let p;return n[10]!==d||n[11]!==i||n[12]!==t||n[13]!==f?(p=(0,u.jsx)(d,{className:f,ref:t,...i}),n[10]=d,n[11]=i,n[12]=t,n[13]=f,n[14]=p):p=n[14],p});C.displayName=`Button`;export{h as i,S as n,g as r,C as t};
@@ -1 +1 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{at as i}from"./dist-ZlK7I-y-.js";import{t as a}from"./utils-CT-Dw22R.js";var o=t(),s=e(n(),1),c=r(),l=s.forwardRef((e,t)=>{let n=(0,o.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 s;n[3]===r?s=n[4]:(s=a(`rounded-lg border bg-card text-card-foreground shadow-sm`,r),n[3]=r,n[4]=s);let l;return n[5]!==i||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`div`,{ref:t,className:s,...i}),n[5]=i,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});l.displayName=`Card`;var u=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let s;n[3]===r?s=n[4]:(s=a(`flex flex-col space-y-1.5 p-6`,r),n[3]=r,n[4]=s);let l;return n[5]!==i||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`div`,{ref:t,className:s,...i}),n[5]=i,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});u.displayName=`CardHeader`;var d=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,s;n[0]===e?(r=n[1],s=n[2]):({className:r,...s}=e,n[0]=e,n[1]=r,n[2]=s);let l;n[3]===r?l=n[4]:(l=a(i.sectionTitle,`leading-none tracking-tight`,r),n[3]=r,n[4]=l);let u;return n[5]!==s||n[6]!==t||n[7]!==l?(u=(0,c.jsx)(`div`,{ref:t,className:l,...s}),n[5]=s,n[6]=t,n[7]=l,n[8]=u):u=n[8],u});d.displayName=`CardTitle`;var f=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,s;n[0]===e?(r=n[1],s=n[2]):({className:r,...s}=e,n[0]=e,n[1]=r,n[2]=s);let l;n[3]===r?l=n[4]:(l=a(i.bodyMuted,r),n[3]=r,n[4]=l);let u;return n[5]!==s||n[6]!==t||n[7]!==l?(u=(0,c.jsx)(`div`,{ref:t,className:l,...s}),n[5]=s,n[6]=t,n[7]=l,n[8]=u):u=n[8],u});f.displayName=`CardDescription`;var p=s.forwardRef((e,t)=>{let n=(0,o.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 s;n[3]===r?s=n[4]:(s=a(`p-6 pt-0`,r),n[3]=r,n[4]=s);let l;return n[5]!==i||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`div`,{ref:t,className:s,...i}),n[5]=i,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});p.displayName=`CardContent`;var m=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let s;n[3]===r?s=n[4]:(s=a(`flex items-center p-6 pt-0`,r),n[3]=r,n[4]=s);let l;return n[5]!==i||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`div`,{ref:t,className:s,...i}),n[5]=i,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});m.displayName=`CardFooter`;export{d as i,p as n,u as r,l as t};
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{ot as i}from"./dist-DjiNKpTV.js";import{t as a}from"./utils-CT-Dw22R.js";var o=t(),s=e(n(),1),c=r(),l=s.forwardRef((e,t)=>{let n=(0,o.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 s;n[3]===r?s=n[4]:(s=a(`rounded-lg border bg-card text-card-foreground shadow-sm`,r),n[3]=r,n[4]=s);let l;return n[5]!==i||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`div`,{ref:t,className:s,...i}),n[5]=i,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});l.displayName=`Card`;var u=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let s;n[3]===r?s=n[4]:(s=a(`flex flex-col space-y-1.5 p-6`,r),n[3]=r,n[4]=s);let l;return n[5]!==i||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`div`,{ref:t,className:s,...i}),n[5]=i,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});u.displayName=`CardHeader`;var d=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,s;n[0]===e?(r=n[1],s=n[2]):({className:r,...s}=e,n[0]=e,n[1]=r,n[2]=s);let l;n[3]===r?l=n[4]:(l=a(i.sectionTitle,`leading-none tracking-tight`,r),n[3]=r,n[4]=l);let u;return n[5]!==s||n[6]!==t||n[7]!==l?(u=(0,c.jsx)(`div`,{ref:t,className:l,...s}),n[5]=s,n[6]=t,n[7]=l,n[8]=u):u=n[8],u});d.displayName=`CardTitle`;var f=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,s;n[0]===e?(r=n[1],s=n[2]):({className:r,...s}=e,n[0]=e,n[1]=r,n[2]=s);let l;n[3]===r?l=n[4]:(l=a(i.bodyMuted,r),n[3]=r,n[4]=l);let u;return n[5]!==s||n[6]!==t||n[7]!==l?(u=(0,c.jsx)(`div`,{ref:t,className:l,...s}),n[5]=s,n[6]=t,n[7]=l,n[8]=u):u=n[8],u});f.displayName=`CardDescription`;var p=s.forwardRef((e,t)=>{let n=(0,o.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 s;n[3]===r?s=n[4]:(s=a(`p-6 pt-0`,r),n[3]=r,n[4]=s);let l;return n[5]!==i||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`div`,{ref:t,className:s,...i}),n[5]=i,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});p.displayName=`CardContent`;var m=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let s;n[3]===r?s=n[4]:(s=a(`flex items-center p-6 pt-0`,r),n[3]=r,n[4]=s);let l;return n[5]!==i||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`div`,{ref:t,className:s,...i}),n[5]=i,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});m.displayName=`CardFooter`;export{d as i,p as n,u as r,l as t};
@@ -0,0 +1 @@
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{I as i,S as a,v as o}from"./dist-DjiNKpTV.js";import{Q as s,i as c,n as l,r as u}from"./store-CHF6tOp2.js";import{_n as d,wt as f}from"./api-D1GxdEEp.js";var p=e(n(),1),m=t();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)),a=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:i,c=null;return e.layout===`expanded`&&a&&(c=o(e.expandedWindowId)?e.expandedWindowId:i),{nonChatWindows:e.nonChatWindows,expandedWindowId:c,selectedWindowId:s}}var _=a(`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=l(),o=u(e=>e.selectedProjectId),c=u(e=>e.projects),m=u(e=>e.threadMultiPaneStates),g=c.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),ee=(0,p.useRef)(Promise.resolve()),te=(0,p.useRef)(null),ne=(0,p.useRef)(0),w=(0,p.useRef)(v(e,t,n));w.current=v(e,t,n),(0,p.useEffect)(()=>{let e=te.current!==o;if(te.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`):[],c=w.current,l=++ne.current,u=!1;async function d(){try{let e=await f(t);if(u||l!==ne.current)return;if(a({type:s.HydrateProjectChatPanes,threadIds:n,chatPanesByThread:e.chatPanesByThread}),w.current!==c){S(t);return}C.current=JSON.stringify(e),i(e),S(t)}catch(e){u||_.error(`Failed to restore project window state`,e)}}return d(),()=>{u=!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,ee.current=ee.current.catch(()=>void 0).then(()=>d(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=r(),x=(0,p.createContext)(null);function S(e){let t=(0,m.c)(19),{windows:n,extraChatPanes:r,primaryChatOpen:a,expandedWindowId:o,selectedWindowId:s,setExpandedWindowId:c,setSelectedWindowId:l}=e,u,d;t[0]!==o||t[1]!==r||t[2]!==a||t[3]!==c||t[4]!==n?(u=()=>{if(o){if(o===`primary`){if(a)return;c(n.length>0?n[0].id:null);return}!n.some(e=>e.id===o)&&!r[o]&&c(a?i:n[0]?.id??null)}},d=[o,r,a,n,c],t[0]=o,t[1]=r,t[2]=a,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]!==a||t[9]!==s||t[10]!==l||t[11]!==n?(f=()=>{if(s===`primary`){if(a||n.length===0)return;l(n[0].id);return}!n.some(e=>e.id===s)&&!r[s]&&l(a?i:n[0]?.id??`primary`)},h=[r,a,s,n,l],t[7]=r,t[8]=a,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:s.RemoveChatPane,paneId:e}):r(t=>t.filter(t=>t.id!==e))}function ee(e,t,n,r){if(n.length===1)return null;if(e!==t)return e;let a=n.filter(e=>e.id!==t);return r?i:a[0]?.id??null}function te(e,t,n,r){if(e!==t)return e;let a=n.filter(e=>e.id!==t);return r?i:a[0]?.id??`primary`}function ne(e,t,n){return t.length===0?null:e===`primary`?n:e}function w(e,t){return e===`primary`&&t?t:e}function T(e){let t=(0,m.c)(68),{children:n}=e,r=l(),a=c(),d=u(oe),f=u(ae),h;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(h=[],t[0]=h):h=t[0];let[_,v]=(0,p.useState)(h),[T,E]=(0,p.useState)(!0),[D,O]=(0,p.useState)(null),[se,ce]=(0,p.useState)(`half`),[k,A]=(0,p.useState)(i),[le,j]=(0,p.useState)(null),M;t[1]===f?M=t[2]:(M=Object.keys(f).map(ie),t[1]=f,t[2]=M);let ue=M,N;t[3]!==ue||t[4]!==_?(N=[...ue,..._],t[3]=ue,t[4]=_,t[5]=N):N=t[5];let P=N,F;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(F=new Map,t[6]=F):F=t[6];let de=(0,p.useRef)(F),I=(0,p.useRef)(null),L;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(L=(e,t)=>(de.current.set(e,t),()=>{de.current.delete(e)}),t[7]=L):L=t[7];let fe=L,R;t[8]!==r||t[9]!==P?(R=e=>{if(e===`primary`){r({type:s.SetFocusedPane,paneId:`primary`}),r({type:s.FocusChatInput});return}if(P.find(t=>t.id===e)?.panelId===`chat`){r({type:s.SetFocusedPane,paneId:e}),r({type:s.FocusChatInput});return}de.current.get(e)?.()},t[8]=r,t[9]=P,t[10]=R):R=t[10];let z=R,B,V;t[11]!==D||t[12]!==z||t[13]!==k?(B=()=>{let e=D??k;if(e===null)return;let t=I.current;I.current=e,!(t===null||t===e)&&z(e)},V=[D,k,z],t[11]=D,t[12]=z,t[13]=k,t[14]=B,t[15]=V):(B=t[14],V=t[15]),(0,p.useEffect)(B,V);let H;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(H=()=>{I.current=i,v([]),E(!0),O(null),A(i),j(null)},t[16]=H):H=t[16];let pe=H,U;t[17]===a?U=t[18]:(U=e=>{let t=g(e,a.getState().selectedThreadId);I.current=t.expandedWindowId??t.selectedWindowId,v(t.nonChatWindows),O(t.expandedWindowId),A(t.selectedWindowId),j(null)},t[17]=a,t[18]=U);let me=U,W;t[19]!==D||t[20]!==me||t[21]!==_||t[22]!==k?(W={nonChatWindows:_,expandedWindowId:D,selectedWindowId:k,onReset:pe,onHydrate:me},t[19]=D,t[20]=me,t[21]=_,t[22]=k,t[23]=W):W=t[23],y(W);let G;t[24]!==D||t[25]!==f||t[26]!==T||t[27]!==k||t[28]!==P?(G={windows:P,extraChatPanes:f,primaryChatOpen:T,expandedWindowId:D,selectedWindowId:k,setExpandedWindowId:O,setSelectedWindowId:A},t[24]=D,t[25]=f,t[26]=T,t[27]=k,t[28]=P,t[29]=G):G=t[29],S(G);let K;t[30]===Symbol.for(`react.memo_cache_sentinel`)?(K=e=>{A(e)},t[30]=K):K=t[30];let he=K,q;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(q=e=>{A(e),O(e)},t[31]=q):q=t[31];let ge=q,J;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(J=()=>{O(null)},t[32]=J):J=t[32];let _e=J,Y;t[33]!==T||t[34]!==P.length?(Y=e=>{e===`primary`&&E(!0),O(t=>t===null&&P.length>0||t===null&&T&&e!==`primary`?null:e),j(e)},t[33]=T,t[34]=P.length,t[35]=Y):Y=t[35];let X=Y,Z;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(Z=()=>{j(null)},t[36]=Z):Z=t[36];let ve=Z,Q;t[37]!==r||t[38]!==X||t[39]!==d?(Q=e=>{let t=o();return e===`chat`?d?(r({type:s.AddChatPane,paneId:t,conversationId:o()}),X(t),t):t:(v(n=>[...n,{id:t,panelId:e}]),X(t),t)},t[37]=r,t[38]=X,t[39]=d,t[40]=Q):Q=t[40];let ye=Q,$;t[41]!==r||t[42]!==T||t[43]!==P?($=e=>{if(e===`primary`){E(!1);let e=P[0]?.id??null;O(t=>ne(t,P,e)),A(t=>w(t,e));return}let t=P.find(t=>t.id===e);t&&(C(e,t,r,v),O(t=>ee(t,e,P,T)),A(t=>te(t,e,P,T)))},t[41]=r,t[42]=T,t[43]=P,t[44]=$):$=t[44];let be=$,xe;t[45]!==r||t[46]!==P?(xe=()=>{O(null),A(i),E(!0);for(let e of P)e.panelId===`chat`&&r({type:s.RemoveChatPane,paneId:e.id});v([])},t[45]=r,t[46]=P,t[47]=xe):xe=t[47];let Se=xe,Ce;t[48]!==T||t[49]!==P?(Ce=e=>e===`chat`?T||P.some(re):P.some(t=>t.panelId===e),t[48]=T,t[49]=P,t[50]=Ce):Ce=t[50];let we=Ce,Te=P.length>0,Ee=D!==null,De;t[51]!==ye||t[52]!==Se||t[53]!==be||t[54]!==se||t[55]!==D||t[56]!==Te||t[57]!==Ee||t[58]!==we||t[59]!==le||t[60]!==T||t[61]!==X||t[62]!==k||t[63]!==P?(De={windows:P,addWindow:ye,closeWindow:be,closeAllWindows:Se,isPrimaryChatOpen:T,isPanelOpen:we,hasOpenWindows:Te,isLayoutExpanded:Ee,expandedWindowId:D,expandWindow:ge,collapseLayout:_e,columnWidth:se,setColumnWidth:ce,selectedWindowId:k,selectWindow:he,revealWindow:X,pendingScrollWindowId:le,clearPendingScrollWindow:ve,registerPanelFocus:fe},t[51]=ye,t[52]=Se,t[53]=be,t[54]=se,t[55]=D,t[56]=Te,t[57]=Ee,t[58]=we,t[59]=le,t[60]=T,t[61]=X,t[62]=k,t[63]=P,t[64]=De):De=t[64];let Oe=De,ke;return t[65]!==n||t[66]!==Oe?(ke=(0,b.jsx)(x.Provider,{value:Oe,children:n}),t[65]=n,t[66]=Oe,t[67]=ke):ke=t[67],ke}function re(e){return e.panelId===`chat`}function ie(e){return{id:e,panelId:`chat`}}function ae(e){return e.extraChatPanes}function oe(e){return e.selectedThreadId}function E(){let e=(0,p.useContext)(x);if(!e)throw Error(`useChatDock must be used within a ChatDockProvider`);return e}export{E as n,T as t};
@@ -1 +1 @@
1
- import{n as e,t}from"./react-vendor-Ee0-5T4I.js";import{at as n}from"./dist-ZlK7I-y-.js";import{I as r}from"./dist-DIjomljy.js";import{t as i}from"./button-sfGyFWfz.js";import{i as a,n as o,r as s,t as c}from"./tooltip-B6ziVyTv.js";import{a as l,i as u,o as d,r as f,s as p,t as m}from"./dialog-CP2cYR59.js";import{Pt as h,Y as g,un as _,vt as v}from"./index-Bmkj1Qwa.js";var y=e(),b=t();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)(d,{children:[M,(0,b.jsxs)(u,{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)(h,{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)(g,{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)(_,{}):(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)(a,{asChild:!0,children:(0,b.jsx)(i,{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)(o,{children:B}),t[16]=B,t[17]=V);let H;t[18]!==V||t[19]!==z?(H=(0,b.jsx)(s,{children:(0,b.jsxs)(c,{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)(h,{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)(_,{size:`sm`})]}):`Commit`,t[33]=O,t[34]=J);let Y;t[35]!==A||t[36]!==q||t[37]!==J?(Y=(0,b.jsx)(i,{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)(l,{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)(f,{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)(m,{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{n as e,t}from"./react-vendor-Ee0-5T4I.js";import{ot as n}from"./dist-DjiNKpTV.js";import{I as r}from"./dist-CNOCRPxn.js";import{t as i}from"./button-B6HDsfd5.js";import{i as a,n as o,r as s,t as c}from"./tooltip-BtJG5fZl.js";import{a as l,i as u,o as d,r as f,s as p,t as m}from"./dialog--0foS3aw.js";import{Ft as h,X as g,fn as _,yt as v}from"./index-BOB3ZUQs.js";var y=e(),b=t();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)(d,{children:[M,(0,b.jsxs)(u,{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)(h,{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)(g,{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)(_,{}):(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)(a,{asChild:!0,children:(0,b.jsx)(i,{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)(o,{children:B}),t[16]=B,t[17]=V);let H;t[18]!==V||t[19]!==z?(H=(0,b.jsx)(s,{children:(0,b.jsxs)(c,{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)(h,{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)(_,{size:`sm`})]}):`Commit`,t[33]=O,t[34]=J);let Y;t[35]!==A||t[36]!==q||t[37]!==J?(Y=(0,b.jsx)(i,{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)(l,{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)(f,{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)(m,{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{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{at as i}from"./dist-ZlK7I-y-.js";import{An as a,xt as o,yn as s}from"./dist-DIjomljy.js";import{t as c}from"./utils-CT-Dw22R.js";import{t as l}from"./button-sfGyFWfz.js";import{r as u}from"./scroll-area-nbNFO91g.js";import{a as d,i as f,o as p,r as m,s as h,t as g}from"./dialog-CP2cYR59.js";var _=t(),v=e(n(),1),y=r(),b=1500;function x(e){let t=(0,_.c)(41),{error:n,onDismiss:r,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]===r?D=t[3]:(D=function(e){e||r()},t[2]=r,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)(p,{children:[N,P]}),t[12]=N,t[13]=F);let I;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(I=c(i.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)(u,{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]===r?R=t[18]:(R=(0,y.jsx)(l,{variant:`outline`,onClick:r,children:`Close`}),t[17]=r,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)(a,{className:`h-4 w-4`}):(0,y.jsx)(s,{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)(l,{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)(o,{className:`h-4 w-4`}),t[27]=U):U=t[27];let W;t[28]===M?W=t[29]:(W=(0,y.jsxs)(l,{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)(d,{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)(m,{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)(g,{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{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{ot as i}from"./dist-DjiNKpTV.js";import{jn as a,vn as o,xt as s}from"./dist-CNOCRPxn.js";import{t as c}from"./utils-CT-Dw22R.js";import{t as l}from"./button-B6HDsfd5.js";import{r as u}from"./scroll-area-BMQFeWmq.js";import{a as d,i as f,o as p,r as m,s as h,t as g}from"./dialog--0foS3aw.js";var _=t(),v=e(n(),1),y=r(),b=1500;function x(e){let t=(0,_.c)(41),{error:n,onDismiss:r,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]===r?D=t[3]:(D=function(e){e||r()},t[2]=r,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)(p,{children:[N,P]}),t[12]=N,t[13]=F);let I;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(I=c(i.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)(u,{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]===r?R=t[18]:(R=(0,y.jsx)(l,{variant:`outline`,onClick:r,children:`Close`}),t[17]=r,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)(a,{className:`h-4 w-4`}):(0,y.jsx)(o,{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)(l,{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)(s,{className:`h-4 w-4`}),t[27]=U):U=t[27];let W;t[28]===M?W=t[29]:(W=(0,y.jsxs)(l,{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)(d,{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)(m,{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)(g,{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{n as e,t}from"./react-vendor-Ee0-5T4I.js";import{Et as n,at as r}from"./dist-ZlK7I-y-.js";import{t as i}from"./utils-CT-Dw22R.js";import{Pt as a}from"./index-Bmkj1Qwa.js";import{n as o,t as s}from"./toggle-group-BiUqOiP6.js";var c=e(),l=t(),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:a,onCommitMethodChange:f,disabled:p,className:m}=e,h=p===void 0?!1:p,g;t[0]===f?g=t[1]:(g=e=>{(e===n.PullRequest||e===n.Direct)&&f(e)},t[0]=f,t[1]=g);let _;t[2]===m?_=t[3]:(_=i(u,m),t[2]=m,t[3]=_);let v;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,l.jsx)(o,{value:n.PullRequest,"aria-label":`Pull Requests`,className:i(r.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)(o,{value:n.Direct,"aria-label":`Direct Commits`,className:i(r.body,d),children:`Direct Commits`}),t[5]=y):y=t[5];let b;return t[6]!==a||t[7]!==h||t[8]!==g||t[9]!==_?(b=(0,l.jsxs)(s,{type:`single`,value:a,disabled:h,onValueChange:g,"aria-label":`Commit method`,className:_,children:[v,y]}),t[6]=a,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:i,onCommitMethodChange:o}=e,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,l.jsx)(a,{children:`Commit method`}),t[0]=s):s=t[0];let u;t[1]!==i||t[2]!==o?(u=(0,l.jsx)(f,{commitMethod:i,onCommitMethodChange:o}),t[1]=i,t[2]=o,t[3]=u):u=t[3];let d=i===n.PullRequest?`Creates a feature branch and allows you to create pull requests.`:`Commits directly to the main branch without creating feature branches.`,p;t[4]===d?p=t[5]:(p=(0,l.jsx)(`p`,{className:r.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{n as e,t}from"./react-vendor-Ee0-5T4I.js";import{Dt as n,ot as r}from"./dist-DjiNKpTV.js";import{t as i}from"./utils-CT-Dw22R.js";import{Ft as a}from"./index-BOB3ZUQs.js";import{n as o,t as s}from"./toggle-group-DMR7z3pz.js";var c=e(),l=t(),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:a,onCommitMethodChange:f,disabled:p,className:m}=e,h=p===void 0?!1:p,g;t[0]===f?g=t[1]:(g=e=>{(e===n.PullRequest||e===n.Direct)&&f(e)},t[0]=f,t[1]=g);let _;t[2]===m?_=t[3]:(_=i(u,m),t[2]=m,t[3]=_);let v;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,l.jsx)(o,{value:n.PullRequest,"aria-label":`Pull Requests`,className:i(r.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)(o,{value:n.Direct,"aria-label":`Direct Commits`,className:i(r.body,d),children:`Direct Commits`}),t[5]=y):y=t[5];let b;return t[6]!==a||t[7]!==h||t[8]!==g||t[9]!==_?(b=(0,l.jsxs)(s,{type:`single`,value:a,disabled:h,onValueChange:g,"aria-label":`Commit method`,className:_,children:[v,y]}),t[6]=a,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:i,onCommitMethodChange:o}=e,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,l.jsx)(a,{children:`Commit method`}),t[0]=s):s=t[0];let u;t[1]!==i||t[2]!==o?(u=(0,l.jsx)(f,{commitMethod:i,onCommitMethodChange:o}),t[1]=i,t[2]=o,t[3]=u):u=t[3];let d=i===n.PullRequest?`Creates a feature branch and allows you to create pull requests.`:`Commits directly to the main branch without creating feature branches.`,p;t[4]===d?p=t[5]:(p=(0,l.jsx)(`p`,{className:r.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};
@@ -0,0 +1 @@
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{ot as i}from"./dist-DjiNKpTV.js";import{On as a,Sn as o,g as s,h as c,jn as l,l as u,t as d,u as f}from"./dist-CNOCRPxn.js";import{t as p}from"./utils-CT-Dw22R.js";import{_ as m,a as ee,c as te,d as ne,f as re,g as ie,h as ae,i as oe,l as h,m as se,n as ce,o as le,p as ue,r as de,s as fe,t as pe,u as g}from"./dist-CqGsum35.js";var _=t(),v=e(n(),1),y=r(),b=`ContextMenu`,[me,he]=c(b,[m]),x=m(),[ge,S]=me(b),C=e=>{let{__scopeContextMenu:t,children:n,onOpenChange:r,dir:i,modal:a=!0}=e,[o,s]=v.useState(!1),c=x(t),l=u(r),d=v.useCallback(e=>{s(e),l(e)},[l]);return(0,y.jsx)(ge,{scope:t,open:o,onOpenChange:d,modal:a,children:(0,y.jsx)(re,{...c,dir:i,open:o,onOpenChange:d,modal:a,children:n})})};C.displayName=b;var w=`ContextMenuTrigger`,T=v.forwardRef((e,t)=>{let{__scopeContextMenu:n,disabled:r=!1,...i}=e,a=S(w,n),o=x(n),c=v.useRef({x:0,y:0}),l=v.useRef({getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...c.current})}),u=v.useRef(0),d=v.useCallback(()=>window.clearTimeout(u.current),[]),p=e=>{c.current={x:e.clientX,y:e.clientY},a.onOpenChange(!0)};return v.useEffect(()=>d,[d]),v.useEffect(()=>void(r&&d()),[r,d]),(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(pe,{...o,virtualRef:l}),(0,y.jsx)(f.span,{"data-state":a.open?`open`:`closed`,"data-disabled":r?``:void 0,...i,ref:t,style:{WebkitTouchCallout:`none`,...e.style},onContextMenu:r?e.onContextMenu:s(e.onContextMenu,e=>{d(),p(e),e.preventDefault()}),onPointerDown:r?e.onPointerDown:s(e.onPointerDown,V(e=>{d(),u.current=window.setTimeout(()=>p(e),700)})),onPointerMove:r?e.onPointerMove:s(e.onPointerMove,V(d)),onPointerCancel:r?e.onPointerCancel:s(e.onPointerCancel,V(d)),onPointerUp:r?e.onPointerUp:s(e.onPointerUp,V(d))})]})});T.displayName=w;var _e=`ContextMenuPortal`,E=e=>{let{__scopeContextMenu:t,...n}=e,r=x(t);return(0,y.jsx)(h,{...r,...n})};E.displayName=_e;var D=`ContextMenuContent`,O=v.forwardRef((e,t)=>{let{__scopeContextMenu:n,...r}=e,i=S(D,n),a=x(n),o=v.useRef(!1);return(0,y.jsx)(oe,{...a,...r,ref:t,side:`right`,sideOffset:2,align:`start`,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),!t.defaultPrevented&&o.current&&t.preventDefault(),o.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),!t.defaultPrevented&&!i.modal&&(o.current=!0)},style:{...e.style,"--radix-context-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-context-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-context-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-context-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-context-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});O.displayName=D;var ve=`ContextMenuGroup`,ye=v.forwardRef((e,t)=>{let{__scopeContextMenu:n,...r}=e,i=x(n);return(0,y.jsx)(ee,{...i,...r,ref:t})});ye.displayName=ve;var be=`ContextMenuLabel`,k=v.forwardRef((e,t)=>{let{__scopeContextMenu:n,...r}=e,i=x(n);return(0,y.jsx)(te,{...i,...r,ref:t})});k.displayName=be;var A=`ContextMenuItem`,j=v.forwardRef((e,t)=>{let{__scopeContextMenu:n,...r}=e,i=x(n);return(0,y.jsx)(le,{...i,...r,ref:t})});j.displayName=A;var M=`ContextMenuCheckboxItem`,N=v.forwardRef((e,t)=>{let{__scopeContextMenu:n,...r}=e,i=x(n);return(0,y.jsx)(de,{...i,...r,ref:t})});N.displayName=M;var xe=`ContextMenuRadioGroup`,Se=v.forwardRef((e,t)=>{let{__scopeContextMenu:n,...r}=e,i=x(n);return(0,y.jsx)(g,{...i,...r,ref:t})});Se.displayName=xe;var Ce=`ContextMenuRadioItem`,P=v.forwardRef((e,t)=>{let{__scopeContextMenu:n,...r}=e,i=x(n);return(0,y.jsx)(ne,{...i,...r,ref:t})});P.displayName=Ce;var we=`ContextMenuItemIndicator`,F=v.forwardRef((e,t)=>{let{__scopeContextMenu:n,...r}=e,i=x(n);return(0,y.jsx)(fe,{...i,...r,ref:t})});F.displayName=we;var Te=`ContextMenuSeparator`,I=v.forwardRef((e,t)=>{let{__scopeContextMenu:n,...r}=e,i=x(n);return(0,y.jsx)(ue,{...i,...r,ref:t})});I.displayName=Te;var L=`ContextMenuArrow`,Ee=v.forwardRef((e,t)=>{let{__scopeContextMenu:n,...r}=e,i=x(n);return(0,y.jsx)(ce,{...i,...r,ref:t})});Ee.displayName=L;var R=`ContextMenuSub`,De=e=>{let{__scopeContextMenu:t,children:n,onOpenChange:r,open:i,defaultOpen:a}=e,o=x(t),[s,c]=d({prop:i,defaultProp:a??!1,onChange:r,caller:R});return(0,y.jsx)(se,{...o,open:s,onOpenChange:c,children:n})};De.displayName=R;var Oe=`ContextMenuSubTrigger`,z=v.forwardRef((e,t)=>{let{__scopeContextMenu:n,...r}=e,i=x(n);return(0,y.jsx)(ie,{...i,...r,ref:t})});z.displayName=Oe;var ke=`ContextMenuSubContent`,B=v.forwardRef((e,t)=>{let{__scopeContextMenu:n,...r}=e,i=x(n);return(0,y.jsx)(ae,{...i,...r,ref:t,style:{...e.style,"--radix-context-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-context-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-context-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-context-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-context-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});B.displayName=ke;function V(e){return t=>t.pointerType===`mouse`?void 0:e(t)}var Ae=C,je=T,Me=E,H=O,U=k,W=j,G=N,K=P,q=F,J=I,Y=z,X=B,Ne=Ae,Pe=je,Fe=v.forwardRef((e,t)=>{let n=(0,_.c)(14),r,o,s,c;n[0]===e?(r=n[1],o=n[2],s=n[3],c=n[4]):({className:o,inset:s,children:r,...c}=e,n[0]=e,n[1]=r,n[2]=o,n[3]=s,n[4]=c);let l;n[5]!==o||n[6]!==s?(l=p(p(i.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]=l):l=n[7];let u;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,y.jsx)(a,{className:`ml-auto h-4 w-4`}),n[8]=u):u=n[8];let d;return n[9]!==r||n[10]!==c||n[11]!==t||n[12]!==l?(d=(0,y.jsxs)(Y,{ref:t,className:l,...c,children:[r,u]}),n[9]=r,n[10]=c,n[11]=t,n[12]=l,n[13]=d):d=n[13],d});Fe.displayName=Y.displayName;var Ie=v.forwardRef((e,t)=>{let n=(0,_.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=p(`z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,y.jsx)(X,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});Ie.displayName=X.displayName;var Z=v.forwardRef((e,t)=>{let n=(0,_.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=p(`z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md animate-in fade-in-80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,y.jsx)(Me,{children:(0,y.jsx)(H,{ref:t,className:a,...i})}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});Z.displayName=H.displayName;var Q=v.forwardRef((e,t)=>{let n=(0,_.c)(11),r,a,o;n[0]===e?(r=n[1],a=n[2],o=n[3]):({className:r,inset:a,...o}=e,n[0]=e,n[1]=r,n[2]=a,n[3]=o);let s;n[4]!==r||n[5]!==a?(s=p(p(i.body,`relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50`),a&&`pl-8`,r),n[4]=r,n[5]=a,n[6]=s):s=n[6];let c;return n[7]!==o||n[8]!==t||n[9]!==s?(c=(0,y.jsx)(W,{ref:t,className:s,...o}),n[7]=o,n[8]=t,n[9]=s,n[10]=c):c=n[10],c});Q.displayName=W.displayName;var Le=v.forwardRef((e,t)=>{let n=(0,_.c)(14),r,a,o,s;n[0]===e?(r=n[1],a=n[2],o=n[3],s=n[4]):({className:o,children:a,checked:r,...s}=e,n[0]=e,n[1]=r,n[2]=a,n[3]=o,n[4]=s);let c;n[5]===o?c=n[6]:(c=p(p(i.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[5]=o,n[6]=c);let u;n[7]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,y.jsx)(`span`,{className:`absolute left-2 flex h-3.5 w-3.5 items-center justify-center`,children:(0,y.jsx)(q,{children:(0,y.jsx)(l,{className:`h-4 w-4`})})}),n[7]=u):u=n[7];let d;return n[8]!==r||n[9]!==a||n[10]!==s||n[11]!==t||n[12]!==c?(d=(0,y.jsxs)(G,{ref:t,className:c,checked:r,...s,children:[u,a]}),n[8]=r,n[9]=a,n[10]=s,n[11]=t,n[12]=c,n[13]=d):d=n[13],d});Le.displayName=G.displayName;var Re=v.forwardRef((e,t)=>{let n=(0,_.c)(12),r,a,s;n[0]===e?(r=n[1],a=n[2],s=n[3]):({className:a,children:r,...s}=e,n[0]=e,n[1]=r,n[2]=a,n[3]=s);let c;n[4]===a?c=n[5]:(c=p(p(i.body,`relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50`),a),n[4]=a,n[5]=c);let l;n[6]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,y.jsx)(`span`,{className:`absolute left-2 flex h-3.5 w-3.5 items-center justify-center`,children:(0,y.jsx)(q,{children:(0,y.jsx)(o,{className:`h-2 w-2 fill-current`})})}),n[6]=l):l=n[6];let u;return n[7]!==r||n[8]!==s||n[9]!==t||n[10]!==c?(u=(0,y.jsxs)(K,{ref:t,className:c,...s,children:[l,r]}),n[7]=r,n[8]=s,n[9]=t,n[10]=c,n[11]=u):u=n[11],u});Re.displayName=K.displayName;var ze=v.forwardRef((e,t)=>{let n=(0,_.c)(11),r,a,o;n[0]===e?(r=n[1],a=n[2],o=n[3]):({className:r,inset:a,...o}=e,n[0]=e,n[1]=r,n[2]=a,n[3]=o);let s;n[4]!==r||n[5]!==a?(s=p(p(i.body,`px-2 py-1.5 font-semibold text-foreground`),a&&`pl-8`,r),n[4]=r,n[5]=a,n[6]=s):s=n[6];let c;return n[7]!==o||n[8]!==t||n[9]!==s?(c=(0,y.jsx)(U,{ref:t,className:s,...o}),n[7]=o,n[8]=t,n[9]=s,n[10]=c):c=n[10],c});ze.displayName=U.displayName;var $=v.forwardRef((e,t)=>{let n=(0,_.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=p(`-mx-1 my-1 h-px bg-divider`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,y.jsx)(J,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});$.displayName=J.displayName;var Be=e=>{let t=(0,_.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=p(i.compact,`ml-auto tracking-widest text-muted-foreground`,n),t[3]=n,t[4]=a);let o;return t[5]!==r||t[6]!==a?(o=(0,y.jsx)(`span`,{className:a,...r}),t[5]=r,t[6]=a,t[7]=o):o=t[7],o};Be.displayName=`ContextMenuShortcut`;export{Pe as a,$ as i,Z as n,Q as r,Ne as t};
@@ -1 +1 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{t as i}from"./query-keys-5QPW6Dv-.js";import{t as a}from"./useInfiniteQuery-DUeUxDcu.js";import{at as o}from"./dist-ZlK7I-y-.js";import{D as s,bt as c,pn as l}from"./dist-DIjomljy.js";import{r as u,t as d}from"./utils-CT-Dw22R.js";import{t as f}from"./button-sfGyFWfz.js";import{At as p,Ei as m,Kr as h,ai as g,u as ee}from"./api-ODizoHnY.js";import{n as _}from"./async-loading-fallback-C173aA9v.js";import{n as v}from"./use-toast-xpb5jNtN.js";import{Ln as y,N as te,Tn as ne,_n as b,bn as x,gn as S,hn as C,kn as re,vn as w,xn as T,yn as E}from"./index-Bmkj1Qwa.js";import{t as D}from"./delete-confirm-dialog-B99gEJN8.js";import{i as O,r as k}from"./table-B2TDbGGl.js";var A=e(n(),1),j=t(),M=25;function ie(){let e=(0,j.c)(12),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={queryKey:i.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=a(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 o=r,s=n.data?.pages[0]?.total??0,c;return e[3]!==o||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]!==s?(c={conversations:o,total:s,isInitialLoading:n.isPending,isLoadingMore:n.isFetchingNextPage,error:n.error,hasNextPage:n.hasNextPage,fetchNextPage:n.fetchNextPage,refetch:n.refetch},e[3]=o,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]=s,e[11]=c):c=e[11],c}function N(e){let{pageParam:t}=e;return p(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(h.HISTORY_COLUMNS))}function R(){let e=(0,j.c)(6),[t,n]=(0,A.useState)(L),r;e[0]===t?r=e[1]:(r=function(e){return t.includes(e)},e[0]=t,e[1]=r);let i=r,a;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(a=function(e,t){n(function(n){let r=t?n.includes(e)?n:[...n,e]:n.filter(function(t){return t!==e});return m(h.HISTORY_COLUMNS,JSON.stringify(r)),r})},e[2]=a):a=e[2];let o=a,s;return e[3]!==i||e[4]!==t?(s={visibleColumns:t,isColumnVisible:i,setColumnVisible:o},e[3]=i,e[4]=t,e[5]=s):s=e[5],s}var z=r(),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=d(o.bodyMuted,`w-48 truncate py-1.5`),se=`py-1.5`,X=d(o.bodyMuted,`w-20 py-1.5 text-right tabular-nums`),Z=d(o.bodyMuted,`w-28 py-1.5 text-right tabular-nums`),Q=d(o.bodyMuted,`w-28 py-1.5 text-right tabular-nums`),ce=d(o.bodyMuted,`w-40 truncate py-1.5`),le=d(o.bodyMuted,`w-32 truncate py-1.5`),$=d(o.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:r,...i}=e,a;t[2]===r?a=t[3]:(a={...r,width:`100%`},t[2]=r,t[3]=a),n=(0,z.jsx)(`table`,{...i,style:a,className:d(`w-full caption-bottom select-text`,H,o.body,i.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=d(`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=d(`[&_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=d(`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)(_,{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:le,children:e.branch},t)}}function _e(){let{openConversation:e}=te(),{toast:t}=v(),[n,r]=(0,A.useState)(!1),[i,a]=(0,A.useState)(!1),{visibleColumns:p,isColumnVisible:m,setColumnVisible:h}=R(),{conversations:g,isInitialLoading:j,isLoadingMore:M,error:N,hasNextPage:F,fetchNextPage:I,refetch:L}=ie(),G=V+p.length,K=(0,A.useCallback)(()=>{F&&!M&&I()},[I,F,M]);async function q(){a(!0);try{await ee(),await L(),r(!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{a(!1)}}let J=(0,A.useMemo)(function(){return function({item:t,...n}){return(0,z.jsx)(`tr`,{...n,className:d(`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:d(o.body,`truncate`),children:t.title})]})}),P.map(function(e){return m(e.id)?ge(t,e.id):null}),(0,z.jsx)(k,{className:$,"aria-label":`Last updated ${u(t.lastMessageAt)} ago`,children:u(t.lastMessageAt)})]})}function Z(){return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(O,{className:U,children:`Project`}),(0,z.jsx)(O,{className:W,children:`Chat`}),P.map(function(e){return m(e.id)?he(e.id):null}),(0,z.jsx)(O,{className:ae,children:`Updated`})]})}let Q=(0,z.jsx)(`table`,{className:d(`w-full caption-bottom`,H,o.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)(y,{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)(re,{title:`History`,description:`Browse recent chats across all projects.`,tableHeader:g.length>0?Q:void 0,action:(0,z.jsxs)(S,{children:[(0,z.jsx)(ne,{asChild:!0,children:(0,z.jsx)(f,{type:`button`,variant:`ghost`,size:`icon`,className:`h-8 w-8`,"aria-label":`Choose columns`,children:(0,z.jsx)(l,{className:`h-4 w-4`})})}),(0,z.jsxs)(w,{align:`end`,className:`w-48`,children:[(0,z.jsx)(x,{className:o.body,children:`Columns`}),P.map(function(e){return(0,z.jsx)(b,{checked:m(e.id),onCheckedChange:t=>{h(e.id,t===!0)},onSelect:e=>{e.preventDefault()},children:e.label},e.id)}),(0,z.jsx)(T,{}),(0,z.jsxs)(E,{className:d(o.body,`gap-2 text-destructive focus:text-destructive`),disabled:g.length===0,onSelect:()=>r(!0),children:[(0,z.jsx)(s,{className:`h-4 w-4`}),`Clear history`]})]})]})}),(0,z.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:j?(0,z.jsx)(_,{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:o.body,children:N instanceof Error?N.message:`Failed to load conversation history`}),(0,z.jsx)(f,{onClick:()=>void L(),children:`Try again`})]})}):g.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:o.emptyStateTitle,children:`No history`}),(0,z.jsx)(`p`,{className:o.bodyMuted,children:`No conversations found yet.`})]})}):(0,z.jsx)(C,{style:{height:`100%`},data:g,computeItemKey:(e,t)=>t.conversationId,itemContent:X,endReached:K,defaultItemHeight:B,increaseViewportBy:B*5,components:Y})})]}),(0,z.jsx)(D,{open:n,onOpenChange:r,title:`Clear conversation history?`,description:`This permanently clears conversation history across all projects. This action cannot be undone.`,onConfirm:()=>void q(),confirming:i,confirmLabel:`Clear`,confirmingLabel:`Clearing...`})]})}export{_e as default};
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{t as i}from"./query-keys-5QPW6Dv-.js";import{t as a}from"./useInfiniteQuery-DUeUxDcu.js";import{ot as o}from"./dist-DjiNKpTV.js";import{D as s,bt as c,fn as l}from"./dist-CNOCRPxn.js";import{r as u,t as d}from"./utils-CT-Dw22R.js";import{t as f}from"./button-B6HDsfd5.js";import{At as p,Oi as m,Yr as h,ci as g,u as ee}from"./api-D1GxdEEp.js";import{n as _}from"./async-loading-fallback-D2X0o4Qa.js";import{n as v}from"./use-toast-xpb5jNtN.js";import{Fn as y,In as te,Ln as ne,N as b,Pn as x,Rn as S,Un as C,_n as re,kn as w,xn as T,zn as E}from"./index-BOB3ZUQs.js";import{t as D}from"./delete-confirm-dialog-3DX1u0Dg.js";import{i as O,r as k}from"./table-MUx4ZxvS.js";var A=e(n(),1),j=t(),M=25;function ie(){let e=(0,j.c)(12),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={queryKey:i.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=a(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 o=r,s=n.data?.pages[0]?.total??0,c;return e[3]!==o||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]!==s?(c={conversations:o,total:s,isInitialLoading:n.isPending,isLoadingMore:n.isFetchingNextPage,error:n.error,hasNextPage:n.hasNextPage,fetchNextPage:n.fetchNextPage,refetch:n.refetch},e[3]=o,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]=s,e[11]=c):c=e[11],c}function N(e){let{pageParam:t}=e;return p(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(h.HISTORY_COLUMNS))}function R(){let e=(0,j.c)(6),[t,n]=(0,A.useState)(L),r;e[0]===t?r=e[1]:(r=function(e){return t.includes(e)},e[0]=t,e[1]=r);let i=r,a;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(a=function(e,t){n(function(n){let r=t?n.includes(e)?n:[...n,e]:n.filter(function(t){return t!==e});return m(h.HISTORY_COLUMNS,JSON.stringify(r)),r})},e[2]=a):a=e[2];let o=a,s;return e[3]!==i||e[4]!==t?(s={visibleColumns:t,isColumnVisible:i,setColumnVisible:o},e[3]=i,e[4]=t,e[5]=s):s=e[5],s}var z=r(),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=d(o.bodyMuted,`w-48 truncate py-1.5`),se=`py-1.5`,X=d(o.bodyMuted,`w-20 py-1.5 text-right tabular-nums`),Z=d(o.bodyMuted,`w-28 py-1.5 text-right tabular-nums`),Q=d(o.bodyMuted,`w-28 py-1.5 text-right tabular-nums`),ce=d(o.bodyMuted,`w-40 truncate py-1.5`),le=d(o.bodyMuted,`w-32 truncate py-1.5`),$=d(o.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:r,...i}=e,a;t[2]===r?a=t[3]:(a={...r,width:`100%`},t[2]=r,t[3]=a),n=(0,z.jsx)(`table`,{...i,style:a,className:d(`w-full caption-bottom select-text`,H,o.body,i.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=d(`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=d(`[&_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=d(`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)(_,{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:le,children:e.branch},t)}}function _e(){let{openConversation:e}=b(),{toast:t}=v(),[n,r]=(0,A.useState)(!1),[i,a]=(0,A.useState)(!1),{visibleColumns:p,isColumnVisible:m,setColumnVisible:h}=R(),{conversations:g,isInitialLoading:j,isLoadingMore:M,error:N,hasNextPage:F,fetchNextPage:I,refetch:L}=ie(),G=V+p.length,K=(0,A.useCallback)(()=>{F&&!M&&I()},[I,F,M]);async function q(){a(!0);try{await ee(),await L(),r(!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{a(!1)}}let J=(0,A.useMemo)(function(){return function({item:t,...n}){return(0,z.jsx)(`tr`,{...n,className:d(`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:d(o.body,`truncate`),children:t.title})]})}),P.map(function(e){return m(e.id)?ge(t,e.id):null}),(0,z.jsx)(k,{className:$,"aria-label":`Last updated ${u(t.lastMessageAt)} ago`,children:u(t.lastMessageAt)})]})}function Z(){return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(O,{className:U,children:`Project`}),(0,z.jsx)(O,{className:W,children:`Chat`}),P.map(function(e){return m(e.id)?he(e.id):null}),(0,z.jsx)(O,{className:ae,children:`Updated`})]})}let Q=(0,z.jsx)(`table`,{className:d(`w-full caption-bottom`,H,o.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)(w,{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)(T,{title:`History`,description:`Browse recent chats across all projects.`,tableHeader:g.length>0?Q:void 0,action:(0,z.jsxs)(x,{children:[(0,z.jsx)(C,{asChild:!0,children:(0,z.jsx)(f,{type:`button`,variant:`ghost`,size:`icon`,className:`h-8 w-8`,"aria-label":`Choose columns`,children:(0,z.jsx)(l,{className:`h-4 w-4`})})}),(0,z.jsxs)(te,{align:`end`,className:`w-48`,children:[(0,z.jsx)(S,{className:o.body,children:`Columns`}),P.map(function(e){return(0,z.jsx)(y,{checked:m(e.id),onCheckedChange:t=>{h(e.id,t===!0)},onSelect:e=>{e.preventDefault()},children:e.label},e.id)}),(0,z.jsx)(E,{}),(0,z.jsxs)(ne,{className:d(o.body,`gap-2 text-destructive focus:text-destructive`),disabled:g.length===0,onSelect:()=>r(!0),children:[(0,z.jsx)(s,{className:`h-4 w-4`}),`Clear history`]})]})]})}),(0,z.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:j?(0,z.jsx)(_,{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:o.body,children:N instanceof Error?N.message:`Failed to load conversation history`}),(0,z.jsx)(f,{onClick:()=>void L(),children:`Try again`})]})}):g.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:o.emptyStateTitle,children:`No history`}),(0,z.jsx)(`p`,{className:o.bodyMuted,children:`No conversations found yet.`})]})}):(0,z.jsx)(re,{style:{height:`100%`},data:g,computeItemKey:(e,t)=>t.conversationId,itemContent:X,endReached:K,defaultItemHeight:B,increaseViewportBy:B*5,components:Y})})]}),(0,z.jsx)(D,{open:n,onOpenChange:r,title:`Clear conversation history?`,description:`This permanently clears conversation history across all projects. This action cannot be undone.`,onConfirm:()=>void q(),confirming:i,confirmLabel:`Clear`,confirmingLabel:`Clearing...`})]})}export{_e as default};
@@ -0,0 +1,2 @@
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{Dt as i,Et as a,S as o,ot as s}from"./dist-DjiNKpTV.js";import{un as c}from"./dist-CNOCRPxn.js";import{t as l}from"./utils-CT-Dw22R.js";import{t as u}from"./button-B6HDsfd5.js";import{Ai as d,Ci as f,Kt as p,Li as m,Mt as h,c as g,di as _,ni as v,vi as y}from"./api-D1GxdEEp.js";import{n as b}from"./scroll-area-BMQFeWmq.js";import{a as x,i as S,o as C,r as w,s as T,t as E}from"./dialog--0foS3aw.js";import{Ft as D,It as O,M as k}from"./index-BOB3ZUQs.js";import{n as A,t as ee}from"./toggle-group-DMR7z3pz.js";import{r as j}from"./commit-method-fields-BihSf23f.js";var M=e(n(),1),N=t(),P={"angular-standalone":`logo-angular.svg`,"custom-angular":`logo-angular.svg`,react:`logo-react.svg`,"vite-react":`logo-react.svg`,vue:`logo-vue.svg`,"vite-vue":`logo-vue.svg`,"custom-svelte":`logo-svelte.svg`,"custom-ionic-svelte":`logo-svelte.svg`,"vite-svelte":`logo-svelte.svg`,"vite-solid":`logo-solid.svg`,astro:`logo-astro.svg`,nextjs:`logo-nextjs.svg`,nuxt:`logo-nuxt.svg`,"vite-qwik":`logo-qwik.svg`,"vite-preact":`logo-preact.svg`,"vite-lit":`logo-lit.svg`,"vite-web":`logo-web.svg`,"tanstack-start":`logo-vite.svg`,waku:`logo-waku.svg`,hydrogen:`logo-hydrogen.svg`,plugin:`logo-capacitor.svg`};function te(e){return e.trim().toLowerCase().replace(/[\\/]+/g,` `).replace(/[^a-z0-9._ -]+/g,``).replace(/\s+/g,`-`).replace(/-+/g,`-`).replace(/^-|-$/g,``)}function ne(e,t,n){return e===2&&t===`clone`?{title:`Clone Repository`,description:`Enter a git repository URL to clone.`}:e===2&&t===`webapp`?{title:`Create App`,description:`Choose a template type.`}:e===3&&t===`clone`?{title:`Clone Repository`,description:`Choose commit workflow.`}:e===3&&t===`folder`?{title:`Blank Starter`,description:`Enter a project name.`}:e===3&&t===`webapp`?{title:n===`Capacitor Plugin`?`Create Capacitor Plugin`:n?`Create ${n} App`:`Create App`,description:`Name your project and choose variation, package manager, and commit workflow.`}:{title:``,description:``}}var re=o(`app.create-project-dialog.ui`);async function ie(){try{if(await g())return!0;let e=`macOS / Linux: curl -fsSL https://vite.plus | bash
2
+ Windows: irm https://vite.plus/ps1 | iex`;if(!window.confirm(`Vite Plus is required for this template but is not installed.\n\nIs it ok to install Vite Plus using the following command?\n\n${e}`))return!1;let{success:t,error:n}=await p();return t?await g()?!0:(window.alert(`Vite Plus was installed but could not be verified.\n\nTry restarting the app — if it is still missing, install it manually with:\n\n${e}`),!1):(window.alert(`Failed to install Vite Plus:\n${n||`Unknown error`}`),!1)}catch(e){return re.error(`Vite Plus check/install failed:`,e),!0}}function ae(e){let t=(0,N.c)(38),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=[],t[0]=n):n=t[0];let[r,i]=(0,M.useState)(n),[a,o]=(0,M.useState)(!1),s=Array.isArray(r)&&r.length>0,c;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(c=()=>{o(!0),h().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:g,templatesByTypeName:_}=p,v;if(t[8]!==_){v={};for(let e of Object.keys(_)){let t=_[e]??[];if(t.length===0)continue;let n=t.find(le),r=t.filter(ce),i=n?[n,...r]:t;v[e]=i[0].id}t[8]=_,t[9]=v}else v=t[9];let y=v,b;bb0:{if(!Array.isArray(r)){b=e;break bb0}if(r.find(t=>t.id===e)){b=e;break bb0}if(r.length===0){b=e;break bb0}let n=g[0],i;t[10]!==n||t[11]!==_?(i=n?_[n]??[]:[],t[10]=n,t[11]=_,t[12]=i):i=t[12];let a=i,o;t[13]===a?o=t[14]:(o=a.find(se),t[13]=a,t[14]=o),b=(o??a[0])?.id??e}let x=b,S;bb1:{if(!x||!Array.isArray(r)||r.length===0){S=null;break bb1}let e;t[15]!==x||t[16]!==r?(e=r.find(e=>e.id===x)?.typeName??null,t[15]=x,t[16]=r,t[17]=e):e=t[17],S=e}let C=S,w;if(t[18]!==C||t[19]!==_){bb2:{let e=C?_[C]??[]:[];if(e.length<=1){w=e;break bb2}let t=e.find(oe),n=e.filter(F);w=t?[t,...n]:e}t[18]=C,t[19]=_,t[20]=w}else w=t[20];let T=w,E;t[21]!==x||t[22]!==r?(E=x&&Array.isArray(r)?r.find(e=>e.id===x):null,t[21]=x,t[22]=r,t[23]=E):E=t[23];let D=E,O,k;t[24]===x?(O=t[25],k=t[26]):(O=()=>{x&&m(x)},k=[x],t[24]=x,t[25]=O,t[26]=k),(0,M.useEffect)(O,k);let A;return t[27]!==x||t[28]!==y||t[29]!==s||t[30]!==D||t[31]!==C||t[32]!==r||t[33]!==_||t[34]!==a||t[35]!==g||t[36]!==T?(A={templates:r,templatesLoading:a,hasTemplates:s,loadTemplates:l,typeNames:g,templatesByTypeName:_,firstVariationIdByTypeName:y,effectiveTemplateId:x,selectedTypeNameFromEffective:C,variations:T,selectedTemplate:D},t[27]=x,t[28]=y,t[29]=s,t[30]=D,t[31]=C,t[32]=r,t[33]=_,t[34]=a,t[35]=g,t[36]=T,t[37]=A):A=t[37],A}function F(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`}function le(e){return e.variationName===`Starter`}var I=r();function L(e){let t=(0,N.c)(10),{gitUrl:n,onGitUrlChange:r,canProceed:i,onNext:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,I.jsx)(D,{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,I.jsx)(b,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,I.jsx)(`div`,{className:`px-6 py-4`,children:(0,I.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[o,(0,I.jsx)(O,{id:`gitUrl`,placeholder:`https://github.com/user/repo.git`,value:n,onChange:s,onKeyDown:c,autoFocus:!0})]})})}),t[6]=n,t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function ue(e){let t=(0,N.c)(11),{templatesLoading:n,typeNames:r,templatesByTypeName:i,selectedTypeName:a,loadedImages:o,onImageLoad:c,onSelectType:u,onSelectTypeAndAdvance:d}=e,f;t[0]!==o||t[1]!==c||t[2]!==u||t[3]!==d||t[4]!==a||t[5]!==i||t[6]!==n||t[7]!==r?(f=n?(0,I.jsx)(`p`,{className:l(s.bodyMuted,`col-span-full p-4`),children:`Loading…`}):r.map(e=>{let t=i[e]?.[0]?.type,n=t?P[t]:null,r=a===e;return(0,I.jsxs)(`button`,{type:`button`,onClick:()=>u(e),onDoubleClick:()=>d(e),className:l(`group flex flex-col items-center gap-0 rounded-lg px-1 py-1 text-center transition-colors`,r?`text-accent-foreground`:`text-foreground`),children:[(0,I.jsx)(`div`,{className:l(`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]`,r&&`ring-[3px] ring-brand`),children:n?(0,I.jsx)(`img`,{src:`/template-types/${n}`,alt:``,className:l(`relative size-8 shrink-0 transition-opacity duration-300`,o.has(n)?`opacity-100`:`opacity-0`),onLoad:()=>c(n),"aria-hidden":!0}):null}),(0,I.jsx)(`span`,{className:l(s.compact,`w-full truncate pt-1 font-medium`),children:e})]},e)}),t[0]=o,t[1]=c,t[2]=u,t[3]=d,t[4]=a,t[5]=i,t[6]=n,t[7]=r,t[8]=f):f=t[8];let p;return t[9]===f?p=t[10]:(p=(0,I.jsx)(`div`,{className:`flex flex-col flex-1 min-h-0 px-6 pb-4`,children:(0,I.jsx)(`div`,{className:`flex-1 min-h-0 flex flex-col py-2`,children:(0,I.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto -mx-1`,children:(0,I.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 de(e){let t=(0,N.c)(17),{projectName:n,onProjectNameChange:r,canSubmit:i,onSubmit:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,I.jsx)(D,{htmlFor:`folderProjectName`,children:`Project Name`}),t[0]=o):o=t[0];let c;t[1]===r?c=t[2]:(c=e=>r(e.target.value),t[1]=r,t[2]=c);let l;t[3]!==i||t[4]!==a?(l=e=>e.key===`Enter`&&i&&a(),t[3]=i,t[4]=a,t[5]=l):l=t[5];let u;t[6]!==n||t[7]!==c||t[8]!==l?(u=(0,I.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[o,(0,I.jsx)(O,{id:`folderProjectName`,placeholder:`My Project`,value:n,onChange:c,onKeyDown:l,autoFocus:!0,className:`w-full`})]}),t[6]=n,t[7]=c,t[8]=l,t[9]=u):u=t[9];let d;t[10]===n?d=t[11]:(d=te(n)||`project-name`,t[10]=n,t[11]=d);let f;t[12]===d?f=t[13]:(f=(0,I.jsxs)(`p`,{className:s.bodyMuted,children:[`Folder name: `,d]}),t[12]=d,t[13]=f);let p;return t[14]!==u||t[15]!==f?(p=(0,I.jsx)(b,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,I.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 fe(e){let t=(0,N.c)(33),{projectNameDisplay:n,onProjectNameChange:r,variations:i,effectiveTemplateId:o,onTemplateIdChange:l,selectedTemplate:u,packageManager:d,onPackageManagerChange:f,commitMethod:p,onCommitMethodChange:m}=e,h;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,I.jsx)(D,{htmlFor:`projectName`,children:`Project Name`}),t[0]=h):h=t[0];let g;t[1]===r?g=t[2]:(g=e=>r(e.target.value),t[1]=r,t[2]=g);let _;t[3]!==n||t[4]!==g?(_=(0,I.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[h,(0,I.jsx)(O,{id:`projectName`,placeholder:`My App`,value:n,onChange:g,className:`w-full`})]}),t[3]=n,t[4]=g,t[5]=_):_=t[5];let v;t[6]!==o||t[7]!==l||t[8]!==i?(v=i.length>1&&(0,I.jsxs)(I.Fragment,{children:[(0,I.jsx)(D,{children:`Variation`}),(0,I.jsx)(ee,{type:`single`,value:o,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:i.map(me)})]}),t[6]=o,t[7]=l,t[8]=i,t[9]=v):v=t[9];let y=u?.description??i[0]?.description??``,x;t[10]===u?x=t[11]:(x=u?.url&&(0,I.jsxs)(I.Fragment,{children:[` `,(0,I.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,I.jsx)(c,{className:`h-3 w-3`})]})]}),t[10]=u,t[11]=x);let S;t[12]!==y||t[13]!==x?(S=(0,I.jsxs)(`p`,{className:s.bodyMuted,children:[y,x]}),t[12]=y,t[13]=x,t[14]=S):S=t[14];let C;t[15]!==v||t[16]!==S?(C=(0,I.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[v,S]}),t[15]=v,t[16]=S,t[17]=C):C=t[17];let w;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,I.jsx)(D,{children:`Package manager`}),t[18]=w):w=t[18];let T;t[19]===f?T=t[20]:(T=e=>{e&&f(e)},t[19]=f,t[20]=T);let E;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(E=Object.values(a).map(pe),t[21]=E):E=t[21];let k;t[22]!==d||t[23]!==T?(k=(0,I.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[w,(0,I.jsx)(ee,{type:`single`,value:d,onValueChange:T,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:E})]}),t[22]=d,t[23]=T,t[24]=k):k=t[24];let A;t[25]!==p||t[26]!==m?(A=(0,I.jsx)(j,{commitMethod:p,onCommitMethodChange:m}),t[25]=p,t[26]=m,t[27]=A):A=t[27];let M;return t[28]!==k||t[29]!==A||t[30]!==_||t[31]!==C?(M=(0,I.jsx)(b,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,I.jsxs)(`div`,{className:`px-6 py-4 flex flex-col gap-6`,children:[_,C,k,A]})}),t[28]=k,t[29]=A,t[30]=_,t[31]=C,t[32]=M):M=t[32],M}function pe(e){return(0,I.jsx)(A,{value:e.id,className:s.body,children:e.label},e.id)}function me(e){return(0,I.jsx)(A,{value:e.id,className:s.body,children:e.variationName},e.id)}function he(e){return e===`folder`?3:2}function ge(e){return e===`folder`?{projectName:``,projectNameUserEdited:!1,loadedImages:new Set}:{projectName:`My App`,projectNameUserEdited:!1,loadedImages:new Set}}function _e(e){let t=(0,N.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,I.jsx)(L,{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 ve(e){let t=(0,N.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,I.jsx)(ue,{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 ye(e){let t=(0,N.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,I.jsx)(de,{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 be(e){let t=(0,N.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,I.jsx)(fe,{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 xe(e){let t=(0,N.c)(3),{commitMethod:n,onCommitMethodChange:r}=e,i;return t[0]!==n||t[1]!==r?(i=(0,I.jsx)(b,{className:`min-h-0 flex-1 overflow-hidden`,children:(0,I.jsx)(`div`,{className:`flex flex-col gap-6 px-6 py-4`,children:(0,I.jsx)(j,{commitMethod:n,onCommitMethodChange:r})})}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i}function Se(e){let t=(0,N.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,I.jsx)(_e,{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,I.jsx)(ve,{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,I.jsx)(ye,{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,I.jsx)(be,{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,I.jsx)(xe,{commitMethod:E,onCommitMethodChange:D}),t[30]=E,t[31]=D,t[32]=e):e=t[32],e}}}function Ce(e){let t=(0,N.c)(30),{step:n,mode:r,canGoToStep3:i,projectName:a,projectNameDisplay:o,isCheckingVp:s,onBack:c,onNext:l,onSubmitClone:d,onSubmitFolder:f,onSubmitWebApp:p}=e,m;t[0]!==r||t[1]!==c||t[2]!==n?(m=n===3&&r!==`folder`&&(0,I.jsx)(u,{variant:`ghost`,onClick:c,children:`Back`}),t[0]=r,t[1]=c,t[2]=n,t[3]=m):m=t[3];let h;t[4]!==i||t[5]!==r||t[6]!==l||t[7]!==n?(h=n===2&&r!==`folder`&&(0,I.jsx)(u,{onClick:l,disabled:!i,children:`Next`}),t[4]=i,t[5]=r,t[6]=l,t[7]=n,t[8]=h):h=t[8];let g;t[9]!==r||t[10]!==d||t[11]!==n?(g=n===3&&r===`clone`&&(0,I.jsx)(u,{onClick:d,children:`Create Project`}),t[9]=r,t[10]=d,t[11]=n,t[12]=g):g=t[12];let _;t[13]!==r||t[14]!==f||t[15]!==a||t[16]!==n?(_=n===3&&r===`folder`&&(0,I.jsx)(u,{onClick:f,disabled:!a.trim()||!te(a),children:`Create Project`}),t[13]=r,t[14]=f,t[15]=a,t[16]=n,t[17]=_):_=t[17];let v;t[18]!==s||t[19]!==r||t[20]!==p||t[21]!==o||t[22]!==n?(v=n===3&&r===`webapp`&&(0,I.jsx)(u,{onClick:p,disabled:!o.trim()||s,children:s?`Preparing...`:`Create Project`}),t[18]=s,t[19]=r,t[20]=p,t[21]=o,t[22]=n,t[23]=v):v=t[23];let y;return t[24]!==m||t[25]!==h||t[26]!==g||t[27]!==_||t[28]!==v?(y=(0,I.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,I.jsxs)(x,{children:[m,h,g,_,v]})}),t[24]=m,t[25]=h,t[26]=g,t[27]=_,t[28]=v,t[29]=y):y=t[29],y}function R(e){let t=(0,N.c)(117),{open:n,onOpenChange:r,onDialogDismissed:a,initialMode:o,onSubmitClone:s,onSubmitWebApp:c,onSubmitFolder:l}=e,[u,p]=(0,M.useState)(o??`clone`),m=o??`clone`,h;t[0]===m?h=t[1]:(h=he(m),t[0]=m,t[1]=h);let[g,b]=(0,M.useState)(h),[x,D]=(0,M.useState)(``),O;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(O=v(i.PullRequest),t[2]=O):O=t[2];let[A,ee]=(0,M.useState)(O),[j,P]=(0,M.useState)(`My App`),[re,F]=(0,M.useState)(!1),oe;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(oe=y(),t[3]=oe):oe=t[3];let[se,ce]=(0,M.useState)(oe),le;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(le=_(),t[4]=le):le=t[4];let[L,ue]=(0,M.useState)(le),[de,fe]=(0,M.useState)(!1),pe;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(pe=new Set,t[5]=pe):pe=t[5];let[me,_e]=(0,M.useState)(pe),ve;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(ve=e=>{_e(t=>new Set(t).add(e))},t[6]=ve):ve=t[6];let ye=ve,{templatesLoading:be,hasTemplates:xe,loadTemplates:R,typeNames:Te,templatesByTypeName:Ee,firstVariationIdByTypeName:z,effectiveTemplateId:B,selectedTypeNameFromEffective:V,variations:De,selectedTemplate:H}=ae(se),Oe,ke;t[7]!==xe||t[8]!==o||t[9]!==R||t[10]!==n?(Oe=()=>{if(!n||!o)return;let e=ge(o);p(o),b(he(o)),D(``),P(e.projectName),F(e.projectNameUserEdited),_e(e.loadedImages),o===`webapp`&&!xe&&R()},ke=[n,o,xe,R],t[7]=xe,t[8]=o,t[9]=R,t[10]=n,t[11]=Oe,t[12]=ke):(Oe=t[11],ke=t[12]),(0,M.useEffect)(Oe,ke);let U=re?j:V?`My ${V} App`:`My App`,Ae;t[13]!==a||t[14]!==r?(Ae=function(){a?.(),p(`clone`),b(2),D(``),P(`My App`),F(!1),_e(new Set),r(!1)},t[13]=a,t[14]=r,t[15]=Ae):Ae=t[15];let W=Ae,je;t[16]!==g||t[17]!==u||t[18]!==W?(je=function(){if(g===2||u===`folder`){W();return}b(2)},t[16]=g,t[17]=u,t[18]=W,t[19]=je):je=t[19];let Me=je,Ne;t[20]!==x||t[21]!==u||t[22]!==j||t[23]!==V?(Ne=u===`clone`?x.trim().length>0:u===`folder`?j.trim().length>0&&!!te(j):V!==null,t[20]=x,t[21]=u,t[22]=j,t[23]=V,t[24]=Ne):Ne=t[24];let G=Ne,Pe;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(Pe=function(e){ee(e),f(e)},t[25]=Pe):Pe=t[25];let Fe=Pe,Ie;t[26]!==A||t[27]!==x||t[28]!==r||t[29]!==s?(Ie=function(){if(!x.trim())return;let e=x.trim();D(``),b(2),r(!1),p(`clone`),s(e,A).catch(we)},t[26]=A,t[27]=x,t[28]=r,t[29]=s,t[30]=Ie):Ie=t[30];let Le=Ie,Re;t[31]!==B||t[32]!==r||t[33]!==c||t[34]!==L||t[35]!==U||t[36]!==H?.variation?(Re=async function(){if(!U.trim()||!B||!te(U))return;if(H?.variation===`vite-plus`){fe(!0);let e=await ie();if(fe(!1),!e)return}let e=U.trim();P(``),F(!1),b(2),r(!1),p(`clone`),c(e,B,L)},t[31]=B,t[32]=r,t[33]=c,t[34]=L,t[35]=U,t[36]=H?.variation,t[37]=Re):Re=t[37];let ze=Re,Be;t[38]!==r||t[39]!==l||t[40]!==j?(Be=function(){let e=j.trim();!e||!te(e)||(P(``),F(!1),b(2),r(!1),p(`clone`),l(e))},t[38]=r,t[39]=l,t[40]=j,t[41]=Be):Be=t[41];let K=Be,q=g,Ve=u===`folder`?1:g-1,He;t[42]!==G||t[43]!==g||t[44]!==u?(He=function(e){return u===`folder`?e===1:e===1?g>2:g>=3||g===2&&G},t[42]=G,t[43]=g,t[44]=u,t[45]=He):He=t[45];let Ue=He,We;t[46]===u?We=t[47]:(We=function(e){u!==`folder`&&b(e===1?2:3)},t[46]=u,t[47]=We);let Ge=We,Ke;t[48]!==u||t[49]!==V||t[50]!==q?(Ke=ne(q,u,V),t[48]=u,t[49]=V,t[50]=q,t[51]=Ke):Ke=t[51];let J=Ke,qe=u!==`folder`,Je;t[52]===Symbol.for(`react.memo_cache_sentinel`)?(Je=function(e){P(e),F(!0)},t[52]=Je):Je=t[52];let Ye=Je,Xe;t[53]===z?Xe=t[54]:(Xe=function(e){ce(z[e]??``)},t[53]=z,t[54]=Xe);let Ze=Xe,Qe;t[55]===z?Qe=t[56]:(Qe=function(e){ce(z[e]??``),b(3)},t[55]=z,t[56]=Qe);let $e=Qe,et;t[57]===Symbol.for(`react.memo_cache_sentinel`)?(et=function(e){ue(e),d(e)},t[57]=et):et=t[57];let tt=et,nt;t[58]===Symbol.for(`react.memo_cache_sentinel`)?(nt=function(){b(3)},t[58]=nt):nt=t[58];let rt=nt,Y;t[59]===W?Y=t[60]:(Y=e=>!e&&W(),t[59]=W,t[60]=Y);let X;t[61]!==Ue||t[62]!==Ve||t[63]!==Ge||t[64]!==qe?(X=qe?(0,I.jsx)(k,{currentStep:Ve,canGoToStep:Ue,onGoToStep:Ge}):null,t[61]=Ue,t[62]=Ve,t[63]=Ge,t[64]=qe,t[65]=X):X=t[65];let Z;t[66]===J.title?Z=t[67]:(Z=(0,I.jsx)(T,{children:J.title}),t[66]=J.title,t[67]=Z);let it;t[68]===J.description?it=t[69]:(it=(0,I.jsx)(S,{children:J.description}),t[68]=J.description,t[69]=it);let Q;t[70]!==Z||t[71]!==it?(Q=(0,I.jsxs)(C,{children:[Z,it]}),t[70]=Z,t[71]=it,t[72]=Q):Q=t[72];let at;t[73]!==X||t[74]!==Q?(at=(0,I.jsxs)(`div`,{className:`px-6 pb-2 pt-6`,children:[X,Q]}),t[73]=X,t[74]=Q,t[75]=at):at=t[75];let ot;t[76]!==G||t[77]!==A||t[78]!==B||t[79]!==x||t[80]!==Ze||t[81]!==$e||t[82]!==K||t[83]!==me||t[84]!==u||t[85]!==L||t[86]!==j||t[87]!==U||t[88]!==H||t[89]!==V||t[90]!==q||t[91]!==Ee||t[92]!==be||t[93]!==Te||t[94]!==De?(ot=(0,I.jsx)(Se,{step:q,mode:u,canGoToStep3:G,gitUrl:x,onGitUrlChange:D,onNext:rt,templatesLoading:be,typeNames:Te,templatesByTypeName:Ee,selectedTypeNameFromEffective:V,loadedImages:me,onImageLoad:ye,onSelectType:Ze,onSelectTypeAndAdvance:$e,projectName:j,onProjectNameChange:Ye,onSubmitFolder:K,projectNameDisplay:U,variations:De,effectiveTemplateId:B,onTemplateIdChange:ce,selectedTemplate:H,packageManager:L,onPackageManagerChange:tt,commitMethod:A,onCommitMethodChange:Fe}),t[76]=G,t[77]=A,t[78]=B,t[79]=x,t[80]=Ze,t[81]=$e,t[82]=K,t[83]=me,t[84]=u,t[85]=L,t[86]=j,t[87]=U,t[88]=H,t[89]=V,t[90]=q,t[91]=Ee,t[92]=be,t[93]=Te,t[94]=De,t[95]=ot):ot=t[95];let st;t[96]===ze?st=t[97]:(st=()=>void ze(),t[96]=ze,t[97]=st);let ct;t[98]!==G||t[99]!==Me||t[100]!==Le||t[101]!==K||t[102]!==de||t[103]!==u||t[104]!==j||t[105]!==U||t[106]!==q||t[107]!==st?(ct=(0,I.jsx)(Ce,{step:q,mode:u,canGoToStep3:G,projectName:j,projectNameDisplay:U,isCheckingVp:de,onBack:Me,onNext:rt,onSubmitClone:Le,onSubmitFolder:K,onSubmitWebApp:st}),t[98]=G,t[99]=Me,t[100]=Le,t[101]=K,t[102]=de,t[103]=u,t[104]=j,t[105]=U,t[106]=q,t[107]=st,t[108]=ct):ct=t[108];let $;t[109]!==at||t[110]!==ot||t[111]!==ct?($=(0,I.jsxs)(w,{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]!==Y||t[115]!==$?(lt=(0,I.jsx)(E,{open:n,onOpenChange:Y,children:$}),t[113]=n,t[114]=Y,t[115]=$,t[116]=lt):lt=t[116],lt}function we(){}export{R as CreateProjectDialog,R as default};