tarsk 0.5.74 → 0.5.76
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/__tests__/quick_validate.test.js +79 -0
- package/dist/bundled-skills/skill-creator/scripts/quick_validate.js +78 -65
- package/dist/index.js +21828 -13103
- package/dist/jelly.webp +0 -0
- package/dist/public/assets/account-view-CWtpznW2.js +1 -0
- package/dist/public/assets/alert-dialog-BxMfaLuO.js +7 -0
- package/dist/public/assets/api-DX1ny6q-.js +2 -0
- package/dist/public/assets/async-error-boundary-BX1G17o9.js +1 -0
- package/dist/public/assets/async-loading-fallback-V0EaQ_Kn.js +1 -0
- package/dist/public/assets/browser-tab-D_5MLhxE.js +12 -0
- package/dist/public/assets/button-kWtLAMpB.js +1 -0
- package/dist/public/assets/card-B_EASkic.js +1 -0
- package/dist/public/assets/chat-dock-context-8K8Ikjgy.js +1 -0
- package/dist/public/assets/commit-dialog-CSXPoomw.js +1 -0
- package/dist/public/assets/commit-error-dialog-CdcGI69P.js +1 -0
- package/dist/public/assets/commit-method-fields-BtEHb0_G.js +1 -0
- package/dist/public/assets/context-menu-BcM6I0Sx.js +1 -0
- package/dist/public/assets/conversation-history-view-CuzU9qF6.js +1 -0
- package/dist/public/assets/create-project-dialog-a6Wgq-Z8.js +2 -0
- package/dist/public/assets/create-project-workspace-Dv_lEfZx.js +2 -0
- package/dist/public/assets/create-repo-dialog-BTIQ5Nw4.js +1 -0
- package/dist/public/assets/{delete-confirm-dialog-3DX1u0Dg.js → delete-confirm-dialog-Dl76vaxb.js} +1 -1
- package/dist/public/assets/diff-view-DA1uT9tc.js +4 -0
- package/dist/public/assets/dist-C2G92uPn.js +1 -0
- package/dist/public/assets/dist-CHhgoHp6.js +1 -0
- package/dist/public/assets/dist-CTLFS4dn.js +2 -0
- package/dist/public/assets/dist-D-2G8xGB.js +5 -0
- package/dist/public/assets/dist-DD4GtbiM.js +1 -0
- package/dist/public/assets/{dist-rO95BjzU.js → dist-DoxvnNEY.js} +1 -1
- package/dist/public/assets/dist-DsmF-KJ-.js +1 -0
- package/dist/public/assets/dist-c_QADQ5u.js +1 -0
- package/dist/public/assets/dist-yM5kyz9Q.js +1 -0
- package/dist/public/assets/es2015-BlPKkFZZ.js +41 -0
- package/dist/public/assets/explorer-monaco-editor-BdZ_bBqh.js +1 -0
- package/dist/public/assets/explorer-tab-view-CewTYYOm.js +2 -0
- package/dist/public/assets/explorer-tree-C0VDhihz.js +1 -0
- package/dist/public/assets/explorer-view-RCfDm3p5.js +76 -0
- package/dist/public/assets/git-history-dialog-DL0Trxiz.js +1 -0
- package/dist/public/assets/index-B3-5kIOf.js +3658 -0
- package/dist/public/assets/index-BLNUy5nZ.css +1 -0
- package/dist/public/assets/merged-pr-dialog-BzND8nzx.js +1 -0
- package/dist/public/assets/model-list-controls-I67L2x3H.js +1 -0
- package/dist/public/assets/onboarding-dialog-DY8v11hv.js +1 -0
- package/dist/public/assets/project-coding-view-DxOwsjtt.js +1 -0
- package/dist/public/assets/project-danger-zone-view-CkvKOQrl.js +1 -0
- package/dist/public/assets/project-env-vars-view-DYLWA7s0.js +1 -0
- package/dist/public/assets/project-model-aliases-view-DWu9khLA.js +1 -0
- package/dist/public/assets/project-settings-view-DJfmaWn6.js +1 -0
- package/dist/public/assets/project-tools-view-BEjBkghz.js +1 -0
- package/dist/public/assets/providers-list-view-jMEPJCci.js +1 -0
- package/dist/public/assets/pull-request-dialog-B_JCqT53.js +1 -0
- package/dist/public/assets/pull-with-changes-dialog-V3_km2zQ.js +1 -0
- package/dist/public/assets/push-before-pr-dialog-CarrD3y2.js +1 -0
- package/dist/public/assets/radio-group-Dn_pN-pn.js +1 -0
- package/dist/public/assets/scroll-area-lkVMElz5.js +1 -0
- package/dist/public/assets/settings-general-view-BhrfHGfQ.js +1 -0
- package/dist/public/assets/settings-list-DiiYzOxn.js +1 -0
- package/dist/public/assets/settings-logs-view-DbKM1SNk.js +5 -0
- package/dist/public/assets/settings-mcp-servers-view-4FpPIeYV.js +5 -0
- package/dist/public/assets/settings-models-view-CJVeo9ad.js +1 -0
- package/dist/public/assets/settings-skills-view-DoRPGbHG.js +3 -0
- package/dist/public/assets/settings-slack-view-Cc1NgVkx.js +1 -0
- package/dist/public/assets/settings-slash-commands-view-CmlWqqmi.js +1 -0
- package/dist/public/assets/settings-statistics-view-DRuyEbcN.js +1 -0
- package/dist/public/assets/settings-storage-view-DihbtUYb.js +1 -0
- package/dist/public/assets/settings-subagents-view-B2RvxDZI.js +2 -0
- package/dist/public/assets/settings-system-prompt-view-CvVbgjNN.js +1 -0
- package/dist/public/assets/settings-view-CPUAjTMa.js +2 -0
- package/dist/public/assets/slug-utils-CQ8PMWUL.js +1 -0
- package/dist/public/assets/store-BSzKIu5G.js +9 -0
- package/dist/public/assets/suspense-resource-BFrb_XJX.js +1 -0
- package/dist/public/assets/table-A3cgauiZ.js +1 -0
- package/dist/public/assets/tasks-view-CvFFLPeD.js +1 -0
- package/dist/public/assets/{terminal-panel-DHDoOXAH.js → terminal-panel-DIh6it7K.js} +3 -3
- package/dist/public/assets/toggle-group-Q36wRGKA.js +1 -0
- package/dist/public/assets/tooltip-Db8UeYxm.js +1 -0
- package/dist/public/assets/{use-active-dock-panel-instance-cO_DR87G.js → use-active-dock-panel-instance-DRfRj6MV.js} +1 -1
- package/dist/public/assets/use-installed-ai-files-C8nNWGC7.js +1 -0
- package/dist/public/assets/{use-suspense-resource-Dkz6ddFN.js → use-suspense-resource-Dakt9lfT.js} +1 -1
- package/dist/public/assets/useBaseQuery-34f0-SVd.js +1 -0
- package/dist/public/assets/{web-C7jr0n2X.js → web-Bn9n5e7r.js} +1 -1
- package/dist/public/assets/{web-D0nlJHDu.js → web-C2KGFouM.js} +1 -1
- package/dist/public/assets/{web-jJ1krOD-.js → web-Dk3GAfTy.js} +1 -1
- package/dist/public/assets/{web-DPW3m0cL.js → web-DycfRH4j.js} +1 -1
- package/dist/public/browser-preview-rpc.js +107 -82
- package/dist/public/index.html +26 -33
- package/dist/recommended-models.txt +2 -2
- package/package.json +6 -6
- package/dist/public/assets/Combination-BdvBzSm4.js +0 -41
- package/dist/public/assets/account-view-c-UG0JKH.js +0 -1
- package/dist/public/assets/alert-dialog-DAHkynVZ.js +0 -7
- package/dist/public/assets/api-D1GxdEEp.js +0 -2
- package/dist/public/assets/async-error-boundary-DNJqC4BV.js +0 -1
- package/dist/public/assets/async-loading-fallback-D2X0o4Qa.js +0 -1
- package/dist/public/assets/browser-tab-BKQJKTg8.js +0 -12
- package/dist/public/assets/button-B6HDsfd5.js +0 -1
- package/dist/public/assets/card-DZGd45nw.js +0 -1
- package/dist/public/assets/chat-dock-context-8_5G30KG.js +0 -1
- package/dist/public/assets/commit-dialog-OQFa4W6i.js +0 -1
- package/dist/public/assets/commit-error-dialog-BFByxoUG.js +0 -1
- package/dist/public/assets/commit-method-fields-BihSf23f.js +0 -1
- package/dist/public/assets/context-menu-e5jeH0Jl.js +0 -1
- package/dist/public/assets/conversation-history-view-BUlO9oJ6.js +0 -1
- package/dist/public/assets/create-project-dialog-CY5wIGQV.js +0 -2
- package/dist/public/assets/create-project-workspace-ClILToZd.js +0 -1
- package/dist/public/assets/create-repo-dialog-CKUQoOaX.js +0 -1
- package/dist/public/assets/dialog--0foS3aw.js +0 -1
- package/dist/public/assets/diff-view-DLPu21IR.js +0 -4
- package/dist/public/assets/dist-Bxyh1Ml_.js +0 -1
- package/dist/public/assets/dist-CFXDhuA_.js +0 -5
- package/dist/public/assets/dist-CNOCRPxn.js +0 -1
- package/dist/public/assets/dist-Cda_ffeR.js +0 -1
- package/dist/public/assets/dist-CkQILg8A.js +0 -1
- package/dist/public/assets/dist-CqGsum35.js +0 -1
- package/dist/public/assets/dist-DjiNKpTV.js +0 -2
- package/dist/public/assets/dist-eMdiO0P3.js +0 -1
- package/dist/public/assets/explorer-tab-view-nzl0M0Vm.js +0 -2
- package/dist/public/assets/explorer-tree-Bkb6dzmf.js +0 -1
- package/dist/public/assets/explorer-view-NcArt0_H.js +0 -75
- package/dist/public/assets/git-history-dialog-rWkjoaR5.js +0 -1
- package/dist/public/assets/index-BOB3ZUQs.js +0 -3386
- package/dist/public/assets/index-BdGMz8sL.css +0 -1
- package/dist/public/assets/markdown-renderer-BkKibNMs.js +0 -8
- package/dist/public/assets/mcp-server-card-DFT7uyRh.js +0 -1
- package/dist/public/assets/merged-pr-dialog-BOrFaYk6.js +0 -1
- package/dist/public/assets/model-list-controls-CpQjn6i7.js +0 -1
- package/dist/public/assets/ndjson-stream-DeGpE5o5.js +0 -2
- package/dist/public/assets/onboarding-dialog-HJpyzVWa.js +0 -1
- package/dist/public/assets/project-env-vars-view-C9VTTfTo.js +0 -1
- package/dist/public/assets/project-model-aliases-view-DKRoV7Gc.js +0 -1
- package/dist/public/assets/project-settings-view-BDYqpibk.js +0 -1
- package/dist/public/assets/project-tools-view-9WUc4Yca.js +0 -1
- package/dist/public/assets/providers-list-view-BgvIWP_0.js +0 -1
- package/dist/public/assets/pull-request-dialog-BM1dkFpK.js +0 -1
- package/dist/public/assets/pull-with-changes-dialog-Bjl_esir.js +0 -1
- package/dist/public/assets/push-before-pr-dialog-Cbc_zaI8.js +0 -1
- package/dist/public/assets/query-keys-5QPW6Dv-.js +0 -1
- package/dist/public/assets/radio-group-CMW5ku-w.js +0 -1
- package/dist/public/assets/scenic-chrome-CbN3vum7.js +0 -1
- package/dist/public/assets/scroll-area-BMQFeWmq.js +0 -1
- package/dist/public/assets/settings-general-view-BaMVw6kD.js +0 -1
- package/dist/public/assets/settings-instructions-view-BRE87H2U.js +0 -1
- package/dist/public/assets/settings-list-BpPbGcpS.js +0 -1
- package/dist/public/assets/settings-logs-view-Bbue8ZOn.js +0 -5
- package/dist/public/assets/settings-mcp-servers-view-BiMCy8sH.js +0 -5
- package/dist/public/assets/settings-models-view-BkZtGcUP.js +0 -1
- package/dist/public/assets/settings-rules-view-TK7LEC-0.js +0 -8
- package/dist/public/assets/settings-skills-view-Bv9Kn55r.js +0 -3
- package/dist/public/assets/settings-slack-view-Dy2bFJqU.js +0 -1
- package/dist/public/assets/settings-slash-commands-view-DiR1IyMF.js +0 -1
- package/dist/public/assets/settings-statistics-view-DX1UVeCJ.js +0 -1
- package/dist/public/assets/settings-storage-view-D8tHP8XT.js +0 -1
- package/dist/public/assets/settings-subagents-view-Bz7jBhbB.js +0 -2
- package/dist/public/assets/settings-system-prompt-view-VHGAqfQk.js +0 -1
- package/dist/public/assets/settings-view-QBOhYAyv.js +0 -2
- package/dist/public/assets/skeleton-DvLd14RU.js +0 -1
- package/dist/public/assets/store-CHF6tOp2.js +0 -9
- package/dist/public/assets/suspense-resource-DnYnmTbs.js +0 -1
- package/dist/public/assets/switch-P5m18oUl.js +0 -1
- package/dist/public/assets/table-MUx4ZxvS.js +0 -1
- package/dist/public/assets/tasks-view-l00Nc2fV.js +0 -2
- package/dist/public/assets/toggle-group-DMR7z3pz.js +0 -1
- package/dist/public/assets/tooltip-BtJG5fZl.js +0 -1
- package/dist/public/assets/use-installed-ai-files-CJr_PVcY.js +0 -1
- package/dist/public/assets/use-open-chat-dock-panel-B31lwcQF.js +0 -1
- package/dist/public/assets/useInfiniteQuery-DUeUxDcu.js +0 -1
- package/dist/public/assets/utils-CT-Dw22R.js +0 -1
|
@@ -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{s as i}from"./chunk-QFMPRPBF-COsSkB7x.js";import{X as a,ot as o}from"./dist-DjiNKpTV.js";import{Et as s}from"./dist-CNOCRPxn.js";import{t as c}from"./utils-CT-Dw22R.js";import{t as l}from"./button-B6HDsfd5.js";import{Bn as u,yt as d}from"./api-D1GxdEEp.js";import{t as f}from"./use-toast-xpb5jNtN.js";import{Mn as p,On as m,Tn as h,kn as g,xn as _,yn as v,yt as y}from"./index-BOB3ZUQs.js";import{t as b}from"./use-settings-page-loading-BTySlInF.js";var x=e(n(),1),S=t(),C=r(),w=a(),T=Math.ceil(w.length/2),E=[w.slice(0,T),w.slice(T)];function D(e){let t=(0,S.c)(14),{tool:n,enabled:r,disabled:i,onToggle:a}=e,s;t[0]!==a||t[1]!==n.name?(s=e=>a(n.name,e),t[0]=a,t[1]=n.name,t[2]=s):s=t[2];let l;t[3]!==i||t[4]!==r||t[5]!==s||t[6]!==n.displayName?(l=(0,C.jsx)(y,{value:r,onChange:s,disabled:i,ariaLabel:n.displayName}),t[3]=i,t[4]=r,t[5]=s,t[6]=n.displayName,t[7]=l):l=t[7];let u;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(u=c(o.body,`truncate`),t[8]=u):u=t[8];let d;t[9]===n.displayName?d=t[10]:(d=(0,C.jsx)(`span`,{className:u,children:n.displayName}),t[9]=n.displayName,t[10]=d);let f;return t[11]!==l||t[12]!==d?(f=(0,C.jsxs)(`div`,{className:`grid min-h-10 grid-cols-[auto_minmax(0,1fr)] items-center gap-3 px-3 py-2`,children:[l,d]}),t[11]=l,t[12]=d,t[13]=f):f=t[13],f}function O(e){let t=(0,S.c)(13),{tools:n,disabledTools:r,disabled:i,forceEnabledTools:a,onToggle:o}=e,s;if(t[0]!==i||t[1]!==r||t[2]!==a||t[3]!==o||t[4]!==n){let e;t[6]!==i||t[7]!==r||t[8]!==a||t[9]!==o?(e=e=>(0,C.jsx)(D,{tool:e,enabled:!r.includes(e.name),disabled:i||a.has(e.name),onToggle:o},e.name),t[6]=i,t[7]=r,t[8]=a,t[9]=o,t[10]=e):e=t[10],s=n.map(e),t[0]=i,t[1]=r,t[2]=a,t[3]=o,t[4]=n,t[5]=s}else s=t[5];let c;return t[11]===s?c=t[12]:(c=(0,C.jsx)(`div`,{className:`divide-y divide-table-border`,children:s}),t[11]=s,t[12]=c),c}function k(e){let t=(0,S.c)(23),{disabledTools:n,onChange:r,disabled:i,forceEnabledTools:a}=e,o=i===void 0?!1:i,s;t[0]===a?s=t[1]:(s=new Set((a??[]).map(A)),t[0]=a,t[1]=s);let c=s,l;t[2]!==n||t[3]!==c||t[4]!==r?(l=function(e,t){let i=e.toLowerCase();if(!(c.has(i)&&!t)){if(t){r(n.filter(e=>e!==i));return}n.includes(i)||r([...n,i].sort())}},t[2]=n,t[3]=c,t[4]=r,t[5]=l):l=t[5];let u=l,d;t[6]!==o||t[7]!==n||t[8]!==c||t[9]!==u?(d=w.map(e=>(0,C.jsx)(D,{tool:e,enabled:!n.includes(e.name),disabled:o||c.has(e.name),onToggle:u},e.name)),t[6]=o,t[7]=n,t[8]=c,t[9]=u,t[10]=d):d=t[10];let f;t[11]===d?f=t[12]:(f=(0,C.jsx)(`div`,{className:`divide-y divide-table-border @md/settings-page:hidden`,children:d}),t[11]=d,t[12]=f);let p;t[13]!==o||t[14]!==n||t[15]!==c||t[16]!==u?(p=E.map((e,t)=>(0,C.jsx)(O,{tools:e,disabledTools:n,disabled:o,forceEnabledTools:c,onToggle:u},t)),t[13]=o,t[14]=n,t[15]=c,t[16]=u,t[17]=p):p=t[17];let m;t[18]===p?m=t[19]:(m=(0,C.jsx)(`div`,{className:`hidden @md/settings-page:grid @md/settings-page:grid-cols-2 divide-x divide-table-border`,children:p}),t[18]=p,t[19]=m);let h;return t[20]!==f||t[21]!==m?(h=(0,C.jsxs)(C.Fragment,{children:[f,m]}),t[20]=f,t[21]=m,t[22]=h):h=t[22],h}function A(e){return e.toLowerCase()}function j({projectId:e,onProjectUpdated:t}){let n=i(),[r,a]=(0,x.useState)([]),[o,c]=(0,x.useState)([]),[S,w]=(0,x.useState)(!1),[T,E]=(0,x.useState)(!1),[D,O]=(0,x.useState)(!0),[A,j]=(0,x.useState)(!1),M=(0,x.useCallback)(async()=>{if(!e){O(!1);return}O(!0);try{let t=await d(e),n=t.disabledTools??[],r=t.smartJsEnabled===!0;a(n),c(n),w(r),E(r)}catch(e){f({title:`Error`,description:e instanceof Error?e.message:`Failed to load tools settings`,variant:`destructive`})}finally{O(!1)}},[e]);(0,x.useLayoutEffect)(()=>{e&&O(!0)},[e]),(0,x.useEffect)(()=>{M()},[M]);let N=b(e,[D]);function P(){return JSON.stringify([...r].sort())!==JSON.stringify([...o].sort())}function F(){return P()||S!==T}async function I(){if(!(!e||!F())){j(!0);try{let i={};P()&&(i.disabledTools=r.length>0?r:null),S!==T&&(i.smartJsEnabled=S),await u(e,i),c(r),E(S),t&&await t(),await M(),n(`/`)}catch(e){f({title:`Error`,description:e instanceof Error?e.message:`Failed to save tools settings`,variant:`destructive`})}finally{j(!1)}}}function L(e){w(e),e&&a(e=>e.filter(e=>e!==`run_js`))}return e?(0,C.jsx)(h,{loading:N,children:(0,C.jsxs)(p,{className:`shrink-0`,children:[(0,C.jsx)(_,{title:`Tools`,description:`Control which tools the agent can use in this project. Disabled tools are hidden from the agent.`,action:(0,C.jsx)(l,{onClick:()=>void I(),disabled:A||D,children:A?(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(s,{className:`mr-2 h-4 w-4 animate-spin`}),`Saving...`]}):`Save`}),sticky:!1}),(0,C.jsxs)(g,{className:`max-w-none pt-6`,children:[(0,C.jsx)(v,{title:`Smart JS`,description:`When enabled, the agent orchestrates tools by writing JavaScript for Run JS (except Ask, Write, and Subagent). Other tools stay available through callTool inside the worker.`,controlLayout:`row-end`,action:(0,C.jsx)(y,{value:S,onChange:L,disabled:D||A,ariaLabel:`Smart JS`})}),(0,C.jsx)(`div`,{className:`mt-8`,children:(0,C.jsx)(k,{disabledTools:r,onChange:a,disabled:D||A,forceEnabledTools:S?[`run_js`]:void 0})})]})]})}):(0,C.jsx)(m,{title:`No project selected`,children:`Please select a project from the sidebar to configure tools.`})}export{j as default};
|
|
@@ -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{c as i,s as a}from"./chunk-QFMPRPBF-COsSkB7x.js";import{G as o,S as s,at as c,ot as l}from"./dist-DjiNKpTV.js";import{Q as u,n as d}from"./store-CHF6tOp2.js";import{$ as f,Et as p,cn as m,jt as h,kn as g,ln as _,q as v,y}from"./dist-CNOCRPxn.js";import{n as b,o as x,t as S}from"./utils-CT-Dw22R.js";import{t as C}from"./button-B6HDsfd5.js";import{B as ee,Et as te,G as ne,L as w,R as re,V as ie,W as ae,an as oe,kt as se,tt as T,vn as ce,yn as le}from"./api-D1GxdEEp.js";import{i as ue,n as E,r as D,t as O}from"./tooltip-BtJG5fZl.js";import{n as de}from"./async-loading-fallback-D2X0o4Qa.js";import{t as k}from"./suspense-resource-DnYnmTbs.js";import{t as A}from"./use-suspense-resource-Dkz6ddFN.js";import{Ct as fe,Dn as j,Dt as M,En as N,I as P,It as F,L as pe,Mn as I,On as me,R as L,bn as R,hn as z,kn as B,o as he,wt as V,xn as H,xt as ge,z as U}from"./index-BOB3ZUQs.js";import{t as W}from"./async-error-boundary-DNJqC4BV.js";import{t as G}from"./sorting-DqwxPMRN.js";import{t as _e}from"./pending-changes-Bn-0ak1d.js";import{o as K}from"./settings-list-BpPbGcpS.js";import{t as q}from"./use-deferred-search-Dgxosq55.js";import{n as J,r as Y,t as X}from"./model-list-controls-CpQjn6i7.js";var Z=t(),Q=e(n(),1),$=r(),ve=x(S(l.compact,`inline-flex items-center rounded-full border px-2.5 py-0.5 font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2`),{variants:{variant:{default:`border-transparent bg-primary text-primary-foreground hover:bg-primary/80`,secondary:`border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80`,destructive:`border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80`,outline:`text-foreground`}},defaultVariants:{variant:`default`}});function ye(e){let t=(0,Z.c)(10),n,r,i;t[0]===e?(n=t[1],r=t[2],i=t[3]):({className:n,variant:i,...r}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i);let a;t[4]!==n||t[5]!==i?(a=S(ve({variant:i}),n),t[4]=n,t[5]=i,t[6]=a):a=t[6];let o;return t[7]!==r||t[8]!==a?(o=(0,$.jsx)(`div`,{className:a,...r}),t[7]=r,t[8]=a,t[9]=o):o=t[9],o}var be=s(`app.use-provider-details.hook`);function xe(e,t,n){return n?e.find(e=>e.slug===n)??null:t?e.find(e=>e.name===t)??null:null}function Se({selectedProviderName:e=null,selectedProviderSlug:t=null,providerData:n}){let r=d(),[i,a]=(0,Q.useState)(null),[s,c]=(0,Q.useState)(``),[l,f]=(0,Q.useState)(!1),[p,m]=(0,Q.useState)(null),[h,g]=(0,Q.useState)(``),[_,v]=(0,Q.useState)([]),[y,b]=(0,Q.useState)(new Set),[x,S]=(0,Q.useState)(new Set),[C,T]=(0,Q.useState)(new Map),{query:ue,setQuery:E,deferredQuery:D}=q(),[O,de]=(0,Q.useState)(`alphabetical`),[k,A]=(0,Q.useState)(`all`),[j,M]=(0,Q.useState)(!1),[N,P]=(0,Q.useState)(``),[F,pe]=(0,Q.useState)(``),[I,me]=(0,Q.useState)(``),[L,R]=(0,Q.useState)(`coding`),[B,he]=(0,Q.useState)([]),[V,H]=(0,Q.useState)(new Set),[ge,U]=(0,Q.useState)(new Set),[W,K]=(0,Q.useState)(new Map),[J,Y]=(0,Q.useState)({}),X=e=>z(e.id);(0,Q.useEffect)(()=>{(async()=>{if(g(``),n&&(t&&n.slug===t||e&&n.name===e)){a(n),me(n.apiKey??``),c(n.apiKey??``),Y(n.envValues??{}),ye(n.slug),Z(n.slug);return}try{let n=xe(await se(),e,t);a(n),me(n?.apiKey??``),c(n?.apiKey??``),Y(n?.envValues??{}),n&&(ye(n.slug),Z(n.slug))}catch(e){g(e instanceof Error?e.message:`Failed to load providers`)}})()},[e,t,n]);let Z=async e=>{m(null);try{let t=await te(e);t.status===`success`&&m(t.balance)}catch(t){be.error(`Failed to load balance for ${e}:`,t)}};function $(){v([]),he([]),b(new Set),S(new Set),H(new Set),U(new Set),T(new Map),K(new Map)}function ve(e){return e instanceof Error?e.message:`Failed to load models from local API`}let ye=async e=>{f(!0),pe(``),E(``),de(`alphabetical`),A(`all`),R(`coding`);try{let[t,n]=await Promise.all([ne(e),ae(e)]);v(t.models),he(n.models);let r=new Set(t.enabledModelIds);b(r),S(r);let i=new Set(n.enabledModelIds);H(i),U(i),T(new Map),K(new Map)}catch(t){be.error(`Failed to load models for ${e}:`,t),$(),pe(ve(t))}finally{f(!1)}};async function Se(e){f(!0),pe(``);try{await oe(e),await ye(e),r({type:u.ConfigUpdated})}catch(t){be.error(`Failed to refresh models for ${e}:`,t),$(),pe(ve(t)),f(!1)}}let Ce=(e,t)=>{i?.name===e&&(c(t),Te(t))},we=(e,t)=>{Y(n=>({...n,[e]:t})),i&&(async()=>{try{await ce({[e]:t}),r({type:u.ConfigUpdated}),P(`${fe(e)} saved successfully`),setTimeout(()=>P(``),3e3)}catch(e){P(e instanceof Error?e.message:`Failed to save provider settings`);return}o(i.slug)&&e===`LOCAL_API_URL`&&t.trim()&&await Se(i.slug)})()},Te=async e=>{if(!(!i||e===I))try{await le(i.slug,e),r({type:u.ConfigUpdated}),me(e),P(`API key saved successfully`),setTimeout(()=>P(``),3e3)}catch(e){P(e instanceof Error?e.message:`Failed to save API key`)}},Ee=(e,t)=>{t===`image`?K(t=>{let n=new Map(t),r=V.has(e),i=n.has(e),a=n.get(e),o=!(i?a:r);return o===r?n.delete(e):n.set(e,o),De(e,(n.has(e)?n.get(e):r)??!1,`image`),n}):T(t=>{let n=_e(t,e,y);return De(e,(n.has(e)?n.get(e):y.has(e))??!1,`coding`),n})},De=async(e,t,n=`coding`)=>{if(i)try{n===`image`?(t?(await ee(i.slug,e),H(t=>new Set([...t,e]))):(await w(i.slug,e),H(t=>{let n=new Set(t);return n.delete(e),n})),K(t=>{let n=new Map(t);return n.delete(e),n})):(t?(await ie(i.slug,e),b(t=>new Set([...t,e]))):(await re(i.slug,e),b(t=>{let n=new Set(t);return n.delete(e),n})),T(t=>{let n=new Map(t);return n.delete(e),n})),r({type:u.ConfigUpdated}),P(`Model preferences saved successfully`),setTimeout(()=>P(``),3e3)}catch(e){P(e instanceof Error?e.message:`Failed to save model changes`)}};async function Oe(e,t=`coding`){let n=t===`image`?B:_,r=t===`image`?V:y;(t===`image`?K:T)(t=>{let i=new Map(t);for(let t of n)r.has(t.id)===e?i.delete(t.id):i.set(t.id,e);return i});for(let i of n)r.has(i.id)!==e&&await De(i.id,e,t)}let ke=s!==void 0&&s.trim().length>0;return{selectedProvider:i,error:h,balance:p,displayApiKey:s,showApiKey:j,setShowApiKey:M,providerEnvValues:J,modelsLoading:l,modelsError:F,saveStatus:N,modelTab:L,setModelTab:R,modelSearchQuery:ue,setModelSearchQuery:E,modelSortBy:O,setModelSortBy:de,modelFilter:k,setModelFilter:A,availableModels:_,enabledModelIds:y,pendingChanges:C,filteredAndSortedModels:(0,Q.useMemo)(()=>G({models:_,query:D,sortBy:O,getDisplayName:X,freeOnly:k===`free`,groupByProvider:!0,getPriority:e=>+!x.has(e.id)}),[_,D,k,x,O,X]),availableImageModels:B,enabledImageModelIds:V,pendingImageChanges:W,filteredAndSortedImageModels:(0,Q.useMemo)(()=>G({models:B,query:D,sortBy:O===`coding-index`||O===`intelligence-by-price`?`alphabetical`:O,getDisplayName:X,freeOnly:k===`free`,groupByProvider:!0,getPriority:e=>+!ge.has(e.id)}),[B,D,k,ge,O,X]),hasApiKey:ke,getModelDisplayName:X,handleUpdateKeyLocal:Ce,handleUpdateProviderEnv:we,refreshLocalProviderModels:Se,handleToggleModel:Ee,handleToggleAllModels:Oe}}function Ce(e){let t=(0,Z.c)(7),{provider:n,onBack:r}=e;if(!r&&!n.url)return null;let i;t[0]===n.url?i=t[1]:(i=n.url?(0,$.jsx)(ge,{url:n.url,className:S(l.compact,`p-3`)}):null,t[0]=n.url,t[1]=i);let a;t[2]===r?a=t[3]:(a=r?(0,$.jsxs)(C,{variant:`ghost`,size:`icon`,className:`h-8 w-8`,onClick:r,children:[(0,$.jsx)(y,{className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Close provider details`})]}):null,t[2]=r,t[3]=a);let o;return t[4]!==i||t[5]!==a?(o=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[i,a]}),t[4]=i,t[5]=a,t[6]=o):o=t[6],o}function we(e){let t=(0,Z.c)(6),{balance:n}=e;if(n===null)return null;let r,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=S(l.compact,`inline-flex shrink-0 items-center gap-1.5 font-medium`),i=(0,$.jsx)(`div`,{className:`h-1.5 w-1.5 rounded-full bg-green-500`}),t[0]=r,t[1]=i):(r=t[0],i=t[1]);let a;t[2]===n?a=t[3]:(a=b(n),t[2]=n,t[3]=a);let o;return t[4]===a?o=t[5]:(o=(0,$.jsxs)(`span`,{className:r,children:[i,`$`,a,` balance`]}),t[4]=a,t[5]=o),o}function Te(e){let t=(0,Z.c)(8),{title:n,tooltip:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=S(l.label,`cursor-help`),t[0]=i):i=t[0];let a;t[1]===n?a=t[2]:(a=(0,$.jsx)(ue,{asChild:!0,children:(0,$.jsx)(`span`,{className:i,children:n})}),t[1]=n,t[2]=a);let o;t[3]===r?o=t[4]:(o=(0,$.jsx)(E,{children:r}),t[3]=r,t[4]=o);let s;return t[5]!==a||t[6]!==o?(s=(0,$.jsx)(D,{children:(0,$.jsxs)(O,{children:[a,o]})}),t[5]=a,t[6]=o,t[7]=s):s=t[7],s}function Ee(e){let t=(0,Z.c)(10),{provider:n,displayApiKey:r,showApiKey:i,onToggleShowApiKey:a,onUpdateKey:s,providerEnvValues:c,onUpdateEnv:l,modelsLoading:u,onRefreshModels:d}=e,g;return t[0]!==r||t[1]!==u||t[2]!==d||t[3]!==a||t[4]!==l||t[5]!==s||t[6]!==n||t[7]!==c||t[8]!==i?(g=(0,$.jsx)($.Fragment,{children:n.authType===`APIKey`?(0,$.jsx)($.Fragment,{children:(0,$.jsxs)(j,{children:[(0,$.jsx)(N,{label:(0,$.jsx)(Te,{title:`API Key`,tooltip:`Your API key is stored locally and never shared.`}),control:(0,$.jsxs)(`div`,{className:`relative`,children:[(0,$.jsx)(h,{className:`absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground`}),(0,$.jsx)(F,{type:i?`text`:`password`,placeholder:n.keyName||`Enter API Key`,className:`pl-10 pr-10`,value:r,onChange:e=>{s(n.name,e.target.value)}}),(0,$.jsx)(C,{type:`button`,variant:`ghost`,size:`sm`,className:`absolute right-1 top-1/2 -translate-y-1/2 h-8 w-8 p-0`,onClick:a,disabled:!r,children:i?(0,$.jsx)(_,{className:`h-4 w-4 text-muted-foreground`}):(0,$.jsx)(m,{className:`h-4 w-4 text-muted-foreground`})})]})}),V(n).map(e=>(0,$.jsx)(N,{label:(0,$.jsx)(Te,{title:fe(e),tooltip:e}),control:o(n.slug)&&e===`LOCAL_API_URL`?(0,$.jsxs)(`div`,{className:`relative`,children:[(0,$.jsx)(F,{id:e,value:c[e]??``,onChange:t=>l(e,t.target.value),placeholder:n.api,className:`pr-10`,spellCheck:!1,autoCorrect:`off`,autoCapitalize:`off`}),(0,$.jsx)(D,{children:(0,$.jsxs)(O,{children:[(0,$.jsx)(ue,{asChild:!0,children:(0,$.jsx)(C,{type:`button`,variant:`ghost`,size:`sm`,className:`absolute right-1 top-1/2 -translate-y-1/2 h-8 w-8 p-0`,onClick:()=>{d(n.slug)},disabled:u,children:u?(0,$.jsx)(p,{className:`h-4 w-4 animate-spin text-muted-foreground`}):(0,$.jsx)(f,{className:`h-4 w-4 text-muted-foreground`})})}),(0,$.jsx)(E,{children:`Refresh models`})]})})]}):(0,$.jsx)(F,{id:e,value:c[e]??``,onChange:t=>l(e,t.target.value),placeholder:e,spellCheck:!1,autoCorrect:`off`,autoCapitalize:`off`})},e))]})}):(0,$.jsxs)(`div`,{className:`space-y-2 text-center`,children:[(0,$.jsx)(R,{className:`mb-0`,children:`This provider uses OAuth for authentication.`}),(0,$.jsxs)(C,{variant:`outline`,size:`sm`,disabled:!0,children:[`Sign in with `,n.name]})]})}),t[0]=r,t[1]=u,t[2]=d,t[3]=a,t[4]=l,t[5]=s,t[6]=n,t[7]=c,t[8]=i,t[9]=g):g=t[9],g}function De(e){let t=(0,Z.c)(22),{tab:n,model:r,displayName:i,willBeEnabled:a,hasApiKey:o,showStarRating:s,onToggle:c}=e,u=r.pricing,d=n===`image`?`image-${r.id}`:r.id,f=r.id,p=!o&&`opacity-25`,m;t[0]===p?m=t[1]:(m=S(`flex cursor-default items-center space-x-3 p-3 transition-colors hover:bg-muted/30`,p),t[0]=p,t[1]=m);let h=!o,g=a??!1,_;t[2]!==r.id||t[3]!==c?(_=()=>c(r.id),t[2]=r.id,t[3]=c,t[4]=_):_=t[4];let v;t[5]!==d||t[6]!==h||t[7]!==g||t[8]!==_?(v=(0,$.jsx)(he,{id:d,disabled:h,checked:g,onCheckedChange:_,className:`mt-0`}),t[5]=d,t[6]=h,t[7]=g,t[8]=_,t[9]=v):v=t[9];let y;t[10]!==d||t[11]!==i||t[12]!==r.coding_index||t[13]!==u||t[14]!==s||t[15]!==n?(y=n===`coding`?(0,$.jsxs)(`div`,{className:`flex-1 flex items-center justify-between gap-3 leading-none`,children:[(0,$.jsx)(`div`,{className:`flex items-center gap-2 flex-1 min-w-0`,children:(0,$.jsx)(`label`,{htmlFor:d,className:S(l.body,`leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70 cursor-pointer truncate`),children:i})}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2 flex-shrink-0`,children:[s&&(0,$.jsx)(Y,{codingIndex:r.coding_index,modelName:i}),u&&(0,$.jsx)(`span`,{className:S(l.caption,`whitespace-nowrap`),children:(u.prompt??0)===0&&(u.completion??0)===0?``:`$${b(u.prompt??0)} in | $${b(u.completion??0)} out`})]})]}):(0,$.jsxs)(`div`,{className:`flex-1 flex items-center justify-between gap-3 leading-none`,children:[(0,$.jsx)(`div`,{className:`flex items-center gap-2 flex-1 min-w-0`,children:(0,$.jsx)(`label`,{htmlFor:d,className:S(l.label,`leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70 cursor-pointer truncate`),children:i})}),u&&(0,$.jsx)(`span`,{className:S(l.caption,`whitespace-nowrap flex-shrink-0`),children:(u.prompt??0)===0&&(u.completion??0)===0?``:`$${b(u.prompt??0)} in | $${b(u.completion??0)} out`})]}),t[10]=d,t[11]=i,t[12]=r.coding_index,t[13]=u,t[14]=s,t[15]=n,t[16]=y):y=t[16];let x;return t[17]!==r.id||t[18]!==m||t[19]!==v||t[20]!==y?(x=(0,$.jsxs)(`div`,{className:m,children:[v,y]},f),t[17]=r.id,t[18]=m,t[19]=v,t[20]=y,t[21]=x):x=t[21],x}function Oe(e){let t=(0,Z.c)(13),{tab:n,models:r,filteredModels:i,modelsLoading:a,modelsError:o,hasApiKey:s,enabledModelIds:u,pendingChanges:d,modelSortBy:f,getModelDisplayName:m,onToggleModel:h}=e,g=n===`coding`,_=g?o?`No models loaded.`:`No models available for this provider.`:`No image models available for this provider.`,v;return t[0]!==_||t[1]!==u||t[2]!==i||t[3]!==m||t[4]!==s||t[5]!==g||t[6]!==f||t[7]!==r||t[8]!==a||t[9]!==h||t[10]!==d||t[11]!==n?(v=(0,$.jsx)(`div`,{className:`flex flex-col gap-4`,children:a?(0,$.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,$.jsx)(p,{className:`h-5 w-5 animate-spin text-muted-foreground`})}):r.length===0?(0,$.jsx)(`div`,{className:`text-center py-8`,children:(0,$.jsx)(`p`,{className:l.bodyMuted,children:_})}):(0,$.jsx)(D,{children:(0,$.jsx)(`div`,{className:S(`grid grid-cols-1 gap-0`,c.tableWrapper),children:i.length===0?(0,$.jsx)(`div`,{className:`text-center py-8`,children:(0,$.jsx)(`p`,{className:l.bodyMuted,children:`No models matching your filters.`})}):i.map(e=>{let t=u.has(e.id),r=d.has(e.id),i=d.get(e.id),a=(r?i:t)??!1;return(0,$.jsx)(De,{tab:n,model:e,displayName:m(e),willBeEnabled:a,hasApiKey:s,showStarRating:g&&(f===`coding-index`||f===`intelligence-by-price`),onToggle:e=>h(e,n)},e.id)})})})}),t[0]=_,t[1]=u,t[2]=i,t[3]=m,t[4]=s,t[5]=g,t[6]=f,t[7]=r,t[8]=a,t[9]=h,t[10]=d,t[11]=n,t[12]=v):v=t[12],v}function ke(e){let t=(0,Z.c)(22),{tab:n,showImageTab:r,modelsLoading:i,models:a,hasApiKey:o,enabledModelIds:s,pendingChanges:c,modelSearchQuery:l,onModelSearchQueryChange:u,modelSortBy:d,onModelSortByChange:f,onToggleAllModels:p}=e,m=n===`coding`,h=m?`select-all-models`:`select-all-image-models`,g=!i&&a.length>0,_=g&&!o&&`opacity-25`,y;t[0]===_?y=t[1]:(y=S(`flex flex-col gap-2 md:flex-row md:items-center`,_),t[0]=_,t[1]=y);let b;t[2]===r?b=t[3]:(b=r?(0,$.jsxs)(L,{className:`w-fit shrink-0 self-start`,children:[(0,$.jsx)(U,{value:`coding`,children:`Coding`}),(0,$.jsx)(U,{value:`image`,children:`Image`})]}):null,t[2]=r,t[3]=b);let x;t[4]!==s||t[5]!==o||t[6]!==m||t[7]!==l||t[8]!==d||t[9]!==a||t[10]!==u||t[11]!==f||t[12]!==p||t[13]!==c||t[14]!==h||t[15]!==g||t[16]!==n?(x=g?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`relative w-full md:w-52 flex-shrink-0`,children:[(0,$.jsx)(v,{className:`absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground pointer-events-none`}),(0,$.jsx)(F,{placeholder:`Search`,className:`pl-10 h-8`,value:l,onChange:e=>u(e.target.value),disabled:!o})]}),(0,$.jsxs)(`div`,{className:`flex flex-shrink-0 items-center gap-2 self-end md:ml-auto md:self-auto`,children:[(0,$.jsx)(X,{id:h,disabled:!o,checked:a.every(e=>{let t=c.has(e.id),n=c.get(e.id);return t?n:s.has(e.id)}),onChange:e=>{p(e,n)}}),(0,$.jsx)(J,{sortBy:d,showCodingIndex:m,showIntelligenceByPrice:m,onSortByChange:f})]})]}):null,t[4]=s,t[5]=o,t[6]=m,t[7]=l,t[8]=d,t[9]=a,t[10]=u,t[11]=f,t[12]=p,t[13]=c,t[14]=h,t[15]=g,t[16]=n,t[17]=x):x=t[17];let C;return t[18]!==y||t[19]!==b||t[20]!==x?(C=(0,$.jsxs)(`div`,{className:y,children:[b,x]}),t[18]=y,t[19]=b,t[20]=x,t[21]=C):C=t[21],C}function Ae(e){let t=(0,Z.c)(10),{title:n,description:r,action:i,tableHeader:a,children:o}=e,s;t[0]!==i||t[1]!==r||t[2]!==a||t[3]!==n?(s=(0,$.jsx)(H,{title:n,description:r,action:i,sticky:!1,tableHeader:a}),t[0]=i,t[1]=r,t[2]=a,t[3]=n,t[4]=s):s=t[4];let c;t[5]===o?c=t[6]:(c=(0,$.jsx)(`div`,{className:`px-6 pb-6`,children:o}),t[5]=o,t[6]=c);let l;return t[7]!==s||t[8]!==c?(l=(0,$.jsxs)(I,{className:`shrink-0`,children:[s,c]}),t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function je(e){let t=(0,Z.c)(111),{selectedProviderName:n,selectedProviderSlug:r,providerData:i,onBack:a,className:o}=e,s=n===void 0?null:n,c=r===void 0?null:r,l;t[0]!==i||t[1]!==s||t[2]!==c?(l={selectedProviderName:s,selectedProviderSlug:c,providerData:i},t[0]=i,t[1]=s,t[2]=c,t[3]=l):l=t[3];let{selectedProvider:u,error:d,balance:f,displayApiKey:p,showApiKey:m,setShowApiKey:h,providerEnvValues:_,modelsLoading:v,modelsError:y,saveStatus:b,modelTab:x,setModelTab:ee,modelSearchQuery:te,setModelSearchQuery:ne,modelSortBy:w,setModelSortBy:re,availableModels:ie,enabledModelIds:ae,pendingChanges:oe,filteredAndSortedModels:se,availableImageModels:T,enabledImageModelIds:ce,pendingImageChanges:le,filteredAndSortedImageModels:ue,hasApiKey:E,getModelDisplayName:D,handleUpdateKeyLocal:O,handleUpdateProviderEnv:de,refreshLocalProviderModels:k,handleToggleModel:A,handleToggleAllModels:fe}=Se(l);if(d){let e;t[4]===o?e=t[5]:(e=S(`flex h-full min-h-0 flex-col items-center justify-center gap-4 p-6`,o),t[4]=o,t[5]=e);let n;t[6]===d?n=t[7]:(n=(0,$.jsx)(R,{variant:`error`,className:`mb-0`,children:d}),t[6]=d,t[7]=n);let r;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(C,{variant:`outline`,size:`sm`,onClick:Me,children:`Retry`}),t[8]=r):r=t[8];let i;return t[9]!==e||t[10]!==n?(i=(0,$.jsxs)(`div`,{className:e,children:[n,r]}),t[9]=e,t[10]=n,t[11]=i):i=t[11],i}if(!u){let e;t[12]===o?e=t[13]:(e=S(`flex h-full min-h-0 items-center justify-center`,o),t[12]=o,t[13]=e);let n=s||c?`Provider not found`:`Select a Provider`,r;t[14]===a?r=t[15]:(r=a?(0,$.jsxs)(C,{variant:`outline`,size:`sm`,onClick:a,children:[(0,$.jsx)(g,{className:`h-4 w-4 mr-1`}),`Back to Providers`]}):void 0,t[14]=a,t[15]=r);let i=a?`This provider could not be found.`:`Choose a provider from the list to configure its settings.`,l;t[16]!==n||t[17]!==r||t[18]!==i?(l=(0,$.jsx)(me,{title:n,action:r,children:i}),t[16]=n,t[17]=r,t[18]=i,t[19]=l):l=t[19];let u;return t[20]!==e||t[21]!==l?(u=(0,$.jsx)(`div`,{className:e,children:l}),t[20]=e,t[21]=l,t[22]=u):u=t[22],u}let j;t[23]===o?j=t[24]:(j=S(`h-full min-h-0`,o),t[23]=o,t[24]=j);let M;t[25]!==a||t[26]!==u?(M=(0,$.jsx)(Ce,{provider:u,onBack:a}),t[25]=a,t[26]=u,t[27]=M):M=t[27];let N;t[28]!==h||t[29]!==m?(N=()=>h(!m),t[28]=h,t[29]=m,t[30]=N):N=t[30];let F;t[31]!==p||t[32]!==O||t[33]!==de||t[34]!==v||t[35]!==_||t[36]!==k||t[37]!==u||t[38]!==m||t[39]!==N?(F=(0,$.jsx)(`div`,{className:`pt-6`,children:(0,$.jsx)(Ee,{provider:u,displayApiKey:p,showApiKey:m,onToggleShowApiKey:N,onUpdateKey:O,providerEnvValues:_,onUpdateEnv:de,modelsLoading:v,onRefreshModels:k})}),t[31]=p,t[32]=O,t[33]=de,t[34]=v,t[35]=_,t[36]=k,t[37]=u,t[38]=m,t[39]=N,t[40]=F):F=t[40];let I;t[41]!==u.name||t[42]!==M||t[43]!==F?(I=(0,$.jsx)(Ae,{title:u.name,description:`Configure API keys and connection settings for this provider.`,action:M,children:F}),t[41]=u.name,t[42]=M,t[43]=F,t[44]=I):I=t[44];let L;t[45]!==ne||t[46]!==re||t[47]!==ee?(L=e=>{ee(e),ne(``),re(`alphabetical`)},t[45]=ne,t[46]=re,t[47]=ee,t[48]=L):L=t[48];let z;t[49]===f?z=t[50]:(z=(0,$.jsx)(we,{balance:f}),t[49]=f,t[50]=z);let B;t[51]===u.name?B=t[52]:(B=u.name.toLowerCase(),t[51]=u.name,t[52]=B);let he=B===`openrouter`,V=x===`coding`?ie:T,H=x===`coding`?ae:ce,ge=x===`coding`?oe:le,U;t[53]!==fe||t[54]!==E||t[55]!==te||t[56]!==w||t[57]!==x||t[58]!==v||t[59]!==ne||t[60]!==re||t[61]!==he||t[62]!==V||t[63]!==H||t[64]!==ge?(U=(0,$.jsx)(ke,{tab:x,showImageTab:he,modelsLoading:v,models:V,hasApiKey:E,enabledModelIds:H,pendingChanges:ge,modelSearchQuery:te,onModelSearchQueryChange:ne,modelSortBy:w,onModelSortByChange:re,onToggleAllModels:fe}),t[53]=fe,t[54]=E,t[55]=te,t[56]=w,t[57]=x,t[58]=v,t[59]=ne,t[60]=re,t[61]=he,t[62]=V,t[63]=H,t[64]=ge,t[65]=U):U=t[65];let W;t[66]===y?W=t[67]:(W=y?(0,$.jsx)(R,{variant:`error`,className:`mb-4`,children:y}):null,t[66]=y,t[67]=W);let G;t[68]!==ie||t[69]!==ae||t[70]!==se||t[71]!==D||t[72]!==A||t[73]!==E||t[74]!==w||t[75]!==y||t[76]!==v||t[77]!==oe||t[78]!==u?(G=(0,$.jsx)(pe,{value:`coding`,children:(0,$.jsx)(Oe,{tab:`coding`,provider:u,models:ie,filteredModels:se,modelsLoading:v,modelsError:y,hasApiKey:E,enabledModelIds:ae,pendingChanges:oe,modelSortBy:w,getModelDisplayName:D,onToggleModel:A})}),t[68]=ie,t[69]=ae,t[70]=se,t[71]=D,t[72]=A,t[73]=E,t[74]=w,t[75]=y,t[76]=v,t[77]=oe,t[78]=u,t[79]=G):G=t[79];let _e;t[80]!==T||t[81]!==ce||t[82]!==ue||t[83]!==D||t[84]!==A||t[85]!==E||t[86]!==w||t[87]!==y||t[88]!==v||t[89]!==le||t[90]!==u?(_e=(0,$.jsx)(pe,{value:`image`,children:(0,$.jsx)(Oe,{tab:`image`,provider:u,models:T,filteredModels:ue,modelsLoading:v,modelsError:y,hasApiKey:E,enabledModelIds:ce,pendingChanges:le,modelSortBy:w,getModelDisplayName:D,onToggleModel:A})}),t[80]=T,t[81]=ce,t[82]=ue,t[83]=D,t[84]=A,t[85]=E,t[86]=w,t[87]=y,t[88]=v,t[89]=le,t[90]=u,t[91]=_e):_e=t[91];let K;t[92]===b?K=t[93]:(K=b?(0,$.jsx)(R,{variant:b.includes(`error`)||b.includes(`Failed`)?`error`:`success`,className:`mt-4`,children:b}):null,t[92]=b,t[93]=K);let q;t[94]!==z||t[95]!==U||t[96]!==W||t[97]!==G||t[98]!==_e||t[99]!==K?(q=(0,$.jsxs)(Ae,{title:`Models`,description:`Enable coding and image models for this provider.`,action:z,tableHeader:U,children:[W,G,_e,K]}),t[94]=z,t[95]=U,t[96]=W,t[97]=G,t[98]=_e,t[99]=K,t[100]=q):q=t[100];let J;t[101]!==x||t[102]!==q||t[103]!==L?(J=(0,$.jsx)(P,{value:x,onValueChange:L,children:q}),t[101]=x,t[102]=q,t[103]=L,t[104]=J):J=t[104];let Y;t[105]!==J||t[106]!==I?(Y=(0,$.jsx)(`div`,{className:`frosted-scrollbar h-full min-h-0 overflow-auto`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-2.5`,children:[I,J]})}),t[105]=J,t[106]=I,t[107]=Y):Y=t[107];let X;return t[108]!==Y||t[109]!==j?(X=(0,$.jsx)(`div`,{className:j,children:Y}),t[108]=Y,t[109]=j,t[110]=X):X=t[110],X}function Me(){return window.location.reload()}function Ne(e){return`providers:list:${e}`}async function Pe(){let[e,t]=await Promise.all([se(),T().catch(()=>({}))]),n={};for(let[e,r]of Object.entries(t))n[e]=r.length;return{providers:e,enabledModelCounts:n}}var Fe=`grid min-h-10 grid-cols-[minmax(0,1fr)_auto] items-center gap-3 px-3 py-2 hover:bg-muted/30 cursor-pointer`,Ie=`[&>*+*]:border-t [&>*+*]:border-table-border`;function Le(e){let t=(0,Z.c)(9),{title:n,description:r,action:i,children:a}=e,o;t[0]!==i||t[1]!==r||t[2]!==n?(o=(0,$.jsx)(H,{title:n,description:r,action:i,sticky:!1}),t[0]=i,t[1]=r,t[2]=n,t[3]=o):o=t[3];let s;t[4]===a?s=t[5]:(s=(0,$.jsx)(B,{className:`pt-6`,children:a}),t[4]=a,t[5]=s);let c;return t[6]!==o||t[7]!==s?(c=(0,$.jsxs)(I,{className:`shrink-0`,children:[o,s]}),t[6]=o,t[7]=s,t[8]=c):c=t[8],c}function Re(e){let t=(0,Z.c)(33),{loadVersion:n,onProviderClick:r}=e,{query:i,setQuery:a,deferredQuery:o}=q(),s;t[0]===n?s=t[1]:(s=Ne(n),t[0]=n,t[1]=s);let{providers:c,enabledModelCounts:u}=A(s,Pe),d;if(t[2]!==o||t[3]!==u||t[4]!==c){let e;t[6]===o?e=t[7]:(e=e=>{let t=o.toLowerCase();return e.name.toLowerCase().includes(t)},t[6]=o,t[7]=e);let n;t[8]===u?n=t[9]:(n=(e,t)=>{let n=(u[e.slug]??0)>0,r=(u[t.slug]??0)>0;return n&&!r?-1:!n&&r?1:e.name.localeCompare(t.name)},t[8]=u,t[9]=n),d=c.filter(Ve).filter(e).sort(n),t[2]=o,t[3]=u,t[4]=c,t[5]=d}else d=t[5];let f=d,p;if(t[10]!==o||t[11]!==c){let e;t[13]===o?e=t[14]:(e=e=>{let t=o.toLowerCase();return e.name.toLowerCase().includes(t)},t[13]=o,t[14]=e),p=c.filter(Be).filter(e).sort(ze),t[10]=o,t[11]=c,t[12]=p}else p=t[12];let m=p,h;t[15]!==i||t[16]!==a?(h=(0,$.jsx)(K,{placeholder:`Search`,value:i,onChange:a,className:`mb-0 w-64`}),t[15]=i,t[16]=a,t[17]=h):h=t[17];let g;t[18]!==f||t[19]!==u||t[20]!==r||t[21]!==i?(g=f.length===0?(0,$.jsx)(`p`,{className:S(l.bodyMuted,`py-4`),children:i?`No connected providers match your search.`:`No providers connected yet. Add an API key to get started.`}):(0,$.jsx)(`div`,{className:Ie,children:f.map(e=>(0,$.jsx)(Je,{provider:e,modelCount:u[e.slug]??0,onClick:r},e.name))}),t[18]=f,t[19]=u,t[20]=r,t[21]=i,t[22]=g):g=t[22];let _;t[23]!==h||t[24]!==g?(_=(0,$.jsx)(Le,{title:`Connected Providers`,description:`Providers you've connected with an API key or environment variable.`,action:h,children:g}),t[23]=h,t[24]=g,t[25]=_):_=t[25];let v;t[26]!==m||t[27]!==r||t[28]!==i?(v=(0,$.jsx)(Le,{title:`Available Providers`,description:`Connect additional providers by adding your API key.`,children:m.length===0?(0,$.jsx)(`p`,{className:S(l.bodyMuted,`py-4`),children:i?`No available providers match your search.`:`All providers are connected.`}):(0,$.jsx)(`div`,{className:Ie,children:m.map(e=>(0,$.jsx)(Ye,{provider:e,onClick:r},e.name))})}),t[26]=m,t[27]=r,t[28]=i,t[29]=v):v=t[29];let y;return t[30]!==_||t[31]!==v?(y=(0,$.jsx)(`div`,{className:`frosted-scrollbar h-full min-h-0 overflow-auto`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-2.5`,children:[_,v]})}),t[30]=_,t[31]=v,t[32]=y):y=t[32],y}function ze(e,t){return e.name.localeCompare(t.name)}function Be(e){return!e.apiKey}function Ve(e){return e.apiKey}function He(){let e=(0,Z.c)(21),t=a(),{providerSlug:n}=i(),[r,o]=(0,Q.useState)(0),s=(0,Q.useRef)(n),c,l;e[0]!==r||e[1]!==n?(c=()=>{s.current&&!n&&(k(Ne(r)),o(Ke)),s.current=n},l=[n,r],e[0]=r,e[1]=n,e[2]=c,e[3]=l):(c=e[2],l=e[3]),(0,Q.useEffect)(c,l);let u;e[4]===t?u=e[5]:(u=e=>{t(`/settings/providers/${encodeURIComponent(e.slug)}`)},e[4]=t,e[5]=u);let d=u,f;e[6]!==r||e[7]!==t?(f=()=>{t(`/settings/providers`),k(Ne(r)),o(Ge)},e[6]=r,e[7]=t,e[8]=f):f=e[8];let p=f,m;e[9]===r?m=e[10]:(m=function(){k(Ne(r)),o(We)},e[9]=r,e[10]=m);let h=m;if(n){let t=decodeURIComponent(n),r;return e[11]!==p||e[12]!==t?(r=(0,$.jsx)(je,{selectedProviderSlug:t,onBack:p}),e[11]=p,e[12]=t,e[13]=r):r=e[13],r}let g;e[14]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,$.jsx)(de,{label:`Loading providers...`,size:`lg`}),e[14]=g):g=e[14];let _;e[15]!==d||e[16]!==r?(_=(0,$.jsx)(Q.Suspense,{fallback:g,children:(0,$.jsx)(Re,{loadVersion:r,onProviderClick:d},r)}),e[15]=d,e[16]=r,e[17]=_):_=e[17];let v;return e[18]!==h||e[19]!==_?(v=(0,$.jsx)(`div`,{className:`h-full min-h-0`,children:(0,$.jsx)(W,{fallbackTitle:`Failed to load providers`,onRetry:h,renderFallback:Ue,children:_})}),e[18]=h,e[19]=_,e[20]=v):v=e[20],v}function Ue(e,t){return(0,$.jsx)(`div`,{className:`frosted-scrollbar h-full min-h-0 overflow-auto`,children:(0,$.jsxs)(I,{className:`shrink-0`,children:[(0,$.jsx)(H,{title:`Providers`,description:`Manage your AI provider connections and API keys.`,sticky:!1}),(0,$.jsx)(`div`,{className:`flex items-center justify-center px-6 pb-6 pt-6`,children:(0,$.jsxs)(`div`,{className:`max-w-md text-center`,children:[(0,$.jsx)(R,{variant:`error`,className:`mb-4`,children:e.message}),(0,$.jsx)(C,{variant:`outline`,size:`sm`,onClick:t,children:`Retry`})]})})]})})}function We(e){return e+1}function Ge(e){return e+1}function Ke(e){return e+1}function qe(e,t){(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),t())}function Je(e){let t=(0,Z.c)(25),{provider:n,modelCount:r,onClick:i}=e,a;t[0]!==i||t[1]!==n?(a=function(){i(n)},t[0]=i,t[1]=n,t[2]=a):a=t[2];let o=a,s;t[3]===o?s=t[4]:(s=e=>qe(e,o),t[3]=o,t[4]=s);let c;t[5]===n?c=t[6]:(c=(0,$.jsx)(M,{provider:n}),t[5]=n,t[6]=c);let u;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(u=S(l.label,`truncate leading-normal`),t[7]=u):u=t[7];let d;t[8]===n.name?d=t[9]:(d=(0,$.jsx)(`span`,{className:u,children:n.name}),t[8]=n.name,t[9]=d);let f;t[10]!==c||t[11]!==d?(f=(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[c,d]}),t[10]=c,t[11]=d,t[12]=f):f=t[12];let p;t[13]===n.isEnv?p=t[14]:(p=n.isEnv?(0,$.jsx)(ye,{variant:`secondary`,className:S(l.compact,`px-2 py-0.5`),children:`Environment`}):(0,$.jsx)(ye,{variant:`secondary`,className:S(l.compact,`px-2 py-0.5`),children:`API Key`}),t[13]=n.isEnv,t[14]=p);let m;t[15]===r?m=t[16]:(m=r>0&&(0,$.jsxs)(ye,{variant:`default`,className:S(l.compact,`px-2 py-0.5`),children:[r,` `,r===1?`Model`:`Models`]}),t[15]=r,t[16]=m);let h;t[17]!==p||t[18]!==m?(h=(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center justify-end gap-1.5`,children:[p,m]}),t[17]=p,t[18]=m,t[19]=h):h=t[19];let g;return t[20]!==o||t[21]!==s||t[22]!==f||t[23]!==h?(g=(0,$.jsxs)(`div`,{className:Fe,role:`button`,tabIndex:0,onClick:o,onKeyDown:s,children:[f,h]}),t[20]=o,t[21]=s,t[22]=f,t[23]=h,t[24]=g):g=t[24],g}function Ye(e){let t=(0,Z.c)(18),{provider:n,onClick:r}=e,i;t[0]!==r||t[1]!==n?(i=function(){r(n)},t[0]=r,t[1]=n,t[2]=i):i=t[2];let a=i,o;t[3]===a?o=t[4]:(o=e=>qe(e,a),t[3]=a,t[4]=o);let s;t[5]===n?s=t[6]:(s=(0,$.jsx)(M,{provider:n}),t[5]=n,t[6]=s);let c;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(c=S(l.label,`truncate leading-normal`),t[7]=c):c=t[7];let u;t[8]===n.name?u=t[9]:(u=(0,$.jsx)(`span`,{className:c,children:n.name}),t[8]=n.name,t[9]=u);let d;t[10]!==s||t[11]!==u?(d=(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[s,u]}),t[10]=s,t[11]=u,t[12]=d):d=t[12];let f;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(`span`,{className:S(l.compact,`shrink-0 text-muted-foreground`),children:`Configure`}),t[13]=f):f=t[13];let p;return t[14]!==a||t[15]!==o||t[16]!==d?(p=(0,$.jsxs)(`div`,{className:Fe,role:`button`,tabIndex:0,onClick:a,onKeyDown:o,children:[d,f]}),t[14]=a,t[15]=o,t[16]=d,t[17]=p):p=t[17],p}export{He as ProvidersListView,He as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e,t}from"./react-vendor-Ee0-5T4I.js";import{ot as ee}from"./dist-DjiNKpTV.js";import{I as te}from"./dist-CNOCRPxn.js";import{t as n}from"./button-B6HDsfd5.js";import{i as r,n as ne,r as i,t as a}from"./tooltip-BtJG5fZl.js";import{a as o,i as s,o as c,r as l,s as u,t as d}from"./dialog--0foS3aw.js";import{Ft as f,It as re,X as ie,fn as p,yt as ae}from"./index-BOB3ZUQs.js";var oe=e(),m=t();function h(e){let t=(0,oe.c)(58),{open:h,onOpenChange:g,prTitle:_,onPrTitleChange:v,prDescription:y,onPrDescriptionChange:b,isGeneratingPRInfo:x,isLoading:S,onGeneratePRInfo:C,onCreatePR:w,currentBranch:T,createWorkspaceAfterPR:E,onCreateWorkspaceAfterPRChange:D}=e,O;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,m.jsx)(u,{children:`Create Pull Request`}),t[0]=O):O=t[0];let k;t[1]===T?k=t[2]:(k=(0,m.jsxs)(c,{children:[O,(0,m.jsxs)(s,{children:[`Create a pull request for branch `,T]})]}),t[1]=T,t[2]=k);let A;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(A=(0,m.jsx)(f,{htmlFor:`pr-title`,children:`Title`}),t[3]=A):A=t[3];let j=T||`Enter PR title...`,M;t[4]===v?M=t[5]:(M=e=>v(e.target.value),t[4]=v,t[5]=M);let N;t[6]!==x||t[7]!==_||t[8]!==j||t[9]!==M?(N=(0,m.jsxs)(`div`,{className:`grid gap-2`,children:[A,(0,m.jsx)(re,{id:`pr-title`,placeholder:j,value:_,onChange:M,disabled:x})]}),t[6]=x,t[7]=_,t[8]=j,t[9]=M,t[10]=N):N=t[10];let P;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,m.jsx)(f,{htmlFor:`pr-description`,children:`Description`}),t[11]=P):P=t[11];let F;t[12]===b?F=t[13]:(F=e=>b(e.target.value),t[12]=b,t[13]=F);let I;t[14]!==x||t[15]!==y||t[16]!==F?(I=(0,m.jsx)(ie,{id:`pr-description`,placeholder:`Enter PR description...`,value:y,onChange:F,disabled:x,className:`pr-10 h-full min-h-[14rem] resize-none`}),t[14]=x,t[15]=y,t[16]=F,t[17]=I):I=t[17];let L=x||S,R;t[18]===x?R=t[19]:(R=x?(0,m.jsx)(p,{}):(0,m.jsx)(te,{className:`h-3.5 w-3.5`}),t[18]=x,t[19]=R);let z;t[20]!==C||t[21]!==L||t[22]!==R?(z=(0,m.jsx)(r,{asChild:!0,children:(0,m.jsx)(n,{type:`button`,variant:`ghost`,size:`icon`,className:`absolute top-2 right-2 h-6 w-6`,onClick:C,disabled:L,children:R})}),t[20]=C,t[21]=L,t[22]=R,t[23]=z):z=t[23];let B=x?`Generating PR description...`:`Generate PR title and description with AI`,V;t[24]===B?V=t[25]:(V=(0,m.jsx)(ne,{children:B}),t[24]=B,t[25]=V);let H;t[26]!==z||t[27]!==V?(H=(0,m.jsx)(i,{children:(0,m.jsxs)(a,{children:[z,V]})}),t[26]=z,t[27]=V,t[28]=H):H=t[28];let U;t[29]!==H||t[30]!==I?(U=(0,m.jsxs)(`div`,{className:`grid gap-2 flex-1 min-h-0`,children:[P,(0,m.jsxs)(`div`,{className:`relative flex-1 min-h-0`,children:[I,H]})]}),t[29]=H,t[30]=I,t[31]=U):U=t[31];let W;t[32]!==U||t[33]!==N?(W=(0,m.jsxs)(`div`,{className:`grid gap-4 py-4 flex-1 min-h-0`,children:[N,U]}),t[32]=U,t[33]=N,t[34]=W):W=t[34];let G;t[35]!==E||t[36]!==D?(G=(0,m.jsx)(ae,{value:E,onChange:D,ariaLabel:`Also create new workspace`}),t[35]=E,t[36]=D,t[37]=G):G=t[37];let K;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(K=(0,m.jsx)(f,{className:ee.labelNormal,children:`Also create new workspace`}),t[38]=K):K=t[38];let q;t[39]===G?q=t[40]:(q=(0,m.jsxs)(`div`,{className:`mr-auto flex items-center gap-3`,children:[G,K]}),t[39]=G,t[40]=q);let J=S||x,Y;t[41]===S?Y=t[42]:(Y=S?(0,m.jsxs)(m.Fragment,{children:[`Create PR`,(0,m.jsx)(p,{size:`sm`})]}):`Create PR`,t[41]=S,t[42]=Y);let X;t[43]!==w||t[44]!==J||t[45]!==Y?(X=(0,m.jsx)(n,{className:`ml-auto`,onClick:w,disabled:J,children:Y}),t[43]=w,t[44]=J,t[45]=Y,t[46]=X):X=t[46];let Z;t[47]!==q||t[48]!==X?(Z=(0,m.jsxs)(o,{className:`w-full items-center gap-4`,children:[q,X]}),t[47]=q,t[48]=X,t[49]=Z):Z=t[49];let Q;t[50]!==W||t[51]!==k||t[52]!==Z?(Q=(0,m.jsxs)(l,{className:`flex max-w-2xl flex-col max-md:top-[max(1rem,env(safe-area-inset-top,0px))] max-md:max-h-[calc(100dvh-2rem)] max-md:translate-y-0 max-md:overflow-y-auto max-md:data-[state=closed]:slide-out-to-top max-md:data-[state=open]:slide-in-from-top max-md:data-[state=closed]:slide-out-to-left-0 max-md:data-[state=open]:slide-in-from-left-0 max-md:data-[state=closed]:zoom-out-100 max-md:data-[state=open]:zoom-in-100 md:h-[min(36rem,85dvh)]`,children:[k,W,Z]}),t[50]=W,t[51]=k,t[52]=Z,t[53]=Q):Q=t[53];let $;return t[54]!==g||t[55]!==h||t[56]!==Q?($=(0,m.jsx)(d,{open:h,onOpenChange:g,children:Q}),t[54]=g,t[55]=h,t[56]=Q,t[57]=$):$=t[57],$}export{h as PullRequestDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e,t}from"./react-vendor-Ee0-5T4I.js";import{ot as n}from"./dist-DjiNKpTV.js";import{E as r,Ht as i,pt as a}from"./dist-CNOCRPxn.js";import{t as o}from"./button-B6HDsfd5.js";import{a as s,i as c,o as l,r as u,s as d,t as f}from"./dialog--0foS3aw.js";import{bn as p}from"./index-BOB3ZUQs.js";var m=e(),h=t();function g(e){let t=(0,m.c)(27),{open:g,onOpenChange:_,onCommitFirst:v,onStashAndPull:y,onCancel:b,isLoading:x}=e,S=x===void 0?!1:x,C;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,h.jsxs)(l,{children:[(0,h.jsxs)(d,{className:`flex items-center gap-2`,children:[(0,h.jsx)(r,{className:`h-5 w-5 text-amber-500`}),`Uncommitted Changes Detected`]}),(0,h.jsx)(c,{children:`You have uncommitted changes. You need to handle them before pulling from the remote branch.`})]}),t[0]=C):C=t[0];let w;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,h.jsx)(`div`,{className:n.bodyMuted,children:`Choose how you want to proceed:`}),t[1]=w):w=t[1];let T;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,h.jsx)(i,{className:`h-4 w-4 mr-2`}),t[2]=T):T=t[2];let E;t[3]!==S||t[4]!==v?(E=(0,h.jsxs)(o,{onClick:v,disabled:S,className:`w-full justify-start`,variant:`outline`,children:[T,`Commit changes first, then pull`]}),t[3]=S,t[4]=v,t[5]=E):E=t[5];let D;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,h.jsx)(a,{className:`h-4 w-4 mr-2`}),t[6]=D):D=t[6];let O;t[7]!==S||t[8]!==y?(O=(0,h.jsxs)(o,{onClick:y,disabled:S,className:`w-full justify-start`,variant:`outline`,children:[D,`Stash changes → Pull → Restore changes`]}),t[7]=S,t[8]=y,t[9]=O):O=t[9];let k;t[10]!==E||t[11]!==O?(k=(0,h.jsxs)(`div`,{className:`space-y-2`,children:[E,O]}),t[10]=E,t[11]=O,t[12]=k):k=t[12];let A;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(A=(0,h.jsx)(`strong`,{children:`Commit first:`}),t[13]=A):A=t[13];let j;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,h.jsxs)(p,{variant:`hint`,className:`mt-4 mb-0`,children:[A,` Safe option, preserves changes in your commit history.`,(0,h.jsx)(`br`,{}),(0,h.jsx)(`strong`,{children:`Stash and pull:`}),` Temporary option, changes will be restored after pulling.`]}),t[14]=j):j=t[14];let M;t[15]===k?M=t[16]:(M=(0,h.jsx)(`div`,{className:`py-4`,children:(0,h.jsxs)(`div`,{className:`space-y-3`,children:[w,k,j]})}),t[15]=k,t[16]=M);let N;t[17]!==S||t[18]!==b?(N=(0,h.jsx)(s,{children:(0,h.jsx)(o,{variant:`ghost`,onClick:b,disabled:S,children:`Cancel`})}),t[17]=S,t[18]=b,t[19]=N):N=t[19];let P;t[20]!==M||t[21]!==N?(P=(0,h.jsxs)(u,{className:`sm:max-w-[425px]`,children:[C,M,N]}),t[20]=M,t[21]=N,t[22]=P):P=t[22];let F;return t[23]!==_||t[24]!==g||t[25]!==P?(F=(0,h.jsx)(f,{open:g,onOpenChange:_,children:P}),t[23]=_,t[24]=g,t[25]=P,t[26]=F):F=t[26],F}export{g as PullWithChangesDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e,t}from"./react-vendor-Ee0-5T4I.js";import{t as n}from"./button-B6HDsfd5.js";import{a as r,i,o as a,r as o,s,t as c}from"./dialog--0foS3aw.js";var l=e(),u=t();function d(e){let t=(0,l.c)(15),{open:d,onOpenChange:f,isLoading:p,onPushAndCreatePR:m,onCancel:h}=e,g;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,u.jsxs)(a,{children:[(0,u.jsx)(s,{children:`Push Branch First`}),(0,u.jsx)(i,{children:`Your branch needs to be pushed to the remote before creating a pull request. Would you like to push it now?`})]}),t[0]=g):g=t[0];let _;t[1]!==p||t[2]!==h?(_=(0,u.jsx)(n,{variant:`outline`,onClick:h,disabled:p,children:`Cancel`}),t[1]=p,t[2]=h,t[3]=_):_=t[3];let v=p?`Pushing...`:`Push & Create PR`,y;t[4]!==p||t[5]!==m||t[6]!==v?(y=(0,u.jsx)(n,{onClick:m,disabled:p,children:v}),t[4]=p,t[5]=m,t[6]=v,t[7]=y):y=t[7];let b;t[8]!==_||t[9]!==y?(b=(0,u.jsxs)(o,{children:[g,(0,u.jsxs)(r,{children:[_,y]})]}),t[8]=_,t[9]=y,t[10]=b):b=t[10];let x;return t[11]!==f||t[12]!==d||t[13]!==b?(x=(0,u.jsx)(c,{open:d,onOpenChange:f,children:b}),t[11]=f,t[12]=d,t[13]=b,t[14]=x):x=t[14],x}export{d as PushBeforePRDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{o as t,t as n}from"./react-vendor-Ee0-5T4I.js";var r=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},i=new class extends r{#e;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e();return window.addEventListener(`visibilitychange`,t,!1),()=>{window.removeEventListener(`visibilitychange`,t)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(e=>{typeof e==`boolean`?this.setFocused(e):this.onFocus()})}setFocused(e){this.#e!==e&&(this.#e=e,this.onFocus())}onFocus(){let e=this.isFocused();this.listeners.forEach(t=>{t(e)})}isFocused(){return typeof this.#e==`boolean`?this.#e:globalThis.document?.visibilityState!==`hidden`}},a={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},o=new class{#e=a;setTimeoutProvider(e){this.#e=e}setTimeout(e,t){return this.#e.setTimeout(e,t)}clearTimeout(e){this.#e.clearTimeout(e)}setInterval(e,t){return this.#e.setInterval(e,t)}clearInterval(e){this.#e.clearInterval(e)}};function s(e){setTimeout(e,0)}var c=typeof window>`u`||`Deno`in globalThis;function l(){}function u(e,t){return typeof e==`function`?e(t):e}function d(e){return typeof e==`number`&&e>=0&&e!==1/0}function f(e,t){return Math.max(e+(t||0)-Date.now(),0)}function p(e,t){return typeof e==`function`?e(t):e}function m(e,t){return typeof e==`function`?e(t):e}function h(e,t){let{type:n=`all`,exact:r,fetchStatus:i,predicate:a,queryKey:o,stale:s}=e;if(o){if(r){if(t.queryHash!==_(o,t.options))return!1}else if(!y(t.queryKey,o))return!1}if(n!==`all`){let e=t.isActive();if(n===`active`&&!e||n===`inactive`&&e)return!1}return!(typeof s==`boolean`&&t.isStale()!==s||i&&i!==t.state.fetchStatus||a&&!a(t))}function g(e,t){let{exact:n,status:r,predicate:i,mutationKey:a}=e;if(a){if(!t.options.mutationKey)return!1;if(n){if(v(t.options.mutationKey)!==v(a))return!1}else if(!y(t.options.mutationKey,a))return!1}return!(r&&t.state.status!==r||i&&!i(t))}function _(e,t){return(t?.queryKeyHashFn||v)(e)}function v(e){return JSON.stringify(e,(e,t)=>w(t)?Object.keys(t).sort().reduce((e,n)=>(e[n]=t[n],e),{}):t)}function y(e,t){return e===t?!0:typeof e==typeof t&&e&&t&&typeof e==`object`&&typeof t==`object`?Object.keys(t).every(n=>y(e[n],t[n])):!1}var b=Object.prototype.hasOwnProperty;function x(e,t,n=0){if(e===t)return e;if(n>500)return t;let r=C(e)&&C(t);if(!r&&!(w(e)&&w(t)))return t;let i=(r?e:Object.keys(e)).length,a=r?t:Object.keys(t),o=a.length,s=r?Array(o):{},c=0;for(let l=0;l<o;l++){let o=r?l:a[l],u=e[o],d=t[o];if(u===d){s[o]=u,(r?l<i:b.call(e,o))&&c++;continue}if(u===null||d===null||typeof u!=`object`||typeof d!=`object`){s[o]=d;continue}let f=x(u,d,n+1);s[o]=f,f===u&&c++}return i===o&&c===i?e:s}function S(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}function C(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function w(e){if(!T(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!T(n)||!n.hasOwnProperty(`isPrototypeOf`)||Object.getPrototypeOf(e)!==Object.prototype)}function T(e){return Object.prototype.toString.call(e)===`[object Object]`}function ee(e){return new Promise(t=>{o.setTimeout(t,e)})}function E(e,t,n){return typeof n.structuralSharing==`function`?n.structuralSharing(e,t):n.structuralSharing===!1?t:x(e,t)}function te(e){return e}function ne(e,t,n=0){let r=[...e,t];return n&&r.length>n?r.slice(1):r}function re(e,t,n=0){let r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var D=Symbol();function O(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===D?()=>Promise.reject(Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function k(e,t){return typeof e==`function`?e(...t):!!e}function ie(e,t,n){let r=!1,i;return Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(i??=t(),r?i:(r=!0,i.aborted?n():i.addEventListener(`abort`,n,{once:!0}),i))}),e}var A=(()=>{let e=()=>c;return{isServer(){return e()},setIsServer(t){e=t}}})();function j(){let e,t,n=new Promise((n,r)=>{e=n,t=r});n.status=`pending`,n.catch(()=>{});function r(e){Object.assign(n,e),delete n.resolve,delete n.reject}return n.resolve=t=>{r({status:`fulfilled`,value:t}),e(t)},n.reject=e=>{r({status:`rejected`,reason:e}),t(e)},n}var M=s;function ae(){let e=[],t=0,n=e=>{e()},r=e=>{e()},i=M,a=r=>{t?e.push(r):i(()=>{n(r)})},o=()=>{let t=e;e=[],t.length&&i(()=>{r(()=>{t.forEach(e=>{n(e)})})})};return{batch:e=>{let n;t++;try{n=e()}finally{t--,t||o()}return n},batchCalls:e=>(...t)=>{a(()=>{e(...t)})},schedule:a,setNotifyFunction:e=>{n=e},setBatchNotifyFunction:e=>{r=e},setScheduler:e=>{i=e}}}var N=ae(),P=new class extends r{#e=!0;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e(!0),n=()=>e(!1);return window.addEventListener(`online`,t,!1),window.addEventListener(`offline`,n,!1),()=>{window.removeEventListener(`online`,t),window.removeEventListener(`offline`,n)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(this.setOnline.bind(this))}setOnline(e){this.#e!==e&&(this.#e=e,this.listeners.forEach(t=>{t(e)}))}isOnline(){return this.#e}};function oe(e){return Math.min(1e3*2**e,3e4)}function F(e){return(e??`online`)===`online`?P.isOnline():!0}var I=class extends Error{constructor(e){super(`CancelledError`),this.revert=e?.revert,this.silent=e?.silent}};function L(e){let t=!1,n=0,r,a=j(),o=()=>a.status!==`pending`,s=t=>{if(!o()){let n=new I(t);p(n),e.onCancel?.(n)}},c=()=>{t=!0},l=()=>{t=!1},u=()=>i.isFocused()&&(e.networkMode===`always`||P.isOnline())&&e.canRun(),d=()=>F(e.networkMode)&&e.canRun(),f=e=>{o()||(r?.(),a.resolve(e))},p=e=>{o()||(r?.(),a.reject(e))},m=()=>new Promise(t=>{r=e=>{(o()||u())&&t(e)},e.onPause?.()}).then(()=>{r=void 0,o()||e.onContinue?.()}),h=()=>{if(o())return;let r,i=n===0?e.initialPromise:void 0;try{r=i??e.fn()}catch(e){r=Promise.reject(e)}Promise.resolve(r).then(f).catch(r=>{if(o())return;let i=e.retry??(A.isServer()?0:3),a=e.retryDelay??oe,s=typeof a==`function`?a(n,r):a,c=i===!0||typeof i==`number`&&n<i||typeof i==`function`&&i(n,r);if(t||!c){p(r);return}n++,e.onFail?.(n,r),ee(s).then(()=>u()?void 0:m()).then(()=>{t?p(r):h()})})};return{promise:a,status:()=>a.status,cancel:s,continue:()=>(r?.(),a),cancelRetry:c,continueRetry:l,canStart:d,start:()=>(d()?h():m().then(h),a)}}var R=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),d(this.gcTime)&&(this.#e=o.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(A.isServer()?1/0:300*1e3))}clearGcTimeout(){this.#e!==void 0&&(o.clearTimeout(this.#e),this.#e=void 0)}};function se(e){return{onFetch:(t,n)=>{let r=t.options,i=t.fetchOptions?.meta?.fetchMore?.direction,a=t.state.data?.pages||[],o=t.state.data?.pageParams||[],s={pages:[],pageParams:[]},c=0,l=async()=>{let n=!1,l=e=>{ie(e,()=>t.signal,()=>n=!0)},u=O(t.options,t.fetchOptions),d=async(e,r,i)=>{if(n)return Promise.reject(t.signal.reason);if(r==null&&e.pages.length)return Promise.resolve(e);let a=await u((()=>{let e={client:t.client,queryKey:t.queryKey,pageParam:r,direction:i?`backward`:`forward`,meta:t.options.meta};return l(e),e})()),{maxPages:o}=t.options,s=i?re:ne;return{pages:s(e.pages,a,o),pageParams:s(e.pageParams,r,o)}};if(i&&a.length){let e=i===`backward`,t=e?B:z,n={pages:a,pageParams:o};s=await d(n,t(r,n),e)}else{let t=e??a.length;do{let e=c===0?o[0]??r.initialPageParam:z(r,s);if(c>0&&e==null)break;s=await d(s,e),c++}while(c<t)}return s};t.options.persister?t.fetchFn=()=>t.options.persister?.(l,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):t.fetchFn=l}}}function z(e,{pages:t,pageParams:n}){let r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function B(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}function ce(e,t){return t?z(e,t)!=null:!1}function le(e,t){return!t||!e.getPreviousPageParam?!1:B(e,t)!=null}var ue=class extends R{#e;#t;#n;#r;#i;#a;#o;#s;constructor(e){super(),this.#s=!1,this.#o=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#i=e.client,this.#r=this.#i.getQueryCache(),this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#t=U(this.options),this.state=e.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#e}get promise(){return this.#a?.promise}setOptions(e){if(this.options={...this.#o,...e},e?._type&&(this.#e=e._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){let e=U(this.options);e.data!==void 0&&(this.setState(H(e.data,e.dataUpdatedAt)),this.#t=e)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus===`idle`&&this.#r.remove(this)}setData(e,t){let n=E(this.state.data,e,this.options);return this.#l({data:n,type:`success`,dataUpdatedAt:t?.updatedAt,manual:t?.manual}),n}setState(e){this.#l({type:`setState`,state:e})}cancel(e){let t=this.#a?.promise;return this.#a?.cancel(e),t?t.then(l).catch(l):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#t}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(e=>m(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===D||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(e=>p(e.options.staleTime,this)===`static`):!1}isStale(){return this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(e=0){return this.state.data===void 0?!0:e===`static`?!1:this.state.isInvalidated?!0:!f(this.state.dataUpdatedAt,e)}onFocus(){this.observers.find(e=>e.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#a?.continue()}onOnline(){this.observers.find(e=>e.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#a?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#r.notify({type:`observerAdded`,query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter(t=>t!==e),this.observers.length||(this.#a&&(this.#s||this.#c()?this.#a.cancel({revert:!0}):this.#a.cancelRetry()),this.scheduleGc()),this.#r.notify({type:`observerRemoved`,query:this,observer:e}))}getObserversCount(){return this.observers.length}#c(){return this.state.fetchStatus===`paused`&&this.state.status===`pending`}invalidate(){this.state.isInvalidated||this.#l({type:`invalidate`})}async fetch(e,t){if(this.state.fetchStatus!==`idle`&&this.#a?.status()!==`rejected`){if(this.state.data!==void 0&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#a)return this.#a.continueRetry(),this.#a.promise}if(e&&this.setOptions(e),!this.options.queryFn){let e=this.observers.find(e=>e.options.queryFn);e&&this.setOptions(e.options)}let n=new AbortController,r=e=>{Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(this.#s=!0,n.signal)})},i=()=>{let e=O(this.options,t),n=(()=>{let e={client:this.#i,queryKey:this.queryKey,meta:this.meta};return r(e),e})();return this.#s=!1,this.options.persister?this.options.persister(e,n,this):e(n)},a=(()=>{let e={fetchOptions:t,options:this.options,queryKey:this.queryKey,client:this.#i,state:this.state,fetchFn:i};return r(e),e})();(this.#e===`infinite`?se(this.options.pages):this.options.behavior)?.onFetch(a,this),this.#n=this.state,(this.state.fetchStatus===`idle`||this.state.fetchMeta!==a.fetchOptions?.meta)&&this.#l({type:`fetch`,meta:a.fetchOptions?.meta}),this.#a=L({initialPromise:t?.initialPromise,fn:a.fetchFn,onCancel:e=>{e instanceof I&&e.revert&&this.setState({...this.#n,fetchStatus:`idle`}),n.abort()},onFail:(e,t)=>{this.#l({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#l({type:`pause`})},onContinue:()=>{this.#l({type:`continue`})},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode,canRun:()=>!0});try{let e=await this.#a.start();if(e===void 0)throw Error(`${this.queryHash} data is undefined`);return this.setData(e),this.#r.config.onSuccess?.(e,this),this.#r.config.onSettled?.(e,this.state.error,this),e}catch(e){if(e instanceof I){if(e.silent)return this.#a.promise;if(e.revert){if(this.state.data===void 0)throw e;return this.state.data}}throw this.#l({type:`error`,error:e}),this.#r.config.onError?.(e,this),this.#r.config.onSettled?.(this.state.data,e,this),e}finally{this.scheduleGc()}}#l(e){let t=t=>{switch(e.type){case`failed`:return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case`pause`:return{...t,fetchStatus:`paused`};case`continue`:return{...t,fetchStatus:`fetching`};case`fetch`:return{...t,...V(t.data,this.options),fetchMeta:e.meta??null};case`success`:let n={...t,...H(e.data,e.dataUpdatedAt),dataUpdateCount:t.dataUpdateCount+1,...!e.manual&&{fetchStatus:`idle`,fetchFailureCount:0,fetchFailureReason:null}};return this.#n=e.manual?n:void 0,n;case`error`:let r=e.error;return{...t,error:r,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:`idle`,status:`error`,isInvalidated:!0};case`invalidate`:return{...t,isInvalidated:!0};case`setState`:return{...t,...e.state}}};this.state=t(this.state),N.batch(()=>{this.observers.forEach(e=>{e.onQueryUpdate()}),this.#r.notify({query:this,type:`updated`,action:e})})}};function V(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:F(t.networkMode)?`fetching`:`paused`,...e===void 0&&{error:null,status:`pending`}}}function H(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:`success`}}function U(e){let t=typeof e.initialData==`function`?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt==`function`?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?`success`:`pending`,fetchStatus:`idle`}}var de=class extends r{constructor(e,t){super(),this.options=t,this.#e=e,this.#s=null,this.#o=j(),this.bindMethods(),this.setOptions(t)}#e;#t=void 0;#n=void 0;#r=void 0;#i;#a;#o;#s;#c;#l;#u;#d;#f;#p;#m=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),G(this.#t,this.options)?this.#h():this.updateResult(),this.#y())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return K(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return K(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#b(),this.#x(),this.#t.removeObserver(this)}setOptions(e){let t=this.options,n=this.#t;if(this.options=this.#e.defaultQueryOptions(e),this.options.enabled!==void 0&&typeof this.options.enabled!=`boolean`&&typeof this.options.enabled!=`function`&&typeof m(this.options.enabled,this.#t)!=`boolean`)throw Error(`Expected enabled to be a boolean or a callback that returns a boolean`);this.#S(),this.#t.setOptions(this.options),t._defaulted&&!S(this.options,t)&&this.#e.getQueryCache().notify({type:`observerOptionsUpdated`,query:this.#t,observer:this});let r=this.hasListeners();r&&q(this.#t,n,this.options,t)&&this.#h(),this.updateResult(),r&&(this.#t!==n||m(this.options.enabled,this.#t)!==m(t.enabled,this.#t)||p(this.options.staleTime,this.#t)!==p(t.staleTime,this.#t))&&this.#g();let i=this.#_();r&&(this.#t!==n||m(this.options.enabled,this.#t)!==m(t.enabled,this.#t)||i!==this.#p)&&this.#v(i)}getOptimisticResult(e){let t=this.#e.getQueryCache().build(this.#e,e),n=this.createResult(t,e);return fe(this,n)&&(this.#r=n,this.#a=this.options,this.#i=this.#t.state),n}getCurrentResult(){return this.#r}trackResult(e,t){return new Proxy(e,{get:(e,n)=>(this.trackProp(n),t?.(n),n===`promise`&&(this.trackProp(`data`),!this.options.experimental_prefetchInRender&&this.#o.status===`pending`&&this.#o.reject(Error(`experimental_prefetchInRender feature flag is not enabled`))),Reflect.get(e,n))})}trackProp(e){this.#m.add(e)}getCurrentQuery(){return this.#t}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){let t=this.#e.defaultQueryOptions(e),n=this.#e.getQueryCache().build(this.#e,t);return n.fetch().then(()=>this.createResult(n,t))}fetch(e){return this.#h({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#r))}#h(e){this.#S();let t=this.#t.fetch(this.options,e);return e?.throwOnError||(t=t.catch(l)),t}#g(){this.#b();let e=p(this.options.staleTime,this.#t);if(A.isServer()||this.#r.isStale||!d(e))return;let t=f(this.#r.dataUpdatedAt,e)+1;this.#d=o.setTimeout(()=>{this.#r.isStale||this.updateResult()},t)}#_(){return(typeof this.options.refetchInterval==`function`?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#v(e){this.#x(),this.#p=e,!(A.isServer()||m(this.options.enabled,this.#t)===!1||!d(this.#p)||this.#p===0)&&(this.#f=o.setInterval(()=>{(this.options.refetchIntervalInBackground||i.isFocused())&&this.#h()},this.#p))}#y(){this.#g(),this.#v(this.#_())}#b(){this.#d!==void 0&&(o.clearTimeout(this.#d),this.#d=void 0)}#x(){this.#f!==void 0&&(o.clearInterval(this.#f),this.#f=void 0)}createResult(e,t){let n=this.#t,r=this.options,i=this.#r,a=this.#i,o=this.#a,s=e===n?this.#n:e.state,{state:c}=e,l={...c},u=!1,d;if(t._optimisticResults){let i=this.hasListeners(),a=!i&&G(e,t),o=i&&q(e,n,t,r);(a||o)&&(l={...l,...V(c.data,e.options)}),t._optimisticResults===`isRestoring`&&(l.fetchStatus=`idle`)}let{error:f,errorUpdatedAt:p,status:h}=l;d=l.data;let g=!1;if(t.placeholderData!==void 0&&d===void 0&&h===`pending`){let e;i?.isPlaceholderData&&t.placeholderData===o?.placeholderData?(e=i.data,g=!0):e=typeof t.placeholderData==`function`?t.placeholderData(this.#u?.state.data,this.#u):t.placeholderData,e!==void 0&&(h=`success`,d=E(i?.data,e,t),u=!0)}if(t.select&&d!==void 0&&!g)if(i&&d===a?.data&&t.select===this.#c)d=this.#l;else try{this.#c=t.select,d=t.select(d),d=E(i?.data,d,t),this.#l=d,this.#s=null}catch(e){this.#s=e}this.#s&&(f=this.#s,d=this.#l,p=Date.now(),h=`error`);let _=l.fetchStatus===`fetching`,v=h===`pending`,y=h===`error`,b=v&&_,x=d!==void 0,S={status:h,fetchStatus:l.fetchStatus,isPending:v,isSuccess:h===`success`,isError:y,isInitialLoading:b,isLoading:b,data:d,dataUpdatedAt:l.dataUpdatedAt,error:f,errorUpdatedAt:p,failureCount:l.fetchFailureCount,failureReason:l.fetchFailureReason,errorUpdateCount:l.errorUpdateCount,isFetched:e.isFetched(),isFetchedAfterMount:l.dataUpdateCount>s.dataUpdateCount||l.errorUpdateCount>s.errorUpdateCount,isFetching:_,isRefetching:_&&!v,isLoadingError:y&&!x,isPaused:l.fetchStatus===`paused`,isPlaceholderData:u,isRefetchError:y&&x,isStale:J(e,t),refetch:this.refetch,promise:this.#o,isEnabled:m(t.enabled,e)!==!1};if(this.options.experimental_prefetchInRender){let t=S.data!==void 0,r=S.status===`error`&&!t,i=e=>{r?e.reject(S.error):t&&e.resolve(S.data)},a=()=>{i(this.#o=S.promise=j())},o=this.#o;switch(o.status){case`pending`:e.queryHash===n.queryHash&&i(o);break;case`fulfilled`:(r||S.data!==o.value)&&a();break;case`rejected`:(!r||S.error!==o.reason)&&a();break}}return S}updateResult(){let e=this.#r,t=this.createResult(this.#t,this.options);this.#i=this.#t.state,this.#a=this.options,this.#i.data!==void 0&&(this.#u=this.#t),!S(t,e)&&(this.#r=t,this.#C({listeners:(()=>{if(!e)return!0;let{notifyOnChangeProps:t}=this.options,n=typeof t==`function`?t():t;if(n===`all`||!n&&!this.#m.size)return!0;let r=new Set(n??this.#m);return this.options.throwOnError&&r.add(`error`),Object.keys(this.#r).some(t=>{let n=t;return this.#r[n]!==e[n]&&r.has(n)})})()}))}#S(){let e=this.#e.getQueryCache().build(this.#e,this.options);if(e===this.#t)return;let t=this.#t;this.#t=e,this.#n=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#y()}#C(e){N.batch(()=>{e.listeners&&this.listeners.forEach(e=>{e(this.#r)}),this.#e.getQueryCache().notify({query:this.#t,type:`observerResultsUpdated`})})}};function W(e,t){return m(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status===`error`&&m(t.retryOnMount,e)===!1)}function G(e,t){return W(e,t)||e.state.data!==void 0&&K(e,t,t.refetchOnMount)}function K(e,t,n){if(m(t.enabled,e)!==!1&&p(t.staleTime,e)!==`static`){let r=typeof n==`function`?n(e):n;return r===`always`||r!==!1&&J(e,t)}return!1}function q(e,t,n,r){return(e!==t||m(r.enabled,e)===!1)&&(!n.suspense||e.state.status!==`error`)&&J(e,n)}function J(e,t){return m(t.enabled,e)!==!1&&e.isStaleByTime(p(t.staleTime,e))}function fe(e,t){return!S(e.getCurrentResult(),t)}var Y=e(t(),1),pe=n(),X=Y.createContext(void 0),Z=e=>{let t=Y.useContext(X);if(e)return e;if(!t)throw Error(`No QueryClient set, use QueryClientProvider to set one`);return t},me=({client:e,children:t})=>(Y.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),(0,pe.jsx)(X.Provider,{value:e,children:t})),Q=Y.createContext(!1),he=()=>Y.useContext(Q);Q.Provider;function ge(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var _e=Y.createContext(ge()),ve=()=>Y.useContext(_e),ye=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError==`function`?k(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},be=e=>{Y.useEffect(()=>{e.clearReset()},[e])},xe=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:i})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(i&&e.data===void 0||k(n,[e.error,r])),Se=e=>{if(e.suspense){let t=1e3,n=e=>e===`static`?e:Math.max(e??t,t),r=e.staleTime;e.staleTime=typeof r==`function`?(...e)=>n(r(...e)):n(r),typeof e.gcTime==`number`&&(e.gcTime=Math.max(e.gcTime,t))}},Ce=(e,t)=>e.isLoading&&e.isFetching&&!t,we=(e,t)=>e?.suspense&&t.isPending,$=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function Te(e,t,n){let r=he(),i=ve(),a=Z(n),o=a.defaultQueryOptions(e);a.getDefaultOptions().queries?._experimental_beforeQuery?.(o);let s=a.getQueryCache().get(o.queryHash),c=e.subscribed!==!1;o._optimisticResults=r?`isRestoring`:c?`optimistic`:void 0,Se(o),ye(o,i,s),be(i);let u=!a.getQueryCache().get(o.queryHash),[d]=Y.useState(()=>new t(a,o)),f=d.getOptimisticResult(o),p=!r&&c;if(Y.useSyncExternalStore(Y.useCallback(e=>{let t=p?d.subscribe(N.batchCalls(e)):l;return d.updateResult(),t},[d,p]),()=>d.getCurrentResult(),()=>d.getCurrentResult()),Y.useEffect(()=>{d.setOptions(o)},[o,d]),we(o,f))throw $(o,d,i);if(xe({result:f,errorResetBoundary:i,throwOnError:o.throwOnError,query:s,suspense:o.suspense}))throw f.error;return a.getDefaultOptions().queries?._experimental_afterQuery?.(o,f),o.experimental_prefetchInRender&&!A.isServer()&&Ce(f,r)&&(u?$(o,d,i):s?.promise)?.catch(l).finally(()=>{d.updateResult()}),o.notifyOnChangeProps?f:d.trackResult(f)}var Ee={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`]}};export{i as C,D as S,g as _,de as a,y as b,le as c,P as d,N as f,te as g,_ as h,Z as i,R as l,v as m,Te as n,ue as o,u as p,me as r,ce as s,Ee as t,L as u,h as v,r as w,p as x,l as y};
|
|
@@ -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{Sn as i,g as a,h as o,n as s,t as c,u as l}from"./dist-CNOCRPxn.js";import{c as u,t as d}from"./utils-CT-Dw22R.js";import{t as f}from"./dist-rO95BjzU.js";import{t as p}from"./dist-OixawqbU.js";import{n as m,r as h,t as g}from"./dist-Bxyh1Ml_.js";import{t as _}from"./dist-CSssbxDI.js";var v=t(),y=e(n(),1),b=r(),x=`Radio`,[S,C]=o(x),[w,T]=S(x),E=y.forwardRef((e,t)=>{let{__scopeRadio:n,name:r,checked:i=!1,required:o,disabled:s,value:c=`on`,onCheck:d,form:f,...p}=e,[m,h]=y.useState(null),g=u(t,e=>h(e)),_=y.useRef(!1),v=m?f||!!m.closest(`form`):!0;return(0,b.jsxs)(w,{scope:n,checked:i,disabled:s,children:[(0,b.jsx)(l.button,{type:`button`,role:`radio`,"aria-checked":i,"data-state":j(i),"data-disabled":s?``:void 0,disabled:s,value:c,...p,ref:g,onClick:a(e.onClick,e=>{i||d?.(),v&&(_.current=e.isPropagationStopped(),_.current||e.stopPropagation())})}),v&&(0,b.jsx)(A,{control:m,bubbles:!_.current,name:r,value:c,checked:i,required:o,disabled:s,form:f,style:{transform:`translateX(-100%)`}})]})});E.displayName=x;var D=`RadioIndicator`,O=y.forwardRef((e,t)=>{let{__scopeRadio:n,forceMount:r,...i}=e,a=T(D,n);return(0,b.jsx)(s,{present:r||a.checked,children:(0,b.jsx)(l.span,{"data-state":j(a.checked),"data-disabled":a.disabled?``:void 0,...i,ref:t})})});O.displayName=D;var k=`RadioBubbleInput`,A=y.forwardRef(({__scopeRadio:e,control:t,checked:n,bubbles:r=!0,...i},a)=>{let o=y.useRef(null),s=u(o,a),c=_(n),d=f(t);return y.useEffect(()=>{let e=o.current;if(!e)return;let t=window.HTMLInputElement.prototype,i=Object.getOwnPropertyDescriptor(t,`checked`).set;if(c!==n&&i){let t=new Event(`click`,{bubbles:r});i.call(e,n),e.dispatchEvent(t)}},[c,n,r]),(0,b.jsx)(l.input,{type:`radio`,"aria-hidden":!0,defaultChecked:n,...i,tabIndex:-1,ref:s,style:{...i.style,...d,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}})});A.displayName=k;function j(e){return e?`checked`:`unchecked`}var M=[`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`],N=`RadioGroup`,[P,F]=o(N,[h,C]),I=h(),L=C(),[R,z]=P(N),B=y.forwardRef((e,t)=>{let{__scopeRadioGroup:n,name:r,defaultValue:i,value:a,required:o=!1,disabled:s=!1,orientation:u,dir:d,loop:f=!0,onValueChange:h,...g}=e,_=I(n),v=p(d),[y,x]=c({prop:a,defaultProp:i??null,onChange:h,caller:N});return(0,b.jsx)(R,{scope:n,name:r,required:o,disabled:s,value:y,onValueChange:x,children:(0,b.jsx)(m,{asChild:!0,..._,orientation:u,dir:v,loop:f,children:(0,b.jsx)(l.div,{role:`radiogroup`,"aria-required":o,"aria-orientation":u,"data-disabled":s?``:void 0,dir:v,...g,ref:t})})})});B.displayName=N;var V=`RadioGroupItem`,H=y.forwardRef((e,t)=>{let{__scopeRadioGroup:n,disabled:r,...i}=e,o=z(V,n),s=o.disabled||r,c=I(n),l=L(n),d=y.useRef(null),f=u(t,d),p=o.value===i.value,m=y.useRef(!1);return y.useEffect(()=>{let e=e=>{M.includes(e.key)&&(m.current=!0)},t=()=>m.current=!1;return document.addEventListener(`keydown`,e),document.addEventListener(`keyup`,t),()=>{document.removeEventListener(`keydown`,e),document.removeEventListener(`keyup`,t)}},[]),(0,b.jsx)(g,{asChild:!0,...c,focusable:!s,active:p,children:(0,b.jsx)(E,{disabled:s,required:o.required,checked:p,...l,...i,name:o.name,ref:f,onCheck:()=>o.onValueChange(i.value),onKeyDown:a(e=>{e.key===`Enter`&&e.preventDefault()}),onFocus:a(i.onFocus,()=>{m.current&&d.current?.click()})})})});H.displayName=V;var U=`RadioGroupIndicator`,W=y.forwardRef((e,t)=>{let{__scopeRadioGroup:n,...r}=e;return(0,b.jsx)(O,{...L(n),...r,ref:t})});W.displayName=U;var G=B,K=H,q=W,J=y.forwardRef((e,t)=>{let n=(0,v.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=d(`grid gap-2`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,b.jsx)(G,{className:a,...i,ref:t}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});J.displayName=G.displayName;var Y=y.forwardRef((e,t)=>{let n=(0,v.c)(10),r,a;n[0]===e?(r=n[1],a=n[2]):({className:r,...a}=e,n[0]=e,n[1]=r,n[2]=a);let o;n[3]===r?o=n[4]:(o=d(`aspect-square h-4 w-4 rounded-full border border-brand text-brand ring-offset-background focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50`,r),n[3]=r,n[4]=o);let s;n[5]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,b.jsx)(q,{className:`flex items-center justify-center`,children:(0,b.jsx)(i,{className:`h-2.5 w-2.5 fill-current text-current`})}),n[5]=s):s=n[5];let c;return n[6]!==a||n[7]!==t||n[8]!==o?(c=(0,b.jsx)(K,{ref:t,className:o,...a,children:s}),n[6]=a,n[7]=t,n[8]=o,n[9]=c):c=n[9],c});Y.displayName=K.displayName;export{Y as n,J as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=`scenic-chrome-button hover:!bg-[hsl(var(--scenic-foreground))] hover:!text-[hsl(var(--scenic-foreground-inverse))]`,t=`0 0% 9%`,n=`0 0% 98%`;function r(e){let r=e<=140;return{foreground:r?n:t,inverse:r?t:n}}function i(e,t){document.documentElement.style.setProperty(`--scenic-foreground`,e),document.documentElement.style.setProperty(`--scenic-foreground-inverse`,t)}export{e as n,r,i 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,g as a,h as o,l as s,n as c,u as l}from"./dist-CNOCRPxn.js";import{c as u,t as d}from"./utils-CT-Dw22R.js";import{t as f}from"./dist-OixawqbU.js";var p=e(n(),1),m=t();function h(e,[t,n]){return Math.min(n,Math.max(t,e))}var g=r();function _(e,t){return p.useReducer((e,n)=>t[e][n]??e,e)}var v=`ScrollArea`,[y,b]=o(v),[x,S]=y(v),C=p.forwardRef((e,t)=>{let{__scopeScrollArea:n,type:r=`hover`,dir:i,scrollHideDelay:a=600,...o}=e,[s,c]=p.useState(null),[d,m]=p.useState(null),[h,_]=p.useState(null),[v,y]=p.useState(null),[b,S]=p.useState(null),[C,w]=p.useState(0),[T,E]=p.useState(0),[D,O]=p.useState(!1),[k,A]=p.useState(!1),j=u(t,e=>c(e)),M=f(i);return(0,g.jsx)(x,{scope:n,type:r,dir:M,scrollHideDelay:a,scrollArea:s,viewport:d,onViewportChange:m,content:h,onContentChange:_,scrollbarX:v,onScrollbarXChange:y,scrollbarXEnabled:D,onScrollbarXEnabledChange:O,scrollbarY:b,onScrollbarYChange:S,scrollbarYEnabled:k,onScrollbarYEnabledChange:A,onCornerWidthChange:w,onCornerHeightChange:E,children:(0,g.jsx)(l.div,{dir:M,...o,ref:j,style:{position:`relative`,"--radix-scroll-area-corner-width":C+`px`,"--radix-scroll-area-corner-height":T+`px`,...e.style}})})});C.displayName=v;var w=`ScrollAreaViewport`,T=p.forwardRef((e,t)=>{let{__scopeScrollArea:n,children:r,nonce:i,...a}=e,o=S(w,n),s=u(t,p.useRef(null),o.onViewportChange);return(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}`},nonce:i}),(0,g.jsx)(l.div,{"data-radix-scroll-area-viewport":``,...a,ref:s,style:{overflowX:o.scrollbarXEnabled?`scroll`:`hidden`,overflowY:o.scrollbarYEnabled?`scroll`:`hidden`,...e.style},children:(0,g.jsx)(`div`,{ref:o.onContentChange,style:{minWidth:`100%`,display:`table`},children:r})})]})});T.displayName=w;var E=`ScrollAreaScrollbar`,D=p.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=S(E,e.__scopeScrollArea),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:o}=i,s=e.orientation===`horizontal`;return p.useEffect(()=>(s?a(!0):o(!0),()=>{s?a(!1):o(!1)}),[s,a,o]),i.type===`hover`?(0,g.jsx)(O,{...r,ref:t,forceMount:n}):i.type===`scroll`?(0,g.jsx)(k,{...r,ref:t,forceMount:n}):i.type===`auto`?(0,g.jsx)(A,{...r,ref:t,forceMount:n}):i.type===`always`?(0,g.jsx)(j,{...r,ref:t}):null});D.displayName=E;var O=p.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=S(E,e.__scopeScrollArea),[a,o]=p.useState(!1);return p.useEffect(()=>{let e=i.scrollArea,t=0;if(e){let n=()=>{window.clearTimeout(t),o(!0)},r=()=>{t=window.setTimeout(()=>o(!1),i.scrollHideDelay)};return e.addEventListener(`pointerenter`,n),e.addEventListener(`pointerleave`,r),()=>{window.clearTimeout(t),e.removeEventListener(`pointerenter`,n),e.removeEventListener(`pointerleave`,r)}}},[i.scrollArea,i.scrollHideDelay]),(0,g.jsx)(c,{present:n||a,children:(0,g.jsx)(A,{"data-state":a?`visible`:`hidden`,...r,ref:t})})}),k=p.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=S(E,e.__scopeScrollArea),o=e.orientation===`horizontal`,s=G(()=>u(`SCROLL_END`),100),[l,u]=_(`hidden`,{hidden:{SCROLL:`scrolling`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}});return p.useEffect(()=>{if(l===`idle`){let e=window.setTimeout(()=>u(`HIDE`),i.scrollHideDelay);return()=>window.clearTimeout(e)}},[l,i.scrollHideDelay,u]),p.useEffect(()=>{let e=i.viewport,t=o?`scrollLeft`:`scrollTop`;if(e){let n=e[t],r=()=>{let r=e[t];n!==r&&(u(`SCROLL`),s()),n=r};return e.addEventListener(`scroll`,r),()=>e.removeEventListener(`scroll`,r)}},[i.viewport,o,u,s]),(0,g.jsx)(c,{present:n||l!==`hidden`,children:(0,g.jsx)(j,{"data-state":l===`hidden`?`hidden`:`visible`,...r,ref:t,onPointerEnter:a(e.onPointerEnter,()=>u(`POINTER_ENTER`)),onPointerLeave:a(e.onPointerLeave,()=>u(`POINTER_LEAVE`))})})}),A=p.forwardRef((e,t)=>{let n=S(E,e.__scopeScrollArea),{forceMount:r,...i}=e,[a,o]=p.useState(!1),s=e.orientation===`horizontal`,l=G(()=>{if(n.viewport){let e=n.viewport.offsetWidth<n.viewport.scrollWidth,t=n.viewport.offsetHeight<n.viewport.scrollHeight;o(s?e:t)}},10);return K(n.viewport,l),K(n.content,l),(0,g.jsx)(c,{present:r||a,children:(0,g.jsx)(j,{"data-state":a?`visible`:`hidden`,...i,ref:t})})}),j=p.forwardRef((e,t)=>{let{orientation:n=`vertical`,...r}=e,i=S(E,e.__scopeScrollArea),a=p.useRef(null),o=p.useRef(0),[s,c]=p.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),l=B(s.viewport,s.content),u={...r,sizes:s,onSizesChange:c,hasThumb:l>0&&l<1,onThumbChange:e=>a.current=e,onThumbPointerUp:()=>o.current=0,onThumbPointerDown:e=>o.current=e};function d(e,t){return ie(e,o.current,s,t)}return n===`horizontal`?(0,g.jsx)(M,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollLeft,t=H(e,s,i.dir);a.current.style.transform=`translate3d(${t}px, 0, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollLeft=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollLeft=d(e,i.dir))}}):n===`vertical`?(0,g.jsx)(ee,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollTop,t=H(e,s);a.current.style.transform=`translate3d(0, ${t}px, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollTop=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollTop=d(e))}}):null}),M=p.forwardRef((e,t)=>{let{sizes:n,onSizesChange:r,...i}=e,a=S(E,e.__scopeScrollArea),[o,s]=p.useState(),c=p.useRef(null),l=u(t,c,a.onScrollbarXChange);return p.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),(0,g.jsx)(P,{"data-orientation":`horizontal`,...i,ref:l,sizes:n,style:{bottom:0,left:a.dir===`rtl`?`var(--radix-scroll-area-corner-width)`:0,right:a.dir===`ltr`?`var(--radix-scroll-area-corner-width)`:0,"--radix-scroll-area-thumb-width":V(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.x),onDragScroll:t=>e.onDragScroll(t.x),onWheelScroll:(t,n)=>{if(a.viewport){let r=a.viewport.scrollLeft+t.deltaX;e.onWheelScroll(r),W(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&a.viewport&&o&&r({content:a.viewport.scrollWidth,viewport:a.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:z(o.paddingLeft),paddingEnd:z(o.paddingRight)}})}})}),ee=p.forwardRef((e,t)=>{let{sizes:n,onSizesChange:r,...i}=e,a=S(E,e.__scopeScrollArea),[o,s]=p.useState(),c=p.useRef(null),l=u(t,c,a.onScrollbarYChange);return p.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),(0,g.jsx)(P,{"data-orientation":`vertical`,...i,ref:l,sizes:n,style:{top:0,right:a.dir===`ltr`?0:void 0,left:a.dir===`rtl`?0:void 0,bottom:`var(--radix-scroll-area-corner-height)`,"--radix-scroll-area-thumb-height":V(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.y),onDragScroll:t=>e.onDragScroll(t.y),onWheelScroll:(t,n)=>{if(a.viewport){let r=a.viewport.scrollTop+t.deltaY;e.onWheelScroll(r),W(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&a.viewport&&o&&r({content:a.viewport.scrollHeight,viewport:a.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:z(o.paddingTop),paddingEnd:z(o.paddingBottom)}})}})}),[te,N]=y(E),P=p.forwardRef((e,t)=>{let{__scopeScrollArea:n,sizes:r,hasThumb:i,onThumbChange:o,onThumbPointerUp:c,onThumbPointerDown:d,onThumbPositionChange:f,onDragScroll:m,onWheelScroll:h,onResize:_,...v}=e,y=S(E,n),[b,x]=p.useState(null),C=u(t,e=>x(e)),w=p.useRef(null),T=p.useRef(``),D=y.viewport,O=r.content-r.viewport,k=s(h),A=s(f),j=G(_,10);function M(e){w.current&&m({x:e.clientX-w.current.left,y:e.clientY-w.current.top})}return p.useEffect(()=>{let e=e=>{let t=e.target;b?.contains(t)&&k(e,O)};return document.addEventListener(`wheel`,e,{passive:!1}),()=>document.removeEventListener(`wheel`,e,{passive:!1})},[D,b,O,k]),p.useEffect(A,[r,A]),K(b,j),K(y.content,j),(0,g.jsx)(te,{scope:n,scrollbar:b,hasThumb:i,onThumbChange:s(o),onThumbPointerUp:s(c),onThumbPositionChange:A,onThumbPointerDown:s(d),children:(0,g.jsx)(l.div,{...v,ref:C,style:{position:`absolute`,...v.style},onPointerDown:a(e.onPointerDown,e=>{e.button===0&&(e.target.setPointerCapture(e.pointerId),w.current=b.getBoundingClientRect(),T.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect=`none`,y.viewport&&(y.viewport.style.scrollBehavior=`auto`),M(e))}),onPointerMove:a(e.onPointerMove,M),onPointerUp:a(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=T.current,y.viewport&&(y.viewport.style.scrollBehavior=``),w.current=null})})})}),F=`ScrollAreaThumb`,I=p.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=N(F,e.__scopeScrollArea);return(0,g.jsx)(c,{present:n||i.hasThumb,children:(0,g.jsx)(ne,{ref:t,...r})})}),ne=p.forwardRef((e,t)=>{let{__scopeScrollArea:n,style:r,...i}=e,o=S(F,n),s=N(F,n),{onThumbPositionChange:c}=s,d=u(t,e=>s.onThumbChange(e)),f=p.useRef(void 0),m=G(()=>{f.current&&=(f.current(),void 0)},100);return p.useEffect(()=>{let e=o.viewport;if(e){let t=()=>{m(),f.current||(f.current=ae(e,c),c())};return c(),e.addEventListener(`scroll`,t),()=>e.removeEventListener(`scroll`,t)}},[o.viewport,m,c]),(0,g.jsx)(l.div,{"data-state":s.hasThumb?`visible`:`hidden`,...i,ref:d,style:{width:`var(--radix-scroll-area-thumb-width)`,height:`var(--radix-scroll-area-thumb-height)`,...r},onPointerDownCapture:a(e.onPointerDownCapture,e=>{let t=e.target.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;s.onThumbPointerDown({x:n,y:r})}),onPointerUp:a(e.onPointerUp,s.onThumbPointerUp)})});I.displayName=F;var L=`ScrollAreaCorner`,R=p.forwardRef((e,t)=>{let n=S(L,e.__scopeScrollArea),r=!!(n.scrollbarX&&n.scrollbarY);return n.type!==`scroll`&&r?(0,g.jsx)(re,{...e,ref:t}):null});R.displayName=L;var re=p.forwardRef((e,t)=>{let{__scopeScrollArea:n,...r}=e,i=S(L,n),[a,o]=p.useState(0),[s,c]=p.useState(0),u=!!(a&&s);return K(i.scrollbarX,()=>{let e=i.scrollbarX?.offsetHeight||0;i.onCornerHeightChange(e),c(e)}),K(i.scrollbarY,()=>{let e=i.scrollbarY?.offsetWidth||0;i.onCornerWidthChange(e),o(e)}),u?(0,g.jsx)(l.div,{...r,ref:t,style:{width:a,height:s,position:`absolute`,right:i.dir===`ltr`?0:void 0,left:i.dir===`rtl`?0:void 0,bottom:0,...e.style}}):null});function z(e){return e?parseInt(e,10):0}function B(e,t){let n=e/t;return isNaN(n)?0:n}function V(e){let t=B(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function ie(e,t,n,r=`ltr`){let i=V(n),a=i/2,o=t||a,s=i-o,c=n.scrollbar.paddingStart+o,l=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,d=r===`ltr`?[0,u]:[u*-1,0];return U([c,l],d)(e)}function H(e,t,n=`ltr`){let r=V(t),i=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-i,o=t.content-t.viewport,s=a-r,c=h(e,n===`ltr`?[0,o]:[o*-1,0]);return U([0,o],[0,s])(c)}function U(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function W(e,t){return e>0&&e<t}var ae=(e,t=()=>{})=>{let n={left:e.scrollLeft,top:e.scrollTop},r=0;return(function i(){let a={left:e.scrollLeft,top:e.scrollTop},o=n.left!==a.left,s=n.top!==a.top;(o||s)&&t(),n=a,r=window.requestAnimationFrame(i)})(),()=>window.cancelAnimationFrame(r)};function G(e,t){let n=s(e),r=p.useRef(0);return p.useEffect(()=>()=>window.clearTimeout(r.current),[]),p.useCallback(()=>{window.clearTimeout(r.current),r.current=window.setTimeout(n,t)},[n,t])}function K(e,t){let n=s(t);i(()=>{let t=0;if(e){let r=new ResizeObserver(()=>{cancelAnimationFrame(t),t=window.requestAnimationFrame(n)});return r.observe(e),()=>{window.cancelAnimationFrame(t),r.unobserve(e)}}},[e,n])}var q=C,J=T,Y=R,X=p.forwardRef((e,t)=>{let n=(0,m.c)(15),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:i,children:r,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]===i?o=n[5]:(o=d(`relative overflow-hidden`,i),n[4]=i,n[5]=o);let s;n[6]===r?s=n[7]:(s=(0,g.jsx)(J,{className:`h-full w-full rounded-[inherit]`,children:r}),n[6]=r,n[7]=s);let c,l;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,g.jsx)(Z,{}),l=(0,g.jsx)(Y,{}),n[8]=c,n[9]=l):(c=n[8],l=n[9]);let u;return n[10]!==a||n[11]!==t||n[12]!==o||n[13]!==s?(u=(0,g.jsxs)(q,{ref:t,className:o,...a,children:[s,c,l]}),n[10]=a,n[11]=t,n[12]=o,n[13]=s,n[14]=u):u=n[14],u});X.displayName=q.displayName;var Z=p.forwardRef((e,t)=>{let n=(0,m.c)(14),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,orientation:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o=a===void 0?`vertical`:a,s=o===`vertical`&&`h-full w-2.5 border-l border-l-transparent p-[1px]`,c=o===`horizontal`&&`h-2.5 flex-col border-t border-t-transparent p-[1px]`,l;n[4]!==r||n[5]!==s||n[6]!==c?(l=d(`flex touch-none select-none transition-colors`,s,c,r),n[4]=r,n[5]=s,n[6]=c,n[7]=l):l=n[7];let u;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,g.jsx)(I,{className:`relative flex-1 rounded-full bg-border`}),n[8]=u):u=n[8];let f;return n[9]!==o||n[10]!==i||n[11]!==t||n[12]!==l?(f=(0,g.jsx)(D,{ref:t,orientation:o,className:l,...i,children:u}),n[9]=o,n[10]=i,n[11]=t,n[12]=l,n[13]=f):f=n[13],f});Z.displayName=D.displayName;var oe=`[&>div]:!box-border [&>div]:!pr-4`,Q=p.forwardRef((e,t)=>{let n=(0,m.c)(14),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,orientation:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o=a===void 0?`vertical`:a,s=o===`vertical`&&`right-0 h-full w-2.5 p-0.5`,c=o===`horizontal`&&`h-2.5 flex-col border-t border-t-transparent p-[1px]`,l;n[4]!==r||n[5]!==s||n[6]!==c?(l=d(`flex touch-none select-none transition-colors`,s,c,r),n[4]=r,n[5]=s,n[6]=c,n[7]=l):l=n[7];let u;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,g.jsx)(I,{className:`relative flex-1 rounded-full bg-foreground/20 can-hover:hover:bg-foreground/35`}),n[8]=u):u=n[8];let f;return n[9]!==o||n[10]!==i||n[11]!==t||n[12]!==l?(f=(0,g.jsx)(D,{ref:t,orientation:o,className:l,...i,children:u}),n[9]=o,n[10]=i,n[11]=t,n[12]=l,n[13]=f):f=n[13],f});Q.displayName=`SettingsScrollBar`;var $=p.forwardRef((e,t)=>{let n=(0,m.c)(20),r,i,a,o,s;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4],s=n[5]):({className:i,children:r,viewportRef:s,onViewportScroll:a,...o}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o,n[5]=s);let c;n[6]===i?c=n[7]:(c=d(`relative overflow-hidden`,i),n[6]=i,n[7]=c);let l;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(l=d(`h-full w-full rounded-[inherit]`,oe),n[8]=l):l=n[8];let u;n[9]!==r||n[10]!==a||n[11]!==s?(u=(0,g.jsx)(J,{ref:s,onScroll:a,className:l,children:r}),n[9]=r,n[10]=a,n[11]=s,n[12]=u):u=n[12];let f,p;n[13]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,g.jsx)(Q,{}),p=(0,g.jsx)(Y,{}),n[13]=f,n[14]=p):(f=n[13],p=n[14]);let h;return n[15]!==o||n[16]!==t||n[17]!==c||n[18]!==u?(h=(0,g.jsxs)(q,{ref:t,className:c,...o,children:[u,f,p]}),n[15]=o,n[16]=t,n[17]=c,n[18]=u,n[19]=h):h=n[19],h});$.displayName=`SettingsScrollArea`;var se=p.forwardRef((e,t)=>{let n=(0,m.c)(14),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,orientation:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o=a===void 0?`vertical`:a,s=o===`vertical`&&`h-full w-2 p-0.5`,c=o===`horizontal`&&`h-2 w-full flex-col p-0.5`,l;n[4]!==r||n[5]!==s||n[6]!==c?(l=d(`flex touch-none select-none bg-transparent`,s,c,r),n[4]=r,n[5]=s,n[6]=c,n[7]=l):l=n[7];let u;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,g.jsx)(I,{className:`relative flex-1 rounded-full bg-foreground/35 can-hover:hover:bg-foreground/50`}),n[8]=u):u=n[8];let f;return n[9]!==o||n[10]!==i||n[11]!==t||n[12]!==l?(f=(0,g.jsx)(D,{ref:t,orientation:o,className:l,...i,children:u}),n[9]=o,n[10]=i,n[11]=t,n[12]=l,n[13]=f):f=n[13],f});se.displayName=`FrostedScrollBar`;var ce=p.forwardRef((e,t)=>{let n=(0,m.c)(15),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:i,children:r,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]===i?o=n[5]:(o=d(`relative overflow-hidden`,i),n[4]=i,n[5]=o);let s;n[6]===r?s=n[7]:(s=(0,g.jsx)(J,{className:`h-full w-full rounded-[inherit]`,children:r}),n[6]=r,n[7]=s);let c,l;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,g.jsx)(se,{}),l=(0,g.jsx)(Y,{}),n[8]=c,n[9]=l):(c=n[8],l=n[9]);let u;return n[10]!==a||n[11]!==t||n[12]!==o||n[13]!==s?(u=(0,g.jsxs)(q,{ref:t,className:o,...a,children:[s,c,l]}),n[10]=a,n[11]=t,n[12]=o,n[13]=s,n[14]=u):u=n[14],u});ce.displayName=`FrostedScrollArea`;export{h as i,X as n,$ as r,ce 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{S as i,ot as a}from"./dist-DjiNKpTV.js";import{Cn as o,En as s,Et as c,Hn as l,M as u,Mt as d,N as f,Tn as p,Z as m,g as h,gt as g,h as _,ht as v,jn as y,t as b,u as x,vn as S}from"./dist-CNOCRPxn.js";import{c as C,t as w}from"./utils-CT-Dw22R.js";import{t as T}from"./button-B6HDsfd5.js";import{$ as E,Fr as D,Pi as ee,hi as te,jr as ne,zn as O}from"./api-D1GxdEEp.js";import{t as re}from"./dist-rO95BjzU.js";import{i as ie,n as ae,t as oe}from"./tooltip-BtJG5fZl.js";import{t as se}from"./dist-CkQILg8A.js";import{t as ce}from"./dist-OixawqbU.js";import{i as le}from"./scroll-area-BMQFeWmq.js";import{t as ue}from"./use-toast-xpb5jNtN.js";import{t as k}from"./dist-CSssbxDI.js";import{Dn as de,F as fe,It as pe,Mn as me,P as he,Tn as ge,U as _e,W as ve,_t as ye,kn as be,n as xe,r as Se,t as Ce,vt as we,xn as Te,yn as A,yt as Ee}from"./index-BOB3ZUQs.js";import{n as j,t as De}from"./toggle-group-DMR7z3pz.js";import{t as Oe}from"./use-settings-page-loading-BTySlInF.js";var M=t(),N=e(n(),1),P=r(),ke=[`PageUp`,`PageDown`],Ae=[`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`],je={"from-left":[`Home`,`PageDown`,`ArrowDown`,`ArrowLeft`],"from-right":[`Home`,`PageDown`,`ArrowDown`,`ArrowRight`],"from-bottom":[`Home`,`PageDown`,`ArrowDown`,`ArrowLeft`],"from-top":[`Home`,`PageDown`,`ArrowUp`,`ArrowLeft`]},F=`Slider`,[Me,Ne,Pe]=se(F),[Fe,Ie]=_(F,[Pe]),[Le,Re]=Fe(F),ze=N.forwardRef((e,t)=>{let{name:n,min:r=0,max:i=100,step:a=1,orientation:o=`horizontal`,disabled:s=!1,minStepsBetweenThumbs:c=0,defaultValue:l=[r],value:u,onValueChange:d=()=>{},onValueCommit:f=()=>{},inverted:p=!1,form:m,...g}=e,_=N.useRef(new Set),v=N.useRef(0),y=o===`horizontal`?Ve:He,[x=[],S]=b({prop:u,defaultProp:l,onChange:e=>{[..._.current][v.current]?.focus(),d(e)}}),C=N.useRef(x);function w(e){D(e,tt(x,e))}function T(e){D(e,v.current)}function E(){let e=C.current[v.current];x[v.current]!==e&&f(x)}function D(e,t,{commit:n}={commit:!1}){let o=z(a),s=le(B(Math.round((e-r)/a)*a+r,o),[r,i]);S((e=[])=>{let r=Qe(e,s,t);if(it(r,c*a)){v.current=r.indexOf(s);let t=String(r)!==String(e);return t&&n&&f(r),t?r:e}else return e})}return(0,P.jsx)(Le,{scope:e.__scopeSlider,name:n,disabled:s,min:r,max:i,valueIndexToChangeRef:v,thumbs:_.current,values:x,orientation:o,form:m,children:(0,P.jsx)(Me.Provider,{scope:e.__scopeSlider,children:(0,P.jsx)(Me.Slot,{scope:e.__scopeSlider,children:(0,P.jsx)(y,{"aria-disabled":s,"data-disabled":s?``:void 0,...g,ref:t,onPointerDown:h(g.onPointerDown,()=>{s||(C.current=x)}),min:r,max:i,inverted:p,onSlideStart:s?void 0:w,onSlideMove:s?void 0:T,onSlideEnd:s?void 0:E,onHomeKeyDown:()=>!s&&D(r,0,{commit:!0}),onEndKeyDown:()=>!s&&D(i,x.length-1,{commit:!0}),onStepKeyDown:({event:e,direction:t})=>{if(!s){let n=ke.includes(e.key)||e.shiftKey&&Ae.includes(e.key)?10:1,r=v.current,i=x[r];D(i+a*n*t,r,{commit:!0})}}})})})})});ze.displayName=F;var[Be,I]=Fe(F,{startEdge:`left`,endEdge:`right`,size:`width`,direction:1}),Ve=N.forwardRef((e,t)=>{let{min:n,max:r,dir:i,inverted:a,onSlideStart:o,onSlideMove:s,onSlideEnd:c,onStepKeyDown:l,...u}=e,[d,f]=N.useState(null),p=C(t,e=>f(e)),m=N.useRef(void 0),h=ce(i),g=h===`ltr`,_=g&&!a||!g&&a;function v(e){let t=m.current||d.getBoundingClientRect(),i=R([0,t.width],_?[n,r]:[r,n]);return m.current=t,i(e-t.left)}return(0,P.jsx)(Be,{scope:e.__scopeSlider,startEdge:_?`left`:`right`,endEdge:_?`right`:`left`,direction:_?1:-1,size:`width`,children:(0,P.jsx)(L,{dir:h,"data-orientation":`horizontal`,...u,ref:p,style:{...u.style,"--radix-slider-thumb-transform":`translateX(-50%)`},onSlideStart:e=>{let t=v(e.clientX);o?.(t)},onSlideMove:e=>{let t=v(e.clientX);s?.(t)},onSlideEnd:()=>{m.current=void 0,c?.()},onStepKeyDown:e=>{let t=je[_?`from-left`:`from-right`].includes(e.key);l?.({event:e,direction:t?-1:1})}})})}),He=N.forwardRef((e,t)=>{let{min:n,max:r,inverted:i,onSlideStart:a,onSlideMove:o,onSlideEnd:s,onStepKeyDown:c,...l}=e,u=N.useRef(null),d=C(t,u),f=N.useRef(void 0),p=!i;function m(e){let t=f.current||u.current.getBoundingClientRect(),i=R([0,t.height],p?[r,n]:[n,r]);return f.current=t,i(e-t.top)}return(0,P.jsx)(Be,{scope:e.__scopeSlider,startEdge:p?`bottom`:`top`,endEdge:p?`top`:`bottom`,size:`height`,direction:p?1:-1,children:(0,P.jsx)(L,{"data-orientation":`vertical`,...l,ref:d,style:{...l.style,"--radix-slider-thumb-transform":`translateY(50%)`},onSlideStart:e=>{let t=m(e.clientY);a?.(t)},onSlideMove:e=>{let t=m(e.clientY);o?.(t)},onSlideEnd:()=>{f.current=void 0,s?.()},onStepKeyDown:e=>{let t=je[p?`from-bottom`:`from-top`].includes(e.key);c?.({event:e,direction:t?-1:1})}})})}),L=N.forwardRef((e,t)=>{let{__scopeSlider:n,onSlideStart:r,onSlideMove:i,onSlideEnd:a,onHomeKeyDown:o,onEndKeyDown:s,onStepKeyDown:c,...l}=e,u=Re(F,n);return(0,P.jsx)(x.span,{...l,ref:t,onKeyDown:h(e.onKeyDown,e=>{e.key===`Home`?(o(e),e.preventDefault()):e.key===`End`?(s(e),e.preventDefault()):ke.concat(Ae).includes(e.key)&&(c(e),e.preventDefault())}),onPointerDown:h(e.onPointerDown,e=>{let t=e.target;t.setPointerCapture(e.pointerId),e.preventDefault(),u.thumbs.has(t)?t.focus():r(e)}),onPointerMove:h(e.onPointerMove,e=>{e.target.hasPointerCapture(e.pointerId)&&i(e)}),onPointerUp:h(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&(t.releasePointerCapture(e.pointerId),a(e))})})}),Ue=`SliderTrack`,We=N.forwardRef((e,t)=>{let{__scopeSlider:n,...r}=e,i=Re(Ue,n);return(0,P.jsx)(x.span,{"data-disabled":i.disabled?``:void 0,"data-orientation":i.orientation,...r,ref:t})});We.displayName=Ue;var Ge=`SliderRange`,Ke=N.forwardRef((e,t)=>{let{__scopeSlider:n,...r}=e,i=Re(Ge,n),a=I(Ge,n),o=C(t,N.useRef(null)),s=i.values.length,c=i.values.map(e=>$e(e,i.min,i.max)),l=s>1?Math.min(...c):0,u=100-Math.max(...c);return(0,P.jsx)(x.span,{"data-orientation":i.orientation,"data-disabled":i.disabled?``:void 0,...r,ref:o,style:{...e.style,[a.startEdge]:l+`%`,[a.endEdge]:u+`%`}})});Ke.displayName=Ge;var qe=`SliderThumb`,Je=N.forwardRef((e,t)=>{let n=Ne(e.__scopeSlider),[r,i]=N.useState(null),a=C(t,e=>i(e)),o=N.useMemo(()=>r?n().findIndex(e=>e.ref.current===r):-1,[n,r]);return(0,P.jsx)(Ye,{...e,ref:a,index:o})}),Ye=N.forwardRef((e,t)=>{let{__scopeSlider:n,index:r,name:i,...a}=e,o=Re(qe,n),s=I(qe,n),[c,l]=N.useState(null),u=C(t,e=>l(e)),d=c?o.form||!!c.closest(`form`):!0,f=re(c),p=o.values[r],m=p===void 0?0:$e(p,o.min,o.max),g=et(r,o.values.length),_=f?.[s.size],v=_?nt(_,m,s.direction):0;return N.useEffect(()=>{if(c)return o.thumbs.add(c),()=>{o.thumbs.delete(c)}},[c,o.thumbs]),(0,P.jsxs)(`span`,{style:{transform:`var(--radix-slider-thumb-transform)`,position:`absolute`,[s.startEdge]:`calc(${m}% + ${v}px)`},children:[(0,P.jsx)(Me.ItemSlot,{scope:e.__scopeSlider,children:(0,P.jsx)(x.span,{role:`slider`,"aria-label":e[`aria-label`]||g,"aria-valuemin":o.min,"aria-valuenow":p,"aria-valuemax":o.max,"aria-orientation":o.orientation,"data-orientation":o.orientation,"data-disabled":o.disabled?``:void 0,tabIndex:o.disabled?void 0:0,...a,ref:u,style:p===void 0?{display:`none`}:e.style,onFocus:h(e.onFocus,()=>{o.valueIndexToChangeRef.current=r})})}),d&&(0,P.jsx)(Ze,{name:i??(o.name?o.name+(o.values.length>1?`[]`:``):void 0),form:o.form,value:p},r)]})});Je.displayName=qe;var Xe=`RadioBubbleInput`,Ze=N.forwardRef(({__scopeSlider:e,value:t,...n},r)=>{let i=N.useRef(null),a=C(i,r),o=k(t);return N.useEffect(()=>{let e=i.current;if(!e)return;let n=window.HTMLInputElement.prototype,r=Object.getOwnPropertyDescriptor(n,`value`).set;if(o!==t&&r){let n=new Event(`input`,{bubbles:!0});r.call(e,t),e.dispatchEvent(n)}},[o,t]),(0,P.jsx)(x.input,{style:{display:`none`},...n,ref:a,defaultValue:t})});Ze.displayName=Xe;function Qe(e=[],t,n){let r=[...e];return r[n]=t,r.sort((e,t)=>e-t)}function $e(e,t,n){return le(100/(n-t)*(e-t),[0,100])}function et(e,t){if(t>2)return`Value ${e+1} of ${t}`;if(t===2)return[`Minimum`,`Maximum`][e]}function tt(e,t){if(e.length===1)return 0;let n=e.map(e=>Math.abs(e-t)),r=Math.min(...n);return n.indexOf(r)}function nt(e,t,n){let r=e/2;return(r-R([0,50],[0,r])(t)*n)*n}function rt(e){return e.slice(0,-1).map((t,n)=>e[n+1]-t)}function it(e,t){if(t>0){let n=rt(e);return Math.min(...n)>=t}return!0}function R(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function z(e){return(String(e).split(`.`)[1]||``).length}function B(e,t){let n=10**t;return Math.round(e*n)/n}var at=ze,ot=We,st=Ke,ct=Je,lt=N.forwardRef((e,t)=>{let n=(0,M.c)(22),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,valueTooltip:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let[o,s]=N.useState(!1),[c,l]=N.useState(!1),u,d;n[4]===c?(u=n[5],d=n[6]):(u=()=>{if(!c)return;let e=function(){l(!1)};return document.addEventListener(`pointerup`,e),()=>{document.removeEventListener(`pointerup`,e)}},d=[c],n[4]=c,n[5]=u,n[6]=d),N.useEffect(u,d);let f;n[7]===a?f=n[8]:(f=(0,P.jsx)(ct,{className:`block h-5 w-5 rounded-full border-2 border-primary bg-background ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50`,onPointerDown:()=>{a!=null&&(l(!0),s(!0))}}),n[7]=a,n[8]=f);let p=f,m;n[9]===r?m=n[10]:(m=w(`relative flex w-full touch-none select-none items-center`,r),n[9]=r,n[10]=m);let h;n[11]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,P.jsx)(ot,{className:`relative h-2 w-full grow overflow-hidden rounded-full bg-secondary`,children:(0,P.jsx)(st,{className:`absolute h-full bg-primary`})}),n[11]=h):h=n[11];let g;n[12]!==c||n[13]!==o||n[14]!==p||n[15]!==a?(g=a==null?p:(0,P.jsxs)(oe,{open:o||c,onOpenChange:s,children:[(0,P.jsx)(ie,{asChild:!0,children:p}),(0,P.jsx)(ae,{side:`top`,children:a})]}),n[12]=c,n[13]=o,n[14]=p,n[15]=a,n[16]=g):g=n[16];let _;return n[17]!==i||n[18]!==t||n[19]!==m||n[20]!==g?(_=(0,P.jsxs)(at,{ref:t,className:m,...i,children:[h,g]}),n[17]=i,n[18]=t,n[19]=m,n[20]=g,n[21]=_):_=n[21],_});lt.displayName=at.displayName;var V=i(`app.use-maximum-turn-count.hook`),ut=100;function dt(){let[e,t]=(0,N.useState)(ut),[n,r]=(0,N.useState)(ut.toString()),[i,a]=(0,N.useState)(!0),[o,s]=(0,N.useState)(!1);(0,N.useEffect)(()=>{let e=!1;async function n(){try{let n=await E();e||(t(n.maximumTurnCount),r(n.maximumTurnCount.toString()))}catch(e){V.error(`Failed to load maximum turn count:`,e)}finally{e||a(!1)}}return n(),()=>{e=!0}},[]);function c(e){r(e)}async function l(e){s(!0);try{let n=await O({maximumTurnCount:e});t(n.maximumTurnCount),r(n.maximumTurnCount.toString())}catch(e){throw V.error(`Failed to update maximum turn count:`,e),e}finally{s(!1)}}function u(){r(e.toString())}return{defaultMaximumTurnCount:ut,draftMaximumTurnCount:n,isLoading:i,isSaving:o,maximumTurnCount:e,resetDraftMaximumTurnCount:u,setDraftMaximumTurnCount:c,updateMaximumTurnCount:l}}var H=i(`app.use-screen-recording-permission.hook`),U={isMacOS:!1,granted:!1,available:!1,message:``};function ft(){return{...U,isMacOS:_e()}}function pt(){let[e,t]=(0,N.useState)(ft),[n,r]=(0,N.useState)(!0),[i,a]=(0,N.useState)(null),[o,s]=(0,N.useState)(!1),[c,l]=(0,N.useState)(null),u=(0,N.useCallback)(async()=>{r(!0),a(null);try{t(await ne(`api/system-permissions/screen-recording`))}catch(e){a(e instanceof Error?e.message:`Failed to check screen recording permission`),t(e=>({...U,isMacOS:e?.isMacOS??_e(),message:`Unable to check permission status.`}))}finally{r(!1)}},[]);return(0,N.useEffect)(()=>{u()},[u]),{status:e,isLoading:n,error:i,isOpeningSettings:o,openSettingsError:c,refresh:u,openSystemSettings:(0,N.useCallback)(async()=>{s(!0),l(null);try{let e=await D(`api/system-permissions/screen-recording/open-settings`,{});if(!e.success){let t=e.message||`Failed to open System Settings`;H.error(`[useScreenRecordingPermission] ${t}`,e.error),l(t)}}catch(e){let t=e instanceof Error?e.message:`Failed to open System Settings`;H.error(`[useScreenRecordingPermission] Error opening System Settings:`,e),l(t)}finally{s(!1)}},[])}}var mt=i(`app.use-server-bind-mode.hook`),W=`local`,ht=`tarsk-server-bind-mode-changed`;function G(e){ee(e)}function gt(){if(typeof window>`u`)return!1;try{return sessionStorage.getItem(ht)===`true`}catch{return!1}}function _t(e){if(!(typeof window>`u`))try{e?sessionStorage.setItem(ht,`true`):sessionStorage.removeItem(ht)}catch{}}function vt(){let[e,t]=(0,N.useState)(()=>te()?.serverBindMode??W),[n,r]=(0,N.useState)(null),[i,a]=(0,N.useState)(()=>te()?.networkAddresses??[]),[o,s]=(0,N.useState)(()=>te()===null),[c,l]=(0,N.useState)(!1),[u,d]=(0,N.useState)(gt);(0,N.useEffect)(()=>{let e=!1;async function n(){try{let n=await E();e||(t(n.serverBindMode),r(n.serverBindMode),a(n.networkAddresses),G({networkAddresses:n.networkAddresses,serverBindMode:n.serverBindMode}))}catch(e){mt.error(`Failed to load server bind mode:`,e)}finally{e||s(!1)}}return n(),()=>{e=!0}},[]);async function f(e){l(!0);try{let n=await O({serverBindMode:e});t(n.serverBindMode),a(n.networkAddresses),G({networkAddresses:n.networkAddresses,serverBindMode:n.serverBindMode}),d(!0),_t(!0)}catch(e){throw mt.error(`Failed to update server bind mode:`,e),e}finally{l(!1)}}let p=n!==null&&e!==n;return{defaultServerBindMode:W,hasServerBindModeChanged:p,isLoading:o,isSaving:c,needsRestart:p||u,networkAddresses:i,serverBindMode:e,updateServerBindMode:f}}var K=i(`app.use-logging.hook`);function yt(){let[e,t]=(0,N.useState)(!1),[n,r]=(0,N.useState)(null),[i,a]=(0,N.useState)(!1),[o,s]=(0,N.useState)(null),[c,l]=(0,N.useState)(!0),[u,d]=(0,N.useState)(!1);(0,N.useEffect)(()=>{let e=!1;async function n(){try{let n=await E();e||(t(n.loggingEnabled),r(n.fileLoggingPath),a(n.betterStackEnvConfigured),s(n.betterStackIngestingHost))}catch(e){K.error(`Failed to load logging setting:`,e)}finally{e||l(!1)}}return n(),()=>{e=!0}},[]);async function f(e){d(!0);try{let n=await O({loggingEnabled:e});t(n.loggingEnabled),r(n.fileLoggingPath),a(n.betterStackEnvConfigured),s(n.betterStackIngestingHost)}catch(e){throw K.error(`Failed to update logging setting:`,e),e}finally{d(!1)}}return{ingestingHost:o,isEnabled:e,isEnvConfigured:i,isLoading:c,isSaving:u,logPath:n,updateIsEnabled:f}}var bt=Object.defineProperty,q=Object.getOwnPropertySymbols,xt=Object.prototype.hasOwnProperty,St=Object.prototype.propertyIsEnumerable,Ct=(e,t,n)=>t in e?bt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,J=(e,t)=>{for(var n in t||={})xt.call(t,n)&&Ct(e,n,t[n]);if(q)for(var n of q(t))St.call(t,n)&&Ct(e,n,t[n]);return e},Y=(e,t)=>{var n={};for(var r in e)xt.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&q)for(var r of q(e))t.indexOf(r)<0&&St.call(e,r)&&(n[r]=e[r]);return n},X;(e=>{let t=class t{constructor(e,n,r,a){if(this.version=e,this.errorCorrectionLevel=n,this.modules=[],this.isFunction=[],e<t.MIN_VERSION||e>t.MAX_VERSION)throw RangeError(`Version value out of range`);if(a<-1||a>7)throw RangeError(`Mask value out of range`);this.size=e*4+17;let o=[];for(let e=0;e<this.size;e++)o.push(!1);for(let e=0;e<this.size;e++)this.modules.push(o.slice()),this.isFunction.push(o.slice());this.drawFunctionPatterns();let s=this.addEccAndInterleave(r);if(this.drawCodewords(s),a==-1){let e=1e9;for(let t=0;t<8;t++){this.applyMask(t),this.drawFormatBits(t);let n=this.getPenaltyScore();n<e&&(a=t,e=n),this.applyMask(t)}}i(0<=a&&a<=7),this.mask=a,this.applyMask(a),this.drawFormatBits(a),this.isFunction=[]}static encodeText(n,r){let i=e.QrSegment.makeSegments(n);return t.encodeSegments(i,r)}static encodeBinary(n,r){let i=e.QrSegment.makeBytes(n);return t.encodeSegments([i],r)}static encodeSegments(e,r,a=1,s=40,c=-1,l=!0){if(!(t.MIN_VERSION<=a&&a<=s&&s<=t.MAX_VERSION)||c<-1||c>7)throw RangeError(`Invalid value`);let u,d;for(u=a;;u++){let n=t.getNumDataCodewords(u,r)*8,i=o.getTotalBits(e,u);if(i<=n){d=i;break}if(u>=s)throw RangeError(`Data too long`)}for(let e of[t.Ecc.MEDIUM,t.Ecc.QUARTILE,t.Ecc.HIGH])l&&d<=t.getNumDataCodewords(u,e)*8&&(r=e);let f=[];for(let t of e){n(t.mode.modeBits,4,f),n(t.numChars,t.mode.numCharCountBits(u),f);for(let e of t.getData())f.push(e)}i(f.length==d);let p=t.getNumDataCodewords(u,r)*8;i(f.length<=p),n(0,Math.min(4,p-f.length),f),n(0,(8-f.length%8)%8,f),i(f.length%8==0);for(let e=236;f.length<p;e^=253)n(e,8,f);let m=[];for(;m.length*8<f.length;)m.push(0);return f.forEach((e,t)=>m[t>>>3]|=e<<7-(t&7)),new t(u,r,m,c)}getModule(e,t){return 0<=e&&e<this.size&&0<=t&&t<this.size&&this.modules[t][e]}getModules(){return this.modules}drawFunctionPatterns(){for(let e=0;e<this.size;e++)this.setFunctionModule(6,e,e%2==0),this.setFunctionModule(e,6,e%2==0);this.drawFinderPattern(3,3),this.drawFinderPattern(this.size-4,3),this.drawFinderPattern(3,this.size-4);let e=this.getAlignmentPatternPositions(),t=e.length;for(let n=0;n<t;n++)for(let r=0;r<t;r++)n==0&&r==0||n==0&&r==t-1||n==t-1&&r==0||this.drawAlignmentPattern(e[n],e[r]);this.drawFormatBits(0),this.drawVersion()}drawFormatBits(e){let t=this.errorCorrectionLevel.formatBits<<3|e,n=t;for(let e=0;e<10;e++)n=n<<1^(n>>>9)*1335;let a=(t<<10|n)^21522;i(a>>>15==0);for(let e=0;e<=5;e++)this.setFunctionModule(8,e,r(a,e));this.setFunctionModule(8,7,r(a,6)),this.setFunctionModule(8,8,r(a,7)),this.setFunctionModule(7,8,r(a,8));for(let e=9;e<15;e++)this.setFunctionModule(14-e,8,r(a,e));for(let e=0;e<8;e++)this.setFunctionModule(this.size-1-e,8,r(a,e));for(let e=8;e<15;e++)this.setFunctionModule(8,this.size-15+e,r(a,e));this.setFunctionModule(8,this.size-8,!0)}drawVersion(){if(this.version<7)return;let e=this.version;for(let t=0;t<12;t++)e=e<<1^(e>>>11)*7973;let t=this.version<<12|e;i(t>>>18==0);for(let e=0;e<18;e++){let n=r(t,e),i=this.size-11+e%3,a=Math.floor(e/3);this.setFunctionModule(i,a,n),this.setFunctionModule(a,i,n)}}drawFinderPattern(e,t){for(let n=-4;n<=4;n++)for(let r=-4;r<=4;r++){let i=Math.max(Math.abs(r),Math.abs(n)),a=e+r,o=t+n;0<=a&&a<this.size&&0<=o&&o<this.size&&this.setFunctionModule(a,o,i!=2&&i!=4)}}drawAlignmentPattern(e,t){for(let n=-2;n<=2;n++)for(let r=-2;r<=2;r++)this.setFunctionModule(e+r,t+n,Math.max(Math.abs(r),Math.abs(n))!=1)}setFunctionModule(e,t,n){this.modules[t][e]=n,this.isFunction[t][e]=!0}addEccAndInterleave(e){let n=this.version,r=this.errorCorrectionLevel;if(e.length!=t.getNumDataCodewords(n,r))throw RangeError(`Invalid argument`);let a=t.NUM_ERROR_CORRECTION_BLOCKS[r.ordinal][n],o=t.ECC_CODEWORDS_PER_BLOCK[r.ordinal][n],s=Math.floor(t.getNumRawDataModules(n)/8),c=a-s%a,l=Math.floor(s/a),u=[],d=t.reedSolomonComputeDivisor(o);for(let n=0,r=0;n<a;n++){let i=e.slice(r,r+l-o+(n<c?0:1));r+=i.length;let a=t.reedSolomonComputeRemainder(i,d);n<c&&i.push(0),u.push(i.concat(a))}let f=[];for(let e=0;e<u[0].length;e++)u.forEach((t,n)=>{(e!=l-o||n>=c)&&f.push(t[e])});return i(f.length==s),f}drawCodewords(e){if(e.length!=Math.floor(t.getNumRawDataModules(this.version)/8))throw RangeError(`Invalid argument`);let n=0;for(let t=this.size-1;t>=1;t-=2){t==6&&(t=5);for(let i=0;i<this.size;i++)for(let a=0;a<2;a++){let o=t-a,s=t+1&2?i:this.size-1-i;!this.isFunction[s][o]&&n<e.length*8&&(this.modules[s][o]=r(e[n>>>3],7-(n&7)),n++)}}i(n==e.length*8)}applyMask(e){if(e<0||e>7)throw RangeError(`Mask value out of range`);for(let t=0;t<this.size;t++)for(let n=0;n<this.size;n++){let r;switch(e){case 0:r=(n+t)%2==0;break;case 1:r=t%2==0;break;case 2:r=n%3==0;break;case 3:r=(n+t)%3==0;break;case 4:r=(Math.floor(n/3)+Math.floor(t/2))%2==0;break;case 5:r=n*t%2+n*t%3==0;break;case 6:r=(n*t%2+n*t%3)%2==0;break;case 7:r=((n+t)%2+n*t%3)%2==0;break;default:throw Error(`Unreachable`)}!this.isFunction[t][n]&&r&&(this.modules[t][n]=!this.modules[t][n])}}getPenaltyScore(){let e=0;for(let n=0;n<this.size;n++){let r=!1,i=0,a=[0,0,0,0,0,0,0];for(let o=0;o<this.size;o++)this.modules[n][o]==r?(i++,i==5?e+=t.PENALTY_N1:i>5&&e++):(this.finderPenaltyAddHistory(i,a),r||(e+=this.finderPenaltyCountPatterns(a)*t.PENALTY_N3),r=this.modules[n][o],i=1);e+=this.finderPenaltyTerminateAndCount(r,i,a)*t.PENALTY_N3}for(let n=0;n<this.size;n++){let r=!1,i=0,a=[0,0,0,0,0,0,0];for(let o=0;o<this.size;o++)this.modules[o][n]==r?(i++,i==5?e+=t.PENALTY_N1:i>5&&e++):(this.finderPenaltyAddHistory(i,a),r||(e+=this.finderPenaltyCountPatterns(a)*t.PENALTY_N3),r=this.modules[o][n],i=1);e+=this.finderPenaltyTerminateAndCount(r,i,a)*t.PENALTY_N3}for(let n=0;n<this.size-1;n++)for(let r=0;r<this.size-1;r++){let i=this.modules[n][r];i==this.modules[n][r+1]&&i==this.modules[n+1][r]&&i==this.modules[n+1][r+1]&&(e+=t.PENALTY_N2)}let n=0;for(let e of this.modules)n=e.reduce((e,t)=>e+ +!!t,n);let r=this.size*this.size,a=Math.ceil(Math.abs(n*20-r*10)/r)-1;return i(0<=a&&a<=9),e+=a*t.PENALTY_N4,i(0<=e&&e<=2568888),e}getAlignmentPatternPositions(){if(this.version==1)return[];{let e=Math.floor(this.version/7)+2,t=this.version==32?26:Math.ceil((this.version*4+4)/(e*2-2))*2,n=[6];for(let r=this.size-7;n.length<e;r-=t)n.splice(1,0,r);return n}}static getNumRawDataModules(e){if(e<t.MIN_VERSION||e>t.MAX_VERSION)throw RangeError(`Version number out of range`);let n=(16*e+128)*e+64;if(e>=2){let t=Math.floor(e/7)+2;n-=(25*t-10)*t-55,e>=7&&(n-=36)}return i(208<=n&&n<=29648),n}static getNumDataCodewords(e,n){return Math.floor(t.getNumRawDataModules(e)/8)-t.ECC_CODEWORDS_PER_BLOCK[n.ordinal][e]*t.NUM_ERROR_CORRECTION_BLOCKS[n.ordinal][e]}static reedSolomonComputeDivisor(e){if(e<1||e>255)throw RangeError(`Degree out of range`);let n=[];for(let t=0;t<e-1;t++)n.push(0);n.push(1);let r=1;for(let i=0;i<e;i++){for(let e=0;e<n.length;e++)n[e]=t.reedSolomonMultiply(n[e],r),e+1<n.length&&(n[e]^=n[e+1]);r=t.reedSolomonMultiply(r,2)}return n}static reedSolomonComputeRemainder(e,n){let r=n.map(e=>0);for(let i of e){let e=i^r.shift();r.push(0),n.forEach((n,i)=>r[i]^=t.reedSolomonMultiply(n,e))}return r}static reedSolomonMultiply(e,t){if(e>>>8||t>>>8)throw RangeError(`Byte out of range`);let n=0;for(let r=7;r>=0;r--)n=n<<1^(n>>>7)*285,n^=(t>>>r&1)*e;return i(n>>>8==0),n}finderPenaltyCountPatterns(e){let t=e[1];i(t<=this.size*3);let n=t>0&&e[2]==t&&e[3]==t*3&&e[4]==t&&e[5]==t;return(n&&e[0]>=t*4&&e[6]>=t?1:0)+(n&&e[6]>=t*4&&e[0]>=t?1:0)}finderPenaltyTerminateAndCount(e,t,n){return e&&(this.finderPenaltyAddHistory(t,n),t=0),t+=this.size,this.finderPenaltyAddHistory(t,n),this.finderPenaltyCountPatterns(n)}finderPenaltyAddHistory(e,t){t[0]==0&&(e+=this.size),t.pop(),t.unshift(e)}};t.MIN_VERSION=1,t.MAX_VERSION=40,t.PENALTY_N1=3,t.PENALTY_N2=3,t.PENALTY_N3=40,t.PENALTY_N4=10,t.ECC_CODEWORDS_PER_BLOCK=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],t.NUM_ERROR_CORRECTION_BLOCKS=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],e.QrCode=t;function n(e,t,n){if(t<0||t>31||e>>>t)throw RangeError(`Value out of range`);for(let r=t-1;r>=0;r--)n.push(e>>>r&1)}function r(e,t){return(e>>>t&1)!=0}function i(e){if(!e)throw Error(`Assertion error`)}let a=class e{constructor(e,t,n){if(this.mode=e,this.numChars=t,this.bitData=n,t<0)throw RangeError(`Invalid argument`);this.bitData=n.slice()}static makeBytes(t){let r=[];for(let e of t)n(e,8,r);return new e(e.Mode.BYTE,t.length,r)}static makeNumeric(t){if(!e.isNumeric(t))throw RangeError(`String contains non-numeric characters`);let r=[];for(let e=0;e<t.length;){let i=Math.min(t.length-e,3);n(parseInt(t.substring(e,e+i),10),i*3+1,r),e+=i}return new e(e.Mode.NUMERIC,t.length,r)}static makeAlphanumeric(t){if(!e.isAlphanumeric(t))throw RangeError(`String contains unencodable characters in alphanumeric mode`);let r=[],i;for(i=0;i+2<=t.length;i+=2){let a=e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(i))*45;a+=e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(i+1)),n(a,11,r)}return i<t.length&&n(e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(i)),6,r),new e(e.Mode.ALPHANUMERIC,t.length,r)}static makeSegments(t){return t==``?[]:e.isNumeric(t)?[e.makeNumeric(t)]:e.isAlphanumeric(t)?[e.makeAlphanumeric(t)]:[e.makeBytes(e.toUtf8ByteArray(t))]}static makeEci(t){let r=[];if(t<0)throw RangeError(`ECI assignment value out of range`);if(t<128)n(t,8,r);else if(t<16384)n(2,2,r),n(t,14,r);else if(t<1e6)n(6,3,r),n(t,21,r);else throw RangeError(`ECI assignment value out of range`);return new e(e.Mode.ECI,0,r)}static isNumeric(t){return e.NUMERIC_REGEX.test(t)}static isAlphanumeric(t){return e.ALPHANUMERIC_REGEX.test(t)}getData(){return this.bitData.slice()}static getTotalBits(e,t){let n=0;for(let r of e){let e=r.mode.numCharCountBits(t);if(r.numChars>=1<<e)return 1/0;n+=4+e+r.bitData.length}return n}static toUtf8ByteArray(e){e=encodeURI(e);let t=[];for(let n=0;n<e.length;n++)e.charAt(n)==`%`?(t.push(parseInt(e.substring(n+1,n+3),16)),n+=2):t.push(e.charCodeAt(n));return t}};a.NUMERIC_REGEX=/^[0-9]*$/,a.ALPHANUMERIC_REGEX=/^[A-Z0-9 $%*+.\/:-]*$/,a.ALPHANUMERIC_CHARSET=`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:`;let o=a;e.QrSegment=a})(X||={}),(e=>{(e=>{let t=class{constructor(e,t){this.ordinal=e,this.formatBits=t}};t.LOW=new t(0,1),t.MEDIUM=new t(1,0),t.QUARTILE=new t(2,3),t.HIGH=new t(3,2),e.Ecc=t})(e.QrCode||={})})(X||={}),(e=>{(e=>{let t=class{constructor(e,t){this.modeBits=e,this.numBitsCharCount=t}numCharCountBits(e){return this.numBitsCharCount[Math.floor((e+7)/17)]}};t.NUMERIC=new t(1,[10,12,14]),t.ALPHANUMERIC=new t(2,[9,11,13]),t.BYTE=new t(4,[8,16,16]),t.KANJI=new t(8,[8,10,12]),t.ECI=new t(7,[0,0,0]),e.Mode=t})(e.QrSegment||={})})(X||={});var Z=X,wt={L:Z.QrCode.Ecc.LOW,M:Z.QrCode.Ecc.MEDIUM,Q:Z.QrCode.Ecc.QUARTILE,H:Z.QrCode.Ecc.HIGH},Tt=128,Et=`L`,Dt=`#FFFFFF`,Q=`#000000`,Ot=!1,$=1,kt=4,At=0,jt=.1;function Mt(e,t=0){let n=[];return e.forEach(function(e,r){let i=null;e.forEach(function(a,o){if(!a&&i!==null){n.push(`M${i+t} ${r+t}h${o-i}v1H${i+t}z`),i=null;return}if(o===e.length-1){if(!a)return;i===null?n.push(`M${o+t},${r+t} h1v1H${o+t}z`):n.push(`M${i+t},${r+t} h${o+1-i}v1H${i+t}z`);return}a&&i===null&&(i=o)})}),n.join(``)}function Nt(e,t){return e.slice().map((e,n)=>n<t.y||n>=t.y+t.h?e:e.map((e,n)=>n<t.x||n>=t.x+t.w?e:!1))}function Pt(e,t,n,r){if(r==null)return null;let i=e.length+n*2,a=Math.floor(t*jt),o=i/t,s=(r.width||a)*o,c=(r.height||a)*o,l=r.x==null?e.length/2-s/2:r.x*o,u=r.y==null?e.length/2-c/2:r.y*o,d=r.opacity==null?1:r.opacity,f=null;if(r.excavate){let e=Math.floor(l),t=Math.floor(u);f={x:e,y:t,w:Math.ceil(s+l-e),h:Math.ceil(c+u-t)}}let p=r.crossOrigin;return{x:l,y:u,h:c,w:s,excavation:f,opacity:d,crossOrigin:p}}function Ft(e,t){return t==null?e?kt:At:Math.max(Math.floor(t),0)}function It({value:e,level:t,minVersion:n,includeMargin:r,marginSize:i,imageSettings:a,size:o,boostLevel:s}){let c=N.useMemo(()=>{let r=(Array.isArray(e)?e:[e]).reduce((e,t)=>(e.push(...Z.QrSegment.makeSegments(t)),e),[]);return Z.QrCode.encodeSegments(r,wt[t],n,void 0,void 0,s)},[e,t,n,s]),{cells:l,margin:u,numCells:d,calculatedImageSettings:f}=N.useMemo(()=>{let e=c.getModules(),t=Ft(r,i);return{cells:e,margin:t,numCells:e.length+t*2,calculatedImageSettings:Pt(e,o,t,a)}},[c,o,a,r,i]);return{qrcode:c,margin:u,cells:l,numCells:d,calculatedImageSettings:f}}var Lt=function(){try{new Path2D().addPath(new Path2D)}catch{return!1}return!0}(),Rt=N.forwardRef(function(e,t){let n=e,{value:r,size:i=Tt,level:a=Et,bgColor:o=Dt,fgColor:s=Q,includeMargin:c=Ot,minVersion:l=$,boostLevel:u,marginSize:d,imageSettings:f}=n,p=Y(n,[`value`,`size`,`level`,`bgColor`,`fgColor`,`includeMargin`,`minVersion`,`boostLevel`,`marginSize`,`imageSettings`]),{style:m}=p,h=Y(p,[`style`]),g=f?.src,_=N.useRef(null),v=N.useRef(null),y=N.useCallback(e=>{_.current=e,typeof t==`function`?t(e):t&&(t.current=e)},[t]),[b,x]=N.useState(!1),{margin:S,cells:C,numCells:w,calculatedImageSettings:T}=It({value:r,level:a,minVersion:l,boostLevel:u,includeMargin:c,marginSize:d,imageSettings:f,size:i});N.useEffect(()=>{if(_.current!=null){let e=_.current,t=e.getContext(`2d`);if(!t)return;let n=C,r=v.current,a=T!=null&&r!==null&&r.complete&&r.naturalHeight!==0&&r.naturalWidth!==0;a&&T.excavation!=null&&(n=Nt(C,T.excavation));let c=window.devicePixelRatio||1;e.height=e.width=i*c;let l=i/w*c;t.scale(l,l),t.fillStyle=o,t.fillRect(0,0,w,w),t.fillStyle=s,Lt?t.fill(new Path2D(Mt(n,S))):C.forEach(function(e,n){e.forEach(function(e,r){e&&t.fillRect(r+S,n+S,1,1)})}),T&&(t.globalAlpha=T.opacity),a&&t.drawImage(r,T.x+S,T.y+S,T.w,T.h)}}),N.useEffect(()=>{x(!1)},[g]);let E=J({height:i,width:i},m),D=null;return g!=null&&(D=N.createElement(`img`,{src:g,key:g,style:{display:`none`},onLoad:()=>{x(!0)},ref:v,crossOrigin:T?.crossOrigin})),N.createElement(N.Fragment,null,N.createElement(`canvas`,J({style:E,height:i,width:i,ref:y,role:`img`},h)),D)});Rt.displayName=`QRCodeCanvas`;var zt=N.forwardRef(function(e,t){let n=e,{value:r,size:i=Tt,level:a=Et,bgColor:o=Dt,fgColor:s=Q,includeMargin:c=Ot,minVersion:l=$,boostLevel:u,title:d,marginSize:f,imageSettings:p}=n,m=Y(n,[`value`,`size`,`level`,`bgColor`,`fgColor`,`includeMargin`,`minVersion`,`boostLevel`,`title`,`marginSize`,`imageSettings`]),{margin:h,cells:g,numCells:_,calculatedImageSettings:v}=It({value:r,level:a,minVersion:l,boostLevel:u,includeMargin:c,marginSize:f,imageSettings:p,size:i}),y=g,b=null;p!=null&&v!=null&&(v.excavation!=null&&(y=Nt(g,v.excavation)),b=N.createElement(`image`,{href:p.src,height:v.h,width:v.w,x:v.x+h,y:v.y+h,preserveAspectRatio:`none`,opacity:v.opacity,crossOrigin:v.crossOrigin}));let x=Mt(y,h);return N.createElement(`svg`,J({height:i,width:i,viewBox:`0 0 ${_} ${_}`,ref:t,role:`img`},m),!!d&&N.createElement(`title`,null,d),N.createElement(`path`,{fill:o,d:`M0,0 h${_}v${_}H0z`,shapeRendering:`crispEdges`}),N.createElement(`path`,{fill:s,d:x,shapeRendering:`crispEdges`}),b)});zt.displayName=`QRCodeSVG`;var Bt=[{value:`light`,label:`Light`,icon:u},{value:`dark`,label:`Dark`,icon:v},{value:`system`,label:`System`,icon:f}],Vt=[{value:`image`,label:`Image`,icon:d},{value:`background`,label:`Background`,icon:l}],Ht=`flex h-7 w-7 min-h-0 min-w-0 items-center justify-center rounded-full border-0 bg-background p-0 data-[state=on]:bg-foreground data-[state=on]:text-background data-[state=on]:shadow-sm hover:bg-background hover:text-muted-foreground data-[state=on]:hover:bg-foreground data-[state=on]:hover:text-background`,Ut=`inline-flex h-auto w-fit justify-start rounded-full border-0 bg-background p-1 text-muted-foreground`,Wt=[`462`,`8100`].includes(typeof document<`u`?document.location.port:``)?`462`:`641`,Gt=600;function Kt(e){let t=(0,M.c)(159),{onboardingResetSignal:n}=e,r=qt(n===void 0?0:n),{theme:i,setTheme:o}=he(),{scale:s,updateScale:c,min:l,max:u}=Se(),{opacity:d,updateOpacity:f,min:p,max:m}=xe(),{mode:h,color:g,updateMode:_,updateColor:v}=ve(),{color:y,updateColor:b,resetColor:x}=Ce(),{defaultMaximumTurnCount:S,draftMaximumTurnCount:C,isLoading:T,isSaving:E,resetDraftMaximumTurnCount:D,setDraftMaximumTurnCount:ee,updateMaximumTurnCount:te}=dt(),{status:ne,isLoading:O,isOpeningSettings:re,openSettingsError:ie,refresh:ae,openSystemSettings:oe}=pt(),{isLoading:se,isSaving:ce,needsRestart:le,networkAddresses:k,serverBindMode:pe,updateServerBindMode:_e}=vt(),{isEnabled:Ee,isLoading:j,isSaving:De,updateIsEnabled:ke}=ye(),{isEnabled:Ae,isLoading:je,isSaving:F,updateIsEnabled:Me}=fe(),{isEnabled:Ne,isSupported:Pe,isHealthy:Fe,statusMessage:Ie,isLoading:Le,isSaving:Re,updateIsEnabled:ze}=we(),{isEnabled:Be,logPath:I,isEnvConfigured:Ve,ingestingHost:He,isLoading:L,isSaving:Ue,updateIsEnabled:We}=yt(),Ge;t[0]!==L||t[1]!==T||t[2]!==O||t[3]!==Le||t[4]!==se||t[5]!==je||t[6]!==j?(Ge=[T,O,se,j,je,Le,L],t[0]=L,t[1]=T,t[2]=O,t[3]=Le,t[4]=se,t[5]=je,t[6]=j,t[7]=Ge):Ge=t[7];let Ke=Oe(`general`,Ge),qe;t[8]===ee?qe=t[9]:(qe=function(e){ee(e.target.value)},t[8]=ee,t[9]=qe);let Je=qe,Ye;t[10]!==S||t[11]!==C||t[12]!==D||t[13]!==te?(Ye=async function(){let e=Number.parseInt(C,10),t=Number.isFinite(e)&&e>0?e:S;try{await te(t)}catch{D()}},t[10]=S,t[11]=C,t[12]=D,t[13]=te,t[14]=Ye):Ye=t[14];let Xe=Ye,Ze;t[15]===c?Ze=t[16]:(Ze=function(e){e.length>0&&c(e[0])},t[15]=c,t[16]=Ze);let Qe=Ze,$e;t[17]===f?$e=t[18]:($e=function(e){e.length>0&&f(e[0])},t[17]=f,t[18]=$e);let et=$e,tt;t[19]===I?tt=t[20]:(tt=async function(){if(I)try{await navigator.clipboard.writeText(I),ue({title:`Copied`,description:`Log file path copied to clipboard.`})}catch(e){let t=e;ue({title:`Copy failed`,description:t instanceof Error?t.message:`Could not copy the log file path.`,variant:`destructive`})}},t[19]=I,t[20]=tt);let nt=tt,[rt,it]=(0,N.useState)(!1),R,z,B;t[21]!==k||t[22]!==pe?(R=async function(){if(z)try{await navigator.clipboard.writeText(z),it(!0),ue({title:`Copied`,description:`Network URL copied to clipboard.`}),window.setTimeout(()=>{it(!1)},1500)}catch(e){let t=e;ue({title:`Copy failed`,description:t instanceof Error?t.message:`Could not copy the network URL.`,variant:`destructive`})}},B=pe===`network`&&k.length>0,z=B?`http://${k[0]}:${Wt}`:null,t[21]=k,t[22]=pe,t[23]=R,t[24]=z,t[25]=B):(R=t[23],z=t[24],B=t[25]);let at=r&&`animate-headline-reset`,ot;t[26]===at?ot=t[27]:(ot=w(at),t[26]=at,t[27]=ot);let st;t[28]===ot?st=t[29]:(st=(0,P.jsx)(Te,{title:`Appearance`,titleClassName:ot,className:`[&>div:first-child]:py-2`,sticky:!1}),t[28]=ot,t[29]=st);let ct;t[30]===l?ct=t[31]:(ct=(0,P.jsxs)(`span`,{className:`${a.bodyMuted} w-8 shrink-0 text-right`,children:[l,`%`]}),t[30]=l,t[31]=ct);let V;t[32]===s?V=t[33]:(V=[s],t[32]=s,t[33]=V);let ut=`${s}%`,H;t[34]!==Qe||t[35]!==u||t[36]!==l||t[37]!==V||t[38]!==ut?(H=(0,P.jsx)(lt,{value:V,min:l,max:u,step:5,onValueChange:Qe,"aria-label":`Font size`,valueTooltip:ut}),t[34]=Qe,t[35]=u,t[36]=l,t[37]=V,t[38]=ut,t[39]=H):H=t[39];let U;t[40]===u?U=t[41]:(U=(0,P.jsxs)(`span`,{className:`${a.bodyMuted} w-9 shrink-0`,children:[u,`%`]}),t[40]=u,t[41]=U);let ft;t[42]!==ct||t[43]!==H||t[44]!==U?(ft=(0,P.jsx)(A,{title:`Font Size`,description:`Adjust the text size across the entire application.`,children:(0,P.jsxs)(`div`,{className:`ml-auto flex w-1/2 items-center gap-3`,children:[ct,H,U]})}),t[42]=ct,t[43]=H,t[44]=U,t[45]=ft):ft=t[45];let mt;t[46]===p?mt=t[47]:(mt=(0,P.jsxs)(`span`,{className:`${a.bodyMuted} w-8 shrink-0 text-right`,children:[p,`%`]}),t[46]=p,t[47]=mt);let W;t[48]===d?W=t[49]:(W=[d],t[48]=d,t[49]=W);let ht=`${d}%`,G;t[50]!==m||t[51]!==p||t[52]!==et||t[53]!==W||t[54]!==ht?(G=(0,P.jsx)(lt,{value:W,min:p,max:m,step:5,onValueChange:et,"aria-label":`Panel opacity`,valueTooltip:ht}),t[50]=m,t[51]=p,t[52]=et,t[53]=W,t[54]=ht,t[55]=G):G=t[55];let gt;t[56]===m?gt=t[57]:(gt=(0,P.jsxs)(`span`,{className:`${a.bodyMuted} w-9 shrink-0`,children:[m,`%`]}),t[56]=m,t[57]=gt);let _t;t[58]!==mt||t[59]!==G||t[60]!==gt?(_t=(0,P.jsx)(A,{title:`Panel Opacity`,description:`Adjust how opaque the frosted panels are over the wallpaper.`,children:(0,P.jsxs)(`div`,{className:`ml-auto flex w-1/2 items-center gap-3`,children:[mt,G,gt]})}),t[58]=mt,t[59]=G,t[60]=gt,t[61]=_t):_t=t[61];let K;t[62]!==o||t[63]!==i?(K=(0,P.jsx)(Jt,{theme:i,onThemeChange:o}),t[62]=o,t[63]=i,t[64]=K):K=t[64];let bt;t[65]!==v||t[66]!==_||t[67]!==g||t[68]!==h?(bt=(0,P.jsx)(Xt,{wallpaperMode:h,wallpaperColor:g,onModeChange:_,onColorChange:v}),t[65]=v,t[66]=_,t[67]=g,t[68]=h,t[69]=bt):bt=t[69];let q;t[70]!==y||t[71]!==x||t[72]!==b?(q=(0,P.jsx)(Qt,{brandColor:y,onColorChange:b,onReset:x}),t[70]=y,t[71]=x,t[72]=b,t[73]=q):q=t[73];let xt;t[74]!==ft||t[75]!==_t||t[76]!==K||t[77]!==bt||t[78]!==q?(xt=(0,P.jsx)(be,{className:`max-w-none pt-0`,children:(0,P.jsxs)(de,{children:[ft,_t,K,bt,q]})}),t[74]=ft,t[75]=_t,t[76]=K,t[77]=bt,t[78]=q,t[79]=xt):xt=t[79];let St;t[80]!==st||t[81]!==xt?(St=(0,P.jsxs)(me,{className:`shrink-0`,children:[st,xt]}),t[80]=st,t[81]=xt,t[82]=St):St=t[82];let Ct;t[83]===Symbol.for(`react.memo_cache_sentinel`)?(Ct=(0,P.jsx)(Te,{title:`Settings`,className:`[&>div:first-child]:py-2`,sticky:!1}),t[83]=Ct):Ct=t[83];let J;t[84]!==S||t[85]!==C||t[86]!==Xe||t[87]!==Je||t[88]!==T||t[89]!==E?(J=(0,P.jsx)($t,{draftValue:C,defaultTurnCount:S,isLoading:T,isSaving:E,onChange:Je,onBlur:Xe}),t[84]=S,t[85]=C,t[86]=Xe,t[87]=Je,t[88]=T,t[89]=E,t[90]=J):J=t[90];let Y;t[91]===ke?Y=t[92]:(Y=e=>{ke(e)},t[91]=ke,t[92]=Y);let X;t[93]!==j||t[94]!==De||t[95]!==Y||t[96]!==Ee?(X=(0,P.jsx)(en,{title:`AI Voice Cleanup`,description:`After stopping voice recording, run the transcription through AI to remove filler words, false starts, and repetitions.`,value:Ee,isLoading:j,isSaving:De,ariaLabel:`AI Voice Cleanup`,onChange:Y}),t[93]=j,t[94]=De,t[95]=Y,t[96]=Ee,t[97]=X):X=t[97];let Z;t[98]===Me?Z=t[99]:(Z=e=>{Me(e)},t[98]=Me,t[99]=Z);let wt;t[100]!==je||t[101]!==F||t[102]!==Ae||t[103]!==Z?(wt=(0,P.jsx)(en,{title:`Spend`,description:`Show an estimated spend counter in the chat header.`,value:Ae,isLoading:je,isSaving:F,ariaLabel:`Spend`,onChange:Z}),t[100]=je,t[101]=F,t[102]=Ae,t[103]=Z,t[104]=wt):wt=t[104];let Tt;t[105]!==re||t[106]!==O||t[107]!==oe||t[108]!==ae||t[109]!==ie||t[110]!==ne?(Tt=(0,P.jsx)(tn,{status:ne,isLoading:O,isOpeningSettings:re,openSettingsError:ie,onRefresh:ae,onOpenSettings:oe}),t[105]=re,t[106]=O,t[107]=oe,t[108]=ae,t[109]=ie,t[110]=ne,t[111]=Tt):Tt=t[111];let Et;t[112]!==Le||t[113]!==Re||t[114]!==Ne||t[115]!==Fe||t[116]!==Ie||t[117]!==Pe||t[118]!==ze?(Et=(0,P.jsx)(nn,{supported:Pe,enabled:Ne,healthy:Fe,message:Ie,isLoading:Le,isSaving:Re,onChange:ze}),t[112]=Le,t[113]=Re,t[114]=Ne,t[115]=Fe,t[116]=Ie,t[117]=Pe,t[118]=ze,t[119]=Et):Et=t[119];let Dt;t[120]===We?Dt=t[121]:(Dt=e=>{We(e)},t[120]=We,t[121]=Dt);let Q;t[122]!==He||t[123]!==nt||t[124]!==Ve||t[125]!==L||t[126]!==Ue||t[127]!==Be||t[128]!==I||t[129]!==Dt?(Q=(0,P.jsx)(an,{enabled:Be,logPath:I,isEnvConfigured:Ve,ingestingHost:He,isLoading:L,isSaving:Ue,onChange:Dt,onCopyPath:nt}),t[122]=He,t[123]=nt,t[124]=Ve,t[125]=L,t[126]=Ue,t[127]=Be,t[128]=I,t[129]=Dt,t[130]=Q):Q=t[130];let Ot;t[131]!==rt||t[132]!==R||t[133]!==se||t[134]!==ce||t[135]!==z||t[136]!==le||t[137]!==k||t[138]!==pe||t[139]!==B||t[140]!==_e?(Ot=(0,P.jsx)(on,{bindMode:pe,isLoading:se,isSaving:ce,networkAddresses:k,needsRestart:le,showMobileQrCode:B,mobileNetworkUrl:z,copiedUrl:rt,onChangeMode:_e,onCopyUrl:R}),t[131]=rt,t[132]=R,t[133]=se,t[134]=ce,t[135]=z,t[136]=le,t[137]=k,t[138]=pe,t[139]=B,t[140]=_e,t[141]=Ot):Ot=t[141];let $;t[142]!==J||t[143]!==X||t[144]!==wt||t[145]!==Tt||t[146]!==Et||t[147]!==Q||t[148]!==Ot?($=(0,P.jsxs)(me,{className:`shrink-0`,children:[Ct,(0,P.jsx)(be,{className:`max-w-none pt-0`,children:(0,P.jsxs)(de,{children:[J,X,wt,Tt,Et,Q,Ot]})})]}),t[142]=J,t[143]=X,t[144]=wt,t[145]=Tt,t[146]=Et,t[147]=Q,t[148]=Ot,t[149]=$):$=t[149];let kt;t[150]===z?kt=t[151]:(kt=(0,P.jsx)(sn,{url:z}),t[150]=z,t[151]=kt);let At;t[152]!==St||t[153]!==$||t[154]!==kt?(At=(0,P.jsxs)(`div`,{className:`divide-y divide-table-border [&>*]:rounded-none`,children:[St,$,kt]}),t[152]=St,t[153]=$,t[154]=kt,t[155]=At):At=t[155];let jt;return t[156]!==Ke||t[157]!==At?(jt=(0,P.jsx)(ge,{loading:Ke,children:At}),t[156]=Ke,t[157]=At,t[158]=jt):jt=t[158],jt}function qt(e){let t=(0,M.c)(3),[n,r]=(0,N.useState)(!1),i,a;return t[0]===e?(i=t[1],a=t[2]):(i=()=>{if(e===0)return;r(!0);let t=setTimeout(()=>{r(!1)},Gt);return()=>{clearTimeout(t)}},a=[e],t[0]=e,t[1]=i,t[2]=a),(0,N.useEffect)(i,a),n}function Jt(e){let t=(0,M.c)(6),{theme:n,onThemeChange:r}=e,i;t[0]===r?i=t[1]:(i=e=>{(e===`light`||e===`dark`||e===`system`)&&r(e)},t[0]=r,t[1]=i);let a;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(a=Bt.map(Yt),t[2]=a):a=t[2];let o;return t[3]!==i||t[4]!==n?(o=(0,P.jsx)(A,{title:`Appearance`,description:`Choose your preferred color scheme.`,controlLayout:`row-end`,action:(0,P.jsx)(De,{type:`single`,value:n,onValueChange:i,"aria-label":`Appearance`,className:Ut,children:a})}),t[3]=i,t[4]=n,t[5]=o):o=t[5],o}function Yt(e){let t=e.icon;return(0,P.jsx)(j,{value:e.value,"aria-label":e.label,className:Ht,children:(0,P.jsx)(t,{className:`h-4 w-4`,"aria-hidden":`true`})},e.value)}function Xt(e){let t=(0,M.c)(22),{wallpaperMode:n,wallpaperColor:r,onModeChange:i,onColorChange:a}=e,o;t[0]===i?o=t[1]:(o=e=>{(e===`image`||e===`background`||e===`color`)&&i(e)},t[0]=i,t[1]=o);let s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=Vt.map(Zt),t[2]=s):s=t[2];let c;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(c=w(Ht,`relative overflow-hidden`),t[3]=c):c=t[3];let l;t[4]===r?l=t[5]:(l=(0,P.jsx)(`span`,{className:`pointer-events-none h-4 w-4 rounded-full border border-black/25 dark:border-white/25`,style:{backgroundColor:r},"aria-hidden":`true`}),t[4]=r,t[5]=l);let u;t[6]===i?u=t[7]:(u=()=>{i(`color`)},t[6]=i,t[7]=u);let d;t[8]!==a||t[9]!==i?(d=e=>{a(e.target.value),i(`color`)},t[8]=a,t[9]=i,t[10]=d):d=t[10];let f;t[11]!==u||t[12]!==d||t[13]!==r?(f=(0,P.jsx)(`input`,{type:`color`,value:r,"aria-label":`Choose wallpaper color`,className:`absolute inset-0 cursor-pointer opacity-0`,onPointerDown:u,onChange:d}),t[11]=u,t[12]=d,t[13]=r,t[14]=f):f=t[14];let p;t[15]!==l||t[16]!==f?(p=(0,P.jsxs)(j,{value:`color`,"aria-label":`Custom color`,className:c,children:[l,f]}),t[15]=l,t[16]=f,t[17]=p):p=t[17];let m;return t[18]!==o||t[19]!==p||t[20]!==n?(m=(0,P.jsx)(A,{title:`Wallpaper`,description:`Choose a scenic image, the theme background, or a custom color.`,controlLayout:`row-end`,action:(0,P.jsxs)(De,{type:`single`,value:n,onValueChange:o,"aria-label":`Wallpaper`,className:Ut,children:[s,p]})}),t[18]=o,t[19]=p,t[20]=n,t[21]=m):m=t[21],m}function Zt(e){let t=e.icon;return(0,P.jsx)(j,{value:e.value,"aria-label":e.label,className:Ht,children:(0,P.jsx)(t,{className:`h-4 w-4`,"aria-hidden":`true`})},e.value)}function Qt(e){let t=(0,M.c)(14),{brandColor:n,onColorChange:r,onReset:i}=e,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=w(Ht,`relative cursor-pointer overflow-hidden`),t[0]=a):a=t[0];let o;t[1]===n?o=t[2]:(o=(0,P.jsx)(`span`,{className:`pointer-events-none h-4 w-4 rounded-full border border-black/25 dark:border-white/25`,style:{backgroundColor:n},"aria-hidden":`true`}),t[1]=n,t[2]=o);let s;t[3]===r?s=t[4]:(s=e=>{r(e.target.value)},t[3]=r,t[4]=s);let c;t[5]!==n||t[6]!==s?(c=(0,P.jsx)(`input`,{type:`color`,value:n,"aria-label":`Primary color`,className:`absolute inset-0 cursor-pointer opacity-0`,onChange:s}),t[5]=n,t[6]=s,t[7]=c):c=t[7];let l;t[8]!==o||t[9]!==c?(l=(0,P.jsx)(`div`,{className:Ut,children:(0,P.jsxs)(`label`,{className:a,children:[o,c]})}),t[8]=o,t[9]=c,t[10]=l):l=t[10];let u;return t[11]!==i||t[12]!==l?(u=(0,P.jsx)(A,{title:`Primary Color`,description:`Choose the primary accent color used across the app. Click the label to reset to default.`,controlLayout:`row-end`,onTitleClick:i,action:l}),t[11]=i,t[12]=l,t[13]=u):u=t[13],u}function $t(e){let t=(0,M.c)(10),{draftValue:n,defaultTurnCount:r,isLoading:i,isSaving:a,onChange:o,onBlur:s}=e,c=`Set how many turns a long-running agent chat can take before Tarsk asks whether to continue. Default: ${r} turns.`,l;t[0]===s?l=t[1]:(l=()=>{s()},t[0]=s,t[1]=l);let u=i||a,d;t[2]!==n||t[3]!==o||t[4]!==l||t[5]!==u?(d=(0,P.jsx)(pe,{type:`number`,min:1,step:1,value:n,onChange:o,onBlur:l,disabled:u,"aria-label":`Maximum turn count`,className:`w-28 text-right font-mono tabular-nums flex-shrink-0`}),t[2]=n,t[3]=o,t[4]=l,t[5]=u,t[6]=d):d=t[6];let f;return t[7]!==c||t[8]!==d?(f=(0,P.jsx)(A,{title:`Maximum Turn Count`,description:c,controlLayout:`row-end`,action:d}),t[7]=c,t[8]=d,t[9]=f):f=t[9],f}function en(e){let t=(0,M.c)(9),{title:n,description:r,value:i,isLoading:a,isSaving:o,ariaLabel:s,onChange:c}=e,l=a||o,u;t[0]!==s||t[1]!==c||t[2]!==l||t[3]!==i?(u=(0,P.jsx)(Ee,{value:i,onChange:c,disabled:l,ariaLabel:s}),t[0]=s,t[1]=c,t[2]=l,t[3]=i,t[4]=u):u=t[4];let d;return t[5]!==r||t[6]!==u||t[7]!==n?(d=(0,P.jsx)(A,{title:n,description:r,controlLayout:`row-end`,action:u}),t[5]=r,t[6]=u,t[7]=n,t[8]=d):d=t[8],d}function tn(e){let t=(0,M.c)(25),{status:n,isLoading:r,isOpeningSettings:i,openSettingsError:l,onRefresh:u,onOpenSettings:d}=e;if(!n?.isMacOS)return null;let f;t[0]!==r||t[1]!==n?.granted?(f=!r&&n?.granted?(0,P.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,P.jsx)(p,{className:`h-4 w-4 text-green-500`}),(0,P.jsx)(`span`,{className:w(a.body,`text-green-600 dark:text-green-400`),children:`Permission granted`})]}):r?null:(0,P.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,P.jsx)(o,{className:`h-4 w-4 text-amber-500`}),(0,P.jsx)(`span`,{className:w(a.body,`text-amber-600 dark:text-amber-400`),children:`Permission not granted`})]}),t[0]=r,t[1]=n?.granted,t[2]=f):f=t[2];let h;t[3]===u?h=t[4]:(h=()=>void u(),t[3]=u,t[4]=h);let _;t[5]===r?_=t[6]:(_=r?(0,P.jsx)(c,{className:`h-3.5 w-3.5 animate-spin`}):(0,P.jsx)(m,{className:`h-3.5 w-3.5`}),t[5]=r,t[6]=_);let v;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,P.jsx)(`span`,{className:`sr-only`,children:`Refresh permission status`}),t[7]=v):v=t[7];let y;t[8]!==r||t[9]!==h||t[10]!==_?(y=(0,P.jsxs)(T,{variant:`ghost`,size:`icon-sm`,className:`h-7 w-7 shrink-0 rounded-full border-0 bg-background hover:bg-background hover:text-foreground`,onClick:h,disabled:r,children:[_,v]}),t[8]=r,t[9]=h,t[10]=_,t[11]=y):y=t[11];let b;t[12]!==f||t[13]!==y?(b=(0,P.jsxs)(`div`,{className:`flex items-center gap-2`,children:[f,y]}),t[12]=f,t[13]=y,t[14]=b):b=t[14];let x;t[15]!==r||t[16]!==i||t[17]!==d||t[18]!==l||t[19]!==n?.granted||t[20]!==n?.message?(x=!r&&!n?.granted?(0,P.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,P.jsx)(`p`,{className:a.bodyMuted,children:n?.message??`Tarsk needs Screen & Audio Recording permission to use browser tools.`}),(0,P.jsx)(T,{size:`sm`,onClick:()=>void d(),disabled:i,className:`w-fit`,children:i?(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(c,{className:`h-4 w-4 mr-2 animate-spin`}),`Opening Settings...`]}):(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(g,{className:`h-4 w-4 mr-2`}),`Open System Settings`]})}),l&&(0,P.jsxs)(`div`,{className:`flex items-start gap-2 p-3 rounded-md bg-destructive/10 text-destructive`,children:[(0,P.jsx)(s,{className:`h-4 w-4 mt-0.5 flex-shrink-0`}),(0,P.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,P.jsx)(`p`,{className:a.body,children:`Failed to open System Settings`}),(0,P.jsx)(`p`,{className:a.bodyMuted,children:l}),(0,P.jsxs)(`p`,{className:a.bodyMuted,children:[`Please open it manually:`,` `,(0,P.jsx)(`strong`,{children:`System Settings > Privacy & Security > Screen & System Audio Recording`})]})]})]})]}):null,t[15]=r,t[16]=i,t[17]=d,t[18]=l,t[19]=n?.granted,t[20]=n?.message,t[21]=x):x=t[21];let S;return t[22]!==b||t[23]!==x?(S=(0,P.jsx)(A,{title:`Screen & Audio Recording`,description:`Tarsk needs this macOS permission to capture screen content for browser tools and screen sharing features.`,controlLayout:`row-end`,action:b,children:x}),t[22]=b,t[23]=x,t[24]=S):S=t[24],S}function nn(e){let t=(0,M.c)(15),{supported:n,enabled:r,healthy:i,message:s,isLoading:c,isSaving:l,onChange:u}=e;if(!n)return null;let d=r&&i,f;t[0]!==i||t[1]!==u?(f=e=>{e&&!i||u(e).catch(rn)},t[0]=i,t[1]=u,t[2]=f):f=t[2];let p=c||l,m=!i,h;t[3]!==d||t[4]!==f||t[5]!==p||t[6]!==m?(h=(0,P.jsx)(Ee,{value:d,onChange:f,disabled:p,disableOn:m,ariaLabel:`Sandbox`}),t[3]=d,t[4]=f,t[5]=p,t[6]=m,t[7]=h):h=t[7];let g;t[8]!==i||t[9]!==c||t[10]!==s?(g=!c&&!i?(0,P.jsxs)(`div`,{className:`flex items-start gap-2 text-destructive`,children:[(0,P.jsx)(o,{className:`h-4 w-4 mt-0.5 shrink-0`}),(0,P.jsx)(`p`,{className:a.bodyMuted,children:s||`Seatbelt sandbox failed its health check and cannot be enabled.`})]}):null,t[8]=i,t[9]=c,t[10]=s,t[11]=g):g=t[11];let _;return t[12]!==h||t[13]!==g?(_=(0,P.jsx)(A,{title:`Sandbox`,description:`Sandbox tools like bash and skill script execution to allow running and testing code safely without risking your system, files, or data.`,controlLayout:`row-end`,action:h,children:g}),t[12]=h,t[13]=g,t[14]=_):_=t[14],_}function rn(){}function an(e){let t=(0,M.c)(25),{enabled:n,logPath:r,isEnvConfigured:i,ingestingHost:o,isLoading:s,isSaving:c,onChange:l,onCopyPath:u}=e,d=s||c,f;t[0]!==n||t[1]!==l||t[2]!==d?(f=(0,P.jsx)(ie,{asChild:!0,children:(0,P.jsx)(`span`,{className:`inline-flex`,children:(0,P.jsx)(Ee,{value:n,onChange:l,disabled:d,ariaLabel:`Logging`})})}),t[0]=n,t[1]=l,t[2]=d,t[3]=f):f=t[3];let p=n&&r?`max-w-sm cursor-pointer`:`max-w-sm`,m;t[4]!==n||t[5]!==r||t[6]!==u?(m=n&&r?()=>void u():void 0,t[4]=n,t[5]=r,t[6]=u,t[7]=m):m=t[7];let h;t[8]!==n||t[9]!==r?(h=n&&r?(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(`p`,{children:`Click to copy log file path`}),(0,P.jsx)(`p`,{className:w(a.mono,`mt-1 break-all`),children:r})]}):(0,P.jsx)(`p`,{children:`Enable logging to write to a local file.`}),t[8]=n,t[9]=r,t[10]=h):h=t[10];let g;t[11]!==p||t[12]!==m||t[13]!==h?(g=(0,P.jsx)(ae,{className:p,onClick:m,children:h}),t[11]=p,t[12]=m,t[13]=h,t[14]=g):g=t[14];let _;t[15]!==f||t[16]!==g?(_=(0,P.jsxs)(oe,{children:[f,g]}),t[15]=f,t[16]=g,t[17]=_):_=t[17];let v;t[18]!==n||t[19]!==o||t[20]!==i?(v=n&&i&&o&&(0,P.jsxs)(`p`,{className:`${a.bodyMuted} mt-3`,children:[`Also sending logs to Better Stack at`,` `,(0,P.jsx)(`span`,{className:a.mono,children:o})]}),t[18]=n,t[19]=o,t[20]=i,t[21]=v):v=t[21];let y;return t[22]!==_||t[23]!==v?(y=(0,P.jsx)(A,{title:`Logging`,description:`Write verbose application logs to a local file. When Better Stack environment variables are configured, logs are sent there too.`,controlLayout:`row-end`,action:_,children:v}),t[22]=_,t[23]=v,t[24]=y):y=t[24],y}function on(e){let t=(0,M.c)(23),{bindMode:n,isLoading:r,isSaving:i,networkAddresses:o,needsRestart:s,showMobileQrCode:c,mobileNetworkUrl:l,copiedUrl:u,onChangeMode:d,onCopyUrl:f}=e,p=n===`network`,m;t[0]===d?m=t[1]:(m=e=>{d(e?`network`:`local`)},t[0]=d,t[1]=m);let h=r||i,g;t[2]!==p||t[3]!==m||t[4]!==h?(g=(0,P.jsx)(Ee,{value:p,onChange:m,disabled:h,ariaLabel:`Mobile & Network Access`}),t[2]=p,t[3]=m,t[4]=h,t[5]=g):g=t[5];let _;t[6]!==u||t[7]!==l||t[8]!==s||t[9]!==f||t[10]!==c?(_=c&&l&&(0,P.jsxs)(`div`,{className:`mt-3`,children:[(0,P.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,P.jsxs)(`p`,{className:a.bodyMuted,children:[`Available on the network at:`,` `,(0,P.jsx)(`span`,{className:a.mono,children:l})]}),(0,P.jsxs)(oe,{children:[(0,P.jsx)(ie,{asChild:!0,children:(0,P.jsxs)(`button`,{type:`button`,onClick:()=>void f(),className:`inline-flex h-7 w-7 items-center justify-center rounded-md border border-border bg-background/90 text-foreground shadow-sm transition-colors hover:bg-background`,children:[u?(0,P.jsx)(y,{className:`h-3.5 w-3.5 text-green-500`}):(0,P.jsx)(S,{className:`h-3.5 w-3.5`}),(0,P.jsx)(`span`,{className:`sr-only`,children:`Copy network URL`})]})}),(0,P.jsx)(ae,{children:u?`Copied!`:`Copy to clipboard`})]})]}),s&&(0,P.jsx)(`p`,{className:`${a.bodyMuted} mt-1`,children:`You will need to restart for this setting to take effect.`})]}),t[6]=u,t[7]=l,t[8]=s,t[9]=f,t[10]=c,t[11]=_):_=t[11];let v;t[12]!==n||t[13]!==o?(v=n===`network`&&o.length===0&&(0,P.jsx)(`p`,{className:`${a.bodyMuted} mt-3`,children:`No network IP addresses were detected on this computer.`}),t[12]=n,t[13]=o,t[14]=v):v=t[14];let b;t[15]!==n||t[16]!==s?(b=s&&n===`local`&&(0,P.jsx)(`p`,{className:`${a.bodyMuted} mt-3`,children:`You will need to restart for this setting to take effect.`}),t[15]=n,t[16]=s,t[17]=b):b=t[17];let x;return t[18]!==g||t[19]!==_||t[20]!==v||t[21]!==b?(x=(0,P.jsxs)(A,{title:`Mobile & Network Access`,description:`Allow the Tarsk mobile app or other web browsers to access Tarsk on the wifi network.`,controlLayout:`row-end`,action:g,children:[_,v,b]}),t[18]=g,t[19]=_,t[20]=v,t[21]=b,t[22]=x):x=t[22],x}function sn(e){let t=(0,M.c)(3),{url:n}=e;if(!n)return null;let r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,P.jsx)(Te,{title:`Mobile App`,description:`Scan this code with the Tarsk mobile app to connect on your Wi-Fi network.`,sticky:!1}),t[0]=r):r=t[0];let i;return t[1]===n?i=t[2]:(i=(0,P.jsxs)(me,{className:`shrink-0`,children:[r,(0,P.jsx)(`div`,{className:`flex flex-col items-center px-6 pb-6 pt-6`,children:(0,P.jsx)(`div`,{className:`rounded-lg bg-background p-3`,children:(0,P.jsx)(zt,{value:n,size:128,bgColor:`hsl(var(--background))`,fgColor:`hsl(var(--foreground))`,level:`M`})})})]}),t[1]=n,t[2]=i),i}export{Kt as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{o as t,t as n}from"./react-vendor-Ee0-5T4I.js";import{ot as r}from"./dist-DjiNKpTV.js";import{r as i}from"./store-CHF6tOp2.js";import{Et as a}from"./dist-CNOCRPxn.js";import{t as o}from"./utils-CT-Dw22R.js";import{t as s}from"./button-B6HDsfd5.js";import{Bt as c,bn as l}from"./api-D1GxdEEp.js";import{t as u}from"./use-toast-xpb5jNtN.js";import{Cn as d,On as f,X as p,kn as m,wn as h,xn as g}from"./index-BOB3ZUQs.js";import{t as _}from"./use-settings-page-loading-BTySlInF.js";var v=e(t(),1),y=n();function b(){let e=i(e=>e.selectedThreadId),[t,n]=(0,v.useState)(``),[b,x]=(0,v.useState)(!0),[S,C]=(0,v.useState)(!1);(0,v.useLayoutEffect)(()=>{e&&x(!0)},[e]),(0,v.useEffect)(()=>{if(!e){x(!1);return}x(!0),c(e,`AGENTS.md`).then(e=>n(e.content)).catch(()=>n(``)).finally(()=>x(!1))},[e]);let w=_(e,[b]);async function T(){if(e){C(!0);try{await l(e,`AGENTS.md`,t),u({title:`Instructions saved`})}catch(e){u({title:`Error`,description:e instanceof Error?e.message:`Failed to save instructions`,variant:`destructive`})}finally{C(!1)}}}return e?(0,y.jsx)(h,{loading:w,children:(0,y.jsx)(d,{children:(0,y.jsxs)(m,{className:`w-full flex-1 flex flex-col min-h-0 pt-0`,children:[(0,y.jsx)(g,{title:`Instructions`,description:`Agent context and coding guidelines, stored in AGENTS.md.`,sticky:!1,action:(0,y.jsx)(s,{onClick:T,disabled:S,children:S?(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(a,{className:`mr-2 h-4 w-4 animate-spin`}),`Saving...`]}):`Save`})}),(0,y.jsx)(p,{value:t,onChange:e=>n(e.target.value),className:o(r.mono,`frosted-scrollbar flex-1 min-h-0 resize-none`),placeholder:`Add instructions for your agent in AGENTS.md...`,disabled:S})]})})}):(0,y.jsx)(f,{children:`Select a thread to edit instructions.`})}export{b as SettingsInstructionsView,b as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime-aKtaBQYM.js";import{n as e,o as t,t as n}from"./react-vendor-Ee0-5T4I.js";import{ot as r}from"./dist-DjiNKpTV.js";import{D as i,q as a}from"./dist-CNOCRPxn.js";import{t as o}from"./utils-CT-Dw22R.js";import{t as s}from"./button-B6HDsfd5.js";import{i as c,n as l,r as u,t as d}from"./tooltip-BtJG5fZl.js";import{It as f,Sn as p}from"./index-BOB3ZUQs.js";import{t as m}from"./skeleton-DvLd14RU.js";import"./card-DZGd45nw.js";var h=e();t();var g=n();function _(e){let t=(0,h.c)(14),{icon:n,title:i,description:a,bordered:s}=e,c=(s===void 0?!0:s)&&`border border-dashed rounded-lg`,l;t[0]===c?l=t[1]:(l=o(`text-center py-12 mb-8`,c),t[0]=c,t[1]=l);let u;t[2]===n?u=t[3]:(u=(0,g.jsx)(n,{className:`mx-auto h-10 w-10 text-muted-foreground/50 mb-3`}),t[2]=n,t[3]=u);let d;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(d=o(r.emptyStateTitle,`mb-1`),t[4]=d):d=t[4];let f;t[5]===i?f=t[6]:(f=(0,g.jsx)(`h3`,{className:d,children:i}),t[5]=i,t[6]=f);let p;t[7]===a?p=t[8]:(p=a?(0,g.jsx)(`p`,{className:o(r.bodyMuted,`mb-3`),children:a}):null,t[7]=a,t[8]=p);let m;return t[9]!==l||t[10]!==u||t[11]!==f||t[12]!==p?(m=(0,g.jsxs)(`div`,{className:l,children:[u,f,p]}),t[9]=l,t[10]=u,t[11]=f,t[12]=p,t[13]=m):m=t[13],m}function v(e){let t=(0,h.c)(12),{placeholder:n,value:r,onChange:i,className:s}=e,c=s??`mb-4`,l;t[0]===c?l=t[1]:(l=o(`relative`,c),t[0]=c,t[1]=l);let u;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,g.jsx)(a,{className:`absolute left-2.5 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground pointer-events-none`}),t[2]=u):u=t[2];let d;t[3]===i?d=t[4]:(d=e=>i(e.target.value),t[3]=i,t[4]=d);let p;t[5]!==n||t[6]!==d||t[7]!==r?(p=(0,g.jsx)(f,{placeholder:n,value:r,onChange:d,className:`pl-8`}),t[5]=n,t[6]=d,t[7]=r,t[8]=p):p=t[8];let m;return t[9]!==l||t[10]!==p?(m=(0,g.jsxs)(`div`,{className:l,children:[u,p]}),t[9]=l,t[10]=p,t[11]=m):m=t[11],m}function y(e){let t=(0,h.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,g.jsx)(`div`,{className:`grid gap-2 [grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr))]`,children:n}),t[0]=n,t[1]=r),r}function b(e){let t=(0,h.c)(3),{searchQuery:n,emptyLabel:i}=e,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=o(r.bodyMuted,`text-center py-8`),t[0]=a):a=t[0];let s=n.trim()?`No results for "${n}"`:i,c;return t[1]===s?c=t[2]:(c=(0,g.jsx)(`p`,{className:a,children:s}),t[1]=s,t[2]=c),c}function x(e){let t=(0,h.c)(3),{message:n}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=o(r.bodyMuted,`text-center py-8`),t[0]=i):i=t[0];let a;return t[1]===n?a=t[2]:(a=(0,g.jsx)(`p`,{className:i,children:n}),t[1]=n,t[2]=a),a}var S=`shrink-0 items-center justify-center text-muted-foreground opacity-0 pointer-events-none can-hover:group-hover:opacity-100 can-hover:group-hover:pointer-events-auto can-hover:hover:bg-destructive can-hover:hover:text-destructive-foreground transition-[opacity,color,background-color]`;function C(e){let t=(0,h.c)(19),{loading:n,items:r,emptyState:a,getKey:f,columnsClassName:v,compact:y,showHeader:b,renderContent:x,renderMiddle:C,onItemClick:w,itemClickLabel:T,onDelete:E,deleteAriaLabel:D,deleteTooltip:O}=e,k=v===void 0?`grid-cols-[minmax(0,1fr)_1.75rem]`:v,A=y===void 0?!1:y,j=b===void 0?!0:b,M;t[0]===j?M=t[1]:(M=j?(0,g.jsx)(p,{title:`Installed`}):null,t[0]=j,t[1]=M);let N;t[2]!==k||t[3]!==A||t[4]!==D||t[5]!==O||t[6]!==a||t[7]!==f||t[8]!==T||t[9]!==r||t[10]!==n||t[11]!==E||t[12]!==w||t[13]!==x||t[14]!==C?(N=n?(0,g.jsxs)(`div`,{className:`space-y-3 mb-8`,children:[(0,g.jsx)(m,{className:o(`w-full`,A?`h-9`:`h-12`)}),(0,g.jsx)(m,{className:o(`w-full`,A?`h-9`:`h-12`)})]}):r.length===0?(0,g.jsx)(_,{...a}):(0,g.jsx)(`div`,{className:`divide-y divide-table-border`,children:r.map(e=>(0,g.jsxs)(`div`,{className:o(`group grid items-center gap-3 px-3 hover:bg-muted/30`,A?`min-h-10 py-2`:`min-h-13 py-3`,k,w&&`cursor-pointer`),role:w?`button`:void 0,tabIndex:w?0:void 0,"aria-label":w?T?.(e):void 0,onClick:w?()=>w(e):void 0,onKeyDown:w?t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),w(e))}:void 0,children:[x(e),C?.(e),(0,g.jsx)(u,{children:(0,g.jsxs)(d,{children:[(0,g.jsx)(c,{asChild:!0,children:(0,g.jsx)(s,{type:`button`,variant:`ghost`,size:`icon-sm`,className:S,onClick:t=>{t.stopPropagation(),E(e)},"aria-label":D(e),children:(0,g.jsx)(i,{className:`h-4 w-4`})})}),(0,g.jsx)(l,{children:O})]})})]},f(e)))}),t[2]=k,t[3]=A,t[4]=D,t[5]=O,t[6]=a,t[7]=f,t[8]=T,t[9]=r,t[10]=n,t[11]=E,t[12]=w,t[13]=x,t[14]=C,t[15]=N):N=t[15];let P;return t[16]!==M||t[17]!==N?(P=(0,g.jsxs)(g.Fragment,{children:[M,N]}),t[16]=M,t[17]=N,t[18]=P):P=t[18],P}export{b as a,y as i,_ as n,v as o,C as r,x as s,S as t};
|
|
@@ -1,5 +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{l as i}from"./chunk-QFMPRPBF-COsSkB7x.js";import{C as a,b as o,ot as s,y as c}from"./dist-DjiNKpTV.js";import{Et as l,jn as u,vn as d}from"./dist-CNOCRPxn.js";import{t as f}from"./utils-CT-Dw22R.js";import{t as p}from"./button-B6HDsfd5.js";import{An as m,Tr as h,d as g}from"./api-D1GxdEEp.js";import{i as _,n as v,r as y,t as b}from"./tooltip-BtJG5fZl.js";import{r as x}from"./scroll-area-BMQFeWmq.js";import{t as S}from"./use-toast-xpb5jNtN.js";import{It as C,gn as w,kn as T,xn as E}from"./index-BOB3ZUQs.js";import{n as D,t as O}from"./toggle-group-DMR7z3pz.js";var k=t(),A=e(n(),1),j=r(),M=1e3,N=[o.INFO,o.WARN,o.ERROR],ee=[...N],te=`inline-flex h-11 shrink-0 rounded-full border bg-muted/40 p-2`,ne=f(s.compact,`h-7 min-w-0 rounded-full border-0 px-2.5 data-[state=on]:bg-foreground data-[state=on]:text-background data-[state=on]:shadow-sm`);function P(e,t){return t?[e.event,e.message,I(e.level),e.data===void 0?``:R(e.data)].join(` `).toLowerCase().includes(t):!0}function F(e){let t=typeof e==`number`?e:Number(e);return t===o.DEBUG||t===o.INFO||t===o.WARN||t===o.ERROR?t:null}function I(e){let t=F(e);return t===null?String(e):a(t)}function L(e,t){let n=F(e.level);return n!==null&&t.has(n)}function R(e){if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}function z(e){switch(F(e)??e){case o.ERROR:return`text-destructive`;case o.WARN:return`text-amber-600 dark:text-amber-400`;case o.INFO:return`text-foreground`;default:return`text-muted-foreground`}}function B(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleTimeString(void 0,{hour:`2-digit`,minute:`2-digit`,second:`2-digit`})}function V(e){let t=[`${e.ts} ${I(e.level)} ${e.event}`,e.message];return e.data!==void 0&&t.push(R(e.data)),t.join(`
|
|
2
|
-
`)}var H=(0,A.memo)(function(e){let t=(0,k.c)(40),{entry:n,copied:r,onCopy:i}=e,a;t[0]!==n||t[1]!==i?(a=()=>i(n),t[0]=n,t[1]=i,t[2]=a):a=t[2];let o;t[3]===r?o=t[4]:(o=r?(0,j.jsx)(u,{className:`h-3.5 w-3.5 text-green-500`}):(0,j.jsx)(d,{className:`h-3.5 w-3.5`}),t[3]=r,t[4]=o);let s;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,j.jsx)(`span`,{className:`sr-only`,children:`Copy log entry`}),t[5]=s):s=t[5];let c;t[6]!==a||t[7]!==o?(c=(0,j.jsx)(_,{asChild:!0,children:(0,j.jsxs)(`button`,{type:`button`,onClick:a,className:`flex h-7 w-7 items-center justify-center rounded-md border border-border bg-background/90 text-foreground shadow-sm hover:bg-background`,children:[o,s]})}),t[6]=a,t[7]=o,t[8]=c):c=t[8];let l=r?`Copied!`:`Copy to clipboard`,p;t[9]===l?p=t[10]:(p=(0,j.jsx)(v,{children:l}),t[9]=l,t[10]=p);let m;t[11]!==c||t[12]!==p?(m=(0,j.jsx)(`div`,{className:`absolute top-2 right-2 opacity-0 transition-opacity group-hover:opacity-100 focus-within:opacity-100`,children:(0,j.jsxs)(b,{children:[c,p]})}),t[11]=c,t[12]=p,t[13]=m):m=t[13];let h;t[14]===n.ts?h=t[15]:(h=B(n.ts),t[14]=n.ts,t[15]=h);let g;t[16]===h?g=t[17]:(g=(0,j.jsx)(`span`,{className:`text-muted-foreground tabular-nums`,children:h}),t[16]=h,t[17]=g);let y;t[18]===n.level?y=t[19]:(y=f(`font-semibold`,z(n.level)),t[18]=n.level,t[19]=y);let x;t[20]===n.level?x=t[21]:(x=I(n.level),t[20]=n.level,t[21]=x);let S;t[22]!==y||t[23]!==x?(S=(0,j.jsx)(`span`,{className:y,children:x}),t[22]=y,t[23]=x,t[24]=S):S=t[24];let C;t[25]===n.event?C=t[26]:(C=(0,j.jsx)(`span`,{className:`text-muted-foreground`,children:n.event}),t[25]=n.event,t[26]=C);let w;t[27]!==S||t[28]!==C||t[29]!==g?(w=(0,j.jsxs)(`div`,{className:`flex flex-wrap items-baseline gap-x-2 gap-y-0.5`,children:[g,S,C]}),t[27]=S,t[28]=C,t[29]=g,t[30]=w):w=t[30];let T;t[31]===n.message?T=t[32]:(T=(0,j.jsx)(`p`,{className:`mt-0.5 whitespace-pre-wrap break-words text-foreground`,children:n.message}),t[31]=n.message,t[32]=T);let E;t[33]===n.data?E=t[34]:(E=n.data===void 0?null:(0,j.jsx)(`pre`,{className:`mt-1 max-h-40 overflow-auto whitespace-pre-wrap break-words text-muted-foreground`,children:R(n.data)}),t[33]=n.data,t[34]=E);let D;return t[35]!==w||t[36]!==T||t[37]!==E||t[38]!==m?(D=(0,j.jsxs)(`li`,{className:`group relative min-w-0 px-3 py-2 pr-10 hover:bg-muted/40 select-text`,children:[m,w,T,E]}),t[35]=w,t[36]=T,t[37]=E,t[38]=m,t[39]=D):D=t[39],D});function U(){let[e]=i(),t=e.get(`q`)??``,[n,r]=(0,A.useState)([]),[o,k]=(0,A.useState)(t),[F,I]=(0,A.useState)(ee),[R,z]=(0,A.useState)(!0),[B,U]=(0,A.useState)(!1),[W,G]=(0,A.useState)(null),[K,q]=(0,A.useState)(!1),[J,re]=(0,A.useState)(null),Y=(0,A.useRef)(null),X=(0,A.useRef)(null);(0,A.useEffect)(()=>{t&&k(t)},[t]),(0,A.useEffect)(()=>{let e=!1,t=null,n=null,i=new AbortController,a=!1,o=!1;function s(){e||n||(z(!0),n=setTimeout(()=>{n=null,l()},M))}async function l(){if(!e){z(!0);try{let n=await m({signal:i.signal});if(!n||e){n&&e&&n.cancel().catch(()=>{});return}t=n.getReader();let o=new TextDecoder,l=``;for(a=!0,z(!1);!e;){let{done:e,value:n}=await t.read();if(e)break;l+=o.decode(n,{stream:!0});let i=l.split(`
|
|
3
|
-
`);l=i.pop()??``;for(let e of i){let t=e.trim();if(!t)continue;let n;try{n=JSON.parse(t)}catch{continue}if(n.type!==`ping`){if(n.type===`snapshot`){r(n.entries);continue}if(n.type===`cleared`){r([]);continue}r(e=>{let t=[...e,n.entry];return t.length>5e3?t.slice(t.length-c):t})}}}e||s()}catch(t){if(e||i.signal.aborted)return;let n=t instanceof Error?t.message:String(t);if(h(n)||a){s();return}z(!1),o||(o=!0,S({title:`Failed to connect to log feed`,description:n,variant:`destructive`})),s()}}}return l(),()=>{e=!0,i.abort(),n&&clearTimeout(n),t?.cancel().catch(()=>{})}},[]),(0,A.useEffect)(()=>()=>{Y.current&&clearTimeout(Y.current),X.current&&clearTimeout(X.current)},[]);let Z=(0,A.useCallback)(async e=>{try{await navigator.clipboard.writeText(V(e)),G(e.id),Y.current&&clearTimeout(Y.current),Y.current=setTimeout(()=>{G(null),Y.current=null},1500)}catch(e){S({title:`Failed to copy log entry`,description:e instanceof Error?e.message:String(e),variant:`destructive`})}},[]);async function ie(e){if(e.length!==0)try{await navigator.clipboard.writeText(e.map(e=>V(e)).join(`
|
|
4
|
-
|
|
5
|
-
`)),q(!0),X.current&&clearTimeout(X.current),X.current=setTimeout(()=>{q(!1),X.current=null},1500)}catch(e){S({title:`Failed to copy logs`,description:e instanceof Error?e.message:String(e),variant:`destructive`})}}async function ae(){U(!0);try{await g()}catch(e){S({title:`Failed to clear logs`,description:e instanceof Error?e.message:String(e),variant:`destructive`})}finally{U(!1)}}let Q=o.trim().toLowerCase(),oe=new Set(F),$=n.filter(e=>L(e,oe)&&P(e,Q)),se=(0,A.useCallback)((e,t)=>(0,j.jsx)(H,{entry:t,copied:W===t.id,onCopy:Z}),[W,Z]);function ce(){return n.length===0?`No logs in the buffer yet.`:F.length===0?`No log levels selected.`:Q?`No logs match this search.`:`No logs match the selected levels.`}return(0,j.jsx)(`div`,{className:`flex h-full min-h-0 w-full min-w-0 flex-1 flex-col`,children:(0,j.jsxs)(T,{className:`flex w-full max-w-none min-w-0 min-h-0 flex-1 flex-col pb-0 pt-0`,children:[(0,j.jsx)(E,{title:`Logs`,description:`Live in memory feed of events`,action:(0,j.jsx)(p,{type:`button`,onClick:()=>void ae(),disabled:B||n.length===0,children:B?(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(l,{className:`mr-2 h-4 w-4 animate-spin`}),`Clearing...`]}):`Clear`})}),(0,j.jsxs)(`div`,{className:`mb-4 mt-4 flex w-full min-w-0 items-center gap-3 electrobun-webkit-app-region-no-drag`,children:[(0,j.jsx)(C,{value:o,onChange:e=>k(e.target.value),placeholder:`Search`,className:`min-w-0 flex-1`,"aria-label":`Search logs`}),(0,j.jsx)(O,{type:`multiple`,value:F.map(e=>a(e)),onValueChange:e=>{I(N.filter(t=>e.includes(a(t))))},"aria-label":`Log levels`,variant:`outline`,size:`sm`,className:te,children:N.map(e=>(0,j.jsx)(D,{value:a(e),"aria-label":a(e),className:ne,children:a(e)},e))}),(0,j.jsx)(y,{children:(0,j.jsxs)(b,{children:[(0,j.jsx)(_,{asChild:!0,children:(0,j.jsxs)(p,{type:`button`,variant:`ghost`,size:`icon`,className:`h-8 w-8 shrink-0`,onClick:()=>void ie($),disabled:$.length===0,children:[K?(0,j.jsx)(u,{className:`h-3.5 w-3.5 text-green-500`}):(0,j.jsx)(d,{className:`h-3.5 w-3.5`}),(0,j.jsx)(`span`,{className:`sr-only`,children:`Copy visible logs`})]})}),(0,j.jsx)(v,{children:K?`Copied!`:`Copy visible logs to clipboard`})]})})]}),(0,j.jsx)(x,{viewportRef:re,className:`mb-6 w-full min-h-0 min-w-0 flex-1 rounded-md border bg-background font-mono text-xs`,children:R&&n.length===0?(0,j.jsxs)(`div`,{className:`flex items-center gap-2 p-4 text-muted-foreground`,children:[(0,j.jsx)(l,{className:`h-4 w-4 animate-spin`}),`Connecting…`]}):$.length===0?(0,j.jsx)(`p`,{className:f(s.bodyMuted,`p-4 font-sans`),children:ce()}):(0,j.jsx)(y,{children:(0,j.jsx)(w,{data:$,computeItemKey:(e,t)=>t.id,customScrollParent:J??void 0,itemContent:se,followOutput:e=>e?`auto`:!1,overscan:500,className:`w-full min-w-0`})})})]})})}export{U as default};
|
|
@@ -1,5 +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{ot as i}from"./dist-DjiNKpTV.js";import{r as a}from"./store-CHF6tOp2.js";import{$ as o,An as s,D as c,G as l,ct as u,jn as d,rt as f,un as p,y as m}from"./dist-CNOCRPxn.js";import{t as h}from"./utils-CT-Dw22R.js";import{t as g}from"./button-B6HDsfd5.js";import{Xt as _,a as v,ft as y,un as b}from"./api-D1GxdEEp.js";import{i as x,n as S,r as C,t as ee}from"./tooltip-BtJG5fZl.js";import{t as w}from"./use-toast-xpb5jNtN.js";import{r as T,t as E}from"./dialog--0foS3aw.js";import{n as D}from"./explorer-tab-context-BxUVwWQQ.js";import{t as O}from"./use-open-chat-dock-panel-B31lwcQF.js";import{A as k,At as A,Bn as j,D as M,E as N,Hn as P,I as F,In as I,It as L,L as R,Ln as z,Mn as B,Nt as V,O as te,On as H,Pn as ne,Pt as U,R as W,Tn as re,Un as G,Vn as ie,X as K,j as q,jn as ae,jt as oe,k as se,kn as ce,kt as le,vn as ue,xn as de,yn as J,z as fe,zn as pe}from"./index-BOB3ZUQs.js";import{t as me}from"./delete-confirm-dialog-3DX1u0Dg.js";import{t as he}from"./use-settings-page-loading-BTySlInF.js";import{n as ge}from"./settings-list-BpPbGcpS.js";import{t as _e}from"./switch-P5m18oUl.js";var Y=t(),X=e(n(),1),Z=r(),ve={key:``,value:``},ye={serverType:`local`,name:``,command:``,argsText:``,serverUrl:``,transport:`sse`,oauthClientId:``,oauthClientSecret:``,oauthCallbackPort:``,defer:!0},be=[e=>e.name,e=>e.command,e=>e.argsText,e=>e.serverUrl,e=>e.oauthClientId,e=>e.oauthClientSecret,e=>e.oauthCallbackPort];function Q(e,t){return e??t}function $(e){return e?.url?`remote`:`local`}function xe(e){return Object.entries(e??{}).map(([e,t])=>({key:e,value:t}))}function Se(e){let t={};for(let{key:n,value:r}of e)n.trim()&&(t[n.trim()]=r);return Object.keys(t).length>0?t:void 0}function Ce(e){return(e??[]).join(`
|
|
2
|
-
`)}function we(e){return e.split(`
|
|
3
|
-
`).map(e=>e.trim()).filter(Boolean)}function Te(e){return e===void 0?``:String(e)}function Ee(e){return{oauthClientId:Q(e?.clientId,``),oauthClientSecret:Q(e?.clientSecret,``),oauthCallbackPort:Te(e?.callbackPort)}}function De(e,t){return{...ye,name:e,serverType:$(t),command:Q(t.command,``),argsText:Ce(t.args),serverUrl:Q(t.url,``),transport:Q(t.transport,`sse`),...Ee(t.oauth),defer:t.defer!==!1}}function Oe(e,t,n){return JSON.stringify({name:e,type:t,config:n})}function ke(e){if(!e)return;let t=Number.parseInt(e,10);return Number.isInteger(t)&&t>0?t:void 0}function Ae(e){let t={};for(let[n,r]of Object.entries(e))r!==``&&r!==void 0&&(t[n]=r);return t}function je(e){let t={};for(let[n,r]of Object.entries(e))r!==void 0&&(t[n]=r);return t}function Me(e,t,n){return e!==``||t!==``||n!==void 0}function Ne(e){let t=e.oauthClientId.trim(),n=e.oauthClientSecret.trim(),r=ke(e.oauthCallbackPort.trim());if(!Me(t,n,r))return;let i=Ae({clientId:t,clientSecret:n,callbackPort:r});if(Object.keys(i).length!==0)return i}function Pe(e,t,n){return je({url:e.serverUrl.trim(),transport:e.transport,headers:Se(n),env:Se(t),oauth:Ne(e),defer:e.defer?void 0:!1})}function Fe(e,t){return je({command:e.command.trim(),args:we(e.argsText),env:Se(t),defer:e.defer?void 0:!1})}function Ie(e,t,n){return e.serverType===`remote`?Pe(e,t,n):Fe(e,t)}function Le(e){let t=e.trim();if(!t)return`Server URL is required`;try{new URL(t)}catch{return`Server URL must be a valid URL`}return null}function Re(e){if(!e.trim())return null;let t=Number.parseInt(e.trim(),10);return Number.isInteger(t)&&t>0?null:`OAuth callback port must be a positive integer`}function ze(e){return e.oauthClientSecret.trim()&&!e.oauthClientId.trim()?`OAuth client ID is required when a client secret is set`:null}function Be(e){return Le(e.serverUrl)??Re(e.oauthCallbackPort)??ze(e)}function Ve(e){return e.trim()?null:`Command is required`}function He(e,t){return t.name.trim()?e===`remote`?Be(t):Ve(t.command):`Server name is required`}function Ue(e,t,n){return be.some(t=>t(e).trim()!==``)||t.length>0||n.length>0||!e.defer}function We(e){return e.isEditing?e.currentSnapshot!==e.originalSnapshot:Ue(e.form,e.envEntries,e.headerEntries)}function Ge(e){if(e.isEditing&&e.serverName)return e.installedServers.find(t=>t.name===e.serverName);if(e.initialConfig)return{name:Q(e.initialName,``),config:e.initialConfig}}function Ke(e,t){return e instanceof Error?e.message:t}function qe(e,t){return e?t?`Saving...`:`Adding...`:t?`Save`:`Add`}function Je(e,t){return e?`MCP server saved · ${M(t.catalog)}`:`MCP server added · ${M(t.catalog)}`}function Ye(e,t){return{title:e?t:`Add MCP Server`,description:e?`Edit MCP Server configuration.`:`Configure a new MCP Server.`}}function Xe(){let e=(0,Y.c)(7),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={env:[],header:[]},e[0]=t):t=e[0];let[n,r]=(0,X.useState)(t),i;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(i=function(e,t){r(n=>({...n,[e]:t(n[e])}))},e[1]=i):i=e[1];let a=i,o;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=function(e){a(e,Ze)},e[2]=o):o=e[2];let s=o,c;e[3]===Symbol.for(`react.memo_cache_sentinel`)?(c=function(e,t){a(e,e=>e.filter((e,n)=>n!==t))},e[3]=c):c=e[3];let l=c,u;e[4]===Symbol.for(`react.memo_cache_sentinel`)?(u=function(e,t,n){a(e,e=>e.map((e,r)=>r===t?{...e,...n}:e))},e[4]=u):u=e[4];let d=u,f;return e[5]===n?f=e[6]:(f={lists:n,setEntryLists:r,addEntry:s,removeEntry:l,updateEntry:d},e[5]=n,e[6]=f),f}function Ze(e){return[...e,ve]}function Qe(e){async function t(){if(!e.projectPath)throw Error(`No project path`);let t=await se(e.projectPath,e.originalName||e.form.name.trim(),Ie(e.form,e.envEntries,e.headerEntries));w({title:`Success`,description:Je(e.isEditing,t)}),e.onBack()}async function n(){e.setError(null);let n=He(e.form.serverType,e.form);if(n){e.setError(n);return}e.setSaving(!0);try{await t()}catch(t){e.setError(Ke(t,`Failed to save server`))}finally{e.setSaving(!1)}}async function r(){if(e.projectPath){e.setDeleting(!0);try{await N(e.projectPath,e.originalName),w({title:`Success`,description:`MCP server removed`}),e.onBack()}catch(t){e.setError(Ke(t,`Failed to delete server`))}finally{e.setDeleting(!1)}}}return{handleSave:n,handleDelete:r}}function $e(e){let{installedServers:t}=q(e.projectPath),n=!!e.serverName,[r,i]=(0,X.useState)(ye),{lists:a,setEntryLists:o,addEntry:s,removeEntry:c,updateEntry:l}=Xe(),[u,d]=(0,X.useState)({name:``,snapshot:``}),[f,p]=(0,X.useState)(!1),[m,h]=(0,X.useState)(!1),[g,_]=(0,X.useState)(null),[v,y]=(0,X.useState)(n);(0,X.useEffect)(()=>{let r=Ge({isEditing:n,serverName:e.serverName,initialName:e.initialName,initialConfig:e.initialConfig,installedServers:t});r&&(i(De(r.name,r.config)),o({env:xe(r.config.env),header:xe(r.config.headers)}),d({name:r.name,snapshot:Oe(r.name,$(r.config),r.config)})),(!n||r)&&y(!1)},[t,e.serverName,e.initialName,e.initialConfig,o,n]);function b(e){i(t=>({...t,...e}))}return{form:r,patchForm:b,lists:a,addEntry:s,removeEntry:c,updateEntry:l,original:u,saving:f,deleting:m,error:g,loading:v,actions:Qe({projectPath:e.projectPath,isEditing:n,form:r,envEntries:a.env,headerEntries:a.header,originalName:u.name,onBack:e.onBack,setError:_,setSaving:p,setDeleting:h})}}function et(){let e=(0,Y.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Z.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,Z.jsx)(`p`,{className:i.bodyMuted,children:`Loading server configuration...`})}),e[0]=t):t=e[0],t}function tt(e){let t=(0,Y.c)(9),{isEditing:n,name:r,onNameChange:i}=e,a=n?`Server name cannot be changed`:void 0,o;t[0]===i?o=t[1]:(o=e=>i(e.target.value),t[0]=i,t[1]=o);let s;t[2]!==n||t[3]!==r||t[4]!==o?(s=(0,Z.jsx)(L,{id:`server-name`,placeholder:`e.g. filesystem`,value:r,onChange:o,disabled:n}),t[2]=n,t[3]=r,t[4]=o,t[5]=s):s=t[5];let c;return t[6]!==a||t[7]!==s?(c=(0,Z.jsx)(J,{title:`Server name`,description:a,controlLayout:`stack`,className:`pt-6`,children:s}),t[6]=a,t[7]=s,t[8]=c):c=t[8],c}function nt(e){let t=(0,Y.c)(13),{form:n,onFormChange:r}=e,i;t[0]===r?i=t[1]:(i=e=>r({command:e.target.value}),t[0]=r,t[1]=i);let a;t[2]!==n.command||t[3]!==i?(a=(0,Z.jsx)(J,{title:`Command`,controlLayout:`stack`,className:`pt-6`,children:(0,Z.jsx)(L,{id:`server-command`,placeholder:`e.g. npx`,value:n.command,onChange:i})}),t[2]=n.command,t[3]=i,t[4]=a):a=t[4];let o;t[5]===r?o=t[6]:(o=e=>r({argsText:e.target.value}),t[5]=r,t[6]=o);let s;t[7]!==n.argsText||t[8]!==o?(s=(0,Z.jsx)(J,{title:`Arguments`,description:`One argument per line`,controlLayout:`stack`,className:`pt-6`,children:(0,Z.jsx)(K,{id:`server-args`,placeholder:`-y
|
|
4
|
-
@modelcontextprotocol/server-filesystem
|
|
5
|
-
/path/to/dir`,value:n.argsText,onChange:o,className:`font-mono min-h-[80px] resize-none`})}),t[7]=n.argsText,t[8]=o,t[9]=s):s=t[9];let c;return t[10]!==a||t[11]!==s?(c=(0,Z.jsxs)(Z.Fragment,{children:[a,s]}),t[10]=a,t[11]=s,t[12]=c):c=t[12],c}function rt(e){let t=(0,Y.c)(19),{form:n,onFormChange:r}=e,i;t[0]===r?i=t[1]:(i=e=>r({oauthClientId:e.target.value}),t[0]=r,t[1]=i);let a;t[2]!==n.oauthClientId||t[3]!==i?(a=(0,Z.jsx)(L,{id:`oauth-client-id`,placeholder:`Client ID`,value:n.oauthClientId,onChange:i,className:`font-mono`}),t[2]=n.oauthClientId,t[3]=i,t[4]=a):a=t[4];let o;t[5]===r?o=t[6]:(o=e=>r({oauthClientSecret:e.target.value}),t[5]=r,t[6]=o);let s;t[7]!==n.oauthClientSecret||t[8]!==o?(s=(0,Z.jsx)(L,{id:`oauth-client-secret`,placeholder:`Client secret`,type:`password`,value:n.oauthClientSecret,onChange:o,className:`font-mono`}),t[7]=n.oauthClientSecret,t[8]=o,t[9]=s):s=t[9];let c;t[10]===r?c=t[11]:(c=e=>r({oauthCallbackPort:e.target.value}),t[10]=r,t[11]=c);let l;t[12]!==n.oauthCallbackPort||t[13]!==c?(l=(0,Z.jsx)(L,{id:`oauth-callback-port`,placeholder:`Callback port (e.g. 3118)`,value:n.oauthCallbackPort,onChange:c,className:`font-mono`}),t[12]=n.oauthCallbackPort,t[13]=c,t[14]=l):l=t[14];let u;return t[15]!==a||t[16]!==s||t[17]!==l?(u=(0,Z.jsx)(J,{title:`OAuth client`,description:`Required for servers without dynamic client registration (e.g. GitHub Copilot MCP). Create an OAuth App, set callback to http://localhost:<port>/callback, then Sign in.`,controlLayout:`stack`,className:`pt-6`,children:(0,Z.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[a,s,l]})}),t[15]=a,t[16]=s,t[17]=l,t[18]=u):u=t[18],u}function it(e){let t=(0,Y.c)(15),{entries:n,emptyMessage:r,keyPlaceholder:a,valuePlaceholder:o,onUpdate:s,onRemove:c}=e;if(n.length===0){let e;return t[0]===r?e=t[1]:(e=(0,Z.jsx)(`p`,{className:i.caption,children:r}),t[0]=r,t[1]=e),e}let l;if(t[2]!==n||t[3]!==a||t[4]!==c||t[5]!==s||t[6]!==o){let e;t[8]!==a||t[9]!==c||t[10]!==s||t[11]!==o?(e=(e,t)=>(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(L,{placeholder:a,value:e.key,onChange:e=>s(t,{key:e.target.value}),className:`font-mono w-[35%]`}),(0,Z.jsx)(L,{placeholder:o,value:e.value,onChange:e=>s(t,{value:e.target.value}),className:`font-mono flex-1`}),(0,Z.jsx)(g,{variant:`ghost`,size:`icon`,onClick:()=>c(t),className:`h-9 w-9 flex-shrink-0`,children:(0,Z.jsx)(m,{className:`h-3.5 w-3.5`})})]},t),t[8]=a,t[9]=c,t[10]=s,t[11]=o,t[12]=e):e=t[12],l=n.map(e),t[2]=n,t[3]=a,t[4]=c,t[5]=s,t[6]=o,t[7]=l}else l=t[7];let u;return t[13]===l?u=t[14]:(u=(0,Z.jsx)(`div`,{className:`flex flex-col gap-2`,children:l}),t[13]=l,t[14]=u),u}function at(e){let t=(0,Y.c)(16),{title:n,description:r,actionLabel:i,emptyMessage:a,keyPlaceholder:o,valuePlaceholder:s,entries:c,onAdd:l,onRemove:u,onUpdate:d}=e,p;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,Z.jsx)(f,{className:`h-3 w-3 mr-1`}),t[0]=p):p=t[0];let m;t[1]!==i||t[2]!==l?(m=(0,Z.jsxs)(g,{variant:`ghost`,size:`sm`,onClick:l,children:[p,i]}),t[1]=i,t[2]=l,t[3]=m):m=t[3];let h;t[4]!==a||t[5]!==c||t[6]!==o||t[7]!==u||t[8]!==d||t[9]!==s?(h=(0,Z.jsx)(it,{entries:c,emptyMessage:a,keyPlaceholder:o,valuePlaceholder:s,onUpdate:d,onRemove:u}),t[4]=a,t[5]=c,t[6]=o,t[7]=u,t[8]=d,t[9]=s,t[10]=h):h=t[10];let _;return t[11]!==r||t[12]!==m||t[13]!==h||t[14]!==n?(_=(0,Z.jsx)(J,{title:n,description:r,controlLayout:`stack`,className:`pt-6`,action:m,children:h}),t[11]=r,t[12]=m,t[13]=h,t[14]=n,t[15]=_):_=t[15],_}function ot(e){let t=(0,Y.c)(6),{serverType:n,entries:r,onAdd:i,onRemove:a,onUpdate:o}=e,s=n===`remote`?`Optional metadata for local tooling.`:void 0,c;return t[0]!==r||t[1]!==i||t[2]!==a||t[3]!==o||t[4]!==s?(c=(0,Z.jsx)(at,{title:`Environment variables`,description:s,actionLabel:`Add variable`,emptyMessage:`No environment variables configured`,keyPlaceholder:`KEY`,valuePlaceholder:`value`,entries:r,onAdd:i,onRemove:a,onUpdate:o}),t[0]=r,t[1]=i,t[2]=a,t[3]=o,t[4]=s,t[5]=c):c=t[5],c}function st(e){let t=(0,Y.c)(6),{defer:n,onDeferChange:r}=e,i=n?`Tool definitions load on demand via tool_search to keep the initial prompt small.`:`Tool definitions are always injected into the initial prompt, even when not used. Useful when this server's tools are needed in nearly every conversation, but they consume context.`,a;t[0]!==n||t[1]!==r?(a=(0,Z.jsx)(_e,{id:`defer-tools`,checked:n,onCheckedChange:r,"aria-label":`Deferred`}),t[0]=n,t[1]=r,t[2]=a):a=t[2];let o;return t[3]!==i||t[4]!==a?(o=(0,Z.jsx)(J,{title:`Deferred`,description:i,controlLayout:`stack`,className:`pt-6`,action:a}),t[3]=i,t[4]=a,t[5]=o):o=t[5],o}function ct(e){let t=(0,Y.c)(25),{form:n,onFormChange:r,headerEntries:i,onHeaderAdd:a,onHeaderRemove:o,onHeaderUpdate:s}=e,c;t[0]===r?c=t[1]:(c=e=>r({serverUrl:e.target.value}),t[0]=r,t[1]=c);let l;t[2]!==n.serverUrl||t[3]!==c?(l=(0,Z.jsx)(J,{title:`Server URL`,description:`Paste the MCP endpoint URL from your provider.`,controlLayout:`stack`,className:`pt-6`,children:(0,Z.jsx)(L,{id:`server-url`,placeholder:`https://example.com/mcp`,value:n.serverUrl,onChange:c,className:`font-mono`})}),t[2]=n.serverUrl,t[3]=c,t[4]=l):l=t[4];let u;t[5]===r?u=t[6]:(u=e=>r({transport:e}),t[5]=r,t[6]=u);let d;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,Z.jsx)(V,{children:(0,Z.jsx)(U,{})}),t[7]=d):d=t[7];let f;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,Z.jsxs)(A,{children:[(0,Z.jsx)(oe,{value:`sse`,children:`SSE (Server-Sent Events)`}),(0,Z.jsx)(oe,{value:`streamableHttp`,children:`Streamable HTTP`})]}),t[8]=f):f=t[8];let p;t[9]!==n.transport||t[10]!==u?(p=(0,Z.jsx)(J,{title:`Transport`,controlLayout:`stack`,className:`pt-6`,children:(0,Z.jsxs)(le,{value:n.transport,onValueChange:u,children:[d,f]})}),t[9]=n.transport,t[10]=u,t[11]=p):p=t[11];let m;t[12]!==n||t[13]!==r?(m=(0,Z.jsx)(rt,{form:n,onFormChange:r}),t[12]=n,t[13]=r,t[14]=m):m=t[14];let h;t[15]!==i||t[16]!==a||t[17]!==o||t[18]!==s?(h=(0,Z.jsx)(at,{title:`HTTP headers`,description:`Optional headers for authentication.`,actionLabel:`Add header`,emptyMessage:`No headers configured`,keyPlaceholder:`Authorization`,valuePlaceholder:`Bearer ...`,entries:i,onAdd:a,onRemove:o,onUpdate:s}),t[15]=i,t[16]=a,t[17]=o,t[18]=s,t[19]=h):h=t[19];let g;return t[20]!==l||t[21]!==p||t[22]!==m||t[23]!==h?(g=(0,Z.jsxs)(Z.Fragment,{children:[l,p,m,h]}),t[20]=l,t[21]=p,t[22]=m,t[23]=h,t[24]=g):g=t[24],g}function lt(e){let t=(0,Y.c)(18),{form:n,onFormChange:r,headerEntries:i,onHeaderAdd:a,onHeaderRemove:o,onHeaderUpdate:s}=e,c;t[0]===r?c=t[1]:(c=e=>r({serverType:e}),t[0]=r,t[1]=c);let l;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,Z.jsxs)(W,{className:`grid w-full grid-cols-2`,children:[(0,Z.jsx)(fe,{value:`local`,children:`Local (stdio)`}),(0,Z.jsx)(fe,{value:`remote`,children:`Remote (HTTP/SSE)`})]}),t[2]=l):l=t[2];let u;t[3]!==n||t[4]!==r?(u=(0,Z.jsx)(R,{value:`local`,children:(0,Z.jsx)(nt,{form:n,onFormChange:r})}),t[3]=n,t[4]=r,t[5]=u):u=t[5];let d;t[6]!==n||t[7]!==i||t[8]!==r||t[9]!==a||t[10]!==o||t[11]!==s?(d=(0,Z.jsx)(R,{value:`remote`,children:(0,Z.jsx)(ct,{form:n,onFormChange:r,headerEntries:i,onHeaderAdd:a,onHeaderRemove:o,onHeaderUpdate:s})}),t[6]=n,t[7]=i,t[8]=r,t[9]=a,t[10]=o,t[11]=s,t[12]=d):d=t[12];let f;return t[13]!==n.serverType||t[14]!==c||t[15]!==u||t[16]!==d?(f=(0,Z.jsxs)(F,{value:n.serverType,onValueChange:c,className:`w-full pt-6`,children:[l,u,d]}),t[13]=n.serverType,t[14]=c,t[15]=u,t[16]=d,t[17]=f):f=t[17],f}function ut(e){let t=(0,Y.c)(5),{isEditing:n,busy:r,deleting:i,onDelete:a}=e;if(!n){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsx)(`div`,{}),t[0]=e):e=t[0],e}let o=i?`Removing...`:`Remove`,s;return t[1]!==r||t[2]!==a||t[3]!==o?(s=(0,Z.jsx)(g,{variant:`destructive`,onClick:a,disabled:r,children:o}),t[1]=r,t[2]=a,t[3]=o,t[4]=s):s=t[4],s}function dt(e){let t=(0,Y.c)(7),{busy:n,hasChanges:r,saving:i,isEditing:a,onSave:o}=e,s=n||!r,c;t[0]!==a||t[1]!==i?(c=qe(i,a),t[0]=a,t[1]=i,t[2]=c):c=t[2];let l;return t[3]!==o||t[4]!==s||t[5]!==c?(l=(0,Z.jsx)(g,{onClick:o,disabled:s,children:c}),t[3]=o,t[4]=s,t[5]=c,t[6]=l):l=t[6],l}function ft(e){let t=(0,Y.c)(14),{isEditing:n,busy:r,saving:i,deleting:a,hasChanges:o,onSave:s,onDelete:c}=e,l;t[0]!==r||t[1]!==a||t[2]!==n||t[3]!==c?(l=(0,Z.jsx)(ut,{isEditing:n,busy:r,deleting:a,onDelete:c}),t[0]=r,t[1]=a,t[2]=n,t[3]=c,t[4]=l):l=t[4];let u;t[5]!==r||t[6]!==o||t[7]!==n||t[8]!==s||t[9]!==i?(u=(0,Z.jsx)(dt,{busy:r,hasChanges:o,saving:i,isEditing:n,onSave:s}),t[5]=r,t[6]=o,t[7]=n,t[8]=s,t[9]=i,t[10]=u):u=t[10];let d;return t[11]!==l||t[12]!==u?(d=(0,Z.jsxs)(`div`,{className:`mt-6 border-t pt-4 flex items-center justify-between`,children:[l,u]}),t[11]=l,t[12]=u,t[13]=d):d=t[13],d}function pt(e){let t=(0,Y.c)(74),{projectPath:n,serverName:r,initialName:a,initialConfig:o,onBack:s}=e,c;t[0]!==o||t[1]!==a||t[2]!==s||t[3]!==n||t[4]!==r?(c={projectPath:n,serverName:r,initialName:a,initialConfig:o,onBack:s},t[0]=o,t[1]=a,t[2]=s,t[3]=n,t[4]=r,t[5]=c):c=t[5];let{form:l,patchForm:u,lists:d,addEntry:f,removeEntry:p,updateEntry:m,original:h,saving:g,deleting:_,error:v,loading:y,actions:b}=$e(c),x=!!r,S=g||_,C;t[6]!==l||t[7]!==x||t[8]!==d.env||t[9]!==d.header||t[10]!==h.snapshot?(C=We({isEditing:x,currentSnapshot:Oe(l.name.trim(),l.serverType,Ie(l,d.env,d.header)),originalSnapshot:h.snapshot,form:l,envEntries:d.env,headerEntries:d.header}),t[6]=l,t[7]=x,t[8]=d.env,t[9]=d.header,t[10]=h.snapshot,t[11]=C):C=t[11];let ee=C;if(y){let e;return t[12]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsx)(et,{}),t[12]=e):e=t[12],e}let w;t[13]!==l.name||t[14]!==x?(w=Ye(x,l.name),t[13]=l.name,t[14]=x,t[15]=w):w=t[15];let T;t[16]===w?T=t[17]:(T=(0,Z.jsx)(de,{...w,sticky:!0,className:`pr-10`}),t[16]=w,t[17]=T);let E;t[18]===u?E=t[19]:(E=e=>u({name:e}),t[18]=u,t[19]=E);let D;t[20]!==l.name||t[21]!==x||t[22]!==E?(D=(0,Z.jsx)(tt,{isEditing:x,name:l.name,onNameChange:E}),t[20]=l.name,t[21]=x,t[22]=E,t[23]=D):D=t[23];let O;t[24]===f?O=t[25]:(O=()=>f(`header`),t[24]=f,t[25]=O);let k;t[26]===p?k=t[27]:(k=e=>p(`header`,e),t[26]=p,t[27]=k);let A;t[28]===m?A=t[29]:(A=(e,t)=>m(`header`,e,t),t[28]=m,t[29]=A);let j;t[30]!==l||t[31]!==d.header||t[32]!==u||t[33]!==O||t[34]!==k||t[35]!==A?(j=(0,Z.jsx)(lt,{form:l,onFormChange:u,headerEntries:d.header,onHeaderAdd:O,onHeaderRemove:k,onHeaderUpdate:A}),t[30]=l,t[31]=d.header,t[32]=u,t[33]=O,t[34]=k,t[35]=A,t[36]=j):j=t[36];let M;t[37]===u?M=t[38]:(M=e=>u({defer:e}),t[37]=u,t[38]=M);let N;t[39]!==l.defer||t[40]!==M?(N=(0,Z.jsx)(st,{defer:l.defer,onDeferChange:M}),t[39]=l.defer,t[40]=M,t[41]=N):N=t[41];let P;t[42]===f?P=t[43]:(P=()=>f(`env`),t[42]=f,t[43]=P);let F;t[44]===p?F=t[45]:(F=e=>p(`env`,e),t[44]=p,t[45]=F);let I;t[46]===m?I=t[47]:(I=(e,t)=>m(`env`,e,t),t[46]=m,t[47]=I);let L;t[48]!==l.serverType||t[49]!==d.env||t[50]!==P||t[51]!==F||t[52]!==I?(L=(0,Z.jsx)(ot,{serverType:l.serverType,entries:d.env,onAdd:P,onRemove:F,onUpdate:I}),t[48]=l.serverType,t[49]=d.env,t[50]=P,t[51]=F,t[52]=I,t[53]=L):L=t[53];let R;t[54]===v?R=t[55]:(R=v&&(0,Z.jsx)(`p`,{className:i.error,children:v}),t[54]=v,t[55]=R);let z;t[56]!==b.handleDelete||t[57]!==b.handleSave||t[58]!==S||t[59]!==_||t[60]!==ee||t[61]!==x||t[62]!==g?(z=(0,Z.jsx)(ft,{isEditing:x,busy:S,saving:g,deleting:_,hasChanges:ee,onSave:b.handleSave,onDelete:b.handleDelete}),t[56]=b.handleDelete,t[57]=b.handleSave,t[58]=S,t[59]=_,t[60]=ee,t[61]=x,t[62]=g,t[63]=z):z=t[63];let B;t[64]!==j||t[65]!==N||t[66]!==L||t[67]!==R||t[68]!==z||t[69]!==D?(B=(0,Z.jsxs)(`div`,{children:[D,j,N,L,R,z]}),t[64]=j,t[65]=N,t[66]=L,t[67]=R,t[68]=z,t[69]=D,t[70]=B):B=t[70];let V;return t[71]!==B||t[72]!==T?(V=(0,Z.jsx)(ae,{children:(0,Z.jsxs)(ue,{children:[T,B]})}),t[71]=B,t[72]=T,t[73]=V):V=t[73],V}function mt(e){if(!e)return null;let t=new Date(e).getTime();if(Number.isNaN(t))return null;let n=Math.max(0,Math.round((Date.now()-t)/1e3));if(n<60)return`just now`;let r=Math.round(n/60);if(r<60)return`${r}m ago`;let i=Math.round(r/60);return i<24?`${i}h ago`:new Date(e).toLocaleDateString()}function ht(e){if(!e||e.state===`missing`||e.state===`stale`)return`Refresh to load tools`;if(e.state===`needs_auth`)return`Sign in required`;if(e.state===`error`)return e.error??`Could not load tools`;let t=e.tools.length,n=t===1?`1 tool`:`${t} tools`,r=mt(e.refreshedAt);return r?`${n} · refreshed ${r}`:n}function gt(e){let t=(0,Y.c)(69),{name:n,config:r,catalog:a,remote:l,authorized:u,oauthBusy:d,refreshing:f,onEdit:p,onRefresh:m,onDelete:_,onSignIn:v,onSignOut:y}=e,[b,w]=(0,X.useState)(!1),T;if(t[0]!==u||t[1]!==a||t[2]!==r.args||t[3]!==r.command||t[4]!==r.url||t[5]!==b||t[6]!==n||t[7]!==d||t[8]!==_||t[9]!==p||t[10]!==m||t[11]!==v||t[12]!==y||t[13]!==f||t[14]!==l){let e=a?.state===`ok`?a.tools.map(yt):[],E;t[16]!==r.args||t[17]!==r.command||t[18]!==r.url?(E=r.url?r.url:`${r.command??``} ${r.args?.join(` `)??``}`.trim(),t[16]=r.args,t[17]=r.command,t[18]=r.url,t[19]=E):E=t[19];let D=E,O;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(O=h(i.body,`truncate`),t[20]=O):O=t[20];let k;t[21]===n?k=t[22]:(k=(0,Z.jsx)(`div`,{className:O,children:n}),t[21]=n,t[22]=k);let A;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(A=h(i.compact,`truncate text-muted-foreground font-mono`),t[23]=A):A=t[23];let j;t[24]===D?j=t[25]:(j=(0,Z.jsx)(`div`,{className:A,children:D}),t[24]=D,t[25]=j);let M;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(M=h(i.caption,`truncate text-muted-foreground`),t[26]=M):M=t[26];let N;t[27]===a?N=t[28]:(N=ht(a),t[27]=a,t[28]=N);let P;t[29]===N?P=t[30]:(P=(0,Z.jsx)(`div`,{className:M,children:N}),t[29]=N,t[30]=P);let F;t[31]!==p||t[32]!==k||t[33]!==j||t[34]!==P?(F=(0,Z.jsxs)(`button`,{type:`button`,onClick:p,className:`min-w-0 text-left`,children:[k,j,P]}),t[31]=p,t[32]=k,t[33]=j,t[34]=P,t[35]=F):F=t[35];let I;t[36]!==u||t[37]!==d||t[38]!==v||t[39]!==y||t[40]!==l?(I=l&&(0,Z.jsx)(g,{type:`button`,variant:u?`outline`:`secondary`,size:`sm`,disabled:d,onClick:()=>{u?y():v()},children:d?`Working…`:u?`Sign out`:`Sign in`}),t[36]=u,t[37]=d,t[38]=v,t[39]=y,t[40]=l,t[41]=I):I=t[41];let L=`Refresh ${n} tools`,R=f&&`animate-spin`,z;t[42]===R?z=t[43]:(z=h(`h-4 w-4`,R),t[42]=R,t[43]=z);let B;t[44]===z?B=t[45]:(B=(0,Z.jsx)(o,{className:z}),t[44]=z,t[45]=B);let V;t[46]!==m||t[47]!==f||t[48]!==L||t[49]!==B?(V=(0,Z.jsx)(x,{asChild:!0,children:(0,Z.jsx)(g,{type:`button`,variant:`ghost`,size:`icon-sm`,disabled:f,onClick:m,"aria-label":L,children:B})}),t[46]=m,t[47]=f,t[48]=L,t[49]=B,t[50]=V):V=t[50];let te;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(te=(0,Z.jsx)(S,{children:`Refresh tools`}),t[51]=te):te=t[51];let H;t[52]===V?H=t[53]:(H=(0,Z.jsx)(C,{children:(0,Z.jsxs)(ee,{children:[V,te]})}),t[52]=V,t[53]=H);let ne=e.length>0&&(0,Z.jsx)(g,{type:`button`,variant:`ghost`,size:`icon-sm`,"aria-expanded":b,"aria-label":b?`Hide tools`:`Show tools`,onClick:()=>w(vt),children:(0,Z.jsx)(s,{className:h(`h-4 w-4 transition-transform`,b&&`rotate-180`)})}),U;t[54]!==I||t[55]!==H||t[56]!==ne?(U=(0,Z.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[I,H,ne]}),t[54]=I,t[55]=H,t[56]=ne,t[57]=U):U=t[57];let W=`Delete ${n}`,re;t[58]===Symbol.for(`react.memo_cache_sentinel`)?(re=(0,Z.jsx)(c,{className:`h-4 w-4`}),t[58]=re):re=t[58];let G;t[59]!==_||t[60]!==W?(G=(0,Z.jsx)(x,{asChild:!0,children:(0,Z.jsx)(g,{type:`button`,variant:`ghost`,size:`icon-sm`,className:`shrink-0 items-center justify-center text-muted-foreground opacity-0 pointer-events-none can-hover:group-hover:opacity-100 can-hover:group-hover:pointer-events-auto can-hover:hover:bg-destructive can-hover:hover:text-destructive-foreground transition-[opacity,color,background-color]`,onClick:_,"aria-label":W,children:re})}),t[59]=_,t[60]=W,t[61]=G):G=t[61];let ie;t[62]===Symbol.for(`react.memo_cache_sentinel`)?(ie=(0,Z.jsx)(S,{children:`Remove this MCP server from the project`}),t[62]=ie):ie=t[62];let K;t[63]===G?K=t[64]:(K=(0,Z.jsx)(C,{children:(0,Z.jsxs)(ee,{children:[G,ie]})}),t[63]=G,t[64]=K);let q;t[65]!==F||t[66]!==U||t[67]!==K?(q=(0,Z.jsxs)(`div`,{className:`grid min-h-13 grid-cols-[minmax(0,1fr)_auto_1.75rem] items-center gap-3`,children:[F,U,K]}),t[65]=F,t[66]=U,t[67]=K,t[68]=q):q=t[68],T=(0,Z.jsxs)(`div`,{className:`group px-3 py-3 hover:bg-muted/30`,children:[q,b&&e.length>0&&(0,Z.jsx)(`ul`,{className:h(i.caption,`mt-2 space-y-1 pl-1 text-muted-foreground`),children:e.map(_t)})]}),t[0]=u,t[1]=a,t[2]=r.args,t[3]=r.command,t[4]=r.url,t[5]=b,t[6]=n,t[7]=d,t[8]=_,t[9]=p,t[10]=m,t[11]=v,t[12]=y,t[13]=f,t[14]=l,t[15]=T}else T=t[15];return T}function _t(e){return(0,Z.jsx)(`li`,{className:`font-mono truncate`,children:e},e)}function vt(e){return!e}function yt(e){return e.name}var bt=`https://tarsk.io/skills/mcp/`;function xt(e){return e.name.toLowerCase().replace(/\s+/g,`-`)}function St(e){return typeof e.url==`string`&&e.url.trim().length>0}function Ct(){let e=a(e=>e.selectedProjectId),t=a(e=>e.projects).find(t=>t.projectId===e)?.projectPath,{installedServers:n,catalog:r,loadingConfig:c,loadInstalledServers:f}=q(t),{popularServers:m,loadingPopular:A}=k(),{openChatDockPanel:F}=O(),{setPendingExplorerPath:L,triggerExplorerRefresh:R}=D(),[V,U]=(0,X.useState)(!1),[W,K]=(0,X.useState)(null),[ae,oe]=(0,X.useState)(null),[le,ue]=(0,X.useState)(null),[J,fe]=(0,X.useState)(!1),[_e,Y]=(0,X.useState)({}),[ve,ye]=(0,X.useState)(null),[be,Q]=(0,X.useState)(null),$=(0,X.useCallback)(async()=>{if(!t){Y({});return}let e=n.filter(e=>St(e.config));if(e.length===0){Y({});return}let r=await Promise.all(e.map(async e=>{try{let n=await y(t,e.name);return[e.name,n.authorized]}catch{return[e.name,!1]}}));Y(Object.fromEntries(r))},[t,n]);(0,X.useEffect)(()=>{$()},[$]);let xe=(0,X.useCallback)(async e=>{if(t){fe(!0);try{await N(t,e),await f(),R(),w({title:`MCP server removed`,description:e}),ue(null)}catch(e){w({title:`Error`,description:e instanceof Error?e.message:`Failed to remove server`,variant:`destructive`})}finally{fe(!1)}}},[t,f,R]),Se=(0,X.useCallback)(async e=>{if(t){ye(e);try{let n=await v(t,e);await $(),await f(),w({title:`Signed in`,description:n.catalog?`${e} · ${M(n.catalog)}`:`Connected to ${e}`})}catch(e){w({title:`Sign in failed`,description:e instanceof Error?e.message:`OAuth authorization failed`,variant:`destructive`})}finally{ye(null)}}},[t,$,f]),Ce=(0,X.useCallback)(async e=>{if(t){ye(e);try{await b(t,e),await $(),await f(),w({title:`Signed out`,description:e})}catch(e){w({title:`Sign out failed`,description:e instanceof Error?e.message:`Failed to revoke OAuth credentials`,variant:`destructive`})}finally{ye(null)}}},[t,$,f]),we=(0,X.useCallback)(async e=>{if(t){Q(e??`all`);try{let n=await te(t,e);await f();let r=Object.values(n.catalog),[i]=r;if(i)w({title:`Tools refreshed`,description:`${i.serverName} · ${M(i)}`});else{let e=r.filter(e=>e.state===`ok`).length;w({title:`Tools refreshed`,description:`${e}/${r.length} servers loaded`})}}catch(e){w({title:`Refresh failed`,description:e instanceof Error?e.message:`Could not refresh MCP tools`,variant:`destructive`})}finally{Q(null)}}},[t,f]),Te=(0,X.useCallback)(()=>{L(`.agents/mcp.json`),F(`explorer`)},[L,F]),Ee=(0,X.useCallback)(async e=>{if(!t)return;let r=xt(e);if(!n.some(t=>t.name===r||t.name===e.id)){if(e.url!==void 0){if(!e.url.trim()){K({name:r,config:{url:``,transport:e.transport??`sse`,...Object.keys(e.env??{}).length>0?{env:e.env}:{}}}),U(!0);return}try{let n=await se(t,r,{url:e.url,transport:e.transport??`sse`,...Object.keys(e.env??{}).length>0?{env:e.env}:{}});await f(),R(),w({title:`MCP server installed`,description:`${e.name} · ${M(n.catalog)}`})}catch(e){w({title:`Error`,description:e instanceof Error?e.message:`Failed to install server`,variant:`destructive`})}return}if(!e.command){w({title:`Error`,description:`This server is missing install configuration.`,variant:`destructive`});return}try{let n=await se(t,r,{command:e.command,args:e.args??[],...Object.keys(e.env??{}).length>0?{env:e.env}:{}});await f(),R(),w({title:`MCP server installed`,description:`${e.name} · ${M(n.catalog)}`})}catch(e){w({title:`Error`,description:e instanceof Error?e.message:`Failed to install server`,variant:`destructive`})}}},[t,n,f,R]),De=he(e,[c,A]);return e?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(re,{loading:De,children:(0,Z.jsxs)(B,{className:`shrink-0`,children:[(0,Z.jsx)(de,{title:`Installed MCP Servers`,description:`MCP servers configured for this project.`,action:(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(g,{variant:`ghost`,onClick:Te,children:`Config`}),n.length>=2&&(0,Z.jsxs)(g,{variant:`ghost`,className:`gap-1`,disabled:be!==null,onClick:()=>void we(),children:[(0,Z.jsx)(o,{className:h(`h-4 w-4`,be===`all`&&`animate-spin`)}),`Refresh all`]}),(0,Z.jsxs)(ne,{children:[(0,Z.jsx)(G,{asChild:!0,children:(0,Z.jsxs)(g,{className:`gap-1`,children:[`Add Server`,(0,Z.jsx)(s,{className:`h-4 w-4 opacity-70`})]})}),(0,Z.jsxs)(I,{align:`end`,className:`w-56`,children:[(0,Z.jsxs)(z,{className:h(i.body,`gap-2`),onSelect:()=>U(!0),children:[(0,Z.jsx)(u,{className:`h-4 w-4 shrink-0`}),`Manual Entry`]}),(0,Z.jsxs)(j,{children:[(0,Z.jsxs)(P,{className:h(i.body,`gap-2`),children:[(0,Z.jsx)(l,{className:`h-4 w-4 shrink-0`}),`Popular`]}),(0,Z.jsx)(ie,{className:`w-80 max-h-80 overflow-y-auto`,children:A?(0,Z.jsx)(z,{disabled:!0,className:i.bodyMuted,children:`Loading…`}):m.length===0?(0,Z.jsx)(z,{disabled:!0,className:i.bodyMuted,children:`No available servers`}):[...m].sort((e,t)=>e.name.localeCompare(t.name)).map(e=>{let t=xt(e),r=n.some(n=>n.name===t||n.name===e.id);return(0,Z.jsx)(C,{children:(0,Z.jsxs)(ee,{children:[(0,Z.jsx)(x,{asChild:!0,children:(0,Z.jsxs)(z,{className:h(i.body,`gap-2`,r&&`opacity-50 cursor-not-allowed`),onSelect:()=>{r||Ee(e)},children:[(0,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.name}),r&&(0,Z.jsx)(d,{className:`h-4 w-4 shrink-0 text-muted-foreground`})]})}),(0,Z.jsx)(S,{side:`right`,className:`max-w-64`,children:e.description})]})},e.id)})})]}),(0,Z.jsx)(pe,{}),(0,Z.jsxs)(z,{className:h(i.body,`gap-2`),onSelect:()=>void _(bt),children:[(0,Z.jsx)(p,{className:`h-4 w-4 shrink-0`}),`Marketplace`]})]})]})]}),sticky:!1}),(0,Z.jsx)(ce,{className:`pt-6`,children:n.length===0?(0,Z.jsx)(ge,{icon:l,title:`Connect your agent to tools, APIs, and data sources`,bordered:!1}):(0,Z.jsx)(`div`,{className:`divide-y divide-table-border`,children:n.map(e=>(0,Z.jsx)(gt,{name:e.name,config:e.config,catalog:r[e.name],remote:St(e.config),authorized:_e[e.name]===!0,oauthBusy:ve===e.name,refreshing:be===e.name||be===`all`,onEdit:()=>oe(e.name),onRefresh:()=>void we(e.name),onDelete:()=>ue(e.name),onSignIn:()=>void Se(e.name),onSignOut:()=>void Ce(e.name)},e.name))})})]})}),(0,Z.jsx)(E,{open:V,onOpenChange:e=>{U(e),e||K(null)},children:(0,Z.jsx)(T,{className:`max-w-2xl max-h-[90vh] overflow-y-auto p-0`,children:(0,Z.jsx)(pt,{projectPath:t,initialName:W?.name,initialConfig:W?.config,onBack:()=>{U(!1),K(null),f(),R()}})})}),(0,Z.jsx)(E,{open:ae!==null,onOpenChange:e=>{e||oe(null)},children:(0,Z.jsx)(T,{className:`max-w-2xl max-h-[90vh] overflow-y-auto p-0`,children:(0,Z.jsx)(pt,{projectPath:t,serverName:ae??void 0,onBack:()=>{oe(null),f(),R()}})})}),(0,Z.jsx)(me,{open:le!==null,onOpenChange:e=>!e&&ue(null),title:`Delete MCP Server`,description:`Are you sure you want to delete the server "${le}"? This action cannot be undone.`,onConfirm:()=>{le&&xe(le)},confirming:J})]}):(0,Z.jsx)(H,{children:`Select a project to manage MCP servers.`})}export{Ct as SettingsMCPServersView,Ct as default};
|
|
@@ -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{ot as i}from"./dist-DjiNKpTV.js";import{Q as a,n as o}from"./store-CHF6tOp2.js";import{n as s,t as c}from"./utils-CT-Dw22R.js";import{t as l}from"./button-B6HDsfd5.js";import{B as u,L as d,R as f,U as p,V as m,kt as h}from"./api-D1GxdEEp.js";import{r as g}from"./tooltip-BtJG5fZl.js";import{n as _}from"./async-loading-fallback-D2X0o4Qa.js";import{t as v}from"./suspense-resource-DnYnmTbs.js";import{t as y}from"./use-suspense-resource-Dkz6ddFN.js";import{Dt as b,I as x,L as S,Mn as C,On as w,Tn as ee,bn as T,hn as E,kn as D,o as O,xn as te}from"./index-BOB3ZUQs.js";import{a as k,i as A,n as j,r as M,t as N}from"./table-MUx4ZxvS.js";import{n as P,t as ne}from"./toggle-group-DMR7z3pz.js";import{n as F,t as I}from"./commit-method-fields-BihSf23f.js";import{t as L}from"./async-error-boundary-DNJqC4BV.js";import{t as re}from"./sorting-DqwxPMRN.js";import{o as ie,s as R}from"./settings-list-BpPbGcpS.js";import{t as ae}from"./use-deferred-search-Dgxosq55.js";import{n as oe,r as z,t as B}from"./model-list-controls-CpQjn6i7.js";var V=e(n(),1),H=t();function U(e){return`settings-models:coding:${e}`}function W(e){return`settings-models:image:${e}`}async function G(){let e=(await h()).filter(e=>e.apiKey),t=await p(`coding`),n={},r={};for(let i of e){let e=t[i.slug];n[i.slug]=e?.models??[],r[i.slug]=new Set(e?.enabledModelIds??[])}return{providers:e,allModels:n,enabledModelIds:r}}async function K(e){let t=e.filter(e=>e.name.toLowerCase()===`openrouter`),n=await p(`image`),r={},i={};for(let e of t){let t=n[e.slug];r[e.slug]=t?.models??[],i[e.slug]=new Set(t?.enabledModelIds??[])}return{allImageModels:r,enabledImageModelIds:i}}var q=r(),J=`table-fixed`,se=`h-9`,ce=c(i.body,`py-1.5`),le=`w-10 py-1.5`,ue=`w-24 py-1.5 text-right`,de=c(i.body,`w-20 py-1.5 text-right text-muted-foreground tabular-nums`),fe=c(i.body,`w-48 py-1.5 text-right text-muted-foreground whitespace-nowrap tabular-nums`),pe=`h-9 w-24 bg-transparent py-2 text-right`,me=`h-9 w-20 bg-transparent py-2 text-right`,he=`h-9 w-48 bg-transparent py-2 text-right`;function Y(e){return!e||(e.prompt??0)===0&&(e.completion??0)===0?``:`$${s(e.prompt??0)} in | $${s(e.completion??0)} out`}function ge(e){return e==null||!Number.isFinite(e)||e<=0?``:e>=100?Math.round(e).toLocaleString():e.toFixed(1)}function X(e){let t=(0,H.c)(9),{showIntelligence:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=c(`w-full caption-bottom`,J,i.body),t[0]=r):r=t[0];let a,o;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,q.jsx)(A,{className:`h-9 w-10 bg-transparent py-2`}),o=(0,q.jsx)(A,{className:`h-9 bg-transparent py-2`,children:`Model`}),t[1]=a,t[2]=o):(a=t[1],o=t[2]);let s;t[3]===n?s=t[4]:(s=n?(0,q.jsx)(A,{className:pe,children:`Intelligence`}):null,t[3]=n,t[4]=s);let l,u;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,q.jsx)(A,{className:me,children:`TPS`}),u=(0,q.jsx)(A,{className:he,children:`Pricing`}),t[5]=l,t[6]=u):(l=t[5],u=t[6]);let d;return t[7]===s?d=t[8]:(d=(0,q.jsx)(`table`,{className:r,children:(0,q.jsx)(`thead`,{className:`[&_tr]:border-b [&_tr]:border-table-border`,children:(0,q.jsxs)(`tr`,{children:[a,o,s,l,u]})})}),t[7]=s,t[8]=d),d}function Z(e){let t=(0,H.c)(15),{models:n,enabledIds:r,checkboxIdPrefix:a,showIntelligence:o,getModelDisplayName:s,onToggleModel:l}=e,u;if(t[0]!==a||t[1]!==r||t[2]!==s||t[3]!==n||t[4]!==l||t[5]!==o){let e;t[7]!==a||t[8]!==r||t[9]!==s||t[10]!==l||t[11]!==o?(e=e=>{let t=`${a}${e.id}`;return(0,q.jsxs)(k,{className:se,children:[(0,q.jsx)(M,{className:le,children:(0,q.jsx)(O,{id:t,checked:r.has(e.id),onCheckedChange:()=>l(e.id),className:`mt-0`})}),(0,q.jsx)(M,{className:ce,children:(0,q.jsx)(`label`,{htmlFor:t,className:c(i.body,`cursor-pointer truncate peer-disabled:cursor-not-allowed peer-disabled:opacity-70`),children:s(e)})}),o?(0,q.jsx)(M,{className:ue,children:(0,q.jsx)(`div`,{className:`flex justify-end`,children:(0,q.jsx)(z,{codingIndex:e.coding_index,modelName:s(e)})})}):null,(0,q.jsx)(M,{className:de,children:ge(e.avgTPS)}),(0,q.jsx)(M,{className:fe,children:Y(e.pricing)})]},e.id)},t[7]=a,t[8]=r,t[9]=s,t[10]=l,t[11]=o,t[12]=e):e=t[12],u=n.map(e),t[0]=a,t[1]=r,t[2]=s,t[3]=n,t[4]=l,t[5]=o,t[6]=u}else u=t[6];let d;return t[13]===u?d=t[14]:(d=(0,q.jsx)(N,{className:J,children:(0,q.jsx)(j,{children:u})}),t[13]=u,t[14]=d),d}function Q(e){let t=(0,H.c)(25),{providerName:n,providerSlug:r,action:a,tableHeader:o,children:s}=e,l;t[0]!==n||t[1]!==r?(l=(0,q.jsx)(b,{provider:{name:n,slug:r}}),t[0]=n,t[1]=r,t[2]=l):l=t[2];let u;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(u=c(i.pageTitle,`truncate`),t[3]=u):u=t[3];let d;t[4]===n?d=t[5]:(d=(0,q.jsx)(`h2`,{className:u,children:n}),t[4]=n,t[5]=d);let f;t[6]!==l||t[7]!==d?(f=(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[l,d]}),t[6]=l,t[7]=d,t[8]=f):f=t[8];let p;t[9]===a?p=t[10]:(p=a?(0,q.jsx)(`div`,{className:`electrobun-webkit-app-region-no-drag shrink-0`,children:a}):null,t[9]=a,t[10]=p);let m;t[11]!==f||t[12]!==p?(m=(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-divider px-6 py-4 electrobun-webkit-app-region-drag`,children:[f,p]}),t[11]=f,t[12]=p,t[13]=m):m=t[13];let h;t[14]===o?h=t[15]:(h=o?(0,q.jsx)(`div`,{className:`electrobun-webkit-app-region-no-drag px-6 pb-2 pt-4`,children:o}):null,t[14]=o,t[15]=h);let g=o?`pt-0`:`pt-6`,_;t[16]===g?_=t[17]:(_=c(`px-6 pb-6`,g),t[16]=g,t[17]=_);let v;t[18]!==s||t[19]!==_?(v=(0,q.jsx)(`div`,{className:_,children:s}),t[18]=s,t[19]=_,t[20]=v):v=t[20];let y;return t[21]!==v||t[22]!==m||t[23]!==h?(y=(0,q.jsxs)(C,{className:`shrink-0`,children:[m,h,v]}),t[21]=v,t[22]=m,t[23]=h,t[24]=y):y=t[24],y}function _e({providers:e,globalSearchQuery:t,modelSortBy:n,filterAndSortModels:r,getModelDisplayName:i,onSaveStatus:s}){let c=o(),l=y(W(0),()=>K(e)),[f]=(0,V.useState)(l.allImageModels),[p,m]=(0,V.useState)(l.enabledImageModelIds);async function h(e,t){try{p[e]?.has(t)?(await d(e,t),m(n=>{let r=new Set(n[e]??[]);return r.delete(t),{...n,[e]:r}})):(await u(e,t),m(n=>({...n,[e]:new Set([...n[e]||[],t])}))),c({type:a.ConfigUpdated}),s(`Model preferences saved successfully`)}catch(e){s(e instanceof Error?e.message:`Failed to save model changes`)}}async function _(e,t){let n=f[e],r=p[e];if(n)for(let i of n)r?.has(i.id)!==t&&await h(e,i.id)}return(0,q.jsx)(q.Fragment,{children:e.filter(e=>e.name.toLowerCase()===`openrouter`).map(e=>{let a=f[e.slug]||[],o=p[e.slug]||new Set,s=r(a,o,n);return s.length===0&&t?null:(0,q.jsx)(Q,{providerName:e.name,providerSlug:e.slug,action:s.length>0?(0,q.jsx)(B,{id:`select-all-image-${e.slug}`,checked:s.every(e=>o.has(e.id)),onChange:t=>void _(e.slug,t)}):null,tableHeader:s.length>0?(0,q.jsx)(X,{showIntelligence:!1}):void 0,children:s.length===0?(0,q.jsx)(R,{message:t?`No models matching your search.`:`No image models available for this provider.`}):(0,q.jsx)(g,{children:(0,q.jsx)(Z,{models:s,enabledIds:o,checkboxIdPrefix:`image-`,showIntelligence:!1,getModelDisplayName:i,onToggleModel:t=>void h(e.slug,t)})})},e.slug)})})}function ve({loadVersion:e}){let t=o(),n=y(U(e),()=>G()),r=n.providers,[s]=(0,V.useState)(n.allModels),[l,u]=(0,V.useState)(n.enabledModelIds),[d,p]=(0,V.useState)(`coding`),{query:h,setQuery:v,deferredQuery:b}=ae(),[O,k]=(0,V.useState)(`alphabetical`),[A,j]=(0,V.useState)(``),M=e=>E(e.id),N=async(e,n)=>{try{l[e]?.has(n)?(await f(e,n),u(t=>{let r=new Set(t[e]??[]);return r.delete(n),{...t,[e]:r}})):(await m(e,n),u(t=>({...t,[e]:new Set([...t[e]||[],n])}))),t({type:a.ConfigUpdated}),j(`Model preferences saved successfully`),setTimeout(()=>j(``),3e3)}catch(e){j(e instanceof Error?e.message:`Failed to save model changes`)}},L=async(e,t)=>{let n=s[e],r=l[e];if(n)for(let i of n)r?.has(i.id)!==t&&await N(e,i.id)},z=(e,t,n)=>re({models:e,query:b,sortBy:n,getDisplayName:M,getPriority:e=>+!t.has(e.id)});if(r.length===0)return(0,q.jsx)(w,{title:`No providers configured`,children:`Configure a provider with an API key to view available models.`});let H=r.some(e=>e.name.toLowerCase()===`openrouter`);return(0,q.jsx)(ee,{loading:!1,children:(0,q.jsxs)(x,{value:d,className:`flex flex-col gap-2.5`,children:[(0,q.jsxs)(C,{className:`shrink-0`,children:[(0,q.jsx)(te,{title:`Models`,description:`View and manage available models from your configured providers.`,action:(0,q.jsx)(ie,{placeholder:`Search`,value:h,onChange:v,className:`mb-0 w-64`}),sticky:!1}),(0,q.jsx)(D,{className:`max-w-none pt-6`,children:(0,q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[H?(0,q.jsxs)(ne,{type:`single`,value:d,onValueChange:e=>{(e===`coding`||e===`image`)&&(p(e),v(``))},"aria-label":`Model type`,className:c(I,`shrink-0`),children:[(0,q.jsx)(P,{value:`coding`,"aria-label":`Coding`,className:c(i.body,F),children:`Coding`}),(0,q.jsx)(P,{value:`image`,"aria-label":`Image`,className:c(i.body,F),children:`Image`})]}):null,A?(0,q.jsx)(T,{variant:A.includes(`error`)||A.includes(`Failed`)?`error`:`success`,className:`mb-0 shrink-0`,children:A}):null,(0,q.jsx)(`div`,{className:`ml-auto shrink-0`,children:(0,q.jsx)(oe,{sortBy:O,showCodingIndex:d===`coding`,showIntelligenceByPrice:d===`coding`,onSortByChange:k})})]})})]}),(0,q.jsx)(S,{value:`coding`,className:`mt-0 flex flex-col gap-2.5`,children:r.map(e=>{let t=s[e.slug]||[],n=l[e.slug]||new Set,r=z(t,n,O);return r.length===0&&h?null:(0,q.jsx)(Q,{providerName:e.name,providerSlug:e.slug,action:r.length>0?(0,q.jsx)(B,{id:`select-all-${e.slug}`,checked:r.every(e=>n.has(e.id)),onChange:t=>void L(e.slug,t)}):null,tableHeader:r.length>0?(0,q.jsx)(X,{showIntelligence:O===`coding-index`||O===`intelligence-by-price`}):void 0,children:r.length===0?(0,q.jsx)(R,{message:h?`No models matching your search.`:`No models available for this provider.`}):(0,q.jsx)(g,{children:(0,q.jsx)(Z,{models:r,enabledIds:n,checkboxIdPrefix:``,showIntelligence:O===`coding-index`||O===`intelligence-by-price`,getModelDisplayName:M,onToggleModel:t=>void N(e.slug,t)})})},e.slug)})}),(0,q.jsx)(S,{value:`image`,className:`mt-0 flex flex-col gap-2.5`,children:d===`image`?(0,q.jsx)(V.Suspense,{fallback:(0,q.jsx)(_,{className:`py-12`,size:`sm`}),children:(0,q.jsx)(_e,{providers:r,globalSearchQuery:h,modelSortBy:O,filterAndSortModels:z,getModelDisplayName:M,onSaveStatus:e=>{j(e),e.includes(`Failed`)||setTimeout(()=>j(``),3e3)}})}):null})]})})}function $(){let e=(0,H.c)(8),[t,n]=(0,V.useState)(0),r;e[0]===t?r=e[1]:(r=function(){v(U(t)),n(be)},e[0]=t,e[1]=r);let i=r,a;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,q.jsx)(_,{label:`Loading models...`,size:`lg`}),e[2]=a):a=e[2];let o;e[3]===t?o=e[4]:(o=(0,q.jsx)(V.Suspense,{fallback:a,children:(0,q.jsx)(ve,{loadVersion:t},t)}),e[3]=t,e[4]=o);let s;return e[5]!==i||e[6]!==o?(s=(0,q.jsx)(`div`,{className:`h-full min-h-0`,children:(0,q.jsx)(L,{fallbackTitle:`Failed to load models`,onRetry:i,renderFallback:ye,children:o})}),e[5]=i,e[6]=o,e[7]=s):s=e[7],s}function ye(e,t){return(0,q.jsx)(w,{title:`Failed to load models`,action:(0,q.jsx)(l,{variant:`outline`,onClick:t,children:`Retry`}),children:e.message})}function be(e){return e+1}export{$ as SettingsModelsView,$ as default};
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{o as t,t as n}from"./react-vendor-Ee0-5T4I.js";import{ot as r}from"./dist-DjiNKpTV.js";import{J as i}from"./dist-CNOCRPxn.js";import{t as a}from"./utils-CT-Dw22R.js";import{t as o}from"./button-B6HDsfd5.js";import{Xn as s,bn as c,rr as l}from"./api-D1GxdEEp.js";import{t as u}from"./use-toast-xpb5jNtN.js";import{r as d,t as f}from"./dialog--0foS3aw.js";import{It as p,Mn as m,On as h,Tn as g,X as _,bn as v,jn as y,kn as b,vn as x,xn as S,yn as C}from"./index-BOB3ZUQs.js";import{t as w}from"./delete-confirm-dialog-3DX1u0Dg.js";import{t as T}from"./use-settings-page-loading-BTySlInF.js";import{a as E,i as D,o as O,r as k}from"./settings-list-BpPbGcpS.js";import{t as A}from"./use-deferred-search-Dgxosq55.js";import{t as j}from"./switch-P5m18oUl.js";import{a as M,i as N,n as P,r as F,t as I}from"./mcp-server-card-DFT7uyRh.js";import{t as L}from"./use-installed-ai-files-CJr_PVcY.js";var R=e(t(),1),z=n();function B({threadId:e,onRuleCreated:t}){let[n,i]=(0,R.useState)(``),[o,s]=(0,R.useState)(``),[l,d]=(0,R.useState)(!1),[f,m]=(0,R.useState)(!1),g=N(n),v=F(g),b=async()=>{if(!(!v||!e)){m(!0);try{let n=`---
|
|
2
|
-
description: ${o.trim()}
|
|
3
|
-
alwaysApply: ${l}
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
Place your rule instructions here as markdown.
|
|
7
|
-
`;await c(e,`.agents/rules/${g}.md`,n),u({title:`Rule created`,description:`Rule '${g}' was created successfully.`}),i(``),s(``),d(!1),t?.(g)}catch(e){u({title:`Error`,description:e instanceof Error?e.message:`Failed to create rule`,variant:`destructive`})}finally{m(!1)}}};return e?(0,z.jsx)(y,{children:(0,z.jsxs)(x,{children:[(0,z.jsx)(S,{title:`Add Rule`,description:`Saved as a .md file in .agents/rules.`,sticky:!0,className:`pr-10`}),(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(C,{title:`Rule Name`,controlLayout:`stack`,className:`pt-6`,children:[(0,z.jsx)(p,{id:`ruleName`,value:n,onChange:e=>i(e.target.value),placeholder:`e.g. Code Style Guide`,disabled:f}),n?(0,z.jsxs)(`p`,{className:a(r.caption,`mt-2`),children:[`File name: `,(0,z.jsxs)(`span`,{className:`font-mono`,children:[g||`...`,`.md`]})]}):null]}),(0,z.jsx)(C,{title:`Description`,controlLayout:`stack`,className:`pt-6`,children:(0,z.jsx)(_,{id:`ruleDescription`,value:o,onChange:e=>s(e.target.value),placeholder:`Describe when Tarsk should apply this rule...`,className:`resize-none min-h-[120px]`,disabled:f})}),(0,z.jsx)(C,{title:`Always Apply`,description:l?`This rule will be automatically added to context for all conversations.`:`Only the rule description will be added to context, allowing the agent to read the rule file when needed.`,controlLayout:`stack`,className:`pt-6`,action:(0,z.jsx)(j,{id:`alwaysApply`,checked:l,onCheckedChange:d,disabled:f})}),(0,z.jsx)(M,{onContinue:()=>void b(),disabled:!v||!o.trim(),creating:f})]})]})}):(0,z.jsx)(h,{title:`No thread selected`,children:`Please select a thread to add a rule.`})}function V(e){let t=[];for(let n of e)n.type===`file`&&n.path.startsWith(`.agents/rules/`)&&t.push(n),n.children&&n.children.length>0&&t.push(...V(n.children));return t}function H(){let{selectedProjectId:e,selectedThreadId:t,items:n,loading:p,deleteConfirm:_,setDeleteConfirm:y,deleting:x,installedFilePaths:C,setInstalledFilePaths:j,loadItems:M,handleDelete:N,handleOpenInExplorer:F,triggerExplorerRefresh:H}=L({findItems:V,removedToastTitle:`Rule removed`}),[U,W]=(0,R.useState)(!1),[G,K]=(0,R.useState)([]),[q,J]=(0,R.useState)(!0),{query:Y,setQuery:X,deferredQuery:Z}=A();(0,R.useEffect)(()=>{J(!0),s().then(K).catch(()=>K([])).finally(()=>J(!1))},[]);let Q=T(e?`${e}:${t??``}`:null,[p,q]);async function ee(e){let n=`.agents/rules/${e.name}.md`;if(!(!t||C.has(n)))try{e.gitHubRepo&&e.gitHubFolder?await l(t,e.gitHubRepo,e.gitHubFolder,`.agents/rules`):await c(t,n,[`---`,`description: ${e.description}`,`alwaysApply: ${e.alwaysApply??!1}`,`---`,``,e.content].join(`
|
|
8
|
-
`)),j(e=>new Set(e).add(n)),H(),M(),u({title:`Rule installed`,description:e.name})}catch(e){u({title:`Error`,description:e instanceof Error?e.message:`Failed to install rule`,variant:`destructive`})}}let $=(0,R.useMemo)(()=>Z.trim()?G.filter(e=>e.name.toLowerCase().includes(Z.toLowerCase())||e.description.toLowerCase().includes(Z.toLowerCase())):G,[G,Z]);return e?(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(g,{loading:Q,children:[(0,z.jsxs)(m,{className:`shrink-0`,children:[(0,z.jsx)(S,{title:`Installed Rules`,description:`Coding standards and project-wide guidelines for this project.`,action:(0,z.jsx)(o,{onClick:()=>W(!0),disabled:!t,children:`Add Rule`}),sticky:!1}),(0,z.jsxs)(b,{className:`pt-6`,children:[!t&&(0,z.jsx)(v,{children:`Select a thread to add or install rules.`}),(0,z.jsx)(k,{showHeader:!1,compact:!0,loading:!1,items:n,emptyState:{icon:i,title:`No rules installed`,description:`Add rules to enforce coding standards and project conventions.`},getKey:e=>e.id,renderContent:e=>(0,z.jsx)(`span`,{className:a(r.body,`truncate text-left`),children:e.name.replace(/\.mdc$/i,``)}),onItemClick:e=>F(e.path),itemClickLabel:e=>`Open ${e.name.replace(/\.mdc$/i,``)} in Files`,onDelete:y,deleteAriaLabel:e=>`Delete ${e.name.replace(/\.mdc$/i,``)}`,deleteTooltip:`Remove this rule from the project`})]})]}),(0,z.jsxs)(m,{className:`shrink-0`,children:[(0,z.jsx)(S,{title:`Available Rules`,description:`Browse and install rules from the catalog.`,action:(0,z.jsx)(O,{placeholder:`Search`,value:Y,onChange:X,className:`mb-0 w-64`}),sticky:!1}),(0,z.jsx)(b,{className:`pt-6`,children:$.length===0?(0,z.jsx)(E,{searchQuery:Y,emptyLabel:`No available rules found.`}):(0,z.jsx)(D,{children:$.map(e=>{let t=`.agents/rules/${e.name}.md`,n=C.has(t);return(0,z.jsx)(I,{className:`bg-background hover:bg-background`,name:P(e.name),description:e.description,installed:n,onClick:()=>{n||ee(e)},showInstalledControls:!1},e.id)})})})]})]}),(0,z.jsx)(f,{open:U,onOpenChange:W,children:(0,z.jsx)(d,{className:`max-w-2xl max-h-[90vh] overflow-y-auto p-0`,children:(0,z.jsx)(B,{threadId:t,onRuleCreated:()=>{W(!1),M(),H()}})})}),(0,z.jsx)(w,{open:_!==null,onOpenChange:e=>!e&&y(null),title:`Delete Rule`,description:`Are you sure you want to delete the rule "${_?.name}"? This action cannot be undone.`,onConfirm:()=>{_&&N(_)},confirming:x})]}):(0,z.jsx)(h,{children:`Select a project to manage rules.`})}export{H as SettingsRulesView,H as default};
|