@stacksjs/components 0.2.245 → 0.2.247
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.
|
@@ -59,9 +59,12 @@ export const isArc = theme === 'arc'
|
|
|
59
59
|
//
|
|
60
60
|
// --craft-window-controls-replicas the `display` a replica should take —
|
|
61
61
|
// `none` where it drew real buttons
|
|
62
|
-
// --craft-window-controls-width the room they need
|
|
63
|
-
//
|
|
64
|
-
//
|
|
62
|
+
// --craft-window-controls-width the room they need inside the page: the
|
|
63
|
+
// far edge of the real buttons, measured
|
|
64
|
+
// on the window, and 0 whenever they are
|
|
65
|
+
// not over the page — a titlebar of their
|
|
66
|
+
// own, a native sidebar under them,
|
|
67
|
+
// fullscreen
|
|
65
68
|
//
|
|
66
69
|
// Both are read as fallbacks, so a browser — where neither is set — draws the
|
|
67
70
|
// replicas and reserves nothing, and no JavaScript is involved either way.
|
|
@@ -151,10 +154,30 @@ function onWindowControl(action) {
|
|
|
151
154
|
if (action === 'zoom') (api?.maximize || api?.zoom)?.call(api)
|
|
152
155
|
emit('windowControl', action)
|
|
153
156
|
}
|
|
157
|
+
|
|
158
|
+
/*
|
|
159
|
+
* This strip is the window's drag handle, and the CSS on it cannot make it one
|
|
160
|
+
* everywhere. `-webkit-app-region: drag` is Chromium's property: Electron and
|
|
161
|
+
* Tauri honour it, WebKit never implemented it, and a WKWebView discards the
|
|
162
|
+
* declaration outright — `style.setProperty('-webkit-app-region', 'drag')`
|
|
163
|
+
* reads back as the empty string there. So in a Craft window the class is
|
|
164
|
+
* decoration, and a header that looked draggable belonged to a window that
|
|
165
|
+
* could not be moved. It stays for the hosts it works in; this covers the one
|
|
166
|
+
* it does not, by handing the press to the platform's own drag loop.
|
|
167
|
+
*
|
|
168
|
+
* A press on anything you can click is left alone, replica traffic lights and
|
|
169
|
+
* the search field included — dragging a window by its close button is not a
|
|
170
|
+
* gesture anyone makes on purpose.
|
|
171
|
+
*/
|
|
172
|
+
function onChromePress(event) {
|
|
173
|
+
if (event.button !== 0) return
|
|
174
|
+
if (event.target?.closest?.('button, a, input, select, textarea, [role="button"]')) return
|
|
175
|
+
window.craft?.window?.startDrag?.()
|
|
176
|
+
}
|
|
154
177
|
</script>
|
|
155
178
|
|
|
156
179
|
@if(isMacos)
|
|
157
|
-
<div class="flex h-[52px] shrink-0 items-center justify-between pl-[21px] pr-[10px] [-webkit-app-region:drag]">
|
|
180
|
+
<div class="flex h-[52px] shrink-0 items-center justify-between pl-[21px] pr-[10px] [-webkit-app-region:drag]" @mousedown="onChromePress($event)">
|
|
158
181
|
@if(showWindowControls || reserveWindowControls)
|
|
159
182
|
<div class="flex items-center [-webkit-app-region:no-drag]">
|
|
160
183
|
@if(reserveWindowControls)
|
|
@@ -220,7 +243,7 @@ function onWindowControl(action) {
|
|
|
220
243
|
-->
|
|
221
244
|
<div class="flex flex-col gap-[8px] px-[10px] pb-[8px]" style="{{ reserveWindowControls ? arcChromePadding : 'padding-top: 12px' }}">
|
|
222
245
|
@if(showWindowControls || reserveWindowControls || showNavigation)
|
|
223
|
-
<div class="flex items-center gap-[12px] px-[2px] [-webkit-app-region:drag]">
|
|
246
|
+
<div class="flex items-center gap-[12px] px-[2px] [-webkit-app-region:drag]" @mousedown="onChromePress($event)">
|
|
224
247
|
@if(reserveWindowControls)
|
|
225
248
|
<!--
|
|
226
249
|
Empty on purpose. The window server has already drawn three live
|
package/dist/index.js
CHANGED
|
@@ -8,7 +8,7 @@ var be={__stx:!0,src:"./components/CodeBlock.stx"};var ge={__stx:!0,src:"./compo
|
|
|
8
8
|
Documentation: ${s.docsUrl}`;else if(e)a+=`
|
|
9
9
|
Documentation: ${He}/${e.toLowerCase()}`;return a}toJSON(){return{name:this.name,message:this.message,component:this.component,context:this.context,stack:this.stack}}}var M={invalidProp(e,t,s,a){return new N(e,`Invalid prop value for "${t}"`,{prop:t,received:s,expected:a,details:Array.isArray(a)?`The "${t}" prop must be one of the allowed values`:`The "${t}" prop does not match the expected type`})},requiredProp(e,t){return new N(e,`Required prop "${t}" is missing`,{prop:t,details:`The "${t}" prop is required for ${e} to function correctly`})},invalidType(e,t,s,a){return new N(e,`Invalid type for prop "${t}"`,{prop:t,received:typeof s,expected:a,details:`Expected "${t}" to be of type ${a}, but received ${typeof s}`})},componentNotFound(e){return new N("ComponentLoader",`Component "${e}" not found`,{component:e,details:"Make sure the component is properly imported and registered"})},invalidChildren(e,t,s){return new N(e,"Invalid children",{received:typeof t,expected:s,details:`${e} expects ${s} as children`})},stateUpdate(e,t,s){return new N(e,`Failed to update state "${t}"`,{details:s.message})},eventHandler(e,t,s){return new N(e,`Error in "${t}" event handler`,{details:s.message})},render(e,t){return new N(e,"Failed to render component",{details:t.message})}},W=null;function pr(e){W=e}function ur(){W=null}function V(e,t={}){let{throwError:s=!0,logError:a=!0}=t;if(a&&B.env.NODE_ENV!=="production"){if(console.error("Component Error:",e),e instanceof N)console.group("Error Details"),console.log("Component:",e.component),console.log("Context:",e.context),console.groupEnd()}if(W)try{W(e)}catch(o){console.error("Error in error handler:",o)}if(s)throw e}function ne(e,t,s){return(...a)=>{try{let o=e(...a);if(o instanceof Promise)return o.catch((i)=>{let r=M.eventHandler(t,s,i);throw V(r,{throwError:!1}),r});return o}catch(o){let i=M.eventHandler(t,s,o);throw V(i,{throwError:!1}),i}}}function We(e,t){if(!e)throw t}function Ve(e,t,s={}){if(B.env.NODE_ENV==="production")return;let a=N.formatMessage(e,t,s);console.warn(`\u26A0\uFE0F ${a}`)}function hr(e,t){if(B.env.NODE_ENV==="production")return;We(e,t)}function fr(e){let t=typeof B<"u"&&B.env.DEBUG==="true";return{log(...s){if(t)console.log(`[${e}]`,...s)},warn(s,a){Ve(e,s,a)},error(s,a){let o=new N(e,s,a);V(o,{throwError:!1})}}}function br(e,t,s){try{return t()}catch(a){let o=M.render(e,a);return V(o,{throwError:!1}),s}}import _e from"process";var _=_e.env.NODE_ENV!=="production";class ${validate;message;isRequired;constructor(e,t,s=!1){this.validate=e;this.message=t;this.isRequired=s}get required(){return new $(this.validate,this.message,!0)}}var l={string:new $((e)=>typeof e==="string",(e,t,s)=>`Invalid prop \`${t}\` of type \`${typeof e}\` supplied to \`${s}\`, expected \`string\`.`),number:new $((e)=>typeof e==="number"&&!Number.isNaN(e),(e,t,s)=>`Invalid prop \`${t}\` of type \`${typeof e}\` supplied to \`${s}\`, expected \`number\`.`),boolean:new $((e)=>typeof e==="boolean",(e,t,s)=>`Invalid prop \`${t}\` of type \`${typeof e}\` supplied to \`${s}\`, expected \`boolean\`.`),func:new $((e)=>typeof e==="function",(e,t,s)=>`Invalid prop \`${t}\` of type \`${typeof e}\` supplied to \`${s}\`, expected \`function\`.`),object:new $((e)=>typeof e==="object"&&e!==null&&!Array.isArray(e),(e,t,s)=>`Invalid prop \`${t}\` of type \`${typeof e}\` supplied to \`${s}\`, expected \`object\`.`),array:new $((e)=>Array.isArray(e),(e,t,s)=>`Invalid prop \`${t}\` of type \`${typeof e}\` supplied to \`${s}\`, expected \`array\`.`),any:new $(()=>!0,()=>""),oneOf(e){return new $((t)=>e.includes(t),(t,s,a)=>`Invalid prop \`${s}\` of value \`${t}\` supplied to \`${a}\`, expected one of [${e.map((o)=>JSON.stringify(o)).join(", ")}].`)},oneOfType(e){return new $((t,s,a)=>e.some((o)=>o.validate(t,s,a)),(t,s,a)=>`Invalid prop \`${s}\` supplied to \`${a}\`, expected one of the specified types.`)},arrayOf(e){return new $((t,s,a)=>{if(!Array.isArray(t))return!1;return t.every((o,i)=>e.validate(o,`${s}[${i}]`,a))},(t,s,a)=>`Invalid prop \`${s}\` supplied to \`${a}\`, expected array of specified type.`)},shape(e){return new $((t,s,a)=>{if(typeof t!=="object"||t===null||Array.isArray(t))return!1;for(let[o,i]of Object.entries(e)){if(i.isRequired&&!(o in t))return!1;if(o in t&&!i.validate(t[o],`${s}.${o}`,a))return!1}return!0},(t,s,a)=>`Invalid prop \`${s}\` supplied to \`${a}\`, expected object matching specified shape.`)},instanceOf(e){return new $((t)=>t instanceof e,(t,s,a)=>`Invalid prop \`${s}\` supplied to \`${a}\`, expected instance of \`${e.name}\`.`)},custom(e,t){return new $(e,typeof t==="string"?()=>t:t)},min(e){return new $((t)=>typeof t==="number"&&t>=e,(t,s,a)=>`Invalid prop \`${s}\` of value \`${t}\` supplied to \`${a}\`, expected value >= ${e}.`)},max(e){return new $((t)=>typeof t==="number"&&t<=e,(t,s,a)=>`Invalid prop \`${s}\` of value \`${t}\` supplied to \`${a}\`, expected value <= ${e}.`)},range(e,t){return new $((s)=>typeof s==="number"&&s>=e&&s<=t,(s,a,o)=>`Invalid prop \`${a}\` of value \`${s}\` supplied to \`${o}\`, expected value between ${e} and ${t}.`)},pattern(e){return new $((t)=>typeof t==="string"&&e.test(t),(t,s,a)=>`Invalid prop \`${s}\` of value \`${t}\` supplied to \`${a}\`, expected value matching pattern ${e}.`)},email:new $((e)=>typeof e==="string"&&/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e),(e,t,s)=>`Invalid prop \`${t}\` of value \`${e}\` supplied to \`${s}\`, expected valid email address.`),url:new $((e)=>{if(typeof e!=="string")return!1;try{let t=new URL(e);return!0}catch{return!1}},(e,t,s)=>`Invalid prop \`${t}\` of value \`${e}\` supplied to \`${s}\`, expected valid URL.`)};function Fe(e,t,s,a={}){let{throwOnError:o=!1,logWarnings:i=_}=a,r=[];if(!_)return{valid:!0,errors:[]};for(let[n,c]of Object.entries(s)){let d=t[n],h=d===void 0;if(c.isRequired&&h){let p=`Required prop \`${n}\` was not specified in \`${e}\`.`;r.push(p);continue}if(h)continue;if(!c.validate(d,n,e)){let p=c.message(d,n,e);r.push(p)}}if(r.length>0){if(i)console.group(`\u26A0\uFE0F Prop validation failed for \`${e}\``),r.forEach((n)=>console.warn(n)),console.groupEnd();if(o)throw Error(`Prop validation failed for \`${e}\`:
|
|
10
10
|
${r.join(`
|
|
11
|
-
`)}`)}return{valid:r.length===0,errors:r}}function D(e,t,s){return(a)=>Fe(e,a,t,s)}function mr(e,t,s="value"){if(!_)return;if(!t.validate(e,s,"assertion"))throw Error(t.message(e,s,"assertion"))}function vr(e,t,s="value"){if(!_)return;if(!t.validate(e,s,"warning"))console.warn(t.message(e,s,"warning"))}var Ge="./Button-wrwmnfpf.stx";var Ue={variant:l.oneOf(["primary","secondary","outline","ghost","danger"]),size:l.oneOf(["xs","sm","md","lg","xl"]),disabled:l.boolean,loading:l.boolean,type:l.oneOf(["button","submit","reset"]),fullWidth:l.boolean,leftIcon:l.string,rightIcon:l.string,className:l.string,onClick:l.func},kr=D("Button",Ue);function Sr(e){return ne(e,"Button","onClick")}function Tr(e){if(e&&!["primary","secondary","outline","ghost","danger"].includes(e))throw M.invalidProp("Button","variant",e,["primary","secondary","outline","ghost","danger"])}function Nr(e){if(e&&!["xs","sm","md","lg","xl"].includes(e))throw M.invalidProp("Button","size",e,["xs","sm","md","lg","xl"])}var Je="./Calendar-gjjhhfnt.stx";var Ze="./Card-473a02fy.stx";var et="./Checkbox-2s2a7n4h.stx";var st="./Combobox-fdkr6cdq.stx";var ot="./ComboboxButton-g76stp1e.stx";var rt="./ComboboxInput-z1293bbh.stx";var lt="./ComboboxOption-6yh7xk7q.stx";var dt="./ComboboxOptions-sq5360ae.stx";var ut="./CommandPalette-36mxf05w.stx";var ft="./CommandPaletteItem-chdw0070.stx";var gt="./Dialog-y5rz2vrq.stx";var mt="./DialogBackdrop-rxax3sec.stx";var wt="./DialogDescription-gth4c2kx.stx";var Ct="./DialogPanel-44d8jeqy.stx";var kt="./DialogTitle-x0r6k8x9.stx";var Tt="./Drawer-jgepqr9j.stx";var At="./Dropdown-vvhemtc0.stx";var Dt="./DropdownButton-wcz67dxy.stx";var Lt="./DropdownItem-d8ht2bp5.stx";var Et="./DropdownItems-1sxnd5qn.stx";var Mt="./Form-vbag14t1.stx";var Rt={action:l.string,method:l.oneOf(["GET","POST","PUT","DELETE","PATCH"]),validationSchema:l.object,initialValues:l.object,validateOnChange:l.boolean,validateOnBlur:l.boolean,onSubmit:l.func,onError:l.func,className:l.string},Nn=D("Form",Rt);var Bt="./Image-4ezne2xj.stx";var Ht="./EmailInput-vak3kkmk.stx";var Vt="./NumberInput-j9p5bm5y.stx";var Ft="./PasswordInput-4qykq1dz.stx";var Gt="./SearchInput-pdx7agn0.stx";var Yt="./TextInput-cefyyprt.stx";var Jt={value:l.string,onChange:l.func,placeholder:l.string,disabled:l.boolean,readonly:l.boolean,size:l.oneOf(["sm","md","lg"]),error:l.boolean,label:l.string,helperText:l.string,required:l.boolean,className:l.string,inputClassName:l.string},Xt={value:l.string,onChange:l.func,placeholder:l.string,disabled:l.boolean,readonly:l.boolean,size:l.oneOf(["sm","md","lg"]),error:l.boolean,label:l.string,helperText:l.string,required:l.boolean,className:l.string,inputClassName:l.string,leftIcon:l.string,rightIcon:l.string,clearable:l.boolean,maxLength:l.number,showCount:l.boolean},Zt={value:l.string,onChange:l.func,placeholder:l.string,disabled:l.boolean,readonly:l.boolean,size:l.oneOf(["sm","md","lg"]),error:l.boolean,label:l.string,helperText:l.string,required:l.boolean,className:l.string,inputClassName:l.string,min:l.number,max:l.number,step:l.number,showControls:l.boolean},Qt={value:l.string,onChange:l.func,placeholder:l.string,disabled:l.boolean,readonly:l.boolean,size:l.oneOf(["sm","md","lg"]),error:l.boolean,label:l.string,helperText:l.string,required:l.boolean,className:l.string,inputClassName:l.string,showStrength:l.boolean},es={value:l.string,onChange:l.func,placeholder:l.string,disabled:l.boolean,readonly:l.boolean,size:l.oneOf(["sm","md","lg"]),error:l.boolean,label:l.string,helperText:l.string,required:l.boolean,className:l.string,inputClassName:l.string,onSearch:l.func,loading:l.boolean},Bn=D("TextInput",Xt),jn=D("EmailInput",Jt),Hn=D("PasswordInput",Qt),Wn=D("NumberInput",Zt),Vn=D("SearchInput",es);var ss="./Listbox-q49tnr90.stx";var os="./ListboxButton-keb8gm0q.stx";var rs="./ListboxLabel-7mymt1b8.stx";var ls="./ListboxOption-4j070101.stx";var ds="./ListboxOptions-ejkatcfg.stx";var us="./FilterChip-h896vrxm.stx";var fs="./FilterChips-7pnzycfd.stx";var gs="./ListRow-v45ymhcn.stx";var ms="./NavBar-wcb6f2d3.stx";var ws="./SectionCard-r73hvvbc.stx";var Cs="./TabBar-8143650x.stx";var ks="./TabBarItem-hd2r2ayy.stx";var Ts="./Navigator-smpa7my4.stx";var As="./Notification-03vfh3k6.stx";var Ds="./Pagination-jbcjrfcs.stx";var Ls="./Checkout-22wh3s22.stx";var Es="./DefaultPaymentMethod-6qrem3sg.stx";var Ms="./PaymentMethods-2xy66bwk.stx";var qs="./SubscriptionCheckout-7fdkwf04.stx";var js="./Popover-et2q44m7.stx";var Ws="./PopoverButton-mffzc9pr.stx";var _s="./PopoverPanel-054yh38h.stx";var Ks="./Portal-1vf14s4x.stx";var Us="./Progress-4h7dytq5.stx";var Js="./Radio-ccm07b2m.stx";var Zs="./RadioGroup-eerw9gq7.stx";var ea="./RadioGroupDescription-z34r9avr.stx";var sa="./RadioGroupLabel-7mymt1b8.stx";var oa="./RadioGroupOption-7pq7rw84.stx";var ra="./Select-zt72gg1e.stx";var la="./Sidebar-dbwp6rnk.stx";var da="./SidebarFooter-s7skj92y.stx";var ua="./SidebarHeader-ktm9ge1v.stx";var fa="./SidebarItem-5v8atp7p.stx";var ga="./SidebarPinned-48kyk193.stx";var ma="./SidebarSection-sqz49ary.stx";var wa="./SidebarSpace-nmbvgrky.stx";var Ca="./SidebarSpaces-h1564zm6.stx";var ka="./SidebarSpaceSwitcher-az9wqm87.stx";var F={blue:"#0088ff",red:"#ff383c",pink:"#ff2d55",orange:"#ff8d28",yellow:"#ffcc00",green:"#34c759",teal:"#00c3d0",cyan:"#00c0e8",indigo:"#6155f5",purple:"#cb30e0",brown:"#ac7f5e",gray:"#8e8e93"},O={pane:["bg-[#f2f2f4]/90 dark:bg-[#1c1c1e]/88","backdrop-blur-[50px] backdrop-saturate-[180%]","text-black dark:text-white","select-none"].join(" "),selection:"accent",layers:{shimmerRim:!0},scrollArea:"flex-1 overflow-y-auto overflow-x-hidden px-[10px] pb-[10px]",sectionHeader:["group/section flex w-full items-center","pl-[8px] pr-[6px] pt-[16px] pb-[5px]","text-[11px] font-semibold leading-[13px]","text-[#3c3c43]/60 dark:text-[#ebebf5]/60"].join(" "),sectionChevron:["i-f7-chevron-down h-[11px] w-[11px] ml-auto","text-[#3c3c43]/45 dark:text-[#ebebf5]/45","opacity-0 group-hover/section:opacity-100 transition-opacity duration-150","transition-transform duration-200"].join(" "),sectionGroup:"flex flex-col",item:{base:["flex w-full items-center","h-[32px] rounded-[8px] pl-[4px] pr-[8px]","text-[13px] leading-[16px] font-normal","text-black dark:text-white","transition-colors duration-150 ease-out","cursor-default"].join(" "),hover:"hover:bg-black/4 dark:hover:bg-white/6",active:"",pressed:"active:bg-black/10 dark:active:bg-white/18",disabled:"opacity-40 pointer-events-none",disclosure:"flex h-[16px] w-[18px] shrink-0 items-center justify-center",chevron:["i-f7-chevron-right h-[11px] w-[11px]","text-[#3c3c43]/55 dark:text-[#ebebf5]/55","transition-transform duration-200 ease-out"].join(" "),iconSlot:"flex h-[20px] w-[22px] shrink-0 items-center justify-center mr-[7px]",icon:"h-[17px] w-[17px]",image:"h-[20px] w-[20px] rounded-[4px] object-cover shadow-sm",label:"flex-1 truncate text-left",count:["ml-[8px] shrink-0 tabular-nums","text-[13px] leading-[16px]","text-[#3c3c43]/60 dark:text-[#ebebf5]/60"].join(" "),indentPerLevel:16}},Sa={selection:"classes",pane:"bg-[#f4f4f3] dark:bg-neutral-950 text-zinc-950 dark:text-white select-none",layers:{},scrollArea:"flex-1 overflow-y-auto overflow-x-hidden px-5 py-5",sectionHeader:"group/section flex w-full items-center gap-2.5 px-4 pb-2 pt-5 text-[13px] font-semibold uppercase tracking-[0.12em] text-zinc-400 dark:text-zinc-500",sectionChevron:"i-f7-chevron-down h-3 w-3 ml-auto opacity-0 group-hover/section:opacity-100 transition-opacity duration-150 transition-transform duration-200",sectionGroup:"flex flex-col space-y-1",item:{base:"flex w-full items-center gap-3 rounded-[16px] px-3.5 py-2 text-[14px] leading-tight transition-colors duration-150",hover:"hover:bg-[#ececea] hover:text-zinc-950 dark:hover:bg-white/10",active:"bg-[#e7e7e5] text-zinc-950 dark:bg-white/12 dark:text-white",pressed:"active:bg-[#e2e2e0] dark:active:bg-white/15",disabled:"opacity-50 pointer-events-none",disclosure:"flex h-4 w-4 shrink-0 items-center justify-center",chevron:"i-f7-chevron-right h-3 w-3 opacity-50 transition-transform duration-200",iconSlot:"flex h-5 w-5 shrink-0 items-center justify-center",icon:"h-[18px] w-[18px] text-zinc-500 dark:text-zinc-500",image:"h-5 w-5 rounded object-cover",label:"flex-1 truncate text-left text-zinc-700 dark:text-zinc-300",count:"ml-auto grid h-5 min-w-5 place-items-center rounded-full bg-white/70 px-1.5 text-[11px] font-medium text-zinc-500 shadow-sm dark:bg-white/10 dark:text-zinc-400",indentPerLevel:12}},Ta={selection:"classes",pane:"bg-[#f3f3f1]/48 dark:bg-neutral-950/32 backdrop-blur-3xl backdrop-saturate-150 text-zinc-950 dark:text-white select-none",layers:{tint:"bg-[linear-gradient(112deg,rgba(255,255,255,0.20)_0%,rgba(255,255,255,0.04)_45%,rgba(226,226,222,0.16)_100%)] dark:bg-[linear-gradient(112deg,rgba(255,255,255,0.08)_0%,rgba(255,255,255,0.02)_46%,rgba(255,255,255,0.06)_100%)]"},scrollArea:"flex-1 overflow-y-auto overflow-x-hidden px-5 py-2",sectionHeader:"group/section flex w-full items-center gap-2.5 px-3 pb-1.5 pt-3 rounded-[14px] text-[12px] font-semibold uppercase tracking-[0.10em] text-zinc-500/80 dark:text-zinc-400/80",sectionChevron:"i-f7-chevron-down h-3 w-3 ml-auto opacity-0 group-hover/section:opacity-100 transition-opacity duration-150 transition-transform duration-200",sectionGroup:"flex flex-col space-y-1",item:{base:"flex w-full items-center gap-3 rounded-[14px] px-3 py-1.5 text-[13.5px] leading-tight transition-colors duration-150",hover:"hover:bg-white/38 hover:text-zinc-950 dark:hover:bg-white/10",active:"bg-[#e8e8e6]/90 text-zinc-950 dark:bg-white/12 dark:text-white",pressed:"active:bg-white/50 dark:active:bg-white/15",disabled:"opacity-50 pointer-events-none",disclosure:"flex h-4 w-4 shrink-0 items-center justify-center",chevron:"i-f7-chevron-right h-3 w-3 opacity-50 transition-transform duration-200",iconSlot:"flex h-5 w-5 shrink-0 items-center justify-center",icon:"h-[18px] w-[18px] text-zinc-600 dark:text-zinc-400",image:"h-5 w-5 rounded object-cover",label:"flex-1 truncate text-left text-zinc-700 dark:text-zinc-300",count:"ml-auto grid h-5 min-w-5 place-items-center rounded-full bg-white/72 px-1.5 text-[11px] font-medium text-zinc-500 shadow-sm dark:bg-white/10 dark:text-zinc-400",indentPerLevel:12}},Na={selection:"classes",pane:["bg-[#f7f5f1]/92 dark:bg-[#1a1a1c]/92","backdrop-blur-[40px] backdrop-saturate-[160%]","text-[#2c2a28] dark:text-[#ededf0]","select-none"].join(" "),layers:{tint:["bg-[linear-gradient(180deg,var(--stx-sidebar-tint,rgba(255,251,242,0.55))_0%,rgba(255,255,255,0)_38%)]","dark:bg-[linear-gradient(180deg,var(--stx-sidebar-tint,rgba(255,255,255,0.05))_0%,rgba(255,255,255,0)_42%)]"].join(" ")},scrollArea:"flex-1 overflow-y-auto overflow-x-hidden px-[16px] pb-[8px]",sectionHeader:["group/section flex w-full items-center","px-[8px] pt-[14px] pb-[4px]","text-[11px] font-medium leading-[13px]","opacity-55"].join(" "),sectionChevron:["i-f7-chevron-down h-[10px] w-[10px] ml-auto","opacity-0 group-hover/section:opacity-100 transition-opacity duration-150","transition-transform duration-200"].join(" "),sectionGroup:"flex flex-col space-y-[2px]",item:{base:["flex w-full items-center","h-[30px] rounded-[8px] pl-[6px] pr-[8px]","text-[13px] leading-[16px] font-normal","text-current","transition-[background-color,box-shadow,color] duration-150 ease-out","cursor-default"].join(" "),hover:"hover:bg-white/55 dark:hover:bg-white/8",active:["bg-white dark:bg-white/14","font-medium","shadow-[0_1px_2px_rgba(0,0,0,0.08)] dark:shadow-[0_1px_2px_rgba(0,0,0,0.35)]","ring-1 ring-black/5 dark:ring-white/8"].join(" "),pressed:"active:bg-white/80 dark:active:bg-white/18",disabled:"opacity-40 pointer-events-none",disclosure:"flex h-[16px] w-[16px] shrink-0 items-center justify-center",chevron:["i-f7-chevron-right h-[10px] w-[10px] opacity-45","transition-transform duration-200 ease-out"].join(" "),iconSlot:"flex h-[18px] w-[18px] shrink-0 items-center justify-center mr-[8px]",icon:"h-[16px] w-[16px]",image:"h-[18px] w-[18px] rounded-[5px] object-cover shadow-sm",label:"flex-1 truncate text-left",count:["ml-[8px] shrink-0 tabular-nums","text-[12px] leading-[16px] opacity-45"].join(" "),indentPerLevel:14}},Aa={...O,pane:"bg-stone-100 dark:bg-neutral-900 text-black dark:text-white select-none",layers:{}},Ia={...O,pane:"bg-transparent text-black dark:text-white select-none",layers:{}},Da={...O,pane:"bg-white/50 dark:bg-black/40 backdrop-blur-3xl backdrop-saturate-200 text-black dark:text-white select-none",layers:{}},le={macos:O,tahoe:O,"macos-tahoe":O,"macos-latest":O,arc:Na,workspace:Sa,desktop:Ta,solid:Aa,transparent:Ia,vibrancy:Da};function $c(e){return le[e||"macos"]||le.macos}function kc(e){if(!e)return;return F[e]||e}var Pa=F.gray;function z(e,t,s){return`color-mix(in oklab, ${e} ${t}%, ${s})`}function ce(e){return{light:{from:z(e,35,"#ffffff"),to:z(e,12.5,"#ffffff"),ink:z(e,22,"#17171b"),accent:z(e,88,"#2a2a30")},dark:{from:z(e,27,"#101014"),to:z(e,10,"#08080b"),ink:z(e,12,"#f4f4f7"),accent:z(e,74,"#ffffff")}}}function Nc(e,t){return`linear-gradient(180deg, ${e} 0%, ${t} 100%)`}function La(e){if(!e)return ce(Pa);if(typeof e!=="string")return e;return ce(F[e]||e)}function za(e){return[`--stx-space-light-from: ${e.light.from}`,`--stx-space-light-to: ${e.light.to}`,`--stx-space-light-ink: ${e.light.ink}`,`--stx-space-light-accent: ${e.light.accent}`,`--stx-space-dark-from: ${e.dark.from}`,`--stx-space-dark-to: ${e.dark.to}`,`--stx-space-dark-ink: ${e.dark.ink}`,`--stx-space-dark-accent: ${e.dark.accent}`].join("; ")}function de(e,t,s,a){if(!e||!e.label)return null;return{id:e.id||`${t}-${s}`,label:e.label,icon:e.icon||a}}function Ea(e){let t=La(e.tint);return{id:e.id,label:e.label||"",icon:e.icon||"",pinned:e.pinned||[],sections:e.sections||[],action:de(e.action,e.id,"action","i-f7-plus"),clear:de(e.clear,e.id,"clear","i-f7-arrow-down"),tint:t,style:za(t),deferred:e.deferred===!0,showTitle:e.showTitle??!0}}function Ac(e){return(e||[]).map(Ea)}function Ic(e,t){if(!t)return 0;let s=e.findIndex((a)=>a.id===t);return s===-1?0:s}function Dc(e){return e.map((t)=>t.tint)}var Ma="./Skeleton-wtwb97xd.stx";var qa="./Spinner-ypya5tt2.stx";var ja="./Stepper-rgbk76hd.stx";var Wa="./StepperStep-3ahq4d9m.stx";class K{storage;namespace;watchers=new Map;encryptionKey="stx-storage-key";constructor(e="local",t=""){if(this.storage=e==="local"?globalThis.localStorage:globalThis.sessionStorage,this.namespace=t,typeof window<"u")window.addEventListener("storage",this.handleStorageEvent.bind(this))}handleStorageEvent(e){if(!e.key)return;let t=this.namespace&&e.key.startsWith(`${this.namespace}:`)?e.key.slice(this.namespace.length+1):e.key,s=this.watchers.get(t);if(s){let a=e.oldValue?JSON.parse(e.oldValue).value:null,o=e.newValue?JSON.parse(e.newValue).value:null;s.forEach((i)=>i(o,a,t))}}encrypt(e){let t="";for(let s=0;s<e.length;s++)t+=String.fromCharCode(e.charCodeAt(s)^this.encryptionKey.charCodeAt(s%this.encryptionKey.length));return btoa(t)}decrypt(e){try{let t=atob(e),s="";for(let a=0;a<t.length;a++)s+=String.fromCharCode(t.charCodeAt(a)^this.encryptionKey.charCodeAt(a%this.encryptionKey.length));return s}catch{return e}}compress(e){if(e.length<100)return e;let t={},s=256,a=[],o="";for(let i=0;i<e.length;i++){let r=e.charAt(i),n=o+r;if(t[n]!==void 0)o=n;else a.push(o.length>1?t[o]:o.charCodeAt(0)),t[n]=s++,o=r}if(o!=="")a.push(o.length>1?t[o]:o.charCodeAt(0));return JSON.stringify(a)}decompress(e){try{let t=JSON.parse(e);if(!Array.isArray(t))return e;let s={},a=256,o=String.fromCharCode(t[0]),i=o;for(let r=1;r<t.length;r++){let n=t[r],c;if(s[n]!==void 0)c=s[n];else if(n===a)c=o+o.charAt(0);else return e;i+=c,s[a++]=o+c.charAt(0),o=c}return i}catch{return e}}getKey(e){return this.namespace?`${this.namespace}:${e}`:e}set(e,t,s){let a=this.getKey(e),o=this.get(e),i={value:t,timestamp:Date.now(),expire:s?.expire,encrypted:s?.encrypt||!1,compressed:s?.compress||!1};try{let r=JSON.stringify(i);if(s?.compress)r=this.compress(r);if(s?.encrypt)r=this.encrypt(r);this.storage.setItem(a,r),this.notifyWatchers(e,t,o)}catch(r){console.error("Storage set error:",r)}}get(e){let t=this.getKey(e);try{let s=this.storage.getItem(t);if(!s)return null;if(s.match(/^[A-Z0-9+/]+=*$/i))try{s=this.decrypt(s)}catch{}if(s.startsWith("["))try{s=this.decompress(s)}catch{}let a=JSON.parse(s);if(a.expire&&Date.now()-a.timestamp>a.expire)return this.remove(e),null;return a.value}catch(s){return console.error("Storage get error:",s),null}}watch(e,t){if(!this.watchers.has(e))this.watchers.set(e,new Set);return this.watchers.get(e).add(t),()=>{let s=this.watchers.get(e);if(s){if(s.delete(t),s.size===0)this.watchers.delete(e)}}}notifyWatchers(e,t,s){let a=this.watchers.get(e);if(a)a.forEach((o)=>o(t,s,e))}remove(e){let t=this.getKey(e),s=this.get(e);this.storage.removeItem(t),this.notifyWatchers(e,null,s)}clear(){if(this.namespace)this.keys().forEach((t)=>this.remove(t));else this.storage.clear()}has(e){return this.get(e)!==null}keys(){let e=Object.keys(this.storage);if(this.namespace){let t=`${this.namespace}:`;return e.filter((s)=>s.startsWith(t)).map((s)=>s.slice(t.length))}return e}size(){return this.keys().length}getQuota(){if("storage"in navigator&&"estimate"in navigator.storage)return null;try{let e=0;for(let s=0;s<this.storage.length;s++){let a=this.storage.key(s);if(a){let o=this.storage.getItem(a)||"";e+=a.length+o.length}}let t=5242880;return{usage:e*2,quota:t,percentage:e*2/t*100}}catch{return null}}setMany(e,t){Object.entries(e).forEach(([s,a])=>{this.set(s,a,t)})}getMany(e){let t={};return e.forEach((s)=>{t[s]=this.get(s)}),t}removeMany(e){e.forEach((t)=>this.remove(t))}}var sd={local:new K("local"),session:new K("session")};function ad(e="local",t){return new K(e,t)}var _a="./Switch-hdta55a8.stx";var Ka="./Table-0mc3fdek.stx";var Ua="./TableBody-drxyz5jh.stx";var Ja="./TableCell-8swtcq8s.stx";var Za="./TableHead-e9xvjx2j.stx";var eo="./TableHeader-sxc77b4d.stx";var so="./TableRow-xd542nvb.stx";var oo="./TabPanel-5htevsq6.stx";var ro="./Tabs-b4xsba1w.stx";var lo="./Teleport-tsx4bt4n.stx";var po="./Textarea-xcdym703.stx";var ho="./Tooltip-y61h04gp.stx";var bo="./Transition-7smenaz8.stx";var xo="./Video-a0aeyexv.stx";var vo="./VirtualList-fa7v5a3h.stx";var yo="./VirtualTable-jvm1784g.stx";var Co=0;function pe(e="a11y"){return`${e}-${++Co}-${Date.now()}`}function Gd(e,t,s={}){let{visible:a=!1,id:o=pe("label")}=s,i=document.createElement(a?"label":"span");if(i.id=o,i.textContent=e,!a)Object.assign(i.style,{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:"0"});if(t)if(t.setAttribute("aria-labelledby",o),t.parentElement)t.parentElement.insertBefore(i,t);else document.body.appendChild(i);return o}function Ud(e,t){let s=pe("desc"),a=document.createElement("span");if(a.id=s,a.textContent=e,Object.assign(a.style,{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:"0"}),t)if(t.setAttribute("aria-describedby",s),t.parentElement)t.parentElement.insertBefore(a,t);else document.body.appendChild(a);return s}function Yd(e,t="polite"){let s=document.createElement("div");s.setAttribute("role","status"),s.setAttribute("aria-live",t),s.setAttribute("aria-atomic","true"),Object.assign(s.style,{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:"0"}),document.body.appendChild(s),setTimeout(()=>{s.textContent=e},100),setTimeout(()=>{s.parentNode?.removeChild(s)},1000)}function ee(e){let t=["a[href]","area[href]",'input:not([disabled]):not([type="hidden"])',"select:not([disabled])","textarea:not([disabled])","button:not([disabled])","iframe","object","embed","[contenteditable]",'[tabindex]:not([tabindex="-1"])'].join(",");return Array.from(e.querySelectorAll(t)).filter((s)=>s.offsetParent!==null)}function Jd(e,t={}){let{initialFocus:s,returnFocus:a,escapeDeactivates:o=!0,clickOutsideDeactivates:i=!0,allowOutsideClick:r=!1,onActivate:n,onDeactivate:c}=t,d=!1,h=!1,p=null,g=(m)=>{if(h)return;if(o&&m.key==="Escape"){m.preventDefault(),v();return}if(m.key==="Tab"){let C=ee(e);if(C.length===0){m.preventDefault();return}let A=C[0],L=C[C.length-1];if(m.shiftKey){if(document.activeElement===A)m.preventDefault(),L.focus()}else if(document.activeElement===L)m.preventDefault(),A.focus()}},f=(m)=>{if(h)return;if(!e.contains(m.target)){if(typeof r==="function"){if(!r(m)&&i)v()}else if(!r&&i)v()}};function w(){if(d)return;d=!0,p=document.activeElement;let m=s||ee(e)[0];if(m&&typeof m.focus==="function")m.focus();document.addEventListener("keydown",g),document.addEventListener("click",f),n?.()}function v(){if(!d)return;d=!1;let m=a||p;if(m&&typeof m.focus==="function")m.focus();document.removeEventListener("keydown",g),document.removeEventListener("click",f),c?.()}function k(){h=!0}function x(){h=!1}return{activate:w,deactivate:v,pause:k,unpause:x}}function Xd(e,t={}){let{selector:s='[role="option"], [role="menuitem"], [role="tab"], button',initialIndex:a=0,orientation:o="both",loop:i=!0,onFocusChange:r}=t,n=a,c=()=>{return Array.from(e.querySelectorAll(s))},d=(p)=>{let g=c();if(p<0||p>=g.length)return;g.forEach((f,w)=>{if(w===p){if(f.setAttribute("tabindex","0"),typeof f.focus==="function")f.focus()}else f.setAttribute("tabindex","-1")}),n=p,r?.(p,g[p])},h=(p)=>{let f=c().length-1,w=!1,v=n;switch(p.key){case"ArrowRight":if(o==="horizontal"||o==="both"){if(v=n+1,v>f)v=i?0:f;w=!0}break;case"ArrowLeft":if(o==="horizontal"||o==="both"){if(v=n-1,v<0)v=i?f:0;w=!0}break;case"ArrowDown":if(o==="vertical"||o==="both"){if(v=n+1,v>f)v=i?0:f;w=!0}break;case"ArrowUp":if(o==="vertical"||o==="both"){if(v=n-1,v<0)v=i?f:0;w=!0}break;case"Home":v=0,w=!0;break;case"End":v=f,w=!0;break}if(w)p.preventDefault(),d(v)};return d(a),e.addEventListener("keydown",h),()=>{e.removeEventListener("keydown",h)}}var Zd={Enter:"Enter",Space:" ",Escape:"Escape",ArrowUp:"ArrowUp",ArrowDown:"ArrowDown",ArrowLeft:"ArrowLeft",ArrowRight:"ArrowRight",Tab:"Tab",Home:"Home",End:"End",PageUp:"PageUp",PageDown:"PageDown"};function Qd(e){return document.activeElement===e}function ep(e,t){let s=t||document.activeElement,a=ee(document.body),o=a.indexOf(s);if(o===-1)return;let i=e==="next"?o+1:o-1,r=a[i];if(r)r.focus()}function tp(e){if(e.getAttribute("aria-hidden")==="true")return!1;let t=window.getComputedStyle(e);if(t.display==="none"||t.visibility==="hidden")return!1;return!0}var sp={setExpanded(e,t){e.setAttribute("aria-expanded",String(t))},setSelected(e,t){e.setAttribute("aria-selected",String(t))},setChecked(e,t){e.setAttribute("aria-checked",String(t))},setDisabled(e,t){if(e.setAttribute("aria-disabled",String(t)),t)e.setAttribute("tabindex","-1");else e.removeAttribute("tabindex")},setHidden(e,t){if(t)e.setAttribute("aria-hidden","true");else e.removeAttribute("aria-hidden")},setPressed(e,t){e.setAttribute("aria-pressed",String(t))},setInvalid(e,t){e.setAttribute("aria-invalid",String(t))},setRequired(e,t){e.setAttribute("aria-required",String(t))},setLive(e,t){e.setAttribute("aria-live",t)},setBusy(e,t){e.setAttribute("aria-busy",String(t))}};function ap(e){let t=document.createElement("span");return t.textContent=e,t.className="sr-only",Object.assign(t.style,{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:"0"}),t}function op(){if(typeof window.matchMedia==="function")return window.matchMedia("(prefers-reduced-motion: reduce)").matches;return!1}function ip(){if(typeof window.matchMedia==="function")return window.matchMedia("(prefers-contrast: high)").matches;return!1}function rp(){if(typeof window.matchMedia==="function"){if(window.matchMedia("(prefers-color-scheme: dark)").matches)return"dark";if(window.matchMedia("(prefers-color-scheme: light)").matches)return"light"}return null}function np(e,t="Skip to main content"){let s=document.createElement("a");return s.href=`#${e}`,s.textContent=t,s.className="skip-link",Object.assign(s.style,{position:"absolute",top:"-40px",left:"0",background:"#000",color:"#fff",padding:"8px",textDecoration:"none",zIndex:"100"}),s.addEventListener("focus",()=>{s.style.top="0"}),s.addEventListener("blur",()=>{s.style.top="-40px"}),s}function lp(e){let t=[],s=(a)=>{let o=e.getAttribute(a);if(o){let i=o.split(" ");for(let r of i)if(!document.getElementById(r))t.push(`${a} references non-existent ID: ${r}`)}};return s("aria-labelledby"),s("aria-describedby"),s("aria-controls"),s("aria-owns"),s("aria-activedescendant"),t}var $o=(e,t,s,a)=>{return s*e/a+t},ko=(e,t,s,a)=>{return e/=a,s*e*e+t},So=(e,t,s,a)=>{return e/=a,-s*e*(e-2)+t},To=(e,t,s,a)=>{if(e/=a/2,e<1)return s/2*e*e+t;return e--,-s/2*(e*(e-2)-1)+t},No=(e,t,s,a)=>{return e/=a,s*e*e*e+t},Ao=(e,t,s,a)=>{return e/=a,e--,s*(e*e*e+1)+t},Io=(e,t,s,a)=>{if(e/=a/2,e<1)return s/2*e*e*e+t;return e-=2,s/2*(e*e*e+2)+t},Do=(e,t,s,a)=>{return e/=a,s*e*e*e*e+t},Po=(e,t,s,a)=>{return e/=a,e--,-s*(e*e*e*e-1)+t},Lo=(e,t,s,a)=>{if(e/=a/2,e<1)return s/2*e*e*e*e+t;return e-=2,-s/2*(e*e*e*e-2)+t},zo=(e,t,s,a)=>{return e/=a,s*e*e*e*e*e+t},Eo=(e,t,s,a)=>{return e/=a,e--,s*(e*e*e*e*e+1)+t},Oo=(e,t,s,a)=>{if(e/=a/2,e<1)return s/2*e*e*e*e*e+t;return e-=2,s/2*(e*e*e*e*e+2)+t},Mo=(e,t,s,a)=>{return-s*Math.cos(e/a*(Math.PI/2))+s+t},Ro=(e,t,s,a)=>{return s*Math.sin(e/a*(Math.PI/2))+t},qo=(e,t,s,a)=>{return-s/2*(Math.cos(Math.PI*e/a)-1)+t},Bo=(e,t,s,a)=>{return e===0?t:s*2**(10*(e/a-1))+t},jo=(e,t,s,a)=>{return e===a?t+s:s*(-(2**(-10*e/a))+1)+t},Ho=(e,t,s,a)=>{if(e===0)return t;if(e===a)return t+s;if(e/=a/2,e<1)return s/2*2**(10*(e-1))+t;return e--,s/2*(-(2**(-10*e))+2)+t},Wo=(e,t,s,a)=>{return e/=a,-s*(Math.sqrt(1-e*e)-1)+t},Vo=(e,t,s,a)=>{return e/=a,e--,s*Math.sqrt(1-e*e)+t},_o=(e,t,s,a)=>{if(e/=a/2,e<1)return-s/2*(Math.sqrt(1-e*e)-1)+t;return e-=2,s/2*(Math.sqrt(1-e*e)+1)+t},Fo=(e,t,s,a)=>{let o=1.70158,i=0,r=s;if(e===0)return t;if(e/=a,e===1)return t+s;if(!i)i=a*0.3;if(r<Math.abs(s))r=s,o=i/4;else o=i/(2*Math.PI)*Math.asin(s/r);return e-=1,-(r*2**(10*e)*Math.sin((e*a-o)*(2*Math.PI)/i))+t},Ko=(e,t,s,a)=>{let o=1.70158,i=0,r=s;if(e===0)return t;if(e/=a,e===1)return t+s;if(!i)i=a*0.3;if(r<Math.abs(s))r=s,o=i/4;else o=i/(2*Math.PI)*Math.asin(s/r);return r*2**(-10*e)*Math.sin((e*a-o)*(2*Math.PI)/i)+s+t},Go=(e,t,s,a)=>{let o=1.70158,i=0,r=s;if(e===0)return t;if(e/=a/2,e===2)return t+s;if(!i)i=a*0.44999999999999996;if(r<Math.abs(s))r=s,o=i/4;else o=i/(2*Math.PI)*Math.asin(s/r);if(e<1)return e-=1,-0.5*(r*2**(10*e)*Math.sin((e*a-o)*(2*Math.PI)/i))+t;return e-=1,r*2**(-10*e)*Math.sin((e*a-o)*(2*Math.PI)/i)*0.5+s+t},Uo=(e,t,s,a)=>{return e/=a,s*e*e*(2.70158*e-1.70158)+t},Yo=(e,t,s,a)=>{return e/=a,e--,s*(e*e*(2.70158*e+1.70158)+1)+t},Jo=(e,t,s,a)=>{let o=1.70158;if(e/=a/2,e<1)return o*=1.525,s/2*(e*e*((o+1)*e-o))+t;return e-=2,o*=1.525,s/2*(e*e*((o+1)*e+o)+2)+t},te=(e,t,s,a)=>{if(e/=a,e<0.36363636363636365)return s*(7.5625*e*e)+t;else if(e<0.7272727272727273)return e-=0.5454545454545454,s*(7.5625*e*e+0.75)+t;else if(e<0.9090909090909091)return e-=0.8181818181818182,s*(7.5625*e*e+0.9375)+t;else return e-=0.9545454545454546,s*(7.5625*e*e+0.984375)+t},ue=(e,t,s,a)=>{return s-te(a-e,0,s,a)+t},Xo=(e,t,s,a)=>{if(e<a/2)return ue(e*2,0,s,a)*0.5+t;return te(e*2-a,0,s,a)*0.5+s*0.5+t},dp={linear:$o,easeInQuad:ko,easeOutQuad:So,easeInOutQuad:To,easeInCubic:No,easeOutCubic:Ao,easeInOutCubic:Io,easeInQuart:Do,easeOutQuart:Po,easeInOutQuart:Lo,easeInQuint:zo,easeOutQuint:Eo,easeInOutQuint:Oo,easeInSine:Mo,easeOutSine:Ro,easeInOutSine:qo,easeInExpo:Bo,easeOutExpo:jo,easeInOutExpo:Ho,easeInCirc:Wo,easeOutCirc:Vo,easeInOutCirc:_o,easeInElastic:Fo,easeOutElastic:Ko,easeInOutElastic:Go,easeInBack:Uo,easeOutBack:Yo,easeInOutBack:Jo,easeInBounce:ue,easeOutBounce:te,easeInOutBounce:Xo};function Zo(e,t={}){let{duration:s="1s",timing:a="ease",delay:o="0s",iteration:i="1",direction:r="normal",fill:n="both",playState:c="running"}=t;return`${e} ${s} ${a} ${o} ${i} ${r} ${n} ${c}`}function he(e,t,s={}){e.style.animation=Zo(t,s)}function up(e){e.style.animation=""}function Qo(e){return new Promise((t)=>{let s=()=>{e.removeEventListener("animationend",s),t()};e.addEventListener("animationend",s)})}function hp(e,t,s={}){let{stagger:a=100,...o}=s;e.forEach((i,r)=>{let n=`${r*a}ms`;he(i,t,{...o,delay:n})})}async function fp(e,t){for(let s of t)he(e,s.name,s.options),await Qo(e)}var bp={fadeIn:"animate-fade-in",fadeOut:"animate-fade-out",slideInUp:"animate-slide-in-up",slideInDown:"animate-slide-in-down",slideInLeft:"animate-slide-in-left",slideInRight:"animate-slide-in-right",zoomIn:"animate-zoom-in",zoomOut:"animate-zoom-out",bounce:"animate-bounce",spin:"animate-spin",ping:"animate-ping",pulse:"animate-pulse"};function gp(e,t,s=1000){return new Promise((a)=>{e.classList.add(t),setTimeout(()=>{e.classList.remove(t),a()},s)})}function xp(e,t){let s=`
|
|
11
|
+
`)}`)}return{valid:r.length===0,errors:r}}function D(e,t,s){return(a)=>Fe(e,a,t,s)}function mr(e,t,s="value"){if(!_)return;if(!t.validate(e,s,"assertion"))throw Error(t.message(e,s,"assertion"))}function vr(e,t,s="value"){if(!_)return;if(!t.validate(e,s,"warning"))console.warn(t.message(e,s,"warning"))}var Ge="./Button-wrwmnfpf.stx";var Ue={variant:l.oneOf(["primary","secondary","outline","ghost","danger"]),size:l.oneOf(["xs","sm","md","lg","xl"]),disabled:l.boolean,loading:l.boolean,type:l.oneOf(["button","submit","reset"]),fullWidth:l.boolean,leftIcon:l.string,rightIcon:l.string,className:l.string,onClick:l.func},kr=D("Button",Ue);function Sr(e){return ne(e,"Button","onClick")}function Tr(e){if(e&&!["primary","secondary","outline","ghost","danger"].includes(e))throw M.invalidProp("Button","variant",e,["primary","secondary","outline","ghost","danger"])}function Nr(e){if(e&&!["xs","sm","md","lg","xl"].includes(e))throw M.invalidProp("Button","size",e,["xs","sm","md","lg","xl"])}var Je="./Calendar-gjjhhfnt.stx";var Ze="./Card-473a02fy.stx";var et="./Checkbox-2s2a7n4h.stx";var st="./Combobox-fdkr6cdq.stx";var ot="./ComboboxButton-g76stp1e.stx";var rt="./ComboboxInput-z1293bbh.stx";var lt="./ComboboxOption-6yh7xk7q.stx";var dt="./ComboboxOptions-sq5360ae.stx";var ut="./CommandPalette-36mxf05w.stx";var ft="./CommandPaletteItem-chdw0070.stx";var gt="./Dialog-y5rz2vrq.stx";var mt="./DialogBackdrop-rxax3sec.stx";var wt="./DialogDescription-gth4c2kx.stx";var Ct="./DialogPanel-44d8jeqy.stx";var kt="./DialogTitle-x0r6k8x9.stx";var Tt="./Drawer-jgepqr9j.stx";var At="./Dropdown-vvhemtc0.stx";var Dt="./DropdownButton-wcz67dxy.stx";var Lt="./DropdownItem-d8ht2bp5.stx";var Et="./DropdownItems-1sxnd5qn.stx";var Mt="./Form-vbag14t1.stx";var Rt={action:l.string,method:l.oneOf(["GET","POST","PUT","DELETE","PATCH"]),validationSchema:l.object,initialValues:l.object,validateOnChange:l.boolean,validateOnBlur:l.boolean,onSubmit:l.func,onError:l.func,className:l.string},Nn=D("Form",Rt);var Bt="./Image-4ezne2xj.stx";var Ht="./EmailInput-vak3kkmk.stx";var Vt="./NumberInput-j9p5bm5y.stx";var Ft="./PasswordInput-4qykq1dz.stx";var Gt="./SearchInput-pdx7agn0.stx";var Yt="./TextInput-cefyyprt.stx";var Jt={value:l.string,onChange:l.func,placeholder:l.string,disabled:l.boolean,readonly:l.boolean,size:l.oneOf(["sm","md","lg"]),error:l.boolean,label:l.string,helperText:l.string,required:l.boolean,className:l.string,inputClassName:l.string},Xt={value:l.string,onChange:l.func,placeholder:l.string,disabled:l.boolean,readonly:l.boolean,size:l.oneOf(["sm","md","lg"]),error:l.boolean,label:l.string,helperText:l.string,required:l.boolean,className:l.string,inputClassName:l.string,leftIcon:l.string,rightIcon:l.string,clearable:l.boolean,maxLength:l.number,showCount:l.boolean},Zt={value:l.string,onChange:l.func,placeholder:l.string,disabled:l.boolean,readonly:l.boolean,size:l.oneOf(["sm","md","lg"]),error:l.boolean,label:l.string,helperText:l.string,required:l.boolean,className:l.string,inputClassName:l.string,min:l.number,max:l.number,step:l.number,showControls:l.boolean},Qt={value:l.string,onChange:l.func,placeholder:l.string,disabled:l.boolean,readonly:l.boolean,size:l.oneOf(["sm","md","lg"]),error:l.boolean,label:l.string,helperText:l.string,required:l.boolean,className:l.string,inputClassName:l.string,showStrength:l.boolean},es={value:l.string,onChange:l.func,placeholder:l.string,disabled:l.boolean,readonly:l.boolean,size:l.oneOf(["sm","md","lg"]),error:l.boolean,label:l.string,helperText:l.string,required:l.boolean,className:l.string,inputClassName:l.string,onSearch:l.func,loading:l.boolean},Bn=D("TextInput",Xt),jn=D("EmailInput",Jt),Hn=D("PasswordInput",Qt),Wn=D("NumberInput",Zt),Vn=D("SearchInput",es);var ss="./Listbox-q49tnr90.stx";var os="./ListboxButton-keb8gm0q.stx";var rs="./ListboxLabel-7mymt1b8.stx";var ls="./ListboxOption-4j070101.stx";var ds="./ListboxOptions-ejkatcfg.stx";var us="./FilterChip-h896vrxm.stx";var fs="./FilterChips-7pnzycfd.stx";var gs="./ListRow-v45ymhcn.stx";var ms="./NavBar-wcb6f2d3.stx";var ws="./SectionCard-r73hvvbc.stx";var Cs="./TabBar-8143650x.stx";var ks="./TabBarItem-hd2r2ayy.stx";var Ts="./Navigator-smpa7my4.stx";var As="./Notification-03vfh3k6.stx";var Ds="./Pagination-jbcjrfcs.stx";var Ls="./Checkout-22wh3s22.stx";var Es="./DefaultPaymentMethod-6qrem3sg.stx";var Ms="./PaymentMethods-2xy66bwk.stx";var qs="./SubscriptionCheckout-7fdkwf04.stx";var js="./Popover-et2q44m7.stx";var Ws="./PopoverButton-mffzc9pr.stx";var _s="./PopoverPanel-054yh38h.stx";var Ks="./Portal-1vf14s4x.stx";var Us="./Progress-4h7dytq5.stx";var Js="./Radio-ccm07b2m.stx";var Zs="./RadioGroup-eerw9gq7.stx";var ea="./RadioGroupDescription-z34r9avr.stx";var sa="./RadioGroupLabel-7mymt1b8.stx";var oa="./RadioGroupOption-7pq7rw84.stx";var ra="./Select-zt72gg1e.stx";var la="./Sidebar-dbwp6rnk.stx";var da="./SidebarFooter-s7skj92y.stx";var ua="./SidebarHeader-3dppxxjh.stx";var fa="./SidebarItem-5v8atp7p.stx";var ga="./SidebarPinned-48kyk193.stx";var ma="./SidebarSection-sqz49ary.stx";var wa="./SidebarSpace-nmbvgrky.stx";var Ca="./SidebarSpaces-h1564zm6.stx";var ka="./SidebarSpaceSwitcher-az9wqm87.stx";var F={blue:"#0088ff",red:"#ff383c",pink:"#ff2d55",orange:"#ff8d28",yellow:"#ffcc00",green:"#34c759",teal:"#00c3d0",cyan:"#00c0e8",indigo:"#6155f5",purple:"#cb30e0",brown:"#ac7f5e",gray:"#8e8e93"},O={pane:["bg-[#f2f2f4]/90 dark:bg-[#1c1c1e]/88","backdrop-blur-[50px] backdrop-saturate-[180%]","text-black dark:text-white","select-none"].join(" "),selection:"accent",layers:{shimmerRim:!0},scrollArea:"flex-1 overflow-y-auto overflow-x-hidden px-[10px] pb-[10px]",sectionHeader:["group/section flex w-full items-center","pl-[8px] pr-[6px] pt-[16px] pb-[5px]","text-[11px] font-semibold leading-[13px]","text-[#3c3c43]/60 dark:text-[#ebebf5]/60"].join(" "),sectionChevron:["i-f7-chevron-down h-[11px] w-[11px] ml-auto","text-[#3c3c43]/45 dark:text-[#ebebf5]/45","opacity-0 group-hover/section:opacity-100 transition-opacity duration-150","transition-transform duration-200"].join(" "),sectionGroup:"flex flex-col",item:{base:["flex w-full items-center","h-[32px] rounded-[8px] pl-[4px] pr-[8px]","text-[13px] leading-[16px] font-normal","text-black dark:text-white","transition-colors duration-150 ease-out","cursor-default"].join(" "),hover:"hover:bg-black/4 dark:hover:bg-white/6",active:"",pressed:"active:bg-black/10 dark:active:bg-white/18",disabled:"opacity-40 pointer-events-none",disclosure:"flex h-[16px] w-[18px] shrink-0 items-center justify-center",chevron:["i-f7-chevron-right h-[11px] w-[11px]","text-[#3c3c43]/55 dark:text-[#ebebf5]/55","transition-transform duration-200 ease-out"].join(" "),iconSlot:"flex h-[20px] w-[22px] shrink-0 items-center justify-center mr-[7px]",icon:"h-[17px] w-[17px]",image:"h-[20px] w-[20px] rounded-[4px] object-cover shadow-sm",label:"flex-1 truncate text-left",count:["ml-[8px] shrink-0 tabular-nums","text-[13px] leading-[16px]","text-[#3c3c43]/60 dark:text-[#ebebf5]/60"].join(" "),indentPerLevel:16}},Sa={selection:"classes",pane:"bg-[#f4f4f3] dark:bg-neutral-950 text-zinc-950 dark:text-white select-none",layers:{},scrollArea:"flex-1 overflow-y-auto overflow-x-hidden px-5 py-5",sectionHeader:"group/section flex w-full items-center gap-2.5 px-4 pb-2 pt-5 text-[13px] font-semibold uppercase tracking-[0.12em] text-zinc-400 dark:text-zinc-500",sectionChevron:"i-f7-chevron-down h-3 w-3 ml-auto opacity-0 group-hover/section:opacity-100 transition-opacity duration-150 transition-transform duration-200",sectionGroup:"flex flex-col space-y-1",item:{base:"flex w-full items-center gap-3 rounded-[16px] px-3.5 py-2 text-[14px] leading-tight transition-colors duration-150",hover:"hover:bg-[#ececea] hover:text-zinc-950 dark:hover:bg-white/10",active:"bg-[#e7e7e5] text-zinc-950 dark:bg-white/12 dark:text-white",pressed:"active:bg-[#e2e2e0] dark:active:bg-white/15",disabled:"opacity-50 pointer-events-none",disclosure:"flex h-4 w-4 shrink-0 items-center justify-center",chevron:"i-f7-chevron-right h-3 w-3 opacity-50 transition-transform duration-200",iconSlot:"flex h-5 w-5 shrink-0 items-center justify-center",icon:"h-[18px] w-[18px] text-zinc-500 dark:text-zinc-500",image:"h-5 w-5 rounded object-cover",label:"flex-1 truncate text-left text-zinc-700 dark:text-zinc-300",count:"ml-auto grid h-5 min-w-5 place-items-center rounded-full bg-white/70 px-1.5 text-[11px] font-medium text-zinc-500 shadow-sm dark:bg-white/10 dark:text-zinc-400",indentPerLevel:12}},Ta={selection:"classes",pane:"bg-[#f3f3f1]/48 dark:bg-neutral-950/32 backdrop-blur-3xl backdrop-saturate-150 text-zinc-950 dark:text-white select-none",layers:{tint:"bg-[linear-gradient(112deg,rgba(255,255,255,0.20)_0%,rgba(255,255,255,0.04)_45%,rgba(226,226,222,0.16)_100%)] dark:bg-[linear-gradient(112deg,rgba(255,255,255,0.08)_0%,rgba(255,255,255,0.02)_46%,rgba(255,255,255,0.06)_100%)]"},scrollArea:"flex-1 overflow-y-auto overflow-x-hidden px-5 py-2",sectionHeader:"group/section flex w-full items-center gap-2.5 px-3 pb-1.5 pt-3 rounded-[14px] text-[12px] font-semibold uppercase tracking-[0.10em] text-zinc-500/80 dark:text-zinc-400/80",sectionChevron:"i-f7-chevron-down h-3 w-3 ml-auto opacity-0 group-hover/section:opacity-100 transition-opacity duration-150 transition-transform duration-200",sectionGroup:"flex flex-col space-y-1",item:{base:"flex w-full items-center gap-3 rounded-[14px] px-3 py-1.5 text-[13.5px] leading-tight transition-colors duration-150",hover:"hover:bg-white/38 hover:text-zinc-950 dark:hover:bg-white/10",active:"bg-[#e8e8e6]/90 text-zinc-950 dark:bg-white/12 dark:text-white",pressed:"active:bg-white/50 dark:active:bg-white/15",disabled:"opacity-50 pointer-events-none",disclosure:"flex h-4 w-4 shrink-0 items-center justify-center",chevron:"i-f7-chevron-right h-3 w-3 opacity-50 transition-transform duration-200",iconSlot:"flex h-5 w-5 shrink-0 items-center justify-center",icon:"h-[18px] w-[18px] text-zinc-600 dark:text-zinc-400",image:"h-5 w-5 rounded object-cover",label:"flex-1 truncate text-left text-zinc-700 dark:text-zinc-300",count:"ml-auto grid h-5 min-w-5 place-items-center rounded-full bg-white/72 px-1.5 text-[11px] font-medium text-zinc-500 shadow-sm dark:bg-white/10 dark:text-zinc-400",indentPerLevel:12}},Na={selection:"classes",pane:["bg-[#f7f5f1]/92 dark:bg-[#1a1a1c]/92","backdrop-blur-[40px] backdrop-saturate-[160%]","text-[#2c2a28] dark:text-[#ededf0]","select-none"].join(" "),layers:{tint:["bg-[linear-gradient(180deg,var(--stx-sidebar-tint,rgba(255,251,242,0.55))_0%,rgba(255,255,255,0)_38%)]","dark:bg-[linear-gradient(180deg,var(--stx-sidebar-tint,rgba(255,255,255,0.05))_0%,rgba(255,255,255,0)_42%)]"].join(" ")},scrollArea:"flex-1 overflow-y-auto overflow-x-hidden px-[16px] pb-[8px]",sectionHeader:["group/section flex w-full items-center","px-[8px] pt-[14px] pb-[4px]","text-[11px] font-medium leading-[13px]","opacity-55"].join(" "),sectionChevron:["i-f7-chevron-down h-[10px] w-[10px] ml-auto","opacity-0 group-hover/section:opacity-100 transition-opacity duration-150","transition-transform duration-200"].join(" "),sectionGroup:"flex flex-col space-y-[2px]",item:{base:["flex w-full items-center","h-[30px] rounded-[8px] pl-[6px] pr-[8px]","text-[13px] leading-[16px] font-normal","text-current","transition-[background-color,box-shadow,color] duration-150 ease-out","cursor-default"].join(" "),hover:"hover:bg-white/55 dark:hover:bg-white/8",active:["bg-white dark:bg-white/14","font-medium","shadow-[0_1px_2px_rgba(0,0,0,0.08)] dark:shadow-[0_1px_2px_rgba(0,0,0,0.35)]","ring-1 ring-black/5 dark:ring-white/8"].join(" "),pressed:"active:bg-white/80 dark:active:bg-white/18",disabled:"opacity-40 pointer-events-none",disclosure:"flex h-[16px] w-[16px] shrink-0 items-center justify-center",chevron:["i-f7-chevron-right h-[10px] w-[10px] opacity-45","transition-transform duration-200 ease-out"].join(" "),iconSlot:"flex h-[18px] w-[18px] shrink-0 items-center justify-center mr-[8px]",icon:"h-[16px] w-[16px]",image:"h-[18px] w-[18px] rounded-[5px] object-cover shadow-sm",label:"flex-1 truncate text-left",count:["ml-[8px] shrink-0 tabular-nums","text-[12px] leading-[16px] opacity-45"].join(" "),indentPerLevel:14}},Aa={...O,pane:"bg-stone-100 dark:bg-neutral-900 text-black dark:text-white select-none",layers:{}},Ia={...O,pane:"bg-transparent text-black dark:text-white select-none",layers:{}},Da={...O,pane:"bg-white/50 dark:bg-black/40 backdrop-blur-3xl backdrop-saturate-200 text-black dark:text-white select-none",layers:{}},le={macos:O,tahoe:O,"macos-tahoe":O,"macos-latest":O,arc:Na,workspace:Sa,desktop:Ta,solid:Aa,transparent:Ia,vibrancy:Da};function $c(e){return le[e||"macos"]||le.macos}function kc(e){if(!e)return;return F[e]||e}var Pa=F.gray;function z(e,t,s){return`color-mix(in oklab, ${e} ${t}%, ${s})`}function ce(e){return{light:{from:z(e,35,"#ffffff"),to:z(e,12.5,"#ffffff"),ink:z(e,22,"#17171b"),accent:z(e,88,"#2a2a30")},dark:{from:z(e,27,"#101014"),to:z(e,10,"#08080b"),ink:z(e,12,"#f4f4f7"),accent:z(e,74,"#ffffff")}}}function Nc(e,t){return`linear-gradient(180deg, ${e} 0%, ${t} 100%)`}function La(e){if(!e)return ce(Pa);if(typeof e!=="string")return e;return ce(F[e]||e)}function za(e){return[`--stx-space-light-from: ${e.light.from}`,`--stx-space-light-to: ${e.light.to}`,`--stx-space-light-ink: ${e.light.ink}`,`--stx-space-light-accent: ${e.light.accent}`,`--stx-space-dark-from: ${e.dark.from}`,`--stx-space-dark-to: ${e.dark.to}`,`--stx-space-dark-ink: ${e.dark.ink}`,`--stx-space-dark-accent: ${e.dark.accent}`].join("; ")}function de(e,t,s,a){if(!e||!e.label)return null;return{id:e.id||`${t}-${s}`,label:e.label,icon:e.icon||a}}function Ea(e){let t=La(e.tint);return{id:e.id,label:e.label||"",icon:e.icon||"",pinned:e.pinned||[],sections:e.sections||[],action:de(e.action,e.id,"action","i-f7-plus"),clear:de(e.clear,e.id,"clear","i-f7-arrow-down"),tint:t,style:za(t),deferred:e.deferred===!0,showTitle:e.showTitle??!0}}function Ac(e){return(e||[]).map(Ea)}function Ic(e,t){if(!t)return 0;let s=e.findIndex((a)=>a.id===t);return s===-1?0:s}function Dc(e){return e.map((t)=>t.tint)}var Ma="./Skeleton-wtwb97xd.stx";var qa="./Spinner-ypya5tt2.stx";var ja="./Stepper-rgbk76hd.stx";var Wa="./StepperStep-3ahq4d9m.stx";class K{storage;namespace;watchers=new Map;encryptionKey="stx-storage-key";constructor(e="local",t=""){if(this.storage=e==="local"?globalThis.localStorage:globalThis.sessionStorage,this.namespace=t,typeof window<"u")window.addEventListener("storage",this.handleStorageEvent.bind(this))}handleStorageEvent(e){if(!e.key)return;let t=this.namespace&&e.key.startsWith(`${this.namespace}:`)?e.key.slice(this.namespace.length+1):e.key,s=this.watchers.get(t);if(s){let a=e.oldValue?JSON.parse(e.oldValue).value:null,o=e.newValue?JSON.parse(e.newValue).value:null;s.forEach((i)=>i(o,a,t))}}encrypt(e){let t="";for(let s=0;s<e.length;s++)t+=String.fromCharCode(e.charCodeAt(s)^this.encryptionKey.charCodeAt(s%this.encryptionKey.length));return btoa(t)}decrypt(e){try{let t=atob(e),s="";for(let a=0;a<t.length;a++)s+=String.fromCharCode(t.charCodeAt(a)^this.encryptionKey.charCodeAt(a%this.encryptionKey.length));return s}catch{return e}}compress(e){if(e.length<100)return e;let t={},s=256,a=[],o="";for(let i=0;i<e.length;i++){let r=e.charAt(i),n=o+r;if(t[n]!==void 0)o=n;else a.push(o.length>1?t[o]:o.charCodeAt(0)),t[n]=s++,o=r}if(o!=="")a.push(o.length>1?t[o]:o.charCodeAt(0));return JSON.stringify(a)}decompress(e){try{let t=JSON.parse(e);if(!Array.isArray(t))return e;let s={},a=256,o=String.fromCharCode(t[0]),i=o;for(let r=1;r<t.length;r++){let n=t[r],c;if(s[n]!==void 0)c=s[n];else if(n===a)c=o+o.charAt(0);else return e;i+=c,s[a++]=o+c.charAt(0),o=c}return i}catch{return e}}getKey(e){return this.namespace?`${this.namespace}:${e}`:e}set(e,t,s){let a=this.getKey(e),o=this.get(e),i={value:t,timestamp:Date.now(),expire:s?.expire,encrypted:s?.encrypt||!1,compressed:s?.compress||!1};try{let r=JSON.stringify(i);if(s?.compress)r=this.compress(r);if(s?.encrypt)r=this.encrypt(r);this.storage.setItem(a,r),this.notifyWatchers(e,t,o)}catch(r){console.error("Storage set error:",r)}}get(e){let t=this.getKey(e);try{let s=this.storage.getItem(t);if(!s)return null;if(s.match(/^[A-Z0-9+/]+=*$/i))try{s=this.decrypt(s)}catch{}if(s.startsWith("["))try{s=this.decompress(s)}catch{}let a=JSON.parse(s);if(a.expire&&Date.now()-a.timestamp>a.expire)return this.remove(e),null;return a.value}catch(s){return console.error("Storage get error:",s),null}}watch(e,t){if(!this.watchers.has(e))this.watchers.set(e,new Set);return this.watchers.get(e).add(t),()=>{let s=this.watchers.get(e);if(s){if(s.delete(t),s.size===0)this.watchers.delete(e)}}}notifyWatchers(e,t,s){let a=this.watchers.get(e);if(a)a.forEach((o)=>o(t,s,e))}remove(e){let t=this.getKey(e),s=this.get(e);this.storage.removeItem(t),this.notifyWatchers(e,null,s)}clear(){if(this.namespace)this.keys().forEach((t)=>this.remove(t));else this.storage.clear()}has(e){return this.get(e)!==null}keys(){let e=Object.keys(this.storage);if(this.namespace){let t=`${this.namespace}:`;return e.filter((s)=>s.startsWith(t)).map((s)=>s.slice(t.length))}return e}size(){return this.keys().length}getQuota(){if("storage"in navigator&&"estimate"in navigator.storage)return null;try{let e=0;for(let s=0;s<this.storage.length;s++){let a=this.storage.key(s);if(a){let o=this.storage.getItem(a)||"";e+=a.length+o.length}}let t=5242880;return{usage:e*2,quota:t,percentage:e*2/t*100}}catch{return null}}setMany(e,t){Object.entries(e).forEach(([s,a])=>{this.set(s,a,t)})}getMany(e){let t={};return e.forEach((s)=>{t[s]=this.get(s)}),t}removeMany(e){e.forEach((t)=>this.remove(t))}}var sd={local:new K("local"),session:new K("session")};function ad(e="local",t){return new K(e,t)}var _a="./Switch-hdta55a8.stx";var Ka="./Table-0mc3fdek.stx";var Ua="./TableBody-drxyz5jh.stx";var Ja="./TableCell-8swtcq8s.stx";var Za="./TableHead-e9xvjx2j.stx";var eo="./TableHeader-sxc77b4d.stx";var so="./TableRow-xd542nvb.stx";var oo="./TabPanel-5htevsq6.stx";var ro="./Tabs-b4xsba1w.stx";var lo="./Teleport-tsx4bt4n.stx";var po="./Textarea-xcdym703.stx";var ho="./Tooltip-y61h04gp.stx";var bo="./Transition-7smenaz8.stx";var xo="./Video-a0aeyexv.stx";var vo="./VirtualList-fa7v5a3h.stx";var yo="./VirtualTable-jvm1784g.stx";var Co=0;function pe(e="a11y"){return`${e}-${++Co}-${Date.now()}`}function Gd(e,t,s={}){let{visible:a=!1,id:o=pe("label")}=s,i=document.createElement(a?"label":"span");if(i.id=o,i.textContent=e,!a)Object.assign(i.style,{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:"0"});if(t)if(t.setAttribute("aria-labelledby",o),t.parentElement)t.parentElement.insertBefore(i,t);else document.body.appendChild(i);return o}function Ud(e,t){let s=pe("desc"),a=document.createElement("span");if(a.id=s,a.textContent=e,Object.assign(a.style,{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:"0"}),t)if(t.setAttribute("aria-describedby",s),t.parentElement)t.parentElement.insertBefore(a,t);else document.body.appendChild(a);return s}function Yd(e,t="polite"){let s=document.createElement("div");s.setAttribute("role","status"),s.setAttribute("aria-live",t),s.setAttribute("aria-atomic","true"),Object.assign(s.style,{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:"0"}),document.body.appendChild(s),setTimeout(()=>{s.textContent=e},100),setTimeout(()=>{s.parentNode?.removeChild(s)},1000)}function ee(e){let t=["a[href]","area[href]",'input:not([disabled]):not([type="hidden"])',"select:not([disabled])","textarea:not([disabled])","button:not([disabled])","iframe","object","embed","[contenteditable]",'[tabindex]:not([tabindex="-1"])'].join(",");return Array.from(e.querySelectorAll(t)).filter((s)=>s.offsetParent!==null)}function Jd(e,t={}){let{initialFocus:s,returnFocus:a,escapeDeactivates:o=!0,clickOutsideDeactivates:i=!0,allowOutsideClick:r=!1,onActivate:n,onDeactivate:c}=t,d=!1,h=!1,p=null,g=(m)=>{if(h)return;if(o&&m.key==="Escape"){m.preventDefault(),v();return}if(m.key==="Tab"){let C=ee(e);if(C.length===0){m.preventDefault();return}let A=C[0],L=C[C.length-1];if(m.shiftKey){if(document.activeElement===A)m.preventDefault(),L.focus()}else if(document.activeElement===L)m.preventDefault(),A.focus()}},f=(m)=>{if(h)return;if(!e.contains(m.target)){if(typeof r==="function"){if(!r(m)&&i)v()}else if(!r&&i)v()}};function w(){if(d)return;d=!0,p=document.activeElement;let m=s||ee(e)[0];if(m&&typeof m.focus==="function")m.focus();document.addEventListener("keydown",g),document.addEventListener("click",f),n?.()}function v(){if(!d)return;d=!1;let m=a||p;if(m&&typeof m.focus==="function")m.focus();document.removeEventListener("keydown",g),document.removeEventListener("click",f),c?.()}function k(){h=!0}function x(){h=!1}return{activate:w,deactivate:v,pause:k,unpause:x}}function Xd(e,t={}){let{selector:s='[role="option"], [role="menuitem"], [role="tab"], button',initialIndex:a=0,orientation:o="both",loop:i=!0,onFocusChange:r}=t,n=a,c=()=>{return Array.from(e.querySelectorAll(s))},d=(p)=>{let g=c();if(p<0||p>=g.length)return;g.forEach((f,w)=>{if(w===p){if(f.setAttribute("tabindex","0"),typeof f.focus==="function")f.focus()}else f.setAttribute("tabindex","-1")}),n=p,r?.(p,g[p])},h=(p)=>{let f=c().length-1,w=!1,v=n;switch(p.key){case"ArrowRight":if(o==="horizontal"||o==="both"){if(v=n+1,v>f)v=i?0:f;w=!0}break;case"ArrowLeft":if(o==="horizontal"||o==="both"){if(v=n-1,v<0)v=i?f:0;w=!0}break;case"ArrowDown":if(o==="vertical"||o==="both"){if(v=n+1,v>f)v=i?0:f;w=!0}break;case"ArrowUp":if(o==="vertical"||o==="both"){if(v=n-1,v<0)v=i?f:0;w=!0}break;case"Home":v=0,w=!0;break;case"End":v=f,w=!0;break}if(w)p.preventDefault(),d(v)};return d(a),e.addEventListener("keydown",h),()=>{e.removeEventListener("keydown",h)}}var Zd={Enter:"Enter",Space:" ",Escape:"Escape",ArrowUp:"ArrowUp",ArrowDown:"ArrowDown",ArrowLeft:"ArrowLeft",ArrowRight:"ArrowRight",Tab:"Tab",Home:"Home",End:"End",PageUp:"PageUp",PageDown:"PageDown"};function Qd(e){return document.activeElement===e}function ep(e,t){let s=t||document.activeElement,a=ee(document.body),o=a.indexOf(s);if(o===-1)return;let i=e==="next"?o+1:o-1,r=a[i];if(r)r.focus()}function tp(e){if(e.getAttribute("aria-hidden")==="true")return!1;let t=window.getComputedStyle(e);if(t.display==="none"||t.visibility==="hidden")return!1;return!0}var sp={setExpanded(e,t){e.setAttribute("aria-expanded",String(t))},setSelected(e,t){e.setAttribute("aria-selected",String(t))},setChecked(e,t){e.setAttribute("aria-checked",String(t))},setDisabled(e,t){if(e.setAttribute("aria-disabled",String(t)),t)e.setAttribute("tabindex","-1");else e.removeAttribute("tabindex")},setHidden(e,t){if(t)e.setAttribute("aria-hidden","true");else e.removeAttribute("aria-hidden")},setPressed(e,t){e.setAttribute("aria-pressed",String(t))},setInvalid(e,t){e.setAttribute("aria-invalid",String(t))},setRequired(e,t){e.setAttribute("aria-required",String(t))},setLive(e,t){e.setAttribute("aria-live",t)},setBusy(e,t){e.setAttribute("aria-busy",String(t))}};function ap(e){let t=document.createElement("span");return t.textContent=e,t.className="sr-only",Object.assign(t.style,{position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:"0"}),t}function op(){if(typeof window.matchMedia==="function")return window.matchMedia("(prefers-reduced-motion: reduce)").matches;return!1}function ip(){if(typeof window.matchMedia==="function")return window.matchMedia("(prefers-contrast: high)").matches;return!1}function rp(){if(typeof window.matchMedia==="function"){if(window.matchMedia("(prefers-color-scheme: dark)").matches)return"dark";if(window.matchMedia("(prefers-color-scheme: light)").matches)return"light"}return null}function np(e,t="Skip to main content"){let s=document.createElement("a");return s.href=`#${e}`,s.textContent=t,s.className="skip-link",Object.assign(s.style,{position:"absolute",top:"-40px",left:"0",background:"#000",color:"#fff",padding:"8px",textDecoration:"none",zIndex:"100"}),s.addEventListener("focus",()=>{s.style.top="0"}),s.addEventListener("blur",()=>{s.style.top="-40px"}),s}function lp(e){let t=[],s=(a)=>{let o=e.getAttribute(a);if(o){let i=o.split(" ");for(let r of i)if(!document.getElementById(r))t.push(`${a} references non-existent ID: ${r}`)}};return s("aria-labelledby"),s("aria-describedby"),s("aria-controls"),s("aria-owns"),s("aria-activedescendant"),t}var $o=(e,t,s,a)=>{return s*e/a+t},ko=(e,t,s,a)=>{return e/=a,s*e*e+t},So=(e,t,s,a)=>{return e/=a,-s*e*(e-2)+t},To=(e,t,s,a)=>{if(e/=a/2,e<1)return s/2*e*e+t;return e--,-s/2*(e*(e-2)-1)+t},No=(e,t,s,a)=>{return e/=a,s*e*e*e+t},Ao=(e,t,s,a)=>{return e/=a,e--,s*(e*e*e+1)+t},Io=(e,t,s,a)=>{if(e/=a/2,e<1)return s/2*e*e*e+t;return e-=2,s/2*(e*e*e+2)+t},Do=(e,t,s,a)=>{return e/=a,s*e*e*e*e+t},Po=(e,t,s,a)=>{return e/=a,e--,-s*(e*e*e*e-1)+t},Lo=(e,t,s,a)=>{if(e/=a/2,e<1)return s/2*e*e*e*e+t;return e-=2,-s/2*(e*e*e*e-2)+t},zo=(e,t,s,a)=>{return e/=a,s*e*e*e*e*e+t},Eo=(e,t,s,a)=>{return e/=a,e--,s*(e*e*e*e*e+1)+t},Oo=(e,t,s,a)=>{if(e/=a/2,e<1)return s/2*e*e*e*e*e+t;return e-=2,s/2*(e*e*e*e*e+2)+t},Mo=(e,t,s,a)=>{return-s*Math.cos(e/a*(Math.PI/2))+s+t},Ro=(e,t,s,a)=>{return s*Math.sin(e/a*(Math.PI/2))+t},qo=(e,t,s,a)=>{return-s/2*(Math.cos(Math.PI*e/a)-1)+t},Bo=(e,t,s,a)=>{return e===0?t:s*2**(10*(e/a-1))+t},jo=(e,t,s,a)=>{return e===a?t+s:s*(-(2**(-10*e/a))+1)+t},Ho=(e,t,s,a)=>{if(e===0)return t;if(e===a)return t+s;if(e/=a/2,e<1)return s/2*2**(10*(e-1))+t;return e--,s/2*(-(2**(-10*e))+2)+t},Wo=(e,t,s,a)=>{return e/=a,-s*(Math.sqrt(1-e*e)-1)+t},Vo=(e,t,s,a)=>{return e/=a,e--,s*Math.sqrt(1-e*e)+t},_o=(e,t,s,a)=>{if(e/=a/2,e<1)return-s/2*(Math.sqrt(1-e*e)-1)+t;return e-=2,s/2*(Math.sqrt(1-e*e)+1)+t},Fo=(e,t,s,a)=>{let o=1.70158,i=0,r=s;if(e===0)return t;if(e/=a,e===1)return t+s;if(!i)i=a*0.3;if(r<Math.abs(s))r=s,o=i/4;else o=i/(2*Math.PI)*Math.asin(s/r);return e-=1,-(r*2**(10*e)*Math.sin((e*a-o)*(2*Math.PI)/i))+t},Ko=(e,t,s,a)=>{let o=1.70158,i=0,r=s;if(e===0)return t;if(e/=a,e===1)return t+s;if(!i)i=a*0.3;if(r<Math.abs(s))r=s,o=i/4;else o=i/(2*Math.PI)*Math.asin(s/r);return r*2**(-10*e)*Math.sin((e*a-o)*(2*Math.PI)/i)+s+t},Go=(e,t,s,a)=>{let o=1.70158,i=0,r=s;if(e===0)return t;if(e/=a/2,e===2)return t+s;if(!i)i=a*0.44999999999999996;if(r<Math.abs(s))r=s,o=i/4;else o=i/(2*Math.PI)*Math.asin(s/r);if(e<1)return e-=1,-0.5*(r*2**(10*e)*Math.sin((e*a-o)*(2*Math.PI)/i))+t;return e-=1,r*2**(-10*e)*Math.sin((e*a-o)*(2*Math.PI)/i)*0.5+s+t},Uo=(e,t,s,a)=>{return e/=a,s*e*e*(2.70158*e-1.70158)+t},Yo=(e,t,s,a)=>{return e/=a,e--,s*(e*e*(2.70158*e+1.70158)+1)+t},Jo=(e,t,s,a)=>{let o=1.70158;if(e/=a/2,e<1)return o*=1.525,s/2*(e*e*((o+1)*e-o))+t;return e-=2,o*=1.525,s/2*(e*e*((o+1)*e+o)+2)+t},te=(e,t,s,a)=>{if(e/=a,e<0.36363636363636365)return s*(7.5625*e*e)+t;else if(e<0.7272727272727273)return e-=0.5454545454545454,s*(7.5625*e*e+0.75)+t;else if(e<0.9090909090909091)return e-=0.8181818181818182,s*(7.5625*e*e+0.9375)+t;else return e-=0.9545454545454546,s*(7.5625*e*e+0.984375)+t},ue=(e,t,s,a)=>{return s-te(a-e,0,s,a)+t},Xo=(e,t,s,a)=>{if(e<a/2)return ue(e*2,0,s,a)*0.5+t;return te(e*2-a,0,s,a)*0.5+s*0.5+t},dp={linear:$o,easeInQuad:ko,easeOutQuad:So,easeInOutQuad:To,easeInCubic:No,easeOutCubic:Ao,easeInOutCubic:Io,easeInQuart:Do,easeOutQuart:Po,easeInOutQuart:Lo,easeInQuint:zo,easeOutQuint:Eo,easeInOutQuint:Oo,easeInSine:Mo,easeOutSine:Ro,easeInOutSine:qo,easeInExpo:Bo,easeOutExpo:jo,easeInOutExpo:Ho,easeInCirc:Wo,easeOutCirc:Vo,easeInOutCirc:_o,easeInElastic:Fo,easeOutElastic:Ko,easeInOutElastic:Go,easeInBack:Uo,easeOutBack:Yo,easeInOutBack:Jo,easeInBounce:ue,easeOutBounce:te,easeInOutBounce:Xo};function Zo(e,t={}){let{duration:s="1s",timing:a="ease",delay:o="0s",iteration:i="1",direction:r="normal",fill:n="both",playState:c="running"}=t;return`${e} ${s} ${a} ${o} ${i} ${r} ${n} ${c}`}function he(e,t,s={}){e.style.animation=Zo(t,s)}function up(e){e.style.animation=""}function Qo(e){return new Promise((t)=>{let s=()=>{e.removeEventListener("animationend",s),t()};e.addEventListener("animationend",s)})}function hp(e,t,s={}){let{stagger:a=100,...o}=s;e.forEach((i,r)=>{let n=`${r*a}ms`;he(i,t,{...o,delay:n})})}async function fp(e,t){for(let s of t)he(e,s.name,s.options),await Qo(e)}var bp={fadeIn:"animate-fade-in",fadeOut:"animate-fade-out",slideInUp:"animate-slide-in-up",slideInDown:"animate-slide-in-down",slideInLeft:"animate-slide-in-left",slideInRight:"animate-slide-in-right",zoomIn:"animate-zoom-in",zoomOut:"animate-zoom-out",bounce:"animate-bounce",spin:"animate-spin",ping:"animate-ping",pulse:"animate-pulse"};function gp(e,t,s=1000){return new Promise((a)=>{e.classList.add(t),setTimeout(()=>{e.classList.remove(t),a()},s)})}function xp(e,t){let s=`
|
|
12
12
|
@keyframes ${e} {
|
|
13
13
|
${Object.entries(t).map(([o,i])=>{let r=Object.entries(i).map(([n,c])=>`${n}: ${c};`).join(" ");return`${o} { ${r} }`}).join(`
|
|
14
14
|
`)}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stacksjs/components",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.2.
|
|
4
|
+
"version": "0.2.247",
|
|
5
5
|
"description": "A modern component library built with STX, featuring headwind utility classes and TypeScript syntax highlighting.",
|
|
6
6
|
"author": "Chris Breuer <chris@stacksjs.org>",
|
|
7
7
|
"license": "MIT",
|
|
@@ -64,8 +64,8 @@
|
|
|
64
64
|
"dependencies": {
|
|
65
65
|
"@iconify-json/f7": "^1.2.2",
|
|
66
66
|
"@cwcss/crosswind": "^0.2.19",
|
|
67
|
-
"@stacksjs/stx": "0.2.
|
|
68
|
-
"bun-plugin-stx": "0.2.
|
|
67
|
+
"@stacksjs/stx": "0.2.247",
|
|
68
|
+
"bun-plugin-stx": "0.2.247",
|
|
69
69
|
"ts-syntax-highlighter": "^0.2.1"
|
|
70
70
|
},
|
|
71
71
|
"devDependencies": {
|
|
@@ -59,9 +59,12 @@ export const isArc = theme === 'arc'
|
|
|
59
59
|
//
|
|
60
60
|
// --craft-window-controls-replicas the `display` a replica should take —
|
|
61
61
|
// `none` where it drew real buttons
|
|
62
|
-
// --craft-window-controls-width the room they need
|
|
63
|
-
//
|
|
64
|
-
//
|
|
62
|
+
// --craft-window-controls-width the room they need inside the page: the
|
|
63
|
+
// far edge of the real buttons, measured
|
|
64
|
+
// on the window, and 0 whenever they are
|
|
65
|
+
// not over the page — a titlebar of their
|
|
66
|
+
// own, a native sidebar under them,
|
|
67
|
+
// fullscreen
|
|
65
68
|
//
|
|
66
69
|
// Both are read as fallbacks, so a browser — where neither is set — draws the
|
|
67
70
|
// replicas and reserves nothing, and no JavaScript is involved either way.
|
|
@@ -151,10 +154,30 @@ function onWindowControl(action) {
|
|
|
151
154
|
if (action === 'zoom') (api?.maximize || api?.zoom)?.call(api)
|
|
152
155
|
emit('windowControl', action)
|
|
153
156
|
}
|
|
157
|
+
|
|
158
|
+
/*
|
|
159
|
+
* This strip is the window's drag handle, and the CSS on it cannot make it one
|
|
160
|
+
* everywhere. `-webkit-app-region: drag` is Chromium's property: Electron and
|
|
161
|
+
* Tauri honour it, WebKit never implemented it, and a WKWebView discards the
|
|
162
|
+
* declaration outright — `style.setProperty('-webkit-app-region', 'drag')`
|
|
163
|
+
* reads back as the empty string there. So in a Craft window the class is
|
|
164
|
+
* decoration, and a header that looked draggable belonged to a window that
|
|
165
|
+
* could not be moved. It stays for the hosts it works in; this covers the one
|
|
166
|
+
* it does not, by handing the press to the platform's own drag loop.
|
|
167
|
+
*
|
|
168
|
+
* A press on anything you can click is left alone, replica traffic lights and
|
|
169
|
+
* the search field included — dragging a window by its close button is not a
|
|
170
|
+
* gesture anyone makes on purpose.
|
|
171
|
+
*/
|
|
172
|
+
function onChromePress(event) {
|
|
173
|
+
if (event.button !== 0) return
|
|
174
|
+
if (event.target?.closest?.('button, a, input, select, textarea, [role="button"]')) return
|
|
175
|
+
window.craft?.window?.startDrag?.()
|
|
176
|
+
}
|
|
154
177
|
</script>
|
|
155
178
|
|
|
156
179
|
@if(isMacos)
|
|
157
|
-
<div class="flex h-[52px] shrink-0 items-center justify-between pl-[21px] pr-[10px] [-webkit-app-region:drag]">
|
|
180
|
+
<div class="flex h-[52px] shrink-0 items-center justify-between pl-[21px] pr-[10px] [-webkit-app-region:drag]" @mousedown="onChromePress($event)">
|
|
158
181
|
@if(showWindowControls || reserveWindowControls)
|
|
159
182
|
<div class="flex items-center [-webkit-app-region:no-drag]">
|
|
160
183
|
@if(reserveWindowControls)
|
|
@@ -220,7 +243,7 @@ function onWindowControl(action) {
|
|
|
220
243
|
-->
|
|
221
244
|
<div class="flex flex-col gap-[8px] px-[10px] pb-[8px]" style="{{ reserveWindowControls ? arcChromePadding : 'padding-top: 12px' }}">
|
|
222
245
|
@if(showWindowControls || reserveWindowControls || showNavigation)
|
|
223
|
-
<div class="flex items-center gap-[12px] px-[2px] [-webkit-app-region:drag]">
|
|
246
|
+
<div class="flex items-center gap-[12px] px-[2px] [-webkit-app-region:drag]" @mousedown="onChromePress($event)">
|
|
224
247
|
@if(reserveWindowControls)
|
|
225
248
|
<!--
|
|
226
249
|
Empty on purpose. The window server has already drawn three live
|