@stacksjs/components 0.2.213 → 0.2.215
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.
|
@@ -37,13 +37,35 @@ export const isArc = theme === 'arc'
|
|
|
37
37
|
// default there. Arc's sidebar can go either way — a browser window puts the
|
|
38
38
|
// lights and the back/forward controls in the sidebar, while an app that only
|
|
39
39
|
// borrows the look wants a bare strip — so on this theme both are opt-in.
|
|
40
|
-
|
|
40
|
+
//
|
|
41
|
+
// `windowControls` says WHO DRAWS THEM, which `showWindowControls` could not
|
|
42
|
+
// express:
|
|
43
|
+
//
|
|
44
|
+
// 'draw' HTML replicas. Right for a web page imitating macOS.
|
|
45
|
+
// 'native' the OS already drew them; reserve the room and keep out of it.
|
|
46
|
+
// 'none' no controls, no room.
|
|
47
|
+
//
|
|
48
|
+
// The distinction is not cosmetic. Inside a real window with the titlebar
|
|
49
|
+
// hidden the platform still draws its own controls, so drawing replicas as
|
|
50
|
+
// well puts SIX circles in the corner — three live ones from the window
|
|
51
|
+
// server and three that only look like buttons.
|
|
52
|
+
//
|
|
53
|
+
// Measured from a Craft window at 2x: 12pt discs, 20pt apart, the first 10pt
|
|
54
|
+
// from the window's left edge, the block ending 62pt in, centred 14pt below
|
|
55
|
+
// the top. `--stx-native-controls-width` is the room to leave AFTER this
|
|
56
|
+
// header's own left padding, so an app whose platform places them differently
|
|
57
|
+
// can retune it without forking the component.
|
|
58
|
+
const controlsProp = $props.windowControls || ''
|
|
59
|
+
export const windowControls = controlsProp
|
|
60
|
+
|| (($props.showWindowControls ?? !isArc) ? 'draw' : 'none')
|
|
61
|
+
export const showWindowControls = windowControls === 'draw'
|
|
62
|
+
export const reserveWindowControls = windowControls === 'native'
|
|
41
63
|
export const showNavigation = $props.showNavigation ?? false
|
|
42
64
|
|
|
43
65
|
// A titled Arc header with window controls puts the two on one row, the way
|
|
44
66
|
// Arc and Dia do. A logo needs the wider second row to sit in, so its presence
|
|
45
67
|
// keeps the old two-row shape.
|
|
46
|
-
export const titleInChrome = isArc && showWindowControls && !!title && !logo
|
|
68
|
+
export const titleInChrome = isArc && (showWindowControls || reserveWindowControls) && !!title && !logo
|
|
47
69
|
|
|
48
70
|
// Back / forward / reload, as in Arc's URL strip. Flat and ghosted, not glass.
|
|
49
71
|
export const navButtons = [
|
|
@@ -138,9 +160,24 @@ function onWindowControl(action) {
|
|
|
138
160
|
</div>
|
|
139
161
|
@endif
|
|
140
162
|
@elseif(isArc)
|
|
141
|
-
|
|
142
|
-
|
|
163
|
+
<!--
|
|
164
|
+
The top padding is 4px when the platform owns the controls, not 12. The
|
|
165
|
+
header has to line its title up with buttons it does not draw: those sit
|
|
166
|
+
14pt below the window's top, and a 20pt-tall title centres there only if
|
|
167
|
+
the row starts at 4. At 12 it lands 8pt low, which reads as the name having
|
|
168
|
+
slipped off the row rather than sharing it.
|
|
169
|
+
-->
|
|
170
|
+
<div class="flex flex-col gap-[8px] px-[10px] pb-[8px] {{ reserveWindowControls ? 'pt-[4px]' : 'pt-[12px]' }}">
|
|
171
|
+
@if(showWindowControls || reserveWindowControls || showNavigation)
|
|
143
172
|
<div class="flex items-center gap-[12px] px-[2px] [-webkit-app-region:drag]">
|
|
173
|
+
@if(reserveWindowControls)
|
|
174
|
+
<!--
|
|
175
|
+
Empty on purpose. The window server has already drawn three live
|
|
176
|
+
buttons here; anything rendered into this space would sit under
|
|
177
|
+
them, and a replica beside them would make six.
|
|
178
|
+
-->
|
|
179
|
+
<span class="shrink-0" style="width: var(--stx-native-controls-width, 52px)" aria-hidden="true"></span>
|
|
180
|
+
@endif
|
|
144
181
|
@if(showWindowControls)
|
|
145
182
|
<div class="flex items-center gap-[7px] [-webkit-app-region:no-drag]">
|
|
146
183
|
<button type="button" class="{{ trafficLightClasses }} bg-[#ff5f57]" aria-label="Close window" @click="onWindowControl('close')"></button>
|
package/dist/index.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
var be={__stx:!0,src:"./components/CodeBlock.stx"};var ge={__stx:!0,src:"./components/Footer.stx"};var xe={__stx:!0,src:"./components/Hero.stx"};var me={__stx:!0,src:"./components/Installation.stx"};function
|
|
3
|
-
`)}function I(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function ni(e,t,s={}){let{enabled:
|
|
4
|
-
Prop: "${s.prop}"`;if(s.received!==void 0)
|
|
5
|
-
Received: ${JSON.stringify(s.received)}`;if(s.expected!==void 0){let
|
|
6
|
-
Expected: ${
|
|
7
|
-
Details: ${s.details}`;if(s.docsUrl)
|
|
8
|
-
Documentation: ${s.docsUrl}`;else if(e)
|
|
9
|
-
Documentation: ${He}/${e.toLowerCase()}`;return
|
|
2
|
+
var be={__stx:!0,src:"./components/CodeBlock.stx"};var ge={__stx:!0,src:"./components/Footer.stx"};var xe={__stx:!0,src:"./components/Hero.stx"};var me={__stx:!0,src:"./components/Installation.stx"};function Qa(e){let{code:t,onSuccess:s,onError:o,timeout:a=2000}=e,i=!1,r=null;return{copied:i,copy:async()=>{try{if(!navigator.clipboard)throw Error("Clipboard API not available");await navigator.clipboard.writeText(t),i=!0,s?.(),r=setTimeout(()=>{i=!1,r=null},a)}catch(d){let f=d instanceof Error?d:Error("Failed to copy code");o?.(f),console.error("Failed to copy code:",f)}},reset:()=>{if(i=!1,r)clearTimeout(r),r=null}}}async function ei(e){try{return await navigator.clipboard.writeText(e),!0}catch(t){return console.error("Failed to copy to clipboard:",t),!1}}function ve(){if(typeof window>"u")return"light";return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function Q(e){return e==="system"?ve():e}function si(e={}){let{storageKey:t="theme",defaultTheme:s="system"}=e,o=s;if(typeof window<"u"&&typeof localStorage<"u"){let c=localStorage.getItem(t);if(c)o=c}let a=Q(o)==="dark",i=(c)=>{let d=Q(c);if(typeof document<"u")if(d==="dark")document.documentElement.classList.add("dark");else document.documentElement.classList.remove("dark");if(typeof localStorage<"u")localStorage.setItem(t,c)},r=(c)=>{o=c,i(c)},n=()=>{let d=Q(o)==="dark"?"light":"dark";r(d)};if(i(o),typeof window<"u"&&o==="system")window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",(c)=>{if(o==="system")i("system")});return{isDark:a,theme:o,toggle:n,setTheme:r}}function we(e,t){if(typeof document>"u")return;document.title=t?t.replace("%s",e):e}function S(e,t,s=!1){if(typeof document>"u")return;let o=s?"property":"name",a=document.querySelector(`meta[${o}="${e}"]`);if(!a)a=document.createElement("meta"),a.setAttribute(o,e),document.head.appendChild(a);a.setAttribute("content",t)}function ye(e,t){if(typeof document>"u")return;let s=document.querySelector(`link[rel="${e}"]`);if(!s)s=document.createElement("link"),s.setAttribute("rel",e),document.head.appendChild(s);s.setAttribute("href",t)}function ai(e){let{title:t,description:s,author:o,keywords:a,ogImage:i,ogImageWidth:r,ogImageHeight:n,twitterCard:c="summary_large_image",twitterSite:d,twitterCreator:f,canonical:p}=e;if(t)we(t),S("og:title",t,!0),S("twitter:title",t);if(s)S("description",s),S("og:description",s,!0),S("twitter:description",s);if(o)S("author",o);if(a&&a.length>0)S("keywords",a.join(", "));if(i)S("og:image",i,!0),S("twitter:image",i);if(r)S("og:image:width",r,!0);if(n)S("og:image:height",n,!0);if(S("twitter:card",c),d)S("twitter:site",d);if(f)S("twitter:creator",f);if(p)ye("canonical",p);if(S("og:type","website",!0),typeof window<"u")S("og:url",window.location.href,!0)}function ii(e){let t=[],{title:s,description:o,author:a,keywords:i,ogImage:r,ogImageWidth:n,ogImageHeight:c,twitterCard:d="summary_large_image",twitterSite:f,twitterCreator:p,canonical:g}=e;if(s)t.push(`<title>${I(s)}</title>`),t.push(`<meta property="og:title" content="${I(s)}" />`),t.push(`<meta name="twitter:title" content="${I(s)}" />`);if(o)t.push(`<meta name="description" content="${I(o)}" />`),t.push(`<meta property="og:description" content="${I(o)}" />`),t.push(`<meta name="twitter:description" content="${I(o)}" />`);if(a)t.push(`<meta name="author" content="${I(a)}" />`);if(i&&i.length>0)t.push(`<meta name="keywords" content="${I(i.join(", "))}" />`);if(r)t.push(`<meta property="og:image" content="${I(r)}" />`),t.push(`<meta name="twitter:image" content="${I(r)}" />`);if(n)t.push(`<meta property="og:image:width" content="${I(n)}" />`);if(c)t.push(`<meta property="og:image:height" content="${I(c)}" />`);if(t.push(`<meta name="twitter:card" content="${I(d)}" />`),f)t.push(`<meta name="twitter:site" content="${I(f)}" />`);if(p)t.push(`<meta name="twitter:creator" content="${I(p)}" />`);if(g)t.push(`<link rel="canonical" href="${I(g)}" />`);return t.push('<meta property="og:type" content="website" />'),t.join(`
|
|
3
|
+
`)}function I(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function ni(e,t,s={}){let{enabled:o=!0,ignore:a=[]}=s,i=(r)=>{if(!o||!e)return;let n=r.target;if(!e.contains(n)){if(!a.some((d)=>{let f=document.querySelectorAll(d);return Array.from(f).some((p)=>p.contains(n))}))t(r)}};if(typeof document<"u")document.addEventListener("mousedown",i),document.addEventListener("touchstart",i);return()=>{if(typeof document<"u")document.removeEventListener("mousedown",i),document.removeEventListener("touchstart",i)}}function ci(e,t={}){let{enabled:s=!0,initialFocus:o=null,returnFocus:a=!0,fallbackFocus:i=null}=t,r=null,n=!1;function c(){if(!e)return[];let h=["a[href]","button:not([disabled])","textarea:not([disabled])","input:not([disabled])","select:not([disabled])",'[tabindex]:not([tabindex="-1"])'].join(",");return Array.from(e.querySelectorAll(h))}function d(h){if(!s||!n||!e)return;let w=c();if(w.length===0){h.preventDefault();return}let v=w[0],k=w[w.length-1];if(h.shiftKey){if(document.activeElement===v||document.activeElement===e)h.preventDefault(),k.focus()}else if(document.activeElement===k)h.preventDefault(),v.focus()}function f(h){if(h.key==="Escape"&&s&&n)g()}function p(){if(!s||!e||n)return;if(r=document.activeElement,o)o.focus();else{let h=c();if(h.length>0)h[0].focus();else if(i)i.focus();else e.focus()}document.addEventListener("keydown",d),document.addEventListener("keydown",f),n=!0}function g(){if(!n)return;if(document.removeEventListener("keydown",d),document.removeEventListener("keydown",f),a&&r)r.focus();n=!1}return{activate:p,deactivate:g}}function pi(e,t={}){let{enabled:s=!0,preventDefault:o=!0,stopPropagation:a=!1,target:i=typeof document<"u"?document:null}=t,r=Array.isArray(e)?e:[e],n=(c)=>{if(!s)return;r.forEach((d)=>{if(!(Array.isArray(d.key)?d.key:[d.key]).some((g)=>g.toLowerCase()===c.key.toLowerCase()))return;if(d.ctrl!==void 0&&d.ctrl!==c.ctrlKey)return;if(d.shift!==void 0&&d.shift!==c.shiftKey)return;if(d.alt!==void 0&&d.alt!==c.altKey)return;if(d.meta!==void 0&&d.meta!==c.metaKey)return;if(o)c.preventDefault();if(a)c.stopPropagation();d.handler(c)})};if(i)i.addEventListener("keydown",n);return()=>{if(i)i.removeEventListener("keydown",n)}}var ui={ESCAPE:"Escape",ENTER:"Enter",SPACE:" ",TAB:"Tab",ARROW_UP:"ArrowUp",ARROW_DOWN:"ArrowDown",ARROW_LEFT:"ArrowLeft",ARROW_RIGHT:"ArrowRight",HOME:"Home",END:"End",PAGE_UP:"PageUp",PAGE_DOWN:"PageDown"};function hi(e,t,s={}){let{serializer:o=JSON.stringify,deserializer:a=JSON.parse,onError:i=console.error}=s,r=t;try{if(typeof window<"u"){let p=window.localStorage.getItem(e);if(p!==null)r=a(p)}}catch(p){i(p)}let n=r,c=new Set;function d(p){try{let g=typeof p==="function"?p(n):p;if(n=g,typeof window<"u")window.localStorage.setItem(e,o(g));c.forEach((h)=>h(g))}catch(g){i(g)}}function f(){try{if(n=t,typeof window<"u")window.localStorage.removeItem(e);c.forEach((p)=>p(t))}catch(p){i(p)}}if(typeof window<"u"){let p=(g)=>{if(g.key===e&&g.newValue!==null)try{let h=a(g.newValue);n=h,c.forEach((w)=>w(h))}catch(h){i(h)}else if(g.key===e&&g.newValue===null)n=t,c.forEach((h)=>h(t))};window.addEventListener("storage",p)}return{value:n,setValue:d,removeValue:f}}function R(e,t={}){let{defaultValue:s=!1}=t,o=s,a=null;if(typeof window<"u"&&"matchMedia"in window){a=window.matchMedia(e),o=a.matches;let r=(n)=>{o=n.matches};if(a.addEventListener)a.addEventListener("change",r);else a.addListener(r)}function i(){if(a)o=a.matches}return{matches:o,updateMatches:i}}var q={xs:"(min-width: 320px)",sm:"(min-width: 640px)",md:"(min-width: 768px)",lg:"(min-width: 1024px)",xl:"(min-width: 1280px)","2xl":"(min-width: 1536px)",mobile:"(max-width: 767px)",tablet:"(min-width: 768px) and (max-width: 1023px)",desktop:"(min-width: 1024px)",dark:"(prefers-color-scheme: dark)",light:"(prefers-color-scheme: light)",reducedMotion:"(prefers-reduced-motion: reduce)",portrait:"(orientation: portrait)",landscape:"(orientation: landscape)"};function gi(e){return R(q[e])}function xi(){return R(q.mobile)}function mi(){return R(q.desktop)}function vi(){return R(q.dark)}function wi(){return R(q.reducedMotion)}var re=["gray","neutral","slate","zinc","red","green","yellow","blue","indigo"],Ci="--stx-color";function Ce(e,t){return t===void 0?`var(${e})`:`var(${e}, ${t})`}function $i(e={}){let t={};for(let s of re){let o=e[s];if(!o||typeof o==="string")continue;let a={};for(let[i,r]of Object.entries(o))a[i]=Ce(`--stx-color-${s}-${i}`,r);t[s]=a}return t}function ki(e={}){let t=[];for(let s of re){let o=e[s];if(!o||typeof o==="string")continue;for(let a of Object.keys(o))t.push(`--stx-color-${s}-${a}`)}return t}var ke="./Accordion-8tv78bh9.stx";var Ie="./AccordionItem-7bd3ga36.stx";var Ne="./Audio-y0sgq50z.stx";var De="./Login-2cp65d41.stx";var ze="./Signup-cbncrtvd.stx";var Ee="./TwoFactorChallenge-y7n4yrk9.stx";var Me="./Avatar-rjvwnskf.stx";var qe="./Badge-k52qmxcm.stx";var je="./Breadcrumb-sy5taqsn.stx";import B from"process";var He="https://stacksjs.com/components";class T extends Error{component;context;constructor(e,t,s={}){let o=T.formatMessage(e,t,s);super(o);if(this.name="ComponentError",this.component=e,this.context={component:e,...s},Error.captureStackTrace)Error.captureStackTrace(this,T)}static formatMessage(e,t,s){let o=`[${e}] ${t}`;if(s.prop)o+=`
|
|
4
|
+
Prop: "${s.prop}"`;if(s.received!==void 0)o+=`
|
|
5
|
+
Received: ${JSON.stringify(s.received)}`;if(s.expected!==void 0){let a=Array.isArray(s.expected)?s.expected.map((i)=>JSON.stringify(i)).join(", "):JSON.stringify(s.expected);o+=`
|
|
6
|
+
Expected: ${a}`}if(s.details)o+=`
|
|
7
|
+
Details: ${s.details}`;if(s.docsUrl)o+=`
|
|
8
|
+
Documentation: ${s.docsUrl}`;else if(e)o+=`
|
|
9
|
+
Documentation: ${He}/${e.toLowerCase()}`;return o}toJSON(){return{name:this.name,message:this.message,component:this.component,context:this.context,stack:this.stack}}}var M={invalidProp(e,t,s,o){return new T(e,`Invalid prop value for "${t}"`,{prop:t,received:s,expected:o,details:Array.isArray(o)?`The "${t}" prop must be one of the allowed values`:`The "${t}" prop does not match the expected type`})},requiredProp(e,t){return new T(e,`Required prop "${t}" is missing`,{prop:t,details:`The "${t}" prop is required for ${e} to function correctly`})},invalidType(e,t,s,o){return new T(e,`Invalid type for prop "${t}"`,{prop:t,received:typeof s,expected:o,details:`Expected "${t}" to be of type ${o}, but received ${typeof s}`})},componentNotFound(e){return new T("ComponentLoader",`Component "${e}" not found`,{component:e,details:"Make sure the component is properly imported and registered"})},invalidChildren(e,t,s){return new T(e,"Invalid children",{received:typeof t,expected:s,details:`${e} expects ${s} as children`})},stateUpdate(e,t,s){return new T(e,`Failed to update state "${t}"`,{details:s.message})},eventHandler(e,t,s){return new T(e,`Error in "${t}" event handler`,{details:s.message})},render(e,t){return new T(e,"Failed to render component",{details:t.message})}},W=null;function Xi(e){W=e}function Zi(){W=null}function V(e,t={}){let{throwError:s=!0,logError:o=!0}=t;if(o&&B.env.NODE_ENV!=="production"){if(console.error("Component Error:",e),e instanceof T)console.group("Error Details"),console.log("Component:",e.component),console.log("Context:",e.context),console.groupEnd()}if(W)try{W(e)}catch(a){console.error("Error in error handler:",a)}if(s)throw e}function ne(e,t,s){return(...o)=>{try{let a=e(...o);if(a instanceof Promise)return a.catch((i)=>{let r=M.eventHandler(t,s,i);throw V(r,{throwError:!1}),r});return a}catch(a){let i=M.eventHandler(t,s,a);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 o=T.formatMessage(e,t,s);console.warn(`\u26A0\uFE0F ${o}`)}function Qi(e,t){if(B.env.NODE_ENV==="production")return;We(e,t)}function er(e){let t=typeof B<"u"&&B.env.DEBUG==="true";return{log(...s){if(t)console.log(`[${e}]`,...s)},warn(s,o){Ve(e,s,o)},error(s,o){let a=new T(e,s,o);V(a,{throwError:!1})}}}function tr(e,t,s){try{return t()}catch(o){let a=M.render(e,o);return V(a,{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,o)=>`Invalid prop \`${s}\` of value \`${t}\` supplied to \`${o}\`, expected one of [${e.map((a)=>JSON.stringify(a)).join(", ")}].`)},oneOfType(e){return new $((t,s,o)=>e.some((a)=>a.validate(t,s,o)),(t,s,o)=>`Invalid prop \`${s}\` supplied to \`${o}\`, expected one of the specified types.`)},arrayOf(e){return new $((t,s,o)=>{if(!Array.isArray(t))return!1;return t.every((a,i)=>e.validate(a,`${s}[${i}]`,o))},(t,s,o)=>`Invalid prop \`${s}\` supplied to \`${o}\`, expected array of specified type.`)},shape(e){return new $((t,s,o)=>{if(typeof t!=="object"||t===null||Array.isArray(t))return!1;for(let[a,i]of Object.entries(e)){if(i.isRequired&&!(a in t))return!1;if(a in t&&!i.validate(t[a],`${s}.${a}`,o))return!1}return!0},(t,s,o)=>`Invalid prop \`${s}\` supplied to \`${o}\`, expected object matching specified shape.`)},instanceOf(e){return new $((t)=>t instanceof e,(t,s,o)=>`Invalid prop \`${s}\` supplied to \`${o}\`, 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,o)=>`Invalid prop \`${s}\` of value \`${t}\` supplied to \`${o}\`, expected value >= ${e}.`)},max(e){return new $((t)=>typeof t==="number"&&t<=e,(t,s,o)=>`Invalid prop \`${s}\` of value \`${t}\` supplied to \`${o}\`, expected value <= ${e}.`)},range(e,t){return new $((s)=>typeof s==="number"&&s>=e&&s<=t,(s,o,a)=>`Invalid prop \`${o}\` of value \`${s}\` supplied to \`${a}\`, expected value between ${e} and ${t}.`)},pattern(e){return new $((t)=>typeof t==="string"&&e.test(t),(t,s,o)=>`Invalid prop \`${s}\` of value \`${t}\` supplied to \`${o}\`, 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,o={}){let{throwOnError:a=!1,logWarnings:i=_}=o,r=[];if(!_)return{valid:!0,errors:[]};for(let[n,c]of Object.entries(s)){let d=t[n],f=d===void 0;if(c.isRequired&&f){let p=`Required prop \`${n}\` was not specified in \`${e}\`.`;r.push(p);continue}if(f)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(a)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 or(e,t,s="value"){if(!_)return;if(!t.validate(e,s,"assertion"))throw Error(t.message(e,s,"assertion"))}function ir(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},dr=D("Button",Ue);function pr(e){return ne(e,"Button","onClick")}function ur(e){if(e&&!["primary","secondary","outline","ghost","danger"].includes(e))throw M.invalidProp("Button","variant",e,["primary","secondary","outline","ghost","danger"])}function fr(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 ht="./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 It="./Drawer-jgepqr9j.stx";var Tt="./Dropdown-vvhemtc0.stx";var Dt="./DropdownButton-wcz67dxy.stx";var zt="./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},fn=D("Form",Rt);var Bt="./Image-yhxcvgzs.stx";var Ht="./EmailInput-vak3kkmk.stx";var Wt="./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},Sn=D("TextInput",Xt),In=D("EmailInput",Jt),Nn=D("PasswordInput",Qt),Tn=D("NumberInput",Zt),An=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="./Navigator-smpa7my4.stx";var hs="./Notification-03vfh3k6.stx";var gs="./Pagination-jbcjrfcs.stx";var ms="./Checkout-22wh3s22.stx";var ws="./DefaultPaymentMethod-6qrem3sg.stx";var Cs="./PaymentMethods-2xy66bwk.stx";var ks="./SubscriptionCheckout-7fdkwf04.stx";var Is="./Popover-et2q44m7.stx";var Ts="./PopoverButton-mffzc9pr.stx";var Ds="./PopoverPanel-054yh38h.stx";var zs="./Portal-1vf14s4x.stx";var Es="./Progress-4h7dytq5.stx";var Ms="./Radio-ccm07b2m.stx";var qs="./RadioGroup-eerw9gq7.stx";var js="./RadioGroupDescription-z34r9avr.stx";var Vs="./RadioGroupLabel-7mymt1b8.stx";var _s="./RadioGroupOption-7pq7rw84.stx";var Ks="./Select-zt72gg1e.stx";var Us="./Sidebar-dbwp6rnk.stx";var Js="./SidebarFooter-s7skj92y.stx";var Zs="./SidebarHeader-vvxsehyn.stx";var ea="./SidebarItem-5v8atp7p.stx";var sa="./SidebarPinned-48kyk193.stx";var oa="./SidebarSection-sqz49ary.stx";var ra="./SidebarSpace-nmbvgrky.stx";var la="./SidebarSpaces-h1564zm6.stx";var da="./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}},pa={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}},ua={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}},fa={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}},ha={...O,pane:"bg-stone-100 dark:bg-neutral-900 text-black dark:text-white select-none",layers:{}},ba={...O,pane:"bg-transparent text-black dark:text-white select-none",layers:{}},ga={...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:fa,workspace:pa,desktop:ua,solid:ha,transparent:ba,vibrancy:ga};function Ul(e){return le[e||"macos"]||le.macos}function Yl(e){if(!e)return;return F[e]||e}var xa=F.gray;function P(e,t,s){return`color-mix(in oklab, ${e} ${t}%, ${s})`}function ce(e){return{light:{from:P(e,35,"#ffffff"),to:P(e,12.5,"#ffffff"),ink:P(e,22,"#17171b"),accent:P(e,88,"#2a2a30")},dark:{from:P(e,27,"#101014"),to:P(e,10,"#08080b"),ink:P(e,12,"#f4f4f7"),accent:P(e,74,"#ffffff")}}}function Zl(e,t){return`linear-gradient(180deg, ${e} 0%, ${t} 100%)`}function ma(e){if(!e)return ce(xa);if(typeof e!=="string")return e;return ce(F[e]||e)}function va(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 wa(e){let t=ma(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:va(t),deferred:e.deferred===!0,showTitle:e.showTitle??!0}}function Ql(e){return(e||[]).map(wa)}function ec(e,t){if(!t)return 0;let s=e.findIndex((a)=>a.id===t);return s===-1?0:s}function tc(e){return e.map((t)=>t.tint)}var Ca="./Skeleton-wtwb97xd.stx";var ka="./Spinner-ypya5tt2.stx";var Ia="./Stepper-rgbk76hd.stx";var Ta="./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 Nc={local:new K("local"),session:new K("session")};function Tc(e="local",t){return new K(e,t)}var Da="./Switch-hdta55a8.stx";var za="./Table-0mc3fdek.stx";var Ea="./TableBody-drxyz5jh.stx";var Ma="./TableCell-8swtcq8s.stx";var qa="./TableHead-e9xvjx2j.stx";var ja="./TableHeader-sxc77b4d.stx";var Va="./TableRow-xd542nvb.stx";var _a="./TabPanel-5htevsq6.stx";var Ka="./Tabs-b4xsba1w.stx";var Ua="./Teleport-tsx4bt4n.stx";var Ja="./Textarea-xcdym703.stx";var Za="./Tooltip-y61h04gp.stx";var eo="./Transition-7smenaz8.stx";var so="./Video-a0aeyexv.stx";var oo="./VirtualList-fa7v5a3h.stx";var ro="./VirtualTable-jvm1784g.stx";var no=0;function pe(e="a11y"){return`${e}-${++no}-${Date.now()}`}function md(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 vd(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 wd(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 yd(e,t={}){let{initialFocus:s,returnFocus:a,escapeDeactivates:o=!0,clickOutsideDeactivates:i=!0,allowOutsideClick:r=!1,onActivate:n,onDeactivate:c}=t,d=!1,f=!1,p=null,g=(m)=>{if(f)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 T=C[0],z=C[C.length-1];if(m.shiftKey){if(document.activeElement===T)m.preventDefault(),z.focus()}else if(document.activeElement===z)m.preventDefault(),T.focus()}},h=(m)=>{if(f)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",h),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",h),c?.()}function k(){f=!0}function x(){f=!1}return{activate:w,deactivate:v,pause:k,unpause:x}}function Cd(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((h,w)=>{if(w===p){if(h.setAttribute("tabindex","0"),typeof h.focus==="function")h.focus()}else h.setAttribute("tabindex","-1")}),n=p,r?.(p,g[p])},f=(p)=>{let h=c().length-1,w=!1,v=n;switch(p.key){case"ArrowRight":if(o==="horizontal"||o==="both"){if(v=n+1,v>h)v=i?0:h;w=!0}break;case"ArrowLeft":if(o==="horizontal"||o==="both"){if(v=n-1,v<0)v=i?h:0;w=!0}break;case"ArrowDown":if(o==="vertical"||o==="both"){if(v=n+1,v>h)v=i?0:h;w=!0}break;case"ArrowUp":if(o==="vertical"||o==="both"){if(v=n-1,v<0)v=i?h:0;w=!0}break;case"Home":v=0,w=!0;break;case"End":v=h,w=!0;break}if(w)p.preventDefault(),d(v)};return d(a),e.addEventListener("keydown",f),()=>{e.removeEventListener("keydown",f)}}var $d={Enter:"Enter",Space:" ",Escape:"Escape",ArrowUp:"ArrowUp",ArrowDown:"ArrowDown",ArrowLeft:"ArrowLeft",ArrowRight:"ArrowRight",Tab:"Tab",Home:"Home",End:"End",PageUp:"PageUp",PageDown:"PageDown"};function kd(e){return document.activeElement===e}function Sd(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 Id(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 Nd={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 Td(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 Ad(){if(typeof window.matchMedia==="function")return window.matchMedia("(prefers-reduced-motion: reduce)").matches;return!1}function Dd(){if(typeof window.matchMedia==="function")return window.matchMedia("(prefers-contrast: high)").matches;return!1}function Ld(){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 zd(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 Pd(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 lo=(e,t,s,a)=>{return s*e/a+t},co=(e,t,s,a)=>{return e/=a,s*e*e+t},po=(e,t,s,a)=>{return e/=a,-s*e*(e-2)+t},uo=(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},fo=(e,t,s,a)=>{return e/=a,s*e*e*e+t},ho=(e,t,s,a)=>{return e/=a,e--,s*(e*e*e+1)+t},bo=(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},go=(e,t,s,a)=>{return e/=a,s*e*e*e*e+t},xo=(e,t,s,a)=>{return e/=a,e--,-s*(e*e*e*e-1)+t},mo=(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},vo=(e,t,s,a)=>{return e/=a,s*e*e*e*e*e+t},wo=(e,t,s,a)=>{return e/=a,e--,s*(e*e*e*e*e+1)+t},yo=(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},Co=(e,t,s,a)=>{return-s*Math.cos(e/a*(Math.PI/2))+s+t},$o=(e,t,s,a)=>{return s*Math.sin(e/a*(Math.PI/2))+t},ko=(e,t,s,a)=>{return-s/2*(Math.cos(Math.PI*e/a)-1)+t},So=(e,t,s,a)=>{return e===0?t:s*2**(10*(e/a-1))+t},Io=(e,t,s,a)=>{return e===a?t+s:s*(-(2**(-10*e/a))+1)+t},No=(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},To=(e,t,s,a)=>{return e/=a,-s*(Math.sqrt(1-e*e)-1)+t},Ao=(e,t,s,a)=>{return e/=a,e--,s*Math.sqrt(1-e*e)+t},Do=(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},Lo=(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},zo=(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},Po=(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},Eo=(e,t,s,a)=>{return e/=a,s*e*e*(2.70158*e-1.70158)+t},Oo=(e,t,s,a)=>{return e/=a,e--,s*(e*e*(2.70158*e+1.70158)+1)+t},Mo=(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},Ro=(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},Od={linear:lo,easeInQuad:co,easeOutQuad:po,easeInOutQuad:uo,easeInCubic:fo,easeOutCubic:ho,easeInOutCubic:bo,easeInQuart:go,easeOutQuart:xo,easeInOutQuart:mo,easeInQuint:vo,easeOutQuint:wo,easeInOutQuint:yo,easeInSine:Co,easeOutSine:$o,easeInOutSine:ko,easeInExpo:So,easeOutExpo:Io,easeInOutExpo:No,easeInCirc:To,easeOutCirc:Ao,easeInOutCirc:Do,easeInElastic:Lo,easeOutElastic:zo,easeInOutElastic:Po,easeInBack:Eo,easeOutBack:Oo,easeInOutBack:Mo,easeInBounce:ue,easeOutBounce:te,easeInOutBounce:Ro};function qo(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 fe(e,t,s={}){e.style.animation=qo(t,s)}function Rd(e){e.style.animation=""}function Bo(e){return new Promise((t)=>{let s=()=>{e.removeEventListener("animationend",s),t()};e.addEventListener("animationend",s)})}function qd(e,t,s={}){let{stagger:a=100,...o}=s;e.forEach((i,r)=>{let n=`${r*a}ms`;fe(i,t,{...o,delay:n})})}async function Bd(e,t){for(let s of t)fe(e,s.name,s.options),await Bo(e)}var jd={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 Hd(e,t,s=1000){return new Promise((a)=>{e.classList.add(t),setTimeout(()=>{e.classList.remove(t),a()},s)})}function Vd(e,t){let s=`
|
|
11
|
+
`)}`)}return{valid:r.length===0,errors:r}}function D(e,t,s){return(o)=>Fe(e,o,t,s)}function ar(e,t,s="value"){if(!_)return;if(!t.validate(e,s,"assertion"))throw Error(t.message(e,s,"assertion"))}function ir(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},dr=D("Button",Ue);function pr(e){return ne(e,"Button","onClick")}function ur(e){if(e&&!["primary","secondary","outline","ghost","danger"].includes(e))throw M.invalidProp("Button","variant",e,["primary","secondary","outline","ghost","danger"])}function fr(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 at="./ComboboxButton-g76stp1e.stx";var rt="./ComboboxInput-z1293bbh.stx";var lt="./ComboboxOption-6yh7xk7q.stx";var dt="./ComboboxOptions-sq5360ae.stx";var ut="./CommandPalette-36mxf05w.stx";var ht="./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 It="./Drawer-jgepqr9j.stx";var Nt="./Dropdown-vvhemtc0.stx";var Dt="./DropdownButton-wcz67dxy.stx";var zt="./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},fn=D("Form",Rt);var Bt="./Image-yhxcvgzs.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},Sn=D("TextInput",Xt),In=D("EmailInput",Jt),Tn=D("PasswordInput",Qt),Nn=D("NumberInput",Zt),An=D("SearchInput",es);var ss="./Listbox-q49tnr90.stx";var as="./ListboxButton-keb8gm0q.stx";var rs="./ListboxLabel-7mymt1b8.stx";var ls="./ListboxOption-4j070101.stx";var ds="./ListboxOptions-ejkatcfg.stx";var us="./Navigator-smpa7my4.stx";var hs="./Notification-03vfh3k6.stx";var gs="./Pagination-jbcjrfcs.stx";var ms="./Checkout-22wh3s22.stx";var ws="./DefaultPaymentMethod-6qrem3sg.stx";var Cs="./PaymentMethods-2xy66bwk.stx";var ks="./SubscriptionCheckout-7fdkwf04.stx";var Is="./Popover-et2q44m7.stx";var Ns="./PopoverButton-mffzc9pr.stx";var Ds="./PopoverPanel-054yh38h.stx";var zs="./Portal-1vf14s4x.stx";var Es="./Progress-4h7dytq5.stx";var Ms="./Radio-ccm07b2m.stx";var qs="./RadioGroup-eerw9gq7.stx";var js="./RadioGroupDescription-z34r9avr.stx";var Ws="./RadioGroupLabel-7mymt1b8.stx";var _s="./RadioGroupOption-7pq7rw84.stx";var Ks="./Select-zt72gg1e.stx";var Us="./Sidebar-dbwp6rnk.stx";var Js="./SidebarFooter-s7skj92y.stx";var Zs="./SidebarHeader-fxjk0tc3.stx";var eo="./SidebarItem-5v8atp7p.stx";var so="./SidebarPinned-48kyk193.stx";var ao="./SidebarSection-sqz49ary.stx";var ro="./SidebarSpace-nmbvgrky.stx";var lo="./SidebarSpaces-h1564zm6.stx";var po="./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}},uo={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}},fo={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}},ho={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}},bo={...O,pane:"bg-stone-100 dark:bg-neutral-900 text-black dark:text-white select-none",layers:{}},go={...O,pane:"bg-transparent text-black dark:text-white select-none",layers:{}},xo={...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:ho,workspace:uo,desktop:fo,solid:bo,transparent:go,vibrancy:xo};function Ul(e){return le[e||"macos"]||le.macos}function Yl(e){if(!e)return;return F[e]||e}var mo=F.gray;function P(e,t,s){return`color-mix(in oklab, ${e} ${t}%, ${s})`}function ce(e){return{light:{from:P(e,35,"#ffffff"),to:P(e,12.5,"#ffffff"),ink:P(e,22,"#17171b"),accent:P(e,88,"#2a2a30")},dark:{from:P(e,27,"#101014"),to:P(e,10,"#08080b"),ink:P(e,12,"#f4f4f7"),accent:P(e,74,"#ffffff")}}}function Zl(e,t){return`linear-gradient(180deg, ${e} 0%, ${t} 100%)`}function vo(e){if(!e)return ce(mo);if(typeof e!=="string")return e;return ce(F[e]||e)}function wo(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,o){if(!e||!e.label)return null;return{id:e.id||`${t}-${s}`,label:e.label,icon:e.icon||o}}function yo(e){let t=vo(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:wo(t),deferred:e.deferred===!0,showTitle:e.showTitle??!0}}function Ql(e){return(e||[]).map(yo)}function ec(e,t){if(!t)return 0;let s=e.findIndex((o)=>o.id===t);return s===-1?0:s}function tc(e){return e.map((t)=>t.tint)}var $o="./Skeleton-wtwb97xd.stx";var So="./Spinner-ypya5tt2.stx";var To="./Stepper-rgbk76hd.stx";var Ao="./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 o=e.oldValue?JSON.parse(e.oldValue).value:null,a=e.newValue?JSON.parse(e.newValue).value:null;s.forEach((i)=>i(a,o,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 o=0;o<t.length;o++)s+=String.fromCharCode(t.charCodeAt(o)^this.encryptionKey.charCodeAt(o%this.encryptionKey.length));return s}catch{return e}}compress(e){if(e.length<100)return e;let t={},s=256,o=[],a="";for(let i=0;i<e.length;i++){let r=e.charAt(i),n=a+r;if(t[n]!==void 0)a=n;else o.push(a.length>1?t[a]:a.charCodeAt(0)),t[n]=s++,a=r}if(a!=="")o.push(a.length>1?t[a]:a.charCodeAt(0));return JSON.stringify(o)}decompress(e){try{let t=JSON.parse(e);if(!Array.isArray(t))return e;let s={},o=256,a=String.fromCharCode(t[0]),i=a;for(let r=1;r<t.length;r++){let n=t[r],c;if(s[n]!==void 0)c=s[n];else if(n===o)c=a+a.charAt(0);else return e;i+=c,s[o++]=a+c.charAt(0),a=c}return i}catch{return e}}getKey(e){return this.namespace?`${this.namespace}:${e}`:e}set(e,t,s){let o=this.getKey(e),a=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(o,r),this.notifyWatchers(e,t,a)}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 o=JSON.parse(s);if(o.expire&&Date.now()-o.timestamp>o.expire)return this.remove(e),null;return o.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 o=this.watchers.get(e);if(o)o.forEach((a)=>a(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 o=this.storage.key(s);if(o){let a=this.storage.getItem(o)||"";e+=o.length+a.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,o])=>{this.set(s,o,t)})}getMany(e){let t={};return e.forEach((s)=>{t[s]=this.get(s)}),t}removeMany(e){e.forEach((t)=>this.remove(t))}}var Tc={local:new K("local"),session:new K("session")};function Nc(e="local",t){return new K(e,t)}var Lo="./Switch-hdta55a8.stx";var Po="./Table-0mc3fdek.stx";var Oo="./TableBody-drxyz5jh.stx";var Ro="./TableCell-8swtcq8s.stx";var Bo="./TableHead-e9xvjx2j.stx";var Ho="./TableHeader-sxc77b4d.stx";var Vo="./TableRow-xd542nvb.stx";var Fo="./TabPanel-5htevsq6.stx";var Go="./Tabs-b4xsba1w.stx";var Yo="./Teleport-tsx4bt4n.stx";var Xo="./Textarea-xcdym703.stx";var Qo="./Tooltip-y61h04gp.stx";var ta="./Transition-7smenaz8.stx";var oa="./Video-a0aeyexv.stx";var ia="./VirtualList-fa7v5a3h.stx";var na="./VirtualTable-jvm1784g.stx";var la=0;function pe(e="a11y"){return`${e}-${++la}-${Date.now()}`}function md(e,t,s={}){let{visible:o=!1,id:a=pe("label")}=s,i=document.createElement(o?"label":"span");if(i.id=a,i.textContent=e,!o)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",a),t.parentElement)t.parentElement.insertBefore(i,t);else document.body.appendChild(i);return a}function vd(e,t){let s=pe("desc"),o=document.createElement("span");if(o.id=s,o.textContent=e,Object.assign(o.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(o,t);else document.body.appendChild(o);return s}function wd(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 yd(e,t={}){let{initialFocus:s,returnFocus:o,escapeDeactivates:a=!0,clickOutsideDeactivates:i=!0,allowOutsideClick:r=!1,onActivate:n,onDeactivate:c}=t,d=!1,f=!1,p=null,g=(m)=>{if(f)return;if(a&&m.key==="Escape"){m.preventDefault(),v();return}if(m.key==="Tab"){let C=ee(e);if(C.length===0){m.preventDefault();return}let N=C[0],z=C[C.length-1];if(m.shiftKey){if(document.activeElement===N)m.preventDefault(),z.focus()}else if(document.activeElement===z)m.preventDefault(),N.focus()}},h=(m)=>{if(f)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",h),n?.()}function v(){if(!d)return;d=!1;let m=o||p;if(m&&typeof m.focus==="function")m.focus();document.removeEventListener("keydown",g),document.removeEventListener("click",h),c?.()}function k(){f=!0}function x(){f=!1}return{activate:w,deactivate:v,pause:k,unpause:x}}function Cd(e,t={}){let{selector:s='[role="option"], [role="menuitem"], [role="tab"], button',initialIndex:o=0,orientation:a="both",loop:i=!0,onFocusChange:r}=t,n=o,c=()=>{return Array.from(e.querySelectorAll(s))},d=(p)=>{let g=c();if(p<0||p>=g.length)return;g.forEach((h,w)=>{if(w===p){if(h.setAttribute("tabindex","0"),typeof h.focus==="function")h.focus()}else h.setAttribute("tabindex","-1")}),n=p,r?.(p,g[p])},f=(p)=>{let h=c().length-1,w=!1,v=n;switch(p.key){case"ArrowRight":if(a==="horizontal"||a==="both"){if(v=n+1,v>h)v=i?0:h;w=!0}break;case"ArrowLeft":if(a==="horizontal"||a==="both"){if(v=n-1,v<0)v=i?h:0;w=!0}break;case"ArrowDown":if(a==="vertical"||a==="both"){if(v=n+1,v>h)v=i?0:h;w=!0}break;case"ArrowUp":if(a==="vertical"||a==="both"){if(v=n-1,v<0)v=i?h:0;w=!0}break;case"Home":v=0,w=!0;break;case"End":v=h,w=!0;break}if(w)p.preventDefault(),d(v)};return d(o),e.addEventListener("keydown",f),()=>{e.removeEventListener("keydown",f)}}var $d={Enter:"Enter",Space:" ",Escape:"Escape",ArrowUp:"ArrowUp",ArrowDown:"ArrowDown",ArrowLeft:"ArrowLeft",ArrowRight:"ArrowRight",Tab:"Tab",Home:"Home",End:"End",PageUp:"PageUp",PageDown:"PageDown"};function kd(e){return document.activeElement===e}function Sd(e,t){let s=t||document.activeElement,o=ee(document.body),a=o.indexOf(s);if(a===-1)return;let i=e==="next"?a+1:a-1,r=o[i];if(r)r.focus()}function Id(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 Td={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 Nd(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 Ad(){if(typeof window.matchMedia==="function")return window.matchMedia("(prefers-reduced-motion: reduce)").matches;return!1}function Dd(){if(typeof window.matchMedia==="function")return window.matchMedia("(prefers-contrast: high)").matches;return!1}function Ld(){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 zd(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 Pd(e){let t=[],s=(o)=>{let a=e.getAttribute(o);if(a){let i=a.split(" ");for(let r of i)if(!document.getElementById(r))t.push(`${o} references non-existent ID: ${r}`)}};return s("aria-labelledby"),s("aria-describedby"),s("aria-controls"),s("aria-owns"),s("aria-activedescendant"),t}var ca=(e,t,s,o)=>{return s*e/o+t},da=(e,t,s,o)=>{return e/=o,s*e*e+t},pa=(e,t,s,o)=>{return e/=o,-s*e*(e-2)+t},ua=(e,t,s,o)=>{if(e/=o/2,e<1)return s/2*e*e+t;return e--,-s/2*(e*(e-2)-1)+t},fa=(e,t,s,o)=>{return e/=o,s*e*e*e+t},ha=(e,t,s,o)=>{return e/=o,e--,s*(e*e*e+1)+t},ba=(e,t,s,o)=>{if(e/=o/2,e<1)return s/2*e*e*e+t;return e-=2,s/2*(e*e*e+2)+t},ga=(e,t,s,o)=>{return e/=o,s*e*e*e*e+t},xa=(e,t,s,o)=>{return e/=o,e--,-s*(e*e*e*e-1)+t},ma=(e,t,s,o)=>{if(e/=o/2,e<1)return s/2*e*e*e*e+t;return e-=2,-s/2*(e*e*e*e-2)+t},va=(e,t,s,o)=>{return e/=o,s*e*e*e*e*e+t},wa=(e,t,s,o)=>{return e/=o,e--,s*(e*e*e*e*e+1)+t},ya=(e,t,s,o)=>{if(e/=o/2,e<1)return s/2*e*e*e*e*e+t;return e-=2,s/2*(e*e*e*e*e+2)+t},Ca=(e,t,s,o)=>{return-s*Math.cos(e/o*(Math.PI/2))+s+t},$a=(e,t,s,o)=>{return s*Math.sin(e/o*(Math.PI/2))+t},ka=(e,t,s,o)=>{return-s/2*(Math.cos(Math.PI*e/o)-1)+t},Sa=(e,t,s,o)=>{return e===0?t:s*2**(10*(e/o-1))+t},Ia=(e,t,s,o)=>{return e===o?t+s:s*(-(2**(-10*e/o))+1)+t},Ta=(e,t,s,o)=>{if(e===0)return t;if(e===o)return t+s;if(e/=o/2,e<1)return s/2*2**(10*(e-1))+t;return e--,s/2*(-(2**(-10*e))+2)+t},Na=(e,t,s,o)=>{return e/=o,-s*(Math.sqrt(1-e*e)-1)+t},Aa=(e,t,s,o)=>{return e/=o,e--,s*Math.sqrt(1-e*e)+t},Da=(e,t,s,o)=>{if(e/=o/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},La=(e,t,s,o)=>{let a=1.70158,i=0,r=s;if(e===0)return t;if(e/=o,e===1)return t+s;if(!i)i=o*0.3;if(r<Math.abs(s))r=s,a=i/4;else a=i/(2*Math.PI)*Math.asin(s/r);return e-=1,-(r*2**(10*e)*Math.sin((e*o-a)*(2*Math.PI)/i))+t},za=(e,t,s,o)=>{let a=1.70158,i=0,r=s;if(e===0)return t;if(e/=o,e===1)return t+s;if(!i)i=o*0.3;if(r<Math.abs(s))r=s,a=i/4;else a=i/(2*Math.PI)*Math.asin(s/r);return r*2**(-10*e)*Math.sin((e*o-a)*(2*Math.PI)/i)+s+t},Pa=(e,t,s,o)=>{let a=1.70158,i=0,r=s;if(e===0)return t;if(e/=o/2,e===2)return t+s;if(!i)i=o*0.44999999999999996;if(r<Math.abs(s))r=s,a=i/4;else a=i/(2*Math.PI)*Math.asin(s/r);if(e<1)return e-=1,-0.5*(r*2**(10*e)*Math.sin((e*o-a)*(2*Math.PI)/i))+t;return e-=1,r*2**(-10*e)*Math.sin((e*o-a)*(2*Math.PI)/i)*0.5+s+t},Ea=(e,t,s,o)=>{return e/=o,s*e*e*(2.70158*e-1.70158)+t},Oa=(e,t,s,o)=>{return e/=o,e--,s*(e*e*(2.70158*e+1.70158)+1)+t},Ma=(e,t,s,o)=>{let a=1.70158;if(e/=o/2,e<1)return a*=1.525,s/2*(e*e*((a+1)*e-a))+t;return e-=2,a*=1.525,s/2*(e*e*((a+1)*e+a)+2)+t},te=(e,t,s,o)=>{if(e/=o,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,o)=>{return s-te(o-e,0,s,o)+t},Ra=(e,t,s,o)=>{if(e<o/2)return ue(e*2,0,s,o)*0.5+t;return te(e*2-o,0,s,o)*0.5+s*0.5+t},Od={linear:ca,easeInQuad:da,easeOutQuad:pa,easeInOutQuad:ua,easeInCubic:fa,easeOutCubic:ha,easeInOutCubic:ba,easeInQuart:ga,easeOutQuart:xa,easeInOutQuart:ma,easeInQuint:va,easeOutQuint:wa,easeInOutQuint:ya,easeInSine:Ca,easeOutSine:$a,easeInOutSine:ka,easeInExpo:Sa,easeOutExpo:Ia,easeInOutExpo:Ta,easeInCirc:Na,easeOutCirc:Aa,easeInOutCirc:Da,easeInElastic:La,easeOutElastic:za,easeInOutElastic:Pa,easeInBack:Ea,easeOutBack:Oa,easeInOutBack:Ma,easeInBounce:ue,easeOutBounce:te,easeInOutBounce:Ra};function qa(e,t={}){let{duration:s="1s",timing:o="ease",delay:a="0s",iteration:i="1",direction:r="normal",fill:n="both",playState:c="running"}=t;return`${e} ${s} ${o} ${a} ${i} ${r} ${n} ${c}`}function fe(e,t,s={}){e.style.animation=qa(t,s)}function Rd(e){e.style.animation=""}function Ba(e){return new Promise((t)=>{let s=()=>{e.removeEventListener("animationend",s),t()};e.addEventListener("animationend",s)})}function qd(e,t,s={}){let{stagger:o=100,...a}=s;e.forEach((i,r)=>{let n=`${r*o}ms`;fe(i,t,{...a,delay:n})})}async function Bd(e,t){for(let s of t)fe(e,s.name,s.options),await Ba(e)}var jd={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 Hd(e,t,s=1000){return new Promise((o)=>{e.classList.add(t),setTimeout(()=>{e.classList.remove(t),o()},s)})}function Wd(e,t){let s=`
|
|
12
12
|
@keyframes ${e} {
|
|
13
|
-
${Object.entries(t).map(([
|
|
13
|
+
${Object.entries(t).map(([a,i])=>{let r=Object.entries(i).map(([n,c])=>`${n}: ${c};`).join(" ");return`${a} { ${r} }`}).join(`
|
|
14
14
|
`)}
|
|
15
15
|
}
|
|
16
|
-
`,a=document.createElement("style");a.textContent=s,document.head.appendChild(a)}function jo(e,t,s={}){if(typeof e.animate!=="function")return console.warn("Web Animations API not supported"),null;let{duration:a=1000,easing:o="ease",delay:i=0,iterations:r=1,direction:n="normal",fill:c="both"}=s;return e.animate([...t],{duration:a,easing:o,delay:i,iterations:r,direction:n,fill:c})}var Ho={fadeIn:[{offset:0,opacity:0},{offset:1,opacity:1}],fadeOut:[{offset:0,opacity:1},{offset:1,opacity:0}],slideInUp:[{offset:0,transform:"translateY(100%)",opacity:0},{offset:1,transform:"translateY(0)",opacity:1}],slideInDown:[{offset:0,transform:"translateY(-100%)",opacity:0},{offset:1,transform:"translateY(0)",opacity:1}],slideInLeft:[{offset:0,transform:"translateX(-100%)",opacity:0},{offset:1,transform:"translateX(0)",opacity:1}],slideInRight:[{offset:0,transform:"translateX(100%)",opacity:0},{offset:1,transform:"translateX(0)",opacity:1}],slideOutUp:[{offset:0,transform:"translateY(0)",opacity:1},{offset:1,transform:"translateY(-100%)",opacity:0}],slideOutDown:[{offset:0,transform:"translateY(0)",opacity:1},{offset:1,transform:"translateY(100%)",opacity:0}],slideOutLeft:[{offset:0,transform:"translateX(0)",opacity:1},{offset:1,transform:"translateX(-100%)",opacity:0}],slideOutRight:[{offset:0,transform:"translateX(0)",opacity:1},{offset:1,transform:"translateX(100%)",opacity:0}],zoomIn:[{offset:0,transform:"scale(0)",opacity:0},{offset:0.5,opacity:1},{offset:1,transform:"scale(1)"}],zoomOut:[{offset:0,transform:"scale(1)",opacity:1},{offset:0.5,opacity:1},{offset:1,transform:"scale(0)",opacity:0}],rotate:[{offset:0,transform:"rotate(0deg)"},{offset:1,transform:"rotate(360deg)"}],bounce:[{offset:0,transform:"translateY(0)"},{offset:0.2,transform:"translateY(0)"},{offset:0.4,transform:"translateY(-30px)"},{offset:0.43,transform:"translateY(-30px)"},{offset:0.53,transform:"translateY(0)"},{offset:0.7,transform:"translateY(-15px)"},{offset:0.8,transform:"translateY(0)"},{offset:0.9,transform:"translateY(-4px)"},{offset:1,transform:"translateY(0)"}],pulse:[{offset:0,transform:"scale(1)"},{offset:0.5,transform:"scale(1.05)"},{offset:1,transform:"scale(1)"}],shake:[{offset:0,transform:"translateX(0)"},{offset:0.1,transform:"translateX(-10px)"},{offset:0.2,transform:"translateX(10px)"},{offset:0.3,transform:"translateX(-10px)"},{offset:0.4,transform:"translateX(10px)"},{offset:0.5,transform:"translateX(-10px)"},{offset:0.6,transform:"translateX(10px)"},{offset:0.7,transform:"translateX(-10px)"},{offset:0.8,transform:"translateX(10px)"},{offset:0.9,transform:"translateX(-10px)"},{offset:1,transform:"translateX(0)"}],swing:[{offset:0,transform:"rotate(0deg)"},{offset:0.2,transform:"rotate(15deg)"},{offset:0.4,transform:"rotate(-10deg)"},{offset:0.6,transform:"rotate(5deg)"},{offset:0.8,transform:"rotate(-5deg)"},{offset:1,transform:"rotate(0deg)"}],flip:[{offset:0,transform:"perspective(400px) rotateY(0)",animationTimingFunction:"ease-out"},{offset:0.4,transform:"perspective(400px) translateZ(150px) rotateY(170deg)",animationTimingFunction:"ease-out"},{offset:0.5,transform:"perspective(400px) translateZ(150px) rotateY(190deg)",animationTimingFunction:"ease-in"},{offset:0.8,transform:"perspective(400px) rotateY(360deg)",animationTimingFunction:"ease-in"},{offset:1,transform:"perspective(400px)",animationTimingFunction:"ease-in"}],rubberBand:[{offset:0,transform:"scale(1)"},{offset:0.3,transform:"scaleX(1.25) scaleY(0.75)"},{offset:0.4,transform:"scaleX(0.75) scaleY(1.25)"},{offset:0.5,transform:"scaleX(1.15) scaleY(0.85)"},{offset:0.65,transform:"scaleX(0.95) scaleY(1.05)"},{offset:0.75,transform:"scaleX(1.05) scaleY(0.95)"},{offset:1,transform:"scale(1)"}],heartbeat:[{offset:0,transform:"scale(1)"},{offset:0.14,transform:"scale(1.3)"},{offset:0.28,transform:"scale(1)"},{offset:0.42,transform:"scale(1.3)"},{offset:0.7,transform:"scale(1)"}]};function _d(e,t,s={}){return jo(e,Ho[t],s)}import{createHighlighter as Vo}from"ts-syntax-highlighter";var se=null;async function Wo(){if(!se)se=await Vo({theme:"github-light"});return se}async function Gd(e,t={}){let{theme:s="auto",language:a="typescript",lineNumbers:o=!1,wrapLines:i=!0}=t,r=await Wo(),n=s==="auto"?globalThis.matchMedia?.("(prefers-color-scheme: dark)").matches?"github-dark":"github-light":s==="dark"?"github-dark":"github-light",c=await r.highlight(e,a);return{html:typeof c==="string"?c:String(c),language:a,theme:n}}function Ud(e){if(e.includes("<!DOCTYPE")||e.includes("<html"))return"html";if(e.includes("<?php"))return"php";if(e.includes("import")&&e.includes("from"))return"typescript";if(e.includes("function")||e.includes("const"))return"javascript";if(e.includes("{")&&e.includes("}"))return"json";if(e.includes("$")&&e.includes("|"))return"bash";if(e.includes("#")&&e.includes("##"))return"markdown";return"typescript"}function Yd(e,t){return`<div class="${t?`rounded-md overflow-auto text-sm leading-relaxed font-mono ${t}`:"rounded-md overflow-auto text-sm leading-relaxed font-mono"}">${e}</div>`}var L=null,_o=(e)=>{return e===1?0:1};function G(e,t){return t.split(".").reduce((s,a)=>s?.[a],e)}function ae(e,t={}){return e.replace(/\{(\w+)\}/g,(s,a)=>{return t[a]!==void 0?String(t[a]):s})}function Xd(e){let{locale:t,fallbackLocale:s="en",messages:a,pluralRules:o={},dateTimeFormats:i={},numberFormats:r={},missing:n,warnMissing:c=!0}=e;function d(x,m={}){let C=G(a[t],x);if(C===void 0&&s)C=G(a[s],x);if(C===void 0){if(n){let T=n(t,x);if(T)return ae(T,m)}if(c&&typeof console<"u")console.warn(`[i18n] Missing translation for key "${x}" in locale "${t}"`);return x}if(typeof C==="string")return ae(C,m);return String(C)}function f(x,m,C={}){let T=d(x,{...C,count:m});if(T.includes("|")){let z=T.split("|").map((Z)=>Z.trim()),J=(o[t]||_o)(m,t),X=z[J]||z[z.length-1];return ae(X,{...C,count:m})}return T}function p(x,m="default"){let C=typeof x==="number"?new Date(x):x,T=i[m]||i.default||{};return new Intl.DateTimeFormat(t,T).format(C)}function g(x,m="default"){let C=r[m]||r.default||{};return new Intl.NumberFormat(t,C).format(x)}function h(x){if(G(a[t],x)!==void 0)return!0;if(s)return G(a[s],x)!==void 0;return!1}function w(x){if(!a[x]){console.warn(`[i18n] Locale "${x}" not found. Available locales: ${Object.keys(a).join(", ")}`);return}t=x}function v(x,m){if(!a[x])a[x]={};a[x]={...a[x],...m}}function k(x){delete a[x]}return{get locale(){return t},get availableLocales(){return Object.keys(a)},setLocale:w,t:d,tc:f,d:p,n:g,te:h,addMessages:v,removeLocale:k}}function Zd(e){L=e}function Qd(){return L}function ep(e,t){if(!L)return console.warn("[i18n] No global i18n instance set. Call setI18n() first."),e;return L.t(e,t)}function tp(e,t,s){if(!L)return console.warn("[i18n] No global i18n instance set. Call setI18n() first."),e;return L.tc(e,t,s)}function sp(e,t){if(!L)return console.warn("[i18n] No global i18n instance set. Call setI18n() first."),String(e);return L.d(e,t)}function ap(e,t){if(!L)return console.warn("[i18n] No global i18n instance set. Call setI18n() first."),String(e);return L.n(e,t)}var op={en:(e)=>e===1?0:1,de:(e)=>e===1?0:1,nl:(e)=>e===1?0:1,sv:(e)=>e===1?0:1,fr:(e)=>e===0||e===1?0:1,pt_BR:(e)=>e===0||e===1?0:1,ru:(e)=>{if(e%10===1&&e%100!==11)return 0;if(e%10>=2&&e%10<=4&&(e%100<10||e%100>=20))return 1;return 2},pl:(e)=>{if(e===1)return 0;if(e%10>=2&&e%10<=4&&(e%100<10||e%100>=20))return 1;return 2},cs:(e)=>{if(e===1)return 0;if(e>=2&&e<=4)return 1;return 2},ar:(e)=>{if(e===0)return 0;if(e===1)return 1;if(e===2)return 2;if(e%100>=3&&e%100<=10)return 3;if(e%100>=11)return 4;return 5},ja:()=>0,ko:()=>0,zh:()=>0,th:()=>0,vi:()=>0},ip={short:{year:"numeric",month:"numeric",day:"numeric"},long:{year:"numeric",month:"long",day:"numeric"},full:{weekday:"long",year:"numeric",month:"long",day:"numeric"},time:{hour:"numeric",minute:"numeric"},datetime:{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric"}},rp={decimal:{style:"decimal",minimumFractionDigits:2,maximumFractionDigits:2},currency:{style:"currency",currency:"USD"},percent:{style:"percent",minimumFractionDigits:0,maximumFractionDigits:2},compact:{notation:"compact"}};function np(e){let t=["ar","he","fa","ur","yi"],s=e.split("-")[0].toLowerCase();return t.includes(s)}async function lp(e,t){try{return await t()}catch(s){return console.error(`[i18n] Failed to load messages for locale "${e}":`,s),{}}}var cp={en:{common:{loading:"Loading...",error:"Error",retry:"Retry",cancel:"Cancel",confirm:"Confirm",close:"Close",save:"Save",delete:"Delete",edit:"Edit",search:"Search",clear:"Clear",submit:"Submit",reset:"Reset"},form:{required:"This field is required",invalid:"Invalid value",tooShort:"Value is too short (minimum {min} characters)",tooLong:"Value is too long (maximum {max} characters)",invalidEmail:"Invalid email address",invalidUrl:"Invalid URL"},pagination:{previous:"Previous",next:"Next",page:"Page {page}",of:"of {total}"}},es:{common:{loading:"Cargando...",error:"Error",retry:"Reintentar",cancel:"Cancelar",confirm:"Confirmar",close:"Cerrar",save:"Guardar",delete:"Eliminar",edit:"Editar",search:"Buscar",clear:"Limpiar",submit:"Enviar",reset:"Restablecer"},form:{required:"Este campo es obligatorio",invalid:"Valor inv\xE1lido",tooShort:"El valor es demasiado corto (m\xEDnimo {min} caracteres)",tooLong:"El valor es demasiado largo (m\xE1ximo {max} caracteres)",invalidEmail:"Direcci\xF3n de correo electr\xF3nico inv\xE1lida",invalidUrl:"URL inv\xE1lida"},pagination:{previous:"Anterior",next:"Siguiente",page:"P\xE1gina {page}",of:"de {total}"}},fr:{common:{loading:"Chargement...",error:"Erreur",retry:"R\xE9essayer",cancel:"Annuler",confirm:"Confirmer",close:"Fermer",save:"Enregistrer",delete:"Supprimer",edit:"Modifier",search:"Rechercher",clear:"Effacer",submit:"Soumettre",reset:"R\xE9initialiser"},form:{required:"Ce champ est obligatoire",invalid:"Valeur invalide",tooShort:"La valeur est trop courte (minimum {min} caract\xE8res)",tooLong:"La valeur est trop longue (maximum {max} caract\xE8res)",invalidEmail:"Adresse e-mail invalide",invalidUrl:"URL invalide"},pagination:{previous:"Pr\xE9c\xE9dent",next:"Suivant",page:"Page {page}",of:"sur {total}"}}};function pp(e={}){let{max:t=10,ttl:s=0,include:a,exclude:o,hooks:i,debug:r=!1}=e,n=new Map,c=0,d=0;function f(...u){if(r)console.log("[KeepAlive]",...u)}function p(u){if(o){if(o instanceof RegExp&&o.test(u))return!1;if(Array.isArray(o)&&o.includes(u))return!1}if(a){if(a instanceof RegExp&&!a.test(u))return!1;if(Array.isArray(a)&&!a.includes(u))return!1}return!0}function g(u){if(!s||!u.expiresAt)return!1;return Date.now()>u.expiresAt}function h(u){let b=n.get(u);if(b)b.lastAccessedAt=Date.now(),b.accessCount++,b.instance.lastAccessedAt=b.lastAccessedAt,n.delete(u),n.set(u,b),f(`Touched: ${u} (access count: ${b.accessCount})`)}function w(){if(n.size===0)return!1;let u=n.keys().next().value;if(!u)return!1;let b=n.get(u);if(b){f(`Evicting LRU: ${u}`);let y=b.instance.hooks;if(y?.onDeactivate)y.onDeactivate(b.instance);if(i?.onDeactivate)i.onDeactivate(b.instance);return n.delete(u),!0}return!1}function v(u,b,y){if(!p(b.type))return f(`Type not cacheable: ${b.type}`),b;if(n.size>=t)w();let A=Date.now(),H={instance:{...b,hooks:y||b.hooks,createdAt:b.createdAt||A,lastAccessedAt:A},accessCount:0,createdAt:A,lastAccessedAt:A,expiresAt:s?A+s:void 0};if(n.set(u,H),f(`Cached: ${u} (size: ${n.size}/${t})`),y?.onMount)y.onMount(H.instance);if(i?.onMount)i.onMount(H.instance);return H.instance}function k(u){let b=n.get(u);if(!b)return d++,f(`Miss: ${u}`),null;if(g(b))return f(`Expired: ${u}`),n.delete(u),d++,null;return c++,h(u),f(`Hit: ${u}`),b.instance}function x(u){let b=n.get(u);if(!b)return!1;if(g(b))return n.delete(u),!1;return!0}function m(u){let b=n.get(u);if(!b)return!1;f(`Removing: ${u}`);let y=b.instance.hooks;if(y?.onUnmount)y.onUnmount(b.instance);if(i?.onUnmount)i.onUnmount(b.instance);return n.delete(u)}function C(){f("Clearing cache"),n.forEach((u)=>{let b=u.instance.hooks;if(b?.onUnmount)b.onUnmount(u.instance);if(i?.onUnmount)i.onUnmount(u.instance)}),n.clear(),c=0,d=0}function T(){let u=0,b=Date.now();for(let[y,A]of n.entries())if(g(A))f(`Pruning expired: ${y}`),m(y),u++;while(n.size>t)if(w())u++;else break;if(u>0)f(`Pruned ${u} entries`);return u}function z(u){let b=k(u);if(!b)return null;f(`Activating: ${u}`);let y=b.hooks;if(y?.onActivate)y.onActivate(b);if(i?.onActivate)i.onActivate(b);if(b.state&&y?.onRestore)y.onRestore(b,b.state);return b}function ie(u){let b=n.get(u);if(!b)return!1;f(`Deactivating: ${u}`);let y=b.instance,A=y.hooks;if(A?.onSave)y.state=A.onSave(y);if(A?.onDeactivate)A.onDeactivate(y);if(i?.onDeactivate)i.onDeactivate(y);return!0}function J(){let u=c+d;return{hits:c,misses:d,size:n.size,max:t,hitRate:u>0?c/u:0,keys:Array.from(n.keys())}}function X(){return Array.from(n.keys())}function Z(){return n.size}return{cache:v,get:k,has:x,remove:m,clear:C,prune:T,activate:z,deactivate:ie,getStats:J,keys:X,size:Z}}function up(e){let t=new Map;return{set(s,a){if(t.has(s))t.delete(s);if(t.set(s,a),t.size>e){let o=t.keys().next().value;if(o)t.delete(o)}},get(s){if(!t.has(s))return;let a=t.get(s);return t.delete(s),t.set(s,a),a},has(s){return t.has(s)},delete(s){return t.delete(s)},clear(){t.clear()},get size(){return t.size},keys(){return Array.from(t.keys())},values(){return Array.from(t.values())},forEach(s){t.forEach(s)}}}function fp(){let e=new Map;return{save(t,s){e.set(t,JSON.parse(JSON.stringify(s)))},restore(t){let s=e.get(t);return s?JSON.parse(JSON.stringify(s)):null},has(t){return e.has(t)},remove(t){return e.delete(t)},clear(){e.clear()},keys(){return Array.from(e.keys())},get size(){return e.size}}}function hp(e,t={}){let{maxSize:s=100,reset:a}=t,o=[];return{acquire(){if(o.length>0)return o.pop();return e()},release(i){if(o.length<s){if(a)a(i);o.push(i)}},clear(){o.length=0},get size(){return o.length},get maxSize(){return s}}}var E=new Map;async function U(e,t){let s=t||e.toString();if(E.has(s))return E.get(s);let a=e();E.set(s,a);try{return await a}catch(o){throw E.delete(s),o}}function gp(e,t={}){let{retryAttempts:s=3,retryDelay:a=1000,onLoading:o,onLoaded:i,onError:r}=t,n="idle",c,d,f=async(p=0)=>{try{if(n==="loading"||n==="loaded"){if(c)return c}n="loading",o?.();let g=await U(e);return c=g,n="loaded",i?.(g),g}catch(g){let h=g;if(p<s)return await new Promise((w)=>setTimeout(w,a*(p+1))),f(p+1);throw n="error",d=h,r?.(h),h}};return{get state(){return n},get module(){return c},get error(){return d},load:()=>f(),preload:()=>f()}}function Fo(e,t,s={}){if(!e)return console.warn("lazyLoad: element is null"),()=>{};let{root:a=null,rootMargin:o="0px",threshold:i=0.01,placeholder:r,errorContent:n,onLoading:c,onLoaded:d,onError:f}=s,p=!1,g=null;if(r)if(typeof r==="string")e.innerHTML=r;else e.innerHTML="",e.appendChild(r);return g=new IntersectionObserver(async(w)=>{for(let v of w)if(v.isIntersecting&&!p){p=!0,g?.disconnect();try{c?.();let k=await U(t);if(d?.(k),k&&typeof k.default?.render==="function"){let x=await k.default.render();e.innerHTML=x}}catch(k){let x=k;if(f?.(x),n)if(typeof n==="string")e.innerHTML=n;else e.innerHTML="",e.appendChild(n);else e.innerHTML=`<div style="color: red;">Failed to load component: ${x.message}</div>`}}},{root:a,rootMargin:o,threshold:i}),g.observe(e),()=>{g?.disconnect(),g=null}}function xp(e,t,s={}){let a=[],o=Array.from(e);for(let i of o){let r=typeof t==="function"&&t.length>0?()=>t(i):t,n=Fo(i,r,s);a.push(n)}return()=>{a.forEach((i)=>i())}}function Ko(e){return U(e)}function mp(e){return Promise.all(e.map((t)=>Ko(t)))}function vp(e){if(e)E.delete(e);else E.clear()}function wp(){return{size:E.size,keys:Array.from(E.keys())}}function yp(e){return{async load(t){let s=e[t];if(!s)throw Error(`No route found for path: ${t}`);return U(s,`route:${t}`)},async preload(t){return this.load(t)},async preloadRoutes(t){return Promise.all(t.map((s)=>this.preload(s)))}}}function Go(e,t,s={}){if(!e)return()=>{};let{root:a=null,rootMargin:o="50px",threshold:i=0.01,placeholder:r,onLoading:n,onLoaded:c,onError:d}=s;if(r&&typeof r==="string")e.src=r;let f=!1,p=null;return p=new IntersectionObserver((h)=>{for(let w of h)if(w.isIntersecting&&!f)f=!0,p?.disconnect(),n?.(),e.src=t,e.addEventListener("load",()=>{c?.(e),e.classList.add("loaded")},{once:!0}),e.addEventListener("error",(v)=>{let k=Error(`Failed to load image: ${t}`);d?.(k),e.classList.add("error")},{once:!0})},{root:a,rootMargin:o,threshold:i}),p.observe(e),()=>{p?.disconnect(),p=null}}function Cp(e=document,t={}){let s=e.querySelectorAll("img[data-lazy-src]"),a=[];return s.forEach((o)=>{let i=o.getAttribute("data-lazy-src");if(i){let r=Go(o,i,t);a.push(r)}}),()=>{a.forEach((o)=>o())}}var oe={colors:{primary:"#3b82f6",secondary:"#8b5cf6",success:"#10b981",warning:"#f59e0b",danger:"#ef4444",info:"#06b6d4",gray:"#6b7280",white:"#ffffff",black:"#000000"},typography:{fontFamily:{sans:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',serif:'Georgia, Cambria, "Times New Roman", Times, serif',mono:'Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},fontSize:{xs:"0.75rem",sm:"0.875rem",base:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem"},fontWeight:{light:"300",normal:"400",medium:"500",semibold:"600",bold:"700"},lineHeight:{tight:"1.25",normal:"1.5",relaxed:"1.75"}},spacing:{xs:"0.25rem",sm:"0.5rem",md:"1rem",lg:"1.5rem",xl:"2rem","2xl":"3rem","3xl":"4rem","4xl":"6rem"},borderRadius:{none:"0",sm:"0.125rem",md:"0.375rem",lg:"0.5rem",full:"9999px"},shadows:{sm:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",md:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)",lg:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)",xl:"0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)","2xl":"0 25px 50px -12px rgba(0, 0, 0, 0.25)",none:"none"},components:{button:{borderRadius:"0.375rem",padding:"0.5rem 1rem",fontSize:"0.875rem",fontWeight:"500"},input:{borderRadius:"0.375rem",padding:"0.5rem 0.75rem",fontSize:"0.875rem",borderWidth:"1px"},card:{borderRadius:"0.5rem",padding:"1.5rem",shadow:"0 1px 3px 0 rgba(0, 0, 0, 0.1)"}}};function he(e,t){let s={...e};for(let a in t)if(t[a]instanceof Object&&a in e)s[a]=he(e[a],t[a]);else s[a]=t[a];return s}function j(e){return he(oe,e)}var Y=oe;function kp(){return Y}function Uo(e){let t=[];if(e.colors)Object.entries(e.colors).forEach(([s,a])=>{if(a)t.push(`--color-${s}: ${a};`)});if(e.typography?.fontFamily)Object.entries(e.typography.fontFamily).forEach(([s,a])=>{if(a)t.push(`--font-${s}: ${a};`)});if(e.typography?.fontSize)Object.entries(e.typography.fontSize).forEach(([s,a])=>{if(a)t.push(`--text-${s}: ${a};`)});if(e.typography?.fontWeight)Object.entries(e.typography.fontWeight).forEach(([s,a])=>{if(a)t.push(`--font-weight-${s}: ${a};`)});if(e.typography?.lineHeight)Object.entries(e.typography.lineHeight).forEach(([s,a])=>{if(a)t.push(`--leading-${s}: ${a};`)});if(e.spacing)Object.entries(e.spacing).forEach(([s,a])=>{if(a)t.push(`--spacing-${s}: ${a};`)});if(e.borderRadius)Object.entries(e.borderRadius).forEach(([s,a])=>{if(a)t.push(`--radius-${s}: ${a};`)});if(e.shadows)Object.entries(e.shadows).forEach(([s,a])=>{if(a)t.push(`--shadow-${s}: ${a};`)});if(e.components?.button)Object.entries(e.components.button).forEach(([s,a])=>{if(a)t.push(`--button-${s.replace(/([A-Z])/g,"-$1").toLowerCase()}: ${a};`)});if(e.components?.input)Object.entries(e.components.input).forEach(([s,a])=>{if(a)t.push(`--input-${s.replace(/([A-Z])/g,"-$1").toLowerCase()}: ${a};`)});if(e.components?.card)Object.entries(e.components.card).forEach(([s,a])=>{if(a)t.push(`--card-${s.replace(/([A-Z])/g,"-$1").toLowerCase()}: ${a};`)});return`:root {
|
|
16
|
+
`,o=document.createElement("style");o.textContent=s,document.head.appendChild(o)}function ja(e,t,s={}){if(typeof e.animate!=="function")return console.warn("Web Animations API not supported"),null;let{duration:o=1000,easing:a="ease",delay:i=0,iterations:r=1,direction:n="normal",fill:c="both"}=s;return e.animate([...t],{duration:o,easing:a,delay:i,iterations:r,direction:n,fill:c})}var Ha={fadeIn:[{offset:0,opacity:0},{offset:1,opacity:1}],fadeOut:[{offset:0,opacity:1},{offset:1,opacity:0}],slideInUp:[{offset:0,transform:"translateY(100%)",opacity:0},{offset:1,transform:"translateY(0)",opacity:1}],slideInDown:[{offset:0,transform:"translateY(-100%)",opacity:0},{offset:1,transform:"translateY(0)",opacity:1}],slideInLeft:[{offset:0,transform:"translateX(-100%)",opacity:0},{offset:1,transform:"translateX(0)",opacity:1}],slideInRight:[{offset:0,transform:"translateX(100%)",opacity:0},{offset:1,transform:"translateX(0)",opacity:1}],slideOutUp:[{offset:0,transform:"translateY(0)",opacity:1},{offset:1,transform:"translateY(-100%)",opacity:0}],slideOutDown:[{offset:0,transform:"translateY(0)",opacity:1},{offset:1,transform:"translateY(100%)",opacity:0}],slideOutLeft:[{offset:0,transform:"translateX(0)",opacity:1},{offset:1,transform:"translateX(-100%)",opacity:0}],slideOutRight:[{offset:0,transform:"translateX(0)",opacity:1},{offset:1,transform:"translateX(100%)",opacity:0}],zoomIn:[{offset:0,transform:"scale(0)",opacity:0},{offset:0.5,opacity:1},{offset:1,transform:"scale(1)"}],zoomOut:[{offset:0,transform:"scale(1)",opacity:1},{offset:0.5,opacity:1},{offset:1,transform:"scale(0)",opacity:0}],rotate:[{offset:0,transform:"rotate(0deg)"},{offset:1,transform:"rotate(360deg)"}],bounce:[{offset:0,transform:"translateY(0)"},{offset:0.2,transform:"translateY(0)"},{offset:0.4,transform:"translateY(-30px)"},{offset:0.43,transform:"translateY(-30px)"},{offset:0.53,transform:"translateY(0)"},{offset:0.7,transform:"translateY(-15px)"},{offset:0.8,transform:"translateY(0)"},{offset:0.9,transform:"translateY(-4px)"},{offset:1,transform:"translateY(0)"}],pulse:[{offset:0,transform:"scale(1)"},{offset:0.5,transform:"scale(1.05)"},{offset:1,transform:"scale(1)"}],shake:[{offset:0,transform:"translateX(0)"},{offset:0.1,transform:"translateX(-10px)"},{offset:0.2,transform:"translateX(10px)"},{offset:0.3,transform:"translateX(-10px)"},{offset:0.4,transform:"translateX(10px)"},{offset:0.5,transform:"translateX(-10px)"},{offset:0.6,transform:"translateX(10px)"},{offset:0.7,transform:"translateX(-10px)"},{offset:0.8,transform:"translateX(10px)"},{offset:0.9,transform:"translateX(-10px)"},{offset:1,transform:"translateX(0)"}],swing:[{offset:0,transform:"rotate(0deg)"},{offset:0.2,transform:"rotate(15deg)"},{offset:0.4,transform:"rotate(-10deg)"},{offset:0.6,transform:"rotate(5deg)"},{offset:0.8,transform:"rotate(-5deg)"},{offset:1,transform:"rotate(0deg)"}],flip:[{offset:0,transform:"perspective(400px) rotateY(0)",animationTimingFunction:"ease-out"},{offset:0.4,transform:"perspective(400px) translateZ(150px) rotateY(170deg)",animationTimingFunction:"ease-out"},{offset:0.5,transform:"perspective(400px) translateZ(150px) rotateY(190deg)",animationTimingFunction:"ease-in"},{offset:0.8,transform:"perspective(400px) rotateY(360deg)",animationTimingFunction:"ease-in"},{offset:1,transform:"perspective(400px)",animationTimingFunction:"ease-in"}],rubberBand:[{offset:0,transform:"scale(1)"},{offset:0.3,transform:"scaleX(1.25) scaleY(0.75)"},{offset:0.4,transform:"scaleX(0.75) scaleY(1.25)"},{offset:0.5,transform:"scaleX(1.15) scaleY(0.85)"},{offset:0.65,transform:"scaleX(0.95) scaleY(1.05)"},{offset:0.75,transform:"scaleX(1.05) scaleY(0.95)"},{offset:1,transform:"scale(1)"}],heartbeat:[{offset:0,transform:"scale(1)"},{offset:0.14,transform:"scale(1.3)"},{offset:0.28,transform:"scale(1)"},{offset:0.42,transform:"scale(1.3)"},{offset:0.7,transform:"scale(1)"}]};function _d(e,t,s={}){return ja(e,Ha[t],s)}import{createHighlighter as Wa}from"ts-syntax-highlighter";var se=null;async function Va(){if(!se)se=await Wa({theme:"github-light"});return se}async function Gd(e,t={}){let{theme:s="auto",language:o="typescript",lineNumbers:a=!1,wrapLines:i=!0}=t,r=await Va(),n=s==="auto"?globalThis.matchMedia?.("(prefers-color-scheme: dark)").matches?"github-dark":"github-light":s==="dark"?"github-dark":"github-light",c=await r.highlight(e,o);return{html:typeof c==="string"?c:String(c),language:o,theme:n}}function Ud(e){if(e.includes("<!DOCTYPE")||e.includes("<html"))return"html";if(e.includes("<?php"))return"php";if(e.includes("import")&&e.includes("from"))return"typescript";if(e.includes("function")||e.includes("const"))return"javascript";if(e.includes("{")&&e.includes("}"))return"json";if(e.includes("$")&&e.includes("|"))return"bash";if(e.includes("#")&&e.includes("##"))return"markdown";return"typescript"}function Yd(e,t){return`<div class="${t?`rounded-md overflow-auto text-sm leading-relaxed font-mono ${t}`:"rounded-md overflow-auto text-sm leading-relaxed font-mono"}">${e}</div>`}var L=null,_a=(e)=>{return e===1?0:1};function G(e,t){return t.split(".").reduce((s,o)=>s?.[o],e)}function oe(e,t={}){return e.replace(/\{(\w+)\}/g,(s,o)=>{return t[o]!==void 0?String(t[o]):s})}function Xd(e){let{locale:t,fallbackLocale:s="en",messages:o,pluralRules:a={},dateTimeFormats:i={},numberFormats:r={},missing:n,warnMissing:c=!0}=e;function d(x,m={}){let C=G(o[t],x);if(C===void 0&&s)C=G(o[s],x);if(C===void 0){if(n){let N=n(t,x);if(N)return oe(N,m)}if(c&&typeof console<"u")console.warn(`[i18n] Missing translation for key "${x}" in locale "${t}"`);return x}if(typeof C==="string")return oe(C,m);return String(C)}function f(x,m,C={}){let N=d(x,{...C,count:m});if(N.includes("|")){let z=N.split("|").map((Z)=>Z.trim()),J=(a[t]||_a)(m,t),X=z[J]||z[z.length-1];return oe(X,{...C,count:m})}return N}function p(x,m="default"){let C=typeof x==="number"?new Date(x):x,N=i[m]||i.default||{};return new Intl.DateTimeFormat(t,N).format(C)}function g(x,m="default"){let C=r[m]||r.default||{};return new Intl.NumberFormat(t,C).format(x)}function h(x){if(G(o[t],x)!==void 0)return!0;if(s)return G(o[s],x)!==void 0;return!1}function w(x){if(!o[x]){console.warn(`[i18n] Locale "${x}" not found. Available locales: ${Object.keys(o).join(", ")}`);return}t=x}function v(x,m){if(!o[x])o[x]={};o[x]={...o[x],...m}}function k(x){delete o[x]}return{get locale(){return t},get availableLocales(){return Object.keys(o)},setLocale:w,t:d,tc:f,d:p,n:g,te:h,addMessages:v,removeLocale:k}}function Zd(e){L=e}function Qd(){return L}function ep(e,t){if(!L)return console.warn("[i18n] No global i18n instance set. Call setI18n() first."),e;return L.t(e,t)}function tp(e,t,s){if(!L)return console.warn("[i18n] No global i18n instance set. Call setI18n() first."),e;return L.tc(e,t,s)}function sp(e,t){if(!L)return console.warn("[i18n] No global i18n instance set. Call setI18n() first."),String(e);return L.d(e,t)}function op(e,t){if(!L)return console.warn("[i18n] No global i18n instance set. Call setI18n() first."),String(e);return L.n(e,t)}var ap={en:(e)=>e===1?0:1,de:(e)=>e===1?0:1,nl:(e)=>e===1?0:1,sv:(e)=>e===1?0:1,fr:(e)=>e===0||e===1?0:1,pt_BR:(e)=>e===0||e===1?0:1,ru:(e)=>{if(e%10===1&&e%100!==11)return 0;if(e%10>=2&&e%10<=4&&(e%100<10||e%100>=20))return 1;return 2},pl:(e)=>{if(e===1)return 0;if(e%10>=2&&e%10<=4&&(e%100<10||e%100>=20))return 1;return 2},cs:(e)=>{if(e===1)return 0;if(e>=2&&e<=4)return 1;return 2},ar:(e)=>{if(e===0)return 0;if(e===1)return 1;if(e===2)return 2;if(e%100>=3&&e%100<=10)return 3;if(e%100>=11)return 4;return 5},ja:()=>0,ko:()=>0,zh:()=>0,th:()=>0,vi:()=>0},ip={short:{year:"numeric",month:"numeric",day:"numeric"},long:{year:"numeric",month:"long",day:"numeric"},full:{weekday:"long",year:"numeric",month:"long",day:"numeric"},time:{hour:"numeric",minute:"numeric"},datetime:{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric"}},rp={decimal:{style:"decimal",minimumFractionDigits:2,maximumFractionDigits:2},currency:{style:"currency",currency:"USD"},percent:{style:"percent",minimumFractionDigits:0,maximumFractionDigits:2},compact:{notation:"compact"}};function np(e){let t=["ar","he","fa","ur","yi"],s=e.split("-")[0].toLowerCase();return t.includes(s)}async function lp(e,t){try{return await t()}catch(s){return console.error(`[i18n] Failed to load messages for locale "${e}":`,s),{}}}var cp={en:{common:{loading:"Loading...",error:"Error",retry:"Retry",cancel:"Cancel",confirm:"Confirm",close:"Close",save:"Save",delete:"Delete",edit:"Edit",search:"Search",clear:"Clear",submit:"Submit",reset:"Reset"},form:{required:"This field is required",invalid:"Invalid value",tooShort:"Value is too short (minimum {min} characters)",tooLong:"Value is too long (maximum {max} characters)",invalidEmail:"Invalid email address",invalidUrl:"Invalid URL"},pagination:{previous:"Previous",next:"Next",page:"Page {page}",of:"of {total}"}},es:{common:{loading:"Cargando...",error:"Error",retry:"Reintentar",cancel:"Cancelar",confirm:"Confirmar",close:"Cerrar",save:"Guardar",delete:"Eliminar",edit:"Editar",search:"Buscar",clear:"Limpiar",submit:"Enviar",reset:"Restablecer"},form:{required:"Este campo es obligatorio",invalid:"Valor inv\xE1lido",tooShort:"El valor es demasiado corto (m\xEDnimo {min} caracteres)",tooLong:"El valor es demasiado largo (m\xE1ximo {max} caracteres)",invalidEmail:"Direcci\xF3n de correo electr\xF3nico inv\xE1lida",invalidUrl:"URL inv\xE1lida"},pagination:{previous:"Anterior",next:"Siguiente",page:"P\xE1gina {page}",of:"de {total}"}},fr:{common:{loading:"Chargement...",error:"Erreur",retry:"R\xE9essayer",cancel:"Annuler",confirm:"Confirmer",close:"Fermer",save:"Enregistrer",delete:"Supprimer",edit:"Modifier",search:"Rechercher",clear:"Effacer",submit:"Soumettre",reset:"R\xE9initialiser"},form:{required:"Ce champ est obligatoire",invalid:"Valeur invalide",tooShort:"La valeur est trop courte (minimum {min} caract\xE8res)",tooLong:"La valeur est trop longue (maximum {max} caract\xE8res)",invalidEmail:"Adresse e-mail invalide",invalidUrl:"URL invalide"},pagination:{previous:"Pr\xE9c\xE9dent",next:"Suivant",page:"Page {page}",of:"sur {total}"}}};function pp(e={}){let{max:t=10,ttl:s=0,include:o,exclude:a,hooks:i,debug:r=!1}=e,n=new Map,c=0,d=0;function f(...u){if(r)console.log("[KeepAlive]",...u)}function p(u){if(a){if(a instanceof RegExp&&a.test(u))return!1;if(Array.isArray(a)&&a.includes(u))return!1}if(o){if(o instanceof RegExp&&!o.test(u))return!1;if(Array.isArray(o)&&!o.includes(u))return!1}return!0}function g(u){if(!s||!u.expiresAt)return!1;return Date.now()>u.expiresAt}function h(u){let b=n.get(u);if(b)b.lastAccessedAt=Date.now(),b.accessCount++,b.instance.lastAccessedAt=b.lastAccessedAt,n.delete(u),n.set(u,b),f(`Touched: ${u} (access count: ${b.accessCount})`)}function w(){if(n.size===0)return!1;let u=n.keys().next().value;if(!u)return!1;let b=n.get(u);if(b){f(`Evicting LRU: ${u}`);let y=b.instance.hooks;if(y?.onDeactivate)y.onDeactivate(b.instance);if(i?.onDeactivate)i.onDeactivate(b.instance);return n.delete(u),!0}return!1}function v(u,b,y){if(!p(b.type))return f(`Type not cacheable: ${b.type}`),b;if(n.size>=t)w();let A=Date.now(),H={instance:{...b,hooks:y||b.hooks,createdAt:b.createdAt||A,lastAccessedAt:A},accessCount:0,createdAt:A,lastAccessedAt:A,expiresAt:s?A+s:void 0};if(n.set(u,H),f(`Cached: ${u} (size: ${n.size}/${t})`),y?.onMount)y.onMount(H.instance);if(i?.onMount)i.onMount(H.instance);return H.instance}function k(u){let b=n.get(u);if(!b)return d++,f(`Miss: ${u}`),null;if(g(b))return f(`Expired: ${u}`),n.delete(u),d++,null;return c++,h(u),f(`Hit: ${u}`),b.instance}function x(u){let b=n.get(u);if(!b)return!1;if(g(b))return n.delete(u),!1;return!0}function m(u){let b=n.get(u);if(!b)return!1;f(`Removing: ${u}`);let y=b.instance.hooks;if(y?.onUnmount)y.onUnmount(b.instance);if(i?.onUnmount)i.onUnmount(b.instance);return n.delete(u)}function C(){f("Clearing cache"),n.forEach((u)=>{let b=u.instance.hooks;if(b?.onUnmount)b.onUnmount(u.instance);if(i?.onUnmount)i.onUnmount(u.instance)}),n.clear(),c=0,d=0}function N(){let u=0,b=Date.now();for(let[y,A]of n.entries())if(g(A))f(`Pruning expired: ${y}`),m(y),u++;while(n.size>t)if(w())u++;else break;if(u>0)f(`Pruned ${u} entries`);return u}function z(u){let b=k(u);if(!b)return null;f(`Activating: ${u}`);let y=b.hooks;if(y?.onActivate)y.onActivate(b);if(i?.onActivate)i.onActivate(b);if(b.state&&y?.onRestore)y.onRestore(b,b.state);return b}function ie(u){let b=n.get(u);if(!b)return!1;f(`Deactivating: ${u}`);let y=b.instance,A=y.hooks;if(A?.onSave)y.state=A.onSave(y);if(A?.onDeactivate)A.onDeactivate(y);if(i?.onDeactivate)i.onDeactivate(y);return!0}function J(){let u=c+d;return{hits:c,misses:d,size:n.size,max:t,hitRate:u>0?c/u:0,keys:Array.from(n.keys())}}function X(){return Array.from(n.keys())}function Z(){return n.size}return{cache:v,get:k,has:x,remove:m,clear:C,prune:N,activate:z,deactivate:ie,getStats:J,keys:X,size:Z}}function up(e){let t=new Map;return{set(s,o){if(t.has(s))t.delete(s);if(t.set(s,o),t.size>e){let a=t.keys().next().value;if(a)t.delete(a)}},get(s){if(!t.has(s))return;let o=t.get(s);return t.delete(s),t.set(s,o),o},has(s){return t.has(s)},delete(s){return t.delete(s)},clear(){t.clear()},get size(){return t.size},keys(){return Array.from(t.keys())},values(){return Array.from(t.values())},forEach(s){t.forEach(s)}}}function fp(){let e=new Map;return{save(t,s){e.set(t,JSON.parse(JSON.stringify(s)))},restore(t){let s=e.get(t);return s?JSON.parse(JSON.stringify(s)):null},has(t){return e.has(t)},remove(t){return e.delete(t)},clear(){e.clear()},keys(){return Array.from(e.keys())},get size(){return e.size}}}function hp(e,t={}){let{maxSize:s=100,reset:o}=t,a=[];return{acquire(){if(a.length>0)return a.pop();return e()},release(i){if(a.length<s){if(o)o(i);a.push(i)}},clear(){a.length=0},get size(){return a.length},get maxSize(){return s}}}var E=new Map;async function U(e,t){let s=t||e.toString();if(E.has(s))return E.get(s);let o=e();E.set(s,o);try{return await o}catch(a){throw E.delete(s),a}}function gp(e,t={}){let{retryAttempts:s=3,retryDelay:o=1000,onLoading:a,onLoaded:i,onError:r}=t,n="idle",c,d,f=async(p=0)=>{try{if(n==="loading"||n==="loaded"){if(c)return c}n="loading",a?.();let g=await U(e);return c=g,n="loaded",i?.(g),g}catch(g){let h=g;if(p<s)return await new Promise((w)=>setTimeout(w,o*(p+1))),f(p+1);throw n="error",d=h,r?.(h),h}};return{get state(){return n},get module(){return c},get error(){return d},load:()=>f(),preload:()=>f()}}function Fa(e,t,s={}){if(!e)return console.warn("lazyLoad: element is null"),()=>{};let{root:o=null,rootMargin:a="0px",threshold:i=0.01,placeholder:r,errorContent:n,onLoading:c,onLoaded:d,onError:f}=s,p=!1,g=null;if(r)if(typeof r==="string")e.innerHTML=r;else e.innerHTML="",e.appendChild(r);return g=new IntersectionObserver(async(w)=>{for(let v of w)if(v.isIntersecting&&!p){p=!0,g?.disconnect();try{c?.();let k=await U(t);if(d?.(k),k&&typeof k.default?.render==="function"){let x=await k.default.render();e.innerHTML=x}}catch(k){let x=k;if(f?.(x),n)if(typeof n==="string")e.innerHTML=n;else e.innerHTML="",e.appendChild(n);else e.innerHTML=`<div style="color: red;">Failed to load component: ${x.message}</div>`}}},{root:o,rootMargin:a,threshold:i}),g.observe(e),()=>{g?.disconnect(),g=null}}function xp(e,t,s={}){let o=[],a=Array.from(e);for(let i of a){let r=typeof t==="function"&&t.length>0?()=>t(i):t,n=Fa(i,r,s);o.push(n)}return()=>{o.forEach((i)=>i())}}function Ka(e){return U(e)}function mp(e){return Promise.all(e.map((t)=>Ka(t)))}function vp(e){if(e)E.delete(e);else E.clear()}function wp(){return{size:E.size,keys:Array.from(E.keys())}}function yp(e){return{async load(t){let s=e[t];if(!s)throw Error(`No route found for path: ${t}`);return U(s,`route:${t}`)},async preload(t){return this.load(t)},async preloadRoutes(t){return Promise.all(t.map((s)=>this.preload(s)))}}}function Ga(e,t,s={}){if(!e)return()=>{};let{root:o=null,rootMargin:a="50px",threshold:i=0.01,placeholder:r,onLoading:n,onLoaded:c,onError:d}=s;if(r&&typeof r==="string")e.src=r;let f=!1,p=null;return p=new IntersectionObserver((h)=>{for(let w of h)if(w.isIntersecting&&!f)f=!0,p?.disconnect(),n?.(),e.src=t,e.addEventListener("load",()=>{c?.(e),e.classList.add("loaded")},{once:!0}),e.addEventListener("error",(v)=>{let k=Error(`Failed to load image: ${t}`);d?.(k),e.classList.add("error")},{once:!0})},{root:o,rootMargin:a,threshold:i}),p.observe(e),()=>{p?.disconnect(),p=null}}function Cp(e=document,t={}){let s=e.querySelectorAll("img[data-lazy-src]"),o=[];return s.forEach((a)=>{let i=a.getAttribute("data-lazy-src");if(i){let r=Ga(a,i,t);o.push(r)}}),()=>{o.forEach((a)=>a())}}var ae={colors:{primary:"#3b82f6",secondary:"#8b5cf6",success:"#10b981",warning:"#f59e0b",danger:"#ef4444",info:"#06b6d4",gray:"#6b7280",white:"#ffffff",black:"#000000"},typography:{fontFamily:{sans:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',serif:'Georgia, Cambria, "Times New Roman", Times, serif',mono:'Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},fontSize:{xs:"0.75rem",sm:"0.875rem",base:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem"},fontWeight:{light:"300",normal:"400",medium:"500",semibold:"600",bold:"700"},lineHeight:{tight:"1.25",normal:"1.5",relaxed:"1.75"}},spacing:{xs:"0.25rem",sm:"0.5rem",md:"1rem",lg:"1.5rem",xl:"2rem","2xl":"3rem","3xl":"4rem","4xl":"6rem"},borderRadius:{none:"0",sm:"0.125rem",md:"0.375rem",lg:"0.5rem",full:"9999px"},shadows:{sm:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",md:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)",lg:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)",xl:"0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)","2xl":"0 25px 50px -12px rgba(0, 0, 0, 0.25)",none:"none"},components:{button:{borderRadius:"0.375rem",padding:"0.5rem 1rem",fontSize:"0.875rem",fontWeight:"500"},input:{borderRadius:"0.375rem",padding:"0.5rem 0.75rem",fontSize:"0.875rem",borderWidth:"1px"},card:{borderRadius:"0.5rem",padding:"1.5rem",shadow:"0 1px 3px 0 rgba(0, 0, 0, 0.1)"}}};function he(e,t){let s={...e};for(let o in t)if(t[o]instanceof Object&&o in e)s[o]=he(e[o],t[o]);else s[o]=t[o];return s}function j(e){return he(ae,e)}var Y=ae;function kp(){return Y}function Ua(e){let t=[];if(e.colors)Object.entries(e.colors).forEach(([s,o])=>{if(o)t.push(`--color-${s}: ${o};`)});if(e.typography?.fontFamily)Object.entries(e.typography.fontFamily).forEach(([s,o])=>{if(o)t.push(`--font-${s}: ${o};`)});if(e.typography?.fontSize)Object.entries(e.typography.fontSize).forEach(([s,o])=>{if(o)t.push(`--text-${s}: ${o};`)});if(e.typography?.fontWeight)Object.entries(e.typography.fontWeight).forEach(([s,o])=>{if(o)t.push(`--font-weight-${s}: ${o};`)});if(e.typography?.lineHeight)Object.entries(e.typography.lineHeight).forEach(([s,o])=>{if(o)t.push(`--leading-${s}: ${o};`)});if(e.spacing)Object.entries(e.spacing).forEach(([s,o])=>{if(o)t.push(`--spacing-${s}: ${o};`)});if(e.borderRadius)Object.entries(e.borderRadius).forEach(([s,o])=>{if(o)t.push(`--radius-${s}: ${o};`)});if(e.shadows)Object.entries(e.shadows).forEach(([s,o])=>{if(o)t.push(`--shadow-${s}: ${o};`)});if(e.components?.button)Object.entries(e.components.button).forEach(([s,o])=>{if(o)t.push(`--button-${s.replace(/([A-Z])/g,"-$1").toLowerCase()}: ${o};`)});if(e.components?.input)Object.entries(e.components.input).forEach(([s,o])=>{if(o)t.push(`--input-${s.replace(/([A-Z])/g,"-$1").toLowerCase()}: ${o};`)});if(e.components?.card)Object.entries(e.components.card).forEach(([s,o])=>{if(o)t.push(`--card-${s.replace(/([A-Z])/g,"-$1").toLowerCase()}: ${o};`)});return`:root {
|
|
17
17
|
${t.join(`
|
|
18
18
|
`)}
|
|
19
|
-
}`}function Sp(e,t){if(Y=e,typeof document>"u")return;let s=t||document.documentElement;if(e.colors)Object.entries(e.colors).forEach(([a
|
|
19
|
+
}`}function Sp(e,t){if(Y=e,typeof document>"u")return;let s=t||document.documentElement;if(e.colors)Object.entries(e.colors).forEach(([o,a])=>{if(a)s.style.setProperty(`--color-${o}`,a)});if(e.typography?.fontFamily)Object.entries(e.typography.fontFamily).forEach(([o,a])=>{if(a)s.style.setProperty(`--font-${o}`,a)});if(e.typography?.fontSize)Object.entries(e.typography.fontSize).forEach(([o,a])=>{if(a)s.style.setProperty(`--text-${o}`,a)});if(e.typography?.fontWeight)Object.entries(e.typography.fontWeight).forEach(([o,a])=>{if(a)s.style.setProperty(`--font-weight-${o}`,a)});if(e.typography?.lineHeight)Object.entries(e.typography.lineHeight).forEach(([o,a])=>{if(a)s.style.setProperty(`--leading-${o}`,a)});if(e.spacing)Object.entries(e.spacing).forEach(([o,a])=>{if(a)s.style.setProperty(`--spacing-${o}`,a)});if(e.borderRadius)Object.entries(e.borderRadius).forEach(([o,a])=>{if(a)s.style.setProperty(`--radius-${o}`,a)});if(e.shadows)Object.entries(e.shadows).forEach(([o,a])=>{if(a)s.style.setProperty(`--shadow-${o}`,a)});if(e.components?.button)Object.entries(e.components.button).forEach(([o,a])=>{if(a)s.style.setProperty(`--button-${o.replace(/([A-Z])/g,"-$1").toLowerCase()}`,a)});if(e.components?.input)Object.entries(e.components.input).forEach(([o,a])=>{if(a)s.style.setProperty(`--input-${o.replace(/([A-Z])/g,"-$1").toLowerCase()}`,a)});if(e.components?.card)Object.entries(e.components.card).forEach(([o,a])=>{if(a)s.style.setProperty(`--card-${o.replace(/([A-Z])/g,"-$1").toLowerCase()}`,a)})}function Ip(){return Y}function Tp(e){let t=e.split("."),s=Y;for(let o of t)if(s&&typeof s==="object"&&o in s)s=s[o];else return;return s}var Np={default:ae,purple:j({colors:{primary:"#8b5cf6",secondary:"#a78bfa"}}),green:j({colors:{primary:"#10b981",secondary:"#34d399"}}),orange:j({colors:{primary:"#f97316",secondary:"#fb923c"}}),dark:j({colors:{primary:"#60a5fa",secondary:"#a78bfa",gray:"#9ca3af",white:"#1f2937",black:"#f9fafb"}}),minimal:j({borderRadius:{none:"0",sm:"0",md:"0.125rem",lg:"0.25rem",full:"0.25rem"},shadows:{sm:"none",md:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",lg:"0 1px 3px 0 rgba(0, 0, 0, 0.1)",xl:"0 4px 6px -1px rgba(0, 0, 0, 0.1)","2xl":"0 10px 15px -3px rgba(0, 0, 0, 0.1)",none:"none"}})};function Ap(e){return Ua(e)}export{ne as wrapErrorHandler,ir as warnProp,Ve as warn,Ba as waitForAnimation,ur as validateVariant,Sn as validateTextInputProps,fr as validateSize,An as validateSearchInputProps,Fe as validateProps,Tn as validatePasswordInputProps,Nn as validateNumberInputProps,fn as validateFormProps,In as validateEmailInputProps,dr as validateButtonProps,Pd as validateAriaRelationships,Ip as useTheme,ai as useSEO,wi as usePrefersReducedMotion,R as useMediaQuery,hi as useLocalStorage,pi as useKeyboard,xi as useIsMobile,mi as useIsDesktop,vi as useIsDarkMode,ci as useFocusTrap,si as useDarkMode,Qa as useCopyCode,ni as useClickOutside,gi as useBreakpoint,ki as themeVariableNames,Ua as themeToCSSProperties,Np as themePresets,Xt as textInputPropSchema,tp as tc,ep as t,$i as stxThemePreset,Tc as storage,qd as staggerAnimation,Zl as spaceWashGradient,wo as spaceTintVars,tc as spaceTintPayload,ec as spaceIndexOf,le as sidebarThemes,we as setTitle,S as setMeta,ye as setLink,Zd as setI18n,Xi as setErrorHandler,Bd as sequenceAnimations,vo as resolveSpaceTint,Ul as resolveSidebarTheme,Yl as resolveIconColor,Rd as removeAnimation,mp as preloadModules,Ka as preloadModule,Ad as prefersReducedMotion,Dd as prefersHighContrast,ap as pluralRules,Zt as numberInputPropSchema,rp as numberFormats,Ql as normalizeSpaces,yo as normalizeSpace,op as n,Sd as moveFocus,F as macosColors,lp as loadLocaleMessages,ca as linear,U as lazyLoadModule,Cp as lazyLoadImages,Ga as lazyLoadImage,gp as lazyLoadComponent,xp as lazyLoadAll,Fa as lazyLoad,Id as isVisibleToScreenReader,np as isRTL,Gd as highlight,kd as hasFocus,V as handleError,Tp as getThemeValue,kp as getTheme,ve as getSystemTheme,Qd as getI18n,Va as getHighlighter,ee as getFocusableElements,Q as getEffectiveTheme,Ld as getColorSchemePreference,wp as getCacheStats,Ap as generateThemeCSS,ii as generateSEOTags,pe as generateId,Rt as formPropSchema,tr as errorBoundary,$a as easeOutSine,wa as easeOutQuint,xa as easeOutQuart,pa as easeOutQuad,Ia as easeOutExpo,za as easeOutElastic,ha as easeOutCubic,Aa as easeOutCirc,te as easeOutBounce,Oa as easeOutBack,Ca as easeInSine,va as easeInQuint,ga as easeInQuart,da as easeInQuad,ka as easeInOutSine,ya as easeInOutQuint,ma as easeInOutQuart,ua as easeInOutQuad,Ta as easeInOutExpo,Pa as easeInOutElastic,ba as easeInOutCubic,Da as easeInOutCirc,Ra as easeInOutBounce,Ma as easeInOutBack,Sa as easeInExpo,La as easeInElastic,fa as easeInCubic,Na as easeInCirc,ue as easeInBounce,Ea as easeInBack,Qi as devAssert,Ud as detectLanguage,ce as deriveSpaceTint,ae as defaultTheme,ip as dateTimeFormats,sp as d,qa as cssAnimation,j as createTheme,Nc as createStorage,fp as createStateManager,zd as createSkipLink,Nd as createScreenReaderText,pr as createSafeClickHandler,Cd as createRovingTabindex,yp as createRouteLoader,D as createPropValidator,up as createLRUCache,Wd as createKeyframes,ja as createKeyframeAnimation,pp as createKeepAlive,Xd as createI18n,yd as createFocusTrap,er as createDebugger,hp as createComponentPool,md as createAriaLabel,vd as createAriaDescription,ei as copyToClipboard,cp as componentMessages,vp as clearModuleCache,Zi as clearErrorHandler,Ue as buttonPropSchema,ar as assertProp,We as assert,Td as aria,Sp as applyTheme,Yd as applyHeadwindClasses,fe as applyAnimation,wd as announceToScreenReader,Hd as animateWithClass,_d as animate,na as VirtualTable,ia as VirtualList,oa as Video,Ee as TwoFactorChallenge,ta as Transition,Qo as Tooltip,Xo as Textarea,Yt as TextInput,Yo as Teleport,Go as Tabs,Vo as TableRow,Ho as TableHeader,Bo as TableHead,Ro as TableCell,Oo as TableBody,Po as Table,Fo as TabPanel,re as THEMED_FAMILIES,Lo as Switch,ks as SubscriptionCheckout,K as StorageManager,Ao as StepperStep,To as Stepper,So as Spinner,$o as Skeleton,ze as Signup,lo as SidebarSpaces,po as SidebarSpaceSwitcher,ro as SidebarSpace,ao as SidebarSection,so as SidebarPinned,eo as SidebarItem,Zs as SidebarHeader,Js as SidebarFooter,Us as Sidebar,Ks as Select,Gt as SearchInput,Ci as SHADE_VAR_PREFIX,_s as RadioGroupOption,Ws as RadioGroupLabel,js as RadioGroupDescription,qs as RadioGroup,Ms as Radio,l as PropTypes,Es as Progress,zs as Portal,Ds as PopoverPanel,Ns as PopoverButton,Is as Popover,Cs as PaymentMethods,Ft as PasswordInput,gs as Pagination,Vt as NumberInput,hs as Notification,us as Navigator,De as Login,ds as ListboxOptions,ls as ListboxOption,rs as ListboxLabel,as as ListboxButton,ss as Listbox,Ha as KeyframeAnimations,ui as KeyboardShortcuts,$d as KeyboardKeys,me as Installation,Bt as Image,xe as Hero,Mt as Form,ge as Footer,M as ErrorTypes,Ht as EmailInput,Od as Easing,Et as DropdownItems,zt as DropdownItem,Dt as DropdownButton,Nt as Dropdown,It as Drawer,kt as DialogTitle,Ct as DialogPanel,wt as DialogDescription,mt as DialogBackdrop,gt as Dialog,ws as DefaultPaymentMethod,T as ComponentError,ht as CommandPaletteItem,ut as CommandPalette,dt as ComboboxOptions,lt as ComboboxOption,rt as ComboboxInput,at as ComboboxButton,st as Combobox,be as CodeBlock,ms as Checkout,et as Checkbox,Ze as Card,Je as Calendar,Ge as Button,q as Breakpoints,je as Breadcrumb,qe as Badge,Me as Avatar,Ne as Audio,jd as AnimationClasses,Ie as AccordionItem,ke as Accordion};
|
|
@@ -52,6 +52,7 @@ export declare interface SidebarActionData {
|
|
|
52
52
|
}
|
|
53
53
|
export declare interface SidebarHeaderProps {
|
|
54
54
|
theme?: SidebarThemeChoice
|
|
55
|
+
windowControls?: 'draw' | 'native' | 'none'
|
|
55
56
|
showWindowControls?: boolean
|
|
56
57
|
actions?: SidebarActionData[]
|
|
57
58
|
showSearch?: boolean
|
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.215",
|
|
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.14",
|
|
67
|
-
"@stacksjs/stx": "0.2.
|
|
68
|
-
"bun-plugin-stx": "0.2.
|
|
67
|
+
"@stacksjs/stx": "0.2.215",
|
|
68
|
+
"bun-plugin-stx": "0.2.215",
|
|
69
69
|
"ts-syntax-highlighter": "^0.2.1"
|
|
70
70
|
},
|
|
71
71
|
"devDependencies": {
|
|
@@ -37,13 +37,35 @@ export const isArc = theme === 'arc'
|
|
|
37
37
|
// default there. Arc's sidebar can go either way — a browser window puts the
|
|
38
38
|
// lights and the back/forward controls in the sidebar, while an app that only
|
|
39
39
|
// borrows the look wants a bare strip — so on this theme both are opt-in.
|
|
40
|
-
|
|
40
|
+
//
|
|
41
|
+
// `windowControls` says WHO DRAWS THEM, which `showWindowControls` could not
|
|
42
|
+
// express:
|
|
43
|
+
//
|
|
44
|
+
// 'draw' HTML replicas. Right for a web page imitating macOS.
|
|
45
|
+
// 'native' the OS already drew them; reserve the room and keep out of it.
|
|
46
|
+
// 'none' no controls, no room.
|
|
47
|
+
//
|
|
48
|
+
// The distinction is not cosmetic. Inside a real window with the titlebar
|
|
49
|
+
// hidden the platform still draws its own controls, so drawing replicas as
|
|
50
|
+
// well puts SIX circles in the corner — three live ones from the window
|
|
51
|
+
// server and three that only look like buttons.
|
|
52
|
+
//
|
|
53
|
+
// Measured from a Craft window at 2x: 12pt discs, 20pt apart, the first 10pt
|
|
54
|
+
// from the window's left edge, the block ending 62pt in, centred 14pt below
|
|
55
|
+
// the top. `--stx-native-controls-width` is the room to leave AFTER this
|
|
56
|
+
// header's own left padding, so an app whose platform places them differently
|
|
57
|
+
// can retune it without forking the component.
|
|
58
|
+
const controlsProp = $props.windowControls || ''
|
|
59
|
+
export const windowControls = controlsProp
|
|
60
|
+
|| (($props.showWindowControls ?? !isArc) ? 'draw' : 'none')
|
|
61
|
+
export const showWindowControls = windowControls === 'draw'
|
|
62
|
+
export const reserveWindowControls = windowControls === 'native'
|
|
41
63
|
export const showNavigation = $props.showNavigation ?? false
|
|
42
64
|
|
|
43
65
|
// A titled Arc header with window controls puts the two on one row, the way
|
|
44
66
|
// Arc and Dia do. A logo needs the wider second row to sit in, so its presence
|
|
45
67
|
// keeps the old two-row shape.
|
|
46
|
-
export const titleInChrome = isArc && showWindowControls && !!title && !logo
|
|
68
|
+
export const titleInChrome = isArc && (showWindowControls || reserveWindowControls) && !!title && !logo
|
|
47
69
|
|
|
48
70
|
// Back / forward / reload, as in Arc's URL strip. Flat and ghosted, not glass.
|
|
49
71
|
export const navButtons = [
|
|
@@ -138,9 +160,24 @@ function onWindowControl(action) {
|
|
|
138
160
|
</div>
|
|
139
161
|
@endif
|
|
140
162
|
@elseif(isArc)
|
|
141
|
-
|
|
142
|
-
|
|
163
|
+
<!--
|
|
164
|
+
The top padding is 4px when the platform owns the controls, not 12. The
|
|
165
|
+
header has to line its title up with buttons it does not draw: those sit
|
|
166
|
+
14pt below the window's top, and a 20pt-tall title centres there only if
|
|
167
|
+
the row starts at 4. At 12 it lands 8pt low, which reads as the name having
|
|
168
|
+
slipped off the row rather than sharing it.
|
|
169
|
+
-->
|
|
170
|
+
<div class="flex flex-col gap-[8px] px-[10px] pb-[8px] {{ reserveWindowControls ? 'pt-[4px]' : 'pt-[12px]' }}">
|
|
171
|
+
@if(showWindowControls || reserveWindowControls || showNavigation)
|
|
143
172
|
<div class="flex items-center gap-[12px] px-[2px] [-webkit-app-region:drag]">
|
|
173
|
+
@if(reserveWindowControls)
|
|
174
|
+
<!--
|
|
175
|
+
Empty on purpose. The window server has already drawn three live
|
|
176
|
+
buttons here; anything rendered into this space would sit under
|
|
177
|
+
them, and a replica beside them would make six.
|
|
178
|
+
-->
|
|
179
|
+
<span class="shrink-0" style="width: var(--stx-native-controls-width, 52px)" aria-hidden="true"></span>
|
|
180
|
+
@endif
|
|
144
181
|
@if(showWindowControls)
|
|
145
182
|
<div class="flex items-center gap-[7px] [-webkit-app-region:no-drag]">
|
|
146
183
|
<button type="button" class="{{ trafficLightClasses }} bg-[#ff5f57]" aria-label="Close window" @click="onWindowControl('close')"></button>
|
package/src/ui/sidebar/index.ts
CHANGED
|
@@ -115,7 +115,25 @@ export interface SidebarActionData {
|
|
|
115
115
|
|
|
116
116
|
export interface SidebarHeaderProps {
|
|
117
117
|
theme?: SidebarThemeChoice
|
|
118
|
-
/**
|
|
118
|
+
/**
|
|
119
|
+
* Who draws the window controls.
|
|
120
|
+
*
|
|
121
|
+
* - `draw` — HTML replicas, wired to Craft's window API when present. Right
|
|
122
|
+
* for a web page imitating macOS.
|
|
123
|
+
* - `native` — the platform already drew them. Reserve the room and render
|
|
124
|
+
* nothing into it.
|
|
125
|
+
* - `none` — no controls and no room.
|
|
126
|
+
*
|
|
127
|
+
* Inside a real window with the titlebar hidden the platform draws its own
|
|
128
|
+
* controls regardless, so `draw` there puts SIX circles in the corner: three
|
|
129
|
+
* live buttons from the window server and three that only look like them.
|
|
130
|
+
*
|
|
131
|
+
* The reserved width is `--stx-native-controls-width` (default 52px, the
|
|
132
|
+
* room after this header's own left padding), so an app whose platform
|
|
133
|
+
* places them differently can retune it.
|
|
134
|
+
*/
|
|
135
|
+
windowControls?: 'draw' | 'native' | 'none'
|
|
136
|
+
/** @deprecated Use `windowControls`. `true` means `draw`, `false` means `none`. */
|
|
119
137
|
showWindowControls?: boolean
|
|
120
138
|
/** Floating Liquid Glass toolbar buttons on the right. */
|
|
121
139
|
actions?: SidebarActionData[]
|