@hienlh/ppm 0.8.11 → 0.8.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/bun.lock +2 -2
  3. package/dist/web/assets/api-settings-CaKDC7_s.js +1 -0
  4. package/dist/web/assets/chat-tab-i4xcyBjR.js +7 -0
  5. package/dist/web/assets/{code-editor-CzTveO01.js → code-editor-BzeXo2X4.js} +1 -1
  6. package/dist/web/assets/{database-viewer-DHIUpvey.js → database-viewer-LeoJOnM8.js} +1 -1
  7. package/dist/web/assets/{diff-viewer-CqisXkQu.js → diff-viewer-K4pVS0BQ.js} +1 -1
  8. package/dist/web/assets/{git-graph-D2yQY7K7.js → git-graph-POg1VqZn.js} +1 -1
  9. package/dist/web/assets/index-Bu8-Nf_9.js +28 -0
  10. package/dist/web/assets/keybindings-store-D26m5C4_.js +1 -0
  11. package/dist/web/assets/{markdown-renderer-C1T1GaXJ.js → markdown-renderer-aPb3zQmt.js} +1 -1
  12. package/dist/web/assets/{postgres-viewer-BWxS3CdY.js → postgres-viewer-CeiRsLjf.js} +1 -1
  13. package/dist/web/assets/settings-store-xG6mKqkD.js +2 -0
  14. package/dist/web/assets/settings-tab-C4NlHP7f.js +1 -0
  15. package/dist/web/assets/{sqlite-viewer-ENqEQCpf.js → sqlite-viewer-DkfnHJrB.js} +1 -1
  16. package/dist/web/assets/switch-C8P-C1hw.js +1 -0
  17. package/dist/web/assets/{terminal-tab-285oA83g.js → terminal-tab-4RrCMQc8.js} +1 -1
  18. package/dist/web/assets/{use-monaco-theme-Bt1Lr3jH.js → use-monaco-theme-DlFSiqvG.js} +1 -1
  19. package/dist/web/index.html +5 -4
  20. package/dist/web/sw.js +1 -1
  21. package/package.json +2 -2
  22. package/src/lib/account-crypto.ts +1 -1
  23. package/src/providers/claude-agent-sdk.ts +3 -3
  24. package/src/server/routes/cloud.ts +1 -1
  25. package/src/server/routes/settings.ts +40 -0
  26. package/src/services/account-selector.service.ts +2 -2
  27. package/src/types/api.ts +2 -1
  28. package/src/types/config.ts +9 -1
  29. package/src/types/qrcode-terminal.d.ts +3 -0
  30. package/src/web/components/settings/ai-settings-section.tsx +24 -0
  31. package/src/web/components/settings/settings-tab.tsx +54 -3
  32. package/src/web/hooks/use-notification-badge.ts +1 -1
  33. package/src/web/lib/api-settings.ts +5 -0
  34. package/src/web/stores/settings-store.ts +15 -0
  35. package/dist/web/assets/chat-tab-nfpY78t1.js +0 -7
  36. package/dist/web/assets/index-ZE_hGmh8.js +0 -28
  37. package/dist/web/assets/keybindings-store-D5yWgD5P.js +0 -1
  38. package/dist/web/assets/settings-store-2NQzaOVJ.js +0 -1
  39. package/dist/web/assets/settings-tab-BGL-PqA0.js +0 -1
  40. package/dist/web/assets/switch-D0FJQVBN.js +0 -1
