tarsk 0.5.80 → 0.5.82
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.
- package/dist/bundled-skills/skill-creator/scripts/quick_validate.js +28 -14
- package/dist/index.js +7448 -3994
- package/dist/public/assets/{account-view-DVfacvrH.js → account-view-CC_IRw14.js} +1 -1
- package/dist/public/assets/{alert-dialog-DTxl_mXc.js → alert-dialog-CVooKafv.js} +1 -1
- package/dist/public/assets/api-IMkL19mR.js +2 -0
- package/dist/public/assets/{async-error-boundary-DmJy8jgz.js → async-error-boundary-Did-c5sq.js} +1 -1
- package/dist/public/assets/{browser-tab-BZSxX4fR.js → browser-tab-CjdUnNr2.js} +2 -2
- package/dist/public/assets/{button-DhxraVUW.js → button-DVIjvd2G.js} +1 -1
- package/dist/public/assets/{card-DZy9jCWQ.js → card-DaHPdrGh.js} +1 -1
- package/dist/public/assets/chat-dock-context-BA8EIToZ.js +1 -0
- package/dist/public/assets/{commit-dialog-D0z3emO_.js → commit-dialog-29_bboof.js} +1 -1
- package/dist/public/assets/{commit-error-dialog-CVSOwpqp.js → commit-error-dialog-ASd71LX_.js} +1 -1
- package/dist/public/assets/{commit-method-fields-C7Du43jy.js → commit-method-fields-Bylj8VjO.js} +1 -1
- package/dist/public/assets/conversation-history-view-CXHmQEA6.js +1 -0
- package/dist/public/assets/create-project-dialog-CtEUqqAd.js +2 -0
- package/dist/public/assets/{create-repo-dialog-lS-Tko1c.js → create-repo-dialog-DKcWU21A.js} +1 -1
- package/dist/public/assets/{delete-confirm-dialog-Ciwqi6ts.js → delete-confirm-dialog-C9CQzpYL.js} +1 -1
- package/dist/public/assets/diff-view-eYW3Jliv.js +4 -0
- package/dist/public/assets/{dist-BZmr2Qex.js → dist-BI_HNW9c.js} +1 -1
- package/dist/public/assets/{dist-CA_zFhwJ.js → dist-BKsOX8kk.js} +1 -1
- package/dist/public/assets/{dist-BkOEUrQf.js → dist-BVQgAd-x.js} +1 -1
- package/dist/public/assets/{dist-Dj1qT-gv.js → dist-BYYtqVYm.js} +1 -1
- package/dist/public/assets/dist-Ch137qdo.js +2 -0
- package/dist/public/assets/{dist-iDwSbcD5.js → dist-DqKWH8sc.js} +1 -1
- package/dist/public/assets/{dist-Bihbg_hO.js → dist-GRNTsriM.js} +1 -1
- package/dist/public/assets/{dist-aB1qUwWW.js → dist-VhqWx9-S.js} +1 -1
- package/dist/public/assets/{es2015-B0KHrBGH.js → es2015-CxOm1WGv.js} +1 -1
- package/dist/public/assets/{explorer-monaco-editor-YoaTqh0f.js → explorer-monaco-editor-DMvtDzfX.js} +1 -1
- package/dist/public/assets/{explorer-tab-view-DlBIsvNp.js → explorer-tab-view-CPN5epzi.js} +2 -2
- package/dist/public/assets/explorer-tree-EjBLSWxV.js +1 -0
- package/dist/public/assets/explorer-view-DZh1FGrc.js +76 -0
- package/dist/public/assets/{git-history-dialog-DOcupC-P.js → git-history-dialog-C3tayM-K.js} +1 -1
- package/dist/public/assets/index-C3E_66vw.js +114 -0
- package/dist/public/assets/index-D42A6A6A.css +1 -0
- package/dist/public/assets/{lucide-react-CNNzKD4G.js → lucide-react-C-dX1rVz.js} +1 -1
- package/dist/public/assets/{model-list-controls-DOpHpzG8.js → model-list-controls-Yu77SyTe.js} +1 -1
- package/dist/public/assets/onboarding-dialog-C3vpTe8y.js +1 -0
- package/dist/public/assets/{pill-tabs-CiONEGsi.js → pill-tabs-B_YP0wlG.js} +1 -1
- package/dist/public/assets/{progress-indicator-C7Kj9U3t.js → progress-indicator-QgGbLfer.js} +1 -1
- package/dist/public/assets/project-coding-view-DXtPNlL1.js +1 -0
- package/dist/public/assets/{project-danger-zone-view-BfHTp5LI.js → project-danger-zone-view-y2DDNkUE.js} +1 -1
- package/dist/public/assets/{project-env-vars-view-QrpeAxIt.js → project-env-vars-view-BAiGaui1.js} +1 -1
- package/dist/public/assets/project-model-aliases-view-z5KtzKTK.js +1 -0
- package/dist/public/assets/project-settings-view-CvNtaVMG.js +1 -0
- package/dist/public/assets/{project-tools-view-0j2uWvRy.js → project-tools-view-D3j7nVpp.js} +1 -1
- package/dist/public/assets/providers-list-view-BY11UIaf.js +1 -0
- package/dist/public/assets/pull-request-dialog-D7Tc-DZW.js +1 -0
- package/dist/public/assets/{pull-with-changes-dialog-CFLl2SQP.js → pull-with-changes-dialog-DqH8eFaG.js} +1 -1
- package/dist/public/assets/{push-before-pr-dialog-CD1rZKan.js → push-before-pr-dialog-CxdsKSp0.js} +1 -1
- package/dist/public/assets/{scroll-area-BQ9bdsVQ.js → scroll-area-DnAXfBMQ.js} +1 -1
- package/dist/public/assets/{settings-general-tabs-view-CKaL-A9_.js → settings-general-tabs-view-YngdB7te.js} +2 -2
- package/dist/public/assets/settings-general-view-BLovSe8Y.js +1 -0
- package/dist/public/assets/{settings-list-n-CrPPNl.js → settings-list-CvCGue_y.js} +1 -1
- package/dist/public/assets/{settings-logs-view-CFD-_MKT.js → settings-logs-view-B2vFqetG.js} +4 -4
- package/dist/public/assets/settings-mcp-servers-view-BiWEZyG-.js +5 -0
- package/dist/public/assets/settings-models-view-B7STNfBy.js +1 -0
- package/dist/public/assets/{settings-plugins-view-fSxDPjsF.js → settings-plugins-view-D8wypO3V.js} +2 -2
- package/dist/public/assets/{settings-providers-view-Bj4-iemE.js → settings-providers-view-C5x9gCg7.js} +2 -2
- package/dist/public/assets/settings-setup-view-VuWyf9Ey.js +2 -0
- package/dist/public/assets/settings-skills-view-cu2mzI28.js +2 -0
- package/dist/public/assets/{settings-slack-view-Dx4Pdxjq.js → settings-slack-view-xWc3HZl5.js} +1 -1
- package/dist/public/assets/settings-slash-commands-view-C9slbf4z.js +1 -0
- package/dist/public/assets/{settings-statistics-view-B8YLP2Nb.js → settings-statistics-view-BhrL3BwB.js} +1 -1
- package/dist/public/assets/{settings-storage-view-Cnmt9-0H.js → settings-storage-view-y4GyGxD-.js} +1 -1
- package/dist/public/assets/{settings-subagents-view-Be7aa0Va.js → settings-subagents-view-C1WIOO6x.js} +2 -2
- package/dist/public/assets/{settings-system-prompt-view-KlPFbkat.js → settings-system-prompt-view-b3IaVlp1.js} +1 -1
- package/dist/public/assets/{settings-tab-bar-BJtpuIky.js → settings-tab-bar-cx4BrJIY.js} +1 -1
- package/dist/public/assets/{settings-view-dchqYhRC.js → settings-view-C_ggbCIB.js} +2 -2
- package/dist/public/assets/{slug-utils-Ccbyp4Mu.js → slug-utils-D5qfm2sn.js} +1 -1
- package/dist/public/assets/store-CEYCdhjW.js +9 -0
- package/dist/public/assets/{table-DCmeRDBK.js → table-DHvBIex4.js} +1 -1
- package/dist/public/assets/tasks-view-DFBi6JaW.js +1 -0
- package/dist/public/assets/{terminal-panel-DlfAu8U1.js → terminal-panel-2T2Kc4CN.js} +1 -1
- package/dist/public/assets/{toggle-group-Dl5P_F6a.js → toggle-group-DaT4acSz.js} +1 -1
- package/dist/public/assets/{tooltip-Cg_EhO9M.js → tooltip-Cqmpv-M5.js} +1 -1
- package/dist/public/assets/{use-active-dock-panel-instance-iaFSG9kX.js → use-active-dock-panel-instance-CuYvC5Us.js} +1 -1
- package/dist/public/assets/{use-git-check-BfkMHX3g.js → use-git-check-CmtXehtR.js} +1 -1
- package/dist/public/assets/{use-installed-ai-files-BtR-wIuu.js → use-installed-ai-files-Cdzy29ie.js} +1 -1
- package/dist/public/assets/{useBaseQuery-ChJtNS_3.js → useBaseQuery-D6c39Xb1.js} +1 -1
- package/dist/public/assets/{utils-BCj_kT9l.js → utils-CWTBjUlE.js} +1 -1
- package/dist/public/assets/{web-BC7Gc4bP.js → web-BlBW8SWJ.js} +1 -1
- package/dist/public/assets/{web-C5YunZdw.js → web-CIGP6pa8.js} +1 -1
- package/dist/public/assets/{web-BdHVYPFA.js → web-CsChMX5V.js} +1 -1
- package/dist/public/assets/{web-BGZnt3gU.js → web-bYOmn95I.js} +1 -1
- package/dist/public/index.html +22 -22
- package/package.json +1 -1
- package/dist/public/assets/api-B_ZIptgC.js +0 -2
- package/dist/public/assets/chat-dock-context-DhO-jYMh.js +0 -1
- package/dist/public/assets/conversation-history-view-CkI6-Hvt.js +0 -1
- package/dist/public/assets/create-project-dialog-Ciiyx0LH.js +0 -2
- package/dist/public/assets/diff-view-DKEDlvjR.js +0 -4
- package/dist/public/assets/dist-DZtmmQ-F.js +0 -2
- package/dist/public/assets/explorer-tree-BWb4wB5M.js +0 -1
- package/dist/public/assets/explorer-view-qOBi4ACi.js +0 -76
- package/dist/public/assets/index-B3oaBks2.css +0 -1
- package/dist/public/assets/index-DdJcjvu2.js +0 -112
- package/dist/public/assets/onboarding-dialog-CfkWB6ST.js +0 -1
- package/dist/public/assets/project-coding-view-CrOGfL2D.js +0 -1
- package/dist/public/assets/project-model-aliases-view-D_pamHsA.js +0 -1
- package/dist/public/assets/project-settings-view-C04tQu0x.js +0 -1
- package/dist/public/assets/providers-list-view-4pcZxBFJ.js +0 -1
- package/dist/public/assets/pull-request-dialog-HXBislex.js +0 -1
- package/dist/public/assets/settings-general-view-ybttpP37.js +0 -1
- package/dist/public/assets/settings-mcp-servers-view-kTpnzhrf.js +0 -5
- package/dist/public/assets/settings-models-view-RmIvRn-i.js +0 -1
- package/dist/public/assets/settings-setup-view-ORNCF3ma.js +0 -2
- package/dist/public/assets/settings-skills-view-Dl38QbWw.js +0 -2
- package/dist/public/assets/settings-slash-commands-view-CSm-ZqwM.js +0 -1
- package/dist/public/assets/store-D4D62vkY.js +0 -9
- package/dist/public/assets/tasks-view-CRBklv4O.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{o as t}from"./react-vendor-Ee0-5T4I.js";import{Ct as n,vn as r}from"./dist-DZtmmQ-F.js";var i=e(t(),1);function a(e){return e.name?e.name:e.gitUrl?.split(`/`).pop()?.replace(`.git`,``)??e.projectId}function o(e,t){return t&&n(t)?a(t):r(e)}function s(e,t,n){if(!t)return`Chat`;for(let r of e){let e=r.threads.find(e=>e.threadId===t);if(!e)continue;let i=e.chatTitles?.[n]?.trim();if(i)return i.length>50?`${i.substring(0,50)}...`:i}return`Chat`}function c(e,t){if(t)for(let n of e){let e=n.threads.find(e=>e.threadId===t);if(e)return e.currentConversationId?.trim()||void 0}}function l(e,t){return t.map(function(t){let n=e.find(e=>e.projectId===t.projectId);return n?{...t,threads:t.threads.map(function(e){let t=n.threads.find(t=>t.threadId===e.threadId)?.chatTitles;return!t||Object.keys(t).length===0?e:{...e,chatTitles:{...t,...e.chatTitles}}})}:t})}function u(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function d(...e){return t=>{let n=!1,r=e.map(e=>{let r=u(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():u(e[t],null)}}}}function f(...e){return i.useCallback(d(...e),e)}function p(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=p(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function m(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=p(e))&&(r&&(r+=` `),r+=t);return r}var h=`-`,g=e=>{let t=b(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{let n=e.split(h);return n[0]===``&&n.length!==1&&n.shift(),_(n,t)||y(e)},getConflictingClassGroupIds:(e,t)=>{let i=n[e]||[];return t&&r[e]?[...i,...r[e]]:i}}},_=(e,t)=>{if(e.length===0)return t.classGroupId;let n=e[0],r=t.nextPart.get(n),i=r?_(e.slice(1),r):void 0;if(i)return i;if(t.validators.length===0)return;let a=e.join(h);return t.validators.find(({validator:e})=>e(a))?.classGroupId},v=/^\[(.+)\]$/,y=e=>{if(v.test(e)){let t=v.exec(e)[1],n=t?.substring(0,t.indexOf(`:`));if(n)return`arbitrary..`+n}},b=e=>{let{theme:t,prefix:n}=e,r={nextPart:new Map,validators:[]};return w(Object.entries(e.classGroups),n).forEach(([e,n])=>{x(n,r,e,t)}),r},x=(e,t,n,r)=>{e.forEach(e=>{if(typeof e==`string`){let r=e===``?t:S(t,e);r.classGroupId=n;return}if(typeof e==`function`){if(C(e)){x(e(r),t,n,r);return}t.validators.push({validator:e,classGroupId:n});return}Object.entries(e).forEach(([e,i])=>{x(i,S(t,e),n,r)})})},S=(e,t)=>{let n=e;return t.split(h).forEach(e=>{n.nextPart.has(e)||n.nextPart.set(e,{nextPart:new Map,validators:[]}),n=n.nextPart.get(e)}),n},C=e=>e.isThemeGetter,w=(e,t)=>t?e.map(([e,n])=>[e,n.map(e=>typeof e==`string`?t+e:typeof e==`object`?Object.fromEntries(Object.entries(e).map(([e,n])=>[t+e,n])):e)]):e,T=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=new Map,r=new Map,i=(i,a)=>{n.set(i,a),t++,t>e&&(t=0,r=n,n=new Map)};return{get(e){let t=n.get(e);if(t!==void 0)return t;if((t=r.get(e))!==void 0)return i(e,t),t},set(e,t){n.has(e)?n.set(e,t):i(e,t)}}},E=`!`,D=e=>{let{separator:t,experimentalParseClassName:n}=e,r=t.length===1,i=t[0],a=t.length,o=e=>{let n=[],o=0,s=0,c;for(let l=0;l<e.length;l++){let u=e[l];if(o===0){if(u===i&&(r||e.slice(l,l+a)===t)){n.push(e.slice(s,l)),s=l+a;continue}if(u===`/`){c=l;continue}}u===`[`?o++:u===`]`&&o--}let l=n.length===0?e:e.substring(s),u=l.startsWith(E);return{modifiers:n,hasImportantModifier:u,baseClassName:u?l.substring(1):l,maybePostfixModifierPosition:c&&c>s?c-s:void 0}};return n?e=>n({className:e,parseClassName:o}):o},O=e=>{if(e.length<=1)return e;let t=[],n=[];return e.forEach(e=>{e[0]===`[`?(t.push(...n.sort(),e),n=[]):n.push(e)}),t.push(...n.sort()),t},k=e=>({cache:T(e.cacheSize),parseClassName:D(e),...g(e)}),A=/\s+/,j=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i}=t,a=[],o=e.trim().split(A),s=``;for(let e=o.length-1;e>=0;--e){let t=o[e],{modifiers:c,hasImportantModifier:l,baseClassName:u,maybePostfixModifierPosition:d}=n(t),f=!!d,p=r(f?u.substring(0,d):u);if(!p){if(!f){s=t+(s.length>0?` `+s:s);continue}if(p=r(u),!p){s=t+(s.length>0?` `+s:s);continue}f=!1}let m=O(c).join(`:`),h=l?m+E:m,g=h+p;if(a.includes(g))continue;a.push(g);let _=i(p,f);for(let e=0;e<_.length;++e){let t=_[e];a.push(h+t)}s=t+(s.length>0?` `+s:s)}return s};function M(){let e=0,t,n,r=``;for(;e<arguments.length;)(t=arguments[e++])&&(n=N(t))&&(r&&(r+=` `),r+=n);return r}var N=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=N(e[r]))&&(n&&(n+=` `),n+=t);return n};function P(e,...t){let n,r,i,a=o;function o(o){return n=k(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)}function s(e){let t=r(e);if(t)return t;let a=j(e,n);return i(e,a),a}return function(){return a(M.apply(null,arguments))}}var F=e=>{let t=t=>t[e]||[];return t.isThemeGetter=!0,t},I=/^\[(?:([a-z-]+):)?(.+)\]$/i,L=/^\d+\/\d+$/,R=new Set([`px`,`full`,`screen`]),ee=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,te=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,ne=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,re=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,ie=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,z=e=>V(e)||R.has(e)||L.test(e),B=e=>q(e,`length`,fe),V=e=>!!e&&!Number.isNaN(Number(e)),H=e=>q(e,`number`,V),U=e=>!!e&&Number.isInteger(Number(e)),ae=e=>e.endsWith(`%`)&&V(e.slice(0,-1)),W=e=>I.test(e),G=e=>ee.test(e),oe=new Set([`length`,`size`,`percentage`]),se=e=>q(e,oe,J),ce=e=>q(e,`position`,J),le=new Set([`image`,`url`]),ue=e=>q(e,le,me),de=e=>q(e,``,pe),K=()=>!0,q=(e,t,n)=>{let r=I.exec(e);return r?r[1]?typeof t==`string`?r[1]===t:t.has(r[1]):n(r[2]):!1},fe=e=>te.test(e)&&!ne.test(e),J=()=>!1,pe=e=>re.test(e),me=e=>ie.test(e),he=P(()=>{let e=F(`colors`),t=F(`spacing`),n=F(`blur`),r=F(`brightness`),i=F(`borderColor`),a=F(`borderRadius`),o=F(`borderSpacing`),s=F(`borderWidth`),c=F(`contrast`),l=F(`grayscale`),u=F(`hueRotate`),d=F(`invert`),f=F(`gap`),p=F(`gradientColorStops`),m=F(`gradientColorStopPositions`),h=F(`inset`),g=F(`margin`),_=F(`opacity`),v=F(`padding`),y=F(`saturate`),b=F(`scale`),x=F(`sepia`),S=F(`skew`),C=F(`space`),w=F(`translate`),T=()=>[`auto`,`contain`,`none`],E=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],D=()=>[`auto`,W,t],O=()=>[W,t],k=()=>[``,z,B],A=()=>[`auto`,V,W],j=()=>[`bottom`,`center`,`left`,`left-bottom`,`left-top`,`right`,`right-bottom`,`right-top`,`top`],M=()=>[`solid`,`dashed`,`dotted`,`double`,`none`],N=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],P=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`],I=()=>[``,`0`,W],L=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],R=()=>[V,W];return{cacheSize:500,separator:`:`,theme:{colors:[K],spacing:[z,B],blur:[`none`,``,G,W],brightness:R(),borderColor:[e],borderRadius:[`none`,``,`full`,G,W],borderSpacing:O(),borderWidth:k(),contrast:R(),grayscale:I(),hueRotate:R(),invert:I(),gap:O(),gradientColorStops:[e],gradientColorStopPositions:[ae,B],inset:D(),margin:D(),opacity:R(),padding:O(),saturate:R(),scale:R(),sepia:I(),skew:R(),space:O(),translate:O()},classGroups:{aspect:[{aspect:[`auto`,`square`,`video`,W]}],container:[`container`],columns:[{columns:[G]}],"break-after":[{"break-after":L()}],"break-before":[{"break-before":L()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:[...j(),W]}],overflow:[{overflow:E()}],"overflow-x":[{"overflow-x":E()}],"overflow-y":[{"overflow-y":E()}],overscroll:[{overscroll:T()}],"overscroll-x":[{"overscroll-x":T()}],"overscroll-y":[{"overscroll-y":T()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:[h]}],"inset-x":[{"inset-x":[h]}],"inset-y":[{"inset-y":[h]}],start:[{start:[h]}],end:[{end:[h]}],top:[{top:[h]}],right:[{right:[h]}],bottom:[{bottom:[h]}],left:[{left:[h]}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[`auto`,U,W]}],basis:[{basis:D()}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`wrap`,`wrap-reverse`,`nowrap`]}],flex:[{flex:[`1`,`auto`,`initial`,`none`,W]}],grow:[{grow:I()}],shrink:[{shrink:I()}],order:[{order:[`first`,`last`,`none`,U,W]}],"grid-cols":[{"grid-cols":[K]}],"col-start-end":[{col:[`auto`,{span:[`full`,U,W]},W]}],"col-start":[{"col-start":A()}],"col-end":[{"col-end":A()}],"grid-rows":[{"grid-rows":[K]}],"row-start-end":[{row:[`auto`,{span:[U,W]},W]}],"row-start":[{"row-start":A()}],"row-end":[{"row-end":A()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":[`auto`,`min`,`max`,`fr`,W]}],"auto-rows":[{"auto-rows":[`auto`,`min`,`max`,`fr`,W]}],gap:[{gap:[f]}],"gap-x":[{"gap-x":[f]}],"gap-y":[{"gap-y":[f]}],"justify-content":[{justify:[`normal`,...P()]}],"justify-items":[{"justify-items":[`start`,`end`,`center`,`stretch`]}],"justify-self":[{"justify-self":[`auto`,`start`,`end`,`center`,`stretch`]}],"align-content":[{content:[`normal`,...P(),`baseline`]}],"align-items":[{items:[`start`,`end`,`center`,`baseline`,`stretch`]}],"align-self":[{self:[`auto`,`start`,`end`,`center`,`stretch`,`baseline`]}],"place-content":[{"place-content":[...P(),`baseline`]}],"place-items":[{"place-items":[`start`,`end`,`center`,`baseline`,`stretch`]}],"place-self":[{"place-self":[`auto`,`start`,`end`,`center`,`stretch`]}],p:[{p:[v]}],px:[{px:[v]}],py:[{py:[v]}],ps:[{ps:[v]}],pe:[{pe:[v]}],pt:[{pt:[v]}],pr:[{pr:[v]}],pb:[{pb:[v]}],pl:[{pl:[v]}],m:[{m:[g]}],mx:[{mx:[g]}],my:[{my:[g]}],ms:[{ms:[g]}],me:[{me:[g]}],mt:[{mt:[g]}],mr:[{mr:[g]}],mb:[{mb:[g]}],ml:[{ml:[g]}],"space-x":[{"space-x":[C]}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":[C]}],"space-y-reverse":[`space-y-reverse`],w:[{w:[`auto`,`min`,`max`,`fit`,`svw`,`lvw`,`dvw`,W,t]}],"min-w":[{"min-w":[W,t,`min`,`max`,`fit`]}],"max-w":[{"max-w":[W,t,`none`,`full`,`min`,`max`,`fit`,`prose`,{screen:[G]},G]}],h:[{h:[W,t,`auto`,`min`,`max`,`fit`,`svh`,`lvh`,`dvh`]}],"min-h":[{"min-h":[W,t,`min`,`max`,`fit`,`svh`,`lvh`,`dvh`]}],"max-h":[{"max-h":[W,t,`min`,`max`,`fit`,`svh`,`lvh`,`dvh`]}],size:[{size:[W,t,`auto`,`min`,`max`,`fit`]}],"font-size":[{text:[`base`,G,B]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`,H]}],"font-family":[{font:[K]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`,W]}],"line-clamp":[{"line-clamp":[`none`,V,H]}],leading:[{leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`,z,W]}],"list-image":[{"list-image":[`none`,W]}],"list-style-type":[{list:[`none`,`disc`,`decimal`,W]}],"list-style-position":[{list:[`inside`,`outside`]}],"placeholder-color":[{placeholder:[e]}],"placeholder-opacity":[{"placeholder-opacity":[_]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"text-color":[{text:[e]}],"text-opacity":[{"text-opacity":[_]}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...M(),`wavy`]}],"text-decoration-thickness":[{decoration:[`auto`,`from-font`,z,B]}],"underline-offset":[{"underline-offset":[`auto`,z,W]}],"text-decoration-color":[{decoration:[e]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:O()}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,W]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,W]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-opacity":[{"bg-opacity":[_]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:[...j(),ce]}],"bg-repeat":[{bg:[`no-repeat`,{repeat:[``,`x`,`y`,`round`,`space`]}]}],"bg-size":[{bg:[`auto`,`cover`,`contain`,se]}],"bg-image":[{bg:[`none`,{"gradient-to":[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},ue]}],"bg-color":[{bg:[e]}],"gradient-from-pos":[{from:[m]}],"gradient-via-pos":[{via:[m]}],"gradient-to-pos":[{to:[m]}],"gradient-from":[{from:[p]}],"gradient-via":[{via:[p]}],"gradient-to":[{to:[p]}],rounded:[{rounded:[a]}],"rounded-s":[{"rounded-s":[a]}],"rounded-e":[{"rounded-e":[a]}],"rounded-t":[{"rounded-t":[a]}],"rounded-r":[{"rounded-r":[a]}],"rounded-b":[{"rounded-b":[a]}],"rounded-l":[{"rounded-l":[a]}],"rounded-ss":[{"rounded-ss":[a]}],"rounded-se":[{"rounded-se":[a]}],"rounded-ee":[{"rounded-ee":[a]}],"rounded-es":[{"rounded-es":[a]}],"rounded-tl":[{"rounded-tl":[a]}],"rounded-tr":[{"rounded-tr":[a]}],"rounded-br":[{"rounded-br":[a]}],"rounded-bl":[{"rounded-bl":[a]}],"border-w":[{border:[s]}],"border-w-x":[{"border-x":[s]}],"border-w-y":[{"border-y":[s]}],"border-w-s":[{"border-s":[s]}],"border-w-e":[{"border-e":[s]}],"border-w-t":[{"border-t":[s]}],"border-w-r":[{"border-r":[s]}],"border-w-b":[{"border-b":[s]}],"border-w-l":[{"border-l":[s]}],"border-opacity":[{"border-opacity":[_]}],"border-style":[{border:[...M(),`hidden`]}],"divide-x":[{"divide-x":[s]}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":[s]}],"divide-y-reverse":[`divide-y-reverse`],"divide-opacity":[{"divide-opacity":[_]}],"divide-style":[{divide:M()}],"border-color":[{border:[i]}],"border-color-x":[{"border-x":[i]}],"border-color-y":[{"border-y":[i]}],"border-color-s":[{"border-s":[i]}],"border-color-e":[{"border-e":[i]}],"border-color-t":[{"border-t":[i]}],"border-color-r":[{"border-r":[i]}],"border-color-b":[{"border-b":[i]}],"border-color-l":[{"border-l":[i]}],"divide-color":[{divide:[i]}],"outline-style":[{outline:[``,...M()]}],"outline-offset":[{"outline-offset":[z,W]}],"outline-w":[{outline:[z,B]}],"outline-color":[{outline:[e]}],"ring-w":[{ring:k()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:[e]}],"ring-opacity":[{"ring-opacity":[_]}],"ring-offset-w":[{"ring-offset":[z,B]}],"ring-offset-color":[{"ring-offset":[e]}],shadow:[{shadow:[``,`inner`,`none`,G,de]}],"shadow-color":[{shadow:[K]}],opacity:[{opacity:[_]}],"mix-blend":[{"mix-blend":[...N(),`plus-lighter`,`plus-darker`]}],"bg-blend":[{"bg-blend":N()}],filter:[{filter:[``,`none`]}],blur:[{blur:[n]}],brightness:[{brightness:[r]}],contrast:[{contrast:[c]}],"drop-shadow":[{"drop-shadow":[``,`none`,G,W]}],grayscale:[{grayscale:[l]}],"hue-rotate":[{"hue-rotate":[u]}],invert:[{invert:[d]}],saturate:[{saturate:[y]}],sepia:[{sepia:[x]}],"backdrop-filter":[{"backdrop-filter":[``,`none`]}],"backdrop-blur":[{"backdrop-blur":[n]}],"backdrop-brightness":[{"backdrop-brightness":[r]}],"backdrop-contrast":[{"backdrop-contrast":[c]}],"backdrop-grayscale":[{"backdrop-grayscale":[l]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[u]}],"backdrop-invert":[{"backdrop-invert":[d]}],"backdrop-opacity":[{"backdrop-opacity":[_]}],"backdrop-saturate":[{"backdrop-saturate":[y]}],"backdrop-sepia":[{"backdrop-sepia":[x]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":[o]}],"border-spacing-x":[{"border-spacing-x":[o]}],"border-spacing-y":[{"border-spacing-y":[o]}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[`none`,`all`,``,`colors`,`opacity`,`shadow`,`transform`,W]}],duration:[{duration:R()}],ease:[{ease:[`linear`,`in`,`out`,`in-out`,W]}],delay:[{delay:R()}],animate:[{animate:[`none`,`spin`,`ping`,`pulse`,`bounce`,W]}],transform:[{transform:[``,`gpu`,`none`]}],scale:[{scale:[b]}],"scale-x":[{"scale-x":[b]}],"scale-y":[{"scale-y":[b]}],rotate:[{rotate:[U,W]}],"translate-x":[{"translate-x":[w]}],"translate-y":[{"translate-y":[w]}],"skew-x":[{"skew-x":[S]}],"skew-y":[{"skew-y":[S]}],"transform-origin":[{origin:[`center`,`top`,`top-right`,`right`,`bottom-right`,`bottom`,`bottom-left`,`left`,`top-left`,W]}],accent:[{accent:[`auto`,e]}],appearance:[{appearance:[`none`,`auto`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,W]}],"caret-color":[{caret:[e]}],"pointer-events":[{"pointer-events":[`none`,`auto`]}],resize:[{resize:[`none`,`y`,`x`,``]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scroll-m":[{"scroll-m":O()}],"scroll-mx":[{"scroll-mx":O()}],"scroll-my":[{"scroll-my":O()}],"scroll-ms":[{"scroll-ms":O()}],"scroll-me":[{"scroll-me":O()}],"scroll-mt":[{"scroll-mt":O()}],"scroll-mr":[{"scroll-mr":O()}],"scroll-mb":[{"scroll-mb":O()}],"scroll-ml":[{"scroll-ml":O()}],"scroll-p":[{"scroll-p":O()}],"scroll-px":[{"scroll-px":O()}],"scroll-py":[{"scroll-py":O()}],"scroll-ps":[{"scroll-ps":O()}],"scroll-pe":[{"scroll-pe":O()}],"scroll-pt":[{"scroll-pt":O()}],"scroll-pr":[{"scroll-pr":O()}],"scroll-pb":[{"scroll-pb":O()}],"scroll-pl":[{"scroll-pl":O()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,W]}],fill:[{fill:[e,`none`]}],"stroke-w":[{stroke:[z,B,H]}],stroke:[{stroke:[e,`none`]}],sr:[`sr-only`,`not-sr-only`],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-s`,`border-w-e`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-s`,`border-color-e`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]}}}),Y=6e4,X=60*Y,Z=24*X;function Q(e,t){if(!e)return null;let n=new Date(e).getTime();return Number.isNaN(n)?null:Math.max(t-n,0)}var ge={minute(e){return`${e}m`},hour(e){return`${e}${e===1?`hr`:`hrs`}`},day(e){return`${e}d`}},_e={minute(e){return`${e} ${e===1?`min`:`mins`}`},hour(e){return`${e} ${e===1?`hr`:`hrs`}`},day(e){return`${e} ${e===1?`day`:`days`}`}};function $(e,t){return e<Y?`now`:e<X?t.minute(Math.floor(e/Y)):e<Z?t.hour(Math.floor(e/X)):t.day(Math.floor(e/Z))}function ve(e){return e.toFixed(2).replace(/\.00$/,``)}function ye(e,t=Date.now()){let n=Q(e,t);return n===null?``:$(n,ge)}function be(e,t=Date.now()){let n=Q(e,t);return n===null?``:$(n,_e)}function xe(...e){return he(m(e))}export{m as a,s as c,c as d,l as f,ye as i,o as l,be as n,d as o,ve as r,f as s,xe as t,a as u};
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{o as t}from"./react-vendor-Ee0-5T4I.js";import{Tn as n,kt as r}from"./dist-Ch137qdo.js";var i=e(t(),1);function a(e){return e.name?e.name:e.gitUrl?.split(`/`).pop()?.replace(`.git`,``)??e.projectId}function o(e,t){return t&&r(t)?a(t):n(e)}function s(e,t,n){if(!t)return`Chat`;for(let r of e){let e=r.threads.find(e=>e.threadId===t);if(!e)continue;let i=e.chatTitles?.[n]?.trim();if(i)return i.length>50?`${i.substring(0,50)}...`:i}return`Chat`}function c(e,t){if(t)for(let n of e){let e=n.threads.find(e=>e.threadId===t);if(e)return e.currentConversationId?.trim()||void 0}}function l(e,t){return t.map(function(t){let n=e.find(e=>e.projectId===t.projectId);return n?{...t,threads:t.threads.map(function(e){let t=n.threads.find(t=>t.threadId===e.threadId)?.chatTitles;return!t||Object.keys(t).length===0?e:{...e,chatTitles:{...t,...e.chatTitles}}})}:t})}function u(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function d(...e){return t=>{let n=!1,r=e.map(e=>{let r=u(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():u(e[t],null)}}}}function f(...e){return i.useCallback(d(...e),e)}function p(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=p(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function m(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=p(e))&&(r&&(r+=` `),r+=t);return r}var h=`-`,g=e=>{let t=b(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{let n=e.split(h);return n[0]===``&&n.length!==1&&n.shift(),_(n,t)||y(e)},getConflictingClassGroupIds:(e,t)=>{let i=n[e]||[];return t&&r[e]?[...i,...r[e]]:i}}},_=(e,t)=>{if(e.length===0)return t.classGroupId;let n=e[0],r=t.nextPart.get(n),i=r?_(e.slice(1),r):void 0;if(i)return i;if(t.validators.length===0)return;let a=e.join(h);return t.validators.find(({validator:e})=>e(a))?.classGroupId},v=/^\[(.+)\]$/,y=e=>{if(v.test(e)){let t=v.exec(e)[1],n=t?.substring(0,t.indexOf(`:`));if(n)return`arbitrary..`+n}},b=e=>{let{theme:t,prefix:n}=e,r={nextPart:new Map,validators:[]};return w(Object.entries(e.classGroups),n).forEach(([e,n])=>{x(n,r,e,t)}),r},x=(e,t,n,r)=>{e.forEach(e=>{if(typeof e==`string`){let r=e===``?t:S(t,e);r.classGroupId=n;return}if(typeof e==`function`){if(C(e)){x(e(r),t,n,r);return}t.validators.push({validator:e,classGroupId:n});return}Object.entries(e).forEach(([e,i])=>{x(i,S(t,e),n,r)})})},S=(e,t)=>{let n=e;return t.split(h).forEach(e=>{n.nextPart.has(e)||n.nextPart.set(e,{nextPart:new Map,validators:[]}),n=n.nextPart.get(e)}),n},C=e=>e.isThemeGetter,w=(e,t)=>t?e.map(([e,n])=>[e,n.map(e=>typeof e==`string`?t+e:typeof e==`object`?Object.fromEntries(Object.entries(e).map(([e,n])=>[t+e,n])):e)]):e,T=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=new Map,r=new Map,i=(i,a)=>{n.set(i,a),t++,t>e&&(t=0,r=n,n=new Map)};return{get(e){let t=n.get(e);if(t!==void 0)return t;if((t=r.get(e))!==void 0)return i(e,t),t},set(e,t){n.has(e)?n.set(e,t):i(e,t)}}},E=`!`,D=e=>{let{separator:t,experimentalParseClassName:n}=e,r=t.length===1,i=t[0],a=t.length,o=e=>{let n=[],o=0,s=0,c;for(let l=0;l<e.length;l++){let u=e[l];if(o===0){if(u===i&&(r||e.slice(l,l+a)===t)){n.push(e.slice(s,l)),s=l+a;continue}if(u===`/`){c=l;continue}}u===`[`?o++:u===`]`&&o--}let l=n.length===0?e:e.substring(s),u=l.startsWith(E);return{modifiers:n,hasImportantModifier:u,baseClassName:u?l.substring(1):l,maybePostfixModifierPosition:c&&c>s?c-s:void 0}};return n?e=>n({className:e,parseClassName:o}):o},O=e=>{if(e.length<=1)return e;let t=[],n=[];return e.forEach(e=>{e[0]===`[`?(t.push(...n.sort(),e),n=[]):n.push(e)}),t.push(...n.sort()),t},k=e=>({cache:T(e.cacheSize),parseClassName:D(e),...g(e)}),A=/\s+/,j=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i}=t,a=[],o=e.trim().split(A),s=``;for(let e=o.length-1;e>=0;--e){let t=o[e],{modifiers:c,hasImportantModifier:l,baseClassName:u,maybePostfixModifierPosition:d}=n(t),f=!!d,p=r(f?u.substring(0,d):u);if(!p){if(!f){s=t+(s.length>0?` `+s:s);continue}if(p=r(u),!p){s=t+(s.length>0?` `+s:s);continue}f=!1}let m=O(c).join(`:`),h=l?m+E:m,g=h+p;if(a.includes(g))continue;a.push(g);let _=i(p,f);for(let e=0;e<_.length;++e){let t=_[e];a.push(h+t)}s=t+(s.length>0?` `+s:s)}return s};function M(){let e=0,t,n,r=``;for(;e<arguments.length;)(t=arguments[e++])&&(n=N(t))&&(r&&(r+=` `),r+=n);return r}var N=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=N(e[r]))&&(n&&(n+=` `),n+=t);return n};function P(e,...t){let n,r,i,a=o;function o(o){return n=k(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)}function s(e){let t=r(e);if(t)return t;let a=j(e,n);return i(e,a),a}return function(){return a(M.apply(null,arguments))}}var F=e=>{let t=t=>t[e]||[];return t.isThemeGetter=!0,t},I=/^\[(?:([a-z-]+):)?(.+)\]$/i,L=/^\d+\/\d+$/,R=new Set([`px`,`full`,`screen`]),ee=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,te=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,ne=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,re=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,ie=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,z=e=>V(e)||R.has(e)||L.test(e),B=e=>q(e,`length`,fe),V=e=>!!e&&!Number.isNaN(Number(e)),H=e=>q(e,`number`,V),U=e=>!!e&&Number.isInteger(Number(e)),ae=e=>e.endsWith(`%`)&&V(e.slice(0,-1)),W=e=>I.test(e),G=e=>ee.test(e),oe=new Set([`length`,`size`,`percentage`]),se=e=>q(e,oe,J),ce=e=>q(e,`position`,J),le=new Set([`image`,`url`]),ue=e=>q(e,le,me),de=e=>q(e,``,pe),K=()=>!0,q=(e,t,n)=>{let r=I.exec(e);return r?r[1]?typeof t==`string`?r[1]===t:t.has(r[1]):n(r[2]):!1},fe=e=>te.test(e)&&!ne.test(e),J=()=>!1,pe=e=>re.test(e),me=e=>ie.test(e),he=P(()=>{let e=F(`colors`),t=F(`spacing`),n=F(`blur`),r=F(`brightness`),i=F(`borderColor`),a=F(`borderRadius`),o=F(`borderSpacing`),s=F(`borderWidth`),c=F(`contrast`),l=F(`grayscale`),u=F(`hueRotate`),d=F(`invert`),f=F(`gap`),p=F(`gradientColorStops`),m=F(`gradientColorStopPositions`),h=F(`inset`),g=F(`margin`),_=F(`opacity`),v=F(`padding`),y=F(`saturate`),b=F(`scale`),x=F(`sepia`),S=F(`skew`),C=F(`space`),w=F(`translate`),T=()=>[`auto`,`contain`,`none`],E=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],D=()=>[`auto`,W,t],O=()=>[W,t],k=()=>[``,z,B],A=()=>[`auto`,V,W],j=()=>[`bottom`,`center`,`left`,`left-bottom`,`left-top`,`right`,`right-bottom`,`right-top`,`top`],M=()=>[`solid`,`dashed`,`dotted`,`double`,`none`],N=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],P=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`],I=()=>[``,`0`,W],L=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],R=()=>[V,W];return{cacheSize:500,separator:`:`,theme:{colors:[K],spacing:[z,B],blur:[`none`,``,G,W],brightness:R(),borderColor:[e],borderRadius:[`none`,``,`full`,G,W],borderSpacing:O(),borderWidth:k(),contrast:R(),grayscale:I(),hueRotate:R(),invert:I(),gap:O(),gradientColorStops:[e],gradientColorStopPositions:[ae,B],inset:D(),margin:D(),opacity:R(),padding:O(),saturate:R(),scale:R(),sepia:I(),skew:R(),space:O(),translate:O()},classGroups:{aspect:[{aspect:[`auto`,`square`,`video`,W]}],container:[`container`],columns:[{columns:[G]}],"break-after":[{"break-after":L()}],"break-before":[{"break-before":L()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:[...j(),W]}],overflow:[{overflow:E()}],"overflow-x":[{"overflow-x":E()}],"overflow-y":[{"overflow-y":E()}],overscroll:[{overscroll:T()}],"overscroll-x":[{"overscroll-x":T()}],"overscroll-y":[{"overscroll-y":T()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:[h]}],"inset-x":[{"inset-x":[h]}],"inset-y":[{"inset-y":[h]}],start:[{start:[h]}],end:[{end:[h]}],top:[{top:[h]}],right:[{right:[h]}],bottom:[{bottom:[h]}],left:[{left:[h]}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[`auto`,U,W]}],basis:[{basis:D()}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`wrap`,`wrap-reverse`,`nowrap`]}],flex:[{flex:[`1`,`auto`,`initial`,`none`,W]}],grow:[{grow:I()}],shrink:[{shrink:I()}],order:[{order:[`first`,`last`,`none`,U,W]}],"grid-cols":[{"grid-cols":[K]}],"col-start-end":[{col:[`auto`,{span:[`full`,U,W]},W]}],"col-start":[{"col-start":A()}],"col-end":[{"col-end":A()}],"grid-rows":[{"grid-rows":[K]}],"row-start-end":[{row:[`auto`,{span:[U,W]},W]}],"row-start":[{"row-start":A()}],"row-end":[{"row-end":A()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":[`auto`,`min`,`max`,`fr`,W]}],"auto-rows":[{"auto-rows":[`auto`,`min`,`max`,`fr`,W]}],gap:[{gap:[f]}],"gap-x":[{"gap-x":[f]}],"gap-y":[{"gap-y":[f]}],"justify-content":[{justify:[`normal`,...P()]}],"justify-items":[{"justify-items":[`start`,`end`,`center`,`stretch`]}],"justify-self":[{"justify-self":[`auto`,`start`,`end`,`center`,`stretch`]}],"align-content":[{content:[`normal`,...P(),`baseline`]}],"align-items":[{items:[`start`,`end`,`center`,`baseline`,`stretch`]}],"align-self":[{self:[`auto`,`start`,`end`,`center`,`stretch`,`baseline`]}],"place-content":[{"place-content":[...P(),`baseline`]}],"place-items":[{"place-items":[`start`,`end`,`center`,`baseline`,`stretch`]}],"place-self":[{"place-self":[`auto`,`start`,`end`,`center`,`stretch`]}],p:[{p:[v]}],px:[{px:[v]}],py:[{py:[v]}],ps:[{ps:[v]}],pe:[{pe:[v]}],pt:[{pt:[v]}],pr:[{pr:[v]}],pb:[{pb:[v]}],pl:[{pl:[v]}],m:[{m:[g]}],mx:[{mx:[g]}],my:[{my:[g]}],ms:[{ms:[g]}],me:[{me:[g]}],mt:[{mt:[g]}],mr:[{mr:[g]}],mb:[{mb:[g]}],ml:[{ml:[g]}],"space-x":[{"space-x":[C]}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":[C]}],"space-y-reverse":[`space-y-reverse`],w:[{w:[`auto`,`min`,`max`,`fit`,`svw`,`lvw`,`dvw`,W,t]}],"min-w":[{"min-w":[W,t,`min`,`max`,`fit`]}],"max-w":[{"max-w":[W,t,`none`,`full`,`min`,`max`,`fit`,`prose`,{screen:[G]},G]}],h:[{h:[W,t,`auto`,`min`,`max`,`fit`,`svh`,`lvh`,`dvh`]}],"min-h":[{"min-h":[W,t,`min`,`max`,`fit`,`svh`,`lvh`,`dvh`]}],"max-h":[{"max-h":[W,t,`min`,`max`,`fit`,`svh`,`lvh`,`dvh`]}],size:[{size:[W,t,`auto`,`min`,`max`,`fit`]}],"font-size":[{text:[`base`,G,B]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`,H]}],"font-family":[{font:[K]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`,W]}],"line-clamp":[{"line-clamp":[`none`,V,H]}],leading:[{leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`,z,W]}],"list-image":[{"list-image":[`none`,W]}],"list-style-type":[{list:[`none`,`disc`,`decimal`,W]}],"list-style-position":[{list:[`inside`,`outside`]}],"placeholder-color":[{placeholder:[e]}],"placeholder-opacity":[{"placeholder-opacity":[_]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"text-color":[{text:[e]}],"text-opacity":[{"text-opacity":[_]}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...M(),`wavy`]}],"text-decoration-thickness":[{decoration:[`auto`,`from-font`,z,B]}],"underline-offset":[{"underline-offset":[`auto`,z,W]}],"text-decoration-color":[{decoration:[e]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:O()}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,W]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,W]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-opacity":[{"bg-opacity":[_]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:[...j(),ce]}],"bg-repeat":[{bg:[`no-repeat`,{repeat:[``,`x`,`y`,`round`,`space`]}]}],"bg-size":[{bg:[`auto`,`cover`,`contain`,se]}],"bg-image":[{bg:[`none`,{"gradient-to":[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},ue]}],"bg-color":[{bg:[e]}],"gradient-from-pos":[{from:[m]}],"gradient-via-pos":[{via:[m]}],"gradient-to-pos":[{to:[m]}],"gradient-from":[{from:[p]}],"gradient-via":[{via:[p]}],"gradient-to":[{to:[p]}],rounded:[{rounded:[a]}],"rounded-s":[{"rounded-s":[a]}],"rounded-e":[{"rounded-e":[a]}],"rounded-t":[{"rounded-t":[a]}],"rounded-r":[{"rounded-r":[a]}],"rounded-b":[{"rounded-b":[a]}],"rounded-l":[{"rounded-l":[a]}],"rounded-ss":[{"rounded-ss":[a]}],"rounded-se":[{"rounded-se":[a]}],"rounded-ee":[{"rounded-ee":[a]}],"rounded-es":[{"rounded-es":[a]}],"rounded-tl":[{"rounded-tl":[a]}],"rounded-tr":[{"rounded-tr":[a]}],"rounded-br":[{"rounded-br":[a]}],"rounded-bl":[{"rounded-bl":[a]}],"border-w":[{border:[s]}],"border-w-x":[{"border-x":[s]}],"border-w-y":[{"border-y":[s]}],"border-w-s":[{"border-s":[s]}],"border-w-e":[{"border-e":[s]}],"border-w-t":[{"border-t":[s]}],"border-w-r":[{"border-r":[s]}],"border-w-b":[{"border-b":[s]}],"border-w-l":[{"border-l":[s]}],"border-opacity":[{"border-opacity":[_]}],"border-style":[{border:[...M(),`hidden`]}],"divide-x":[{"divide-x":[s]}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":[s]}],"divide-y-reverse":[`divide-y-reverse`],"divide-opacity":[{"divide-opacity":[_]}],"divide-style":[{divide:M()}],"border-color":[{border:[i]}],"border-color-x":[{"border-x":[i]}],"border-color-y":[{"border-y":[i]}],"border-color-s":[{"border-s":[i]}],"border-color-e":[{"border-e":[i]}],"border-color-t":[{"border-t":[i]}],"border-color-r":[{"border-r":[i]}],"border-color-b":[{"border-b":[i]}],"border-color-l":[{"border-l":[i]}],"divide-color":[{divide:[i]}],"outline-style":[{outline:[``,...M()]}],"outline-offset":[{"outline-offset":[z,W]}],"outline-w":[{outline:[z,B]}],"outline-color":[{outline:[e]}],"ring-w":[{ring:k()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:[e]}],"ring-opacity":[{"ring-opacity":[_]}],"ring-offset-w":[{"ring-offset":[z,B]}],"ring-offset-color":[{"ring-offset":[e]}],shadow:[{shadow:[``,`inner`,`none`,G,de]}],"shadow-color":[{shadow:[K]}],opacity:[{opacity:[_]}],"mix-blend":[{"mix-blend":[...N(),`plus-lighter`,`plus-darker`]}],"bg-blend":[{"bg-blend":N()}],filter:[{filter:[``,`none`]}],blur:[{blur:[n]}],brightness:[{brightness:[r]}],contrast:[{contrast:[c]}],"drop-shadow":[{"drop-shadow":[``,`none`,G,W]}],grayscale:[{grayscale:[l]}],"hue-rotate":[{"hue-rotate":[u]}],invert:[{invert:[d]}],saturate:[{saturate:[y]}],sepia:[{sepia:[x]}],"backdrop-filter":[{"backdrop-filter":[``,`none`]}],"backdrop-blur":[{"backdrop-blur":[n]}],"backdrop-brightness":[{"backdrop-brightness":[r]}],"backdrop-contrast":[{"backdrop-contrast":[c]}],"backdrop-grayscale":[{"backdrop-grayscale":[l]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[u]}],"backdrop-invert":[{"backdrop-invert":[d]}],"backdrop-opacity":[{"backdrop-opacity":[_]}],"backdrop-saturate":[{"backdrop-saturate":[y]}],"backdrop-sepia":[{"backdrop-sepia":[x]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":[o]}],"border-spacing-x":[{"border-spacing-x":[o]}],"border-spacing-y":[{"border-spacing-y":[o]}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[`none`,`all`,``,`colors`,`opacity`,`shadow`,`transform`,W]}],duration:[{duration:R()}],ease:[{ease:[`linear`,`in`,`out`,`in-out`,W]}],delay:[{delay:R()}],animate:[{animate:[`none`,`spin`,`ping`,`pulse`,`bounce`,W]}],transform:[{transform:[``,`gpu`,`none`]}],scale:[{scale:[b]}],"scale-x":[{"scale-x":[b]}],"scale-y":[{"scale-y":[b]}],rotate:[{rotate:[U,W]}],"translate-x":[{"translate-x":[w]}],"translate-y":[{"translate-y":[w]}],"skew-x":[{"skew-x":[S]}],"skew-y":[{"skew-y":[S]}],"transform-origin":[{origin:[`center`,`top`,`top-right`,`right`,`bottom-right`,`bottom`,`bottom-left`,`left`,`top-left`,W]}],accent:[{accent:[`auto`,e]}],appearance:[{appearance:[`none`,`auto`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,W]}],"caret-color":[{caret:[e]}],"pointer-events":[{"pointer-events":[`none`,`auto`]}],resize:[{resize:[`none`,`y`,`x`,``]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scroll-m":[{"scroll-m":O()}],"scroll-mx":[{"scroll-mx":O()}],"scroll-my":[{"scroll-my":O()}],"scroll-ms":[{"scroll-ms":O()}],"scroll-me":[{"scroll-me":O()}],"scroll-mt":[{"scroll-mt":O()}],"scroll-mr":[{"scroll-mr":O()}],"scroll-mb":[{"scroll-mb":O()}],"scroll-ml":[{"scroll-ml":O()}],"scroll-p":[{"scroll-p":O()}],"scroll-px":[{"scroll-px":O()}],"scroll-py":[{"scroll-py":O()}],"scroll-ps":[{"scroll-ps":O()}],"scroll-pe":[{"scroll-pe":O()}],"scroll-pt":[{"scroll-pt":O()}],"scroll-pr":[{"scroll-pr":O()}],"scroll-pb":[{"scroll-pb":O()}],"scroll-pl":[{"scroll-pl":O()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,W]}],fill:[{fill:[e,`none`]}],"stroke-w":[{stroke:[z,B,H]}],stroke:[{stroke:[e,`none`]}],sr:[`sr-only`,`not-sr-only`],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-s`,`border-w-e`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-s`,`border-color-e`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]}}}),Y=6e4,X=60*Y,Z=24*X;function Q(e,t){if(!e)return null;let n=new Date(e).getTime();return Number.isNaN(n)?null:Math.max(t-n,0)}var ge={minute(e){return`${e}m`},hour(e){return`${e}${e===1?`hr`:`hrs`}`},day(e){return`${e}d`}},_e={minute(e){return`${e} ${e===1?`min`:`mins`}`},hour(e){return`${e} ${e===1?`hr`:`hrs`}`},day(e){return`${e} ${e===1?`day`:`days`}`}};function $(e,t){return e<Y?`now`:e<X?t.minute(Math.floor(e/Y)):e<Z?t.hour(Math.floor(e/X)):t.day(Math.floor(e/Z))}function ve(e){return e.toFixed(2).replace(/\.00$/,``)}function ye(e,t=Date.now()){let n=Q(e,t);return n===null?``:$(n,ge)}function be(e,t=Date.now()){let n=Q(e,t);return n===null?``:$(n,_e)}function xe(...e){return he(m(e))}export{m as a,s as c,c as d,l as f,ye as i,o as l,be as n,d as o,ve as r,f as s,xe as t,a as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{H as e,U as t,Yt as n}from"./index-
|
|
1
|
+
import{H as e,U as t,Yt as n}from"./index-C3E_66vw.js";var r=class extends n{constructor(){super(...arguments),this.selectionStarted=!1}async impact(e){let t=this.patternForImpact(e?.style);this.vibrateWithPattern(t)}async notification(e){let t=this.patternForNotification(e?.type);this.vibrateWithPattern(t)}async vibrate(e){let t=e?.duration||300;this.vibrateWithPattern([t])}async selectionStart(){this.selectionStarted=!0}async selectionChanged(){this.selectionStarted&&this.vibrateWithPattern([70])}async selectionEnd(){this.selectionStarted=!1}patternForImpact(t=e.Heavy){return t===e.Medium?[43]:t===e.Light?[20]:[61]}patternForNotification(e=t.Success){return e===t.Warning?[30,40,30,50,60]:e===t.Error?[27,45,50]:[35,65,21]}vibrateWithPattern(e){if(navigator.vibrate)navigator.vibrate(e);else throw this.unavailable(`Browser does not support the vibrate API`)}};export{r as HapticsWeb};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Yt as e,d as t,l as n,u as r}from"./index-
|
|
1
|
+
import{Yt as e,d as t,l as n,u as r}from"./index-C3E_66vw.js";var i=class extends e{async stopAndHideScanner(){console.log(window.OSBarcodeWebScanner),window.OSBarcodeWebScanner&&(await window.OSBarcodeWebScanner.stop(),window.OSBarcodeWebScanner=null),document.getElementById(`cap-os-barcode-scanner-container-dialog`).style.display=`none`}buildScannerElement(){if(document.getElementById(`cap-os-barcode-scanner-container`)){document.getElementById(`cap-os-barcode-scanner-container`).className=`scanner-container-display`;return}let e=document.body.appendChild(document.createElement(`div`));e.id=`cap-os-barcode-scanner-container`;let t=document.createElement(`div`);t.id=`cap-os-barcode-scanner-container-dialog`,t.className=`scanner-dialog`;let n=document.createElement(`div`);n.className=`scanner-dialog-inner`;let r=document.createElement(`span`);r.id=`cap-os-barcode-scanner-close-button`,r.className=`close-button`,r.innerHTML=`×`,n.appendChild(r);let i=document.createElement(`p`);i.innerHTML=` `,n.appendChild(i);let a=document.createElement(`div`);a.className=`scanner-container-full-width`,a.id=`cap-os-barcode-scanner-container-scanner`,n.appendChild(a),t.appendChild(n),e.appendChild(t)}async scanBarcode(e){return this.buildScannerElement(),document.getElementById(`cap-os-barcode-scanner-container-dialog`).style.display=`block`,new Promise((i,a)=>{let o={facingMode:e.cameraDirection===1?`environment`:`user`,hasScannerButton:!1,scanButton:e.scanButton===void 0?!1:e.scanButton,showScanLine:!1,scanInstructions:e.scanInstructions?e.scanInstructions:``,orientation:e.scanOrientation?e.scanOrientation:n.PORTRAIT,showCameraSelection:e.web?.showCameraSelection?e.web.showCameraSelection:!1,typeHint:e.hint===17?void 0:e.hint,scannerFPS:e.web?.scannerFPS?e.web.scannerFPS:50},s=!1,c=document.getElementById(`cap-os-barcode-scanner-close-button`);c&&(c.onclick=async()=>{s||(s=!0,await this.stopAndHideScanner(),a(Error(`Couldn’t scan because the process was cancelled.`)))});let l=document.getElementById(`cap-os-barcode-scanner-container-scanner`);if(!l)throw Error(`Scanner Element is required for web`);window.OSBarcodeWebScanner=new t(l.id,{formatsToSupport:o.typeHint===void 0?void 0:[o.typeHint],verbose:void 0});let u={fps:o.scannerFPS,qrbox:l.getBoundingClientRect().width*(9/16)-10,aspectRatio:16/9,videoConstraints:{focusMode:`continuous`,height:{min:576,ideal:1920},deviceId:void 0,facingMode:o.facingMode}};window.OSBarcodeWebScanner.start({facingMode:o.facingMode},u,(e,t)=>{this.stopAndHideScanner(),i({ScanResult:e,format:t.result.format?.format??r.ALL})},e=>{[`NotFoundException`,`No barcode or QR code detected`,`No MultiFormat Readers were able to detect the code`].find(t=>e.indexOf(t)!==-1)||(this.stopAndHideScanner(),console.error(`[Scanner Web Error] ${e}`),a(e))})})}};export{i as CapacitorBarcodeScannerWeb};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Yt as e}from"./index-
|
|
1
|
+
import{Yt as e}from"./index-C3E_66vw.js";var t=class extends e{constructor(){super(),this.handleVisibilityChange=()=>{let e={isActive:document.hidden!==!0};this.notifyListeners(`appStateChange`,e),document.hidden?this.notifyListeners(`pause`,null):this.notifyListeners(`resume`,null)},document.addEventListener(`visibilitychange`,this.handleVisibilityChange,!1)}exitApp(){throw this.unimplemented(`Not implemented on web.`)}async getInfo(){throw this.unimplemented(`Not implemented on web.`)}async getLaunchUrl(){return{url:``}}async getState(){return{isActive:document.hidden!==!0}}async minimizeApp(){throw this.unimplemented(`Not implemented on web.`)}async toggleBackButtonHandler(){throw this.unimplemented(`Not implemented on web.`)}async getAppLanguage(){return{value:navigator.language.split(`-`)[0].toLowerCase()}}};export{t as AppWeb};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Yt as e}from"./index-
|
|
1
|
+
import{Yt as e}from"./index-C3E_66vw.js";var t=class extends e{constructor(){super(...arguments),this.wakeLock=null,this._isSupported=typeof navigator<`u`&&`wakeLock`in navigator,this.handleVisibilityChange=()=>{document.visibilityState===`visible`&&this.keepAwake()}}async keepAwake(){this._isSupported||this.throwUnsupportedError(),this.wakeLock&&await this.allowSleep(),this.wakeLock=await navigator.wakeLock.request(`screen`),document.addEventListener(`visibilitychange`,this.handleVisibilityChange),document.addEventListener(`fullscreenchange`,this.handleVisibilityChange)}async allowSleep(){var e;this._isSupported||this.throwUnsupportedError(),(e=this.wakeLock)==null||e.release(),this.wakeLock=null,document.removeEventListener(`visibilitychange`,this.handleVisibilityChange),document.removeEventListener(`fullscreenchange`,this.handleVisibilityChange)}async isSupported(){return{isSupported:this._isSupported}}async isKeptAwake(){return this._isSupported||this.throwUnsupportedError(),{isKeptAwake:!!this.wakeLock}}throwUnsupportedError(){throw this.unavailable(`Screen Wake Lock API not available in this browser.`)}};export{t as KeepAwakeWeb};
|
package/dist/public/index.html
CHANGED
|
@@ -22,40 +22,40 @@
|
|
|
22
22
|
<meta name="apple-mobile-web-app-title" content="Tarsk" />
|
|
23
23
|
|
|
24
24
|
<title>Tarsk</title>
|
|
25
|
-
<script type="module" crossorigin src="/assets/index-
|
|
25
|
+
<script type="module" crossorigin src="/assets/index-C3E_66vw.js"></script>
|
|
26
26
|
<link rel="modulepreload" crossorigin href="/assets/rolldown-runtime-aKtaBQYM.js">
|
|
27
27
|
<link rel="modulepreload" crossorigin href="/assets/react-vendor-Ee0-5T4I.js">
|
|
28
|
-
<link rel="modulepreload" crossorigin href="/assets/dist-
|
|
29
|
-
<link rel="modulepreload" crossorigin href="/assets/utils-
|
|
30
|
-
<link rel="modulepreload" crossorigin href="/assets/progress-indicator-
|
|
31
|
-
<link rel="modulepreload" crossorigin href="/assets/button-
|
|
28
|
+
<link rel="modulepreload" crossorigin href="/assets/dist-Ch137qdo.js">
|
|
29
|
+
<link rel="modulepreload" crossorigin href="/assets/utils-CWTBjUlE.js">
|
|
30
|
+
<link rel="modulepreload" crossorigin href="/assets/progress-indicator-QgGbLfer.js">
|
|
31
|
+
<link rel="modulepreload" crossorigin href="/assets/button-DVIjvd2G.js">
|
|
32
32
|
<link rel="modulepreload" crossorigin href="/assets/browser-overlay-block-CiDtkfup.js">
|
|
33
33
|
<link rel="modulepreload" crossorigin href="/assets/use-browser-overlay-block-DyprQSIG.js">
|
|
34
|
-
<link rel="modulepreload" crossorigin href="/assets/dist-
|
|
35
|
-
<link rel="modulepreload" crossorigin href="/assets/es2015-
|
|
36
|
-
<link rel="modulepreload" crossorigin href="/assets/dist-
|
|
37
|
-
<link rel="modulepreload" crossorigin href="/assets/alert-dialog-
|
|
34
|
+
<link rel="modulepreload" crossorigin href="/assets/dist-DqKWH8sc.js">
|
|
35
|
+
<link rel="modulepreload" crossorigin href="/assets/es2015-CxOm1WGv.js">
|
|
36
|
+
<link rel="modulepreload" crossorigin href="/assets/dist-BVQgAd-x.js">
|
|
37
|
+
<link rel="modulepreload" crossorigin href="/assets/alert-dialog-CVooKafv.js">
|
|
38
38
|
<link rel="modulepreload" crossorigin href="/assets/dist-OixawqbU.js">
|
|
39
|
-
<link rel="modulepreload" crossorigin href="/assets/scroll-area-
|
|
40
|
-
<link rel="modulepreload" crossorigin href="/assets/dist-
|
|
41
|
-
<link rel="modulepreload" crossorigin href="/assets/tooltip-
|
|
39
|
+
<link rel="modulepreload" crossorigin href="/assets/scroll-area-DnAXfBMQ.js">
|
|
40
|
+
<link rel="modulepreload" crossorigin href="/assets/dist-BKsOX8kk.js">
|
|
41
|
+
<link rel="modulepreload" crossorigin href="/assets/tooltip-Cqmpv-M5.js">
|
|
42
42
|
<link rel="modulepreload" crossorigin href="/assets/use-toast-xpb5jNtN.js">
|
|
43
|
-
<link rel="modulepreload" crossorigin href="/assets/api-
|
|
44
|
-
<link rel="modulepreload" crossorigin href="/assets/store-
|
|
45
|
-
<link rel="modulepreload" crossorigin href="/assets/chat-dock-context-
|
|
43
|
+
<link rel="modulepreload" crossorigin href="/assets/api-IMkL19mR.js">
|
|
44
|
+
<link rel="modulepreload" crossorigin href="/assets/store-CEYCdhjW.js">
|
|
45
|
+
<link rel="modulepreload" crossorigin href="/assets/chat-dock-context-BA8EIToZ.js">
|
|
46
46
|
<link rel="modulepreload" crossorigin href="/assets/explorer-tab-context-BxUVwWQQ.js">
|
|
47
47
|
<link rel="modulepreload" crossorigin href="/assets/terminal-output-activity-B1bjjsl7.js">
|
|
48
48
|
<link rel="modulepreload" crossorigin href="/assets/main-tab-context-CNgxXqnH.js">
|
|
49
49
|
<link rel="modulepreload" crossorigin href="/assets/suspense-resource-DzlMlIgR.js">
|
|
50
|
-
<link rel="modulepreload" crossorigin href="/assets/dist-
|
|
51
|
-
<link rel="modulepreload" crossorigin href="/assets/dist-
|
|
52
|
-
<link rel="modulepreload" crossorigin href="/assets/dist-
|
|
53
|
-
<link rel="modulepreload" crossorigin href="/assets/dist-
|
|
50
|
+
<link rel="modulepreload" crossorigin href="/assets/dist-BYYtqVYm.js">
|
|
51
|
+
<link rel="modulepreload" crossorigin href="/assets/dist-GRNTsriM.js">
|
|
52
|
+
<link rel="modulepreload" crossorigin href="/assets/dist-VhqWx9-S.js">
|
|
53
|
+
<link rel="modulepreload" crossorigin href="/assets/dist-BI_HNW9c.js">
|
|
54
54
|
<link rel="modulepreload" crossorigin href="/assets/dist-CSssbxDI.js">
|
|
55
|
-
<link rel="modulepreload" crossorigin href="/assets/useBaseQuery-
|
|
56
|
-
<link rel="modulepreload" crossorigin href="/assets/lucide-react-
|
|
55
|
+
<link rel="modulepreload" crossorigin href="/assets/useBaseQuery-D6c39Xb1.js">
|
|
56
|
+
<link rel="modulepreload" crossorigin href="/assets/lucide-react-C-dX1rVz.js">
|
|
57
57
|
<link rel="modulepreload" crossorigin href="/assets/chunk-QFMPRPBF-COsSkB7x.js">
|
|
58
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
58
|
+
<link rel="stylesheet" crossorigin href="/assets/index-D42A6A6A.css">
|
|
59
59
|
</head>
|
|
60
60
|
<body class="font-sans antialiased">
|
|
61
61
|
<div id="root"></div>
|
package/package.json
CHANGED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{Qt as e,R as t,Vt as n,W as r,tn as i,w as a,yn as o,zt as s}from"./dist-DZtmmQ-F.js";var c=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.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}({}),l=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.PROJECT_SESSION_OPEN_PREFIX=`tarsk.project-session-open.`,e}({});function u(e){return typeof localStorage>`u`?null:localStorage.getItem(e)}function d(e,t){typeof localStorage>`u`||localStorage.setItem(e,t)}function f(e){return typeof sessionStorage>`u`?null:sessionStorage.getItem(e)}function p(e,t){typeof sessionStorage>`u`||sessionStorage.setItem(e,t)}function m(e=`npm`){return u(`tarsk.create-project.packageManager`)??e}function h(e){d(`tarsk.create-project.packageManager`,e)}function ee(e=`pull-request`){return u(`tarsk.create-project.commitMethod`)??e}function te(e){d(`tarsk.create-project.commitMethod`,e)}function ne(e=``){return u(`tarsk.create-project.templateId`)??e}function g(e){d(`tarsk.create-project.templateId`,e)}function re(e=!1){let t=u(`createBranchAfterPR`);return t===null?e:t===`true`}function ie(e){d(`createBranchAfterPR`,e.toString())}function ae(e=!1){let t=u(`createWorkspaceAfterPR`);return t===null?e:t===`true`}function oe(e){d(`createWorkspaceAfterPR`,e.toString())}function se(e=!1){let t=u(`privateRepositoryDefault`);return t===null?e:t===`true`}function ce(e){d(`privateRepositoryDefault`,e.toString())}function le(e=!1){let t=u(`newChatOnNewBranch`);return t===null?e:t===`true`}function ue(e){d(`newChatOnNewBranch`,e.toString())}function _(){let e=f(`chat_message_history`);return e?JSON.parse(e):[]}function de(e){let t=_();e.trim()&&t[t.length-1]!==e&&(t.push(e),p(`chat_message_history`,JSON.stringify(t)))}function v(e){return typeof sessionStorage>`u`?null:sessionStorage.getItem(e)}function y(e,t){typeof sessionStorage>`u`||sessionStorage.setItem(e,t)}function fe(e=`default`){return v(`tarsk.skills.selectedSource`)??e}function pe(e){y(`tarsk.skills.selectedSource`,e)}function b(e){return`tarsk.skills.catalog.${e}`}function me(e){let t=v(b(e));if(!t)return null;try{return JSON.parse(t)}catch{return null}}function he(e,t){y(b(e),JSON.stringify(t))}function ge(e){typeof sessionStorage>`u`||sessionStorage.removeItem(b(e))}var x=`tarsk.skills.customSources`;function _e(){if(typeof localStorage>`u`)return[];let e=localStorage.getItem(x);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 ve(){typeof localStorage>`u`||localStorage.removeItem(x)}function ye(e=100){let t=u(`tarsk.general.fontScale`);if(t!==null){let e=Number(t);if(Number.isFinite(e)&&e>=50&&e<=300)return e}return e}function be(e){d(`tarsk.general.fontScale`,String(e))}function xe(e=80){let t=u(`tarsk.general.frostedPanelOpacity`);if(t!==null){let e=Number(t);if(Number.isFinite(e)&&e>=60&&e<=100)return e}return e}function Se(e){d(`tarsk.general.frostedPanelOpacity`,String(e))}var Ce=new Set([`image`,`background`,`color`]),S=/^#[0-9a-fA-F]{6}$/,we=`#1f2937`,C=`#82c309`;function Te(e){return e!==null&&Ce.has(e)}function Ee(e=`background`){let t=u(`tarsk.general.wallpaperMode`);if(Te(t))return t;if(t===`brand`)return`background`;let n=u(`tarsk.general.imageBackground`);return n===`false`?`background`:n===`true`?`image`:e}function De(e){d(`tarsk.general.wallpaperMode`,e)}function Oe(e=we){let t=u(`tarsk.general.wallpaperColor`);return t!==null&&S.test(t)?t:e}function ke(e){S.test(e)&&d(`tarsk.general.wallpaperColor`,e.toLowerCase())}function Ae(e=C){let t=u(`tarsk.general.brandColor`);return t!==null&&S.test(t)?t:e}function je(e){S.test(e)&&d(`tarsk.general.brandColor`,e.toLowerCase())}function Me(e=`VS Code`){return u(`tarsk.general.openWithProgram`)??e}function Ne(e){d(`tarsk.general.openWithProgram`,e)}function Pe(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 Fe(){let e=u(`tarsk.general.serverBindMode`);if(!e)return null;try{let t=JSON.parse(e);return Pe(t)?t:null}catch{return null}}function Ie(e){d(`tarsk.general.serverBindMode`,JSON.stringify({...e,fetchedAt:e.fetchedAt??Date.now()}))}var Le=`641`;function w(){return typeof window>`u`?null:window.Capacitor?.getPlatform?.()??null}function Re(){return D()&&w()===`ios`}function T(){return u(c.SERVER_URL)}function ze(e){d(c.SERVER_URL,e)}function Be(e){try{return new URL(e).hostname}catch{return``}}function E(e){let t=e.trim();if(!t)return``;let n=t.replace(/^https?:\/\//,``).split(`/`)[0]?.split(`:`)[0]??``;return n?`http://${n}:${Le}`:``}function D(){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 Ve(){let e=T();if(e){let t=Be(e);if(t)return t}return D()?``:document.location.hostname}async function He(e){try{return(await fetch(`${e.replace(/\/$/,``)}/health`,{method:`GET`})).ok}catch{return!1}}function Ue(e){let t=E(e);if(t){if(D()){ze(t),window.location.reload();return}window.location.assign(t)}}function O(){return typeof window<`u`&&`__electrobunWebviewId`in window}function We(){return typeof document<`u`&&document.location.port===`8100`}function k(){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 A(){if(typeof document>`u`)return`http://localhost:641`;let{hostname:e,port:t}=document.location;return t===`8100`?`http://${e}:462`:k()||`http://${e}:641`}function j(){if(O()){let e=k();if(e)return e}if(!D())return A();let e=T();return e?e.replace(/\/$/,``):A()}function M(e){let t=e.startsWith(`/`)?e:`/${e}`;return`${j()}${t}`}function N(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 P(e){try{return N(await e.json())}catch{}return e.statusText||`Unknown error`}function F(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 Ge(e){let t;try{t=await e.json()}catch{}throw F(N(t)||e.statusText||`Unknown error`,e,t)}async function I(e,t,n,r){let i=await fetch(M(t),{...r,method:e,headers:{"Content-Type":`application/json`,...r?.headers},body:n?JSON.stringify(n):void 0});if(!i.ok){let e=await P(i);throw Error(e)}return i}async function L(e,t){let n=await fetch(M(e),{...t,method:`GET`});if(!n.ok){let e=await P(n);throw Error(e)}return n.blob()}async function R(e,t){let n=await fetch(M(e),{...t,method:`GET`});if(!n.ok){let e=await P(n);throw Error(e)}return n.json()}async function z(e,t,n){return(await I(`POST`,e,t,n)).json()}async function Ke(e,t,n){return(await I(`POST`,e,t,n)).blob()}async function qe(e,t,n){let r=await fetch(M(e),{...n,method:`POST`,headers:{"Content-Type":`application/octet-stream`,...n?.headers},body:t});if(!r.ok){let e=await P(r);throw Error(e)}return r.json()}async function B(e,t,n){return(await I(`PUT`,e,t,n)).json()}async function V(e,t,n){return(await I(`PATCH`,e,t,n)).json()}async function Je(e,t,n){return(await I(`PUT`,e,t,n)).body}async function H(e,t){let n=await fetch(M(e),{...t,method:`DELETE`});if(!n.ok){let e=await P(n);throw Error(e)}if(n.status!==204)return n.json()}async function Ye(e,t){let n=await fetch(M(e),{...t,method:`DELETE`});if(!n.ok){let e=await P(n);throw Error(e)}return n.body}async function U(e,t,n){let r=await fetch(M(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 Ge(r),r.body}async function W(e,t){let n=await fetch(M(e),{...t,method:`GET`});return n.ok||await Ge(n),n.body}async function G(e,t,n){let r=await fetch(M(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 F(N(e)||r.statusText||`Unknown error`,r,e)}return r.json()}async function K(e,t,n){let r=await fetch(M(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 F(N(e)||r.statusText||`Unknown error`,r,e)}return r.json()}function q(...e){return e.map(e=>encodeURIComponent(String(e))).join(`/`)}var J=t(`gitops.ttl-cache`),Y=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&&J.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);J.debug(`cache hit`,{key:e,duration:t})}return o.data}r&&J.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);J.debug(`stored in cache`,{key:e,duration:t})}}else r&&J.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 Xe(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 Ze(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 Qe(e){let t=e.indexOf(`,`),n=e.slice(0,t);return Ze(e.slice(t+1),n.match(/^data:([^;]+)/)?.[1]??`image/png`)}async function $e(e){if(e.imageData)return Ze(e.imageData);if(e.imageUrl){if(e.imageUrl.startsWith(`data:`))return Qe(e.imageUrl);let t=n(e.imageUrl,j()),r=await fetch(t);if(!r.ok)throw Error(`Failed to fetch image: ${r.status}`);return r.blob()}throw Error(`imageUrl or imageData is required`)}function et(e){return!e.imageUrl||s(e.imageUrl)?e:{...e,imageUrl:n(e.imageUrl,j())}}async function tt(e){let t=e.filename??`generated-image-${Date.now()}.png`;try{return Xe(await $e(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 nt(e){let t=await $e(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 rt(e){return O()?z(`api/image/save`,et(e)):tt(e)}async function it(e){if(O()){await z(`api/image/clipboard`,et(e));return}await nt(e)}function at(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 ot(e){if(e instanceof Error&&`code`in e&&typeof e.code==`string`)return e.code}function st(e){if(ot(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 ct(e,t){return st(e)?t?.trim()?!0:e instanceof Error?!e.message.toLowerCase().includes(`multiple chat windows`):!1:!1}var lt=50;function ut(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 m(){d+=1,!(d<lt)&&(d=0,await new Promise(e=>{setTimeout(e,0)}))}async function h(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 m(),`continue`)}async function ee(){if(!u.trim())return`continue`;try{return await h(JSON.parse(u))}catch{return u.trim()&&t({type:`result`,content:u}),`continue`}}async function te(e){let t=e.trim();if(!t)return`continue`;try{return await h(JSON.parse(t))}catch{return`continue`}}async function ne(){return s||await ee()===`stop`?`stop`:(n(),`continue`)}async function g(e){u+=l.decode(e,{stream:!0});let t=u.split(`
|
|
2
|
-
`);u=t.pop()??``;for(let e of t)if(s||await te(e)===`stop`)return`stop`;return`continue`}async function re(){try{for(;!s;){let{done:e,value:t}=await o.read();if(e||s){e&&await ne();break}if(await g(t)===`stop`)return}}catch(e){s||(r(e instanceof Error?e.message:`Stream error`),n())}}return re(),c}var dt=t(`gitops.api`);async function ft(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/${q(e)}?${i}`:`api/git/unified-status/${q(e)}`,o=performance.now();dt.debug(`getUnifiedGitStatus start`,{threadId:e,fresh:t});try{return await R(a)}finally{let n=Math.round(performance.now()-o);dt.debug(`getUnifiedGitStatus end`,{threadId:e,fresh:t,duration:n})}}async function pt(e,t,n){return(await z(`api/git/generate-commit-message/${q(e)}`,{model:t,provider:n})).message}async function mt(e,t){await z(`api/git/commit/${q(e)}`,{message:t})}async function ht(e){await z(`api/git/push/${q(e)}`)}async function gt(e){await z(`api/git/pull/${q(e)}`)}async function _t(e){return z(`api/git/sync-branch/${q(e)}`,{})}async function vt(e,t,n){return z(`api/git/generate-pr-info/${q(e)}`,{model:t,provider:n})}async function yt(e,t,n,r){return z(`api/git/create-pr/${q(e)}`,{title:t,description:n,baseBranch:r})}async function bt(e){await z(`api/git/fetch/${q(e)}`)}async function xt(e,t,n){return z(`api/git/create-branch/${q(e)}`,{baseBranch:t,branchName:n})}async function St(e,t){return z(`api/git/revert-file/${q(e)}`,{filePath:t})}async function Ct(e,t=50){return(await R(`api/git/log/${q(e)}?limit=${t}`)).commits}async function wt(e){return R(`api/git/pr-status/${q(e)}`)}async function Tt(e,t,n,r){return z(`api/git/create-repo/${q(e)}`,{repoName:t,description:n,isPrivate:r})}async function Et(e,t){return z(`api/git/checkpoint/${q(e)}`,{messageId:t})}async function Dt(e,t){return z(`api/git/checkpoint-restore/${q(e)}`,{checkpointRef:t})}async function Ot(e){return R(`api/git/diff/${q(e)}`)}async function kt(e,t,n){return L(`api/git/media/${q(e)}?path=${encodeURIComponent(t)}&version=${n}`)}async function At(e){return z(`api/git/cleanup-deleted-branches/${q(e)}`)}async function jt(){return(await R(`api/skills/popular`)).skills??[]}async function Mt(){return(await R(`api/skills/sources`)).sources??[]}async function Nt(e){return(await R(`api/skills/catalog?${new URLSearchParams({sourceId:e}).toString()}`)).skills??[]}async function Pt(e,t){return z(`api/skills/sources/verify`,{title:e,url:t})}async function Ft(e,t,n){return B(`api/skills/sources/${q(e)}`,{title:t,url:n})}async function It(e){await H(`api/skills/sources/${q(e)}`)}async function Lt(e){return(await z(`api/skills/sources/import`,{sources:e})).sources??[]}async function Rt(e,t){return R(`api/skills/catalog/files?${new URLSearchParams({sourceId:e,skillId:t}).toString()}`)}async function zt(e,t,n){return R(`api/skills/catalog/file?${new URLSearchParams({sourceId:e,skillId:t,relativePath:n}).toString()}`)}async function Bt(){return(await R(`api/agents/popular`)).agents??[]}async function Vt(){return(await R(`api/slash-commands/popular`)).commands??[]}async function Ht(e,t,n,r,i){return z(`api/threads/${q(e)}/ai-files/github-folder`,{gitHubRepo:t,gitHubFolder:n,destPath:r,gitHubRef:i})}async function Ut(e,t,n,r){return z(`api/threads/${q(e)}/ai-files/catalog-skill`,{sourceId:t,skillId:n,destPath:r})}var Wt=t(`gitops.api`),X=class extends Error{constructor(){super(`No prompts remaining`),this.name=`EmptyBalanceError`}},Gt=50;async function Kt(){let{plan:e,promptsRemaining:t}=await ln();return e===`unlimited-pro`?{isEmpty:!1,isLow:!1,promptsRemaining:-1}:{isEmpty:t<=0,isLow:t>0&&t<=Gt,promptsRemaining:t}}var qt=null,Z=!1;function Jt(e){qt=e}function Q(e){Z||(Z=!0,qt?.(e))}async function Yt(){return R(`api/scaffold/templates`)}async function Xt(){return(await R(`api/scaffold/check-vp`)).installed}async function Zt(){return z(`api/scaffold/install-vp`,{})}async function Qt(e,t,n,r){return U(`api/scaffold`,{projectName:e,templateId:t,packageManager:n},{signal:r})}async function $t(){return Y.get(`providers`,async()=>R(`api/providers`),6e4)}function en(e){return`${j()}/api/providers/${q(e)}/logo`}function tn(e){return`https://models.tarsk.io/svg/${q(e)}.svg`}async function nn(e){return Y.get(`provider-credits-${e}`,async()=>R(`api/providers/${q(e)}/credits`),3e4)}async function rn(){return(await R(`api/providers/openrouter/oauth/start`)).url}async function an(e,t){await z(`api/providers/keys`,{providerName:e,apiKey:t}),Y.invalidate(`providers`)}async function on(e){await z(`api/providers/env`,{values:e}),Y.invalidate(`providers`)}function sn(e){return typeof window>`u`?!1:window.open(e,`_blank`,`noopener,noreferrer`)!==null}async function cn(e){if(typeof window<`u`&&!O()){sn(e);return}try{await z(`api/providers/open-external`,{url:e})}catch(t){if(sn(e))return;throw t instanceof Error?t:Error(`Failed to open URL`)}}async function ln(){return R(`api/account/info`)}async function un(){return z(`api/account/delete`,{})}async function dn(){return z(`api/account/quit`,{})}async function fn(){return R(`api/account/spend`)}async function pn(){return R(`api/account/statistics`)}async function mn(){return H(`api/account/statistics`)}async function hn(){return R(`api/account/settings`)}async function gn(){return R(`api/slack/settings`)}async function _n(){await H(`api/logs`)}async function vn(e){return W(`api/logs/stream`,e)}async function yn(e){try{await z(`api/logs`,e)}catch(e){Wt.debug(`Failed to post client log entry`,e)}}async function bn(){return R(`api/slack/manifest`)}async function xn(e){return B(`api/slack/tokens`,e)}async function Sn(){await H(`api/slack/tokens`)}async function Cn(e){return z(`api/slack/bindings`,e)}async function wn(e,t){await H(`api/slack/bindings/${q(e)}/${q(t)}`)}async function Tn(e){return B(`api/account/settings`,e)}async function En(e,t){return(await z(`api/voice-model/process-transcript`,{text:e,threadId:t?.threadId,provider:t?.provider,model:t?.model})).text}async function Dn(){return Y.get(`available-programs`,async()=>(await R(`api/programs`)).programs??[],3e5)}async function On(){return(await R(`api/processes`)).processes}async function kn(e){await z(`api/processes/${q(e)}/kill`)}async function An(){return Y.get(`processing-threads`,async()=>{let e=await R(`api/threads/processing`);return{processingThreadIds:e.processingThreadIds??[],processingRuns:e.processingRuns??[]}},0)}async function jn(){return(await An()).processingThreadIds}async function Mn(e){let t=new URLSearchParams({since:e.since});return e.ids&&t.set(`ids`,e.ids),Y.get(`processing-roster:${t.toString()}`,async()=>(await R(`api/conversations/processing-roster?${t.toString()}`)).conversations??[],0)}async function Nn(){return Y.get(`git-user`,async()=>{try{let e=await R(`api/git/user`);return{name:e.name??``,email:e.email??``}}catch{return{name:``,email:``}}},6e5)}async function Pn(){return(await Nn()).name}async function Fn(){return Y.get(`projects`,async()=>{let e=await R(`api/projects`),t=Array.isArray(e)?e:e.projects??[],n=Array.isArray(e)?null:e.cloneRootPath??null;return{projects:(t||[]).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,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:o(t.defaultChatMode)?t.defaultChatMode:void 0,disabledTools:t.disabledTools??void 0,useBuiltInBrowser:t.useBuiltInBrowser!==!1,projectIcon:t.projectIcon,tasksModifiedCount:Number(t.tasksModifiedCount)||0,type:t.type===`bot`?`bot`:`standard`,builtIn:t.builtIn===!0}}).map(e=>{let t=(e.threads||[]).map(e=>{let t=e,n=t.threadId??t.id;return{threadId:n,title:t.title??n,path:t.path??``,currentBranch:t.currentBranch??``,isSelected:!!t.isSelected,model:t.model??void 0,modelProvider:t.modelProvider??void 0,gitStatusDot:r(t.gitStatusDot)}});return{...e,threads:t}}),cloneRootPath:n}},3e4)}async function In(e){await z(`api/projects/${q(e)}/tasks/clear-modifications`)}async function Ln(e,t,n){return U(`api/projects`,{gitUrl:e,commitMethod:t},{signal:n})}async function Rn(e,t){await z(`api/projects/git-auth/${encodeURIComponent(e)}`,t)}async function zn(e){return U(`api/projects/open-folder`,{},{signal:e})}async function Bn(e,t){return U(`api/projects/open-path`,{path:e},{signal:t})}async function Vn(e,t){return U(`api/projects/new-folder`,{projectName:e},{signal:t})}async function Hn(e,t){return U(`api/projects/new-bot`,{projectName:e},{signal:t})}function Un(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 Wn(e,t,n,r){return U(`api/projects/from-zip`,{data:await Un(e),name:t,overrideProjectId:n},{signal:r})}async function Gn(e){return Y.get(`project-${e}`,async()=>{let t=await R(`api/projects/${q(e)}`);return{...t,projectPath:t.projectPath??t.path}},3e4)}async function Kn(e){return R(`api/projects/${q(e)}/env-vars`)}async function qn(e){return(await R(`api/projects/${q(e)}/window-state`)).state}async function Jn(e,t){await K(`api/projects/${q(e)}/window-state`,{state:t})}async function Yn(e,t,n){return z(`api/projects/${q(e)}/replace-unique-text`,{oldText:t,newText:n})}async function Xn(e,t){await B(`api/projects/${q(e)}/env-vars`,{vars:t})}async function Zn(e){await H(`api/projects/${q(e)}`),Y.invalidate(`projects`)}function Qn(e){Y.invalidate(`projects`),e&&Y.invalidate(`project-${e}`)}async function $n(e,t,n){return U(`api/threads`,{projectId:e,title:t,sourceThreadId:n?.sourceThreadId})}async function er(e,t){let n=await Ye(`api/threads/${q(t)}?stream=true`);return Y.invalidate(`projects`),n}async function tr(e,t){await V(`api/threads/${q(e)}`,t),Y.invalidate(`thread-${e}`),(`model`in t||`modelProvider`in t||`chatTitles`in t||`diffComments`in t)&&Y.invalidate(`projects`)}async function nr(e,t,n){return(await z(`api/threads/${q(e)}/generate-title`,{prompt:t,provider:n?.provider,model:n?.model})).title}async function rr(e,t){return z(`api/threads/${q(e)}/fix-comments`,{comments:t})}async function ir(e,t){await z(`api/threads/${q(t)}/select`)}async function ar(e,t){let n=t?`?conversationId=${encodeURIComponent(t)}`:``;return{threadId:e,messages:await R(`api/threads/${q(e)}/messages${n}`)}}async function or(t,n,r=1,i=e){let a=new URLSearchParams({offset:String(r),limit:String(i)});return R(`api/threads/${q(t)}/observations/${q(n)}?${a}`)}async function sr(e){return(await R(`api/threads/${q(e)}/conversation-folder-path`)).path}async function cr(e,t,n,r=[],i,a,o,s,c,l,u,d,f){let{isEmpty:p,isLow:m,promptsRemaining:h}=await Kt();if(p)throw new X;return m?Q(h):Z=!1,U(`api/chat`,{threadId:e,content:t,model:n,provider:a,planMode:o,ralphMode:s,orchestrateMode:u,autoRoute:d,checkpointRef:c,conversationId:l,goal:f,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,o,s,c){let{isEmpty:l,isLow:u,promptsRemaining:d}=await Kt();if(l)throw new X;return u?Q(d):Z=!1,z(`api/chat`,{threadId:e,content:t,model:n,provider:i,planMode:a,ralphMode:o,orchestrateMode:s,autoRoute:c,runInBackground:!0,attachments:r.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,r,i,a){await z(`api/chat/${q(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 dr(e,t,n){let r=new URLSearchParams({replay:`compact`}),i=n?.trim();return i&&r.set(`conversationId`,i),W(`api/chat/subscribe/${q(e)}?${r.toString()}`,{signal:t})}async function fr(e){let t=await H(`api/chat/${q(e)}`);return Y.invalidate(`thread-${e}`),t?.conversationId||``}async function pr(e,t,n){return z(`api/chat/${q(e)}/agent-note`,{content:t,...n})}async function mr(e,t){return G(`api/chat/${q(e)}/compact`,t)}async function hr(e,t){let n=await z(`api/chat/${q(e)}/workspace-handoff`,t);return typeof n.brief==`string`?n.brief:``}async function gr(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 z(`api/chat/stop/${q(e)}${i}`)}catch{}}async function $(e,t){return t.runNow&&t.setupScript?Je(`api/projects/${q(e)}`,t):(await K(`api/projects/${q(e)}`,t),Qn(e),null)}async function _r(e,t){await G(`api/projects/${q(e)}/open`,{program:t})}async function vr(e,t){await G(`api/threads/${q(e)}/open`,{program:t})}async function yr(e,t){await $(e,{program:t})}async function br(e,t,n){return $(e,{setupScript:t,runNow:n})}async function xr(e,t){await $(e,{name:t})}async function Sr(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 Y.get(r,async()=>{let e=await R(`api/models?${n.toString()}`);return{models:e.models??[],enabledModelIds:e.enabledModelIds??[]}},12e4)}async function Cr(e){let t=new URLSearchParams({useCase:e}),n=`available-models-all-${e}`;return Y.get(n,async()=>(await R(`api/models/all?${t.toString()}`)).providers??{},12e4)}async function wr(e,t){await z(`api/models/${q(e,t)}/enable`),Y.invalidate(`enabled-models`),Y.invalidatePattern(/^available-models-/),Y.invalidatePattern(/^available-image-models-/)}async function Tr(e,t){await z(`api/models/${q(e,t)}/disable`),Y.invalidate(`enabled-models`),Y.invalidatePattern(/^available-models-/),Y.invalidatePattern(/^available-image-models-/)}async function Er(e,t,n){await z(`api/models/${q(e,t)}/settings`,n),Y.invalidatePattern(/^available-models-/),Y.invalidate(`enabled-models`)}async function Dr(){return Y.get(`enabled-models`,async()=>(await R(`api/models/enabled?useCase=coding`)).enabledModels??{},12e4)}async function Or(e){let t=new URLSearchParams({provider:e,useCase:`image`}),n=`available-image-models-${e}`;return Y.get(n,async()=>{let e=await R(`api/models?${t.toString()}`);return{models:e.models??[],enabledModelIds:e.enabledModelIds??[]}},12e4)}async function kr(){return Y.get(`enabled-image-models`,async()=>(await R(`api/models/enabled?useCase=image`)).enabledModels??{},12e4)}async function Ar(e,t){await z(`api/models/${q(e,t)}/enable?useCase=image`),Y.invalidate(`enabled-image-models`),Y.invalidatePattern(/^available-models-/),Y.invalidatePattern(/^available-image-models-/)}async function jr(e,t){await z(`api/models/${q(e,t)}/disable?useCase=image`),Y.invalidate(`enabled-image-models`),Y.invalidatePattern(/^available-models-/),Y.invalidatePattern(/^available-image-models-/)}async function Mr(e,t,n,r){return z(`api/image/generate`,{prompt:e,model:t,provider:n,threadId:r})}async function Nr(e){await it(e)}async function Pr(e){return rt(e)}async function Fr(e,t){return Ke(`api/projects/${q(e)}/plugin-export`,t)}async function Ir(e,t){return z(`api/projects/${q(e)}/plugin-import/preview`,{url:t})}async function Lr(e,t){return z(`api/projects/${q(e)}/plugin-import`,t)}async function Rr(e,t){return z(`api/projects/${q(e)}/plugin-upload`,t)}async function zr(e){let t=await z(`api/models/${q(e)}/refresh`);return Y.invalidatePattern(/^available-models-/),Y.invalidatePattern(/^available-image-models-/),Y.invalidate(`enabled-models`),Y.invalidate(`enabled-image-models`),t.modelCount??0}async function Br(e,t){await z(`api/projects/${q(e)}/commands`,t)}async function Vr(e,t){await H(`api/projects/${q(e)}/commands/${q(t)}`)}async function Hr(e){return R(`api/projects/${q(e)}/package-scripts`)}async function Ur(e){return R(`api/threads/${q(e)}/files`)}async function Wr(e){return(await R(`api/threads/${q(e)}/project-scripts`)).scripts}async function Gr(e,t,n,r){let{relativeFolder:i,...a}=r??{},o={scriptName:t,command:n};return i&&(o.relativeFolder=i),U(`api/threads/${q(e)}/project-scripts/run`,o,a)}async function Kr(e,t){return z(`api/threads/${q(e)}/project-scripts/stop`,{scriptName:t})}async function qr(e){return Y.get(`thread-${e}`,async()=>R(`api/threads/${e}`),45e3)}async function Jr(e){return(await R(`api/projects/${q(e)}/user-tasks`)).tasks??[]}async function Yr(e,t){return z(`api/projects/${q(e)}/user-tasks`,{content:t})}async function Xr(e,t){await H(`api/projects/${q(e)}/user-tasks/${q(t)}`)}async function Zr(e){return z(`api/projects/${q(e)}/run-suggest`,{})}async function Qr(e,t,n){return Wt.info(`Start dev server requested`,{projectId:e,threadId:t}),Y.invalidate(`dev-server-running-${e}`),U(`api/projects/${q(e)}/run`,{threadId:t},{signal:n})}async function $r(e){return Y.invalidate(`dev-server-running-${e}`),z(`api/projects/${q(e)}/stop`,{})}async function ei(e,t){return z(`api/projects/${q(e)}/free-port`,{port:t})}async function ti(e){return Y.get(`dev-server-running-${e}`,async()=>R(`api/projects/${q(e)}/running`),3e3)}async function ni(e){return R(`api/projects/${q(e)}/system-prompt`)}async function ri(){return R(`api/onboarding/status`)}async function ii(){return R(`api/onboarding/git-check`)}async function ai(){return z(`api/onboarding/complete`,{})}async function oi(){return z(`api/onboarding/reset`,{})}async function si(){return R(`api/onboarding/recommended-models`)}async function ci(e){return(await R(`api/slash-commands?threadId=${q(e)}`)).commands??[]}async function li(e){let t=await R(`api/slash-commands?threadId=${q(e)}`);return{commands:t.commands??[],skills:t.skills??[],bundledSkills:t.bundledSkills??[]}}async function ui(e,t,n,r,i){return z(`api/slash-commands`,{name:e,content:t,metadata:n,scope:r,threadId:i})}async function di(e,t){let n=await fetch(`http://localhost:641/api/slash-commands`,{method:`DELETE`,headers:{"Content-Type":`application/json`},body:JSON.stringify({filePath:e,threadId:t})});if(!n.ok)throw Error(`Failed to delete slash command: ${n.statusText}`);return n.json()}async function fi(e){let t=new URLSearchParams;e?.threadId?t.set(`threadId`,e.threadId):e?.projectId&&t.set(`projectId`,e.projectId);let n=t.toString();await H(`api/conversations${n?`?${n}`:``}`)}async function pi(e=20,t=0,n,r){return R(`api/conversations/recent?limit=${Math.min(Math.max(e,1),100)}&offset=${Math.max(t,0)}${n?`&projectId=${encodeURIComponent(n)}`:``}${r?.unreadOnly?`&unreadOnly=1`:``}&${i}=${r?.order??`updated`}`)}async function mi(e,t){await G(`api/conversations/${q(e)}/${q(t)}/read`,{})}async function hi(e,t){await H(`api/conversations/${q(e)}/${q(t)}/complete`)}async function gi(e,t){await H(`api/conversations/${q(e)}/${q(t)}/read`)}async function _i(e,t,n){await V(`api/conversations/${q(e)}/${q(t)}/title`,{title:n})}async function vi(e){return R(`api/goals?conversationId=${encodeURIComponent(e)}`)}async function yi(e){return z(`api/goals/${q(e)}/pause`,{})}async function bi(e){return z(`api/goals/${q(e)}/resume`,{})}async function xi(e){return z(`api/goals/${q(e)}/end`,{})}async function Si(e,t){return R(`api/conversations/${q(e)}/${q(t)}/usage`)}async function Ci(e,t,n){let r=`context-breakdown-${e}-${t}`;return n?.forceRefresh&&Y.invalidate(r),Y.get(r,async()=>R(`api/conversations/${q(e)}/${q(t)}/context`),45e3)}async function wi(e,t){return R(`api/conversations/${q(e)}/${q(t)}/context/tool-definitions`)}async function Ti(){try{return await R(`api/update/check`)}catch{return{updateAvailable:!1,supported:!1}}}async function Ei(){return z(`api/update/apply`)}async function Di(){return(await R(`api/ask-user/pending`)).questions??[]}async function Oi(e,t){await z(`api/ask-user/respond`,typeof t==`string`?{toolCallId:e,answer:t}:{toolCallId:e,answers:t})}async function ki(e,t,n){await z(`api/shell-permission/respond`,{toolCallId:e,decision:t,pattern:n?.pattern,projectId:n?.projectId})}async function Ai(e,t){await z(`api/shell-permission/respond`,{toolCallId:e,escalationScope:t===`skip`?void 0:t,escalationDecision:t===`skip`?`skip`:void 0})}async function ji(e,t){await z(`api/web-fetch-permission/respond`,{toolCallId:e,decision:t})}async function Mi(e,t){await z(`api/browser/ready`,{toolCallId:e,webviewId:t})}async function Ni(e,t){await z(`api/browser/action-result`,{toolCallId:e,result:t})}async function Pi(e){return R(`api/mcp/config?projectPath=${encodeURIComponent(e)}`)}async function Fi(e,t,n){return B(`api/mcp/config`,{projectPath:e,serverName:t,serverConfig:n})}async function Ii(e,t){return H(`api/mcp/config/${q(t)}?projectPath=${encodeURIComponent(e)}`)}async function Li(e,t){return z(`api/mcp/discover`,{projectPath:e,serverName:t})}async function Ri(){return(await R(`api/mcp/popular`)).servers??[]}async function zi(e,t){return z(`api/mcp/oauth/authorize`,{projectPath:e,serverName:t})}async function Bi(e,t){return R(`api/mcp/oauth/status?projectPath=${encodeURIComponent(e)}&serverName=${encodeURIComponent(t)}`)}async function Vi(e,t){return H(`api/mcp/oauth?projectPath=${encodeURIComponent(e)}&serverName=${encodeURIComponent(t)}`)}async function Hi(e){return(await R(`api/projects/${q(e)}/ai-files`)).nodes??[]}async function Ui(e,t){return H(`api/projects/${q(e)}/ai-file?path=${encodeURIComponent(t)}`)}async function Wi(e,t){return R(`api/projects/${q(e)}/ai-file?path=${encodeURIComponent(t)}`)}async function Gi(e,t,n){return B(`api/projects/${q(e)}/ai-file`,{path:t,content:n})}async function Ki(e,t,n){return B(`api/projects/${q(e)}/ai-files/skill/model-invocation`,{name:t,disableModelInvocation:n})}async function qi(e){return(await R(`api/threads/${q(e)}/ai-files`)).nodes??[]}async function Ji(e,t,n){return B(`api/threads/${q(e)}/ai-file`,{path:t,content:n})}async function Yi(e,t,n){return z(`api/threads/${q(e)}/ai-files/skill`,{name:t,description:n})}async function Xi(e,t,n){return B(`api/threads/${q(e)}/ai-files/skill/model-invocation`,{name:t,disableModelInvocation:n})}async function Zi(e,t,n,r){return z(`api/threads/${q(e)}/ai-files/agent`,{name:t,description:n,tools:r})}async function Qi(e,t){return H(`api/threads/${q(e)}/ai-file?path=${encodeURIComponent(t)}`)}export{ln as $,$ as $n,E as $r,cn as $t,Zn as A,ne as Ai,ir as An,yt as Ar,nn as At,Ar as B,ue as Bi,gr as Bn,Xe as Br,li as Bt,$n as C,m as Ci,Fi as Cn,Ct as Cr,Wi as Ct,un as D,Fe as Di,on as Dn,At as Dr,ni as Dt,Yr as E,fe as Ei,Jn as En,ft as Er,Wr as Et,Qi as F,ie as Fi,xn as Fn,_t as Fr,si as Ft,Or as G,Ie as Gi,Ai as Gn,j as Gr,wi as Gt,xi as H,Ne as Hi,Kr as Hn,H as Hr,qr as Ht,Xr as I,oe as Ii,Xi as In,Dt as Ir,Yt as It,rr as J,g as Ji,dr as Jn,z as Jr,Zt as Jt,Sr as K,p as Ki,ki as Kn,L as Kr,Jr as Kt,jr as L,be as Li,Qr as Ln,at as Lr,bn as Lt,wn as M,Ee as Mi,lr as Mn,gt as Mr,en as Mt,di as N,je as Ni,Jt as Nn,ht as Nr,$t as Nt,Vr as O,f as Oi,an as On,mt as Or,qn as Ot,er as P,te as Pi,Ki as Pn,St as Pr,pi as Pt,hr as Q,Tn as Qn,O as Qr,mi as Qt,Tr as R,Se as Ri,rn as Rn,ut as Rr,gn as Rt,ui as S,le as Si,Pr as Sn,Ot as Sr,Gn as St,Yi as T,se as Ti,Gi as Tn,wt as Tr,Kn as Tt,Fr as U,ce as Ui,vn as Un,q as Ur,qi as Ut,wr as V,h as Vi,$r as Vn,Y as Vr,fn as Vt,Cr as W,pe as Wi,Oi as Wn,R as Wr,Ur as Wt,Mr as X,De as Xi,Xn,B as Xr,ti as Xt,ei as Y,ke as Yi,Zr as Yn,qe as Yr,Qn as Yt,nr as Z,gi as Zn,We as Zr,kn as Zt,Vn as _,ye as _i,Rn as _n,Pt as _r,Hr as _t,ii as a,He as ai,pr as an,It as ar,On as at,Qt as b,u as bi,Gr as bn,pt as br,An as bt,hi as c,c as ci,En as cn,Bt as cr,Si as ct,In as d,ve as di,_i as dn,Nt as dr,vi as dt,Ue as ei,zn as en,xr as er,hn as et,Sn as f,ge as fi,Yn as fn,Mt as fr,pn as ft,Hn as g,ae as gi,oi as gn,Ft as gr,ri as gt,Nr as h,re as hi,mn as hn,Ht as hr,or as ht,Ti as i,D as ii,yi as in,Rr as ir,ar as it,Ui as j,Oe as ji,cr as jn,bt as jr,tn as jt,Ii as k,me as ki,Ji as kn,xt as kr,Fn as kt,fi as l,l as li,dn as ln,jt as lr,Nn as lt,ai as m,ee as mi,Mi as mn,Ut as mr,Bi as mt,Ei as n,w as ni,_r as nn,br as nr,Dr as nt,Xt as o,C as oi,yn as on,zt as or,Ci as ot,mr as p,Ae as pi,Ni as pn,Lt as pr,Pi as pt,Di as q,he as qi,ji as qn,V as qr,Lr as qt,zi as r,Re as ri,vr as rn,tr as rr,Dn as rt,fr as s,we as si,Ir as sn,Rt as sr,sr as st,X as t,Ve as ti,Bn as tn,yr as tr,kr as tt,_n as u,de as ui,zr as un,Vt as ur,Pn as ut,Ln as v,xe as vi,bi as vn,Et as vr,Ri as vt,Zi as w,Me as wi,Er as wn,kt as wr,Hi as wt,Cn as x,_ as xi,Br as xn,vt as xr,jn as xt,Wn as y,_e as yi,Vi as yn,Tt as yr,Mn as yt,Li as z,d as zi,ur as zn,ct as zr,ci as zt};
|
|
@@ -1 +0,0 @@
|
|
|
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{$ as i,P as a,R as o}from"./dist-DZtmmQ-F.js";import{J as s,i as c,n as l,nt as u,r as d,tt as f}from"./store-D4D62vkY.js";import{En as p,Ht as m,Ot as h,Qt as g}from"./api-B_ZIptgC.js";var _=e(n(),1),v=r(),y=_.createContext(void 0),b=e=>{let t=_.useContext(y);if(e)return e;if(!t)throw Error(`No QueryClient set, use QueryClientProvider to set one`);return t},x=({client:e,children:t})=>(_.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),(0,v.jsx)(y.Provider,{value:e,children:t})),S=t();function C({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 w(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 T=o(`app.window-state`);function E(e,t,n){return JSON.stringify({nonChatWindows:e,expandedWindowId:t,selectedWindowId:n})}function D({nonChatWindows:e,expandedWindowId:t,selectedWindowId:n,onReset:r,onHydrate:i}){let a=l(),o=d(e=>e.selectedProjectId),s=d(e=>e.projects),c=d(e=>e.threadMultiPaneStates),u=s.find(e=>e.projectId===o),m=(u?.threads.map(e=>e.threadId)??[]).join(`\0`),g=u!==void 0,[v,y]=(0,_.useState)(null),b=(0,_.useRef)(null),x=(0,_.useRef)(Promise.resolve()),S=(0,_.useRef)(null),w=(0,_.useRef)(0),D=(0,_.useRef)(E(e,t,n));D.current=E(e,t,n),(0,_.useEffect)(()=>{let e=S.current!==o;if(S.current=o,!o||!g){r(),y(null),b.current=null;return}e&&(r(),y(null),b.current=null);let t=o,n=m?m.split(`\0`):[],s=D.current,c=++w.current,l=!1;async function u(){try{let e=await h(t);if(l||c!==w.current)return;if(a({type:f.HydrateProjectChatPanes,threadIds:n,chatPanesByThread:e.chatPanesByThread}),D.current!==s){y(t);return}b.current=JSON.stringify(e),i(e),y(t)}catch(e){l||T.error(`Failed to restore project window state`,e)}}return u(),()=>{l=!0}},[a,g,i,r,m,o]),(0,_.useEffect)(()=>{if(!o||o!==v||!g)return;let r=C({nonChatWindows:e,expandedWindowId:t,selectedWindowId:n,threadIds:m?m.split(`\0`):[],threadMultiPaneStates:c}),i=JSON.stringify(r);if(i===b.current)return;let a=o;b.current=i,x.current=x.current.catch(()=>void 0).then(()=>p(a,r)).catch(e=>{T.error(`Failed to save project window state`,e),b.current===i&&(b.current=null)})},[t,g,v,e,o,n,m,c])}var O={onboarding:{status:()=>[`onboarding`,`status`]},app:{update:()=>[`app`,`update`]},models:{enabled:e=>[`models`,`enabled`,e],enabledImage:e=>[`models`,`enabled-image`,e]},userTasks:e=>[`user-tasks`,e],threads:{files:e=>[`threads`,`files`,e]},conversations:{recent:()=>[`conversations`,`recent`],unread:e=>[`conversations`,`unread`,e??null],unreadAll:()=>[`conversations`,`unread`]},goals:{byConversation:e=>[`goals`,e]}},k=(0,_.createContext)(null);function A(e){let t=(0,S.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,_.useEffect)(u,d);let f,p;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`)},p=[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]=p):(f=t[12],p=t[13]),(0,_.useEffect)(f,p);let m,h;t[14]!==o||t[15]!==c||t[16]!==n.length?(m=()=>{n.length===0&&o!==null&&c(null)},h=[o,n.length,c],t[14]=o,t[15]=c,t[16]=n.length,t[17]=m,t[18]=h):(m=t[17],h=t[18]),(0,_.useEffect)(m,h)}function j(e){return e.filter(e=>e.panelId!==`tasks`)}function M(e,t,n,r){t.panelId===`chat`?n({type:f.RemoveChatPane,paneId:e}):r(t=>t.filter(t=>t.id!==e))}var N=o(`chat.dock`);function P(e,t,n,r){return e.processingRuns.some(e=>e.threadId===t&&e.conversationId===r)||s(e.threadStreamingStates,t,n).isStreaming||n===u&&e.pendingChatMessage?.threadId===t?!0:e.queuedChatMessages.some(e=>e.threadId===t&&e.paneId===n)}function F(e,t,n){g(e,t).catch(n=>{N.error(`Failed to mark conversation read on chat window close`,{error:n,threadId:e,conversationId:t})}).finally(()=>{n.invalidateQueries({queryKey:O.conversations.unreadAll()})})}async function I(e,t,n){let r=t.selectedThreadId;if(!r)return;let i=e===u?t.primaryConversationId:t.extraChatPanes[e]?.conversationId;if(!i&&e===u)try{i=(await m(r)).currentConversationId??void 0}catch(e){N.error(`Failed to resolve current conversation on chat window close`,{error:e,threadId:r});return}!i||P(t,r,e,i)||F(r,i,n)}function L(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 R(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 z(e,t,n){return t.length===0?null:e===`primary`?n:e}function B(e,t){return e===`primary`&&t?t:e}function V(){let e=(0,S.c)(24),t=d(G),n=d(W),r;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=[],e[0]=r):r=e[0];let[a,o]=(0,_.useState)(r),[s,c]=(0,_.useState)(!0),[l,u]=(0,_.useState)(null),[f,p]=(0,_.useState)(`half`),[m,h]=(0,_.useState)(`tasks`),[g,v]=(0,_.useState)(i),[y,b]=(0,_.useState)(null),x;e[1]===n?x=e[2]:(x=Object.keys(n).map(U),e[1]=n,e[2]=x);let C=x,w;e[3]!==a||e[4]!==t?(w=t?j(a):a,e[3]=a,e[4]=t,e[5]=w):w=e[5];let T=w,E;e[6]!==C||e[7]!==T?(E=[...C,...T],e[6]=C,e[7]=T,e[8]=E):E=e[8];let D=E,O,k;e[9]===t?(O=e[10],k=e[11]):(O=()=>{t&&o(H)},k=[t],e[9]=t,e[10]=O,e[11]=k),(0,_.useEffect)(O,k);let A;return e[12]!==C||e[13]!==f||e[14]!==l||e[15]!==n||e[16]!==a||e[17]!==y||e[18]!==s||e[19]!==t||e[20]!==g||e[21]!==m||e[22]!==D?(A={selectedThreadId:t,extraChatPanes:n,nonChatWindows:a,setNonChatWindows:o,primaryChatOpen:s,setPrimaryChatOpen:c,expandedWindowId:l,setExpandedWindowId:u,columnWidth:f,setColumnWidth:p,tasksView:m,setTasksView:h,selectedWindowId:g,setSelectedWindowId:v,pendingScrollWindowId:y,setPendingScrollWindowId:b,chatWindows:C,windows:D},e[12]=C,e[13]=f,e[14]=l,e[15]=n,e[16]=a,e[17]=y,e[18]=s,e[19]=t,e[20]=g,e[21]=m,e[22]=D,e[23]=A):A=e[23],A}function H(e){let t=j(e);return t.length===e.length?e:t}function U(e){return{id:e,panelId:`chat`}}function W(e){return e.extraChatPanes}function G(e){return e.selectedThreadId}function K(e,t,n){let r=(0,S.c)(11),i=l(),a;r[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=new Map,r[0]=a):a=r[0];let o=(0,_.useRef)(a),s=(0,_.useRef)(null),c;r[1]===Symbol.for(`react.memo_cache_sentinel`)?(c=(e,t)=>(o.current.set(e,t),()=>{o.current.delete(e)}),r[1]=c):c=r[1];let u=c,d;r[2]!==i||r[3]!==e?(d=t=>{if(t===`primary`){i({type:f.SetFocusedPane,paneId:`primary`}),i({type:f.FocusChatInput});return}if(e.find(e=>e.id===t)?.panelId===`chat`){i({type:f.SetFocusedPane,paneId:t}),i({type:f.FocusChatInput});return}o.current.get(t)?.()},r[2]=i,r[3]=e,r[4]=d):d=r[4];let p=d,m,h;r[5]!==t||r[6]!==p||r[7]!==n?(m=()=>{let e=t??n;if(e===null)return;let r=s.current;s.current=e,!(r===null||r===e)&&p(e)},h=[t,n,p],r[5]=t,r[6]=p,r[7]=n,r[8]=m,r[9]=h):(m=r[8],h=r[9]),(0,_.useEffect)(m,h);let g;return r[10]===Symbol.for(`react.memo_cache_sentinel`)?(g={registerPanelFocus:u,prevActiveWindowRef:s},r[10]=g):g=r[10],g}function q(e){let t=(0,S.c)(57),{dispatch:n,store:r,queryClient:o,selectedThreadId:s,windows:c,chatWindows:l,nonChatWindows:d,primaryChatOpen:p,setPrimaryChatOpen:m,setExpandedWindowId:h,setSelectedWindowId:g,setPendingScrollWindowId:_,setNonChatWindows:v}=e,y;t[0]===g?y=t[1]:(y=e=>{g(e)},t[0]=g,t[1]=y);let b=y,x;t[2]!==h||t[3]!==m||t[4]!==g?(x=e=>{e===`primary`&&m(!0),g(e),h(e)},t[2]=h,t[3]=m,t[4]=g,t[5]=x):x=t[5];let C=x,w;t[6]===h?w=t[7]:(w=()=>{h(null)},t[6]=h,t[7]=w);let T=w,E;t[8]!==p||t[9]!==h||t[10]!==_||t[11]!==m||t[12]!==c.length?(E=e=>{e===`primary`&&m(!0),h(t=>t===null&&c.length>0||t===null&&p&&e!==`primary`?null:e),_(e)},t[8]=p,t[9]=h,t[10]=_,t[11]=m,t[12]=c.length,t[13]=E):E=t[13];let D=E,O;t[14]===_?O=t[15]:(O=()=>{_(null)},t[14]=_,t[15]=O);let k=O,A;t[16]!==n||t[17]!==D||t[18]!==s||t[19]!==v?(A=e=>{let t=a();return e===`chat`?s?(n({type:f.AddChatPane,paneId:t,conversationId:a()}),D(t),t):t:(v(n=>[...n,{id:t,panelId:e}]),D(t),t)},t[16]=n,t[17]=D,t[18]=s,t[19]=v,t[20]=A):A=t[20];let j=A,N;t[21]!==n||t[22]!==p||t[23]!==o||t[24]!==h||t[25]!==v||t[26]!==m||t[27]!==g||t[28]!==r||t[29]!==c?(N=e=>{if(e===`primary`){I(u,r.getState(),o),m(!1);let e=c[0]?.id??null;h(t=>z(t,c,e)),g(t=>B(t,e));return}let t=c.find(t=>t.id===e);t&&(t.panelId===`chat`&&!p&&!c.some(t=>t.panelId===`chat`&&t.id!==e)||(t.panelId===`chat`&&I(e,r.getState(),o),M(e,t,n,v),h(t=>L(t,e,c,p)),g(t=>R(t,e,c,p))))},t[21]=n,t[22]=p,t[23]=o,t[24]=h,t[25]=v,t[26]=m,t[27]=g,t[28]=r,t[29]=c,t[30]=N):N=t[30];let P=N,F;t[31]!==n||t[32]!==o||t[33]!==h||t[34]!==v||t[35]!==m||t[36]!==g||t[37]!==r||t[38]!==c?(F=()=>{h(null),g(i),m(!0);let e=r.getState();for(let t of c)t.panelId===`chat`&&(I(t.id,e,o),n({type:f.RemoveChatPane,paneId:t.id}));v([])},t[31]=n,t[32]=o,t[33]=h,t[34]=v,t[35]=m,t[36]=g,t[37]=r,t[38]=c,t[39]=F):F=t[39];let V=F,H;t[40]!==l||t[41]!==d?(H=e=>e===`chat`?l[0]:d.find(t=>t.panelId===e),t[40]=l,t[41]=d,t[42]=H):H=t[42];let U=H,W;t[43]!==p||t[44]!==c?(W=e=>e===`chat`?p||c.some(J):c.some(t=>t.panelId===e),t[43]=p,t[44]=c,t[45]=W):W=t[45];let G=W,K;return t[46]!==j||t[47]!==k||t[48]!==V||t[49]!==P||t[50]!==T||t[51]!==C||t[52]!==U||t[53]!==G||t[54]!==D||t[55]!==b?(K={selectWindow:b,expandWindow:C,collapseLayout:T,revealWindow:D,clearPendingScrollWindow:k,addWindow:j,closeWindow:P,closeAllWindows:V,findWindowByPanel:U,isPanelOpen:G},t[46]=j,t[47]=k,t[48]=V,t[49]=P,t[50]=T,t[51]=C,t[52]=U,t[53]=G,t[54]=D,t[55]=b,t[56]=K):K=t[56],K}function J(e){return e.panelId===`chat`}function Y(e){let t=(0,S.c)(3),{children:n}=e,r=X(),i;return t[0]!==n||t[1]!==r?(i=(0,v.jsx)(k.Provider,{value:r,children:n}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i}function X(){let e=l(),t=c(),n=b(),{selectedThreadId:r,extraChatPanes:a,nonChatWindows:o,setNonChatWindows:s,primaryChatOpen:u,setPrimaryChatOpen:d,expandedWindowId:f,setExpandedWindowId:p,columnWidth:m,setColumnWidth:h,tasksView:g,setTasksView:v,selectedWindowId:y,setSelectedWindowId:x,pendingScrollWindowId:S,setPendingScrollWindowId:C,chatWindows:T,windows:E}=V(),{registerPanelFocus:O,prevActiveWindowRef:k}=K(E,f,y);D({nonChatWindows:o,expandedWindowId:f,selectedWindowId:y,onReset:(0,_.useCallback)(()=>{k.current=i,s([]),d(!0),p(null),x(i),C(null)},[]),onHydrate:(0,_.useCallback)(e=>{let n=t.getState().selectedThreadId,r=w(e,n),a=n?j(r.nonChatWindows):r.nonChatWindows,o=new Set(r.nonChatWindows.filter(e=>e.panelId===`tasks`).map(e=>e.id)),c=n&&r.expandedWindowId&&o.has(r.expandedWindowId)?i:r.expandedWindowId,l=n&&o.has(r.selectedWindowId)?i:r.selectedWindowId;k.current=c??l,s(a),p(c),x(l),C(null)},[t])}),A({windows:E,extraChatPanes:a,primaryChatOpen:u,expandedWindowId:f,selectedWindowId:y,setExpandedWindowId:p,setSelectedWindowId:x});let{selectWindow:M,expandWindow:N,collapseLayout:P,revealWindow:F,clearPendingScrollWindow:I,addWindow:L,closeWindow:R,closeAllWindows:z,findWindowByPanel:B,isPanelOpen:H}=q({dispatch:e,store:t,queryClient:n,selectedThreadId:r,windows:E,chatWindows:T,nonChatWindows:o,primaryChatOpen:u,setPrimaryChatOpen:d,setExpandedWindowId:p,setSelectedWindowId:x,setPendingScrollWindowId:C,setNonChatWindows:s}),U=E.length>0,W=f!==null;return(0,_.useMemo)(()=>({windows:E,addWindow:L,closeWindow:R,closeAllWindows:z,isPrimaryChatOpen:u,isPanelOpen:H,findWindowByPanel:B,hasOpenWindows:U,isLayoutExpanded:W,expandedWindowId:f,expandWindow:N,collapseLayout:P,columnWidth:m,setColumnWidth:h,selectedWindowId:y,selectWindow:M,revealWindow:F,pendingScrollWindowId:S,clearPendingScrollWindow:I,tasksView:g,setTasksView:v,registerPanelFocus:O}),[E,L,R,z,u,H,B,U,W,f,N,P,m,h,y,M,F,S,I,g,v,O])}function Z(){let e=(0,_.useContext)(k);if(!e)throw Error(`useChatDock must be used within a ChatDockProvider`);return e}export{b as a,x as i,Z as n,O as r,Y as t};
|
|
@@ -1 +0,0 @@
|
|
|
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{a as i,r as a}from"./chat-dock-context-DhO-jYMh.js";import{Lt as o,R as s}from"./dist-DZtmmQ-F.js";import{i as c,t as l}from"./utils-BCj_kT9l.js";import{Xt as u,d,it as ee}from"./lucide-react-CNNzKD4G.js";import{t as f}from"./button-DhxraVUW.js";import{Pt as p,Zn as m,bi as h,ci as g,l as _,zi as v}from"./api-B_ZIptgC.js";import{t as y}from"./progress-indicator-C7Kj9U3t.js";import{n as te}from"./use-toast-xpb5jNtN.js";import{Ar as b,Ct as x,Un as S,_r as ne,fr as re,gr as ie,hr as ae,jt as oe,mr as C,pr as w,tn as T,xr as E}from"./index-DdJcjvu2.js";import{t as se}from"./delete-confirm-dialog-Ciwqi6ts.js";import{i as D,r as O}from"./table-DCmeRDBK.js";var k=t(),A=e(n(),1),j=s(`app.use-restore-chat-to-chats`);function M(){let e=i();return(0,A.useCallback)(async function(t,n){try{await m(t,n)}catch(e){j.error(`Failed to restore chat to the Chats group`,{error:e,threadId:t,conversationId:n})}finally{e.invalidateQueries({queryKey:a.conversations.unreadAll()})}},[e])}var N=25;function P(){let e=(0,k.c)(12),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={queryKey:a.conversations.recent(),queryFn:F,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=b(t),r;e[1]===n.data?.pages?r=e[2]:(r=n.data?.pages.flatMap(function(e){return e.conversations})??[],e[1]=n.data?.pages,e[2]=r);let i=r,o=n.data?.pages[0]?.total??0,s;return e[3]!==i||e[4]!==n.error||e[5]!==n.fetchNextPage||e[6]!==n.hasNextPage||e[7]!==n.isFetchingNextPage||e[8]!==n.isPending||e[9]!==n.refetch||e[10]!==o?(s={conversations:i,total:o,isInitialLoading:n.isPending,isLoadingMore:n.isFetchingNextPage,error:n.error,hasNextPage:n.hasNextPage,fetchNextPage:n.fetchNextPage,refetch:n.refetch},e[3]=i,e[4]=n.error,e[5]=n.fetchNextPage,e[6]=n.hasNextPage,e[7]=n.isFetchingNextPage,e[8]=n.isPending,e[9]=n.refetch,e[10]=o,e[11]=s):s=e[11],s}function F(e){let{pageParam:t}=e;return p(N,t)}var I=[{id:`turns`,label:`Turns`},{id:`inputTokens`,label:`Input Tokens`},{id:`outputTokens`,label:`Output Tokens`},{id:`model`,label:`Model`},{id:`branch`,label:`Branch`}],L=new Set(I.map(function(e){return e.id}));function R(e){if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.filter(function(e){return typeof e==`string`&&L.has(e)}):[]}catch{return[]}}function z(){return R(h(g.HISTORY_COLUMNS))}function B(){let e=(0,k.c)(6),[t,n]=(0,A.useState)(z),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 v(g.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 V=r(),H=36,U=3,W=`table-fixed`,G=`h-9 w-48 bg-transparent py-2`,K=`h-9 bg-transparent py-2`,q=`h-9 w-20 bg-transparent py-2 text-right`,J=`h-9 w-28 bg-transparent py-2 text-right`,Y=`h-9 w-28 bg-transparent py-2 text-right`,X=`h-9 w-40 bg-transparent py-2`,Z=`h-9 w-32 bg-transparent py-2`,ce=`h-9 w-24 bg-transparent py-2 text-right`,le=l(o.bodyMuted,`w-48 truncate py-1.5`),ue=`py-1.5`,Q=l(o.bodyMuted,`w-20 py-1.5 text-right tabular-nums`),de=l(o.bodyMuted,`w-28 py-1.5 text-right tabular-nums`),fe=l(o.bodyMuted,`w-28 py-1.5 text-right tabular-nums`),pe=l(o.bodyMuted,`w-40 truncate py-1.5`),$=l(o.bodyMuted,`w-32 truncate py-1.5`),me=l(o.bodyMuted,`w-24 py-1.5 text-right tabular-nums`);function he(e){let t=(0,k.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,V.jsx)(`table`,{...i,style:a,className:l(`w-full caption-bottom select-text`,W,o.body,i.className)}),t[0]=e,t[1]=n}else n=t[1];return n}function ge(e){let t=(0,k.c)(5),n;t[0]===e.className?n=t[1]:(n=l(`hidden`,e.className),t[0]=e.className,t[1]=n);let r;return t[2]!==e||t[3]!==n?(r=(0,V.jsx)(`thead`,{...e,className:n}),t[2]=e,t[3]=n,t[4]=r):r=t[4],r}function _e(e){let t=(0,k.c)(5),n;t[0]===e.className?n=t[1]:(n=l(`[&_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,V.jsx)(`tbody`,{...e,className:n}),t[2]=e,t[3]=n,t[4]=r):r=t[4],r}function ve(e){let t=(0,k.c)(5),n;t[0]===e.className?n=t[1]:(n=l(`frosted-scrollbar`,e.className),t[0]=e.className,t[1]=n);let r;return t[2]!==e||t[3]!==n?(r=(0,V.jsx)(`div`,{...e,className:n}),t[2]=e,t[3]=n,t[4]=r):r=t[4],r}function ye(e){return function(){return(0,V.jsx)(`tr`,{children:(0,V.jsx)(`td`,{colSpan:e,className:`py-3 text-center`,children:(0,V.jsx)(y,{centered:!0,label:`Loading more…`,size:`sm`})})})}}function be(e){switch(e){case`turns`:return(0,V.jsx)(D,{className:q,children:`Turns`},e);case`inputTokens`:return(0,V.jsx)(D,{className:J,children:`Input Tokens`},e);case`outputTokens`:return(0,V.jsx)(D,{className:Y,children:`Output Tokens`},e);case`model`:return(0,V.jsx)(D,{className:X,children:`Model`},e);case`branch`:return(0,V.jsx)(D,{className:Z,children:`Branch`},e)}}function xe(e,t){switch(t){case`turns`:return(0,V.jsx)(O,{className:Q,children:e.turnCount.toLocaleString()},t);case`inputTokens`:return(0,V.jsx)(O,{className:de,children:e.inputTokens.toLocaleString()},t);case`outputTokens`:return(0,V.jsx)(O,{className:fe,children:e.outputTokens.toLocaleString()},t);case`model`:return(0,V.jsx)(O,{className:pe,children:e.model??`—`},t);case`branch`:return(0,V.jsx)(O,{className:$,children:e.branch},t)}}function Se(){let{openConversation:e}=S(),t=M(),{toast:n}=te(),[r,i]=(0,A.useState)(!1),[a,s]=(0,A.useState)(!1),{visibleColumns:p,isColumnVisible:m,setColumnVisible:h}=B(),{conversations:g,isInitialLoading:v,isLoadingMore:b,error:k,hasNextPage:j,fetchNextPage:N,refetch:F}=P(),L=U+p.length,R=(0,A.useCallback)(async function(n){await e(n).catch(()=>!1)&&await t(n.threadId,n.conversationId)},[e,t]),z=(0,A.useCallback)(()=>{j&&!b&&N()},[N,j,b]);async function q(){s(!0);try{await _(),await F(),i(!1),n({title:`Conversation history cleared`})}catch(e){n({title:`Failed to clear conversation history`,description:e instanceof Error?e.message:String(e),variant:`destructive`})}finally{s(!1)}}let J=(0,A.useMemo)(function(){return function({item:e,...t}){return(0,V.jsx)(`tr`,{...t,className:l(`cursor-pointer border-0 transition-colors hover:bg-muted/50`,t.className),onClick:()=>{e&&R(e)}})}},[R]),Y=(0,A.useMemo)(function(){return{Table:he,TableHead:ge,TableBody:_e,TableRow:J,Scroller:ve,Footer:b?ye(L):void 0}},[J,L,b]);function X(e,t){return(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(O,{className:le,children:t.projectName}),(0,V.jsx)(O,{className:ue,children:(0,V.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,V.jsx)(ee,{className:`h-4 w-4 shrink-0 text-muted-foreground`}),(0,V.jsx)(`span`,{className:l(o.body,`truncate`),children:t.title})]})}),I.map(function(e){return m(e.id)?xe(t,e.id):null}),(0,V.jsx)(O,{className:me,"aria-label":`Last updated ${c(t.lastMessageAt)} ago`,children:c(t.lastMessageAt)})]})}function Z(){return(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(D,{className:G,children:`Project`}),(0,V.jsx)(D,{className:K,children:`Chat`}),I.map(function(e){return m(e.id)?be(e.id):null}),(0,V.jsx)(D,{className:ce,children:`Updated`})]})}let Q=(0,V.jsx)(`table`,{className:l(`w-full caption-bottom`,W,o.body),children:(0,V.jsx)(`thead`,{className:`[&_tr]:border-b [&_tr]:border-table-border`,children:(0,V.jsx)(`tr`,{children:Z()})})});return(0,V.jsxs)(`div`,{className:`flex h-full min-h-0 w-full min-w-0 flex-1 flex-col`,children:[(0,V.jsxs)(oe,{className:`flex w-full max-w-none min-w-0 min-h-0 flex-1 flex-col pb-0 pt-0`,children:[(0,V.jsx)(x,{title:`History`,description:`Browse recent chats across all projects.`,tableHeader:g.length>0?Q:void 0,action:(0,V.jsxs)(re,{children:[(0,V.jsx)(E,{asChild:!0,children:(0,V.jsx)(f,{type:`button`,variant:`ghost`,size:`icon`,className:`h-8 w-8`,"aria-label":`Choose columns`,children:(0,V.jsx)(u,{className:`h-4 w-4`})})}),(0,V.jsxs)(C,{align:`end`,className:`w-48`,children:[(0,V.jsx)(ie,{className:o.body,children:`Columns`}),I.map(function(e){return(0,V.jsx)(w,{checked:m(e.id),onCheckedChange:t=>{h(e.id,t===!0)},onSelect:e=>{e.preventDefault()},children:e.label},e.id)}),(0,V.jsx)(ne,{}),(0,V.jsxs)(ae,{className:l(o.body,`gap-2 text-destructive focus:text-destructive`),disabled:g.length===0,onSelect:()=>i(!0),children:[(0,V.jsx)(d,{className:`h-4 w-4`}),`Clear history`]})]})]})}),(0,V.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:v?(0,V.jsx)(y,{centered:!0,label:`Loading conversation history...`,size:`lg`}):k?(0,V.jsx)(`div`,{className:`flex h-full items-center justify-center p-6`,children:(0,V.jsxs)(`div`,{className:`max-w-md space-y-4 text-center`,children:[(0,V.jsx)(`p`,{className:o.body,children:k instanceof Error?k.message:`Failed to load conversation history`}),(0,V.jsx)(f,{onClick:()=>void F(),children:`Try again`})]})}):g.length===0?(0,V.jsx)(`div`,{className:`flex h-full items-center justify-center p-6`,children:(0,V.jsxs)(`div`,{className:`max-w-md space-y-2 text-center`,children:[(0,V.jsx)(`h3`,{className:o.emptyStateTitle,children:`No history`}),(0,V.jsx)(`p`,{className:o.bodyMuted,children:`No conversations found yet.`})]})}):(0,V.jsx)(T,{style:{height:`100%`},data:g,computeItemKey:(e,t)=>t.conversationId,itemContent:X,endReached:z,defaultItemHeight:H,increaseViewportBy:H*5,components:Y})})]}),(0,V.jsx)(se,{open:r,onOpenChange:i,title:`Clear conversation history?`,description:`This permanently clears conversation history across all projects. This action cannot be undone.`,onConfirm:()=>void q(),confirming:a,confirmLabel:`Clear`,confirmingLabel:`Clearing...`})]})}export{Se as default};
|
|
@@ -1,2 +0,0 @@
|
|
|
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{Lt as i,R as a,dn as o,fn as s}from"./dist-DZtmmQ-F.js";import{t as c}from"./utils-BCj_kT9l.js";import{Jt as l}from"./lucide-react-CNNzKD4G.js";import{t as u}from"./button-DhxraVUW.js";import{Ai as d,Ci as f,It as p,Ji as m,Jt as h,Pi as g,Vi as _,mi as v,o as y}from"./api-B_ZIptgC.js";import{n as b}from"./scroll-area-BQ9bdsVQ.js";import{Cr as x,Dr as S,Er as C,Or as w,Sr as T,Tr as E,kr as D,wr as O,y as k}from"./index-DdJcjvu2.js";import{n as A,t as j}from"./toggle-group-Dl5P_F6a.js";import{r as M}from"./commit-method-fields-C7Du43jy.js";var N=e(n(),1),P=t(),F={"angular-standalone":`logo-angular.svg`,"custom-angular":`logo-angular.svg`,react:`logo-react.svg`,"vite-react":`logo-react.svg`,vue:`logo-vue.svg`,"vite-vue":`logo-vue.svg`,"custom-svelte":`logo-svelte.svg`,"custom-ionic-svelte":`logo-svelte.svg`,"vite-svelte":`logo-svelte.svg`,"vite-solid":`logo-solid.svg`,astro:`logo-astro.svg`,nextjs:`logo-nextjs.svg`,nuxt:`logo-nuxt.svg`,"vite-qwik":`logo-qwik.svg`,"vite-preact":`logo-preact.svg`,"vite-lit":`logo-lit.svg`,"vite-web":`logo-web.svg`,"tanstack-start":`logo-vite.svg`,waku:`logo-waku.svg`,hydrogen:`logo-hydrogen.svg`,plugin:`logo-capacitor.svg`};function I(e){return e.trim().toLowerCase().replace(/[\\/]+/g,` `).replace(/[^a-z0-9._ -]+/g,``).replace(/\s+/g,`-`).replace(/-+/g,`-`).replace(/^-|-$/g,``)}function ee(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 te=a(`app.create-project-dialog.ui`);async function L(){try{if(await y())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 h();return t?await y()?!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 te.error(`Vite Plus check/install failed:`,e),!0}}function ne(e){let t=(0,P.c)(38),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=[],t[0]=n):n=t[0];let[r,i]=(0,N.useState)(n),[a,o]=(0,N.useState)(!1),s=Array.isArray(r)&&r.length>0,c;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(c=()=>{o(!0),p().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,h;t[5]!==u||t[6]!==f?(h={typeNames:f,templatesByTypeName:u},t[5]=u,t[6]=f,t[7]=h):h=t[7];let{typeNames:g,templatesByTypeName:_}=h,v;if(t[8]!==_){v={};for(let e of Object.keys(_)){let t=_[e]??[];if(t.length===0)continue;let n=t.find(H),r=t.filter(V),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(B),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(z),n=e.filter(R);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):void 0,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,N.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 R(e){return e.variationName!==`Starter`}function z(e){return e.variationName===`Starter`}function B(e){return e.variationName===`Starter`}function V(e){return e.variationName!==`Starter`}function H(e){return e.variationName===`Starter`}var U=r();function W(e){let t=(0,P.c)(10),{gitUrl:n,onGitUrlChange:r,canProceed:i,onNext:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,U.jsx)(T,{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,U.jsx)(b,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,U.jsx)(`div`,{className:`px-6 py-4`,children:(0,U.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[o,(0,U.jsx)(x,{id:`gitUrl`,placeholder:`https://github.com/user/repo.git`,value:n,onChange:s,onKeyDown:c,spellCheck:!1,autoCorrect:`off`,autoCapitalize:`off`,autoFocus:!0})]})})}),t[6]=n,t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function G(e){let t=(0,P.c)(11),{templatesLoading:n,typeNames:r,templatesByTypeName:a,selectedTypeName:o,loadedImages:s,onImageLoad:l,onSelectType:u,onSelectTypeAndAdvance:d}=e,f;t[0]!==s||t[1]!==l||t[2]!==u||t[3]!==d||t[4]!==o||t[5]!==a||t[6]!==n||t[7]!==r?(f=n?(0,U.jsx)(`p`,{className:c(i.bodyMuted,`col-span-full p-4`),children:`Loading…`}):r.map(e=>{let t=a[e]?.[0]?.type,n=t?F[t]:null,r=o===e;return(0,U.jsxs)(`button`,{type:`button`,onClick:()=>u(e),onDoubleClick:()=>d(e),className:c(`group flex flex-col items-center gap-0 rounded-lg px-1 py-1 text-center transition-colors`,r?`text-accent-foreground`:`text-foreground`),children:[(0,U.jsx)(`div`,{className:c(`relative flex size-20 shrink-0 items-center justify-center overflow-hidden rounded-xl bg-[hsl(0_0%_35%)] bg-gradient-to-br from-[hsl(0_0%_35%)] to-[hsl(0_0%_25%)] text-white/70 transition-transform can-hover:group-hover:scale-[1.03]`,r&&`ring-[3px] ring-brand`),children:n?(0,U.jsx)(`img`,{src:`/template-types/${n}`,alt:``,className:c(`relative size-8 shrink-0 transition-opacity duration-300`,s.has(n)?`opacity-100`:`opacity-0`),onLoad:()=>l(n),"aria-hidden":!0}):null}),(0,U.jsx)(`span`,{className:c(i.compact,`w-full truncate pt-1 font-medium`),children:e})]},e)}),t[0]=s,t[1]=l,t[2]=u,t[3]=d,t[4]=o,t[5]=a,t[6]=n,t[7]=r,t[8]=f):f=t[8];let p;return t[9]===f?p=t[10]:(p=(0,U.jsx)(`div`,{className:`flex flex-col flex-1 min-h-0 px-6 pb-4`,children:(0,U.jsx)(`div`,{className:`flex-1 min-h-0 flex flex-col py-2`,children:(0,U.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto -mx-1`,children:(0,U.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 K(e){let t=(0,P.c)(17),{projectName:n,onProjectNameChange:r,canSubmit:a,onSubmit:o}=e,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,U.jsx)(T,{htmlFor:`folderProjectName`,children:`Project Name`}),t[0]=s):s=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]!==a||t[4]!==o?(l=e=>e.key===`Enter`&&a&&o(),t[3]=a,t[4]=o,t[5]=l):l=t[5];let u;t[6]!==n||t[7]!==c||t[8]!==l?(u=(0,U.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[s,(0,U.jsx)(x,{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=I(n)||`project-name`,t[10]=n,t[11]=d);let f;t[12]===d?f=t[13]:(f=(0,U.jsxs)(`p`,{className:i.bodyMuted,children:[`Folder name: `,d]}),t[12]=d,t[13]=f);let p;return t[14]!==u||t[15]!==f?(p=(0,U.jsx)(b,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,U.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 q(e){let t=(0,P.c)(33),{projectNameDisplay:n,onProjectNameChange:r,variations:a,effectiveTemplateId:s,onTemplateIdChange:c,selectedTemplate:u,packageManager:d,onPackageManagerChange:f,commitMethod:p,onCommitMethodChange:m}=e,h;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,U.jsx)(T,{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,U.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[h,(0,U.jsx)(x,{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]!==s||t[7]!==c||t[8]!==a?(v=a.length>1&&(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(T,{children:`Variation`}),(0,U.jsx)(j,{type:`single`,value:s,onValueChange:e=>e&&c(e),variant:`outline`,className:`flex flex-wrap gap-0 justify-start [&>button]:rounded-none [&>button:first-child]:rounded-l-md [&>button:last-child]:rounded-r-md [&>button:not(:first-child)]:-ml-px`,children:a.map(Y)})]}),t[6]=s,t[7]=c,t[8]=a,t[9]=v):v=t[9];let y=u?.description??a[0]?.description??``,S;t[10]===u?S=t[11]:(S=u?.url&&(0,U.jsxs)(U.Fragment,{children:[` `,(0,U.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,U.jsx)(l,{className:`h-3 w-3`})]})]}),t[10]=u,t[11]=S);let C;t[12]!==y||t[13]!==S?(C=(0,U.jsxs)(`p`,{className:i.bodyMuted,children:[y,S]}),t[12]=y,t[13]=S,t[14]=C):C=t[14];let w;t[15]!==v||t[16]!==C?(w=(0,U.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[v,C]}),t[15]=v,t[16]=C,t[17]=w):w=t[17];let E;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,U.jsx)(T,{children:`Package manager`}),t[18]=E):E=t[18];let D;t[19]===f?D=t[20]:(D=e=>{e&&f(e)},t[19]=f,t[20]=D);let O;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(O=Object.values(o).map(J),t[21]=O):O=t[21];let k;t[22]!==d||t[23]!==D?(k=(0,U.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[E,(0,U.jsx)(j,{type:`single`,value:d,onValueChange:D,variant:`outline`,className:`flex flex-wrap gap-0 justify-start [&>button]:rounded-none [&>button:first-child]:rounded-l-md [&>button:last-child]:rounded-r-md [&>button:not(:first-child)]:-ml-px`,children:O})]}),t[22]=d,t[23]=D,t[24]=k):k=t[24];let A;t[25]!==p||t[26]!==m?(A=(0,U.jsx)(M,{commitMethod:p,onCommitMethodChange:m}),t[25]=p,t[26]=m,t[27]=A):A=t[27];let N;return t[28]!==k||t[29]!==A||t[30]!==_||t[31]!==w?(N=(0,U.jsx)(b,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,U.jsxs)(`div`,{className:`px-6 py-4 flex flex-col gap-6`,children:[_,w,k,A]})}),t[28]=k,t[29]=A,t[30]=_,t[31]=w,t[32]=N):N=t[32],N}function J(e){return(0,U.jsx)(A,{value:e.id,className:i.body,children:e.label},e.id)}function Y(e){return(0,U.jsx)(A,{value:e.id,className:i.body,children:e.variationName},e.id)}function X(e){return e===`folder`?3:2}function Z(e){return e===`folder`?{projectName:``,projectNameUserEdited:!1,loadedImages:new Set}:{projectName:`My App`,projectNameUserEdited:!1,loadedImages:new Set}}function Q(e){let t=(0,P.c)(5),{canGoToStep3:n,gitUrl:r,onGitUrlChange:i,onNext:a}=e,o;return t[0]!==n||t[1]!==r||t[2]!==i||t[3]!==a?(o=(0,U.jsx)(W,{gitUrl:r,onGitUrlChange:i,canProceed:n,onNext:a}),t[0]=n,t[1]=r,t[2]=i,t[3]=a,t[4]=o):o=t[4],o}function $(e){let t=(0,P.c)(9),{templatesLoading:n,typeNames:r,templatesByTypeName:i,selectedTypeNameFromEffective:a,loadedImages:o,onImageLoad:s,onSelectType:c,onSelectTypeAndAdvance:l}=e,u;return t[0]!==o||t[1]!==s||t[2]!==c||t[3]!==l||t[4]!==a||t[5]!==i||t[6]!==n||t[7]!==r?(u=(0,U.jsx)(G,{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 re(e){let t=(0,P.c)(5),{canGoToStep3:n,projectName:r,onProjectNameChange:i,onSubmitFolder:a}=e,o;return t[0]!==n||t[1]!==i||t[2]!==a||t[3]!==r?(o=(0,U.jsx)(K,{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 ie(e){let t=(0,P.c)(11),{projectNameDisplay:n,onProjectNameChange:r,variations:i,effectiveTemplateId:a,onTemplateIdChange:o,selectedTemplate:s,packageManager:c,onPackageManagerChange:l,commitMethod:u,onCommitMethodChange:d}=e,f;return t[0]!==u||t[1]!==a||t[2]!==d||t[3]!==l||t[4]!==r||t[5]!==o||t[6]!==c||t[7]!==n||t[8]!==s||t[9]!==i?(f=(0,U.jsx)(q,{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 ae(e){let t=(0,P.c)(3),{commitMethod:n,onCommitMethodChange:r}=e,i;return t[0]!==n||t[1]!==r?(i=(0,U.jsx)(b,{className:`min-h-0 flex-1 overflow-hidden`,children:(0,U.jsx)(`div`,{className:`flex flex-col gap-6 px-6 py-4`,children:(0,U.jsx)(M,{commitMethod:n,onCommitMethodChange:r})})}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i}function oe(e){let t=(0,P.c)(33),{step:n,mode:r,canGoToStep3:i,gitUrl:a,onGitUrlChange:o,onNext:s,templatesLoading:c,typeNames:l,templatesByTypeName:u,selectedTypeNameFromEffective:d,loadedImages:f,onImageLoad:p,onSelectType:m,onSelectTypeAndAdvance:h,projectName:g,onProjectNameChange:_,onSubmitFolder:v,projectNameDisplay:y,variations:b,effectiveTemplateId:x,onTemplateIdChange:S,selectedTemplate:C,packageManager:w,onPackageManagerChange:T,commitMethod:E,onCommitMethodChange:D}=e;switch(`${n}:${r}`){case`2:clone`:{let e;return t[0]!==i||t[1]!==a||t[2]!==o||t[3]!==s?(e=(0,U.jsx)(Q,{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,U.jsx)($,{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,U.jsx)(re,{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,U.jsx)(ie,{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,U.jsx)(ae,{commitMethod:E,onCommitMethodChange:D}),t[30]=E,t[31]=D,t[32]=e):e=t[32],e}}}function se(e){let t=(0,P.c)(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,U.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,U.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,U.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,U.jsx)(u,{onClick:f,disabled:!a.trim()||!I(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,U.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,U.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,U.jsxs)(S,{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 ce(e,t,n){return e?t:n?`My ${n} App`:`My App`}function le(e,t,n,r){return e===`clone`?t.trim().length>0:e===`folder`?n.trim().length>0&&!!I(n):r!==null}function ue(e,t){return e===`folder`?1:t-1}function de(e,t,n,r){return e===`folder`?r===1:r===1?t>2:t>=3||t===2&&n}function fe(e,t){return e===2||t===`folder`}function pe(e){e.onDialogDismissed?.(),e.setMode(`clone`),e.setDialogStep(2),e.setGitUrl(``),e.setProjectName(`My App`),e.setProjectNameUserEdited(!1),e.setLoadedImages(new Set),e.onOpenChange(!1)}function me(e){e.setDialogStep(2),e.onOpenChange(!1),e.setMode(`clone`)}async function he(e){if(!e.projectNameDisplay.trim()||!e.effectiveTemplateId||!I(e.projectNameDisplay))return;if(e.selectedTemplate?.variation===`vite-plus`){e.setIsCheckingVp(!0);let t=await L();if(e.setIsCheckingVp(!1),!t)return}let t=e.projectNameDisplay.trim();e.setProjectName(``),e.setProjectNameUserEdited(!1),me(e),e.onSubmitWebApp(t,e.effectiveTemplateId,e.packageManager)}function ge(e){function t(){pe(e)}function n(){if(fe(e.dialogStep,e.mode)){t();return}e.setDialogStep(2)}function r(t){e.setCommitMethod(t),g(t)}function i(){if(!e.gitUrl.trim())return;let t=e.gitUrl.trim();e.setGitUrl(``),me(e),e.onSubmitClone(t,e.commitMethod).catch(()=>{})}async function a(){await he(e)}function o(){let t=e.projectName.trim();!t||!I(t)||(e.setProjectName(``),e.setProjectNameUserEdited(!1),me(e),e.onSubmitFolder(t))}function s(t){return de(e.mode,e.dialogStep,e.canGoToStep3,t)}function c(t){e.mode!==`folder`&&e.setDialogStep(t===1?2:3)}function l(t){e.setProjectName(t),e.setProjectNameUserEdited(!0)}function u(t){e.setTemplateId(e.firstVariationIdByTypeName[t]??``)}function d(t){e.setTemplateId(e.firstVariationIdByTypeName[t]??``),e.setDialogStep(3)}function f(t){e.setPackageManager(t),_(t)}function p(){e.setDialogStep(3)}return{resetAndClose:t,handleBack:n,handleCommitMethodChange:r,handleSubmitClone:i,handleSubmitWebApp:a,handleSubmitFolder:o,canGoToFlowStep:s,goToFlowStep:c,handleProjectNameChange:l,handleSelectType:u,handleSelectTypeAndAdvance:d,handlePackageManagerChange:f,handleNext:p}}function _e(e,t,n,r){let i=Z(e);r.setMode(e),r.setDialogStep(X(e)),r.setGitUrl(``),r.setProjectName(i.projectName),r.setProjectNameUserEdited(i.projectNameUserEdited),r.setLoadedImages(i.loadedImages),e===`webapp`&&!t&&n()}function ve(e,t,n,r,i){let a=(0,P.c)(7),o,s;a[0]!==n||a[1]!==t||a[2]!==r||a[3]!==e||a[4]!==i?(o=()=>{!e||!t||_e(t,n,r,i)},s=[e,t,n,r,i],a[0]=n,a[1]=t,a[2]=r,a[3]=e,a[4]=i,a[5]=o,a[6]=s):(o=a[5],s=a[6]),(0,N.useEffect)(o,s)}function ye(e){let t=(0,P.c)(8),[n,r]=(0,N.useState)(e),i;t[0]===e?i=t[1]:(i=X(e),t[0]=e,t[1]=i);let[a,o]=(0,N.useState)(i),[c,l]=(0,N.useState)(``),u;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=v(s.PullRequest),t[2]=u):u=t[2];let[d,f]=(0,N.useState)(u),p;return t[3]!==d||t[4]!==a||t[5]!==c||t[6]!==n?(p={mode:n,setMode:r,dialogStep:a,setDialogStep:o,gitUrl:c,setGitUrl:l,commitMethod:d,setCommitMethod:f},t[3]=d,t[4]=a,t[5]=c,t[6]=n,t[7]=p):p=t[7],p}function be(){let e=(0,P.c)(10),[t,n]=(0,N.useState)(`My App`),[r,i]=(0,N.useState)(!1),a;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=d(),e[0]=a):a=e[0];let[o,s]=(0,N.useState)(a),c;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(c=f(),e[1]=c):c=e[1];let[l,u]=(0,N.useState)(c),[p,m]=(0,N.useState)(!1),h;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(h=new Set,e[2]=h):h=e[2];let[g,_]=(0,N.useState)(h),v;return e[3]!==p||e[4]!==g||e[5]!==l||e[6]!==t||e[7]!==r||e[8]!==o?(v={projectName:t,setProjectName:n,projectNameUserEdited:r,setProjectNameUserEdited:i,templateId:o,setTemplateId:s,packageManager:l,setPackageManager:u,isCheckingVp:p,setIsCheckingVp:m,loadedImages:g,setLoadedImages:_},e[3]=p,e[4]=g,e[5]=l,e[6]=t,e[7]=r,e[8]=o,e[9]=v):v=e[9],v}function xe({open:e,onOpenChange:t,onDialogDismissed:n,initialMode:r,onSubmitClone:i,onSubmitWebApp:a,onSubmitFolder:o}){let{mode:s,setMode:c,dialogStep:l,setDialogStep:u,gitUrl:d,setGitUrl:f,commitMethod:p,setCommitMethod:m}=ye(r??`clone`),{projectName:h,setProjectName:g,projectNameUserEdited:_,setProjectNameUserEdited:v,templateId:y,setTemplateId:b,packageManager:x,setPackageManager:S,isCheckingVp:C,setIsCheckingVp:w,loadedImages:T,setLoadedImages:E}=be(),D=(0,N.useCallback)(e=>{E(t=>new Set(t).add(e))},[]),{templatesLoading:O,hasTemplates:k,loadTemplates:A,typeNames:j,templatesByTypeName:M,firstVariationIdByTypeName:P,effectiveTemplateId:F,selectedTypeNameFromEffective:I,variations:te,selectedTemplate:L}=ne(y);ve(e,r,k,A,(0,N.useMemo)(()=>({setMode:c,setDialogStep:u,setGitUrl:f,setProjectName:g,setProjectNameUserEdited:v,setLoadedImages:E}),[]));let R=(0,N.useMemo)(()=>ce(_,h,I),[_,h,I]),z=le(s,d,h,I),B=l,V=ue(s,l),H=ee(B,s,I);return{open:e,showStepIndicator:s!==`folder`,flowStep:V,stepHeading:H,step:B,mode:s,canGoToStep3:z,gitUrl:d,setGitUrl:f,templatesLoading:O,typeNames:j,templatesByTypeName:M,selectedTypeNameFromEffective:I,loadedImages:T,handleImageLoad:D,projectName:h,projectNameDisplay:R,variations:te,effectiveTemplateId:F,setTemplateId:b,selectedTemplate:L,packageManager:x,commitMethod:p,isCheckingVp:C,...ge({mode:s,dialogStep:l,gitUrl:d,commitMethod:p,projectName:h,projectNameDisplay:R,packageManager:x,canGoToStep3:z,firstVariationIdByTypeName:P,effectiveTemplateId:F,selectedTemplate:L,onOpenChange:t,onDialogDismissed:n,onSubmitClone:i,onSubmitWebApp:a,onSubmitFolder:o,setMode:c,setDialogStep:u,setGitUrl:f,setCommitMethod:m,setProjectName:g,setProjectNameUserEdited:v,setTemplateId:b,setPackageManager:S,setIsCheckingVp:w,setLoadedImages:E})}}function Se(e){let t=(0,P.c)(66),{open:n,resetAndClose:r,showStepIndicator:i,flowStep:a,canGoToFlowStep:o,goToFlowStep:s,stepHeading:c,step:l,mode:u,canGoToStep3:d,gitUrl:f,setGitUrl:p,handleNext:m,templatesLoading:h,typeNames:g,templatesByTypeName:_,selectedTypeNameFromEffective:v,loadedImages:y,handleImageLoad:b,handleSelectType:x,handleSelectTypeAndAdvance:S,projectName:T,handleProjectNameChange:A,handleSubmitFolder:j,projectNameDisplay:M,variations:N,effectiveTemplateId:F,setTemplateId:I,selectedTemplate:ee,packageManager:te,handlePackageManagerChange:L,commitMethod:ne,handleCommitMethodChange:R,isCheckingVp:z,handleBack:B,handleSubmitClone:V,handleSubmitWebApp:H}=xe(e),W;t[0]===r?W=t[1]:(W=e=>!e&&r(),t[0]=r,t[1]=W);let G;t[2]!==o||t[3]!==a||t[4]!==s||t[5]!==i?(G=i?(0,U.jsx)(k,{currentStep:a,canGoToStep:o,onGoToStep:s}):null,t[2]=o,t[3]=a,t[4]=s,t[5]=i,t[6]=G):G=t[6];let K;t[7]===c.title?K=t[8]:(K=(0,U.jsx)(D,{children:c.title}),t[7]=c.title,t[8]=K);let q;t[9]===c.description?q=t[10]:(q=(0,U.jsx)(C,{children:c.description}),t[9]=c.description,t[10]=q);let J;t[11]!==K||t[12]!==q?(J=(0,U.jsxs)(w,{children:[K,q]}),t[11]=K,t[12]=q,t[13]=J):J=t[13];let Y;t[14]!==G||t[15]!==J?(Y=(0,U.jsxs)(`div`,{className:`px-6 pb-2 pt-6`,children:[G,J]}),t[14]=G,t[15]=J,t[16]=Y):Y=t[16];let X;t[17]!==d||t[18]!==ne||t[19]!==F||t[20]!==f||t[21]!==R||t[22]!==b||t[23]!==m||t[24]!==L||t[25]!==A||t[26]!==x||t[27]!==S||t[28]!==j||t[29]!==y||t[30]!==u||t[31]!==te||t[32]!==T||t[33]!==M||t[34]!==ee||t[35]!==v||t[36]!==p||t[37]!==I||t[38]!==l||t[39]!==_||t[40]!==h||t[41]!==g||t[42]!==N?(X=(0,U.jsx)(oe,{step:l,mode:u,canGoToStep3:d,gitUrl:f,onGitUrlChange:p,onNext:m,templatesLoading:h,typeNames:g,templatesByTypeName:_,selectedTypeNameFromEffective:v,loadedImages:y,onImageLoad:b,onSelectType:x,onSelectTypeAndAdvance:S,projectName:T,onProjectNameChange:A,onSubmitFolder:j,projectNameDisplay:M,variations:N,effectiveTemplateId:F,onTemplateIdChange:I,selectedTemplate:ee,packageManager:te,onPackageManagerChange:L,commitMethod:ne,onCommitMethodChange:R}),t[17]=d,t[18]=ne,t[19]=F,t[20]=f,t[21]=R,t[22]=b,t[23]=m,t[24]=L,t[25]=A,t[26]=x,t[27]=S,t[28]=j,t[29]=y,t[30]=u,t[31]=te,t[32]=T,t[33]=M,t[34]=ee,t[35]=v,t[36]=p,t[37]=I,t[38]=l,t[39]=_,t[40]=h,t[41]=g,t[42]=N,t[43]=X):X=t[43];let Z;t[44]===H?Z=t[45]:(Z=()=>void H(),t[44]=H,t[45]=Z);let Q;t[46]!==d||t[47]!==B||t[48]!==m||t[49]!==V||t[50]!==j||t[51]!==z||t[52]!==u||t[53]!==T||t[54]!==M||t[55]!==l||t[56]!==Z?(Q=(0,U.jsx)(se,{step:l,mode:u,canGoToStep3:d,projectName:T,projectNameDisplay:M,isCheckingVp:z,onBack:B,onNext:m,onSubmitClone:V,onSubmitFolder:j,onSubmitWebApp:Z}),t[46]=d,t[47]=B,t[48]=m,t[49]=V,t[50]=j,t[51]=z,t[52]=u,t[53]=T,t[54]=M,t[55]=l,t[56]=Z,t[57]=Q):Q=t[57];let $;t[58]!==Y||t[59]!==X||t[60]!==Q?($=(0,U.jsxs)(E,{className:`flex h-[min(42rem,90dvh)] max-w-2xl flex-col overflow-hidden p-0`,children:[Y,X,Q]}),t[58]=Y,t[59]=X,t[60]=Q,t[61]=$):$=t[61];let re;return t[62]!==n||t[63]!==W||t[64]!==$?(re=(0,U.jsx)(O,{open:n,onOpenChange:W,children:$}),t[62]=n,t[63]=W,t[64]=$,t[65]=re):re=t[65],re}export{Se as CreateProjectDialog,Se as default,se as ProjectDialogFooter};
|
|
@@ -1,4 +0,0 @@
|
|
|
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{Lt as i,R as a}from"./dist-DZtmmQ-F.js";import{U as o,W as s,n as c,r as l,tt as u}from"./store-D4D62vkY.js";import{t as d}from"./utils-BCj_kT9l.js";import{Jt as f,Ot as p,P as m,X as h,Y as g,ct as _,it as v,jt as y,kt as b,mn as x,nt as S,pn as C,r as w}from"./lucide-react-CNNzKD4G.js";import{t as T}from"./button-DhxraVUW.js";import{i as E,n as D,t as O}from"./tooltip-Cg_EhO9M.js";import{Ht as k,J as A,Pr as j,Sr as M,nt as N,rr as P,wr as F}from"./api-B_ZIptgC.js";import{n as I}from"./scroll-area-BQ9bdsVQ.js";import{n as ee}from"./explorer-tab-context-BxUVwWQQ.js";import{t as L}from"./progress-indicator-C7Kj9U3t.js";import{n as R}from"./suspense-resource-DzlMlIgR.js";import{$n as te,B as z,Bn as B,Dr as V,Gn as H,Gt as U,Hn as ne,Jn as re,L as ie,M as W,Or as ae,Qn as oe,Tr as se,Vn as G,W as K,Xn as q,Yn as ce,ar as le,in as ue,ir as de,k as fe,kr as J,tr as pe,wr as me}from"./index-DdJcjvu2.js";import{t as he}from"./async-error-boundary-DmJy8jgz.js";import{s as Y}from"./monaco-lJcjGRXq.js";import{n as ge}from"./monaco-setup-DU2h1v3K.js";var X=e(n(),1),Z=t(),Q=r();function _e(e){let t=(0,Z.c)(12),{children:n,title:r,subtitle:a,headerAction:o,footer:s}=e,c;t[0]!==o||t[1]!==a||t[2]!==r?(c=(r||a||o)&&(0,Q.jsxs)(`div`,{className:`flex shrink-0 flex-col gap-1 border-b border-sidebar-border px-4 py-6`,children:[(r||o)&&(0,Q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Q.jsx)(`div`,{className:`flex items-center gap-2`,children:r&&(0,Q.jsx)(`span`,{className:i.sectionTitle,children:r})}),o&&(0,Q.jsx)(`div`,{className:`flex items-center gap-2 ml-auto`,children:o})]}),a]}),t[0]=o,t[1]=a,t[2]=r,t[3]=c):c=t[3];let l;t[4]===n?l=t[5]:(l=(0,Q.jsx)(I,{className:`min-h-0 flex-1`,children:n}),t[4]=n,t[5]=l);let u;t[6]===s?u=t[7]:(u=s&&(0,Q.jsx)(`div`,{className:`border-t border-sidebar-border`,children:s}),t[6]=s,t[7]=u);let d;return t[8]!==c||t[9]!==l||t[10]!==u?(d=(0,Q.jsxs)(`div`,{className:`flex h-full min-h-0 w-full flex-col`,children:[c,l,u]}),t[8]=c,t[9]=l,t[10]=u,t[11]=d):d=t[11],d}function ve(e){let t=(0,Z.c)(30),{node:n,level:r,renderNode:i,defaultOpen:a,indent:o,childContainerClassName:s,openState:c,onToggle:l,forceOpenIds:u}=e,d=!!(n.children&&n.children.length>0),f,p,m;if(t[0]!==a||t[1]!==u||t[2]!==d||t[3]!==r||t[4]!==n||t[5]!==l||t[6]!==c||t[7]!==i){f=u?.has(n.id)||(c[n.id]??a);let e;t[11]!==n.id||t[12]!==l?(e=()=>l(n.id),t[11]=n.id,t[12]=l,t[13]=e):e=t[13];let o=e;p=`min-w-0`,m=i(n,{isOpen:f,level:r,toggle:o,hasChildren:d}),t[0]=a,t[1]=u,t[2]=d,t[3]=r,t[4]=n,t[5]=l,t[6]=c,t[7]=i,t[8]=f,t[9]=p,t[10]=m}else f=t[8],p=t[9],m=t[10];let h;t[14]!==s||t[15]!==a||t[16]!==u||t[17]!==d||t[18]!==o||t[19]!==f||t[20]!==r||t[21]!==n.children||t[22]!==l||t[23]!==c||t[24]!==i?(h=d&&f&&(0,Q.jsx)(`div`,{style:{paddingLeft:o},className:s,children:n.children.map(e=>(0,Q.jsx)(ve,{node:e,level:r+1,renderNode:i,defaultOpen:a,indent:o,childContainerClassName:s,openState:c,onToggle:l,forceOpenIds:u},e.id))}),t[14]=s,t[15]=a,t[16]=u,t[17]=d,t[18]=o,t[19]=f,t[20]=r,t[21]=n.children,t[22]=l,t[23]=c,t[24]=i,t[25]=h):h=t[25];let g;return t[26]!==p||t[27]!==m||t[28]!==h?(g=(0,Q.jsxs)(`div`,{className:p,children:[m,h]}),t[26]=p,t[27]=m,t[28]=h,t[29]=g):g=t[29],g}function ye(e){let t=(0,Z.c)(31),{nodes:n,renderNode:r,resetKey:i,defaultOpen:a,forceOpenIds:o,initialOpenIds:s,indent:c,childContainerClassName:l,className:u}=e,f=a===void 0?!1:a,p=c===void 0?16:c,m;t[0]===s?m=t[1]:(m=()=>{let e={};if(s)for(let t of s)e[t]=!0;return e},t[0]=s,t[1]=m);let[h,g]=(0,X.useState)(m),[_,v]=(0,X.useState)(i);if(i!==_){v(i);let e={};if(s)for(let t of s)e[t]=!0;g(e)}let y;t[2]===o?y=t[3]:(y=o?new Set(o):void 0,t[2]=o,t[3]=y);let b=y,x,S;t[4]===o?(x=t[5],S=t[6]):(x=()=>{o?.length&&g(e=>{let t={...e},n=!1;for(let e of o)t[e]!==!0&&(t[e]=!0,n=!0);return n?t:e})},S=[o],t[4]=o,t[5]=x,t[6]=S),(0,X.useEffect)(x,S);let C;t[7]===f?C=t[8]:(C=e=>{g(t=>({...t,[e]:!(t[e]??f)}))},t[7]=f,t[8]=C);let w=C,T;t[9]===u?T=t[10]:(T=d(`min-w-0`,u),t[9]=u,t[10]=T);let E;if(t[11]!==l||t[12]!==f||t[13]!==b||t[14]!==w||t[15]!==p||t[16]!==n||t[17]!==h||t[18]!==r){let e;t[20]!==l||t[21]!==f||t[22]!==b||t[23]!==w||t[24]!==p||t[25]!==h||t[26]!==r?(e=e=>(0,Q.jsx)(ve,{node:e,level:0,renderNode:r,defaultOpen:f,indent:p,childContainerClassName:l,openState:h,onToggle:w,forceOpenIds:b},e.id),t[20]=l,t[21]=f,t[22]=b,t[23]=w,t[24]=p,t[25]=h,t[26]=r,t[27]=e):e=t[27],E=n.map(e),t[11]=l,t[12]=f,t[13]=b,t[14]=w,t[15]=p,t[16]=n,t[17]=h,t[18]=r,t[19]=E}else E=t[19];let D;return t[28]!==T||t[29]!==E?(D=(0,Q.jsx)(`div`,{className:T,children:E}),t[28]=T,t[29]=E,t[30]=D):D=t[30],D}function be(e){let t=[],n={};return e.forEach((e,r)=>{let i=e.path.split(`/`),a=t,o=``;for(let e=0;e<i.length-1;e++){if(o=o?`${o}/${i[e]}`:i[e],!n[o]){let t={id:`dir:${o}`,name:i[e],children:[]};n[o]=t,a.push(t)}a=n[o].children}a.push({id:`file:${e.path}`,name:i[i.length-1],fileIndex:r,status:e.status})}),t}var xe={added:`text-green-500`,deleted:`text-red-500`,untracked:`text-green-500`,renamed:`text-blue-500`,modified:`text-orange-500`},Se={added:`A`,deleted:`D`,untracked:`U`,renamed:`R`,modified:`M`};function Ce(e){return d(d(i.compact,`status-badge font-mono font-semibold`),xe[e]??`text-orange-500`)}function we(e){return Se[e]??`M`}function Te(e){let t=(0,Z.c)(22),{treeData:n,files:r,error:a,selectedFileIndex:o,onFileSelect:s,onRevertFile:c}=e,{setStats:l}=W(),u;t[0]===r?u=t[1]:(u=r.reduce(ke,0),t[0]=r,t[1]=u);let f=u,h;t[2]===r?h=t[3]:(h=r.reduce(Ee,0),t[2]=r,t[3]=h);let g=h,_,v;if(t[4]!==r.length||t[5]!==l||t[6]!==f||t[7]!==g?(_=()=>{l({fileCount:r.length,additions:f,deletions:g})},v=[r.length,f,g,l],t[4]=r.length,t[5]=l,t[6]=f,t[7]=g,t[8]=_,t[9]=v):(_=t[8],v=t[9]),(0,X.useEffect)(_,v),a){let e;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(e=d(i.compact,`text-destructive text-center`),t[10]=e):e=t[10];let n;return t[11]===a?n=t[12]:(n=(0,Q.jsx)(_e,{children:(0,Q.jsx)(`div`,{className:`flex-1 flex items-center justify-center p-4 pt-7 pb-2`,children:(0,Q.jsx)(`p`,{className:e,children:a})})}),t[11]=a,t[12]=n),n}if(r.length===0){let e;return t[13]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Q.jsx)(_e,{children:(0,Q.jsx)(`div`,{className:`flex-1 flex items-center justify-center p-4 pt-7 pb-2`,children:(0,Q.jsx)(`p`,{className:d(i.compact,i.bodyMuted,`text-center`),children:`No changes to review`})})}),t[13]=e):e=t[13],e}let x;t[14]!==r||t[15]!==s||t[16]!==c||t[17]!==o?(x=(e,t)=>{let{isOpen:n,toggle:a}=t,l=!!e.children,u=(0,Q.jsxs)(de,{onClick:()=>{l?a():e.fileIndex!==void 0&&s(e.fileIndex)},selected:!l&&e.fileIndex===o,className:d(i.conversationBody,`gap-1.5`),children:[l?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(C,{className:d(`h-3.5 w-3.5 shrink-0 text-muted-foreground transition-transform`,n&&`rotate-90`)}),n?(0,Q.jsx)(b,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`}):(0,Q.jsx)(p,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`})]}):(0,Q.jsx)(y,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`}),(0,Q.jsx)(`span`,{className:`truncate flex-1 min-w-0`,children:e.name}),!l&&e.status&&(0,Q.jsx)(`span`,{className:Ce(e.status),children:we(e.status)})]});return l?u:(0,Q.jsxs)(re,{children:[(0,Q.jsx)(oe,{asChild:!0,children:(0,Q.jsx)(`div`,{children:u})}),(0,Q.jsx)(ce,{children:(0,Q.jsxs)(q,{onClick:()=>{e.fileIndex!==void 0&&c?.(r[e.fileIndex])},children:[(0,Q.jsx)(m,{className:`mr-2 h-3.5 w-3.5`}),`Revert Change`]})})]})},t[14]=r,t[15]=s,t[16]=c,t[17]=o,t[18]=x):x=t[18];let S;return t[19]!==x||t[20]!==n?(S=(0,Q.jsx)(_e,{children:(0,Q.jsx)(`div`,{className:`px-1 pt-3 pb-2`,children:(0,Q.jsx)(ye,{nodes:n,defaultOpen:!0,indent:16,childContainerClassName:`ml-4 border-l border-sidebar-border pl-2`,renderNode:x})})}),t[19]=x,t[20]=n,t[21]=S):S=t[21],S}function Ee(e,t){return e+t.hunks.reduce(De,0)}function De(e,t){return e+t.changes.filter(Oe).length}function Oe(e){return e.type===`delete`}function ke(e,t){return e+t.hunks.reduce(Ae,0)}function Ae(e,t){return e+t.changes.filter(je).length}function je(e){return e.type===`add`}function Me(e){let t=(0,Z.c)(36),{open:n,lineNumber:r,lineContent:a,initialComment:o,isEditing:s,onSave:c,onDelete:l,onClose:u}=e,[f,p]=(0,X.useState)((o===void 0?``:o)??``),m;t[0]!==c||t[1]!==f?(m=()=>{f.trim()&&c(f.trim())},t[0]=c,t[1]=f,t[2]=m):m=t[2];let h=m,g;t[3]===h?g=t[4]:(g=e=>{(e.metaKey||e.ctrlKey)&&e.key===`Enter`&&(e.preventDefault(),h())},t[3]=h,t[4]=g);let _=g,v;t[5]===u?v=t[6]:(v=e=>{e||u()},t[5]=u,t[6]=v);let y;t[7]===r?y=t[8]:(y=(0,Q.jsx)(ae,{children:(0,Q.jsxs)(J,{children:[`Comment on line `,r]})}),t[7]=r,t[8]=y);let b;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(b=d(i.compact,`font-mono rounded bg-muted px-3 py-2 text-muted-foreground overflow-x-auto whitespace-pre`),t[9]=b):b=t[9];let x=a||` `,S;t[10]===x?S=t[11]:(S=(0,Q.jsx)(`div`,{className:b,children:x}),t[10]=x,t[11]=S);let C;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(C=e=>p(e.target.value),t[12]=C):C=t[12];let w;t[13]!==_||t[14]!==f?(w=(0,Q.jsx)(z,{autoFocus:!0,placeholder:`Add a comment... (Cmd+Enter to save)`,value:f,onChange:C,onKeyDown:_,rows:12,className:`resize-none text-base`}),t[13]=_,t[14]=f,t[15]=w):w=t[15];let E;t[16]!==s||t[17]!==l?(E=s&&l&&(0,Q.jsx)(T,{variant:`destructive`,size:`sm`,onClick:l,className:`mr-auto`,children:`Delete`}),t[16]=s,t[17]=l,t[18]=E):E=t[18];let D;t[19]===f?D=t[20]:(D=f.trim(),t[19]=f,t[20]=D);let O=!D,k;t[21]!==h||t[22]!==O?(k=(0,Q.jsx)(T,{size:`sm`,onClick:h,disabled:O,children:`Save`}),t[21]=h,t[22]=O,t[23]=k):k=t[23];let A;t[24]!==E||t[25]!==k?(A=(0,Q.jsxs)(V,{className:`gap-2 sm:gap-0`,children:[E,k]}),t[24]=E,t[25]=k,t[26]=A):A=t[26];let j;t[27]!==w||t[28]!==A||t[29]!==y||t[30]!==S?(j=(0,Q.jsxs)(se,{className:`max-w-2xl`,children:[y,S,w,A]}),t[27]=w,t[28]=A,t[29]=y,t[30]=S,t[31]=j):j=t[31];let M;return t[32]!==n||t[33]!==j||t[34]!==v?(M=(0,Q.jsx)(me,{open:n,onOpenChange:v,children:j}),t[32]=n,t[33]=j,t[34]=v,t[35]=M):M=t[35],M}function Ne(e){let t=c(),n=l(e=>e.diffComments),r=(0,X.useMemo)(()=>n[e]??[],[n,e]),i=(0,X.useCallback)(r=>{let i=n[e]??[],a=typeof r==`function`?r(i):r;t({type:u.SetDiffComments,threadId:e,comments:a})},[t,e,n]),a=(0,X.useRef)(!1);return(0,X.useEffect)(()=>{if((n[e]??[]).length>0){a.current=!0;return}k(e).then(n=>{n.diffComments&&n.diffComments.length>0&&t({type:u.SetDiffComments,threadId:e,comments:n.diffComments}),a.current=!0}).catch(()=>{a.current=!0})},[e]),(0,X.useEffect)(()=>{a.current&&P(e,{diffComments:r}).catch(()=>{})},[e,r]),{comments:r,setComments:i}}function Pe(e,t){return`git-diff:${e}:${t}`}function Fe(e){return e===`dark`?`vs-dark`:`vs-light`}function Ie(e){return d(`bg-transparent`,e&&`h-auto py-3 flex-col items-start gap-3 md:flex-row md:items-center md:h-[71px] md:py-0 md:gap-2 justify-between`)}function Le(e){return d(`flex items-center gap-2`,e?`ml-0`:`ml-auto`,`md:ml-auto`)}function Re(){return Error(`Loading review changes timed out. Please try again.`)}async function ze(e,t=15e3){return Promise.race([M(e),new Promise((e,n)=>{window.setTimeout(()=>n(Re()),t)})])}var Be=2;function Ve(e,t){return t<=0?{min:e,max:e}:{min:e,max:e+t-1}}function He(e,t){return{startLine:Math.max(1,e-Be),endLine:t+Be}}function $(e){if(e.hunks.length===0)return null;let t=1/0,n=0,r=1/0,i=0;for(let a of e.hunks){let e=Ve(a.oldStart,a.oldLines),o=Ve(a.newStart,a.newLines);t=Math.min(t,e.min),n=Math.max(n,e.max),r=Math.min(r,o.min),i=Math.max(i,o.max)}return t===1/0||r===1/0?null:{original:He(t,n),modified:He(r,i)}}function Ue(e,t,n){if(e.length===0)return``;let r=e.endsWith(`
|
|
2
|
-
`),i=e.split(`
|
|
3
|
-
`);return r&&i.length>0&&i[i.length-1]===``&&i.pop(),i.slice(Math.max(0,t-1),Math.max(t-1,n)).join(`
|
|
4
|
-
`)}function We(e){let t=$(e);return t?t.original.startLine<=1||t.modified.startLine<=1:!0}function Ge(e,t){return t?e-t.startLine+1:e}function Ke(e,t){return t?t.startLine+e-1:e}function qe(e){return{ts:`typescript`,tsx:`typescript`,js:`javascript`,jsx:`javascript`,json:`json`,md:`markdown`,css:`css`,scss:`scss`,html:`html`,py:`python`,rb:`ruby`,go:`go`,rs:`rust`,java:`java`,kt:`kotlin`,swift:`swift`,c:`c`,cpp:`cpp`,h:`c`,hpp:`cpp`,sh:`shell`,yaml:`yaml`,yml:`yaml`,xml:`xml`,sql:`sql`}[e.split(`.`).pop()??``]||`plaintext`}function Je(e){let t=(0,Z.c)(34),{comments:n,activeCommentIndex:r,isFullView:i,selectedFileIndex:a,files:o,selectedFile:s,onLineGutterClick:c}=e,l=(0,X.useRef)(null),u=(0,X.useRef)(n),d=(0,X.useRef)(r),f;t[0]!==o||t[1]!==i||t[2]!==a?(f={isFullView:i,selectedFileIndex:a,files:o},t[0]=o,t[1]=i,t[2]=a,t[3]=f):f=t[3];let p=(0,X.useRef)(f),m;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(m={original:[],modified:[]},t[4]=m):m=t[4];let h=(0,X.useRef)(m),g=(0,X.useRef)(null),_=(0,X.useRef)(!0),v,y;t[5]===n?(v=t[6],y=t[7]):(v=()=>{u.current=n},y=[n],t[5]=n,t[6]=v,t[7]=y),(0,X.useEffect)(v,y);let b,x;t[8]===r?(b=t[9],x=t[10]):(b=()=>{d.current=r},x=[r],t[8]=r,t[9]=b,t[10]=x),(0,X.useEffect)(b,x);let S,C;t[11]!==o||t[12]!==i||t[13]!==a?(S=()=>{p.current={isFullView:i,selectedFileIndex:a,files:o}},C=[i,a,o],t[11]=o,t[12]=i,t[13]=a,t[14]=S,t[15]=C):(S=t[14],C=t[15]),(0,X.useEffect)(S,C);let w;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(w=()=>{if(!_.current)return;let e=l.current;if(!e)return;let{isFullView:t,selectedFileIndex:n,files:r}=p.current,i=u.current,a=d.current,o=r[n];if(!o)return;let s=(e,r)=>{let s=t?null:$(o),c=s?r===`original`?s.original:s.modified:null,l=i.filter(e=>e.fileIndex===n&&e.side===r),u=new Set(l.map(e=>Ge(e.lineNumber,c))),d=e.getModel()?.getLineCount()??0,f=[];for(let e=1;e<=d;e++)u.has(e)||f.push({range:{startLineNumber:e,startColumn:1,endLineNumber:e,endColumn:1},options:{isWholeLine:!0,glyphMarginClassName:`diff-gutter-add-comment`,glyphMarginHoverMessage:{value:`$(add) Click to add a comment`},stickiness:Y.TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges}});let p=l.map(e=>{let t=Ge(e.lineNumber,c);if(t<1)return null;let n=i.indexOf(e)===a;return{range:{startLineNumber:t,startColumn:1,endLineNumber:t,endColumn:1},options:{isWholeLine:!0,className:n?`diff-comment-active-line`:`diff-comment-marked-line`,glyphMarginClassName:n?`diff-comment-glyph-active`:`diff-comment-glyph`,glyphMarginHoverMessage:{value:e.comment},stickiness:Y.TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges}}}).filter(Xe);f.push(...p);let m=r===`original`?h.current.original:h.current.modified,g=e.deltaDecorations(m,f);r===`original`?h.current.original=g:h.current.modified=g};s(e.getOriginalEditor(),`original`),s(e.getModifiedEditor(),`modified`)},t[16]=w):w=t[16];let T=w,E;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(E=()=>{let e=g.current;g.current=null,e?.original?.dispose(),e?.modified?.dispose()},t[17]=E):E=t[17];let D=E,O;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(O=()=>{h.current={original:[],modified:[]};let e=setTimeout(()=>T(),150);return()=>clearTimeout(e)},t[18]=O):O=t[18];let k;t[19]===a?k=t[20]:(k=[a,T],t[19]=a,t[20]=k),(0,X.useEffect)(O,k);let A;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(A=()=>{T()},t[21]=A):A=t[21];let j;t[22]!==r||t[23]!==n||t[24]!==i||t[25]!==s||t[26]!==a?(j=[T,n,r,a,i,s],t[22]=r,t[23]=n,t[24]=i,t[25]=s,t[26]=a,t[27]=j):j=t[27],(0,X.useEffect)(A,j);let M,N;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(M=()=>()=>{_.current=!1,l.current=null,h.current={original:[],modified:[]},D()},N=[D],t[28]=M,t[29]=N):(M=t[28],N=t[29]),(0,X.useEffect)(M,N);let P;t[30]===c?P=t[31]:(P=e=>{l.current=e;let t=e.getModel();g.current=t?{original:t.original,modified:t.modified}:null;let n=Ye,r=(e,t)=>{e.onMouseDown(r=>{if(!r.target?.position||!n(r.target.type))return;let i=r.target.position.lineNumber,{isFullView:a,selectedFileIndex:o,files:s}=p.current,l=s[o];if(!l)return;let d=a?null:$(l),f=Ke(i,d?t===`original`?d.original:d.modified:null),m=e.getModel()?.getLineContent(i)??``;c({existing:u.current.find(e=>e.fileIndex===o&&e.lineNumber===f&&e.side===t),lineNumber:f,lineContent:m,side:t})})};r(e.getOriginalEditor(),`original`),r(e.getModifiedEditor(),`modified`),setTimeout(()=>{l.current===e&&T()},150)},t[30]=c,t[31]=P);let F=P,I;return t[32]===F?I=t[33]:(I={diffEditorRef:l,applyAllDecorations:T,handleEditorDidMount:F},t[32]=F,t[33]=I),I}function Ye(e){return e===Y.MouseTargetType.GUTTER_GLYPH_MARGIN||e===Y.MouseTargetType.GUTTER_LINE_NUMBERS||e===Y.MouseTargetType.GUTTER_LINE_DECORATIONS||e===Y.MouseTargetType.GUTTER_VIEW_ZONE}function Xe(e){return e!==null}function Ze(e){let t=(0,Z.c)(6),{onRetry:n}=e,[r,a]=(0,X.useState)(!1),o,s;if(t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=()=>{let e=window.setTimeout(()=>{a(!0)},15e3);return()=>{window.clearTimeout(e)}},s=[],t[0]=o,t[1]=s):(o=t[0],s=t[1]),(0,X.useEffect)(o,s),!r){let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Q.jsx)(L,{centered:!0,label:`Loading review changes...`}),t[2]=e):e=t[2],e}let c;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Q.jsx)(`p`,{className:i.bodyMuted,children:`Loading review changes is taking longer than expected.`}),t[3]=c):c=t[3];let l;return t[4]===n?l=t[5]:(l=(0,Q.jsx)(`div`,{className:`flex h-full items-center justify-center p-6`,children:(0,Q.jsxs)(`div`,{className:`space-y-4 text-center`,children:[c,(0,Q.jsx)(T,{variant:`outline`,onClick:n,children:`Retry`})]})}),t[4]=n,t[5]=l),l}function Qe(e,t,n){return`git-media:${e}:${t}:${n}`}function $e(e,t,n){let r=(0,Z.c)(13),i;r[0]!==t||r[1]!==e||r[2]!==n?(i=Qe(e,t,n),r[0]=t,r[1]=e,r[2]=n,r[3]=i):i=r[3];let a;r[4]!==t||r[5]!==e||r[6]!==n?(a=()=>F(e,t,n),r[4]=t,r[5]=e,r[6]=n,r[7]=a):a=r[7];let o=H(i,a),s;r[8]===o?s=r[9]:(s=URL.createObjectURL(o),r[8]=o,r[9]=s);let c=s,l,u;return r[10]===c?(l=r[11],u=r[12]):(l=()=>()=>{URL.revokeObjectURL(c)},u=[c],r[10]=c,r[11]=l,r[12]=u),(0,X.useEffect)(l,u),c}function et(e){let t=(0,Z.c)(9),{threadId:n,filePath:r,version:a,label:o}=e,s=$e(n,r,a),c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=d(i.caption,`px-3 py-1.5 border-b text-muted-foreground bg-muted/30`),t[0]=c):c=t[0];let l;t[1]===o?l=t[2]:(l=(0,Q.jsx)(`div`,{className:c,children:o}),t[1]=o,t[2]=l);let u=`${o} - ${r}`,f;t[3]!==s||t[4]!==u?(f=(0,Q.jsx)(`div`,{className:`flex-1 flex items-center justify-center p-4 overflow-auto bg-background`,children:(0,Q.jsx)(`img`,{src:s,alt:u,className:`max-w-full max-h-full object-contain`})}),t[3]=s,t[4]=u,t[5]=f):f=t[5];let p;return t[6]!==l||t[7]!==f?(p=(0,Q.jsxs)(`div`,{className:`flex flex-col h-full`,children:[l,f]}),t[6]=l,t[7]=f,t[8]=p):p=t[8],p}function tt(e){let t=(0,Z.c)(23),{threadId:n,file:r}=e,i=r.status===`modified`||r.status===`deleted`||r.status===`renamed`,a=r.status===`modified`||r.status===`added`||r.status===`untracked`||r.status===`renamed`;if(i&&a){let e;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Q.jsx)(L,{centered:!0,label:`Loading before image...`}),t[0]=e):e=t[0];let i=r.status===`renamed`&&r.oldPath?r.oldPath:r.path,a;t[1]!==i||t[2]!==n?(a=(0,Q.jsx)(`div`,{className:`flex-1 border-r border-border`,children:(0,Q.jsx)(X.Suspense,{fallback:e,children:(0,Q.jsx)(et,{threadId:n,filePath:i,version:`old`,label:`Before`})})}),t[1]=i,t[2]=n,t[3]=a):a=t[3];let o;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Q.jsx)(L,{centered:!0,label:`Loading after image...`}),t[4]=o):o=t[4];let s;t[5]!==r.path||t[6]!==n?(s=(0,Q.jsx)(`div`,{className:`flex-1`,children:(0,Q.jsx)(X.Suspense,{fallback:o,children:(0,Q.jsx)(et,{threadId:n,filePath:r.path,version:`new`,label:`After`})})}),t[5]=r.path,t[6]=n,t[7]=s):s=t[7];let c;return t[8]!==a||t[9]!==s?(c=(0,Q.jsxs)(`div`,{className:`flex h-full`,children:[a,s]}),t[8]=a,t[9]=s,t[10]=c):c=t[10],c}let o=a?`new`:`old`,s=a?`Added`:`Deleted`,c;t[11]===s?c=t[12]:(c=s.toLowerCase(),t[11]=s,t[12]=c);let l=`Loading ${c} image...`,u;t[13]===l?u=t[14]:(u=(0,Q.jsx)(L,{centered:!0,label:l}),t[13]=l,t[14]=u);let d;t[15]!==r.path||t[16]!==s||t[17]!==n||t[18]!==o?(d=(0,Q.jsx)(et,{threadId:n,filePath:r.path,version:o,label:s}),t[15]=r.path,t[16]=s,t[17]=n,t[18]=o,t[19]=d):d=t[19];let f;return t[20]!==u||t[21]!==d?(f=(0,Q.jsx)(`div`,{className:`flex h-full flex-col`,children:(0,Q.jsx)(X.Suspense,{fallback:u,children:d})}),t[20]=u,t[21]=d,t[22]=f):f=t[22],f}function nt(e){let t=(0,Z.c)(21),{comments:n,activeCommentIndex:r,onPrevComment:a,onNextComment:o}=e,s=r??0,c=n.length===1?`1 Comment`:`Comment ${s+1} of ${n.length}`,l=s===0,u;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,Q.jsx)(x,{className:`h-3 w-3`}),t[0]=u):u=t[0];let f;t[1]!==a||t[2]!==l?(f=(0,Q.jsx)(E,{asChild:!0,children:(0,Q.jsx)(T,{variant:`ghost`,size:`icon`,className:`h-8 w-8 rounded-full`,onClick:a,disabled:l,children:u})}),t[1]=a,t[2]=l,t[3]=f):f=t[3];let p;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,Q.jsx)(D,{children:`Previous comment`}),t[4]=p):p=t[4];let m;t[5]===f?m=t[6]:(m=(0,Q.jsxs)(O,{children:[f,p]}),t[5]=f,t[6]=m);let h;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(h=d(i.caption,`whitespace-nowrap`),t[7]=h):h=t[7];let g;t[8]===c?g=t[9]:(g=(0,Q.jsx)(`span`,{className:h,children:c}),t[8]=c,t[9]=g);let _=s===n.length-1,v;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,Q.jsx)(C,{className:`h-3 w-3`}),t[10]=v):v=t[10];let y;t[11]!==o||t[12]!==_?(y=(0,Q.jsx)(E,{asChild:!0,children:(0,Q.jsx)(T,{variant:`ghost`,size:`icon`,className:`h-8 w-8 rounded-full`,onClick:o,disabled:_,children:v})}),t[11]=o,t[12]=_,t[13]=y):y=t[13];let b;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,Q.jsx)(D,{children:`Next comment`}),t[14]=b):b=t[14];let S;t[15]===y?S=t[16]:(S=(0,Q.jsxs)(O,{children:[y,b]}),t[15]=y,t[16]=S);let w;return t[17]!==S||t[18]!==m||t[19]!==g?(w=(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[m,g,S]}),t[17]=S,t[18]=m,t[19]=g,t[20]=w):w=t[20],w}function rt(e){let t=(0,Z.c)(12),{isChatOpen:n,onOpenChat:r,onCloseChat:i,focusedPane:a,conversationId:o,paneMessages:s}=e,c;t[0]!==o||t[1]!==a||t[2]!==n||t[3]!==i||t[4]!==s?(c=n&&(0,Q.jsxs)(`div`,{className:`pointer-events-auto w-[min(100%,48rem)] rounded-2xl bg-background/50 p-4 backdrop-blur-md`,children:[(0,Q.jsx)(`div`,{className:`mb-3 flex items-center justify-end`,children:(0,Q.jsxs)(T,{variant:`ghost`,size:`icon`,className:`h-8 w-8`,onClick:i,children:[(0,Q.jsx)(w,{className:`h-4 w-4`}),(0,Q.jsx)(`span`,{className:`sr-only`,children:`Close chat`})]})}),(0,Q.jsx)(U,{paneId:a,conversationId:o,children:(0,Q.jsx)(K,{children:(0,Q.jsx)(ie,{messages:s})})})]}),t[0]=o,t[1]=a,t[2]=n,t[3]=i,t[4]=s,t[5]=c):c=t[5];let l;t[6]!==n||t[7]!==r?(l=!n&&(0,Q.jsxs)(O,{children:[(0,Q.jsx)(E,{asChild:!0,children:(0,Q.jsxs)(T,{size:`icon`,className:`pointer-events-auto h-12 w-12 rounded-full shadow-lg`,onClick:r,children:[(0,Q.jsx)(v,{className:`h-5 w-5`}),(0,Q.jsx)(`span`,{className:`sr-only`,children:`Open review chat`})]})}),(0,Q.jsx)(D,{children:`Chat about this diff`})]}),t[6]=n,t[7]=r,t[8]=l):l=t[8];let u;return t[9]!==c||t[10]!==l?(u=(0,Q.jsxs)(`div`,{className:`pointer-events-none absolute bottom-4 right-4 z-20 flex flex-col items-end gap-3`,children:[c,l]}),t[9]=c,t[10]=l,t[11]=u):u=t[11],u}function it(e){let t=(0,Z.c)(10),{showTreeBackButton:n,isPanelCollapsed:r,onShowTree:i,onTogglePanel:a}=e;if(n){let e,n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Q.jsx)(g,{className:`h-4 w-4`}),n=(0,Q.jsx)(`span`,{className:`sr-only`,children:`Show file tree`}),t[0]=e,t[1]=n):(e=t[0],n=t[1]);let r;return t[2]===i?r=t[3]:(r=(0,Q.jsxs)(T,{variant:`ghost`,size:`icon`,className:`h-8 w-8 text-muted-foreground shrink-0`,onClick:i,children:[e,n]}),t[2]=i,t[3]=r),r}let o;t[4]===r?o=t[5]:(o=r?(0,Q.jsx)(g,{className:`h-4 w-4`}):(0,Q.jsx)(h,{className:`h-4 w-4`}),t[4]=r,t[5]=o);let s;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,Q.jsx)(`span`,{className:`sr-only`,children:`Toggle file tree`}),t[6]=s):s=t[6];let c;return t[7]!==a||t[8]!==o?(c=(0,Q.jsxs)(T,{variant:`ghost`,size:`icon`,className:`h-8 w-8 text-muted-foreground shrink-0`,onClick:a,children:[o,s]}),t[7]=a,t[8]=o,t[9]=c):c=t[9],c}function at(e){let t=(0,Z.c)(7),{isImageFile:n,isFullView:r,onToggleFullView:a,selectedFile:o}=e;if(n)return null;let s=!o,c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=d(i.compact,`h-8 gap-1 px-2`),t[0]=c):c=t[0];let l;t[1]===r?l=t[2]:(l=r?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(S,{className:`h-3 w-3`}),` Show changes only`]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(_,{className:`h-3 w-3`}),` Show full file`]}),t[1]=r,t[2]=l);let u;return t[3]!==a||t[4]!==s||t[5]!==l?(u=(0,Q.jsx)(T,{variant:`ghost`,size:`sm`,onClick:a,disabled:s,className:c,children:l}),t[3]=a,t[4]=s,t[5]=l,t[6]=u):u=t[6],u}function ot(e){let t=(0,Z.c)(7),{onOpen:n}=e,r,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Q.jsx)(f,{className:`h-3.5 w-3.5`}),i=(0,Q.jsx)(`span`,{className:`sr-only`,children:`Open in Files window`}),t[0]=r,t[1]=i):(r=t[0],i=t[1]);let a;t[2]===n?a=t[3]:(a=(0,Q.jsx)(E,{asChild:!0,children:(0,Q.jsxs)(T,{variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0 text-muted-foreground`,onClick:n,children:[r,i]})}),t[2]=n,t[3]=a);let o;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Q.jsx)(D,{children:`Open in Files window`}),t[4]=o):o=t[4];let s;return t[5]===a?s=t[6]:(s=(0,Q.jsxs)(O,{children:[a,o]}),t[5]=a,t[6]=s),s}function st(e){let t=(0,Z.c)(9),{selectedFile:n,onOpenInFiles:r}=e,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=d(i.label,`text-foreground`),t[0]=a):a=t[0];let o=n?n.path:`Review Changes`,s;t[1]===o?s=t[2]:(s=(0,Q.jsx)(`span`,{className:a,children:o}),t[1]=o,t[2]=s);let c;t[3]!==r||t[4]!==n?(c=n&&(0,Q.jsx)(ot,{onOpen:r}),t[3]=r,t[4]=n,t[5]=c):c=t[5];let l;return t[6]!==s||t[7]!==c?(l=(0,Q.jsxs)(Q.Fragment,{children:[s,c]}),t[6]=s,t[7]=c,t[8]=l):l=t[8],l}function ct(e){let t=(0,Z.c)(15),{comments:n,activeCommentIndex:r,onPrevComment:a,onNextComment:o,onFixComments:s}=e;if(n.length===0)return null;let c;t[0]!==r||t[1]!==n||t[2]!==o||t[3]!==a?(c=(0,Q.jsx)(nt,{comments:n,activeCommentIndex:r,onPrevComment:a,onNextComment:o}),t[0]=r,t[1]=n,t[2]=o,t[3]=a,t[4]=c):c=t[4];let l,u;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(l=d(i.compact,`h-8 gap-1 px-3 bg-foreground text-background hover:bg-foreground/90`),u=(0,Q.jsx)(v,{className:`h-3 w-3`}),t[5]=l,t[6]=u):(l=t[5],u=t[6]);let f;t[7]===s?f=t[8]:(f=(0,Q.jsx)(E,{asChild:!0,children:(0,Q.jsxs)(T,{size:`sm`,onClick:s,className:l,children:[u,`Fix all comments`]})}),t[7]=s,t[8]=f);let p;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,Q.jsx)(D,{children:`Send all comments to Tarsk for resolution`}),t[9]=p):p=t[9];let m;t[10]===f?m=t[11]:(m=(0,Q.jsxs)(O,{children:[f,p]}),t[10]=f,t[11]=m);let h;return t[12]!==c||t[13]!==m?(h=(0,Q.jsxs)(Q.Fragment,{children:[c,m]}),t[12]=c,t[13]=m,t[14]=h):h=t[14],h}function lt(e){let t=(0,Z.c)(10),{isImageFile:n,selectedFile:r,threadId:i,language:a,theme:o,diffOriginal:s,diffModified:c,onEditorMount:l,diffEditorOptions:u}=e;if(n&&r){let e;return t[0]!==r||t[1]!==i?(e=(0,Q.jsx)(tt,{threadId:i,file:r}),t[0]=r,t[1]=i,t[2]=e):e=t[2],e}let d;return t[3]!==u||t[4]!==c||t[5]!==s||t[6]!==a||t[7]!==l||t[8]!==o?(d=(0,Q.jsx)(ge,{height:`100%`,language:a,original:s,modified:c,keepCurrentOriginalModel:!0,keepCurrentModifiedModel:!0,theme:o,onMount:l,options:u}),t[3]=u,t[4]=c,t[5]=s,t[6]=a,t[7]=l,t[8]=o,t[9]=d):d=t[9],d}function ut(){let e=(0,Z.c)(8),t=l(dt),n;e[0]===t?n=e[1]:(n=e=>o(e,t),e[0]=t,e[1]=n);let r=l(n),i;e[2]===t?i=e[3]:(i=e=>s(e,t),e[2]=t,e[3]=i);let a=l(i),c;return e[4]!==r||e[5]!==t||e[6]!==a?(c={focusedPane:t,conversationId:r,paneMessages:a},e[4]=r,e[5]=t,e[6]=a,e[7]=c):c=e[7],c}function dt(e){return e.focusedPane}function ft(e){let t=(0,Z.c)(61),{threadId:n,selectedFile:r,content:i,layout:a,commentControls:o,chatControls:s}=e,{isImageFile:c,diffOriginal:l,diffModified:u,resolvedTheme:d,onEditorMount:f,diffEditorOptions:p,isFullView:m,onToggleFullView:h}=i,{isPanelCollapsed:g,showTreeBackButton:_,onShowTree:v,onTogglePanel:y}=a,{focusedPane:b,conversationId:x,paneMessages:S}=ut(),{openChatDockPanel:C}=te(),{setPendingExplorerPath:w}=ee(),T;t[0]!==C||t[1]!==r||t[2]!==w?(T=function(){r&&(w(r.path),C(`explorer`))},t[0]=C,t[1]=r,t[2]=w,t[3]=T):T=t[3];let E=T,D;t[4]===g?D=t[5]:(D=Ie(g),t[4]=g,t[5]=D);let O;t[6]!==g||t[7]!==v||t[8]!==y||t[9]!==_?(O=(0,Q.jsx)(it,{showTreeBackButton:_,isPanelCollapsed:g,onShowTree:v,onTogglePanel:y}),t[6]=g,t[7]=v,t[8]=y,t[9]=_,t[10]=O):O=t[10];let k;t[11]!==E||t[12]!==r?(k=(0,Q.jsx)(st,{selectedFile:r,onOpenInFiles:E}),t[11]=E,t[12]=r,t[13]=k):k=t[13];let A;t[14]!==O||t[15]!==k?(A=(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[O,k]}),t[14]=O,t[15]=k,t[16]=A):A=t[16];let j;t[17]===g?j=t[18]:(j=Le(g),t[17]=g,t[18]=j);let M;t[19]!==m||t[20]!==c||t[21]!==h||t[22]!==r?(M=(0,Q.jsx)(at,{isImageFile:c,isFullView:m,onToggleFullView:h,selectedFile:r}),t[19]=m,t[20]=c,t[21]=h,t[22]=r,t[23]=M):M=t[23];let N;t[24]===o?N=t[25]:(N=(0,Q.jsx)(ct,{...o}),t[24]=o,t[25]=N);let P;t[26]!==j||t[27]!==M||t[28]!==N?(P=(0,Q.jsxs)(`div`,{className:j,children:[M,N]}),t[26]=j,t[27]=M,t[28]=N,t[29]=P):P=t[29];let F;t[30]!==D||t[31]!==A||t[32]!==P?(F=(0,Q.jsxs)(le,{className:D,children:[A,P]}),t[30]=D,t[31]=A,t[32]=P,t[33]=F):F=t[33];let I=r?.path||``,L;t[34]===I?L=t[35]:(L=qe(I),t[34]=I,t[35]=L);let R;t[36]===d?R=t[37]:(R=Fe(d),t[36]=d,t[37]=R);let z;t[38]!==p||t[39]!==u||t[40]!==l||t[41]!==c||t[42]!==f||t[43]!==r||t[44]!==L||t[45]!==R||t[46]!==n?(z=(0,Q.jsx)(lt,{isImageFile:c,selectedFile:r,threadId:n,language:L,theme:R,diffOriginal:l,diffModified:u,onEditorMount:f,diffEditorOptions:p}),t[38]=p,t[39]=u,t[40]=l,t[41]=c,t[42]=f,t[43]=r,t[44]=L,t[45]=R,t[46]=n,t[47]=z):z=t[47];let B;t[48]!==s.isChatOpen||t[49]!==s.onCloseChat||t[50]!==s.onOpenChat||t[51]!==x||t[52]!==b||t[53]!==S?(B=(0,Q.jsx)(rt,{isChatOpen:s.isChatOpen,onOpenChat:s.onOpenChat,onCloseChat:s.onCloseChat,focusedPane:b,conversationId:x,paneMessages:S}),t[48]=s.isChatOpen,t[49]=s.onCloseChat,t[50]=s.onOpenChat,t[51]=x,t[52]=b,t[53]=S,t[54]=B):B=t[54];let V;t[55]!==z||t[56]!==B?(V=(0,Q.jsxs)(`div`,{className:`flex-1 bg-transparent relative`,children:[z,B]}),t[55]=z,t[56]=B,t[57]=V):V=t[57];let H;return t[58]!==F||t[59]!==V?(H=(0,Q.jsxs)(`div`,{className:`diff-editor-panel flex h-full min-h-0 w-full min-w-0 flex-1 flex-col overflow-hidden bg-transparent`,children:[F,V]}),t[58]=F,t[59]=V,t[60]=H):H=t[60],H}function pt(){let e=(0,Z.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Q.jsx)(B,{withHandle:!0,className:`z-10 shrink-0`}),e[0]=t):t=e[0],t}function mt(e){let t=(0,Z.c)(8),{isMobile:n,mobileShowTree:r,panelRef:i,onPanelCollapse:a,onPanelExpand:o,fileTreePanel:s,diffEditorPanel:c}=e,l;return t[0]!==c||t[1]!==s||t[2]!==n||t[3]!==r||t[4]!==a||t[5]!==o||t[6]!==i?(l=(0,Q.jsx)(`div`,{className:`diff-body flex min-h-0 w-full flex-1 overflow-hidden`,children:n?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{className:d(`flex min-h-0 w-full min-w-0 flex-1 flex-col overflow-hidden`,!r&&`hidden`),children:s}),(0,Q.jsx)(`div`,{className:d(`flex min-h-0 w-full min-w-0 flex-1 flex-col overflow-hidden`,r&&`hidden`),children:c})]}):(0,Q.jsxs)(ne,{direction:`horizontal`,children:[(0,Q.jsx)(G,{ref:i,defaultSize:25,minSize:12,maxSize:40,collapsible:!0,collapsedSize:0,onCollapse:a,onExpand:o,className:`overflow-hidden border-r border-transparent`,children:s}),(0,Q.jsx)(pt,{}),(0,Q.jsx)(G,{className:`overflow-hidden border-l border-border bg-transparent`,children:c})]})}),t[0]=c,t[1]=s,t[2]=n,t[3]=r,t[4]=a,t[5]=o,t[6]=i,t[7]=l):l=t[7],l}var ht=a(`app.diff-view.ui`);function gt(e,t){if(!e)return{diffOriginal:``,diffModified:``};if(t)return{diffOriginal:e.oldContent,diffModified:e.newContent};let n=$(e);return n?{diffOriginal:Ue(e.oldContent,n.original.startLine,n.original.endLine),diffModified:Ue(e.newContent,n.modified.startLine,n.modified.endLine)}:{diffOriginal:e.oldContent,diffModified:e.newContent}}function _t(e,t){return!!(e&&(t||We(e)))}function vt(e,t,n){let r=n?null:$(e),i=r?t.side===`original`?r.original:r.modified:null;return Ge(t.lineNumber,i)}async function yt(e,t){let n=t[e];if(n)return n;try{let e=await N(),t=Object.values(e).flat();return t.length>0?t[0]:null}catch(e){return ht.error(`Failed to load models:`,e),null}}function bt(e){let t=(0,Z.c)(7),{treeData:n,files:r,error:i,selectedFileIndex:a,onFileSelect:o,onRevertFile:s}=e,c;return t[0]!==i||t[1]!==r||t[2]!==o||t[3]!==s||t[4]!==a||t[5]!==n?(c=(0,Q.jsx)(`div`,{className:`flex h-full min-h-0 w-full min-w-0 flex-1 flex-col overflow-hidden`,children:(0,Q.jsx)(Te,{treeData:n,files:r,error:i,selectedFileIndex:a,onFileSelect:o,onRevertFile:s})}),t[0]=i,t[1]=r,t[2]=o,t[3]=s,t[4]=a,t[5]=n,t[6]=c):c=t[6],c}function xt(e,t){return`${e?e.id:``}-${t?String(t.lineNumber):``}-${t?t.side:``}`}function St(e,t){return e?{lineNumber:e.lineNumber,lineContent:e.lineContent,comment:e.comment}:t?{lineNumber:t.lineNumber,lineContent:t.lineContent,comment:void 0}:{lineNumber:0,lineContent:``,comment:void 0}}function Ct(e,t){return t!==null||e!==null}function wt(e){let t=(0,Z.c)(19),{editingComment:n,pendingLine:r,onSave:i,onDelete:a,onClose:o}=e,s;t[0]!==n||t[1]!==r?(s=St(n,r),t[0]=n,t[1]=r,t[2]=s):s=t[2];let c=s,l;t[3]!==n||t[4]!==r?(l=xt(n,r),t[3]=n,t[4]=r,t[5]=l):l=t[5];let u;t[6]!==n||t[7]!==r?(u=Ct(n,r),t[6]=n,t[7]=r,t[8]=u):u=t[8];let d=n!==null,f;return t[9]!==c.comment||t[10]!==c.lineContent||t[11]!==c.lineNumber||t[12]!==o||t[13]!==a||t[14]!==i||t[15]!==l||t[16]!==u||t[17]!==d?(f=(0,Q.jsx)(Me,{open:u,lineNumber:c.lineNumber,lineContent:c.lineContent,initialComment:c.comment,isEditing:d,onSave:i,onDelete:a,onClose:o},l),t[9]=c.comment,t[10]=c.lineContent,t[11]=c.lineNumber,t[12]=o,t[13]=a,t[14]=i,t[15]=l,t[16]=u,t[17]=d,t[18]=f):f=t[18],f}function Tt(e,t){return Math.min(e,Math.max(t-1,0))}function Et(e,t,n,r){e(r??[]),t(e=>Tt(n??e,r?.length??1))}function Dt(e,t,n){let r=Tt(t,e.length);return n?.files===e&&n.selectedFileIndex===r?n:{files:e,selectedFileIndex:r}}function Ot(e,t,n,r){return{id:`comment-${Date.now()}`,filePath:t.path,fileIndex:n,lineNumber:e.lineNumber,lineContent:e.lineContent,comment:r,side:e.side}}function kt(e,t){return(t%e+e)%e}function At(e,t,n,r){if(!e)return;let i=t[n.fileIndex];if(!i)return;let a=vt(i,n,r);(n.side===`original`?e.getOriginalEditor():e.getModifiedEditor()).revealLineInCenter(Math.max(1,a))}function jt(e,t,n){return{readOnly:!0,renderSideBySide:!e,ignoreTrimWhitespace:!1,renderOverviewRuler:!0,scrollBeyondLastLine:!1,minimap:{enabled:!1},folding:!1,glyphMargin:!0,lineNumbers:_t(t,n)?`on`:`off`,diffWordWrap:`on`,originalEditable:!1,automaticLayout:!0}}function Mt(e,t){e.current&&(t?e.current.expand():e.current.collapse())}async function Nt(e){return(await M(e)).files||[]}async function Pt(e,t,n,r){try{return await j(e,t.path),await Promise.all([n(),r(!0)]),null}catch(e){return e instanceof Error?e.message:`Failed to revert file`}}async function Ft({threadId:e,comments:t,selectedModel:n,clearComments:r,dispatch:i,onExit:a}){try{let{prompt:o}=await A(e,t);r(),i({type:u.SetPendingChatMessage,message:{threadId:e,message:o,model:n.id,provider:n.provider}}),a()}catch(e){ht.error(`Failed to fix comments:`,e),typeof window<`u`&&window.alert(`Failed to process comments. Please try again.`)}}function It(e,t){return e?.files??t??[]}function Lt(e){return e?.selectedFileIndex??0}function Rt(e){return e?.isBinary??!1}function zt(e,t,n,r){Et(e,t,n?.selectedFileIndex,r)}function Bt(e,t,n){n&&n(n=>Dt(e,t,n))}function Vt(e,t,n,r){n(e),t&&r(!1)}async function Ht(e,t,n,r){if(e){r(null);try{let r=await Nt(e);t(r),n(e=>Tt(e,r.length))}catch(e){r(e instanceof Error?e.message:`Failed to load diff`)}}}async function Ut(e,t,n,r,i){let a=await Pt(t,e,n,r);a&&i(a)}function Wt(e,t,n,r,i,a){e?i(e):a({lineNumber:t,lineContent:n,side:r})}function Gt(e,t,n,r,i,a){return t&&r?[...e,Ot(t,r,i,a)]:n?e.map(e=>e.id===n.id?{...e,comment:a}:e):e}function Kt(e,t){return t?e.filter(e=>e.id!==t.id):e}function qt(e,t){if(e.length===0)return null;let n=kt(e.length,t);return{idx:n,comment:e[n]}}function Jt(e,t,n,r,i,a,o,s,c,l){let u=qt(e,t);u&&(n(u.idx),r(u.comment.fileIndex),i&&a(!1),setTimeout(()=>{At(o.current,s,u.comment,c),l()},100))}async function Yt(e,t,n,r,i,a){let o=await yt(e,t);if(!o){ht.error(`No models available to process comments`);return}await Ft({threadId:e,comments:n,selectedModel:o,clearComments:a,dispatch:r,onExit:i})}function Xt(e,t,n,r,i){let a=(0,Z.c)(38),{fetchUnifiedStatus:o}=ue(),s;a[0]!==n||a[1]!==t?(s=()=>It(n,t),a[0]=n,a[1]=t,a[2]=s):s=a[2];let[c,l]=(0,X.useState)(s),[u,d]=(0,X.useState)(null),f;a[3]===n?f=a[4]:(f=()=>Lt(n),a[3]=n,a[4]=f);let[p,m]=(0,X.useState)(f),[h,g]=(0,X.useState)(!0),_;a[5]!==n||a[6]!==t?(_=()=>{zt(l,m,n,t)},a[5]=n,a[6]=t,a[7]=_):_=a[7];let v=n?.selectedFileIndex,y;a[8]!==t||a[9]!==v?(y=[v,t],a[8]=t,a[9]=v,a[10]=y):y=a[10],(0,X.useEffect)(_,y);let b;a[11]===Symbol.for(`react.memo_cache_sentinel`)?(b=()=>{g(!0)},a[11]=b):b=a[11];let x;a[12]===e?x=a[13]:(x=[e],a[12]=e,a[13]=x),(0,X.useEffect)(b,x);let S,C;a[14]!==c||a[15]!==r||a[16]!==p?(S=()=>{Bt(c,p,r)},C=[c,r,p],a[14]=c,a[15]=r,a[16]=p,a[17]=S,a[18]=C):(S=a[17],C=a[18]),(0,X.useEffect)(S,C);let w;a[19]===i?w=a[20]:(w=e=>{Vt(e,i,m,g)},a[19]=i,a[20]=w);let T=w,E;a[21]===Symbol.for(`react.memo_cache_sentinel`)?(E=()=>{g(!0)},a[21]=E):E=a[21];let D=E,O;a[22]===e?O=a[23]:(O=async()=>{await Ht(e,l,m,d)},a[22]=e,a[23]=O);let k=O,A;a[24]!==o||a[25]!==k||a[26]!==e?(A=async t=>{await Ut(t,e,k,o,d)},a[24]=o,a[25]=k,a[26]=e,a[27]=A):A=a[27];let j=A,M;a[28]===c?M=a[29]:(M=be(c),a[28]=c,a[29]=M);let N=M,P;return a[30]!==u||a[31]!==c||a[32]!==T||a[33]!==j||a[34]!==h||a[35]!==p||a[36]!==N?(P={files:c,error:u,selectedFileIndex:p,mobileShowTree:h,treeData:N,setSelectedFileIndex:m,setMobileShowTree:g,handleFileSelect:T,handleShowTree:D,handleRevertFile:j},a[30]=u,a[31]=c,a[32]=T,a[33]=j,a[34]=h,a[35]=p,a[36]=N,a[37]=P):P=a[37],P}function Zt(e,t,n,r){let i=(0,Z.c)(17),[a,o]=(0,X.useState)(null),[s,c]=(0,X.useState)(null),l;i[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=e=>{let{existing:t,lineNumber:n,lineContent:r,side:i}=e;Wt(t,n,r,i,c,o)},i[0]=l):l=i[0];let u=l,d;i[1]!==e||i[2]!==s||i[3]!==a||i[4]!==n||i[5]!==r||i[6]!==t?(d=i=>{t(Gt(e,a,s,n,r,i)),o(null),c(null)},i[1]=e,i[2]=s,i[3]=a,i[4]=n,i[5]=r,i[6]=t,i[7]=d):d=i[7];let f=d,p;i[8]!==s||i[9]!==t?(p=()=>{t(e=>Kt(e,s)),s&&c(null)},i[8]=s,i[9]=t,i[10]=p):p=i[10];let m=p,h;i[11]===Symbol.for(`react.memo_cache_sentinel`)?(h=()=>{o(null),c(null)},i[11]=h):h=i[11];let g=h,_;return i[12]!==s||i[13]!==m||i[14]!==f||i[15]!==a?(_={pendingLine:a,editingComment:s,handleLineGutterClick:u,handleSaveComment:f,handleDeleteComment:m,handleCloseCommentPopup:g},i[12]=s,i[13]=m,i[14]=f,i[15]=a,i[16]=_):_=i[16],_}function Qt(e){let t=(0,Z.c)(19),{comments:n,files:r,isFullView:i,isMobile:a,activeCommentIndex:o,setActiveCommentIndex:s,setSelectedFileIndex:c,setMobileShowTree:l,diffEditorRef:u,applyAllDecorations:d}=e,f;t[0]!==d||t[1]!==n||t[2]!==u||t[3]!==r||t[4]!==i||t[5]!==a||t[6]!==s||t[7]!==l||t[8]!==c?(f=e=>{Jt(n,e,s,c,a,l,u,r,i,d)},t[0]=d,t[1]=n,t[2]=u,t[3]=r,t[4]=i,t[5]=a,t[6]=s,t[7]=l,t[8]=c,t[9]=f):f=t[9];let p=f,m;t[10]!==o||t[11]!==p?(m=()=>{p((o??0)-1)},t[10]=o,t[11]=p,t[12]=m):m=t[12];let h=m,g;t[13]!==o||t[14]!==p?(g=()=>{p((o??-1)+1)},t[13]=o,t[14]=p,t[15]=g):g=t[15];let _=g,v;return t[16]!==_||t[17]!==h?(v={handlePrevComment:h,handleNextComment:_},t[16]=_,t[17]=h,t[18]=v):v=t[18],v}function $t(e,t,n,r,i,a){let o=(0,Z.c)(9),s;o[0]!==n||o[1]!==r||o[2]!==i||o[3]!==t||o[4]!==a||o[5]!==e?(s=()=>Yt(e,t,n,r,i,()=>a([])),o[0]=n,o[1]=r,o[2]=i,o[3]=t,o[4]=a,o[5]=e,o[6]=s):s=o[6];let c=s,l;return o[7]===c?l=o[8]:(l={handleFixComments:c},o[7]=c,o[8]=l),l}function en({threadId:e,selectedFile:t,isImageFile:n,diffOriginal:r,diffModified:i,resolvedTheme:a,onEditorMount:o,diffEditorOptions:s,isPanelCollapsed:c,showTreeBackButton:l,onShowTree:u,onTogglePanel:d,isFullView:f,onToggleFullView:p,comments:m,activeCommentIndex:h,onPrevComment:g,onNextComment:_,onFixComments:v,isChatOpen:y,onOpenChat:b,onCloseChat:x}){return{threadId:e,selectedFile:t,content:{isImageFile:n,diffOriginal:r,diffModified:i,resolvedTheme:a,onEditorMount:o,diffEditorOptions:s,isFullView:f,onToggleFullView:p},layout:{isPanelCollapsed:c,showTreeBackButton:l,onShowTree:u,onTogglePanel:d},commentControls:{comments:m,activeCommentIndex:h,onPrevComment:g,onNextComment:_,onFixComments:v},chatControls:{isChatOpen:y,onOpenChat:b,onCloseChat:x}}}function tn({threadId:e,selectedFile:t,isImageFile:n,diffOriginal:r,diffModified:i,resolvedTheme:a,onEditorMount:o,isMobile:s,showTreeBackButton:c,onShowTree:l,isFullView:u,onToggleFullView:d,comments:f,activeCommentIndex:p,onPrevComment:m,onNextComment:h,onFixComments:g}){let[_,v]=(0,X.useState)(!1),[y,b]=(0,X.useState)(!1),x=(0,X.useRef)(null),S=(0,X.useCallback)(()=>{Mt(x,_)},[_]);return{panelRef:x,editorPanelProps:en({threadId:e,selectedFile:t,isImageFile:n,diffOriginal:r,diffModified:i,resolvedTheme:a,onEditorMount:o,diffEditorOptions:(0,X.useMemo)(()=>jt(s,t,u),[s,t,u]),isPanelCollapsed:_,showTreeBackButton:c,onShowTree:l,onTogglePanel:S,isFullView:u,onToggleFullView:d,comments:f,activeCommentIndex:p,onPrevComment:m,onNextComment:h,onFixComments:g,isChatOpen:y,onOpenChat:()=>b(!0),onCloseChat:()=>b(!1)}),onPanelCollapse:()=>v(!0),onPanelExpand:()=>v(!1)}}function nn(e){let t=(0,Z.c)(64),{threadId:n,onExit:r,loadVersion:i,cachedState:a,onCachedStateChange:o}=e,s;t[0]!==i||t[1]!==n?(s=Pe(n,i),t[0]=i,t[1]=n,t[2]=s):s=t[2];let u;t[3]===n?u=t[4]:(u=()=>ze(n),t[3]=n,t[4]=u);let d=H(s,u),f=c(),p=l(an),{resolvedTheme:m}=fe(),h=pe(),[g,_]=(0,X.useState)(!1),[v,y]=(0,X.useState)(null),{files:b,error:x,selectedFileIndex:S,mobileShowTree:C,treeData:w,setSelectedFileIndex:T,setMobileShowTree:E,handleFileSelect:D,handleShowTree:O,handleRevertFile:k}=Xt(n,d.files,a,o,h),{comments:A,setComments:j}=Ne(n),M=b[S],N;t[5]===M?N=t[6]:(N=Rt(M),t[5]=M,t[6]=N);let P=N,F;t[7]!==g||t[8]!==M?(F=gt(M,g),t[7]=g,t[8]=M,t[9]=F):F=t[9];let{diffOriginal:I,diffModified:ee}=F,{pendingLine:L,editingComment:R,handleLineGutterClick:te,handleSaveComment:z,handleDeleteComment:B,handleCloseCommentPopup:V}=Zt(A,j,M,S),U;t[10]!==v||t[11]!==A||t[12]!==b||t[13]!==te||t[14]!==g||t[15]!==M||t[16]!==S?(U={comments:A,activeCommentIndex:v,isFullView:g,selectedFileIndex:S,files:b,selectedFile:M,onLineGutterClick:te},t[10]=v,t[11]=A,t[12]=b,t[13]=te,t[14]=g,t[15]=M,t[16]=S,t[17]=U):U=t[17];let{diffEditorRef:ne,applyAllDecorations:re,handleEditorDidMount:ie}=Je(U),W;t[18]!==v||t[19]!==re||t[20]!==A||t[21]!==ne||t[22]!==b||t[23]!==g||t[24]!==h||t[25]!==E||t[26]!==T?(W={comments:A,files:b,isFullView:g,isMobile:h,activeCommentIndex:v,setActiveCommentIndex:y,setSelectedFileIndex:T,setMobileShowTree:E,diffEditorRef:ne,applyAllDecorations:re},t[18]=v,t[19]=re,t[20]=A,t[21]=ne,t[22]=b,t[23]=g,t[24]=h,t[25]=E,t[26]=T,t[27]=W):W=t[27];let{handlePrevComment:ae,handleNextComment:oe}=Qt(W),{handleFixComments:se}=$t(n,p,A,f,r,j),G=h&&!C,K;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(K=()=>_(rn),t[28]=K):K=t[28];let q;t[29]!==v||t[30]!==A||t[31]!==ee||t[32]!==I||t[33]!==ie||t[34]!==se||t[35]!==oe||t[36]!==ae||t[37]!==O||t[38]!==g||t[39]!==P||t[40]!==h||t[41]!==m||t[42]!==M||t[43]!==G||t[44]!==n?(q={threadId:n,selectedFile:M,isImageFile:P,diffOriginal:I,diffModified:ee,resolvedTheme:m,onEditorMount:ie,isMobile:h,showTreeBackButton:G,onShowTree:O,isFullView:g,onToggleFullView:K,comments:A,activeCommentIndex:v,onPrevComment:ae,onNextComment:oe,onFixComments:se},t[29]=v,t[30]=A,t[31]=ee,t[32]=I,t[33]=ie,t[34]=se,t[35]=oe,t[36]=ae,t[37]=O,t[38]=g,t[39]=P,t[40]=h,t[41]=m,t[42]=M,t[43]=G,t[44]=n,t[45]=q):q=t[45];let{panelRef:ce,editorPanelProps:le,onPanelCollapse:ue,onPanelExpand:de}=tn(q),J;return t[46]!==R||t[47]!==le||t[48]!==x||t[49]!==b||t[50]!==V||t[51]!==B||t[52]!==D||t[53]!==k||t[54]!==z||t[55]!==h||t[56]!==C||t[57]!==ue||t[58]!==de||t[59]!==ce||t[60]!==L||t[61]!==S||t[62]!==w?(J={isMobile:h,mobileShowTree:C,panelRef:ce,files:b,error:x,selectedFileIndex:S,treeData:w,handleFileSelect:D,handleRevertFile:k,editorPanelProps:le,editingComment:R,pendingLine:L,handleSaveComment:z,handleDeleteComment:B,handleCloseCommentPopup:V,onPanelCollapse:ue,onPanelExpand:de},t[46]=R,t[47]=le,t[48]=x,t[49]=b,t[50]=V,t[51]=B,t[52]=D,t[53]=k,t[54]=z,t[55]=h,t[56]=C,t[57]=ue,t[58]=de,t[59]=ce,t[60]=L,t[61]=S,t[62]=w,t[63]=J):J=t[63],J}function rn(e){return!e}function an(e){return e.projectModelSelections}function on(e){let t=(0,Z.c)(26),{isMobile:n,mobileShowTree:r,panelRef:i,files:a,error:o,selectedFileIndex:s,treeData:c,handleFileSelect:l,handleRevertFile:u,editorPanelProps:d,editingComment:f,pendingLine:p,handleSaveComment:m,handleDeleteComment:h,handleCloseCommentPopup:g,onPanelCollapse:_,onPanelExpand:v}=nn(e),y;t[0]!==o||t[1]!==a||t[2]!==l||t[3]!==u||t[4]!==s||t[5]!==c?(y=(0,Q.jsx)(bt,{treeData:c,files:a,error:o,selectedFileIndex:s,onFileSelect:l,onRevertFile:u}),t[0]=o,t[1]=a,t[2]=l,t[3]=u,t[4]=s,t[5]=c,t[6]=y):y=t[6];let b;t[7]===d?b=t[8]:(b=(0,Q.jsx)(ft,{...d}),t[7]=d,t[8]=b);let x;t[9]!==n||t[10]!==r||t[11]!==_||t[12]!==v||t[13]!==i||t[14]!==y||t[15]!==b?(x=(0,Q.jsx)(mt,{isMobile:n,mobileShowTree:r,panelRef:i,onPanelCollapse:_,onPanelExpand:v,fileTreePanel:y,diffEditorPanel:b}),t[9]=n,t[10]=r,t[11]=_,t[12]=v,t[13]=i,t[14]=y,t[15]=b,t[16]=x):x=t[16];let S;t[17]!==f||t[18]!==g||t[19]!==h||t[20]!==m||t[21]!==p?(S=(0,Q.jsx)(wt,{editingComment:f,pendingLine:p,onSave:m,onDelete:h,onClose:g}),t[17]=f,t[18]=g,t[19]=h,t[20]=m,t[21]=p,t[22]=S):S=t[22];let C;return t[23]!==x||t[24]!==S?(C=(0,Q.jsxs)(`div`,{className:`diff-view-root flex h-full min-h-0 w-full flex-col`,children:[x,S]}),t[23]=x,t[24]=S,t[25]=C):C=t[25],C}function sn(e){let t=(0,Z.c)(23),[n,r]=(0,X.useState)(0),[i,a]=(0,X.useState)(0),o=(0,X.useRef)(0),s=!!e.cachedState,c;t[0]===e.threadId?c=t[1]:(c=()=>{r(t=>(R(Pe(e.threadId,t)),t+1)),a(ln)},t[0]=e.threadId,t[1]=c);let l=c,u;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=()=>{a(0),r(0),o.current=0},t[2]=u):u=t[2];let d;t[3]===e.threadId?d=t[4]:(d=[e.threadId],t[3]=e.threadId,t[4]=d),(0,X.useEffect)(u,d);let f,p;t[5]!==e.refreshTrigger||t[6]!==e.threadId?(f=()=>{!e.refreshTrigger||e.refreshTrigger<=o.current||(o.current=e.refreshTrigger,r(t=>(R(Pe(e.threadId,t)),t+1)),a(cn))},p=[e.refreshTrigger,e.threadId],t[5]=e.refreshTrigger,t[6]=e.threadId,t[7]=f,t[8]=p):(f=t[7],p=t[8]),(0,X.useEffect)(f,p);let m=`${e.threadId}:${i}`,h;t[9]!==l||t[10]!==s?(h=s?null:(0,Q.jsx)(Ze,{onRetry:l}),t[9]=l,t[10]=s,t[11]=h):h=t[11];let g=`${e.threadId}:${n}`,_;t[12]!==n||t[13]!==e||t[14]!==g?(_=(0,Q.jsx)(on,{...e,loadVersion:n},g),t[12]=n,t[13]=e,t[14]=g,t[15]=_):_=t[15];let v;t[16]!==h||t[17]!==_?(v=(0,Q.jsx)(X.Suspense,{fallback:h,children:_}),t[16]=h,t[17]=_,t[18]=v):v=t[18];let y;return t[19]!==l||t[20]!==m||t[21]!==v?(y=(0,Q.jsx)(he,{fallbackTitle:`Failed to load review changes`,onRetry:l,children:v},m),t[19]=l,t[20]=m,t[21]=v,t[22]=y):y=t[22],y}function cn(e){return e+1}function ln(e){return e+1}export{sn as DiffView,sn as default};
|