@openephemeris/mcp-server 3.10.3 → 3.12.0

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.
@@ -6,7 +6,7 @@
6
6
  <title>Chart Wheel Explorer</title>
7
7
 
8
8
 
9
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
9
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
10
10
  /*$vite$:1*/</style>
11
11
  </head>
12
12
  <body>
@@ -19,7 +19,7 @@
19
19
  <div id="controls-panel" hidden></div>
20
20
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
21
21
  </div>
22
- <script type="module">var e=Object.defineProperty,t=(t,n)=>{let r={};for(var i in t)e(r,i,{get:t[i],enumerable:!0});return n||e(r,Symbol.toStringTag,{value:`Module`}),r},n=(e=>typeof require<`u`?require:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof require<`u`?require:e)[t]}):e)(function(e){if(typeof require<`u`)return require.apply(this,arguments);throw Error('Calling `require` for "'+e+"\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.")});(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var r=Object.freeze({status:`aborted`});function i(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var a=Symbol(`zod_brand`),o=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},s=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}},c={};function l(e){return e&&Object.assign(c,e),c}var u=t({BIGINT_FORMAT_RANGES:()=>je,Class:()=>Ze,NUMBER_FORMAT_RANGES:()=>Ae,aborted:()=>ze,allowsEval:()=>be,assert:()=>te,assertEqual:()=>d,assertIs:()=>p,assertNever:()=>ee,assertNotEqual:()=>f,assignProp:()=>ue,base64ToUint8Array:()=>Ge,base64urlToUint8Array:()=>qe,cached:()=>ie,captureStackTrace:()=>ve,cleanEnum:()=>We,cleanRegex:()=>oe,clone:()=>g,cloneDef:()=>fe,createTransparentProxy:()=>Oe,defineLazy:()=>h,esc:()=>ge,escapeRegex:()=>De,extend:()=>Pe,finalizeIssue:()=>b,floatSafeRemainder:()=>se,getElementAtPath:()=>pe,getEnumValues:()=>ne,getLengthableOrigin:()=>He,getParsedType:()=>we,getSizableOrigin:()=>Ve,hexToUint8Array:()=>Ye,isObject:()=>ye,isPlainObject:()=>xe,issue:()=>Ue,joinValues:()=>m,jsonStringifyReplacer:()=>re,merge:()=>Ie,mergeDefs:()=>de,normalizeParams:()=>_,nullish:()=>ae,numKeys:()=>Ce,objectClone:()=>le,omit:()=>Ne,optionalKeys:()=>ke,partial:()=>Le,pick:()=>Me,prefixIssues:()=>y,primitiveTypes:()=>Ee,promiseAllObject:()=>me,propertyKeyTypes:()=>Te,randomString:()=>he,required:()=>Re,safeExtend:()=>Fe,shallowClone:()=>Se,slugify:()=>_e,stringifyPrimitive:()=>v,uint8ArrayToBase64:()=>Ke,uint8ArrayToBase64url:()=>Je,uint8ArrayToHex:()=>Xe,unwrapMessage:()=>Be});function d(e){return e}function f(e){return e}function p(e){}function ee(e){throw Error()}function te(e){}function ne(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function m(e,t=`|`){return e.map(e=>v(e)).join(t)}function re(e,t){return typeof t==`bigint`?t.toString():t}function ie(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function ae(e){return e==null}function oe(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`<!DOCTYPE html>
22
+ <script type="module">var e=Object.defineProperty,t=(t,n)=>{let r={};for(var i in t)e(r,i,{get:t[i],enumerable:!0});return n||e(r,Symbol.toStringTag,{value:`Module`}),r},n=(e=>typeof require<`u`?require:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof require<`u`?require:e)[t]}):e)(function(e){if(typeof require<`u`)return require.apply(this,arguments);throw Error('Calling `require` for "'+e+"\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.")});(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var r=Object.freeze({status:`aborted`});function i(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var a=Symbol(`zod_brand`),o=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},s=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}},c={};function l(e){return e&&Object.assign(c,e),c}var u=t({BIGINT_FORMAT_RANGES:()=>De,Class:()=>Ye,NUMBER_FORMAT_RANGES:()=>Ee,aborted:()=>Fe,allowsEval:()=>ge,assert:()=>h,assertEqual:()=>d,assertIs:()=>p,assertNever:()=>m,assertNotEqual:()=>f,assignProp:()=>oe,base64ToUint8Array:()=>Ue,base64urlToUint8Array:()=>Ge,cached:()=>ee,captureStackTrace:()=>me,cleanEnum:()=>He,cleanRegex:()=>ne,clone:()=>b,cloneDef:()=>ce,createTransparentProxy:()=>we,defineLazy:()=>y,esc:()=>fe,escapeRegex:()=>Ce,extend:()=>Ae,finalizeIssue:()=>Re,floatSafeRemainder:()=>re,getElementAtPath:()=>le,getEnumValues:()=>g,getLengthableOrigin:()=>Be,getParsedType:()=>be,getSizableOrigin:()=>ze,hexToUint8Array:()=>qe,isObject:()=>he,isPlainObject:()=>_e,issue:()=>Ve,joinValues:()=>_,jsonStringifyReplacer:()=>v,merge:()=>Me,mergeDefs:()=>se,normalizeParams:()=>x,nullish:()=>te,numKeys:()=>ye,objectClone:()=>ae,omit:()=>ke,optionalKeys:()=>Te,partial:()=>Ne,pick:()=>Oe,prefixIssues:()=>Ie,primitiveTypes:()=>Se,promiseAllObject:()=>ue,propertyKeyTypes:()=>xe,randomString:()=>de,required:()=>Pe,safeExtend:()=>je,shallowClone:()=>ve,slugify:()=>pe,stringifyPrimitive:()=>S,uint8ArrayToBase64:()=>We,uint8ArrayToBase64url:()=>Ke,uint8ArrayToHex:()=>Je,unwrapMessage:()=>Le});function d(e){return e}function f(e){return e}function p(e){}function m(e){throw Error()}function h(e){}function g(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function _(e,t=`|`){return e.map(e=>S(e)).join(t)}function v(e,t){return typeof t==`bigint`?t.toString():t}function ee(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function te(e){return e==null}function ne(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`<!DOCTYPE html>
23
23
  <html lang="en">
24
24
  <head>
25
25
  <meta charset="UTF-8" />
@@ -27,7 +27,7 @@
27
27
  <title>Chart Wheel Explorer</title>
28
28
 
29
29
 
30
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
30
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
31
31
  /*$vite$:1*/</style>
32
32
  </head>
33
33
  <body>
@@ -40,8 +40,8 @@
40
40
  <div id="controls-panel" hidden></div>
41
41
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
42
42
  </div>
43
- )?e.length-1:e.length;return e.slice(t,n)}function se(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=t.toString(),i=(r.split(`.`)[1]||``).length;if(i===0&&/\d?e-\d?/.test(r)){let e=r.match(/\d?e-(\d?)/);e?.[1]&&(i=Number.parseInt(e[1]))}let a=n>i?n:i;return Number.parseInt(e.toFixed(a).replace(`.`,``))%Number.parseInt(t.toFixed(a).replace(`.`,``))/10**a}var ce=Symbol(`evaluating`);function h(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==ce)return r===void 0&&(r=ce,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function le(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function ue(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function de(...e){let t={};for(let n of e)Object.assign(t,Object.getOwnPropertyDescriptors(n));return Object.defineProperties({},t)}function fe(e){return de(e._zod.def)}function pe(e,t){return t?t.reduce((e,t)=>e?.[t],e):e}function me(e){let t=Object.keys(e),n=t.map(t=>e[t]);return Promise.all(n).then(e=>{let n={};for(let r=0;r<t.length;r++)n[t[r]]=e[r];return n})}function he(e=10){let t=``;for(let n=0;n<e;n++)t+=`abcdefghijklmnopqrstuvwxyz`[Math.floor(Math.random()*26)];return t}function ge(e){return JSON.stringify(e)}function _e(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}var ve=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function ye(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var be=ie(()=>{if(typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function xe(e){if(ye(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(ye(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}function Se(e){return xe(e)?{...e}:Array.isArray(e)?[...e]:e}function Ce(e){let t=0;for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&t++;return t}var we=e=>{let t=typeof e;switch(t){case`undefined`:return`undefined`;case`string`:return`string`;case`number`:return Number.isNaN(e)?`nan`:`number`;case`boolean`:return`boolean`;case`function`:return`function`;case`bigint`:return`bigint`;case`symbol`:return`symbol`;case`object`:return Array.isArray(e)?`array`:e===null?`null`:e.then&&typeof e.then==`function`&&e.catch&&typeof e.catch==`function`?`promise`:typeof Map<`u`&&e instanceof Map?`map`:typeof Set<`u`&&e instanceof Set?`set`:typeof Date<`u`&&e instanceof Date?`date`:typeof File<`u`&&e instanceof File?`file`:`object`;default:throw Error(`Unknown data type: ${t}`)}},Te=new Set([`string`,`number`,`symbol`]),Ee=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function De(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\</body>`)}function g(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function _(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function Oe(e){let t;return new Proxy({},{get(n,r,i){return t??=e(),Reflect.get(t,r,i)},set(n,r,i,a){return t??=e(),Reflect.set(t,r,i,a)},has(n,r){return t??=e(),Reflect.has(t,r)},deleteProperty(n,r){return t??=e(),Reflect.deleteProperty(t,r)},ownKeys(n){return t??=e(),Reflect.ownKeys(t)},getOwnPropertyDescriptor(n,r){return t??=e(),Reflect.getOwnPropertyDescriptor(t,r)},defineProperty(n,r,i){return t??=e(),Reflect.defineProperty(t,r,i)}})}function v(e){return typeof e==`bigint`?e.toString()+`n`:typeof e==`string`?`"${e}"`:`${e}`}function ke(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}var Ae={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},je={int64:[BigInt(`-9223372036854775808`),BigInt(`9223372036854775807`)],uint64:[BigInt(0),BigInt(`18446744073709551615`)]};function Me(e,t){let n=e._zod.def;return g(e,de(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return ue(this,`shape`,e),e},checks:[]}))}function Ne(e,t){let n=e._zod.def;return g(e,de(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return ue(this,`shape`,r),r},checks:[]}))}function Pe(e,t){if(!xe(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0)throw Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");return g(e,de(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return ue(this,`shape`,n),n},checks:[]}))}function Fe(e,t){if(!xe(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return g(e,{...e._zod.def,get shape(){let n={...e._zod.def.shape,...t};return ue(this,`shape`,n),n},checks:e._zod.def.checks})}function Ie(e,t){return g(e,de(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return ue(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:[]}))}function Le(e,t,n){return g(t,de(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return ue(this,`shape`,i),i},checks:[]}))}function Re(e,t,n){return g(t,de(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return ue(this,`shape`,i),i},checks:[]}))}function ze(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function y(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function Be(e){return typeof e==`string`?e:e?.message}function b(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=Be(e.inst?._zod.def?.error?.(e))??Be(t?.error?.(e))??Be(n.customError?.(e))??Be(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function Ve(e){return e instanceof Set?`set`:e instanceof Map?`map`:e instanceof File?`file`:`unknown`}function He(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function Ue(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}function We(e){return Object.entries(e).filter(([e,t])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}function Ge(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}function Ke(e){let t=``;for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}function qe(e){let t=e.replace(/-/g,`+`).replace(/_/g,`/`);return Ge(t+`=`.repeat((4-t.length%4)%4))}function Je(e){return Ke(e).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=/g,``)}function Ye(e){let t=e.replace(/^0x/,``);if(t.length%2!=0)throw Error(`Invalid hex string length`);let n=new Uint8Array(t.length/2);for(let e=0;e<t.length;e+=2)n[e/2]=Number.parseInt(t.slice(e,e+2),16);return n}function Xe(e){return Array.from(e).map(e=>e.toString(16).padStart(2,`0`)).join(``)}var Ze=class{constructor(...e){}},Qe=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,re,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},$e=i(`$ZodError`,Qe),x=i(`$ZodError`,Qe,{Parent:Error});function et(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function tt(e,t=e=>e.message){let n={_errors:[]},r=e=>{for(let i of e.issues)if(i.code===`invalid_union`&&i.errors.length)i.errors.map(e=>r({issues:e}));else if(i.code===`invalid_key`)r({issues:i.issues});else if(i.code===`invalid_element`)r({issues:i.issues});else if(i.path.length===0)n._errors.push(t(i));else{let e=n,r=0;for(;r<i.path.length;){let n=i.path[r];r===i.path.length-1?(e[n]=e[n]||{_errors:[]},e[n]._errors.push(t(i))):e[n]=e[n]||{_errors:[]},e=e[n],r++}}};return r(e),n}function nt(e,t=e=>e.message){let n={errors:[]},r=(e,i=[])=>{var a,o;for(let s of e.issues)if(s.code===`invalid_union`&&s.errors.length)s.errors.map(e=>r({issues:e},s.path));else if(s.code===`invalid_key`)r({issues:s.issues},s.path);else if(s.code===`invalid_element`)r({issues:s.issues},s.path);else{let e=[...i,...s.path];if(e.length===0){n.errors.push(t(s));continue}let r=n,c=0;for(;c<e.length;){let n=e[c],i=c===e.length-1;typeof n==`string`?(r.properties??={},(a=r.properties)[n]??(a[n]={errors:[]}),r=r.properties[n]):(r.items??=[],(o=r.items)[n]??(o[n]={errors:[]}),r=r.items[n]),i&&r.errors.push(t(s)),c++}}};return r(e),n}function rt(e){let t=[],n=e.map(e=>typeof e==`object`?e.key:e);for(let e of n)typeof e==`number`?t.push(`[${e}]`):typeof e==`symbol`?t.push(`[${JSON.stringify(String(e))}]`):/[^\w$]/.test(e)?t.push(`[${JSON.stringify(e)}]`):(t.length&&t.push(`.`),t.push(e));return t.join(``)}function it(e){let t=[],n=[...e.issues].sort((e,t)=>(e.path??[]).length-(t.path??[]).length);for(let e of n)t.push(`✖ ${e.message}`),e.path?.length&&t.push(` → at ${rt(e.path)}`);return t.join(`
44
- `)}var at=e=>(t,n,r,i)=>{let a=r?Object.assign(r,{async:!1}):{async:!1},s=t._zod.run({value:n,issues:[]},a);if(s instanceof Promise)throw new o;if(s.issues.length){let t=new(i?.Err??e)(s.issues.map(e=>b(e,a,l())));throw ve(t,i?.callee),t}return s.value},ot=at(x),st=e=>async(t,n,r,i)=>{let a=r?Object.assign(r,{async:!0}):{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>b(e,a,l())));throw ve(t,i?.callee),t}return o.value},ct=st(x),lt=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new o;return a.issues.length?{success:!1,error:new(e??$e)(a.issues.map(e=>b(e,i,l())))}:{success:!0,data:a.value}},ut=lt(x),dt=e=>async(t,n,r)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>b(e,i,l())))}:{success:!0,data:a.value}},ft=dt(x),pt=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return at(e)(t,n,i)},mt=pt(x),ht=e=>(t,n,r)=>at(e)(t,n,r),gt=ht(x),_t=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return st(e)(t,n,i)},vt=_t(x),yt=e=>async(t,n,r)=>st(e)(t,n,r),bt=yt(x),xt=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return lt(e)(t,n,i)},St=xt(x),Ct=e=>(t,n,r)=>lt(e)(t,n,r),wt=Ct(x),Tt=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return dt(e)(t,n,i)},Et=Tt(x),Dt=e=>async(t,n,r)=>dt(e)(t,n,r),Ot=Dt(x),kt=t({base64:()=>nn,base64url:()=>rn,bigint:()=>mn,boolean:()=>_n,browserEmail:()=>Jt,cidrv4:()=>en,cidrv6:()=>tn,cuid:()=>At,cuid2:()=>jt,date:()=>ln,datetime:()=>fn,domain:()=>on,duration:()=>It,e164:()=>sn,email:()=>Ut,emoji:()=>Xt,extendedDuration:()=>Lt,guid:()=>Rt,hex:()=>Sn,hostname:()=>an,html5Email:()=>Wt,idnEmail:()=>qt,integer:()=>hn,ipv4:()=>Zt,ipv6:()=>Qt,ksuid:()=>Pt,lowercase:()=>bn,mac:()=>$t,md5_base64:()=>En,md5_base64url:()=>Dn,md5_hex:()=>Tn,nanoid:()=>Ft,null:()=>vn,number:()=>gn,rfc5322Email:()=>Gt,sha1_base64:()=>kn,sha1_base64url:()=>An,sha1_hex:()=>On,sha256_base64:()=>Mn,sha256_base64url:()=>Nn,sha256_hex:()=>jn,sha384_base64:()=>Fn,sha384_base64url:()=>In,sha384_hex:()=>Pn,sha512_base64:()=>Rn,sha512_base64url:()=>zn,sha512_hex:()=>Ln,string:()=>pn,time:()=>dn,ulid:()=>Mt,undefined:()=>yn,unicodeEmail:()=>Kt,uppercase:()=>xn,uuid:()=>zt,uuid4:()=>Bt,uuid6:()=>Vt,uuid7:()=>Ht,xid:()=>Nt}),At=/^[cC][^\s-]{8,}$/,jt=/^[0-9a-z]+$/,Mt=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Nt=/^[0-9a-vA-V]{20}$/,Pt=/^[A-Za-z0-9]{27}$/,Ft=/^[a-zA-Z0-9_-]{21}$/,It=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Lt=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Rt=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,zt=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})<!DOCTYPE html>
43
+ )?e.length-1:e.length;return e.slice(t,n)}function re(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=t.toString(),i=(r.split(`.`)[1]||``).length;if(i===0&&/\d?e-\d?/.test(r)){let e=r.match(/\d?e-(\d?)/);e?.[1]&&(i=Number.parseInt(e[1]))}let a=n>i?n:i;return Number.parseInt(e.toFixed(a).replace(`.`,``))%Number.parseInt(t.toFixed(a).replace(`.`,``))/10**a}var ie=Symbol(`evaluating`);function y(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==ie)return r===void 0&&(r=ie,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function ae(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function oe(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function se(...e){let t={};for(let n of e)Object.assign(t,Object.getOwnPropertyDescriptors(n));return Object.defineProperties({},t)}function ce(e){return se(e._zod.def)}function le(e,t){return t?t.reduce((e,t)=>e?.[t],e):e}function ue(e){let t=Object.keys(e),n=t.map(t=>e[t]);return Promise.all(n).then(e=>{let n={};for(let r=0;r<t.length;r++)n[t[r]]=e[r];return n})}function de(e=10){let t=``;for(let n=0;n<e;n++)t+=`abcdefghijklmnopqrstuvwxyz`[Math.floor(Math.random()*26)];return t}function fe(e){return JSON.stringify(e)}function pe(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}var me=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function he(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var ge=ee(()=>{if(typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function _e(e){if(he(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(he(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}function ve(e){return _e(e)?{...e}:Array.isArray(e)?[...e]:e}function ye(e){let t=0;for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&t++;return t}var be=e=>{let t=typeof e;switch(t){case`undefined`:return`undefined`;case`string`:return`string`;case`number`:return Number.isNaN(e)?`nan`:`number`;case`boolean`:return`boolean`;case`function`:return`function`;case`bigint`:return`bigint`;case`symbol`:return`symbol`;case`object`:return Array.isArray(e)?`array`:e===null?`null`:e.then&&typeof e.then==`function`&&e.catch&&typeof e.catch==`function`?`promise`:typeof Map<`u`&&e instanceof Map?`map`:typeof Set<`u`&&e instanceof Set?`set`:typeof Date<`u`&&e instanceof Date?`date`:typeof File<`u`&&e instanceof File?`file`:`object`;default:throw Error(`Unknown data type: ${t}`)}},xe=new Set([`string`,`number`,`symbol`]),Se=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function Ce(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\</body>`)}function b(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function x(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function we(e){let t;return new Proxy({},{get(n,r,i){return t??=e(),Reflect.get(t,r,i)},set(n,r,i,a){return t??=e(),Reflect.set(t,r,i,a)},has(n,r){return t??=e(),Reflect.has(t,r)},deleteProperty(n,r){return t??=e(),Reflect.deleteProperty(t,r)},ownKeys(n){return t??=e(),Reflect.ownKeys(t)},getOwnPropertyDescriptor(n,r){return t??=e(),Reflect.getOwnPropertyDescriptor(t,r)},defineProperty(n,r,i){return t??=e(),Reflect.defineProperty(t,r,i)}})}function S(e){return typeof e==`bigint`?e.toString()+`n`:typeof e==`string`?`"${e}"`:`${e}`}function Te(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}var Ee={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},De={int64:[BigInt(`-9223372036854775808`),BigInt(`9223372036854775807`)],uint64:[BigInt(0),BigInt(`18446744073709551615`)]};function Oe(e,t){let n=e._zod.def;return b(e,se(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return oe(this,`shape`,e),e},checks:[]}))}function ke(e,t){let n=e._zod.def;return b(e,se(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return oe(this,`shape`,r),r},checks:[]}))}function Ae(e,t){if(!_e(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0)throw Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");return b(e,se(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return oe(this,`shape`,n),n},checks:[]}))}function je(e,t){if(!_e(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return b(e,{...e._zod.def,get shape(){let n={...e._zod.def.shape,...t};return oe(this,`shape`,n),n},checks:e._zod.def.checks})}function Me(e,t){return b(e,se(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return oe(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:[]}))}function Ne(e,t,n){return b(t,se(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return oe(this,`shape`,i),i},checks:[]}))}function Pe(e,t,n){return b(t,se(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return oe(this,`shape`,i),i},checks:[]}))}function Fe(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Ie(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function Le(e){return typeof e==`string`?e:e?.message}function Re(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=Le(e.inst?._zod.def?.error?.(e))??Le(t?.error?.(e))??Le(n.customError?.(e))??Le(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function ze(e){return e instanceof Set?`set`:e instanceof Map?`map`:e instanceof File?`file`:`unknown`}function Be(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function Ve(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}function He(e){return Object.entries(e).filter(([e,t])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}function Ue(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}function We(e){let t=``;for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}function Ge(e){let t=e.replace(/-/g,`+`).replace(/_/g,`/`);return Ue(t+`=`.repeat((4-t.length%4)%4))}function Ke(e){return We(e).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=/g,``)}function qe(e){let t=e.replace(/^0x/,``);if(t.length%2!=0)throw Error(`Invalid hex string length`);let n=new Uint8Array(t.length/2);for(let e=0;e<t.length;e+=2)n[e/2]=Number.parseInt(t.slice(e,e+2),16);return n}function Je(e){return Array.from(e).map(e=>e.toString(16).padStart(2,`0`)).join(``)}var Ye=class{constructor(...e){}},Xe=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,v,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},Ze=i(`$ZodError`,Xe),C=i(`$ZodError`,Xe,{Parent:Error});function Qe(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function $e(e,t=e=>e.message){let n={_errors:[]},r=e=>{for(let i of e.issues)if(i.code===`invalid_union`&&i.errors.length)i.errors.map(e=>r({issues:e}));else if(i.code===`invalid_key`)r({issues:i.issues});else if(i.code===`invalid_element`)r({issues:i.issues});else if(i.path.length===0)n._errors.push(t(i));else{let e=n,r=0;for(;r<i.path.length;){let n=i.path[r];r===i.path.length-1?(e[n]=e[n]||{_errors:[]},e[n]._errors.push(t(i))):e[n]=e[n]||{_errors:[]},e=e[n],r++}}};return r(e),n}function et(e,t=e=>e.message){let n={errors:[]},r=(e,i=[])=>{var a,o;for(let s of e.issues)if(s.code===`invalid_union`&&s.errors.length)s.errors.map(e=>r({issues:e},s.path));else if(s.code===`invalid_key`)r({issues:s.issues},s.path);else if(s.code===`invalid_element`)r({issues:s.issues},s.path);else{let e=[...i,...s.path];if(e.length===0){n.errors.push(t(s));continue}let r=n,c=0;for(;c<e.length;){let n=e[c],i=c===e.length-1;typeof n==`string`?(r.properties??={},(a=r.properties)[n]??(a[n]={errors:[]}),r=r.properties[n]):(r.items??=[],(o=r.items)[n]??(o[n]={errors:[]}),r=r.items[n]),i&&r.errors.push(t(s)),c++}}};return r(e),n}function tt(e){let t=[],n=e.map(e=>typeof e==`object`?e.key:e);for(let e of n)typeof e==`number`?t.push(`[${e}]`):typeof e==`symbol`?t.push(`[${JSON.stringify(String(e))}]`):/[^\w$]/.test(e)?t.push(`[${JSON.stringify(e)}]`):(t.length&&t.push(`.`),t.push(e));return t.join(``)}function nt(e){let t=[],n=[...e.issues].sort((e,t)=>(e.path??[]).length-(t.path??[]).length);for(let e of n)t.push(`✖ ${e.message}`),e.path?.length&&t.push(` → at ${tt(e.path)}`);return t.join(`
44
+ `)}var rt=e=>(t,n,r,i)=>{let a=r?Object.assign(r,{async:!1}):{async:!1},s=t._zod.run({value:n,issues:[]},a);if(s instanceof Promise)throw new o;if(s.issues.length){let t=new(i?.Err??e)(s.issues.map(e=>Re(e,a,l())));throw me(t,i?.callee),t}return s.value},it=rt(C),at=e=>async(t,n,r,i)=>{let a=r?Object.assign(r,{async:!0}):{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Re(e,a,l())));throw me(t,i?.callee),t}return o.value},ot=at(C),st=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new o;return a.issues.length?{success:!1,error:new(e??Ze)(a.issues.map(e=>Re(e,i,l())))}:{success:!0,data:a.value}},ct=st(C),lt=e=>async(t,n,r)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>Re(e,i,l())))}:{success:!0,data:a.value}},ut=lt(C),dt=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return rt(e)(t,n,i)},ft=dt(C),pt=e=>(t,n,r)=>rt(e)(t,n,r),mt=pt(C),ht=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return at(e)(t,n,i)},gt=ht(C),_t=e=>async(t,n,r)=>at(e)(t,n,r),vt=_t(C),yt=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return st(e)(t,n,i)},bt=yt(C),xt=e=>(t,n,r)=>st(e)(t,n,r),St=xt(C),Ct=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return lt(e)(t,n,i)},wt=Ct(C),Tt=e=>async(t,n,r)=>lt(e)(t,n,r),Et=Tt(C),Dt=t({base64:()=>en,base64url:()=>tn,bigint:()=>fn,boolean:()=>hn,browserEmail:()=>Kt,cidrv4:()=>Qt,cidrv6:()=>$t,cuid:()=>Ot,cuid2:()=>kt,date:()=>sn,datetime:()=>un,domain:()=>rn,duration:()=>Pt,e164:()=>an,email:()=>Vt,emoji:()=>Jt,extendedDuration:()=>Ft,guid:()=>It,hex:()=>bn,hostname:()=>nn,html5Email:()=>Ht,idnEmail:()=>Gt,integer:()=>pn,ipv4:()=>Yt,ipv6:()=>Xt,ksuid:()=>Mt,lowercase:()=>vn,mac:()=>Zt,md5_base64:()=>wn,md5_base64url:()=>Tn,md5_hex:()=>Cn,nanoid:()=>Nt,null:()=>gn,number:()=>mn,rfc5322Email:()=>Ut,sha1_base64:()=>Dn,sha1_base64url:()=>On,sha1_hex:()=>En,sha256_base64:()=>An,sha256_base64url:()=>jn,sha256_hex:()=>kn,sha384_base64:()=>Nn,sha384_base64url:()=>Pn,sha384_hex:()=>Mn,sha512_base64:()=>In,sha512_base64url:()=>Ln,sha512_hex:()=>Fn,string:()=>dn,time:()=>ln,ulid:()=>At,undefined:()=>_n,unicodeEmail:()=>Wt,uppercase:()=>yn,uuid:()=>Lt,uuid4:()=>Rt,uuid6:()=>zt,uuid7:()=>Bt,xid:()=>jt}),Ot=/^[cC][^\s-]{8,}$/,kt=/^[0-9a-z]+$/,At=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,jt=/^[0-9a-vA-V]{20}$/,Mt=/^[A-Za-z0-9]{27}$/,Nt=/^[a-zA-Z0-9_-]{21}$/,Pt=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Ft=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,It=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Lt=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})<!DOCTYPE html>
45
45
  <html lang="en">
46
46
  <head>
47
47
  <meta charset="UTF-8" />
@@ -49,7 +49,7 @@
49
49
  <title>Chart Wheel Explorer</title>
50
50
 
51
51
 
52
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
52
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
53
53
  /*$vite$:1*/</style>
54
54
  </head>
55
55
  <body>
@@ -62,7 +62,7 @@
62
62
  <div id="controls-panel" hidden></div>
63
63
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
64
64
  </div>
65
- ):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,Bt=zt(4),Vt=zt(6),Ht=zt(7),Ut=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Wt=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Gt=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,Kt=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,qt=Kt,Jt=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Yt=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+<!DOCTYPE html>
65
+ ):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,Rt=Lt(4),zt=Lt(6),Bt=Lt(7),Vt=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Ht=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Ut=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,Wt=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,Gt=Wt,Kt=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,qt=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+<!DOCTYPE html>
66
66
  <html lang="en">
67
67
  <head>
68
68
  <meta charset="UTF-8" />
@@ -70,7 +70,7 @@
70
70
  <title>Chart Wheel Explorer</title>
71
71
 
72
72
 
73
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
73
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
74
74
  /*$vite$:1*/</style>
75
75
  </head>
76
76
  <body>
@@ -83,7 +83,7 @@
83
83
  <div id="controls-panel" hidden></div>
84
84
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
85
85
  </div>
86
- ;function Xt(){return new RegExp(Yt,`u`)}var Zt=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Qt=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,$t=e=>{let t=De(e??`:`);return RegExp(`^(?:[0-9A-F]{2}${t}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${t}){5}[0-9a-f]{2}<!DOCTYPE html>
86
+ ;function Jt(){return new RegExp(qt,`u`)}var Yt=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Xt=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,Zt=e=>{let t=Ce(e??`:`);return RegExp(`^(?:[0-9A-F]{2}${t}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${t}){5}[0-9a-f]{2}<!DOCTYPE html>
87
87
  <html lang="en">
88
88
  <head>
89
89
  <meta charset="UTF-8" />
@@ -91,7 +91,7 @@
91
91
  <title>Chart Wheel Explorer</title>
92
92
 
93
93
 
94
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
94
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
95
95
  /*$vite$:1*/</style>
96
96
  </head>
97
97
  <body>
@@ -104,7 +104,7 @@
104
104
  <div id="controls-panel" hidden></div>
105
105
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
106
106
  </div>
107
- )},en=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,tn=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,nn=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,rn=/^[A-Za-z0-9_-]*$/,an=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,on=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,sn=/^\+(?:[0-9]){6,14}[0-9]$/,cn=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`,ln=RegExp(`^${cn}<!DOCTYPE html>
107
+ )},Qt=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,$t=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,en=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,tn=/^[A-Za-z0-9_-]*$/,nn=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,rn=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,an=/^\+(?:[0-9]){6,14}[0-9]$/,on=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`,sn=RegExp(`^${on}<!DOCTYPE html>
108
108
  <html lang="en">
109
109
  <head>
110
110
  <meta charset="UTF-8" />
@@ -112,7 +112,7 @@
112
112
  <title>Chart Wheel Explorer</title>
113
113
 
114
114
 
115
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
115
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
116
116
  /*$vite$:1*/</style>
117
117
  </head>
118
118
  <body>
@@ -125,7 +125,7 @@
125
125
  <div id="controls-panel" hidden></div>
126
126
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
127
127
  </div>
128
- );function un(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function dn(e){return RegExp(`^${un(e)}<!DOCTYPE html>
128
+ );function cn(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function ln(e){return RegExp(`^${cn(e)}<!DOCTYPE html>
129
129
  <html lang="en">
130
130
  <head>
131
131
  <meta charset="UTF-8" />
@@ -133,7 +133,7 @@
133
133
  <title>Chart Wheel Explorer</title>
134
134
 
135
135
 
136
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
136
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
137
137
  /*$vite$:1*/</style>
138
138
  </head>
139
139
  <body>
@@ -146,7 +146,7 @@
146
146
  <div id="controls-panel" hidden></div>
147
147
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
148
148
  </div>
149
- )}function fn(e){let t=un({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${cn}T(?:${r})<!DOCTYPE html>
149
+ )}function un(e){let t=cn({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${on}T(?:${r})<!DOCTYPE html>
150
150
  <html lang="en">
151
151
  <head>
152
152
  <meta charset="UTF-8" />
@@ -154,7 +154,7 @@
154
154
  <title>Chart Wheel Explorer</title>
155
155
 
156
156
 
157
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
157
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
158
158
  /*$vite$:1*/</style>
159
159
  </head>
160
160
  <body>
@@ -167,7 +167,7 @@
167
167
  <div id="controls-panel" hidden></div>
168
168
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
169
169
  </div>
170
- )}var pn=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}<!DOCTYPE html>
170
+ )}var dn=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}<!DOCTYPE html>
171
171
  <html lang="en">
172
172
  <head>
173
173
  <meta charset="UTF-8" />
@@ -175,7 +175,7 @@
175
175
  <title>Chart Wheel Explorer</title>
176
176
 
177
177
 
178
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
178
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
179
179
  /*$vite$:1*/</style>
180
180
  </head>
181
181
  <body>
@@ -188,7 +188,7 @@
188
188
  <div id="controls-panel" hidden></div>
189
189
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
190
190
  </div>
191
- )},mn=/^-?\d+n?$/,hn=/^-?\d+$/,gn=/^-?\d+(?:\.\d+)?/,_n=/^(?:true|false)$/i,vn=/^null$/i,yn=/^undefined$/i,bn=/^[^A-Z]*$/,xn=/^[^a-z]*$/,Sn=/^[0-9a-fA-F]*$/;function Cn(e,t){return RegExp(`^[A-Za-z0-9+/]{${e}}${t}<!DOCTYPE html>
191
+ )},fn=/^-?\d+n?$/,pn=/^-?\d+$/,mn=/^-?\d+(?:\.\d+)?/,hn=/^(?:true|false)$/i,gn=/^null$/i,_n=/^undefined$/i,vn=/^[^A-Z]*$/,yn=/^[^a-z]*$/,bn=/^[0-9a-fA-F]*$/;function xn(e,t){return RegExp(`^[A-Za-z0-9+/]{${e}}${t}<!DOCTYPE html>
192
192
  <html lang="en">
193
193
  <head>
194
194
  <meta charset="UTF-8" />
@@ -196,7 +196,7 @@
196
196
  <title>Chart Wheel Explorer</title>
197
197
 
198
198
 
199
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
199
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
200
200
  /*$vite$:1*/</style>
201
201
  </head>
202
202
  <body>
@@ -209,7 +209,7 @@
209
209
  <div id="controls-panel" hidden></div>
210
210
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
211
211
  </div>
212
- )}function wn(e){return RegExp(`^[A-Za-z0-9_-]{${e}}<!DOCTYPE html>
212
+ )}function Sn(e){return RegExp(`^[A-Za-z0-9_-]{${e}}<!DOCTYPE html>
213
213
  <html lang="en">
214
214
  <head>
215
215
  <meta charset="UTF-8" />
@@ -217,7 +217,7 @@
217
217
  <title>Chart Wheel Explorer</title>
218
218
 
219
219
 
220
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
220
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
221
221
  /*$vite$:1*/</style>
222
222
  </head>
223
223
  <body>
@@ -230,7 +230,7 @@
230
230
  <div id="controls-panel" hidden></div>
231
231
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
232
232
  </div>
233
- )}var Tn=/^[0-9a-fA-F]{32}$/,En=Cn(22,`==`),Dn=wn(22),On=/^[0-9a-fA-F]{40}$/,kn=Cn(27,`=`),An=wn(27),jn=/^[0-9a-fA-F]{64}$/,Mn=Cn(43,`=`),Nn=wn(43),Pn=/^[0-9a-fA-F]{96}$/,Fn=Cn(64,``),In=wn(64),Ln=/^[0-9a-fA-F]{128}$/,Rn=Cn(86,`==`),zn=wn(86),S=i(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Bn={number:`number`,bigint:`bigint`,object:`date`},Vn=i(`$ZodCheckLessThan`,(e,t)=>{S.init(e,t);let n=Bn[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Hn=i(`$ZodCheckGreaterThan`,(e,t)=>{S.init(e,t);let n=Bn[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Un=i(`$ZodCheckMultipleOf`,(e,t)=>{S.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?n.value%t.value===BigInt(0):se(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Wn=i(`$ZodCheckNumberFormat`,(e,t)=>{S.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=Ae[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=hn)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inst:e})}}),Gn=i(`$ZodCheckBigIntFormat`,(e,t)=>{S.init(e,t);let[n,r]=je[t.format];e._zod.onattach.push(e=>{let i=e._zod.bag;i.format=t.format,i.minimum=n,i.maximum=r}),e._zod.check=i=>{let a=i.value;a<n&&i.issues.push({origin:`bigint`,input:a,code:`too_small`,minimum:n,inclusive:!0,inst:e,continue:!t.abort}),a>r&&i.issues.push({origin:`bigint`,input:a,code:`too_big`,maximum:r,inst:e})}}),Kn=i(`$ZodCheckMaxSize`,(e,t)=>{var n;S.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ae(t)&&t.size!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;r.size<=t.maximum||n.issues.push({origin:Ve(r),code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),qn=i(`$ZodCheckMinSize`,(e,t)=>{var n;S.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ae(t)&&t.size!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;r.size>=t.minimum||n.issues.push({origin:Ve(r),code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Jn=i(`$ZodCheckSizeEquals`,(e,t)=>{var n;S.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ae(t)&&t.size!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.size,n.maximum=t.size,n.size=t.size}),e._zod.check=n=>{let r=n.value,i=r.size;if(i===t.size)return;let a=i>t.size;n.issues.push({origin:Ve(r),...a?{code:`too_big`,maximum:t.size}:{code:`too_small`,minimum:t.size},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Yn=i(`$ZodCheckMaxLength`,(e,t)=>{var n;S.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ae(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=He(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Xn=i(`$ZodCheckMinLength`,(e,t)=>{var n;S.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ae(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=He(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Zn=i(`$ZodCheckLengthEquals`,(e,t)=>{var n;S.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ae(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=He(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Qn=i(`$ZodCheckStringFormat`,(e,t)=>{var n,r;S.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),$n=i(`$ZodCheckRegex`,(e,t)=>{Qn.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),er=i(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=bn,Qn.init(e,t)}),tr=i(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=xn,Qn.init(e,t)}),nr=i(`$ZodCheckIncludes`,(e,t)=>{S.init(e,t);let n=De(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),rr=i(`$ZodCheckStartsWith`,(e,t)=>{S.init(e,t);let n=RegExp(`^${De(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),ir=i(`$ZodCheckEndsWith`,(e,t)=>{S.init(e,t);let n=RegExp(`.*${De(t.suffix)}<!DOCTYPE html>
233
+ )}var Cn=/^[0-9a-fA-F]{32}$/,wn=xn(22,`==`),Tn=Sn(22),En=/^[0-9a-fA-F]{40}$/,Dn=xn(27,`=`),On=Sn(27),kn=/^[0-9a-fA-F]{64}$/,An=xn(43,`=`),jn=Sn(43),Mn=/^[0-9a-fA-F]{96}$/,Nn=xn(64,``),Pn=Sn(64),Fn=/^[0-9a-fA-F]{128}$/,In=xn(86,`==`),Ln=Sn(86),w=i(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Rn={number:`number`,bigint:`bigint`,object:`date`},zn=i(`$ZodCheckLessThan`,(e,t)=>{w.init(e,t);let n=Rn[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Bn=i(`$ZodCheckGreaterThan`,(e,t)=>{w.init(e,t);let n=Rn[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Vn=i(`$ZodCheckMultipleOf`,(e,t)=>{w.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?n.value%t.value===BigInt(0):re(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Hn=i(`$ZodCheckNumberFormat`,(e,t)=>{w.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=Ee[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=pn)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inst:e})}}),Un=i(`$ZodCheckBigIntFormat`,(e,t)=>{w.init(e,t);let[n,r]=De[t.format];e._zod.onattach.push(e=>{let i=e._zod.bag;i.format=t.format,i.minimum=n,i.maximum=r}),e._zod.check=i=>{let a=i.value;a<n&&i.issues.push({origin:`bigint`,input:a,code:`too_small`,minimum:n,inclusive:!0,inst:e,continue:!t.abort}),a>r&&i.issues.push({origin:`bigint`,input:a,code:`too_big`,maximum:r,inst:e})}}),Wn=i(`$ZodCheckMaxSize`,(e,t)=>{var n;w.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!te(t)&&t.size!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;r.size<=t.maximum||n.issues.push({origin:ze(r),code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Gn=i(`$ZodCheckMinSize`,(e,t)=>{var n;w.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!te(t)&&t.size!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;r.size>=t.minimum||n.issues.push({origin:ze(r),code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Kn=i(`$ZodCheckSizeEquals`,(e,t)=>{var n;w.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!te(t)&&t.size!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.size,n.maximum=t.size,n.size=t.size}),e._zod.check=n=>{let r=n.value,i=r.size;if(i===t.size)return;let a=i>t.size;n.issues.push({origin:ze(r),...a?{code:`too_big`,maximum:t.size}:{code:`too_small`,minimum:t.size},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),qn=i(`$ZodCheckMaxLength`,(e,t)=>{var n;w.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!te(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=Be(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Jn=i(`$ZodCheckMinLength`,(e,t)=>{var n;w.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!te(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=Be(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Yn=i(`$ZodCheckLengthEquals`,(e,t)=>{var n;w.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!te(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=Be(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Xn=i(`$ZodCheckStringFormat`,(e,t)=>{var n,r;w.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),Zn=i(`$ZodCheckRegex`,(e,t)=>{Xn.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Qn=i(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=vn,Xn.init(e,t)}),$n=i(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=yn,Xn.init(e,t)}),er=i(`$ZodCheckIncludes`,(e,t)=>{w.init(e,t);let n=Ce(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),tr=i(`$ZodCheckStartsWith`,(e,t)=>{w.init(e,t);let n=RegExp(`^${Ce(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),nr=i(`$ZodCheckEndsWith`,(e,t)=>{w.init(e,t);let n=RegExp(`.*${Ce(t.suffix)}<!DOCTYPE html>
234
234
  <html lang="en">
235
235
  <head>
236
236
  <meta charset="UTF-8" />
@@ -238,7 +238,7 @@
238
238
  <title>Chart Wheel Explorer</title>
239
239
 
240
240
 
241
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
241
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
242
242
  /*$vite$:1*/</style>
243
243
  </head>
244
244
  <body>
@@ -251,9 +251,9 @@
251
251
  <div id="controls-panel" hidden></div>
252
252
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
253
253
  </div>
254
- );t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});function ar(e,t,n){e.issues.length&&t.issues.push(...y(n,e.issues))}var or=i(`$ZodCheckProperty`,(e,t)=>{S.init(e,t),e._zod.check=e=>{let n=t.schema._zod.run({value:e.value[t.property],issues:[]},{});if(n instanceof Promise)return n.then(n=>ar(n,e,t.property));ar(n,e,t.property)}}),sr=i(`$ZodCheckMimeType`,(e,t)=>{S.init(e,t);let n=new Set(t.mime);e._zod.onattach.push(e=>{e._zod.bag.mime=t.mime}),e._zod.check=r=>{n.has(r.value.type)||r.issues.push({code:`invalid_value`,values:t.mime,input:r.value.type,inst:e,continue:!t.abort})}}),cr=i(`$ZodCheckOverwrite`,(e,t)=>{S.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}),lr=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
254
+ );t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});function rr(e,t,n){e.issues.length&&t.issues.push(...Ie(n,e.issues))}var ir=i(`$ZodCheckProperty`,(e,t)=>{w.init(e,t),e._zod.check=e=>{let n=t.schema._zod.run({value:e.value[t.property],issues:[]},{});if(n instanceof Promise)return n.then(n=>rr(n,e,t.property));rr(n,e,t.property)}}),ar=i(`$ZodCheckMimeType`,(e,t)=>{w.init(e,t);let n=new Set(t.mime);e._zod.onattach.push(e=>{e._zod.bag.mime=t.mime}),e._zod.check=r=>{n.has(r.value.type)||r.issues.push({code:`invalid_value`,values:t.mime,input:r.value.type,inst:e,continue:!t.abort})}}),or=i(`$ZodCheckOverwrite`,(e,t)=>{w.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}),sr=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
255
255
  `).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[``]).map(e=>` ${e}`)];return new e(...t,n.join(`
256
- `))}},ur={major:4,minor:1,patch:13},C=i(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=ur;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=ze(e),i;for(let a of t){if(a._zod.def.when){if(!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,s=a._zod.check(e);if(s instanceof Promise&&n?.async===!1)throw new o;if(i||s instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await s,e.issues.length!==t&&(r||=ze(e,t))});else{if(e.issues.length===t)continue;r||=ze(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(ze(n))return n.aborted=!0,n;let s=t(i,r,a);if(s instanceof Promise){if(a.async===!1)throw new o;return s.then(t=>e._zod.parse(t,a))}return e._zod.parse(s,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let s=e._zod.parse(i,a);if(s instanceof Promise){if(a.async===!1)throw new o;return s.then(e=>t(e,r,a))}return t(s,r,a)}}e[`~standard`]={validate:t=>{try{let n=ut(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return ft(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}}),dr=i(`$ZodString`,(e,t)=>{C.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??pn(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),w=i(`$ZodStringFormat`,(e,t)=>{Qn.init(e,t),dr.init(e,t)}),fr=i(`$ZodGUID`,(e,t)=>{t.pattern??=Rt,w.init(e,t)}),pr=i(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=zt(e)}else t.pattern??=zt();w.init(e,t)}),mr=i(`$ZodEmail`,(e,t)=>{t.pattern??=Ut,w.init(e,t)}),hr=i(`$ZodURL`,(e,t)=>{w.init(e,t),e._zod.check=n=>{try{let r=n.value.trim(),i=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(`:`)?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=i.href:n.value=r;return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),gr=i(`$ZodEmoji`,(e,t)=>{t.pattern??=Xt(),w.init(e,t)}),_r=i(`$ZodNanoID`,(e,t)=>{t.pattern??=Ft,w.init(e,t)}),vr=i(`$ZodCUID`,(e,t)=>{t.pattern??=At,w.init(e,t)}),yr=i(`$ZodCUID2`,(e,t)=>{t.pattern??=jt,w.init(e,t)}),br=i(`$ZodULID`,(e,t)=>{t.pattern??=Mt,w.init(e,t)}),xr=i(`$ZodXID`,(e,t)=>{t.pattern??=Nt,w.init(e,t)}),Sr=i(`$ZodKSUID`,(e,t)=>{t.pattern??=Pt,w.init(e,t)}),Cr=i(`$ZodISODateTime`,(e,t)=>{t.pattern??=fn(t),w.init(e,t)}),wr=i(`$ZodISODate`,(e,t)=>{t.pattern??=ln,w.init(e,t)}),Tr=i(`$ZodISOTime`,(e,t)=>{t.pattern??=dn(t),w.init(e,t)}),Er=i(`$ZodISODuration`,(e,t)=>{t.pattern??=It,w.init(e,t)}),Dr=i(`$ZodIPv4`,(e,t)=>{t.pattern??=Zt,w.init(e,t),e._zod.bag.format=`ipv4`}),Or=i(`$ZodIPv6`,(e,t)=>{t.pattern??=Qt,w.init(e,t),e._zod.bag.format=`ipv6`,e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}}),kr=i(`$ZodMAC`,(e,t)=>{t.pattern??=$t(t.delimiter),w.init(e,t),e._zod.bag.format=`mac`}),Ar=i(`$ZodCIDRv4`,(e,t)=>{t.pattern??=en,w.init(e,t)}),jr=i(`$ZodCIDRv6`,(e,t)=>{t.pattern??=tn,w.init(e,t),e._zod.check=n=>{let r=n.value.split(`/`);try{if(r.length!==2)throw Error();let[e,t]=r;if(!t)throw Error();let n=Number(t);if(`${n}`!==t||n<0||n>128)throw Error();new URL(`http://[${e}]`)}catch{n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}}});function Mr(e){if(e===``)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}var Nr=i(`$ZodBase64`,(e,t)=>{t.pattern??=nn,w.init(e,t),e._zod.bag.contentEncoding=`base64`,e._zod.check=n=>{Mr(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}});function Pr(e){if(!rn.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return Mr(t.padEnd(Math.ceil(t.length/4)*4,`=`))}var Fr=i(`$ZodBase64URL`,(e,t)=>{t.pattern??=rn,w.init(e,t),e._zod.bag.contentEncoding=`base64url`,e._zod.check=n=>{Pr(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),Ir=i(`$ZodE164`,(e,t)=>{t.pattern??=sn,w.init(e,t)});function Lr(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}var Rr=i(`$ZodJWT`,(e,t)=>{w.init(e,t),e._zod.check=n=>{Lr(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),zr=i(`$ZodCustomStringFormat`,(e,t)=>{w.init(e,t),e._zod.check=n=>{t.fn(n.value)||n.issues.push({code:`invalid_format`,format:t.format,input:n.value,inst:e,continue:!t.abort})}}),Br=i(`$ZodNumber`,(e,t)=>{C.init(e,t),e._zod.pattern=e._zod.bag.pattern??gn,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),Vr=i(`$ZodNumberFormat`,(e,t)=>{Wn.init(e,t),Br.init(e,t)}),Hr=i(`$ZodBoolean`,(e,t)=>{C.init(e,t),e._zod.pattern=_n,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),Ur=i(`$ZodBigInt`,(e,t)=>{C.init(e,t),e._zod.pattern=mn,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch{}return typeof n.value==`bigint`||n.issues.push({expected:`bigint`,code:`invalid_type`,input:n.value,inst:e}),n}}),Wr=i(`$ZodBigIntFormat`,(e,t)=>{Gn.init(e,t),Ur.init(e,t)}),Gr=i(`$ZodSymbol`,(e,t)=>{C.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return typeof r==`symbol`||t.issues.push({expected:`symbol`,code:`invalid_type`,input:r,inst:e}),t}}),Kr=i(`$ZodUndefined`,(e,t)=>{C.init(e,t),e._zod.pattern=yn,e._zod.values=new Set([void 0]),e._zod.optin=`optional`,e._zod.optout=`optional`,e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`undefined`,code:`invalid_type`,input:r,inst:e}),t}}),qr=i(`$ZodNull`,(e,t)=>{C.init(e,t),e._zod.pattern=vn,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{let r=t.value;return r===null||t.issues.push({expected:`null`,code:`invalid_type`,input:r,inst:e}),t}}),Jr=i(`$ZodAny`,(e,t)=>{C.init(e,t),e._zod.parse=e=>e}),Yr=i(`$ZodUnknown`,(e,t)=>{C.init(e,t),e._zod.parse=e=>e}),Xr=i(`$ZodNever`,(e,t)=>{C.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)}),Zr=i(`$ZodVoid`,(e,t)=>{C.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`void`,code:`invalid_type`,input:r,inst:e}),t}}),Qr=i(`$ZodDate`,(e,t)=>{C.init(e,t),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=new Date(n.value)}catch{}let i=n.value,a=i instanceof Date;return a&&!Number.isNaN(i.getTime())||n.issues.push({expected:`date`,code:`invalid_type`,input:i,...a?{received:`Invalid Date`}:{},inst:e}),n}});function $r(e,t,n){e.issues.length&&t.issues.push(...y(n,e.issues)),t.value[n]=e.value}var ei=i(`$ZodArray`,(e,t)=>{C.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>$r(t,n,e))):$r(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function ti(e,t,n,r){e.issues.length&&t.issues.push(...y(n,e.issues)),e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function ni(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${n}": expected a Zod schema`);let n=ke(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function ri(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type;for(let i in t){if(s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>ti(e,n,i,t))):ti(a,n,i,t)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}var ii=i(`$ZodObject`,(e,t)=>{if(C.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=ie(()=>ni(t));h(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=ye,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e]._zod.run({value:s[e],issues:[]},o);n instanceof Promise?c.push(n.then(n=>ti(n,t,e,s))):ti(n,t,e,s)}return i?ri(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}}),ai=i(`$ZodObjectJIT`,(e,t)=>{ii.init(e,t);let n=e._zod.parse,r=ie(()=>ni(t)),i=e=>{let t=new lr([`shape`,`payload`,`ctx`]),n=r.value,i=e=>{let t=ge(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write(`const input = payload.value;`);let a=Object.create(null),o=0;for(let e of n.keys)a[e]=`key_${o++}`;t.write(`const newResult = {};`);for(let e of n.keys){let n=a[e],r=ge(e);t.write(`const ${n} = ${i(e)};`),t.write(`
256
+ `))}},cr={major:4,minor:1,patch:13},T=i(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=cr;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=Fe(e),i;for(let a of t){if(a._zod.def.when){if(!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,s=a._zod.check(e);if(s instanceof Promise&&n?.async===!1)throw new o;if(i||s instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await s,e.issues.length!==t&&(r||=Fe(e,t))});else{if(e.issues.length===t)continue;r||=Fe(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(Fe(n))return n.aborted=!0,n;let s=t(i,r,a);if(s instanceof Promise){if(a.async===!1)throw new o;return s.then(t=>e._zod.parse(t,a))}return e._zod.parse(s,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let s=e._zod.parse(i,a);if(s instanceof Promise){if(a.async===!1)throw new o;return s.then(e=>t(e,r,a))}return t(s,r,a)}}e[`~standard`]={validate:t=>{try{let n=ct(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return ut(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}}),lr=i(`$ZodString`,(e,t)=>{T.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??dn(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),E=i(`$ZodStringFormat`,(e,t)=>{Xn.init(e,t),lr.init(e,t)}),ur=i(`$ZodGUID`,(e,t)=>{t.pattern??=It,E.init(e,t)}),dr=i(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=Lt(e)}else t.pattern??=Lt();E.init(e,t)}),fr=i(`$ZodEmail`,(e,t)=>{t.pattern??=Vt,E.init(e,t)}),pr=i(`$ZodURL`,(e,t)=>{E.init(e,t),e._zod.check=n=>{try{let r=n.value.trim(),i=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(`:`)?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=i.href:n.value=r;return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),mr=i(`$ZodEmoji`,(e,t)=>{t.pattern??=Jt(),E.init(e,t)}),hr=i(`$ZodNanoID`,(e,t)=>{t.pattern??=Nt,E.init(e,t)}),gr=i(`$ZodCUID`,(e,t)=>{t.pattern??=Ot,E.init(e,t)}),_r=i(`$ZodCUID2`,(e,t)=>{t.pattern??=kt,E.init(e,t)}),vr=i(`$ZodULID`,(e,t)=>{t.pattern??=At,E.init(e,t)}),yr=i(`$ZodXID`,(e,t)=>{t.pattern??=jt,E.init(e,t)}),br=i(`$ZodKSUID`,(e,t)=>{t.pattern??=Mt,E.init(e,t)}),xr=i(`$ZodISODateTime`,(e,t)=>{t.pattern??=un(t),E.init(e,t)}),Sr=i(`$ZodISODate`,(e,t)=>{t.pattern??=sn,E.init(e,t)}),Cr=i(`$ZodISOTime`,(e,t)=>{t.pattern??=ln(t),E.init(e,t)}),wr=i(`$ZodISODuration`,(e,t)=>{t.pattern??=Pt,E.init(e,t)}),Tr=i(`$ZodIPv4`,(e,t)=>{t.pattern??=Yt,E.init(e,t),e._zod.bag.format=`ipv4`}),Er=i(`$ZodIPv6`,(e,t)=>{t.pattern??=Xt,E.init(e,t),e._zod.bag.format=`ipv6`,e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}}),Dr=i(`$ZodMAC`,(e,t)=>{t.pattern??=Zt(t.delimiter),E.init(e,t),e._zod.bag.format=`mac`}),Or=i(`$ZodCIDRv4`,(e,t)=>{t.pattern??=Qt,E.init(e,t)}),kr=i(`$ZodCIDRv6`,(e,t)=>{t.pattern??=$t,E.init(e,t),e._zod.check=n=>{let r=n.value.split(`/`);try{if(r.length!==2)throw Error();let[e,t]=r;if(!t)throw Error();let n=Number(t);if(`${n}`!==t||n<0||n>128)throw Error();new URL(`http://[${e}]`)}catch{n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}}});function Ar(e){if(e===``)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}var jr=i(`$ZodBase64`,(e,t)=>{t.pattern??=en,E.init(e,t),e._zod.bag.contentEncoding=`base64`,e._zod.check=n=>{Ar(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}});function Mr(e){if(!tn.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return Ar(t.padEnd(Math.ceil(t.length/4)*4,`=`))}var Nr=i(`$ZodBase64URL`,(e,t)=>{t.pattern??=tn,E.init(e,t),e._zod.bag.contentEncoding=`base64url`,e._zod.check=n=>{Mr(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),Pr=i(`$ZodE164`,(e,t)=>{t.pattern??=an,E.init(e,t)});function Fr(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}var Ir=i(`$ZodJWT`,(e,t)=>{E.init(e,t),e._zod.check=n=>{Fr(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),Lr=i(`$ZodCustomStringFormat`,(e,t)=>{E.init(e,t),e._zod.check=n=>{t.fn(n.value)||n.issues.push({code:`invalid_format`,format:t.format,input:n.value,inst:e,continue:!t.abort})}}),Rr=i(`$ZodNumber`,(e,t)=>{T.init(e,t),e._zod.pattern=e._zod.bag.pattern??mn,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),zr=i(`$ZodNumberFormat`,(e,t)=>{Hn.init(e,t),Rr.init(e,t)}),Br=i(`$ZodBoolean`,(e,t)=>{T.init(e,t),e._zod.pattern=hn,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),Vr=i(`$ZodBigInt`,(e,t)=>{T.init(e,t),e._zod.pattern=fn,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch{}return typeof n.value==`bigint`||n.issues.push({expected:`bigint`,code:`invalid_type`,input:n.value,inst:e}),n}}),Hr=i(`$ZodBigIntFormat`,(e,t)=>{Un.init(e,t),Vr.init(e,t)}),Ur=i(`$ZodSymbol`,(e,t)=>{T.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return typeof r==`symbol`||t.issues.push({expected:`symbol`,code:`invalid_type`,input:r,inst:e}),t}}),Wr=i(`$ZodUndefined`,(e,t)=>{T.init(e,t),e._zod.pattern=_n,e._zod.values=new Set([void 0]),e._zod.optin=`optional`,e._zod.optout=`optional`,e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`undefined`,code:`invalid_type`,input:r,inst:e}),t}}),Gr=i(`$ZodNull`,(e,t)=>{T.init(e,t),e._zod.pattern=gn,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{let r=t.value;return r===null||t.issues.push({expected:`null`,code:`invalid_type`,input:r,inst:e}),t}}),Kr=i(`$ZodAny`,(e,t)=>{T.init(e,t),e._zod.parse=e=>e}),qr=i(`$ZodUnknown`,(e,t)=>{T.init(e,t),e._zod.parse=e=>e}),Jr=i(`$ZodNever`,(e,t)=>{T.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)}),Yr=i(`$ZodVoid`,(e,t)=>{T.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`void`,code:`invalid_type`,input:r,inst:e}),t}}),Xr=i(`$ZodDate`,(e,t)=>{T.init(e,t),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=new Date(n.value)}catch{}let i=n.value,a=i instanceof Date;return a&&!Number.isNaN(i.getTime())||n.issues.push({expected:`date`,code:`invalid_type`,input:i,...a?{received:`Invalid Date`}:{},inst:e}),n}});function Zr(e,t,n){e.issues.length&&t.issues.push(...Ie(n,e.issues)),t.value[n]=e.value}var Qr=i(`$ZodArray`,(e,t)=>{T.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>Zr(t,n,e))):Zr(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function $r(e,t,n,r){e.issues.length&&t.issues.push(...Ie(n,e.issues)),e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function ei(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${n}": expected a Zod schema`);let n=Te(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function ti(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type;for(let i in t){if(s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>$r(e,n,i,t))):$r(a,n,i,t)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}var ni=i(`$ZodObject`,(e,t)=>{if(T.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=ee(()=>ei(t));y(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=he,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e]._zod.run({value:s[e],issues:[]},o);n instanceof Promise?c.push(n.then(n=>$r(n,t,e,s))):$r(n,t,e,s)}return i?ti(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}}),ri=i(`$ZodObjectJIT`,(e,t)=>{ni.init(e,t);let n=e._zod.parse,r=ee(()=>ei(t)),i=e=>{let t=new sr([`shape`,`payload`,`ctx`]),n=r.value,i=e=>{let t=fe(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write(`const input = payload.value;`);let a=Object.create(null),o=0;for(let e of n.keys)a[e]=`key_${o++}`;t.write(`const newResult = {};`);for(let e of n.keys){let n=a[e],r=fe(e);t.write(`const ${n} = ${i(e)};`),t.write(`
257
257
  if (${n}.issues.length) {
258
258
  payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
259
259
  ...iss,
@@ -270,7 +270,7 @@
270
270
  newResult[${r}] = ${n}.value;
271
271
  }
272
272
 
273
- `)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},a,o=ye,s=!c.jitless,l=s&&be.value,u=t.catchall,d;e._zod.parse=(c,f)=>{d??=r.value;let p=c.value;return o(p)?s&&l&&f?.async===!1&&f.jitless!==!0?(a||=i(t.shape),c=a(c,f),u?ri([],p,c,f,d,e):c):n(c,f):(c.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),c)}});function oi(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!ze(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>b(e,r,l())))}),t)}var si=i(`$ZodUnion`,(e,t)=>{C.init(e,t),h(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),h(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),h(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),h(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>oe(e.source)).join(`|`)})<!DOCTYPE html>
273
+ `)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},a,o=he,s=!c.jitless,l=s&&ge.value,u=t.catchall,d;e._zod.parse=(c,f)=>{d??=r.value;let p=c.value;return o(p)?s&&l&&f?.async===!1&&f.jitless!==!0?(a||=i(t.shape),c=a(c,f),u?ti([],p,c,f,d,e):c):n(c,f):(c.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),c)}});function ii(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!Fe(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>Re(e,r,l())))}),t)}var ai=i(`$ZodUnion`,(e,t)=>{T.init(e,t),y(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),y(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),y(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),y(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>ne(e.source)).join(`|`)})<!DOCTYPE html>
274
274
  <html lang="en">
275
275
  <head>
276
276
  <meta charset="UTF-8" />
@@ -278,7 +278,7 @@
278
278
  <title>Chart Wheel Explorer</title>
279
279
 
280
280
 
281
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
281
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
282
282
  /*$vite$:1*/</style>
283
283
  </head>
284
284
  <body>
@@ -291,7 +291,7 @@
291
291
  <div id="controls-panel" hidden></div>
292
292
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
293
293
  </div>
294
- )}});let n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(i,a)=>{if(n)return r(i,a);let o=!1,s=[];for(let e of t.options){let t=e._zod.run({value:i.value,issues:[]},a);if(t instanceof Promise)s.push(t),o=!0;else{if(t.issues.length===0)return t;s.push(t)}}return o?Promise.all(s).then(t=>oi(t,i,e,a)):oi(s,i,e,a)}}),ci=i(`$ZodDiscriminatedUnion`,(e,t)=>{si.init(e,t);let n=e._zod.parse;h(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(n)}"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=ie(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value "${String(t)}"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!ye(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,input:o,path:[t.discriminator],inst:e}),i)}}),li=i(`$ZodIntersection`,(e,t)=>{C.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>di(e,t,n)):di(e,i,a)}});function ui(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(xe(e)&&xe(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=ui(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=ui(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function di(e,t,n){if(t.issues.length&&e.issues.push(...t.issues),n.issues.length&&e.issues.push(...n.issues),ze(e))return e;let r=ui(t.value,n.value);if(!r.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(r.mergeErrorPath)}`);return e.value=r.data,e}var fi=i(`$ZodTuple`,(e,t)=>{C.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:`tuple`,code:`invalid_type`}),r;r.value=[];let o=[],s=[...n].reverse().findIndex(e=>e._zod.optin!==`optional`),c=s===-1?0:n.length-s;if(!t.rest){let t=a.length>n.length,i=a.length<c-1;if(t||i)return r.issues.push({...t?{code:`too_big`,maximum:n.length}:{code:`too_small`,minimum:n.length},input:a,inst:e,origin:`array`}),r}let l=-1;for(let e of n){if(l++,l>=a.length&&l>=c)continue;let t=e._zod.run({value:a[l],issues:[]},i);t instanceof Promise?o.push(t.then(e=>pi(e,r,l))):pi(t,r,l)}if(t.rest){let e=a.slice(n.length);for(let n of e){l++;let e=t.rest._zod.run({value:n,issues:[]},i);e instanceof Promise?o.push(e.then(e=>pi(e,r,l))):pi(e,r,l)}}return o.length?Promise.all(o).then(()=>r):r}});function pi(e,t,n){e.issues.length&&t.issues.push(...y(n,e.issues)),t.value[n]=e.value}var mi=i(`$ZodRecord`,(e,t)=>{C.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!xe(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let e of o)if(typeof e==`string`||typeof e==`number`||typeof e==`symbol`){s.add(typeof e==`number`?e.toString():e);let o=t.valueType._zod.run({value:i[e],issues:[]},r);o instanceof Promise?a.push(o.then(t=>{t.issues.length&&n.issues.push(...y(e,t.issues)),n.value[e]=t.value})):(o.issues.length&&n.issues.push(...y(e,o.issues)),n.value[e]=o.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`)continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(s.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>b(e,r,l())),input:o,path:[o],inst:e}),n.value[s.value]=s.value;continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...y(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...y(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),hi=i(`$ZodMap`,(e,t)=>{C.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!(i instanceof Map))return n.issues.push({expected:`map`,code:`invalid_type`,input:i,inst:e}),n;let a=[];n.value=new Map;for(let[o,s]of i){let c=t.keyType._zod.run({value:o,issues:[]},r),l=t.valueType._zod.run({value:s,issues:[]},r);c instanceof Promise||l instanceof Promise?a.push(Promise.all([c,l]).then(([t,a])=>{gi(t,a,n,o,i,e,r)})):gi(c,l,n,o,i,e,r)}return a.length?Promise.all(a).then(()=>n):n}});function gi(e,t,n,r,i,a,o){e.issues.length&&(Te.has(typeof r)?n.issues.push(...y(r,e.issues)):n.issues.push({code:`invalid_key`,origin:`map`,input:i,inst:a,issues:e.issues.map(e=>b(e,o,l()))})),t.issues.length&&(Te.has(typeof r)?n.issues.push(...y(r,t.issues)):n.issues.push({origin:`map`,code:`invalid_element`,input:i,inst:a,key:r,issues:t.issues.map(e=>b(e,o,l()))})),n.value.set(e.value,t.value)}var _i=i(`$ZodSet`,(e,t)=>{C.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!(i instanceof Set))return n.issues.push({input:i,inst:e,expected:`set`,code:`invalid_type`}),n;let a=[];n.value=new Set;for(let e of i){let i=t.valueType._zod.run({value:e,issues:[]},r);i instanceof Promise?a.push(i.then(e=>vi(e,n))):vi(i,n)}return a.length?Promise.all(a).then(()=>n):n}});function vi(e,t){e.issues.length&&t.issues.push(...e.issues),t.value.add(e.value)}var yi=i(`$ZodEnum`,(e,t)=>{C.init(e,t);let n=ne(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Te.has(typeof e)).map(e=>typeof e==`string`?De(e):e.toString()).join(`|`)})<!DOCTYPE html>
294
+ )}});let n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(i,a)=>{if(n)return r(i,a);let o=!1,s=[];for(let e of t.options){let t=e._zod.run({value:i.value,issues:[]},a);if(t instanceof Promise)s.push(t),o=!0;else{if(t.issues.length===0)return t;s.push(t)}}return o?Promise.all(s).then(t=>ii(t,i,e,a)):ii(s,i,e,a)}}),oi=i(`$ZodDiscriminatedUnion`,(e,t)=>{ai.init(e,t);let n=e._zod.parse;y(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(n)}"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=ee(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value "${String(t)}"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!he(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,input:o,path:[t.discriminator],inst:e}),i)}}),si=i(`$ZodIntersection`,(e,t)=>{T.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>li(e,t,n)):li(e,i,a)}});function ci(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(_e(e)&&_e(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=ci(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=ci(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function li(e,t,n){if(t.issues.length&&e.issues.push(...t.issues),n.issues.length&&e.issues.push(...n.issues),Fe(e))return e;let r=ci(t.value,n.value);if(!r.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(r.mergeErrorPath)}`);return e.value=r.data,e}var ui=i(`$ZodTuple`,(e,t)=>{T.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:`tuple`,code:`invalid_type`}),r;r.value=[];let o=[],s=[...n].reverse().findIndex(e=>e._zod.optin!==`optional`),c=s===-1?0:n.length-s;if(!t.rest){let t=a.length>n.length,i=a.length<c-1;if(t||i)return r.issues.push({...t?{code:`too_big`,maximum:n.length}:{code:`too_small`,minimum:n.length},input:a,inst:e,origin:`array`}),r}let l=-1;for(let e of n){if(l++,l>=a.length&&l>=c)continue;let t=e._zod.run({value:a[l],issues:[]},i);t instanceof Promise?o.push(t.then(e=>di(e,r,l))):di(t,r,l)}if(t.rest){let e=a.slice(n.length);for(let n of e){l++;let e=t.rest._zod.run({value:n,issues:[]},i);e instanceof Promise?o.push(e.then(e=>di(e,r,l))):di(e,r,l)}}return o.length?Promise.all(o).then(()=>r):r}});function di(e,t,n){e.issues.length&&t.issues.push(...Ie(n,e.issues)),t.value[n]=e.value}var fi=i(`$ZodRecord`,(e,t)=>{T.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!_e(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let e of o)if(typeof e==`string`||typeof e==`number`||typeof e==`symbol`){s.add(typeof e==`number`?e.toString():e);let o=t.valueType._zod.run({value:i[e],issues:[]},r);o instanceof Promise?a.push(o.then(t=>{t.issues.length&&n.issues.push(...Ie(e,t.issues)),n.value[e]=t.value})):(o.issues.length&&n.issues.push(...Ie(e,o.issues)),n.value[e]=o.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`)continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(s.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>Re(e,r,l())),input:o,path:[o],inst:e}),n.value[s.value]=s.value;continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...Ie(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...Ie(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),pi=i(`$ZodMap`,(e,t)=>{T.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!(i instanceof Map))return n.issues.push({expected:`map`,code:`invalid_type`,input:i,inst:e}),n;let a=[];n.value=new Map;for(let[o,s]of i){let c=t.keyType._zod.run({value:o,issues:[]},r),l=t.valueType._zod.run({value:s,issues:[]},r);c instanceof Promise||l instanceof Promise?a.push(Promise.all([c,l]).then(([t,a])=>{mi(t,a,n,o,i,e,r)})):mi(c,l,n,o,i,e,r)}return a.length?Promise.all(a).then(()=>n):n}});function mi(e,t,n,r,i,a,o){e.issues.length&&(xe.has(typeof r)?n.issues.push(...Ie(r,e.issues)):n.issues.push({code:`invalid_key`,origin:`map`,input:i,inst:a,issues:e.issues.map(e=>Re(e,o,l()))})),t.issues.length&&(xe.has(typeof r)?n.issues.push(...Ie(r,t.issues)):n.issues.push({origin:`map`,code:`invalid_element`,input:i,inst:a,key:r,issues:t.issues.map(e=>Re(e,o,l()))})),n.value.set(e.value,t.value)}var hi=i(`$ZodSet`,(e,t)=>{T.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!(i instanceof Set))return n.issues.push({input:i,inst:e,expected:`set`,code:`invalid_type`}),n;let a=[];n.value=new Set;for(let e of i){let i=t.valueType._zod.run({value:e,issues:[]},r);i instanceof Promise?a.push(i.then(e=>gi(e,n))):gi(i,n)}return a.length?Promise.all(a).then(()=>n):n}});function gi(e,t){e.issues.length&&t.issues.push(...e.issues),t.value.add(e.value)}var _i=i(`$ZodEnum`,(e,t)=>{T.init(e,t);let n=g(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>xe.has(typeof e)).map(e=>typeof e==`string`?Ce(e):e.toString()).join(`|`)})<!DOCTYPE html>
295
295
  <html lang="en">
296
296
  <head>
297
297
  <meta charset="UTF-8" />
@@ -299,7 +299,7 @@
299
299
  <title>Chart Wheel Explorer</title>
300
300
 
301
301
 
302
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
302
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
303
303
  /*$vite$:1*/</style>
304
304
  </head>
305
305
  <body>
@@ -312,7 +312,7 @@
312
312
  <div id="controls-panel" hidden></div>
313
313
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
314
314
  </div>
315
- ),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),bi=i(`$ZodLiteral`,(e,t)=>{if(C.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?De(e):e?De(e.toString()):String(e)).join(`|`)})<!DOCTYPE html>
315
+ ),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),vi=i(`$ZodLiteral`,(e,t)=>{if(T.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?Ce(e):e?Ce(e.toString()):String(e)).join(`|`)})<!DOCTYPE html>
316
316
  <html lang="en">
317
317
  <head>
318
318
  <meta charset="UTF-8" />
@@ -320,7 +320,7 @@
320
320
  <title>Chart Wheel Explorer</title>
321
321
 
322
322
 
323
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
323
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
324
324
  /*$vite$:1*/</style>
325
325
  </head>
326
326
  <body>
@@ -333,7 +333,7 @@
333
333
  <div id="controls-panel" hidden></div>
334
334
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
335
335
  </div>
336
- ),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),xi=i(`$ZodFile`,(e,t)=>{C.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return r instanceof File||t.issues.push({expected:`file`,code:`invalid_type`,input:r,inst:e}),t}}),Si=i(`$ZodTransform`,(e,t)=>{C.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new s(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new o;return n.value=i,n}});function Ci(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}var wi=i(`$ZodOptional`,(e,t)=>{C.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,h(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),h(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${oe(e.source)})?<!DOCTYPE html>
336
+ ),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),yi=i(`$ZodFile`,(e,t)=>{T.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return r instanceof File||t.issues.push({expected:`file`,code:`invalid_type`,input:r,inst:e}),t}}),bi=i(`$ZodTransform`,(e,t)=>{T.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new s(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new o;return n.value=i,n}});function xi(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}var Si=i(`$ZodOptional`,(e,t)=>{T.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,y(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),y(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${ne(e.source)})?<!DOCTYPE html>
337
337
  <html lang="en">
338
338
  <head>
339
339
  <meta charset="UTF-8" />
@@ -341,7 +341,7 @@
341
341
  <title>Chart Wheel Explorer</title>
342
342
 
343
343
 
344
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
344
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
345
345
  /*$vite$:1*/</style>
346
346
  </head>
347
347
  <body>
@@ -354,7 +354,7 @@
354
354
  <div id="controls-panel" hidden></div>
355
355
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
356
356
  </div>
357
- ):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>Ci(t,e.value)):Ci(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),Ti=i(`$ZodNullable`,(e,t)=>{C.init(e,t),h(e._zod,`optin`,()=>t.innerType._zod.optin),h(e._zod,`optout`,()=>t.innerType._zod.optout),h(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${oe(e.source)}|null)<!DOCTYPE html>
357
+ ):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>xi(t,e.value)):xi(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),Ci=i(`$ZodNullable`,(e,t)=>{T.init(e,t),y(e._zod,`optin`,()=>t.innerType._zod.optin),y(e._zod,`optout`,()=>t.innerType._zod.optout),y(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${ne(e.source)}|null)<!DOCTYPE html>
358
358
  <html lang="en">
359
359
  <head>
360
360
  <meta charset="UTF-8" />
@@ -362,7 +362,7 @@
362
362
  <title>Chart Wheel Explorer</title>
363
363
 
364
364
 
365
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
365
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
366
366
  /*$vite$:1*/</style>
367
367
  </head>
368
368
  <body>
@@ -375,7 +375,7 @@
375
375
  <div id="controls-panel" hidden></div>
376
376
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
377
377
  </div>
378
- ):void 0}),h(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),Ei=i(`$ZodDefault`,(e,t)=>{C.init(e,t),e._zod.optin=`optional`,h(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>Di(e,t)):Di(r,t)}});function Di(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var Oi=i(`$ZodPrefault`,(e,t)=>{C.init(e,t),e._zod.optin=`optional`,h(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),ki=i(`$ZodNonOptional`,(e,t)=>{C.init(e,t),h(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>Ai(t,e)):Ai(i,e)}});function Ai(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}var ji=i(`$ZodSuccess`,(e,t)=>{C.init(e,t),e._zod.parse=(e,n)=>{if(n.direction===`backward`)throw new s(`ZodSuccess`);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>(e.value=t.issues.length===0,e)):(e.value=r.issues.length===0,e)}}),Mi=i(`$ZodCatch`,(e,t)=>{C.init(e,t),h(e._zod,`optin`,()=>t.innerType._zod.optin),h(e._zod,`optout`,()=>t.innerType._zod.optout),h(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>b(e,n,l()))},input:e.value}),e.issues=[]),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>b(e,n,l()))},input:e.value}),e.issues=[]),e)}}),Ni=i(`$ZodNaN`,(e,t)=>{C.init(e,t),e._zod.parse=(t,n)=>((typeof t.value!=`number`||!Number.isNaN(t.value))&&t.issues.push({input:t.value,inst:e,expected:`nan`,code:`invalid_type`}),t)}),Pi=i(`$ZodPipe`,(e,t)=>{C.init(e,t),h(e._zod,`values`,()=>t.in._zod.values),h(e._zod,`optin`,()=>t.in._zod.optin),h(e._zod,`optout`,()=>t.out._zod.optout),h(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>Fi(e,t.in,n)):Fi(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Fi(e,t.out,n)):Fi(r,t.out,n)}});function Fi(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}var Ii=i(`$ZodCodec`,(e,t)=>{C.init(e,t),h(e._zod,`values`,()=>t.in._zod.values),h(e._zod,`optin`,()=>t.in._zod.optin),h(e._zod,`optout`,()=>t.out._zod.optout),h(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if((n.direction||`forward`)===`forward`){let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Li(e,t,n)):Li(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>Li(e,t,n)):Li(r,t,n)}}});function Li(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||`forward`)===`forward`){let r=t.transform(e.value,e);return r instanceof Promise?r.then(r=>Ri(e,r,t.out,n)):Ri(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>Ri(e,r,t.in,n)):Ri(e,r,t.in,n)}}function Ri(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}var zi=i(`$ZodReadonly`,(e,t)=>{C.init(e,t),h(e._zod,`propValues`,()=>t.innerType._zod.propValues),h(e._zod,`values`,()=>t.innerType._zod.values),h(e._zod,`optin`,()=>t.innerType?._zod?.optin),h(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(Bi):Bi(r)}});function Bi(e){return e.value=Object.freeze(e.value),e}var Vi=i(`$ZodTemplateLiteral`,(e,t)=>{C.init(e,t);let n=[];for(let e of t.parts)if(typeof e==`object`&&e){if(!e._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...e._zod.traits].shift()}`);let t=e._zod.pattern instanceof RegExp?e._zod.pattern.source:e._zod.pattern;if(!t)throw Error(`Invalid template literal part: ${e._zod.traits}`);let r=+!!t.startsWith(`^`),i=t.endsWith(`<!DOCTYPE html>
378
+ ):void 0}),y(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),wi=i(`$ZodDefault`,(e,t)=>{T.init(e,t),e._zod.optin=`optional`,y(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>Ti(e,t)):Ti(r,t)}});function Ti(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var Ei=i(`$ZodPrefault`,(e,t)=>{T.init(e,t),e._zod.optin=`optional`,y(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),Di=i(`$ZodNonOptional`,(e,t)=>{T.init(e,t),y(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>Oi(t,e)):Oi(i,e)}});function Oi(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}var ki=i(`$ZodSuccess`,(e,t)=>{T.init(e,t),e._zod.parse=(e,n)=>{if(n.direction===`backward`)throw new s(`ZodSuccess`);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>(e.value=t.issues.length===0,e)):(e.value=r.issues.length===0,e)}}),Ai=i(`$ZodCatch`,(e,t)=>{T.init(e,t),y(e._zod,`optin`,()=>t.innerType._zod.optin),y(e._zod,`optout`,()=>t.innerType._zod.optout),y(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>Re(e,n,l()))},input:e.value}),e.issues=[]),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>Re(e,n,l()))},input:e.value}),e.issues=[]),e)}}),ji=i(`$ZodNaN`,(e,t)=>{T.init(e,t),e._zod.parse=(t,n)=>((typeof t.value!=`number`||!Number.isNaN(t.value))&&t.issues.push({input:t.value,inst:e,expected:`nan`,code:`invalid_type`}),t)}),Mi=i(`$ZodPipe`,(e,t)=>{T.init(e,t),y(e._zod,`values`,()=>t.in._zod.values),y(e._zod,`optin`,()=>t.in._zod.optin),y(e._zod,`optout`,()=>t.out._zod.optout),y(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>Ni(e,t.in,n)):Ni(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Ni(e,t.out,n)):Ni(r,t.out,n)}});function Ni(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}var Pi=i(`$ZodCodec`,(e,t)=>{T.init(e,t),y(e._zod,`values`,()=>t.in._zod.values),y(e._zod,`optin`,()=>t.in._zod.optin),y(e._zod,`optout`,()=>t.out._zod.optout),y(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if((n.direction||`forward`)===`forward`){let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Fi(e,t,n)):Fi(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>Fi(e,t,n)):Fi(r,t,n)}}});function Fi(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||`forward`)===`forward`){let r=t.transform(e.value,e);return r instanceof Promise?r.then(r=>Ii(e,r,t.out,n)):Ii(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>Ii(e,r,t.in,n)):Ii(e,r,t.in,n)}}function Ii(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}var Li=i(`$ZodReadonly`,(e,t)=>{T.init(e,t),y(e._zod,`propValues`,()=>t.innerType._zod.propValues),y(e._zod,`values`,()=>t.innerType._zod.values),y(e._zod,`optin`,()=>t.innerType?._zod?.optin),y(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(Ri):Ri(r)}});function Ri(e){return e.value=Object.freeze(e.value),e}var zi=i(`$ZodTemplateLiteral`,(e,t)=>{T.init(e,t);let n=[];for(let e of t.parts)if(typeof e==`object`&&e){if(!e._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...e._zod.traits].shift()}`);let t=e._zod.pattern instanceof RegExp?e._zod.pattern.source:e._zod.pattern;if(!t)throw Error(`Invalid template literal part: ${e._zod.traits}`);let r=+!!t.startsWith(`^`),i=t.endsWith(`<!DOCTYPE html>
379
379
  <html lang="en">
380
380
  <head>
381
381
  <meta charset="UTF-8" />
@@ -383,7 +383,7 @@
383
383
  <title>Chart Wheel Explorer</title>
384
384
 
385
385
 
386
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
386
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
387
387
  /*$vite$:1*/</style>
388
388
  </head>
389
389
  <body>
@@ -396,7 +396,7 @@
396
396
  <div id="controls-panel" hidden></div>
397
397
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
398
398
  </div>
399
- )?t.length-1:t.length;n.push(t.slice(r,i))}else if(e===null||Ee.has(typeof e))n.push(De(`${e}`));else throw Error(`Invalid template literal part: ${e}`);e._zod.pattern=RegExp(`^${n.join(``)}<!DOCTYPE html>
399
+ )?t.length-1:t.length;n.push(t.slice(r,i))}else if(e===null||Se.has(typeof e))n.push(Ce(`${e}`));else throw Error(`Invalid template literal part: ${e}`);e._zod.pattern=RegExp(`^${n.join(``)}<!DOCTYPE html>
400
400
  <html lang="en">
401
401
  <head>
402
402
  <meta charset="UTF-8" />
@@ -404,7 +404,7 @@
404
404
  <title>Chart Wheel Explorer</title>
405
405
 
406
406
 
407
- <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.aspect-hit{stroke-width:6px}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
407
+ <style>:root{--bg:#faf9f5;--surface:#fff;--text:#1a1a2e;--text-secondary:#5a5a7a;--accent:#6366f1;--accent-hover:#4f46e5;--accent-subtle:#6366f11f;--border:#e8e6f0;--border-strong:#c8c4d8;--shadow:0 4px 16px #00000014;--shadow-md:0 8px 32px #0000001f;--radius:10px;--radius-sm:6px;--planet-sun:#f59e0b;--planet-moon:#94a3b8;--planet-mercury:#10b981;--planet-venus:#ec4899;--planet-mars:#ef4444;--planet-jupiter:#8b5cf6;--planet-saturn:#64748b;--planet-uranus:#06b6d4;--planet-neptune:#3b82f6;--planet-pluto:#a78bfa;--aspect-conjunction:#f59e0b;--aspect-opposition:#ef4444;--aspect-trine:#10b981;--aspect-square:#ef4444;--aspect-sextile:#3b82f6}@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--text:#e6edf3;--text-secondary:#8b949e;--accent:#818cf8;--accent-hover:#a5b4fc;--accent-subtle:#818cf826;--border:#21262d;--border-strong:#30363d;--shadow:0 4px 16px #0006;--shadow-md:0 8px 32px #0009}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5;overflow:hidden}#app{flex-direction:column;height:100vh;display:flex;position:relative}#loading-state{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#chart-container{flex:1;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex;position:relative}#chart-container svg{width:auto;max-width:100%;height:auto;max-height:100%}.hit-region{cursor:pointer;fill:#0000;stroke:#0000;transition:fill .15s,stroke .15s,opacity .2s}.hit-region:hover{fill:var(--accent-subtle);stroke:var(--accent);stroke-width:1px;stroke-opacity:.5}.hit-region.planet-hit{rx:12px;ry:12px}.hit-region.planet-hit:not(.dim){filter:none}.hit-region.dim{opacity:.15}.hit-region.aspect-hit{stroke-width:13px}.hit-region.aspect-hit.highlight{stroke:var(--aspect-color,#888);stroke-opacity:.55}.info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:900;opacity:0;pointer-events:none;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .18s,transform .18s;position:fixed;bottom:52px;left:50%;transform:translate(-50%)translateY(12px)}.info-panel.visible{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.info-header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.info-glyph{text-align:center;flex-shrink:0;width:34px;font-size:28px;line-height:1}.info-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.info-pos{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400}.retro{color:#e05252;font-style:normal}.info-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .12s}.info-close:hover{color:var(--text)}.aspects-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:6px;font-size:10px;font-weight:700}.aspects-list{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.aspect-row{align-items:center;gap:7px;padding:3px 0;font-size:12px;display:flex}.aspect-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.aspect-sym{text-align:center;flex-shrink:0;width:16px;font-size:14px}.aspect-other{color:var(--text);flex:1}.aspect-meta{color:var(--text-secondary);white-space:nowrap;font-size:11px}.no-aspects{color:var(--text-secondary);padding:4px 0;font-size:11px;font-style:italic}.info-hint{color:var(--accent);text-align:center;margin-top:10px;font-size:10px;font-style:italic}#controls-panel{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.controls-label{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.control-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:3px 10px;font-family:inherit;font-size:12px;transition:background .12s,color .12s,border-color .12s}.control-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.control-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.controls-divider{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;box-shadow:var(--shadow-md);z-index:1000;opacity:0;max-width:220px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed}.tooltip.visible{opacity:1}.tooltip-title{color:var(--text);margin-bottom:2px;font-weight:700}.tooltip-detail{color:var(--text-secondary);line-height:1.4}.tooltip-hint{color:var(--accent);margin-top:4px;font-size:10px;font-style:italic}.error-state{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-state .error-icon{margin-bottom:4px;font-size:32px}
408
408
  /*$vite$:1*/</style>
409
409
  </head>
410
410
  <body>
@@ -417,15 +417,15 @@
417
417
  <div id="controls-panel" hidden></div>
418
418
  <div id="tooltip" class="tooltip" aria-live="polite"></div>
419
419
  </div>
420
- ),e._zod.parse=(n,r)=>typeof n.value==`string`?(e._zod.pattern.lastIndex=0,e._zod.pattern.test(n.value)||n.issues.push({input:n.value,inst:e,code:`invalid_format`,format:t.format??`template_literal`,pattern:e._zod.pattern.source}),n):(n.issues.push({input:n.value,inst:e,expected:`template_literal`,code:`invalid_type`}),n)}),Hi=i(`$ZodFunction`,(e,t)=>(C.init(e,t),e._def=t,e._zod.def=t,e.implement=t=>{if(typeof t!=`function`)throw Error(`implement() must be called with a function`);return function(...n){let r=e._def.input?ot(e._def.input,n):n,i=Reflect.apply(t,this,r);return e._def.output?ot(e._def.output,i):i}},e.implementAsync=t=>{if(typeof t!=`function`)throw Error(`implementAsync() must be called with a function`);return async function(...n){let r=e._def.input?await ct(e._def.input,n):n,i=await Reflect.apply(t,this,r);return e._def.output?await ct(e._def.output,i):i}},e._zod.parse=(t,n)=>typeof t.value==`function`?(e._def.output&&e._def.output._zod.def.type===`promise`?t.value=e.implementAsync(t.value):t.value=e.implement(t.value),t):(t.issues.push({code:`invalid_type`,expected:`function`,input:t.value,inst:e}),t),e.input=(...t)=>{let n=e.constructor;return Array.isArray(t[0])?new n({type:`function`,input:new fi({type:`tuple`,items:t[0],rest:t[1]}),output:e._def.output}):new n({type:`function`,input:t[0],output:e._def.output})},e.output=t=>{let n=e.constructor;return new n({type:`function`,input:e._def.input,output:t})},e)),Ui=i(`$ZodPromise`,(e,t)=>{C.init(e,t),e._zod.parse=(e,n)=>Promise.resolve(e.value).then(e=>t.innerType._zod.run({value:e,issues:[]},n))}),Wi=i(`$ZodLazy`,(e,t)=>{C.init(e,t),h(e._zod,`innerType`,()=>t.getter()),h(e._zod,`pattern`,()=>e._zod.innerType?._zod?.pattern),h(e._zod,`propValues`,()=>e._zod.innerType?._zod?.propValues),h(e._zod,`optin`,()=>e._zod.innerType?._zod?.optin??void 0),h(e._zod,`optout`,()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(t,n)=>e._zod.innerType._zod.run(t,n)}),Gi=i(`$ZodCustom`,(e,t)=>{S.init(e,t),C.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>Ki(t,n,r,e));Ki(i,n,r,e)}});function Ki(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(Ue(e))}}var qi=()=>{let e={string:{unit:`حرف`,verb:`أن يحوي`},file:{unit:`بايت`,verb:`أن يحوي`},array:{unit:`عنصر`,verb:`أن يحوي`},set:{unit:`عنصر`,verb:`أن يحوي`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`مدخل`,email:`بريد إلكتروني`,url:`رابط`,emoji:`إيموجي`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`تاريخ ووقت بمعيار ISO`,date:`تاريخ بمعيار ISO`,time:`وقت بمعيار ISO`,duration:`مدة بمعيار ISO`,ipv4:`عنوان IPv4`,ipv6:`عنوان IPv6`,cidrv4:`مدى عناوين بصيغة IPv4`,cidrv6:`مدى عناوين بصيغة IPv6`,base64:`نَص بترميز base64-encoded`,base64url:`نَص بترميز base64url-encoded`,json_string:`نَص على هيئة JSON`,e164:`رقم هاتف بمعيار E.164`,jwt:`JWT`,template_literal:`مدخل`};return e=>{switch(e.code){case`invalid_type`:return`مدخلات غير مقبولة: يفترض إدخال ${e.expected}، ولكن تم إدخال ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`مدخلات غير مقبولة: يفترض إدخال ${v(e.values[0])}`:`اختيار غير مقبول: يتوقع انتقاء أحد هذه الخيارات: ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?` أكبر من اللازم: يفترض أن تكون ${e.origin??`القيمة`} ${n} ${e.maximum.toString()} ${r.unit??`عنصر`}`:`أكبر من اللازم: يفترض أن تكون ${e.origin??`القيمة`} ${n} ${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`أصغر من اللازم: يفترض لـ ${e.origin} أن يكون ${n} ${e.minimum.toString()} ${r.unit}`:`أصغر من اللازم: يفترض لـ ${e.origin} أن يكون ${n} ${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`نَص غير مقبول: يجب أن يبدأ بـ "${e.prefix}"`:t.format===`ends_with`?`نَص غير مقبول: يجب أن ينتهي بـ "${t.suffix}"`:t.format===`includes`?`نَص غير مقبول: يجب أن يتضمَّن "${t.includes}"`:t.format===`regex`?`نَص غير مقبول: يجب أن يطابق النمط ${t.pattern}`:`${r[t.format]??e.format} غير مقبول`}case`not_multiple_of`:return`رقم غير مقبول: يجب أن يكون من مضاعفات ${e.divisor}`;case`unrecognized_keys`:return`معرف${e.keys.length>1?`ات`:``} غريب${e.keys.length>1?`ة`:``}: ${m(e.keys,`، `)}`;case`invalid_key`:return`معرف غير مقبول في ${e.origin}`;case`invalid_union`:return`مدخل غير مقبول`;case`invalid_element`:return`مدخل غير مقبول في ${e.origin}`;default:return`مدخل غير مقبول`}}};function Ji(){return{localeError:qi()}}var Yi=()=>{let e={string:{unit:`simvol`,verb:`olmalıdır`},file:{unit:`bayt`,verb:`olmalıdır`},array:{unit:`element`,verb:`olmalıdır`},set:{unit:`element`,verb:`olmalıdır`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`input`,email:`email address`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO datetime`,date:`ISO date`,time:`ISO time`,duration:`ISO duration`,ipv4:`IPv4 address`,ipv6:`IPv6 address`,cidrv4:`IPv4 range`,cidrv6:`IPv6 range`,base64:`base64-encoded string`,base64url:`base64url-encoded string`,json_string:`JSON string`,e164:`E.164 number`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`Yanlış dəyər: gözlənilən ${e.expected}, daxil olan ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Yanlış dəyər: gözlənilən ${v(e.values[0])}`:`Yanlış seçim: aşağıdakılardan biri olmalıdır: ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Çox böyük: gözlənilən ${e.origin??`dəyər`} ${n}${e.maximum.toString()} ${r.unit??`element`}`:`Çox böyük: gözlənilən ${e.origin??`dəyər`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Çox kiçik: gözlənilən ${e.origin} ${n}${e.minimum.toString()} ${r.unit}`:`Çox kiçik: gözlənilən ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Yanlış mətn: "${t.prefix}" ilə başlamalıdır`:t.format===`ends_with`?`Yanlış mətn: "${t.suffix}" ilə bitməlidir`:t.format===`includes`?`Yanlış mətn: "${t.includes}" daxil olmalıdır`:t.format===`regex`?`Yanlış mətn: ${t.pattern} şablonuna uyğun olmalıdır`:`Yanlış ${r[t.format]??e.format}`}case`not_multiple_of`:return`Yanlış ədəd: ${e.divisor} ilə bölünə bilən olmalıdır`;case`unrecognized_keys`:return`Tanınmayan açar${e.keys.length>1?`lar`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} daxilində yanlış açar`;case`invalid_union`:return`Yanlış dəyər`;case`invalid_element`:return`${e.origin} daxilində yanlış dəyər`;default:return`Yanlış dəyər`}}};function Xi(){return{localeError:Yi()}}function Zi(e,t,n,r){let i=Math.abs(e),a=i%10,o=i%100;return o>=11&&o<=19?r:a===1?t:a>=2&&a<=4?n:r}var Qi=()=>{let e={string:{unit:{one:`сімвал`,few:`сімвалы`,many:`сімвалаў`},verb:`мець`},array:{unit:{one:`элемент`,few:`элементы`,many:`элементаў`},verb:`мець`},set:{unit:{one:`элемент`,few:`элементы`,many:`элементаў`},verb:`мець`},file:{unit:{one:`байт`,few:`байты`,many:`байтаў`},verb:`мець`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`лік`;case`object`:if(Array.isArray(e))return`масіў`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`увод`,email:`email адрас`,url:`URL`,emoji:`эмодзі`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO дата і час`,date:`ISO дата`,time:`ISO час`,duration:`ISO працягласць`,ipv4:`IPv4 адрас`,ipv6:`IPv6 адрас`,cidrv4:`IPv4 дыяпазон`,cidrv6:`IPv6 дыяпазон`,base64:`радок у фармаце base64`,base64url:`радок у фармаце base64url`,json_string:`JSON радок`,e164:`нумар E.164`,jwt:`JWT`,template_literal:`увод`};return e=>{switch(e.code){case`invalid_type`:return`Няправільны ўвод: чакаўся ${e.expected}, атрымана ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Няправільны ўвод: чакалася ${v(e.values[0])}`:`Няправільны варыянт: чакаўся адзін з ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);if(r){let t=Zi(Number(e.maximum),r.unit.one,r.unit.few,r.unit.many);return`Занадта вялікі: чакалася, што ${e.origin??`значэнне`} павінна ${r.verb} ${n}${e.maximum.toString()} ${t}`}return`Занадта вялікі: чакалася, што ${e.origin??`значэнне`} павінна быць ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);if(r){let t=Zi(Number(e.minimum),r.unit.one,r.unit.few,r.unit.many);return`Занадта малы: чакалася, што ${e.origin} павінна ${r.verb} ${n}${e.minimum.toString()} ${t}`}return`Занадта малы: чакалася, што ${e.origin} павінна быць ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Няправільны радок: павінен пачынацца з "${t.prefix}"`:t.format===`ends_with`?`Няправільны радок: павінен заканчвацца на "${t.suffix}"`:t.format===`includes`?`Няправільны радок: павінен змяшчаць "${t.includes}"`:t.format===`regex`?`Няправільны радок: павінен адпавядаць шаблону ${t.pattern}`:`Няправільны ${r[t.format]??e.format}`}case`not_multiple_of`:return`Няправільны лік: павінен быць кратным ${e.divisor}`;case`unrecognized_keys`:return`Нераспазнаны ${e.keys.length>1?`ключы`:`ключ`}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Няправільны ключ у ${e.origin}`;case`invalid_union`:return`Няправільны ўвод`;case`invalid_element`:return`Няправільнае значэнне ў ${e.origin}`;default:return`Няправільны ўвод`}}};function $i(){return{localeError:Qi()}}var ea=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`число`;case`object`:if(Array.isArray(e))return`масив`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},ta=()=>{let e={string:{unit:`символа`,verb:`да съдържа`},file:{unit:`байта`,verb:`да съдържа`},array:{unit:`елемента`,verb:`да съдържа`},set:{unit:`елемента`,verb:`да съдържа`}};function t(t){return e[t]??null}let n={regex:`вход`,email:`имейл адрес`,url:`URL`,emoji:`емоджи`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO време`,date:`ISO дата`,time:`ISO време`,duration:`ISO продължителност`,ipv4:`IPv4 адрес`,ipv6:`IPv6 адрес`,cidrv4:`IPv4 диапазон`,cidrv6:`IPv6 диапазон`,base64:`base64-кодиран низ`,base64url:`base64url-кодиран низ`,json_string:`JSON низ`,e164:`E.164 номер`,jwt:`JWT`,template_literal:`вход`};return e=>{switch(e.code){case`invalid_type`:return`Невалиден вход: очакван ${e.expected}, получен ${ea(e.input)}`;case`invalid_value`:return e.values.length===1?`Невалиден вход: очакван ${v(e.values[0])}`:`Невалидна опция: очаквано едно от ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Твърде голямо: очаква се ${e.origin??`стойност`} да съдържа ${n}${e.maximum.toString()} ${r.unit??`елемента`}`:`Твърде голямо: очаква се ${e.origin??`стойност`} да бъде ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Твърде малко: очаква се ${e.origin} да съдържа ${n}${e.minimum.toString()} ${r.unit}`:`Твърде малко: очаква се ${e.origin} да бъде ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;if(t.format===`starts_with`)return`Невалиден низ: трябва да започва с "${t.prefix}"`;if(t.format===`ends_with`)return`Невалиден низ: трябва да завършва с "${t.suffix}"`;if(t.format===`includes`)return`Невалиден низ: трябва да включва "${t.includes}"`;if(t.format===`regex`)return`Невалиден низ: трябва да съвпада с ${t.pattern}`;let r=`Невалиден`;return t.format===`emoji`&&(r=`Невалидно`),t.format===`datetime`&&(r=`Невалидно`),t.format===`date`&&(r=`Невалидна`),t.format===`time`&&(r=`Невалидно`),t.format===`duration`&&(r=`Невалидна`),`${r} ${n[t.format]??e.format}`}case`not_multiple_of`:return`Невалидно число: трябва да бъде кратно на ${e.divisor}`;case`unrecognized_keys`:return`Неразпознат${e.keys.length>1?`и`:``} ключ${e.keys.length>1?`ове`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Невалиден ключ в ${e.origin}`;case`invalid_union`:return`Невалиден вход`;case`invalid_element`:return`Невалидна стойност в ${e.origin}`;default:return`Невалиден вход`}}};function na(){return{localeError:ta()}}var ra=()=>{let e={string:{unit:`caràcters`,verb:`contenir`},file:{unit:`bytes`,verb:`contenir`},array:{unit:`elements`,verb:`contenir`},set:{unit:`elements`,verb:`contenir`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`entrada`,email:`adreça electrònica`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`data i hora ISO`,date:`data ISO`,time:`hora ISO`,duration:`durada ISO`,ipv4:`adreça IPv4`,ipv6:`adreça IPv6`,cidrv4:`rang IPv4`,cidrv6:`rang IPv6`,base64:`cadena codificada en base64`,base64url:`cadena codificada en base64url`,json_string:`cadena JSON`,e164:`número E.164`,jwt:`JWT`,template_literal:`entrada`};return e=>{switch(e.code){case`invalid_type`:return`Tipus invàlid: s'esperava ${e.expected}, s'ha rebut ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Valor invàlid: s'esperava ${v(e.values[0])}`:`Opció invàlida: s'esperava una de ${m(e.values,` o `)}`;case`too_big`:{let n=e.inclusive?`com a màxim`:`menys de`,r=t(e.origin);return r?`Massa gran: s'esperava que ${e.origin??`el valor`} contingués ${n} ${e.maximum.toString()} ${r.unit??`elements`}`:`Massa gran: s'esperava que ${e.origin??`el valor`} fos ${n} ${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`com a mínim`:`més de`,r=t(e.origin);return r?`Massa petit: s'esperava que ${e.origin} contingués ${n} ${e.minimum.toString()} ${r.unit}`:`Massa petit: s'esperava que ${e.origin} fos ${n} ${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Format invàlid: ha de començar amb "${t.prefix}"`:t.format===`ends_with`?`Format invàlid: ha d'acabar amb "${t.suffix}"`:t.format===`includes`?`Format invàlid: ha d'incloure "${t.includes}"`:t.format===`regex`?`Format invàlid: ha de coincidir amb el patró ${t.pattern}`:`Format invàlid per a ${r[t.format]??e.format}`}case`not_multiple_of`:return`Número invàlid: ha de ser múltiple de ${e.divisor}`;case`unrecognized_keys`:return`Clau${e.keys.length>1?`s`:``} no reconeguda${e.keys.length>1?`s`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Clau invàlida a ${e.origin}`;case`invalid_union`:return`Entrada invàlida`;case`invalid_element`:return`Element invàlid a ${e.origin}`;default:return`Entrada invàlida`}}};function ia(){return{localeError:ra()}}var aa=()=>{let e={string:{unit:`znaků`,verb:`mít`},file:{unit:`bajtů`,verb:`mít`},array:{unit:`prvků`,verb:`mít`},set:{unit:`prvků`,verb:`mít`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`číslo`;case`string`:return`řetězec`;case`boolean`:return`boolean`;case`bigint`:return`bigint`;case`function`:return`funkce`;case`symbol`:return`symbol`;case`undefined`:return`undefined`;case`object`:if(Array.isArray(e))return`pole`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`regulární výraz`,email:`e-mailová adresa`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`datum a čas ve formátu ISO`,date:`datum ve formátu ISO`,time:`čas ve formátu ISO`,duration:`doba trvání ISO`,ipv4:`IPv4 adresa`,ipv6:`IPv6 adresa`,cidrv4:`rozsah IPv4`,cidrv6:`rozsah IPv6`,base64:`řetězec zakódovaný ve formátu base64`,base64url:`řetězec zakódovaný ve formátu base64url`,json_string:`řetězec ve formátu JSON`,e164:`číslo E.164`,jwt:`JWT`,template_literal:`vstup`};return e=>{switch(e.code){case`invalid_type`:return`Neplatný vstup: očekáváno ${e.expected}, obdrženo ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Neplatný vstup: očekáváno ${v(e.values[0])}`:`Neplatná možnost: očekávána jedna z hodnot ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Hodnota je příliš velká: ${e.origin??`hodnota`} musí mít ${n}${e.maximum.toString()} ${r.unit??`prvků`}`:`Hodnota je příliš velká: ${e.origin??`hodnota`} musí být ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Hodnota je příliš malá: ${e.origin??`hodnota`} musí mít ${n}${e.minimum.toString()} ${r.unit??`prvků`}`:`Hodnota je příliš malá: ${e.origin??`hodnota`} musí být ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Neplatný řetězec: musí začínat na "${t.prefix}"`:t.format===`ends_with`?`Neplatný řetězec: musí končit na "${t.suffix}"`:t.format===`includes`?`Neplatný řetězec: musí obsahovat "${t.includes}"`:t.format===`regex`?`Neplatný řetězec: musí odpovídat vzoru ${t.pattern}`:`Neplatný formát ${r[t.format]??e.format}`}case`not_multiple_of`:return`Neplatné číslo: musí být násobkem ${e.divisor}`;case`unrecognized_keys`:return`Neznámé klíče: ${m(e.keys,`, `)}`;case`invalid_key`:return`Neplatný klíč v ${e.origin}`;case`invalid_union`:return`Neplatný vstup`;case`invalid_element`:return`Neplatná hodnota v ${e.origin}`;default:return`Neplatný vstup`}}};function oa(){return{localeError:aa()}}var sa=()=>{let e={string:{unit:`tegn`,verb:`havde`},file:{unit:`bytes`,verb:`havde`},array:{unit:`elementer`,verb:`indeholdt`},set:{unit:`elementer`,verb:`indeholdt`}},t={string:`streng`,number:`tal`,boolean:`boolean`,array:`liste`,object:`objekt`,set:`sæt`,file:`fil`};function n(t){return e[t]??null}function r(e){return t[e]??e}let i=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`tal`;case`object`:return Array.isArray(e)?`liste`:e===null?`null`:Object.getPrototypeOf(e)!==Object.prototype&&e.constructor?e.constructor.name:`objekt`}return t},a={regex:`input`,email:`e-mailadresse`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO dato- og klokkeslæt`,date:`ISO-dato`,time:`ISO-klokkeslæt`,duration:`ISO-varighed`,ipv4:`IPv4-område`,ipv6:`IPv6-område`,cidrv4:`IPv4-spektrum`,cidrv6:`IPv6-spektrum`,base64:`base64-kodet streng`,base64url:`base64url-kodet streng`,json_string:`JSON-streng`,e164:`E.164-nummer`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`Ugyldigt input: forventede ${r(e.expected)}, fik ${r(i(e.input))}`;case`invalid_value`:return e.values.length===1?`Ugyldig værdi: forventede ${v(e.values[0])}`:`Ugyldigt valg: forventede en af følgende ${m(e.values,`|`)}`;case`too_big`:{let t=e.inclusive?`<=`:`<`,i=n(e.origin),a=r(e.origin);return i?`For stor: forventede ${a??`value`} ${i.verb} ${t} ${e.maximum.toString()} ${i.unit??`elementer`}`:`For stor: forventede ${a??`value`} havde ${t} ${e.maximum.toString()}`}case`too_small`:{let t=e.inclusive?`>=`:`>`,i=n(e.origin),a=r(e.origin);return i?`For lille: forventede ${a} ${i.verb} ${t} ${e.minimum.toString()} ${i.unit}`:`For lille: forventede ${a} havde ${t} ${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ugyldig streng: skal starte med "${t.prefix}"`:t.format===`ends_with`?`Ugyldig streng: skal ende med "${t.suffix}"`:t.format===`includes`?`Ugyldig streng: skal indeholde "${t.includes}"`:t.format===`regex`?`Ugyldig streng: skal matche mønsteret ${t.pattern}`:`Ugyldig ${a[t.format]??e.format}`}case`not_multiple_of`:return`Ugyldigt tal: skal være deleligt med ${e.divisor}`;case`unrecognized_keys`:return`${e.keys.length>1?`Ukendte nøgler`:`Ukendt nøgle`}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Ugyldig nøgle i ${e.origin}`;case`invalid_union`:return`Ugyldigt input: matcher ingen af de tilladte typer`;case`invalid_element`:return`Ugyldig værdi i ${e.origin}`;default:return`Ugyldigt input`}}};function ca(){return{localeError:sa()}}var la=()=>{let e={string:{unit:`Zeichen`,verb:`zu haben`},file:{unit:`Bytes`,verb:`zu haben`},array:{unit:`Elemente`,verb:`zu haben`},set:{unit:`Elemente`,verb:`zu haben`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`Zahl`;case`object`:if(Array.isArray(e))return`Array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`Eingabe`,email:`E-Mail-Adresse`,url:`URL`,emoji:`Emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO-Datum und -Uhrzeit`,date:`ISO-Datum`,time:`ISO-Uhrzeit`,duration:`ISO-Dauer`,ipv4:`IPv4-Adresse`,ipv6:`IPv6-Adresse`,cidrv4:`IPv4-Bereich`,cidrv6:`IPv6-Bereich`,base64:`Base64-codierter String`,base64url:`Base64-URL-codierter String`,json_string:`JSON-String`,e164:`E.164-Nummer`,jwt:`JWT`,template_literal:`Eingabe`};return e=>{switch(e.code){case`invalid_type`:return`Ungültige Eingabe: erwartet ${e.expected}, erhalten ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Ungültige Eingabe: erwartet ${v(e.values[0])}`:`Ungültige Option: erwartet eine von ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Zu groß: erwartet, dass ${e.origin??`Wert`} ${n}${e.maximum.toString()} ${r.unit??`Elemente`} hat`:`Zu groß: erwartet, dass ${e.origin??`Wert`} ${n}${e.maximum.toString()} ist`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Zu klein: erwartet, dass ${e.origin} ${n}${e.minimum.toString()} ${r.unit} hat`:`Zu klein: erwartet, dass ${e.origin} ${n}${e.minimum.toString()} ist`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ungültiger String: muss mit "${t.prefix}" beginnen`:t.format===`ends_with`?`Ungültiger String: muss mit "${t.suffix}" enden`:t.format===`includes`?`Ungültiger String: muss "${t.includes}" enthalten`:t.format===`regex`?`Ungültiger String: muss dem Muster ${t.pattern} entsprechen`:`Ungültig: ${r[t.format]??e.format}`}case`not_multiple_of`:return`Ungültige Zahl: muss ein Vielfaches von ${e.divisor} sein`;case`unrecognized_keys`:return`${e.keys.length>1?`Unbekannte Schlüssel`:`Unbekannter Schlüssel`}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Ungültiger Schlüssel in ${e.origin}`;case`invalid_union`:return`Ungültige Eingabe`;case`invalid_element`:return`Ungültiger Wert in ${e.origin}`;default:return`Ungültige Eingabe`}}};function ua(){return{localeError:la()}}var da=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},fa=()=>{let e={string:{unit:`characters`,verb:`to have`},file:{unit:`bytes`,verb:`to have`},array:{unit:`items`,verb:`to have`},set:{unit:`items`,verb:`to have`}};function t(t){return e[t]??null}let n={regex:`input`,email:`email address`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO datetime`,date:`ISO date`,time:`ISO time`,duration:`ISO duration`,ipv4:`IPv4 address`,ipv6:`IPv6 address`,mac:`MAC address`,cidrv4:`IPv4 range`,cidrv6:`IPv6 range`,base64:`base64-encoded string`,base64url:`base64url-encoded string`,json_string:`JSON string`,e164:`E.164 number`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`Invalid input: expected ${e.expected}, received ${da(e.input)}`;case`invalid_value`:return e.values.length===1?`Invalid input: expected ${v(e.values[0])}`:`Invalid option: expected one of ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Too big: expected ${e.origin??`value`} to have ${n}${e.maximum.toString()} ${r.unit??`elements`}`:`Too big: expected ${e.origin??`value`} to be ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Too small: expected ${e.origin} to have ${n}${e.minimum.toString()} ${r.unit}`:`Too small: expected ${e.origin} to be ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Invalid string: must start with "${t.prefix}"`:t.format===`ends_with`?`Invalid string: must end with "${t.suffix}"`:t.format===`includes`?`Invalid string: must include "${t.includes}"`:t.format===`regex`?`Invalid string: must match pattern ${t.pattern}`:`Invalid ${n[t.format]??e.format}`}case`not_multiple_of`:return`Invalid number: must be a multiple of ${e.divisor}`;case`unrecognized_keys`:return`Unrecognized key${e.keys.length>1?`s`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Invalid key in ${e.origin}`;case`invalid_union`:return`Invalid input`;case`invalid_element`:return`Invalid value in ${e.origin}`;default:return`Invalid input`}}};function pa(){return{localeError:fa()}}var ma=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`nombro`;case`object`:if(Array.isArray(e))return`tabelo`;if(e===null)return`senvalora`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},ha=()=>{let e={string:{unit:`karaktrojn`,verb:`havi`},file:{unit:`bajtojn`,verb:`havi`},array:{unit:`elementojn`,verb:`havi`},set:{unit:`elementojn`,verb:`havi`}};function t(t){return e[t]??null}let n={regex:`enigo`,email:`retadreso`,url:`URL`,emoji:`emoĝio`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO-datotempo`,date:`ISO-dato`,time:`ISO-tempo`,duration:`ISO-daŭro`,ipv4:`IPv4-adreso`,ipv6:`IPv6-adreso`,cidrv4:`IPv4-rango`,cidrv6:`IPv6-rango`,base64:`64-ume kodita karaktraro`,base64url:`URL-64-ume kodita karaktraro`,json_string:`JSON-karaktraro`,e164:`E.164-nombro`,jwt:`JWT`,template_literal:`enigo`};return e=>{switch(e.code){case`invalid_type`:return`Nevalida enigo: atendiĝis ${e.expected}, riceviĝis ${ma(e.input)}`;case`invalid_value`:return e.values.length===1?`Nevalida enigo: atendiĝis ${v(e.values[0])}`:`Nevalida opcio: atendiĝis unu el ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Tro granda: atendiĝis ke ${e.origin??`valoro`} havu ${n}${e.maximum.toString()} ${r.unit??`elementojn`}`:`Tro granda: atendiĝis ke ${e.origin??`valoro`} havu ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Tro malgranda: atendiĝis ke ${e.origin} havu ${n}${e.minimum.toString()} ${r.unit}`:`Tro malgranda: atendiĝis ke ${e.origin} estu ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Nevalida karaktraro: devas komenciĝi per "${t.prefix}"`:t.format===`ends_with`?`Nevalida karaktraro: devas finiĝi per "${t.suffix}"`:t.format===`includes`?`Nevalida karaktraro: devas inkluzivi "${t.includes}"`:t.format===`regex`?`Nevalida karaktraro: devas kongrui kun la modelo ${t.pattern}`:`Nevalida ${n[t.format]??e.format}`}case`not_multiple_of`:return`Nevalida nombro: devas esti oblo de ${e.divisor}`;case`unrecognized_keys`:return`Nekonata${e.keys.length>1?`j`:``} ŝlosilo${e.keys.length>1?`j`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Nevalida ŝlosilo en ${e.origin}`;case`invalid_union`:return`Nevalida enigo`;case`invalid_element`:return`Nevalida valoro en ${e.origin}`;default:return`Nevalida enigo`}}};function ga(){return{localeError:ha()}}var _a=()=>{let e={string:{unit:`caracteres`,verb:`tener`},file:{unit:`bytes`,verb:`tener`},array:{unit:`elementos`,verb:`tener`},set:{unit:`elementos`,verb:`tener`}},t={string:`texto`,number:`número`,boolean:`booleano`,array:`arreglo`,object:`objeto`,set:`conjunto`,file:`archivo`,date:`fecha`,bigint:`número grande`,symbol:`símbolo`,undefined:`indefinido`,null:`nulo`,function:`función`,map:`mapa`,record:`registro`,tuple:`tupla`,enum:`enumeración`,union:`unión`,literal:`literal`,promise:`promesa`,void:`vacío`,never:`nunca`,unknown:`desconocido`,any:`cualquiera`};function n(t){return e[t]??null}function r(e){return t[e]??e}let i=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:return Array.isArray(e)?`array`:e===null?`null`:Object.getPrototypeOf(e)===Object.prototype?`object`:e.constructor.name}return t},a={regex:`entrada`,email:`dirección de correo electrónico`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`fecha y hora ISO`,date:`fecha ISO`,time:`hora ISO`,duration:`duración ISO`,ipv4:`dirección IPv4`,ipv6:`dirección IPv6`,cidrv4:`rango IPv4`,cidrv6:`rango IPv6`,base64:`cadena codificada en base64`,base64url:`URL codificada en base64`,json_string:`cadena JSON`,e164:`número E.164`,jwt:`JWT`,template_literal:`entrada`};return e=>{switch(e.code){case`invalid_type`:return`Entrada inválida: se esperaba ${r(e.expected)}, recibido ${r(i(e.input))}`;case`invalid_value`:return e.values.length===1?`Entrada inválida: se esperaba ${v(e.values[0])}`:`Opción inválida: se esperaba una de ${m(e.values,`|`)}`;case`too_big`:{let t=e.inclusive?`<=`:`<`,i=n(e.origin),a=r(e.origin);return i?`Demasiado grande: se esperaba que ${a??`valor`} tuviera ${t}${e.maximum.toString()} ${i.unit??`elementos`}`:`Demasiado grande: se esperaba que ${a??`valor`} fuera ${t}${e.maximum.toString()}`}case`too_small`:{let t=e.inclusive?`>=`:`>`,i=n(e.origin),a=r(e.origin);return i?`Demasiado pequeño: se esperaba que ${a} tuviera ${t}${e.minimum.toString()} ${i.unit}`:`Demasiado pequeño: se esperaba que ${a} fuera ${t}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Cadena inválida: debe comenzar con "${t.prefix}"`:t.format===`ends_with`?`Cadena inválida: debe terminar en "${t.suffix}"`:t.format===`includes`?`Cadena inválida: debe incluir "${t.includes}"`:t.format===`regex`?`Cadena inválida: debe coincidir con el patrón ${t.pattern}`:`Inválido ${a[t.format]??e.format}`}case`not_multiple_of`:return`Número inválido: debe ser múltiplo de ${e.divisor}`;case`unrecognized_keys`:return`Llave${e.keys.length>1?`s`:``} desconocida${e.keys.length>1?`s`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Llave inválida en ${r(e.origin)}`;case`invalid_union`:return`Entrada inválida`;case`invalid_element`:return`Valor inválido en ${r(e.origin)}`;default:return`Entrada inválida`}}};function va(){return{localeError:_a()}}var ya=()=>{let e={string:{unit:`کاراکتر`,verb:`داشته باشد`},file:{unit:`بایت`,verb:`داشته باشد`},array:{unit:`آیتم`,verb:`داشته باشد`},set:{unit:`آیتم`,verb:`داشته باشد`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`عدد`;case`object`:if(Array.isArray(e))return`آرایه`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`ورودی`,email:`آدرس ایمیل`,url:`URL`,emoji:`ایموجی`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`تاریخ و زمان ایزو`,date:`تاریخ ایزو`,time:`زمان ایزو`,duration:`مدت زمان ایزو`,ipv4:`IPv4 آدرس`,ipv6:`IPv6 آدرس`,cidrv4:`IPv4 دامنه`,cidrv6:`IPv6 دامنه`,base64:`base64-encoded رشته`,base64url:`base64url-encoded رشته`,json_string:`JSON رشته`,e164:`E.164 عدد`,jwt:`JWT`,template_literal:`ورودی`};return e=>{switch(e.code){case`invalid_type`:return`ورودی نامعتبر: می‌بایست ${e.expected} می‌بود، ${n(e.input)} دریافت شد`;case`invalid_value`:return e.values.length===1?`ورودی نامعتبر: می‌بایست ${v(e.values[0])} می‌بود`:`گزینه نامعتبر: می‌بایست یکی از ${m(e.values,`|`)} می‌بود`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`خیلی بزرگ: ${e.origin??`مقدار`} باید ${n}${e.maximum.toString()} ${r.unit??`عنصر`} باشد`:`خیلی بزرگ: ${e.origin??`مقدار`} باید ${n}${e.maximum.toString()} باشد`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`خیلی کوچک: ${e.origin} باید ${n}${e.minimum.toString()} ${r.unit} باشد`:`خیلی کوچک: ${e.origin} باید ${n}${e.minimum.toString()} باشد`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`رشته نامعتبر: باید با "${t.prefix}" شروع شود`:t.format===`ends_with`?`رشته نامعتبر: باید با "${t.suffix}" تمام شود`:t.format===`includes`?`رشته نامعتبر: باید شامل "${t.includes}" باشد`:t.format===`regex`?`رشته نامعتبر: باید با الگوی ${t.pattern} مطابقت داشته باشد`:`${r[t.format]??e.format} نامعتبر`}case`not_multiple_of`:return`عدد نامعتبر: باید مضرب ${e.divisor} باشد`;case`unrecognized_keys`:return`کلید${e.keys.length>1?`های`:``} ناشناس: ${m(e.keys,`, `)}`;case`invalid_key`:return`کلید ناشناس در ${e.origin}`;case`invalid_union`:return`ورودی نامعتبر`;case`invalid_element`:return`مقدار نامعتبر در ${e.origin}`;default:return`ورودی نامعتبر`}}};function ba(){return{localeError:ya()}}var xa=()=>{let e={string:{unit:`merkkiä`,subject:`merkkijonon`},file:{unit:`tavua`,subject:`tiedoston`},array:{unit:`alkiota`,subject:`listan`},set:{unit:`alkiota`,subject:`joukon`},number:{unit:``,subject:`luvun`},bigint:{unit:``,subject:`suuren kokonaisluvun`},int:{unit:``,subject:`kokonaisluvun`},date:{unit:``,subject:`päivämäärän`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`säännöllinen lauseke`,email:`sähköpostiosoite`,url:`URL-osoite`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO-aikaleima`,date:`ISO-päivämäärä`,time:`ISO-aika`,duration:`ISO-kesto`,ipv4:`IPv4-osoite`,ipv6:`IPv6-osoite`,cidrv4:`IPv4-alue`,cidrv6:`IPv6-alue`,base64:`base64-koodattu merkkijono`,base64url:`base64url-koodattu merkkijono`,json_string:`JSON-merkkijono`,e164:`E.164-luku`,jwt:`JWT`,template_literal:`templaattimerkkijono`};return e=>{switch(e.code){case`invalid_type`:return`Virheellinen tyyppi: odotettiin ${e.expected}, oli ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Virheellinen syöte: täytyy olla ${v(e.values[0])}`:`Virheellinen valinta: täytyy olla yksi seuraavista: ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Liian suuri: ${r.subject} täytyy olla ${n}${e.maximum.toString()} ${r.unit}`.trim():`Liian suuri: arvon täytyy olla ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Liian pieni: ${r.subject} täytyy olla ${n}${e.minimum.toString()} ${r.unit}`.trim():`Liian pieni: arvon täytyy olla ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Virheellinen syöte: täytyy alkaa "${t.prefix}"`:t.format===`ends_with`?`Virheellinen syöte: täytyy loppua "${t.suffix}"`:t.format===`includes`?`Virheellinen syöte: täytyy sisältää "${t.includes}"`:t.format===`regex`?`Virheellinen syöte: täytyy vastata säännöllistä lauseketta ${t.pattern}`:`Virheellinen ${r[t.format]??e.format}`}case`not_multiple_of`:return`Virheellinen luku: täytyy olla luvun ${e.divisor} monikerta`;case`unrecognized_keys`:return`${e.keys.length>1?`Tuntemattomat avaimet`:`Tuntematon avain`}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Virheellinen avain tietueessa`;case`invalid_union`:return`Virheellinen unioni`;case`invalid_element`:return`Virheellinen arvo joukossa`;default:return`Virheellinen syöte`}}};function Sa(){return{localeError:xa()}}var Ca=()=>{let e={string:{unit:`caractères`,verb:`avoir`},file:{unit:`octets`,verb:`avoir`},array:{unit:`éléments`,verb:`avoir`},set:{unit:`éléments`,verb:`avoir`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`nombre`;case`object`:if(Array.isArray(e))return`tableau`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`entrée`,email:`adresse e-mail`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`date et heure ISO`,date:`date ISO`,time:`heure ISO`,duration:`durée ISO`,ipv4:`adresse IPv4`,ipv6:`adresse IPv6`,cidrv4:`plage IPv4`,cidrv6:`plage IPv6`,base64:`chaîne encodée en base64`,base64url:`chaîne encodée en base64url`,json_string:`chaîne JSON`,e164:`numéro E.164`,jwt:`JWT`,template_literal:`entrée`};return e=>{switch(e.code){case`invalid_type`:return`Entrée invalide : ${e.expected} attendu, ${n(e.input)} reçu`;case`invalid_value`:return e.values.length===1?`Entrée invalide : ${v(e.values[0])} attendu`:`Option invalide : une valeur parmi ${m(e.values,`|`)} attendue`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Trop grand : ${e.origin??`valeur`} doit ${r.verb} ${n}${e.maximum.toString()} ${r.unit??`élément(s)`}`:`Trop grand : ${e.origin??`valeur`} doit être ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Trop petit : ${e.origin} doit ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`Trop petit : ${e.origin} doit être ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Chaîne invalide : doit commencer par "${t.prefix}"`:t.format===`ends_with`?`Chaîne invalide : doit se terminer par "${t.suffix}"`:t.format===`includes`?`Chaîne invalide : doit inclure "${t.includes}"`:t.format===`regex`?`Chaîne invalide : doit correspondre au modèle ${t.pattern}`:`${r[t.format]??e.format} invalide`}case`not_multiple_of`:return`Nombre invalide : doit être un multiple de ${e.divisor}`;case`unrecognized_keys`:return`Clé${e.keys.length>1?`s`:``} non reconnue${e.keys.length>1?`s`:``} : ${m(e.keys,`, `)}`;case`invalid_key`:return`Clé invalide dans ${e.origin}`;case`invalid_union`:return`Entrée invalide`;case`invalid_element`:return`Valeur invalide dans ${e.origin}`;default:return`Entrée invalide`}}};function wa(){return{localeError:Ca()}}var Ta=()=>{let e={string:{unit:`caractères`,verb:`avoir`},file:{unit:`octets`,verb:`avoir`},array:{unit:`éléments`,verb:`avoir`},set:{unit:`éléments`,verb:`avoir`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`entrée`,email:`adresse courriel`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`date-heure ISO`,date:`date ISO`,time:`heure ISO`,duration:`durée ISO`,ipv4:`adresse IPv4`,ipv6:`adresse IPv6`,cidrv4:`plage IPv4`,cidrv6:`plage IPv6`,base64:`chaîne encodée en base64`,base64url:`chaîne encodée en base64url`,json_string:`chaîne JSON`,e164:`numéro E.164`,jwt:`JWT`,template_literal:`entrée`};return e=>{switch(e.code){case`invalid_type`:return`Entrée invalide : attendu ${e.expected}, reçu ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Entrée invalide : attendu ${v(e.values[0])}`:`Option invalide : attendu l'une des valeurs suivantes ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`≤`:`<`,r=t(e.origin);return r?`Trop grand : attendu que ${e.origin??`la valeur`} ait ${n}${e.maximum.toString()} ${r.unit}`:`Trop grand : attendu que ${e.origin??`la valeur`} soit ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`≥`:`>`,r=t(e.origin);return r?`Trop petit : attendu que ${e.origin} ait ${n}${e.minimum.toString()} ${r.unit}`:`Trop petit : attendu que ${e.origin} soit ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Chaîne invalide : doit commencer par "${t.prefix}"`:t.format===`ends_with`?`Chaîne invalide : doit se terminer par "${t.suffix}"`:t.format===`includes`?`Chaîne invalide : doit inclure "${t.includes}"`:t.format===`regex`?`Chaîne invalide : doit correspondre au motif ${t.pattern}`:`${r[t.format]??e.format} invalide`}case`not_multiple_of`:return`Nombre invalide : doit être un multiple de ${e.divisor}`;case`unrecognized_keys`:return`Clé${e.keys.length>1?`s`:``} non reconnue${e.keys.length>1?`s`:``} : ${m(e.keys,`, `)}`;case`invalid_key`:return`Clé invalide dans ${e.origin}`;case`invalid_union`:return`Entrée invalide`;case`invalid_element`:return`Valeur invalide dans ${e.origin}`;default:return`Entrée invalide`}}};function Ea(){return{localeError:Ta()}}var Da=()=>{let e={string:{label:`מחרוזת`,gender:`f`},number:{label:`מספר`,gender:`m`},boolean:{label:`ערך בוליאני`,gender:`m`},bigint:{label:`BigInt`,gender:`m`},date:{label:`תאריך`,gender:`m`},array:{label:`מערך`,gender:`m`},object:{label:`אובייקט`,gender:`m`},null:{label:`ערך ריק (null)`,gender:`m`},undefined:{label:`ערך לא מוגדר (undefined)`,gender:`m`},symbol:{label:`סימבול (Symbol)`,gender:`m`},function:{label:`פונקציה`,gender:`f`},map:{label:`מפה (Map)`,gender:`f`},set:{label:`קבוצה (Set)`,gender:`f`},file:{label:`קובץ`,gender:`m`},promise:{label:`Promise`,gender:`m`},NaN:{label:`NaN`,gender:`m`},unknown:{label:`ערך לא ידוע`,gender:`m`},value:{label:`ערך`,gender:`m`}},t={string:{unit:`תווים`,shortLabel:`קצר`,longLabel:`ארוך`},file:{unit:`בייטים`,shortLabel:`קטן`,longLabel:`גדול`},array:{unit:`פריטים`,shortLabel:`קטן`,longLabel:`גדול`},set:{unit:`פריטים`,shortLabel:`קטן`,longLabel:`גדול`},number:{unit:``,shortLabel:`קטן`,longLabel:`גדול`}},n=t=>t?e[t]:void 0,r=t=>{let r=n(t);return r?r.label:t??e.unknown.label},i=e=>`ה${r(e)}`,a=e=>(n(e)?.gender??`m`)===`f`?`צריכה להיות`:`צריך להיות`,o=e=>e?t[e]??null:null,s=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:return Array.isArray(e)?`array`:e===null?`null`:Object.getPrototypeOf(e)!==Object.prototype&&e.constructor?e.constructor.name:`object`;default:return t}},c={regex:{label:`קלט`,gender:`m`},email:{label:`כתובת אימייל`,gender:`f`},url:{label:`כתובת רשת`,gender:`f`},emoji:{label:`אימוג'י`,gender:`m`},uuid:{label:`UUID`,gender:`m`},nanoid:{label:`nanoid`,gender:`m`},guid:{label:`GUID`,gender:`m`},cuid:{label:`cuid`,gender:`m`},cuid2:{label:`cuid2`,gender:`m`},ulid:{label:`ULID`,gender:`m`},xid:{label:`XID`,gender:`m`},ksuid:{label:`KSUID`,gender:`m`},datetime:{label:`תאריך וזמן ISO`,gender:`m`},date:{label:`תאריך ISO`,gender:`m`},time:{label:`זמן ISO`,gender:`m`},duration:{label:`משך זמן ISO`,gender:`m`},ipv4:{label:`כתובת IPv4`,gender:`f`},ipv6:{label:`כתובת IPv6`,gender:`f`},cidrv4:{label:`טווח IPv4`,gender:`m`},cidrv6:{label:`טווח IPv6`,gender:`m`},base64:{label:`מחרוזת בבסיס 64`,gender:`f`},base64url:{label:`מחרוזת בבסיס 64 לכתובות רשת`,gender:`f`},json_string:{label:`מחרוזת JSON`,gender:`f`},e164:{label:`מספר E.164`,gender:`m`},jwt:{label:`JWT`,gender:`m`},ends_with:{label:`קלט`,gender:`m`},includes:{label:`קלט`,gender:`m`},lowercase:{label:`קלט`,gender:`m`},starts_with:{label:`קלט`,gender:`m`},uppercase:{label:`קלט`,gender:`m`}};return t=>{switch(t.code){case`invalid_type`:{let n=t.expected,i=r(n),a=s(t.input);return`קלט לא תקין: צריך להיות ${i}, התקבל ${e[a]?.label??a}`}case`invalid_value`:{if(t.values.length===1)return`ערך לא תקין: הערך חייב להיות ${v(t.values[0])}`;let e=t.values.map(e=>v(e));if(t.values.length===2)return`ערך לא תקין: האפשרויות המתאימות הן ${e[0]} או ${e[1]}`;let n=e[e.length-1];return`ערך לא תקין: האפשרויות המתאימות הן ${e.slice(0,-1).join(`, `)} או ${n}`}case`too_big`:{let e=o(t.origin),n=i(t.origin??`value`);if(t.origin===`string`)return`${e?.longLabel??`ארוך`} מדי: ${n} צריכה להכיל ${t.maximum.toString()} ${e?.unit??``} ${t.inclusive?`או פחות`:`לכל היותר`}`.trim();if(t.origin===`number`)return`גדול מדי: ${n} צריך להיות ${t.inclusive?`קטן או שווה ל-${t.maximum}`:`קטן מ-${t.maximum}`}`;if(t.origin===`array`||t.origin===`set`)return`גדול מדי: ${n} ${t.origin===`set`?`צריכה`:`צריך`} להכיל ${t.inclusive?`${t.maximum} ${e?.unit??``} או פחות`:`פחות מ-${t.maximum} ${e?.unit??``}`}`.trim();let r=t.inclusive?`<=`:`<`,s=a(t.origin??`value`);return e?.unit?`${e.longLabel} מדי: ${n} ${s} ${r}${t.maximum.toString()} ${e.unit}`:`${e?.longLabel??`גדול`} מדי: ${n} ${s} ${r}${t.maximum.toString()}`}case`too_small`:{let e=o(t.origin),n=i(t.origin??`value`);if(t.origin===`string`)return`${e?.shortLabel??`קצר`} מדי: ${n} צריכה להכיל ${t.minimum.toString()} ${e?.unit??``} ${t.inclusive?`או יותר`:`לפחות`}`.trim();if(t.origin===`number`)return`קטן מדי: ${n} צריך להיות ${t.inclusive?`גדול או שווה ל-${t.minimum}`:`גדול מ-${t.minimum}`}`;if(t.origin===`array`||t.origin===`set`){let r=t.origin===`set`?`צריכה`:`צריך`;return t.minimum===1&&t.inclusive?`קטן מדי: ${n} ${r} להכיל ${t.origin,`לפחות פריט אחד`}`:`קטן מדי: ${n} ${r} להכיל ${t.inclusive?`${t.minimum} ${e?.unit??``} או יותר`:`יותר מ-${t.minimum} ${e?.unit??``}`}`.trim()}let r=t.inclusive?`>=`:`>`,s=a(t.origin??`value`);return e?.unit?`${e.shortLabel} מדי: ${n} ${s} ${r}${t.minimum.toString()} ${e.unit}`:`${e?.shortLabel??`קטן`} מדי: ${n} ${s} ${r}${t.minimum.toString()}`}case`invalid_format`:{let e=t;if(e.format===`starts_with`)return`המחרוזת חייבת להתחיל ב "${e.prefix}"`;if(e.format===`ends_with`)return`המחרוזת חייבת להסתיים ב "${e.suffix}"`;if(e.format===`includes`)return`המחרוזת חייבת לכלול "${e.includes}"`;if(e.format===`regex`)return`המחרוזת חייבת להתאים לתבנית ${e.pattern}`;let n=c[e.format];return`${n?.label??e.format} לא ${(n?.gender??`m`)===`f`?`תקינה`:`תקין`}`}case`not_multiple_of`:return`מספר לא תקין: חייב להיות מכפלה של ${t.divisor}`;case`unrecognized_keys`:return`מפתח${t.keys.length>1?`ות`:``} לא מזוה${t.keys.length>1?`ים`:`ה`}: ${m(t.keys,`, `)}`;case`invalid_key`:return`שדה לא תקין באובייקט`;case`invalid_union`:return`קלט לא תקין`;case`invalid_element`:return`ערך לא תקין ב${i(t.origin??`array`)}`;default:return`קלט לא תקין`}}};function Oa(){return{localeError:Da()}}var ka=()=>{let e={string:{unit:`karakter`,verb:`legyen`},file:{unit:`byte`,verb:`legyen`},array:{unit:`elem`,verb:`legyen`},set:{unit:`elem`,verb:`legyen`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`szám`;case`object`:if(Array.isArray(e))return`tömb`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`bemenet`,email:`email cím`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO időbélyeg`,date:`ISO dátum`,time:`ISO idő`,duration:`ISO időintervallum`,ipv4:`IPv4 cím`,ipv6:`IPv6 cím`,cidrv4:`IPv4 tartomány`,cidrv6:`IPv6 tartomány`,base64:`base64-kódolt string`,base64url:`base64url-kódolt string`,json_string:`JSON string`,e164:`E.164 szám`,jwt:`JWT`,template_literal:`bemenet`};return e=>{switch(e.code){case`invalid_type`:return`Érvénytelen bemenet: a várt érték ${e.expected}, a kapott érték ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Érvénytelen bemenet: a várt érték ${v(e.values[0])}`:`Érvénytelen opció: valamelyik érték várt ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Túl nagy: ${e.origin??`érték`} mérete túl nagy ${n}${e.maximum.toString()} ${r.unit??`elem`}`:`Túl nagy: a bemeneti érték ${e.origin??`érték`} túl nagy: ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Túl kicsi: a bemeneti érték ${e.origin} mérete túl kicsi ${n}${e.minimum.toString()} ${r.unit}`:`Túl kicsi: a bemeneti érték ${e.origin} túl kicsi ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Érvénytelen string: "${t.prefix}" értékkel kell kezdődnie`:t.format===`ends_with`?`Érvénytelen string: "${t.suffix}" értékkel kell végződnie`:t.format===`includes`?`Érvénytelen string: "${t.includes}" értéket kell tartalmaznia`:t.format===`regex`?`Érvénytelen string: ${t.pattern} mintának kell megfelelnie`:`Érvénytelen ${r[t.format]??e.format}`}case`not_multiple_of`:return`Érvénytelen szám: ${e.divisor} többszörösének kell lennie`;case`unrecognized_keys`:return`Ismeretlen kulcs${e.keys.length>1?`s`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Érvénytelen kulcs ${e.origin}`;case`invalid_union`:return`Érvénytelen bemenet`;case`invalid_element`:return`Érvénytelen érték: ${e.origin}`;default:return`Érvénytelen bemenet`}}};function Aa(){return{localeError:ka()}}var ja=()=>{let e={string:{unit:`karakter`,verb:`memiliki`},file:{unit:`byte`,verb:`memiliki`},array:{unit:`item`,verb:`memiliki`},set:{unit:`item`,verb:`memiliki`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`input`,email:`alamat email`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`tanggal dan waktu format ISO`,date:`tanggal format ISO`,time:`jam format ISO`,duration:`durasi format ISO`,ipv4:`alamat IPv4`,ipv6:`alamat IPv6`,cidrv4:`rentang alamat IPv4`,cidrv6:`rentang alamat IPv6`,base64:`string dengan enkode base64`,base64url:`string dengan enkode base64url`,json_string:`string JSON`,e164:`angka E.164`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`Input tidak valid: diharapkan ${e.expected}, diterima ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Input tidak valid: diharapkan ${v(e.values[0])}`:`Pilihan tidak valid: diharapkan salah satu dari ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Terlalu besar: diharapkan ${e.origin??`value`} memiliki ${n}${e.maximum.toString()} ${r.unit??`elemen`}`:`Terlalu besar: diharapkan ${e.origin??`value`} menjadi ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Terlalu kecil: diharapkan ${e.origin} memiliki ${n}${e.minimum.toString()} ${r.unit}`:`Terlalu kecil: diharapkan ${e.origin} menjadi ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`String tidak valid: harus dimulai dengan "${t.prefix}"`:t.format===`ends_with`?`String tidak valid: harus berakhir dengan "${t.suffix}"`:t.format===`includes`?`String tidak valid: harus menyertakan "${t.includes}"`:t.format===`regex`?`String tidak valid: harus sesuai pola ${t.pattern}`:`${r[t.format]??e.format} tidak valid`}case`not_multiple_of`:return`Angka tidak valid: harus kelipatan dari ${e.divisor}`;case`unrecognized_keys`:return`Kunci tidak dikenali ${e.keys.length>1?`s`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Kunci tidak valid di ${e.origin}`;case`invalid_union`:return`Input tidak valid`;case`invalid_element`:return`Nilai tidak valid di ${e.origin}`;default:return`Input tidak valid`}}};function Ma(){return{localeError:ja()}}var Na=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`númer`;case`object`:if(Array.isArray(e))return`fylki`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},Pa=()=>{let e={string:{unit:`stafi`,verb:`að hafa`},file:{unit:`bæti`,verb:`að hafa`},array:{unit:`hluti`,verb:`að hafa`},set:{unit:`hluti`,verb:`að hafa`}};function t(t){return e[t]??null}let n={regex:`gildi`,email:`netfang`,url:`vefslóð`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO dagsetning og tími`,date:`ISO dagsetning`,time:`ISO tími`,duration:`ISO tímalengd`,ipv4:`IPv4 address`,ipv6:`IPv6 address`,cidrv4:`IPv4 range`,cidrv6:`IPv6 range`,base64:`base64-encoded strengur`,base64url:`base64url-encoded strengur`,json_string:`JSON strengur`,e164:`E.164 tölugildi`,jwt:`JWT`,template_literal:`gildi`};return e=>{switch(e.code){case`invalid_type`:return`Rangt gildi: Þú slóst inn ${Na(e.input)} þar sem á að vera ${e.expected}`;case`invalid_value`:return e.values.length===1?`Rangt gildi: gert ráð fyrir ${v(e.values[0])}`:`Ógilt val: má vera eitt af eftirfarandi ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Of stórt: gert er ráð fyrir að ${e.origin??`gildi`} hafi ${n}${e.maximum.toString()} ${r.unit??`hluti`}`:`Of stórt: gert er ráð fyrir að ${e.origin??`gildi`} sé ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Of lítið: gert er ráð fyrir að ${e.origin} hafi ${n}${e.minimum.toString()} ${r.unit}`:`Of lítið: gert er ráð fyrir að ${e.origin} sé ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ógildur strengur: verður að byrja á "${t.prefix}"`:t.format===`ends_with`?`Ógildur strengur: verður að enda á "${t.suffix}"`:t.format===`includes`?`Ógildur strengur: verður að innihalda "${t.includes}"`:t.format===`regex`?`Ógildur strengur: verður að fylgja mynstri ${t.pattern}`:`Rangt ${n[t.format]??e.format}`}case`not_multiple_of`:return`Röng tala: verður að vera margfeldi af ${e.divisor}`;case`unrecognized_keys`:return`Óþekkt ${e.keys.length>1?`ir lyklar`:`ur lykill`}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Rangur lykill í ${e.origin}`;case`invalid_union`:return`Rangt gildi`;case`invalid_element`:return`Rangt gildi í ${e.origin}`;default:return`Rangt gildi`}}};function Fa(){return{localeError:Pa()}}var Ia=()=>{let e={string:{unit:`caratteri`,verb:`avere`},file:{unit:`byte`,verb:`avere`},array:{unit:`elementi`,verb:`avere`},set:{unit:`elementi`,verb:`avere`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`numero`;case`object`:if(Array.isArray(e))return`vettore`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`input`,email:`indirizzo email`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`data e ora ISO`,date:`data ISO`,time:`ora ISO`,duration:`durata ISO`,ipv4:`indirizzo IPv4`,ipv6:`indirizzo IPv6`,cidrv4:`intervallo IPv4`,cidrv6:`intervallo IPv6`,base64:`stringa codificata in base64`,base64url:`URL codificata in base64`,json_string:`stringa JSON`,e164:`numero E.164`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`Input non valido: atteso ${e.expected}, ricevuto ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Input non valido: atteso ${v(e.values[0])}`:`Opzione non valida: atteso uno tra ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Troppo grande: ${e.origin??`valore`} deve avere ${n}${e.maximum.toString()} ${r.unit??`elementi`}`:`Troppo grande: ${e.origin??`valore`} deve essere ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Troppo piccolo: ${e.origin} deve avere ${n}${e.minimum.toString()} ${r.unit}`:`Troppo piccolo: ${e.origin} deve essere ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Stringa non valida: deve iniziare con "${t.prefix}"`:t.format===`ends_with`?`Stringa non valida: deve terminare con "${t.suffix}"`:t.format===`includes`?`Stringa non valida: deve includere "${t.includes}"`:t.format===`regex`?`Stringa non valida: deve corrispondere al pattern ${t.pattern}`:`Invalid ${r[t.format]??e.format}`}case`not_multiple_of`:return`Numero non valido: deve essere un multiplo di ${e.divisor}`;case`unrecognized_keys`:return`Chiav${e.keys.length>1?`i`:`e`} non riconosciut${e.keys.length>1?`e`:`a`}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Chiave non valida in ${e.origin}`;case`invalid_union`:return`Input non valido`;case`invalid_element`:return`Valore non valido in ${e.origin}`;default:return`Input non valido`}}};function La(){return{localeError:Ia()}}var Ra=()=>{let e={string:{unit:`文字`,verb:`である`},file:{unit:`バイト`,verb:`である`},array:{unit:`要素`,verb:`である`},set:{unit:`要素`,verb:`である`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`数値`;case`object`:if(Array.isArray(e))return`配列`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`入力値`,email:`メールアドレス`,url:`URL`,emoji:`絵文字`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO日時`,date:`ISO日付`,time:`ISO時刻`,duration:`ISO期間`,ipv4:`IPv4アドレス`,ipv6:`IPv6アドレス`,cidrv4:`IPv4範囲`,cidrv6:`IPv6範囲`,base64:`base64エンコード文字列`,base64url:`base64urlエンコード文字列`,json_string:`JSON文字列`,e164:`E.164番号`,jwt:`JWT`,template_literal:`入力値`};return e=>{switch(e.code){case`invalid_type`:return`無効な入力: ${e.expected}が期待されましたが、${n(e.input)}が入力されました`;case`invalid_value`:return e.values.length===1?`無効な入力: ${v(e.values[0])}が期待されました`:`無効な選択: ${m(e.values,`、`)}のいずれかである必要があります`;case`too_big`:{let n=e.inclusive?`以下である`:`より小さい`,r=t(e.origin);return r?`大きすぎる値: ${e.origin??`値`}は${e.maximum.toString()}${r.unit??`要素`}${n}必要があります`:`大きすぎる値: ${e.origin??`値`}は${e.maximum.toString()}${n}必要があります`}case`too_small`:{let n=e.inclusive?`以上である`:`より大きい`,r=t(e.origin);return r?`小さすぎる値: ${e.origin}は${e.minimum.toString()}${r.unit}${n}必要があります`:`小さすぎる値: ${e.origin}は${e.minimum.toString()}${n}必要があります`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`無効な文字列: "${t.prefix}"で始まる必要があります`:t.format===`ends_with`?`無効な文字列: "${t.suffix}"で終わる必要があります`:t.format===`includes`?`無効な文字列: "${t.includes}"を含む必要があります`:t.format===`regex`?`無効な文字列: パターン${t.pattern}に一致する必要があります`:`無効な${r[t.format]??e.format}`}case`not_multiple_of`:return`無効な数値: ${e.divisor}の倍数である必要があります`;case`unrecognized_keys`:return`認識されていないキー${e.keys.length>1?`群`:``}: ${m(e.keys,`、`)}`;case`invalid_key`:return`${e.origin}内の無効なキー`;case`invalid_union`:return`無効な入力`;case`invalid_element`:return`${e.origin}内の無効な値`;default:return`無効な入力`}}};function za(){return{localeError:Ra()}}var Ba=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`რიცხვი`;case`object`:if(Array.isArray(e))return`მასივი`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return{string:`სტრინგი`,boolean:`ბულეანი`,undefined:`undefined`,bigint:`bigint`,symbol:`symbol`,function:`ფუნქცია`}[t]??t},Va=()=>{let e={string:{unit:`სიმბოლო`,verb:`უნდა შეიცავდეს`},file:{unit:`ბაიტი`,verb:`უნდა შეიცავდეს`},array:{unit:`ელემენტი`,verb:`უნდა შეიცავდეს`},set:{unit:`ელემენტი`,verb:`უნდა შეიცავდეს`}};function t(t){return e[t]??null}let n={regex:`შეყვანა`,email:`ელ-ფოსტის მისამართი`,url:`URL`,emoji:`ემოჯი`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`თარიღი-დრო`,date:`თარიღი`,time:`დრო`,duration:`ხანგრძლივობა`,ipv4:`IPv4 მისამართი`,ipv6:`IPv6 მისამართი`,cidrv4:`IPv4 დიაპაზონი`,cidrv6:`IPv6 დიაპაზონი`,base64:`base64-კოდირებული სტრინგი`,base64url:`base64url-კოდირებული სტრინგი`,json_string:`JSON სტრინგი`,e164:`E.164 ნომერი`,jwt:`JWT`,template_literal:`შეყვანა`};return e=>{switch(e.code){case`invalid_type`:return`არასწორი შეყვანა: მოსალოდნელი ${e.expected}, მიღებული ${Ba(e.input)}`;case`invalid_value`:return e.values.length===1?`არასწორი შეყვანა: მოსალოდნელი ${v(e.values[0])}`:`არასწორი ვარიანტი: მოსალოდნელია ერთ-ერთი ${m(e.values,`|`)}-დან`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`ზედმეტად დიდი: მოსალოდნელი ${e.origin??`მნიშვნელობა`} ${r.verb} ${n}${e.maximum.toString()} ${r.unit}`:`ზედმეტად დიდი: მოსალოდნელი ${e.origin??`მნიშვნელობა`} იყოს ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`ზედმეტად პატარა: მოსალოდნელი ${e.origin} ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`ზედმეტად პატარა: მოსალოდნელი ${e.origin} იყოს ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`არასწორი სტრინგი: უნდა იწყებოდეს "${t.prefix}"-ით`:t.format===`ends_with`?`არასწორი სტრინგი: უნდა მთავრდებოდეს "${t.suffix}"-ით`:t.format===`includes`?`არასწორი სტრინგი: უნდა შეიცავდეს "${t.includes}"-ს`:t.format===`regex`?`არასწორი სტრინგი: უნდა შეესაბამებოდეს შაბლონს ${t.pattern}`:`არასწორი ${n[t.format]??e.format}`}case`not_multiple_of`:return`არასწორი რიცხვი: უნდა იყოს ${e.divisor}-ის ჯერადი`;case`unrecognized_keys`:return`უცნობი გასაღებ${e.keys.length>1?`ები`:`ი`}: ${m(e.keys,`, `)}`;case`invalid_key`:return`არასწორი გასაღები ${e.origin}-ში`;case`invalid_union`:return`არასწორი შეყვანა`;case`invalid_element`:return`არასწორი მნიშვნელობა ${e.origin}-ში`;default:return`არასწორი შეყვანა`}}};function Ha(){return{localeError:Va()}}var Ua=()=>{let e={string:{unit:`តួអក្សរ`,verb:`គួរមាន`},file:{unit:`បៃ`,verb:`គួរមាន`},array:{unit:`ធាតុ`,verb:`គួរមាន`},set:{unit:`ធាតុ`,verb:`គួរមាន`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`មិនមែនជាលេខ (NaN)`:`លេខ`;case`object`:if(Array.isArray(e))return`អារេ (Array)`;if(e===null)return`គ្មានតម្លៃ (null)`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`ទិន្នន័យបញ្ចូល`,email:`អាសយដ្ឋានអ៊ីមែល`,url:`URL`,emoji:`សញ្ញាអារម្មណ៍`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`កាលបរិច្ឆេទ និងម៉ោង ISO`,date:`កាលបរិច្ឆេទ ISO`,time:`ម៉ោង ISO`,duration:`រយៈពេល ISO`,ipv4:`អាសយដ្ឋាន IPv4`,ipv6:`អាសយដ្ឋាន IPv6`,cidrv4:`ដែនអាសយដ្ឋាន IPv4`,cidrv6:`ដែនអាសយដ្ឋាន IPv6`,base64:`ខ្សែអក្សរអ៊ិកូដ base64`,base64url:`ខ្សែអក្សរអ៊ិកូដ base64url`,json_string:`ខ្សែអក្សរ JSON`,e164:`លេខ E.164`,jwt:`JWT`,template_literal:`ទិន្នន័យបញ្ចូល`};return e=>{switch(e.code){case`invalid_type`:return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${e.expected} ប៉ុន្តែទទួលបាន ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${v(e.values[0])}`:`ជម្រើសមិនត្រឹមត្រូវ៖ ត្រូវជាមួយក្នុងចំណោម ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`ធំពេក៖ ត្រូវការ ${e.origin??`តម្លៃ`} ${n} ${e.maximum.toString()} ${r.unit??`ធាតុ`}`:`ធំពេក៖ ត្រូវការ ${e.origin??`តម្លៃ`} ${n} ${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`តូចពេក៖ ត្រូវការ ${e.origin} ${n} ${e.minimum.toString()} ${r.unit}`:`តូចពេក៖ ត្រូវការ ${e.origin} ${n} ${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវចាប់ផ្តើមដោយ "${t.prefix}"`:t.format===`ends_with`?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវបញ្ចប់ដោយ "${t.suffix}"`:t.format===`includes`?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវមាន "${t.includes}"`:t.format===`regex`?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវតែផ្គូផ្គងនឹងទម្រង់ដែលបានកំណត់ ${t.pattern}`:`មិនត្រឹមត្រូវ៖ ${r[t.format]??e.format}`}case`not_multiple_of`:return`លេខមិនត្រឹមត្រូវ៖ ត្រូវតែជាពហុគុណនៃ ${e.divisor}`;case`unrecognized_keys`:return`រកឃើញសោមិនស្គាល់៖ ${m(e.keys,`, `)}`;case`invalid_key`:return`សោមិនត្រឹមត្រូវនៅក្នុង ${e.origin}`;case`invalid_union`:return`ទិន្នន័យមិនត្រឹមត្រូវ`;case`invalid_element`:return`ទិន្នន័យមិនត្រឹមត្រូវនៅក្នុង ${e.origin}`;default:return`ទិន្នន័យមិនត្រឹមត្រូវ`}}};function Wa(){return{localeError:Ua()}}function Ga(){return Wa()}var Ka=()=>{let e={string:{unit:`문자`,verb:`to have`},file:{unit:`바이트`,verb:`to have`},array:{unit:`개`,verb:`to have`},set:{unit:`개`,verb:`to have`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`입력`,email:`이메일 주소`,url:`URL`,emoji:`이모지`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO 날짜시간`,date:`ISO 날짜`,time:`ISO 시간`,duration:`ISO 기간`,ipv4:`IPv4 주소`,ipv6:`IPv6 주소`,cidrv4:`IPv4 범위`,cidrv6:`IPv6 범위`,base64:`base64 인코딩 문자열`,base64url:`base64url 인코딩 문자열`,json_string:`JSON 문자열`,e164:`E.164 번호`,jwt:`JWT`,template_literal:`입력`};return e=>{switch(e.code){case`invalid_type`:return`잘못된 입력: 예상 타입은 ${e.expected}, 받은 타입은 ${n(e.input)}입니다`;case`invalid_value`:return e.values.length===1?`잘못된 입력: 값은 ${v(e.values[0])} 이어야 합니다`:`잘못된 옵션: ${m(e.values,`또는 `)} 중 하나여야 합니다`;case`too_big`:{let n=e.inclusive?`이하`:`미만`,r=n===`미만`?`이어야 합니다`:`여야 합니다`,i=t(e.origin),a=i?.unit??`요소`;return i?`${e.origin??`값`}이 너무 큽니다: ${e.maximum.toString()}${a} ${n}${r}`:`${e.origin??`값`}이 너무 큽니다: ${e.maximum.toString()} ${n}${r}`}case`too_small`:{let n=e.inclusive?`이상`:`초과`,r=n===`이상`?`이어야 합니다`:`여야 합니다`,i=t(e.origin),a=i?.unit??`요소`;return i?`${e.origin??`값`}이 너무 작습니다: ${e.minimum.toString()}${a} ${n}${r}`:`${e.origin??`값`}이 너무 작습니다: ${e.minimum.toString()} ${n}${r}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`잘못된 문자열: "${t.prefix}"(으)로 시작해야 합니다`:t.format===`ends_with`?`잘못된 문자열: "${t.suffix}"(으)로 끝나야 합니다`:t.format===`includes`?`잘못된 문자열: "${t.includes}"을(를) 포함해야 합니다`:t.format===`regex`?`잘못된 문자열: 정규식 ${t.pattern} 패턴과 일치해야 합니다`:`잘못된 ${r[t.format]??e.format}`}case`not_multiple_of`:return`잘못된 숫자: ${e.divisor}의 배수여야 합니다`;case`unrecognized_keys`:return`인식할 수 없는 키: ${m(e.keys,`, `)}`;case`invalid_key`:return`잘못된 키: ${e.origin}`;case`invalid_union`:return`잘못된 입력`;case`invalid_element`:return`잘못된 값: ${e.origin}`;default:return`잘못된 입력`}}};function qa(){return{localeError:Ka()}}var Ja=e=>Ya(typeof e,e),Ya=(e,t=void 0)=>{switch(e){case`number`:return Number.isNaN(t)?`NaN`:`skaičius`;case`bigint`:return`sveikasis skaičius`;case`string`:return`eilutė`;case`boolean`:return`loginė reikšmė`;case`undefined`:case`void`:return`neapibrėžta reikšmė`;case`function`:return`funkcija`;case`symbol`:return`simbolis`;case`object`:return t===void 0?`nežinomas objektas`:t===null?`nulinė reikšmė`:Array.isArray(t)?`masyvas`:Object.getPrototypeOf(t)!==Object.prototype&&t.constructor?t.constructor.name:`objektas`;case`null`:return`nulinė reikšmė`}return e},Xa=e=>e.charAt(0).toUpperCase()+e.slice(1);function Za(e){let t=Math.abs(e),n=t%10,r=t%100;return r>=11&&r<=19||n===0?`many`:n===1?`one`:`few`}var Qa=()=>{let e={string:{unit:{one:`simbolis`,few:`simboliai`,many:`simbolių`},verb:{smaller:{inclusive:`turi būti ne ilgesnė kaip`,notInclusive:`turi būti trumpesnė kaip`},bigger:{inclusive:`turi būti ne trumpesnė kaip`,notInclusive:`turi būti ilgesnė kaip`}}},file:{unit:{one:`baitas`,few:`baitai`,many:`baitų`},verb:{smaller:{inclusive:`turi būti ne didesnis kaip`,notInclusive:`turi būti mažesnis kaip`},bigger:{inclusive:`turi būti ne mažesnis kaip`,notInclusive:`turi būti didesnis kaip`}}},array:{unit:{one:`elementą`,few:`elementus`,many:`elementų`},verb:{smaller:{inclusive:`turi turėti ne daugiau kaip`,notInclusive:`turi turėti mažiau kaip`},bigger:{inclusive:`turi turėti ne mažiau kaip`,notInclusive:`turi turėti daugiau kaip`}}},set:{unit:{one:`elementą`,few:`elementus`,many:`elementų`},verb:{smaller:{inclusive:`turi turėti ne daugiau kaip`,notInclusive:`turi turėti mažiau kaip`},bigger:{inclusive:`turi turėti ne mažiau kaip`,notInclusive:`turi turėti daugiau kaip`}}}};function t(t,n,r,i){let a=e[t]??null;return a===null?a:{unit:a.unit[n],verb:a.verb[i][r?`inclusive`:`notInclusive`]}}let n={regex:`įvestis`,email:`el. pašto adresas`,url:`URL`,emoji:`jaustukas`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO data ir laikas`,date:`ISO data`,time:`ISO laikas`,duration:`ISO trukmė`,ipv4:`IPv4 adresas`,ipv6:`IPv6 adresas`,cidrv4:`IPv4 tinklo prefiksas (CIDR)`,cidrv6:`IPv6 tinklo prefiksas (CIDR)`,base64:`base64 užkoduota eilutė`,base64url:`base64url užkoduota eilutė`,json_string:`JSON eilutė`,e164:`E.164 numeris`,jwt:`JWT`,template_literal:`įvestis`};return e=>{switch(e.code){case`invalid_type`:return`Gautas tipas ${Ja(e.input)}, o tikėtasi - ${Ya(e.expected)}`;case`invalid_value`:return e.values.length===1?`Privalo būti ${v(e.values[0])}`:`Privalo būti vienas iš ${m(e.values,`|`)} pasirinkimų`;case`too_big`:{let n=Ya(e.origin),r=t(e.origin,Za(Number(e.maximum)),e.inclusive??!1,`smaller`);if(r?.verb)return`${Xa(n??e.origin??`reikšmė`)} ${r.verb} ${e.maximum.toString()} ${r.unit??`elementų`}`;let i=e.inclusive?`ne didesnis kaip`:`mažesnis kaip`;return`${Xa(n??e.origin??`reikšmė`)} turi būti ${i} ${e.maximum.toString()} ${r?.unit}`}case`too_small`:{let n=Ya(e.origin),r=t(e.origin,Za(Number(e.minimum)),e.inclusive??!1,`bigger`);if(r?.verb)return`${Xa(n??e.origin??`reikšmė`)} ${r.verb} ${e.minimum.toString()} ${r.unit??`elementų`}`;let i=e.inclusive?`ne mažesnis kaip`:`didesnis kaip`;return`${Xa(n??e.origin??`reikšmė`)} turi būti ${i} ${e.minimum.toString()} ${r?.unit}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Eilutė privalo prasidėti "${t.prefix}"`:t.format===`ends_with`?`Eilutė privalo pasibaigti "${t.suffix}"`:t.format===`includes`?`Eilutė privalo įtraukti "${t.includes}"`:t.format===`regex`?`Eilutė privalo atitikti ${t.pattern}`:`Neteisingas ${n[t.format]??e.format}`}case`not_multiple_of`:return`Skaičius privalo būti ${e.divisor} kartotinis.`;case`unrecognized_keys`:return`Neatpažint${e.keys.length>1?`i`:`as`} rakt${e.keys.length>1?`ai`:`as`}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Rastas klaidingas raktas`;case`invalid_union`:return`Klaidinga įvestis`;case`invalid_element`:return`${Xa(Ya(e.origin)??e.origin??`reikšmė`)} turi klaidingą įvestį`;default:return`Klaidinga įvestis`}}};function $a(){return{localeError:Qa()}}var eo=()=>{let e={string:{unit:`знаци`,verb:`да имаат`},file:{unit:`бајти`,verb:`да имаат`},array:{unit:`ставки`,verb:`да имаат`},set:{unit:`ставки`,verb:`да имаат`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`број`;case`object`:if(Array.isArray(e))return`низа`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`внес`,email:`адреса на е-пошта`,url:`URL`,emoji:`емоџи`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO датум и време`,date:`ISO датум`,time:`ISO време`,duration:`ISO времетраење`,ipv4:`IPv4 адреса`,ipv6:`IPv6 адреса`,cidrv4:`IPv4 опсег`,cidrv6:`IPv6 опсег`,base64:`base64-енкодирана низа`,base64url:`base64url-енкодирана низа`,json_string:`JSON низа`,e164:`E.164 број`,jwt:`JWT`,template_literal:`внес`};return e=>{switch(e.code){case`invalid_type`:return`Грешен внес: се очекува ${e.expected}, примено ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Invalid input: expected ${v(e.values[0])}`:`Грешана опција: се очекува една ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Премногу голем: се очекува ${e.origin??`вредноста`} да има ${n}${e.maximum.toString()} ${r.unit??`елементи`}`:`Премногу голем: се очекува ${e.origin??`вредноста`} да биде ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Премногу мал: се очекува ${e.origin} да има ${n}${e.minimum.toString()} ${r.unit}`:`Премногу мал: се очекува ${e.origin} да биде ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Неважечка низа: мора да започнува со "${t.prefix}"`:t.format===`ends_with`?`Неважечка низа: мора да завршува со "${t.suffix}"`:t.format===`includes`?`Неважечка низа: мора да вклучува "${t.includes}"`:t.format===`regex`?`Неважечка низа: мора да одгоара на патернот ${t.pattern}`:`Invalid ${r[t.format]??e.format}`}case`not_multiple_of`:return`Грешен број: мора да биде делив со ${e.divisor}`;case`unrecognized_keys`:return`${e.keys.length>1?`Непрепознаени клучеви`:`Непрепознаен клуч`}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Грешен клуч во ${e.origin}`;case`invalid_union`:return`Грешен внес`;case`invalid_element`:return`Грешна вредност во ${e.origin}`;default:return`Грешен внес`}}};function to(){return{localeError:eo()}}var no=()=>{let e={string:{unit:`aksara`,verb:`mempunyai`},file:{unit:`bait`,verb:`mempunyai`},array:{unit:`elemen`,verb:`mempunyai`},set:{unit:`elemen`,verb:`mempunyai`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`nombor`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`input`,email:`alamat e-mel`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`tarikh masa ISO`,date:`tarikh ISO`,time:`masa ISO`,duration:`tempoh ISO`,ipv4:`alamat IPv4`,ipv6:`alamat IPv6`,cidrv4:`julat IPv4`,cidrv6:`julat IPv6`,base64:`string dikodkan base64`,base64url:`string dikodkan base64url`,json_string:`string JSON`,e164:`nombor E.164`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`Input tidak sah: dijangka ${e.expected}, diterima ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Input tidak sah: dijangka ${v(e.values[0])}`:`Pilihan tidak sah: dijangka salah satu daripada ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Terlalu besar: dijangka ${e.origin??`nilai`} ${r.verb} ${n}${e.maximum.toString()} ${r.unit??`elemen`}`:`Terlalu besar: dijangka ${e.origin??`nilai`} adalah ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Terlalu kecil: dijangka ${e.origin} ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`Terlalu kecil: dijangka ${e.origin} adalah ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`String tidak sah: mesti bermula dengan "${t.prefix}"`:t.format===`ends_with`?`String tidak sah: mesti berakhir dengan "${t.suffix}"`:t.format===`includes`?`String tidak sah: mesti mengandungi "${t.includes}"`:t.format===`regex`?`String tidak sah: mesti sepadan dengan corak ${t.pattern}`:`${r[t.format]??e.format} tidak sah`}case`not_multiple_of`:return`Nombor tidak sah: perlu gandaan ${e.divisor}`;case`unrecognized_keys`:return`Kunci tidak dikenali: ${m(e.keys,`, `)}`;case`invalid_key`:return`Kunci tidak sah dalam ${e.origin}`;case`invalid_union`:return`Input tidak sah`;case`invalid_element`:return`Nilai tidak sah dalam ${e.origin}`;default:return`Input tidak sah`}}};function ro(){return{localeError:no()}}var io=()=>{let e={string:{unit:`tekens`,verb:`te hebben`},file:{unit:`bytes`,verb:`te hebben`},array:{unit:`elementen`,verb:`te hebben`},set:{unit:`elementen`,verb:`te hebben`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`getal`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`invoer`,email:`emailadres`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO datum en tijd`,date:`ISO datum`,time:`ISO tijd`,duration:`ISO duur`,ipv4:`IPv4-adres`,ipv6:`IPv6-adres`,cidrv4:`IPv4-bereik`,cidrv6:`IPv6-bereik`,base64:`base64-gecodeerde tekst`,base64url:`base64 URL-gecodeerde tekst`,json_string:`JSON string`,e164:`E.164-nummer`,jwt:`JWT`,template_literal:`invoer`};return e=>{switch(e.code){case`invalid_type`:return`Ongeldige invoer: verwacht ${e.expected}, ontving ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Ongeldige invoer: verwacht ${v(e.values[0])}`:`Ongeldige optie: verwacht één van ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Te groot: verwacht dat ${e.origin??`waarde`} ${r.verb} ${n}${e.maximum.toString()} ${r.unit??`elementen`}`:`Te groot: verwacht dat ${e.origin??`waarde`} ${n}${e.maximum.toString()} is`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Te klein: verwacht dat ${e.origin} ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`Te klein: verwacht dat ${e.origin} ${n}${e.minimum.toString()} is`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ongeldige tekst: moet met "${t.prefix}" beginnen`:t.format===`ends_with`?`Ongeldige tekst: moet op "${t.suffix}" eindigen`:t.format===`includes`?`Ongeldige tekst: moet "${t.includes}" bevatten`:t.format===`regex`?`Ongeldige tekst: moet overeenkomen met patroon ${t.pattern}`:`Ongeldig: ${r[t.format]??e.format}`}case`not_multiple_of`:return`Ongeldig getal: moet een veelvoud van ${e.divisor} zijn`;case`unrecognized_keys`:return`Onbekende key${e.keys.length>1?`s`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Ongeldige key in ${e.origin}`;case`invalid_union`:return`Ongeldige invoer`;case`invalid_element`:return`Ongeldige waarde in ${e.origin}`;default:return`Ongeldige invoer`}}};function ao(){return{localeError:io()}}var oo=()=>{let e={string:{unit:`tegn`,verb:`å ha`},file:{unit:`bytes`,verb:`å ha`},array:{unit:`elementer`,verb:`å inneholde`},set:{unit:`elementer`,verb:`å inneholde`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`tall`;case`object`:if(Array.isArray(e))return`liste`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`input`,email:`e-postadresse`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO dato- og klokkeslett`,date:`ISO-dato`,time:`ISO-klokkeslett`,duration:`ISO-varighet`,ipv4:`IPv4-område`,ipv6:`IPv6-område`,cidrv4:`IPv4-spekter`,cidrv6:`IPv6-spekter`,base64:`base64-enkodet streng`,base64url:`base64url-enkodet streng`,json_string:`JSON-streng`,e164:`E.164-nummer`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`Ugyldig input: forventet ${e.expected}, fikk ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Ugyldig verdi: forventet ${v(e.values[0])}`:`Ugyldig valg: forventet en av ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`For stor(t): forventet ${e.origin??`value`} til å ha ${n}${e.maximum.toString()} ${r.unit??`elementer`}`:`For stor(t): forventet ${e.origin??`value`} til å ha ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`For lite(n): forventet ${e.origin} til å ha ${n}${e.minimum.toString()} ${r.unit}`:`For lite(n): forventet ${e.origin} til å ha ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ugyldig streng: må starte med "${t.prefix}"`:t.format===`ends_with`?`Ugyldig streng: må ende med "${t.suffix}"`:t.format===`includes`?`Ugyldig streng: må inneholde "${t.includes}"`:t.format===`regex`?`Ugyldig streng: må matche mønsteret ${t.pattern}`:`Ugyldig ${r[t.format]??e.format}`}case`not_multiple_of`:return`Ugyldig tall: må være et multiplum av ${e.divisor}`;case`unrecognized_keys`:return`${e.keys.length>1?`Ukjente nøkler`:`Ukjent nøkkel`}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Ugyldig nøkkel i ${e.origin}`;case`invalid_union`:return`Ugyldig input`;case`invalid_element`:return`Ugyldig verdi i ${e.origin}`;default:return`Ugyldig input`}}};function so(){return{localeError:oo()}}var co=()=>{let e={string:{unit:`harf`,verb:`olmalıdır`},file:{unit:`bayt`,verb:`olmalıdır`},array:{unit:`unsur`,verb:`olmalıdır`},set:{unit:`unsur`,verb:`olmalıdır`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`numara`;case`object`:if(Array.isArray(e))return`saf`;if(e===null)return`gayb`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`giren`,email:`epostagâh`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO hengâmı`,date:`ISO tarihi`,time:`ISO zamanı`,duration:`ISO müddeti`,ipv4:`IPv4 nişânı`,ipv6:`IPv6 nişânı`,cidrv4:`IPv4 menzili`,cidrv6:`IPv6 menzili`,base64:`base64-şifreli metin`,base64url:`base64url-şifreli metin`,json_string:`JSON metin`,e164:`E.164 sayısı`,jwt:`JWT`,template_literal:`giren`};return e=>{switch(e.code){case`invalid_type`:return`Fâsit giren: umulan ${e.expected}, alınan ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Fâsit giren: umulan ${v(e.values[0])}`:`Fâsit tercih: mûteberler ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Fazla büyük: ${e.origin??`value`}, ${n}${e.maximum.toString()} ${r.unit??`elements`} sahip olmalıydı.`:`Fazla büyük: ${e.origin??`value`}, ${n}${e.maximum.toString()} olmalıydı.`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Fazla küçük: ${e.origin}, ${n}${e.minimum.toString()} ${r.unit} sahip olmalıydı.`:`Fazla küçük: ${e.origin}, ${n}${e.minimum.toString()} olmalıydı.`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Fâsit metin: "${t.prefix}" ile başlamalı.`:t.format===`ends_with`?`Fâsit metin: "${t.suffix}" ile bitmeli.`:t.format===`includes`?`Fâsit metin: "${t.includes}" ihtivâ etmeli.`:t.format===`regex`?`Fâsit metin: ${t.pattern} nakşına uymalı.`:`Fâsit ${r[t.format]??e.format}`}case`not_multiple_of`:return`Fâsit sayı: ${e.divisor} katı olmalıydı.`;case`unrecognized_keys`:return`Tanınmayan anahtar ${e.keys.length>1?`s`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} için tanınmayan anahtar var.`;case`invalid_union`:return`Giren tanınamadı.`;case`invalid_element`:return`${e.origin} için tanınmayan kıymet var.`;default:return`Kıymet tanınamadı.`}}};function lo(){return{localeError:co()}}var uo=()=>{let e={string:{unit:`توکي`,verb:`ولري`},file:{unit:`بایټس`,verb:`ولري`},array:{unit:`توکي`,verb:`ولري`},set:{unit:`توکي`,verb:`ولري`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`عدد`;case`object`:if(Array.isArray(e))return`ارې`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`ورودي`,email:`بریښنالیک`,url:`یو آر ال`,emoji:`ایموجي`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`نیټه او وخت`,date:`نېټه`,time:`وخت`,duration:`موده`,ipv4:`د IPv4 پته`,ipv6:`د IPv6 پته`,cidrv4:`د IPv4 ساحه`,cidrv6:`د IPv6 ساحه`,base64:`base64-encoded متن`,base64url:`base64url-encoded متن`,json_string:`JSON متن`,e164:`د E.164 شمېره`,jwt:`JWT`,template_literal:`ورودي`};return e=>{switch(e.code){case`invalid_type`:return`ناسم ورودي: باید ${e.expected} وای, مګر ${n(e.input)} ترلاسه شو`;case`invalid_value`:return e.values.length===1?`ناسم ورودي: باید ${v(e.values[0])} وای`:`ناسم انتخاب: باید یو له ${m(e.values,`|`)} څخه وای`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`ډیر لوی: ${e.origin??`ارزښت`} باید ${n}${e.maximum.toString()} ${r.unit??`عنصرونه`} ولري`:`ډیر لوی: ${e.origin??`ارزښت`} باید ${n}${e.maximum.toString()} وي`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`ډیر کوچنی: ${e.origin} باید ${n}${e.minimum.toString()} ${r.unit} ولري`:`ډیر کوچنی: ${e.origin} باید ${n}${e.minimum.toString()} وي`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`ناسم متن: باید د "${t.prefix}" سره پیل شي`:t.format===`ends_with`?`ناسم متن: باید د "${t.suffix}" سره پای ته ورسيږي`:t.format===`includes`?`ناسم متن: باید "${t.includes}" ولري`:t.format===`regex`?`ناسم متن: باید د ${t.pattern} سره مطابقت ولري`:`${r[t.format]??e.format} ناسم دی`}case`not_multiple_of`:return`ناسم عدد: باید د ${e.divisor} مضرب وي`;case`unrecognized_keys`:return`ناسم ${e.keys.length>1?`کلیډونه`:`کلیډ`}: ${m(e.keys,`, `)}`;case`invalid_key`:return`ناسم کلیډ په ${e.origin} کې`;case`invalid_union`:return`ناسمه ورودي`;case`invalid_element`:return`ناسم عنصر په ${e.origin} کې`;default:return`ناسمه ورودي`}}};function fo(){return{localeError:uo()}}var po=()=>{let e={string:{unit:`znaków`,verb:`mieć`},file:{unit:`bajtów`,verb:`mieć`},array:{unit:`elementów`,verb:`mieć`},set:{unit:`elementów`,verb:`mieć`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`liczba`;case`object`:if(Array.isArray(e))return`tablica`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`wyrażenie`,email:`adres email`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`data i godzina w formacie ISO`,date:`data w formacie ISO`,time:`godzina w formacie ISO`,duration:`czas trwania ISO`,ipv4:`adres IPv4`,ipv6:`adres IPv6`,cidrv4:`zakres IPv4`,cidrv6:`zakres IPv6`,base64:`ciąg znaków zakodowany w formacie base64`,base64url:`ciąg znaków zakodowany w formacie base64url`,json_string:`ciąg znaków w formacie JSON`,e164:`liczba E.164`,jwt:`JWT`,template_literal:`wejście`};return e=>{switch(e.code){case`invalid_type`:return`Nieprawidłowe dane wejściowe: oczekiwano ${e.expected}, otrzymano ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Nieprawidłowe dane wejściowe: oczekiwano ${v(e.values[0])}`:`Nieprawidłowa opcja: oczekiwano jednej z wartości ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Za duża wartość: oczekiwano, że ${e.origin??`wartość`} będzie mieć ${n}${e.maximum.toString()} ${r.unit??`elementów`}`:`Zbyt duż(y/a/e): oczekiwano, że ${e.origin??`wartość`} będzie wynosić ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Za mała wartość: oczekiwano, że ${e.origin??`wartość`} będzie mieć ${n}${e.minimum.toString()} ${r.unit??`elementów`}`:`Zbyt mał(y/a/e): oczekiwano, że ${e.origin??`wartość`} będzie wynosić ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Nieprawidłowy ciąg znaków: musi zaczynać się od "${t.prefix}"`:t.format===`ends_with`?`Nieprawidłowy ciąg znaków: musi kończyć się na "${t.suffix}"`:t.format===`includes`?`Nieprawidłowy ciąg znaków: musi zawierać "${t.includes}"`:t.format===`regex`?`Nieprawidłowy ciąg znaków: musi odpowiadać wzorcowi ${t.pattern}`:`Nieprawidłow(y/a/e) ${r[t.format]??e.format}`}case`not_multiple_of`:return`Nieprawidłowa liczba: musi być wielokrotnością ${e.divisor}`;case`unrecognized_keys`:return`Nierozpoznane klucze${e.keys.length>1?`s`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Nieprawidłowy klucz w ${e.origin}`;case`invalid_union`:return`Nieprawidłowe dane wejściowe`;case`invalid_element`:return`Nieprawidłowa wartość w ${e.origin}`;default:return`Nieprawidłowe dane wejściowe`}}};function mo(){return{localeError:po()}}var ho=()=>{let e={string:{unit:`caracteres`,verb:`ter`},file:{unit:`bytes`,verb:`ter`},array:{unit:`itens`,verb:`ter`},set:{unit:`itens`,verb:`ter`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`número`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`nulo`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`padrão`,email:`endereço de e-mail`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`data e hora ISO`,date:`data ISO`,time:`hora ISO`,duration:`duração ISO`,ipv4:`endereço IPv4`,ipv6:`endereço IPv6`,cidrv4:`faixa de IPv4`,cidrv6:`faixa de IPv6`,base64:`texto codificado em base64`,base64url:`URL codificada em base64`,json_string:`texto JSON`,e164:`número E.164`,jwt:`JWT`,template_literal:`entrada`};return e=>{switch(e.code){case`invalid_type`:return`Tipo inválido: esperado ${e.expected}, recebido ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Entrada inválida: esperado ${v(e.values[0])}`:`Opção inválida: esperada uma das ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Muito grande: esperado que ${e.origin??`valor`} tivesse ${n}${e.maximum.toString()} ${r.unit??`elementos`}`:`Muito grande: esperado que ${e.origin??`valor`} fosse ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Muito pequeno: esperado que ${e.origin} tivesse ${n}${e.minimum.toString()} ${r.unit}`:`Muito pequeno: esperado que ${e.origin} fosse ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Texto inválido: deve começar com "${t.prefix}"`:t.format===`ends_with`?`Texto inválido: deve terminar com "${t.suffix}"`:t.format===`includes`?`Texto inválido: deve incluir "${t.includes}"`:t.format===`regex`?`Texto inválido: deve corresponder ao padrão ${t.pattern}`:`${r[t.format]??e.format} inválido`}case`not_multiple_of`:return`Número inválido: deve ser múltiplo de ${e.divisor}`;case`unrecognized_keys`:return`Chave${e.keys.length>1?`s`:``} desconhecida${e.keys.length>1?`s`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Chave inválida em ${e.origin}`;case`invalid_union`:return`Entrada inválida`;case`invalid_element`:return`Valor inválido em ${e.origin}`;default:return`Campo inválido`}}};function go(){return{localeError:ho()}}function _o(e,t,n,r){let i=Math.abs(e),a=i%10,o=i%100;return o>=11&&o<=19?r:a===1?t:a>=2&&a<=4?n:r}var vo=()=>{let e={string:{unit:{one:`символ`,few:`символа`,many:`символов`},verb:`иметь`},file:{unit:{one:`байт`,few:`байта`,many:`байт`},verb:`иметь`},array:{unit:{one:`элемент`,few:`элемента`,many:`элементов`},verb:`иметь`},set:{unit:{one:`элемент`,few:`элемента`,many:`элементов`},verb:`иметь`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`число`;case`object`:if(Array.isArray(e))return`массив`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`ввод`,email:`email адрес`,url:`URL`,emoji:`эмодзи`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO дата и время`,date:`ISO дата`,time:`ISO время`,duration:`ISO длительность`,ipv4:`IPv4 адрес`,ipv6:`IPv6 адрес`,cidrv4:`IPv4 диапазон`,cidrv6:`IPv6 диапазон`,base64:`строка в формате base64`,base64url:`строка в формате base64url`,json_string:`JSON строка`,e164:`номер E.164`,jwt:`JWT`,template_literal:`ввод`};return e=>{switch(e.code){case`invalid_type`:return`Неверный ввод: ожидалось ${e.expected}, получено ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Неверный ввод: ожидалось ${v(e.values[0])}`:`Неверный вариант: ожидалось одно из ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);if(r){let t=_o(Number(e.maximum),r.unit.one,r.unit.few,r.unit.many);return`Слишком большое значение: ожидалось, что ${e.origin??`значение`} будет иметь ${n}${e.maximum.toString()} ${t}`}return`Слишком большое значение: ожидалось, что ${e.origin??`значение`} будет ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);if(r){let t=_o(Number(e.minimum),r.unit.one,r.unit.few,r.unit.many);return`Слишком маленькое значение: ожидалось, что ${e.origin} будет иметь ${n}${e.minimum.toString()} ${t}`}return`Слишком маленькое значение: ожидалось, что ${e.origin} будет ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Неверная строка: должна начинаться с "${t.prefix}"`:t.format===`ends_with`?`Неверная строка: должна заканчиваться на "${t.suffix}"`:t.format===`includes`?`Неверная строка: должна содержать "${t.includes}"`:t.format===`regex`?`Неверная строка: должна соответствовать шаблону ${t.pattern}`:`Неверный ${r[t.format]??e.format}`}case`not_multiple_of`:return`Неверное число: должно быть кратным ${e.divisor}`;case`unrecognized_keys`:return`Нераспознанн${e.keys.length>1?`ые`:`ый`} ключ${e.keys.length>1?`и`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Неверный ключ в ${e.origin}`;case`invalid_union`:return`Неверные входные данные`;case`invalid_element`:return`Неверное значение в ${e.origin}`;default:return`Неверные входные данные`}}};function yo(){return{localeError:vo()}}var bo=()=>{let e={string:{unit:`znakov`,verb:`imeti`},file:{unit:`bajtov`,verb:`imeti`},array:{unit:`elementov`,verb:`imeti`},set:{unit:`elementov`,verb:`imeti`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`število`;case`object`:if(Array.isArray(e))return`tabela`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`vnos`,email:`e-poštni naslov`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO datum in čas`,date:`ISO datum`,time:`ISO čas`,duration:`ISO trajanje`,ipv4:`IPv4 naslov`,ipv6:`IPv6 naslov`,cidrv4:`obseg IPv4`,cidrv6:`obseg IPv6`,base64:`base64 kodiran niz`,base64url:`base64url kodiran niz`,json_string:`JSON niz`,e164:`E.164 številka`,jwt:`JWT`,template_literal:`vnos`};return e=>{switch(e.code){case`invalid_type`:return`Neveljaven vnos: pričakovano ${e.expected}, prejeto ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Neveljaven vnos: pričakovano ${v(e.values[0])}`:`Neveljavna možnost: pričakovano eno izmed ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Preveliko: pričakovano, da bo ${e.origin??`vrednost`} imelo ${n}${e.maximum.toString()} ${r.unit??`elementov`}`:`Preveliko: pričakovano, da bo ${e.origin??`vrednost`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Premajhno: pričakovano, da bo ${e.origin} imelo ${n}${e.minimum.toString()} ${r.unit}`:`Premajhno: pričakovano, da bo ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Neveljaven niz: mora se začeti z "${t.prefix}"`:t.format===`ends_with`?`Neveljaven niz: mora se končati z "${t.suffix}"`:t.format===`includes`?`Neveljaven niz: mora vsebovati "${t.includes}"`:t.format===`regex`?`Neveljaven niz: mora ustrezati vzorcu ${t.pattern}`:`Neveljaven ${r[t.format]??e.format}`}case`not_multiple_of`:return`Neveljavno število: mora biti večkratnik ${e.divisor}`;case`unrecognized_keys`:return`Neprepoznan${e.keys.length>1?`i ključi`:` ključ`}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Neveljaven ključ v ${e.origin}`;case`invalid_union`:return`Neveljaven vnos`;case`invalid_element`:return`Neveljavna vrednost v ${e.origin}`;default:return`Neveljaven vnos`}}};function xo(){return{localeError:bo()}}var So=()=>{let e={string:{unit:`tecken`,verb:`att ha`},file:{unit:`bytes`,verb:`att ha`},array:{unit:`objekt`,verb:`att innehålla`},set:{unit:`objekt`,verb:`att innehålla`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`antal`;case`object`:if(Array.isArray(e))return`lista`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`reguljärt uttryck`,email:`e-postadress`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO-datum och tid`,date:`ISO-datum`,time:`ISO-tid`,duration:`ISO-varaktighet`,ipv4:`IPv4-intervall`,ipv6:`IPv6-intervall`,cidrv4:`IPv4-spektrum`,cidrv6:`IPv6-spektrum`,base64:`base64-kodad sträng`,base64url:`base64url-kodad sträng`,json_string:`JSON-sträng`,e164:`E.164-nummer`,jwt:`JWT`,template_literal:`mall-literal`};return e=>{switch(e.code){case`invalid_type`:return`Ogiltig inmatning: förväntat ${e.expected}, fick ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Ogiltig inmatning: förväntat ${v(e.values[0])}`:`Ogiltigt val: förväntade en av ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`För stor(t): förväntade ${e.origin??`värdet`} att ha ${n}${e.maximum.toString()} ${r.unit??`element`}`:`För stor(t): förväntat ${e.origin??`värdet`} att ha ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`För lite(t): förväntade ${e.origin??`värdet`} att ha ${n}${e.minimum.toString()} ${r.unit}`:`För lite(t): förväntade ${e.origin??`värdet`} att ha ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ogiltig sträng: måste börja med "${t.prefix}"`:t.format===`ends_with`?`Ogiltig sträng: måste sluta med "${t.suffix}"`:t.format===`includes`?`Ogiltig sträng: måste innehålla "${t.includes}"`:t.format===`regex`?`Ogiltig sträng: måste matcha mönstret "${t.pattern}"`:`Ogiltig(t) ${r[t.format]??e.format}`}case`not_multiple_of`:return`Ogiltigt tal: måste vara en multipel av ${e.divisor}`;case`unrecognized_keys`:return`${e.keys.length>1?`Okända nycklar`:`Okänd nyckel`}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Ogiltig nyckel i ${e.origin??`värdet`}`;case`invalid_union`:return`Ogiltig input`;case`invalid_element`:return`Ogiltigt värde i ${e.origin??`värdet`}`;default:return`Ogiltig input`}}};function Co(){return{localeError:So()}}var wo=()=>{let e={string:{unit:`எழுத்துக்கள்`,verb:`கொண்டிருக்க வேண்டும்`},file:{unit:`பைட்டுகள்`,verb:`கொண்டிருக்க வேண்டும்`},array:{unit:`உறுப்புகள்`,verb:`கொண்டிருக்க வேண்டும்`},set:{unit:`உறுப்புகள்`,verb:`கொண்டிருக்க வேண்டும்`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`எண் அல்லாதது`:`எண்`;case`object`:if(Array.isArray(e))return`அணி`;if(e===null)return`வெறுமை`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`உள்ளீடு`,email:`மின்னஞ்சல் முகவரி`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO தேதி நேரம்`,date:`ISO தேதி`,time:`ISO நேரம்`,duration:`ISO கால அளவு`,ipv4:`IPv4 முகவரி`,ipv6:`IPv6 முகவரி`,cidrv4:`IPv4 வரம்பு`,cidrv6:`IPv6 வரம்பு`,base64:`base64-encoded சரம்`,base64url:`base64url-encoded சரம்`,json_string:`JSON சரம்`,e164:`E.164 எண்`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${e.expected}, பெறப்பட்டது ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${v(e.values[0])}`:`தவறான விருப்பம்: எதிர்பார்க்கப்பட்டது ${m(e.values,`|`)} இல் ஒன்று`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${e.origin??`மதிப்பு`} ${n}${e.maximum.toString()} ${r.unit??`உறுப்புகள்`} ஆக இருக்க வேண்டும்`:`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${e.origin??`மதிப்பு`} ${n}${e.maximum.toString()} ஆக இருக்க வேண்டும்`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${e.origin} ${n}${e.minimum.toString()} ${r.unit} ஆக இருக்க வேண்டும்`:`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${e.origin} ${n}${e.minimum.toString()} ஆக இருக்க வேண்டும்`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`தவறான சரம்: "${t.prefix}" இல் தொடங்க வேண்டும்`:t.format===`ends_with`?`தவறான சரம்: "${t.suffix}" இல் முடிவடைய வேண்டும்`:t.format===`includes`?`தவறான சரம்: "${t.includes}" ஐ உள்ளடக்க வேண்டும்`:t.format===`regex`?`தவறான சரம்: ${t.pattern} முறைபாட்டுடன் பொருந்த வேண்டும்`:`தவறான ${r[t.format]??e.format}`}case`not_multiple_of`:return`தவறான எண்: ${e.divisor} இன் பலமாக இருக்க வேண்டும்`;case`unrecognized_keys`:return`அடையாளம் தெரியாத விசை${e.keys.length>1?`கள்`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} இல் தவறான விசை`;case`invalid_union`:return`தவறான உள்ளீடு`;case`invalid_element`:return`${e.origin} இல் தவறான மதிப்பு`;default:return`தவறான உள்ளீடு`}}};function To(){return{localeError:wo()}}var Eo=()=>{let e={string:{unit:`ตัวอักษร`,verb:`ควรมี`},file:{unit:`ไบต์`,verb:`ควรมี`},array:{unit:`รายการ`,verb:`ควรมี`},set:{unit:`รายการ`,verb:`ควรมี`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`ไม่ใช่ตัวเลข (NaN)`:`ตัวเลข`;case`object`:if(Array.isArray(e))return`อาร์เรย์ (Array)`;if(e===null)return`ไม่มีค่า (null)`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`ข้อมูลที่ป้อน`,email:`ที่อยู่อีเมล`,url:`URL`,emoji:`อิโมจิ`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`วันที่เวลาแบบ ISO`,date:`วันที่แบบ ISO`,time:`เวลาแบบ ISO`,duration:`ช่วงเวลาแบบ ISO`,ipv4:`ที่อยู่ IPv4`,ipv6:`ที่อยู่ IPv6`,cidrv4:`ช่วง IP แบบ IPv4`,cidrv6:`ช่วง IP แบบ IPv6`,base64:`ข้อความแบบ Base64`,base64url:`ข้อความแบบ Base64 สำหรับ URL`,json_string:`ข้อความแบบ JSON`,e164:`เบอร์โทรศัพท์ระหว่างประเทศ (E.164)`,jwt:`โทเคน JWT`,template_literal:`ข้อมูลที่ป้อน`};return e=>{switch(e.code){case`invalid_type`:return`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น ${e.expected} แต่ได้รับ ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`ค่าไม่ถูกต้อง: ควรเป็น ${v(e.values[0])}`:`ตัวเลือกไม่ถูกต้อง: ควรเป็นหนึ่งใน ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`ไม่เกิน`:`น้อยกว่า`,r=t(e.origin);return r?`เกินกำหนด: ${e.origin??`ค่า`} ควรมี${n} ${e.maximum.toString()} ${r.unit??`รายการ`}`:`เกินกำหนด: ${e.origin??`ค่า`} ควรมี${n} ${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`อย่างน้อย`:`มากกว่า`,r=t(e.origin);return r?`น้อยกว่ากำหนด: ${e.origin} ควรมี${n} ${e.minimum.toString()} ${r.unit}`:`น้อยกว่ากำหนด: ${e.origin} ควรมี${n} ${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`รูปแบบไม่ถูกต้อง: ข้อความต้องขึ้นต้นด้วย "${t.prefix}"`:t.format===`ends_with`?`รูปแบบไม่ถูกต้อง: ข้อความต้องลงท้ายด้วย "${t.suffix}"`:t.format===`includes`?`รูปแบบไม่ถูกต้อง: ข้อความต้องมี "${t.includes}" อยู่ในข้อความ`:t.format===`regex`?`รูปแบบไม่ถูกต้อง: ต้องตรงกับรูปแบบที่กำหนด ${t.pattern}`:`รูปแบบไม่ถูกต้อง: ${r[t.format]??e.format}`}case`not_multiple_of`:return`ตัวเลขไม่ถูกต้อง: ต้องเป็นจำนวนที่หารด้วย ${e.divisor} ได้ลงตัว`;case`unrecognized_keys`:return`พบคีย์ที่ไม่รู้จัก: ${m(e.keys,`, `)}`;case`invalid_key`:return`คีย์ไม่ถูกต้องใน ${e.origin}`;case`invalid_union`:return`ข้อมูลไม่ถูกต้อง: ไม่ตรงกับรูปแบบยูเนียนที่กำหนดไว้`;case`invalid_element`:return`ข้อมูลไม่ถูกต้องใน ${e.origin}`;default:return`ข้อมูลไม่ถูกต้อง`}}};function Do(){return{localeError:Eo()}}var Oo=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},ko=()=>{let e={string:{unit:`karakter`,verb:`olmalı`},file:{unit:`bayt`,verb:`olmalı`},array:{unit:`öğe`,verb:`olmalı`},set:{unit:`öğe`,verb:`olmalı`}};function t(t){return e[t]??null}let n={regex:`girdi`,email:`e-posta adresi`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO tarih ve saat`,date:`ISO tarih`,time:`ISO saat`,duration:`ISO süre`,ipv4:`IPv4 adresi`,ipv6:`IPv6 adresi`,cidrv4:`IPv4 aralığı`,cidrv6:`IPv6 aralığı`,base64:`base64 ile şifrelenmiş metin`,base64url:`base64url ile şifrelenmiş metin`,json_string:`JSON dizesi`,e164:`E.164 sayısı`,jwt:`JWT`,template_literal:`Şablon dizesi`};return e=>{switch(e.code){case`invalid_type`:return`Geçersiz değer: beklenen ${e.expected}, alınan ${Oo(e.input)}`;case`invalid_value`:return e.values.length===1?`Geçersiz değer: beklenen ${v(e.values[0])}`:`Geçersiz seçenek: aşağıdakilerden biri olmalı: ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Çok büyük: beklenen ${e.origin??`değer`} ${n}${e.maximum.toString()} ${r.unit??`öğe`}`:`Çok büyük: beklenen ${e.origin??`değer`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Çok küçük: beklenen ${e.origin} ${n}${e.minimum.toString()} ${r.unit}`:`Çok küçük: beklenen ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Geçersiz metin: "${t.prefix}" ile başlamalı`:t.format===`ends_with`?`Geçersiz metin: "${t.suffix}" ile bitmeli`:t.format===`includes`?`Geçersiz metin: "${t.includes}" içermeli`:t.format===`regex`?`Geçersiz metin: ${t.pattern} desenine uymalı`:`Geçersiz ${n[t.format]??e.format}`}case`not_multiple_of`:return`Geçersiz sayı: ${e.divisor} ile tam bölünebilmeli`;case`unrecognized_keys`:return`Tanınmayan anahtar${e.keys.length>1?`lar`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} içinde geçersiz anahtar`;case`invalid_union`:return`Geçersiz değer`;case`invalid_element`:return`${e.origin} içinde geçersiz değer`;default:return`Geçersiz değer`}}};function Ao(){return{localeError:ko()}}var jo=()=>{let e={string:{unit:`символів`,verb:`матиме`},file:{unit:`байтів`,verb:`матиме`},array:{unit:`елементів`,verb:`матиме`},set:{unit:`елементів`,verb:`матиме`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`число`;case`object`:if(Array.isArray(e))return`масив`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`вхідні дані`,email:`адреса електронної пошти`,url:`URL`,emoji:`емодзі`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`дата та час ISO`,date:`дата ISO`,time:`час ISO`,duration:`тривалість ISO`,ipv4:`адреса IPv4`,ipv6:`адреса IPv6`,cidrv4:`діапазон IPv4`,cidrv6:`діапазон IPv6`,base64:`рядок у кодуванні base64`,base64url:`рядок у кодуванні base64url`,json_string:`рядок JSON`,e164:`номер E.164`,jwt:`JWT`,template_literal:`вхідні дані`};return e=>{switch(e.code){case`invalid_type`:return`Неправильні вхідні дані: очікується ${e.expected}, отримано ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Неправильні вхідні дані: очікується ${v(e.values[0])}`:`Неправильна опція: очікується одне з ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Занадто велике: очікується, що ${e.origin??`значення`} ${r.verb} ${n}${e.maximum.toString()} ${r.unit??`елементів`}`:`Занадто велике: очікується, що ${e.origin??`значення`} буде ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Занадто мале: очікується, що ${e.origin} ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`Занадто мале: очікується, що ${e.origin} буде ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Неправильний рядок: повинен починатися з "${t.prefix}"`:t.format===`ends_with`?`Неправильний рядок: повинен закінчуватися на "${t.suffix}"`:t.format===`includes`?`Неправильний рядок: повинен містити "${t.includes}"`:t.format===`regex`?`Неправильний рядок: повинен відповідати шаблону ${t.pattern}`:`Неправильний ${r[t.format]??e.format}`}case`not_multiple_of`:return`Неправильне число: повинно бути кратним ${e.divisor}`;case`unrecognized_keys`:return`Нерозпізнаний ключ${e.keys.length>1?`і`:``}: ${m(e.keys,`, `)}`;case`invalid_key`:return`Неправильний ключ у ${e.origin}`;case`invalid_union`:return`Неправильні вхідні дані`;case`invalid_element`:return`Неправильне значення у ${e.origin}`;default:return`Неправильні вхідні дані`}}};function Mo(){return{localeError:jo()}}function No(){return Mo()}var Po=()=>{let e={string:{unit:`حروف`,verb:`ہونا`},file:{unit:`بائٹس`,verb:`ہونا`},array:{unit:`آئٹمز`,verb:`ہونا`},set:{unit:`آئٹمز`,verb:`ہونا`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`نمبر`;case`object`:if(Array.isArray(e))return`آرے`;if(e===null)return`نل`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`ان پٹ`,email:`ای میل ایڈریس`,url:`یو آر ایل`,emoji:`ایموجی`,uuid:`یو یو آئی ڈی`,uuidv4:`یو یو آئی ڈی وی 4`,uuidv6:`یو یو آئی ڈی وی 6`,nanoid:`نینو آئی ڈی`,guid:`جی یو آئی ڈی`,cuid:`سی یو آئی ڈی`,cuid2:`سی یو آئی ڈی 2`,ulid:`یو ایل آئی ڈی`,xid:`ایکس آئی ڈی`,ksuid:`کے ایس یو آئی ڈی`,datetime:`آئی ایس او ڈیٹ ٹائم`,date:`آئی ایس او تاریخ`,time:`آئی ایس او وقت`,duration:`آئی ایس او مدت`,ipv4:`آئی پی وی 4 ایڈریس`,ipv6:`آئی پی وی 6 ایڈریس`,cidrv4:`آئی پی وی 4 رینج`,cidrv6:`آئی پی وی 6 رینج`,base64:`بیس 64 ان کوڈڈ سٹرنگ`,base64url:`بیس 64 یو آر ایل ان کوڈڈ سٹرنگ`,json_string:`جے ایس او این سٹرنگ`,e164:`ای 164 نمبر`,jwt:`جے ڈبلیو ٹی`,template_literal:`ان پٹ`};return e=>{switch(e.code){case`invalid_type`:return`غلط ان پٹ: ${e.expected} متوقع تھا، ${n(e.input)} موصول ہوا`;case`invalid_value`:return e.values.length===1?`غلط ان پٹ: ${v(e.values[0])} متوقع تھا`:`غلط آپشن: ${m(e.values,`|`)} میں سے ایک متوقع تھا`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`بہت بڑا: ${e.origin??`ویلیو`} کے ${n}${e.maximum.toString()} ${r.unit??`عناصر`} ہونے متوقع تھے`:`بہت بڑا: ${e.origin??`ویلیو`} کا ${n}${e.maximum.toString()} ہونا متوقع تھا`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`بہت چھوٹا: ${e.origin} کے ${n}${e.minimum.toString()} ${r.unit} ہونے متوقع تھے`:`بہت چھوٹا: ${e.origin} کا ${n}${e.minimum.toString()} ہونا متوقع تھا`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`غلط سٹرنگ: "${t.prefix}" سے شروع ہونا چاہیے`:t.format===`ends_with`?`غلط سٹرنگ: "${t.suffix}" پر ختم ہونا چاہیے`:t.format===`includes`?`غلط سٹرنگ: "${t.includes}" شامل ہونا چاہیے`:t.format===`regex`?`غلط سٹرنگ: پیٹرن ${t.pattern} سے میچ ہونا چاہیے`:`غلط ${r[t.format]??e.format}`}case`not_multiple_of`:return`غلط نمبر: ${e.divisor} کا مضاعف ہونا چاہیے`;case`unrecognized_keys`:return`غیر تسلیم شدہ کی${e.keys.length>1?`ز`:``}: ${m(e.keys,`، `)}`;case`invalid_key`:return`${e.origin} میں غلط کی`;case`invalid_union`:return`غلط ان پٹ`;case`invalid_element`:return`${e.origin} میں غلط ویلیو`;default:return`غلط ان پٹ`}}};function Fo(){return{localeError:Po()}}var Io=()=>{let e={string:{unit:`ký tự`,verb:`có`},file:{unit:`byte`,verb:`có`},array:{unit:`phần tử`,verb:`có`},set:{unit:`phần tử`,verb:`có`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`số`;case`object`:if(Array.isArray(e))return`mảng`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`đầu vào`,email:`địa chỉ email`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ngày giờ ISO`,date:`ngày ISO`,time:`giờ ISO`,duration:`khoảng thời gian ISO`,ipv4:`địa chỉ IPv4`,ipv6:`địa chỉ IPv6`,cidrv4:`dải IPv4`,cidrv6:`dải IPv6`,base64:`chuỗi mã hóa base64`,base64url:`chuỗi mã hóa base64url`,json_string:`chuỗi JSON`,e164:`số E.164`,jwt:`JWT`,template_literal:`đầu vào`};return e=>{switch(e.code){case`invalid_type`:return`Đầu vào không hợp lệ: mong đợi ${e.expected}, nhận được ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Đầu vào không hợp lệ: mong đợi ${v(e.values[0])}`:`Tùy chọn không hợp lệ: mong đợi một trong các giá trị ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Quá lớn: mong đợi ${e.origin??`giá trị`} ${r.verb} ${n}${e.maximum.toString()} ${r.unit??`phần tử`}`:`Quá lớn: mong đợi ${e.origin??`giá trị`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Quá nhỏ: mong đợi ${e.origin} ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`Quá nhỏ: mong đợi ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Chuỗi không hợp lệ: phải bắt đầu bằng "${t.prefix}"`:t.format===`ends_with`?`Chuỗi không hợp lệ: phải kết thúc bằng "${t.suffix}"`:t.format===`includes`?`Chuỗi không hợp lệ: phải bao gồm "${t.includes}"`:t.format===`regex`?`Chuỗi không hợp lệ: phải khớp với mẫu ${t.pattern}`:`${r[t.format]??e.format} không hợp lệ`}case`not_multiple_of`:return`Số không hợp lệ: phải là bội số của ${e.divisor}`;case`unrecognized_keys`:return`Khóa không được nhận dạng: ${m(e.keys,`, `)}`;case`invalid_key`:return`Khóa không hợp lệ trong ${e.origin}`;case`invalid_union`:return`Đầu vào không hợp lệ`;case`invalid_element`:return`Giá trị không hợp lệ trong ${e.origin}`;default:return`Đầu vào không hợp lệ`}}};function Lo(){return{localeError:Io()}}var Ro=()=>{let e={string:{unit:`字符`,verb:`包含`},file:{unit:`字节`,verb:`包含`},array:{unit:`项`,verb:`包含`},set:{unit:`项`,verb:`包含`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`非数字(NaN)`:`数字`;case`object`:if(Array.isArray(e))return`数组`;if(e===null)return`空值(null)`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`输入`,email:`电子邮件`,url:`URL`,emoji:`表情符号`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO日期时间`,date:`ISO日期`,time:`ISO时间`,duration:`ISO时长`,ipv4:`IPv4地址`,ipv6:`IPv6地址`,cidrv4:`IPv4网段`,cidrv6:`IPv6网段`,base64:`base64编码字符串`,base64url:`base64url编码字符串`,json_string:`JSON字符串`,e164:`E.164号码`,jwt:`JWT`,template_literal:`输入`};return e=>{switch(e.code){case`invalid_type`:return`无效输入:期望 ${e.expected},实际接收 ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`无效输入:期望 ${v(e.values[0])}`:`无效选项:期望以下之一 ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`数值过大:期望 ${e.origin??`值`} ${n}${e.maximum.toString()} ${r.unit??`个元素`}`:`数值过大:期望 ${e.origin??`值`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`数值过小:期望 ${e.origin} ${n}${e.minimum.toString()} ${r.unit}`:`数值过小:期望 ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`无效字符串:必须以 "${t.prefix}" 开头`:t.format===`ends_with`?`无效字符串:必须以 "${t.suffix}" 结尾`:t.format===`includes`?`无效字符串:必须包含 "${t.includes}"`:t.format===`regex`?`无效字符串:必须满足正则表达式 ${t.pattern}`:`无效${r[t.format]??e.format}`}case`not_multiple_of`:return`无效数字:必须是 ${e.divisor} 的倍数`;case`unrecognized_keys`:return`出现未知的键(key): ${m(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} 中的键(key)无效`;case`invalid_union`:return`无效输入`;case`invalid_element`:return`${e.origin} 中包含无效值(value)`;default:return`无效输入`}}};function zo(){return{localeError:Ro()}}var Bo=()=>{let e={string:{unit:`字元`,verb:`擁有`},file:{unit:`位元組`,verb:`擁有`},array:{unit:`項目`,verb:`擁有`},set:{unit:`項目`,verb:`擁有`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`輸入`,email:`郵件地址`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO 日期時間`,date:`ISO 日期`,time:`ISO 時間`,duration:`ISO 期間`,ipv4:`IPv4 位址`,ipv6:`IPv6 位址`,cidrv4:`IPv4 範圍`,cidrv6:`IPv6 範圍`,base64:`base64 編碼字串`,base64url:`base64url 編碼字串`,json_string:`JSON 字串`,e164:`E.164 數值`,jwt:`JWT`,template_literal:`輸入`};return e=>{switch(e.code){case`invalid_type`:return`無效的輸入值:預期為 ${e.expected},但收到 ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`無效的輸入值:預期為 ${v(e.values[0])}`:`無效的選項:預期為以下其中之一 ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`數值過大:預期 ${e.origin??`值`} 應為 ${n}${e.maximum.toString()} ${r.unit??`個元素`}`:`數值過大:預期 ${e.origin??`值`} 應為 ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`數值過小:預期 ${e.origin} 應為 ${n}${e.minimum.toString()} ${r.unit}`:`數值過小:預期 ${e.origin} 應為 ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`無效的字串:必須以 "${t.prefix}" 開頭`:t.format===`ends_with`?`無效的字串:必須以 "${t.suffix}" 結尾`:t.format===`includes`?`無效的字串:必須包含 "${t.includes}"`:t.format===`regex`?`無效的字串:必須符合格式 ${t.pattern}`:`無效的 ${r[t.format]??e.format}`}case`not_multiple_of`:return`無效的數字:必須為 ${e.divisor} 的倍數`;case`unrecognized_keys`:return`無法識別的鍵值${e.keys.length>1?`們`:``}:${m(e.keys,`、`)}`;case`invalid_key`:return`${e.origin} 中有無效的鍵值`;case`invalid_union`:return`無效的輸入值`;case`invalid_element`:return`${e.origin} 中有無效的值`;default:return`無效的輸入值`}}};function Vo(){return{localeError:Bo()}}var Ho=()=>{let e={string:{unit:`àmi`,verb:`ní`},file:{unit:`bytes`,verb:`ní`},array:{unit:`nkan`,verb:`ní`},set:{unit:`nkan`,verb:`ní`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`nọ́mbà`;case`object`:if(Array.isArray(e))return`akopọ`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`ẹ̀rọ ìbáwọlé`,email:`àdírẹ́sì ìmẹ́lì`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`àkókò ISO`,date:`ọjọ́ ISO`,time:`àkókò ISO`,duration:`àkókò tó pé ISO`,ipv4:`àdírẹ́sì IPv4`,ipv6:`àdírẹ́sì IPv6`,cidrv4:`àgbègbè IPv4`,cidrv6:`àgbègbè IPv6`,base64:`ọ̀rọ̀ tí a kọ́ ní base64`,base64url:`ọ̀rọ̀ base64url`,json_string:`ọ̀rọ̀ JSON`,e164:`nọ́mbà E.164`,jwt:`JWT`,template_literal:`ẹ̀rọ ìbáwọlé`};return e=>{switch(e.code){case`invalid_type`:return`Ìbáwọlé aṣìṣe: a ní láti fi ${e.expected}, àmọ̀ a rí ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Ìbáwọlé aṣìṣe: a ní láti fi ${v(e.values[0])}`:`Àṣàyàn aṣìṣe: yan ọ̀kan lára ${m(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Tó pọ̀ jù: a ní láti jẹ́ pé ${e.origin??`iye`} ${r.verb} ${n}${e.maximum} ${r.unit}`:`Tó pọ̀ jù: a ní láti jẹ́ ${n}${e.maximum}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Kéré ju: a ní láti jẹ́ pé ${e.origin} ${r.verb} ${n}${e.minimum} ${r.unit}`:`Kéré ju: a ní láti jẹ́ ${n}${e.minimum}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bẹ̀rẹ̀ pẹ̀lú "${t.prefix}"`:t.format===`ends_with`?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ parí pẹ̀lú "${t.suffix}"`:t.format===`includes`?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ ní "${t.includes}"`:t.format===`regex`?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bá àpẹẹrẹ mu ${t.pattern}`:`Aṣìṣe: ${r[t.format]??e.format}`}case`not_multiple_of`:return`Nọ́mbà aṣìṣe: gbọ́dọ̀ jẹ́ èyà pípín ti ${e.divisor}`;case`unrecognized_keys`:return`Bọtìnì àìmọ̀: ${m(e.keys,`, `)}`;case`invalid_key`:return`Bọtìnì aṣìṣe nínú ${e.origin}`;case`invalid_union`:return`Ìbáwọlé aṣìṣe`;case`invalid_element`:return`Iye aṣìṣe nínú ${e.origin}`;default:return`Ìbáwọlé aṣìṣe`}}};function Uo(){return{localeError:Ho()}}var Wo=t({ar:()=>Ji,az:()=>Xi,be:()=>$i,bg:()=>na,ca:()=>ia,cs:()=>oa,da:()=>ca,de:()=>ua,en:()=>pa,eo:()=>ga,es:()=>va,fa:()=>ba,fi:()=>Sa,fr:()=>wa,frCA:()=>Ea,he:()=>Oa,hu:()=>Aa,id:()=>Ma,is:()=>Fa,it:()=>La,ja:()=>za,ka:()=>Ha,kh:()=>Ga,km:()=>Wa,ko:()=>qa,lt:()=>$a,mk:()=>to,ms:()=>ro,nl:()=>ao,no:()=>so,ota:()=>lo,pl:()=>mo,ps:()=>fo,pt:()=>go,ru:()=>yo,sl:()=>xo,sv:()=>Co,ta:()=>To,th:()=>Do,tr:()=>Ao,ua:()=>No,uk:()=>Mo,ur:()=>Fo,vi:()=>Lo,yo:()=>Uo,zhCN:()=>zo,zhTW:()=>Vo}),Go,Ko=Symbol(`ZodOutput`),qo=Symbol(`ZodInput`),Jo=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];if(this._map.set(e,n),n&&typeof n==`object`&&`id`in n){if(this._idmap.has(n.id))throw Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function Yo(){return new Jo}(Go=globalThis).__zod_globalRegistry??(Go.__zod_globalRegistry=Yo());var T=globalThis.__zod_globalRegistry;function Xo(e,t){return new e({type:`string`,..._(t)})}function Zo(e,t){return new e({type:`string`,coerce:!0,..._(t)})}function Qo(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,..._(t)})}function $o(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,..._(t)})}function es(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,..._(t)})}function ts(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,..._(t)})}function ns(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,..._(t)})}function rs(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,..._(t)})}function is(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,..._(t)})}function as(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,..._(t)})}function os(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,..._(t)})}function ss(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,..._(t)})}function cs(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,..._(t)})}function ls(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,..._(t)})}function us(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,..._(t)})}function ds(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,..._(t)})}function fs(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,..._(t)})}function ps(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,..._(t)})}function ms(e,t){return new e({type:`string`,format:`mac`,check:`string_format`,abort:!1,..._(t)})}function hs(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,..._(t)})}function gs(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,..._(t)})}function _s(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,..._(t)})}function vs(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,..._(t)})}function ys(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,..._(t)})}function bs(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,..._(t)})}var xs={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};function Ss(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,..._(t)})}function Cs(e,t){return new e({type:`string`,format:`date`,check:`string_format`,..._(t)})}function ws(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,..._(t)})}function Ts(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,..._(t)})}function Es(e,t){return new e({type:`number`,checks:[],..._(t)})}function Ds(e,t){return new e({type:`number`,coerce:!0,checks:[],..._(t)})}function Os(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,..._(t)})}function ks(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`float32`,..._(t)})}function As(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`float64`,..._(t)})}function js(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`int32`,..._(t)})}function Ms(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`uint32`,..._(t)})}function Ns(e,t){return new e({type:`boolean`,..._(t)})}function Ps(e,t){return new e({type:`boolean`,coerce:!0,..._(t)})}function Fs(e,t){return new e({type:`bigint`,..._(t)})}function Is(e,t){return new e({type:`bigint`,coerce:!0,..._(t)})}function Ls(e,t){return new e({type:`bigint`,check:`bigint_format`,abort:!1,format:`int64`,..._(t)})}function Rs(e,t){return new e({type:`bigint`,check:`bigint_format`,abort:!1,format:`uint64`,..._(t)})}function zs(e,t){return new e({type:`symbol`,..._(t)})}function Bs(e,t){return new e({type:`undefined`,..._(t)})}function Vs(e,t){return new e({type:`null`,..._(t)})}function Hs(e){return new e({type:`any`})}function Us(e){return new e({type:`unknown`})}function Ws(e,t){return new e({type:`never`,..._(t)})}function Gs(e,t){return new e({type:`void`,..._(t)})}function Ks(e,t){return new e({type:`date`,..._(t)})}function qs(e,t){return new e({type:`date`,coerce:!0,..._(t)})}function Js(e,t){return new e({type:`nan`,..._(t)})}function Ys(e,t){return new Vn({check:`less_than`,..._(t),value:e,inclusive:!1})}function E(e,t){return new Vn({check:`less_than`,..._(t),value:e,inclusive:!0})}function Xs(e,t){return new Hn({check:`greater_than`,..._(t),value:e,inclusive:!1})}function D(e,t){return new Hn({check:`greater_than`,..._(t),value:e,inclusive:!0})}function Zs(e){return Xs(0,e)}function Qs(e){return Ys(0,e)}function $s(e){return E(0,e)}function ec(e){return D(0,e)}function tc(e,t){return new Un({check:`multiple_of`,..._(t),value:e})}function nc(e,t){return new Kn({check:`max_size`,..._(t),maximum:e})}function rc(e,t){return new qn({check:`min_size`,..._(t),minimum:e})}function ic(e,t){return new Jn({check:`size_equals`,..._(t),size:e})}function ac(e,t){return new Yn({check:`max_length`,..._(t),maximum:e})}function oc(e,t){return new Xn({check:`min_length`,..._(t),minimum:e})}function sc(e,t){return new Zn({check:`length_equals`,..._(t),length:e})}function cc(e,t){return new $n({check:`string_format`,format:`regex`,..._(t),pattern:e})}function lc(e){return new er({check:`string_format`,format:`lowercase`,..._(e)})}function uc(e){return new tr({check:`string_format`,format:`uppercase`,..._(e)})}function dc(e,t){return new nr({check:`string_format`,format:`includes`,..._(t),includes:e})}function fc(e,t){return new rr({check:`string_format`,format:`starts_with`,..._(t),prefix:e})}function pc(e,t){return new ir({check:`string_format`,format:`ends_with`,..._(t),suffix:e})}function mc(e,t,n){return new or({check:`property`,property:e,schema:t,..._(n)})}function hc(e,t){return new sr({check:`mime_type`,mime:e,..._(t)})}function O(e){return new cr({check:`overwrite`,tx:e})}function gc(e){return O(t=>t.normalize(e))}function _c(){return O(e=>e.trim())}function vc(){return O(e=>e.toLowerCase())}function yc(){return O(e=>e.toUpperCase())}function bc(){return O(e=>_e(e))}function xc(e,t,n){return new e({type:`array`,element:t,..._(n)})}function Sc(e,t,n){return new e({type:`union`,options:t,..._(n)})}function Cc(e,t,n,r){return new e({type:`union`,options:n,discriminator:t,..._(r)})}function wc(e,t,n){return new e({type:`intersection`,left:t,right:n})}function Tc(e,t,n,r){let i=n instanceof C;return new e({type:`tuple`,items:t,rest:i?n:null,..._(i?r:n)})}function Ec(e,t,n,r){return new e({type:`record`,keyType:t,valueType:n,..._(r)})}function Dc(e,t,n,r){return new e({type:`map`,keyType:t,valueType:n,..._(r)})}function Oc(e,t,n){return new e({type:`set`,valueType:t,..._(n)})}function kc(e,t,n){return new e({type:`enum`,entries:Array.isArray(t)?Object.fromEntries(t.map(e=>[e,e])):t,..._(n)})}function Ac(e,t,n){return new e({type:`enum`,entries:t,..._(n)})}function jc(e,t,n){return new e({type:`literal`,values:Array.isArray(t)?t:[t],..._(n)})}function Mc(e,t){return new e({type:`file`,..._(t)})}function Nc(e,t){return new e({type:`transform`,transform:t})}function Pc(e,t){return new e({type:`optional`,innerType:t})}function Fc(e,t){return new e({type:`nullable`,innerType:t})}function Ic(e,t,n){return new e({type:`default`,innerType:t,get defaultValue(){return typeof n==`function`?n():Se(n)}})}function Lc(e,t,n){return new e({type:`nonoptional`,innerType:t,..._(n)})}function Rc(e,t){return new e({type:`success`,innerType:t})}function zc(e,t,n){return new e({type:`catch`,innerType:t,catchValue:typeof n==`function`?n:()=>n})}function Bc(e,t,n){return new e({type:`pipe`,in:t,out:n})}function Vc(e,t){return new e({type:`readonly`,innerType:t})}function Hc(e,t,n){return new e({type:`template_literal`,parts:t,..._(n)})}function Uc(e,t){return new e({type:`lazy`,getter:t})}function Wc(e,t){return new e({type:`promise`,innerType:t})}function Gc(e,t,n){let r=_(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function Kc(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,..._(n)})}function qc(e){let t=Jc(n=>(n.addIssue=e=>{if(typeof e==`string`)n.issues.push(Ue(e,n.value,t._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,r.input??=n.value,r.inst??=t,r.continue??=!t._zod.def.abort,n.issues.push(Ue(r))}},e(n.value,n)));return t}function Jc(e,t){let n=new S({check:`custom`,..._(t)});return n._zod.check=e,n}function Yc(e){let t=new S({check:`describe`});return t._zod.onattach=[t=>{let n=T.get(t)??{};T.add(t,{...n,description:e})}],t._zod.check=()=>{},t}function Xc(e){let t=new S({check:`meta`});return t._zod.onattach=[t=>{let n=T.get(t)??{};T.add(t,{...n,...e})}],t._zod.check=()=>{},t}function Zc(e,t){let n=_(t),r=n.truthy??[`true`,`1`,`yes`,`on`,`y`,`enabled`],i=n.falsy??[`false`,`0`,`no`,`off`,`n`,`disabled`];n.case!==`sensitive`&&(r=r.map(e=>typeof e==`string`?e.toLowerCase():e),i=i.map(e=>typeof e==`string`?e.toLowerCase():e));let a=new Set(r),o=new Set(i),s=e.Codec??Ii,c=e.Boolean??Hr,l=new s({type:`pipe`,in:new(e.String??dr)({type:`string`,error:n.error}),out:new c({type:`boolean`,error:n.error}),transform:((e,t)=>{let r=e;return n.case!==`sensitive`&&(r=r.toLowerCase()),a.has(r)?!0:o.has(r)?!1:(t.issues.push({code:`invalid_value`,expected:`stringbool`,values:[...a,...o],input:t.value,inst:l,continue:!1}),{})}),reverseTransform:((e,t)=>e===!0?r[0]||`true`:i[0]||`false`),error:n.error});return l}function Qc(e,t,n,r={}){let i=_(r),a={..._(r),check:`string_format`,type:`string`,format:t,fn:typeof n==`function`?n:e=>n.test(e),...i};return n instanceof RegExp&&(a.pattern=n),new e(a)}var $c=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??T,this.target=e?.target??`draft-2020-12`,this.unrepresentable=e?.unrepresentable??`throw`,this.override=e?.override??(()=>{}),this.io=e?.io??`output`,this.seen=new Map}process(e,t={path:[],schemaPath:[]}){var n;let r=e._zod.def,i={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},a=this.seen.get(e);if(a)return a.count++,t.schemaPath.includes(e)&&(a.cycle=t.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:t.path};this.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let n={...t,schemaPath:[...t.schemaPath,e],path:t.path},a=e._zod.parent;if(a)o.ref=a,this.process(a,n),this.seen.get(a).isParent=!0;else{let t=o.schema;switch(r.type){case`string`:{let n=t;n.type=`string`;let{minimum:r,maximum:a,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof r==`number`&&(n.minLength=r),typeof a==`number`&&(n.maxLength=a),s&&(n.format=i[s]??s,n.format===``&&delete n.format),l&&(n.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?n.pattern=e[0].source:e.length>1&&(o.schema.allOf=[...e.map(e=>({...this.target===`draft-7`||this.target===`draft-4`||this.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}break}case`number`:{let n=t,{minimum:r,maximum:i,format:a,multipleOf:o,exclusiveMaximum:s,exclusiveMinimum:c}=e._zod.bag;typeof a==`string`&&a.includes(`int`)?n.type=`integer`:n.type=`number`,typeof c==`number`&&(this.target===`draft-4`||this.target===`openapi-3.0`?(n.minimum=c,n.exclusiveMinimum=!0):n.exclusiveMinimum=c),typeof r==`number`&&(n.minimum=r,typeof c==`number`&&this.target!==`draft-4`&&(c>=r?delete n.minimum:delete n.exclusiveMinimum)),typeof s==`number`&&(this.target===`draft-4`||this.target===`openapi-3.0`?(n.maximum=s,n.exclusiveMaximum=!0):n.exclusiveMaximum=s),typeof i==`number`&&(n.maximum=i,typeof s==`number`&&this.target!==`draft-4`&&(s<=i?delete n.maximum:delete n.exclusiveMaximum)),typeof o==`number`&&(n.multipleOf=o);break}case`boolean`:{let e=t;e.type=`boolean`;break}case`bigint`:if(this.unrepresentable===`throw`)throw Error(`BigInt cannot be represented in JSON Schema`);break;case`symbol`:if(this.unrepresentable===`throw`)throw Error(`Symbols cannot be represented in JSON Schema`);break;case`null`:this.target===`openapi-3.0`?(t.type=`string`,t.nullable=!0,t.enum=[null]):t.type=`null`;break;case`any`:break;case`unknown`:break;case`undefined`:if(this.unrepresentable===`throw`)throw Error(`Undefined cannot be represented in JSON Schema`);break;case`void`:if(this.unrepresentable===`throw`)throw Error(`Void cannot be represented in JSON Schema`);break;case`never`:t.not={};break;case`date`:if(this.unrepresentable===`throw`)throw Error(`Date cannot be represented in JSON Schema`);break;case`array`:{let i=t,{minimum:a,maximum:o}=e._zod.bag;typeof a==`number`&&(i.minItems=a),typeof o==`number`&&(i.maxItems=o),i.type=`array`,i.items=this.process(r.element,{...n,path:[...n.path,`items`]});break}case`object`:{let e=t;e.type=`object`,e.properties={};let i=r.shape;for(let t in i)e.properties[t]=this.process(i[t],{...n,path:[...n.path,`properties`,t]});let a=new Set(Object.keys(i)),o=new Set([...a].filter(e=>{let t=r.shape[e]._zod;return this.io===`input`?t.optin===void 0:t.optout===void 0}));o.size>0&&(e.required=Array.from(o)),r.catchall?._zod.def.type===`never`?e.additionalProperties=!1:r.catchall?r.catchall&&(e.additionalProperties=this.process(r.catchall,{...n,path:[...n.path,`additionalProperties`]})):this.io===`output`&&(e.additionalProperties=!1);break}case`union`:{let e=t,i=r.discriminator!==void 0,a=r.options.map((e,t)=>this.process(e,{...n,path:[...n.path,i?`oneOf`:`anyOf`,t]}));i?e.oneOf=a:e.anyOf=a;break}case`intersection`:{let e=t,i=this.process(r.left,{...n,path:[...n.path,`allOf`,0]}),a=this.process(r.right,{...n,path:[...n.path,`allOf`,1]}),o=e=>`allOf`in e&&Object.keys(e).length===1;e.allOf=[...o(i)?i.allOf:[i],...o(a)?a.allOf:[a]];break}case`tuple`:{let i=t;i.type=`array`;let a=this.target===`draft-2020-12`?`prefixItems`:`items`,o=this.target===`draft-2020-12`||this.target===`openapi-3.0`?`items`:`additionalItems`,s=r.items.map((e,t)=>this.process(e,{...n,path:[...n.path,a,t]})),c=r.rest?this.process(r.rest,{...n,path:[...n.path,o,...this.target===`openapi-3.0`?[r.items.length]:[]]}):null;this.target===`draft-2020-12`?(i.prefixItems=s,c&&(i.items=c)):this.target===`openapi-3.0`?(i.items={anyOf:s},c&&i.items.anyOf.push(c),i.minItems=s.length,c||(i.maxItems=s.length)):(i.items=s,c&&(i.additionalItems=c));let{minimum:l,maximum:u}=e._zod.bag;typeof l==`number`&&(i.minItems=l),typeof u==`number`&&(i.maxItems=u);break}case`record`:{let e=t;e.type=`object`,(this.target===`draft-7`||this.target===`draft-2020-12`)&&(e.propertyNames=this.process(r.keyType,{...n,path:[...n.path,`propertyNames`]})),e.additionalProperties=this.process(r.valueType,{...n,path:[...n.path,`additionalProperties`]});break}case`map`:if(this.unrepresentable===`throw`)throw Error(`Map cannot be represented in JSON Schema`);break;case`set`:if(this.unrepresentable===`throw`)throw Error(`Set cannot be represented in JSON Schema`);break;case`enum`:{let e=t,n=ne(r.entries);n.every(e=>typeof e==`number`)&&(e.type=`number`),n.every(e=>typeof e==`string`)&&(e.type=`string`),e.enum=n;break}case`literal`:{let e=t,n=[];for(let e of r.values)if(e===void 0){if(this.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(this.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);n.push(Number(e))}else n.push(e);if(n.length!==0)if(n.length===1){let t=n[0];e.type=t===null?`null`:typeof t,this.target===`draft-4`||this.target===`openapi-3.0`?e.enum=[t]:e.const=t}else n.every(e=>typeof e==`number`)&&(e.type=`number`),n.every(e=>typeof e==`string`)&&(e.type=`string`),n.every(e=>typeof e==`boolean`)&&(e.type=`string`),n.every(e=>e===null)&&(e.type=`null`),e.enum=n;break}case`file`:{let n=t,r={type:`string`,format:`binary`,contentEncoding:`binary`},{minimum:i,maximum:a,mime:o}=e._zod.bag;i!==void 0&&(r.minLength=i),a!==void 0&&(r.maxLength=a),o?o.length===1?(r.contentMediaType=o[0],Object.assign(n,r)):n.anyOf=o.map(e=>({...r,contentMediaType:e})):Object.assign(n,r);break}case`transform`:if(this.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`);break;case`nullable`:{let e=this.process(r.innerType,n);this.target===`openapi-3.0`?(o.ref=r.innerType,t.nullable=!0):t.anyOf=[e,{type:`null`}];break}case`nonoptional`:this.process(r.innerType,n),o.ref=r.innerType;break;case`success`:{let e=t;e.type=`boolean`;break}case`default`:this.process(r.innerType,n),o.ref=r.innerType,t.default=JSON.parse(JSON.stringify(r.defaultValue));break;case`prefault`:this.process(r.innerType,n),o.ref=r.innerType,this.io===`input`&&(t._prefault=JSON.parse(JSON.stringify(r.defaultValue)));break;case`catch`:{this.process(r.innerType,n),o.ref=r.innerType;let e;try{e=r.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}t.default=e;break}case`nan`:if(this.unrepresentable===`throw`)throw Error(`NaN cannot be represented in JSON Schema`);break;case`template_literal`:{let n=t,r=e._zod.pattern;if(!r)throw Error(`Pattern not found in template literal`);n.type=`string`,n.pattern=r.source;break}case`pipe`:{let e=this.io===`input`?r.in._zod.def.type===`transform`?r.out:r.in:r.out;this.process(e,n),o.ref=e;break}case`readonly`:this.process(r.innerType,n),o.ref=r.innerType,t.readOnly=!0;break;case`promise`:this.process(r.innerType,n),o.ref=r.innerType;break;case`optional`:this.process(r.innerType,n),o.ref=r.innerType;break;case`lazy`:{let t=e._zod.innerType;this.process(t,n),o.ref=t;break}case`custom`:if(this.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`);break;case`function`:if(this.unrepresentable===`throw`)throw Error(`Function types cannot be represented in JSON Schema`);break;default:}}}let c=this.metadataRegistry.get(e);return c&&Object.assign(o.schema,c),this.io===`input`&&k(e)&&(delete o.schema.examples,delete o.schema.default),this.io===`input`&&o.schema._prefault&&((n=o.schema).default??(n.default=o.schema._prefault)),delete o.schema._prefault,this.seen.get(e).schema}emit(e,t){let n={cycles:t?.cycles??`ref`,reused:t?.reused??`inline`,external:t?.external??void 0},r=this.seen.get(e);if(!r)throw Error(`Unprocessed schema. This is a bug in Zod.`);let i=e=>{let t=this.target===`draft-2020-12`?`$defs`:`definitions`;if(n.external){let r=n.external.registry.get(e[0])?.id,i=n.external.uri??(e=>e);if(r)return{ref:i(r)};let a=e[1].defId??e[1].schema.id??`schema${this.counter++}`;return e[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${t}/${a}`}}if(e[1]===r)return{ref:`#`};let i=`#/${t}/`,a=e[1].schema.id??`__schema${this.counter++}`;return{defId:a,ref:i+a}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(n.cycles===`throw`)for(let e of this.seen.entries()){let t=e[1];if(t.cycle)throw Error(`Cycle detected: #/${t.cycle?.join(`/`)}/<root>
420
+ ),e._zod.parse=(n,r)=>typeof n.value==`string`?(e._zod.pattern.lastIndex=0,e._zod.pattern.test(n.value)||n.issues.push({input:n.value,inst:e,code:`invalid_format`,format:t.format??`template_literal`,pattern:e._zod.pattern.source}),n):(n.issues.push({input:n.value,inst:e,expected:`template_literal`,code:`invalid_type`}),n)}),Bi=i(`$ZodFunction`,(e,t)=>(T.init(e,t),e._def=t,e._zod.def=t,e.implement=t=>{if(typeof t!=`function`)throw Error(`implement() must be called with a function`);return function(...n){let r=e._def.input?it(e._def.input,n):n,i=Reflect.apply(t,this,r);return e._def.output?it(e._def.output,i):i}},e.implementAsync=t=>{if(typeof t!=`function`)throw Error(`implementAsync() must be called with a function`);return async function(...n){let r=e._def.input?await ot(e._def.input,n):n,i=await Reflect.apply(t,this,r);return e._def.output?await ot(e._def.output,i):i}},e._zod.parse=(t,n)=>typeof t.value==`function`?(e._def.output&&e._def.output._zod.def.type===`promise`?t.value=e.implementAsync(t.value):t.value=e.implement(t.value),t):(t.issues.push({code:`invalid_type`,expected:`function`,input:t.value,inst:e}),t),e.input=(...t)=>{let n=e.constructor;return Array.isArray(t[0])?new n({type:`function`,input:new ui({type:`tuple`,items:t[0],rest:t[1]}),output:e._def.output}):new n({type:`function`,input:t[0],output:e._def.output})},e.output=t=>{let n=e.constructor;return new n({type:`function`,input:e._def.input,output:t})},e)),Vi=i(`$ZodPromise`,(e,t)=>{T.init(e,t),e._zod.parse=(e,n)=>Promise.resolve(e.value).then(e=>t.innerType._zod.run({value:e,issues:[]},n))}),Hi=i(`$ZodLazy`,(e,t)=>{T.init(e,t),y(e._zod,`innerType`,()=>t.getter()),y(e._zod,`pattern`,()=>e._zod.innerType?._zod?.pattern),y(e._zod,`propValues`,()=>e._zod.innerType?._zod?.propValues),y(e._zod,`optin`,()=>e._zod.innerType?._zod?.optin??void 0),y(e._zod,`optout`,()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(t,n)=>e._zod.innerType._zod.run(t,n)}),Ui=i(`$ZodCustom`,(e,t)=>{w.init(e,t),T.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>Wi(t,n,r,e));Wi(i,n,r,e)}});function Wi(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(Ve(e))}}var Gi=()=>{let e={string:{unit:`حرف`,verb:`أن يحوي`},file:{unit:`بايت`,verb:`أن يحوي`},array:{unit:`عنصر`,verb:`أن يحوي`},set:{unit:`عنصر`,verb:`أن يحوي`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`مدخل`,email:`بريد إلكتروني`,url:`رابط`,emoji:`إيموجي`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`تاريخ ووقت بمعيار ISO`,date:`تاريخ بمعيار ISO`,time:`وقت بمعيار ISO`,duration:`مدة بمعيار ISO`,ipv4:`عنوان IPv4`,ipv6:`عنوان IPv6`,cidrv4:`مدى عناوين بصيغة IPv4`,cidrv6:`مدى عناوين بصيغة IPv6`,base64:`نَص بترميز base64-encoded`,base64url:`نَص بترميز base64url-encoded`,json_string:`نَص على هيئة JSON`,e164:`رقم هاتف بمعيار E.164`,jwt:`JWT`,template_literal:`مدخل`};return e=>{switch(e.code){case`invalid_type`:return`مدخلات غير مقبولة: يفترض إدخال ${e.expected}، ولكن تم إدخال ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`مدخلات غير مقبولة: يفترض إدخال ${S(e.values[0])}`:`اختيار غير مقبول: يتوقع انتقاء أحد هذه الخيارات: ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?` أكبر من اللازم: يفترض أن تكون ${e.origin??`القيمة`} ${n} ${e.maximum.toString()} ${r.unit??`عنصر`}`:`أكبر من اللازم: يفترض أن تكون ${e.origin??`القيمة`} ${n} ${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`أصغر من اللازم: يفترض لـ ${e.origin} أن يكون ${n} ${e.minimum.toString()} ${r.unit}`:`أصغر من اللازم: يفترض لـ ${e.origin} أن يكون ${n} ${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`نَص غير مقبول: يجب أن يبدأ بـ "${e.prefix}"`:t.format===`ends_with`?`نَص غير مقبول: يجب أن ينتهي بـ "${t.suffix}"`:t.format===`includes`?`نَص غير مقبول: يجب أن يتضمَّن "${t.includes}"`:t.format===`regex`?`نَص غير مقبول: يجب أن يطابق النمط ${t.pattern}`:`${r[t.format]??e.format} غير مقبول`}case`not_multiple_of`:return`رقم غير مقبول: يجب أن يكون من مضاعفات ${e.divisor}`;case`unrecognized_keys`:return`معرف${e.keys.length>1?`ات`:``} غريب${e.keys.length>1?`ة`:``}: ${_(e.keys,`، `)}`;case`invalid_key`:return`معرف غير مقبول في ${e.origin}`;case`invalid_union`:return`مدخل غير مقبول`;case`invalid_element`:return`مدخل غير مقبول في ${e.origin}`;default:return`مدخل غير مقبول`}}};function Ki(){return{localeError:Gi()}}var qi=()=>{let e={string:{unit:`simvol`,verb:`olmalıdır`},file:{unit:`bayt`,verb:`olmalıdır`},array:{unit:`element`,verb:`olmalıdır`},set:{unit:`element`,verb:`olmalıdır`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`input`,email:`email address`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO datetime`,date:`ISO date`,time:`ISO time`,duration:`ISO duration`,ipv4:`IPv4 address`,ipv6:`IPv6 address`,cidrv4:`IPv4 range`,cidrv6:`IPv6 range`,base64:`base64-encoded string`,base64url:`base64url-encoded string`,json_string:`JSON string`,e164:`E.164 number`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`Yanlış dəyər: gözlənilən ${e.expected}, daxil olan ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Yanlış dəyər: gözlənilən ${S(e.values[0])}`:`Yanlış seçim: aşağıdakılardan biri olmalıdır: ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Çox böyük: gözlənilən ${e.origin??`dəyər`} ${n}${e.maximum.toString()} ${r.unit??`element`}`:`Çox böyük: gözlənilən ${e.origin??`dəyər`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Çox kiçik: gözlənilən ${e.origin} ${n}${e.minimum.toString()} ${r.unit}`:`Çox kiçik: gözlənilən ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Yanlış mətn: "${t.prefix}" ilə başlamalıdır`:t.format===`ends_with`?`Yanlış mətn: "${t.suffix}" ilə bitməlidir`:t.format===`includes`?`Yanlış mətn: "${t.includes}" daxil olmalıdır`:t.format===`regex`?`Yanlış mətn: ${t.pattern} şablonuna uyğun olmalıdır`:`Yanlış ${r[t.format]??e.format}`}case`not_multiple_of`:return`Yanlış ədəd: ${e.divisor} ilə bölünə bilən olmalıdır`;case`unrecognized_keys`:return`Tanınmayan açar${e.keys.length>1?`lar`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} daxilində yanlış açar`;case`invalid_union`:return`Yanlış dəyər`;case`invalid_element`:return`${e.origin} daxilində yanlış dəyər`;default:return`Yanlış dəyər`}}};function Ji(){return{localeError:qi()}}function Yi(e,t,n,r){let i=Math.abs(e),a=i%10,o=i%100;return o>=11&&o<=19?r:a===1?t:a>=2&&a<=4?n:r}var Xi=()=>{let e={string:{unit:{one:`сімвал`,few:`сімвалы`,many:`сімвалаў`},verb:`мець`},array:{unit:{one:`элемент`,few:`элементы`,many:`элементаў`},verb:`мець`},set:{unit:{one:`элемент`,few:`элементы`,many:`элементаў`},verb:`мець`},file:{unit:{one:`байт`,few:`байты`,many:`байтаў`},verb:`мець`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`лік`;case`object`:if(Array.isArray(e))return`масіў`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`увод`,email:`email адрас`,url:`URL`,emoji:`эмодзі`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO дата і час`,date:`ISO дата`,time:`ISO час`,duration:`ISO працягласць`,ipv4:`IPv4 адрас`,ipv6:`IPv6 адрас`,cidrv4:`IPv4 дыяпазон`,cidrv6:`IPv6 дыяпазон`,base64:`радок у фармаце base64`,base64url:`радок у фармаце base64url`,json_string:`JSON радок`,e164:`нумар E.164`,jwt:`JWT`,template_literal:`увод`};return e=>{switch(e.code){case`invalid_type`:return`Няправільны ўвод: чакаўся ${e.expected}, атрымана ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Няправільны ўвод: чакалася ${S(e.values[0])}`:`Няправільны варыянт: чакаўся адзін з ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);if(r){let t=Yi(Number(e.maximum),r.unit.one,r.unit.few,r.unit.many);return`Занадта вялікі: чакалася, што ${e.origin??`значэнне`} павінна ${r.verb} ${n}${e.maximum.toString()} ${t}`}return`Занадта вялікі: чакалася, што ${e.origin??`значэнне`} павінна быць ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);if(r){let t=Yi(Number(e.minimum),r.unit.one,r.unit.few,r.unit.many);return`Занадта малы: чакалася, што ${e.origin} павінна ${r.verb} ${n}${e.minimum.toString()} ${t}`}return`Занадта малы: чакалася, што ${e.origin} павінна быць ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Няправільны радок: павінен пачынацца з "${t.prefix}"`:t.format===`ends_with`?`Няправільны радок: павінен заканчвацца на "${t.suffix}"`:t.format===`includes`?`Няправільны радок: павінен змяшчаць "${t.includes}"`:t.format===`regex`?`Няправільны радок: павінен адпавядаць шаблону ${t.pattern}`:`Няправільны ${r[t.format]??e.format}`}case`not_multiple_of`:return`Няправільны лік: павінен быць кратным ${e.divisor}`;case`unrecognized_keys`:return`Нераспазнаны ${e.keys.length>1?`ключы`:`ключ`}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Няправільны ключ у ${e.origin}`;case`invalid_union`:return`Няправільны ўвод`;case`invalid_element`:return`Няправільнае значэнне ў ${e.origin}`;default:return`Няправільны ўвод`}}};function Zi(){return{localeError:Xi()}}var Qi=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`число`;case`object`:if(Array.isArray(e))return`масив`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},$i=()=>{let e={string:{unit:`символа`,verb:`да съдържа`},file:{unit:`байта`,verb:`да съдържа`},array:{unit:`елемента`,verb:`да съдържа`},set:{unit:`елемента`,verb:`да съдържа`}};function t(t){return e[t]??null}let n={regex:`вход`,email:`имейл адрес`,url:`URL`,emoji:`емоджи`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO време`,date:`ISO дата`,time:`ISO време`,duration:`ISO продължителност`,ipv4:`IPv4 адрес`,ipv6:`IPv6 адрес`,cidrv4:`IPv4 диапазон`,cidrv6:`IPv6 диапазон`,base64:`base64-кодиран низ`,base64url:`base64url-кодиран низ`,json_string:`JSON низ`,e164:`E.164 номер`,jwt:`JWT`,template_literal:`вход`};return e=>{switch(e.code){case`invalid_type`:return`Невалиден вход: очакван ${e.expected}, получен ${Qi(e.input)}`;case`invalid_value`:return e.values.length===1?`Невалиден вход: очакван ${S(e.values[0])}`:`Невалидна опция: очаквано едно от ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Твърде голямо: очаква се ${e.origin??`стойност`} да съдържа ${n}${e.maximum.toString()} ${r.unit??`елемента`}`:`Твърде голямо: очаква се ${e.origin??`стойност`} да бъде ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Твърде малко: очаква се ${e.origin} да съдържа ${n}${e.minimum.toString()} ${r.unit}`:`Твърде малко: очаква се ${e.origin} да бъде ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;if(t.format===`starts_with`)return`Невалиден низ: трябва да започва с "${t.prefix}"`;if(t.format===`ends_with`)return`Невалиден низ: трябва да завършва с "${t.suffix}"`;if(t.format===`includes`)return`Невалиден низ: трябва да включва "${t.includes}"`;if(t.format===`regex`)return`Невалиден низ: трябва да съвпада с ${t.pattern}`;let r=`Невалиден`;return t.format===`emoji`&&(r=`Невалидно`),t.format===`datetime`&&(r=`Невалидно`),t.format===`date`&&(r=`Невалидна`),t.format===`time`&&(r=`Невалидно`),t.format===`duration`&&(r=`Невалидна`),`${r} ${n[t.format]??e.format}`}case`not_multiple_of`:return`Невалидно число: трябва да бъде кратно на ${e.divisor}`;case`unrecognized_keys`:return`Неразпознат${e.keys.length>1?`и`:``} ключ${e.keys.length>1?`ове`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Невалиден ключ в ${e.origin}`;case`invalid_union`:return`Невалиден вход`;case`invalid_element`:return`Невалидна стойност в ${e.origin}`;default:return`Невалиден вход`}}};function ea(){return{localeError:$i()}}var ta=()=>{let e={string:{unit:`caràcters`,verb:`contenir`},file:{unit:`bytes`,verb:`contenir`},array:{unit:`elements`,verb:`contenir`},set:{unit:`elements`,verb:`contenir`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`entrada`,email:`adreça electrònica`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`data i hora ISO`,date:`data ISO`,time:`hora ISO`,duration:`durada ISO`,ipv4:`adreça IPv4`,ipv6:`adreça IPv6`,cidrv4:`rang IPv4`,cidrv6:`rang IPv6`,base64:`cadena codificada en base64`,base64url:`cadena codificada en base64url`,json_string:`cadena JSON`,e164:`número E.164`,jwt:`JWT`,template_literal:`entrada`};return e=>{switch(e.code){case`invalid_type`:return`Tipus invàlid: s'esperava ${e.expected}, s'ha rebut ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Valor invàlid: s'esperava ${S(e.values[0])}`:`Opció invàlida: s'esperava una de ${_(e.values,` o `)}`;case`too_big`:{let n=e.inclusive?`com a màxim`:`menys de`,r=t(e.origin);return r?`Massa gran: s'esperava que ${e.origin??`el valor`} contingués ${n} ${e.maximum.toString()} ${r.unit??`elements`}`:`Massa gran: s'esperava que ${e.origin??`el valor`} fos ${n} ${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`com a mínim`:`més de`,r=t(e.origin);return r?`Massa petit: s'esperava que ${e.origin} contingués ${n} ${e.minimum.toString()} ${r.unit}`:`Massa petit: s'esperava que ${e.origin} fos ${n} ${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Format invàlid: ha de començar amb "${t.prefix}"`:t.format===`ends_with`?`Format invàlid: ha d'acabar amb "${t.suffix}"`:t.format===`includes`?`Format invàlid: ha d'incloure "${t.includes}"`:t.format===`regex`?`Format invàlid: ha de coincidir amb el patró ${t.pattern}`:`Format invàlid per a ${r[t.format]??e.format}`}case`not_multiple_of`:return`Número invàlid: ha de ser múltiple de ${e.divisor}`;case`unrecognized_keys`:return`Clau${e.keys.length>1?`s`:``} no reconeguda${e.keys.length>1?`s`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Clau invàlida a ${e.origin}`;case`invalid_union`:return`Entrada invàlida`;case`invalid_element`:return`Element invàlid a ${e.origin}`;default:return`Entrada invàlida`}}};function na(){return{localeError:ta()}}var ra=()=>{let e={string:{unit:`znaků`,verb:`mít`},file:{unit:`bajtů`,verb:`mít`},array:{unit:`prvků`,verb:`mít`},set:{unit:`prvků`,verb:`mít`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`číslo`;case`string`:return`řetězec`;case`boolean`:return`boolean`;case`bigint`:return`bigint`;case`function`:return`funkce`;case`symbol`:return`symbol`;case`undefined`:return`undefined`;case`object`:if(Array.isArray(e))return`pole`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`regulární výraz`,email:`e-mailová adresa`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`datum a čas ve formátu ISO`,date:`datum ve formátu ISO`,time:`čas ve formátu ISO`,duration:`doba trvání ISO`,ipv4:`IPv4 adresa`,ipv6:`IPv6 adresa`,cidrv4:`rozsah IPv4`,cidrv6:`rozsah IPv6`,base64:`řetězec zakódovaný ve formátu base64`,base64url:`řetězec zakódovaný ve formátu base64url`,json_string:`řetězec ve formátu JSON`,e164:`číslo E.164`,jwt:`JWT`,template_literal:`vstup`};return e=>{switch(e.code){case`invalid_type`:return`Neplatný vstup: očekáváno ${e.expected}, obdrženo ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Neplatný vstup: očekáváno ${S(e.values[0])}`:`Neplatná možnost: očekávána jedna z hodnot ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Hodnota je příliš velká: ${e.origin??`hodnota`} musí mít ${n}${e.maximum.toString()} ${r.unit??`prvků`}`:`Hodnota je příliš velká: ${e.origin??`hodnota`} musí být ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Hodnota je příliš malá: ${e.origin??`hodnota`} musí mít ${n}${e.minimum.toString()} ${r.unit??`prvků`}`:`Hodnota je příliš malá: ${e.origin??`hodnota`} musí být ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Neplatný řetězec: musí začínat na "${t.prefix}"`:t.format===`ends_with`?`Neplatný řetězec: musí končit na "${t.suffix}"`:t.format===`includes`?`Neplatný řetězec: musí obsahovat "${t.includes}"`:t.format===`regex`?`Neplatný řetězec: musí odpovídat vzoru ${t.pattern}`:`Neplatný formát ${r[t.format]??e.format}`}case`not_multiple_of`:return`Neplatné číslo: musí být násobkem ${e.divisor}`;case`unrecognized_keys`:return`Neznámé klíče: ${_(e.keys,`, `)}`;case`invalid_key`:return`Neplatný klíč v ${e.origin}`;case`invalid_union`:return`Neplatný vstup`;case`invalid_element`:return`Neplatná hodnota v ${e.origin}`;default:return`Neplatný vstup`}}};function ia(){return{localeError:ra()}}var aa=()=>{let e={string:{unit:`tegn`,verb:`havde`},file:{unit:`bytes`,verb:`havde`},array:{unit:`elementer`,verb:`indeholdt`},set:{unit:`elementer`,verb:`indeholdt`}},t={string:`streng`,number:`tal`,boolean:`boolean`,array:`liste`,object:`objekt`,set:`sæt`,file:`fil`};function n(t){return e[t]??null}function r(e){return t[e]??e}let i=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`tal`;case`object`:return Array.isArray(e)?`liste`:e===null?`null`:Object.getPrototypeOf(e)!==Object.prototype&&e.constructor?e.constructor.name:`objekt`}return t},a={regex:`input`,email:`e-mailadresse`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO dato- og klokkeslæt`,date:`ISO-dato`,time:`ISO-klokkeslæt`,duration:`ISO-varighed`,ipv4:`IPv4-område`,ipv6:`IPv6-område`,cidrv4:`IPv4-spektrum`,cidrv6:`IPv6-spektrum`,base64:`base64-kodet streng`,base64url:`base64url-kodet streng`,json_string:`JSON-streng`,e164:`E.164-nummer`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`Ugyldigt input: forventede ${r(e.expected)}, fik ${r(i(e.input))}`;case`invalid_value`:return e.values.length===1?`Ugyldig værdi: forventede ${S(e.values[0])}`:`Ugyldigt valg: forventede en af følgende ${_(e.values,`|`)}`;case`too_big`:{let t=e.inclusive?`<=`:`<`,i=n(e.origin),a=r(e.origin);return i?`For stor: forventede ${a??`value`} ${i.verb} ${t} ${e.maximum.toString()} ${i.unit??`elementer`}`:`For stor: forventede ${a??`value`} havde ${t} ${e.maximum.toString()}`}case`too_small`:{let t=e.inclusive?`>=`:`>`,i=n(e.origin),a=r(e.origin);return i?`For lille: forventede ${a} ${i.verb} ${t} ${e.minimum.toString()} ${i.unit}`:`For lille: forventede ${a} havde ${t} ${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ugyldig streng: skal starte med "${t.prefix}"`:t.format===`ends_with`?`Ugyldig streng: skal ende med "${t.suffix}"`:t.format===`includes`?`Ugyldig streng: skal indeholde "${t.includes}"`:t.format===`regex`?`Ugyldig streng: skal matche mønsteret ${t.pattern}`:`Ugyldig ${a[t.format]??e.format}`}case`not_multiple_of`:return`Ugyldigt tal: skal være deleligt med ${e.divisor}`;case`unrecognized_keys`:return`${e.keys.length>1?`Ukendte nøgler`:`Ukendt nøgle`}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Ugyldig nøgle i ${e.origin}`;case`invalid_union`:return`Ugyldigt input: matcher ingen af de tilladte typer`;case`invalid_element`:return`Ugyldig værdi i ${e.origin}`;default:return`Ugyldigt input`}}};function oa(){return{localeError:aa()}}var sa=()=>{let e={string:{unit:`Zeichen`,verb:`zu haben`},file:{unit:`Bytes`,verb:`zu haben`},array:{unit:`Elemente`,verb:`zu haben`},set:{unit:`Elemente`,verb:`zu haben`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`Zahl`;case`object`:if(Array.isArray(e))return`Array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`Eingabe`,email:`E-Mail-Adresse`,url:`URL`,emoji:`Emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO-Datum und -Uhrzeit`,date:`ISO-Datum`,time:`ISO-Uhrzeit`,duration:`ISO-Dauer`,ipv4:`IPv4-Adresse`,ipv6:`IPv6-Adresse`,cidrv4:`IPv4-Bereich`,cidrv6:`IPv6-Bereich`,base64:`Base64-codierter String`,base64url:`Base64-URL-codierter String`,json_string:`JSON-String`,e164:`E.164-Nummer`,jwt:`JWT`,template_literal:`Eingabe`};return e=>{switch(e.code){case`invalid_type`:return`Ungültige Eingabe: erwartet ${e.expected}, erhalten ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Ungültige Eingabe: erwartet ${S(e.values[0])}`:`Ungültige Option: erwartet eine von ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Zu groß: erwartet, dass ${e.origin??`Wert`} ${n}${e.maximum.toString()} ${r.unit??`Elemente`} hat`:`Zu groß: erwartet, dass ${e.origin??`Wert`} ${n}${e.maximum.toString()} ist`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Zu klein: erwartet, dass ${e.origin} ${n}${e.minimum.toString()} ${r.unit} hat`:`Zu klein: erwartet, dass ${e.origin} ${n}${e.minimum.toString()} ist`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ungültiger String: muss mit "${t.prefix}" beginnen`:t.format===`ends_with`?`Ungültiger String: muss mit "${t.suffix}" enden`:t.format===`includes`?`Ungültiger String: muss "${t.includes}" enthalten`:t.format===`regex`?`Ungültiger String: muss dem Muster ${t.pattern} entsprechen`:`Ungültig: ${r[t.format]??e.format}`}case`not_multiple_of`:return`Ungültige Zahl: muss ein Vielfaches von ${e.divisor} sein`;case`unrecognized_keys`:return`${e.keys.length>1?`Unbekannte Schlüssel`:`Unbekannter Schlüssel`}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Ungültiger Schlüssel in ${e.origin}`;case`invalid_union`:return`Ungültige Eingabe`;case`invalid_element`:return`Ungültiger Wert in ${e.origin}`;default:return`Ungültige Eingabe`}}};function ca(){return{localeError:sa()}}var la=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},ua=()=>{let e={string:{unit:`characters`,verb:`to have`},file:{unit:`bytes`,verb:`to have`},array:{unit:`items`,verb:`to have`},set:{unit:`items`,verb:`to have`}};function t(t){return e[t]??null}let n={regex:`input`,email:`email address`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO datetime`,date:`ISO date`,time:`ISO time`,duration:`ISO duration`,ipv4:`IPv4 address`,ipv6:`IPv6 address`,mac:`MAC address`,cidrv4:`IPv4 range`,cidrv6:`IPv6 range`,base64:`base64-encoded string`,base64url:`base64url-encoded string`,json_string:`JSON string`,e164:`E.164 number`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`Invalid input: expected ${e.expected}, received ${la(e.input)}`;case`invalid_value`:return e.values.length===1?`Invalid input: expected ${S(e.values[0])}`:`Invalid option: expected one of ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Too big: expected ${e.origin??`value`} to have ${n}${e.maximum.toString()} ${r.unit??`elements`}`:`Too big: expected ${e.origin??`value`} to be ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Too small: expected ${e.origin} to have ${n}${e.minimum.toString()} ${r.unit}`:`Too small: expected ${e.origin} to be ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Invalid string: must start with "${t.prefix}"`:t.format===`ends_with`?`Invalid string: must end with "${t.suffix}"`:t.format===`includes`?`Invalid string: must include "${t.includes}"`:t.format===`regex`?`Invalid string: must match pattern ${t.pattern}`:`Invalid ${n[t.format]??e.format}`}case`not_multiple_of`:return`Invalid number: must be a multiple of ${e.divisor}`;case`unrecognized_keys`:return`Unrecognized key${e.keys.length>1?`s`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Invalid key in ${e.origin}`;case`invalid_union`:return`Invalid input`;case`invalid_element`:return`Invalid value in ${e.origin}`;default:return`Invalid input`}}};function da(){return{localeError:ua()}}var fa=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`nombro`;case`object`:if(Array.isArray(e))return`tabelo`;if(e===null)return`senvalora`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},pa=()=>{let e={string:{unit:`karaktrojn`,verb:`havi`},file:{unit:`bajtojn`,verb:`havi`},array:{unit:`elementojn`,verb:`havi`},set:{unit:`elementojn`,verb:`havi`}};function t(t){return e[t]??null}let n={regex:`enigo`,email:`retadreso`,url:`URL`,emoji:`emoĝio`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO-datotempo`,date:`ISO-dato`,time:`ISO-tempo`,duration:`ISO-daŭro`,ipv4:`IPv4-adreso`,ipv6:`IPv6-adreso`,cidrv4:`IPv4-rango`,cidrv6:`IPv6-rango`,base64:`64-ume kodita karaktraro`,base64url:`URL-64-ume kodita karaktraro`,json_string:`JSON-karaktraro`,e164:`E.164-nombro`,jwt:`JWT`,template_literal:`enigo`};return e=>{switch(e.code){case`invalid_type`:return`Nevalida enigo: atendiĝis ${e.expected}, riceviĝis ${fa(e.input)}`;case`invalid_value`:return e.values.length===1?`Nevalida enigo: atendiĝis ${S(e.values[0])}`:`Nevalida opcio: atendiĝis unu el ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Tro granda: atendiĝis ke ${e.origin??`valoro`} havu ${n}${e.maximum.toString()} ${r.unit??`elementojn`}`:`Tro granda: atendiĝis ke ${e.origin??`valoro`} havu ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Tro malgranda: atendiĝis ke ${e.origin} havu ${n}${e.minimum.toString()} ${r.unit}`:`Tro malgranda: atendiĝis ke ${e.origin} estu ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Nevalida karaktraro: devas komenciĝi per "${t.prefix}"`:t.format===`ends_with`?`Nevalida karaktraro: devas finiĝi per "${t.suffix}"`:t.format===`includes`?`Nevalida karaktraro: devas inkluzivi "${t.includes}"`:t.format===`regex`?`Nevalida karaktraro: devas kongrui kun la modelo ${t.pattern}`:`Nevalida ${n[t.format]??e.format}`}case`not_multiple_of`:return`Nevalida nombro: devas esti oblo de ${e.divisor}`;case`unrecognized_keys`:return`Nekonata${e.keys.length>1?`j`:``} ŝlosilo${e.keys.length>1?`j`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Nevalida ŝlosilo en ${e.origin}`;case`invalid_union`:return`Nevalida enigo`;case`invalid_element`:return`Nevalida valoro en ${e.origin}`;default:return`Nevalida enigo`}}};function ma(){return{localeError:pa()}}var ha=()=>{let e={string:{unit:`caracteres`,verb:`tener`},file:{unit:`bytes`,verb:`tener`},array:{unit:`elementos`,verb:`tener`},set:{unit:`elementos`,verb:`tener`}},t={string:`texto`,number:`número`,boolean:`booleano`,array:`arreglo`,object:`objeto`,set:`conjunto`,file:`archivo`,date:`fecha`,bigint:`número grande`,symbol:`símbolo`,undefined:`indefinido`,null:`nulo`,function:`función`,map:`mapa`,record:`registro`,tuple:`tupla`,enum:`enumeración`,union:`unión`,literal:`literal`,promise:`promesa`,void:`vacío`,never:`nunca`,unknown:`desconocido`,any:`cualquiera`};function n(t){return e[t]??null}function r(e){return t[e]??e}let i=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:return Array.isArray(e)?`array`:e===null?`null`:Object.getPrototypeOf(e)===Object.prototype?`object`:e.constructor.name}return t},a={regex:`entrada`,email:`dirección de correo electrónico`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`fecha y hora ISO`,date:`fecha ISO`,time:`hora ISO`,duration:`duración ISO`,ipv4:`dirección IPv4`,ipv6:`dirección IPv6`,cidrv4:`rango IPv4`,cidrv6:`rango IPv6`,base64:`cadena codificada en base64`,base64url:`URL codificada en base64`,json_string:`cadena JSON`,e164:`número E.164`,jwt:`JWT`,template_literal:`entrada`};return e=>{switch(e.code){case`invalid_type`:return`Entrada inválida: se esperaba ${r(e.expected)}, recibido ${r(i(e.input))}`;case`invalid_value`:return e.values.length===1?`Entrada inválida: se esperaba ${S(e.values[0])}`:`Opción inválida: se esperaba una de ${_(e.values,`|`)}`;case`too_big`:{let t=e.inclusive?`<=`:`<`,i=n(e.origin),a=r(e.origin);return i?`Demasiado grande: se esperaba que ${a??`valor`} tuviera ${t}${e.maximum.toString()} ${i.unit??`elementos`}`:`Demasiado grande: se esperaba que ${a??`valor`} fuera ${t}${e.maximum.toString()}`}case`too_small`:{let t=e.inclusive?`>=`:`>`,i=n(e.origin),a=r(e.origin);return i?`Demasiado pequeño: se esperaba que ${a} tuviera ${t}${e.minimum.toString()} ${i.unit}`:`Demasiado pequeño: se esperaba que ${a} fuera ${t}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Cadena inválida: debe comenzar con "${t.prefix}"`:t.format===`ends_with`?`Cadena inválida: debe terminar en "${t.suffix}"`:t.format===`includes`?`Cadena inválida: debe incluir "${t.includes}"`:t.format===`regex`?`Cadena inválida: debe coincidir con el patrón ${t.pattern}`:`Inválido ${a[t.format]??e.format}`}case`not_multiple_of`:return`Número inválido: debe ser múltiplo de ${e.divisor}`;case`unrecognized_keys`:return`Llave${e.keys.length>1?`s`:``} desconocida${e.keys.length>1?`s`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Llave inválida en ${r(e.origin)}`;case`invalid_union`:return`Entrada inválida`;case`invalid_element`:return`Valor inválido en ${r(e.origin)}`;default:return`Entrada inválida`}}};function ga(){return{localeError:ha()}}var _a=()=>{let e={string:{unit:`کاراکتر`,verb:`داشته باشد`},file:{unit:`بایت`,verb:`داشته باشد`},array:{unit:`آیتم`,verb:`داشته باشد`},set:{unit:`آیتم`,verb:`داشته باشد`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`عدد`;case`object`:if(Array.isArray(e))return`آرایه`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`ورودی`,email:`آدرس ایمیل`,url:`URL`,emoji:`ایموجی`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`تاریخ و زمان ایزو`,date:`تاریخ ایزو`,time:`زمان ایزو`,duration:`مدت زمان ایزو`,ipv4:`IPv4 آدرس`,ipv6:`IPv6 آدرس`,cidrv4:`IPv4 دامنه`,cidrv6:`IPv6 دامنه`,base64:`base64-encoded رشته`,base64url:`base64url-encoded رشته`,json_string:`JSON رشته`,e164:`E.164 عدد`,jwt:`JWT`,template_literal:`ورودی`};return e=>{switch(e.code){case`invalid_type`:return`ورودی نامعتبر: می‌بایست ${e.expected} می‌بود، ${n(e.input)} دریافت شد`;case`invalid_value`:return e.values.length===1?`ورودی نامعتبر: می‌بایست ${S(e.values[0])} می‌بود`:`گزینه نامعتبر: می‌بایست یکی از ${_(e.values,`|`)} می‌بود`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`خیلی بزرگ: ${e.origin??`مقدار`} باید ${n}${e.maximum.toString()} ${r.unit??`عنصر`} باشد`:`خیلی بزرگ: ${e.origin??`مقدار`} باید ${n}${e.maximum.toString()} باشد`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`خیلی کوچک: ${e.origin} باید ${n}${e.minimum.toString()} ${r.unit} باشد`:`خیلی کوچک: ${e.origin} باید ${n}${e.minimum.toString()} باشد`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`رشته نامعتبر: باید با "${t.prefix}" شروع شود`:t.format===`ends_with`?`رشته نامعتبر: باید با "${t.suffix}" تمام شود`:t.format===`includes`?`رشته نامعتبر: باید شامل "${t.includes}" باشد`:t.format===`regex`?`رشته نامعتبر: باید با الگوی ${t.pattern} مطابقت داشته باشد`:`${r[t.format]??e.format} نامعتبر`}case`not_multiple_of`:return`عدد نامعتبر: باید مضرب ${e.divisor} باشد`;case`unrecognized_keys`:return`کلید${e.keys.length>1?`های`:``} ناشناس: ${_(e.keys,`, `)}`;case`invalid_key`:return`کلید ناشناس در ${e.origin}`;case`invalid_union`:return`ورودی نامعتبر`;case`invalid_element`:return`مقدار نامعتبر در ${e.origin}`;default:return`ورودی نامعتبر`}}};function va(){return{localeError:_a()}}var ya=()=>{let e={string:{unit:`merkkiä`,subject:`merkkijonon`},file:{unit:`tavua`,subject:`tiedoston`},array:{unit:`alkiota`,subject:`listan`},set:{unit:`alkiota`,subject:`joukon`},number:{unit:``,subject:`luvun`},bigint:{unit:``,subject:`suuren kokonaisluvun`},int:{unit:``,subject:`kokonaisluvun`},date:{unit:``,subject:`päivämäärän`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`säännöllinen lauseke`,email:`sähköpostiosoite`,url:`URL-osoite`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO-aikaleima`,date:`ISO-päivämäärä`,time:`ISO-aika`,duration:`ISO-kesto`,ipv4:`IPv4-osoite`,ipv6:`IPv6-osoite`,cidrv4:`IPv4-alue`,cidrv6:`IPv6-alue`,base64:`base64-koodattu merkkijono`,base64url:`base64url-koodattu merkkijono`,json_string:`JSON-merkkijono`,e164:`E.164-luku`,jwt:`JWT`,template_literal:`templaattimerkkijono`};return e=>{switch(e.code){case`invalid_type`:return`Virheellinen tyyppi: odotettiin ${e.expected}, oli ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Virheellinen syöte: täytyy olla ${S(e.values[0])}`:`Virheellinen valinta: täytyy olla yksi seuraavista: ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Liian suuri: ${r.subject} täytyy olla ${n}${e.maximum.toString()} ${r.unit}`.trim():`Liian suuri: arvon täytyy olla ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Liian pieni: ${r.subject} täytyy olla ${n}${e.minimum.toString()} ${r.unit}`.trim():`Liian pieni: arvon täytyy olla ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Virheellinen syöte: täytyy alkaa "${t.prefix}"`:t.format===`ends_with`?`Virheellinen syöte: täytyy loppua "${t.suffix}"`:t.format===`includes`?`Virheellinen syöte: täytyy sisältää "${t.includes}"`:t.format===`regex`?`Virheellinen syöte: täytyy vastata säännöllistä lauseketta ${t.pattern}`:`Virheellinen ${r[t.format]??e.format}`}case`not_multiple_of`:return`Virheellinen luku: täytyy olla luvun ${e.divisor} monikerta`;case`unrecognized_keys`:return`${e.keys.length>1?`Tuntemattomat avaimet`:`Tuntematon avain`}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Virheellinen avain tietueessa`;case`invalid_union`:return`Virheellinen unioni`;case`invalid_element`:return`Virheellinen arvo joukossa`;default:return`Virheellinen syöte`}}};function ba(){return{localeError:ya()}}var xa=()=>{let e={string:{unit:`caractères`,verb:`avoir`},file:{unit:`octets`,verb:`avoir`},array:{unit:`éléments`,verb:`avoir`},set:{unit:`éléments`,verb:`avoir`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`nombre`;case`object`:if(Array.isArray(e))return`tableau`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`entrée`,email:`adresse e-mail`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`date et heure ISO`,date:`date ISO`,time:`heure ISO`,duration:`durée ISO`,ipv4:`adresse IPv4`,ipv6:`adresse IPv6`,cidrv4:`plage IPv4`,cidrv6:`plage IPv6`,base64:`chaîne encodée en base64`,base64url:`chaîne encodée en base64url`,json_string:`chaîne JSON`,e164:`numéro E.164`,jwt:`JWT`,template_literal:`entrée`};return e=>{switch(e.code){case`invalid_type`:return`Entrée invalide : ${e.expected} attendu, ${n(e.input)} reçu`;case`invalid_value`:return e.values.length===1?`Entrée invalide : ${S(e.values[0])} attendu`:`Option invalide : une valeur parmi ${_(e.values,`|`)} attendue`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Trop grand : ${e.origin??`valeur`} doit ${r.verb} ${n}${e.maximum.toString()} ${r.unit??`élément(s)`}`:`Trop grand : ${e.origin??`valeur`} doit être ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Trop petit : ${e.origin} doit ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`Trop petit : ${e.origin} doit être ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Chaîne invalide : doit commencer par "${t.prefix}"`:t.format===`ends_with`?`Chaîne invalide : doit se terminer par "${t.suffix}"`:t.format===`includes`?`Chaîne invalide : doit inclure "${t.includes}"`:t.format===`regex`?`Chaîne invalide : doit correspondre au modèle ${t.pattern}`:`${r[t.format]??e.format} invalide`}case`not_multiple_of`:return`Nombre invalide : doit être un multiple de ${e.divisor}`;case`unrecognized_keys`:return`Clé${e.keys.length>1?`s`:``} non reconnue${e.keys.length>1?`s`:``} : ${_(e.keys,`, `)}`;case`invalid_key`:return`Clé invalide dans ${e.origin}`;case`invalid_union`:return`Entrée invalide`;case`invalid_element`:return`Valeur invalide dans ${e.origin}`;default:return`Entrée invalide`}}};function Sa(){return{localeError:xa()}}var Ca=()=>{let e={string:{unit:`caractères`,verb:`avoir`},file:{unit:`octets`,verb:`avoir`},array:{unit:`éléments`,verb:`avoir`},set:{unit:`éléments`,verb:`avoir`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`entrée`,email:`adresse courriel`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`date-heure ISO`,date:`date ISO`,time:`heure ISO`,duration:`durée ISO`,ipv4:`adresse IPv4`,ipv6:`adresse IPv6`,cidrv4:`plage IPv4`,cidrv6:`plage IPv6`,base64:`chaîne encodée en base64`,base64url:`chaîne encodée en base64url`,json_string:`chaîne JSON`,e164:`numéro E.164`,jwt:`JWT`,template_literal:`entrée`};return e=>{switch(e.code){case`invalid_type`:return`Entrée invalide : attendu ${e.expected}, reçu ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Entrée invalide : attendu ${S(e.values[0])}`:`Option invalide : attendu l'une des valeurs suivantes ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`≤`:`<`,r=t(e.origin);return r?`Trop grand : attendu que ${e.origin??`la valeur`} ait ${n}${e.maximum.toString()} ${r.unit}`:`Trop grand : attendu que ${e.origin??`la valeur`} soit ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`≥`:`>`,r=t(e.origin);return r?`Trop petit : attendu que ${e.origin} ait ${n}${e.minimum.toString()} ${r.unit}`:`Trop petit : attendu que ${e.origin} soit ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Chaîne invalide : doit commencer par "${t.prefix}"`:t.format===`ends_with`?`Chaîne invalide : doit se terminer par "${t.suffix}"`:t.format===`includes`?`Chaîne invalide : doit inclure "${t.includes}"`:t.format===`regex`?`Chaîne invalide : doit correspondre au motif ${t.pattern}`:`${r[t.format]??e.format} invalide`}case`not_multiple_of`:return`Nombre invalide : doit être un multiple de ${e.divisor}`;case`unrecognized_keys`:return`Clé${e.keys.length>1?`s`:``} non reconnue${e.keys.length>1?`s`:``} : ${_(e.keys,`, `)}`;case`invalid_key`:return`Clé invalide dans ${e.origin}`;case`invalid_union`:return`Entrée invalide`;case`invalid_element`:return`Valeur invalide dans ${e.origin}`;default:return`Entrée invalide`}}};function wa(){return{localeError:Ca()}}var Ta=()=>{let e={string:{label:`מחרוזת`,gender:`f`},number:{label:`מספר`,gender:`m`},boolean:{label:`ערך בוליאני`,gender:`m`},bigint:{label:`BigInt`,gender:`m`},date:{label:`תאריך`,gender:`m`},array:{label:`מערך`,gender:`m`},object:{label:`אובייקט`,gender:`m`},null:{label:`ערך ריק (null)`,gender:`m`},undefined:{label:`ערך לא מוגדר (undefined)`,gender:`m`},symbol:{label:`סימבול (Symbol)`,gender:`m`},function:{label:`פונקציה`,gender:`f`},map:{label:`מפה (Map)`,gender:`f`},set:{label:`קבוצה (Set)`,gender:`f`},file:{label:`קובץ`,gender:`m`},promise:{label:`Promise`,gender:`m`},NaN:{label:`NaN`,gender:`m`},unknown:{label:`ערך לא ידוע`,gender:`m`},value:{label:`ערך`,gender:`m`}},t={string:{unit:`תווים`,shortLabel:`קצר`,longLabel:`ארוך`},file:{unit:`בייטים`,shortLabel:`קטן`,longLabel:`גדול`},array:{unit:`פריטים`,shortLabel:`קטן`,longLabel:`גדול`},set:{unit:`פריטים`,shortLabel:`קטן`,longLabel:`גדול`},number:{unit:``,shortLabel:`קטן`,longLabel:`גדול`}},n=t=>t?e[t]:void 0,r=t=>{let r=n(t);return r?r.label:t??e.unknown.label},i=e=>`ה${r(e)}`,a=e=>(n(e)?.gender??`m`)===`f`?`צריכה להיות`:`צריך להיות`,o=e=>e?t[e]??null:null,s=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:return Array.isArray(e)?`array`:e===null?`null`:Object.getPrototypeOf(e)!==Object.prototype&&e.constructor?e.constructor.name:`object`;default:return t}},c={regex:{label:`קלט`,gender:`m`},email:{label:`כתובת אימייל`,gender:`f`},url:{label:`כתובת רשת`,gender:`f`},emoji:{label:`אימוג'י`,gender:`m`},uuid:{label:`UUID`,gender:`m`},nanoid:{label:`nanoid`,gender:`m`},guid:{label:`GUID`,gender:`m`},cuid:{label:`cuid`,gender:`m`},cuid2:{label:`cuid2`,gender:`m`},ulid:{label:`ULID`,gender:`m`},xid:{label:`XID`,gender:`m`},ksuid:{label:`KSUID`,gender:`m`},datetime:{label:`תאריך וזמן ISO`,gender:`m`},date:{label:`תאריך ISO`,gender:`m`},time:{label:`זמן ISO`,gender:`m`},duration:{label:`משך זמן ISO`,gender:`m`},ipv4:{label:`כתובת IPv4`,gender:`f`},ipv6:{label:`כתובת IPv6`,gender:`f`},cidrv4:{label:`טווח IPv4`,gender:`m`},cidrv6:{label:`טווח IPv6`,gender:`m`},base64:{label:`מחרוזת בבסיס 64`,gender:`f`},base64url:{label:`מחרוזת בבסיס 64 לכתובות רשת`,gender:`f`},json_string:{label:`מחרוזת JSON`,gender:`f`},e164:{label:`מספר E.164`,gender:`m`},jwt:{label:`JWT`,gender:`m`},ends_with:{label:`קלט`,gender:`m`},includes:{label:`קלט`,gender:`m`},lowercase:{label:`קלט`,gender:`m`},starts_with:{label:`קלט`,gender:`m`},uppercase:{label:`קלט`,gender:`m`}};return t=>{switch(t.code){case`invalid_type`:{let n=t.expected,i=r(n),a=s(t.input);return`קלט לא תקין: צריך להיות ${i}, התקבל ${e[a]?.label??a}`}case`invalid_value`:{if(t.values.length===1)return`ערך לא תקין: הערך חייב להיות ${S(t.values[0])}`;let e=t.values.map(e=>S(e));if(t.values.length===2)return`ערך לא תקין: האפשרויות המתאימות הן ${e[0]} או ${e[1]}`;let n=e[e.length-1];return`ערך לא תקין: האפשרויות המתאימות הן ${e.slice(0,-1).join(`, `)} או ${n}`}case`too_big`:{let e=o(t.origin),n=i(t.origin??`value`);if(t.origin===`string`)return`${e?.longLabel??`ארוך`} מדי: ${n} צריכה להכיל ${t.maximum.toString()} ${e?.unit??``} ${t.inclusive?`או פחות`:`לכל היותר`}`.trim();if(t.origin===`number`)return`גדול מדי: ${n} צריך להיות ${t.inclusive?`קטן או שווה ל-${t.maximum}`:`קטן מ-${t.maximum}`}`;if(t.origin===`array`||t.origin===`set`)return`גדול מדי: ${n} ${t.origin===`set`?`צריכה`:`צריך`} להכיל ${t.inclusive?`${t.maximum} ${e?.unit??``} או פחות`:`פחות מ-${t.maximum} ${e?.unit??``}`}`.trim();let r=t.inclusive?`<=`:`<`,s=a(t.origin??`value`);return e?.unit?`${e.longLabel} מדי: ${n} ${s} ${r}${t.maximum.toString()} ${e.unit}`:`${e?.longLabel??`גדול`} מדי: ${n} ${s} ${r}${t.maximum.toString()}`}case`too_small`:{let e=o(t.origin),n=i(t.origin??`value`);if(t.origin===`string`)return`${e?.shortLabel??`קצר`} מדי: ${n} צריכה להכיל ${t.minimum.toString()} ${e?.unit??``} ${t.inclusive?`או יותר`:`לפחות`}`.trim();if(t.origin===`number`)return`קטן מדי: ${n} צריך להיות ${t.inclusive?`גדול או שווה ל-${t.minimum}`:`גדול מ-${t.minimum}`}`;if(t.origin===`array`||t.origin===`set`){let r=t.origin===`set`?`צריכה`:`צריך`;return t.minimum===1&&t.inclusive?`קטן מדי: ${n} ${r} להכיל ${t.origin,`לפחות פריט אחד`}`:`קטן מדי: ${n} ${r} להכיל ${t.inclusive?`${t.minimum} ${e?.unit??``} או יותר`:`יותר מ-${t.minimum} ${e?.unit??``}`}`.trim()}let r=t.inclusive?`>=`:`>`,s=a(t.origin??`value`);return e?.unit?`${e.shortLabel} מדי: ${n} ${s} ${r}${t.minimum.toString()} ${e.unit}`:`${e?.shortLabel??`קטן`} מדי: ${n} ${s} ${r}${t.minimum.toString()}`}case`invalid_format`:{let e=t;if(e.format===`starts_with`)return`המחרוזת חייבת להתחיל ב "${e.prefix}"`;if(e.format===`ends_with`)return`המחרוזת חייבת להסתיים ב "${e.suffix}"`;if(e.format===`includes`)return`המחרוזת חייבת לכלול "${e.includes}"`;if(e.format===`regex`)return`המחרוזת חייבת להתאים לתבנית ${e.pattern}`;let n=c[e.format];return`${n?.label??e.format} לא ${(n?.gender??`m`)===`f`?`תקינה`:`תקין`}`}case`not_multiple_of`:return`מספר לא תקין: חייב להיות מכפלה של ${t.divisor}`;case`unrecognized_keys`:return`מפתח${t.keys.length>1?`ות`:``} לא מזוה${t.keys.length>1?`ים`:`ה`}: ${_(t.keys,`, `)}`;case`invalid_key`:return`שדה לא תקין באובייקט`;case`invalid_union`:return`קלט לא תקין`;case`invalid_element`:return`ערך לא תקין ב${i(t.origin??`array`)}`;default:return`קלט לא תקין`}}};function Ea(){return{localeError:Ta()}}var Da=()=>{let e={string:{unit:`karakter`,verb:`legyen`},file:{unit:`byte`,verb:`legyen`},array:{unit:`elem`,verb:`legyen`},set:{unit:`elem`,verb:`legyen`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`szám`;case`object`:if(Array.isArray(e))return`tömb`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`bemenet`,email:`email cím`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO időbélyeg`,date:`ISO dátum`,time:`ISO idő`,duration:`ISO időintervallum`,ipv4:`IPv4 cím`,ipv6:`IPv6 cím`,cidrv4:`IPv4 tartomány`,cidrv6:`IPv6 tartomány`,base64:`base64-kódolt string`,base64url:`base64url-kódolt string`,json_string:`JSON string`,e164:`E.164 szám`,jwt:`JWT`,template_literal:`bemenet`};return e=>{switch(e.code){case`invalid_type`:return`Érvénytelen bemenet: a várt érték ${e.expected}, a kapott érték ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Érvénytelen bemenet: a várt érték ${S(e.values[0])}`:`Érvénytelen opció: valamelyik érték várt ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Túl nagy: ${e.origin??`érték`} mérete túl nagy ${n}${e.maximum.toString()} ${r.unit??`elem`}`:`Túl nagy: a bemeneti érték ${e.origin??`érték`} túl nagy: ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Túl kicsi: a bemeneti érték ${e.origin} mérete túl kicsi ${n}${e.minimum.toString()} ${r.unit}`:`Túl kicsi: a bemeneti érték ${e.origin} túl kicsi ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Érvénytelen string: "${t.prefix}" értékkel kell kezdődnie`:t.format===`ends_with`?`Érvénytelen string: "${t.suffix}" értékkel kell végződnie`:t.format===`includes`?`Érvénytelen string: "${t.includes}" értéket kell tartalmaznia`:t.format===`regex`?`Érvénytelen string: ${t.pattern} mintának kell megfelelnie`:`Érvénytelen ${r[t.format]??e.format}`}case`not_multiple_of`:return`Érvénytelen szám: ${e.divisor} többszörösének kell lennie`;case`unrecognized_keys`:return`Ismeretlen kulcs${e.keys.length>1?`s`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Érvénytelen kulcs ${e.origin}`;case`invalid_union`:return`Érvénytelen bemenet`;case`invalid_element`:return`Érvénytelen érték: ${e.origin}`;default:return`Érvénytelen bemenet`}}};function Oa(){return{localeError:Da()}}var ka=()=>{let e={string:{unit:`karakter`,verb:`memiliki`},file:{unit:`byte`,verb:`memiliki`},array:{unit:`item`,verb:`memiliki`},set:{unit:`item`,verb:`memiliki`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`input`,email:`alamat email`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`tanggal dan waktu format ISO`,date:`tanggal format ISO`,time:`jam format ISO`,duration:`durasi format ISO`,ipv4:`alamat IPv4`,ipv6:`alamat IPv6`,cidrv4:`rentang alamat IPv4`,cidrv6:`rentang alamat IPv6`,base64:`string dengan enkode base64`,base64url:`string dengan enkode base64url`,json_string:`string JSON`,e164:`angka E.164`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`Input tidak valid: diharapkan ${e.expected}, diterima ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Input tidak valid: diharapkan ${S(e.values[0])}`:`Pilihan tidak valid: diharapkan salah satu dari ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Terlalu besar: diharapkan ${e.origin??`value`} memiliki ${n}${e.maximum.toString()} ${r.unit??`elemen`}`:`Terlalu besar: diharapkan ${e.origin??`value`} menjadi ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Terlalu kecil: diharapkan ${e.origin} memiliki ${n}${e.minimum.toString()} ${r.unit}`:`Terlalu kecil: diharapkan ${e.origin} menjadi ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`String tidak valid: harus dimulai dengan "${t.prefix}"`:t.format===`ends_with`?`String tidak valid: harus berakhir dengan "${t.suffix}"`:t.format===`includes`?`String tidak valid: harus menyertakan "${t.includes}"`:t.format===`regex`?`String tidak valid: harus sesuai pola ${t.pattern}`:`${r[t.format]??e.format} tidak valid`}case`not_multiple_of`:return`Angka tidak valid: harus kelipatan dari ${e.divisor}`;case`unrecognized_keys`:return`Kunci tidak dikenali ${e.keys.length>1?`s`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Kunci tidak valid di ${e.origin}`;case`invalid_union`:return`Input tidak valid`;case`invalid_element`:return`Nilai tidak valid di ${e.origin}`;default:return`Input tidak valid`}}};function Aa(){return{localeError:ka()}}var ja=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`númer`;case`object`:if(Array.isArray(e))return`fylki`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},Ma=()=>{let e={string:{unit:`stafi`,verb:`að hafa`},file:{unit:`bæti`,verb:`að hafa`},array:{unit:`hluti`,verb:`að hafa`},set:{unit:`hluti`,verb:`að hafa`}};function t(t){return e[t]??null}let n={regex:`gildi`,email:`netfang`,url:`vefslóð`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO dagsetning og tími`,date:`ISO dagsetning`,time:`ISO tími`,duration:`ISO tímalengd`,ipv4:`IPv4 address`,ipv6:`IPv6 address`,cidrv4:`IPv4 range`,cidrv6:`IPv6 range`,base64:`base64-encoded strengur`,base64url:`base64url-encoded strengur`,json_string:`JSON strengur`,e164:`E.164 tölugildi`,jwt:`JWT`,template_literal:`gildi`};return e=>{switch(e.code){case`invalid_type`:return`Rangt gildi: Þú slóst inn ${ja(e.input)} þar sem á að vera ${e.expected}`;case`invalid_value`:return e.values.length===1?`Rangt gildi: gert ráð fyrir ${S(e.values[0])}`:`Ógilt val: má vera eitt af eftirfarandi ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Of stórt: gert er ráð fyrir að ${e.origin??`gildi`} hafi ${n}${e.maximum.toString()} ${r.unit??`hluti`}`:`Of stórt: gert er ráð fyrir að ${e.origin??`gildi`} sé ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Of lítið: gert er ráð fyrir að ${e.origin} hafi ${n}${e.minimum.toString()} ${r.unit}`:`Of lítið: gert er ráð fyrir að ${e.origin} sé ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ógildur strengur: verður að byrja á "${t.prefix}"`:t.format===`ends_with`?`Ógildur strengur: verður að enda á "${t.suffix}"`:t.format===`includes`?`Ógildur strengur: verður að innihalda "${t.includes}"`:t.format===`regex`?`Ógildur strengur: verður að fylgja mynstri ${t.pattern}`:`Rangt ${n[t.format]??e.format}`}case`not_multiple_of`:return`Röng tala: verður að vera margfeldi af ${e.divisor}`;case`unrecognized_keys`:return`Óþekkt ${e.keys.length>1?`ir lyklar`:`ur lykill`}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Rangur lykill í ${e.origin}`;case`invalid_union`:return`Rangt gildi`;case`invalid_element`:return`Rangt gildi í ${e.origin}`;default:return`Rangt gildi`}}};function Na(){return{localeError:Ma()}}var Pa=()=>{let e={string:{unit:`caratteri`,verb:`avere`},file:{unit:`byte`,verb:`avere`},array:{unit:`elementi`,verb:`avere`},set:{unit:`elementi`,verb:`avere`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`numero`;case`object`:if(Array.isArray(e))return`vettore`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`input`,email:`indirizzo email`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`data e ora ISO`,date:`data ISO`,time:`ora ISO`,duration:`durata ISO`,ipv4:`indirizzo IPv4`,ipv6:`indirizzo IPv6`,cidrv4:`intervallo IPv4`,cidrv6:`intervallo IPv6`,base64:`stringa codificata in base64`,base64url:`URL codificata in base64`,json_string:`stringa JSON`,e164:`numero E.164`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`Input non valido: atteso ${e.expected}, ricevuto ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Input non valido: atteso ${S(e.values[0])}`:`Opzione non valida: atteso uno tra ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Troppo grande: ${e.origin??`valore`} deve avere ${n}${e.maximum.toString()} ${r.unit??`elementi`}`:`Troppo grande: ${e.origin??`valore`} deve essere ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Troppo piccolo: ${e.origin} deve avere ${n}${e.minimum.toString()} ${r.unit}`:`Troppo piccolo: ${e.origin} deve essere ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Stringa non valida: deve iniziare con "${t.prefix}"`:t.format===`ends_with`?`Stringa non valida: deve terminare con "${t.suffix}"`:t.format===`includes`?`Stringa non valida: deve includere "${t.includes}"`:t.format===`regex`?`Stringa non valida: deve corrispondere al pattern ${t.pattern}`:`Invalid ${r[t.format]??e.format}`}case`not_multiple_of`:return`Numero non valido: deve essere un multiplo di ${e.divisor}`;case`unrecognized_keys`:return`Chiav${e.keys.length>1?`i`:`e`} non riconosciut${e.keys.length>1?`e`:`a`}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Chiave non valida in ${e.origin}`;case`invalid_union`:return`Input non valido`;case`invalid_element`:return`Valore non valido in ${e.origin}`;default:return`Input non valido`}}};function Fa(){return{localeError:Pa()}}var Ia=()=>{let e={string:{unit:`文字`,verb:`である`},file:{unit:`バイト`,verb:`である`},array:{unit:`要素`,verb:`である`},set:{unit:`要素`,verb:`である`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`数値`;case`object`:if(Array.isArray(e))return`配列`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`入力値`,email:`メールアドレス`,url:`URL`,emoji:`絵文字`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO日時`,date:`ISO日付`,time:`ISO時刻`,duration:`ISO期間`,ipv4:`IPv4アドレス`,ipv6:`IPv6アドレス`,cidrv4:`IPv4範囲`,cidrv6:`IPv6範囲`,base64:`base64エンコード文字列`,base64url:`base64urlエンコード文字列`,json_string:`JSON文字列`,e164:`E.164番号`,jwt:`JWT`,template_literal:`入力値`};return e=>{switch(e.code){case`invalid_type`:return`無効な入力: ${e.expected}が期待されましたが、${n(e.input)}が入力されました`;case`invalid_value`:return e.values.length===1?`無効な入力: ${S(e.values[0])}が期待されました`:`無効な選択: ${_(e.values,`、`)}のいずれかである必要があります`;case`too_big`:{let n=e.inclusive?`以下である`:`より小さい`,r=t(e.origin);return r?`大きすぎる値: ${e.origin??`値`}は${e.maximum.toString()}${r.unit??`要素`}${n}必要があります`:`大きすぎる値: ${e.origin??`値`}は${e.maximum.toString()}${n}必要があります`}case`too_small`:{let n=e.inclusive?`以上である`:`より大きい`,r=t(e.origin);return r?`小さすぎる値: ${e.origin}は${e.minimum.toString()}${r.unit}${n}必要があります`:`小さすぎる値: ${e.origin}は${e.minimum.toString()}${n}必要があります`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`無効な文字列: "${t.prefix}"で始まる必要があります`:t.format===`ends_with`?`無効な文字列: "${t.suffix}"で終わる必要があります`:t.format===`includes`?`無効な文字列: "${t.includes}"を含む必要があります`:t.format===`regex`?`無効な文字列: パターン${t.pattern}に一致する必要があります`:`無効な${r[t.format]??e.format}`}case`not_multiple_of`:return`無効な数値: ${e.divisor}の倍数である必要があります`;case`unrecognized_keys`:return`認識されていないキー${e.keys.length>1?`群`:``}: ${_(e.keys,`、`)}`;case`invalid_key`:return`${e.origin}内の無効なキー`;case`invalid_union`:return`無効な入力`;case`invalid_element`:return`${e.origin}内の無効な値`;default:return`無効な入力`}}};function La(){return{localeError:Ia()}}var Ra=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`რიცხვი`;case`object`:if(Array.isArray(e))return`მასივი`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return{string:`სტრინგი`,boolean:`ბულეანი`,undefined:`undefined`,bigint:`bigint`,symbol:`symbol`,function:`ფუნქცია`}[t]??t},za=()=>{let e={string:{unit:`სიმბოლო`,verb:`უნდა შეიცავდეს`},file:{unit:`ბაიტი`,verb:`უნდა შეიცავდეს`},array:{unit:`ელემენტი`,verb:`უნდა შეიცავდეს`},set:{unit:`ელემენტი`,verb:`უნდა შეიცავდეს`}};function t(t){return e[t]??null}let n={regex:`შეყვანა`,email:`ელ-ფოსტის მისამართი`,url:`URL`,emoji:`ემოჯი`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`თარიღი-დრო`,date:`თარიღი`,time:`დრო`,duration:`ხანგრძლივობა`,ipv4:`IPv4 მისამართი`,ipv6:`IPv6 მისამართი`,cidrv4:`IPv4 დიაპაზონი`,cidrv6:`IPv6 დიაპაზონი`,base64:`base64-კოდირებული სტრინგი`,base64url:`base64url-კოდირებული სტრინგი`,json_string:`JSON სტრინგი`,e164:`E.164 ნომერი`,jwt:`JWT`,template_literal:`შეყვანა`};return e=>{switch(e.code){case`invalid_type`:return`არასწორი შეყვანა: მოსალოდნელი ${e.expected}, მიღებული ${Ra(e.input)}`;case`invalid_value`:return e.values.length===1?`არასწორი შეყვანა: მოსალოდნელი ${S(e.values[0])}`:`არასწორი ვარიანტი: მოსალოდნელია ერთ-ერთი ${_(e.values,`|`)}-დან`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`ზედმეტად დიდი: მოსალოდნელი ${e.origin??`მნიშვნელობა`} ${r.verb} ${n}${e.maximum.toString()} ${r.unit}`:`ზედმეტად დიდი: მოსალოდნელი ${e.origin??`მნიშვნელობა`} იყოს ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`ზედმეტად პატარა: მოსალოდნელი ${e.origin} ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`ზედმეტად პატარა: მოსალოდნელი ${e.origin} იყოს ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`არასწორი სტრინგი: უნდა იწყებოდეს "${t.prefix}"-ით`:t.format===`ends_with`?`არასწორი სტრინგი: უნდა მთავრდებოდეს "${t.suffix}"-ით`:t.format===`includes`?`არასწორი სტრინგი: უნდა შეიცავდეს "${t.includes}"-ს`:t.format===`regex`?`არასწორი სტრინგი: უნდა შეესაბამებოდეს შაბლონს ${t.pattern}`:`არასწორი ${n[t.format]??e.format}`}case`not_multiple_of`:return`არასწორი რიცხვი: უნდა იყოს ${e.divisor}-ის ჯერადი`;case`unrecognized_keys`:return`უცნობი გასაღებ${e.keys.length>1?`ები`:`ი`}: ${_(e.keys,`, `)}`;case`invalid_key`:return`არასწორი გასაღები ${e.origin}-ში`;case`invalid_union`:return`არასწორი შეყვანა`;case`invalid_element`:return`არასწორი მნიშვნელობა ${e.origin}-ში`;default:return`არასწორი შეყვანა`}}};function Ba(){return{localeError:za()}}var Va=()=>{let e={string:{unit:`តួអក្សរ`,verb:`គួរមាន`},file:{unit:`បៃ`,verb:`គួរមាន`},array:{unit:`ធាតុ`,verb:`គួរមាន`},set:{unit:`ធាតុ`,verb:`គួរមាន`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`មិនមែនជាលេខ (NaN)`:`លេខ`;case`object`:if(Array.isArray(e))return`អារេ (Array)`;if(e===null)return`គ្មានតម្លៃ (null)`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`ទិន្នន័យបញ្ចូល`,email:`អាសយដ្ឋានអ៊ីមែល`,url:`URL`,emoji:`សញ្ញាអារម្មណ៍`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`កាលបរិច្ឆេទ និងម៉ោង ISO`,date:`កាលបរិច្ឆេទ ISO`,time:`ម៉ោង ISO`,duration:`រយៈពេល ISO`,ipv4:`អាសយដ្ឋាន IPv4`,ipv6:`អាសយដ្ឋាន IPv6`,cidrv4:`ដែនអាសយដ្ឋាន IPv4`,cidrv6:`ដែនអាសយដ្ឋាន IPv6`,base64:`ខ្សែអក្សរអ៊ិកូដ base64`,base64url:`ខ្សែអក្សរអ៊ិកូដ base64url`,json_string:`ខ្សែអក្សរ JSON`,e164:`លេខ E.164`,jwt:`JWT`,template_literal:`ទិន្នន័យបញ្ចូល`};return e=>{switch(e.code){case`invalid_type`:return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${e.expected} ប៉ុន្តែទទួលបាន ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${S(e.values[0])}`:`ជម្រើសមិនត្រឹមត្រូវ៖ ត្រូវជាមួយក្នុងចំណោម ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`ធំពេក៖ ត្រូវការ ${e.origin??`តម្លៃ`} ${n} ${e.maximum.toString()} ${r.unit??`ធាតុ`}`:`ធំពេក៖ ត្រូវការ ${e.origin??`តម្លៃ`} ${n} ${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`តូចពេក៖ ត្រូវការ ${e.origin} ${n} ${e.minimum.toString()} ${r.unit}`:`តូចពេក៖ ត្រូវការ ${e.origin} ${n} ${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវចាប់ផ្តើមដោយ "${t.prefix}"`:t.format===`ends_with`?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវបញ្ចប់ដោយ "${t.suffix}"`:t.format===`includes`?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវមាន "${t.includes}"`:t.format===`regex`?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវតែផ្គូផ្គងនឹងទម្រង់ដែលបានកំណត់ ${t.pattern}`:`មិនត្រឹមត្រូវ៖ ${r[t.format]??e.format}`}case`not_multiple_of`:return`លេខមិនត្រឹមត្រូវ៖ ត្រូវតែជាពហុគុណនៃ ${e.divisor}`;case`unrecognized_keys`:return`រកឃើញសោមិនស្គាល់៖ ${_(e.keys,`, `)}`;case`invalid_key`:return`សោមិនត្រឹមត្រូវនៅក្នុង ${e.origin}`;case`invalid_union`:return`ទិន្នន័យមិនត្រឹមត្រូវ`;case`invalid_element`:return`ទិន្នន័យមិនត្រឹមត្រូវនៅក្នុង ${e.origin}`;default:return`ទិន្នន័យមិនត្រឹមត្រូវ`}}};function Ha(){return{localeError:Va()}}function Ua(){return Ha()}var Wa=()=>{let e={string:{unit:`문자`,verb:`to have`},file:{unit:`바이트`,verb:`to have`},array:{unit:`개`,verb:`to have`},set:{unit:`개`,verb:`to have`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`입력`,email:`이메일 주소`,url:`URL`,emoji:`이모지`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO 날짜시간`,date:`ISO 날짜`,time:`ISO 시간`,duration:`ISO 기간`,ipv4:`IPv4 주소`,ipv6:`IPv6 주소`,cidrv4:`IPv4 범위`,cidrv6:`IPv6 범위`,base64:`base64 인코딩 문자열`,base64url:`base64url 인코딩 문자열`,json_string:`JSON 문자열`,e164:`E.164 번호`,jwt:`JWT`,template_literal:`입력`};return e=>{switch(e.code){case`invalid_type`:return`잘못된 입력: 예상 타입은 ${e.expected}, 받은 타입은 ${n(e.input)}입니다`;case`invalid_value`:return e.values.length===1?`잘못된 입력: 값은 ${S(e.values[0])} 이어야 합니다`:`잘못된 옵션: ${_(e.values,`또는 `)} 중 하나여야 합니다`;case`too_big`:{let n=e.inclusive?`이하`:`미만`,r=n===`미만`?`이어야 합니다`:`여야 합니다`,i=t(e.origin),a=i?.unit??`요소`;return i?`${e.origin??`값`}이 너무 큽니다: ${e.maximum.toString()}${a} ${n}${r}`:`${e.origin??`값`}이 너무 큽니다: ${e.maximum.toString()} ${n}${r}`}case`too_small`:{let n=e.inclusive?`이상`:`초과`,r=n===`이상`?`이어야 합니다`:`여야 합니다`,i=t(e.origin),a=i?.unit??`요소`;return i?`${e.origin??`값`}이 너무 작습니다: ${e.minimum.toString()}${a} ${n}${r}`:`${e.origin??`값`}이 너무 작습니다: ${e.minimum.toString()} ${n}${r}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`잘못된 문자열: "${t.prefix}"(으)로 시작해야 합니다`:t.format===`ends_with`?`잘못된 문자열: "${t.suffix}"(으)로 끝나야 합니다`:t.format===`includes`?`잘못된 문자열: "${t.includes}"을(를) 포함해야 합니다`:t.format===`regex`?`잘못된 문자열: 정규식 ${t.pattern} 패턴과 일치해야 합니다`:`잘못된 ${r[t.format]??e.format}`}case`not_multiple_of`:return`잘못된 숫자: ${e.divisor}의 배수여야 합니다`;case`unrecognized_keys`:return`인식할 수 없는 키: ${_(e.keys,`, `)}`;case`invalid_key`:return`잘못된 키: ${e.origin}`;case`invalid_union`:return`잘못된 입력`;case`invalid_element`:return`잘못된 값: ${e.origin}`;default:return`잘못된 입력`}}};function Ga(){return{localeError:Wa()}}var Ka=e=>qa(typeof e,e),qa=(e,t=void 0)=>{switch(e){case`number`:return Number.isNaN(t)?`NaN`:`skaičius`;case`bigint`:return`sveikasis skaičius`;case`string`:return`eilutė`;case`boolean`:return`loginė reikšmė`;case`undefined`:case`void`:return`neapibrėžta reikšmė`;case`function`:return`funkcija`;case`symbol`:return`simbolis`;case`object`:return t===void 0?`nežinomas objektas`:t===null?`nulinė reikšmė`:Array.isArray(t)?`masyvas`:Object.getPrototypeOf(t)!==Object.prototype&&t.constructor?t.constructor.name:`objektas`;case`null`:return`nulinė reikšmė`}return e},Ja=e=>e.charAt(0).toUpperCase()+e.slice(1);function Ya(e){let t=Math.abs(e),n=t%10,r=t%100;return r>=11&&r<=19||n===0?`many`:n===1?`one`:`few`}var Xa=()=>{let e={string:{unit:{one:`simbolis`,few:`simboliai`,many:`simbolių`},verb:{smaller:{inclusive:`turi būti ne ilgesnė kaip`,notInclusive:`turi būti trumpesnė kaip`},bigger:{inclusive:`turi būti ne trumpesnė kaip`,notInclusive:`turi būti ilgesnė kaip`}}},file:{unit:{one:`baitas`,few:`baitai`,many:`baitų`},verb:{smaller:{inclusive:`turi būti ne didesnis kaip`,notInclusive:`turi būti mažesnis kaip`},bigger:{inclusive:`turi būti ne mažesnis kaip`,notInclusive:`turi būti didesnis kaip`}}},array:{unit:{one:`elementą`,few:`elementus`,many:`elementų`},verb:{smaller:{inclusive:`turi turėti ne daugiau kaip`,notInclusive:`turi turėti mažiau kaip`},bigger:{inclusive:`turi turėti ne mažiau kaip`,notInclusive:`turi turėti daugiau kaip`}}},set:{unit:{one:`elementą`,few:`elementus`,many:`elementų`},verb:{smaller:{inclusive:`turi turėti ne daugiau kaip`,notInclusive:`turi turėti mažiau kaip`},bigger:{inclusive:`turi turėti ne mažiau kaip`,notInclusive:`turi turėti daugiau kaip`}}}};function t(t,n,r,i){let a=e[t]??null;return a===null?a:{unit:a.unit[n],verb:a.verb[i][r?`inclusive`:`notInclusive`]}}let n={regex:`įvestis`,email:`el. pašto adresas`,url:`URL`,emoji:`jaustukas`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO data ir laikas`,date:`ISO data`,time:`ISO laikas`,duration:`ISO trukmė`,ipv4:`IPv4 adresas`,ipv6:`IPv6 adresas`,cidrv4:`IPv4 tinklo prefiksas (CIDR)`,cidrv6:`IPv6 tinklo prefiksas (CIDR)`,base64:`base64 užkoduota eilutė`,base64url:`base64url užkoduota eilutė`,json_string:`JSON eilutė`,e164:`E.164 numeris`,jwt:`JWT`,template_literal:`įvestis`};return e=>{switch(e.code){case`invalid_type`:return`Gautas tipas ${Ka(e.input)}, o tikėtasi - ${qa(e.expected)}`;case`invalid_value`:return e.values.length===1?`Privalo būti ${S(e.values[0])}`:`Privalo būti vienas iš ${_(e.values,`|`)} pasirinkimų`;case`too_big`:{let n=qa(e.origin),r=t(e.origin,Ya(Number(e.maximum)),e.inclusive??!1,`smaller`);if(r?.verb)return`${Ja(n??e.origin??`reikšmė`)} ${r.verb} ${e.maximum.toString()} ${r.unit??`elementų`}`;let i=e.inclusive?`ne didesnis kaip`:`mažesnis kaip`;return`${Ja(n??e.origin??`reikšmė`)} turi būti ${i} ${e.maximum.toString()} ${r?.unit}`}case`too_small`:{let n=qa(e.origin),r=t(e.origin,Ya(Number(e.minimum)),e.inclusive??!1,`bigger`);if(r?.verb)return`${Ja(n??e.origin??`reikšmė`)} ${r.verb} ${e.minimum.toString()} ${r.unit??`elementų`}`;let i=e.inclusive?`ne mažesnis kaip`:`didesnis kaip`;return`${Ja(n??e.origin??`reikšmė`)} turi būti ${i} ${e.minimum.toString()} ${r?.unit}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Eilutė privalo prasidėti "${t.prefix}"`:t.format===`ends_with`?`Eilutė privalo pasibaigti "${t.suffix}"`:t.format===`includes`?`Eilutė privalo įtraukti "${t.includes}"`:t.format===`regex`?`Eilutė privalo atitikti ${t.pattern}`:`Neteisingas ${n[t.format]??e.format}`}case`not_multiple_of`:return`Skaičius privalo būti ${e.divisor} kartotinis.`;case`unrecognized_keys`:return`Neatpažint${e.keys.length>1?`i`:`as`} rakt${e.keys.length>1?`ai`:`as`}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Rastas klaidingas raktas`;case`invalid_union`:return`Klaidinga įvestis`;case`invalid_element`:return`${Ja(qa(e.origin)??e.origin??`reikšmė`)} turi klaidingą įvestį`;default:return`Klaidinga įvestis`}}};function Za(){return{localeError:Xa()}}var Qa=()=>{let e={string:{unit:`знаци`,verb:`да имаат`},file:{unit:`бајти`,verb:`да имаат`},array:{unit:`ставки`,verb:`да имаат`},set:{unit:`ставки`,verb:`да имаат`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`број`;case`object`:if(Array.isArray(e))return`низа`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`внес`,email:`адреса на е-пошта`,url:`URL`,emoji:`емоџи`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO датум и време`,date:`ISO датум`,time:`ISO време`,duration:`ISO времетраење`,ipv4:`IPv4 адреса`,ipv6:`IPv6 адреса`,cidrv4:`IPv4 опсег`,cidrv6:`IPv6 опсег`,base64:`base64-енкодирана низа`,base64url:`base64url-енкодирана низа`,json_string:`JSON низа`,e164:`E.164 број`,jwt:`JWT`,template_literal:`внес`};return e=>{switch(e.code){case`invalid_type`:return`Грешен внес: се очекува ${e.expected}, примено ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Invalid input: expected ${S(e.values[0])}`:`Грешана опција: се очекува една ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Премногу голем: се очекува ${e.origin??`вредноста`} да има ${n}${e.maximum.toString()} ${r.unit??`елементи`}`:`Премногу голем: се очекува ${e.origin??`вредноста`} да биде ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Премногу мал: се очекува ${e.origin} да има ${n}${e.minimum.toString()} ${r.unit}`:`Премногу мал: се очекува ${e.origin} да биде ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Неважечка низа: мора да започнува со "${t.prefix}"`:t.format===`ends_with`?`Неважечка низа: мора да завршува со "${t.suffix}"`:t.format===`includes`?`Неважечка низа: мора да вклучува "${t.includes}"`:t.format===`regex`?`Неважечка низа: мора да одгоара на патернот ${t.pattern}`:`Invalid ${r[t.format]??e.format}`}case`not_multiple_of`:return`Грешен број: мора да биде делив со ${e.divisor}`;case`unrecognized_keys`:return`${e.keys.length>1?`Непрепознаени клучеви`:`Непрепознаен клуч`}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Грешен клуч во ${e.origin}`;case`invalid_union`:return`Грешен внес`;case`invalid_element`:return`Грешна вредност во ${e.origin}`;default:return`Грешен внес`}}};function $a(){return{localeError:Qa()}}var eo=()=>{let e={string:{unit:`aksara`,verb:`mempunyai`},file:{unit:`bait`,verb:`mempunyai`},array:{unit:`elemen`,verb:`mempunyai`},set:{unit:`elemen`,verb:`mempunyai`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`nombor`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`input`,email:`alamat e-mel`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`tarikh masa ISO`,date:`tarikh ISO`,time:`masa ISO`,duration:`tempoh ISO`,ipv4:`alamat IPv4`,ipv6:`alamat IPv6`,cidrv4:`julat IPv4`,cidrv6:`julat IPv6`,base64:`string dikodkan base64`,base64url:`string dikodkan base64url`,json_string:`string JSON`,e164:`nombor E.164`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`Input tidak sah: dijangka ${e.expected}, diterima ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Input tidak sah: dijangka ${S(e.values[0])}`:`Pilihan tidak sah: dijangka salah satu daripada ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Terlalu besar: dijangka ${e.origin??`nilai`} ${r.verb} ${n}${e.maximum.toString()} ${r.unit??`elemen`}`:`Terlalu besar: dijangka ${e.origin??`nilai`} adalah ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Terlalu kecil: dijangka ${e.origin} ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`Terlalu kecil: dijangka ${e.origin} adalah ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`String tidak sah: mesti bermula dengan "${t.prefix}"`:t.format===`ends_with`?`String tidak sah: mesti berakhir dengan "${t.suffix}"`:t.format===`includes`?`String tidak sah: mesti mengandungi "${t.includes}"`:t.format===`regex`?`String tidak sah: mesti sepadan dengan corak ${t.pattern}`:`${r[t.format]??e.format} tidak sah`}case`not_multiple_of`:return`Nombor tidak sah: perlu gandaan ${e.divisor}`;case`unrecognized_keys`:return`Kunci tidak dikenali: ${_(e.keys,`, `)}`;case`invalid_key`:return`Kunci tidak sah dalam ${e.origin}`;case`invalid_union`:return`Input tidak sah`;case`invalid_element`:return`Nilai tidak sah dalam ${e.origin}`;default:return`Input tidak sah`}}};function to(){return{localeError:eo()}}var no=()=>{let e={string:{unit:`tekens`,verb:`te hebben`},file:{unit:`bytes`,verb:`te hebben`},array:{unit:`elementen`,verb:`te hebben`},set:{unit:`elementen`,verb:`te hebben`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`getal`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`invoer`,email:`emailadres`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO datum en tijd`,date:`ISO datum`,time:`ISO tijd`,duration:`ISO duur`,ipv4:`IPv4-adres`,ipv6:`IPv6-adres`,cidrv4:`IPv4-bereik`,cidrv6:`IPv6-bereik`,base64:`base64-gecodeerde tekst`,base64url:`base64 URL-gecodeerde tekst`,json_string:`JSON string`,e164:`E.164-nummer`,jwt:`JWT`,template_literal:`invoer`};return e=>{switch(e.code){case`invalid_type`:return`Ongeldige invoer: verwacht ${e.expected}, ontving ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Ongeldige invoer: verwacht ${S(e.values[0])}`:`Ongeldige optie: verwacht één van ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Te groot: verwacht dat ${e.origin??`waarde`} ${r.verb} ${n}${e.maximum.toString()} ${r.unit??`elementen`}`:`Te groot: verwacht dat ${e.origin??`waarde`} ${n}${e.maximum.toString()} is`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Te klein: verwacht dat ${e.origin} ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`Te klein: verwacht dat ${e.origin} ${n}${e.minimum.toString()} is`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ongeldige tekst: moet met "${t.prefix}" beginnen`:t.format===`ends_with`?`Ongeldige tekst: moet op "${t.suffix}" eindigen`:t.format===`includes`?`Ongeldige tekst: moet "${t.includes}" bevatten`:t.format===`regex`?`Ongeldige tekst: moet overeenkomen met patroon ${t.pattern}`:`Ongeldig: ${r[t.format]??e.format}`}case`not_multiple_of`:return`Ongeldig getal: moet een veelvoud van ${e.divisor} zijn`;case`unrecognized_keys`:return`Onbekende key${e.keys.length>1?`s`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Ongeldige key in ${e.origin}`;case`invalid_union`:return`Ongeldige invoer`;case`invalid_element`:return`Ongeldige waarde in ${e.origin}`;default:return`Ongeldige invoer`}}};function ro(){return{localeError:no()}}var io=()=>{let e={string:{unit:`tegn`,verb:`å ha`},file:{unit:`bytes`,verb:`å ha`},array:{unit:`elementer`,verb:`å inneholde`},set:{unit:`elementer`,verb:`å inneholde`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`tall`;case`object`:if(Array.isArray(e))return`liste`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`input`,email:`e-postadresse`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO dato- og klokkeslett`,date:`ISO-dato`,time:`ISO-klokkeslett`,duration:`ISO-varighet`,ipv4:`IPv4-område`,ipv6:`IPv6-område`,cidrv4:`IPv4-spekter`,cidrv6:`IPv6-spekter`,base64:`base64-enkodet streng`,base64url:`base64url-enkodet streng`,json_string:`JSON-streng`,e164:`E.164-nummer`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`Ugyldig input: forventet ${e.expected}, fikk ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Ugyldig verdi: forventet ${S(e.values[0])}`:`Ugyldig valg: forventet en av ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`For stor(t): forventet ${e.origin??`value`} til å ha ${n}${e.maximum.toString()} ${r.unit??`elementer`}`:`For stor(t): forventet ${e.origin??`value`} til å ha ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`For lite(n): forventet ${e.origin} til å ha ${n}${e.minimum.toString()} ${r.unit}`:`For lite(n): forventet ${e.origin} til å ha ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ugyldig streng: må starte med "${t.prefix}"`:t.format===`ends_with`?`Ugyldig streng: må ende med "${t.suffix}"`:t.format===`includes`?`Ugyldig streng: må inneholde "${t.includes}"`:t.format===`regex`?`Ugyldig streng: må matche mønsteret ${t.pattern}`:`Ugyldig ${r[t.format]??e.format}`}case`not_multiple_of`:return`Ugyldig tall: må være et multiplum av ${e.divisor}`;case`unrecognized_keys`:return`${e.keys.length>1?`Ukjente nøkler`:`Ukjent nøkkel`}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Ugyldig nøkkel i ${e.origin}`;case`invalid_union`:return`Ugyldig input`;case`invalid_element`:return`Ugyldig verdi i ${e.origin}`;default:return`Ugyldig input`}}};function ao(){return{localeError:io()}}var oo=()=>{let e={string:{unit:`harf`,verb:`olmalıdır`},file:{unit:`bayt`,verb:`olmalıdır`},array:{unit:`unsur`,verb:`olmalıdır`},set:{unit:`unsur`,verb:`olmalıdır`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`numara`;case`object`:if(Array.isArray(e))return`saf`;if(e===null)return`gayb`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`giren`,email:`epostagâh`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO hengâmı`,date:`ISO tarihi`,time:`ISO zamanı`,duration:`ISO müddeti`,ipv4:`IPv4 nişânı`,ipv6:`IPv6 nişânı`,cidrv4:`IPv4 menzili`,cidrv6:`IPv6 menzili`,base64:`base64-şifreli metin`,base64url:`base64url-şifreli metin`,json_string:`JSON metin`,e164:`E.164 sayısı`,jwt:`JWT`,template_literal:`giren`};return e=>{switch(e.code){case`invalid_type`:return`Fâsit giren: umulan ${e.expected}, alınan ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Fâsit giren: umulan ${S(e.values[0])}`:`Fâsit tercih: mûteberler ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Fazla büyük: ${e.origin??`value`}, ${n}${e.maximum.toString()} ${r.unit??`elements`} sahip olmalıydı.`:`Fazla büyük: ${e.origin??`value`}, ${n}${e.maximum.toString()} olmalıydı.`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Fazla küçük: ${e.origin}, ${n}${e.minimum.toString()} ${r.unit} sahip olmalıydı.`:`Fazla küçük: ${e.origin}, ${n}${e.minimum.toString()} olmalıydı.`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Fâsit metin: "${t.prefix}" ile başlamalı.`:t.format===`ends_with`?`Fâsit metin: "${t.suffix}" ile bitmeli.`:t.format===`includes`?`Fâsit metin: "${t.includes}" ihtivâ etmeli.`:t.format===`regex`?`Fâsit metin: ${t.pattern} nakşına uymalı.`:`Fâsit ${r[t.format]??e.format}`}case`not_multiple_of`:return`Fâsit sayı: ${e.divisor} katı olmalıydı.`;case`unrecognized_keys`:return`Tanınmayan anahtar ${e.keys.length>1?`s`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} için tanınmayan anahtar var.`;case`invalid_union`:return`Giren tanınamadı.`;case`invalid_element`:return`${e.origin} için tanınmayan kıymet var.`;default:return`Kıymet tanınamadı.`}}};function so(){return{localeError:oo()}}var co=()=>{let e={string:{unit:`توکي`,verb:`ولري`},file:{unit:`بایټس`,verb:`ولري`},array:{unit:`توکي`,verb:`ولري`},set:{unit:`توکي`,verb:`ولري`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`عدد`;case`object`:if(Array.isArray(e))return`ارې`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`ورودي`,email:`بریښنالیک`,url:`یو آر ال`,emoji:`ایموجي`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`نیټه او وخت`,date:`نېټه`,time:`وخت`,duration:`موده`,ipv4:`د IPv4 پته`,ipv6:`د IPv6 پته`,cidrv4:`د IPv4 ساحه`,cidrv6:`د IPv6 ساحه`,base64:`base64-encoded متن`,base64url:`base64url-encoded متن`,json_string:`JSON متن`,e164:`د E.164 شمېره`,jwt:`JWT`,template_literal:`ورودي`};return e=>{switch(e.code){case`invalid_type`:return`ناسم ورودي: باید ${e.expected} وای, مګر ${n(e.input)} ترلاسه شو`;case`invalid_value`:return e.values.length===1?`ناسم ورودي: باید ${S(e.values[0])} وای`:`ناسم انتخاب: باید یو له ${_(e.values,`|`)} څخه وای`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`ډیر لوی: ${e.origin??`ارزښت`} باید ${n}${e.maximum.toString()} ${r.unit??`عنصرونه`} ولري`:`ډیر لوی: ${e.origin??`ارزښت`} باید ${n}${e.maximum.toString()} وي`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`ډیر کوچنی: ${e.origin} باید ${n}${e.minimum.toString()} ${r.unit} ولري`:`ډیر کوچنی: ${e.origin} باید ${n}${e.minimum.toString()} وي`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`ناسم متن: باید د "${t.prefix}" سره پیل شي`:t.format===`ends_with`?`ناسم متن: باید د "${t.suffix}" سره پای ته ورسيږي`:t.format===`includes`?`ناسم متن: باید "${t.includes}" ولري`:t.format===`regex`?`ناسم متن: باید د ${t.pattern} سره مطابقت ولري`:`${r[t.format]??e.format} ناسم دی`}case`not_multiple_of`:return`ناسم عدد: باید د ${e.divisor} مضرب وي`;case`unrecognized_keys`:return`ناسم ${e.keys.length>1?`کلیډونه`:`کلیډ`}: ${_(e.keys,`, `)}`;case`invalid_key`:return`ناسم کلیډ په ${e.origin} کې`;case`invalid_union`:return`ناسمه ورودي`;case`invalid_element`:return`ناسم عنصر په ${e.origin} کې`;default:return`ناسمه ورودي`}}};function lo(){return{localeError:co()}}var uo=()=>{let e={string:{unit:`znaków`,verb:`mieć`},file:{unit:`bajtów`,verb:`mieć`},array:{unit:`elementów`,verb:`mieć`},set:{unit:`elementów`,verb:`mieć`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`liczba`;case`object`:if(Array.isArray(e))return`tablica`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`wyrażenie`,email:`adres email`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`data i godzina w formacie ISO`,date:`data w formacie ISO`,time:`godzina w formacie ISO`,duration:`czas trwania ISO`,ipv4:`adres IPv4`,ipv6:`adres IPv6`,cidrv4:`zakres IPv4`,cidrv6:`zakres IPv6`,base64:`ciąg znaków zakodowany w formacie base64`,base64url:`ciąg znaków zakodowany w formacie base64url`,json_string:`ciąg znaków w formacie JSON`,e164:`liczba E.164`,jwt:`JWT`,template_literal:`wejście`};return e=>{switch(e.code){case`invalid_type`:return`Nieprawidłowe dane wejściowe: oczekiwano ${e.expected}, otrzymano ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Nieprawidłowe dane wejściowe: oczekiwano ${S(e.values[0])}`:`Nieprawidłowa opcja: oczekiwano jednej z wartości ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Za duża wartość: oczekiwano, że ${e.origin??`wartość`} będzie mieć ${n}${e.maximum.toString()} ${r.unit??`elementów`}`:`Zbyt duż(y/a/e): oczekiwano, że ${e.origin??`wartość`} będzie wynosić ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Za mała wartość: oczekiwano, że ${e.origin??`wartość`} będzie mieć ${n}${e.minimum.toString()} ${r.unit??`elementów`}`:`Zbyt mał(y/a/e): oczekiwano, że ${e.origin??`wartość`} będzie wynosić ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Nieprawidłowy ciąg znaków: musi zaczynać się od "${t.prefix}"`:t.format===`ends_with`?`Nieprawidłowy ciąg znaków: musi kończyć się na "${t.suffix}"`:t.format===`includes`?`Nieprawidłowy ciąg znaków: musi zawierać "${t.includes}"`:t.format===`regex`?`Nieprawidłowy ciąg znaków: musi odpowiadać wzorcowi ${t.pattern}`:`Nieprawidłow(y/a/e) ${r[t.format]??e.format}`}case`not_multiple_of`:return`Nieprawidłowa liczba: musi być wielokrotnością ${e.divisor}`;case`unrecognized_keys`:return`Nierozpoznane klucze${e.keys.length>1?`s`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Nieprawidłowy klucz w ${e.origin}`;case`invalid_union`:return`Nieprawidłowe dane wejściowe`;case`invalid_element`:return`Nieprawidłowa wartość w ${e.origin}`;default:return`Nieprawidłowe dane wejściowe`}}};function fo(){return{localeError:uo()}}var po=()=>{let e={string:{unit:`caracteres`,verb:`ter`},file:{unit:`bytes`,verb:`ter`},array:{unit:`itens`,verb:`ter`},set:{unit:`itens`,verb:`ter`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`número`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`nulo`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`padrão`,email:`endereço de e-mail`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`data e hora ISO`,date:`data ISO`,time:`hora ISO`,duration:`duração ISO`,ipv4:`endereço IPv4`,ipv6:`endereço IPv6`,cidrv4:`faixa de IPv4`,cidrv6:`faixa de IPv6`,base64:`texto codificado em base64`,base64url:`URL codificada em base64`,json_string:`texto JSON`,e164:`número E.164`,jwt:`JWT`,template_literal:`entrada`};return e=>{switch(e.code){case`invalid_type`:return`Tipo inválido: esperado ${e.expected}, recebido ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Entrada inválida: esperado ${S(e.values[0])}`:`Opção inválida: esperada uma das ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Muito grande: esperado que ${e.origin??`valor`} tivesse ${n}${e.maximum.toString()} ${r.unit??`elementos`}`:`Muito grande: esperado que ${e.origin??`valor`} fosse ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Muito pequeno: esperado que ${e.origin} tivesse ${n}${e.minimum.toString()} ${r.unit}`:`Muito pequeno: esperado que ${e.origin} fosse ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Texto inválido: deve começar com "${t.prefix}"`:t.format===`ends_with`?`Texto inválido: deve terminar com "${t.suffix}"`:t.format===`includes`?`Texto inválido: deve incluir "${t.includes}"`:t.format===`regex`?`Texto inválido: deve corresponder ao padrão ${t.pattern}`:`${r[t.format]??e.format} inválido`}case`not_multiple_of`:return`Número inválido: deve ser múltiplo de ${e.divisor}`;case`unrecognized_keys`:return`Chave${e.keys.length>1?`s`:``} desconhecida${e.keys.length>1?`s`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Chave inválida em ${e.origin}`;case`invalid_union`:return`Entrada inválida`;case`invalid_element`:return`Valor inválido em ${e.origin}`;default:return`Campo inválido`}}};function mo(){return{localeError:po()}}function ho(e,t,n,r){let i=Math.abs(e),a=i%10,o=i%100;return o>=11&&o<=19?r:a===1?t:a>=2&&a<=4?n:r}var go=()=>{let e={string:{unit:{one:`символ`,few:`символа`,many:`символов`},verb:`иметь`},file:{unit:{one:`байт`,few:`байта`,many:`байт`},verb:`иметь`},array:{unit:{one:`элемент`,few:`элемента`,many:`элементов`},verb:`иметь`},set:{unit:{one:`элемент`,few:`элемента`,many:`элементов`},verb:`иметь`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`число`;case`object`:if(Array.isArray(e))return`массив`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`ввод`,email:`email адрес`,url:`URL`,emoji:`эмодзи`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO дата и время`,date:`ISO дата`,time:`ISO время`,duration:`ISO длительность`,ipv4:`IPv4 адрес`,ipv6:`IPv6 адрес`,cidrv4:`IPv4 диапазон`,cidrv6:`IPv6 диапазон`,base64:`строка в формате base64`,base64url:`строка в формате base64url`,json_string:`JSON строка`,e164:`номер E.164`,jwt:`JWT`,template_literal:`ввод`};return e=>{switch(e.code){case`invalid_type`:return`Неверный ввод: ожидалось ${e.expected}, получено ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Неверный ввод: ожидалось ${S(e.values[0])}`:`Неверный вариант: ожидалось одно из ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);if(r){let t=ho(Number(e.maximum),r.unit.one,r.unit.few,r.unit.many);return`Слишком большое значение: ожидалось, что ${e.origin??`значение`} будет иметь ${n}${e.maximum.toString()} ${t}`}return`Слишком большое значение: ожидалось, что ${e.origin??`значение`} будет ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);if(r){let t=ho(Number(e.minimum),r.unit.one,r.unit.few,r.unit.many);return`Слишком маленькое значение: ожидалось, что ${e.origin} будет иметь ${n}${e.minimum.toString()} ${t}`}return`Слишком маленькое значение: ожидалось, что ${e.origin} будет ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Неверная строка: должна начинаться с "${t.prefix}"`:t.format===`ends_with`?`Неверная строка: должна заканчиваться на "${t.suffix}"`:t.format===`includes`?`Неверная строка: должна содержать "${t.includes}"`:t.format===`regex`?`Неверная строка: должна соответствовать шаблону ${t.pattern}`:`Неверный ${r[t.format]??e.format}`}case`not_multiple_of`:return`Неверное число: должно быть кратным ${e.divisor}`;case`unrecognized_keys`:return`Нераспознанн${e.keys.length>1?`ые`:`ый`} ключ${e.keys.length>1?`и`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Неверный ключ в ${e.origin}`;case`invalid_union`:return`Неверные входные данные`;case`invalid_element`:return`Неверное значение в ${e.origin}`;default:return`Неверные входные данные`}}};function _o(){return{localeError:go()}}var vo=()=>{let e={string:{unit:`znakov`,verb:`imeti`},file:{unit:`bajtov`,verb:`imeti`},array:{unit:`elementov`,verb:`imeti`},set:{unit:`elementov`,verb:`imeti`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`število`;case`object`:if(Array.isArray(e))return`tabela`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`vnos`,email:`e-poštni naslov`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO datum in čas`,date:`ISO datum`,time:`ISO čas`,duration:`ISO trajanje`,ipv4:`IPv4 naslov`,ipv6:`IPv6 naslov`,cidrv4:`obseg IPv4`,cidrv6:`obseg IPv6`,base64:`base64 kodiran niz`,base64url:`base64url kodiran niz`,json_string:`JSON niz`,e164:`E.164 številka`,jwt:`JWT`,template_literal:`vnos`};return e=>{switch(e.code){case`invalid_type`:return`Neveljaven vnos: pričakovano ${e.expected}, prejeto ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Neveljaven vnos: pričakovano ${S(e.values[0])}`:`Neveljavna možnost: pričakovano eno izmed ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Preveliko: pričakovano, da bo ${e.origin??`vrednost`} imelo ${n}${e.maximum.toString()} ${r.unit??`elementov`}`:`Preveliko: pričakovano, da bo ${e.origin??`vrednost`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Premajhno: pričakovano, da bo ${e.origin} imelo ${n}${e.minimum.toString()} ${r.unit}`:`Premajhno: pričakovano, da bo ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Neveljaven niz: mora se začeti z "${t.prefix}"`:t.format===`ends_with`?`Neveljaven niz: mora se končati z "${t.suffix}"`:t.format===`includes`?`Neveljaven niz: mora vsebovati "${t.includes}"`:t.format===`regex`?`Neveljaven niz: mora ustrezati vzorcu ${t.pattern}`:`Neveljaven ${r[t.format]??e.format}`}case`not_multiple_of`:return`Neveljavno število: mora biti večkratnik ${e.divisor}`;case`unrecognized_keys`:return`Neprepoznan${e.keys.length>1?`i ključi`:` ključ`}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Neveljaven ključ v ${e.origin}`;case`invalid_union`:return`Neveljaven vnos`;case`invalid_element`:return`Neveljavna vrednost v ${e.origin}`;default:return`Neveljaven vnos`}}};function yo(){return{localeError:vo()}}var bo=()=>{let e={string:{unit:`tecken`,verb:`att ha`},file:{unit:`bytes`,verb:`att ha`},array:{unit:`objekt`,verb:`att innehålla`},set:{unit:`objekt`,verb:`att innehålla`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`antal`;case`object`:if(Array.isArray(e))return`lista`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`reguljärt uttryck`,email:`e-postadress`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO-datum och tid`,date:`ISO-datum`,time:`ISO-tid`,duration:`ISO-varaktighet`,ipv4:`IPv4-intervall`,ipv6:`IPv6-intervall`,cidrv4:`IPv4-spektrum`,cidrv6:`IPv6-spektrum`,base64:`base64-kodad sträng`,base64url:`base64url-kodad sträng`,json_string:`JSON-sträng`,e164:`E.164-nummer`,jwt:`JWT`,template_literal:`mall-literal`};return e=>{switch(e.code){case`invalid_type`:return`Ogiltig inmatning: förväntat ${e.expected}, fick ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Ogiltig inmatning: förväntat ${S(e.values[0])}`:`Ogiltigt val: förväntade en av ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`För stor(t): förväntade ${e.origin??`värdet`} att ha ${n}${e.maximum.toString()} ${r.unit??`element`}`:`För stor(t): förväntat ${e.origin??`värdet`} att ha ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`För lite(t): förväntade ${e.origin??`värdet`} att ha ${n}${e.minimum.toString()} ${r.unit}`:`För lite(t): förväntade ${e.origin??`värdet`} att ha ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ogiltig sträng: måste börja med "${t.prefix}"`:t.format===`ends_with`?`Ogiltig sträng: måste sluta med "${t.suffix}"`:t.format===`includes`?`Ogiltig sträng: måste innehålla "${t.includes}"`:t.format===`regex`?`Ogiltig sträng: måste matcha mönstret "${t.pattern}"`:`Ogiltig(t) ${r[t.format]??e.format}`}case`not_multiple_of`:return`Ogiltigt tal: måste vara en multipel av ${e.divisor}`;case`unrecognized_keys`:return`${e.keys.length>1?`Okända nycklar`:`Okänd nyckel`}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Ogiltig nyckel i ${e.origin??`värdet`}`;case`invalid_union`:return`Ogiltig input`;case`invalid_element`:return`Ogiltigt värde i ${e.origin??`värdet`}`;default:return`Ogiltig input`}}};function xo(){return{localeError:bo()}}var So=()=>{let e={string:{unit:`எழுத்துக்கள்`,verb:`கொண்டிருக்க வேண்டும்`},file:{unit:`பைட்டுகள்`,verb:`கொண்டிருக்க வேண்டும்`},array:{unit:`உறுப்புகள்`,verb:`கொண்டிருக்க வேண்டும்`},set:{unit:`உறுப்புகள்`,verb:`கொண்டிருக்க வேண்டும்`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`எண் அல்லாதது`:`எண்`;case`object`:if(Array.isArray(e))return`அணி`;if(e===null)return`வெறுமை`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`உள்ளீடு`,email:`மின்னஞ்சல் முகவரி`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO தேதி நேரம்`,date:`ISO தேதி`,time:`ISO நேரம்`,duration:`ISO கால அளவு`,ipv4:`IPv4 முகவரி`,ipv6:`IPv6 முகவரி`,cidrv4:`IPv4 வரம்பு`,cidrv6:`IPv6 வரம்பு`,base64:`base64-encoded சரம்`,base64url:`base64url-encoded சரம்`,json_string:`JSON சரம்`,e164:`E.164 எண்`,jwt:`JWT`,template_literal:`input`};return e=>{switch(e.code){case`invalid_type`:return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${e.expected}, பெறப்பட்டது ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${S(e.values[0])}`:`தவறான விருப்பம்: எதிர்பார்க்கப்பட்டது ${_(e.values,`|`)} இல் ஒன்று`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${e.origin??`மதிப்பு`} ${n}${e.maximum.toString()} ${r.unit??`உறுப்புகள்`} ஆக இருக்க வேண்டும்`:`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${e.origin??`மதிப்பு`} ${n}${e.maximum.toString()} ஆக இருக்க வேண்டும்`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${e.origin} ${n}${e.minimum.toString()} ${r.unit} ஆக இருக்க வேண்டும்`:`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${e.origin} ${n}${e.minimum.toString()} ஆக இருக்க வேண்டும்`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`தவறான சரம்: "${t.prefix}" இல் தொடங்க வேண்டும்`:t.format===`ends_with`?`தவறான சரம்: "${t.suffix}" இல் முடிவடைய வேண்டும்`:t.format===`includes`?`தவறான சரம்: "${t.includes}" ஐ உள்ளடக்க வேண்டும்`:t.format===`regex`?`தவறான சரம்: ${t.pattern} முறைபாட்டுடன் பொருந்த வேண்டும்`:`தவறான ${r[t.format]??e.format}`}case`not_multiple_of`:return`தவறான எண்: ${e.divisor} இன் பலமாக இருக்க வேண்டும்`;case`unrecognized_keys`:return`அடையாளம் தெரியாத விசை${e.keys.length>1?`கள்`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} இல் தவறான விசை`;case`invalid_union`:return`தவறான உள்ளீடு`;case`invalid_element`:return`${e.origin} இல் தவறான மதிப்பு`;default:return`தவறான உள்ளீடு`}}};function Co(){return{localeError:So()}}var wo=()=>{let e={string:{unit:`ตัวอักษร`,verb:`ควรมี`},file:{unit:`ไบต์`,verb:`ควรมี`},array:{unit:`รายการ`,verb:`ควรมี`},set:{unit:`รายการ`,verb:`ควรมี`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`ไม่ใช่ตัวเลข (NaN)`:`ตัวเลข`;case`object`:if(Array.isArray(e))return`อาร์เรย์ (Array)`;if(e===null)return`ไม่มีค่า (null)`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`ข้อมูลที่ป้อน`,email:`ที่อยู่อีเมล`,url:`URL`,emoji:`อิโมจิ`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`วันที่เวลาแบบ ISO`,date:`วันที่แบบ ISO`,time:`เวลาแบบ ISO`,duration:`ช่วงเวลาแบบ ISO`,ipv4:`ที่อยู่ IPv4`,ipv6:`ที่อยู่ IPv6`,cidrv4:`ช่วง IP แบบ IPv4`,cidrv6:`ช่วง IP แบบ IPv6`,base64:`ข้อความแบบ Base64`,base64url:`ข้อความแบบ Base64 สำหรับ URL`,json_string:`ข้อความแบบ JSON`,e164:`เบอร์โทรศัพท์ระหว่างประเทศ (E.164)`,jwt:`โทเคน JWT`,template_literal:`ข้อมูลที่ป้อน`};return e=>{switch(e.code){case`invalid_type`:return`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น ${e.expected} แต่ได้รับ ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`ค่าไม่ถูกต้อง: ควรเป็น ${S(e.values[0])}`:`ตัวเลือกไม่ถูกต้อง: ควรเป็นหนึ่งใน ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`ไม่เกิน`:`น้อยกว่า`,r=t(e.origin);return r?`เกินกำหนด: ${e.origin??`ค่า`} ควรมี${n} ${e.maximum.toString()} ${r.unit??`รายการ`}`:`เกินกำหนด: ${e.origin??`ค่า`} ควรมี${n} ${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`อย่างน้อย`:`มากกว่า`,r=t(e.origin);return r?`น้อยกว่ากำหนด: ${e.origin} ควรมี${n} ${e.minimum.toString()} ${r.unit}`:`น้อยกว่ากำหนด: ${e.origin} ควรมี${n} ${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`รูปแบบไม่ถูกต้อง: ข้อความต้องขึ้นต้นด้วย "${t.prefix}"`:t.format===`ends_with`?`รูปแบบไม่ถูกต้อง: ข้อความต้องลงท้ายด้วย "${t.suffix}"`:t.format===`includes`?`รูปแบบไม่ถูกต้อง: ข้อความต้องมี "${t.includes}" อยู่ในข้อความ`:t.format===`regex`?`รูปแบบไม่ถูกต้อง: ต้องตรงกับรูปแบบที่กำหนด ${t.pattern}`:`รูปแบบไม่ถูกต้อง: ${r[t.format]??e.format}`}case`not_multiple_of`:return`ตัวเลขไม่ถูกต้อง: ต้องเป็นจำนวนที่หารด้วย ${e.divisor} ได้ลงตัว`;case`unrecognized_keys`:return`พบคีย์ที่ไม่รู้จัก: ${_(e.keys,`, `)}`;case`invalid_key`:return`คีย์ไม่ถูกต้องใน ${e.origin}`;case`invalid_union`:return`ข้อมูลไม่ถูกต้อง: ไม่ตรงกับรูปแบบยูเนียนที่กำหนดไว้`;case`invalid_element`:return`ข้อมูลไม่ถูกต้องใน ${e.origin}`;default:return`ข้อมูลไม่ถูกต้อง`}}};function To(){return{localeError:wo()}}var Eo=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},Do=()=>{let e={string:{unit:`karakter`,verb:`olmalı`},file:{unit:`bayt`,verb:`olmalı`},array:{unit:`öğe`,verb:`olmalı`},set:{unit:`öğe`,verb:`olmalı`}};function t(t){return e[t]??null}let n={regex:`girdi`,email:`e-posta adresi`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO tarih ve saat`,date:`ISO tarih`,time:`ISO saat`,duration:`ISO süre`,ipv4:`IPv4 adresi`,ipv6:`IPv6 adresi`,cidrv4:`IPv4 aralığı`,cidrv6:`IPv6 aralığı`,base64:`base64 ile şifrelenmiş metin`,base64url:`base64url ile şifrelenmiş metin`,json_string:`JSON dizesi`,e164:`E.164 sayısı`,jwt:`JWT`,template_literal:`Şablon dizesi`};return e=>{switch(e.code){case`invalid_type`:return`Geçersiz değer: beklenen ${e.expected}, alınan ${Eo(e.input)}`;case`invalid_value`:return e.values.length===1?`Geçersiz değer: beklenen ${S(e.values[0])}`:`Geçersiz seçenek: aşağıdakilerden biri olmalı: ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Çok büyük: beklenen ${e.origin??`değer`} ${n}${e.maximum.toString()} ${r.unit??`öğe`}`:`Çok büyük: beklenen ${e.origin??`değer`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Çok küçük: beklenen ${e.origin} ${n}${e.minimum.toString()} ${r.unit}`:`Çok küçük: beklenen ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Geçersiz metin: "${t.prefix}" ile başlamalı`:t.format===`ends_with`?`Geçersiz metin: "${t.suffix}" ile bitmeli`:t.format===`includes`?`Geçersiz metin: "${t.includes}" içermeli`:t.format===`regex`?`Geçersiz metin: ${t.pattern} desenine uymalı`:`Geçersiz ${n[t.format]??e.format}`}case`not_multiple_of`:return`Geçersiz sayı: ${e.divisor} ile tam bölünebilmeli`;case`unrecognized_keys`:return`Tanınmayan anahtar${e.keys.length>1?`lar`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} içinde geçersiz anahtar`;case`invalid_union`:return`Geçersiz değer`;case`invalid_element`:return`${e.origin} içinde geçersiz değer`;default:return`Geçersiz değer`}}};function Oo(){return{localeError:Do()}}var ko=()=>{let e={string:{unit:`символів`,verb:`матиме`},file:{unit:`байтів`,verb:`матиме`},array:{unit:`елементів`,verb:`матиме`},set:{unit:`елементів`,verb:`матиме`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`число`;case`object`:if(Array.isArray(e))return`масив`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`вхідні дані`,email:`адреса електронної пошти`,url:`URL`,emoji:`емодзі`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`дата та час ISO`,date:`дата ISO`,time:`час ISO`,duration:`тривалість ISO`,ipv4:`адреса IPv4`,ipv6:`адреса IPv6`,cidrv4:`діапазон IPv4`,cidrv6:`діапазон IPv6`,base64:`рядок у кодуванні base64`,base64url:`рядок у кодуванні base64url`,json_string:`рядок JSON`,e164:`номер E.164`,jwt:`JWT`,template_literal:`вхідні дані`};return e=>{switch(e.code){case`invalid_type`:return`Неправильні вхідні дані: очікується ${e.expected}, отримано ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Неправильні вхідні дані: очікується ${S(e.values[0])}`:`Неправильна опція: очікується одне з ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Занадто велике: очікується, що ${e.origin??`значення`} ${r.verb} ${n}${e.maximum.toString()} ${r.unit??`елементів`}`:`Занадто велике: очікується, що ${e.origin??`значення`} буде ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Занадто мале: очікується, що ${e.origin} ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`Занадто мале: очікується, що ${e.origin} буде ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Неправильний рядок: повинен починатися з "${t.prefix}"`:t.format===`ends_with`?`Неправильний рядок: повинен закінчуватися на "${t.suffix}"`:t.format===`includes`?`Неправильний рядок: повинен містити "${t.includes}"`:t.format===`regex`?`Неправильний рядок: повинен відповідати шаблону ${t.pattern}`:`Неправильний ${r[t.format]??e.format}`}case`not_multiple_of`:return`Неправильне число: повинно бути кратним ${e.divisor}`;case`unrecognized_keys`:return`Нерозпізнаний ключ${e.keys.length>1?`і`:``}: ${_(e.keys,`, `)}`;case`invalid_key`:return`Неправильний ключ у ${e.origin}`;case`invalid_union`:return`Неправильні вхідні дані`;case`invalid_element`:return`Неправильне значення у ${e.origin}`;default:return`Неправильні вхідні дані`}}};function Ao(){return{localeError:ko()}}function jo(){return Ao()}var Mo=()=>{let e={string:{unit:`حروف`,verb:`ہونا`},file:{unit:`بائٹس`,verb:`ہونا`},array:{unit:`آئٹمز`,verb:`ہونا`},set:{unit:`آئٹمز`,verb:`ہونا`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`نمبر`;case`object`:if(Array.isArray(e))return`آرے`;if(e===null)return`نل`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`ان پٹ`,email:`ای میل ایڈریس`,url:`یو آر ایل`,emoji:`ایموجی`,uuid:`یو یو آئی ڈی`,uuidv4:`یو یو آئی ڈی وی 4`,uuidv6:`یو یو آئی ڈی وی 6`,nanoid:`نینو آئی ڈی`,guid:`جی یو آئی ڈی`,cuid:`سی یو آئی ڈی`,cuid2:`سی یو آئی ڈی 2`,ulid:`یو ایل آئی ڈی`,xid:`ایکس آئی ڈی`,ksuid:`کے ایس یو آئی ڈی`,datetime:`آئی ایس او ڈیٹ ٹائم`,date:`آئی ایس او تاریخ`,time:`آئی ایس او وقت`,duration:`آئی ایس او مدت`,ipv4:`آئی پی وی 4 ایڈریس`,ipv6:`آئی پی وی 6 ایڈریس`,cidrv4:`آئی پی وی 4 رینج`,cidrv6:`آئی پی وی 6 رینج`,base64:`بیس 64 ان کوڈڈ سٹرنگ`,base64url:`بیس 64 یو آر ایل ان کوڈڈ سٹرنگ`,json_string:`جے ایس او این سٹرنگ`,e164:`ای 164 نمبر`,jwt:`جے ڈبلیو ٹی`,template_literal:`ان پٹ`};return e=>{switch(e.code){case`invalid_type`:return`غلط ان پٹ: ${e.expected} متوقع تھا، ${n(e.input)} موصول ہوا`;case`invalid_value`:return e.values.length===1?`غلط ان پٹ: ${S(e.values[0])} متوقع تھا`:`غلط آپشن: ${_(e.values,`|`)} میں سے ایک متوقع تھا`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`بہت بڑا: ${e.origin??`ویلیو`} کے ${n}${e.maximum.toString()} ${r.unit??`عناصر`} ہونے متوقع تھے`:`بہت بڑا: ${e.origin??`ویلیو`} کا ${n}${e.maximum.toString()} ہونا متوقع تھا`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`بہت چھوٹا: ${e.origin} کے ${n}${e.minimum.toString()} ${r.unit} ہونے متوقع تھے`:`بہت چھوٹا: ${e.origin} کا ${n}${e.minimum.toString()} ہونا متوقع تھا`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`غلط سٹرنگ: "${t.prefix}" سے شروع ہونا چاہیے`:t.format===`ends_with`?`غلط سٹرنگ: "${t.suffix}" پر ختم ہونا چاہیے`:t.format===`includes`?`غلط سٹرنگ: "${t.includes}" شامل ہونا چاہیے`:t.format===`regex`?`غلط سٹرنگ: پیٹرن ${t.pattern} سے میچ ہونا چاہیے`:`غلط ${r[t.format]??e.format}`}case`not_multiple_of`:return`غلط نمبر: ${e.divisor} کا مضاعف ہونا چاہیے`;case`unrecognized_keys`:return`غیر تسلیم شدہ کی${e.keys.length>1?`ز`:``}: ${_(e.keys,`، `)}`;case`invalid_key`:return`${e.origin} میں غلط کی`;case`invalid_union`:return`غلط ان پٹ`;case`invalid_element`:return`${e.origin} میں غلط ویلیو`;default:return`غلط ان پٹ`}}};function No(){return{localeError:Mo()}}var Po=()=>{let e={string:{unit:`ký tự`,verb:`có`},file:{unit:`byte`,verb:`có`},array:{unit:`phần tử`,verb:`có`},set:{unit:`phần tử`,verb:`có`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`số`;case`object`:if(Array.isArray(e))return`mảng`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`đầu vào`,email:`địa chỉ email`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ngày giờ ISO`,date:`ngày ISO`,time:`giờ ISO`,duration:`khoảng thời gian ISO`,ipv4:`địa chỉ IPv4`,ipv6:`địa chỉ IPv6`,cidrv4:`dải IPv4`,cidrv6:`dải IPv6`,base64:`chuỗi mã hóa base64`,base64url:`chuỗi mã hóa base64url`,json_string:`chuỗi JSON`,e164:`số E.164`,jwt:`JWT`,template_literal:`đầu vào`};return e=>{switch(e.code){case`invalid_type`:return`Đầu vào không hợp lệ: mong đợi ${e.expected}, nhận được ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Đầu vào không hợp lệ: mong đợi ${S(e.values[0])}`:`Tùy chọn không hợp lệ: mong đợi một trong các giá trị ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Quá lớn: mong đợi ${e.origin??`giá trị`} ${r.verb} ${n}${e.maximum.toString()} ${r.unit??`phần tử`}`:`Quá lớn: mong đợi ${e.origin??`giá trị`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Quá nhỏ: mong đợi ${e.origin} ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`Quá nhỏ: mong đợi ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Chuỗi không hợp lệ: phải bắt đầu bằng "${t.prefix}"`:t.format===`ends_with`?`Chuỗi không hợp lệ: phải kết thúc bằng "${t.suffix}"`:t.format===`includes`?`Chuỗi không hợp lệ: phải bao gồm "${t.includes}"`:t.format===`regex`?`Chuỗi không hợp lệ: phải khớp với mẫu ${t.pattern}`:`${r[t.format]??e.format} không hợp lệ`}case`not_multiple_of`:return`Số không hợp lệ: phải là bội số của ${e.divisor}`;case`unrecognized_keys`:return`Khóa không được nhận dạng: ${_(e.keys,`, `)}`;case`invalid_key`:return`Khóa không hợp lệ trong ${e.origin}`;case`invalid_union`:return`Đầu vào không hợp lệ`;case`invalid_element`:return`Giá trị không hợp lệ trong ${e.origin}`;default:return`Đầu vào không hợp lệ`}}};function Fo(){return{localeError:Po()}}var Io=()=>{let e={string:{unit:`字符`,verb:`包含`},file:{unit:`字节`,verb:`包含`},array:{unit:`项`,verb:`包含`},set:{unit:`项`,verb:`包含`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`非数字(NaN)`:`数字`;case`object`:if(Array.isArray(e))return`数组`;if(e===null)return`空值(null)`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`输入`,email:`电子邮件`,url:`URL`,emoji:`表情符号`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO日期时间`,date:`ISO日期`,time:`ISO时间`,duration:`ISO时长`,ipv4:`IPv4地址`,ipv6:`IPv6地址`,cidrv4:`IPv4网段`,cidrv6:`IPv6网段`,base64:`base64编码字符串`,base64url:`base64url编码字符串`,json_string:`JSON字符串`,e164:`E.164号码`,jwt:`JWT`,template_literal:`输入`};return e=>{switch(e.code){case`invalid_type`:return`无效输入:期望 ${e.expected},实际接收 ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`无效输入:期望 ${S(e.values[0])}`:`无效选项:期望以下之一 ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`数值过大:期望 ${e.origin??`值`} ${n}${e.maximum.toString()} ${r.unit??`个元素`}`:`数值过大:期望 ${e.origin??`值`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`数值过小:期望 ${e.origin} ${n}${e.minimum.toString()} ${r.unit}`:`数值过小:期望 ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`无效字符串:必须以 "${t.prefix}" 开头`:t.format===`ends_with`?`无效字符串:必须以 "${t.suffix}" 结尾`:t.format===`includes`?`无效字符串:必须包含 "${t.includes}"`:t.format===`regex`?`无效字符串:必须满足正则表达式 ${t.pattern}`:`无效${r[t.format]??e.format}`}case`not_multiple_of`:return`无效数字:必须是 ${e.divisor} 的倍数`;case`unrecognized_keys`:return`出现未知的键(key): ${_(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} 中的键(key)无效`;case`invalid_union`:return`无效输入`;case`invalid_element`:return`${e.origin} 中包含无效值(value)`;default:return`无效输入`}}};function Lo(){return{localeError:Io()}}var Ro=()=>{let e={string:{unit:`字元`,verb:`擁有`},file:{unit:`位元組`,verb:`擁有`},array:{unit:`項目`,verb:`擁有`},set:{unit:`項目`,verb:`擁有`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`number`;case`object`:if(Array.isArray(e))return`array`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`輸入`,email:`郵件地址`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO 日期時間`,date:`ISO 日期`,time:`ISO 時間`,duration:`ISO 期間`,ipv4:`IPv4 位址`,ipv6:`IPv6 位址`,cidrv4:`IPv4 範圍`,cidrv6:`IPv6 範圍`,base64:`base64 編碼字串`,base64url:`base64url 編碼字串`,json_string:`JSON 字串`,e164:`E.164 數值`,jwt:`JWT`,template_literal:`輸入`};return e=>{switch(e.code){case`invalid_type`:return`無效的輸入值:預期為 ${e.expected},但收到 ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`無效的輸入值:預期為 ${S(e.values[0])}`:`無效的選項:預期為以下其中之一 ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`數值過大:預期 ${e.origin??`值`} 應為 ${n}${e.maximum.toString()} ${r.unit??`個元素`}`:`數值過大:預期 ${e.origin??`值`} 應為 ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`數值過小:預期 ${e.origin} 應為 ${n}${e.minimum.toString()} ${r.unit}`:`數值過小:預期 ${e.origin} 應為 ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`無效的字串:必須以 "${t.prefix}" 開頭`:t.format===`ends_with`?`無效的字串:必須以 "${t.suffix}" 結尾`:t.format===`includes`?`無效的字串:必須包含 "${t.includes}"`:t.format===`regex`?`無效的字串:必須符合格式 ${t.pattern}`:`無效的 ${r[t.format]??e.format}`}case`not_multiple_of`:return`無效的數字:必須為 ${e.divisor} 的倍數`;case`unrecognized_keys`:return`無法識別的鍵值${e.keys.length>1?`們`:``}:${_(e.keys,`、`)}`;case`invalid_key`:return`${e.origin} 中有無效的鍵值`;case`invalid_union`:return`無效的輸入值`;case`invalid_element`:return`${e.origin} 中有無效的值`;default:return`無效的輸入值`}}};function zo(){return{localeError:Ro()}}var Bo=()=>{let e={string:{unit:`àmi`,verb:`ní`},file:{unit:`bytes`,verb:`ní`},array:{unit:`nkan`,verb:`ní`},set:{unit:`nkan`,verb:`ní`}};function t(t){return e[t]??null}let n=e=>{let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`NaN`:`nọ́mbà`;case`object`:if(Array.isArray(e))return`akopọ`;if(e===null)return`null`;if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}return t},r={regex:`ẹ̀rọ ìbáwọlé`,email:`àdírẹ́sì ìmẹ́lì`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`àkókò ISO`,date:`ọjọ́ ISO`,time:`àkókò ISO`,duration:`àkókò tó pé ISO`,ipv4:`àdírẹ́sì IPv4`,ipv6:`àdírẹ́sì IPv6`,cidrv4:`àgbègbè IPv4`,cidrv6:`àgbègbè IPv6`,base64:`ọ̀rọ̀ tí a kọ́ ní base64`,base64url:`ọ̀rọ̀ base64url`,json_string:`ọ̀rọ̀ JSON`,e164:`nọ́mbà E.164`,jwt:`JWT`,template_literal:`ẹ̀rọ ìbáwọlé`};return e=>{switch(e.code){case`invalid_type`:return`Ìbáwọlé aṣìṣe: a ní láti fi ${e.expected}, àmọ̀ a rí ${n(e.input)}`;case`invalid_value`:return e.values.length===1?`Ìbáwọlé aṣìṣe: a ní láti fi ${S(e.values[0])}`:`Àṣàyàn aṣìṣe: yan ọ̀kan lára ${_(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Tó pọ̀ jù: a ní láti jẹ́ pé ${e.origin??`iye`} ${r.verb} ${n}${e.maximum} ${r.unit}`:`Tó pọ̀ jù: a ní láti jẹ́ ${n}${e.maximum}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Kéré ju: a ní láti jẹ́ pé ${e.origin} ${r.verb} ${n}${e.minimum} ${r.unit}`:`Kéré ju: a ní láti jẹ́ ${n}${e.minimum}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bẹ̀rẹ̀ pẹ̀lú "${t.prefix}"`:t.format===`ends_with`?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ parí pẹ̀lú "${t.suffix}"`:t.format===`includes`?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ ní "${t.includes}"`:t.format===`regex`?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bá àpẹẹrẹ mu ${t.pattern}`:`Aṣìṣe: ${r[t.format]??e.format}`}case`not_multiple_of`:return`Nọ́mbà aṣìṣe: gbọ́dọ̀ jẹ́ èyà pípín ti ${e.divisor}`;case`unrecognized_keys`:return`Bọtìnì àìmọ̀: ${_(e.keys,`, `)}`;case`invalid_key`:return`Bọtìnì aṣìṣe nínú ${e.origin}`;case`invalid_union`:return`Ìbáwọlé aṣìṣe`;case`invalid_element`:return`Iye aṣìṣe nínú ${e.origin}`;default:return`Ìbáwọlé aṣìṣe`}}};function Vo(){return{localeError:Bo()}}var Ho=t({ar:()=>Ki,az:()=>Ji,be:()=>Zi,bg:()=>ea,ca:()=>na,cs:()=>ia,da:()=>oa,de:()=>ca,en:()=>da,eo:()=>ma,es:()=>ga,fa:()=>va,fi:()=>ba,fr:()=>Sa,frCA:()=>wa,he:()=>Ea,hu:()=>Oa,id:()=>Aa,is:()=>Na,it:()=>Fa,ja:()=>La,ka:()=>Ba,kh:()=>Ua,km:()=>Ha,ko:()=>Ga,lt:()=>Za,mk:()=>$a,ms:()=>to,nl:()=>ro,no:()=>ao,ota:()=>so,pl:()=>fo,ps:()=>lo,pt:()=>mo,ru:()=>_o,sl:()=>yo,sv:()=>xo,ta:()=>Co,th:()=>To,tr:()=>Oo,ua:()=>jo,uk:()=>Ao,ur:()=>No,vi:()=>Fo,yo:()=>Vo,zhCN:()=>Lo,zhTW:()=>zo}),Uo,Wo=Symbol(`ZodOutput`),Go=Symbol(`ZodInput`),Ko=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];if(this._map.set(e,n),n&&typeof n==`object`&&`id`in n){if(this._idmap.has(n.id))throw Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function qo(){return new Ko}(Uo=globalThis).__zod_globalRegistry??(Uo.__zod_globalRegistry=qo());var D=globalThis.__zod_globalRegistry;function Jo(e,t){return new e({type:`string`,...x(t)})}function Yo(e,t){return new e({type:`string`,coerce:!0,...x(t)})}function Xo(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...x(t)})}function Zo(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...x(t)})}function Qo(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...x(t)})}function $o(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...x(t)})}function es(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...x(t)})}function ts(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...x(t)})}function ns(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...x(t)})}function rs(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...x(t)})}function is(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...x(t)})}function as(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...x(t)})}function os(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...x(t)})}function ss(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...x(t)})}function cs(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...x(t)})}function ls(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...x(t)})}function us(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...x(t)})}function ds(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...x(t)})}function fs(e,t){return new e({type:`string`,format:`mac`,check:`string_format`,abort:!1,...x(t)})}function ps(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...x(t)})}function ms(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...x(t)})}function hs(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...x(t)})}function gs(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...x(t)})}function _s(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...x(t)})}function vs(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...x(t)})}var ys={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};function bs(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...x(t)})}function xs(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...x(t)})}function Ss(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...x(t)})}function Cs(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...x(t)})}function ws(e,t){return new e({type:`number`,checks:[],...x(t)})}function Ts(e,t){return new e({type:`number`,coerce:!0,checks:[],...x(t)})}function Es(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...x(t)})}function Ds(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`float32`,...x(t)})}function Os(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`float64`,...x(t)})}function ks(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`int32`,...x(t)})}function As(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`uint32`,...x(t)})}function js(e,t){return new e({type:`boolean`,...x(t)})}function Ms(e,t){return new e({type:`boolean`,coerce:!0,...x(t)})}function Ns(e,t){return new e({type:`bigint`,...x(t)})}function Ps(e,t){return new e({type:`bigint`,coerce:!0,...x(t)})}function Fs(e,t){return new e({type:`bigint`,check:`bigint_format`,abort:!1,format:`int64`,...x(t)})}function Is(e,t){return new e({type:`bigint`,check:`bigint_format`,abort:!1,format:`uint64`,...x(t)})}function Ls(e,t){return new e({type:`symbol`,...x(t)})}function Rs(e,t){return new e({type:`undefined`,...x(t)})}function zs(e,t){return new e({type:`null`,...x(t)})}function Bs(e){return new e({type:`any`})}function Vs(e){return new e({type:`unknown`})}function Hs(e,t){return new e({type:`never`,...x(t)})}function Us(e,t){return new e({type:`void`,...x(t)})}function Ws(e,t){return new e({type:`date`,...x(t)})}function Gs(e,t){return new e({type:`date`,coerce:!0,...x(t)})}function Ks(e,t){return new e({type:`nan`,...x(t)})}function qs(e,t){return new zn({check:`less_than`,...x(t),value:e,inclusive:!1})}function O(e,t){return new zn({check:`less_than`,...x(t),value:e,inclusive:!0})}function Js(e,t){return new Bn({check:`greater_than`,...x(t),value:e,inclusive:!1})}function k(e,t){return new Bn({check:`greater_than`,...x(t),value:e,inclusive:!0})}function Ys(e){return Js(0,e)}function Xs(e){return qs(0,e)}function Zs(e){return O(0,e)}function Qs(e){return k(0,e)}function $s(e,t){return new Vn({check:`multiple_of`,...x(t),value:e})}function ec(e,t){return new Wn({check:`max_size`,...x(t),maximum:e})}function tc(e,t){return new Gn({check:`min_size`,...x(t),minimum:e})}function nc(e,t){return new Kn({check:`size_equals`,...x(t),size:e})}function rc(e,t){return new qn({check:`max_length`,...x(t),maximum:e})}function ic(e,t){return new Jn({check:`min_length`,...x(t),minimum:e})}function ac(e,t){return new Yn({check:`length_equals`,...x(t),length:e})}function oc(e,t){return new Zn({check:`string_format`,format:`regex`,...x(t),pattern:e})}function sc(e){return new Qn({check:`string_format`,format:`lowercase`,...x(e)})}function cc(e){return new $n({check:`string_format`,format:`uppercase`,...x(e)})}function lc(e,t){return new er({check:`string_format`,format:`includes`,...x(t),includes:e})}function uc(e,t){return new tr({check:`string_format`,format:`starts_with`,...x(t),prefix:e})}function dc(e,t){return new nr({check:`string_format`,format:`ends_with`,...x(t),suffix:e})}function fc(e,t,n){return new ir({check:`property`,property:e,schema:t,...x(n)})}function pc(e,t){return new ar({check:`mime_type`,mime:e,...x(t)})}function mc(e){return new or({check:`overwrite`,tx:e})}function hc(e){return mc(t=>t.normalize(e))}function gc(){return mc(e=>e.trim())}function _c(){return mc(e=>e.toLowerCase())}function vc(){return mc(e=>e.toUpperCase())}function yc(){return mc(e=>pe(e))}function bc(e,t,n){return new e({type:`array`,element:t,...x(n)})}function xc(e,t,n){return new e({type:`union`,options:t,...x(n)})}function Sc(e,t,n,r){return new e({type:`union`,options:n,discriminator:t,...x(r)})}function Cc(e,t,n){return new e({type:`intersection`,left:t,right:n})}function wc(e,t,n,r){let i=n instanceof T;return new e({type:`tuple`,items:t,rest:i?n:null,...x(i?r:n)})}function Tc(e,t,n,r){return new e({type:`record`,keyType:t,valueType:n,...x(r)})}function Ec(e,t,n,r){return new e({type:`map`,keyType:t,valueType:n,...x(r)})}function Dc(e,t,n){return new e({type:`set`,valueType:t,...x(n)})}function Oc(e,t,n){return new e({type:`enum`,entries:Array.isArray(t)?Object.fromEntries(t.map(e=>[e,e])):t,...x(n)})}function kc(e,t,n){return new e({type:`enum`,entries:t,...x(n)})}function Ac(e,t,n){return new e({type:`literal`,values:Array.isArray(t)?t:[t],...x(n)})}function jc(e,t){return new e({type:`file`,...x(t)})}function Mc(e,t){return new e({type:`transform`,transform:t})}function Nc(e,t){return new e({type:`optional`,innerType:t})}function Pc(e,t){return new e({type:`nullable`,innerType:t})}function Fc(e,t,n){return new e({type:`default`,innerType:t,get defaultValue(){return typeof n==`function`?n():ve(n)}})}function Ic(e,t,n){return new e({type:`nonoptional`,innerType:t,...x(n)})}function Lc(e,t){return new e({type:`success`,innerType:t})}function Rc(e,t,n){return new e({type:`catch`,innerType:t,catchValue:typeof n==`function`?n:()=>n})}function zc(e,t,n){return new e({type:`pipe`,in:t,out:n})}function Bc(e,t){return new e({type:`readonly`,innerType:t})}function Vc(e,t,n){return new e({type:`template_literal`,parts:t,...x(n)})}function Hc(e,t){return new e({type:`lazy`,getter:t})}function Uc(e,t){return new e({type:`promise`,innerType:t})}function Wc(e,t,n){let r=x(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function Gc(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...x(n)})}function Kc(e){let t=qc(n=>(n.addIssue=e=>{if(typeof e==`string`)n.issues.push(Ve(e,n.value,t._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,r.input??=n.value,r.inst??=t,r.continue??=!t._zod.def.abort,n.issues.push(Ve(r))}},e(n.value,n)));return t}function qc(e,t){let n=new w({check:`custom`,...x(t)});return n._zod.check=e,n}function Jc(e){let t=new w({check:`describe`});return t._zod.onattach=[t=>{let n=D.get(t)??{};D.add(t,{...n,description:e})}],t._zod.check=()=>{},t}function Yc(e){let t=new w({check:`meta`});return t._zod.onattach=[t=>{let n=D.get(t)??{};D.add(t,{...n,...e})}],t._zod.check=()=>{},t}function Xc(e,t){let n=x(t),r=n.truthy??[`true`,`1`,`yes`,`on`,`y`,`enabled`],i=n.falsy??[`false`,`0`,`no`,`off`,`n`,`disabled`];n.case!==`sensitive`&&(r=r.map(e=>typeof e==`string`?e.toLowerCase():e),i=i.map(e=>typeof e==`string`?e.toLowerCase():e));let a=new Set(r),o=new Set(i),s=e.Codec??Pi,c=e.Boolean??Br,l=new s({type:`pipe`,in:new(e.String??lr)({type:`string`,error:n.error}),out:new c({type:`boolean`,error:n.error}),transform:((e,t)=>{let r=e;return n.case!==`sensitive`&&(r=r.toLowerCase()),a.has(r)?!0:o.has(r)?!1:(t.issues.push({code:`invalid_value`,expected:`stringbool`,values:[...a,...o],input:t.value,inst:l,continue:!1}),{})}),reverseTransform:((e,t)=>e===!0?r[0]||`true`:i[0]||`false`),error:n.error});return l}function Zc(e,t,n,r={}){let i=x(r),a={...x(r),check:`string_format`,type:`string`,format:t,fn:typeof n==`function`?n:e=>n.test(e),...i};return n instanceof RegExp&&(a.pattern=n),new e(a)}var Qc=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??D,this.target=e?.target??`draft-2020-12`,this.unrepresentable=e?.unrepresentable??`throw`,this.override=e?.override??(()=>{}),this.io=e?.io??`output`,this.seen=new Map}process(e,t={path:[],schemaPath:[]}){var n;let r=e._zod.def,i={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},a=this.seen.get(e);if(a)return a.count++,t.schemaPath.includes(e)&&(a.cycle=t.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:t.path};this.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let n={...t,schemaPath:[...t.schemaPath,e],path:t.path},a=e._zod.parent;if(a)o.ref=a,this.process(a,n),this.seen.get(a).isParent=!0;else{let t=o.schema;switch(r.type){case`string`:{let n=t;n.type=`string`;let{minimum:r,maximum:a,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof r==`number`&&(n.minLength=r),typeof a==`number`&&(n.maxLength=a),s&&(n.format=i[s]??s,n.format===``&&delete n.format),l&&(n.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?n.pattern=e[0].source:e.length>1&&(o.schema.allOf=[...e.map(e=>({...this.target===`draft-7`||this.target===`draft-4`||this.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}break}case`number`:{let n=t,{minimum:r,maximum:i,format:a,multipleOf:o,exclusiveMaximum:s,exclusiveMinimum:c}=e._zod.bag;typeof a==`string`&&a.includes(`int`)?n.type=`integer`:n.type=`number`,typeof c==`number`&&(this.target===`draft-4`||this.target===`openapi-3.0`?(n.minimum=c,n.exclusiveMinimum=!0):n.exclusiveMinimum=c),typeof r==`number`&&(n.minimum=r,typeof c==`number`&&this.target!==`draft-4`&&(c>=r?delete n.minimum:delete n.exclusiveMinimum)),typeof s==`number`&&(this.target===`draft-4`||this.target===`openapi-3.0`?(n.maximum=s,n.exclusiveMaximum=!0):n.exclusiveMaximum=s),typeof i==`number`&&(n.maximum=i,typeof s==`number`&&this.target!==`draft-4`&&(s<=i?delete n.maximum:delete n.exclusiveMaximum)),typeof o==`number`&&(n.multipleOf=o);break}case`boolean`:{let e=t;e.type=`boolean`;break}case`bigint`:if(this.unrepresentable===`throw`)throw Error(`BigInt cannot be represented in JSON Schema`);break;case`symbol`:if(this.unrepresentable===`throw`)throw Error(`Symbols cannot be represented in JSON Schema`);break;case`null`:this.target===`openapi-3.0`?(t.type=`string`,t.nullable=!0,t.enum=[null]):t.type=`null`;break;case`any`:break;case`unknown`:break;case`undefined`:if(this.unrepresentable===`throw`)throw Error(`Undefined cannot be represented in JSON Schema`);break;case`void`:if(this.unrepresentable===`throw`)throw Error(`Void cannot be represented in JSON Schema`);break;case`never`:t.not={};break;case`date`:if(this.unrepresentable===`throw`)throw Error(`Date cannot be represented in JSON Schema`);break;case`array`:{let i=t,{minimum:a,maximum:o}=e._zod.bag;typeof a==`number`&&(i.minItems=a),typeof o==`number`&&(i.maxItems=o),i.type=`array`,i.items=this.process(r.element,{...n,path:[...n.path,`items`]});break}case`object`:{let e=t;e.type=`object`,e.properties={};let i=r.shape;for(let t in i)e.properties[t]=this.process(i[t],{...n,path:[...n.path,`properties`,t]});let a=new Set(Object.keys(i)),o=new Set([...a].filter(e=>{let t=r.shape[e]._zod;return this.io===`input`?t.optin===void 0:t.optout===void 0}));o.size>0&&(e.required=Array.from(o)),r.catchall?._zod.def.type===`never`?e.additionalProperties=!1:r.catchall?r.catchall&&(e.additionalProperties=this.process(r.catchall,{...n,path:[...n.path,`additionalProperties`]})):this.io===`output`&&(e.additionalProperties=!1);break}case`union`:{let e=t,i=r.discriminator!==void 0,a=r.options.map((e,t)=>this.process(e,{...n,path:[...n.path,i?`oneOf`:`anyOf`,t]}));i?e.oneOf=a:e.anyOf=a;break}case`intersection`:{let e=t,i=this.process(r.left,{...n,path:[...n.path,`allOf`,0]}),a=this.process(r.right,{...n,path:[...n.path,`allOf`,1]}),o=e=>`allOf`in e&&Object.keys(e).length===1;e.allOf=[...o(i)?i.allOf:[i],...o(a)?a.allOf:[a]];break}case`tuple`:{let i=t;i.type=`array`;let a=this.target===`draft-2020-12`?`prefixItems`:`items`,o=this.target===`draft-2020-12`||this.target===`openapi-3.0`?`items`:`additionalItems`,s=r.items.map((e,t)=>this.process(e,{...n,path:[...n.path,a,t]})),c=r.rest?this.process(r.rest,{...n,path:[...n.path,o,...this.target===`openapi-3.0`?[r.items.length]:[]]}):null;this.target===`draft-2020-12`?(i.prefixItems=s,c&&(i.items=c)):this.target===`openapi-3.0`?(i.items={anyOf:s},c&&i.items.anyOf.push(c),i.minItems=s.length,c||(i.maxItems=s.length)):(i.items=s,c&&(i.additionalItems=c));let{minimum:l,maximum:u}=e._zod.bag;typeof l==`number`&&(i.minItems=l),typeof u==`number`&&(i.maxItems=u);break}case`record`:{let e=t;e.type=`object`,(this.target===`draft-7`||this.target===`draft-2020-12`)&&(e.propertyNames=this.process(r.keyType,{...n,path:[...n.path,`propertyNames`]})),e.additionalProperties=this.process(r.valueType,{...n,path:[...n.path,`additionalProperties`]});break}case`map`:if(this.unrepresentable===`throw`)throw Error(`Map cannot be represented in JSON Schema`);break;case`set`:if(this.unrepresentable===`throw`)throw Error(`Set cannot be represented in JSON Schema`);break;case`enum`:{let e=t,n=g(r.entries);n.every(e=>typeof e==`number`)&&(e.type=`number`),n.every(e=>typeof e==`string`)&&(e.type=`string`),e.enum=n;break}case`literal`:{let e=t,n=[];for(let e of r.values)if(e===void 0){if(this.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(this.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);n.push(Number(e))}else n.push(e);if(n.length!==0)if(n.length===1){let t=n[0];e.type=t===null?`null`:typeof t,this.target===`draft-4`||this.target===`openapi-3.0`?e.enum=[t]:e.const=t}else n.every(e=>typeof e==`number`)&&(e.type=`number`),n.every(e=>typeof e==`string`)&&(e.type=`string`),n.every(e=>typeof e==`boolean`)&&(e.type=`string`),n.every(e=>e===null)&&(e.type=`null`),e.enum=n;break}case`file`:{let n=t,r={type:`string`,format:`binary`,contentEncoding:`binary`},{minimum:i,maximum:a,mime:o}=e._zod.bag;i!==void 0&&(r.minLength=i),a!==void 0&&(r.maxLength=a),o?o.length===1?(r.contentMediaType=o[0],Object.assign(n,r)):n.anyOf=o.map(e=>({...r,contentMediaType:e})):Object.assign(n,r);break}case`transform`:if(this.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`);break;case`nullable`:{let e=this.process(r.innerType,n);this.target===`openapi-3.0`?(o.ref=r.innerType,t.nullable=!0):t.anyOf=[e,{type:`null`}];break}case`nonoptional`:this.process(r.innerType,n),o.ref=r.innerType;break;case`success`:{let e=t;e.type=`boolean`;break}case`default`:this.process(r.innerType,n),o.ref=r.innerType,t.default=JSON.parse(JSON.stringify(r.defaultValue));break;case`prefault`:this.process(r.innerType,n),o.ref=r.innerType,this.io===`input`&&(t._prefault=JSON.parse(JSON.stringify(r.defaultValue)));break;case`catch`:{this.process(r.innerType,n),o.ref=r.innerType;let e;try{e=r.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}t.default=e;break}case`nan`:if(this.unrepresentable===`throw`)throw Error(`NaN cannot be represented in JSON Schema`);break;case`template_literal`:{let n=t,r=e._zod.pattern;if(!r)throw Error(`Pattern not found in template literal`);n.type=`string`,n.pattern=r.source;break}case`pipe`:{let e=this.io===`input`?r.in._zod.def.type===`transform`?r.out:r.in:r.out;this.process(e,n),o.ref=e;break}case`readonly`:this.process(r.innerType,n),o.ref=r.innerType,t.readOnly=!0;break;case`promise`:this.process(r.innerType,n),o.ref=r.innerType;break;case`optional`:this.process(r.innerType,n),o.ref=r.innerType;break;case`lazy`:{let t=e._zod.innerType;this.process(t,n),o.ref=t;break}case`custom`:if(this.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`);break;case`function`:if(this.unrepresentable===`throw`)throw Error(`Function types cannot be represented in JSON Schema`);break;default:}}}let c=this.metadataRegistry.get(e);return c&&Object.assign(o.schema,c),this.io===`input`&&A(e)&&(delete o.schema.examples,delete o.schema.default),this.io===`input`&&o.schema._prefault&&((n=o.schema).default??(n.default=o.schema._prefault)),delete o.schema._prefault,this.seen.get(e).schema}emit(e,t){let n={cycles:t?.cycles??`ref`,reused:t?.reused??`inline`,external:t?.external??void 0},r=this.seen.get(e);if(!r)throw Error(`Unprocessed schema. This is a bug in Zod.`);let i=e=>{let t=this.target===`draft-2020-12`?`$defs`:`definitions`;if(n.external){let r=n.external.registry.get(e[0])?.id,i=n.external.uri??(e=>e);if(r)return{ref:i(r)};let a=e[1].defId??e[1].schema.id??`schema${this.counter++}`;return e[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${t}/${a}`}}if(e[1]===r)return{ref:`#`};let i=`#/${t}/`,a=e[1].schema.id??`__schema${this.counter++}`;return{defId:a,ref:i+a}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(n.cycles===`throw`)for(let e of this.seen.entries()){let t=e[1];if(t.cycle)throw Error(`Cycle detected: #/${t.cycle?.join(`/`)}/<root>
421
421
 
422
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let t of this.seen.entries()){let r=t[1];if(e===t[0]){a(t);continue}if(n.external){let r=n.external.registry.get(t[0])?.id;if(e!==t[0]&&r){a(t);continue}}if(this.metadataRegistry.get(t[0])?.id){a(t);continue}if(r.cycle){a(t);continue}if(r.count>1&&n.reused===`ref`){a(t);continue}}let o=(e,t)=>{let n=this.seen.get(e),r=n.def??n.schema,i={...r};if(n.ref===null)return;let a=n.ref;if(n.ref=null,a){o(a,t);let e=this.seen.get(a).schema;e.$ref&&(t.target===`draft-7`||t.target===`draft-4`||t.target===`openapi-3.0`)?(r.allOf=r.allOf??[],r.allOf.push(e)):(Object.assign(r,e),Object.assign(r,i))}n.isParent||this.override({zodSchema:e,jsonSchema:r,path:n.path??[]})};for(let e of[...this.seen.entries()].reverse())o(e[0],{target:this.target});let s={};if(this.target===`draft-2020-12`?s.$schema=`https://json-schema.org/draft/2020-12/schema`:this.target===`draft-7`?s.$schema=`http://json-schema.org/draft-07/schema#`:this.target===`draft-4`?s.$schema=`http://json-schema.org/draft-04/schema#`:this.target===`openapi-3.0`||console.warn(`Invalid target: ${this.target}`),n.external?.uri){let t=n.external.registry.get(e)?.id;if(!t)throw Error("Schema is missing an `id` property");s.$id=n.external.uri(t)}Object.assign(s,r.def);let c=n.external?.defs??{};for(let e of this.seen.entries()){let t=e[1];t.def&&t.defId&&(c[t.defId]=t.def)}n.external||Object.keys(c).length>0&&(this.target===`draft-2020-12`?s.$defs=c:s.definitions=c);try{return JSON.parse(JSON.stringify(s))}catch{throw Error(`Error converting schema to JSON.`)}}};function el(e,t){if(e instanceof Jo){let n=new $c(t),r={};for(let t of e._idmap.entries()){let[e,r]=t;n.process(r)}let i={},a={registry:e,uri:t?.uri,defs:r};for(let r of e._idmap.entries()){let[e,o]=r;i[e]=n.emit(o,{...t,external:a})}return Object.keys(r).length>0&&(i.__shared={[n.target===`draft-2020-12`?`$defs`:`definitions`]:r}),{schemas:i}}let n=new $c(t);return n.process(e),n.emit(e,t)}function k(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return k(r.element,n);if(r.type===`set`)return k(r.valueType,n);if(r.type===`lazy`)return k(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type===`default`||r.type===`prefault`)return k(r.innerType,n);if(r.type===`intersection`)return k(r.left,n)||k(r.right,n);if(r.type===`record`||r.type===`map`)return k(r.keyType,n)||k(r.valueType,n);if(r.type===`pipe`)return k(r.in,n)||k(r.out,n);if(r.type===`object`){for(let e in r.shape)if(k(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(k(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(k(e,n))return!0;return!!(r.rest&&k(r.rest,n))}return!1}var tl=t({}),nl=t({$ZodAny:()=>Jr,$ZodArray:()=>ei,$ZodAsyncError:()=>o,$ZodBase64:()=>Nr,$ZodBase64URL:()=>Fr,$ZodBigInt:()=>Ur,$ZodBigIntFormat:()=>Wr,$ZodBoolean:()=>Hr,$ZodCIDRv4:()=>Ar,$ZodCIDRv6:()=>jr,$ZodCUID:()=>vr,$ZodCUID2:()=>yr,$ZodCatch:()=>Mi,$ZodCheck:()=>S,$ZodCheckBigIntFormat:()=>Gn,$ZodCheckEndsWith:()=>ir,$ZodCheckGreaterThan:()=>Hn,$ZodCheckIncludes:()=>nr,$ZodCheckLengthEquals:()=>Zn,$ZodCheckLessThan:()=>Vn,$ZodCheckLowerCase:()=>er,$ZodCheckMaxLength:()=>Yn,$ZodCheckMaxSize:()=>Kn,$ZodCheckMimeType:()=>sr,$ZodCheckMinLength:()=>Xn,$ZodCheckMinSize:()=>qn,$ZodCheckMultipleOf:()=>Un,$ZodCheckNumberFormat:()=>Wn,$ZodCheckOverwrite:()=>cr,$ZodCheckProperty:()=>or,$ZodCheckRegex:()=>$n,$ZodCheckSizeEquals:()=>Jn,$ZodCheckStartsWith:()=>rr,$ZodCheckStringFormat:()=>Qn,$ZodCheckUpperCase:()=>tr,$ZodCodec:()=>Ii,$ZodCustom:()=>Gi,$ZodCustomStringFormat:()=>zr,$ZodDate:()=>Qr,$ZodDefault:()=>Ei,$ZodDiscriminatedUnion:()=>ci,$ZodE164:()=>Ir,$ZodEmail:()=>mr,$ZodEmoji:()=>gr,$ZodEncodeError:()=>s,$ZodEnum:()=>yi,$ZodError:()=>$e,$ZodFile:()=>xi,$ZodFunction:()=>Hi,$ZodGUID:()=>fr,$ZodIPv4:()=>Dr,$ZodIPv6:()=>Or,$ZodISODate:()=>wr,$ZodISODateTime:()=>Cr,$ZodISODuration:()=>Er,$ZodISOTime:()=>Tr,$ZodIntersection:()=>li,$ZodJWT:()=>Rr,$ZodKSUID:()=>Sr,$ZodLazy:()=>Wi,$ZodLiteral:()=>bi,$ZodMAC:()=>kr,$ZodMap:()=>hi,$ZodNaN:()=>Ni,$ZodNanoID:()=>_r,$ZodNever:()=>Xr,$ZodNonOptional:()=>ki,$ZodNull:()=>qr,$ZodNullable:()=>Ti,$ZodNumber:()=>Br,$ZodNumberFormat:()=>Vr,$ZodObject:()=>ii,$ZodObjectJIT:()=>ai,$ZodOptional:()=>wi,$ZodPipe:()=>Pi,$ZodPrefault:()=>Oi,$ZodPromise:()=>Ui,$ZodReadonly:()=>zi,$ZodRealError:()=>x,$ZodRecord:()=>mi,$ZodRegistry:()=>Jo,$ZodSet:()=>_i,$ZodString:()=>dr,$ZodStringFormat:()=>w,$ZodSuccess:()=>ji,$ZodSymbol:()=>Gr,$ZodTemplateLiteral:()=>Vi,$ZodTransform:()=>Si,$ZodTuple:()=>fi,$ZodType:()=>C,$ZodULID:()=>br,$ZodURL:()=>hr,$ZodUUID:()=>pr,$ZodUndefined:()=>Kr,$ZodUnion:()=>si,$ZodUnknown:()=>Yr,$ZodVoid:()=>Zr,$ZodXID:()=>xr,$brand:()=>a,$constructor:()=>i,$input:()=>qo,$output:()=>Ko,Doc:()=>lr,JSONSchema:()=>tl,JSONSchemaGenerator:()=>$c,NEVER:()=>r,TimePrecision:()=>xs,_any:()=>Hs,_array:()=>xc,_base64:()=>_s,_base64url:()=>vs,_bigint:()=>Fs,_boolean:()=>Ns,_catch:()=>zc,_check:()=>Jc,_cidrv4:()=>hs,_cidrv6:()=>gs,_coercedBigint:()=>Is,_coercedBoolean:()=>Ps,_coercedDate:()=>qs,_coercedNumber:()=>Ds,_coercedString:()=>Zo,_cuid:()=>ss,_cuid2:()=>cs,_custom:()=>Gc,_date:()=>Ks,_decode:()=>ht,_decodeAsync:()=>yt,_default:()=>Ic,_discriminatedUnion:()=>Cc,_e164:()=>ys,_email:()=>Qo,_emoji:()=>as,_encode:()=>pt,_encodeAsync:()=>_t,_endsWith:()=>pc,_enum:()=>kc,_file:()=>Mc,_float32:()=>ks,_float64:()=>As,_gt:()=>Xs,_gte:()=>D,_guid:()=>$o,_includes:()=>dc,_int:()=>Os,_int32:()=>js,_int64:()=>Ls,_intersection:()=>wc,_ipv4:()=>fs,_ipv6:()=>ps,_isoDate:()=>Cs,_isoDateTime:()=>Ss,_isoDuration:()=>Ts,_isoTime:()=>ws,_jwt:()=>bs,_ksuid:()=>ds,_lazy:()=>Uc,_length:()=>sc,_literal:()=>jc,_lowercase:()=>lc,_lt:()=>Ys,_lte:()=>E,_mac:()=>ms,_map:()=>Dc,_max:()=>E,_maxLength:()=>ac,_maxSize:()=>nc,_mime:()=>hc,_min:()=>D,_minLength:()=>oc,_minSize:()=>rc,_multipleOf:()=>tc,_nan:()=>Js,_nanoid:()=>os,_nativeEnum:()=>Ac,_negative:()=>Qs,_never:()=>Ws,_nonnegative:()=>ec,_nonoptional:()=>Lc,_nonpositive:()=>$s,_normalize:()=>gc,_null:()=>Vs,_nullable:()=>Fc,_number:()=>Es,_optional:()=>Pc,_overwrite:()=>O,_parse:()=>at,_parseAsync:()=>st,_pipe:()=>Bc,_positive:()=>Zs,_promise:()=>Wc,_property:()=>mc,_readonly:()=>Vc,_record:()=>Ec,_refine:()=>Kc,_regex:()=>cc,_safeDecode:()=>Ct,_safeDecodeAsync:()=>Dt,_safeEncode:()=>xt,_safeEncodeAsync:()=>Tt,_safeParse:()=>lt,_safeParseAsync:()=>dt,_set:()=>Oc,_size:()=>ic,_slugify:()=>bc,_startsWith:()=>fc,_string:()=>Xo,_stringFormat:()=>Qc,_stringbool:()=>Zc,_success:()=>Rc,_superRefine:()=>qc,_symbol:()=>zs,_templateLiteral:()=>Hc,_toLowerCase:()=>vc,_toUpperCase:()=>yc,_transform:()=>Nc,_trim:()=>_c,_tuple:()=>Tc,_uint32:()=>Ms,_uint64:()=>Rs,_ulid:()=>ls,_undefined:()=>Bs,_union:()=>Sc,_unknown:()=>Us,_uppercase:()=>uc,_url:()=>is,_uuid:()=>es,_uuidv4:()=>ts,_uuidv6:()=>ns,_uuidv7:()=>rs,_void:()=>Gs,_xid:()=>us,clone:()=>g,config:()=>l,decode:()=>gt,decodeAsync:()=>bt,describe:()=>Yc,encode:()=>mt,encodeAsync:()=>vt,flattenError:()=>et,formatError:()=>tt,globalConfig:()=>c,globalRegistry:()=>T,isValidBase64:()=>Mr,isValidBase64URL:()=>Pr,isValidJWT:()=>Lr,locales:()=>Wo,meta:()=>Xc,parse:()=>ot,parseAsync:()=>ct,prettifyError:()=>it,regexes:()=>kt,registry:()=>Yo,safeDecode:()=>wt,safeDecodeAsync:()=>Ot,safeEncode:()=>St,safeEncodeAsync:()=>Et,safeParse:()=>ut,safeParseAsync:()=>ft,toDotPath:()=>rt,toJSONSchema:()=>el,treeifyError:()=>nt,util:()=>u,version:()=>ur});function rl(e){return!!e._zod}function il(e,t){return rl(e)?ut(e,t):e.safeParse(t)}function al(e){if(!e)return;let t;if(t=rl(e)?e._zod?.def?.shape:e.shape,t){if(typeof t==`function`)try{return t()}catch{return}return t}}function ol(e){if(rl(e)){let t=e._zod?.def;if(t){if(t.value!==void 0)return t.value;if(Array.isArray(t.values)&&t.values.length>0)return t.values[0]}}let t=e._def;if(t){if(t.value!==void 0)return t.value;if(Array.isArray(t.values)&&t.values.length>0)return t.values[0]}let n=e.value;if(n!==void 0)return n}var sl=t({ZodISODate:()=>ul,ZodISODateTime:()=>cl,ZodISODuration:()=>ml,ZodISOTime:()=>fl,date:()=>dl,datetime:()=>ll,duration:()=>hl,time:()=>pl}),cl=i(`ZodISODateTime`,(e,t)=>{Cr.init(e,t),N.init(e,t)});function ll(e){return Ss(cl,e)}var ul=i(`ZodISODate`,(e,t)=>{wr.init(e,t),N.init(e,t)});function dl(e){return Cs(ul,e)}var fl=i(`ZodISOTime`,(e,t)=>{Tr.init(e,t),N.init(e,t)});function pl(e){return ws(fl,e)}var ml=i(`ZodISODuration`,(e,t)=>{Er.init(e,t),N.init(e,t)});function hl(e){return Ts(ml,e)}var gl=(e,t)=>{$e.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>tt(e,t)},flatten:{value:t=>et(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,re,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,re,2)}},isEmpty:{get(){return e.issues.length===0}}})},_l=i(`ZodError`,gl),A=i(`ZodError`,gl,{Parent:Error}),vl=at(A),yl=st(A),bl=lt(A),xl=dt(A),Sl=pt(A),Cl=ht(A),wl=_t(A),Tl=yt(A),El=xt(A),Dl=Ct(A),Ol=Tt(A),kl=Dt(A),j=i(`ZodType`,(e,t)=>(C.init(e,t),e.def=t,e.type=t.type,Object.defineProperty(e,`_def`,{value:t}),e.check=(...n)=>e.clone(de(t,{checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]})),e.clone=(t,n)=>g(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.parse=(t,n)=>vl(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>bl(e,t,n),e.parseAsync=async(t,n)=>yl(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>xl(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>Sl(e,t,n),e.decode=(t,n)=>Cl(e,t,n),e.encodeAsync=async(t,n)=>wl(e,t,n),e.decodeAsync=async(t,n)=>Tl(e,t,n),e.safeEncode=(t,n)=>El(e,t,n),e.safeDecode=(t,n)=>Dl(e,t,n),e.safeEncodeAsync=async(t,n)=>Ol(e,t,n),e.safeDecodeAsync=async(t,n)=>kl(e,t,n),e.refine=(t,n)=>e.check(rf(t,n)),e.superRefine=t=>e.check(af(t)),e.overwrite=t=>e.check(O(t)),e.optional=()=>G(e),e.nullable=()=>Ed(e),e.nullish=()=>G(Ed(e)),e.nonoptional=t=>Nd(e,t),e.array=()=>R(e),e.or=t=>V([e,t]),e.and=t=>cd(e,t),e.transform=t=>Vd(e,Cd(t)),e.default=t=>kd(e,t),e.prefault=t=>jd(e,t),e.catch=t=>Ld(e,t),e.pipe=t=>Vd(e,t),e.readonly=()=>Gd(e),e.describe=t=>{let n=e.clone();return T.add(n,{description:t}),n},Object.defineProperty(e,`description`,{get(){return T.get(e)?.description},configurable:!0}),e.meta=(...t)=>{if(t.length===0)return T.get(e);let n=e.clone();return T.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),Al=i(`_ZodString`,(e,t)=>{dr.init(e,t),j.init(e,t);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(cc(...t)),e.includes=(...t)=>e.check(dc(...t)),e.startsWith=(...t)=>e.check(fc(...t)),e.endsWith=(...t)=>e.check(pc(...t)),e.min=(...t)=>e.check(oc(...t)),e.max=(...t)=>e.check(ac(...t)),e.length=(...t)=>e.check(sc(...t)),e.nonempty=(...t)=>e.check(oc(1,...t)),e.lowercase=t=>e.check(lc(t)),e.uppercase=t=>e.check(uc(t)),e.trim=()=>e.check(_c()),e.normalize=(...t)=>e.check(gc(...t)),e.toLowerCase=()=>e.check(vc()),e.toUpperCase=()=>e.check(yc()),e.slugify=()=>e.check(bc())}),jl=i(`ZodString`,(e,t)=>{dr.init(e,t),Al.init(e,t),e.email=t=>e.check(Qo(Ml,t)),e.url=t=>e.check(is(Bl,t)),e.jwt=t=>e.check(bs(yu,t)),e.emoji=t=>e.check(as(Ul,t)),e.guid=t=>e.check($o(Pl,t)),e.uuid=t=>e.check(es(P,t)),e.uuidv4=t=>e.check(ts(P,t)),e.uuidv6=t=>e.check(ns(P,t)),e.uuidv7=t=>e.check(rs(P,t)),e.nanoid=t=>e.check(os(Gl,t)),e.guid=t=>e.check($o(Pl,t)),e.cuid=t=>e.check(ss(ql,t)),e.cuid2=t=>e.check(cs(Yl,t)),e.ulid=t=>e.check(ls(Zl,t)),e.base64=t=>e.check(_s(pu,t)),e.base64url=t=>e.check(vs(hu,t)),e.xid=t=>e.check(us($l,t)),e.ksuid=t=>e.check(ds(tu,t)),e.ipv4=t=>e.check(fs(ru,t)),e.ipv6=t=>e.check(ps(su,t)),e.cidrv4=t=>e.check(hs(lu,t)),e.cidrv6=t=>e.check(gs(du,t)),e.e164=t=>e.check(ys(_u,t)),e.datetime=t=>e.check(ll(t)),e.date=t=>e.check(dl(t)),e.time=t=>e.check(pl(t)),e.duration=t=>e.check(hl(t))});function M(e){return Xo(jl,e)}var N=i(`ZodStringFormat`,(e,t)=>{w.init(e,t),Al.init(e,t)}),Ml=i(`ZodEmail`,(e,t)=>{mr.init(e,t),N.init(e,t)});function Nl(e){return Qo(Ml,e)}var Pl=i(`ZodGUID`,(e,t)=>{fr.init(e,t),N.init(e,t)});function Fl(e){return $o(Pl,e)}var P=i(`ZodUUID`,(e,t)=>{pr.init(e,t),N.init(e,t)});function Il(e){return es(P,e)}function Ll(e){return ts(P,e)}function Rl(e){return ns(P,e)}function zl(e){return rs(P,e)}var Bl=i(`ZodURL`,(e,t)=>{hr.init(e,t),N.init(e,t)});function Vl(e){return is(Bl,e)}function Hl(e){return is(Bl,{protocol:/^https?$/,hostname:on,..._(e)})}var Ul=i(`ZodEmoji`,(e,t)=>{gr.init(e,t),N.init(e,t)});function Wl(e){return as(Ul,e)}var Gl=i(`ZodNanoID`,(e,t)=>{_r.init(e,t),N.init(e,t)});function Kl(e){return os(Gl,e)}var ql=i(`ZodCUID`,(e,t)=>{vr.init(e,t),N.init(e,t)});function Jl(e){return ss(ql,e)}var Yl=i(`ZodCUID2`,(e,t)=>{yr.init(e,t),N.init(e,t)});function Xl(e){return cs(Yl,e)}var Zl=i(`ZodULID`,(e,t)=>{br.init(e,t),N.init(e,t)});function Ql(e){return ls(Zl,e)}var $l=i(`ZodXID`,(e,t)=>{xr.init(e,t),N.init(e,t)});function eu(e){return us($l,e)}var tu=i(`ZodKSUID`,(e,t)=>{Sr.init(e,t),N.init(e,t)});function nu(e){return ds(tu,e)}var ru=i(`ZodIPv4`,(e,t)=>{Dr.init(e,t),N.init(e,t)});function iu(e){return fs(ru,e)}var au=i(`ZodMAC`,(e,t)=>{kr.init(e,t),N.init(e,t)});function ou(e){return ms(au,e)}var su=i(`ZodIPv6`,(e,t)=>{Or.init(e,t),N.init(e,t)});function cu(e){return ps(su,e)}var lu=i(`ZodCIDRv4`,(e,t)=>{Ar.init(e,t),N.init(e,t)});function uu(e){return hs(lu,e)}var du=i(`ZodCIDRv6`,(e,t)=>{jr.init(e,t),N.init(e,t)});function fu(e){return gs(du,e)}var pu=i(`ZodBase64`,(e,t)=>{Nr.init(e,t),N.init(e,t)});function mu(e){return _s(pu,e)}var hu=i(`ZodBase64URL`,(e,t)=>{Fr.init(e,t),N.init(e,t)});function gu(e){return vs(hu,e)}var _u=i(`ZodE164`,(e,t)=>{Ir.init(e,t),N.init(e,t)});function vu(e){return ys(_u,e)}var yu=i(`ZodJWT`,(e,t)=>{Rr.init(e,t),N.init(e,t)});function bu(e){return bs(yu,e)}var xu=i(`ZodCustomStringFormat`,(e,t)=>{zr.init(e,t),N.init(e,t)});function Su(e,t,n={}){return Qc(xu,e,t,n)}function Cu(e){return Qc(xu,`hostname`,an,e)}function wu(e){return Qc(xu,`hex`,Sn,e)}function Tu(e,t){let n=`${e}_${t?.enc??`hex`}`,r=kt[n];if(!r)throw Error(`Unrecognized hash format: ${n}`);return Qc(xu,n,r,t)}var Eu=i(`ZodNumber`,(e,t)=>{Br.init(e,t),j.init(e,t),e.gt=(t,n)=>e.check(Xs(t,n)),e.gte=(t,n)=>e.check(D(t,n)),e.min=(t,n)=>e.check(D(t,n)),e.lt=(t,n)=>e.check(Ys(t,n)),e.lte=(t,n)=>e.check(E(t,n)),e.max=(t,n)=>e.check(E(t,n)),e.int=t=>e.check(Ou(t)),e.safe=t=>e.check(Ou(t)),e.positive=t=>e.check(Xs(0,t)),e.nonnegative=t=>e.check(D(0,t)),e.negative=t=>e.check(Ys(0,t)),e.nonpositive=t=>e.check(E(0,t)),e.multipleOf=(t,n)=>e.check(tc(t,n)),e.step=(t,n)=>e.check(tc(t,n)),e.finite=()=>e;let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function F(e){return Es(Eu,e)}var Du=i(`ZodNumberFormat`,(e,t)=>{Vr.init(e,t),Eu.init(e,t)});function Ou(e){return Os(Du,e)}function ku(e){return ks(Du,e)}function Au(e){return As(Du,e)}function ju(e){return js(Du,e)}function Mu(e){return Ms(Du,e)}var Nu=i(`ZodBoolean`,(e,t)=>{Hr.init(e,t),j.init(e,t)});function I(e){return Ns(Nu,e)}var Pu=i(`ZodBigInt`,(e,t)=>{Ur.init(e,t),j.init(e,t),e.gte=(t,n)=>e.check(D(t,n)),e.min=(t,n)=>e.check(D(t,n)),e.gt=(t,n)=>e.check(Xs(t,n)),e.gte=(t,n)=>e.check(D(t,n)),e.min=(t,n)=>e.check(D(t,n)),e.lt=(t,n)=>e.check(Ys(t,n)),e.lte=(t,n)=>e.check(E(t,n)),e.max=(t,n)=>e.check(E(t,n)),e.positive=t=>e.check(Xs(BigInt(0),t)),e.negative=t=>e.check(Ys(BigInt(0),t)),e.nonpositive=t=>e.check(E(BigInt(0),t)),e.nonnegative=t=>e.check(D(BigInt(0),t)),e.multipleOf=(t,n)=>e.check(tc(t,n));let n=e._zod.bag;e.minValue=n.minimum??null,e.maxValue=n.maximum??null,e.format=n.format??null});function Fu(e){return Fs(Pu,e)}var Iu=i(`ZodBigIntFormat`,(e,t)=>{Wr.init(e,t),Pu.init(e,t)});function Lu(e){return Ls(Iu,e)}function Ru(e){return Rs(Iu,e)}var zu=i(`ZodSymbol`,(e,t)=>{Gr.init(e,t),j.init(e,t)});function Bu(e){return zs(zu,e)}var Vu=i(`ZodUndefined`,(e,t)=>{Kr.init(e,t),j.init(e,t)});function Hu(e){return Bs(Vu,e)}var Uu=i(`ZodNull`,(e,t)=>{qr.init(e,t),j.init(e,t)});function Wu(e){return Vs(Uu,e)}var Gu=i(`ZodAny`,(e,t)=>{Jr.init(e,t),j.init(e,t)});function Ku(){return Hs(Gu)}var qu=i(`ZodUnknown`,(e,t)=>{Yr.init(e,t),j.init(e,t)});function L(){return Us(qu)}var Ju=i(`ZodNever`,(e,t)=>{Xr.init(e,t),j.init(e,t)});function Yu(e){return Ws(Ju,e)}var Xu=i(`ZodVoid`,(e,t)=>{Zr.init(e,t),j.init(e,t)});function Zu(e){return Gs(Xu,e)}var Qu=i(`ZodDate`,(e,t)=>{Qr.init(e,t),j.init(e,t),e.min=(t,n)=>e.check(D(t,n)),e.max=(t,n)=>e.check(E(t,n));let n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});function $u(e){return Ks(Qu,e)}var ed=i(`ZodArray`,(e,t)=>{ei.init(e,t),j.init(e,t),e.element=t.element,e.min=(t,n)=>e.check(oc(t,n)),e.nonempty=t=>e.check(oc(1,t)),e.max=(t,n)=>e.check(ac(t,n)),e.length=(t,n)=>e.check(sc(t,n)),e.unwrap=()=>e.element});function R(e,t){return xc(ed,e,t)}function td(e){let t=e._zod.def.shape;return U(Object.keys(t))}var nd=i(`ZodObject`,(e,t)=>{ai.init(e,t),j.init(e,t),h(e,`shape`,()=>t.shape),e.keyof=()=>U(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:L()}),e.loose=()=>e.clone({...e._zod.def,catchall:L()}),e.strict=()=>e.clone({...e._zod.def,catchall:Yu()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>Pe(e,t),e.safeExtend=t=>Fe(e,t),e.merge=t=>Ie(e,t),e.pick=t=>Me(e,t),e.omit=t=>Ne(e,t),e.partial=(...t)=>Le(wd,e,t[0]),e.required=(...t)=>Re(Md,e,t[0])});function z(e,t){return new nd({type:`object`,shape:e??{},..._(t)})}function rd(e,t){return new nd({type:`object`,shape:e,catchall:Yu(),..._(t)})}function B(e,t){return new nd({type:`object`,shape:e,catchall:L(),..._(t)})}var id=i(`ZodUnion`,(e,t)=>{si.init(e,t),j.init(e,t),e.options=t.options});function V(e,t){return new id({type:`union`,options:e,..._(t)})}var ad=i(`ZodDiscriminatedUnion`,(e,t)=>{id.init(e,t),ci.init(e,t)});function od(e,t,n){return new ad({type:`union`,options:t,discriminator:e,..._(n)})}var sd=i(`ZodIntersection`,(e,t)=>{li.init(e,t),j.init(e,t)});function cd(e,t){return new sd({type:`intersection`,left:e,right:t})}var ld=i(`ZodTuple`,(e,t)=>{fi.init(e,t),j.init(e,t),e.rest=t=>e.clone({...e._zod.def,rest:t})});function ud(e,t,n){let r=t instanceof C;return new ld({type:`tuple`,items:e,rest:r?t:null,..._(r?n:t)})}var dd=i(`ZodRecord`,(e,t)=>{mi.init(e,t),j.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function H(e,t,n){return new dd({type:`record`,keyType:e,valueType:t,..._(n)})}function fd(e,t,n){let r=g(e);return r._zod.values=void 0,new dd({type:`record`,keyType:r,valueType:t,..._(n)})}var pd=i(`ZodMap`,(e,t)=>{hi.init(e,t),j.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function md(e,t,n){return new pd({type:`map`,keyType:e,valueType:t,..._(n)})}var hd=i(`ZodSet`,(e,t)=>{_i.init(e,t),j.init(e,t),e.min=(...t)=>e.check(rc(...t)),e.nonempty=t=>e.check(rc(1,t)),e.max=(...t)=>e.check(nc(...t)),e.size=(...t)=>e.check(ic(...t))});function gd(e,t){return new hd({type:`set`,valueType:e,..._(t)})}var _d=i(`ZodEnum`,(e,t)=>{yi.init(e,t),j.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new _d({...t,checks:[],..._(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new _d({...t,checks:[],..._(r),entries:i})}});function U(e,t){return new _d({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,..._(t)})}function vd(e,t){return new _d({type:`enum`,entries:e,..._(t)})}var yd=i(`ZodLiteral`,(e,t)=>{bi.init(e,t),j.init(e,t),e.values=new Set(t.values),Object.defineProperty(e,`value`,{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function W(e,t){return new yd({type:`literal`,values:Array.isArray(e)?e:[e],..._(t)})}var bd=i(`ZodFile`,(e,t)=>{xi.init(e,t),j.init(e,t),e.min=(t,n)=>e.check(rc(t,n)),e.max=(t,n)=>e.check(nc(t,n)),e.mime=(t,n)=>e.check(hc(Array.isArray(t)?t:[t],n))});function xd(e){return Mc(bd,e)}var Sd=i(`ZodTransform`,(e,t)=>{Si.init(e,t),j.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new s(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(Ue(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(Ue(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function Cd(e){return new Sd({type:`transform`,transform:e})}var wd=i(`ZodOptional`,(e,t)=>{wi.init(e,t),j.init(e,t),e.unwrap=()=>e._zod.def.innerType});function G(e){return new wd({type:`optional`,innerType:e})}var Td=i(`ZodNullable`,(e,t)=>{Ti.init(e,t),j.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Ed(e){return new Td({type:`nullable`,innerType:e})}function Dd(e){return G(Ed(e))}var Od=i(`ZodDefault`,(e,t)=>{Ei.init(e,t),j.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function kd(e,t){return new Od({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():Se(t)}})}var Ad=i(`ZodPrefault`,(e,t)=>{Oi.init(e,t),j.init(e,t),e.unwrap=()=>e._zod.def.innerType});function jd(e,t){return new Ad({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():Se(t)}})}var Md=i(`ZodNonOptional`,(e,t)=>{ki.init(e,t),j.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Nd(e,t){return new Md({type:`nonoptional`,innerType:e,..._(t)})}var Pd=i(`ZodSuccess`,(e,t)=>{ji.init(e,t),j.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Fd(e){return new Pd({type:`success`,innerType:e})}var Id=i(`ZodCatch`,(e,t)=>{Mi.init(e,t),j.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Ld(e,t){return new Id({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var Rd=i(`ZodNaN`,(e,t)=>{Ni.init(e,t),j.init(e,t)});function zd(e){return Js(Rd,e)}var Bd=i(`ZodPipe`,(e,t)=>{Pi.init(e,t),j.init(e,t),e.in=t.in,e.out=t.out});function Vd(e,t){return new Bd({type:`pipe`,in:e,out:t})}var Hd=i(`ZodCodec`,(e,t)=>{Bd.init(e,t),Ii.init(e,t)});function Ud(e,t,n){return new Hd({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}var Wd=i(`ZodReadonly`,(e,t)=>{zi.init(e,t),j.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Gd(e){return new Wd({type:`readonly`,innerType:e})}var Kd=i(`ZodTemplateLiteral`,(e,t)=>{Vi.init(e,t),j.init(e,t)});function qd(e,t){return new Kd({type:`template_literal`,parts:e,..._(t)})}var Jd=i(`ZodLazy`,(e,t)=>{Wi.init(e,t),j.init(e,t),e.unwrap=()=>e._zod.def.getter()});function Yd(e){return new Jd({type:`lazy`,getter:e})}var Xd=i(`ZodPromise`,(e,t)=>{Ui.init(e,t),j.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Zd(e){return new Xd({type:`promise`,innerType:e})}var Qd=i(`ZodFunction`,(e,t)=>{Hi.init(e,t),j.init(e,t)});function $d(e){return new Qd({type:`function`,input:Array.isArray(e?.input)?ud(e?.input):e?.input??R(L()),output:e?.output??L()})}var ef=i(`ZodCustom`,(e,t)=>{Gi.init(e,t),j.init(e,t)});function tf(e){let t=new S({check:`custom`});return t._zod.check=e,t}function nf(e,t){return Gc(ef,e??(()=>!0),t)}function rf(e,t={}){return Kc(ef,e,t)}function af(e){return qc(e)}var of=Yc,sf=Xc;function cf(e,t={error:`Input not instance of ${e.name}`}){let n=new ef({type:`custom`,check:`custom`,fn:t=>t instanceof e,abort:!0,..._(t)});return n._zod.bag.Class=e,n}var lf=(...e)=>Zc({Codec:Hd,Boolean:Nu,String:jl},...e);function uf(e){let t=Yd(()=>V([M(e),F(),I(),Wu(),R(t),H(M(),t)]));return t}function df(e,t){return Vd(Cd(e),t)}var ff={invalid_type:`invalid_type`,too_big:`too_big`,too_small:`too_small`,invalid_format:`invalid_format`,not_multiple_of:`not_multiple_of`,unrecognized_keys:`unrecognized_keys`,invalid_union:`invalid_union`,invalid_key:`invalid_key`,invalid_element:`invalid_element`,invalid_value:`invalid_value`,custom:`custom`};function pf(e){l({customError:e})}function mf(){return l().customError}var hf;(function(e){})(hf||={});var gf=t({bigint:()=>bf,boolean:()=>yf,date:()=>xf,number:()=>vf,string:()=>_f});function _f(e){return Zo(jl,e)}function vf(e){return Ds(Eu,e)}function yf(e){return Ps(Nu,e)}function bf(e){return Is(Pu,e)}function xf(e){return qs(Qu,e)}var Sf=t({$brand:()=>a,$input:()=>qo,$output:()=>Ko,NEVER:()=>r,TimePrecision:()=>xs,ZodAny:()=>Gu,ZodArray:()=>ed,ZodBase64:()=>pu,ZodBase64URL:()=>hu,ZodBigInt:()=>Pu,ZodBigIntFormat:()=>Iu,ZodBoolean:()=>Nu,ZodCIDRv4:()=>lu,ZodCIDRv6:()=>du,ZodCUID:()=>ql,ZodCUID2:()=>Yl,ZodCatch:()=>Id,ZodCodec:()=>Hd,ZodCustom:()=>ef,ZodCustomStringFormat:()=>xu,ZodDate:()=>Qu,ZodDefault:()=>Od,ZodDiscriminatedUnion:()=>ad,ZodE164:()=>_u,ZodEmail:()=>Ml,ZodEmoji:()=>Ul,ZodEnum:()=>_d,ZodError:()=>_l,ZodFile:()=>bd,ZodFirstPartyTypeKind:()=>hf,ZodFunction:()=>Qd,ZodGUID:()=>Pl,ZodIPv4:()=>ru,ZodIPv6:()=>su,ZodISODate:()=>ul,ZodISODateTime:()=>cl,ZodISODuration:()=>ml,ZodISOTime:()=>fl,ZodIntersection:()=>sd,ZodIssueCode:()=>ff,ZodJWT:()=>yu,ZodKSUID:()=>tu,ZodLazy:()=>Jd,ZodLiteral:()=>yd,ZodMAC:()=>au,ZodMap:()=>pd,ZodNaN:()=>Rd,ZodNanoID:()=>Gl,ZodNever:()=>Ju,ZodNonOptional:()=>Md,ZodNull:()=>Uu,ZodNullable:()=>Td,ZodNumber:()=>Eu,ZodNumberFormat:()=>Du,ZodObject:()=>nd,ZodOptional:()=>wd,ZodPipe:()=>Bd,ZodPrefault:()=>Ad,ZodPromise:()=>Xd,ZodReadonly:()=>Wd,ZodRealError:()=>A,ZodRecord:()=>dd,ZodSet:()=>hd,ZodString:()=>jl,ZodStringFormat:()=>N,ZodSuccess:()=>Pd,ZodSymbol:()=>zu,ZodTemplateLiteral:()=>Kd,ZodTransform:()=>Sd,ZodTuple:()=>ld,ZodType:()=>j,ZodULID:()=>Zl,ZodURL:()=>Bl,ZodUUID:()=>P,ZodUndefined:()=>Vu,ZodUnion:()=>id,ZodUnknown:()=>qu,ZodVoid:()=>Xu,ZodXID:()=>$l,_ZodString:()=>Al,_default:()=>kd,_function:()=>$d,any:()=>Ku,array:()=>R,base64:()=>mu,base64url:()=>gu,bigint:()=>Fu,boolean:()=>I,catch:()=>Ld,check:()=>tf,cidrv4:()=>uu,cidrv6:()=>fu,clone:()=>g,codec:()=>Ud,coerce:()=>gf,config:()=>l,core:()=>nl,cuid:()=>Jl,cuid2:()=>Xl,custom:()=>nf,date:()=>$u,decode:()=>Cl,decodeAsync:()=>Tl,describe:()=>of,discriminatedUnion:()=>od,e164:()=>vu,email:()=>Nl,emoji:()=>Wl,encode:()=>Sl,encodeAsync:()=>wl,endsWith:()=>pc,enum:()=>U,file:()=>xd,flattenError:()=>et,float32:()=>ku,float64:()=>Au,formatError:()=>tt,function:()=>$d,getErrorMap:()=>mf,globalRegistry:()=>T,gt:()=>Xs,gte:()=>D,guid:()=>Fl,hash:()=>Tu,hex:()=>wu,hostname:()=>Cu,httpUrl:()=>Hl,includes:()=>dc,instanceof:()=>cf,int:()=>Ou,int32:()=>ju,int64:()=>Lu,intersection:()=>cd,ipv4:()=>iu,ipv6:()=>cu,iso:()=>sl,json:()=>uf,jwt:()=>bu,keyof:()=>td,ksuid:()=>nu,lazy:()=>Yd,length:()=>sc,literal:()=>W,locales:()=>Wo,looseObject:()=>B,lowercase:()=>lc,lt:()=>Ys,lte:()=>E,mac:()=>ou,map:()=>md,maxLength:()=>ac,maxSize:()=>nc,meta:()=>sf,mime:()=>hc,minLength:()=>oc,minSize:()=>rc,multipleOf:()=>tc,nan:()=>zd,nanoid:()=>Kl,nativeEnum:()=>vd,negative:()=>Qs,never:()=>Yu,nonnegative:()=>ec,nonoptional:()=>Nd,nonpositive:()=>$s,normalize:()=>gc,null:()=>Wu,nullable:()=>Ed,nullish:()=>Dd,number:()=>F,object:()=>z,optional:()=>G,overwrite:()=>O,parse:()=>vl,parseAsync:()=>yl,partialRecord:()=>fd,pipe:()=>Vd,positive:()=>Zs,prefault:()=>jd,preprocess:()=>df,prettifyError:()=>it,promise:()=>Zd,property:()=>mc,readonly:()=>Gd,record:()=>H,refine:()=>rf,regex:()=>cc,regexes:()=>kt,registry:()=>Yo,safeDecode:()=>Dl,safeDecodeAsync:()=>kl,safeEncode:()=>El,safeEncodeAsync:()=>Ol,safeParse:()=>bl,safeParseAsync:()=>xl,set:()=>gd,setErrorMap:()=>pf,size:()=>ic,slugify:()=>bc,startsWith:()=>fc,strictObject:()=>rd,string:()=>M,stringFormat:()=>Su,stringbool:()=>lf,success:()=>Fd,superRefine:()=>af,symbol:()=>Bu,templateLiteral:()=>qd,toJSONSchema:()=>el,toLowerCase:()=>vc,toUpperCase:()=>yc,transform:()=>Cd,treeifyError:()=>nt,trim:()=>_c,tuple:()=>ud,uint32:()=>Mu,uint64:()=>Ru,ulid:()=>Ql,undefined:()=>Hu,union:()=>V,unknown:()=>L,uppercase:()=>uc,url:()=>Vl,util:()=>u,uuid:()=>Il,uuidv4:()=>Ll,uuidv6:()=>Rl,uuidv7:()=>zl,void:()=>Zu,xid:()=>eu});l(pa());var Cf=t({$brand:()=>a,$input:()=>qo,$output:()=>Ko,NEVER:()=>r,TimePrecision:()=>xs,ZodAny:()=>Gu,ZodArray:()=>ed,ZodBase64:()=>pu,ZodBase64URL:()=>hu,ZodBigInt:()=>Pu,ZodBigIntFormat:()=>Iu,ZodBoolean:()=>Nu,ZodCIDRv4:()=>lu,ZodCIDRv6:()=>du,ZodCUID:()=>ql,ZodCUID2:()=>Yl,ZodCatch:()=>Id,ZodCodec:()=>Hd,ZodCustom:()=>ef,ZodCustomStringFormat:()=>xu,ZodDate:()=>Qu,ZodDefault:()=>Od,ZodDiscriminatedUnion:()=>ad,ZodE164:()=>_u,ZodEmail:()=>Ml,ZodEmoji:()=>Ul,ZodEnum:()=>_d,ZodError:()=>_l,ZodFile:()=>bd,ZodFirstPartyTypeKind:()=>hf,ZodFunction:()=>Qd,ZodGUID:()=>Pl,ZodIPv4:()=>ru,ZodIPv6:()=>su,ZodISODate:()=>ul,ZodISODateTime:()=>cl,ZodISODuration:()=>ml,ZodISOTime:()=>fl,ZodIntersection:()=>sd,ZodIssueCode:()=>ff,ZodJWT:()=>yu,ZodKSUID:()=>tu,ZodLazy:()=>Jd,ZodLiteral:()=>yd,ZodMAC:()=>au,ZodMap:()=>pd,ZodNaN:()=>Rd,ZodNanoID:()=>Gl,ZodNever:()=>Ju,ZodNonOptional:()=>Md,ZodNull:()=>Uu,ZodNullable:()=>Td,ZodNumber:()=>Eu,ZodNumberFormat:()=>Du,ZodObject:()=>nd,ZodOptional:()=>wd,ZodPipe:()=>Bd,ZodPrefault:()=>Ad,ZodPromise:()=>Xd,ZodReadonly:()=>Wd,ZodRealError:()=>A,ZodRecord:()=>dd,ZodSet:()=>hd,ZodString:()=>jl,ZodStringFormat:()=>N,ZodSuccess:()=>Pd,ZodSymbol:()=>zu,ZodTemplateLiteral:()=>Kd,ZodTransform:()=>Sd,ZodTuple:()=>ld,ZodType:()=>j,ZodULID:()=>Zl,ZodURL:()=>Bl,ZodUUID:()=>P,ZodUndefined:()=>Vu,ZodUnion:()=>id,ZodUnknown:()=>qu,ZodVoid:()=>Xu,ZodXID:()=>$l,_ZodString:()=>Al,_default:()=>kd,_function:()=>$d,any:()=>Ku,array:()=>R,base64:()=>mu,base64url:()=>gu,bigint:()=>Fu,boolean:()=>I,catch:()=>Ld,check:()=>tf,cidrv4:()=>uu,cidrv6:()=>fu,clone:()=>g,codec:()=>Ud,coerce:()=>gf,config:()=>l,core:()=>nl,cuid:()=>Jl,cuid2:()=>Xl,custom:()=>nf,date:()=>$u,decode:()=>Cl,decodeAsync:()=>Tl,describe:()=>of,discriminatedUnion:()=>od,e164:()=>vu,email:()=>Nl,emoji:()=>Wl,encode:()=>Sl,encodeAsync:()=>wl,endsWith:()=>pc,enum:()=>U,file:()=>xd,flattenError:()=>et,float32:()=>ku,float64:()=>Au,formatError:()=>tt,function:()=>$d,getErrorMap:()=>mf,globalRegistry:()=>T,gt:()=>Xs,gte:()=>D,guid:()=>Fl,hash:()=>Tu,hex:()=>wu,hostname:()=>Cu,httpUrl:()=>Hl,includes:()=>dc,instanceof:()=>cf,int:()=>Ou,int32:()=>ju,int64:()=>Lu,intersection:()=>cd,ipv4:()=>iu,ipv6:()=>cu,iso:()=>sl,json:()=>uf,jwt:()=>bu,keyof:()=>td,ksuid:()=>nu,lazy:()=>Yd,length:()=>sc,literal:()=>W,locales:()=>Wo,looseObject:()=>B,lowercase:()=>lc,lt:()=>Ys,lte:()=>E,mac:()=>ou,map:()=>md,maxLength:()=>ac,maxSize:()=>nc,meta:()=>sf,mime:()=>hc,minLength:()=>oc,minSize:()=>rc,multipleOf:()=>tc,nan:()=>zd,nanoid:()=>Kl,nativeEnum:()=>vd,negative:()=>Qs,never:()=>Yu,nonnegative:()=>ec,nonoptional:()=>Nd,nonpositive:()=>$s,normalize:()=>gc,null:()=>Wu,nullable:()=>Ed,nullish:()=>Dd,number:()=>F,object:()=>z,optional:()=>G,overwrite:()=>O,parse:()=>vl,parseAsync:()=>yl,partialRecord:()=>fd,pipe:()=>Vd,positive:()=>Zs,prefault:()=>jd,preprocess:()=>df,prettifyError:()=>it,promise:()=>Zd,property:()=>mc,readonly:()=>Gd,record:()=>H,refine:()=>rf,regex:()=>cc,regexes:()=>kt,registry:()=>Yo,safeDecode:()=>Dl,safeDecodeAsync:()=>kl,safeEncode:()=>El,safeEncodeAsync:()=>Ol,safeParse:()=>bl,safeParseAsync:()=>xl,set:()=>gd,setErrorMap:()=>pf,size:()=>ic,slugify:()=>bc,startsWith:()=>fc,strictObject:()=>rd,string:()=>M,stringFormat:()=>Su,stringbool:()=>lf,success:()=>Fd,superRefine:()=>af,symbol:()=>Bu,templateLiteral:()=>qd,toJSONSchema:()=>el,toLowerCase:()=>vc,toUpperCase:()=>yc,transform:()=>Cd,treeifyError:()=>nt,trim:()=>_c,tuple:()=>ud,uint32:()=>Mu,uint64:()=>Ru,ulid:()=>Ql,undefined:()=>Hu,union:()=>V,unknown:()=>L,uppercase:()=>uc,url:()=>Vl,util:()=>u,uuid:()=>Il,uuidv4:()=>Ll,uuidv6:()=>Rl,uuidv7:()=>zl,void:()=>Zu,xid:()=>eu,z:()=>Sf}),wf=`io.modelcontextprotocol/related-task`,K=nf(e=>e!==null&&(typeof e==`object`||typeof e==`function`)),Tf=V([M(),F().int()]),Ef=M();B({ttl:F().optional(),pollInterval:F().optional()});var Df=z({ttl:F().optional()}),Of=z({taskId:M()}),kf=B({progressToken:Tf.optional(),[wf]:Of.optional()}),q=z({_meta:kf.optional()}),Af=q.extend({task:Df.optional()}),jf=e=>Af.safeParse(e).success,J=z({method:M(),params:q.loose().optional()}),Y=z({_meta:kf.optional()}),X=z({method:M(),params:Y.loose().optional()}),Z=B({_meta:kf.optional()}),Mf=V([M(),F().int()]),Nf=z({jsonrpc:W(`2.0`),id:Mf,...J.shape}).strict(),Pf=e=>Nf.safeParse(e).success,Ff=z({jsonrpc:W(`2.0`),...X.shape}).strict(),If=e=>Ff.safeParse(e).success,Lf=z({jsonrpc:W(`2.0`),id:Mf,result:Z}).strict(),Rf=e=>Lf.safeParse(e).success,Q;(function(e){e[e.ConnectionClosed=-32e3]=`ConnectionClosed`,e[e.RequestTimeout=-32001]=`RequestTimeout`,e[e.ParseError=-32700]=`ParseError`,e[e.InvalidRequest=-32600]=`InvalidRequest`,e[e.MethodNotFound=-32601]=`MethodNotFound`,e[e.InvalidParams=-32602]=`InvalidParams`,e[e.InternalError=-32603]=`InternalError`,e[e.UrlElicitationRequired=-32042]=`UrlElicitationRequired`})(Q||={});var zf=z({jsonrpc:W(`2.0`),id:Mf.optional(),error:z({code:F().int(),message:M(),data:L().optional()})}).strict(),Bf=e=>zf.safeParse(e).success,Vf=V([Nf,Ff,Lf,zf]);V([Lf,zf]);var Hf=Z.strict(),Uf=Y.extend({requestId:Mf.optional(),reason:M().optional()}),Wf=X.extend({method:W(`notifications/cancelled`),params:Uf}),Gf=z({icons:R(z({src:M(),mimeType:M().optional(),sizes:R(M()).optional(),theme:U([`light`,`dark`]).optional()})).optional()}),Kf=z({name:M(),title:M().optional()}),qf=Kf.extend({...Kf.shape,...Gf.shape,version:M(),websiteUrl:M().optional(),description:M().optional()}),Jf=df(e=>e&&typeof e==`object`&&!Array.isArray(e)&&Object.keys(e).length===0?{form:{}}:e,cd(z({form:cd(z({applyDefaults:I().optional()}),H(M(),L())).optional(),url:K.optional()}),H(M(),L()).optional())),Yf=B({list:K.optional(),cancel:K.optional(),requests:B({sampling:B({createMessage:K.optional()}).optional(),elicitation:B({create:K.optional()}).optional()}).optional()}),Xf=B({list:K.optional(),cancel:K.optional(),requests:B({tools:B({call:K.optional()}).optional()}).optional()}),Zf=z({experimental:H(M(),K).optional(),sampling:z({context:K.optional(),tools:K.optional()}).optional(),elicitation:Jf.optional(),roots:z({listChanged:I().optional()}).optional(),tasks:Yf.optional(),extensions:H(M(),K).optional()}),Qf=q.extend({protocolVersion:M(),capabilities:Zf,clientInfo:qf}),$f=J.extend({method:W(`initialize`),params:Qf}),ep=z({experimental:H(M(),K).optional(),logging:K.optional(),completions:K.optional(),prompts:z({listChanged:I().optional()}).optional(),resources:z({subscribe:I().optional(),listChanged:I().optional()}).optional(),tools:z({listChanged:I().optional()}).optional(),tasks:Xf.optional(),extensions:H(M(),K).optional()}),tp=Z.extend({protocolVersion:M(),capabilities:ep,serverInfo:qf,instructions:M().optional()}),np=X.extend({method:W(`notifications/initialized`),params:Y.optional()}),rp=J.extend({method:W(`ping`),params:q.optional()}),ip=z({progress:F(),total:G(F()),message:G(M())}),ap=z({...Y.shape,...ip.shape,progressToken:Tf}),op=X.extend({method:W(`notifications/progress`),params:ap}),sp=q.extend({cursor:Ef.optional()}),cp=J.extend({params:sp.optional()}),lp=Z.extend({nextCursor:Ef.optional()}),up=U([`working`,`input_required`,`completed`,`failed`,`cancelled`]),dp=z({taskId:M(),status:up,ttl:V([F(),Wu()]),createdAt:M(),lastUpdatedAt:M(),pollInterval:G(F()),statusMessage:G(M())}),fp=Z.extend({task:dp}),pp=Y.merge(dp),mp=X.extend({method:W(`notifications/tasks/status`),params:pp}),hp=J.extend({method:W(`tasks/get`),params:q.extend({taskId:M()})}),gp=Z.merge(dp),_p=J.extend({method:W(`tasks/result`),params:q.extend({taskId:M()})});Z.loose();var vp=cp.extend({method:W(`tasks/list`)}),yp=lp.extend({tasks:R(dp)}),bp=J.extend({method:W(`tasks/cancel`),params:q.extend({taskId:M()})}),xp=Z.merge(dp),Sp=z({uri:M(),mimeType:G(M()),_meta:H(M(),L()).optional()}),Cp=Sp.extend({text:M()}),wp=M().refine(e=>{try{return atob(e),!0}catch{return!1}},{message:`Invalid Base64 string`}),Tp=Sp.extend({blob:wp}),Ep=U([`user`,`assistant`]),Dp=z({audience:R(Ep).optional(),priority:F().min(0).max(1).optional(),lastModified:ll({offset:!0}).optional()}),Op=z({...Kf.shape,...Gf.shape,uri:M(),description:G(M()),mimeType:G(M()),size:G(F()),annotations:Dp.optional(),_meta:G(B({}))}),kp=z({...Kf.shape,...Gf.shape,uriTemplate:M(),description:G(M()),mimeType:G(M()),annotations:Dp.optional(),_meta:G(B({}))}),Ap=cp.extend({method:W(`resources/list`)}),jp=lp.extend({resources:R(Op)}),Mp=cp.extend({method:W(`resources/templates/list`)}),Np=lp.extend({resourceTemplates:R(kp)}),Pp=q.extend({uri:M()}),Fp=Pp,Ip=J.extend({method:W(`resources/read`),params:Fp}),Lp=Z.extend({contents:R(V([Cp,Tp]))}),Rp=X.extend({method:W(`notifications/resources/list_changed`),params:Y.optional()}),zp=Pp,Bp=J.extend({method:W(`resources/subscribe`),params:zp}),Vp=Pp,Hp=J.extend({method:W(`resources/unsubscribe`),params:Vp}),Up=Y.extend({uri:M()}),Wp=X.extend({method:W(`notifications/resources/updated`),params:Up}),Gp=z({name:M(),description:G(M()),required:G(I())}),Kp=z({...Kf.shape,...Gf.shape,description:G(M()),arguments:G(R(Gp)),_meta:G(B({}))}),qp=cp.extend({method:W(`prompts/list`)}),Jp=lp.extend({prompts:R(Kp)}),Yp=q.extend({name:M(),arguments:H(M(),M()).optional()}),Xp=J.extend({method:W(`prompts/get`),params:Yp}),Zp=z({type:W(`text`),text:M(),annotations:Dp.optional(),_meta:H(M(),L()).optional()}),Qp=z({type:W(`image`),data:wp,mimeType:M(),annotations:Dp.optional(),_meta:H(M(),L()).optional()}),$p=z({type:W(`audio`),data:wp,mimeType:M(),annotations:Dp.optional(),_meta:H(M(),L()).optional()}),em=z({type:W(`tool_use`),name:M(),id:M(),input:H(M(),L()),_meta:H(M(),L()).optional()}),tm=z({type:W(`resource`),resource:V([Cp,Tp]),annotations:Dp.optional(),_meta:H(M(),L()).optional()}),nm=Op.extend({type:W(`resource_link`)}),rm=V([Zp,Qp,$p,nm,tm]),im=z({role:Ep,content:rm}),am=Z.extend({description:M().optional(),messages:R(im)}),om=X.extend({method:W(`notifications/prompts/list_changed`),params:Y.optional()}),sm=z({title:M().optional(),readOnlyHint:I().optional(),destructiveHint:I().optional(),idempotentHint:I().optional(),openWorldHint:I().optional()}),cm=z({taskSupport:U([`required`,`optional`,`forbidden`]).optional()}),lm=z({...Kf.shape,...Gf.shape,description:M().optional(),inputSchema:z({type:W(`object`),properties:H(M(),K).optional(),required:R(M()).optional()}).catchall(L()),outputSchema:z({type:W(`object`),properties:H(M(),K).optional(),required:R(M()).optional()}).catchall(L()).optional(),annotations:sm.optional(),execution:cm.optional(),_meta:H(M(),L()).optional()}),um=cp.extend({method:W(`tools/list`)}),dm=lp.extend({tools:R(lm)}),fm=Z.extend({content:R(rm).default([]),structuredContent:H(M(),L()).optional(),isError:I().optional()});fm.or(Z.extend({toolResult:L()}));var pm=Af.extend({name:M(),arguments:H(M(),L()).optional()}),mm=J.extend({method:W(`tools/call`),params:pm}),hm=X.extend({method:W(`notifications/tools/list_changed`),params:Y.optional()});z({autoRefresh:I().default(!0),debounceMs:F().int().nonnegative().default(300)});var gm=U([`debug`,`info`,`notice`,`warning`,`error`,`critical`,`alert`,`emergency`]),_m=q.extend({level:gm}),vm=J.extend({method:W(`logging/setLevel`),params:_m}),ym=Y.extend({level:gm,logger:M().optional(),data:L()}),bm=X.extend({method:W(`notifications/message`),params:ym}),xm=z({hints:R(z({name:M().optional()})).optional(),costPriority:F().min(0).max(1).optional(),speedPriority:F().min(0).max(1).optional(),intelligencePriority:F().min(0).max(1).optional()}),Sm=z({mode:U([`auto`,`required`,`none`]).optional()}),Cm=z({type:W(`tool_result`),toolUseId:M().describe(`The unique identifier for the corresponding tool call.`),content:R(rm).default([]),structuredContent:z({}).loose().optional(),isError:I().optional(),_meta:H(M(),L()).optional()}),wm=od(`type`,[Zp,Qp,$p]),Tm=od(`type`,[Zp,Qp,$p,em,Cm]),Em=z({role:Ep,content:V([Tm,R(Tm)]),_meta:H(M(),L()).optional()}),Dm=Af.extend({messages:R(Em),modelPreferences:xm.optional(),systemPrompt:M().optional(),includeContext:U([`none`,`thisServer`,`allServers`]).optional(),temperature:F().optional(),maxTokens:F().int(),stopSequences:R(M()).optional(),metadata:K.optional(),tools:R(lm).optional(),toolChoice:Sm.optional()}),Om=J.extend({method:W(`sampling/createMessage`),params:Dm}),km=Z.extend({model:M(),stopReason:G(U([`endTurn`,`stopSequence`,`maxTokens`]).or(M())),role:Ep,content:wm}),Am=Z.extend({model:M(),stopReason:G(U([`endTurn`,`stopSequence`,`maxTokens`,`toolUse`]).or(M())),role:Ep,content:V([Tm,R(Tm)])}),jm=z({type:W(`boolean`),title:M().optional(),description:M().optional(),default:I().optional()}),Mm=z({type:W(`string`),title:M().optional(),description:M().optional(),minLength:F().optional(),maxLength:F().optional(),format:U([`email`,`uri`,`date`,`date-time`]).optional(),default:M().optional()}),Nm=z({type:U([`number`,`integer`]),title:M().optional(),description:M().optional(),minimum:F().optional(),maximum:F().optional(),default:F().optional()}),Pm=z({type:W(`string`),title:M().optional(),description:M().optional(),enum:R(M()),default:M().optional()}),Fm=z({type:W(`string`),title:M().optional(),description:M().optional(),oneOf:R(z({const:M(),title:M()})),default:M().optional()}),Im=V([V([z({type:W(`string`),title:M().optional(),description:M().optional(),enum:R(M()),enumNames:R(M()).optional(),default:M().optional()}),V([Pm,Fm]),V([z({type:W(`array`),title:M().optional(),description:M().optional(),minItems:F().optional(),maxItems:F().optional(),items:z({type:W(`string`),enum:R(M())}),default:R(M()).optional()}),z({type:W(`array`),title:M().optional(),description:M().optional(),minItems:F().optional(),maxItems:F().optional(),items:z({anyOf:R(z({const:M(),title:M()}))}),default:R(M()).optional()})])]),jm,Mm,Nm]),Lm=V([Af.extend({mode:W(`form`).optional(),message:M(),requestedSchema:z({type:W(`object`),properties:H(M(),Im),required:R(M()).optional()})}),Af.extend({mode:W(`url`),message:M(),elicitationId:M(),url:M().url()})]),Rm=J.extend({method:W(`elicitation/create`),params:Lm}),zm=Y.extend({elicitationId:M()}),Bm=X.extend({method:W(`notifications/elicitation/complete`),params:zm}),Vm=Z.extend({action:U([`accept`,`decline`,`cancel`]),content:df(e=>e===null?void 0:e,H(M(),V([M(),F(),I(),R(M())])).optional())}),Hm=z({type:W(`ref/resource`),uri:M()}),Um=z({type:W(`ref/prompt`),name:M()}),Wm=q.extend({ref:V([Um,Hm]),argument:z({name:M(),value:M()}),context:z({arguments:H(M(),M()).optional()}).optional()}),Gm=J.extend({method:W(`completion/complete`),params:Wm}),Km=Z.extend({completion:B({values:R(M()).max(100),total:G(F().int()),hasMore:G(I())})}),qm=z({uri:M().startsWith(`file://`),name:M().optional(),_meta:H(M(),L()).optional()}),Jm=J.extend({method:W(`roots/list`),params:q.optional()}),Ym=Z.extend({roots:R(qm)}),Xm=X.extend({method:W(`notifications/roots/list_changed`),params:Y.optional()});V([rp,$f,Gm,vm,Xp,qp,Ap,Mp,Ip,Bp,Hp,mm,um,hp,_p,vp,bp]),V([Wf,op,np,Xm,mp]),V([Hf,km,Am,Vm,Ym,gp,yp,fp]),V([rp,Om,Rm,Jm,hp,_p,vp,bp]),V([Wf,op,bm,Wp,Rp,hm,om,mp,Bm]),V([Hf,tp,Km,am,Jp,jp,Np,Lp,fm,dm,gp,yp,fp]);var $=class e extends Error{constructor(e,t,n){super(`MCP error ${e}: ${t}`),this.code=e,this.data=n,this.name=`McpError`}static fromError(t,n,r){if(t===Q.UrlElicitationRequired&&r){let e=r;if(e.elicitations)return new Zm(e.elicitations,n)}return new e(t,n,r)}},Zm=class extends ${constructor(e,t=`URL elicitation${e.length>1?`s`:``} required`){super(Q.UrlElicitationRequired,t,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function Qm(e){return e===`completed`||e===`failed`||e===`cancelled`}function $m(e){let t=al(e)?.method;if(!t)throw Error(`Schema is missing a method literal`);let n=ol(t);if(typeof n!=`string`)throw Error(`Schema method literal must be a string`);return n}function eh(e,t){let n=il(e,t);if(!n.success)throw n.error;return n.data}var th=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(Wf,e=>{this._oncancel(e)}),this.setNotificationHandler(op,e=>{this._onprogress(e)}),this.setRequestHandler(rp,e=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(hp,async(e,t)=>{let n=await this._taskStore.getTask(e.params.taskId,t.sessionId);if(!n)throw new $(Q.InvalidParams,`Failed to retrieve task: Task not found`);return{...n}}),this.setRequestHandler(_p,async(e,t)=>{let n=async()=>{let r=e.params.taskId;if(this._taskMessageQueue){let e;for(;e=await this._taskMessageQueue.dequeue(r,t.sessionId);){if(e.type===`response`||e.type===`error`){let t=e.message,n=t.id,r=this._requestResolvers.get(n);if(r)if(this._requestResolvers.delete(n),e.type===`response`)r(t);else{let e=t;r(new $(e.error.code,e.error.message,e.error.data))}else{let t=e.type===`response`?`Response`:`Error`;this._onerror(Error(`${t} handler missing for request ${n}`))}continue}await this._transport?.send(e.message,{relatedRequestId:t.requestId})}}let i=await this._taskStore.getTask(r,t.sessionId);if(!i)throw new $(Q.InvalidParams,`Task not found: ${r}`);if(!Qm(i.status))return await this._waitForTaskUpdate(r,t.signal),await n();if(Qm(i.status)){let e=await this._taskStore.getTaskResult(r,t.sessionId);return this._clearTaskQueue(r),{...e,_meta:{...e._meta,[wf]:{taskId:r}}}}return await n()};return await n()}),this.setRequestHandler(vp,async(e,t)=>{try{let{tasks:n,nextCursor:r}=await this._taskStore.listTasks(e.params?.cursor,t.sessionId);return{tasks:n,nextCursor:r,_meta:{}}}catch(e){throw new $(Q.InvalidParams,`Failed to list tasks: ${e instanceof Error?e.message:String(e)}`)}}),this.setRequestHandler(bp,async(e,t)=>{try{let n=await this._taskStore.getTask(e.params.taskId,t.sessionId);if(!n)throw new $(Q.InvalidParams,`Task not found: ${e.params.taskId}`);if(Qm(n.status))throw new $(Q.InvalidParams,`Cannot cancel task in terminal status: ${n.status}`);await this._taskStore.updateTaskStatus(e.params.taskId,`cancelled`,`Client cancelled task execution.`,t.sessionId),this._clearTaskQueue(e.params.taskId);let r=await this._taskStore.getTask(e.params.taskId,t.sessionId);if(!r)throw new $(Q.InvalidParams,`Task not found after cancellation: ${e.params.taskId}`);return{_meta:{},...r}}catch(e){throw e instanceof $?e:new $(Q.InvalidRequest,`Failed to cancel task: ${e instanceof Error?e.message:String(e)}`)}}))}async _oncancel(e){e.params.requestId&&this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,t,n,r,i=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(r,t),startTime:Date.now(),timeout:t,maxTotalTimeout:n,resetTimeoutOnProgress:i,onTimeout:r})}_resetTimeout(e){let t=this._timeoutInfo.get(e);if(!t)return!1;let n=Date.now()-t.startTime;if(t.maxTotalTimeout&&n>=t.maxTotalTimeout)throw this._timeoutInfo.delete(e),$.fromError(Q.RequestTimeout,`Maximum total timeout exceeded`,{maxTotalTimeout:t.maxTotalTimeout,totalElapsed:n});return clearTimeout(t.timeoutId),t.timeoutId=setTimeout(t.onTimeout,t.timeout),!0}_cleanupTimeout(e){let t=this._timeoutInfo.get(e);t&&(clearTimeout(t.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw Error(`Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.`);this._transport=e;let t=this.transport?.onclose;this._transport.onclose=()=>{t?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=e=>{n?.(e),this._onerror(e)};let r=this._transport?.onmessage;this._transport.onmessage=(e,t)=>{r?.(e,t),Rf(e)||Bf(e)?this._onresponse(e):Pf(e)?this._onrequest(e,t):If(e)?this._onnotification(e):this._onerror(Error(`Unknown message type: ${JSON.stringify(e)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let e of this._timeoutInfo.values())clearTimeout(e.timeoutId);this._timeoutInfo.clear();for(let e of this._requestHandlerAbortControllers.values())e.abort();this._requestHandlerAbortControllers.clear();let t=$.fromError(Q.ConnectionClosed,`Connection closed`);this._transport=void 0,this.onclose?.();for(let n of e.values())n(t)}_onerror(e){this.onerror?.(e)}_onnotification(e){let t=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;t!==void 0&&Promise.resolve().then(()=>t(e)).catch(e=>this._onerror(Error(`Uncaught error in notification handler: ${e}`)))}_onrequest(e,t){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,r=this._transport,i=e.params?._meta?.[wf]?.taskId;if(n===void 0){let t={jsonrpc:`2.0`,id:e.id,error:{code:Q.MethodNotFound,message:`Method not found`}};i&&this._taskMessageQueue?this._enqueueTaskMessage(i,{type:`error`,message:t,timestamp:Date.now()},r?.sessionId).catch(e=>this._onerror(Error(`Failed to enqueue error response: ${e}`))):r?.send(t).catch(e=>this._onerror(Error(`Failed to send an error response: ${e}`)));return}let a=new AbortController;this._requestHandlerAbortControllers.set(e.id,a);let o=jf(e.params)?e.params.task:void 0,s=this._taskStore?this.requestTaskStore(e,r?.sessionId):void 0,c={signal:a.signal,sessionId:r?.sessionId,_meta:e.params?._meta,sendNotification:async t=>{if(a.signal.aborted)return;let n={relatedRequestId:e.id};i&&(n.relatedTask={taskId:i}),await this.notification(t,n)},sendRequest:async(t,n,r)=>{if(a.signal.aborted)throw new $(Q.ConnectionClosed,`Request was cancelled`);let o={...r,relatedRequestId:e.id};i&&!o.relatedTask&&(o.relatedTask={taskId:i});let c=o.relatedTask?.taskId??i;return c&&s&&await s.updateTaskStatus(c,`input_required`),await this.request(t,n,o)},authInfo:t?.authInfo,requestId:e.id,requestInfo:t?.requestInfo,taskId:i,taskStore:s,taskRequestedTtl:o?.ttl,closeSSEStream:t?.closeSSEStream,closeStandaloneSSEStream:t?.closeStandaloneSSEStream};Promise.resolve().then(()=>{o&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,c)).then(async t=>{if(a.signal.aborted)return;let n={result:t,jsonrpc:`2.0`,id:e.id};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:`response`,message:n,timestamp:Date.now()},r?.sessionId):await r?.send(n)},async t=>{if(a.signal.aborted)return;let n={jsonrpc:`2.0`,id:e.id,error:{code:Number.isSafeInteger(t.code)?t.code:Q.InternalError,message:t.message??`Internal error`,...t.data!==void 0&&{data:t.data}}};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:`error`,message:n,timestamp:Date.now()},r?.sessionId):await r?.send(n)}).catch(e=>this._onerror(Error(`Failed to send response: ${e}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===a&&this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:t,...n}=e.params,r=Number(t),i=this._progressHandlers.get(r);if(!i){this._onerror(Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let a=this._responseHandlers.get(r),o=this._timeoutInfo.get(r);if(o&&a&&o.resetTimeoutOnProgress)try{this._resetTimeout(r)}catch(e){this._responseHandlers.delete(r),this._progressHandlers.delete(r),this._cleanupTimeout(r),a(e);return}i(n)}_onresponse(e){let t=Number(e.id),n=this._requestResolvers.get(t);if(n){this._requestResolvers.delete(t),Rf(e)?n(e):n(new $(e.error.code,e.error.message,e.error.data));return}let r=this._responseHandlers.get(t);if(r===void 0){this._onerror(Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(t),this._cleanupTimeout(t);let i=!1;if(Rf(e)&&e.result&&typeof e.result==`object`){let n=e.result;if(n.task&&typeof n.task==`object`){let e=n.task;typeof e.taskId==`string`&&(i=!0,this._taskProgressTokens.set(e.taskId,t))}}i||this._progressHandlers.delete(t),Rf(e)?r(e):r($.fromError(e.error.code,e.error.message,e.error.data))}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,t,n){let{task:r}=n??{};if(!r){try{yield{type:`result`,result:await this.request(e,t,n)}}catch(e){yield{type:`error`,error:e instanceof $?e:new $(Q.InternalError,String(e))}}return}let i;try{let r=await this.request(e,fp,n);if(r.task)i=r.task.taskId,yield{type:`taskCreated`,task:r.task};else throw new $(Q.InternalError,`Task creation did not return a task`);for(;;){let e=await this.getTask({taskId:i},n);if(yield{type:`taskStatus`,task:e},Qm(e.status)){e.status===`completed`?yield{type:`result`,result:await this.getTaskResult({taskId:i},t,n)}:e.status===`failed`?yield{type:`error`,error:new $(Q.InternalError,`Task ${i} failed`)}:e.status===`cancelled`&&(yield{type:`error`,error:new $(Q.InternalError,`Task ${i} was cancelled`)});return}if(e.status===`input_required`){yield{type:`result`,result:await this.getTaskResult({taskId:i},t,n)};return}let r=e.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(e=>setTimeout(e,r)),n?.signal?.throwIfAborted()}}catch(e){yield{type:`error`,error:e instanceof $?e:new $(Q.InternalError,String(e))}}}request(e,t,n){let{relatedRequestId:r,resumptionToken:i,onresumptiontoken:a,task:o,relatedTask:s}=n??{};return new Promise((c,l)=>{let u=e=>{l(e)};if(!this._transport){u(Error(`Not connected`));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),o&&this.assertTaskCapability(e.method)}catch(e){u(e);return}n?.signal?.throwIfAborted();let d=this._requestMessageId++,f={...e,jsonrpc:`2.0`,id:d};n?.onprogress&&(this._progressHandlers.set(d,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:d}}),o&&(f.params={...f.params,task:o}),s&&(f.params={...f.params,_meta:{...f.params?._meta||{},[wf]:s}});let p=e=>{this._responseHandlers.delete(d),this._progressHandlers.delete(d),this._cleanupTimeout(d),this._transport?.send({jsonrpc:`2.0`,method:`notifications/cancelled`,params:{requestId:d,reason:String(e)}},{relatedRequestId:r,resumptionToken:i,onresumptiontoken:a}).catch(e=>this._onerror(Error(`Failed to send cancellation: ${e}`))),l(e instanceof $?e:new $(Q.RequestTimeout,String(e)))};this._responseHandlers.set(d,e=>{if(!n?.signal?.aborted){if(e instanceof Error)return l(e);try{let n=il(t,e.result);n.success?c(n.data):l(n.error)}catch(e){l(e)}}}),n?.signal?.addEventListener(`abort`,()=>{p(n?.signal?.reason)});let ee=n?.timeout??6e4;this._setupTimeout(d,ee,n?.maxTotalTimeout,()=>p($.fromError(Q.RequestTimeout,`Request timed out`,{timeout:ee})),n?.resetTimeoutOnProgress??!1);let te=s?.taskId;te?(this._requestResolvers.set(d,e=>{let t=this._responseHandlers.get(d);t?t(e):this._onerror(Error(`Response handler missing for side-channeled request ${d}`))}),this._enqueueTaskMessage(te,{type:`request`,message:f,timestamp:Date.now()}).catch(e=>{this._cleanupTimeout(d),l(e)})):this._transport.send(f,{relatedRequestId:r,resumptionToken:i,onresumptiontoken:a}).catch(e=>{this._cleanupTimeout(d),l(e)})})}async getTask(e,t){return this.request({method:`tasks/get`,params:e},gp,t)}async getTaskResult(e,t,n){return this.request({method:`tasks/result`,params:e},t,n)}async listTasks(e,t){return this.request({method:`tasks/list`,params:e},yp,t)}async cancelTask(e,t){return this.request({method:`tasks/cancel`,params:e},xp,t)}async notification(e,t){if(!this._transport)throw Error(`Not connected`);this.assertNotificationCapability(e.method);let n=t?.relatedTask?.taskId;if(n){let r={...e,jsonrpc:`2.0`,params:{...e.params,_meta:{...e.params?._meta||{},[wf]:t.relatedTask}}};await this._enqueueTaskMessage(n,{type:`notification`,message:r,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!t?.relatedRequestId&&!t?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let n={...e,jsonrpc:`2.0`};t?.relatedTask&&(n={...n,params:{...n.params,_meta:{...n.params?._meta||{},[wf]:t.relatedTask}}}),this._transport?.send(n,t).catch(e=>this._onerror(e))});return}let r={...e,jsonrpc:`2.0`};t?.relatedTask&&(r={...r,params:{...r.params,_meta:{...r.params?._meta||{},[wf]:t.relatedTask}}}),await this._transport.send(r,t)}setRequestHandler(e,t){let n=$m(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(n,r)=>{let i=eh(e,n);return Promise.resolve(t(i,r))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,t){let n=$m(e);this._notificationHandlers.set(n,n=>{let r=eh(e,n);return Promise.resolve(t(r))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let t=this._taskProgressTokens.get(e);t!==void 0&&(this._progressHandlers.delete(t),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,t,n){if(!this._taskStore||!this._taskMessageQueue)throw Error(`Cannot enqueue task message: taskStore and taskMessageQueue are not configured`);let r=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,t,n,r)}async _clearTaskQueue(e,t){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,t);for(let t of n)if(t.type===`request`&&Pf(t.message)){let n=t.message.id,r=this._requestResolvers.get(n);r?(r(new $(Q.InternalError,`Task cancelled or completed`)),this._requestResolvers.delete(n)):this._onerror(Error(`Resolver missing for request ${n} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,t){let n=this._options?.defaultTaskPollInterval??1e3;try{let t=await this._taskStore?.getTask(e);t?.pollInterval&&(n=t.pollInterval)}catch{}return new Promise((e,r)=>{if(t.aborted){r(new $(Q.InvalidRequest,`Request cancelled`));return}let i=setTimeout(e,n);t.addEventListener(`abort`,()=>{clearTimeout(i),r(new $(Q.InvalidRequest,`Request cancelled`))},{once:!0})})}requestTaskStore(e,t){let n=this._taskStore;if(!n)throw Error(`No task store configured`);return{createTask:async r=>{if(!e)throw Error(`No request provided`);return await n.createTask(r,e.id,{method:e.method,params:e.params},t)},getTask:async e=>{let r=await n.getTask(e,t);if(!r)throw new $(Q.InvalidParams,`Failed to retrieve task: Task not found`);return r},storeTaskResult:async(e,r,i)=>{await n.storeTaskResult(e,r,i,t);let a=await n.getTask(e,t);if(a){let t=mp.parse({method:`notifications/tasks/status`,params:a});await this.notification(t),Qm(a.status)&&this._cleanupTaskProgressHandler(e)}},getTaskResult:e=>n.getTaskResult(e,t),updateTaskStatus:async(e,r,i)=>{let a=await n.getTask(e,t);if(!a)throw new $(Q.InvalidParams,`Task "${e}" not found - it may have been cleaned up`);if(Qm(a.status))throw new $(Q.InvalidParams,`Cannot update task "${e}" from terminal status "${a.status}" to "${r}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(e,r,i,t);let o=await n.getTask(e,t);if(o){let t=mp.parse({method:`notifications/tasks/status`,params:o});await this.notification(t),Qm(o.status)&&this._cleanupTaskProgressHandler(e)}},listTasks:e=>n.listTasks(e,t)}}};function nh(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function rh(e,t){let n={...e};for(let e in t){let r=e,i=t[r];if(i===void 0)continue;let a=n[r];nh(a)&&nh(i)?n[r]={...a,...i}:n[r]=i}return n}var ih=`modulepreload`,ah=function(e){return`/`+e},oh={},sh=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=ah(t,n),t in oh)return;oh[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:ih,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})};(e=>typeof n<`u`?n:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof n<`u`?n:e)[t]}):e)(function(e){if(typeof n<`u`)return n.apply(this,arguments);throw Error(`Dynamic require of "`+e+`" is not supported`)});var ch=class extends th{_registeredMethods=new Set;_eventSlots=new Map;onEventDispatch(e,t){}_ensureEventSlot(e){let t=this._eventSlots.get(e);if(!t){let n=this.eventSchemas[e];if(!n)throw Error(`Unknown event: ${String(e)}`);t={listeners:[]},this._eventSlots.set(e,t);let r=n.shape.method.value;this._registeredMethods.add(r);let i=t;super.setNotificationHandler(n,t=>{let n=t.params;this.onEventDispatch(e,n),i.onHandler?.(n);for(let e of[...i.listeners])e(n)})}return t}setEventHandler(e,t){let n=this._ensureEventSlot(e);n.onHandler&&t&&console.warn(`[MCP Apps] on${String(e)} handler replaced. Use addEventListener("${String(e)}", …) to add multiple listeners without replacing.`),n.onHandler=t}getEventHandler(e){return this._eventSlots.get(e)?.onHandler}addEventListener(e,t){this._ensureEventSlot(e).listeners.push(t)}removeEventListener(e,t){let n=this._eventSlots.get(e);if(!n)return;let r=n.listeners.indexOf(t);r!==-1&&n.listeners.splice(r,1)}setRequestHandler=(e,t)=>{this._assertMethodNotRegistered(e,`setRequestHandler`),super.setRequestHandler(e,t)};setNotificationHandler=(e,t)=>{this._assertMethodNotRegistered(e,`setNotificationHandler`),super.setNotificationHandler(e,t)};warnIfRequestHandlerReplaced(e,t,n){t&&n&&console.warn(`[MCP Apps] ${e} handler replaced. Previous handler will no longer be called.`)}replaceRequestHandler=(e,t)=>{let n=e.shape.method.value;this._registeredMethods.add(n),super.setRequestHandler(e,t)};_assertMethodNotRegistered(e,t){let n=e.shape.method.value;if(this._registeredMethods.has(n))throw Error(`Handler for "${n}" already registered (via ${t}). Use addEventListener() to attach multiple listeners, or the on* setter for replace semantics.`);this._registeredMethods.add(n)}},lh=`2026-01-26`,uh=class{eventTarget;eventSource;messageListener;constructor(e=window.parent,t){this.eventTarget=e,this.eventSource=t,this.messageListener=e=>{if(t&&e.source!==this.eventSource){console.debug(`Ignoring message from unknown source`,e);return}let n=Vf.safeParse(e.data);n.success?(console.debug(`Parsed message`,n.data),this.onmessage?.(n.data)):e.data?.jsonrpc===`2.0`?(console.error(`Failed to parse message`,n.error.message,e),this.onerror?.(Error(`Invalid JSON-RPC message received: `+n.error.message))):console.debug(`Ignoring non-JSON-RPC message`,n.error.message,e)}}async start(){window.addEventListener(`message`,this.messageListener)}async send(e,t){e.method!==`ui/notifications/tool-input-partial`&&console.debug(`Sending message`,e),this.eventTarget.postMessage(e,`*`)}async close(){window.removeEventListener(`message`,this.messageListener),this.onclose?.()}onclose;onerror;onmessage;sessionId;setProtocolVersion},dh=V([W(`light`),W(`dark`)]).describe(`Color theme preference for the host environment.`),fh=V([W(`inline`),W(`fullscreen`),W(`pip`)]).describe(`Display mode for UI presentation.`),ph=H(V([W(`--color-background-primary`),W(`--color-background-secondary`),W(`--color-background-tertiary`),W(`--color-background-inverse`),W(`--color-background-ghost`),W(`--color-background-info`),W(`--color-background-danger`),W(`--color-background-success`),W(`--color-background-warning`),W(`--color-background-disabled`),W(`--color-text-primary`),W(`--color-text-secondary`),W(`--color-text-tertiary`),W(`--color-text-inverse`),W(`--color-text-ghost`),W(`--color-text-info`),W(`--color-text-danger`),W(`--color-text-success`),W(`--color-text-warning`),W(`--color-text-disabled`),W(`--color-border-primary`),W(`--color-border-secondary`),W(`--color-border-tertiary`),W(`--color-border-inverse`),W(`--color-border-ghost`),W(`--color-border-info`),W(`--color-border-danger`),W(`--color-border-success`),W(`--color-border-warning`),W(`--color-border-disabled`),W(`--color-ring-primary`),W(`--color-ring-secondary`),W(`--color-ring-inverse`),W(`--color-ring-info`),W(`--color-ring-danger`),W(`--color-ring-success`),W(`--color-ring-warning`),W(`--font-sans`),W(`--font-mono`),W(`--font-weight-normal`),W(`--font-weight-medium`),W(`--font-weight-semibold`),W(`--font-weight-bold`),W(`--font-text-xs-size`),W(`--font-text-sm-size`),W(`--font-text-md-size`),W(`--font-text-lg-size`),W(`--font-heading-xs-size`),W(`--font-heading-sm-size`),W(`--font-heading-md-size`),W(`--font-heading-lg-size`),W(`--font-heading-xl-size`),W(`--font-heading-2xl-size`),W(`--font-heading-3xl-size`),W(`--font-text-xs-line-height`),W(`--font-text-sm-line-height`),W(`--font-text-md-line-height`),W(`--font-text-lg-line-height`),W(`--font-heading-xs-line-height`),W(`--font-heading-sm-line-height`),W(`--font-heading-md-line-height`),W(`--font-heading-lg-line-height`),W(`--font-heading-xl-line-height`),W(`--font-heading-2xl-line-height`),W(`--font-heading-3xl-line-height`),W(`--border-radius-xs`),W(`--border-radius-sm`),W(`--border-radius-md`),W(`--border-radius-lg`),W(`--border-radius-xl`),W(`--border-radius-full`),W(`--border-width-regular`),W(`--shadow-hairline`),W(`--shadow-sm`),W(`--shadow-md`),W(`--shadow-lg`)]).describe(`CSS variable keys available to MCP apps for theming.`).describe(`Style variables for theming MCP apps.
422
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let t of this.seen.entries()){let r=t[1];if(e===t[0]){a(t);continue}if(n.external){let r=n.external.registry.get(t[0])?.id;if(e!==t[0]&&r){a(t);continue}}if(this.metadataRegistry.get(t[0])?.id){a(t);continue}if(r.cycle){a(t);continue}if(r.count>1&&n.reused===`ref`){a(t);continue}}let o=(e,t)=>{let n=this.seen.get(e),r=n.def??n.schema,i={...r};if(n.ref===null)return;let a=n.ref;if(n.ref=null,a){o(a,t);let e=this.seen.get(a).schema;e.$ref&&(t.target===`draft-7`||t.target===`draft-4`||t.target===`openapi-3.0`)?(r.allOf=r.allOf??[],r.allOf.push(e)):(Object.assign(r,e),Object.assign(r,i))}n.isParent||this.override({zodSchema:e,jsonSchema:r,path:n.path??[]})};for(let e of[...this.seen.entries()].reverse())o(e[0],{target:this.target});let s={};if(this.target===`draft-2020-12`?s.$schema=`https://json-schema.org/draft/2020-12/schema`:this.target===`draft-7`?s.$schema=`http://json-schema.org/draft-07/schema#`:this.target===`draft-4`?s.$schema=`http://json-schema.org/draft-04/schema#`:this.target===`openapi-3.0`||console.warn(`Invalid target: ${this.target}`),n.external?.uri){let t=n.external.registry.get(e)?.id;if(!t)throw Error("Schema is missing an `id` property");s.$id=n.external.uri(t)}Object.assign(s,r.def);let c=n.external?.defs??{};for(let e of this.seen.entries()){let t=e[1];t.def&&t.defId&&(c[t.defId]=t.def)}n.external||Object.keys(c).length>0&&(this.target===`draft-2020-12`?s.$defs=c:s.definitions=c);try{return JSON.parse(JSON.stringify(s))}catch{throw Error(`Error converting schema to JSON.`)}}};function $c(e,t){if(e instanceof Ko){let n=new Qc(t),r={};for(let t of e._idmap.entries()){let[e,r]=t;n.process(r)}let i={},a={registry:e,uri:t?.uri,defs:r};for(let r of e._idmap.entries()){let[e,o]=r;i[e]=n.emit(o,{...t,external:a})}return Object.keys(r).length>0&&(i.__shared={[n.target===`draft-2020-12`?`$defs`:`definitions`]:r}),{schemas:i}}let n=new Qc(t);return n.process(e),n.emit(e,t)}function A(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return A(r.element,n);if(r.type===`set`)return A(r.valueType,n);if(r.type===`lazy`)return A(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type===`default`||r.type===`prefault`)return A(r.innerType,n);if(r.type===`intersection`)return A(r.left,n)||A(r.right,n);if(r.type===`record`||r.type===`map`)return A(r.keyType,n)||A(r.valueType,n);if(r.type===`pipe`)return A(r.in,n)||A(r.out,n);if(r.type===`object`){for(let e in r.shape)if(A(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(A(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(A(e,n))return!0;return!!(r.rest&&A(r.rest,n))}return!1}var el=t({}),tl=t({$ZodAny:()=>Kr,$ZodArray:()=>Qr,$ZodAsyncError:()=>o,$ZodBase64:()=>jr,$ZodBase64URL:()=>Nr,$ZodBigInt:()=>Vr,$ZodBigIntFormat:()=>Hr,$ZodBoolean:()=>Br,$ZodCIDRv4:()=>Or,$ZodCIDRv6:()=>kr,$ZodCUID:()=>gr,$ZodCUID2:()=>_r,$ZodCatch:()=>Ai,$ZodCheck:()=>w,$ZodCheckBigIntFormat:()=>Un,$ZodCheckEndsWith:()=>nr,$ZodCheckGreaterThan:()=>Bn,$ZodCheckIncludes:()=>er,$ZodCheckLengthEquals:()=>Yn,$ZodCheckLessThan:()=>zn,$ZodCheckLowerCase:()=>Qn,$ZodCheckMaxLength:()=>qn,$ZodCheckMaxSize:()=>Wn,$ZodCheckMimeType:()=>ar,$ZodCheckMinLength:()=>Jn,$ZodCheckMinSize:()=>Gn,$ZodCheckMultipleOf:()=>Vn,$ZodCheckNumberFormat:()=>Hn,$ZodCheckOverwrite:()=>or,$ZodCheckProperty:()=>ir,$ZodCheckRegex:()=>Zn,$ZodCheckSizeEquals:()=>Kn,$ZodCheckStartsWith:()=>tr,$ZodCheckStringFormat:()=>Xn,$ZodCheckUpperCase:()=>$n,$ZodCodec:()=>Pi,$ZodCustom:()=>Ui,$ZodCustomStringFormat:()=>Lr,$ZodDate:()=>Xr,$ZodDefault:()=>wi,$ZodDiscriminatedUnion:()=>oi,$ZodE164:()=>Pr,$ZodEmail:()=>fr,$ZodEmoji:()=>mr,$ZodEncodeError:()=>s,$ZodEnum:()=>_i,$ZodError:()=>Ze,$ZodFile:()=>yi,$ZodFunction:()=>Bi,$ZodGUID:()=>ur,$ZodIPv4:()=>Tr,$ZodIPv6:()=>Er,$ZodISODate:()=>Sr,$ZodISODateTime:()=>xr,$ZodISODuration:()=>wr,$ZodISOTime:()=>Cr,$ZodIntersection:()=>si,$ZodJWT:()=>Ir,$ZodKSUID:()=>br,$ZodLazy:()=>Hi,$ZodLiteral:()=>vi,$ZodMAC:()=>Dr,$ZodMap:()=>pi,$ZodNaN:()=>ji,$ZodNanoID:()=>hr,$ZodNever:()=>Jr,$ZodNonOptional:()=>Di,$ZodNull:()=>Gr,$ZodNullable:()=>Ci,$ZodNumber:()=>Rr,$ZodNumberFormat:()=>zr,$ZodObject:()=>ni,$ZodObjectJIT:()=>ri,$ZodOptional:()=>Si,$ZodPipe:()=>Mi,$ZodPrefault:()=>Ei,$ZodPromise:()=>Vi,$ZodReadonly:()=>Li,$ZodRealError:()=>C,$ZodRecord:()=>fi,$ZodRegistry:()=>Ko,$ZodSet:()=>hi,$ZodString:()=>lr,$ZodStringFormat:()=>E,$ZodSuccess:()=>ki,$ZodSymbol:()=>Ur,$ZodTemplateLiteral:()=>zi,$ZodTransform:()=>bi,$ZodTuple:()=>ui,$ZodType:()=>T,$ZodULID:()=>vr,$ZodURL:()=>pr,$ZodUUID:()=>dr,$ZodUndefined:()=>Wr,$ZodUnion:()=>ai,$ZodUnknown:()=>qr,$ZodVoid:()=>Yr,$ZodXID:()=>yr,$brand:()=>a,$constructor:()=>i,$input:()=>Go,$output:()=>Wo,Doc:()=>sr,JSONSchema:()=>el,JSONSchemaGenerator:()=>Qc,NEVER:()=>r,TimePrecision:()=>ys,_any:()=>Bs,_array:()=>bc,_base64:()=>hs,_base64url:()=>gs,_bigint:()=>Ns,_boolean:()=>js,_catch:()=>Rc,_check:()=>qc,_cidrv4:()=>ps,_cidrv6:()=>ms,_coercedBigint:()=>Ps,_coercedBoolean:()=>Ms,_coercedDate:()=>Gs,_coercedNumber:()=>Ts,_coercedString:()=>Yo,_cuid:()=>as,_cuid2:()=>os,_custom:()=>Wc,_date:()=>Ws,_decode:()=>pt,_decodeAsync:()=>_t,_default:()=>Fc,_discriminatedUnion:()=>Sc,_e164:()=>_s,_email:()=>Xo,_emoji:()=>rs,_encode:()=>dt,_encodeAsync:()=>ht,_endsWith:()=>dc,_enum:()=>Oc,_file:()=>jc,_float32:()=>Ds,_float64:()=>Os,_gt:()=>Js,_gte:()=>k,_guid:()=>Zo,_includes:()=>lc,_int:()=>Es,_int32:()=>ks,_int64:()=>Fs,_intersection:()=>Cc,_ipv4:()=>us,_ipv6:()=>ds,_isoDate:()=>xs,_isoDateTime:()=>bs,_isoDuration:()=>Cs,_isoTime:()=>Ss,_jwt:()=>vs,_ksuid:()=>ls,_lazy:()=>Hc,_length:()=>ac,_literal:()=>Ac,_lowercase:()=>sc,_lt:()=>qs,_lte:()=>O,_mac:()=>fs,_map:()=>Ec,_max:()=>O,_maxLength:()=>rc,_maxSize:()=>ec,_mime:()=>pc,_min:()=>k,_minLength:()=>ic,_minSize:()=>tc,_multipleOf:()=>$s,_nan:()=>Ks,_nanoid:()=>is,_nativeEnum:()=>kc,_negative:()=>Xs,_never:()=>Hs,_nonnegative:()=>Qs,_nonoptional:()=>Ic,_nonpositive:()=>Zs,_normalize:()=>hc,_null:()=>zs,_nullable:()=>Pc,_number:()=>ws,_optional:()=>Nc,_overwrite:()=>mc,_parse:()=>rt,_parseAsync:()=>at,_pipe:()=>zc,_positive:()=>Ys,_promise:()=>Uc,_property:()=>fc,_readonly:()=>Bc,_record:()=>Tc,_refine:()=>Gc,_regex:()=>oc,_safeDecode:()=>xt,_safeDecodeAsync:()=>Tt,_safeEncode:()=>yt,_safeEncodeAsync:()=>Ct,_safeParse:()=>st,_safeParseAsync:()=>lt,_set:()=>Dc,_size:()=>nc,_slugify:()=>yc,_startsWith:()=>uc,_string:()=>Jo,_stringFormat:()=>Zc,_stringbool:()=>Xc,_success:()=>Lc,_superRefine:()=>Kc,_symbol:()=>Ls,_templateLiteral:()=>Vc,_toLowerCase:()=>_c,_toUpperCase:()=>vc,_transform:()=>Mc,_trim:()=>gc,_tuple:()=>wc,_uint32:()=>As,_uint64:()=>Is,_ulid:()=>ss,_undefined:()=>Rs,_union:()=>xc,_unknown:()=>Vs,_uppercase:()=>cc,_url:()=>ns,_uuid:()=>Qo,_uuidv4:()=>$o,_uuidv6:()=>es,_uuidv7:()=>ts,_void:()=>Us,_xid:()=>cs,clone:()=>b,config:()=>l,decode:()=>mt,decodeAsync:()=>vt,describe:()=>Jc,encode:()=>ft,encodeAsync:()=>gt,flattenError:()=>Qe,formatError:()=>$e,globalConfig:()=>c,globalRegistry:()=>D,isValidBase64:()=>Ar,isValidBase64URL:()=>Mr,isValidJWT:()=>Fr,locales:()=>Ho,meta:()=>Yc,parse:()=>it,parseAsync:()=>ot,prettifyError:()=>nt,regexes:()=>Dt,registry:()=>qo,safeDecode:()=>St,safeDecodeAsync:()=>Et,safeEncode:()=>bt,safeEncodeAsync:()=>wt,safeParse:()=>ct,safeParseAsync:()=>ut,toDotPath:()=>tt,toJSONSchema:()=>$c,treeifyError:()=>et,util:()=>u,version:()=>cr});function nl(e){return!!e._zod}function rl(e,t){return nl(e)?ct(e,t):e.safeParse(t)}function il(e){if(!e)return;let t;if(t=nl(e)?e._zod?.def?.shape:e.shape,t){if(typeof t==`function`)try{return t()}catch{return}return t}}function al(e){if(nl(e)){let t=e._zod?.def;if(t){if(t.value!==void 0)return t.value;if(Array.isArray(t.values)&&t.values.length>0)return t.values[0]}}let t=e._def;if(t){if(t.value!==void 0)return t.value;if(Array.isArray(t.values)&&t.values.length>0)return t.values[0]}let n=e.value;if(n!==void 0)return n}var ol=t({ZodISODate:()=>ll,ZodISODateTime:()=>sl,ZodISODuration:()=>pl,ZodISOTime:()=>dl,date:()=>ul,datetime:()=>cl,duration:()=>ml,time:()=>fl}),sl=i(`ZodISODateTime`,(e,t)=>{xr.init(e,t),P.init(e,t)});function cl(e){return bs(sl,e)}var ll=i(`ZodISODate`,(e,t)=>{Sr.init(e,t),P.init(e,t)});function ul(e){return xs(ll,e)}var dl=i(`ZodISOTime`,(e,t)=>{Cr.init(e,t),P.init(e,t)});function fl(e){return Ss(dl,e)}var pl=i(`ZodISODuration`,(e,t)=>{wr.init(e,t),P.init(e,t)});function ml(e){return Cs(pl,e)}var hl=(e,t)=>{Ze.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>$e(e,t)},flatten:{value:t=>Qe(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,v,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,v,2)}},isEmpty:{get(){return e.issues.length===0}}})},gl=i(`ZodError`,hl),j=i(`ZodError`,hl,{Parent:Error}),_l=rt(j),vl=at(j),yl=st(j),bl=lt(j),xl=dt(j),Sl=pt(j),Cl=ht(j),wl=_t(j),Tl=yt(j),El=xt(j),Dl=Ct(j),Ol=Tt(j),M=i(`ZodType`,(e,t)=>(T.init(e,t),e.def=t,e.type=t.type,Object.defineProperty(e,`_def`,{value:t}),e.check=(...n)=>e.clone(se(t,{checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]})),e.clone=(t,n)=>b(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.parse=(t,n)=>_l(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>yl(e,t,n),e.parseAsync=async(t,n)=>vl(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>bl(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>xl(e,t,n),e.decode=(t,n)=>Sl(e,t,n),e.encodeAsync=async(t,n)=>Cl(e,t,n),e.decodeAsync=async(t,n)=>wl(e,t,n),e.safeEncode=(t,n)=>Tl(e,t,n),e.safeDecode=(t,n)=>El(e,t,n),e.safeEncodeAsync=async(t,n)=>Dl(e,t,n),e.safeDecodeAsync=async(t,n)=>Ol(e,t,n),e.refine=(t,n)=>e.check(rf(t,n)),e.superRefine=t=>e.check(af(t)),e.overwrite=t=>e.check(mc(t)),e.optional=()=>G(e),e.nullable=()=>Ed(e),e.nullish=()=>G(Ed(e)),e.nonoptional=t=>Nd(e,t),e.array=()=>R(e),e.or=t=>V([e,t]),e.and=t=>cd(e,t),e.transform=t=>Vd(e,Cd(t)),e.default=t=>kd(e,t),e.prefault=t=>jd(e,t),e.catch=t=>Ld(e,t),e.pipe=t=>Vd(e,t),e.readonly=()=>Gd(e),e.describe=t=>{let n=e.clone();return D.add(n,{description:t}),n},Object.defineProperty(e,`description`,{get(){return D.get(e)?.description},configurable:!0}),e.meta=(...t)=>{if(t.length===0)return D.get(e);let n=e.clone();return D.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),kl=i(`_ZodString`,(e,t)=>{lr.init(e,t),M.init(e,t);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(oc(...t)),e.includes=(...t)=>e.check(lc(...t)),e.startsWith=(...t)=>e.check(uc(...t)),e.endsWith=(...t)=>e.check(dc(...t)),e.min=(...t)=>e.check(ic(...t)),e.max=(...t)=>e.check(rc(...t)),e.length=(...t)=>e.check(ac(...t)),e.nonempty=(...t)=>e.check(ic(1,...t)),e.lowercase=t=>e.check(sc(t)),e.uppercase=t=>e.check(cc(t)),e.trim=()=>e.check(gc()),e.normalize=(...t)=>e.check(hc(...t)),e.toLowerCase=()=>e.check(_c()),e.toUpperCase=()=>e.check(vc()),e.slugify=()=>e.check(yc())}),Al=i(`ZodString`,(e,t)=>{lr.init(e,t),kl.init(e,t),e.email=t=>e.check(Xo(jl,t)),e.url=t=>e.check(ns(Bl,t)),e.jwt=t=>e.check(vs(yu,t)),e.emoji=t=>e.check(rs(Ul,t)),e.guid=t=>e.check(Zo(Nl,t)),e.uuid=t=>e.check(Qo(Fl,t)),e.uuidv4=t=>e.check($o(Fl,t)),e.uuidv6=t=>e.check(es(Fl,t)),e.uuidv7=t=>e.check(ts(Fl,t)),e.nanoid=t=>e.check(is(Gl,t)),e.guid=t=>e.check(Zo(Nl,t)),e.cuid=t=>e.check(as(ql,t)),e.cuid2=t=>e.check(os(Yl,t)),e.ulid=t=>e.check(ss(Zl,t)),e.base64=t=>e.check(hs(pu,t)),e.base64url=t=>e.check(gs(hu,t)),e.xid=t=>e.check(cs($l,t)),e.ksuid=t=>e.check(ls(tu,t)),e.ipv4=t=>e.check(us(ru,t)),e.ipv6=t=>e.check(ds(su,t)),e.cidrv4=t=>e.check(ps(lu,t)),e.cidrv6=t=>e.check(ms(du,t)),e.e164=t=>e.check(_s(_u,t)),e.datetime=t=>e.check(cl(t)),e.date=t=>e.check(ul(t)),e.time=t=>e.check(fl(t)),e.duration=t=>e.check(ml(t))});function N(e){return Jo(Al,e)}var P=i(`ZodStringFormat`,(e,t)=>{E.init(e,t),kl.init(e,t)}),jl=i(`ZodEmail`,(e,t)=>{fr.init(e,t),P.init(e,t)});function Ml(e){return Xo(jl,e)}var Nl=i(`ZodGUID`,(e,t)=>{ur.init(e,t),P.init(e,t)});function Pl(e){return Zo(Nl,e)}var Fl=i(`ZodUUID`,(e,t)=>{dr.init(e,t),P.init(e,t)});function Il(e){return Qo(Fl,e)}function Ll(e){return $o(Fl,e)}function Rl(e){return es(Fl,e)}function zl(e){return ts(Fl,e)}var Bl=i(`ZodURL`,(e,t)=>{pr.init(e,t),P.init(e,t)});function Vl(e){return ns(Bl,e)}function Hl(e){return ns(Bl,{protocol:/^https?$/,hostname:rn,...x(e)})}var Ul=i(`ZodEmoji`,(e,t)=>{mr.init(e,t),P.init(e,t)});function Wl(e){return rs(Ul,e)}var Gl=i(`ZodNanoID`,(e,t)=>{hr.init(e,t),P.init(e,t)});function Kl(e){return is(Gl,e)}var ql=i(`ZodCUID`,(e,t)=>{gr.init(e,t),P.init(e,t)});function Jl(e){return as(ql,e)}var Yl=i(`ZodCUID2`,(e,t)=>{_r.init(e,t),P.init(e,t)});function Xl(e){return os(Yl,e)}var Zl=i(`ZodULID`,(e,t)=>{vr.init(e,t),P.init(e,t)});function Ql(e){return ss(Zl,e)}var $l=i(`ZodXID`,(e,t)=>{yr.init(e,t),P.init(e,t)});function eu(e){return cs($l,e)}var tu=i(`ZodKSUID`,(e,t)=>{br.init(e,t),P.init(e,t)});function nu(e){return ls(tu,e)}var ru=i(`ZodIPv4`,(e,t)=>{Tr.init(e,t),P.init(e,t)});function iu(e){return us(ru,e)}var au=i(`ZodMAC`,(e,t)=>{Dr.init(e,t),P.init(e,t)});function ou(e){return fs(au,e)}var su=i(`ZodIPv6`,(e,t)=>{Er.init(e,t),P.init(e,t)});function cu(e){return ds(su,e)}var lu=i(`ZodCIDRv4`,(e,t)=>{Or.init(e,t),P.init(e,t)});function uu(e){return ps(lu,e)}var du=i(`ZodCIDRv6`,(e,t)=>{kr.init(e,t),P.init(e,t)});function fu(e){return ms(du,e)}var pu=i(`ZodBase64`,(e,t)=>{jr.init(e,t),P.init(e,t)});function mu(e){return hs(pu,e)}var hu=i(`ZodBase64URL`,(e,t)=>{Nr.init(e,t),P.init(e,t)});function gu(e){return gs(hu,e)}var _u=i(`ZodE164`,(e,t)=>{Pr.init(e,t),P.init(e,t)});function vu(e){return _s(_u,e)}var yu=i(`ZodJWT`,(e,t)=>{Ir.init(e,t),P.init(e,t)});function bu(e){return vs(yu,e)}var xu=i(`ZodCustomStringFormat`,(e,t)=>{Lr.init(e,t),P.init(e,t)});function Su(e,t,n={}){return Zc(xu,e,t,n)}function Cu(e){return Zc(xu,`hostname`,nn,e)}function wu(e){return Zc(xu,`hex`,bn,e)}function Tu(e,t){let n=`${e}_${t?.enc??`hex`}`,r=Dt[n];if(!r)throw Error(`Unrecognized hash format: ${n}`);return Zc(xu,n,r,t)}var Eu=i(`ZodNumber`,(e,t)=>{Rr.init(e,t),M.init(e,t),e.gt=(t,n)=>e.check(Js(t,n)),e.gte=(t,n)=>e.check(k(t,n)),e.min=(t,n)=>e.check(k(t,n)),e.lt=(t,n)=>e.check(qs(t,n)),e.lte=(t,n)=>e.check(O(t,n)),e.max=(t,n)=>e.check(O(t,n)),e.int=t=>e.check(Ou(t)),e.safe=t=>e.check(Ou(t)),e.positive=t=>e.check(Js(0,t)),e.nonnegative=t=>e.check(k(0,t)),e.negative=t=>e.check(qs(0,t)),e.nonpositive=t=>e.check(O(0,t)),e.multipleOf=(t,n)=>e.check($s(t,n)),e.step=(t,n)=>e.check($s(t,n)),e.finite=()=>e;let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function F(e){return ws(Eu,e)}var Du=i(`ZodNumberFormat`,(e,t)=>{zr.init(e,t),Eu.init(e,t)});function Ou(e){return Es(Du,e)}function ku(e){return Ds(Du,e)}function Au(e){return Os(Du,e)}function ju(e){return ks(Du,e)}function Mu(e){return As(Du,e)}var Nu=i(`ZodBoolean`,(e,t)=>{Br.init(e,t),M.init(e,t)});function I(e){return js(Nu,e)}var Pu=i(`ZodBigInt`,(e,t)=>{Vr.init(e,t),M.init(e,t),e.gte=(t,n)=>e.check(k(t,n)),e.min=(t,n)=>e.check(k(t,n)),e.gt=(t,n)=>e.check(Js(t,n)),e.gte=(t,n)=>e.check(k(t,n)),e.min=(t,n)=>e.check(k(t,n)),e.lt=(t,n)=>e.check(qs(t,n)),e.lte=(t,n)=>e.check(O(t,n)),e.max=(t,n)=>e.check(O(t,n)),e.positive=t=>e.check(Js(BigInt(0),t)),e.negative=t=>e.check(qs(BigInt(0),t)),e.nonpositive=t=>e.check(O(BigInt(0),t)),e.nonnegative=t=>e.check(k(BigInt(0),t)),e.multipleOf=(t,n)=>e.check($s(t,n));let n=e._zod.bag;e.minValue=n.minimum??null,e.maxValue=n.maximum??null,e.format=n.format??null});function Fu(e){return Ns(Pu,e)}var Iu=i(`ZodBigIntFormat`,(e,t)=>{Hr.init(e,t),Pu.init(e,t)});function Lu(e){return Fs(Iu,e)}function Ru(e){return Is(Iu,e)}var zu=i(`ZodSymbol`,(e,t)=>{Ur.init(e,t),M.init(e,t)});function Bu(e){return Ls(zu,e)}var Vu=i(`ZodUndefined`,(e,t)=>{Wr.init(e,t),M.init(e,t)});function Hu(e){return Rs(Vu,e)}var Uu=i(`ZodNull`,(e,t)=>{Gr.init(e,t),M.init(e,t)});function Wu(e){return zs(Uu,e)}var Gu=i(`ZodAny`,(e,t)=>{Kr.init(e,t),M.init(e,t)});function Ku(){return Bs(Gu)}var qu=i(`ZodUnknown`,(e,t)=>{qr.init(e,t),M.init(e,t)});function L(){return Vs(qu)}var Ju=i(`ZodNever`,(e,t)=>{Jr.init(e,t),M.init(e,t)});function Yu(e){return Hs(Ju,e)}var Xu=i(`ZodVoid`,(e,t)=>{Yr.init(e,t),M.init(e,t)});function Zu(e){return Us(Xu,e)}var Qu=i(`ZodDate`,(e,t)=>{Xr.init(e,t),M.init(e,t),e.min=(t,n)=>e.check(k(t,n)),e.max=(t,n)=>e.check(O(t,n));let n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});function $u(e){return Ws(Qu,e)}var ed=i(`ZodArray`,(e,t)=>{Qr.init(e,t),M.init(e,t),e.element=t.element,e.min=(t,n)=>e.check(ic(t,n)),e.nonempty=t=>e.check(ic(1,t)),e.max=(t,n)=>e.check(rc(t,n)),e.length=(t,n)=>e.check(ac(t,n)),e.unwrap=()=>e.element});function R(e,t){return bc(ed,e,t)}function td(e){let t=e._zod.def.shape;return U(Object.keys(t))}var nd=i(`ZodObject`,(e,t)=>{ri.init(e,t),M.init(e,t),y(e,`shape`,()=>t.shape),e.keyof=()=>U(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:L()}),e.loose=()=>e.clone({...e._zod.def,catchall:L()}),e.strict=()=>e.clone({...e._zod.def,catchall:Yu()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>Ae(e,t),e.safeExtend=t=>je(e,t),e.merge=t=>Me(e,t),e.pick=t=>Oe(e,t),e.omit=t=>ke(e,t),e.partial=(...t)=>Ne(wd,e,t[0]),e.required=(...t)=>Pe(Md,e,t[0])});function z(e,t){return new nd({type:`object`,shape:e??{},...x(t)})}function rd(e,t){return new nd({type:`object`,shape:e,catchall:Yu(),...x(t)})}function B(e,t){return new nd({type:`object`,shape:e,catchall:L(),...x(t)})}var id=i(`ZodUnion`,(e,t)=>{ai.init(e,t),M.init(e,t),e.options=t.options});function V(e,t){return new id({type:`union`,options:e,...x(t)})}var ad=i(`ZodDiscriminatedUnion`,(e,t)=>{id.init(e,t),oi.init(e,t)});function od(e,t,n){return new ad({type:`union`,options:t,discriminator:e,...x(n)})}var sd=i(`ZodIntersection`,(e,t)=>{si.init(e,t),M.init(e,t)});function cd(e,t){return new sd({type:`intersection`,left:e,right:t})}var ld=i(`ZodTuple`,(e,t)=>{ui.init(e,t),M.init(e,t),e.rest=t=>e.clone({...e._zod.def,rest:t})});function ud(e,t,n){let r=t instanceof T;return new ld({type:`tuple`,items:e,rest:r?t:null,...x(r?n:t)})}var dd=i(`ZodRecord`,(e,t)=>{fi.init(e,t),M.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function H(e,t,n){return new dd({type:`record`,keyType:e,valueType:t,...x(n)})}function fd(e,t,n){let r=b(e);return r._zod.values=void 0,new dd({type:`record`,keyType:r,valueType:t,...x(n)})}var pd=i(`ZodMap`,(e,t)=>{pi.init(e,t),M.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function md(e,t,n){return new pd({type:`map`,keyType:e,valueType:t,...x(n)})}var hd=i(`ZodSet`,(e,t)=>{hi.init(e,t),M.init(e,t),e.min=(...t)=>e.check(tc(...t)),e.nonempty=t=>e.check(tc(1,t)),e.max=(...t)=>e.check(ec(...t)),e.size=(...t)=>e.check(nc(...t))});function gd(e,t){return new hd({type:`set`,valueType:e,...x(t)})}var _d=i(`ZodEnum`,(e,t)=>{_i.init(e,t),M.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new _d({...t,checks:[],...x(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new _d({...t,checks:[],...x(r),entries:i})}});function U(e,t){return new _d({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...x(t)})}function vd(e,t){return new _d({type:`enum`,entries:e,...x(t)})}var yd=i(`ZodLiteral`,(e,t)=>{vi.init(e,t),M.init(e,t),e.values=new Set(t.values),Object.defineProperty(e,`value`,{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function W(e,t){return new yd({type:`literal`,values:Array.isArray(e)?e:[e],...x(t)})}var bd=i(`ZodFile`,(e,t)=>{yi.init(e,t),M.init(e,t),e.min=(t,n)=>e.check(tc(t,n)),e.max=(t,n)=>e.check(ec(t,n)),e.mime=(t,n)=>e.check(pc(Array.isArray(t)?t:[t],n))});function xd(e){return jc(bd,e)}var Sd=i(`ZodTransform`,(e,t)=>{bi.init(e,t),M.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new s(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(Ve(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(Ve(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function Cd(e){return new Sd({type:`transform`,transform:e})}var wd=i(`ZodOptional`,(e,t)=>{Si.init(e,t),M.init(e,t),e.unwrap=()=>e._zod.def.innerType});function G(e){return new wd({type:`optional`,innerType:e})}var Td=i(`ZodNullable`,(e,t)=>{Ci.init(e,t),M.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Ed(e){return new Td({type:`nullable`,innerType:e})}function Dd(e){return G(Ed(e))}var Od=i(`ZodDefault`,(e,t)=>{wi.init(e,t),M.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function kd(e,t){return new Od({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():ve(t)}})}var Ad=i(`ZodPrefault`,(e,t)=>{Ei.init(e,t),M.init(e,t),e.unwrap=()=>e._zod.def.innerType});function jd(e,t){return new Ad({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():ve(t)}})}var Md=i(`ZodNonOptional`,(e,t)=>{Di.init(e,t),M.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Nd(e,t){return new Md({type:`nonoptional`,innerType:e,...x(t)})}var Pd=i(`ZodSuccess`,(e,t)=>{ki.init(e,t),M.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Fd(e){return new Pd({type:`success`,innerType:e})}var Id=i(`ZodCatch`,(e,t)=>{Ai.init(e,t),M.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Ld(e,t){return new Id({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var Rd=i(`ZodNaN`,(e,t)=>{ji.init(e,t),M.init(e,t)});function zd(e){return Ks(Rd,e)}var Bd=i(`ZodPipe`,(e,t)=>{Mi.init(e,t),M.init(e,t),e.in=t.in,e.out=t.out});function Vd(e,t){return new Bd({type:`pipe`,in:e,out:t})}var Hd=i(`ZodCodec`,(e,t)=>{Bd.init(e,t),Pi.init(e,t)});function Ud(e,t,n){return new Hd({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}var Wd=i(`ZodReadonly`,(e,t)=>{Li.init(e,t),M.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Gd(e){return new Wd({type:`readonly`,innerType:e})}var Kd=i(`ZodTemplateLiteral`,(e,t)=>{zi.init(e,t),M.init(e,t)});function qd(e,t){return new Kd({type:`template_literal`,parts:e,...x(t)})}var Jd=i(`ZodLazy`,(e,t)=>{Hi.init(e,t),M.init(e,t),e.unwrap=()=>e._zod.def.getter()});function Yd(e){return new Jd({type:`lazy`,getter:e})}var Xd=i(`ZodPromise`,(e,t)=>{Vi.init(e,t),M.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Zd(e){return new Xd({type:`promise`,innerType:e})}var Qd=i(`ZodFunction`,(e,t)=>{Bi.init(e,t),M.init(e,t)});function $d(e){return new Qd({type:`function`,input:Array.isArray(e?.input)?ud(e?.input):e?.input??R(L()),output:e?.output??L()})}var ef=i(`ZodCustom`,(e,t)=>{Ui.init(e,t),M.init(e,t)});function tf(e){let t=new w({check:`custom`});return t._zod.check=e,t}function nf(e,t){return Wc(ef,e??(()=>!0),t)}function rf(e,t={}){return Gc(ef,e,t)}function af(e){return Kc(e)}var of=Jc,sf=Yc;function cf(e,t={error:`Input not instance of ${e.name}`}){let n=new ef({type:`custom`,check:`custom`,fn:t=>t instanceof e,abort:!0,...x(t)});return n._zod.bag.Class=e,n}var lf=(...e)=>Xc({Codec:Hd,Boolean:Nu,String:Al},...e);function uf(e){let t=Yd(()=>V([N(e),F(),I(),Wu(),R(t),H(N(),t)]));return t}function df(e,t){return Vd(Cd(e),t)}var ff={invalid_type:`invalid_type`,too_big:`too_big`,too_small:`too_small`,invalid_format:`invalid_format`,not_multiple_of:`not_multiple_of`,unrecognized_keys:`unrecognized_keys`,invalid_union:`invalid_union`,invalid_key:`invalid_key`,invalid_element:`invalid_element`,invalid_value:`invalid_value`,custom:`custom`};function pf(e){l({customError:e})}function mf(){return l().customError}var hf;(function(e){})(hf||={});var gf=t({bigint:()=>bf,boolean:()=>yf,date:()=>xf,number:()=>vf,string:()=>_f});function _f(e){return Yo(Al,e)}function vf(e){return Ts(Eu,e)}function yf(e){return Ms(Nu,e)}function bf(e){return Ps(Pu,e)}function xf(e){return Gs(Qu,e)}var Sf=t({$brand:()=>a,$input:()=>Go,$output:()=>Wo,NEVER:()=>r,TimePrecision:()=>ys,ZodAny:()=>Gu,ZodArray:()=>ed,ZodBase64:()=>pu,ZodBase64URL:()=>hu,ZodBigInt:()=>Pu,ZodBigIntFormat:()=>Iu,ZodBoolean:()=>Nu,ZodCIDRv4:()=>lu,ZodCIDRv6:()=>du,ZodCUID:()=>ql,ZodCUID2:()=>Yl,ZodCatch:()=>Id,ZodCodec:()=>Hd,ZodCustom:()=>ef,ZodCustomStringFormat:()=>xu,ZodDate:()=>Qu,ZodDefault:()=>Od,ZodDiscriminatedUnion:()=>ad,ZodE164:()=>_u,ZodEmail:()=>jl,ZodEmoji:()=>Ul,ZodEnum:()=>_d,ZodError:()=>gl,ZodFile:()=>bd,ZodFirstPartyTypeKind:()=>hf,ZodFunction:()=>Qd,ZodGUID:()=>Nl,ZodIPv4:()=>ru,ZodIPv6:()=>su,ZodISODate:()=>ll,ZodISODateTime:()=>sl,ZodISODuration:()=>pl,ZodISOTime:()=>dl,ZodIntersection:()=>sd,ZodIssueCode:()=>ff,ZodJWT:()=>yu,ZodKSUID:()=>tu,ZodLazy:()=>Jd,ZodLiteral:()=>yd,ZodMAC:()=>au,ZodMap:()=>pd,ZodNaN:()=>Rd,ZodNanoID:()=>Gl,ZodNever:()=>Ju,ZodNonOptional:()=>Md,ZodNull:()=>Uu,ZodNullable:()=>Td,ZodNumber:()=>Eu,ZodNumberFormat:()=>Du,ZodObject:()=>nd,ZodOptional:()=>wd,ZodPipe:()=>Bd,ZodPrefault:()=>Ad,ZodPromise:()=>Xd,ZodReadonly:()=>Wd,ZodRealError:()=>j,ZodRecord:()=>dd,ZodSet:()=>hd,ZodString:()=>Al,ZodStringFormat:()=>P,ZodSuccess:()=>Pd,ZodSymbol:()=>zu,ZodTemplateLiteral:()=>Kd,ZodTransform:()=>Sd,ZodTuple:()=>ld,ZodType:()=>M,ZodULID:()=>Zl,ZodURL:()=>Bl,ZodUUID:()=>Fl,ZodUndefined:()=>Vu,ZodUnion:()=>id,ZodUnknown:()=>qu,ZodVoid:()=>Xu,ZodXID:()=>$l,_ZodString:()=>kl,_default:()=>kd,_function:()=>$d,any:()=>Ku,array:()=>R,base64:()=>mu,base64url:()=>gu,bigint:()=>Fu,boolean:()=>I,catch:()=>Ld,check:()=>tf,cidrv4:()=>uu,cidrv6:()=>fu,clone:()=>b,codec:()=>Ud,coerce:()=>gf,config:()=>l,core:()=>tl,cuid:()=>Jl,cuid2:()=>Xl,custom:()=>nf,date:()=>$u,decode:()=>Sl,decodeAsync:()=>wl,describe:()=>of,discriminatedUnion:()=>od,e164:()=>vu,email:()=>Ml,emoji:()=>Wl,encode:()=>xl,encodeAsync:()=>Cl,endsWith:()=>dc,enum:()=>U,file:()=>xd,flattenError:()=>Qe,float32:()=>ku,float64:()=>Au,formatError:()=>$e,function:()=>$d,getErrorMap:()=>mf,globalRegistry:()=>D,gt:()=>Js,gte:()=>k,guid:()=>Pl,hash:()=>Tu,hex:()=>wu,hostname:()=>Cu,httpUrl:()=>Hl,includes:()=>lc,instanceof:()=>cf,int:()=>Ou,int32:()=>ju,int64:()=>Lu,intersection:()=>cd,ipv4:()=>iu,ipv6:()=>cu,iso:()=>ol,json:()=>uf,jwt:()=>bu,keyof:()=>td,ksuid:()=>nu,lazy:()=>Yd,length:()=>ac,literal:()=>W,locales:()=>Ho,looseObject:()=>B,lowercase:()=>sc,lt:()=>qs,lte:()=>O,mac:()=>ou,map:()=>md,maxLength:()=>rc,maxSize:()=>ec,meta:()=>sf,mime:()=>pc,minLength:()=>ic,minSize:()=>tc,multipleOf:()=>$s,nan:()=>zd,nanoid:()=>Kl,nativeEnum:()=>vd,negative:()=>Xs,never:()=>Yu,nonnegative:()=>Qs,nonoptional:()=>Nd,nonpositive:()=>Zs,normalize:()=>hc,null:()=>Wu,nullable:()=>Ed,nullish:()=>Dd,number:()=>F,object:()=>z,optional:()=>G,overwrite:()=>mc,parse:()=>_l,parseAsync:()=>vl,partialRecord:()=>fd,pipe:()=>Vd,positive:()=>Ys,prefault:()=>jd,preprocess:()=>df,prettifyError:()=>nt,promise:()=>Zd,property:()=>fc,readonly:()=>Gd,record:()=>H,refine:()=>rf,regex:()=>oc,regexes:()=>Dt,registry:()=>qo,safeDecode:()=>El,safeDecodeAsync:()=>Ol,safeEncode:()=>Tl,safeEncodeAsync:()=>Dl,safeParse:()=>yl,safeParseAsync:()=>bl,set:()=>gd,setErrorMap:()=>pf,size:()=>nc,slugify:()=>yc,startsWith:()=>uc,strictObject:()=>rd,string:()=>N,stringFormat:()=>Su,stringbool:()=>lf,success:()=>Fd,superRefine:()=>af,symbol:()=>Bu,templateLiteral:()=>qd,toJSONSchema:()=>$c,toLowerCase:()=>_c,toUpperCase:()=>vc,transform:()=>Cd,treeifyError:()=>et,trim:()=>gc,tuple:()=>ud,uint32:()=>Mu,uint64:()=>Ru,ulid:()=>Ql,undefined:()=>Hu,union:()=>V,unknown:()=>L,uppercase:()=>cc,url:()=>Vl,util:()=>u,uuid:()=>Il,uuidv4:()=>Ll,uuidv6:()=>Rl,uuidv7:()=>zl,void:()=>Zu,xid:()=>eu});l(da());var Cf=t({$brand:()=>a,$input:()=>Go,$output:()=>Wo,NEVER:()=>r,TimePrecision:()=>ys,ZodAny:()=>Gu,ZodArray:()=>ed,ZodBase64:()=>pu,ZodBase64URL:()=>hu,ZodBigInt:()=>Pu,ZodBigIntFormat:()=>Iu,ZodBoolean:()=>Nu,ZodCIDRv4:()=>lu,ZodCIDRv6:()=>du,ZodCUID:()=>ql,ZodCUID2:()=>Yl,ZodCatch:()=>Id,ZodCodec:()=>Hd,ZodCustom:()=>ef,ZodCustomStringFormat:()=>xu,ZodDate:()=>Qu,ZodDefault:()=>Od,ZodDiscriminatedUnion:()=>ad,ZodE164:()=>_u,ZodEmail:()=>jl,ZodEmoji:()=>Ul,ZodEnum:()=>_d,ZodError:()=>gl,ZodFile:()=>bd,ZodFirstPartyTypeKind:()=>hf,ZodFunction:()=>Qd,ZodGUID:()=>Nl,ZodIPv4:()=>ru,ZodIPv6:()=>su,ZodISODate:()=>ll,ZodISODateTime:()=>sl,ZodISODuration:()=>pl,ZodISOTime:()=>dl,ZodIntersection:()=>sd,ZodIssueCode:()=>ff,ZodJWT:()=>yu,ZodKSUID:()=>tu,ZodLazy:()=>Jd,ZodLiteral:()=>yd,ZodMAC:()=>au,ZodMap:()=>pd,ZodNaN:()=>Rd,ZodNanoID:()=>Gl,ZodNever:()=>Ju,ZodNonOptional:()=>Md,ZodNull:()=>Uu,ZodNullable:()=>Td,ZodNumber:()=>Eu,ZodNumberFormat:()=>Du,ZodObject:()=>nd,ZodOptional:()=>wd,ZodPipe:()=>Bd,ZodPrefault:()=>Ad,ZodPromise:()=>Xd,ZodReadonly:()=>Wd,ZodRealError:()=>j,ZodRecord:()=>dd,ZodSet:()=>hd,ZodString:()=>Al,ZodStringFormat:()=>P,ZodSuccess:()=>Pd,ZodSymbol:()=>zu,ZodTemplateLiteral:()=>Kd,ZodTransform:()=>Sd,ZodTuple:()=>ld,ZodType:()=>M,ZodULID:()=>Zl,ZodURL:()=>Bl,ZodUUID:()=>Fl,ZodUndefined:()=>Vu,ZodUnion:()=>id,ZodUnknown:()=>qu,ZodVoid:()=>Xu,ZodXID:()=>$l,_ZodString:()=>kl,_default:()=>kd,_function:()=>$d,any:()=>Ku,array:()=>R,base64:()=>mu,base64url:()=>gu,bigint:()=>Fu,boolean:()=>I,catch:()=>Ld,check:()=>tf,cidrv4:()=>uu,cidrv6:()=>fu,clone:()=>b,codec:()=>Ud,coerce:()=>gf,config:()=>l,core:()=>tl,cuid:()=>Jl,cuid2:()=>Xl,custom:()=>nf,date:()=>$u,decode:()=>Sl,decodeAsync:()=>wl,describe:()=>of,discriminatedUnion:()=>od,e164:()=>vu,email:()=>Ml,emoji:()=>Wl,encode:()=>xl,encodeAsync:()=>Cl,endsWith:()=>dc,enum:()=>U,file:()=>xd,flattenError:()=>Qe,float32:()=>ku,float64:()=>Au,formatError:()=>$e,function:()=>$d,getErrorMap:()=>mf,globalRegistry:()=>D,gt:()=>Js,gte:()=>k,guid:()=>Pl,hash:()=>Tu,hex:()=>wu,hostname:()=>Cu,httpUrl:()=>Hl,includes:()=>lc,instanceof:()=>cf,int:()=>Ou,int32:()=>ju,int64:()=>Lu,intersection:()=>cd,ipv4:()=>iu,ipv6:()=>cu,iso:()=>ol,json:()=>uf,jwt:()=>bu,keyof:()=>td,ksuid:()=>nu,lazy:()=>Yd,length:()=>ac,literal:()=>W,locales:()=>Ho,looseObject:()=>B,lowercase:()=>sc,lt:()=>qs,lte:()=>O,mac:()=>ou,map:()=>md,maxLength:()=>rc,maxSize:()=>ec,meta:()=>sf,mime:()=>pc,minLength:()=>ic,minSize:()=>tc,multipleOf:()=>$s,nan:()=>zd,nanoid:()=>Kl,nativeEnum:()=>vd,negative:()=>Xs,never:()=>Yu,nonnegative:()=>Qs,nonoptional:()=>Nd,nonpositive:()=>Zs,normalize:()=>hc,null:()=>Wu,nullable:()=>Ed,nullish:()=>Dd,number:()=>F,object:()=>z,optional:()=>G,overwrite:()=>mc,parse:()=>_l,parseAsync:()=>vl,partialRecord:()=>fd,pipe:()=>Vd,positive:()=>Ys,prefault:()=>jd,preprocess:()=>df,prettifyError:()=>nt,promise:()=>Zd,property:()=>fc,readonly:()=>Gd,record:()=>H,refine:()=>rf,regex:()=>oc,regexes:()=>Dt,registry:()=>qo,safeDecode:()=>El,safeDecodeAsync:()=>Ol,safeEncode:()=>Tl,safeEncodeAsync:()=>Dl,safeParse:()=>yl,safeParseAsync:()=>bl,set:()=>gd,setErrorMap:()=>pf,size:()=>nc,slugify:()=>yc,startsWith:()=>uc,strictObject:()=>rd,string:()=>N,stringFormat:()=>Su,stringbool:()=>lf,success:()=>Fd,superRefine:()=>af,symbol:()=>Bu,templateLiteral:()=>qd,toJSONSchema:()=>$c,toLowerCase:()=>_c,toUpperCase:()=>vc,transform:()=>Cd,treeifyError:()=>et,trim:()=>gc,tuple:()=>ud,uint32:()=>Mu,uint64:()=>Ru,ulid:()=>Ql,undefined:()=>Hu,union:()=>V,unknown:()=>L,uppercase:()=>cc,url:()=>Vl,util:()=>u,uuid:()=>Il,uuidv4:()=>Ll,uuidv6:()=>Rl,uuidv7:()=>zl,void:()=>Zu,xid:()=>eu,z:()=>Sf}),wf=`io.modelcontextprotocol/related-task`,K=nf(e=>e!==null&&(typeof e==`object`||typeof e==`function`)),Tf=V([N(),F().int()]),Ef=N();B({ttl:F().optional(),pollInterval:F().optional()});var Df=z({ttl:F().optional()}),Of=z({taskId:N()}),kf=B({progressToken:Tf.optional(),[wf]:Of.optional()}),q=z({_meta:kf.optional()}),Af=q.extend({task:Df.optional()}),jf=e=>Af.safeParse(e).success,J=z({method:N(),params:q.loose().optional()}),Mf=z({_meta:kf.optional()}),Nf=z({method:N(),params:Mf.loose().optional()}),Y=B({_meta:kf.optional()}),Pf=V([N(),F().int()]),Ff=z({jsonrpc:W(`2.0`),id:Pf,...J.shape}).strict(),If=e=>Ff.safeParse(e).success,Lf=z({jsonrpc:W(`2.0`),...Nf.shape}).strict(),Rf=e=>Lf.safeParse(e).success,zf=z({jsonrpc:W(`2.0`),id:Pf,result:Y}).strict(),Bf=e=>zf.safeParse(e).success,X;(function(e){e[e.ConnectionClosed=-32e3]=`ConnectionClosed`,e[e.RequestTimeout=-32001]=`RequestTimeout`,e[e.ParseError=-32700]=`ParseError`,e[e.InvalidRequest=-32600]=`InvalidRequest`,e[e.MethodNotFound=-32601]=`MethodNotFound`,e[e.InvalidParams=-32602]=`InvalidParams`,e[e.InternalError=-32603]=`InternalError`,e[e.UrlElicitationRequired=-32042]=`UrlElicitationRequired`})(X||={});var Vf=z({jsonrpc:W(`2.0`),id:Pf.optional(),error:z({code:F().int(),message:N(),data:L().optional()})}).strict(),Hf=e=>Vf.safeParse(e).success,Uf=V([Ff,Lf,zf,Vf]);V([zf,Vf]);var Wf=Y.strict(),Gf=Mf.extend({requestId:Pf.optional(),reason:N().optional()}),Kf=Nf.extend({method:W(`notifications/cancelled`),params:Gf}),qf=z({icons:R(z({src:N(),mimeType:N().optional(),sizes:R(N()).optional(),theme:U([`light`,`dark`]).optional()})).optional()}),Jf=z({name:N(),title:N().optional()}),Yf=Jf.extend({...Jf.shape,...qf.shape,version:N(),websiteUrl:N().optional(),description:N().optional()}),Xf=df(e=>e&&typeof e==`object`&&!Array.isArray(e)&&Object.keys(e).length===0?{form:{}}:e,cd(z({form:cd(z({applyDefaults:I().optional()}),H(N(),L())).optional(),url:K.optional()}),H(N(),L()).optional())),Zf=B({list:K.optional(),cancel:K.optional(),requests:B({sampling:B({createMessage:K.optional()}).optional(),elicitation:B({create:K.optional()}).optional()}).optional()}),Qf=B({list:K.optional(),cancel:K.optional(),requests:B({tools:B({call:K.optional()}).optional()}).optional()}),$f=z({experimental:H(N(),K).optional(),sampling:z({context:K.optional(),tools:K.optional()}).optional(),elicitation:Xf.optional(),roots:z({listChanged:I().optional()}).optional(),tasks:Zf.optional(),extensions:H(N(),K).optional()}),ep=q.extend({protocolVersion:N(),capabilities:$f,clientInfo:Yf}),tp=J.extend({method:W(`initialize`),params:ep}),np=z({experimental:H(N(),K).optional(),logging:K.optional(),completions:K.optional(),prompts:z({listChanged:I().optional()}).optional(),resources:z({subscribe:I().optional(),listChanged:I().optional()}).optional(),tools:z({listChanged:I().optional()}).optional(),tasks:Qf.optional(),extensions:H(N(),K).optional()}),rp=Y.extend({protocolVersion:N(),capabilities:np,serverInfo:Yf,instructions:N().optional()}),ip=Nf.extend({method:W(`notifications/initialized`),params:Mf.optional()}),ap=J.extend({method:W(`ping`),params:q.optional()}),op=z({progress:F(),total:G(F()),message:G(N())}),sp=z({...Mf.shape,...op.shape,progressToken:Tf}),cp=Nf.extend({method:W(`notifications/progress`),params:sp}),lp=q.extend({cursor:Ef.optional()}),up=J.extend({params:lp.optional()}),dp=Y.extend({nextCursor:Ef.optional()}),fp=U([`working`,`input_required`,`completed`,`failed`,`cancelled`]),pp=z({taskId:N(),status:fp,ttl:V([F(),Wu()]),createdAt:N(),lastUpdatedAt:N(),pollInterval:G(F()),statusMessage:G(N())}),mp=Y.extend({task:pp}),hp=Mf.merge(pp),gp=Nf.extend({method:W(`notifications/tasks/status`),params:hp}),_p=J.extend({method:W(`tasks/get`),params:q.extend({taskId:N()})}),vp=Y.merge(pp),yp=J.extend({method:W(`tasks/result`),params:q.extend({taskId:N()})});Y.loose();var bp=up.extend({method:W(`tasks/list`)}),xp=dp.extend({tasks:R(pp)}),Sp=J.extend({method:W(`tasks/cancel`),params:q.extend({taskId:N()})}),Cp=Y.merge(pp),wp=z({uri:N(),mimeType:G(N()),_meta:H(N(),L()).optional()}),Tp=wp.extend({text:N()}),Ep=N().refine(e=>{try{return atob(e),!0}catch{return!1}},{message:`Invalid Base64 string`}),Dp=wp.extend({blob:Ep}),Op=U([`user`,`assistant`]),kp=z({audience:R(Op).optional(),priority:F().min(0).max(1).optional(),lastModified:cl({offset:!0}).optional()}),Ap=z({...Jf.shape,...qf.shape,uri:N(),description:G(N()),mimeType:G(N()),size:G(F()),annotations:kp.optional(),_meta:G(B({}))}),jp=z({...Jf.shape,...qf.shape,uriTemplate:N(),description:G(N()),mimeType:G(N()),annotations:kp.optional(),_meta:G(B({}))}),Mp=up.extend({method:W(`resources/list`)}),Np=dp.extend({resources:R(Ap)}),Pp=up.extend({method:W(`resources/templates/list`)}),Fp=dp.extend({resourceTemplates:R(jp)}),Ip=q.extend({uri:N()}),Lp=Ip,Rp=J.extend({method:W(`resources/read`),params:Lp}),zp=Y.extend({contents:R(V([Tp,Dp]))}),Bp=Nf.extend({method:W(`notifications/resources/list_changed`),params:Mf.optional()}),Vp=Ip,Hp=J.extend({method:W(`resources/subscribe`),params:Vp}),Up=Ip,Wp=J.extend({method:W(`resources/unsubscribe`),params:Up}),Gp=Mf.extend({uri:N()}),Kp=Nf.extend({method:W(`notifications/resources/updated`),params:Gp}),qp=z({name:N(),description:G(N()),required:G(I())}),Jp=z({...Jf.shape,...qf.shape,description:G(N()),arguments:G(R(qp)),_meta:G(B({}))}),Yp=up.extend({method:W(`prompts/list`)}),Xp=dp.extend({prompts:R(Jp)}),Zp=q.extend({name:N(),arguments:H(N(),N()).optional()}),Qp=J.extend({method:W(`prompts/get`),params:Zp}),$p=z({type:W(`text`),text:N(),annotations:kp.optional(),_meta:H(N(),L()).optional()}),em=z({type:W(`image`),data:Ep,mimeType:N(),annotations:kp.optional(),_meta:H(N(),L()).optional()}),tm=z({type:W(`audio`),data:Ep,mimeType:N(),annotations:kp.optional(),_meta:H(N(),L()).optional()}),nm=z({type:W(`tool_use`),name:N(),id:N(),input:H(N(),L()),_meta:H(N(),L()).optional()}),rm=z({type:W(`resource`),resource:V([Tp,Dp]),annotations:kp.optional(),_meta:H(N(),L()).optional()}),im=Ap.extend({type:W(`resource_link`)}),am=V([$p,em,tm,im,rm]),om=z({role:Op,content:am}),sm=Y.extend({description:N().optional(),messages:R(om)}),cm=Nf.extend({method:W(`notifications/prompts/list_changed`),params:Mf.optional()}),lm=z({title:N().optional(),readOnlyHint:I().optional(),destructiveHint:I().optional(),idempotentHint:I().optional(),openWorldHint:I().optional()}),um=z({taskSupport:U([`required`,`optional`,`forbidden`]).optional()}),dm=z({...Jf.shape,...qf.shape,description:N().optional(),inputSchema:z({type:W(`object`),properties:H(N(),K).optional(),required:R(N()).optional()}).catchall(L()),outputSchema:z({type:W(`object`),properties:H(N(),K).optional(),required:R(N()).optional()}).catchall(L()).optional(),annotations:lm.optional(),execution:um.optional(),_meta:H(N(),L()).optional()}),fm=up.extend({method:W(`tools/list`)}),pm=dp.extend({tools:R(dm)}),mm=Y.extend({content:R(am).default([]),structuredContent:H(N(),L()).optional(),isError:I().optional()});mm.or(Y.extend({toolResult:L()}));var hm=Af.extend({name:N(),arguments:H(N(),L()).optional()}),gm=J.extend({method:W(`tools/call`),params:hm}),_m=Nf.extend({method:W(`notifications/tools/list_changed`),params:Mf.optional()});z({autoRefresh:I().default(!0),debounceMs:F().int().nonnegative().default(300)});var vm=U([`debug`,`info`,`notice`,`warning`,`error`,`critical`,`alert`,`emergency`]),ym=q.extend({level:vm}),bm=J.extend({method:W(`logging/setLevel`),params:ym}),xm=Mf.extend({level:vm,logger:N().optional(),data:L()}),Sm=Nf.extend({method:W(`notifications/message`),params:xm}),Cm=z({hints:R(z({name:N().optional()})).optional(),costPriority:F().min(0).max(1).optional(),speedPriority:F().min(0).max(1).optional(),intelligencePriority:F().min(0).max(1).optional()}),wm=z({mode:U([`auto`,`required`,`none`]).optional()}),Tm=z({type:W(`tool_result`),toolUseId:N().describe(`The unique identifier for the corresponding tool call.`),content:R(am).default([]),structuredContent:z({}).loose().optional(),isError:I().optional(),_meta:H(N(),L()).optional()}),Em=od(`type`,[$p,em,tm]),Dm=od(`type`,[$p,em,tm,nm,Tm]),Om=z({role:Op,content:V([Dm,R(Dm)]),_meta:H(N(),L()).optional()}),km=Af.extend({messages:R(Om),modelPreferences:Cm.optional(),systemPrompt:N().optional(),includeContext:U([`none`,`thisServer`,`allServers`]).optional(),temperature:F().optional(),maxTokens:F().int(),stopSequences:R(N()).optional(),metadata:K.optional(),tools:R(dm).optional(),toolChoice:wm.optional()}),Am=J.extend({method:W(`sampling/createMessage`),params:km}),jm=Y.extend({model:N(),stopReason:G(U([`endTurn`,`stopSequence`,`maxTokens`]).or(N())),role:Op,content:Em}),Mm=Y.extend({model:N(),stopReason:G(U([`endTurn`,`stopSequence`,`maxTokens`,`toolUse`]).or(N())),role:Op,content:V([Dm,R(Dm)])}),Nm=z({type:W(`boolean`),title:N().optional(),description:N().optional(),default:I().optional()}),Pm=z({type:W(`string`),title:N().optional(),description:N().optional(),minLength:F().optional(),maxLength:F().optional(),format:U([`email`,`uri`,`date`,`date-time`]).optional(),default:N().optional()}),Fm=z({type:U([`number`,`integer`]),title:N().optional(),description:N().optional(),minimum:F().optional(),maximum:F().optional(),default:F().optional()}),Im=z({type:W(`string`),title:N().optional(),description:N().optional(),enum:R(N()),default:N().optional()}),Lm=z({type:W(`string`),title:N().optional(),description:N().optional(),oneOf:R(z({const:N(),title:N()})),default:N().optional()}),Rm=V([V([z({type:W(`string`),title:N().optional(),description:N().optional(),enum:R(N()),enumNames:R(N()).optional(),default:N().optional()}),V([Im,Lm]),V([z({type:W(`array`),title:N().optional(),description:N().optional(),minItems:F().optional(),maxItems:F().optional(),items:z({type:W(`string`),enum:R(N())}),default:R(N()).optional()}),z({type:W(`array`),title:N().optional(),description:N().optional(),minItems:F().optional(),maxItems:F().optional(),items:z({anyOf:R(z({const:N(),title:N()}))}),default:R(N()).optional()})])]),Nm,Pm,Fm]),zm=V([Af.extend({mode:W(`form`).optional(),message:N(),requestedSchema:z({type:W(`object`),properties:H(N(),Rm),required:R(N()).optional()})}),Af.extend({mode:W(`url`),message:N(),elicitationId:N(),url:N().url()})]),Bm=J.extend({method:W(`elicitation/create`),params:zm}),Vm=Mf.extend({elicitationId:N()}),Hm=Nf.extend({method:W(`notifications/elicitation/complete`),params:Vm}),Um=Y.extend({action:U([`accept`,`decline`,`cancel`]),content:df(e=>e===null?void 0:e,H(N(),V([N(),F(),I(),R(N())])).optional())}),Wm=z({type:W(`ref/resource`),uri:N()}),Gm=z({type:W(`ref/prompt`),name:N()}),Km=q.extend({ref:V([Gm,Wm]),argument:z({name:N(),value:N()}),context:z({arguments:H(N(),N()).optional()}).optional()}),qm=J.extend({method:W(`completion/complete`),params:Km}),Jm=Y.extend({completion:B({values:R(N()).max(100),total:G(F().int()),hasMore:G(I())})}),Ym=z({uri:N().startsWith(`file://`),name:N().optional(),_meta:H(N(),L()).optional()}),Xm=J.extend({method:W(`roots/list`),params:q.optional()}),Zm=Y.extend({roots:R(Ym)}),Qm=Nf.extend({method:W(`notifications/roots/list_changed`),params:Mf.optional()});V([ap,tp,qm,bm,Qp,Yp,Mp,Pp,Rp,Hp,Wp,gm,fm,_p,yp,bp,Sp]),V([Kf,cp,ip,Qm,gp]),V([Wf,jm,Mm,Um,Zm,vp,xp,mp]),V([ap,Am,Bm,Xm,_p,yp,bp,Sp]),V([Kf,cp,Sm,Kp,Bp,_m,cm,gp,Hm]),V([Wf,rp,Jm,sm,Xp,Np,Fp,zp,mm,pm,vp,xp,mp]);var Z=class e extends Error{constructor(e,t,n){super(`MCP error ${e}: ${t}`),this.code=e,this.data=n,this.name=`McpError`}static fromError(t,n,r){if(t===X.UrlElicitationRequired&&r){let e=r;if(e.elicitations)return new $m(e.elicitations,n)}return new e(t,n,r)}},$m=class extends Z{constructor(e,t=`URL elicitation${e.length>1?`s`:``} required`){super(X.UrlElicitationRequired,t,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function eh(e){return e===`completed`||e===`failed`||e===`cancelled`}function th(e){let t=il(e)?.method;if(!t)throw Error(`Schema is missing a method literal`);let n=al(t);if(typeof n!=`string`)throw Error(`Schema method literal must be a string`);return n}function nh(e,t){let n=rl(e,t);if(!n.success)throw n.error;return n.data}var rh=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(Kf,e=>{this._oncancel(e)}),this.setNotificationHandler(cp,e=>{this._onprogress(e)}),this.setRequestHandler(ap,e=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(_p,async(e,t)=>{let n=await this._taskStore.getTask(e.params.taskId,t.sessionId);if(!n)throw new Z(X.InvalidParams,`Failed to retrieve task: Task not found`);return{...n}}),this.setRequestHandler(yp,async(e,t)=>{let n=async()=>{let r=e.params.taskId;if(this._taskMessageQueue){let e;for(;e=await this._taskMessageQueue.dequeue(r,t.sessionId);){if(e.type===`response`||e.type===`error`){let t=e.message,n=t.id,r=this._requestResolvers.get(n);if(r)if(this._requestResolvers.delete(n),e.type===`response`)r(t);else{let e=t;r(new Z(e.error.code,e.error.message,e.error.data))}else{let t=e.type===`response`?`Response`:`Error`;this._onerror(Error(`${t} handler missing for request ${n}`))}continue}await this._transport?.send(e.message,{relatedRequestId:t.requestId})}}let i=await this._taskStore.getTask(r,t.sessionId);if(!i)throw new Z(X.InvalidParams,`Task not found: ${r}`);if(!eh(i.status))return await this._waitForTaskUpdate(r,t.signal),await n();if(eh(i.status)){let e=await this._taskStore.getTaskResult(r,t.sessionId);return this._clearTaskQueue(r),{...e,_meta:{...e._meta,[wf]:{taskId:r}}}}return await n()};return await n()}),this.setRequestHandler(bp,async(e,t)=>{try{let{tasks:n,nextCursor:r}=await this._taskStore.listTasks(e.params?.cursor,t.sessionId);return{tasks:n,nextCursor:r,_meta:{}}}catch(e){throw new Z(X.InvalidParams,`Failed to list tasks: ${e instanceof Error?e.message:String(e)}`)}}),this.setRequestHandler(Sp,async(e,t)=>{try{let n=await this._taskStore.getTask(e.params.taskId,t.sessionId);if(!n)throw new Z(X.InvalidParams,`Task not found: ${e.params.taskId}`);if(eh(n.status))throw new Z(X.InvalidParams,`Cannot cancel task in terminal status: ${n.status}`);await this._taskStore.updateTaskStatus(e.params.taskId,`cancelled`,`Client cancelled task execution.`,t.sessionId),this._clearTaskQueue(e.params.taskId);let r=await this._taskStore.getTask(e.params.taskId,t.sessionId);if(!r)throw new Z(X.InvalidParams,`Task not found after cancellation: ${e.params.taskId}`);return{_meta:{},...r}}catch(e){throw e instanceof Z?e:new Z(X.InvalidRequest,`Failed to cancel task: ${e instanceof Error?e.message:String(e)}`)}}))}async _oncancel(e){e.params.requestId&&this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,t,n,r,i=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(r,t),startTime:Date.now(),timeout:t,maxTotalTimeout:n,resetTimeoutOnProgress:i,onTimeout:r})}_resetTimeout(e){let t=this._timeoutInfo.get(e);if(!t)return!1;let n=Date.now()-t.startTime;if(t.maxTotalTimeout&&n>=t.maxTotalTimeout)throw this._timeoutInfo.delete(e),Z.fromError(X.RequestTimeout,`Maximum total timeout exceeded`,{maxTotalTimeout:t.maxTotalTimeout,totalElapsed:n});return clearTimeout(t.timeoutId),t.timeoutId=setTimeout(t.onTimeout,t.timeout),!0}_cleanupTimeout(e){let t=this._timeoutInfo.get(e);t&&(clearTimeout(t.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw Error(`Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.`);this._transport=e;let t=this.transport?.onclose;this._transport.onclose=()=>{t?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=e=>{n?.(e),this._onerror(e)};let r=this._transport?.onmessage;this._transport.onmessage=(e,t)=>{r?.(e,t),Bf(e)||Hf(e)?this._onresponse(e):If(e)?this._onrequest(e,t):Rf(e)?this._onnotification(e):this._onerror(Error(`Unknown message type: ${JSON.stringify(e)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let e of this._timeoutInfo.values())clearTimeout(e.timeoutId);this._timeoutInfo.clear();for(let e of this._requestHandlerAbortControllers.values())e.abort();this._requestHandlerAbortControllers.clear();let t=Z.fromError(X.ConnectionClosed,`Connection closed`);this._transport=void 0,this.onclose?.();for(let n of e.values())n(t)}_onerror(e){this.onerror?.(e)}_onnotification(e){let t=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;t!==void 0&&Promise.resolve().then(()=>t(e)).catch(e=>this._onerror(Error(`Uncaught error in notification handler: ${e}`)))}_onrequest(e,t){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,r=this._transport,i=e.params?._meta?.[wf]?.taskId;if(n===void 0){let t={jsonrpc:`2.0`,id:e.id,error:{code:X.MethodNotFound,message:`Method not found`}};i&&this._taskMessageQueue?this._enqueueTaskMessage(i,{type:`error`,message:t,timestamp:Date.now()},r?.sessionId).catch(e=>this._onerror(Error(`Failed to enqueue error response: ${e}`))):r?.send(t).catch(e=>this._onerror(Error(`Failed to send an error response: ${e}`)));return}let a=new AbortController;this._requestHandlerAbortControllers.set(e.id,a);let o=jf(e.params)?e.params.task:void 0,s=this._taskStore?this.requestTaskStore(e,r?.sessionId):void 0,c={signal:a.signal,sessionId:r?.sessionId,_meta:e.params?._meta,sendNotification:async t=>{if(a.signal.aborted)return;let n={relatedRequestId:e.id};i&&(n.relatedTask={taskId:i}),await this.notification(t,n)},sendRequest:async(t,n,r)=>{if(a.signal.aborted)throw new Z(X.ConnectionClosed,`Request was cancelled`);let o={...r,relatedRequestId:e.id};i&&!o.relatedTask&&(o.relatedTask={taskId:i});let c=o.relatedTask?.taskId??i;return c&&s&&await s.updateTaskStatus(c,`input_required`),await this.request(t,n,o)},authInfo:t?.authInfo,requestId:e.id,requestInfo:t?.requestInfo,taskId:i,taskStore:s,taskRequestedTtl:o?.ttl,closeSSEStream:t?.closeSSEStream,closeStandaloneSSEStream:t?.closeStandaloneSSEStream};Promise.resolve().then(()=>{o&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,c)).then(async t=>{if(a.signal.aborted)return;let n={result:t,jsonrpc:`2.0`,id:e.id};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:`response`,message:n,timestamp:Date.now()},r?.sessionId):await r?.send(n)},async t=>{if(a.signal.aborted)return;let n={jsonrpc:`2.0`,id:e.id,error:{code:Number.isSafeInteger(t.code)?t.code:X.InternalError,message:t.message??`Internal error`,...t.data!==void 0&&{data:t.data}}};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:`error`,message:n,timestamp:Date.now()},r?.sessionId):await r?.send(n)}).catch(e=>this._onerror(Error(`Failed to send response: ${e}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===a&&this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:t,...n}=e.params,r=Number(t),i=this._progressHandlers.get(r);if(!i){this._onerror(Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let a=this._responseHandlers.get(r),o=this._timeoutInfo.get(r);if(o&&a&&o.resetTimeoutOnProgress)try{this._resetTimeout(r)}catch(e){this._responseHandlers.delete(r),this._progressHandlers.delete(r),this._cleanupTimeout(r),a(e);return}i(n)}_onresponse(e){let t=Number(e.id),n=this._requestResolvers.get(t);if(n){this._requestResolvers.delete(t),Bf(e)?n(e):n(new Z(e.error.code,e.error.message,e.error.data));return}let r=this._responseHandlers.get(t);if(r===void 0){this._onerror(Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(t),this._cleanupTimeout(t);let i=!1;if(Bf(e)&&e.result&&typeof e.result==`object`){let n=e.result;if(n.task&&typeof n.task==`object`){let e=n.task;typeof e.taskId==`string`&&(i=!0,this._taskProgressTokens.set(e.taskId,t))}}i||this._progressHandlers.delete(t),Bf(e)?r(e):r(Z.fromError(e.error.code,e.error.message,e.error.data))}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,t,n){let{task:r}=n??{};if(!r){try{yield{type:`result`,result:await this.request(e,t,n)}}catch(e){yield{type:`error`,error:e instanceof Z?e:new Z(X.InternalError,String(e))}}return}let i;try{let r=await this.request(e,mp,n);if(r.task)i=r.task.taskId,yield{type:`taskCreated`,task:r.task};else throw new Z(X.InternalError,`Task creation did not return a task`);for(;;){let e=await this.getTask({taskId:i},n);if(yield{type:`taskStatus`,task:e},eh(e.status)){e.status===`completed`?yield{type:`result`,result:await this.getTaskResult({taskId:i},t,n)}:e.status===`failed`?yield{type:`error`,error:new Z(X.InternalError,`Task ${i} failed`)}:e.status===`cancelled`&&(yield{type:`error`,error:new Z(X.InternalError,`Task ${i} was cancelled`)});return}if(e.status===`input_required`){yield{type:`result`,result:await this.getTaskResult({taskId:i},t,n)};return}let r=e.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(e=>setTimeout(e,r)),n?.signal?.throwIfAborted()}}catch(e){yield{type:`error`,error:e instanceof Z?e:new Z(X.InternalError,String(e))}}}request(e,t,n){let{relatedRequestId:r,resumptionToken:i,onresumptiontoken:a,task:o,relatedTask:s}=n??{};return new Promise((c,l)=>{let u=e=>{l(e)};if(!this._transport){u(Error(`Not connected`));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),o&&this.assertTaskCapability(e.method)}catch(e){u(e);return}n?.signal?.throwIfAborted();let d=this._requestMessageId++,f={...e,jsonrpc:`2.0`,id:d};n?.onprogress&&(this._progressHandlers.set(d,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:d}}),o&&(f.params={...f.params,task:o}),s&&(f.params={...f.params,_meta:{...f.params?._meta||{},[wf]:s}});let p=e=>{this._responseHandlers.delete(d),this._progressHandlers.delete(d),this._cleanupTimeout(d),this._transport?.send({jsonrpc:`2.0`,method:`notifications/cancelled`,params:{requestId:d,reason:String(e)}},{relatedRequestId:r,resumptionToken:i,onresumptiontoken:a}).catch(e=>this._onerror(Error(`Failed to send cancellation: ${e}`))),l(e instanceof Z?e:new Z(X.RequestTimeout,String(e)))};this._responseHandlers.set(d,e=>{if(!n?.signal?.aborted){if(e instanceof Error)return l(e);try{let n=rl(t,e.result);n.success?c(n.data):l(n.error)}catch(e){l(e)}}}),n?.signal?.addEventListener(`abort`,()=>{p(n?.signal?.reason)});let m=n?.timeout??6e4;this._setupTimeout(d,m,n?.maxTotalTimeout,()=>p(Z.fromError(X.RequestTimeout,`Request timed out`,{timeout:m})),n?.resetTimeoutOnProgress??!1);let h=s?.taskId;h?(this._requestResolvers.set(d,e=>{let t=this._responseHandlers.get(d);t?t(e):this._onerror(Error(`Response handler missing for side-channeled request ${d}`))}),this._enqueueTaskMessage(h,{type:`request`,message:f,timestamp:Date.now()}).catch(e=>{this._cleanupTimeout(d),l(e)})):this._transport.send(f,{relatedRequestId:r,resumptionToken:i,onresumptiontoken:a}).catch(e=>{this._cleanupTimeout(d),l(e)})})}async getTask(e,t){return this.request({method:`tasks/get`,params:e},vp,t)}async getTaskResult(e,t,n){return this.request({method:`tasks/result`,params:e},t,n)}async listTasks(e,t){return this.request({method:`tasks/list`,params:e},xp,t)}async cancelTask(e,t){return this.request({method:`tasks/cancel`,params:e},Cp,t)}async notification(e,t){if(!this._transport)throw Error(`Not connected`);this.assertNotificationCapability(e.method);let n=t?.relatedTask?.taskId;if(n){let r={...e,jsonrpc:`2.0`,params:{...e.params,_meta:{...e.params?._meta||{},[wf]:t.relatedTask}}};await this._enqueueTaskMessage(n,{type:`notification`,message:r,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!t?.relatedRequestId&&!t?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let n={...e,jsonrpc:`2.0`};t?.relatedTask&&(n={...n,params:{...n.params,_meta:{...n.params?._meta||{},[wf]:t.relatedTask}}}),this._transport?.send(n,t).catch(e=>this._onerror(e))});return}let r={...e,jsonrpc:`2.0`};t?.relatedTask&&(r={...r,params:{...r.params,_meta:{...r.params?._meta||{},[wf]:t.relatedTask}}}),await this._transport.send(r,t)}setRequestHandler(e,t){let n=th(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(n,r)=>{let i=nh(e,n);return Promise.resolve(t(i,r))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,t){let n=th(e);this._notificationHandlers.set(n,n=>{let r=nh(e,n);return Promise.resolve(t(r))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let t=this._taskProgressTokens.get(e);t!==void 0&&(this._progressHandlers.delete(t),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,t,n){if(!this._taskStore||!this._taskMessageQueue)throw Error(`Cannot enqueue task message: taskStore and taskMessageQueue are not configured`);let r=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,t,n,r)}async _clearTaskQueue(e,t){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,t);for(let t of n)if(t.type===`request`&&If(t.message)){let n=t.message.id,r=this._requestResolvers.get(n);r?(r(new Z(X.InternalError,`Task cancelled or completed`)),this._requestResolvers.delete(n)):this._onerror(Error(`Resolver missing for request ${n} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,t){let n=this._options?.defaultTaskPollInterval??1e3;try{let t=await this._taskStore?.getTask(e);t?.pollInterval&&(n=t.pollInterval)}catch{}return new Promise((e,r)=>{if(t.aborted){r(new Z(X.InvalidRequest,`Request cancelled`));return}let i=setTimeout(e,n);t.addEventListener(`abort`,()=>{clearTimeout(i),r(new Z(X.InvalidRequest,`Request cancelled`))},{once:!0})})}requestTaskStore(e,t){let n=this._taskStore;if(!n)throw Error(`No task store configured`);return{createTask:async r=>{if(!e)throw Error(`No request provided`);return await n.createTask(r,e.id,{method:e.method,params:e.params},t)},getTask:async e=>{let r=await n.getTask(e,t);if(!r)throw new Z(X.InvalidParams,`Failed to retrieve task: Task not found`);return r},storeTaskResult:async(e,r,i)=>{await n.storeTaskResult(e,r,i,t);let a=await n.getTask(e,t);if(a){let t=gp.parse({method:`notifications/tasks/status`,params:a});await this.notification(t),eh(a.status)&&this._cleanupTaskProgressHandler(e)}},getTaskResult:e=>n.getTaskResult(e,t),updateTaskStatus:async(e,r,i)=>{let a=await n.getTask(e,t);if(!a)throw new Z(X.InvalidParams,`Task "${e}" not found - it may have been cleaned up`);if(eh(a.status))throw new Z(X.InvalidParams,`Cannot update task "${e}" from terminal status "${a.status}" to "${r}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(e,r,i,t);let o=await n.getTask(e,t);if(o){let t=gp.parse({method:`notifications/tasks/status`,params:o});await this.notification(t),eh(o.status)&&this._cleanupTaskProgressHandler(e)}},listTasks:e=>n.listTasks(e,t)}}};function ih(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function ah(e,t){let n={...e};for(let e in t){let r=e,i=t[r];if(i===void 0)continue;let a=n[r];ih(a)&&ih(i)?n[r]={...a,...i}:n[r]=i}return n}var oh=`modulepreload`,sh=function(e){return`/`+e},ch={},lh=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=sh(t,n),t in ch)return;ch[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:oh,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})};(e=>typeof n<`u`?n:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof n<`u`?n:e)[t]}):e)(function(e){if(typeof n<`u`)return n.apply(this,arguments);throw Error(`Dynamic require of "`+e+`" is not supported`)});var uh=class extends rh{_registeredMethods=new Set;_eventSlots=new Map;onEventDispatch(e,t){}_ensureEventSlot(e){let t=this._eventSlots.get(e);if(!t){let n=this.eventSchemas[e];if(!n)throw Error(`Unknown event: ${String(e)}`);t={listeners:[]},this._eventSlots.set(e,t);let r=n.shape.method.value;this._registeredMethods.add(r);let i=t;super.setNotificationHandler(n,t=>{let n=t.params;this.onEventDispatch(e,n),i.onHandler?.(n);for(let e of[...i.listeners])e(n)})}return t}setEventHandler(e,t){let n=this._ensureEventSlot(e);n.onHandler&&t&&console.warn(`[MCP Apps] on${String(e)} handler replaced. Use addEventListener("${String(e)}", …) to add multiple listeners without replacing.`),n.onHandler=t}getEventHandler(e){return this._eventSlots.get(e)?.onHandler}addEventListener(e,t){this._ensureEventSlot(e).listeners.push(t)}removeEventListener(e,t){let n=this._eventSlots.get(e);if(!n)return;let r=n.listeners.indexOf(t);r!==-1&&n.listeners.splice(r,1)}setRequestHandler=(e,t)=>{this._assertMethodNotRegistered(e,`setRequestHandler`),super.setRequestHandler(e,t)};setNotificationHandler=(e,t)=>{this._assertMethodNotRegistered(e,`setNotificationHandler`),super.setNotificationHandler(e,t)};warnIfRequestHandlerReplaced(e,t,n){t&&n&&console.warn(`[MCP Apps] ${e} handler replaced. Previous handler will no longer be called.`)}replaceRequestHandler=(e,t)=>{let n=e.shape.method.value;this._registeredMethods.add(n),super.setRequestHandler(e,t)};_assertMethodNotRegistered(e,t){let n=e.shape.method.value;if(this._registeredMethods.has(n))throw Error(`Handler for "${n}" already registered (via ${t}). Use addEventListener() to attach multiple listeners, or the on* setter for replace semantics.`);this._registeredMethods.add(n)}},dh=`2026-01-26`,fh=class{eventTarget;eventSource;messageListener;constructor(e=window.parent,t){this.eventTarget=e,this.eventSource=t,this.messageListener=e=>{if(t&&e.source!==this.eventSource){console.debug(`Ignoring message from unknown source`,e);return}let n=Uf.safeParse(e.data);n.success?(console.debug(`Parsed message`,n.data),this.onmessage?.(n.data)):e.data?.jsonrpc===`2.0`?(console.error(`Failed to parse message`,n.error.message,e),this.onerror?.(Error(`Invalid JSON-RPC message received: `+n.error.message))):console.debug(`Ignoring non-JSON-RPC message`,n.error.message,e)}}async start(){window.addEventListener(`message`,this.messageListener)}async send(e,t){e.method!==`ui/notifications/tool-input-partial`&&console.debug(`Sending message`,e),this.eventTarget.postMessage(e,`*`)}async close(){window.removeEventListener(`message`,this.messageListener),this.onclose?.()}onclose;onerror;onmessage;sessionId;setProtocolVersion},ph=V([W(`light`),W(`dark`)]).describe(`Color theme preference for the host environment.`),mh=V([W(`inline`),W(`fullscreen`),W(`pip`)]).describe(`Display mode for UI presentation.`),hh=H(V([W(`--color-background-primary`),W(`--color-background-secondary`),W(`--color-background-tertiary`),W(`--color-background-inverse`),W(`--color-background-ghost`),W(`--color-background-info`),W(`--color-background-danger`),W(`--color-background-success`),W(`--color-background-warning`),W(`--color-background-disabled`),W(`--color-text-primary`),W(`--color-text-secondary`),W(`--color-text-tertiary`),W(`--color-text-inverse`),W(`--color-text-ghost`),W(`--color-text-info`),W(`--color-text-danger`),W(`--color-text-success`),W(`--color-text-warning`),W(`--color-text-disabled`),W(`--color-border-primary`),W(`--color-border-secondary`),W(`--color-border-tertiary`),W(`--color-border-inverse`),W(`--color-border-ghost`),W(`--color-border-info`),W(`--color-border-danger`),W(`--color-border-success`),W(`--color-border-warning`),W(`--color-border-disabled`),W(`--color-ring-primary`),W(`--color-ring-secondary`),W(`--color-ring-inverse`),W(`--color-ring-info`),W(`--color-ring-danger`),W(`--color-ring-success`),W(`--color-ring-warning`),W(`--font-sans`),W(`--font-mono`),W(`--font-weight-normal`),W(`--font-weight-medium`),W(`--font-weight-semibold`),W(`--font-weight-bold`),W(`--font-text-xs-size`),W(`--font-text-sm-size`),W(`--font-text-md-size`),W(`--font-text-lg-size`),W(`--font-heading-xs-size`),W(`--font-heading-sm-size`),W(`--font-heading-md-size`),W(`--font-heading-lg-size`),W(`--font-heading-xl-size`),W(`--font-heading-2xl-size`),W(`--font-heading-3xl-size`),W(`--font-text-xs-line-height`),W(`--font-text-sm-line-height`),W(`--font-text-md-line-height`),W(`--font-text-lg-line-height`),W(`--font-heading-xs-line-height`),W(`--font-heading-sm-line-height`),W(`--font-heading-md-line-height`),W(`--font-heading-lg-line-height`),W(`--font-heading-xl-line-height`),W(`--font-heading-2xl-line-height`),W(`--font-heading-3xl-line-height`),W(`--border-radius-xs`),W(`--border-radius-sm`),W(`--border-radius-md`),W(`--border-radius-lg`),W(`--border-radius-xl`),W(`--border-radius-full`),W(`--border-width-regular`),W(`--shadow-hairline`),W(`--shadow-sm`),W(`--shadow-md`),W(`--shadow-lg`)]).describe(`CSS variable keys available to MCP apps for theming.`).describe(`Style variables for theming MCP apps.
423
423
 
424
424
  Individual style keys are optional - hosts may provide any subset of these values.
425
425
  Values are strings containing CSS values (colors, sizes, font stacks, etc.).
426
426
 
427
427
  Note: This type uses \`Record<K, string | undefined>\` rather than \`Partial<Record<K, string>>\`
428
- for compatibility with Zod schema generation. Both are functionally equivalent for validation.`),V([M(),Hu()]).describe(`Style variables for theming MCP apps.
428
+ for compatibility with Zod schema generation. Both are functionally equivalent for validation.`),V([N(),Hu()]).describe(`Style variables for theming MCP apps.
429
429
 
430
430
  Individual style keys are optional - hosts may provide any subset of these values.
431
431
  Values are strings containing CSS values (colors, sizes, font stacks, etc.).
@@ -437,10 +437,10 @@ Individual style keys are optional - hosts may provide any subset of these value
437
437
  Values are strings containing CSS values (colors, sizes, font stacks, etc.).
438
438
 
439
439
  Note: This type uses \`Record<K, string | undefined>\` rather than \`Partial<Record<K, string>>\`
440
- for compatibility with Zod schema generation. Both are functionally equivalent for validation.`);z({method:W(`ui/open-link`),params:z({url:M().describe(`URL to open in the host's browser`)})});var mh=z({isError:I().optional().describe(`True if the host failed to open the URL (e.g., due to security policy).`)}).passthrough(),hh=z({isError:I().optional().describe(`True if the download failed (e.g., user cancelled or host denied).`)}).passthrough(),gh=z({isError:I().optional().describe(`True if the host rejected or failed to deliver the message.`)}).passthrough();z({method:W(`ui/notifications/sandbox-proxy-ready`),params:z({})});var _h=z({connectDomains:R(M()).optional().describe(`Origins for network requests (fetch/XHR/WebSocket).
440
+ for compatibility with Zod schema generation. Both are functionally equivalent for validation.`);z({method:W(`ui/open-link`),params:z({url:N().describe(`URL to open in the host's browser`)})});var gh=z({isError:I().optional().describe(`True if the host failed to open the URL (e.g., due to security policy).`)}).passthrough(),_h=z({isError:I().optional().describe(`True if the download failed (e.g., user cancelled or host denied).`)}).passthrough(),vh=z({isError:I().optional().describe(`True if the host rejected or failed to deliver the message.`)}).passthrough();z({method:W(`ui/notifications/sandbox-proxy-ready`),params:z({})});var yh=z({connectDomains:R(N()).optional().describe(`Origins for network requests (fetch/XHR/WebSocket).
441
441
 
442
442
  - Maps to CSP \`connect-src\` directive
443
- - Empty or omitted → no network connections (secure default)`),resourceDomains:R(M()).optional().describe("Origins for static resources (images, scripts, stylesheets, fonts, media).\n\n- Maps to CSP `img-src`, `script-src`, `style-src`, `font-src`, `media-src` directives\n- Wildcard subdomains supported: `https://*.example.com`\n- Empty or omitted → no network resources (secure default)"),frameDomains:R(M()).optional().describe("Origins for nested iframes.\n\n- Maps to CSP `frame-src` directive\n- Empty or omitted → no nested iframes allowed (`frame-src 'none'`)"),baseUriDomains:R(M()).optional().describe("Allowed base URIs for the document.\n\n- Maps to CSP `base-uri` directive\n- Empty or omitted → only same origin allowed (`base-uri 'self'`)")}),vh=z({camera:z({}).optional().describe(`Request camera access.
443
+ - Empty or omitted → no network connections (secure default)`),resourceDomains:R(N()).optional().describe("Origins for static resources (images, scripts, stylesheets, fonts, media).\n\n- Maps to CSP `img-src`, `script-src`, `style-src`, `font-src`, `media-src` directives\n- Wildcard subdomains supported: `https://*.example.com`\n- Empty or omitted → no network resources (secure default)"),frameDomains:R(N()).optional().describe("Origins for nested iframes.\n\n- Maps to CSP `frame-src` directive\n- Empty or omitted → no nested iframes allowed (`frame-src 'none'`)"),baseUriDomains:R(N()).optional().describe("Allowed base URIs for the document.\n\n- Maps to CSP `base-uri` directive\n- Empty or omitted → only same origin allowed (`base-uri 'self'`)")}),bh=z({camera:z({}).optional().describe(`Request camera access.
444
444
 
445
445
  Maps to Permission Policy \`camera\` feature.`),microphone:z({}).optional().describe(`Request microphone access.
446
446
 
@@ -448,7 +448,7 @@ Maps to Permission Policy \`microphone\` feature.`),geolocation:z({}).optional()
448
448
 
449
449
  Maps to Permission Policy \`geolocation\` feature.`),clipboardWrite:z({}).optional().describe(`Request clipboard write access.
450
450
 
451
- Maps to Permission Policy \`clipboard-write\` feature.`)});z({method:W(`ui/notifications/size-changed`),params:z({width:F().optional().describe(`New width in pixels.`),height:F().optional().describe(`New height in pixels.`)})});var yh=z({method:W(`ui/notifications/tool-input`),params:z({arguments:H(M(),L().describe(`Complete tool call arguments as key-value pairs.`)).optional().describe(`Complete tool call arguments as key-value pairs.`)})}),bh=z({method:W(`ui/notifications/tool-input-partial`),params:z({arguments:H(M(),L().describe(`Partial tool call arguments (incomplete, may change).`)).optional().describe(`Partial tool call arguments (incomplete, may change).`)})}),xh=z({method:W(`ui/notifications/tool-cancelled`),params:z({reason:M().optional().describe(`Optional reason for the cancellation (e.g., "user action", "timeout").`)})}),Sh=z({fonts:M().optional()}),Ch=z({variables:ph.optional().describe(`CSS variables for theming the app.`),css:Sh.optional().describe(`CSS blocks that apps can inject.`)}),wh=z({method:W(`ui/resource-teardown`),params:z({})});H(M(),L());var Th=z({text:z({}).optional().describe(`Host supports text content blocks.`),image:z({}).optional().describe(`Host supports image content blocks.`),audio:z({}).optional().describe(`Host supports audio content blocks.`),resource:z({}).optional().describe(`Host supports resource content blocks.`),resourceLink:z({}).optional().describe(`Host supports resource link content blocks.`),structuredContent:z({}).optional().describe(`Host supports structured content.`)});z({method:W(`ui/notifications/request-teardown`),params:z({}).optional()});var Eh=z({experimental:z({}).optional().describe(`Experimental features (structure TBD).`),openLinks:z({}).optional().describe(`Host supports opening external URLs.`),downloadFile:z({}).optional().describe(`Host supports file downloads via ui/download-file.`),serverTools:z({listChanged:I().optional().describe(`Host supports tools/list_changed notifications.`)}).optional().describe(`Host can proxy tool calls to the MCP server.`),serverResources:z({listChanged:I().optional().describe(`Host supports resources/list_changed notifications.`)}).optional().describe(`Host can proxy resource reads to the MCP server.`),logging:z({}).optional().describe(`Host accepts log messages.`),sandbox:z({permissions:vh.optional().describe(`Permissions granted by the host (camera, microphone, geolocation).`),csp:_h.optional().describe(`CSP domains approved by the host.`)}).optional().describe(`Sandbox configuration applied by the host.`),updateModelContext:Th.optional().describe(`Host accepts context updates (ui/update-model-context) to be included in the model's context for future turns.`),message:Th.optional().describe(`Host supports receiving content messages (ui/message) from the view.`),sampling:z({tools:z({}).optional().describe("Host supports tool use via `tools` and `toolChoice` parameters.")}).optional().describe("Host supports LLM sampling (sampling/createMessage) from the view.\nMirrors the MCP `ClientCapabilities.sampling` shape so hosts can pass it through.")}),Dh=z({experimental:z({}).optional().describe(`Experimental features (structure TBD).`),tools:z({listChanged:I().optional().describe(`App supports tools/list_changed notifications.`)}).optional().describe(`App exposes MCP-style tools that the host can call.`),availableDisplayModes:R(fh).optional().describe(`Display modes the app supports.`)});z({method:W(`ui/notifications/initialized`),params:z({}).optional()}),z({csp:_h.optional().describe(`Content Security Policy configuration for UI resources.`),permissions:vh.optional().describe(`Sandbox permissions requested by the UI resource.`),domain:M().optional().describe(`Dedicated origin for view sandbox.
451
+ Maps to Permission Policy \`clipboard-write\` feature.`)});z({method:W(`ui/notifications/size-changed`),params:z({width:F().optional().describe(`New width in pixels.`),height:F().optional().describe(`New height in pixels.`)})});var xh=z({method:W(`ui/notifications/tool-input`),params:z({arguments:H(N(),L().describe(`Complete tool call arguments as key-value pairs.`)).optional().describe(`Complete tool call arguments as key-value pairs.`)})}),Sh=z({method:W(`ui/notifications/tool-input-partial`),params:z({arguments:H(N(),L().describe(`Partial tool call arguments (incomplete, may change).`)).optional().describe(`Partial tool call arguments (incomplete, may change).`)})}),Ch=z({method:W(`ui/notifications/tool-cancelled`),params:z({reason:N().optional().describe(`Optional reason for the cancellation (e.g., "user action", "timeout").`)})}),wh=z({fonts:N().optional()}),Th=z({variables:hh.optional().describe(`CSS variables for theming the app.`),css:wh.optional().describe(`CSS blocks that apps can inject.`)}),Eh=z({method:W(`ui/resource-teardown`),params:z({})});H(N(),L());var Dh=z({text:z({}).optional().describe(`Host supports text content blocks.`),image:z({}).optional().describe(`Host supports image content blocks.`),audio:z({}).optional().describe(`Host supports audio content blocks.`),resource:z({}).optional().describe(`Host supports resource content blocks.`),resourceLink:z({}).optional().describe(`Host supports resource link content blocks.`),structuredContent:z({}).optional().describe(`Host supports structured content.`)});z({method:W(`ui/notifications/request-teardown`),params:z({}).optional()});var Oh=z({experimental:z({}).optional().describe(`Experimental features (structure TBD).`),openLinks:z({}).optional().describe(`Host supports opening external URLs.`),downloadFile:z({}).optional().describe(`Host supports file downloads via ui/download-file.`),serverTools:z({listChanged:I().optional().describe(`Host supports tools/list_changed notifications.`)}).optional().describe(`Host can proxy tool calls to the MCP server.`),serverResources:z({listChanged:I().optional().describe(`Host supports resources/list_changed notifications.`)}).optional().describe(`Host can proxy resource reads to the MCP server.`),logging:z({}).optional().describe(`Host accepts log messages.`),sandbox:z({permissions:bh.optional().describe(`Permissions granted by the host (camera, microphone, geolocation).`),csp:yh.optional().describe(`CSP domains approved by the host.`)}).optional().describe(`Sandbox configuration applied by the host.`),updateModelContext:Dh.optional().describe(`Host accepts context updates (ui/update-model-context) to be included in the model's context for future turns.`),message:Dh.optional().describe(`Host supports receiving content messages (ui/message) from the view.`),sampling:z({tools:z({}).optional().describe("Host supports tool use via `tools` and `toolChoice` parameters.")}).optional().describe("Host supports LLM sampling (sampling/createMessage) from the view.\nMirrors the MCP `ClientCapabilities.sampling` shape so hosts can pass it through.")}),kh=z({experimental:z({}).optional().describe(`Experimental features (structure TBD).`),tools:z({listChanged:I().optional().describe(`App supports tools/list_changed notifications.`)}).optional().describe(`App exposes MCP-style tools that the host can call.`),availableDisplayModes:R(mh).optional().describe(`Display modes the app supports.`)});z({method:W(`ui/notifications/initialized`),params:z({}).optional()}),z({csp:yh.optional().describe(`Content Security Policy configuration for UI resources.`),permissions:bh.optional().describe(`Sandbox permissions requested by the UI resource.`),domain:N().optional().describe(`Dedicated origin for view sandbox.
452
452
 
453
453
  Useful when views need stable, dedicated origins for OAuth callbacks, CORS policies, or API key allowlists.
454
454
 
@@ -462,18 +462,35 @@ Boolean requesting whether a visible border and background is provided by the ho
462
462
 
463
463
  - \`true\`: request visible border + background
464
464
  - \`false\`: request no visible border + background
465
- - omitted: host decides border`)}),z({method:W(`ui/request-display-mode`),params:z({mode:fh.describe(`The display mode being requested.`)})});var Oh=z({mode:fh.describe(`The display mode that was actually set. May differ from requested if not supported.`)}).passthrough(),kh=V([W(`model`),W(`app`)]).describe(`Tool visibility scope - who can access the tool.`);z({resourceUri:M().optional(),visibility:R(kh).optional().describe(`Who can access this tool. Default: ["model", "app"]
465
+ - omitted: host decides border`)}),z({method:W(`ui/request-display-mode`),params:z({mode:mh.describe(`The display mode being requested.`)})});var Ah=z({mode:mh.describe(`The display mode that was actually set. May differ from requested if not supported.`)}).passthrough(),jh=V([W(`model`),W(`app`)]).describe(`Tool visibility scope - who can access the tool.`);z({resourceUri:N().optional(),visibility:R(jh).optional().describe(`Who can access this tool. Default: ["model", "app"]
466
466
  - "model": Tool visible to and callable by the agent
467
- - "app": Tool callable by the app from this server only`),csp:Yu().optional(),permissions:Yu().optional()}),z({mimeTypes:R(M()).optional().describe('Array of supported MIME types for UI resources.\nMust include `"text/html;profile=mcp-app"` for MCP Apps support.')}),z({method:W(`ui/download-file`),params:z({contents:R(V([tm,nm])).describe(`Resource contents to download — embedded (inline data) or linked (host fetches). Uses standard MCP resource types.`)})}),z({method:W(`ui/message`),params:z({role:W(`user`).describe(`Message role, currently only "user" is supported.`),content:R(rm).describe(`Message content blocks (text, image, etc.).`)})}),z({method:W(`ui/notifications/sandbox-resource-ready`),params:z({html:M().describe(`HTML content to load into the inner iframe.`),sandbox:M().optional().describe(`Optional override for the inner iframe's sandbox attribute.`),csp:_h.optional().describe(`CSP configuration from resource metadata.`),permissions:vh.optional().describe(`Sandbox permissions from resource metadata.`)})});var Ah=z({method:W(`ui/notifications/tool-result`),params:fm.describe(`Standard MCP tool execution result.`)}),jh=z({toolInfo:z({id:Mf.optional().describe(`JSON-RPC id of the tools/call request.`),tool:lm.describe(`Tool definition including name, inputSchema, etc.`)}).optional().describe(`Metadata of the tool call that instantiated this App.`),theme:dh.optional().describe(`Current color theme preference.`),styles:Ch.optional().describe(`Style configuration for theming the app.`),displayMode:fh.optional().describe(`How the UI is currently displayed.`),availableDisplayModes:R(fh).optional().describe(`Display modes the host supports.`),containerDimensions:V([z({height:F().describe(`Fixed container height in pixels.`)}),z({maxHeight:V([F(),Hu()]).optional().describe(`Maximum container height in pixels.`)})]).and(V([z({width:F().describe(`Fixed container width in pixels.`)}),z({maxWidth:V([F(),Hu()]).optional().describe(`Maximum container width in pixels.`)})])).optional().describe(`Container dimensions. Represents the dimensions of the iframe or other
468
- container holding the app. Specify either width or maxWidth, and either height or maxHeight.`),locale:M().optional().describe(`User's language and region preference in BCP 47 format.`),timeZone:M().optional().describe(`User's timezone in IANA format.`),userAgent:M().optional().describe(`Host application identifier.`),platform:V([W(`web`),W(`desktop`),W(`mobile`)]).optional().describe(`Platform type for responsive design decisions.`),deviceCapabilities:z({touch:I().optional().describe(`Whether the device supports touch input.`),hover:I().optional().describe(`Whether the device supports hover interactions.`)}).optional().describe(`Device input capabilities.`),safeAreaInsets:z({top:F().describe(`Top safe area inset in pixels.`),right:F().describe(`Right safe area inset in pixels.`),bottom:F().describe(`Bottom safe area inset in pixels.`),left:F().describe(`Left safe area inset in pixels.`)}).optional().describe(`Mobile safe area boundaries in pixels.`)}).passthrough(),Mh=z({method:W(`ui/notifications/host-context-changed`),params:jh.describe(`Partial context update containing only changed fields.`)});z({method:W(`ui/update-model-context`),params:z({content:R(rm).optional().describe(`Context content blocks (text, image, etc.).`),structuredContent:H(M(),L().describe(`Structured content for machine-readable context data.`)).optional().describe(`Structured content for machine-readable context data.`)})}),z({method:W(`ui/initialize`),params:z({appInfo:qf.describe(`App identification (name and version).`),appCapabilities:Dh.describe(`Features and capabilities this app provides.`),protocolVersion:M().describe(`Protocol version this app supports.`)})});var Nh=z({protocolVersion:M().describe(`Negotiated protocol version string (e.g., "2025-11-21").`),hostInfo:qf.describe(`Host application identification and version.`),hostCapabilities:Eh.describe(`Features and capabilities provided by the host.`),hostContext:jh.describe(`Rich context about the host environment.`)}).passthrough(),Ph={target:`draft-2020-12`};async function Fh(e,t){let n=e[`~standard`];if(n.jsonSchema)return n.jsonSchema[t](Ph);if(n.vendor===`zod`){let{z:n}=await sh(async()=>{let{z:e}=await Promise.resolve().then(()=>Cf);return{z:e}},__VITE_PRELOAD__);return n.toJSONSchema(e,{io:t})}throw Error(`Schema (vendor: ${n.vendor}) does not implement Standard JSON Schema (~standard.jsonSchema). Use a library that does (zod v4, ArkType, Valibot) or wrap your schema accordingly.`)}async function Ih(e,t,n=``){let r=await e[`~standard`].validate(t);if(r.issues){let e=r.issues.map(e=>{let t=e.path?.map(e=>typeof e==`object`?e.key:e).join(`.`);return t?`${t}: ${e.message}`:e.message}).join(`; `);throw Error(n+e)}return r.value}var Lh=class e extends ch{_appInfo;_capabilities;options;_hostCapabilities;_hostInfo;_hostContext;_registeredTools={};_initializedSent=!1;_assertInitialized(e){if(this._initializedSent)return;let t=`[ext-apps] App.${e}() called before connect() completed the ui/initialize handshake. Await app.connect() before calling this method, or move data loading to an ontoolresult handler.`;if(this.options?.strict)throw Error(t);console.warn(`${t}. This will throw in a future release.`)}eventSchemas={toolinput:yh,toolinputpartial:bh,toolresult:Ah,toolcancelled:xh,hostcontextchanged:Mh};static ONE_SHOT_EVENTS=new Set([`toolinput`,`toolinputpartial`,`toolresult`,`toolcancelled`]);_everHadListener=new Set;_assertHandlerTiming(t){if(!e.ONE_SHOT_EVENTS.has(t)||this._everHadListener.has(t)||(this._everHadListener.add(t),!this._initializedSent))return;let n=`[ext-apps] "${String(t)}" handler registered after connect() completed the ui/initialize handshake. The host may have already sent this notification. Register handlers before calling app.connect().`;if(this.options?.strict)throw Error(n);console.warn(n)}setEventHandler(e,t){t&&this._assertHandlerTiming(e),super.setEventHandler(e,t)}addEventListener(e,t){this._assertHandlerTiming(e),super.addEventListener(e,t)}onEventDispatch(e,t){e===`hostcontextchanged`&&(this._hostContext={...this._hostContext,...t})}constructor(e,t={},n={autoResize:!0}){super(n),this._appInfo=e,this._capabilities=t,this.options=n,n.allowUnsafeEval||l({jitless:!0}),this.setRequestHandler(rp,e=>(console.log(`Received ping:`,e.params),{})),this.setEventHandler(`hostcontextchanged`,void 0)}registerCapabilities(e){if(this.transport)throw Error(`Cannot register capabilities after transport is established`);this._capabilities=rh(this._capabilities,e)}registerTool(e,t,n){if(this._registeredTools[e])throw Error(`Tool ${e} is already registered`);let r=this,i=()=>{r._initializedSent&&r._capabilities.tools?.listChanged&&r.sendToolListChanged()},a=t.inputSchema!==void 0,o={title:t.title,description:t.description,inputSchema:t.inputSchema,outputSchema:t.outputSchema,annotations:t.annotations,_meta:t._meta,enabled:!0,enable(){this.enabled=!0,i()},disable(){this.enabled=!1,i()},update(e){Object.assign(this,e),i()},remove(){r._registeredTools[e]===o&&(delete r._registeredTools[e],i())},handler:async(t,r)=>{if(!o.enabled)throw Error(`Tool ${e} is disabled`);let i;if(a){let a=o.inputSchema;i=await n(a?await Ih(a,t??{},`Invalid input for tool ${e}: `):t??{},r)}else i=await n(r);return o.outputSchema&&!i.isError&&(i.structuredContent=await Ih(o.outputSchema,i.structuredContent,`Invalid output for tool ${e}: `)),i}};return this._registeredTools[e]=o,!this._capabilities.tools&&!this.transport&&this.registerCapabilities({tools:{listChanged:!0}}),this.ensureToolHandlersInitialized(),i(),o}_toolHandlersInitialized=!1;ensureToolHandlersInitialized(){this._toolHandlersInitialized||(this._toolHandlersInitialized=!0,this.oncalltool=async(e,t)=>{let n=this._registeredTools[e.name];if(!n)throw Error(`Tool ${e.name} not found`);return n.handler(e.arguments,t)},this.onlisttools=async(e,t)=>({tools:await Promise.all(Object.entries(this._registeredTools).filter(([e,t])=>t.enabled).map(async([e,t])=>{let n={name:e,title:t.title,description:t.description,inputSchema:t.inputSchema?await Fh(t.inputSchema,`input`):{type:`object`,properties:{}}};return t.outputSchema&&(n.outputSchema=await Fh(t.outputSchema,`output`)),t.annotations&&(n.annotations=t.annotations),t._meta&&(n._meta=t._meta),n}))}))}async sendToolListChanged(e={}){this._assertInitialized(`sendToolListChanged`),await this.notification({method:`notifications/tools/list_changed`,params:e})}getHostCapabilities(){return this._hostCapabilities}getHostVersion(){return this._hostInfo}getHostContext(){return this._hostContext}get ontoolinput(){return this.getEventHandler(`toolinput`)}set ontoolinput(e){this.setEventHandler(`toolinput`,e)}get ontoolinputpartial(){return this.getEventHandler(`toolinputpartial`)}set ontoolinputpartial(e){this.setEventHandler(`toolinputpartial`,e)}get ontoolresult(){return this.getEventHandler(`toolresult`)}set ontoolresult(e){this.setEventHandler(`toolresult`,e)}get ontoolcancelled(){return this.getEventHandler(`toolcancelled`)}set ontoolcancelled(e){this.setEventHandler(`toolcancelled`,e)}get onhostcontextchanged(){return this.getEventHandler(`hostcontextchanged`)}set onhostcontextchanged(e){this.setEventHandler(`hostcontextchanged`,e)}_onteardown;get onteardown(){return this._onteardown}set onteardown(e){this.warnIfRequestHandlerReplaced(`onteardown`,this._onteardown,e),this._onteardown=e,this.replaceRequestHandler(wh,(e,t)=>{if(!this._onteardown)throw Error(`No onteardown handler set`);return this._onteardown(e.params,t)})}_oncalltool;get oncalltool(){return this._oncalltool}set oncalltool(e){this.warnIfRequestHandlerReplaced(`oncalltool`,this._oncalltool,e),this._oncalltool=e,this.replaceRequestHandler(mm,(e,t)=>{if(!this._oncalltool)throw Error(`No oncalltool handler set`);return this._oncalltool(e.params,t)})}_onlisttools;get onlisttools(){return this._onlisttools}set onlisttools(e){this.warnIfRequestHandlerReplaced(`onlisttools`,this._onlisttools,e),this._onlisttools=e,this.replaceRequestHandler(um,(e,t)=>{if(!this._onlisttools)throw Error(`No onlisttools handler set`);return this._onlisttools(e.params,t)})}assertCapabilityForMethod(e){switch(e){case`sampling/createMessage`:if(!this._hostCapabilities?.sampling)throw Error(`Host does not support sampling (required for ${e})`);break}}assertRequestHandlerCapability(e){switch(e){case`tools/call`:case`tools/list`:if(!this._capabilities.tools)throw Error(`Client does not support tool capability (required for ${e})`);return;case`ping`:case`ui/resource-teardown`:return;default:throw Error(`No handler for method ${e} registered`)}}assertNotificationCapability(e){}assertTaskCapability(e){throw Error(`Tasks are not supported in MCP Apps`)}assertTaskHandlerCapability(e){throw Error(`Task handlers are not supported in MCP Apps`)}async callServerTool(e,t){if(this._assertInitialized(`callServerTool`),typeof e==`string`)throw Error(`callServerTool() expects an object as its first argument, but received a string ("${e}"). Did you mean: callServerTool({ name: "${e}", arguments: { ... } })?`);return await this.request({method:`tools/call`,params:e},fm,{onprogress:()=>{},resetTimeoutOnProgress:!0,...t})}async readServerResource(e,t){return this._assertInitialized(`readServerResource`),await this.request({method:`resources/read`,params:e},Lp,t)}async listServerResources(e,t){return this._assertInitialized(`listServerResources`),await this.request({method:`resources/list`,params:e},jp,t)}async createSamplingMessage(e,t){this._assertInitialized(`createSamplingMessage`);let n=e.tools?Am:km;return await this.request({method:`sampling/createMessage`,params:e},n,t)}sendMessage(e,t){return this._assertInitialized(`sendMessage`),this.request({method:`ui/message`,params:e},gh,t)}sendLog(e){return this.notification({method:`notifications/message`,params:e})}updateModelContext(e,t){return this._assertInitialized(`updateModelContext`),this.request({method:`ui/update-model-context`,params:e},Hf,t)}openLink(e,t){return this._assertInitialized(`openLink`),this.request({method:`ui/open-link`,params:e},mh,t)}sendOpenLink=this.openLink;downloadFile(e,t){return this._assertInitialized(`downloadFile`),this.request({method:`ui/download-file`,params:e},hh,t)}requestTeardown(e={}){return this.notification({method:`ui/notifications/request-teardown`,params:e})}requestDisplayMode(e,t){return this._assertInitialized(`requestDisplayMode`),this.request({method:`ui/request-display-mode`,params:e},Oh,t)}sendSizeChanged(e){return this.notification({method:`ui/notifications/size-changed`,params:e})}setupSizeChangedNotifications(){let e=!1,t=0,n=0,r=()=>{e||(e=!0,requestAnimationFrame(()=>{e=!1;let r=document.documentElement,i=r.style.height;r.style.height=`max-content`;let a=Math.ceil(r.getBoundingClientRect().height);r.style.height=i;let o=Math.ceil(window.innerWidth);(o!==t||a!==n)&&(t=o,n=a,this.sendSizeChanged({width:o,height:a}))}))};r();let i=new ResizeObserver(r);return i.observe(document.documentElement),i.observe(document.body),()=>i.disconnect()}async connect(e=new uh(window.parent,window.parent),t){if(this.transport)throw Error(`App is already connected. Call close() before connecting again.`);this._initializedSent=!1,await super.connect(e);try{let e=await this.request({method:`ui/initialize`,params:{appCapabilities:this._capabilities,appInfo:this._appInfo,protocolVersion:lh}},Nh,t);if(e===void 0)throw Error(`Server sent invalid initialize result: ${e}`);this._hostCapabilities=e.hostCapabilities,this._hostInfo=e.hostInfo,this._hostContext=e.hostContext,await this.notification({method:`ui/notifications/initialized`}),this._initializedSent=!0,this.options?.autoResize&&this.setupSizeChangedNotifications()}catch(e){throw this.close(),e}}},Rh=250,zh=250,Bh=185,Vh=220,Hh=100,Uh=14,Wh=20,Gh=5;function Kh(e,t,n){let r=-(e-n+180)*Math.PI/180;return{x:Rh+t*Math.cos(r),y:zh+t*Math.sin(r)}}function qh(e){return document.createElementNS(`http://www.w3.org/2000/svg`,e)}var Jh=document.getElementById(`tooltip`);function Yh(e,t,n,r,i){Jh.innerHTML=`
467
+ - "app": Tool callable by the app from this server only`),csp:Yu().optional(),permissions:Yu().optional()}),z({mimeTypes:R(N()).optional().describe('Array of supported MIME types for UI resources.\nMust include `"text/html;profile=mcp-app"` for MCP Apps support.')}),z({method:W(`ui/download-file`),params:z({contents:R(V([rm,im])).describe(`Resource contents to download — embedded (inline data) or linked (host fetches). Uses standard MCP resource types.`)})}),z({method:W(`ui/message`),params:z({role:W(`user`).describe(`Message role, currently only "user" is supported.`),content:R(am).describe(`Message content blocks (text, image, etc.).`)})}),z({method:W(`ui/notifications/sandbox-resource-ready`),params:z({html:N().describe(`HTML content to load into the inner iframe.`),sandbox:N().optional().describe(`Optional override for the inner iframe's sandbox attribute.`),csp:yh.optional().describe(`CSP configuration from resource metadata.`),permissions:bh.optional().describe(`Sandbox permissions from resource metadata.`)})});var Mh=z({method:W(`ui/notifications/tool-result`),params:mm.describe(`Standard MCP tool execution result.`)}),Nh=z({toolInfo:z({id:Pf.optional().describe(`JSON-RPC id of the tools/call request.`),tool:dm.describe(`Tool definition including name, inputSchema, etc.`)}).optional().describe(`Metadata of the tool call that instantiated this App.`),theme:ph.optional().describe(`Current color theme preference.`),styles:Th.optional().describe(`Style configuration for theming the app.`),displayMode:mh.optional().describe(`How the UI is currently displayed.`),availableDisplayModes:R(mh).optional().describe(`Display modes the host supports.`),containerDimensions:V([z({height:F().describe(`Fixed container height in pixels.`)}),z({maxHeight:V([F(),Hu()]).optional().describe(`Maximum container height in pixels.`)})]).and(V([z({width:F().describe(`Fixed container width in pixels.`)}),z({maxWidth:V([F(),Hu()]).optional().describe(`Maximum container width in pixels.`)})])).optional().describe(`Container dimensions. Represents the dimensions of the iframe or other
468
+ container holding the app. Specify either width or maxWidth, and either height or maxHeight.`),locale:N().optional().describe(`User's language and region preference in BCP 47 format.`),timeZone:N().optional().describe(`User's timezone in IANA format.`),userAgent:N().optional().describe(`Host application identifier.`),platform:V([W(`web`),W(`desktop`),W(`mobile`)]).optional().describe(`Platform type for responsive design decisions.`),deviceCapabilities:z({touch:I().optional().describe(`Whether the device supports touch input.`),hover:I().optional().describe(`Whether the device supports hover interactions.`)}).optional().describe(`Device input capabilities.`),safeAreaInsets:z({top:F().describe(`Top safe area inset in pixels.`),right:F().describe(`Right safe area inset in pixels.`),bottom:F().describe(`Bottom safe area inset in pixels.`),left:F().describe(`Left safe area inset in pixels.`)}).optional().describe(`Mobile safe area boundaries in pixels.`)}).passthrough(),Ph=z({method:W(`ui/notifications/host-context-changed`),params:Nh.describe(`Partial context update containing only changed fields.`)});z({method:W(`ui/update-model-context`),params:z({content:R(am).optional().describe(`Context content blocks (text, image, etc.).`),structuredContent:H(N(),L().describe(`Structured content for machine-readable context data.`)).optional().describe(`Structured content for machine-readable context data.`)})}),z({method:W(`ui/initialize`),params:z({appInfo:Yf.describe(`App identification (name and version).`),appCapabilities:kh.describe(`Features and capabilities this app provides.`),protocolVersion:N().describe(`Protocol version this app supports.`)})});var Fh=z({protocolVersion:N().describe(`Negotiated protocol version string (e.g., "2025-11-21").`),hostInfo:Yf.describe(`Host application identification and version.`),hostCapabilities:Oh.describe(`Features and capabilities provided by the host.`),hostContext:Nh.describe(`Rich context about the host environment.`)}).passthrough(),Ih={target:`draft-2020-12`};async function Lh(e,t){let n=e[`~standard`];if(n.jsonSchema)return n.jsonSchema[t](Ih);if(n.vendor===`zod`){let{z:n}=await lh(async()=>{let{z:e}=await Promise.resolve().then(()=>Cf);return{z:e}},__VITE_PRELOAD__);return n.toJSONSchema(e,{io:t})}throw Error(`Schema (vendor: ${n.vendor}) does not implement Standard JSON Schema (~standard.jsonSchema). Use a library that does (zod v4, ArkType, Valibot) or wrap your schema accordingly.`)}async function Rh(e,t,n=``){let r=await e[`~standard`].validate(t);if(r.issues){let e=r.issues.map(e=>{let t=e.path?.map(e=>typeof e==`object`?e.key:e).join(`.`);return t?`${t}: ${e.message}`:e.message}).join(`; `);throw Error(n+e)}return r.value}var zh=class e extends uh{_appInfo;_capabilities;options;_hostCapabilities;_hostInfo;_hostContext;_registeredTools={};_initializedSent=!1;_assertInitialized(e){if(this._initializedSent)return;let t=`[ext-apps] App.${e}() called before connect() completed the ui/initialize handshake. Await app.connect() before calling this method, or move data loading to an ontoolresult handler.`;if(this.options?.strict)throw Error(t);console.warn(`${t}. This will throw in a future release.`)}eventSchemas={toolinput:xh,toolinputpartial:Sh,toolresult:Mh,toolcancelled:Ch,hostcontextchanged:Ph};static ONE_SHOT_EVENTS=new Set([`toolinput`,`toolinputpartial`,`toolresult`,`toolcancelled`]);_everHadListener=new Set;_assertHandlerTiming(t){if(!e.ONE_SHOT_EVENTS.has(t)||this._everHadListener.has(t)||(this._everHadListener.add(t),!this._initializedSent))return;let n=`[ext-apps] "${String(t)}" handler registered after connect() completed the ui/initialize handshake. The host may have already sent this notification. Register handlers before calling app.connect().`;if(this.options?.strict)throw Error(n);console.warn(n)}setEventHandler(e,t){t&&this._assertHandlerTiming(e),super.setEventHandler(e,t)}addEventListener(e,t){this._assertHandlerTiming(e),super.addEventListener(e,t)}onEventDispatch(e,t){e===`hostcontextchanged`&&(this._hostContext={...this._hostContext,...t})}constructor(e,t={},n={autoResize:!0}){super(n),this._appInfo=e,this._capabilities=t,this.options=n,n.allowUnsafeEval||l({jitless:!0}),this.setRequestHandler(ap,e=>(console.log(`Received ping:`,e.params),{})),this.setEventHandler(`hostcontextchanged`,void 0)}registerCapabilities(e){if(this.transport)throw Error(`Cannot register capabilities after transport is established`);this._capabilities=ah(this._capabilities,e)}registerTool(e,t,n){if(this._registeredTools[e])throw Error(`Tool ${e} is already registered`);let r=this,i=()=>{r._initializedSent&&r._capabilities.tools?.listChanged&&r.sendToolListChanged()},a=t.inputSchema!==void 0,o={title:t.title,description:t.description,inputSchema:t.inputSchema,outputSchema:t.outputSchema,annotations:t.annotations,_meta:t._meta,enabled:!0,enable(){this.enabled=!0,i()},disable(){this.enabled=!1,i()},update(e){Object.assign(this,e),i()},remove(){r._registeredTools[e]===o&&(delete r._registeredTools[e],i())},handler:async(t,r)=>{if(!o.enabled)throw Error(`Tool ${e} is disabled`);let i;if(a){let a=o.inputSchema;i=await n(a?await Rh(a,t??{},`Invalid input for tool ${e}: `):t??{},r)}else i=await n(r);return o.outputSchema&&!i.isError&&(i.structuredContent=await Rh(o.outputSchema,i.structuredContent,`Invalid output for tool ${e}: `)),i}};return this._registeredTools[e]=o,!this._capabilities.tools&&!this.transport&&this.registerCapabilities({tools:{listChanged:!0}}),this.ensureToolHandlersInitialized(),i(),o}_toolHandlersInitialized=!1;ensureToolHandlersInitialized(){this._toolHandlersInitialized||(this._toolHandlersInitialized=!0,this.oncalltool=async(e,t)=>{let n=this._registeredTools[e.name];if(!n)throw Error(`Tool ${e.name} not found`);return n.handler(e.arguments,t)},this.onlisttools=async(e,t)=>({tools:await Promise.all(Object.entries(this._registeredTools).filter(([e,t])=>t.enabled).map(async([e,t])=>{let n={name:e,title:t.title,description:t.description,inputSchema:t.inputSchema?await Lh(t.inputSchema,`input`):{type:`object`,properties:{}}};return t.outputSchema&&(n.outputSchema=await Lh(t.outputSchema,`output`)),t.annotations&&(n.annotations=t.annotations),t._meta&&(n._meta=t._meta),n}))}))}async sendToolListChanged(e={}){this._assertInitialized(`sendToolListChanged`),await this.notification({method:`notifications/tools/list_changed`,params:e})}getHostCapabilities(){return this._hostCapabilities}getHostVersion(){return this._hostInfo}getHostContext(){return this._hostContext}get ontoolinput(){return this.getEventHandler(`toolinput`)}set ontoolinput(e){this.setEventHandler(`toolinput`,e)}get ontoolinputpartial(){return this.getEventHandler(`toolinputpartial`)}set ontoolinputpartial(e){this.setEventHandler(`toolinputpartial`,e)}get ontoolresult(){return this.getEventHandler(`toolresult`)}set ontoolresult(e){this.setEventHandler(`toolresult`,e)}get ontoolcancelled(){return this.getEventHandler(`toolcancelled`)}set ontoolcancelled(e){this.setEventHandler(`toolcancelled`,e)}get onhostcontextchanged(){return this.getEventHandler(`hostcontextchanged`)}set onhostcontextchanged(e){this.setEventHandler(`hostcontextchanged`,e)}_onteardown;get onteardown(){return this._onteardown}set onteardown(e){this.warnIfRequestHandlerReplaced(`onteardown`,this._onteardown,e),this._onteardown=e,this.replaceRequestHandler(Eh,(e,t)=>{if(!this._onteardown)throw Error(`No onteardown handler set`);return this._onteardown(e.params,t)})}_oncalltool;get oncalltool(){return this._oncalltool}set oncalltool(e){this.warnIfRequestHandlerReplaced(`oncalltool`,this._oncalltool,e),this._oncalltool=e,this.replaceRequestHandler(gm,(e,t)=>{if(!this._oncalltool)throw Error(`No oncalltool handler set`);return this._oncalltool(e.params,t)})}_onlisttools;get onlisttools(){return this._onlisttools}set onlisttools(e){this.warnIfRequestHandlerReplaced(`onlisttools`,this._onlisttools,e),this._onlisttools=e,this.replaceRequestHandler(fm,(e,t)=>{if(!this._onlisttools)throw Error(`No onlisttools handler set`);return this._onlisttools(e.params,t)})}assertCapabilityForMethod(e){switch(e){case`sampling/createMessage`:if(!this._hostCapabilities?.sampling)throw Error(`Host does not support sampling (required for ${e})`);break}}assertRequestHandlerCapability(e){switch(e){case`tools/call`:case`tools/list`:if(!this._capabilities.tools)throw Error(`Client does not support tool capability (required for ${e})`);return;case`ping`:case`ui/resource-teardown`:return;default:throw Error(`No handler for method ${e} registered`)}}assertNotificationCapability(e){}assertTaskCapability(e){throw Error(`Tasks are not supported in MCP Apps`)}assertTaskHandlerCapability(e){throw Error(`Task handlers are not supported in MCP Apps`)}async callServerTool(e,t){if(this._assertInitialized(`callServerTool`),typeof e==`string`)throw Error(`callServerTool() expects an object as its first argument, but received a string ("${e}"). Did you mean: callServerTool({ name: "${e}", arguments: { ... } })?`);return await this.request({method:`tools/call`,params:e},mm,{onprogress:()=>{},resetTimeoutOnProgress:!0,...t})}async readServerResource(e,t){return this._assertInitialized(`readServerResource`),await this.request({method:`resources/read`,params:e},zp,t)}async listServerResources(e,t){return this._assertInitialized(`listServerResources`),await this.request({method:`resources/list`,params:e},Np,t)}async createSamplingMessage(e,t){this._assertInitialized(`createSamplingMessage`);let n=e.tools?Mm:jm;return await this.request({method:`sampling/createMessage`,params:e},n,t)}sendMessage(e,t){return this._assertInitialized(`sendMessage`),this.request({method:`ui/message`,params:e},vh,t)}sendLog(e){return this.notification({method:`notifications/message`,params:e})}updateModelContext(e,t){return this._assertInitialized(`updateModelContext`),this.request({method:`ui/update-model-context`,params:e},Wf,t)}openLink(e,t){return this._assertInitialized(`openLink`),this.request({method:`ui/open-link`,params:e},gh,t)}sendOpenLink=this.openLink;downloadFile(e,t){return this._assertInitialized(`downloadFile`),this.request({method:`ui/download-file`,params:e},_h,t)}requestTeardown(e={}){return this.notification({method:`ui/notifications/request-teardown`,params:e})}requestDisplayMode(e,t){return this._assertInitialized(`requestDisplayMode`),this.request({method:`ui/request-display-mode`,params:e},Ah,t)}sendSizeChanged(e){return this.notification({method:`ui/notifications/size-changed`,params:e})}setupSizeChangedNotifications(){let e=!1,t=0,n=0,r=()=>{e||(e=!0,requestAnimationFrame(()=>{e=!1;let r=document.documentElement,i=r.style.height;r.style.height=`max-content`;let a=Math.ceil(r.getBoundingClientRect().height);r.style.height=i;let o=Math.ceil(window.innerWidth);(o!==t||a!==n)&&(t=o,n=a,this.sendSizeChanged({width:o,height:a}))}))};r();let i=new ResizeObserver(r);return i.observe(document.documentElement),i.observe(document.body),()=>i.disconnect()}async connect(e=new fh(window.parent,window.parent),t){if(this.transport)throw Error(`App is already connected. Call close() before connecting again.`);this._initializedSent=!1,await super.connect(e);try{let e=await this.request({method:`ui/initialize`,params:{appCapabilities:this._capabilities,appInfo:this._appInfo,protocolVersion:dh}},Fh,t);if(e===void 0)throw Error(`Server sent invalid initialize result: ${e}`);this._hostCapabilities=e.hostCapabilities,this._hostInfo=e.hostInfo,this._hostContext=e.hostContext,await this.notification({method:`ui/notifications/initialized`}),this._initializedSent=!0,this.options?.autoResize&&this.setupSizeChangedNotifications()}catch(e){throw this.close(),e}}},Bh=250,Vh=250,Hh=240,Uh=204,Wh=190,Gh=159,Kh=140,qh=134,Jh=15,Yh=20;function Q(e,t,n){let r=-(e-n+180)*Math.PI/180;return{x:Bh+t*Math.cos(r),y:Vh+t*Math.sin(r)}}function $(e){return document.createElementNS(`http://www.w3.org/2000/svg`,e)}var Xh={sun:`☉`,moon:`☽`,mercury:`☿`,venus:`♀`,mars:`♂`,jupiter:`♃`,saturn:`♄`,uranus:`♅`,neptune:`♆`,pluto:`♇`,"north node":`☊`,"south node":`☋`,chiron:`⚷`,"true node":`☊`},Zh=[`♈`,`♉`,`♊`,`♋`,`♌`,`♍`,`♎`,`♏`,`♐`,`♑`,`♒`,`♓`],Qh=[`Aries`,`Taurus`,`Gemini`,`Cancer`,`Leo`,`Virgo`,`Libra`,`Scorpio`,`Sagittarius`,`Capricorn`,`Aquarius`,`Pisces`],$h={conjunction:`☌`,opposition:`☍`,trine:`△`,square:`□`,sextile:`⚹`,quincunx:`⚻`,semisquare:`∠`},eg={conjunction:`#9a7fd4`,opposition:`#e05252`,trine:`#52a8e0`,square:`#e08a52`,sextile:`#52c07a`,quincunx:`#c0b052`,semisquare:`#b07a5a`},tg=[`#e8854c`,`#7aaa6a`,`#5aaad0`,`#8878c8`,`#e8854c`,`#7aaa6a`,`#5aaad0`,`#8878c8`,`#e8854c`,`#7aaa6a`,`#5aaad0`,`#8878c8`],ng=new Set([`sun`,`moon`,`mercury`,`venus`,`mars`,`jupiter`,`saturn`,`uranus`,`neptune`,`pluto`,`chiron`,`north node`,`south node`,`true node`]);function rg(e){let t=(e%360+360)%360,n=Math.floor(t/30),r=Math.floor(t%30);return`${r}°${Math.floor((t%30-r)*60).toString().padStart(2,`0`)}′ ${Qh[n]}`}function ig(e){return e.charAt(0).toUpperCase()+e.slice(1)}function ag(e){return Array.isArray(e)?e:e&&typeof e==`object`?Object.entries(e).filter(([e])=>ng.has(e.toLowerCase())).map(([e,t])=>({name:e.toLowerCase(),longitude:t.longitude??t.lon??0,speed:t.longitude_speed??t.speed,retrograde:!!(t.is_retrograde??t.retrograde),sign:t.sign_name??t.sign,house:t.house})):[]}var og=document.getElementById(`tooltip`);function sg(e,t,n,r,i){og.innerHTML=`
469
469
  <div class="tooltip-title">${n}</div>
470
470
  <div class="tooltip-detail">${r}</div>
471
471
  ${i?`<div class="tooltip-hint">${i}</div>`:``}
472
- `;let a=e+14,o=t+10;a+220>window.innerWidth&&(a=e-220-8),o+80>window.innerHeight&&(o=t-80-8),Jh.style.left=`${a}px`,Jh.style.top=`${o}px`,Jh.classList.add(`visible`)}function Xh(){Jh.classList.remove(`visible`)}var Zh={sun:`☉`,moon:`☽`,mercury:`☿`,venus:`♀`,mars:`♂`,jupiter:`♃`,saturn:`♄`,uranus:`♅`,neptune:`♆`,pluto:`♇`,"north node":`☊`,"south node":`☋`,chiron:`⚷`,"true node":`☊`},Qh={aries:`♈`,taurus:`♉`,gemini:`♊`,cancer:`♋`,leo:`♌`,virgo:`♍`,libra:`♎`,scorpio:`♏`,sagittarius:`♐`,capricorn:`♑`,aquarius:`♒`,pisces:`♓`},$h={conjunction:`☌`,opposition:`☍`,trine:`△`,square:`□`,sextile:`⚹`,quincunx:`⚻`,semisquare:`∠`};function eg(e){let t=[`Aries`,`Taurus`,`Gemini`,`Cancer`,`Leo`,`Virgo`,`Libra`,`Scorpio`,`Sagittarius`,`Capricorn`,`Aquarius`,`Pisces`],n=Math.floor((e%360+360)%360/30),r=Math.floor((e%360+360)%360%30);return`${r}°${Math.floor(((e%360+360)%360%30-r)*60).toString().padStart(2,`0`)}′ ${t[n]}`}function tg(e,t,n,r,i){e.innerHTML=``;let a=t._svg_base;if(!a){e.innerHTML=`<div class="error-state"><div class="error-icon">⚠️</div><p>No chart visual available.</p></div>`;return}e.insertAdjacentHTML(`beforeend`,a);let o=e.querySelector(`svg`);if(!o)return;o.setAttribute(`width`,`100%`),o.setAttribute(`height`,`100%`),o.style.display=`block`;let s=document.createElementNS(`http://www.w3.org/2000/svg`,`svg`);s.setAttribute(`viewBox`,`0 0 500 500`),s.setAttribute(`width`,`100%`),s.setAttribute(`height`,`100%`),s.style.cssText=`position:absolute;top:0;left:0;pointer-events:none;`,e.style.position=`relative`,e.appendChild(s);let c=t.houses?.[0]?.cusp_lon??0,l=t.planets??[];for(let e of l){let{x:t,y:r}=Kh(e.longitude,Bh,c),i=qh(`circle`);i.setAttribute(`cx`,String(Math.round(t))),i.setAttribute(`cy`,String(Math.round(r))),i.setAttribute(`r`,String(Uh)),i.setAttribute(`class`,`hit-region planet-hit`),i.style.pointerEvents=`all`;let a=Zh[e.name.toLowerCase()]??`★`,o=`${eg(e.longitude)}${e.house?` · H${e.house}`:``}${e.retrograde?` ℞`:``}`;i.addEventListener(`mouseenter`,t=>{Yh(t.clientX,t.clientY,`${a} ${ng(e.name)}`,o,`Click for interpretation`)}),i.addEventListener(`mousemove`,t=>{Yh(t.clientX,t.clientY,`${a} ${ng(e.name)}`,o,`Click for interpretation`)}),i.addEventListener(`mouseleave`,Xh),i.addEventListener(`click`,()=>{Xh(),n(e)}),s.appendChild(i)}let u=t.houses??[];for(let e of u){let t=u[e.number%12],{x:n,y:i}=Kh(e.cusp_lon,Hh,c),{x:a,y:o}=Kh(e.cusp_lon,Bh,c),l=qh(`line`);l.setAttribute(`x1`,String(Math.round(n))),l.setAttribute(`y1`,String(Math.round(i))),l.setAttribute(`x2`,String(Math.round(a))),l.setAttribute(`y2`,String(Math.round(o))),l.setAttribute(`stroke-width`,String(Wh)),l.setAttribute(`class`,`hit-region`),l.style.pointerEvents=`all`;let d=`${Qh[e.sign?.toLowerCase()??``]??e.sign??``} ${e.sign??``} · ${eg(e.cusp_lon)}`,f=t?.cusp_lon,p=f==null?``:` · ${Math.round((f-e.cusp_lon+360)%360)}°`;if(l.addEventListener(`mouseenter`,t=>{Yh(t.clientX,t.clientY,`House ${e.number}`,d+p,`Click for meaning`)}),l.addEventListener(`mousemove`,t=>{Yh(t.clientX,t.clientY,`House ${e.number}`,d+p,`Click for meaning`)}),l.addEventListener(`mouseleave`,Xh),l.addEventListener(`click`,()=>{Xh(),r(e)}),s.appendChild(l),t){let{x:t,y:n}=Kh(e.cusp_lon+(f-e.cusp_lon+360)%360/2,Vh,c),i=qh(`circle`);i.setAttribute(`cx`,String(Math.round(t))),i.setAttribute(`cy`,String(Math.round(n))),i.setAttribute(`r`,`14`),i.setAttribute(`class`,`hit-region`),i.style.pointerEvents=`all`,i.addEventListener(`mouseenter`,t=>Yh(t.clientX,t.clientY,`House ${e.number}`,d,`Click for meaning`)),i.addEventListener(`mousemove`,t=>Yh(t.clientX,t.clientY,`House ${e.number}`,d,`Click for meaning`)),i.addEventListener(`mouseleave`,Xh),i.addEventListener(`click`,()=>{Xh(),r(e)}),s.appendChild(i)}}let d=t.aspects??[];for(let e of d){let t=l.find(t=>t.name.toLowerCase()===e.planet1.toLowerCase()),n=l.find(t=>t.name.toLowerCase()===e.planet2.toLowerCase());if(!t||!n)continue;let{x:r,y:a}=Kh(t.longitude,Hh,c),{x:o,y:u}=Kh(n.longitude,Hh,c),d=qh(`line`);d.setAttribute(`x1`,String(Math.round(r))),d.setAttribute(`y1`,String(Math.round(a))),d.setAttribute(`x2`,String(Math.round(o))),d.setAttribute(`y2`,String(Math.round(u))),d.setAttribute(`stroke-width`,String(Gh+8)),d.setAttribute(`class`,`hit-region aspect-hit`),d.style.pointerEvents=`all`;let f=Zh[t.name.toLowerCase()]??t.name,p=Zh[n.name.toLowerCase()]??n.name,ee=`${f} ${$h[e.type?.toLowerCase()??``]??e.type??``} ${p} · ${e.orb?.toFixed(1)??`?`}° orb${e.applying?` (applying)`:` (separating)`}`;d.addEventListener(`mouseenter`,t=>Yh(t.clientX,t.clientY,ng(e.type??`Aspect`),ee,`Click for interpretation`)),d.addEventListener(`mousemove`,t=>Yh(t.clientX,t.clientY,ng(e.type??`Aspect`),ee,`Click for interpretation`)),d.addEventListener(`mouseleave`,Xh),d.addEventListener(`click`,()=>{Xh(),i(e)}),s.appendChild(d)}}function ng(e){return e.charAt(0).toUpperCase()+e.slice(1)}var rg=[{label:`Placidus`,value:`placidus`},{label:`Whole Sign`,value:`whole_sign`},{label:`Equal`,value:`equal`},{label:`Koch`,value:`koch`},{label:`Regio.`,value:`regiomontanus`}];function ig(e,t,n){e.innerHTML=``;let r=document.createElement(`span`);r.className=`controls-label`,r.textContent=`Houses:`,e.appendChild(r);for(let r of rg){let i=document.createElement(`button`);i.className=`control-btn`+(r.value===t?` active`:``),i.textContent=r.label,i.title=`Switch to ${r.label} house system`,i.setAttribute(`data-system`,r.value),i.addEventListener(`click`,()=>{e.querySelectorAll(`.control-btn`).forEach(e=>e.classList.remove(`active`)),i.classList.add(`active`),i.disabled=!0,i.textContent=`${r.label} …`,n(r.value)}),e.appendChild(i)}}function ag(e,t){e.querySelectorAll(`.control-btn`).forEach(e=>{let n=e.getAttribute(`data-system`);e.disabled=!1,e.textContent=rg.find(e=>e.value===n)?.label??n,e.classList.toggle(`active`,n===t)})}var og=document.getElementById(`loading-state`),sg=document.getElementById(`chart-container`),cg=document.getElementById(`controls-panel`),lg=new Lh({name:`Chart Wheel Explorer`,version:`1.0.0`}),ug=null,dg=`placidus`;lg.ontoolresult=e=>{let t=null;for(let n of e.content??[])if(n.type===`text`&&n.text)try{let e=JSON.parse(n.text);if(e&&typeof e==`object`){t=e;break}}catch{}if(!t){_g(`Chart data could not be parsed from the server response.`);return}ug=t,dg=t.house_system??`placidus`,fg(t)};function fg(e){og.setAttribute(`hidden`,``),sg.removeAttribute(`hidden`),cg.removeAttribute(`hidden`),tg(sg,e,pg,mg,hg),ig(cg,dg,gg)}async function pg(e){try{await lg.callServerTool({name:`chart_wheel_on_planet_click`,arguments:{planet:e.name,longitude:e.longitude,sign:e.sign??null,house:e.house??null,retrograde:e.retrograde??!1,speed:e.speed??null}})}catch(e){console.error(`[Chart] Planet click tool call failed:`,e)}}async function mg(e){try{await lg.callServerTool({name:`chart_wheel_on_house_click`,arguments:{house_number:e.number,sign:e.sign??null,cusp_longitude:e.cusp_lon,ruler:e.ruler??null}})}catch(e){console.error(`[Chart] House click tool call failed:`,e)}}async function hg(e){try{await lg.callServerTool({name:`chart_wheel_on_aspect_click`,arguments:{planet1:e.planet1,planet2:e.planet2,aspect_type:e.type??null,orb:e.orb??null,applying:e.applying??null,angle:e.angle??null}})}catch(e){console.error(`[Chart] Aspect click tool call failed:`,e)}}async function gg(e){if(!ug?._birth_params){ag(cg,dg);return}try{let t=await lg.callServerTool({name:`chart_wheel_recalculate`,arguments:{datetime:ug._birth_params.datetime,timezone:ug._birth_params.timezone??void 0,latitude:ug._birth_params.latitude??void 0,longitude:ug._birth_params.longitude??void 0,location:ug._birth_params.location??void 0,house_system:e}}),n=null;for(let e of t.content??[])if(e.type===`text`&&e.text)try{let t=JSON.parse(e.text);if(t&&typeof t==`object`){n=t;break}}catch{}n?(ug=n,dg=e,fg(n)):ag(cg,dg)}catch(e){console.error(`[Chart] Recalculate failed:`,e),ag(cg,dg)}}function _g(e){og.setAttribute(`hidden`,``),sg.innerHTML=`
472
+ `;let a=e+14,o=t+10;a+220>window.innerWidth&&(a=e-220-8),o+80>window.innerHeight&&(o=t-80-8),og.style.left=`${a}px`,og.style.top=`${o}px`,og.classList.add(`visible`)}function cg(){og.classList.remove(`visible`)}var lg=null,ug=null,dg=null,fg=new Map;function pg(){return lg||(lg=document.createElement(`div`),lg.id=`info-panel`,lg.className=`info-panel`,document.body.appendChild(lg),lg)}function mg(e,t){let n=pg(),r=Xh[e.name.toLowerCase()]??`★`,i=Zh[Math.floor((e.longitude%360+360)%360/30)]??``,a=t.filter(t=>t.planet1.toLowerCase()===e.name.toLowerCase()||t.planet2.toLowerCase()===e.name.toLowerCase()).sort((e,t)=>(e.orb??99)-(t.orb??99)),o=a.length?a.map(t=>{let n=t.planet1.toLowerCase()===e.name.toLowerCase()?t.planet2:t.planet1,r=Xh[n.toLowerCase()]??n,i=$h[t.type?.toLowerCase()??``]??t.type??`—`,a=eg[t.type?.toLowerCase()??``]??`#888`,o=t.orb==null?``:`${t.orb.toFixed(1)}°`,s=t.applying?`↗`:`↘`;return`<div class="aspect-row">
473
+ <span class="aspect-dot" style="background:${a}"></span>
474
+ <span class="aspect-sym" style="color:${a}">${i}</span>
475
+ <span class="aspect-other">${r} ${ig(n)}</span>
476
+ <span class="aspect-meta">${o} ${s}</span>
477
+ </div>`}).join(``):`<div class="no-aspects">No major aspects</div>`;n.innerHTML=`
478
+ <div class="info-header">
479
+ <span class="info-glyph">${r}</span>
480
+ <div class="info-title">
481
+ <strong>${ig(e.name)}</strong>${e.retrograde?` <span class='retro'>℞</span>`:``}
482
+ <div class="info-pos">${i} ${rg(e.longitude)}${e.house?` · House ${e.house}`:``}</div>
483
+ </div>
484
+ <button class="info-close" id="info-close-btn">✕</button>
485
+ </div>
486
+ <div class="aspects-title">Aspects</div>
487
+ <div class="aspects-list">${o}</div>
488
+ <div class="info-hint">Click an aspect line for full interpretation</div>
489
+ `,n.classList.add(`visible`),document.getElementById(`info-close-btn`)?.addEventListener(`click`,()=>{hg(),_g()})}function hg(){lg?.classList.remove(`visible`),ug=null}function gg(e){let t=e.toLowerCase();fg.forEach(({vis:e,color:n},r)=>{r.split(`|`).includes(t)?(e.style.stroke=n,e.style.strokeOpacity=`0.9`,e.style.strokeWidth=`2`):(e.style.strokeOpacity=`0.06`,e.style.strokeWidth=`0.8`)}),dg?.querySelectorAll(`.planet-hit`).forEach(e=>e.classList.toggle(`dim`,e.dataset.planet!==t))}function _g(){fg.forEach(({vis:e,color:t})=>{e.style.stroke=t,e.style.strokeOpacity=`0.38`,e.style.strokeWidth=`0.8`}),dg?.querySelectorAll(`.planet-hit`).forEach(e=>e.classList.remove(`dim`))}function vg(e,t,n,r,i){e.innerHTML=``,fg.clear(),ug=null,hg();let a=ag(t.planets),o=t.houses??[],s=t.aspects??[],c=o[0]?.cusp_lon??t.ascendant??0,l=$(`svg`);l.setAttribute(`viewBox`,`0 0 500 500`),l.setAttribute(`width`,`100%`),l.setAttribute(`height`,`100%`),l.style.display=`block`,e.appendChild(l),dg=l;let u=$(`circle`);u.setAttribute(`cx`,`250`),u.setAttribute(`cy`,`250`),u.setAttribute(`r`,`244`),u.style.fill=`var(--bg, #faf9f5)`,u.setAttribute(`stroke`,`#d4cec8`),u.setAttribute(`stroke-width`,`0.5`),u.setAttribute(`pointer-events`,`none`),l.appendChild(u);let d=$(`circle`);d.setAttribute(`cx`,`250`),d.setAttribute(`cy`,`250`),d.setAttribute(`r`,String(Hh)),d.setAttribute(`fill`,`#f2ede6`),d.setAttribute(`stroke`,`#c0b8a8`),d.setAttribute(`stroke-width`,`0.5`),d.setAttribute(`pointer-events`,`none`),l.appendChild(d);let f=$(`circle`);f.setAttribute(`cx`,`250`),f.setAttribute(`cy`,`250`),f.setAttribute(`r`,String(Uh)),f.style.fill=`var(--bg, #faf9f5)`,f.setAttribute(`stroke`,`#c0b8a8`),f.setAttribute(`stroke-width`,`0.5`),f.setAttribute(`pointer-events`,`none`),l.appendChild(f);for(let e=0;e<12;e++){let t=e*30,{x:n,y:r}=Q(t,Uh,c),{x:i,y:a}=Q(t,Hh,c),o=$(`line`);o.setAttribute(`x1`,n.toFixed(1)),o.setAttribute(`y1`,r.toFixed(1)),o.setAttribute(`x2`,i.toFixed(1)),o.setAttribute(`y2`,a.toFixed(1)),o.setAttribute(`stroke`,`#c0b8a8`),o.setAttribute(`stroke-width`,`0.5`),o.setAttribute(`pointer-events`,`none`),l.appendChild(o);let{x:s,y:u}=Q(t+15,(Uh+Hh)/2,c),d=$(`text`);d.setAttribute(`x`,s.toFixed(1)),d.setAttribute(`y`,u.toFixed(1)),d.setAttribute(`text-anchor`,`middle`),d.setAttribute(`dominant-baseline`,`central`),d.setAttribute(`font-size`,`13`),d.setAttribute(`fill`,tg[e]),d.setAttribute(`pointer-events`,`none`),d.style.fontFamily=`serif`,d.textContent=Zh[e],l.appendChild(d)}let p=$(`circle`);if(p.setAttribute(`cx`,`250`),p.setAttribute(`cy`,`250`),p.setAttribute(`r`,String(Kh)),p.style.fill=`var(--bg, #faf9f5)`,p.setAttribute(`stroke`,`#c0b8a8`),p.setAttribute(`stroke-width`,`0.5`),p.setAttribute(`pointer-events`,`none`),l.appendChild(p),o.length>0)for(let e=0;e<o.length;e++){let t=o[e],n=o[(e+1)%o.length],r=[1,4,7,10].includes(t.number),{x:i,y:a}=Q(t.cusp_lon,Kh,c),{x:s,y:u}=Q(t.cusp_lon,Uh,c),d=$(`line`);d.setAttribute(`x1`,i.toFixed(1)),d.setAttribute(`y1`,a.toFixed(1)),d.setAttribute(`x2`,s.toFixed(1)),d.setAttribute(`y2`,u.toFixed(1)),d.setAttribute(`stroke`,r?`#7060b8`:`#a89898`),d.setAttribute(`stroke-width`,r?`1.5`:`0.7`),d.setAttribute(`pointer-events`,`none`),l.appendChild(d);let f=(n.cusp_lon-t.cusp_lon+360)%360,{x:p,y:m}=Q(t.cusp_lon+f/2,Gh,c),h=$(`text`);h.setAttribute(`x`,p.toFixed(1)),h.setAttribute(`y`,m.toFixed(1)),h.setAttribute(`text-anchor`,`middle`),h.setAttribute(`dominant-baseline`,`central`),h.setAttribute(`font-size`,`9`),h.setAttribute(`fill`,r?`#7060b8`:`#90808a`),h.setAttribute(`pointer-events`,`none`),h.textContent=String(t.number),l.appendChild(h)}let m=o.find(e=>e.number===1),h=o.find(e=>e.number===4),g=o.find(e=>e.number===7),_=o.find(e=>e.number===10),v=[{lon:m?.cusp_lon??c,label:`ASC`},{lon:g?.cusp_lon??(c+180)%360,label:`DSC`},{lon:_?.cusp_lon??(c+270)%360,label:`MC`},{lon:h?.cusp_lon??(c+90)%360,label:`IC`}];for(let e of v){let{x:t,y:n}=Q(e.lon,Hh+14,c),r=$(`text`);r.setAttribute(`x`,t.toFixed(1)),r.setAttribute(`y`,n.toFixed(1)),r.setAttribute(`text-anchor`,`middle`),r.setAttribute(`dominant-baseline`,`central`),r.setAttribute(`font-size`,`8`),r.setAttribute(`font-weight`,`700`),r.setAttribute(`fill`,`#7060b8`),r.setAttribute(`pointer-events`,`none`),r.textContent=e.label,l.appendChild(r)}for(let e of s){let t=a.find(t=>t.name.toLowerCase()===e.planet1.toLowerCase()),n=a.find(t=>t.name.toLowerCase()===e.planet2.toLowerCase());if(!t||!n)continue;let r=eg[e.type?.toLowerCase()??``]??`#aaa`,{x:o,y:s}=Q(t.longitude,qh,c),{x:u,y:d}=Q(n.longitude,qh,c),f=$(`line`);f.setAttribute(`x1`,o.toFixed(1)),f.setAttribute(`y1`,s.toFixed(1)),f.setAttribute(`x2`,u.toFixed(1)),f.setAttribute(`y2`,d.toFixed(1)),f.setAttribute(`pointer-events`,`none`),f.style.stroke=r,f.style.strokeOpacity=`0.38`,f.style.strokeWidth=`0.8`,l.appendChild(f);let p=$(`line`);p.setAttribute(`x1`,o.toFixed(1)),p.setAttribute(`y1`,s.toFixed(1)),p.setAttribute(`x2`,u.toFixed(1)),p.setAttribute(`y2`,d.toFixed(1)),p.setAttribute(`stroke`,`transparent`),p.setAttribute(`stroke-width`,`13`),p.setAttribute(`fill`,`none`),p.setAttribute(`class`,`hit-region aspect-hit`),p.style.pointerEvents=`all`;let m=Xh[t.name.toLowerCase()]??t.name,h=Xh[n.name.toLowerCase()]??n.name,g=`${m} ${$h[e.type?.toLowerCase()??``]??e.type??``} ${h} · ${e.orb?.toFixed(1)??`?`}° orb${e.applying?` (applying)`:` (separating)`}`;p.addEventListener(`mouseenter`,t=>sg(t.clientX,t.clientY,ig(e.type??`Aspect`),g,`Click for interpretation`)),p.addEventListener(`mousemove`,t=>sg(t.clientX,t.clientY,ig(e.type??`Aspect`),g,`Click for interpretation`)),p.addEventListener(`mouseleave`,cg),p.addEventListener(`click`,()=>{cg(),i(e)});let _=[e.planet1.toLowerCase(),e.planet2.toLowerCase()].sort().join(`|`);fg.set(_,{vis:f,color:r}),l.appendChild(p)}for(let e of a){let t=Xh[e.name.toLowerCase()]??`★`,{x:r,y:i}=Q(e.longitude,Wh,c),{x:a,y:o}=Q(e.longitude,Uh-5,c),u=$(`circle`);u.setAttribute(`cx`,a.toFixed(1)),u.setAttribute(`cy`,o.toFixed(1)),u.setAttribute(`r`,`2.5`),u.setAttribute(`fill`,`#7060b8`),u.setAttribute(`opacity`,`0.65`),u.setAttribute(`pointer-events`,`none`),l.appendChild(u);let d=$(`text`);d.setAttribute(`x`,r.toFixed(1)),d.setAttribute(`y`,i.toFixed(1)),d.setAttribute(`text-anchor`,`middle`),d.setAttribute(`dominant-baseline`,`central`),d.setAttribute(`font-size`,`15`),d.setAttribute(`pointer-events`,`none`),d.style.fill=`var(--text, #1a1028)`,d.style.fontFamily=`serif`,d.textContent=t,l.appendChild(d);let f=Math.floor((e.longitude%360+360)%360%30),{x:p,y:m}=Q(e.longitude,Wh-17,c),h=$(`text`);if(h.setAttribute(`x`,p.toFixed(1)),h.setAttribute(`y`,m.toFixed(1)),h.setAttribute(`text-anchor`,`middle`),h.setAttribute(`dominant-baseline`,`central`),h.setAttribute(`font-size`,`7`),h.setAttribute(`fill`,`#9080a0`),h.setAttribute(`pointer-events`,`none`),h.textContent=`${f}°`,l.appendChild(h),e.retrograde){let{x:t,y:n}=Q(e.longitude,Wh+14,c),r=$(`text`);r.setAttribute(`x`,t.toFixed(1)),r.setAttribute(`y`,n.toFixed(1)),r.setAttribute(`text-anchor`,`middle`),r.setAttribute(`dominant-baseline`,`central`),r.setAttribute(`font-size`,`8`),r.setAttribute(`fill`,`#e05252`),r.setAttribute(`pointer-events`,`none`),r.textContent=`℞`,l.appendChild(r)}let g=$(`circle`);g.setAttribute(`cx`,r.toFixed(1)),g.setAttribute(`cy`,i.toFixed(1)),g.setAttribute(`r`,String(Jh)),g.setAttribute(`fill`,`transparent`),g.setAttribute(`class`,`hit-region planet-hit`),g.dataset.planet=e.name.toLowerCase(),g.style.pointerEvents=`all`;let _=`${rg(e.longitude)}${e.house?` · H${e.house}`:``}${e.retrograde?` ℞`:``}`;g.addEventListener(`mouseenter`,n=>sg(n.clientX,n.clientY,`${t} ${ig(e.name)}`,_,`Click for aspects`)),g.addEventListener(`mousemove`,n=>sg(n.clientX,n.clientY,`${t} ${ig(e.name)}`,_,`Click for aspects`)),g.addEventListener(`mouseleave`,cg),g.addEventListener(`click`,()=>{if(cg(),ug===e.name.toLowerCase()){_g(),hg();return}ug=e.name.toLowerCase(),gg(e.name),mg(e,s),n(e)}),l.appendChild(g)}for(let e=0;e<o.length;e++){let t=o[e],n=o[(e+1)%o.length],i=Math.floor((t.cusp_lon%360+360)%360/30),a=t.sign??Qh[i]??``,s=`${rg(t.cusp_lon)} · ${a}`,{x:u,y:d}=Q(t.cusp_lon,Kh,c),{x:f,y:p}=Q(t.cusp_lon,Uh,c),m=$(`line`);m.setAttribute(`x1`,u.toFixed(1)),m.setAttribute(`y1`,d.toFixed(1)),m.setAttribute(`x2`,f.toFixed(1)),m.setAttribute(`y2`,p.toFixed(1)),m.setAttribute(`stroke`,`transparent`),m.setAttribute(`stroke-width`,String(Yh)),m.setAttribute(`fill`,`none`),m.setAttribute(`class`,`hit-region`),m.style.pointerEvents=`all`,m.addEventListener(`mouseenter`,e=>sg(e.clientX,e.clientY,`House ${t.number}`,s,`Click for meaning`)),m.addEventListener(`mousemove`,e=>sg(e.clientX,e.clientY,`House ${t.number}`,s,`Click for meaning`)),m.addEventListener(`mouseleave`,cg),m.addEventListener(`click`,()=>{cg(),r(t)}),l.appendChild(m);let h=(n.cusp_lon-t.cusp_lon+360)%360,{x:g,y:_}=Q(t.cusp_lon+h/2,Gh,c),v=$(`circle`);v.setAttribute(`cx`,g.toFixed(1)),v.setAttribute(`cy`,_.toFixed(1)),v.setAttribute(`r`,`14`),v.setAttribute(`fill`,`transparent`),v.setAttribute(`class`,`hit-region`),v.style.pointerEvents=`all`,v.addEventListener(`mouseenter`,e=>sg(e.clientX,e.clientY,`House ${t.number}`,s,`Click for meaning`)),v.addEventListener(`mousemove`,e=>sg(e.clientX,e.clientY,`House ${t.number}`,s,`Click for meaning`)),v.addEventListener(`mouseleave`,cg),v.addEventListener(`click`,()=>{cg(),r(t)}),l.appendChild(v)}document.addEventListener(`click`,e=>{let t=e.target;!t.closest(`.hit-region`)&&!t.closest(`#info-panel`)&&(_g(),hg())},{capture:!1})}var yg=[{label:`Placidus`,value:`placidus`},{label:`Whole Sign`,value:`whole_sign`},{label:`Equal`,value:`equal`},{label:`Koch`,value:`koch`},{label:`Regio.`,value:`regiomontanus`}];function bg(e,t,n){e.innerHTML=``;let r=document.createElement(`span`);r.className=`controls-label`,r.textContent=`Houses:`,e.appendChild(r);for(let r of yg){let i=document.createElement(`button`);i.className=`control-btn`+(r.value===t?` active`:``),i.textContent=r.label,i.title=`Switch to ${r.label} house system`,i.setAttribute(`data-system`,r.value),i.addEventListener(`click`,()=>{e.querySelectorAll(`.control-btn`).forEach(e=>e.classList.remove(`active`)),i.classList.add(`active`),i.disabled=!0,i.textContent=`${r.label} …`,n(r.value)}),e.appendChild(i)}}function xg(e,t){e.querySelectorAll(`.control-btn`).forEach(e=>{let n=e.getAttribute(`data-system`);e.disabled=!1,e.textContent=yg.find(e=>e.value===n)?.label??n,e.classList.toggle(`active`,n===t)})}var Sg=document.getElementById(`loading-state`),Cg=document.getElementById(`chart-container`),wg=document.getElementById(`controls-panel`),Tg=new zh({name:`Chart Wheel Explorer`,version:`1.0.0`}),Eg=null,Dg=`placidus`;Tg.ontoolresult=e=>{let t=null;for(let n of e.content??[])if(n.type===`text`&&n.text)try{let e=JSON.parse(n.text);if(e&&typeof e==`object`){t=e;break}}catch{}if(!t){Ng(`Chart data could not be parsed from the server response.`);return}Eg=t,Dg=t.house_system??`placidus`,Og(t)};function Og(e){Sg.setAttribute(`hidden`,``),Cg.removeAttribute(`hidden`),wg.removeAttribute(`hidden`),vg(Cg,e,kg,Ag,jg),bg(wg,Dg,Mg)}async function kg(e){try{await Tg.callServerTool({name:`chart_wheel_on_planet_click`,arguments:{planet:e.name,longitude:e.longitude,sign:e.sign??null,house:e.house??null,retrograde:e.retrograde??!1,speed:e.speed??null}})}catch(e){console.error(`[Chart] Planet click tool call failed:`,e)}}async function Ag(e){try{await Tg.callServerTool({name:`chart_wheel_on_house_click`,arguments:{house_number:e.number,sign:e.sign??null,cusp_longitude:e.cusp_lon,ruler:e.ruler??null}})}catch(e){console.error(`[Chart] House click tool call failed:`,e)}}async function jg(e){try{await Tg.callServerTool({name:`chart_wheel_on_aspect_click`,arguments:{planet1:e.planet1,planet2:e.planet2,aspect_type:e.type??null,orb:e.orb??null,applying:e.applying??null,angle:e.angle??null}})}catch(e){console.error(`[Chart] Aspect click tool call failed:`,e)}}async function Mg(e){if(!Eg?._birth_params){xg(wg,Dg);return}try{let t=await Tg.callServerTool({name:`chart_wheel_recalculate`,arguments:{datetime:Eg._birth_params.datetime,timezone:Eg._birth_params.timezone??void 0,latitude:Eg._birth_params.latitude??void 0,longitude:Eg._birth_params.longitude??void 0,location:Eg._birth_params.location??void 0,house_system:e}}),n=null;for(let e of t.content??[])if(e.type===`text`&&e.text)try{let t=JSON.parse(e.text);if(t&&typeof t==`object`){n=t;break}}catch{}n?(Eg=n,Dg=e,Og(n)):xg(wg,Dg)}catch(e){console.error(`[Chart] Recalculate failed:`,e),xg(wg,Dg)}}function Ng(e){Sg.setAttribute(`hidden`,``),Cg.innerHTML=`
473
490
  <div class="error-state">
474
491
  <div class="error-icon">⚠️</div>
475
492
  <p>${e}</p>
476
493
  </div>
477
- `,sg.removeAttribute(`hidden`)}lg.connect();</script>
494
+ `,Cg.removeAttribute(`hidden`)}Tg.connect();</script>
478
495
  </body>
479
496
  </html>