@@ -1 +0,0 @@
1
- import"./react-CYzKIDNi.js";import"./api-client-TUmacMRS.js";import{x as e}from"./index-ZE_hGmh8.js";export{e as useKeybindingsStore};
@@ -1 +0,0 @@
1
- import{t as e}from"./react-rgzL83kk.js";var t=`ppm-settings`;function n(){try{let e=localStorage.getItem(t);if(e)return JSON.parse(e)}catch{}return{}}function r(e){let r=n();localStorage.setItem(t,JSON.stringify({...r,...e}))}function i(e){let t=e===`system`?window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:e;document.documentElement.classList.toggle(`dark`,t===`dark`),document.documentElement.classList.toggle(`light`,t===`light`);let n=document.querySelector(`meta[name="theme-color"]`);n&&n.setAttribute(`content`,t===`dark`?`#0f1419`:`#ffffff`)}var a=n(),o=e((e,t)=>({theme:a.theme===`light`||a.theme===`dark`||a.theme===`system`?a.theme:`system`,sidebarCollapsed:a.sidebarCollapsed??!1,sidebarWidth:a.sidebarWidth??280,gitStatusViewMode:a.gitStatusViewMode===`flat`?`flat`:`tree`,wordWrap:a.wordWrap??!1,sidebarActiveTab:[`git`,`settings`,`database`,`search`].includes(a.sidebarActiveTab)?a.sidebarActiveTab:`explorer`,deviceName:null,version:null,setTheme:t=>{r({theme:t}),i(t),e({theme:t}),fetch(`/api/settings/theme`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({theme:t})}).catch(()=>{})},toggleSidebar:()=>{let n=!t().sidebarCollapsed;r({sidebarCollapsed:n}),e({sidebarCollapsed:n})},setSidebarWidth:t=>{let n=Math.max(200,Math.min(600,t));r({sidebarWidth:n}),e({sidebarWidth:n})},setGitStatusViewMode:t=>{r({gitStatusViewMode:t}),e({gitStatusViewMode:t})},toggleWordWrap:()=>{let n=!t().wordWrap;r({wordWrap:n}),e({wordWrap:n})},setSidebarActiveTab:t=>{r({sidebarActiveTab:t}),e({sidebarActiveTab:t})},fetchServerInfo:async()=>{try{let[t,n]=await Promise.all([fetch(`/api/info`),fetch(`/api/settings/theme`)]),a=await t.json();if(a.ok){let{device_name:t,version:n}=a.data;e({deviceName:t||null,version:n||null}),t&&(document.title=`PPM — ${t}`)}let o=await n.json();if(o.ok&&o.data?.theme){let t=o.data.theme;r({theme:t}),i(t),e({theme:t})}}catch{}}}));export{o as n,i as t};
@@ -1 +0,0 @@
1
- import"./react-CYzKIDNi.js";import"./input-CE3bFwLk.js";import"./jsx-runtime-wQxeESYQ.js";import"./switch-D0FJQVBN.js";import"./settings-store-2NQzaOVJ.js";import"./api-client-TUmacMRS.js";import{n as e}from"./index-ZE_hGmh8.js";export{e as SettingsTab};
@@ -1 +0,0 @@
1
- import{i as e,t}from"./react-CYzKIDNi.js";import{C as n,E as r,M as i,N as a,P as o,S as s,_ as c,a as l,b as u,c as d,d as f,f as p,g as m,h,i as g,k as _,l as v,m as y,n as b,o as x,p as S,r as C,s as w,t as T,u as E,v as D,y as O}from"./input-CE3bFwLk.js";import{n as k,t as A}from"./jsx-runtime-wQxeESYQ.js";import{n as j}from"./utils-DC-bdPS3.js";import{t as M}from"./api-client-TUmacMRS.js";var N=k(`bell-off`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M17 17H4a1 1 0 0 1-.74-1.673C4.59 13.956 6 12.499 6 8a6 6 0 0 1 .258-1.742`,key:`178tsu`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M8.668 3.01A6 6 0 0 1 18 8c0 2.687.77 4.653 1.707 6.05`,key:`1hqiys`}]]),P=k(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]),F=k(`eye`,[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`,key:`1nclc0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),I=k(`upload`,[[`path`,{d:`M12 3v12`,key:`1x0j5s`}],[`path`,{d:`m17 8-5-5-5 5`,key:`7q97r8`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}]]),L=e(t(),1),R=A(),ee=Object.freeze({position:`absolute`,border:0,width:1,height:1,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}),te=`VisuallyHidden`,z=L.forwardRef((e,t)=>(0,R.jsx)(n.span,{...e,ref:t,style:{...ee,...e.style}}));z.displayName=te;var B=z;function V(e){let t=L.useRef({value:e,previous:e});return L.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}var H=`Label`,ne=L.forwardRef((e,t)=>(0,R.jsx)(n.label,{...e,ref:t,onMouseDown:t=>{t.target.closest(`button, input, select, textarea`)||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));ne.displayName=H;var re=ne;function ie(e,[t,n]){return Math.min(n,Math.max(t,e))}var ae=e(o(),1),oe=[` `,`Enter`,`ArrowUp`,`ArrowDown`],se=[` `,`Enter`],U=`Select`,[W,G,ce]=u(U),[K,le]=s(U,[ce,x]),q=x(),[ue,J]=K(U),[de,fe]=K(U),pe=e=>{let{__scopeSelect:t,children:n,open:r,defaultOpen:i,onOpenChange:a,value:o,defaultValue:s,onValueChange:u,dir:d,name:f,autoComplete:p,disabled:g,required:_,form:v}=e,y=q(t),[b,x]=L.useState(null),[S,C]=L.useState(null),[w,T]=L.useState(!1),E=h(d),[D,O]=c({prop:r,defaultProp:i??!1,onChange:a,caller:U}),[k,A]=c({prop:o,defaultProp:s,onChange:u,caller:U}),j=L.useRef(null),M=b?v||!!b.closest(`form`):!0,[N,P]=L.useState(new Set),F=Array.from(N).map(e=>e.props.value).join(`;`);return(0,R.jsx)(l,{...y,children:(0,R.jsxs)(ue,{required:_,scope:t,trigger:b,onTriggerChange:x,valueNode:S,onValueNodeChange:C,valueNodeHasChildren:w,onValueNodeHasChildrenChange:T,contentId:m(),value:k,onValueChange:A,open:D,onOpenChange:O,dir:E,triggerPointerDownPosRef:j,disabled:g,children:[(0,R.jsx)(W.Provider,{scope:t,children:(0,R.jsx)(de,{scope:e.__scopeSelect,onNativeOptionAdd:L.useCallback(e=>{P(t=>new Set(t).add(e))},[]),onNativeOptionRemove:L.useCallback(e=>{P(t=>{let n=new Set(t);return n.delete(e),n})},[]),children:n})}),M?(0,R.jsxs)(it,{"aria-hidden":!0,required:_,tabIndex:-1,name:f,autoComplete:p,value:k,onChange:e=>A(e.target.value),disabled:g,form:v,children:[k===void 0?(0,R.jsx)(`option`,{value:``}):null,Array.from(N)]},F):null]})})};pe.displayName=U;var me=`SelectTrigger`,he=L.forwardRef((e,t)=>{let{__scopeSelect:r,disabled:i=!1,...a}=e,o=q(r),s=J(me,r),c=s.disabled||i,l=_(t,s.onTriggerChange),u=G(r),d=L.useRef(`touch`),[f,p,m]=ot(e=>{let t=u().filter(e=>!e.disabled),n=st(t,e,t.find(e=>e.value===s.value));n!==void 0&&s.onValueChange(n.value)}),h=e=>{c||(s.onOpenChange(!0),m()),e&&(s.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})};return(0,R.jsx)(b,{asChild:!0,...o,children:(0,R.jsx)(n.button,{type:`button`,role:`combobox`,"aria-controls":s.contentId,"aria-expanded":s.open,"aria-required":s.required,"aria-autocomplete":`none`,dir:s.dir,"data-state":s.open?`open`:`closed`,disabled:c,"data-disabled":c?``:void 0,"data-placeholder":at(s.value)?``:void 0,...a,ref:l,onClick:O(a.onClick,e=>{e.currentTarget.focus(),d.current!==`mouse`&&h(e)}),onPointerDown:O(a.onPointerDown,e=>{d.current=e.pointerType;let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),e.button===0&&e.ctrlKey===!1&&e.pointerType===`mouse`&&(h(e),e.preventDefault())}),onKeyDown:O(a.onKeyDown,e=>{let t=f.current!==``;!(e.ctrlKey||e.altKey||e.metaKey)&&e.key.length===1&&p(e.key),!(t&&e.key===` `)&&oe.includes(e.key)&&(h(),e.preventDefault())})})})});he.displayName=me;var ge=`SelectValue`,_e=L.forwardRef((e,t)=>{let{__scopeSelect:r,className:i,style:a,children:o,placeholder:s=``,...c}=e,l=J(ge,r),{onValueNodeHasChildrenChange:u}=l,d=o!==void 0,f=_(t,l.onValueNodeChange);return D(()=>{u(d)},[u,d]),(0,R.jsx)(n.span,{...c,ref:f,style:{pointerEvents:`none`},children:at(l.value)?(0,R.jsx)(R.Fragment,{children:s}):o})});_e.displayName=ge;var ve=`SelectIcon`,ye=L.forwardRef((e,t)=>{let{__scopeSelect:r,children:i,...a}=e;return(0,R.jsx)(n.span,{"aria-hidden":!0,...a,ref:t,children:i||`▼`})});ye.displayName=ve;var be=`SelectPortal`,xe=e=>(0,R.jsx)(f,{asChild:!0,...e});xe.displayName=be;var Y=`SelectContent`,Se=L.forwardRef((e,t)=>{let n=J(Y,e.__scopeSelect),[r,i]=L.useState();if(D(()=>{i(new DocumentFragment)},[]),!n.open){let t=r;return t?ae.createPortal((0,R.jsx)(Ce,{scope:e.__scopeSelect,children:(0,R.jsx)(W.Slot,{scope:e.__scopeSelect,children:(0,R.jsx)(`div`,{children:e.children})})}),t):null}return(0,R.jsx)(Ee,{...e,ref:t})});Se.displayName=Y;var X=10,[Ce,Z]=K(Y),we=`SelectContentImpl`,Te=r(`SelectContent.RemoveScroll`),Ee=L.forwardRef((e,t)=>{let{__scopeSelect:n,position:r=`item-aligned`,onCloseAutoFocus:i,onEscapeKeyDown:a,onPointerDownOutside:o,side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:f,collisionBoundary:m,collisionPadding:h,sticky:g,hideWhenDetached:y,avoidCollisions:b,...x}=e,C=J(Y,n),[w,T]=L.useState(null),[D,k]=L.useState(null),A=_(t,e=>T(e)),[j,M]=L.useState(null),[N,P]=L.useState(null),F=G(n),[I,ee]=L.useState(!1),te=L.useRef(!1);L.useEffect(()=>{if(w)return d(w)},[w]),E();let z=L.useCallback(e=>{let[t,...n]=F().map(e=>e.ref.current),[r]=n.slice(-1),i=document.activeElement;for(let n of e)if(n===i||(n?.scrollIntoView({block:`nearest`}),n===t&&D&&(D.scrollTop=0),n===r&&D&&(D.scrollTop=D.scrollHeight),n?.focus(),document.activeElement!==i))return},[F,D]),B=L.useCallback(()=>z([j,w]),[z,j,w]);L.useEffect(()=>{I&&B()},[I,B]);let{onOpenChange:V,triggerPointerDownPosRef:H}=C;L.useEffect(()=>{if(w){let e={x:0,y:0},t=t=>{e={x:Math.abs(Math.round(t.pageX)-(H.current?.x??0)),y:Math.abs(Math.round(t.pageY)-(H.current?.y??0))}},n=n=>{e.x<=10&&e.y<=10?n.preventDefault():w.contains(n.target)||V(!1),document.removeEventListener(`pointermove`,t),H.current=null};return H.current!==null&&(document.addEventListener(`pointermove`,t),document.addEventListener(`pointerup`,n,{capture:!0,once:!0})),()=>{document.removeEventListener(`pointermove`,t),document.removeEventListener(`pointerup`,n,{capture:!0})}}},[w,V,H]),L.useEffect(()=>{let e=()=>V(!1);return window.addEventListener(`blur`,e),window.addEventListener(`resize`,e),()=>{window.removeEventListener(`blur`,e),window.removeEventListener(`resize`,e)}},[V]);let[ne,re]=ot(e=>{let t=F().filter(e=>!e.disabled),n=st(t,e,t.find(e=>e.ref.current===document.activeElement));n&&setTimeout(()=>n.ref.current.focus())}),ie=L.useCallback((e,t,n)=>{let r=!te.current&&!n;(C.value!==void 0&&C.value===t||r)&&(M(e),r&&(te.current=!0))},[C.value]),ae=L.useCallback(()=>w?.focus(),[w]),oe=L.useCallback((e,t,n)=>{let r=!te.current&&!n;(C.value!==void 0&&C.value===t||r)&&P(e)},[C.value]),se=r===`popper`?Ae:Oe,U=se===Ae?{side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:f,collisionBoundary:m,collisionPadding:h,sticky:g,hideWhenDetached:y,avoidCollisions:b}:{};return(0,R.jsx)(Ce,{scope:n,content:w,viewport:D,onViewportChange:k,itemRefCallback:ie,selectedItem:j,onItemLeave:ae,itemTextRefCallback:oe,focusSelectedItem:B,selectedItemText:N,position:r,isPositioned:I,searchRef:ne,children:(0,R.jsx)(v,{as:Te,allowPinchZoom:!0,children:(0,R.jsx)(p,{asChild:!0,trapped:C.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:O(i,e=>{C.trigger?.focus({preventScroll:!0}),e.preventDefault()}),children:(0,R.jsx)(S,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>C.onOpenChange(!1),children:(0,R.jsx)(se,{role:`listbox`,id:C.contentId,"data-state":C.open?`open`:`closed`,dir:C.dir,onContextMenu:e=>e.preventDefault(),...x,...U,onPlaced:()=>ee(!0),ref:A,style:{display:`flex`,flexDirection:`column`,outline:`none`,...x.style},onKeyDown:O(x.onKeyDown,e=>{let t=e.ctrlKey||e.altKey||e.metaKey;if(e.key===`Tab`&&e.preventDefault(),!t&&e.key.length===1&&re(e.key),[`ArrowUp`,`ArrowDown`,`Home`,`End`].includes(e.key)){let t=F().filter(e=>!e.disabled).map(e=>e.ref.current);if([`ArrowUp`,`End`].includes(e.key)&&(t=t.slice().reverse()),[`ArrowUp`,`ArrowDown`].includes(e.key)){let n=e.target,r=t.indexOf(n);t=t.slice(r+1)}setTimeout(()=>z(t)),e.preventDefault()}})})})})})})});Ee.displayName=we;var De=`SelectItemAlignedPosition`,Oe=L.forwardRef((e,t)=>{let{__scopeSelect:r,onPlaced:i,...a}=e,o=J(Y,r),s=Z(Y,r),[c,l]=L.useState(null),[u,d]=L.useState(null),f=_(t,e=>d(e)),p=G(r),m=L.useRef(!1),h=L.useRef(!0),{viewport:g,selectedItem:v,selectedItemText:y,focusSelectedItem:b}=s,x=L.useCallback(()=>{if(o.trigger&&o.valueNode&&c&&u&&g&&v&&y){let e=o.trigger.getBoundingClientRect(),t=u.getBoundingClientRect(),n=o.valueNode.getBoundingClientRect(),r=y.getBoundingClientRect();if(o.dir!==`rtl`){let i=r.left-t.left,a=n.left-i,o=e.left-a,s=e.width+o,l=Math.max(s,t.width),u=window.innerWidth-X,d=ie(a,[X,Math.max(X,u-l)]);c.style.minWidth=s+`px`,c.style.left=d+`px`}else{let i=t.right-r.right,a=window.innerWidth-n.right-i,o=window.innerWidth-e.right-a,s=e.width+o,l=Math.max(s,t.width),u=window.innerWidth-X,d=ie(a,[X,Math.max(X,u-l)]);c.style.minWidth=s+`px`,c.style.right=d+`px`}let a=p(),s=window.innerHeight-X*2,l=g.scrollHeight,d=window.getComputedStyle(u),f=parseInt(d.borderTopWidth,10),h=parseInt(d.paddingTop,10),_=parseInt(d.borderBottomWidth,10),b=parseInt(d.paddingBottom,10),x=f+h+l+b+_,S=Math.min(v.offsetHeight*5,x),C=window.getComputedStyle(g),w=parseInt(C.paddingTop,10),T=parseInt(C.paddingBottom,10),E=e.top+e.height/2-X,D=s-E,O=v.offsetHeight/2,k=v.offsetTop+O,A=f+h+k,j=x-A;if(A<=E){let e=a.length>0&&v===a[a.length-1].ref.current;c.style.bottom=`0px`;let t=u.clientHeight-g.offsetTop-g.offsetHeight,n=A+Math.max(D,O+(e?T:0)+t+_);c.style.height=n+`px`}else{let e=a.length>0&&v===a[0].ref.current;c.style.top=`0px`;let t=Math.max(E,f+g.offsetTop+(e?w:0)+O)+j;c.style.height=t+`px`,g.scrollTop=A-E+g.offsetTop}c.style.margin=`${X}px 0`,c.style.minHeight=S+`px`,c.style.maxHeight=s+`px`,i?.(),requestAnimationFrame(()=>m.current=!0)}},[p,o.trigger,o.valueNode,c,u,g,v,y,o.dir,i]);D(()=>x(),[x]);let[S,C]=L.useState();return D(()=>{u&&C(window.getComputedStyle(u).zIndex)},[u]),(0,R.jsx)(je,{scope:r,contentWrapper:c,shouldExpandOnScrollRef:m,onScrollButtonChange:L.useCallback(e=>{e&&h.current===!0&&(x(),b?.(),h.current=!1)},[x,b]),children:(0,R.jsx)(`div`,{ref:l,style:{display:`flex`,flexDirection:`column`,position:`fixed`,zIndex:S},children:(0,R.jsx)(n.div,{...a,ref:f,style:{boxSizing:`border-box`,maxHeight:`100%`,...a.style}})})})});Oe.displayName=De;var ke=`SelectPopperPosition`,Ae=L.forwardRef((e,t)=>{let{__scopeSelect:n,align:r=`start`,collisionPadding:i=X,...a}=e,o=q(n);return(0,R.jsx)(g,{...o,...a,ref:t,align:r,collisionPadding:i,style:{boxSizing:`border-box`,...a.style,"--radix-select-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-select-content-available-width":`var(--radix-popper-available-width)`,"--radix-select-content-available-height":`var(--radix-popper-available-height)`,"--radix-select-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-select-trigger-height":`var(--radix-popper-anchor-height)`}})});Ae.displayName=ke;var[je,Me]=K(Y,{}),Ne=`SelectViewport`,Pe=L.forwardRef((e,t)=>{let{__scopeSelect:r,nonce:i,...a}=e,o=Z(Ne,r),s=Me(Ne,r),c=_(t,o.onViewportChange),l=L.useRef(0);return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}`},nonce:i}),(0,R.jsx)(W.Slot,{scope:r,children:(0,R.jsx)(n.div,{"data-radix-select-viewport":``,role:`presentation`,...a,ref:c,style:{position:`relative`,flex:1,overflow:`hidden auto`,...a.style},onScroll:O(a.onScroll,e=>{let t=e.currentTarget,{contentWrapper:n,shouldExpandOnScrollRef:r}=s;if(r?.current&&n){let e=Math.abs(l.current-t.scrollTop);if(e>0){let r=window.innerHeight-X*2,i=parseFloat(n.style.minHeight),a=parseFloat(n.style.height),o=Math.max(i,a);if(o<r){let i=o+e,a=Math.min(r,i),s=i-a;n.style.height=a+`px`,n.style.bottom===`0px`&&(t.scrollTop=s>0?s:0,n.style.justifyContent=`flex-end`)}}}l.current=t.scrollTop})})})]})});Pe.displayName=Ne;var Fe=`SelectGroup`,[Ie,Le]=K(Fe),Re=L.forwardRef((e,t)=>{let{__scopeSelect:r,...i}=e,a=m();return(0,R.jsx)(Ie,{scope:r,id:a,children:(0,R.jsx)(n.div,{role:`group`,"aria-labelledby":a,...i,ref:t})})});Re.displayName=Fe;var ze=`SelectLabel`,Be=L.forwardRef((e,t)=>{let{__scopeSelect:r,...i}=e,a=Le(ze,r);return(0,R.jsx)(n.div,{id:a.id,...i,ref:t})});Be.displayName=ze;var Ve=`SelectItem`,[He,Ue]=K(Ve),We=L.forwardRef((e,t)=>{let{__scopeSelect:r,value:i,disabled:a=!1,textValue:o,...s}=e,c=J(Ve,r),l=Z(Ve,r),u=c.value===i,[d,f]=L.useState(o??``),[p,h]=L.useState(!1),g=_(t,e=>l.itemRefCallback?.(e,i,a)),v=m(),y=L.useRef(`touch`),b=()=>{a||(c.onValueChange(i),c.onOpenChange(!1))};if(i===``)throw Error(`A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.`);return(0,R.jsx)(He,{scope:r,value:i,disabled:a,textId:v,isSelected:u,onItemTextChange:L.useCallback(e=>{f(t=>t||(e?.textContent??``).trim())},[]),children:(0,R.jsx)(W.ItemSlot,{scope:r,value:i,disabled:a,textValue:d,children:(0,R.jsx)(n.div,{role:`option`,"aria-labelledby":v,"data-highlighted":p?``:void 0,"aria-selected":u&&p,"data-state":u?`checked`:`unchecked`,"aria-disabled":a||void 0,"data-disabled":a?``:void 0,tabIndex:a?void 0:-1,...s,ref:g,onFocus:O(s.onFocus,()=>h(!0)),onBlur:O(s.onBlur,()=>h(!1)),onClick:O(s.onClick,()=>{y.current!==`mouse`&&b()}),onPointerUp:O(s.onPointerUp,()=>{y.current===`mouse`&&b()}),onPointerDown:O(s.onPointerDown,e=>{y.current=e.pointerType}),onPointerMove:O(s.onPointerMove,e=>{y.current=e.pointerType,a?l.onItemLeave?.():y.current===`mouse`&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:O(s.onPointerLeave,e=>{e.currentTarget===document.activeElement&&l.onItemLeave?.()}),onKeyDown:O(s.onKeyDown,e=>{l.searchRef?.current!==``&&e.key===` `||(se.includes(e.key)&&b(),e.key===` `&&e.preventDefault())})})})})});We.displayName=Ve;var Q=`SelectItemText`,Ge=L.forwardRef((e,t)=>{let{__scopeSelect:r,className:i,style:a,...o}=e,s=J(Q,r),c=Z(Q,r),l=Ue(Q,r),u=fe(Q,r),[d,f]=L.useState(null),p=_(t,e=>f(e),l.onItemTextChange,e=>c.itemTextRefCallback?.(e,l.value,l.disabled)),m=d?.textContent,h=L.useMemo(()=>(0,R.jsx)(`option`,{value:l.value,disabled:l.disabled,children:m},l.value),[l.disabled,l.value,m]),{onNativeOptionAdd:g,onNativeOptionRemove:v}=u;return D(()=>(g(h),()=>v(h)),[g,v,h]),(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(n.span,{id:l.textId,...o,ref:p}),l.isSelected&&s.valueNode&&!s.valueNodeHasChildren?ae.createPortal(o.children,s.valueNode):null]})});Ge.displayName=Q;var Ke=`SelectItemIndicator`,qe=L.forwardRef((e,t)=>{let{__scopeSelect:r,...i}=e;return Ue(Ke,r).isSelected?(0,R.jsx)(n.span,{"aria-hidden":!0,...i,ref:t}):null});qe.displayName=Ke;var Je=`SelectScrollUpButton`,Ye=L.forwardRef((e,t)=>{let n=Z(Je,e.__scopeSelect),r=Me(Je,e.__scopeSelect),[i,a]=L.useState(!1),o=_(t,r.onScrollButtonChange);return D(()=>{if(n.viewport&&n.isPositioned){let e=function(){a(t.scrollTop>0)},t=n.viewport;return e(),t.addEventListener(`scroll`,e),()=>t.removeEventListener(`scroll`,e)}},[n.viewport,n.isPositioned]),i?(0,R.jsx)(Qe,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=n;e&&t&&(e.scrollTop-=t.offsetHeight)}}):null});Ye.displayName=Je;var Xe=`SelectScrollDownButton`,Ze=L.forwardRef((e,t)=>{let n=Z(Xe,e.__scopeSelect),r=Me(Xe,e.__scopeSelect),[i,a]=L.useState(!1),o=_(t,r.onScrollButtonChange);return D(()=>{if(n.viewport&&n.isPositioned){let e=function(){let e=t.scrollHeight-t.clientHeight;a(Math.ceil(t.scrollTop)<e)},t=n.viewport;return e(),t.addEventListener(`scroll`,e),()=>t.removeEventListener(`scroll`,e)}},[n.viewport,n.isPositioned]),i?(0,R.jsx)(Qe,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=n;e&&t&&(e.scrollTop+=t.offsetHeight)}}):null});Ze.displayName=Xe;var Qe=L.forwardRef((e,t)=>{let{__scopeSelect:r,onAutoScroll:i,...a}=e,o=Z(`SelectScrollButton`,r),s=L.useRef(null),c=G(r),l=L.useCallback(()=>{s.current!==null&&(window.clearInterval(s.current),s.current=null)},[]);return L.useEffect(()=>()=>l(),[l]),D(()=>{c().find(e=>e.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:`nearest`})},[c]),(0,R.jsx)(n.div,{"aria-hidden":!0,...a,ref:t,style:{flexShrink:0,...a.style},onPointerDown:O(a.onPointerDown,()=>{s.current===null&&(s.current=window.setInterval(i,50))}),onPointerMove:O(a.onPointerMove,()=>{o.onItemLeave?.(),s.current===null&&(s.current=window.setInterval(i,50))}),onPointerLeave:O(a.onPointerLeave,()=>{l()})})}),$e=`SelectSeparator`,et=L.forwardRef((e,t)=>{let{__scopeSelect:r,...i}=e;return(0,R.jsx)(n.div,{"aria-hidden":!0,...i,ref:t})});et.displayName=$e;var tt=`SelectArrow`,nt=L.forwardRef((e,t)=>{let{__scopeSelect:n,...r}=e,i=q(n),a=J(tt,n),o=Z(tt,n);return a.open&&o.position===`popper`?(0,R.jsx)(C,{...i,...r,ref:t}):null});nt.displayName=tt;var rt=`SelectBubbleInput`,it=L.forwardRef(({__scopeSelect:e,value:t,...r},i)=>{let a=L.useRef(null),o=_(i,a),s=V(t);return L.useEffect(()=>{let e=a.current;if(!e)return;let n=window.HTMLSelectElement.prototype,r=Object.getOwnPropertyDescriptor(n,`value`).set;if(s!==t&&r){let n=new Event(`change`,{bubbles:!0});r.call(e,t),e.dispatchEvent(n)}},[s,t]),(0,R.jsx)(n.select,{...r,style:{...ee,...r.style},ref:o,defaultValue:t})});it.displayName=rt;function at(e){return e===``||e===void 0}function ot(e){let t=y(e),n=L.useRef(``),r=L.useRef(0),i=L.useCallback(e=>{let i=n.current+e;t(i),(function e(t){n.current=t,window.clearTimeout(r.current),t!==``&&(r.current=window.setTimeout(()=>e(``),1e3))})(i)},[t]),a=L.useCallback(()=>{n.current=``,window.clearTimeout(r.current)},[]);return L.useEffect(()=>()=>window.clearTimeout(r.current),[]),[n,i,a]}function st(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=ct(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.textValue.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function ct(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var lt=pe,ut=he,dt=_e,ft=ye,pt=xe,mt=Se,ht=Pe,gt=We,_t=Ge,vt=qe,yt=Ye,bt=Ze,xt=`Switch`,[St,Ct]=s(xt),[wt,Tt]=St(xt),Et=L.forwardRef((e,t)=>{let{__scopeSwitch:r,name:i,checked:a,defaultChecked:o,required:s,disabled:l,value:u=`on`,onCheckedChange:d,form:f,...p}=e,[m,h]=L.useState(null),g=_(t,e=>h(e)),v=L.useRef(!1),y=m?f||!!m.closest(`form`):!0,[b,x]=c({prop:a,defaultProp:o??!1,onChange:d,caller:xt});return(0,R.jsxs)(wt,{scope:r,checked:b,disabled:l,children:[(0,R.jsx)(n.button,{type:`button`,role:`switch`,"aria-checked":b,"aria-required":s,"data-state":jt(b),"data-disabled":l?``:void 0,disabled:l,value:u,...p,ref:g,onClick:O(e.onClick,e=>{x(e=>!e),y&&(v.current=e.isPropagationStopped(),v.current||e.stopPropagation())})}),y&&(0,R.jsx)(At,{control:m,bubbles:!v.current,name:i,value:u,checked:b,required:s,disabled:l,form:f,style:{transform:`translateX(-100%)`}})]})});Et.displayName=xt;var Dt=`SwitchThumb`,Ot=L.forwardRef((e,t)=>{let{__scopeSwitch:r,...i}=e,a=Tt(Dt,r);return(0,R.jsx)(n.span,{"data-state":jt(a.checked),"data-disabled":a.disabled?``:void 0,...i,ref:t})});Ot.displayName=Dt;var kt=`SwitchBubbleInput`,At=L.forwardRef(({__scopeSwitch:e,control:t,checked:n,bubbles:r=!0,...i},a)=>{let o=L.useRef(null),s=_(o,a),c=V(n),l=w(t);return L.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,R.jsx)(`input`,{type:`checkbox`,"aria-hidden":!0,defaultChecked:n,...i,tabIndex:-1,ref:s,style:{...i.style,...l,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}})});At.displayName=kt;function jt(e){return e?`checked`:`unchecked`}var Mt=Et,Nt=Ot;function $({className:e,...t}){return(0,R.jsx)(re,{"data-slot":`label`,className:j(`flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50`,e),...t})}function Pt({...e}){return(0,R.jsx)(lt,{"data-slot":`select`,...e})}function Ft({...e}){return(0,R.jsx)(dt,{"data-slot":`select-value`,...e})}function It({className:e,size:t=`default`,children:n,...r}){return(0,R.jsxs)(ut,{"data-slot":`select-trigger`,"data-size":t,className:j(`flex w-fit items-center justify-between gap-2 rounded-md border border-input bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[placeholder]:text-muted-foreground data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground`,e),...r,children:[n,(0,R.jsx)(ft,{asChild:!0,children:(0,R.jsx)(i,{className:`size-4 opacity-50`})})]})}function Lt({className:e,children:t,position:n=`item-aligned`,align:r=`center`,...i}){return(0,R.jsx)(pt,{children:(0,R.jsxs)(mt,{"data-slot":`select-content`,className:j(`relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border bg-popover text-popover-foreground shadow-md data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95`,n===`popper`&&`data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1`,e),position:n,align:r,...i,children:[(0,R.jsx)(zt,{}),(0,R.jsx)(ht,{className:j(`p-1`,n===`popper`&&`h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1`),children:t}),(0,R.jsx)(Bt,{})]})})}function Rt({className:e,children:t,...n}){return(0,R.jsxs)(gt,{"data-slot":`select-item`,className:j(`relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2`,e),...n,children:[(0,R.jsx)(`span`,{"data-slot":`select-item-indicator`,className:`absolute right-2 flex size-3.5 items-center justify-center`,children:(0,R.jsx)(vt,{children:(0,R.jsx)(a,{className:`size-4`})})}),(0,R.jsx)(_t,{children:t})]})}function zt({className:e,...t}){return(0,R.jsx)(yt,{"data-slot":`select-scroll-up-button`,className:j(`flex cursor-default items-center justify-center py-1`,e),...t,children:(0,R.jsx)(P,{className:`size-4`})})}function Bt({className:e,...t}){return(0,R.jsx)(bt,{"data-slot":`select-scroll-down-button`,className:j(`flex cursor-default items-center justify-center py-1`,e),...t,children:(0,R.jsx)(i,{className:`size-4`})})}function Vt(){return M.get(`/api/accounts`)}function Ht(){return M.get(`/api/accounts/active`)}function Ut(e){return M.post(`/api/accounts`,e)}function Wt(e){return M.del(`/api/accounts/${e}`)}function Gt(e,t){return M.patch(`/api/accounts/${e}`,t)}function Kt(){return M.get(`/api/accounts/settings`)}function qt(e){return M.put(`/api/accounts/settings`,e)}function Jt(e){return M.post(`/api/accounts/${e}/verify`)}function Yt(){return M.get(`/api/accounts/oauth/url`)}function Xt(e,t){return M.post(`/api/accounts/oauth/exchange`,{code:e,state:t})}function Zt(){return M.get(`/api/accounts/usage`)}function Qt(e){return M.post(`/api/accounts/import`,e)}function $t(){return M.get(`/api/settings/ai`)}function en(e){return M.put(`/api/settings/ai`,e)}var tn=[{value:`claude-sonnet-4-6`,label:`Claude Sonnet 4.6`},{value:`claude-opus-4-6`,label:`Claude Opus 4.6`},{value:`claude-haiku-4-5`,label:`Claude Haiku 4.5`}],nn=[{value:`low`,label:`Low`},{value:`medium`,label:`Medium`},{value:`high`,label:`High`}],rn=[{value:`bypassPermissions`,label:`Bypass permissions (default)`},{value:`default`,label:`Ask before edits`},{value:`acceptEdits`,label:`Edit automatically`},{value:`plan`,label:`Plan mode`}];function an({compact:e}={}){let[t,n]=(0,L.useState)(null),[r,i]=(0,L.useState)(!1),[a,o]=(0,L.useState)(null),[s,c]=(0,L.useState)(0);(0,L.useEffect)(()=>{$t().then(n).catch(e=>o(e.message))},[]);let l=t?.default_provider??`claude`,u=t?.providers[l],d=async(e,r)=>{if(t){i(!0),o(null);try{n(await en({providers:{[l]:{[e]:r}}})),c(e=>e+1)}catch(e){o(e.message)}finally{i(!1)}}},f=e?`text-[11px]`:`text-sm`,p=e?`text-xs`:`text-sm`,m=e?`space-y-2`:`space-y-4`,h=e?`space-y-1.5`:`space-y-3`,g=e?`space-y-1`:`space-y-1.5`;return t?(0,R.jsxs)(`div`,{className:m,children:[(0,R.jsx)(`h3`,{className:`${p} font-medium text-text-secondary`,children:`AI Provider`}),(0,R.jsxs)(`div`,{className:h,children:[(0,R.jsxs)(`div`,{className:g,children:[(0,R.jsx)($,{htmlFor:`ai-model`,className:e?f:void 0,children:`Model`}),(0,R.jsxs)(Pt,{value:u?.model??`claude-sonnet-4-6`,onValueChange:e=>d(`model`,e),children:[(0,R.jsx)(It,{id:`ai-model`,className:`w-full ${e?`h-7 text-[11px]`:``}`,children:(0,R.jsx)(Ft,{})}),(0,R.jsx)(Lt,{children:tn.map(e=>(0,R.jsx)(Rt,{value:e.value,children:e.label},e.value))})]})]}),(0,R.jsxs)(`div`,{className:g,children:[(0,R.jsx)($,{htmlFor:`ai-base-url`,className:e?f:void 0,children:`Base URL`}),(0,R.jsx)(T,{id:`ai-base-url`,type:`url`,defaultValue:u?.base_url??``,placeholder:`https://api.anthropic.com (default)`,className:e?`h-7 text-[11px]`:void 0,onBlur:e=>{d(`base_url`,e.target.value.trim()||void 0)}},`baseurl-${s}`)]}),(0,R.jsxs)(`div`,{className:g,children:[(0,R.jsx)($,{htmlFor:`ai-effort`,className:e?f:void 0,children:`Effort`}),(0,R.jsxs)(Pt,{value:u?.effort??`high`,onValueChange:e=>d(`effort`,e),children:[(0,R.jsx)(It,{id:`ai-effort`,className:`w-full ${e?`h-7 text-[11px]`:``}`,children:(0,R.jsx)(Ft,{})}),(0,R.jsx)(Lt,{children:nn.map(e=>(0,R.jsx)(Rt,{value:e.value,children:e.label},e.value))})]})]}),(0,R.jsxs)(`div`,{className:g,children:[(0,R.jsx)($,{htmlFor:`ai-max-turns`,className:e?f:void 0,children:`Max Turns (1-500)`}),(0,R.jsx)(T,{id:`ai-max-turns`,type:`number`,min:1,max:500,defaultValue:u?.max_turns??100,className:e?`h-7 text-[11px]`:void 0,onBlur:e=>{let t=parseInt(e.target.value);isNaN(t)||d(`max_turns`,t)}},`turns-${s}`)]}),(0,R.jsxs)(`div`,{className:g,children:[(0,R.jsx)($,{htmlFor:`ai-budget`,className:e?f:void 0,children:`Max Budget (USD)`}),(0,R.jsx)(T,{id:`ai-budget`,type:`number`,step:.1,min:.01,max:50,defaultValue:u?.max_budget_usd??``,placeholder:`No limit`,className:e?`h-7 text-[11px]`:void 0,onBlur:e=>{let t=parseFloat(e.target.value);d(`max_budget_usd`,isNaN(t)?void 0:t)}},`budget-${s}`)]}),(0,R.jsxs)(`div`,{className:g,children:[(0,R.jsx)($,{htmlFor:`ai-thinking`,className:e?f:void 0,children:`Thinking Budget (tokens)`}),(0,R.jsx)(T,{id:`ai-thinking`,type:`number`,min:0,defaultValue:u?.thinking_budget_tokens??``,placeholder:`Disabled`,className:e?`h-7 text-[11px]`:void 0,onBlur:e=>{let t=parseInt(e.target.value);d(`thinking_budget_tokens`,isNaN(t)?void 0:t)}},`thinking-${s}`)]}),(0,R.jsxs)(`div`,{className:g,children:[(0,R.jsx)($,{htmlFor:`ai-permission-mode`,className:e?f:void 0,children:`Default Permission Mode`}),(0,R.jsxs)(Pt,{value:u?.permission_mode??`bypassPermissions`,onValueChange:e=>d(`permission_mode`,e),children:[(0,R.jsx)(It,{id:`ai-permission-mode`,className:`w-full ${e?`h-7 text-[11px]`:``}`,children:(0,R.jsx)(Ft,{})}),(0,R.jsx)(Lt,{children:rn.map(e=>(0,R.jsx)(Rt,{value:e.value,children:e.label},e.value))})]})]}),(0,R.jsxs)(`div`,{className:g,children:[(0,R.jsx)($,{htmlFor:`ai-system-prompt`,className:e?f:void 0,children:`Additional Instructions`}),(0,R.jsx)(`textarea`,{id:`ai-system-prompt`,rows:4,defaultValue:u?.system_prompt??``,placeholder:`Enter additional instructions for Claude...`,className:`w-full rounded-md border border-input bg-background px-3 py-2 ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 ${e?`text-[11px]`:`text-sm`}`,onBlur:e=>{d(`system_prompt`,e.target.value.trim()||void 0)}},`sysprompt-${s}`)]})]}),r&&(0,R.jsx)(`p`,{className:`text-xs text-text-subtle`,children:`Saving...`}),a&&(0,R.jsx)(`p`,{className:`text-xs text-red-500`,children:a})]}):(0,R.jsxs)(`div`,{className:h,children:[(0,R.jsx)(`h3`,{className:`${p} font-medium text-text-secondary`,children:`AI Provider`}),(0,R.jsx)(`p`,{className:`${f} text-text-subtle`,children:a?`Error: ${a}`:`Loading...`})]})}var on=L.forwardRef(({className:e,...t},n)=>(0,R.jsx)(Mt,{className:j(`peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input`,e),...t,ref:n,children:(0,R.jsx)(Nt,{className:j(`pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0`)})}));on.displayName=Mt.displayName;export{B as C,N as D,P as E,ie as S,F as T,Lt as _,Xt as a,Ft as b,Vt as c,Yt as d,Qt as f,Pt as g,Jt as h,Wt as i,Ht as l,qt as m,an as n,$t as o,Gt as p,Ut as r,Kt as s,on as t,Zt as u,Rt as v,I as w,$ as x,It as y};