@openephemeris/mcp-server 3.23.0 → 3.24.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.
@@ -10,7 +10,7 @@
10
10
  <title>Human Design Bodygraph Explorer</title>
11
11
 
12
12
 
13
- <style>:root{--bg:#010102;--surface:#030408;--surface-2:#080b11;--border:#13161d;--border-strong:#242933;--text:#e2e4e9;--text-secondary:#777a80;--muted:#5b5e62;--gold:#cc9c42;--gold-dim:#7b6540;--gold-glow:rgba(204,156,66,.2);--gold-subtle:rgba(204,156,66,.1);--hd-head:#855dd7;--hd-ajna:#3a61c4;--hd-throat:#94582a;--hd-g:#c99f00;--hd-heart:#cc272e;--hd-spleen:#3d9028;--hd-sp:#cb5a1a;--hd-sacral:#cc243d;--hd-root:#6f3600;--ch-personality:#79a1fc;--ch-design:#ac7d1b;--ch-both:#cc9c42;--ch-inactive:#1f2228;--success:#1da871;--error:#c53443;--radius:10px;--radius-sm:6px;--radius-pill:99px;--shadow-md:0 8px 40px rgba(0,0,0,.65), 0 0 0 1px var(--border-strong);--shadow-gold:0 0 28px rgba(204,156,66,.15), 0 0 0 1px rgba(204,156,66,.2)}@supports (color:color(display-p3 0 0 0)){:root{--bg:color(display-p3 .00306656 .00431968 .00888397);--surface:color(display-p3 .013072 .016989 .0298495);--surface-2:color(display-p3 .0345774 .0431759 .0653236);--border:color(display-p3 .0763929 .0859556 .109705);--border-strong:color(display-p3 .144788 .159634 .196542);--text:color(display-p3 .889546 .895785 .910689);--text-secondary:color(display-p3 .470023 .47923 .50135);--muted:color(display-p3 .359661 .366689 .383567);--gold:color(display-p3 .76996 .617341 .321369);--gold-dim:color(display-p3 .469305 .400291 .270966);--gold-glow:color(display-p3 .76996 .617341 .321369/.2);--gold-subtle:color(display-p3 .76996 .617341 .321369/.1);--hd-head:color(display-p3 .496597 .372031 .817324);--hd-ajna:color(display-p3 .26389 .378111 .742207);--hd-throat:color(display-p3 .548969 .355242 .201432);--hd-g:color(display-p3 .777513 .62422 -.00225984);--hd-heart:color(display-p3 .737101 .219083 .211834);--hd-spleen:color(display-p3 .328385 .55681 .222852);--hd-sp:color(display-p3 .739686 .377576 .178173);--hd-sacral:color(display-p3 .735577 .213396 .258614);--hd-root:color(display-p3 .406873 .223096 .0609673);--ch-personality:color(display-p3 .508025 .628538 .962447);--ch-design:color(display-p3 .645333 .49681 .196492);--ch-both:color(display-p3 .76996 .617341 .321369);--ch-inactive:color(display-p3 .122731 .131518 .153019);--success:color(display-p3 .313719 .651039 .459895);--error:color(display-p3 .710345 .252818 .279408);--shadow-md:0 8px 40px color(display-p3 0 0 0/.65), 0 0 0 1px var(--border-strong);--shadow-gold:0 0 28px color(display-p3 .76996 .617341 .321369/.15), 0 0 0 1px color(display-p3 .76996 .617341 .321369/.2)}}@supports (color:lab(0% 0 0)){:root{--bg:lab(.302122% .0219196 -.522962);--surface:lab(1.18159% .0276566 -1.4848);--surface-2:lab(3.00584% .0228807 -3.15676);--border:lab(7.15581% -.0557452 -5.11242);--border-strong:lab(16.3713% -.0768304 -7.37782);--text:lab(90.6942% -.142396 -2.26941);--text-secondary:lab(51.2352% -.205308 -3.76425);--muted:lab(39.6443% -.165641 -3.01217);--gold:lab(67.5798% 11.9379 52.333);--gold-dim:lab(44.394% 5.21129 24.4453);--gold-glow:lab(67.5798% 11.9379 52.333/.2);--gold-subtle:lab(67.5798% 11.9379 52.333/.1);--hd-head:lab(48.5159% 37.0934 -58.1781);--hd-ajna:lab(42.6654% 12.3083 -56.648);--hd-throat:lab(43.8304% 22.8022 36.6206);--hd-g:lab(67.813% 9.5214 93.33);--hd-heart:lab(45.7636% 63.3818 40.1799);--hd-spleen:lab(53.0764% -40.8778 44.314);--hd-sp:lab(52.4466% 43.5944 55.3775);--hd-sacral:lab(45.6635% 64.206 31.2074);--hd-root:lab(29.855% 23.6799 41.1297);--ch-personality:lab(66.4233% 5.15944 -50.1959);--ch-design:lab(55.9353% 12.6865 55.2442);--ch-both:lab(67.5798% 11.9379 52.333);--ch-inactive:lab(12.9398% -.133917 -4.46223);--success:lab(61.2436% -46.7762 18.3644);--error:lab(45.8893% 57.7361 27.393);--shadow-md:0 8px 40px lab(0% 0 0/.65), 0 0 0 1px var(--border-strong);--shadow-gold:0 0 28px lab(67.5798% 11.9379 52.333/.15), 0 0 0 1px lab(67.5798% 11.9379 52.333/.2)}}@media (prefers-color-scheme:light){:root{--bg:#f4f5f8;--surface:#fbfcfe;--surface-2:#eceef3;--border:#d5d7dd;--border-strong:#babec6;--text:#181b1f;--text-secondary:#4a4d54;--muted:#606369;--gold:#8a6000;--gold-dim:#967c4f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@supports (color:color(display-p3 0 0 0)){:root{--bg:color(display-p3 .956515 .960735 .970805);--surface:color(display-p3 .98376 .986943 .994535);--surface-2:color(display-p3 .928401 .934691 .949715);--border:color(display-p3 .836244 .844458 .864107);--border-strong:color(display-p3 .731542 .743532 .772301);--text:color(display-p3 .096883 .103987 .12134);--text-secondary:color(display-p3 .291758 .301882 .326359);--muted:color(display-p3 .379924 .388781 .410092);--gold:color(display-p3 .524671 .380491 .0387678);--gold-dim:color(display-p3 .572756 .489268 .332751)}}@supports (color:lab(0% 0 0)){:root{--bg:lab(96.503% -.0977516 -1.51461);--surface:lab(98.8273% -.0742972 -1.13657);--surface-2:lab(94.1743% -.142723 -2.26961);--border:lab(86.0453% -.183761 -3.02231);--border-strong:lab(76.7468% -.254452 -4.52154);--text:lab(9.4703% -.11944 -3.722);--text-secondary:lab(32.6639% -.205338 -4.49569);--muted:lab(41.9548% -.197008 -3.7598);--gold:lab(44.2758% 13.6718 62.9124);--gold-dim:lab(53.685% 6.10271 28.558)}}html,body{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}#bodygraph-container{background:var(--surface)}.chart-status,.tooltip{background:rgba(251,252,254,.92);background:color(display-p3 .98376 .986943 .994535/.92);background:lab(98.8273% -.0742972 -1.13657/.92)}#fs-bottom-bar{background:var(--surface-2)}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}[hidden]{display:none!important}html,body{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--bg);height:100%;color:var(--text);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.030'/%3E%3C/svg%3E");font-family:Geist,Space Grotesk,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;line-height:1.5;overflow-x:hidden}#app{flex-direction:column;gap:8px;min-height:0;padding:8px 12px;display:flex}#loading-state{min-height:300px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}#loading-state p{letter-spacing:.06em;text-transform:uppercase;font-size:11px}.spinner{border:2px solid var(--border-strong);border-top-color:var(--gold);border-radius:50%;width:32px;height:32px;animation:1.1s cubic-bezier(.4,0,.6,1) infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#bodygraph-container{border-radius:var(--radius);border:1px solid var(--border-strong);width:100%;max-width:680px;box-shadow:var(--shadow-gold);background:#010102;background:color(display-p3 .00306656 .00431968 .00888397);background:lab(.302122% .0219196 -.522962);margin:0 auto;transition:box-shadow .3s;position:relative;overflow:visible}#bodygraph-container:hover{box-shadow:0 0 40px rgba(204,156,66,.22),0 0 0 1px rgba(204,156,66,.3);box-shadow:0 0 40px color(display-p3 .76996 .617341 .321369/.22),0 0 0 1px color(display-p3 .76996 .617341 .321369/.3);box-shadow:0 0 40px lab(67.5798% 11.9379 52.333/.22),0 0 0 1px lab(67.5798% 11.9379 52.333/.3)}#bodygraph-container svg{width:100%;height:auto;max-height:min(62vh,560px);display:block}.center-group{cursor:pointer;transition:filter .16s}.center-group:hover{filter:brightness(1.2)drop-shadow(0 0 6px rgba(204,156,66,.35));filter:brightness(1.2)drop-shadow(0 0 6px color(display-p3 .76996 .617341 .321369/.35));filter:brightness(1.2)drop-shadow(0 0 6px lab(67.5798% 11.9379 52.333/.35))}.channel-line{cursor:pointer}.channel-line:hover .channel-vis{filter:drop-shadow(0 0 4px var(--gold-glow));stroke:var(--gold)!important;stroke-width:5px!important}.gate-badge{cursor:pointer}.gate-badge:hover circle{stroke:var(--gold)!important;stroke-opacity:1!important}.gate-badge:hover text{fill:var(--gold)!important}#info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);grid-template-columns:1fr 1fr;gap:6px 12px;width:100%;max-width:680px;margin:0 auto;padding:10px 14px;display:grid}.info-row{flex-direction:column;gap:1px;display:flex}.info-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:9px;font-weight:700}.info-value{color:var(--text);font-size:12px;font-weight:500}.channel-legend{flex-wrap:wrap;justify-content:center;gap:12px;width:100%;max-width:680px;margin:0 auto;padding:4px 0;display:flex}.legend-item{color:var(--text-secondary);letter-spacing:.04em;align-items:center;gap:5px;font-size:9px;font-weight:500;display:flex}.legend-swatch{border-radius:2px;flex-shrink:0;width:18px;height:3px}#controls-panel{background:0 0;width:100%;max-width:680px;margin:0 auto;padding:4px 0}.controls-row{align-items:center;gap:6px;display:flex}.controls-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-shrink:0;font-size:9px;font-weight:700}.controls-value{color:var(--text-secondary);font-size:11px}.chart-hint{text-align:center;letter-spacing:.04em;width:100%;max-width:680px;color:var(--muted);margin:0 auto;padding:4px 0 2px;font-size:10px}.error-state{min-height:200px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-icon{opacity:.5;font-size:24px}.error-retry-btn{border:1px solid var(--border,rgba(128,128,160,.3));color:var(--accent,var(--text,inherit));font:inherit;letter-spacing:.02em;cursor:pointer;background:0 0;border-radius:999px;margin-top:4px;padding:7px 20px;font-size:11px;font-weight:600;transition:background .18s,border-color .18s}.error-retry-btn:hover{background:rgba(128,128,160,.12)}@media (max-width:420px){#app{gap:8px;padding:8px}#info-panel{grid-template-columns:1fr}}#bodygraph-container.is-loading{opacity:.55;pointer-events:none;cursor:wait;transition:opacity .15s}.chart-status{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:var(--radius-pill);color:var(--gold);letter-spacing:.04em;z-index:900;opacity:0;pointer-events:none;background:rgba(5,7,13,.92);background:color(display-p3 .0216592 .0280553 .0483601/.92);background:lab(1.95095% .0425801 -2.41514/.92);border:1px solid rgba(204,156,66,.35);border:1px solid color(display-p3 .76996 .617341 .321369/.35);border:1px solid lab(67.5798% 11.9379 52.333/.35);max-height:0;padding:5px 18px;font-size:11px;font-weight:600;transition:max-height .24s cubic-bezier(.16,1,.3,1),opacity .24s,transform .24s cubic-bezier(.16,1,.3,1);position:fixed;top:10px;left:50%;overflow:hidden;transform:translate(-50%)translateY(-10px);box-shadow:0 4px 20px rgba(0,0,0,.5),0 0 0 1px rgba(204,156,66,.08);box-shadow:0 4px 20px color(display-p3 0 0 0/.5),0 0 0 1px color(display-p3 .76996 .617341 .321369/.08);box-shadow:0 4px 20px lab(0% 0 0/.5),0 0 0 1px lab(67.5798% 11.9379 52.333/.08)}.chart-status.visible{opacity:1;max-height:44px;transform:translate(-50%)translateY(0)}@keyframes gold-pulse{0%,to{border-color:rgba(204,156,66,.35);border-color:color(display-p3 .76996 .617341 .321369/.35);border-color:lab(67.5798% 11.9379 52.333/.35)}50%{border-color:rgba(204,156,66,.65);border-color:color(display-p3 .76996 .617341 .321369/.65);border-color:lab(67.5798% 11.9379 52.333/.65)}}.hd-popup{background:var(--surface-2);border:1px solid var(--border-strong);z-index:1000;opacity:0;pointer-events:none;border-radius:12px;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1);position:fixed;box-shadow:0 12px 48px rgba(0,0,0,.7),0 0 0 1px rgba(204,156,66,.15);box-shadow:0 12px 48px color(display-p3 0 0 0/.7),0 0 0 1px color(display-p3 .76996 .617341 .321369/.15);box-shadow:0 12px 48px lab(0% 0 0/.7),0 0 0 1px lab(67.5798% 11.9379 52.333/.15)}.hd-popup.visible{opacity:1;pointer-events:all}.hd-popup-header{align-items:flex-start;gap:10px;display:flex}.hd-popup-icon{color:var(--gold);text-align:center;flex-shrink:0;min-width:28px;font-size:18px;font-weight:700;line-height:1}.hd-popup-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.hd-popup-sub{color:var(--text-secondary);letter-spacing:.01em;margin-top:2px;font-size:11px;font-weight:400}.hd-popup-close{cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:15px;line-height:1;transition:color .12s}.hd-popup-close:hover{color:var(--text)}.hd-popup-body{border-top:1px solid var(--border);flex-direction:column;gap:6px;margin-top:10px;padding-top:10px;display:flex}.hd-popup-row{align-items:baseline;gap:8px;font-size:11px;line-height:1.45;display:flex}.hd-popup-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);flex-shrink:0;min-width:56px;padding-top:1px;font-size:9px;font-weight:700}.hd-popup-val{color:var(--text);font-weight:500}.hd-popup-gates{flex-wrap:wrap;gap:4px;font-weight:500;display:flex}.hd-popup-gate-chip{border:1px solid var(--border-strong);border-radius:var(--radius-pill,99px);background:var(--surface);color:var(--text);white-space:nowrap;padding:1px 7px;font-size:10px;display:inline-block}.hd-popup-note{color:var(--text-secondary);letter-spacing:.01em;margin-top:4px;font-size:10px;font-style:italic;line-height:1.5}.hd-detail-panel{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;flex:1;min-height:0;padding:2px 0 8px;overflow-y:auto}.hd-detail-panel .hd-popup-header{border-bottom:1px solid var(--border);margin-bottom:8px;padding-bottom:8px}.hd-detail-panel .hd-popup-close{opacity:.5}.hd-detail-panel .hd-popup-close:hover{opacity:1;color:var(--text)}.ask-claude-btn{border-radius:var(--radius-sm);width:100%;color:var(--gold);letter-spacing:.04em;cursor:pointer;background:rgba(204,156,66,.12);background:color(display-p3 .76996 .617341 .321369/.12);background:lab(67.5798% 11.9379 52.333/.12);border:1px solid rgba(204,156,66,.4);border:1px solid color(display-p3 .76996 .617341 .321369/.4);border:1px solid lab(67.5798% 11.9379 52.333/.4);justify-content:center;align-items:center;gap:6px;margin-top:12px;padding:9px 16px;font-family:Geist,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:12px;font-weight:600;transition:background .16s,border-color .16s,box-shadow .16s;display:flex}.ask-claude-btn:hover:not(:disabled){background:rgba(204,156,66,.2);background:color(display-p3 .76996 .617341 .321369/.2);background:lab(67.5798% 11.9379 52.333/.2);border-color:rgba(204,156,66,.65);border-color:color(display-p3 .76996 .617341 .321369/.65);border-color:lab(67.5798% 11.9379 52.333/.65);box-shadow:0 0 0 3px rgba(204,156,66,.12);box-shadow:0 0 0 3px color(display-p3 .76996 .617341 .321369/.12);box-shadow:0 0 0 3px lab(67.5798% 11.9379 52.333/.12)}.ask-claude-btn:disabled{opacity:.45;cursor:not-allowed}.ask-claude-btn.sending{color:var(--gold-dim);opacity:.8;cursor:wait;pointer-events:none;background:rgba(204,156,66,.08);background:color(display-p3 .76996 .617341 .321369/.08);background:lab(67.5798% 11.9379 52.333/.08);border-color:rgba(204,156,66,.25);border-color:color(display-p3 .76996 .617341 .321369/.25);border-color:lab(67.5798% 11.9379 52.333/.25)}.ask-claude-btn.sent{color:var(--success);pointer-events:none;background:rgba(29,168,113,.15);background:color(display-p3 .313719 .651039 .459895/.15);background:lab(61.2436% -46.7762 18.3644/.15);border-color:rgba(29,168,113,.5);border-color:color(display-p3 .313719 .651039 .459895/.5);border-color:lab(61.2436% -46.7762 18.3644/.5)}.ask-claude-btn.error{color:var(--error);cursor:pointer;background:rgba(197,52,67,.15);background:color(display-p3 .710345 .252818 .279408/.15);background:lab(45.8893% 57.7361 27.393/.15);border-color:rgba(197,52,67,.5);border-color:color(display-p3 .710345 .252818 .279408/.5);border-color:lab(45.8893% 57.7361 27.393/.5)}.interactive-text{cursor:pointer;transition:color .15s,text-shadow .15s;position:relative}.interactive-text:hover{color:var(--gold);text-shadow:0 0 8px rgba(204,156,66,.4);text-shadow:0 0 8px color(display-p3 .76996 .617341 .321369/.4);text-shadow:0 0 8px lab(67.5798% 11.9379 52.333/.4)}.interactive-text:focus{color:var(--gold);text-shadow:0 0 8px rgba(204,156,66,.6);text-shadow:0 0 8px color(display-p3 .76996 .617341 .321369/.6);text-shadow:0 0 8px lab(67.5798% 11.9379 52.333/.6);outline:none}.planet-activation,.variable-arrow{outline:none;transition:opacity .15s}.planet-activation:hover,.variable-arrow:hover{opacity:.7}.planet-activation:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.variable-arrow:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.center-group:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.gate-badge:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.channel:focus-visible{outline:2px solid var(--gold);outline-offset:4px}[data-gate]:focus-visible{outline:2px solid var(--gold);outline-offset:4px}[data-channel]:focus-visible{outline:2px solid var(--gold);outline-offset:4px}[data-center]:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.tooltip{-webkit-backdrop-filter:blur(14px)saturate(1.6);backdrop-filter:blur(14px)saturate(1.6);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;z-index:1000;opacity:0;background:rgba(7,9,14,.92);background:color(display-p3 .0286832 .0352525 .0537785/.92);background:lab(2.44746% .00379235 -2.33402/.92);max-width:240px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed;box-shadow:0 8px 32px rgba(0,0,0,.55),inset 0 .5px rgba(255,255,255,.04);box-shadow:0 8px 32px color(display-p3 0 0 0/.55),inset 0 .5px color(display-p3 1 1 1/.04);box-shadow:0 8px 32px lab(0% 0 0/.55),inset 0 .5px lab(100% 0 0/.04)}.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(--gold-dim);letter-spacing:.03em;margin-top:4px;font-size:10px}.pan-zoom-controls{z-index:800;flex-direction:column;gap:6px;display:flex;position:absolute;bottom:12px;right:12px}.pan-zoom-controls[hidden]{display:none!important}.pan-btn{background:var(--surface-2);border:1px solid var(--border-strong);color:var(--text);border-radius:var(--radius-sm);cursor:pointer;width:36px;height:36px;box-shadow:var(--shadow-md);justify-content:center;align-items:center;font-family:inherit;font-size:18px;transition:all .15s;display:flex}.pan-btn.reset{width:auto;padding:0 10px;font-size:11px;font-weight:500}.pan-btn:hover{background:var(--surface);border-color:var(--gold-dim);color:var(--gold)}.pan-btn:active{transform:scale(.95)}.pan-btn--fullscreen{width:36px;height:36px}body.is-fullscreen{height:100vh;overflow:hidden}body.is-fullscreen #app{flex-direction:column;gap:0;width:100vw;max-width:100%;height:100vh;padding:0;display:flex;overflow:hidden}body.is-fullscreen #bodygraph-container{min-height:0;max-width:unset;width:100%;height:auto;box-shadow:none;background:0 0;border:none;flex:1;justify-content:center;align-items:center;margin:0;padding:16px 24px 0;display:flex}body.is-fullscreen #loading-state{flex:1;height:auto;min-height:0}body.is-fullscreen #bodygraph-container svg{width:auto;max-width:100%;height:100%;max-height:100%}body.is-fullscreen .pan-zoom-controls{top:16px;right:16px}#fs-bottom-bar{border-top:1px solid var(--border);background:#020306;background:color(display-p3 .0100648 .0127997 .0215356);background:lab(.889429% .0122339 -1.01076);flex-shrink:0;grid-template-rows:1fr;grid-template-columns:220px 1fr 220px;height:240px;min-height:180px;max-height:280px;display:grid}#fs-bottom-bar [data-column=left],#fs-bottom-bar [data-column=right]{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;flex-direction:column;gap:4px;padding:10px 14px 12px;display:flex;overflow-x:hidden;overflow-y:auto}#fs-bottom-bar [data-column=left]{border-right:1px solid var(--border)}#fs-bottom-bar [data-column=center]{pointer-events:none}#fs-bottom-bar [data-column=right]{border-left:1px solid var(--border);overflow-y:auto}#fs-bottom-bar [data-column]>*+*{border-top:1px solid var(--border);margin-top:4px;padding-top:8px}#fs-bottom-bar .hd-action-bar{flex-direction:column;padding:8px 0 0}#fs-bottom-bar .action-btn{justify-content:center;width:100%}.cancel-toast{background:var(--surface-2,#1e1e2e);border:1px solid var(--border-strong,#444);color:var(--text-muted,#aaa);border-radius:var(--radius-sm,6px);opacity:0;z-index:9999;pointer-events:none;box-shadow:var(--shadow-md,0 4px 12px rgba(0,0,0,.3));padding:8px 16px;font-family:inherit;font-size:12px;transition:opacity .3s,transform .3s;position:fixed;bottom:20px;left:50%;transform:translate(-50%)translateY(20px)}.cancel-toast.visible{opacity:1;transform:translate(-50%)translateY(0)}.oe-loader{width:64px;height:64px;stroke:var(--gold);stroke-width:2px;fill:none;stroke-dasharray:200;stroke-dashoffset:200px;filter:drop-shadow(0 0 4px var(--gold-glow));animation:2.5s cubic-bezier(.16,1,.3,1) infinite oe-draw}@keyframes oe-draw{0%{stroke-dashoffset:200px;stroke-opacity:.1}50%{stroke-dashoffset:0;stroke-opacity:1;filter:drop-shadow(0 0 8px var(--gold))}to{stroke-dashoffset:-200px;stroke-opacity:.1}}.info-drawer{background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius);width:100%;box-shadow:var(--shadow-md);opacity:0;pointer-events:none;max-height:0;padding:14px 16px 12px;transition:max-height .26s cubic-bezier(.16,1,.3,1),opacity .2s,padding .2s;position:relative;overflow:hidden}.info-drawer:before{content:"";background:var(--border-strong);border-radius:2px;flex-shrink:0;width:36px;height:4px;margin:0 auto 10px;display:block}.info-drawer.open{opacity:1;pointer-events:all;max-height:500px;padding:14px 16px 12px}.hd-action-bar{flex-wrap:wrap;gap:8px;padding:10px 16px 6px;display:flex}.action-btn{color:var(--gold);letter-spacing:.02em;cursor:pointer;white-space:nowrap;background:rgba(212,175,55,.08);border:1px solid rgba(212,175,55,.3);border-radius:8px;align-items:center;gap:6px;padding:7px 16px;font-size:12px;font-weight:600;transition:background .2s,border-color .2s,transform .1s;display:inline-flex}.action-btn:hover{background:rgba(212,175,55,.15);border-color:rgba(212,175,55,.5);transform:translateY(-1px)}.action-btn:active{background:rgba(212,175,55,.2);transform:translateY(0)}.action-btn--primary{color:var(--gold);background:linear-gradient(135deg,rgba(212,175,55,.2),rgba(180,140,30,.25));border-color:rgba(212,175,55,.5)}.action-btn--primary:hover{background:linear-gradient(135deg,rgba(212,175,55,.3),rgba(180,140,30,.35));border-color:rgba(212,175,55,.7)}@media (prefers-color-scheme:light){:root{--bg:#f7f5f1;--surface:#fff;--surface-2:#f1eee9;--border:#dbd7d0;--border-strong:#bdb6ac;--text:#101215;--text-secondary:#4f5359;--muted:#6c6f73;--gold:#8d5f00;--gold-dim:#6d4b00;--gold-glow:rgba(141,95,0,.25);--gold-subtle:rgba(141,95,0,.1);--success:#007145;--error:#b1002b;--shadow-md:0 4px 24px rgba(0,0,0,.12), 0 0 0 1px var(--border-strong);--shadow-gold:0 0 16px rgba(141,95,0,.18), 0 0 0 1px rgba(141,95,0,.22)}@supports (color:color(display-p3 0 0 0)){:root{--bg:color(display-p3 .967616 .959866 .945308);--surface:color(display-p3 1 1 1);--surface-2:color(display-p3 .943798 .93351 .914195);--border:color(display-p3 .855616 .842987 .819292);--border-strong:color(display-p3 .73602 .716348 .67952);--text:color(display-p3 .0633107 .0687189 .081922);--text-secondary:color(display-p3 .313002 .323251 .348016);--muted:color(display-p3 .426318 .433563 .450948);--gold:color(display-p3 .542549 .371783 -.107551);--gold-dim:color(display-p3 .414099 .299019 .034461);--gold-glow:color(display-p3 .542549 .371783 -.107551/.25);--gold-subtle:color(display-p3 .542549 .371783 -.107551/.1);--success:color(display-p3 -.0793084 .456092 .255685);--error:color(display-p3 .642198 .101724 .18242);--shadow-md:0 4px 24px color(display-p3 0 0 0/.12), 0 0 0 1px var(--border-strong);--shadow-gold:0 0 16px color(display-p3 .542549 .371783 -.107551/.18), 0 0 0 1px color(display-p3 .542549 .371783 -.107551/.22)}}@supports (color:lab(0% 0 0)){:root{--bg:lab(96.5376% .34076 2.2589);--surface:lab(100% 0 0);--surface-2:lab(94.2232% .459731 3.01526);--border:lab(86.1085% .583261 3.77473);--border-strong:lab(74.5232% .975847 6.06879);--text:lab(5.23809% -.0738502 -2.43738);--text-secondary:lab(34.9842% -.210047 -4.49809);--muted:lab(46.6045% -.170082 -3.01461);--gold:lab(44.1995% 17.0662 84.3373);--gold-dim:lab(35.0077% 11.3181 50.9422);--gold-glow:lab(44.1995% 17.0662 84.3373/.25);--gold-subtle:lab(44.1995% 17.0662 84.3373/.1);--success:lab(41.7514% -55.3249 21.5039);--error:lab(37.5238% 64.2774 32.6097);--shadow-md:0 4px 24px lab(0% 0 0/.12), 0 0 0 1px var(--border-strong);--shadow-gold:0 0 16px lab(44.1995% 17.0662 84.3373/.18), 0 0 0 1px lab(44.1995% 17.0662 84.3373/.22)}}html,body{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background-image:none}#bodygraph-container{border-color:var(--border-strong);background:#fff;background:color(display-p3 1 1 1);background:lab(100% 0 0)}.chart-status{background:rgba(247,245,241,.92);background:color(display-p3 .967616 .959866 .945308/.92);background:lab(96.5376% .34076 2.2589/.92);border-color:rgba(141,95,0,.35);border-color:color(display-p3 .542549 .371783 -.107551/.35);border-color:lab(44.1995% 17.0662 84.3373/.35)}.tooltip{border-color:var(--border-strong);background:rgba(255,255,255,.96);background:color(display-p3 1 1 1/.96);background:lab(100% 0 0/.96)}#info-panel{background:var(--surface);border-color:var(--border)}.hd-popup{background:var(--surface);border-color:var(--border-strong);box-shadow:0 12px 48px rgba(0,0,0,.18), 0 0 0 1px var(--border-strong)}@supports (color:color(display-p3 0 0 0)){.hd-popup{box-shadow:0 12px 48px color(display-p3 0 0 0/.18), 0 0 0 1px var(--border-strong)}}@supports (color:lab(0% 0 0)){.hd-popup{box-shadow:0 12px 48px lab(0% 0 0/.18), 0 0 0 1px var(--border-strong)}}#fs-bottom-bar{background:#f7f5f1;background:color(display-p3 .967616 .959866 .945308);background:lab(96.5376% .34076 2.2589);border-top-color:#caced4;border-top-color:color(display-p3 .796183 .806346 .830691);border-top-color:lab(82.5562% -.22167 -3.77336)}#fs-bottom-bar [data-column=left],#fs-bottom-bar [data-column=right]{background:#f1eeea;background:color(display-p3 .941472 .933762 .919279);background:lab(94.2176% .341028 2.25905)}#fs-bottom-bar [data-column=left]{border-right-color:#caced4;border-right-color:color(display-p3 .796183 .806346 .830691);border-right-color:lab(82.5562% -.22167 -3.77336)}#fs-bottom-bar [data-column=right]{border-left-color:#caced4;border-left-color:color(display-p3 .796183 .806346 .830691);border-left-color:lab(82.5562% -.22167 -3.77336)}#fs-bottom-bar [data-column]>*+*{border-top-color:#caced4;border-top-color:color(display-p3 .796183 .806346 .830691);border-top-color:lab(82.5562% -.22167 -3.77336)}}svg.has-highlight [data-center],svg.has-highlight [data-channel],svg.has-highlight [data-gate]{opacity:.45;transition:opacity .2s,filter .2s}svg.has-highlight [data-highlighted=true]{opacity:1;filter:drop-shadow(0 0 4px rgba(212,160,23,.55))}svg.has-highlight [data-highlighted-primary=true]{opacity:1;filter:drop-shadow(0 0 8px rgba(212,160,23,.95))}svg.has-highlight [data-highlighted-primary=true] path,svg.has-highlight [data-highlighted-primary=true] circle,svg.has-highlight [data-highlighted-primary=true] polygon,svg.has-highlight [data-highlighted-primary=true] rect{stroke-width:calc(var(--stroke-w,1.5) * 1.4)}@media (max-width:480px){.pan-zoom-controls{gap:5px}.pan-btn,.pan-btn--fullscreen{background:color-mix(in oklab, var(--surface-2) 72%, transparent);-webkit-backdrop-filter:blur(6px);width:32px;height:32px;font-size:15px}.pan-btn.reset{width:32px;padding:0;font-size:0}.pan-btn.reset:before{content:"⟲";font-size:15px}}.hd-disclaimer{max-width:680px;color:var(--text-secondary);text-align:center;margin:4px auto 0;font-size:10px;line-height:1.5}.param-controls{background:var(--surface);border-top:1px solid var(--border);flex-shrink:0;padding:6px 12px}.param-controls-grid{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.param-group{flex-direction:row;align-items:center;gap:6px;display:flex}.param-group label{text-transform:uppercase;color:var(--text-secondary);letter-spacing:.06em;white-space:nowrap;font-size:10px;font-weight:700}.param-group input[type=date],.param-group input[type=time],.param-group input[type=text]{background:var(--surface-2);border:1px solid var(--border-strong);color:var(--text);color-scheme:inherit;border-radius:var(--radius-sm);width:120px;height:24px;padding:3px 6px;font-family:inherit;font-size:11px}@media (prefers-reduced-motion:no-preference){.param-group input[type=date],.param-group input[type=time],.param-group input[type=text]{transition:border-color .15s}}.param-group input:focus{border-color:var(--gold-dim);outline:none}.loc-searching{border-color:var(--gold-dim)!important}@media (prefers-reduced-motion:no-preference){.loc-searching{animation:1s ease-in-out infinite alternate loc-pulse}}@keyframes loc-pulse{0%{border-color:var(--gold-dim)}to{border-color:rgba(204,156,66,.55);border-color:color(display-p3 .76996 .617341 .321369/.55);border-color:lab(67.5798% 11.9379 52.333/.55)}}.param-group-loc{flex:1;position:relative}.param-group-loc input{width:100%}.loc-suggestions{background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-sm);z-index:100;max-height:200px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px rgba(0,0,0,.35);box-shadow:0 4px 12px color(display-p3 0 0 0/.35);box-shadow:0 4px 12px lab(0% 0 0/.35)}.loc-item{color:var(--text);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid var(--border);padding:8px 10px;font-size:12px;overflow:hidden}.loc-item:last-child{border-bottom:none}@media (prefers-reduced-motion:no-preference){.loc-item{transition:background .1s,color .1s}}.loc-item:hover{background:var(--gold-subtle);color:var(--gold)}.loc-status{color:var(--text-secondary);letter-spacing:.01em;padding:8px 10px;font-size:11px;font-style:italic}.loc-status-error{color:#d76a5a;color:color(display-p3 .788241 .439621 .373983);color:lab(58.1265% 42.6447 29.9439);font-style:normal;font-weight:600}.param-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.param-cost-hint{color:var(--text-secondary);white-space:nowrap;letter-spacing:.02em;font-size:10px}.param-btn-icon{border:1px solid var(--border-strong);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}@media (prefers-reduced-motion:no-preference){.param-btn-icon{transition:background .15s,border-color .15s,color .15s}}.param-btn-icon:hover{background:var(--surface-2);color:var(--text);border-color:var(--gold-dim)}.param-btn-primary{color:var(--gold);border-radius:var(--radius-sm);cursor:pointer;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;background:rgba(204,156,66,.12);background:color(display-p3 .76996 .617341 .321369/.12);background:lab(67.5798% 11.9379 52.333/.12);border:1px solid rgba(204,156,66,.4);border:1px solid color(display-p3 .76996 .617341 .321369/.4);border:1px solid lab(67.5798% 11.9379 52.333/.4);height:24px;padding:3px 10px;font-family:inherit;font-size:10px;font-weight:600}@media (prefers-reduced-motion:no-preference){.param-btn-primary{transition:background .15s,border-color .15s}}.param-btn-primary:hover:not(:disabled){background:rgba(204,156,66,.2);background:color(display-p3 .76996 .617341 .321369/.2);background:lab(67.5798% 11.9379 52.333/.2);border-color:rgba(204,156,66,.65);border-color:color(display-p3 .76996 .617341 .321369/.65);border-color:lab(67.5798% 11.9379 52.333/.65)}.param-btn-primary:disabled{opacity:.5;cursor:not-allowed}@media (prefers-color-scheme:light){.param-group input[type=date],.param-group input[type=time],.param-group input[type=text]{border-color:var(--border-strong);color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fdfcf9;background:color(display-p3 .990365 .986474 .97916);background:lab(98.849% .167578 1.1277)}.loc-suggestions{border-color:var(--border-strong);background:#fdfcf9;background:color(display-p3 .990365 .986474 .97916);background:lab(98.849% .167578 1.1277)}.param-btn-primary{background:rgba(160,112,0,.12);background:color(display-p3 .615135 .441554 -.0204711/.12);background:lab(51.2092% 16.2654 78.3504/.12);border-color:rgba(160,112,0,.4);border-color:color(display-p3 .615135 .441554 -.0204711/.4);border-color:lab(51.2092% 16.2654 78.3504/.4)}.param-btn-primary:hover:not(:disabled){background:rgba(160,112,0,.22);background:color(display-p3 .615135 .441554 -.0204711/.22);background:lab(51.2092% 16.2654 78.3504/.22);border-color:rgba(160,112,0,.65);border-color:color(display-p3 .615135 .441554 -.0204711/.65);border-color:lab(51.2092% 16.2654 78.3504/.65)}}.param-summary-bar{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:baseline;gap:2px 0;margin-bottom:4px;padding:3px 4px 5px;font-size:10px;line-height:1.3;display:flex}.param-summary-bar[hidden]{display:none}.summary-name{color:var(--gold,#d6a54d);letter-spacing:.01em;padding-right:2px;font-size:12px;font-weight:700}@supports (color:color(display-p3 0 0 0)){.summary-name{color:var(--gold,color(display-p3 .808073 .654274 .358094))}}@supports (color:lab(0% 0 0)){.summary-name{color:var(--gold,lab(71.071% 11.7474 51.7651))}}.summary-datetime{font-variant-numeric:tabular-nums;color:var(--text-secondary);align-items:baseline;gap:4px;font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;font-size:11px;display:inline-flex}.summary-time-sep{color:var(--border-strong);opacity:.7;font-family:inherit;font-size:9px}.summary-loc{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:200px;padding-left:2px;font-size:11px;font-style:italic;overflow:hidden}.summary-sep{background:var(--border-strong);opacity:.5;vertical-align:middle;flex-shrink:0;width:1px;height:11px;margin:0 7px;display:inline-block}
13
+ <style>:root{--bg:#010102;--surface:#030408;--surface-2:#080b11;--border:#13161d;--border-strong:#242933;--text:#e2e4e9;--text-secondary:#777a80;--muted:#5b5e62;--gold:#cc9c42;--gold-dim:#7b6540;--gold-glow:rgba(204,156,66,.2);--gold-subtle:rgba(204,156,66,.1);--hd-head:#855dd7;--hd-ajna:#3a61c4;--hd-throat:#94582a;--hd-g:#c99f00;--hd-heart:#cc272e;--hd-spleen:#3d9028;--hd-sp:#cb5a1a;--hd-sacral:#cc243d;--hd-root:#6f3600;--ch-personality:#79a1fc;--ch-design:#ac7d1b;--ch-both:#cc9c42;--ch-inactive:#1f2228;--success:#1da871;--error:#c53443;--radius:10px;--radius-sm:6px;--radius-pill:99px;--shadow-md:0 8px 40px rgba(0,0,0,.65), 0 0 0 1px var(--border-strong);--shadow-gold:0 0 28px rgba(204,156,66,.15), 0 0 0 1px rgba(204,156,66,.2)}@supports (color:color(display-p3 0 0 0)){:root{--bg:color(display-p3 .00306656 .00431968 .00888397);--surface:color(display-p3 .013072 .016989 .0298495);--surface-2:color(display-p3 .0345774 .0431759 .0653236);--border:color(display-p3 .0763929 .0859556 .109705);--border-strong:color(display-p3 .144788 .159634 .196542);--text:color(display-p3 .889546 .895785 .910689);--text-secondary:color(display-p3 .470023 .47923 .50135);--muted:color(display-p3 .359661 .366689 .383567);--gold:color(display-p3 .76996 .617341 .321369);--gold-dim:color(display-p3 .469305 .400291 .270966);--gold-glow:color(display-p3 .76996 .617341 .321369/.2);--gold-subtle:color(display-p3 .76996 .617341 .321369/.1);--hd-head:color(display-p3 .496597 .372031 .817324);--hd-ajna:color(display-p3 .26389 .378111 .742207);--hd-throat:color(display-p3 .548969 .355242 .201432);--hd-g:color(display-p3 .777513 .62422 -.00225984);--hd-heart:color(display-p3 .737101 .219083 .211834);--hd-spleen:color(display-p3 .328385 .55681 .222852);--hd-sp:color(display-p3 .739686 .377576 .178173);--hd-sacral:color(display-p3 .735577 .213396 .258614);--hd-root:color(display-p3 .406873 .223096 .0609673);--ch-personality:color(display-p3 .508025 .628538 .962447);--ch-design:color(display-p3 .645333 .49681 .196492);--ch-both:color(display-p3 .76996 .617341 .321369);--ch-inactive:color(display-p3 .122731 .131518 .153019);--success:color(display-p3 .313719 .651039 .459895);--error:color(display-p3 .710345 .252818 .279408);--shadow-md:0 8px 40px color(display-p3 0 0 0/.65), 0 0 0 1px var(--border-strong);--shadow-gold:0 0 28px color(display-p3 .76996 .617341 .321369/.15), 0 0 0 1px color(display-p3 .76996 .617341 .321369/.2)}}@supports (color:lab(0% 0 0)){:root{--bg:lab(.302122% .0219196 -.522962);--surface:lab(1.18159% .0276566 -1.4848);--surface-2:lab(3.00584% .0228807 -3.15676);--border:lab(7.15581% -.0557452 -5.11242);--border-strong:lab(16.3713% -.0768304 -7.37782);--text:lab(90.6942% -.142396 -2.26941);--text-secondary:lab(51.2352% -.205308 -3.76425);--muted:lab(39.6443% -.165641 -3.01217);--gold:lab(67.5798% 11.9379 52.333);--gold-dim:lab(44.394% 5.21129 24.4453);--gold-glow:lab(67.5798% 11.9379 52.333/.2);--gold-subtle:lab(67.5798% 11.9379 52.333/.1);--hd-head:lab(48.5159% 37.0934 -58.1781);--hd-ajna:lab(42.6654% 12.3083 -56.648);--hd-throat:lab(43.8304% 22.8022 36.6206);--hd-g:lab(67.813% 9.5214 93.33);--hd-heart:lab(45.7636% 63.3818 40.1799);--hd-spleen:lab(53.0764% -40.8778 44.314);--hd-sp:lab(52.4466% 43.5944 55.3775);--hd-sacral:lab(45.6635% 64.206 31.2074);--hd-root:lab(29.855% 23.6799 41.1297);--ch-personality:lab(66.4233% 5.15944 -50.1959);--ch-design:lab(55.9353% 12.6865 55.2442);--ch-both:lab(67.5798% 11.9379 52.333);--ch-inactive:lab(12.9398% -.133917 -4.46223);--success:lab(61.2436% -46.7762 18.3644);--error:lab(45.8893% 57.7361 27.393);--shadow-md:0 8px 40px lab(0% 0 0/.65), 0 0 0 1px var(--border-strong);--shadow-gold:0 0 28px lab(67.5798% 11.9379 52.333/.15), 0 0 0 1px lab(67.5798% 11.9379 52.333/.2)}}@media (prefers-color-scheme:light){:root{--bg:#f4f5f8;--surface:#fbfcfe;--surface-2:#eceef3;--border:#d5d7dd;--border-strong:#babec6;--text:#181b1f;--text-secondary:#4a4d54;--muted:#606369;--gold:#8a6000;--gold-dim:#967c4f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@supports (color:color(display-p3 0 0 0)){:root{--bg:color(display-p3 .956515 .960735 .970805);--surface:color(display-p3 .98376 .986943 .994535);--surface-2:color(display-p3 .928401 .934691 .949715);--border:color(display-p3 .836244 .844458 .864107);--border-strong:color(display-p3 .731542 .743532 .772301);--text:color(display-p3 .096883 .103987 .12134);--text-secondary:color(display-p3 .291758 .301882 .326359);--muted:color(display-p3 .379924 .388781 .410092);--gold:color(display-p3 .524671 .380491 .0387678);--gold-dim:color(display-p3 .572756 .489268 .332751)}}@supports (color:lab(0% 0 0)){:root{--bg:lab(96.503% -.0977516 -1.51461);--surface:lab(98.8273% -.0742972 -1.13657);--surface-2:lab(94.1743% -.142723 -2.26961);--border:lab(86.0453% -.183761 -3.02231);--border-strong:lab(76.7468% -.254452 -4.52154);--text:lab(9.4703% -.11944 -3.722);--text-secondary:lab(32.6639% -.205338 -4.49569);--muted:lab(41.9548% -.197008 -3.7598);--gold:lab(44.2758% 13.6718 62.9124);--gold-dim:lab(53.685% 6.10271 28.558)}}html,body{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}#bodygraph-container{background:var(--surface)}.chart-status,.tooltip{background:rgba(251,252,254,.92);background:color(display-p3 .98376 .986943 .994535/.92);background:lab(98.8273% -.0742972 -1.13657/.92)}#fs-bottom-bar{background:var(--surface-2)}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}[hidden]{display:none!important}html,body{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--bg);height:100%;color:var(--text);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.030'/%3E%3C/svg%3E");font-family:Geist,Space Grotesk,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;line-height:1.5;overflow-x:hidden}#app{flex-direction:column;gap:8px;min-height:0;padding:8px 12px;display:flex}#loading-state{min-height:300px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}#loading-state p{letter-spacing:.06em;text-transform:uppercase;font-size:11px}.spinner{border:2px solid var(--border-strong);border-top-color:var(--gold);border-radius:50%;width:32px;height:32px;animation:1.1s cubic-bezier(.4,0,.6,1) infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#bodygraph-container{border-radius:var(--radius);border:1px solid var(--border-strong);width:100%;max-width:680px;box-shadow:var(--shadow-gold);background:#010102;background:color(display-p3 .00306656 .00431968 .00888397);background:lab(.302122% .0219196 -.522962);margin:0 auto;transition:box-shadow .3s;position:relative;overflow:visible}#bodygraph-container:hover{box-shadow:0 0 40px rgba(204,156,66,.22),0 0 0 1px rgba(204,156,66,.3);box-shadow:0 0 40px color(display-p3 .76996 .617341 .321369/.22),0 0 0 1px color(display-p3 .76996 .617341 .321369/.3);box-shadow:0 0 40px lab(67.5798% 11.9379 52.333/.22),0 0 0 1px lab(67.5798% 11.9379 52.333/.3)}#bodygraph-container svg{width:100%;height:auto;max-height:min(62vh,560px);display:block}.center-group{cursor:pointer;transition:filter .16s}.center-group:hover{filter:brightness(1.2)drop-shadow(0 0 6px rgba(204,156,66,.35));filter:brightness(1.2)drop-shadow(0 0 6px color(display-p3 .76996 .617341 .321369/.35));filter:brightness(1.2)drop-shadow(0 0 6px lab(67.5798% 11.9379 52.333/.35))}.channel-line{cursor:pointer}.channel-line:hover .channel-vis{filter:drop-shadow(0 0 4px var(--gold-glow));stroke:var(--gold)!important;stroke-width:5px!important}.gate-badge{cursor:pointer}.gate-badge:hover circle{stroke:var(--gold)!important;stroke-opacity:1!important}.gate-badge:hover text{fill:var(--gold)!important}#info-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);grid-template-columns:1fr 1fr;gap:6px 12px;width:100%;max-width:680px;margin:0 auto;padding:10px 14px;display:grid}.info-row{flex-direction:column;gap:1px;display:flex}.info-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:9px;font-weight:700}.info-value{color:var(--text);font-size:12px;font-weight:500}.channel-legend{flex-wrap:wrap;justify-content:center;gap:12px;width:100%;max-width:680px;margin:0 auto;padding:4px 0;display:flex}.legend-item{color:var(--text-secondary);letter-spacing:.04em;align-items:center;gap:5px;font-size:9px;font-weight:500;display:flex}.legend-swatch{border-radius:2px;flex-shrink:0;width:18px;height:3px}#controls-panel{background:0 0;width:100%;max-width:680px;margin:0 auto;padding:4px 0}.controls-row{align-items:center;gap:6px;display:flex}.controls-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-shrink:0;font-size:9px;font-weight:700}.controls-value{color:var(--text-secondary);font-size:11px}.chart-hint{text-align:center;letter-spacing:.04em;width:100%;max-width:680px;color:var(--muted);margin:0 auto;padding:4px 0 2px;font-size:10px}.error-state{min-height:200px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.error-icon{opacity:.5;font-size:24px}.error-retry-btn{border:1px solid var(--border,rgba(128,128,160,.3));color:var(--accent,var(--text,inherit));font:inherit;letter-spacing:.02em;cursor:pointer;background:0 0;border-radius:999px;margin-top:4px;padding:7px 20px;font-size:11px;font-weight:600;transition:background .18s,border-color .18s}.error-retry-btn:hover{background:rgba(128,128,160,.12)}@media (max-width:420px){#app{gap:8px;padding:8px}#info-panel{grid-template-columns:1fr}}#bodygraph-container.is-loading{opacity:.55;pointer-events:none;cursor:wait;transition:opacity .15s}.chart-status{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:var(--radius-pill);color:var(--gold);letter-spacing:.04em;z-index:900;opacity:0;pointer-events:none;background:rgba(5,7,13,.92);background:color(display-p3 .0216592 .0280553 .0483601/.92);background:lab(1.95095% .0425801 -2.41514/.92);border:1px solid rgba(204,156,66,.35);border:1px solid color(display-p3 .76996 .617341 .321369/.35);border:1px solid lab(67.5798% 11.9379 52.333/.35);max-height:0;padding:5px 18px;font-size:11px;font-weight:600;transition:max-height .24s cubic-bezier(.16,1,.3,1),opacity .24s,transform .24s cubic-bezier(.16,1,.3,1);position:fixed;top:10px;left:50%;overflow:hidden;transform:translate(-50%)translateY(-10px);box-shadow:0 4px 20px rgba(0,0,0,.5),0 0 0 1px rgba(204,156,66,.08);box-shadow:0 4px 20px color(display-p3 0 0 0/.5),0 0 0 1px color(display-p3 .76996 .617341 .321369/.08);box-shadow:0 4px 20px lab(0% 0 0/.5),0 0 0 1px lab(67.5798% 11.9379 52.333/.08)}.chart-status.visible{opacity:1;max-height:44px;transform:translate(-50%)translateY(0)}@keyframes gold-pulse{0%,to{border-color:rgba(204,156,66,.35);border-color:color(display-p3 .76996 .617341 .321369/.35);border-color:lab(67.5798% 11.9379 52.333/.35)}50%{border-color:rgba(204,156,66,.65);border-color:color(display-p3 .76996 .617341 .321369/.65);border-color:lab(67.5798% 11.9379 52.333/.65)}}.hd-popup{background:var(--surface-2);border:1px solid var(--border-strong);z-index:1000;opacity:0;pointer-events:none;border-radius:12px;width:min(340px,92vw);padding:14px 16px 12px;transition:opacity .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1);position:fixed;box-shadow:0 12px 48px rgba(0,0,0,.7),0 0 0 1px rgba(204,156,66,.15);box-shadow:0 12px 48px color(display-p3 0 0 0/.7),0 0 0 1px color(display-p3 .76996 .617341 .321369/.15);box-shadow:0 12px 48px lab(0% 0 0/.7),0 0 0 1px lab(67.5798% 11.9379 52.333/.15)}.hd-popup.visible{opacity:1;pointer-events:all}.hd-popup-header{align-items:flex-start;gap:10px;display:flex}.hd-popup-icon{color:var(--gold);text-align:center;flex-shrink:0;min-width:28px;font-size:18px;font-weight:700;line-height:1}.hd-popup-title{color:var(--text);flex:1;font-size:13px;font-weight:700}.hd-popup-sub{color:var(--text-secondary);letter-spacing:.01em;margin-top:2px;font-size:11px;font-weight:400}.hd-popup-close{cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:15px;line-height:1;transition:color .12s}.hd-popup-close:hover{color:var(--text)}.hd-popup-body{border-top:1px solid var(--border);flex-direction:column;gap:6px;margin-top:10px;padding-top:10px;display:flex}.hd-popup-row{align-items:baseline;gap:8px;font-size:11px;line-height:1.45;display:flex}.hd-popup-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);flex-shrink:0;min-width:56px;padding-top:1px;font-size:9px;font-weight:700}.hd-popup-val{color:var(--text);font-weight:500}.hd-popup-gates{flex-wrap:wrap;gap:4px;font-weight:500;display:flex}.hd-popup-gate-chip{border:1px solid var(--border-strong);border-radius:var(--radius-pill,99px);background:var(--surface);color:var(--text);white-space:nowrap;padding:1px 7px;font-size:10px;display:inline-block}.hd-popup-note{color:var(--text-secondary);letter-spacing:.01em;margin-top:4px;font-size:10px;font-style:italic;line-height:1.5}.hd-detail-panel{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;flex:1;min-height:0;padding:2px 0 8px;overflow-y:auto}.hd-detail-panel .hd-popup-header{border-bottom:1px solid var(--border);margin-bottom:8px;padding-bottom:8px}.hd-detail-panel .hd-popup-close{opacity:.5}.hd-detail-panel .hd-popup-close:hover{opacity:1;color:var(--text)}.ask-claude-btn{border-radius:var(--radius-sm);width:100%;color:var(--gold);letter-spacing:.04em;cursor:pointer;background:rgba(204,156,66,.12);background:color(display-p3 .76996 .617341 .321369/.12);background:lab(67.5798% 11.9379 52.333/.12);border:1px solid rgba(204,156,66,.4);border:1px solid color(display-p3 .76996 .617341 .321369/.4);border:1px solid lab(67.5798% 11.9379 52.333/.4);justify-content:center;align-items:center;gap:6px;margin-top:12px;padding:9px 16px;font-family:Geist,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:12px;font-weight:600;transition:background .16s,border-color .16s,box-shadow .16s;display:flex}.ask-claude-btn:hover:not(:disabled){background:rgba(204,156,66,.2);background:color(display-p3 .76996 .617341 .321369/.2);background:lab(67.5798% 11.9379 52.333/.2);border-color:rgba(204,156,66,.65);border-color:color(display-p3 .76996 .617341 .321369/.65);border-color:lab(67.5798% 11.9379 52.333/.65);box-shadow:0 0 0 3px rgba(204,156,66,.12);box-shadow:0 0 0 3px color(display-p3 .76996 .617341 .321369/.12);box-shadow:0 0 0 3px lab(67.5798% 11.9379 52.333/.12)}.ask-claude-btn:disabled{opacity:.45;cursor:not-allowed}.ask-claude-btn.sending{color:var(--gold-dim);opacity:.8;cursor:wait;pointer-events:none;background:rgba(204,156,66,.08);background:color(display-p3 .76996 .617341 .321369/.08);background:lab(67.5798% 11.9379 52.333/.08);border-color:rgba(204,156,66,.25);border-color:color(display-p3 .76996 .617341 .321369/.25);border-color:lab(67.5798% 11.9379 52.333/.25)}.ask-claude-btn.sent{color:var(--success);pointer-events:none;background:rgba(29,168,113,.15);background:color(display-p3 .313719 .651039 .459895/.15);background:lab(61.2436% -46.7762 18.3644/.15);border-color:rgba(29,168,113,.5);border-color:color(display-p3 .313719 .651039 .459895/.5);border-color:lab(61.2436% -46.7762 18.3644/.5)}.ask-claude-btn.error{color:var(--error);cursor:pointer;background:rgba(197,52,67,.15);background:color(display-p3 .710345 .252818 .279408/.15);background:lab(45.8893% 57.7361 27.393/.15);border-color:rgba(197,52,67,.5);border-color:color(display-p3 .710345 .252818 .279408/.5);border-color:lab(45.8893% 57.7361 27.393/.5)}.interactive-text{cursor:pointer;transition:color .15s,text-shadow .15s;position:relative}.interactive-text:hover{color:var(--gold);text-shadow:0 0 8px rgba(204,156,66,.4);text-shadow:0 0 8px color(display-p3 .76996 .617341 .321369/.4);text-shadow:0 0 8px lab(67.5798% 11.9379 52.333/.4)}.interactive-text:focus{color:var(--gold);text-shadow:0 0 8px rgba(204,156,66,.6);text-shadow:0 0 8px color(display-p3 .76996 .617341 .321369/.6);text-shadow:0 0 8px lab(67.5798% 11.9379 52.333/.6);outline:none}.planet-activation,.variable-arrow{outline:none;transition:opacity .15s}.planet-activation:hover,.variable-arrow:hover{opacity:.7}.planet-activation:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.variable-arrow:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.center-group:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.gate-badge:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.channel:focus-visible{outline:2px solid var(--gold);outline-offset:4px}[data-gate]:focus-visible{outline:2px solid var(--gold);outline-offset:4px}[data-channel]:focus-visible{outline:2px solid var(--gold);outline-offset:4px}[data-center]:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.tooltip{-webkit-backdrop-filter:blur(14px)saturate(1.6);backdrop-filter:blur(14px)saturate(1.6);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;z-index:1000;opacity:0;background:rgba(7,9,14,.92);background:color(display-p3 .0286832 .0352525 .0537785/.92);background:lab(2.44746% .00379235 -2.33402/.92);max-width:240px;padding:8px 12px;font-size:12px;transition:opacity .12s;position:fixed;box-shadow:0 8px 32px rgba(0,0,0,.55),inset 0 .5px rgba(255,255,255,.04);box-shadow:0 8px 32px color(display-p3 0 0 0/.55),inset 0 .5px color(display-p3 1 1 1/.04);box-shadow:0 8px 32px lab(0% 0 0/.55),inset 0 .5px lab(100% 0 0/.04)}.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(--gold-dim);letter-spacing:.03em;margin-top:4px;font-size:10px}.pan-zoom-controls{z-index:800;flex-direction:column;gap:6px;display:flex;position:absolute;bottom:12px;right:12px}.pan-zoom-controls[hidden]{display:none!important}.pan-btn{background:var(--surface-2);border:1px solid var(--border-strong);color:var(--text);border-radius:var(--radius-sm);cursor:pointer;width:36px;height:36px;box-shadow:var(--shadow-md);justify-content:center;align-items:center;font-family:inherit;font-size:18px;transition:all .15s;display:flex}.pan-btn.reset{width:auto;padding:0 10px;font-size:11px;font-weight:500}.pan-btn:hover{background:var(--surface);border-color:var(--gold-dim);color:var(--gold)}.pan-btn:active{transform:scale(.95)}.pan-btn--fullscreen{width:36px;height:36px}body.is-fullscreen{height:100vh;overflow:hidden}body.is-fullscreen #app{flex-direction:column;gap:0;width:100vw;max-width:100%;height:100vh;padding:0;display:flex;overflow:hidden}body.is-fullscreen #bodygraph-container{min-height:0;max-width:unset;width:100%;height:auto;box-shadow:none;background:0 0;border:none;flex:1;justify-content:center;align-items:center;margin:0;padding:16px 24px 0;display:flex}body.is-fullscreen #loading-state{flex:1;height:auto;min-height:0}body.is-fullscreen #bodygraph-container svg{width:auto;max-width:100%;height:100%;max-height:100%}body.is-fullscreen .pan-zoom-controls{top:16px;right:16px}#fs-bottom-bar{border-top:1px solid var(--border);background:#020306;background:color(display-p3 .0100648 .0127997 .0215356);background:lab(.889429% .0122339 -1.01076);flex-shrink:0;grid-template-rows:1fr;grid-template-columns:220px 1fr 220px;height:240px;min-height:180px;max-height:280px;display:grid}#fs-bottom-bar [data-column=left],#fs-bottom-bar [data-column=right]{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;flex-direction:column;gap:4px;padding:10px 14px 12px;display:flex;overflow-x:hidden;overflow-y:auto}#fs-bottom-bar [data-column=left]{border-right:1px solid var(--border)}#fs-bottom-bar [data-column=center]{pointer-events:none}#fs-bottom-bar [data-column=right]{border-left:1px solid var(--border);overflow-y:auto}#fs-bottom-bar [data-column]>*+*{border-top:1px solid var(--border);margin-top:4px;padding-top:8px}#fs-bottom-bar .hd-action-bar{flex-direction:column;padding:8px 0 0}#fs-bottom-bar .action-btn{justify-content:center;width:100%}.cancel-toast{background:var(--surface-2,#1e1e2e);border:1px solid var(--border-strong,#444);color:var(--text-muted,#aaa);border-radius:var(--radius-sm,6px);opacity:0;z-index:9999;pointer-events:none;box-shadow:var(--shadow-md,0 4px 12px rgba(0,0,0,.3));padding:8px 16px;font-family:inherit;font-size:12px;transition:opacity .3s,transform .3s;position:fixed;bottom:20px;left:50%;transform:translate(-50%)translateY(20px)}.cancel-toast.visible{opacity:1;transform:translate(-50%)translateY(0)}.oe-loader{width:64px;height:64px;stroke:var(--gold);stroke-width:2px;fill:none;stroke-dasharray:200;stroke-dashoffset:200px;filter:drop-shadow(0 0 4px var(--gold-glow));animation:2.5s cubic-bezier(.16,1,.3,1) infinite oe-draw}@keyframes oe-draw{0%{stroke-dashoffset:200px;stroke-opacity:.1}50%{stroke-dashoffset:0;stroke-opacity:1;filter:drop-shadow(0 0 8px var(--gold))}to{stroke-dashoffset:-200px;stroke-opacity:.1}}.info-drawer{background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius);width:100%;box-shadow:var(--shadow-md);opacity:0;pointer-events:none;max-height:0;padding:14px 16px 12px;transition:max-height .26s cubic-bezier(.16,1,.3,1),opacity .2s,padding .2s;position:relative;overflow:hidden}.info-drawer:before{content:"";background:var(--border-strong);border-radius:2px;flex-shrink:0;width:36px;height:4px;margin:0 auto 10px;display:block}.info-drawer.open{opacity:1;pointer-events:all;max-height:500px;padding:14px 16px 12px}.hd-action-bar{flex-wrap:wrap;gap:8px;padding:10px 16px 6px;display:flex}.action-btn{color:var(--gold);letter-spacing:.02em;cursor:pointer;white-space:nowrap;background:rgba(212,175,55,.08);border:1px solid rgba(212,175,55,.3);border-radius:8px;align-items:center;gap:6px;padding:7px 16px;font-size:12px;font-weight:600;transition:background .2s,border-color .2s,transform .1s;display:inline-flex}.action-btn:hover{background:rgba(212,175,55,.15);border-color:rgba(212,175,55,.5);transform:translateY(-1px)}.action-btn:active{background:rgba(212,175,55,.2);transform:translateY(0)}.action-btn--primary{color:var(--gold);background:linear-gradient(135deg,rgba(212,175,55,.2),rgba(180,140,30,.25));border-color:rgba(212,175,55,.5)}.action-btn--primary:hover{background:linear-gradient(135deg,rgba(212,175,55,.3),rgba(180,140,30,.35));border-color:rgba(212,175,55,.7)}@media (prefers-color-scheme:light){:root{--bg:#f7f5f1;--surface:#fff;--surface-2:#f1eee9;--border:#dbd7d0;--border-strong:#bdb6ac;--text:#101215;--text-secondary:#4f5359;--muted:#6c6f73;--gold:#8d5f00;--gold-dim:#6d4b00;--gold-glow:rgba(141,95,0,.25);--gold-subtle:rgba(141,95,0,.1);--success:#007145;--error:#b1002b;--shadow-md:0 4px 24px rgba(0,0,0,.12), 0 0 0 1px var(--border-strong);--shadow-gold:0 0 16px rgba(141,95,0,.18), 0 0 0 1px rgba(141,95,0,.22)}@supports (color:color(display-p3 0 0 0)){:root{--bg:color(display-p3 .967616 .959866 .945308);--surface:color(display-p3 1 1 1);--surface-2:color(display-p3 .943798 .93351 .914195);--border:color(display-p3 .855616 .842987 .819292);--border-strong:color(display-p3 .73602 .716348 .67952);--text:color(display-p3 .0633107 .0687189 .081922);--text-secondary:color(display-p3 .313002 .323251 .348016);--muted:color(display-p3 .426318 .433563 .450948);--gold:color(display-p3 .542549 .371783 -.107551);--gold-dim:color(display-p3 .414099 .299019 .034461);--gold-glow:color(display-p3 .542549 .371783 -.107551/.25);--gold-subtle:color(display-p3 .542549 .371783 -.107551/.1);--success:color(display-p3 -.0793084 .456092 .255685);--error:color(display-p3 .642198 .101724 .18242);--shadow-md:0 4px 24px color(display-p3 0 0 0/.12), 0 0 0 1px var(--border-strong);--shadow-gold:0 0 16px color(display-p3 .542549 .371783 -.107551/.18), 0 0 0 1px color(display-p3 .542549 .371783 -.107551/.22)}}@supports (color:lab(0% 0 0)){:root{--bg:lab(96.5376% .34076 2.2589);--surface:lab(100% 0 0);--surface-2:lab(94.2232% .459731 3.01526);--border:lab(86.1085% .583261 3.77473);--border-strong:lab(74.5232% .975847 6.06879);--text:lab(5.23809% -.0738502 -2.43738);--text-secondary:lab(34.9842% -.210047 -4.49809);--muted:lab(46.6045% -.170082 -3.01461);--gold:lab(44.1995% 17.0662 84.3373);--gold-dim:lab(35.0077% 11.3181 50.9422);--gold-glow:lab(44.1995% 17.0662 84.3373/.25);--gold-subtle:lab(44.1995% 17.0662 84.3373/.1);--success:lab(41.7514% -55.3249 21.5039);--error:lab(37.5238% 64.2774 32.6097);--shadow-md:0 4px 24px lab(0% 0 0/.12), 0 0 0 1px var(--border-strong);--shadow-gold:0 0 16px lab(44.1995% 17.0662 84.3373/.18), 0 0 0 1px lab(44.1995% 17.0662 84.3373/.22)}}html,body{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background-image:none}#bodygraph-container{border-color:var(--border-strong);background:#fff;background:color(display-p3 1 1 1);background:lab(100% 0 0)}.chart-status{background:rgba(247,245,241,.92);background:color(display-p3 .967616 .959866 .945308/.92);background:lab(96.5376% .34076 2.2589/.92);border-color:rgba(141,95,0,.35);border-color:color(display-p3 .542549 .371783 -.107551/.35);border-color:lab(44.1995% 17.0662 84.3373/.35)}.tooltip{border-color:var(--border-strong);background:rgba(255,255,255,.96);background:color(display-p3 1 1 1/.96);background:lab(100% 0 0/.96)}#info-panel{background:var(--surface);border-color:var(--border)}.hd-popup{background:var(--surface);border-color:var(--border-strong);box-shadow:0 12px 48px rgba(0,0,0,.18), 0 0 0 1px var(--border-strong)}@supports (color:color(display-p3 0 0 0)){.hd-popup{box-shadow:0 12px 48px color(display-p3 0 0 0/.18), 0 0 0 1px var(--border-strong)}}@supports (color:lab(0% 0 0)){.hd-popup{box-shadow:0 12px 48px lab(0% 0 0/.18), 0 0 0 1px var(--border-strong)}}#fs-bottom-bar{background:#f7f5f1;background:color(display-p3 .967616 .959866 .945308);background:lab(96.5376% .34076 2.2589);border-top-color:#caced4;border-top-color:color(display-p3 .796183 .806346 .830691);border-top-color:lab(82.5562% -.22167 -3.77336)}#fs-bottom-bar [data-column=left],#fs-bottom-bar [data-column=right]{background:#f1eeea;background:color(display-p3 .941472 .933762 .919279);background:lab(94.2176% .341028 2.25905)}#fs-bottom-bar [data-column=left]{border-right-color:#caced4;border-right-color:color(display-p3 .796183 .806346 .830691);border-right-color:lab(82.5562% -.22167 -3.77336)}#fs-bottom-bar [data-column=right]{border-left-color:#caced4;border-left-color:color(display-p3 .796183 .806346 .830691);border-left-color:lab(82.5562% -.22167 -3.77336)}#fs-bottom-bar [data-column]>*+*{border-top-color:#caced4;border-top-color:color(display-p3 .796183 .806346 .830691);border-top-color:lab(82.5562% -.22167 -3.77336)}}svg.has-highlight [data-center],svg.has-highlight [data-channel],svg.has-highlight [data-gate]{opacity:.45;transition:opacity .2s,filter .2s}svg.has-highlight [data-highlighted=true]{opacity:1;filter:drop-shadow(0 0 4px rgba(212,160,23,.55))}svg.has-highlight [data-highlighted-primary=true]{opacity:1;filter:drop-shadow(0 0 8px rgba(212,160,23,.95))}svg.has-highlight [data-highlighted-primary=true] path,svg.has-highlight [data-highlighted-primary=true] circle,svg.has-highlight [data-highlighted-primary=true] polygon,svg.has-highlight [data-highlighted-primary=true] rect{stroke-width:calc(var(--stroke-w,1.5) * 1.4)}@media (max-width:480px){.pan-zoom-controls{gap:5px}.pan-btn,.pan-btn--fullscreen{background:color-mix(in oklab, var(--surface-2) 72%, transparent);-webkit-backdrop-filter:blur(6px);width:32px;height:32px;font-size:15px}.pan-btn.reset{width:32px;padding:0;font-size:0}.pan-btn.reset:before{content:"⟲";font-size:15px}}.hd-disclaimer{max-width:680px;color:var(--text-secondary);text-align:center;margin:4px auto 0;font-size:10px;line-height:1.5}.action-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}body.layout-mandala #bodygraph-container,body.layout-mandala #info-panel,body.layout-mandala .channel-legend,body.layout-mandala #controls-panel,body.layout-mandala .chart-hint,body.layout-mandala .hd-disclaimer{max-width:760px}body.layout-mandala #bodygraph-container svg{max-height:min(72vh,720px)}.param-controls{background:var(--surface);border-top:1px solid var(--border);flex-shrink:0;padding:6px 12px}.param-controls-grid{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.param-group{flex-direction:row;align-items:center;gap:6px;display:flex}.param-group label{text-transform:uppercase;color:var(--text-secondary);letter-spacing:.06em;white-space:nowrap;font-size:10px;font-weight:700}.param-group input[type=date],.param-group input[type=time],.param-group input[type=text]{background:var(--surface-2);border:1px solid var(--border-strong);color:var(--text);color-scheme:inherit;border-radius:var(--radius-sm);width:120px;height:24px;padding:3px 6px;font-family:inherit;font-size:11px}@media (prefers-reduced-motion:no-preference){.param-group input[type=date],.param-group input[type=time],.param-group input[type=text]{transition:border-color .15s}}.param-group input:focus{border-color:var(--gold-dim);outline:none}.loc-searching{border-color:var(--gold-dim)!important}@media (prefers-reduced-motion:no-preference){.loc-searching{animation:1s ease-in-out infinite alternate loc-pulse}}@keyframes loc-pulse{0%{border-color:var(--gold-dim)}to{border-color:rgba(204,156,66,.55);border-color:color(display-p3 .76996 .617341 .321369/.55);border-color:lab(67.5798% 11.9379 52.333/.55)}}.param-group-loc{flex:1;position:relative}.param-group-loc input{width:100%}.loc-suggestions{background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-sm);z-index:100;max-height:200px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px rgba(0,0,0,.35);box-shadow:0 4px 12px color(display-p3 0 0 0/.35);box-shadow:0 4px 12px lab(0% 0 0/.35)}.loc-item{color:var(--text);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid var(--border);padding:8px 10px;font-size:12px;overflow:hidden}.loc-item:last-child{border-bottom:none}@media (prefers-reduced-motion:no-preference){.loc-item{transition:background .1s,color .1s}}.loc-item:hover{background:var(--gold-subtle);color:var(--gold)}.loc-status{color:var(--text-secondary);letter-spacing:.01em;padding:8px 10px;font-size:11px;font-style:italic}.loc-status-error{color:#d76a5a;color:color(display-p3 .788241 .439621 .373983);color:lab(58.1265% 42.6447 29.9439);font-style:normal;font-weight:600}.param-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.param-cost-hint{color:var(--text-secondary);white-space:nowrap;letter-spacing:.02em;font-size:10px}.param-btn-icon{border:1px solid var(--border-strong);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}@media (prefers-reduced-motion:no-preference){.param-btn-icon{transition:background .15s,border-color .15s,color .15s}}.param-btn-icon:hover{background:var(--surface-2);color:var(--text);border-color:var(--gold-dim)}.param-btn-primary{color:var(--gold);border-radius:var(--radius-sm);cursor:pointer;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;background:rgba(204,156,66,.12);background:color(display-p3 .76996 .617341 .321369/.12);background:lab(67.5798% 11.9379 52.333/.12);border:1px solid rgba(204,156,66,.4);border:1px solid color(display-p3 .76996 .617341 .321369/.4);border:1px solid lab(67.5798% 11.9379 52.333/.4);height:24px;padding:3px 10px;font-family:inherit;font-size:10px;font-weight:600}@media (prefers-reduced-motion:no-preference){.param-btn-primary{transition:background .15s,border-color .15s}}.param-btn-primary:hover:not(:disabled){background:rgba(204,156,66,.2);background:color(display-p3 .76996 .617341 .321369/.2);background:lab(67.5798% 11.9379 52.333/.2);border-color:rgba(204,156,66,.65);border-color:color(display-p3 .76996 .617341 .321369/.65);border-color:lab(67.5798% 11.9379 52.333/.65)}.param-btn-primary:disabled{opacity:.5;cursor:not-allowed}.param-extra-toggle{color:var(--text-secondary);white-space:nowrap;letter-spacing:.02em;cursor:pointer;align-items:center;gap:5px;font-size:10px;display:flex}.param-extra-toggle input[type=checkbox]{width:13px;height:13px;accent-color:var(--gold,oklch(72% .12 80));cursor:pointer}.param-extra-toggle input[type=checkbox]:disabled{cursor:not-allowed}.param-extra-toggle input[type=checkbox]:disabled~span{opacity:.5}@media (prefers-color-scheme:light){.param-group input[type=date],.param-group input[type=time],.param-group input[type=text]{border-color:var(--border-strong);color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fdfcf9;background:color(display-p3 .990365 .986474 .97916);background:lab(98.849% .167578 1.1277)}.loc-suggestions{border-color:var(--border-strong);background:#fdfcf9;background:color(display-p3 .990365 .986474 .97916);background:lab(98.849% .167578 1.1277)}.param-btn-primary{background:rgba(160,112,0,.12);background:color(display-p3 .615135 .441554 -.0204711/.12);background:lab(51.2092% 16.2654 78.3504/.12);border-color:rgba(160,112,0,.4);border-color:color(display-p3 .615135 .441554 -.0204711/.4);border-color:lab(51.2092% 16.2654 78.3504/.4)}.param-btn-primary:hover:not(:disabled){background:rgba(160,112,0,.22);background:color(display-p3 .615135 .441554 -.0204711/.22);background:lab(51.2092% 16.2654 78.3504/.22);border-color:rgba(160,112,0,.65);border-color:color(display-p3 .615135 .441554 -.0204711/.65);border-color:lab(51.2092% 16.2654 78.3504/.65)}}.param-summary-bar{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:baseline;gap:2px 0;margin-bottom:4px;padding:3px 4px 5px;font-size:10px;line-height:1.3;display:flex}.param-summary-bar[hidden]{display:none}.summary-name{color:var(--gold,#d6a54d);letter-spacing:.01em;padding-right:2px;font-size:12px;font-weight:700}@supports (color:color(display-p3 0 0 0)){.summary-name{color:var(--gold,color(display-p3 .808073 .654274 .358094))}}@supports (color:lab(0% 0 0)){.summary-name{color:var(--gold,lab(71.071% 11.7474 51.7651))}}.summary-datetime{font-variant-numeric:tabular-nums;color:var(--text-secondary);align-items:baseline;gap:4px;font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;font-size:11px;display:inline-flex}.summary-time-sep{color:var(--border-strong);opacity:.7;font-family:inherit;font-size:9px}.summary-loc{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:200px;padding-left:2px;font-size:11px;font-style:italic;overflow:hidden}.summary-sep{background:var(--border-strong);opacity:.5;vertical-align:middle;flex-shrink:0;width:1px;height:11px;margin:0 7px;display:inline-block}
14
14
  /*$vite$:1*/</style>
15
15
  </head>
16
16
  <body>
@@ -4911,25 +4911,25 @@ function ou(e4) {
4911
4911
  if (r2 !== void 0) return r2;
4912
4912
  }
4913
4913
  var su = t({ endsWith: () => yc, gt: () => nc, gte: () => D, includes: () => _c, length: () => pc, lowercase: () => hc, lt: () => ec, lte: () => tc, maxLength: () => dc, maxSize: () => cc, mime: () => xc, minLength: () => fc, minSize: () => lc, multipleOf: () => sc, negative: () => ic, nonnegative: () => oc, nonpositive: () => ac, normalize: () => Cc, overwrite: () => Sc, positive: () => rc, property: () => bc, regex: () => mc, size: () => uc, slugify: () => Dc, startsWith: () => vc, toLowerCase: () => Tc, toUpperCase: () => Ec, trim: () => wc, uppercase: () => gc }), cu = t({ ZodISODate: () => du, ZodISODateTime: () => lu, ZodISODuration: () => hu, ZodISOTime: () => pu, date: () => fu, datetime: () => uu, duration: () => gu, time: () => mu }), lu = c("ZodISODateTime", (e4, t2) => {
4914
- Er.init(e4, t2), N.init(e4, t2);
4914
+ Er.init(e4, t2), M.init(e4, t2);
4915
4915
  });
4916
4916
  function uu(e4) {
4917
4917
  return Ds(lu, e4);
4918
4918
  }
4919
4919
  var du = c("ZodISODate", (e4, t2) => {
4920
- Dr.init(e4, t2), N.init(e4, t2);
4920
+ Dr.init(e4, t2), M.init(e4, t2);
4921
4921
  });
4922
4922
  function fu(e4) {
4923
4923
  return Os(du, e4);
4924
4924
  }
4925
4925
  var pu = c("ZodISOTime", (e4, t2) => {
4926
- Or.init(e4, t2), N.init(e4, t2);
4926
+ Or.init(e4, t2), M.init(e4, t2);
4927
4927
  });
4928
4928
  function mu(e4) {
4929
4929
  return ks(pu, e4);
4930
4930
  }
4931
4931
  var hu = c("ZodISODuration", (e4, t2) => {
4932
- kr.init(e4, t2), N.init(e4, t2);
4932
+ kr.init(e4, t2), M.init(e4, t2);
4933
4933
  });
4934
4934
  function gu(e4) {
4935
4935
  return As(hu, e4);
@@ -4942,10 +4942,10 @@ var _u = (e4, t2) => {
4942
4942
  } }, isEmpty: { get() {
4943
4943
  return e4.issues.length === 0;
4944
4944
  } } });
4945
- }, vu = c("ZodError", _u), A = c("ZodError", _u, { Parent: Error }), yu = ct(A), bu = ut(A), xu = ft(A), Su = mt(A), Cu = gt(A), wu = vt(A), Tu = bt(A), Eu = St(A), Du = wt(A), Ou = Et(A), ku = Ot(A), Au = At(A), ju = t({ ZodAny: () => Jd, ZodArray: () => rf, ZodBase64: () => gd, ZodBase64URL: () => vd, ZodBigInt: () => Ld, ZodBigIntFormat: () => zd, ZodBoolean: () => Id, ZodCIDRv4: () => fd, ZodCIDRv6: () => md, ZodCUID: () => Xu, ZodCUID2: () => Qu, ZodCatch: () => Gf, ZodCodec: () => Zf, ZodCustom: () => lp, ZodCustomStringFormat: () => wd, ZodDate: () => tf, ZodDefault: () => Lf, ZodDiscriminatedUnion: () => df, ZodE164: () => bd, ZodEmail: () => Pu, ZodEmoji: () => Ku, ZodEnum: () => wf, ZodExactOptional: () => Mf, ZodFile: () => Df, ZodFunction: () => sp, ZodGUID: () => Iu, ZodIPv4: () => od, ZodIPv6: () => ud, ZodIntersection: () => pf, ZodJWT: () => Sd, ZodKSUID: () => id, ZodLazy: () => rp, ZodLiteral: () => Ef, ZodMAC: () => cd, ZodMap: () => bf, ZodNaN: () => qf, ZodNanoID: () => Ju, ZodNever: () => Zd, ZodNonOptional: () => Vf, ZodNull: () => Kd, ZodNullable: () => Pf, ZodNumber: () => kd, ZodNumberFormat: () => Ad, ZodObject: () => of, ZodOptional: () => jf, ZodPipe: () => Yf, ZodPrefault: () => zf, ZodPromise: () => ap, ZodReadonly: () => $f, ZodRecord: () => _f, ZodSet: () => Sf, ZodString: () => Nu, ZodStringFormat: () => N, ZodSuccess: () => Uf, ZodSymbol: () => Hd, ZodTemplateLiteral: () => tp, ZodTransform: () => kf, ZodTuple: () => hf, ZodType: () => j, ZodULID: () => ed, ZodURL: () => Uu, ZodUUID: () => Ru, ZodUndefined: () => Wd, ZodUnion: () => cf, ZodUnknown: () => Xd, ZodVoid: () => $d, ZodXID: () => nd, ZodXor: () => lf, _ZodString: () => Mu, _default: () => Rf, _function: () => cp, any: () => Yd, array: () => L, base64: () => _d, base64url: () => yd, bigint: () => Rd, boolean: () => F, catch: () => Kf, check: () => up, cidrv4: () => pd, cidrv6: () => hd, codec: () => Qf, cuid: () => Zu, cuid2: () => $u, custom: () => dp, date: () => nf, describe: () => mp, discriminatedUnion: () => ff, e164: () => xd, email: () => Fu, emoji: () => qu, enum: () => H, exactOptional: () => Nf, file: () => Of, float32: () => Md, float64: () => Nd, function: () => cp, guid: () => Lu, hash: () => Od, hex: () => Dd, hostname: () => Ed, httpUrl: () => Gu, instanceof: () => gp, int: () => jd, int32: () => Pd, int64: () => Bd, intersection: () => mf, ipv4: () => sd, ipv6: () => dd, json: () => vp, jwt: () => Cd, keyof: () => af, ksuid: () => ad, lazy: () => ip, literal: () => U, looseObject: () => z, looseRecord: () => yf, mac: () => ld, map: () => xf, meta: () => hp, nan: () => Jf, nanoid: () => Yu, nativeEnum: () => Tf, never: () => Qd, nonoptional: () => Hf, null: () => qd, nullable: () => Ff, nullish: () => If, number: () => P, object: () => R, optional: () => W, partialRecord: () => vf, pipe: () => Xf, prefault: () => Bf, preprocess: () => yp, promise: () => op, readonly: () => ep, record: () => V, refine: () => fp, set: () => Cf, strictObject: () => sf, string: () => M, stringFormat: () => Td, stringbool: () => _p, success: () => Wf, superRefine: () => pp, symbol: () => Ud, templateLiteral: () => np, transform: () => Af, tuple: () => gf, uint32: () => Fd, uint64: () => Vd, ulid: () => td, undefined: () => Gd, union: () => B, unknown: () => I, url: () => Wu, uuid: () => zu, uuidv4: () => Bu, uuidv6: () => Vu, uuidv7: () => Hu, void: () => ef, xid: () => rd, xor: () => uf }), j = c("ZodType", (e4, t2) => (T.init(e4, t2), Object.assign(e4["~standard"], { jsonSchema: { input: dl(e4, "input"), output: dl(e4, "output") } }), e4.toJSONSchema = ul(e4, {}), e4.def = t2, e4.type = t2.type, Object.defineProperty(e4, "_def", { value: t2 }), e4.check = (...n2) => {
4945
+ }, vu = c("ZodError", _u), yu = c("ZodError", _u, { Parent: Error }), bu = ct(yu), xu = ut(yu), Su = ft(yu), Cu = mt(yu), wu = gt(yu), Tu = vt(yu), Eu = bt(yu), Du = St(yu), Ou = wt(yu), ku = Et(yu), Au = Ot(yu), ju = At(yu), Mu = t({ ZodAny: () => Yd, ZodArray: () => af, ZodBase64: () => _d, ZodBase64URL: () => yd, ZodBigInt: () => Rd, ZodBigIntFormat: () => Bd, ZodBoolean: () => Ld, ZodCIDRv4: () => pd, ZodCIDRv6: () => hd, ZodCUID: () => Zu, ZodCUID2: () => $u, ZodCatch: () => Kf, ZodCodec: () => Qf, ZodCustom: () => up, ZodCustomStringFormat: () => Td, ZodDate: () => nf, ZodDefault: () => Rf, ZodDiscriminatedUnion: () => ff, ZodE164: () => xd, ZodEmail: () => Fu, ZodEmoji: () => qu, ZodEnum: () => Tf, ZodExactOptional: () => Nf, ZodFile: () => Of, ZodFunction: () => cp, ZodGUID: () => Lu, ZodIPv4: () => sd, ZodIPv6: () => dd, ZodIntersection: () => mf, ZodJWT: () => Cd, ZodKSUID: () => ad, ZodLazy: () => ip, ZodLiteral: () => Df, ZodMAC: () => ld, ZodMap: () => xf, ZodNaN: () => Jf, ZodNanoID: () => Yu, ZodNever: () => Qd, ZodNonOptional: () => Hf, ZodNull: () => qd, ZodNullable: () => Ff, ZodNumber: () => Ad, ZodNumberFormat: () => jd, ZodObject: () => sf, ZodOptional: () => Mf, ZodPipe: () => Xf, ZodPrefault: () => Bf, ZodPromise: () => op, ZodReadonly: () => ep, ZodRecord: () => vf, ZodSet: () => Cf, ZodString: () => Pu, ZodStringFormat: () => M, ZodSuccess: () => Wf, ZodSymbol: () => Ud, ZodTemplateLiteral: () => np, ZodTransform: () => Af, ZodTuple: () => gf, ZodType: () => A, ZodULID: () => td, ZodURL: () => Wu, ZodUUID: () => zu, ZodUndefined: () => Gd, ZodUnion: () => lf, ZodUnknown: () => Zd, ZodVoid: () => ef, ZodXID: () => rd, ZodXor: () => uf, _ZodString: () => Nu, _default: () => zf, _function: () => lp, any: () => Xd, array: () => I, base64: () => vd, base64url: () => bd, bigint: () => zd, boolean: () => P, catch: () => qf, check: () => dp, cidrv4: () => md, cidrv6: () => gd, codec: () => $f, cuid: () => Qu, cuid2: () => ed, custom: () => fp, date: () => rf, describe: () => hp, discriminatedUnion: () => pf, e164: () => Sd, email: () => Iu, emoji: () => Ju, enum: () => V, exactOptional: () => Pf, file: () => kf, float32: () => Nd, float64: () => Pd, function: () => lp, guid: () => Ru, hash: () => kd, hex: () => Od, hostname: () => Dd, httpUrl: () => Ku, instanceof: () => _p, int: () => Md, int32: () => Fd, int64: () => Vd, intersection: () => hf, ipv4: () => cd, ipv6: () => fd, json: () => yp, jwt: () => wd, keyof: () => of, ksuid: () => od, lazy: () => ap, literal: () => H, looseObject: () => R, looseRecord: () => bf, mac: () => ud, map: () => Sf, meta: () => gp, nan: () => Yf, nanoid: () => Xu, nativeEnum: () => Ef, never: () => $d, nonoptional: () => Uf, null: () => Jd, nullable: () => If, nullish: () => Lf, number: () => N, object: () => L, optional: () => U, partialRecord: () => yf, pipe: () => Zf, prefault: () => Vf, preprocess: () => bp, promise: () => sp, readonly: () => tp, record: () => B, refine: () => pp, set: () => wf, strictObject: () => cf, string: () => j, stringFormat: () => Ed, stringbool: () => vp, success: () => Gf, superRefine: () => mp, symbol: () => Wd, templateLiteral: () => rp, transform: () => jf, tuple: () => _f, uint32: () => Id, uint64: () => Hd, ulid: () => nd, undefined: () => Kd, union: () => z, unknown: () => F, url: () => Gu, uuid: () => Bu, uuidv4: () => Vu, uuidv6: () => Hu, uuidv7: () => Uu, void: () => tf, xid: () => id, xor: () => df }), A = c("ZodType", (e4, t2) => (T.init(e4, t2), Object.assign(e4["~standard"], { jsonSchema: { input: dl(e4, "input"), output: dl(e4, "output") } }), e4.toJSONSchema = ul(e4, {}), e4.def = t2, e4.type = t2.type, Object.defineProperty(e4, "_def", { value: t2 }), e4.check = (...n2) => {
4946
4946
  var r2;
4947
4947
  return e4.clone(ue(t2, { checks: [...(r2 = t2.checks) == null ? [] : r2, ...n2.map((e5) => typeof e5 == "function" ? { _zod: { check: e5, def: { check: "custom" }, onattach: [] } } : e5)] }), { parent: true });
4948
- }, e4.with = e4.check, e4.clone = (t3, n2) => De(e4, t3, n2), e4.brand = () => e4, e4.register = ((t3, n2) => (t3.add(e4, n2), e4)), e4.parse = (t3, n2) => yu(e4, t3, n2, { callee: e4.parse }), e4.safeParse = (t3, n2) => xu(e4, t3, n2), e4.parseAsync = async (t3, n2) => bu(e4, t3, n2, { callee: e4.parseAsync }), e4.safeParseAsync = async (t3, n2) => Su(e4, t3, n2), e4.spa = e4.safeParseAsync, e4.encode = (t3, n2) => Cu(e4, t3, n2), e4.decode = (t3, n2) => wu(e4, t3, n2), e4.encodeAsync = async (t3, n2) => Tu(e4, t3, n2), e4.decodeAsync = async (t3, n2) => Eu(e4, t3, n2), e4.safeEncode = (t3, n2) => Du(e4, t3, n2), e4.safeDecode = (t3, n2) => Ou(e4, t3, n2), e4.safeEncodeAsync = async (t3, n2) => ku(e4, t3, n2), e4.safeDecodeAsync = async (t3, n2) => Au(e4, t3, n2), e4.refine = (t3, n2) => e4.check(fp(t3, n2)), e4.superRefine = (t3) => e4.check(pp(t3)), e4.overwrite = (t3) => e4.check(Sc(t3)), e4.optional = () => W(e4), e4.exactOptional = () => Nf(e4), e4.nullable = () => Ff(e4), e4.nullish = () => W(Ff(e4)), e4.nonoptional = (t3) => Hf(e4, t3), e4.array = () => L(e4), e4.or = (t3) => B([e4, t3]), e4.and = (t3) => mf(e4, t3), e4.transform = (t3) => Xf(e4, Af(t3)), e4.default = (t3) => Rf(e4, t3), e4.prefault = (t3) => Bf(e4, t3), e4.catch = (t3) => Kf(e4, t3), e4.pipe = (t3) => Xf(e4, t3), e4.readonly = () => ep(e4), e4.describe = (t3) => {
4948
+ }, e4.with = e4.check, e4.clone = (t3, n2) => De(e4, t3, n2), e4.brand = () => e4, e4.register = ((t3, n2) => (t3.add(e4, n2), e4)), e4.parse = (t3, n2) => bu(e4, t3, n2, { callee: e4.parse }), e4.safeParse = (t3, n2) => Su(e4, t3, n2), e4.parseAsync = async (t3, n2) => xu(e4, t3, n2, { callee: e4.parseAsync }), e4.safeParseAsync = async (t3, n2) => Cu(e4, t3, n2), e4.spa = e4.safeParseAsync, e4.encode = (t3, n2) => wu(e4, t3, n2), e4.decode = (t3, n2) => Tu(e4, t3, n2), e4.encodeAsync = async (t3, n2) => Eu(e4, t3, n2), e4.decodeAsync = async (t3, n2) => Du(e4, t3, n2), e4.safeEncode = (t3, n2) => Ou(e4, t3, n2), e4.safeDecode = (t3, n2) => ku(e4, t3, n2), e4.safeEncodeAsync = async (t3, n2) => Au(e4, t3, n2), e4.safeDecodeAsync = async (t3, n2) => ju(e4, t3, n2), e4.refine = (t3, n2) => e4.check(pp(t3, n2)), e4.superRefine = (t3) => e4.check(mp(t3)), e4.overwrite = (t3) => e4.check(Sc(t3)), e4.optional = () => U(e4), e4.exactOptional = () => Pf(e4), e4.nullable = () => If(e4), e4.nullish = () => U(If(e4)), e4.nonoptional = (t3) => Uf(e4, t3), e4.array = () => I(e4), e4.or = (t3) => z([e4, t3]), e4.and = (t3) => hf(e4, t3), e4.transform = (t3) => Zf(e4, jf(t3)), e4.default = (t3) => zf(e4, t3), e4.prefault = (t3) => Vf(e4, t3), e4.catch = (t3) => qf(e4, t3), e4.pipe = (t3) => Zf(e4, t3), e4.readonly = () => tp(e4), e4.describe = (t3) => {
4949
4949
  let n2 = e4.clone();
4950
4950
  return es.add(n2, { description: t3 }), n2;
4951
4951
  }, Object.defineProperty(e4, "description", { get() {
@@ -4955,386 +4955,386 @@ var _u = (e4, t2) => {
4955
4955
  if (t3.length === 0) return es.get(e4);
4956
4956
  let n2 = e4.clone();
4957
4957
  return es.add(n2, t3[0]), n2;
4958
- }, e4.isOptional = () => e4.safeParse(void 0).success, e4.isNullable = () => e4.safeParse(null).success, e4.apply = (t3) => t3(e4), e4)), Mu = c("_ZodString", (e4, t2) => {
4958
+ }, e4.isOptional = () => e4.safeParse(void 0).success, e4.isNullable = () => e4.safeParse(null).success, e4.apply = (t3) => t3(e4), e4)), Nu = c("_ZodString", (e4, t2) => {
4959
4959
  var n2, r2, i2;
4960
- mr.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n3, r3) => pl(e4, t3, n3, r3);
4960
+ mr.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n3, r3) => pl(e4, t3, n3, r3);
4961
4961
  let a2 = e4._zod.bag;
4962
4962
  e4.format = (n2 = a2.format) == null ? null : n2, e4.minLength = (r2 = a2.minimum) == null ? null : r2, e4.maxLength = (i2 = a2.maximum) == null ? null : i2, e4.regex = (...t3) => e4.check(mc(...t3)), e4.includes = (...t3) => e4.check(_c(...t3)), e4.startsWith = (...t3) => e4.check(vc(...t3)), e4.endsWith = (...t3) => e4.check(yc(...t3)), e4.min = (...t3) => e4.check(fc(...t3)), e4.max = (...t3) => e4.check(dc(...t3)), e4.length = (...t3) => e4.check(pc(...t3)), e4.nonempty = (...t3) => e4.check(fc(1, ...t3)), e4.lowercase = (t3) => e4.check(hc(t3)), e4.uppercase = (t3) => e4.check(gc(t3)), e4.trim = () => e4.check(wc()), e4.normalize = (...t3) => e4.check(Cc(...t3)), e4.toLowerCase = () => e4.check(Tc()), e4.toUpperCase = () => e4.check(Ec()), e4.slugify = () => e4.check(Dc());
4963
- }), Nu = c("ZodString", (e4, t2) => {
4964
- mr.init(e4, t2), Mu.init(e4, t2), e4.email = (t3) => e4.check(rs(Pu, t3)), e4.url = (t3) => e4.check(ls(Uu, t3)), e4.jwt = (t3) => e4.check(Ts(Sd, t3)), e4.emoji = (t3) => e4.check(us(Ku, t3)), e4.guid = (t3) => e4.check(is(Iu, t3)), e4.uuid = (t3) => e4.check(as(Ru, t3)), e4.uuidv4 = (t3) => e4.check(os(Ru, t3)), e4.uuidv6 = (t3) => e4.check(ss(Ru, t3)), e4.uuidv7 = (t3) => e4.check(cs(Ru, t3)), e4.nanoid = (t3) => e4.check(ds(Ju, t3)), e4.guid = (t3) => e4.check(is(Iu, t3)), e4.cuid = (t3) => e4.check(fs(Xu, t3)), e4.cuid2 = (t3) => e4.check(ps(Qu, t3)), e4.ulid = (t3) => e4.check(ms(ed, t3)), e4.base64 = (t3) => e4.check(Ss(gd, t3)), e4.base64url = (t3) => e4.check(Cs(vd, t3)), e4.xid = (t3) => e4.check(hs(nd, t3)), e4.ksuid = (t3) => e4.check(gs(id, t3)), e4.ipv4 = (t3) => e4.check(_s(od, t3)), e4.ipv6 = (t3) => e4.check(vs(ud, t3)), e4.cidrv4 = (t3) => e4.check(bs(fd, t3)), e4.cidrv6 = (t3) => e4.check(xs(md, t3)), e4.e164 = (t3) => e4.check(ws(bd, t3)), e4.datetime = (t3) => e4.check(uu(t3)), e4.date = (t3) => e4.check(fu(t3)), e4.time = (t3) => e4.check(mu(t3)), e4.duration = (t3) => e4.check(gu(t3));
4963
+ }), Pu = c("ZodString", (e4, t2) => {
4964
+ mr.init(e4, t2), Nu.init(e4, t2), e4.email = (t3) => e4.check(rs(Fu, t3)), e4.url = (t3) => e4.check(ls(Wu, t3)), e4.jwt = (t3) => e4.check(Ts(Cd, t3)), e4.emoji = (t3) => e4.check(us(qu, t3)), e4.guid = (t3) => e4.check(is(Lu, t3)), e4.uuid = (t3) => e4.check(as(zu, t3)), e4.uuidv4 = (t3) => e4.check(os(zu, t3)), e4.uuidv6 = (t3) => e4.check(ss(zu, t3)), e4.uuidv7 = (t3) => e4.check(cs(zu, t3)), e4.nanoid = (t3) => e4.check(ds(Yu, t3)), e4.guid = (t3) => e4.check(is(Lu, t3)), e4.cuid = (t3) => e4.check(fs(Zu, t3)), e4.cuid2 = (t3) => e4.check(ps($u, t3)), e4.ulid = (t3) => e4.check(ms(td, t3)), e4.base64 = (t3) => e4.check(Ss(_d, t3)), e4.base64url = (t3) => e4.check(Cs(yd, t3)), e4.xid = (t3) => e4.check(hs(rd, t3)), e4.ksuid = (t3) => e4.check(gs(ad, t3)), e4.ipv4 = (t3) => e4.check(_s(sd, t3)), e4.ipv6 = (t3) => e4.check(vs(dd, t3)), e4.cidrv4 = (t3) => e4.check(bs(pd, t3)), e4.cidrv6 = (t3) => e4.check(xs(hd, t3)), e4.e164 = (t3) => e4.check(ws(xd, t3)), e4.datetime = (t3) => e4.check(uu(t3)), e4.date = (t3) => e4.check(fu(t3)), e4.time = (t3) => e4.check(mu(t3)), e4.duration = (t3) => e4.check(gu(t3));
4965
4965
  });
4966
- function M(e4) {
4967
- return ts(Nu, e4);
4966
+ function j(e4) {
4967
+ return ts(Pu, e4);
4968
4968
  }
4969
- var N = c("ZodStringFormat", (e4, t2) => {
4970
- E.init(e4, t2), Mu.init(e4, t2);
4971
- }), Pu = c("ZodEmail", (e4, t2) => {
4972
- _r.init(e4, t2), N.init(e4, t2);
4969
+ var M = c("ZodStringFormat", (e4, t2) => {
4970
+ E.init(e4, t2), Nu.init(e4, t2);
4971
+ }), Fu = c("ZodEmail", (e4, t2) => {
4972
+ _r.init(e4, t2), M.init(e4, t2);
4973
4973
  });
4974
- function Fu(e4) {
4975
- return rs(Pu, e4);
4974
+ function Iu(e4) {
4975
+ return rs(Fu, e4);
4976
4976
  }
4977
- var Iu = c("ZodGUID", (e4, t2) => {
4978
- hr.init(e4, t2), N.init(e4, t2);
4977
+ var Lu = c("ZodGUID", (e4, t2) => {
4978
+ hr.init(e4, t2), M.init(e4, t2);
4979
4979
  });
4980
- function Lu(e4) {
4981
- return is(Iu, e4);
4980
+ function Ru(e4) {
4981
+ return is(Lu, e4);
4982
4982
  }
4983
- var Ru = c("ZodUUID", (e4, t2) => {
4984
- gr.init(e4, t2), N.init(e4, t2);
4983
+ var zu = c("ZodUUID", (e4, t2) => {
4984
+ gr.init(e4, t2), M.init(e4, t2);
4985
4985
  });
4986
- function zu(e4) {
4987
- return as(Ru, e4);
4988
- }
4989
4986
  function Bu(e4) {
4990
- return os(Ru, e4);
4987
+ return as(zu, e4);
4991
4988
  }
4992
4989
  function Vu(e4) {
4993
- return ss(Ru, e4);
4990
+ return os(zu, e4);
4994
4991
  }
4995
4992
  function Hu(e4) {
4996
- return cs(Ru, e4);
4993
+ return ss(zu, e4);
4997
4994
  }
4998
- var Uu = c("ZodURL", (e4, t2) => {
4999
- vr.init(e4, t2), N.init(e4, t2);
5000
- });
5001
- function Wu(e4) {
5002
- return ls(Uu, e4);
4995
+ function Uu(e4) {
4996
+ return cs(zu, e4);
5003
4997
  }
4998
+ var Wu = c("ZodURL", (e4, t2) => {
4999
+ vr.init(e4, t2), M.init(e4, t2);
5000
+ });
5004
5001
  function Gu(e4) {
5005
- return ls(Uu, { protocol: /^https?$/, hostname: ln, ...x(e4) });
5002
+ return ls(Wu, e4);
5006
5003
  }
5007
- var Ku = c("ZodEmoji", (e4, t2) => {
5008
- yr.init(e4, t2), N.init(e4, t2);
5009
- });
5010
- function qu(e4) {
5011
- return us(Ku, e4);
5004
+ function Ku(e4) {
5005
+ return ls(Wu, { protocol: /^https?$/, hostname: ln, ...x(e4) });
5012
5006
  }
5013
- var Ju = c("ZodNanoID", (e4, t2) => {
5014
- br.init(e4, t2), N.init(e4, t2);
5007
+ var qu = c("ZodEmoji", (e4, t2) => {
5008
+ yr.init(e4, t2), M.init(e4, t2);
5015
5009
  });
5016
- function Yu(e4) {
5017
- return ds(Ju, e4);
5010
+ function Ju(e4) {
5011
+ return us(qu, e4);
5018
5012
  }
5019
- var Xu = c("ZodCUID", (e4, t2) => {
5020
- xr.init(e4, t2), N.init(e4, t2);
5013
+ var Yu = c("ZodNanoID", (e4, t2) => {
5014
+ br.init(e4, t2), M.init(e4, t2);
5021
5015
  });
5022
- function Zu(e4) {
5023
- return fs(Xu, e4);
5016
+ function Xu(e4) {
5017
+ return ds(Yu, e4);
5024
5018
  }
5025
- var Qu = c("ZodCUID2", (e4, t2) => {
5026
- Sr.init(e4, t2), N.init(e4, t2);
5019
+ var Zu = c("ZodCUID", (e4, t2) => {
5020
+ xr.init(e4, t2), M.init(e4, t2);
5027
5021
  });
5028
- function $u(e4) {
5029
- return ps(Qu, e4);
5022
+ function Qu(e4) {
5023
+ return fs(Zu, e4);
5030
5024
  }
5031
- var ed = c("ZodULID", (e4, t2) => {
5032
- Cr.init(e4, t2), N.init(e4, t2);
5025
+ var $u = c("ZodCUID2", (e4, t2) => {
5026
+ Sr.init(e4, t2), M.init(e4, t2);
5033
5027
  });
5034
- function td(e4) {
5035
- return ms(ed, e4);
5028
+ function ed(e4) {
5029
+ return ps($u, e4);
5036
5030
  }
5037
- var nd = c("ZodXID", (e4, t2) => {
5038
- wr.init(e4, t2), N.init(e4, t2);
5031
+ var td = c("ZodULID", (e4, t2) => {
5032
+ Cr.init(e4, t2), M.init(e4, t2);
5039
5033
  });
5040
- function rd(e4) {
5041
- return hs(nd, e4);
5034
+ function nd(e4) {
5035
+ return ms(td, e4);
5042
5036
  }
5043
- var id = c("ZodKSUID", (e4, t2) => {
5044
- Tr.init(e4, t2), N.init(e4, t2);
5037
+ var rd = c("ZodXID", (e4, t2) => {
5038
+ wr.init(e4, t2), M.init(e4, t2);
5045
5039
  });
5046
- function ad(e4) {
5047
- return gs(id, e4);
5040
+ function id(e4) {
5041
+ return hs(rd, e4);
5048
5042
  }
5049
- var od = c("ZodIPv4", (e4, t2) => {
5050
- Ar.init(e4, t2), N.init(e4, t2);
5043
+ var ad = c("ZodKSUID", (e4, t2) => {
5044
+ Tr.init(e4, t2), M.init(e4, t2);
5051
5045
  });
5052
- function sd(e4) {
5053
- return _s(od, e4);
5046
+ function od(e4) {
5047
+ return gs(ad, e4);
5054
5048
  }
5055
- var cd = c("ZodMAC", (e4, t2) => {
5056
- Mr.init(e4, t2), N.init(e4, t2);
5049
+ var sd = c("ZodIPv4", (e4, t2) => {
5050
+ Ar.init(e4, t2), M.init(e4, t2);
5057
5051
  });
5058
- function ld(e4) {
5059
- return ys(cd, e4);
5052
+ function cd(e4) {
5053
+ return _s(sd, e4);
5060
5054
  }
5061
- var ud = c("ZodIPv6", (e4, t2) => {
5062
- jr.init(e4, t2), N.init(e4, t2);
5055
+ var ld = c("ZodMAC", (e4, t2) => {
5056
+ Mr.init(e4, t2), M.init(e4, t2);
5063
5057
  });
5064
- function dd(e4) {
5065
- return vs(ud, e4);
5058
+ function ud(e4) {
5059
+ return ys(ld, e4);
5066
5060
  }
5067
- var fd = c("ZodCIDRv4", (e4, t2) => {
5068
- Nr.init(e4, t2), N.init(e4, t2);
5061
+ var dd = c("ZodIPv6", (e4, t2) => {
5062
+ jr.init(e4, t2), M.init(e4, t2);
5069
5063
  });
5070
- function pd(e4) {
5071
- return bs(fd, e4);
5064
+ function fd(e4) {
5065
+ return vs(dd, e4);
5072
5066
  }
5073
- var md = c("ZodCIDRv6", (e4, t2) => {
5074
- Pr.init(e4, t2), N.init(e4, t2);
5067
+ var pd = c("ZodCIDRv4", (e4, t2) => {
5068
+ Nr.init(e4, t2), M.init(e4, t2);
5075
5069
  });
5076
- function hd(e4) {
5077
- return xs(md, e4);
5070
+ function md(e4) {
5071
+ return bs(pd, e4);
5078
5072
  }
5079
- var gd = c("ZodBase64", (e4, t2) => {
5080
- Ir.init(e4, t2), N.init(e4, t2);
5073
+ var hd = c("ZodCIDRv6", (e4, t2) => {
5074
+ Pr.init(e4, t2), M.init(e4, t2);
5081
5075
  });
5082
- function _d(e4) {
5083
- return Ss(gd, e4);
5076
+ function gd(e4) {
5077
+ return xs(hd, e4);
5084
5078
  }
5085
- var vd = c("ZodBase64URL", (e4, t2) => {
5086
- Rr.init(e4, t2), N.init(e4, t2);
5079
+ var _d = c("ZodBase64", (e4, t2) => {
5080
+ Ir.init(e4, t2), M.init(e4, t2);
5087
5081
  });
5088
- function yd(e4) {
5089
- return Cs(vd, e4);
5082
+ function vd(e4) {
5083
+ return Ss(_d, e4);
5090
5084
  }
5091
- var bd = c("ZodE164", (e4, t2) => {
5092
- zr.init(e4, t2), N.init(e4, t2);
5085
+ var yd = c("ZodBase64URL", (e4, t2) => {
5086
+ Rr.init(e4, t2), M.init(e4, t2);
5093
5087
  });
5094
- function xd(e4) {
5095
- return ws(bd, e4);
5088
+ function bd(e4) {
5089
+ return Cs(yd, e4);
5096
5090
  }
5097
- var Sd = c("ZodJWT", (e4, t2) => {
5098
- Vr.init(e4, t2), N.init(e4, t2);
5091
+ var xd = c("ZodE164", (e4, t2) => {
5092
+ zr.init(e4, t2), M.init(e4, t2);
5099
5093
  });
5100
- function Cd(e4) {
5101
- return Ts(Sd, e4);
5094
+ function Sd(e4) {
5095
+ return ws(xd, e4);
5102
5096
  }
5103
- var wd = c("ZodCustomStringFormat", (e4, t2) => {
5104
- Hr.init(e4, t2), N.init(e4, t2);
5097
+ var Cd = c("ZodJWT", (e4, t2) => {
5098
+ Vr.init(e4, t2), M.init(e4, t2);
5105
5099
  });
5106
- function Td(e4, t2, n2 = {}) {
5107
- return ol(wd, e4, t2, n2);
5100
+ function wd(e4) {
5101
+ return Ts(Cd, e4);
5108
5102
  }
5109
- function Ed(e4) {
5110
- return ol(wd, "hostname", cn, e4);
5103
+ var Td = c("ZodCustomStringFormat", (e4, t2) => {
5104
+ Hr.init(e4, t2), M.init(e4, t2);
5105
+ });
5106
+ function Ed(e4, t2, n2 = {}) {
5107
+ return ol(Td, e4, t2, n2);
5111
5108
  }
5112
5109
  function Dd(e4) {
5113
- return ol(wd, "hex", Tn, e4);
5110
+ return ol(Td, "hostname", cn, e4);
5114
5111
  }
5115
- function Od(e4, t2) {
5112
+ function Od(e4) {
5113
+ return ol(Td, "hex", Tn, e4);
5114
+ }
5115
+ function kd(e4, t2) {
5116
5116
  var n2;
5117
5117
  let r2 = "".concat(e4, "_").concat((n2 = t2 == null ? void 0 : t2.enc) == null ? "hex" : n2), i2 = Mt[r2];
5118
5118
  if (!i2) throw Error("Unrecognized hash format: ".concat(r2));
5119
- return ol(wd, r2, i2, t2);
5119
+ return ol(Td, r2, i2, t2);
5120
5120
  }
5121
- var kd = c("ZodNumber", (e4, t2) => {
5121
+ var Ad = c("ZodNumber", (e4, t2) => {
5122
5122
  var n2, r2, i2, a2, o2, s2, c2, l2, u2;
5123
- Ur.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n3, r3) => ml(e4, t3, n3, r3), e4.gt = (t3, n3) => e4.check(nc(t3, n3)), e4.gte = (t3, n3) => e4.check(D(t3, n3)), e4.min = (t3, n3) => e4.check(D(t3, n3)), e4.lt = (t3, n3) => e4.check(ec(t3, n3)), e4.lte = (t3, n3) => e4.check(tc(t3, n3)), e4.max = (t3, n3) => e4.check(tc(t3, n3)), e4.int = (t3) => e4.check(jd(t3)), e4.safe = (t3) => e4.check(jd(t3)), e4.positive = (t3) => e4.check(nc(0, t3)), e4.nonnegative = (t3) => e4.check(D(0, t3)), e4.negative = (t3) => e4.check(ec(0, t3)), e4.nonpositive = (t3) => e4.check(tc(0, t3)), e4.multipleOf = (t3, n3) => e4.check(sc(t3, n3)), e4.step = (t3, n3) => e4.check(sc(t3, n3)), e4.finite = () => e4;
5123
+ Ur.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n3, r3) => ml(e4, t3, n3, r3), e4.gt = (t3, n3) => e4.check(nc(t3, n3)), e4.gte = (t3, n3) => e4.check(D(t3, n3)), e4.min = (t3, n3) => e4.check(D(t3, n3)), e4.lt = (t3, n3) => e4.check(ec(t3, n3)), e4.lte = (t3, n3) => e4.check(tc(t3, n3)), e4.max = (t3, n3) => e4.check(tc(t3, n3)), e4.int = (t3) => e4.check(Md(t3)), e4.safe = (t3) => e4.check(Md(t3)), e4.positive = (t3) => e4.check(nc(0, t3)), e4.nonnegative = (t3) => e4.check(D(0, t3)), e4.negative = (t3) => e4.check(ec(0, t3)), e4.nonpositive = (t3) => e4.check(tc(0, t3)), e4.multipleOf = (t3, n3) => e4.check(sc(t3, n3)), e4.step = (t3, n3) => e4.check(sc(t3, n3)), e4.finite = () => e4;
5124
5124
  let d2 = e4._zod.bag;
5125
5125
  e4.minValue = (n2 = Math.max((r2 = d2.minimum) == null ? -1 / 0 : r2, (i2 = d2.exclusiveMinimum) == null ? -1 / 0 : i2)) == null ? null : n2, e4.maxValue = (a2 = Math.min((o2 = d2.maximum) == null ? 1 / 0 : o2, (s2 = d2.exclusiveMaximum) == null ? 1 / 0 : s2)) == null ? null : a2, e4.isInt = ((c2 = d2.format) == null ? "" : c2).includes("int") || Number.isSafeInteger((l2 = d2.multipleOf) == null ? 0.5 : l2), e4.isFinite = true, e4.format = (u2 = d2.format) == null ? null : u2;
5126
5126
  });
5127
- function P(e4) {
5128
- return js(kd, e4);
5127
+ function N(e4) {
5128
+ return js(Ad, e4);
5129
5129
  }
5130
- var Ad = c("ZodNumberFormat", (e4, t2) => {
5131
- Wr.init(e4, t2), kd.init(e4, t2);
5130
+ var jd = c("ZodNumberFormat", (e4, t2) => {
5131
+ Wr.init(e4, t2), Ad.init(e4, t2);
5132
5132
  });
5133
- function jd(e4) {
5134
- return Ns(Ad, e4);
5135
- }
5136
5133
  function Md(e4) {
5137
- return Ps(Ad, e4);
5134
+ return Ns(jd, e4);
5138
5135
  }
5139
5136
  function Nd(e4) {
5140
- return Fs(Ad, e4);
5137
+ return Ps(jd, e4);
5141
5138
  }
5142
5139
  function Pd(e4) {
5143
- return Is(Ad, e4);
5140
+ return Fs(jd, e4);
5144
5141
  }
5145
5142
  function Fd(e4) {
5146
- return Ls(Ad, e4);
5143
+ return Is(jd, e4);
5147
5144
  }
5148
- var Id = c("ZodBoolean", (e4, t2) => {
5149
- Gr.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => hl(e4, t3, n2, r2);
5145
+ function Id(e4) {
5146
+ return Ls(jd, e4);
5147
+ }
5148
+ var Ld = c("ZodBoolean", (e4, t2) => {
5149
+ Gr.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => hl(e4, t3, n2, r2);
5150
5150
  });
5151
- function F(e4) {
5152
- return Rs(Id, e4);
5151
+ function P(e4) {
5152
+ return Rs(Ld, e4);
5153
5153
  }
5154
- var Ld = c("ZodBigInt", (e4, t2) => {
5154
+ var Rd = c("ZodBigInt", (e4, t2) => {
5155
5155
  var n2, r2, i2;
5156
- Kr.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n3, r3) => gl(e4, t3, n3, r3), e4.gte = (t3, n3) => e4.check(D(t3, n3)), e4.min = (t3, n3) => e4.check(D(t3, n3)), e4.gt = (t3, n3) => e4.check(nc(t3, n3)), e4.gte = (t3, n3) => e4.check(D(t3, n3)), e4.min = (t3, n3) => e4.check(D(t3, n3)), e4.lt = (t3, n3) => e4.check(ec(t3, n3)), e4.lte = (t3, n3) => e4.check(tc(t3, n3)), e4.max = (t3, n3) => e4.check(tc(t3, n3)), e4.positive = (t3) => e4.check(nc(BigInt(0), t3)), e4.negative = (t3) => e4.check(ec(BigInt(0), t3)), e4.nonpositive = (t3) => e4.check(tc(BigInt(0), t3)), e4.nonnegative = (t3) => e4.check(D(BigInt(0), t3)), e4.multipleOf = (t3, n3) => e4.check(sc(t3, n3));
5156
+ Kr.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n3, r3) => gl(e4, t3, n3, r3), e4.gte = (t3, n3) => e4.check(D(t3, n3)), e4.min = (t3, n3) => e4.check(D(t3, n3)), e4.gt = (t3, n3) => e4.check(nc(t3, n3)), e4.gte = (t3, n3) => e4.check(D(t3, n3)), e4.min = (t3, n3) => e4.check(D(t3, n3)), e4.lt = (t3, n3) => e4.check(ec(t3, n3)), e4.lte = (t3, n3) => e4.check(tc(t3, n3)), e4.max = (t3, n3) => e4.check(tc(t3, n3)), e4.positive = (t3) => e4.check(nc(BigInt(0), t3)), e4.negative = (t3) => e4.check(ec(BigInt(0), t3)), e4.nonpositive = (t3) => e4.check(tc(BigInt(0), t3)), e4.nonnegative = (t3) => e4.check(D(BigInt(0), t3)), e4.multipleOf = (t3, n3) => e4.check(sc(t3, n3));
5157
5157
  let a2 = e4._zod.bag;
5158
5158
  e4.minValue = (n2 = a2.minimum) == null ? null : n2, e4.maxValue = (r2 = a2.maximum) == null ? null : r2, e4.format = (i2 = a2.format) == null ? null : i2;
5159
5159
  });
5160
- function Rd(e4) {
5161
- return Bs(Ld, e4);
5160
+ function zd(e4) {
5161
+ return Bs(Rd, e4);
5162
5162
  }
5163
- var zd = c("ZodBigIntFormat", (e4, t2) => {
5164
- qr.init(e4, t2), Ld.init(e4, t2);
5163
+ var Bd = c("ZodBigIntFormat", (e4, t2) => {
5164
+ qr.init(e4, t2), Rd.init(e4, t2);
5165
5165
  });
5166
- function Bd(e4) {
5167
- return Hs(zd, e4);
5168
- }
5169
5166
  function Vd(e4) {
5170
- return Us(zd, e4);
5167
+ return Hs(Bd, e4);
5168
+ }
5169
+ function Hd(e4) {
5170
+ return Us(Bd, e4);
5171
5171
  }
5172
- var Hd = c("ZodSymbol", (e4, t2) => {
5173
- Jr.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => _l(e4, t3, n2, r2);
5172
+ var Ud = c("ZodSymbol", (e4, t2) => {
5173
+ Jr.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => _l(e4, t3, n2, r2);
5174
5174
  });
5175
- function Ud(e4) {
5176
- return Ws(Hd, e4);
5175
+ function Wd(e4) {
5176
+ return Ws(Ud, e4);
5177
5177
  }
5178
- var Wd = c("ZodUndefined", (e4, t2) => {
5179
- Yr.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => yl(e4, t3, n2, r2);
5178
+ var Gd = c("ZodUndefined", (e4, t2) => {
5179
+ Yr.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => yl(e4, t3, n2, r2);
5180
5180
  });
5181
- function Gd(e4) {
5182
- return Gs(Wd, e4);
5181
+ function Kd(e4) {
5182
+ return Gs(Gd, e4);
5183
5183
  }
5184
- var Kd = c("ZodNull", (e4, t2) => {
5185
- Xr.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => vl(e4, t3, n2, r2);
5184
+ var qd = c("ZodNull", (e4, t2) => {
5185
+ Xr.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => vl(e4, t3, n2, r2);
5186
5186
  });
5187
- function qd(e4) {
5188
- return Ks(Kd, e4);
5187
+ function Jd(e4) {
5188
+ return Ks(qd, e4);
5189
5189
  }
5190
- var Jd = c("ZodAny", (e4, t2) => {
5191
- Zr.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (e5, t3, n2) => void 0;
5190
+ var Yd = c("ZodAny", (e4, t2) => {
5191
+ Zr.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (e5, t3, n2) => void 0;
5192
5192
  });
5193
- function Yd() {
5194
- return qs(Jd);
5193
+ function Xd() {
5194
+ return qs(Yd);
5195
5195
  }
5196
- var Xd = c("ZodUnknown", (e4, t2) => {
5197
- Qr.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (e5, t3, n2) => void 0;
5196
+ var Zd = c("ZodUnknown", (e4, t2) => {
5197
+ Qr.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (e5, t3, n2) => void 0;
5198
5198
  });
5199
- function I() {
5200
- return Js(Xd);
5199
+ function F() {
5200
+ return Js(Zd);
5201
5201
  }
5202
- var Zd = c("ZodNever", (e4, t2) => {
5203
- $r.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => xl(e4, t3, n2, r2);
5202
+ var Qd = c("ZodNever", (e4, t2) => {
5203
+ $r.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => xl(e4, t3, n2, r2);
5204
5204
  });
5205
- function Qd(e4) {
5206
- return Ys(Zd, e4);
5205
+ function $d(e4) {
5206
+ return Ys(Qd, e4);
5207
5207
  }
5208
- var $d = c("ZodVoid", (e4, t2) => {
5209
- ei.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => bl(e4, t3, n2, r2);
5208
+ var ef = c("ZodVoid", (e4, t2) => {
5209
+ ei.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => bl(e4, t3, n2, r2);
5210
5210
  });
5211
- function ef(e4) {
5212
- return Xs($d, e4);
5211
+ function tf(e4) {
5212
+ return Xs(ef, e4);
5213
5213
  }
5214
- var tf = c("ZodDate", (e4, t2) => {
5215
- ti.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n3, r2) => wl(e4, t3, n3, r2), e4.min = (t3, n3) => e4.check(D(t3, n3)), e4.max = (t3, n3) => e4.check(tc(t3, n3));
5214
+ var nf = c("ZodDate", (e4, t2) => {
5215
+ ti.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n3, r2) => wl(e4, t3, n3, r2), e4.min = (t3, n3) => e4.check(D(t3, n3)), e4.max = (t3, n3) => e4.check(tc(t3, n3));
5216
5216
  let n2 = e4._zod.bag;
5217
5217
  e4.minDate = n2.minimum ? new Date(n2.minimum) : null, e4.maxDate = n2.maximum ? new Date(n2.maximum) : null;
5218
5218
  });
5219
- function nf(e4) {
5220
- return Zs(tf, e4);
5219
+ function rf(e4) {
5220
+ return Zs(nf, e4);
5221
5221
  }
5222
- var rf = c("ZodArray", (e4, t2) => {
5223
- ri.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Il(e4, t3, n2, r2), e4.element = t2.element, e4.min = (t3, n2) => e4.check(fc(t3, n2)), e4.nonempty = (t3) => e4.check(fc(1, t3)), e4.max = (t3, n2) => e4.check(dc(t3, n2)), e4.length = (t3, n2) => e4.check(pc(t3, n2)), e4.unwrap = () => e4.element;
5222
+ var af = c("ZodArray", (e4, t2) => {
5223
+ ri.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Il(e4, t3, n2, r2), e4.element = t2.element, e4.min = (t3, n2) => e4.check(fc(t3, n2)), e4.nonempty = (t3) => e4.check(fc(1, t3)), e4.max = (t3, n2) => e4.check(dc(t3, n2)), e4.length = (t3, n2) => e4.check(pc(t3, n2)), e4.unwrap = () => e4.element;
5224
5224
  });
5225
- function L(e4, t2) {
5226
- return Oc(rf, e4, t2);
5225
+ function I(e4, t2) {
5226
+ return Oc(af, e4, t2);
5227
5227
  }
5228
- function af(e4) {
5228
+ function of(e4) {
5229
5229
  let t2 = e4._zod.def.shape;
5230
- return H(Object.keys(t2));
5230
+ return V(Object.keys(t2));
5231
5231
  }
5232
- var of = c("ZodObject", (e4, t2) => {
5233
- ci.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Ll(e4, t3, n2, r2), b(e4, "shape", () => t2.shape), e4.keyof = () => H(Object.keys(e4._zod.def.shape)), e4.catchall = (t3) => e4.clone({ ...e4._zod.def, catchall: t3 }), e4.passthrough = () => e4.clone({ ...e4._zod.def, catchall: I() }), e4.loose = () => e4.clone({ ...e4._zod.def, catchall: I() }), e4.strict = () => e4.clone({ ...e4._zod.def, catchall: Qd() }), e4.strip = () => e4.clone({ ...e4._zod.def, catchall: void 0 }), e4.extend = (t3) => Pe(e4, t3), e4.safeExtend = (t3) => Fe(e4, t3), e4.merge = (t3) => Ie(e4, t3), e4.pick = (t3) => Me(e4, t3), e4.omit = (t3) => Ne(e4, t3), e4.partial = (...t3) => Le(jf, e4, t3[0]), e4.required = (...t3) => Re(Vf, e4, t3[0]);
5232
+ var sf = c("ZodObject", (e4, t2) => {
5233
+ ci.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Ll(e4, t3, n2, r2), b(e4, "shape", () => t2.shape), e4.keyof = () => V(Object.keys(e4._zod.def.shape)), e4.catchall = (t3) => e4.clone({ ...e4._zod.def, catchall: t3 }), e4.passthrough = () => e4.clone({ ...e4._zod.def, catchall: F() }), e4.loose = () => e4.clone({ ...e4._zod.def, catchall: F() }), e4.strict = () => e4.clone({ ...e4._zod.def, catchall: $d() }), e4.strip = () => e4.clone({ ...e4._zod.def, catchall: void 0 }), e4.extend = (t3) => Pe(e4, t3), e4.safeExtend = (t3) => Fe(e4, t3), e4.merge = (t3) => Ie(e4, t3), e4.pick = (t3) => Me(e4, t3), e4.omit = (t3) => Ne(e4, t3), e4.partial = (...t3) => Le(Mf, e4, t3[0]), e4.required = (...t3) => Re(Hf, e4, t3[0]);
5234
5234
  });
5235
- function R(e4, t2) {
5236
- return new of({ type: "object", shape: e4 == null ? {} : e4, ...x(t2) });
5235
+ function L(e4, t2) {
5236
+ return new sf({ type: "object", shape: e4 == null ? {} : e4, ...x(t2) });
5237
5237
  }
5238
- function sf(e4, t2) {
5239
- return new of({ type: "object", shape: e4, catchall: Qd(), ...x(t2) });
5238
+ function cf(e4, t2) {
5239
+ return new sf({ type: "object", shape: e4, catchall: $d(), ...x(t2) });
5240
5240
  }
5241
- function z(e4, t2) {
5242
- return new of({ type: "object", shape: e4, catchall: I(), ...x(t2) });
5241
+ function R(e4, t2) {
5242
+ return new sf({ type: "object", shape: e4, catchall: F(), ...x(t2) });
5243
5243
  }
5244
- var cf = c("ZodUnion", (e4, t2) => {
5245
- ui.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Rl(e4, t3, n2, r2), e4.options = t2.options;
5244
+ var lf = c("ZodUnion", (e4, t2) => {
5245
+ ui.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Rl(e4, t3, n2, r2), e4.options = t2.options;
5246
5246
  });
5247
- function B(e4, t2) {
5248
- return new cf({ type: "union", options: e4, ...x(t2) });
5247
+ function z(e4, t2) {
5248
+ return new lf({ type: "union", options: e4, ...x(t2) });
5249
5249
  }
5250
- var lf = c("ZodXor", (e4, t2) => {
5251
- cf.init(e4, t2), fi.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Rl(e4, t3, n2, r2), e4.options = t2.options;
5250
+ var uf = c("ZodXor", (e4, t2) => {
5251
+ lf.init(e4, t2), fi.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Rl(e4, t3, n2, r2), e4.options = t2.options;
5252
5252
  });
5253
- function uf(e4, t2) {
5254
- return new lf({ type: "union", options: e4, inclusive: false, ...x(t2) });
5253
+ function df(e4, t2) {
5254
+ return new uf({ type: "union", options: e4, inclusive: false, ...x(t2) });
5255
5255
  }
5256
- var df = c("ZodDiscriminatedUnion", (e4, t2) => {
5257
- cf.init(e4, t2), pi.init(e4, t2);
5256
+ var ff = c("ZodDiscriminatedUnion", (e4, t2) => {
5257
+ lf.init(e4, t2), pi.init(e4, t2);
5258
5258
  });
5259
- function ff(e4, t2, n2) {
5260
- return new df({ type: "union", options: t2, discriminator: e4, ...x(n2) });
5259
+ function pf(e4, t2, n2) {
5260
+ return new ff({ type: "union", options: t2, discriminator: e4, ...x(n2) });
5261
5261
  }
5262
- var pf = c("ZodIntersection", (e4, t2) => {
5263
- mi.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => zl(e4, t3, n2, r2);
5262
+ var mf = c("ZodIntersection", (e4, t2) => {
5263
+ mi.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => zl(e4, t3, n2, r2);
5264
5264
  });
5265
- function mf(e4, t2) {
5266
- return new pf({ type: "intersection", left: e4, right: t2 });
5265
+ function hf(e4, t2) {
5266
+ return new mf({ type: "intersection", left: e4, right: t2 });
5267
5267
  }
5268
- var hf = c("ZodTuple", (e4, t2) => {
5269
- _i.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Bl(e4, t3, n2, r2), e4.rest = (t3) => e4.clone({ ...e4._zod.def, rest: t3 });
5268
+ var gf = c("ZodTuple", (e4, t2) => {
5269
+ _i.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Bl(e4, t3, n2, r2), e4.rest = (t3) => e4.clone({ ...e4._zod.def, rest: t3 });
5270
5270
  });
5271
- function gf(e4, t2, n2) {
5271
+ function _f(e4, t2, n2) {
5272
5272
  let r2 = t2 instanceof T;
5273
- return new hf({ type: "tuple", items: e4, rest: r2 ? t2 : null, ...x(r2 ? n2 : t2) });
5273
+ return new gf({ type: "tuple", items: e4, rest: r2 ? t2 : null, ...x(r2 ? n2 : t2) });
5274
5274
  }
5275
- var _f = c("ZodRecord", (e4, t2) => {
5276
- yi.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Vl(e4, t3, n2, r2), e4.keyType = t2.keyType, e4.valueType = t2.valueType;
5275
+ var vf = c("ZodRecord", (e4, t2) => {
5276
+ yi.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Vl(e4, t3, n2, r2), e4.keyType = t2.keyType, e4.valueType = t2.valueType;
5277
5277
  });
5278
- function V(e4, t2, n2) {
5279
- return new _f({ type: "record", keyType: e4, valueType: t2, ...x(n2) });
5278
+ function B(e4, t2, n2) {
5279
+ return new vf({ type: "record", keyType: e4, valueType: t2, ...x(n2) });
5280
5280
  }
5281
- function vf(e4, t2, n2) {
5281
+ function yf(e4, t2, n2) {
5282
5282
  let r2 = De(e4);
5283
- return r2._zod.values = void 0, new _f({ type: "record", keyType: r2, valueType: t2, ...x(n2) });
5283
+ return r2._zod.values = void 0, new vf({ type: "record", keyType: r2, valueType: t2, ...x(n2) });
5284
5284
  }
5285
- function yf(e4, t2, n2) {
5286
- return new _f({ type: "record", keyType: e4, valueType: t2, mode: "loose", ...x(n2) });
5285
+ function bf(e4, t2, n2) {
5286
+ return new vf({ type: "record", keyType: e4, valueType: t2, mode: "loose", ...x(n2) });
5287
5287
  }
5288
- var bf = c("ZodMap", (e4, t2) => {
5289
- bi.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Pl(e4, t3, n2, r2), e4.keyType = t2.keyType, e4.valueType = t2.valueType, e4.min = (...t3) => e4.check(lc(...t3)), e4.nonempty = (t3) => e4.check(lc(1, t3)), e4.max = (...t3) => e4.check(cc(...t3)), e4.size = (...t3) => e4.check(uc(...t3));
5288
+ var xf = c("ZodMap", (e4, t2) => {
5289
+ bi.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Pl(e4, t3, n2, r2), e4.keyType = t2.keyType, e4.valueType = t2.valueType, e4.min = (...t3) => e4.check(lc(...t3)), e4.nonempty = (t3) => e4.check(lc(1, t3)), e4.max = (...t3) => e4.check(cc(...t3)), e4.size = (...t3) => e4.check(uc(...t3));
5290
5290
  });
5291
- function xf(e4, t2, n2) {
5292
- return new bf({ type: "map", keyType: e4, valueType: t2, ...x(n2) });
5291
+ function Sf(e4, t2, n2) {
5292
+ return new xf({ type: "map", keyType: e4, valueType: t2, ...x(n2) });
5293
5293
  }
5294
- var Sf = c("ZodSet", (e4, t2) => {
5295
- Si.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Fl(e4, t3, n2, r2), e4.min = (...t3) => e4.check(lc(...t3)), e4.nonempty = (t3) => e4.check(lc(1, t3)), e4.max = (...t3) => e4.check(cc(...t3)), e4.size = (...t3) => e4.check(uc(...t3));
5294
+ var Cf = c("ZodSet", (e4, t2) => {
5295
+ Si.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Fl(e4, t3, n2, r2), e4.min = (...t3) => e4.check(lc(...t3)), e4.nonempty = (t3) => e4.check(lc(1, t3)), e4.max = (...t3) => e4.check(cc(...t3)), e4.size = (...t3) => e4.check(uc(...t3));
5296
5296
  });
5297
- function Cf(e4, t2) {
5298
- return new Sf({ type: "set", valueType: e4, ...x(t2) });
5297
+ function wf(e4, t2) {
5298
+ return new Cf({ type: "set", valueType: e4, ...x(t2) });
5299
5299
  }
5300
- var wf = c("ZodEnum", (e4, t2) => {
5301
- wi.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n3, r2) => Tl(e4, t3, n3, r2), e4.enum = t2.entries, e4.options = Object.values(t2.entries);
5300
+ var Tf = c("ZodEnum", (e4, t2) => {
5301
+ wi.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n3, r2) => Tl(e4, t3, n3, r2), e4.enum = t2.entries, e4.options = Object.values(t2.entries);
5302
5302
  let n2 = new Set(Object.keys(t2.entries));
5303
5303
  e4.extract = (e5, r2) => {
5304
5304
  let i2 = {};
5305
5305
  for (let r3 of e5) if (n2.has(r3)) i2[r3] = t2.entries[r3];
5306
5306
  else throw Error("Key ".concat(r3, " not found in enum"));
5307
- return new wf({ ...t2, checks: [], ...x(r2), entries: i2 });
5307
+ return new Tf({ ...t2, checks: [], ...x(r2), entries: i2 });
5308
5308
  }, e4.exclude = (e5, r2) => {
5309
5309
  let i2 = { ...t2.entries };
5310
5310
  for (let t3 of e5) if (n2.has(t3)) delete i2[t3];
5311
5311
  else throw Error("Key ".concat(t3, " not found in enum"));
5312
- return new wf({ ...t2, checks: [], ...x(r2), entries: i2 });
5312
+ return new Tf({ ...t2, checks: [], ...x(r2), entries: i2 });
5313
5313
  };
5314
5314
  });
5315
- function H(e4, t2) {
5316
- return new wf({ type: "enum", entries: Array.isArray(e4) ? Object.fromEntries(e4.map((e5) => [e5, e5])) : e4, ...x(t2) });
5315
+ function V(e4, t2) {
5316
+ return new Tf({ type: "enum", entries: Array.isArray(e4) ? Object.fromEntries(e4.map((e5) => [e5, e5])) : e4, ...x(t2) });
5317
5317
  }
5318
- function Tf(e4, t2) {
5319
- return new wf({ type: "enum", entries: e4, ...x(t2) });
5318
+ function Ef(e4, t2) {
5319
+ return new Tf({ type: "enum", entries: e4, ...x(t2) });
5320
5320
  }
5321
- var Ef = c("ZodLiteral", (e4, t2) => {
5322
- Ti.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => El(e4, t3, n2, r2), e4.values = new Set(t2.values), Object.defineProperty(e4, "value", { get() {
5321
+ var Df = c("ZodLiteral", (e4, t2) => {
5322
+ Ti.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => El(e4, t3, n2, r2), e4.values = new Set(t2.values), Object.defineProperty(e4, "value", { get() {
5323
5323
  if (t2.values.length > 1) throw Error("This schema contains multiple valid literal values. Use `.values` instead.");
5324
5324
  return t2.values[0];
5325
5325
  } });
5326
5326
  });
5327
- function U(e4, t2) {
5328
- return new Ef({ type: "literal", values: Array.isArray(e4) ? e4 : [e4], ...x(t2) });
5327
+ function H(e4, t2) {
5328
+ return new Df({ type: "literal", values: Array.isArray(e4) ? e4 : [e4], ...x(t2) });
5329
5329
  }
5330
- var Df = c("ZodFile", (e4, t2) => {
5331
- Ei.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => kl(e4, t3, n2, r2), e4.min = (t3, n2) => e4.check(lc(t3, n2)), e4.max = (t3, n2) => e4.check(cc(t3, n2)), e4.mime = (t3, n2) => e4.check(xc(Array.isArray(t3) ? t3 : [t3], n2));
5330
+ var Of = c("ZodFile", (e4, t2) => {
5331
+ Ei.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => kl(e4, t3, n2, r2), e4.min = (t3, n2) => e4.check(lc(t3, n2)), e4.max = (t3, n2) => e4.check(cc(t3, n2)), e4.mime = (t3, n2) => e4.check(xc(Array.isArray(t3) ? t3 : [t3], n2));
5332
5332
  });
5333
- function Of(e4) {
5334
- return Bc(Df, e4);
5333
+ function kf(e4) {
5334
+ return Bc(Of, e4);
5335
5335
  }
5336
- var kf = c("ZodTransform", (e4, t2) => {
5337
- Di.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Nl(e4, t3, n2, r2), e4._zod.parse = (n2, r2) => {
5336
+ var Af = c("ZodTransform", (e4, t2) => {
5337
+ Di.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Nl(e4, t3, n2, r2), e4._zod.parse = (n2, r2) => {
5338
5338
  if (r2.direction === "backward") throw new d(e4.constructor.name);
5339
5339
  n2.addIssue = (r3) => {
5340
5340
  if (typeof r3 == "string") n2.issues.push(Ge(r3, n2.value, t2));
@@ -5347,132 +5347,132 @@ var kf = c("ZodTransform", (e4, t2) => {
5347
5347
  return i2 instanceof Promise ? i2.then((e5) => (n2.value = e5, n2)) : (n2.value = i2, n2);
5348
5348
  };
5349
5349
  });
5350
- function Af(e4) {
5351
- return new kf({ type: "transform", transform: e4 });
5350
+ function jf(e4) {
5351
+ return new Af({ type: "transform", transform: e4 });
5352
5352
  }
5353
- var jf = c("ZodOptional", (e4, t2) => {
5354
- ki.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Xl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5353
+ var Mf = c("ZodOptional", (e4, t2) => {
5354
+ ki.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Xl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5355
5355
  });
5356
- function W(e4) {
5357
- return new jf({ type: "optional", innerType: e4 });
5358
- }
5359
- var Mf = c("ZodExactOptional", (e4, t2) => {
5360
- Ai.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Xl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5361
- });
5362
- function Nf(e4) {
5356
+ function U(e4) {
5363
5357
  return new Mf({ type: "optional", innerType: e4 });
5364
5358
  }
5365
- var Pf = c("ZodNullable", (e4, t2) => {
5366
- ji.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Hl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5359
+ var Nf = c("ZodExactOptional", (e4, t2) => {
5360
+ Ai.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Xl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5367
5361
  });
5368
- function Ff(e4) {
5369
- return new Pf({ type: "nullable", innerType: e4 });
5362
+ function Pf(e4) {
5363
+ return new Nf({ type: "optional", innerType: e4 });
5370
5364
  }
5365
+ var Ff = c("ZodNullable", (e4, t2) => {
5366
+ ji.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Hl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5367
+ });
5371
5368
  function If(e4) {
5372
- return W(Ff(e4));
5369
+ return new Ff({ type: "nullable", innerType: e4 });
5373
5370
  }
5374
- var Lf = c("ZodDefault", (e4, t2) => {
5375
- Mi.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Wl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType, e4.removeDefault = e4.unwrap;
5371
+ function Lf(e4) {
5372
+ return U(If(e4));
5373
+ }
5374
+ var Rf = c("ZodDefault", (e4, t2) => {
5375
+ Mi.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Wl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType, e4.removeDefault = e4.unwrap;
5376
5376
  });
5377
- function Rf(e4, t2) {
5378
- return new Lf({ type: "default", innerType: e4, get defaultValue() {
5377
+ function zf(e4, t2) {
5378
+ return new Rf({ type: "default", innerType: e4, get defaultValue() {
5379
5379
  return typeof t2 == "function" ? t2() : xe(t2);
5380
5380
  } });
5381
5381
  }
5382
- var zf = c("ZodPrefault", (e4, t2) => {
5383
- Pi.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Gl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5382
+ var Bf = c("ZodPrefault", (e4, t2) => {
5383
+ Pi.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Gl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5384
5384
  });
5385
- function Bf(e4, t2) {
5386
- return new zf({ type: "prefault", innerType: e4, get defaultValue() {
5385
+ function Vf(e4, t2) {
5386
+ return new Bf({ type: "prefault", innerType: e4, get defaultValue() {
5387
5387
  return typeof t2 == "function" ? t2() : xe(t2);
5388
5388
  } });
5389
5389
  }
5390
- var Vf = c("ZodNonOptional", (e4, t2) => {
5391
- Fi.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Ul(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5390
+ var Hf = c("ZodNonOptional", (e4, t2) => {
5391
+ Fi.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Ul(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5392
5392
  });
5393
- function Hf(e4, t2) {
5394
- return new Vf({ type: "nonoptional", innerType: e4, ...x(t2) });
5393
+ function Uf(e4, t2) {
5394
+ return new Hf({ type: "nonoptional", innerType: e4, ...x(t2) });
5395
5395
  }
5396
- var Uf = c("ZodSuccess", (e4, t2) => {
5397
- Li.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Al(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5396
+ var Wf = c("ZodSuccess", (e4, t2) => {
5397
+ Li.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Al(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5398
5398
  });
5399
- function Wf(e4) {
5400
- return new Uf({ type: "success", innerType: e4 });
5399
+ function Gf(e4) {
5400
+ return new Wf({ type: "success", innerType: e4 });
5401
5401
  }
5402
- var Gf = c("ZodCatch", (e4, t2) => {
5403
- Ri.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Kl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType, e4.removeCatch = e4.unwrap;
5402
+ var Kf = c("ZodCatch", (e4, t2) => {
5403
+ Ri.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Kl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType, e4.removeCatch = e4.unwrap;
5404
5404
  });
5405
- function Kf(e4, t2) {
5406
- return new Gf({ type: "catch", innerType: e4, catchValue: typeof t2 == "function" ? t2 : () => t2 });
5405
+ function qf(e4, t2) {
5406
+ return new Kf({ type: "catch", innerType: e4, catchValue: typeof t2 == "function" ? t2 : () => t2 });
5407
5407
  }
5408
- var qf = c("ZodNaN", (e4, t2) => {
5409
- zi.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Dl(e4, t3, n2, r2);
5408
+ var Jf = c("ZodNaN", (e4, t2) => {
5409
+ zi.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Dl(e4, t3, n2, r2);
5410
5410
  });
5411
- function Jf(e4) {
5412
- return $s(qf, e4);
5411
+ function Yf(e4) {
5412
+ return $s(Jf, e4);
5413
5413
  }
5414
- var Yf = c("ZodPipe", (e4, t2) => {
5415
- Bi.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => ql(e4, t3, n2, r2), e4.in = t2.in, e4.out = t2.out;
5414
+ var Xf = c("ZodPipe", (e4, t2) => {
5415
+ Bi.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => ql(e4, t3, n2, r2), e4.in = t2.in, e4.out = t2.out;
5416
5416
  });
5417
- function Xf(e4, t2) {
5418
- return new Yf({ type: "pipe", in: e4, out: t2 });
5417
+ function Zf(e4, t2) {
5418
+ return new Xf({ type: "pipe", in: e4, out: t2 });
5419
5419
  }
5420
- var Zf = c("ZodCodec", (e4, t2) => {
5421
- Yf.init(e4, t2), Hi.init(e4, t2);
5420
+ var Qf = c("ZodCodec", (e4, t2) => {
5421
+ Xf.init(e4, t2), Hi.init(e4, t2);
5422
5422
  });
5423
- function Qf(e4, t2, n2) {
5424
- return new Zf({ type: "pipe", in: e4, out: t2, transform: n2.decode, reverseTransform: n2.encode });
5423
+ function $f(e4, t2, n2) {
5424
+ return new Qf({ type: "pipe", in: e4, out: t2, transform: n2.decode, reverseTransform: n2.encode });
5425
5425
  }
5426
- var $f = c("ZodReadonly", (e4, t2) => {
5427
- Gi.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Jl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5426
+ var ep = c("ZodReadonly", (e4, t2) => {
5427
+ Gi.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Jl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5428
5428
  });
5429
- function ep(e4) {
5430
- return new $f({ type: "readonly", innerType: e4 });
5429
+ function tp(e4) {
5430
+ return new ep({ type: "readonly", innerType: e4 });
5431
5431
  }
5432
- var tp = c("ZodTemplateLiteral", (e4, t2) => {
5433
- qi.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Ol(e4, t3, n2, r2);
5432
+ var np = c("ZodTemplateLiteral", (e4, t2) => {
5433
+ qi.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Ol(e4, t3, n2, r2);
5434
5434
  });
5435
- function np(e4, t2) {
5436
- return new tp({ type: "template_literal", parts: e4, ...x(t2) });
5435
+ function rp(e4, t2) {
5436
+ return new np({ type: "template_literal", parts: e4, ...x(t2) });
5437
5437
  }
5438
- var rp = c("ZodLazy", (e4, t2) => {
5439
- Xi.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Zl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.getter();
5438
+ var ip = c("ZodLazy", (e4, t2) => {
5439
+ Xi.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Zl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.getter();
5440
5440
  });
5441
- function ip(e4) {
5442
- return new rp({ type: "lazy", getter: e4 });
5441
+ function ap(e4) {
5442
+ return new ip({ type: "lazy", getter: e4 });
5443
5443
  }
5444
- var ap = c("ZodPromise", (e4, t2) => {
5445
- Yi.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Yl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5444
+ var op = c("ZodPromise", (e4, t2) => {
5445
+ Yi.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Yl(e4, t3, n2, r2), e4.unwrap = () => e4._zod.def.innerType;
5446
5446
  });
5447
- function op(e4) {
5448
- return new ap({ type: "promise", innerType: e4 });
5447
+ function sp(e4) {
5448
+ return new op({ type: "promise", innerType: e4 });
5449
5449
  }
5450
- var sp = c("ZodFunction", (e4, t2) => {
5451
- Ji.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Ml(e4, t3, n2, r2);
5450
+ var cp = c("ZodFunction", (e4, t2) => {
5451
+ Ji.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => Ml(e4, t3, n2, r2);
5452
5452
  });
5453
- function cp(e4) {
5453
+ function lp(e4) {
5454
5454
  var t2, n2;
5455
- return new sp({ type: "function", input: Array.isArray(e4 == null ? void 0 : e4.input) ? gf(e4 == null ? void 0 : e4.input) : (t2 = e4 == null ? void 0 : e4.input) == null ? L(I()) : t2, output: (n2 = e4 == null ? void 0 : e4.output) == null ? I() : n2 });
5455
+ return new cp({ type: "function", input: Array.isArray(e4 == null ? void 0 : e4.input) ? _f(e4 == null ? void 0 : e4.input) : (t2 = e4 == null ? void 0 : e4.input) == null ? I(F()) : t2, output: (n2 = e4 == null ? void 0 : e4.output) == null ? F() : n2 });
5456
5456
  }
5457
- var lp = c("ZodCustom", (e4, t2) => {
5458
- Zi.init(e4, t2), j.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => jl(e4, t3, n2, r2);
5457
+ var up = c("ZodCustom", (e4, t2) => {
5458
+ Zi.init(e4, t2), A.init(e4, t2), e4._zod.processJSONSchema = (t3, n2, r2) => jl(e4, t3, n2, r2);
5459
5459
  });
5460
- function up(e4) {
5460
+ function dp(e4) {
5461
5461
  let t2 = new w({ check: "custom" });
5462
5462
  return t2._zod.check = e4, t2;
5463
5463
  }
5464
- function dp(e4, t2) {
5465
- return $c(lp, e4 == null ? (() => true) : e4, t2);
5464
+ function fp(e4, t2) {
5465
+ return $c(up, e4 == null ? (() => true) : e4, t2);
5466
5466
  }
5467
- function fp(e4, t2 = {}) {
5468
- return el(lp, e4, t2);
5467
+ function pp(e4, t2 = {}) {
5468
+ return el(up, e4, t2);
5469
5469
  }
5470
- function pp(e4) {
5470
+ function mp(e4) {
5471
5471
  return tl(e4);
5472
5472
  }
5473
- var mp = rl, hp = il;
5474
- function gp(e4, t2 = {}) {
5475
- let n2 = new lp({ type: "custom", check: "custom", fn: (t3) => t3 instanceof e4, abort: true, ...x(t2) });
5473
+ var hp = rl, gp = il;
5474
+ function _p(e4, t2 = {}) {
5475
+ let n2 = new up({ type: "custom", check: "custom", fn: (t3) => t3 instanceof e4, abort: true, ...x(t2) });
5476
5476
  return n2._zod.bag.Class = e4, n2._zod.check = (t3) => {
5477
5477
  if (!(t3.value instanceof e4)) {
5478
5478
  var r2;
@@ -5480,30 +5480,30 @@ function gp(e4, t2 = {}) {
5480
5480
  }
5481
5481
  }, n2;
5482
5482
  }
5483
- var _p = (...e4) => al({ Codec: Zf, Boolean: Id, String: Nu }, ...e4);
5484
- function vp(e4) {
5485
- let t2 = ip(() => B([M(e4), P(), F(), qd(), L(t2), V(M(), t2)]));
5483
+ var vp = (...e4) => al({ Codec: Qf, Boolean: Ld, String: Pu }, ...e4);
5484
+ function yp(e4) {
5485
+ let t2 = ap(() => z([j(e4), N(), P(), Jd(), I(t2), B(j(), t2)]));
5486
5486
  return t2;
5487
5487
  }
5488
- function yp(e4, t2) {
5489
- return Xf(Af(e4), t2);
5488
+ function bp(e4, t2) {
5489
+ return Zf(jf(e4), t2);
5490
5490
  }
5491
- var bp = { 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" };
5492
- function xp(e4) {
5491
+ var xp = { 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" };
5492
+ function Sp(e4) {
5493
5493
  p({ customError: e4 });
5494
5494
  }
5495
- function Sp() {
5495
+ function Cp() {
5496
5496
  return p().customError;
5497
5497
  }
5498
- var Cp;
5498
+ var wp;
5499
5499
  /* @__PURE__ */ (function(e4) {
5500
- })(Cp || (Cp = {}));
5501
- var G = { ...ju, ...su, iso: cu }, wp = new Set("$schema.$ref.$defs.definitions.$id.id.$comment.$anchor.$vocabulary.$dynamicRef.$dynamicAnchor.type.enum.const.anyOf.oneOf.allOf.not.properties.required.additionalProperties.patternProperties.propertyNames.minProperties.maxProperties.items.prefixItems.additionalItems.minItems.maxItems.uniqueItems.contains.minContains.maxContains.minLength.maxLength.pattern.format.minimum.maximum.exclusiveMinimum.exclusiveMaximum.multipleOf.description.default.contentEncoding.contentMediaType.contentSchema.unevaluatedItems.unevaluatedProperties.if.then.else.dependentSchemas.dependentRequired.nullable.readOnly".split("."));
5502
- function Tp(e4, t2) {
5500
+ })(wp || (wp = {}));
5501
+ var W = { ...Mu, ...su, iso: cu }, Tp = new Set("$schema.$ref.$defs.definitions.$id.id.$comment.$anchor.$vocabulary.$dynamicRef.$dynamicAnchor.type.enum.const.anyOf.oneOf.allOf.not.properties.required.additionalProperties.patternProperties.propertyNames.minProperties.maxProperties.items.prefixItems.additionalItems.minItems.maxItems.uniqueItems.contains.minContains.maxContains.minLength.maxLength.pattern.format.minimum.maximum.exclusiveMinimum.exclusiveMaximum.multipleOf.description.default.contentEncoding.contentMediaType.contentSchema.unevaluatedItems.unevaluatedProperties.if.then.else.dependentSchemas.dependentRequired.nullable.readOnly".split("."));
5502
+ function Ep(e4, t2) {
5503
5503
  let n2 = e4.$schema;
5504
5504
  return n2 === "https://json-schema.org/draft/2020-12/schema" ? "draft-2020-12" : n2 === "http://json-schema.org/draft-07/schema#" ? "draft-7" : n2 === "http://json-schema.org/draft-04/schema#" ? "draft-4" : t2 == null ? "draft-2020-12" : t2;
5505
5505
  }
5506
- function Ep(e4, t2) {
5506
+ function Dp(e4, t2) {
5507
5507
  if (!e4.startsWith("#")) throw Error("External $ref is not supported, only local refs (#/...) are allowed");
5508
5508
  let n2 = e4.slice(1).split("/").filter(Boolean);
5509
5509
  if (n2.length === 0) return t2.rootSchema;
@@ -5515,9 +5515,9 @@ function Ep(e4, t2) {
5515
5515
  }
5516
5516
  throw Error("Reference not found: ".concat(e4));
5517
5517
  }
5518
- function Dp(e4, t2) {
5518
+ function Op(e4, t2) {
5519
5519
  if (e4.not !== void 0) {
5520
- if (typeof e4.not == "object" && Object.keys(e4.not).length === 0) return G.never();
5520
+ if (typeof e4.not == "object" && Object.keys(e4.not).length === 0) return W.never();
5521
5521
  throw Error("not is not supported in Zod (except { not: {} } for never)");
5522
5522
  }
5523
5523
  if (e4.unevaluatedItems !== void 0) throw Error("unevaluatedItems is not supported");
@@ -5527,101 +5527,101 @@ function Dp(e4, t2) {
5527
5527
  if (e4.$ref) {
5528
5528
  let n3 = e4.$ref;
5529
5529
  if (t2.refs.has(n3)) return t2.refs.get(n3);
5530
- if (t2.processing.has(n3)) return G.lazy(() => {
5530
+ if (t2.processing.has(n3)) return W.lazy(() => {
5531
5531
  if (!t2.refs.has(n3)) throw Error("Circular reference not resolved: ".concat(n3));
5532
5532
  return t2.refs.get(n3);
5533
5533
  });
5534
5534
  t2.processing.add(n3);
5535
- let r3 = K(Ep(n3, t2), t2);
5535
+ let r3 = G(Dp(n3, t2), t2);
5536
5536
  return t2.refs.set(n3, r3), t2.processing.delete(n3), r3;
5537
5537
  }
5538
5538
  if (e4.enum !== void 0) {
5539
5539
  let n3 = e4.enum;
5540
- if (t2.version === "openapi-3.0" && e4.nullable === true && n3.length === 1 && n3[0] === null) return G.null();
5541
- if (n3.length === 0) return G.never();
5542
- if (n3.length === 1) return G.literal(n3[0]);
5543
- if (n3.every((e5) => typeof e5 == "string")) return G.enum(n3);
5544
- let r3 = n3.map((e5) => G.literal(e5));
5545
- return r3.length < 2 ? r3[0] : G.union([r3[0], r3[1], ...r3.slice(2)]);
5546
- }
5547
- if (e4.const !== void 0) return G.literal(e4.const);
5540
+ if (t2.version === "openapi-3.0" && e4.nullable === true && n3.length === 1 && n3[0] === null) return W.null();
5541
+ if (n3.length === 0) return W.never();
5542
+ if (n3.length === 1) return W.literal(n3[0]);
5543
+ if (n3.every((e5) => typeof e5 == "string")) return W.enum(n3);
5544
+ let r3 = n3.map((e5) => W.literal(e5));
5545
+ return r3.length < 2 ? r3[0] : W.union([r3[0], r3[1], ...r3.slice(2)]);
5546
+ }
5547
+ if (e4.const !== void 0) return W.literal(e4.const);
5548
5548
  let n2 = e4.type;
5549
5549
  if (Array.isArray(n2)) {
5550
- let r3 = n2.map((n3) => Dp({ ...e4, type: n3 }, t2));
5551
- return r3.length === 0 ? G.never() : r3.length === 1 ? r3[0] : G.union(r3);
5550
+ let r3 = n2.map((n3) => Op({ ...e4, type: n3 }, t2));
5551
+ return r3.length === 0 ? W.never() : r3.length === 1 ? r3[0] : W.union(r3);
5552
5552
  }
5553
- if (!n2) return G.any();
5553
+ if (!n2) return W.any();
5554
5554
  let r2;
5555
5555
  switch (n2) {
5556
5556
  case "string": {
5557
- let t3 = G.string();
5557
+ let t3 = W.string();
5558
5558
  if (e4.format) {
5559
5559
  let n3 = e4.format;
5560
- n3 === "email" ? t3 = t3.check(G.email()) : n3 === "uri" || n3 === "uri-reference" ? t3 = t3.check(G.url()) : n3 === "uuid" || n3 === "guid" ? t3 = t3.check(G.uuid()) : n3 === "date-time" ? t3 = t3.check(G.iso.datetime()) : n3 === "date" ? t3 = t3.check(G.iso.date()) : n3 === "time" ? t3 = t3.check(G.iso.time()) : n3 === "duration" ? t3 = t3.check(G.iso.duration()) : n3 === "ipv4" ? t3 = t3.check(G.ipv4()) : n3 === "ipv6" ? t3 = t3.check(G.ipv6()) : n3 === "mac" ? t3 = t3.check(G.mac()) : n3 === "cidr" ? t3 = t3.check(G.cidrv4()) : n3 === "cidr-v6" ? t3 = t3.check(G.cidrv6()) : n3 === "base64" ? t3 = t3.check(G.base64()) : n3 === "base64url" ? t3 = t3.check(G.base64url()) : n3 === "e164" ? t3 = t3.check(G.e164()) : n3 === "jwt" ? t3 = t3.check(G.jwt()) : n3 === "emoji" ? t3 = t3.check(G.emoji()) : n3 === "nanoid" ? t3 = t3.check(G.nanoid()) : n3 === "cuid" ? t3 = t3.check(G.cuid()) : n3 === "cuid2" ? t3 = t3.check(G.cuid2()) : n3 === "ulid" ? t3 = t3.check(G.ulid()) : n3 === "xid" ? t3 = t3.check(G.xid()) : n3 === "ksuid" && (t3 = t3.check(G.ksuid()));
5560
+ n3 === "email" ? t3 = t3.check(W.email()) : n3 === "uri" || n3 === "uri-reference" ? t3 = t3.check(W.url()) : n3 === "uuid" || n3 === "guid" ? t3 = t3.check(W.uuid()) : n3 === "date-time" ? t3 = t3.check(W.iso.datetime()) : n3 === "date" ? t3 = t3.check(W.iso.date()) : n3 === "time" ? t3 = t3.check(W.iso.time()) : n3 === "duration" ? t3 = t3.check(W.iso.duration()) : n3 === "ipv4" ? t3 = t3.check(W.ipv4()) : n3 === "ipv6" ? t3 = t3.check(W.ipv6()) : n3 === "mac" ? t3 = t3.check(W.mac()) : n3 === "cidr" ? t3 = t3.check(W.cidrv4()) : n3 === "cidr-v6" ? t3 = t3.check(W.cidrv6()) : n3 === "base64" ? t3 = t3.check(W.base64()) : n3 === "base64url" ? t3 = t3.check(W.base64url()) : n3 === "e164" ? t3 = t3.check(W.e164()) : n3 === "jwt" ? t3 = t3.check(W.jwt()) : n3 === "emoji" ? t3 = t3.check(W.emoji()) : n3 === "nanoid" ? t3 = t3.check(W.nanoid()) : n3 === "cuid" ? t3 = t3.check(W.cuid()) : n3 === "cuid2" ? t3 = t3.check(W.cuid2()) : n3 === "ulid" ? t3 = t3.check(W.ulid()) : n3 === "xid" ? t3 = t3.check(W.xid()) : n3 === "ksuid" && (t3 = t3.check(W.ksuid()));
5561
5561
  }
5562
5562
  typeof e4.minLength == "number" && (t3 = t3.min(e4.minLength)), typeof e4.maxLength == "number" && (t3 = t3.max(e4.maxLength)), e4.pattern && (t3 = t3.regex(new RegExp(e4.pattern))), r2 = t3;
5563
5563
  break;
5564
5564
  }
5565
5565
  case "number":
5566
5566
  case "integer": {
5567
- let t3 = n2 === "integer" ? G.number().int() : G.number();
5567
+ let t3 = n2 === "integer" ? W.number().int() : W.number();
5568
5568
  typeof e4.minimum == "number" && (t3 = t3.min(e4.minimum)), typeof e4.maximum == "number" && (t3 = t3.max(e4.maximum)), typeof e4.exclusiveMinimum == "number" ? t3 = t3.gt(e4.exclusiveMinimum) : e4.exclusiveMinimum === true && typeof e4.minimum == "number" && (t3 = t3.gt(e4.minimum)), typeof e4.exclusiveMaximum == "number" ? t3 = t3.lt(e4.exclusiveMaximum) : e4.exclusiveMaximum === true && typeof e4.maximum == "number" && (t3 = t3.lt(e4.maximum)), typeof e4.multipleOf == "number" && (t3 = t3.multipleOf(e4.multipleOf)), r2 = t3;
5569
5569
  break;
5570
5570
  }
5571
5571
  case "boolean":
5572
- r2 = G.boolean();
5572
+ r2 = W.boolean();
5573
5573
  break;
5574
5574
  case "null":
5575
- r2 = G.null();
5575
+ r2 = W.null();
5576
5576
  break;
5577
5577
  case "object": {
5578
5578
  let n3 = {}, i2 = e4.properties || {}, a2 = new Set(e4.required || []);
5579
5579
  for (let [e5, r3] of Object.entries(i2)) {
5580
- let i3 = K(r3, t2);
5580
+ let i3 = G(r3, t2);
5581
5581
  n3[e5] = a2.has(e5) ? i3 : i3.optional();
5582
5582
  }
5583
5583
  if (e4.propertyNames) {
5584
- let i3 = K(e4.propertyNames, t2), a3 = e4.additionalProperties && typeof e4.additionalProperties == "object" ? K(e4.additionalProperties, t2) : G.any();
5584
+ let i3 = G(e4.propertyNames, t2), a3 = e4.additionalProperties && typeof e4.additionalProperties == "object" ? G(e4.additionalProperties, t2) : W.any();
5585
5585
  if (Object.keys(n3).length === 0) {
5586
- r2 = G.record(i3, a3);
5586
+ r2 = W.record(i3, a3);
5587
5587
  break;
5588
5588
  }
5589
- let o3 = G.object(n3).passthrough(), s2 = G.looseRecord(i3, a3);
5590
- r2 = G.intersection(o3, s2);
5589
+ let o3 = W.object(n3).passthrough(), s2 = W.looseRecord(i3, a3);
5590
+ r2 = W.intersection(o3, s2);
5591
5591
  break;
5592
5592
  }
5593
5593
  if (e4.patternProperties) {
5594
5594
  let i3 = e4.patternProperties, a3 = Object.keys(i3), o3 = [];
5595
5595
  for (let e5 of a3) {
5596
- let n4 = K(i3[e5], t2), r3 = G.string().regex(new RegExp(e5));
5597
- o3.push(G.looseRecord(r3, n4));
5596
+ let n4 = G(i3[e5], t2), r3 = W.string().regex(new RegExp(e5));
5597
+ o3.push(W.looseRecord(r3, n4));
5598
5598
  }
5599
5599
  let s2 = [];
5600
- if (Object.keys(n3).length > 0 && s2.push(G.object(n3).passthrough()), s2.push(...o3), s2.length === 0) r2 = G.object({}).passthrough();
5600
+ if (Object.keys(n3).length > 0 && s2.push(W.object(n3).passthrough()), s2.push(...o3), s2.length === 0) r2 = W.object({}).passthrough();
5601
5601
  else if (s2.length === 1) r2 = s2[0];
5602
5602
  else {
5603
- let e5 = G.intersection(s2[0], s2[1]);
5604
- for (let t3 = 2; t3 < s2.length; t3++) e5 = G.intersection(e5, s2[t3]);
5603
+ let e5 = W.intersection(s2[0], s2[1]);
5604
+ for (let t3 = 2; t3 < s2.length; t3++) e5 = W.intersection(e5, s2[t3]);
5605
5605
  r2 = e5;
5606
5606
  }
5607
5607
  break;
5608
5608
  }
5609
- let o2 = G.object(n3);
5610
- r2 = e4.additionalProperties === false ? o2.strict() : typeof e4.additionalProperties == "object" ? o2.catchall(K(e4.additionalProperties, t2)) : o2.passthrough();
5609
+ let o2 = W.object(n3);
5610
+ r2 = e4.additionalProperties === false ? o2.strict() : typeof e4.additionalProperties == "object" ? o2.catchall(G(e4.additionalProperties, t2)) : o2.passthrough();
5611
5611
  break;
5612
5612
  }
5613
5613
  case "array": {
5614
5614
  let n3 = e4.prefixItems, i2 = e4.items;
5615
5615
  if (n3 && Array.isArray(n3)) {
5616
- let a2 = n3.map((e5) => K(e5, t2)), o2 = i2 && typeof i2 == "object" && !Array.isArray(i2) ? K(i2, t2) : void 0;
5617
- r2 = o2 ? G.tuple(a2).rest(o2) : G.tuple(a2), typeof e4.minItems == "number" && (r2 = r2.check(G.minLength(e4.minItems))), typeof e4.maxItems == "number" && (r2 = r2.check(G.maxLength(e4.maxItems)));
5616
+ let a2 = n3.map((e5) => G(e5, t2)), o2 = i2 && typeof i2 == "object" && !Array.isArray(i2) ? G(i2, t2) : void 0;
5617
+ r2 = o2 ? W.tuple(a2).rest(o2) : W.tuple(a2), typeof e4.minItems == "number" && (r2 = r2.check(W.minLength(e4.minItems))), typeof e4.maxItems == "number" && (r2 = r2.check(W.maxLength(e4.maxItems)));
5618
5618
  } else if (Array.isArray(i2)) {
5619
- let n4 = i2.map((e5) => K(e5, t2)), a2 = e4.additionalItems && typeof e4.additionalItems == "object" ? K(e4.additionalItems, t2) : void 0;
5620
- r2 = a2 ? G.tuple(n4).rest(a2) : G.tuple(n4), typeof e4.minItems == "number" && (r2 = r2.check(G.minLength(e4.minItems))), typeof e4.maxItems == "number" && (r2 = r2.check(G.maxLength(e4.maxItems)));
5619
+ let n4 = i2.map((e5) => G(e5, t2)), a2 = e4.additionalItems && typeof e4.additionalItems == "object" ? G(e4.additionalItems, t2) : void 0;
5620
+ r2 = a2 ? W.tuple(n4).rest(a2) : W.tuple(n4), typeof e4.minItems == "number" && (r2 = r2.check(W.minLength(e4.minItems))), typeof e4.maxItems == "number" && (r2 = r2.check(W.maxLength(e4.maxItems)));
5621
5621
  } else if (i2 !== void 0) {
5622
- let n4 = K(i2, t2), a2 = G.array(n4);
5622
+ let n4 = G(i2, t2), a2 = W.array(n4);
5623
5623
  typeof e4.minItems == "number" && (a2 = a2.min(e4.minItems)), typeof e4.maxItems == "number" && (a2 = a2.max(e4.maxItems)), r2 = a2;
5624
- } else r2 = G.array(G.any());
5624
+ } else r2 = W.array(W.any());
5625
5625
  break;
5626
5626
  }
5627
5627
  default:
@@ -5629,120 +5629,120 @@ function Dp(e4, t2) {
5629
5629
  }
5630
5630
  return e4.description && (r2 = r2.describe(e4.description)), e4.default !== void 0 && (r2 = r2.default(e4.default)), r2;
5631
5631
  }
5632
- function K(e4, t2) {
5633
- if (typeof e4 == "boolean") return e4 ? G.any() : G.never();
5634
- let n2 = Dp(e4, t2), r2 = e4.type || e4.enum !== void 0 || e4.const !== void 0;
5632
+ function G(e4, t2) {
5633
+ if (typeof e4 == "boolean") return e4 ? W.any() : W.never();
5634
+ let n2 = Op(e4, t2), r2 = e4.type || e4.enum !== void 0 || e4.const !== void 0;
5635
5635
  if (e4.anyOf && Array.isArray(e4.anyOf)) {
5636
- let i3 = e4.anyOf.map((e5) => K(e5, t2)), a2 = G.union(i3);
5637
- n2 = r2 ? G.intersection(n2, a2) : a2;
5636
+ let i3 = e4.anyOf.map((e5) => G(e5, t2)), a2 = W.union(i3);
5637
+ n2 = r2 ? W.intersection(n2, a2) : a2;
5638
5638
  }
5639
5639
  if (e4.oneOf && Array.isArray(e4.oneOf)) {
5640
- let i3 = e4.oneOf.map((e5) => K(e5, t2)), a2 = G.xor(i3);
5641
- n2 = r2 ? G.intersection(n2, a2) : a2;
5640
+ let i3 = e4.oneOf.map((e5) => G(e5, t2)), a2 = W.xor(i3);
5641
+ n2 = r2 ? W.intersection(n2, a2) : a2;
5642
5642
  }
5643
- if (e4.allOf && Array.isArray(e4.allOf)) if (e4.allOf.length === 0) n2 = r2 ? n2 : G.any();
5643
+ if (e4.allOf && Array.isArray(e4.allOf)) if (e4.allOf.length === 0) n2 = r2 ? n2 : W.any();
5644
5644
  else {
5645
- let i3 = r2 ? n2 : K(e4.allOf[0], t2), a2 = +!r2;
5646
- for (let n3 = a2; n3 < e4.allOf.length; n3++) i3 = G.intersection(i3, K(e4.allOf[n3], t2));
5645
+ let i3 = r2 ? n2 : G(e4.allOf[0], t2), a2 = +!r2;
5646
+ for (let n3 = a2; n3 < e4.allOf.length; n3++) i3 = W.intersection(i3, G(e4.allOf[n3], t2));
5647
5647
  n2 = i3;
5648
5648
  }
5649
- e4.nullable === true && t2.version === "openapi-3.0" && (n2 = G.nullable(n2)), e4.readOnly === true && (n2 = G.readonly(n2));
5649
+ e4.nullable === true && t2.version === "openapi-3.0" && (n2 = W.nullable(n2)), e4.readOnly === true && (n2 = W.readonly(n2));
5650
5650
  let i2 = {};
5651
5651
  for (let t3 of ["$id", "id", "$comment", "$anchor", "$vocabulary", "$dynamicRef", "$dynamicAnchor"]) t3 in e4 && (i2[t3] = e4[t3]);
5652
5652
  for (let t3 of ["contentEncoding", "contentMediaType", "contentSchema"]) t3 in e4 && (i2[t3] = e4[t3]);
5653
- for (let t3 of Object.keys(e4)) wp.has(t3) || (i2[t3] = e4[t3]);
5653
+ for (let t3 of Object.keys(e4)) Tp.has(t3) || (i2[t3] = e4[t3]);
5654
5654
  return Object.keys(i2).length > 0 && t2.registry.add(n2, i2), n2;
5655
5655
  }
5656
- function Op(e4, t2) {
5656
+ function kp(e4, t2) {
5657
5657
  var n2;
5658
- return typeof e4 == "boolean" ? e4 ? G.any() : G.never() : K(e4, { version: Tp(e4, t2 == null ? void 0 : t2.defaultTarget), defs: e4.$defs || e4.definitions || {}, refs: /* @__PURE__ */ new Map(), processing: /* @__PURE__ */ new Set(), rootSchema: e4, registry: (n2 = t2 == null ? void 0 : t2.registry) == null ? es : n2 });
5659
- }
5660
- var kp = t({ bigint: () => Np, boolean: () => Mp, date: () => Pp, number: () => jp, string: () => Ap });
5661
- function Ap(e4) {
5662
- return ns(Nu, e4);
5658
+ return typeof e4 == "boolean" ? e4 ? W.any() : W.never() : G(e4, { version: Ep(e4, t2 == null ? void 0 : t2.defaultTarget), defs: e4.$defs || e4.definitions || {}, refs: /* @__PURE__ */ new Map(), processing: /* @__PURE__ */ new Set(), rootSchema: e4, registry: (n2 = t2 == null ? void 0 : t2.registry) == null ? es : n2 });
5663
5659
  }
5660
+ var Ap = t({ bigint: () => Pp, boolean: () => Np, date: () => Fp, number: () => Mp, string: () => jp });
5664
5661
  function jp(e4) {
5665
- return Ms(kd, e4);
5662
+ return ns(Pu, e4);
5666
5663
  }
5667
5664
  function Mp(e4) {
5668
- return zs(Id, e4);
5665
+ return Ms(Ad, e4);
5669
5666
  }
5670
5667
  function Np(e4) {
5671
- return Vs(Ld, e4);
5668
+ return zs(Ld, e4);
5672
5669
  }
5673
5670
  function Pp(e4) {
5674
- return Qs(tf, e4);
5671
+ return Vs(Rd, e4);
5675
5672
  }
5676
- var Fp = t({ $brand: () => l, $input: () => Zo, $output: () => Xo, NEVER: () => s, TimePrecision: () => Es, ZodAny: () => Jd, ZodArray: () => rf, ZodBase64: () => gd, ZodBase64URL: () => vd, ZodBigInt: () => Ld, ZodBigIntFormat: () => zd, ZodBoolean: () => Id, ZodCIDRv4: () => fd, ZodCIDRv6: () => md, ZodCUID: () => Xu, ZodCUID2: () => Qu, ZodCatch: () => Gf, ZodCodec: () => Zf, ZodCustom: () => lp, ZodCustomStringFormat: () => wd, ZodDate: () => tf, ZodDefault: () => Lf, ZodDiscriminatedUnion: () => df, ZodE164: () => bd, ZodEmail: () => Pu, ZodEmoji: () => Ku, ZodEnum: () => wf, ZodError: () => vu, ZodExactOptional: () => Mf, ZodFile: () => Df, ZodFirstPartyTypeKind: () => Cp, ZodFunction: () => sp, ZodGUID: () => Iu, ZodIPv4: () => od, ZodIPv6: () => ud, ZodISODate: () => du, ZodISODateTime: () => lu, ZodISODuration: () => hu, ZodISOTime: () => pu, ZodIntersection: () => pf, ZodIssueCode: () => bp, ZodJWT: () => Sd, ZodKSUID: () => id, ZodLazy: () => rp, ZodLiteral: () => Ef, ZodMAC: () => cd, ZodMap: () => bf, ZodNaN: () => qf, ZodNanoID: () => Ju, ZodNever: () => Zd, ZodNonOptional: () => Vf, ZodNull: () => Kd, ZodNullable: () => Pf, ZodNumber: () => kd, ZodNumberFormat: () => Ad, ZodObject: () => of, ZodOptional: () => jf, ZodPipe: () => Yf, ZodPrefault: () => zf, ZodPromise: () => ap, ZodReadonly: () => $f, ZodRealError: () => A, ZodRecord: () => _f, ZodSet: () => Sf, ZodString: () => Nu, ZodStringFormat: () => N, ZodSuccess: () => Uf, ZodSymbol: () => Hd, ZodTemplateLiteral: () => tp, ZodTransform: () => kf, ZodTuple: () => hf, ZodType: () => j, ZodULID: () => ed, ZodURL: () => Uu, ZodUUID: () => Ru, ZodUndefined: () => Wd, ZodUnion: () => cf, ZodUnknown: () => Xd, ZodVoid: () => $d, ZodXID: () => nd, ZodXor: () => lf, _ZodString: () => Mu, _default: () => Rf, _function: () => cp, any: () => Yd, array: () => L, base64: () => _d, base64url: () => yd, bigint: () => Rd, boolean: () => F, catch: () => Kf, check: () => up, cidrv4: () => pd, cidrv6: () => hd, clone: () => De, codec: () => Qf, coerce: () => kp, config: () => p, core: () => nu, cuid: () => Zu, cuid2: () => $u, custom: () => dp, date: () => nf, decode: () => wu, decodeAsync: () => Eu, describe: () => mp, discriminatedUnion: () => ff, e164: () => xd, email: () => Fu, emoji: () => qu, encode: () => Cu, encodeAsync: () => Tu, endsWith: () => yc, enum: () => H, exactOptional: () => Nf, file: () => Of, flattenError: () => rt, float32: () => Md, float64: () => Nd, formatError: () => it, fromJSONSchema: () => Op, function: () => cp, getErrorMap: () => Sp, globalRegistry: () => es, gt: () => nc, gte: () => D, guid: () => Lu, hash: () => Od, hex: () => Dd, hostname: () => Ed, httpUrl: () => Gu, includes: () => _c, instanceof: () => gp, int: () => jd, int32: () => Pd, int64: () => Bd, intersection: () => mf, ipv4: () => sd, ipv6: () => dd, iso: () => cu, json: () => vp, jwt: () => Cd, keyof: () => af, ksuid: () => ad, lazy: () => ip, length: () => pc, literal: () => U, locales: () => Jo, looseObject: () => z, looseRecord: () => yf, lowercase: () => hc, lt: () => ec, lte: () => tc, mac: () => ld, map: () => xf, maxLength: () => dc, maxSize: () => cc, meta: () => hp, mime: () => xc, minLength: () => fc, minSize: () => lc, multipleOf: () => sc, nan: () => Jf, nanoid: () => Yu, nativeEnum: () => Tf, negative: () => ic, never: () => Qd, nonnegative: () => oc, nonoptional: () => Hf, nonpositive: () => ac, normalize: () => Cc, null: () => qd, nullable: () => Ff, nullish: () => If, number: () => P, object: () => R, optional: () => W, overwrite: () => Sc, parse: () => yu, parseAsync: () => bu, partialRecord: () => vf, pipe: () => Xf, positive: () => rc, prefault: () => Bf, preprocess: () => yp, prettifyError: () => st, promise: () => op, property: () => bc, readonly: () => ep, record: () => V, refine: () => fp, regex: () => mc, regexes: () => Mt, registry: () => $o, safeDecode: () => Ou, safeDecodeAsync: () => Au, safeEncode: () => Du, safeEncodeAsync: () => ku, safeParse: () => xu, safeParseAsync: () => Su, set: () => Cf, setErrorMap: () => xp, size: () => uc, slugify: () => Dc, startsWith: () => vc, strictObject: () => sf, string: () => M, stringFormat: () => Td, stringbool: () => _p, success: () => Wf, superRefine: () => pp, symbol: () => Ud, templateLiteral: () => np, toJSONSchema: () => $l, toLowerCase: () => Tc, toUpperCase: () => Ec, transform: () => Af, treeifyError: () => at, trim: () => wc, tuple: () => gf, uint32: () => Fd, uint64: () => Vd, ulid: () => td, undefined: () => Gd, union: () => B, unknown: () => I, uppercase: () => gc, url: () => Wu, util: () => m, uuid: () => zu, uuidv4: () => Bu, uuidv6: () => Vu, uuidv7: () => Hu, void: () => ef, xid: () => rd, xor: () => uf });
5673
+ function Fp(e4) {
5674
+ return Qs(nf, e4);
5675
+ }
5676
+ var Ip = t({ $brand: () => l, $input: () => Zo, $output: () => Xo, NEVER: () => s, TimePrecision: () => Es, ZodAny: () => Yd, ZodArray: () => af, ZodBase64: () => _d, ZodBase64URL: () => yd, ZodBigInt: () => Rd, ZodBigIntFormat: () => Bd, ZodBoolean: () => Ld, ZodCIDRv4: () => pd, ZodCIDRv6: () => hd, ZodCUID: () => Zu, ZodCUID2: () => $u, ZodCatch: () => Kf, ZodCodec: () => Qf, ZodCustom: () => up, ZodCustomStringFormat: () => Td, ZodDate: () => nf, ZodDefault: () => Rf, ZodDiscriminatedUnion: () => ff, ZodE164: () => xd, ZodEmail: () => Fu, ZodEmoji: () => qu, ZodEnum: () => Tf, ZodError: () => vu, ZodExactOptional: () => Nf, ZodFile: () => Of, ZodFirstPartyTypeKind: () => wp, ZodFunction: () => cp, ZodGUID: () => Lu, ZodIPv4: () => sd, ZodIPv6: () => dd, ZodISODate: () => du, ZodISODateTime: () => lu, ZodISODuration: () => hu, ZodISOTime: () => pu, ZodIntersection: () => mf, ZodIssueCode: () => xp, ZodJWT: () => Cd, ZodKSUID: () => ad, ZodLazy: () => ip, ZodLiteral: () => Df, ZodMAC: () => ld, ZodMap: () => xf, ZodNaN: () => Jf, ZodNanoID: () => Yu, ZodNever: () => Qd, ZodNonOptional: () => Hf, ZodNull: () => qd, ZodNullable: () => Ff, ZodNumber: () => Ad, ZodNumberFormat: () => jd, ZodObject: () => sf, ZodOptional: () => Mf, ZodPipe: () => Xf, ZodPrefault: () => Bf, ZodPromise: () => op, ZodReadonly: () => ep, ZodRealError: () => yu, ZodRecord: () => vf, ZodSet: () => Cf, ZodString: () => Pu, ZodStringFormat: () => M, ZodSuccess: () => Wf, ZodSymbol: () => Ud, ZodTemplateLiteral: () => np, ZodTransform: () => Af, ZodTuple: () => gf, ZodType: () => A, ZodULID: () => td, ZodURL: () => Wu, ZodUUID: () => zu, ZodUndefined: () => Gd, ZodUnion: () => lf, ZodUnknown: () => Zd, ZodVoid: () => ef, ZodXID: () => rd, ZodXor: () => uf, _ZodString: () => Nu, _default: () => zf, _function: () => lp, any: () => Xd, array: () => I, base64: () => vd, base64url: () => bd, bigint: () => zd, boolean: () => P, catch: () => qf, check: () => dp, cidrv4: () => md, cidrv6: () => gd, clone: () => De, codec: () => $f, coerce: () => Ap, config: () => p, core: () => nu, cuid: () => Qu, cuid2: () => ed, custom: () => fp, date: () => rf, decode: () => Tu, decodeAsync: () => Du, describe: () => hp, discriminatedUnion: () => pf, e164: () => Sd, email: () => Iu, emoji: () => Ju, encode: () => wu, encodeAsync: () => Eu, endsWith: () => yc, enum: () => V, exactOptional: () => Pf, file: () => kf, flattenError: () => rt, float32: () => Nd, float64: () => Pd, formatError: () => it, fromJSONSchema: () => kp, function: () => lp, getErrorMap: () => Cp, globalRegistry: () => es, gt: () => nc, gte: () => D, guid: () => Ru, hash: () => kd, hex: () => Od, hostname: () => Dd, httpUrl: () => Ku, includes: () => _c, instanceof: () => _p, int: () => Md, int32: () => Fd, int64: () => Vd, intersection: () => hf, ipv4: () => cd, ipv6: () => fd, iso: () => cu, json: () => yp, jwt: () => wd, keyof: () => of, ksuid: () => od, lazy: () => ap, length: () => pc, literal: () => H, locales: () => Jo, looseObject: () => R, looseRecord: () => bf, lowercase: () => hc, lt: () => ec, lte: () => tc, mac: () => ud, map: () => Sf, maxLength: () => dc, maxSize: () => cc, meta: () => gp, mime: () => xc, minLength: () => fc, minSize: () => lc, multipleOf: () => sc, nan: () => Yf, nanoid: () => Xu, nativeEnum: () => Ef, negative: () => ic, never: () => $d, nonnegative: () => oc, nonoptional: () => Uf, nonpositive: () => ac, normalize: () => Cc, null: () => Jd, nullable: () => If, nullish: () => Lf, number: () => N, object: () => L, optional: () => U, overwrite: () => Sc, parse: () => bu, parseAsync: () => xu, partialRecord: () => yf, pipe: () => Zf, positive: () => rc, prefault: () => Vf, preprocess: () => bp, prettifyError: () => st, promise: () => sp, property: () => bc, readonly: () => tp, record: () => B, refine: () => pp, regex: () => mc, regexes: () => Mt, registry: () => $o, safeDecode: () => ku, safeDecodeAsync: () => ju, safeEncode: () => Ou, safeEncodeAsync: () => Au, safeParse: () => Su, safeParseAsync: () => Cu, set: () => wf, setErrorMap: () => Sp, size: () => uc, slugify: () => Dc, startsWith: () => vc, strictObject: () => cf, string: () => j, stringFormat: () => Ed, stringbool: () => vp, success: () => Gf, superRefine: () => mp, symbol: () => Wd, templateLiteral: () => rp, toJSONSchema: () => $l, toLowerCase: () => Tc, toUpperCase: () => Ec, transform: () => jf, treeifyError: () => at, trim: () => wc, tuple: () => _f, uint32: () => Id, uint64: () => Hd, ulid: () => nd, undefined: () => Kd, union: () => z, unknown: () => F, uppercase: () => gc, url: () => Gu, util: () => m, uuid: () => Bu, uuidv4: () => Vu, uuidv6: () => Hu, uuidv7: () => Uu, void: () => tf, xid: () => id, xor: () => df });
5677
5677
  p(_a());
5678
- var Ip = t({ $brand: () => l, $input: () => Zo, $output: () => Xo, NEVER: () => s, TimePrecision: () => Es, ZodAny: () => Jd, ZodArray: () => rf, ZodBase64: () => gd, ZodBase64URL: () => vd, ZodBigInt: () => Ld, ZodBigIntFormat: () => zd, ZodBoolean: () => Id, ZodCIDRv4: () => fd, ZodCIDRv6: () => md, ZodCUID: () => Xu, ZodCUID2: () => Qu, ZodCatch: () => Gf, ZodCodec: () => Zf, ZodCustom: () => lp, ZodCustomStringFormat: () => wd, ZodDate: () => tf, ZodDefault: () => Lf, ZodDiscriminatedUnion: () => df, ZodE164: () => bd, ZodEmail: () => Pu, ZodEmoji: () => Ku, ZodEnum: () => wf, ZodError: () => vu, ZodExactOptional: () => Mf, ZodFile: () => Df, ZodFirstPartyTypeKind: () => Cp, ZodFunction: () => sp, ZodGUID: () => Iu, ZodIPv4: () => od, ZodIPv6: () => ud, ZodISODate: () => du, ZodISODateTime: () => lu, ZodISODuration: () => hu, ZodISOTime: () => pu, ZodIntersection: () => pf, ZodIssueCode: () => bp, ZodJWT: () => Sd, ZodKSUID: () => id, ZodLazy: () => rp, ZodLiteral: () => Ef, ZodMAC: () => cd, ZodMap: () => bf, ZodNaN: () => qf, ZodNanoID: () => Ju, ZodNever: () => Zd, ZodNonOptional: () => Vf, ZodNull: () => Kd, ZodNullable: () => Pf, ZodNumber: () => kd, ZodNumberFormat: () => Ad, ZodObject: () => of, ZodOptional: () => jf, ZodPipe: () => Yf, ZodPrefault: () => zf, ZodPromise: () => ap, ZodReadonly: () => $f, ZodRealError: () => A, ZodRecord: () => _f, ZodSet: () => Sf, ZodString: () => Nu, ZodStringFormat: () => N, ZodSuccess: () => Uf, ZodSymbol: () => Hd, ZodTemplateLiteral: () => tp, ZodTransform: () => kf, ZodTuple: () => hf, ZodType: () => j, ZodULID: () => ed, ZodURL: () => Uu, ZodUUID: () => Ru, ZodUndefined: () => Wd, ZodUnion: () => cf, ZodUnknown: () => Xd, ZodVoid: () => $d, ZodXID: () => nd, ZodXor: () => lf, _ZodString: () => Mu, _default: () => Rf, _function: () => cp, any: () => Yd, array: () => L, base64: () => _d, base64url: () => yd, bigint: () => Rd, boolean: () => F, catch: () => Kf, check: () => up, cidrv4: () => pd, cidrv6: () => hd, clone: () => De, codec: () => Qf, coerce: () => kp, config: () => p, core: () => nu, cuid: () => Zu, cuid2: () => $u, custom: () => dp, date: () => nf, decode: () => wu, decodeAsync: () => Eu, describe: () => mp, discriminatedUnion: () => ff, e164: () => xd, email: () => Fu, emoji: () => qu, encode: () => Cu, encodeAsync: () => Tu, endsWith: () => yc, enum: () => H, exactOptional: () => Nf, file: () => Of, flattenError: () => rt, float32: () => Md, float64: () => Nd, formatError: () => it, fromJSONSchema: () => Op, function: () => cp, getErrorMap: () => Sp, globalRegistry: () => es, gt: () => nc, gte: () => D, guid: () => Lu, hash: () => Od, hex: () => Dd, hostname: () => Ed, httpUrl: () => Gu, includes: () => _c, instanceof: () => gp, int: () => jd, int32: () => Pd, int64: () => Bd, intersection: () => mf, ipv4: () => sd, ipv6: () => dd, iso: () => cu, json: () => vp, jwt: () => Cd, keyof: () => af, ksuid: () => ad, lazy: () => ip, length: () => pc, literal: () => U, locales: () => Jo, looseObject: () => z, looseRecord: () => yf, lowercase: () => hc, lt: () => ec, lte: () => tc, mac: () => ld, map: () => xf, maxLength: () => dc, maxSize: () => cc, meta: () => hp, mime: () => xc, minLength: () => fc, minSize: () => lc, multipleOf: () => sc, nan: () => Jf, nanoid: () => Yu, nativeEnum: () => Tf, negative: () => ic, never: () => Qd, nonnegative: () => oc, nonoptional: () => Hf, nonpositive: () => ac, normalize: () => Cc, null: () => qd, nullable: () => Ff, nullish: () => If, number: () => P, object: () => R, optional: () => W, overwrite: () => Sc, parse: () => yu, parseAsync: () => bu, partialRecord: () => vf, pipe: () => Xf, positive: () => rc, prefault: () => Bf, preprocess: () => yp, prettifyError: () => st, promise: () => op, property: () => bc, readonly: () => ep, record: () => V, refine: () => fp, regex: () => mc, regexes: () => Mt, registry: () => $o, safeDecode: () => Ou, safeDecodeAsync: () => Au, safeEncode: () => Du, safeEncodeAsync: () => ku, safeParse: () => xu, safeParseAsync: () => Su, set: () => Cf, setErrorMap: () => xp, size: () => uc, slugify: () => Dc, startsWith: () => vc, strictObject: () => sf, string: () => M, stringFormat: () => Td, stringbool: () => _p, success: () => Wf, superRefine: () => pp, symbol: () => Ud, templateLiteral: () => np, toJSONSchema: () => $l, toLowerCase: () => Tc, toUpperCase: () => Ec, transform: () => Af, treeifyError: () => at, trim: () => wc, tuple: () => gf, uint32: () => Fd, uint64: () => Vd, ulid: () => td, undefined: () => Gd, union: () => B, unknown: () => I, uppercase: () => gc, url: () => Wu, util: () => m, uuid: () => zu, uuidv4: () => Bu, uuidv6: () => Vu, uuidv7: () => Hu, void: () => ef, xid: () => rd, xor: () => uf, z: () => Fp }), Lp = "io.modelcontextprotocol/related-task", q = dp((e4) => e4 !== null && (typeof e4 == "object" || typeof e4 == "function")), Rp = B([M(), P().int()]), zp = M();
5679
- z({ ttl: P().optional(), pollInterval: P().optional() });
5680
- var Bp = R({ ttl: P().optional() }), Vp = R({ taskId: M() }), Hp = z({ progressToken: Rp.optional(), [Lp]: Vp.optional() }), Up = R({ _meta: Hp.optional() }), Wp = Up.extend({ task: Bp.optional() }), Gp = (e4) => Wp.safeParse(e4).success, J = R({ method: M(), params: Up.loose().optional() }), Kp = R({ _meta: Hp.optional() }), qp = R({ method: M(), params: Kp.loose().optional() }), Y = z({ _meta: Hp.optional() }), Jp = B([M(), P().int()]), Yp = R({ jsonrpc: U("2.0"), id: Jp, ...J.shape }).strict(), Xp = (e4) => Yp.safeParse(e4).success, Zp = R({ jsonrpc: U("2.0"), ...qp.shape }).strict(), Qp = (e4) => Zp.safeParse(e4).success, $p = R({ jsonrpc: U("2.0"), id: Jp, result: Y }).strict(), em = (e4) => $p.safeParse(e4).success, X;
5678
+ var Lp = t({ $brand: () => l, $input: () => Zo, $output: () => Xo, NEVER: () => s, TimePrecision: () => Es, ZodAny: () => Yd, ZodArray: () => af, ZodBase64: () => _d, ZodBase64URL: () => yd, ZodBigInt: () => Rd, ZodBigIntFormat: () => Bd, ZodBoolean: () => Ld, ZodCIDRv4: () => pd, ZodCIDRv6: () => hd, ZodCUID: () => Zu, ZodCUID2: () => $u, ZodCatch: () => Kf, ZodCodec: () => Qf, ZodCustom: () => up, ZodCustomStringFormat: () => Td, ZodDate: () => nf, ZodDefault: () => Rf, ZodDiscriminatedUnion: () => ff, ZodE164: () => xd, ZodEmail: () => Fu, ZodEmoji: () => qu, ZodEnum: () => Tf, ZodError: () => vu, ZodExactOptional: () => Nf, ZodFile: () => Of, ZodFirstPartyTypeKind: () => wp, ZodFunction: () => cp, ZodGUID: () => Lu, ZodIPv4: () => sd, ZodIPv6: () => dd, ZodISODate: () => du, ZodISODateTime: () => lu, ZodISODuration: () => hu, ZodISOTime: () => pu, ZodIntersection: () => mf, ZodIssueCode: () => xp, ZodJWT: () => Cd, ZodKSUID: () => ad, ZodLazy: () => ip, ZodLiteral: () => Df, ZodMAC: () => ld, ZodMap: () => xf, ZodNaN: () => Jf, ZodNanoID: () => Yu, ZodNever: () => Qd, ZodNonOptional: () => Hf, ZodNull: () => qd, ZodNullable: () => Ff, ZodNumber: () => Ad, ZodNumberFormat: () => jd, ZodObject: () => sf, ZodOptional: () => Mf, ZodPipe: () => Xf, ZodPrefault: () => Bf, ZodPromise: () => op, ZodReadonly: () => ep, ZodRealError: () => yu, ZodRecord: () => vf, ZodSet: () => Cf, ZodString: () => Pu, ZodStringFormat: () => M, ZodSuccess: () => Wf, ZodSymbol: () => Ud, ZodTemplateLiteral: () => np, ZodTransform: () => Af, ZodTuple: () => gf, ZodType: () => A, ZodULID: () => td, ZodURL: () => Wu, ZodUUID: () => zu, ZodUndefined: () => Gd, ZodUnion: () => lf, ZodUnknown: () => Zd, ZodVoid: () => ef, ZodXID: () => rd, ZodXor: () => uf, _ZodString: () => Nu, _default: () => zf, _function: () => lp, any: () => Xd, array: () => I, base64: () => vd, base64url: () => bd, bigint: () => zd, boolean: () => P, catch: () => qf, check: () => dp, cidrv4: () => md, cidrv6: () => gd, clone: () => De, codec: () => $f, coerce: () => Ap, config: () => p, core: () => nu, cuid: () => Qu, cuid2: () => ed, custom: () => fp, date: () => rf, decode: () => Tu, decodeAsync: () => Du, describe: () => hp, discriminatedUnion: () => pf, e164: () => Sd, email: () => Iu, emoji: () => Ju, encode: () => wu, encodeAsync: () => Eu, endsWith: () => yc, enum: () => V, exactOptional: () => Pf, file: () => kf, flattenError: () => rt, float32: () => Nd, float64: () => Pd, formatError: () => it, fromJSONSchema: () => kp, function: () => lp, getErrorMap: () => Cp, globalRegistry: () => es, gt: () => nc, gte: () => D, guid: () => Ru, hash: () => kd, hex: () => Od, hostname: () => Dd, httpUrl: () => Ku, includes: () => _c, instanceof: () => _p, int: () => Md, int32: () => Fd, int64: () => Vd, intersection: () => hf, ipv4: () => cd, ipv6: () => fd, iso: () => cu, json: () => yp, jwt: () => wd, keyof: () => of, ksuid: () => od, lazy: () => ap, length: () => pc, literal: () => H, locales: () => Jo, looseObject: () => R, looseRecord: () => bf, lowercase: () => hc, lt: () => ec, lte: () => tc, mac: () => ud, map: () => Sf, maxLength: () => dc, maxSize: () => cc, meta: () => gp, mime: () => xc, minLength: () => fc, minSize: () => lc, multipleOf: () => sc, nan: () => Yf, nanoid: () => Xu, nativeEnum: () => Ef, negative: () => ic, never: () => $d, nonnegative: () => oc, nonoptional: () => Uf, nonpositive: () => ac, normalize: () => Cc, null: () => Jd, nullable: () => If, nullish: () => Lf, number: () => N, object: () => L, optional: () => U, overwrite: () => Sc, parse: () => bu, parseAsync: () => xu, partialRecord: () => yf, pipe: () => Zf, positive: () => rc, prefault: () => Vf, preprocess: () => bp, prettifyError: () => st, promise: () => sp, property: () => bc, readonly: () => tp, record: () => B, refine: () => pp, regex: () => mc, regexes: () => Mt, registry: () => $o, safeDecode: () => ku, safeDecodeAsync: () => ju, safeEncode: () => Ou, safeEncodeAsync: () => Au, safeParse: () => Su, safeParseAsync: () => Cu, set: () => wf, setErrorMap: () => Sp, size: () => uc, slugify: () => Dc, startsWith: () => vc, strictObject: () => cf, string: () => j, stringFormat: () => Ed, stringbool: () => vp, success: () => Gf, superRefine: () => mp, symbol: () => Wd, templateLiteral: () => rp, toJSONSchema: () => $l, toLowerCase: () => Tc, toUpperCase: () => Ec, transform: () => jf, treeifyError: () => at, trim: () => wc, tuple: () => _f, uint32: () => Id, uint64: () => Hd, ulid: () => nd, undefined: () => Kd, union: () => z, unknown: () => F, uppercase: () => gc, url: () => Gu, util: () => m, uuid: () => Bu, uuidv4: () => Vu, uuidv6: () => Hu, uuidv7: () => Uu, void: () => tf, xid: () => id, xor: () => df, z: () => Ip }), Rp = "io.modelcontextprotocol/related-task", K = fp((e4) => e4 !== null && (typeof e4 == "object" || typeof e4 == "function")), zp = z([j(), N().int()]), Bp = j();
5679
+ R({ ttl: N().optional(), pollInterval: N().optional() });
5680
+ var Vp = L({ ttl: N().optional() }), Hp = L({ taskId: j() }), Up = R({ progressToken: zp.optional(), [Rp]: Hp.optional() }), Wp = L({ _meta: Up.optional() }), Gp = Wp.extend({ task: Vp.optional() }), Kp = (e4) => Gp.safeParse(e4).success, q = L({ method: j(), params: Wp.loose().optional() }), qp = L({ _meta: Up.optional() }), Jp = L({ method: j(), params: qp.loose().optional() }), J = R({ _meta: Up.optional() }), Yp = z([j(), N().int()]), Xp = L({ jsonrpc: H("2.0"), id: Yp, ...q.shape }).strict(), Zp = (e4) => Xp.safeParse(e4).success, Qp = L({ jsonrpc: H("2.0"), ...Jp.shape }).strict(), $p = (e4) => Qp.safeParse(e4).success, em = L({ jsonrpc: H("2.0"), id: Yp, result: J }).strict(), tm = (e4) => em.safeParse(e4).success, Y;
5681
5681
  (function(e4) {
5682
5682
  e4[e4.ConnectionClosed = -32e3] = "ConnectionClosed", e4[e4.RequestTimeout = -32001] = "RequestTimeout", e4[e4.ParseError = -32700] = "ParseError", e4[e4.InvalidRequest = -32600] = "InvalidRequest", e4[e4.MethodNotFound = -32601] = "MethodNotFound", e4[e4.InvalidParams = -32602] = "InvalidParams", e4[e4.InternalError = -32603] = "InternalError", e4[e4.UrlElicitationRequired = -32042] = "UrlElicitationRequired";
5683
- })(X || (X = {}));
5684
- var tm = R({ jsonrpc: U("2.0"), id: Jp.optional(), error: R({ code: P().int(), message: M(), data: I().optional() }) }).strict(), nm = (e4) => tm.safeParse(e4).success, rm = B([Yp, Zp, $p, tm]);
5685
- B([$p, tm]);
5686
- var im = Y.strict(), am = Kp.extend({ requestId: Jp.optional(), reason: M().optional() }), om = qp.extend({ method: U("notifications/cancelled"), params: am }), sm = R({ icons: L(R({ src: M(), mimeType: M().optional(), sizes: L(M()).optional(), theme: H(["light", "dark"]).optional() })).optional() }), cm = R({ name: M(), title: M().optional() }), lm = cm.extend({ ...cm.shape, ...sm.shape, version: M(), websiteUrl: M().optional(), description: M().optional() }), um = yp((e4) => e4 && typeof e4 == "object" && !Array.isArray(e4) && Object.keys(e4).length === 0 ? { form: {} } : e4, mf(R({ form: mf(R({ applyDefaults: F().optional() }), V(M(), I())).optional(), url: q.optional() }), V(M(), I()).optional())), dm = z({ list: q.optional(), cancel: q.optional(), requests: z({ sampling: z({ createMessage: q.optional() }).optional(), elicitation: z({ create: q.optional() }).optional() }).optional() }), fm = z({ list: q.optional(), cancel: q.optional(), requests: z({ tools: z({ call: q.optional() }).optional() }).optional() }), pm = R({ experimental: V(M(), q).optional(), sampling: R({ context: q.optional(), tools: q.optional() }).optional(), elicitation: um.optional(), roots: R({ listChanged: F().optional() }).optional(), tasks: dm.optional(), extensions: V(M(), q).optional() }), mm = Up.extend({ protocolVersion: M(), capabilities: pm, clientInfo: lm }), hm = J.extend({ method: U("initialize"), params: mm }), gm = R({ experimental: V(M(), q).optional(), logging: q.optional(), completions: q.optional(), prompts: R({ listChanged: F().optional() }).optional(), resources: R({ subscribe: F().optional(), listChanged: F().optional() }).optional(), tools: R({ listChanged: F().optional() }).optional(), tasks: fm.optional(), extensions: V(M(), q).optional() }), _m = Y.extend({ protocolVersion: M(), capabilities: gm, serverInfo: lm, instructions: M().optional() }), vm = qp.extend({ method: U("notifications/initialized"), params: Kp.optional() }), ym = J.extend({ method: U("ping"), params: Up.optional() }), bm = R({ progress: P(), total: W(P()), message: W(M()) }), xm = R({ ...Kp.shape, ...bm.shape, progressToken: Rp }), Sm = qp.extend({ method: U("notifications/progress"), params: xm }), Cm = Up.extend({ cursor: zp.optional() }), wm = J.extend({ params: Cm.optional() }), Tm = Y.extend({ nextCursor: zp.optional() }), Em = H(["working", "input_required", "completed", "failed", "cancelled"]), Dm = R({ taskId: M(), status: Em, ttl: B([P(), qd()]), createdAt: M(), lastUpdatedAt: M(), pollInterval: W(P()), statusMessage: W(M()) }), Om = Y.extend({ task: Dm }), km = Kp.merge(Dm), Am = qp.extend({ method: U("notifications/tasks/status"), params: km }), jm = J.extend({ method: U("tasks/get"), params: Up.extend({ taskId: M() }) }), Mm = Y.merge(Dm), Nm = J.extend({ method: U("tasks/result"), params: Up.extend({ taskId: M() }) });
5687
- Y.loose();
5688
- var Pm = wm.extend({ method: U("tasks/list") }), Fm = Tm.extend({ tasks: L(Dm) }), Im = J.extend({ method: U("tasks/cancel"), params: Up.extend({ taskId: M() }) }), Lm = Y.merge(Dm), Rm = R({ uri: M(), mimeType: W(M()), _meta: V(M(), I()).optional() }), zm = Rm.extend({ text: M() }), Bm = M().refine((e4) => {
5683
+ })(Y || (Y = {}));
5684
+ var nm = L({ jsonrpc: H("2.0"), id: Yp.optional(), error: L({ code: N().int(), message: j(), data: F().optional() }) }).strict(), rm = (e4) => nm.safeParse(e4).success, im = z([Xp, Qp, em, nm]);
5685
+ z([em, nm]);
5686
+ var am = J.strict(), om = qp.extend({ requestId: Yp.optional(), reason: j().optional() }), sm = Jp.extend({ method: H("notifications/cancelled"), params: om }), cm = L({ icons: I(L({ src: j(), mimeType: j().optional(), sizes: I(j()).optional(), theme: V(["light", "dark"]).optional() })).optional() }), lm = L({ name: j(), title: j().optional() }), um = lm.extend({ ...lm.shape, ...cm.shape, version: j(), websiteUrl: j().optional(), description: j().optional() }), dm = bp((e4) => e4 && typeof e4 == "object" && !Array.isArray(e4) && Object.keys(e4).length === 0 ? { form: {} } : e4, hf(L({ form: hf(L({ applyDefaults: P().optional() }), B(j(), F())).optional(), url: K.optional() }), B(j(), F()).optional())), fm = R({ list: K.optional(), cancel: K.optional(), requests: R({ sampling: R({ createMessage: K.optional() }).optional(), elicitation: R({ create: K.optional() }).optional() }).optional() }), pm = R({ list: K.optional(), cancel: K.optional(), requests: R({ tools: R({ call: K.optional() }).optional() }).optional() }), mm = L({ experimental: B(j(), K).optional(), sampling: L({ context: K.optional(), tools: K.optional() }).optional(), elicitation: dm.optional(), roots: L({ listChanged: P().optional() }).optional(), tasks: fm.optional(), extensions: B(j(), K).optional() }), hm = Wp.extend({ protocolVersion: j(), capabilities: mm, clientInfo: um }), gm = q.extend({ method: H("initialize"), params: hm }), _m = L({ experimental: B(j(), K).optional(), logging: K.optional(), completions: K.optional(), prompts: L({ listChanged: P().optional() }).optional(), resources: L({ subscribe: P().optional(), listChanged: P().optional() }).optional(), tools: L({ listChanged: P().optional() }).optional(), tasks: pm.optional(), extensions: B(j(), K).optional() }), vm = J.extend({ protocolVersion: j(), capabilities: _m, serverInfo: um, instructions: j().optional() }), ym = Jp.extend({ method: H("notifications/initialized"), params: qp.optional() }), bm = q.extend({ method: H("ping"), params: Wp.optional() }), xm = L({ progress: N(), total: U(N()), message: U(j()) }), Sm = L({ ...qp.shape, ...xm.shape, progressToken: zp }), Cm = Jp.extend({ method: H("notifications/progress"), params: Sm }), wm = Wp.extend({ cursor: Bp.optional() }), Tm = q.extend({ params: wm.optional() }), Em = J.extend({ nextCursor: Bp.optional() }), Dm = V(["working", "input_required", "completed", "failed", "cancelled"]), Om = L({ taskId: j(), status: Dm, ttl: z([N(), Jd()]), createdAt: j(), lastUpdatedAt: j(), pollInterval: U(N()), statusMessage: U(j()) }), km = J.extend({ task: Om }), Am = qp.merge(Om), jm = Jp.extend({ method: H("notifications/tasks/status"), params: Am }), Mm = q.extend({ method: H("tasks/get"), params: Wp.extend({ taskId: j() }) }), Nm = J.merge(Om), Pm = q.extend({ method: H("tasks/result"), params: Wp.extend({ taskId: j() }) });
5687
+ J.loose();
5688
+ var Fm = Tm.extend({ method: H("tasks/list") }), Im = Em.extend({ tasks: I(Om) }), Lm = q.extend({ method: H("tasks/cancel"), params: Wp.extend({ taskId: j() }) }), Rm = J.merge(Om), zm = L({ uri: j(), mimeType: U(j()), _meta: B(j(), F()).optional() }), Bm = zm.extend({ text: j() }), Vm = j().refine((e4) => {
5689
5689
  try {
5690
5690
  return atob(e4), true;
5691
5691
  } catch (e5) {
5692
5692
  return false;
5693
5693
  }
5694
- }, { message: "Invalid Base64 string" }), Vm = Rm.extend({ blob: Bm }), Hm = H(["user", "assistant"]), Um = R({ audience: L(Hm).optional(), priority: P().min(0).max(1).optional(), lastModified: uu({ offset: true }).optional() }), Wm = R({ ...cm.shape, ...sm.shape, uri: M(), description: W(M()), mimeType: W(M()), size: W(P()), annotations: Um.optional(), _meta: W(z({})) }), Gm = R({ ...cm.shape, ...sm.shape, uriTemplate: M(), description: W(M()), mimeType: W(M()), annotations: Um.optional(), _meta: W(z({})) }), Km = wm.extend({ method: U("resources/list") }), qm = Tm.extend({ resources: L(Wm) }), Jm = wm.extend({ method: U("resources/templates/list") }), Ym = Tm.extend({ resourceTemplates: L(Gm) }), Xm = Up.extend({ uri: M() }), Zm = Xm, Qm = J.extend({ method: U("resources/read"), params: Zm }), $m = Y.extend({ contents: L(B([zm, Vm])) }), eh = qp.extend({ method: U("notifications/resources/list_changed"), params: Kp.optional() }), th = Xm, nh = J.extend({ method: U("resources/subscribe"), params: th }), rh = Xm, ih = J.extend({ method: U("resources/unsubscribe"), params: rh }), ah = Kp.extend({ uri: M() }), oh = qp.extend({ method: U("notifications/resources/updated"), params: ah }), sh = R({ name: M(), description: W(M()), required: W(F()) }), ch = R({ ...cm.shape, ...sm.shape, description: W(M()), arguments: W(L(sh)), _meta: W(z({})) }), lh = wm.extend({ method: U("prompts/list") }), uh = Tm.extend({ prompts: L(ch) }), dh = Up.extend({ name: M(), arguments: V(M(), M()).optional() }), fh = J.extend({ method: U("prompts/get"), params: dh }), ph = R({ type: U("text"), text: M(), annotations: Um.optional(), _meta: V(M(), I()).optional() }), mh = R({ type: U("image"), data: Bm, mimeType: M(), annotations: Um.optional(), _meta: V(M(), I()).optional() }), hh = R({ type: U("audio"), data: Bm, mimeType: M(), annotations: Um.optional(), _meta: V(M(), I()).optional() }), gh = R({ type: U("tool_use"), name: M(), id: M(), input: V(M(), I()), _meta: V(M(), I()).optional() }), _h = R({ type: U("resource"), resource: B([zm, Vm]), annotations: Um.optional(), _meta: V(M(), I()).optional() }), vh = Wm.extend({ type: U("resource_link") }), yh = B([ph, mh, hh, vh, _h]), bh = R({ role: Hm, content: yh }), xh = Y.extend({ description: M().optional(), messages: L(bh) }), Sh = qp.extend({ method: U("notifications/prompts/list_changed"), params: Kp.optional() }), Ch = R({ title: M().optional(), readOnlyHint: F().optional(), destructiveHint: F().optional(), idempotentHint: F().optional(), openWorldHint: F().optional() }), wh = R({ taskSupport: H(["required", "optional", "forbidden"]).optional() }), Th = R({ ...cm.shape, ...sm.shape, description: M().optional(), inputSchema: R({ type: U("object"), properties: V(M(), q).optional(), required: L(M()).optional() }).catchall(I()), outputSchema: R({ type: U("object"), properties: V(M(), q).optional(), required: L(M()).optional() }).catchall(I()).optional(), annotations: Ch.optional(), execution: wh.optional(), _meta: V(M(), I()).optional() }), Eh = wm.extend({ method: U("tools/list") }), Dh = Tm.extend({ tools: L(Th) }), Oh = Y.extend({ content: L(yh).default([]), structuredContent: V(M(), I()).optional(), isError: F().optional() });
5695
- Oh.or(Y.extend({ toolResult: I() }));
5696
- var kh = Wp.extend({ name: M(), arguments: V(M(), I()).optional() }), Ah = J.extend({ method: U("tools/call"), params: kh }), jh = qp.extend({ method: U("notifications/tools/list_changed"), params: Kp.optional() });
5697
- R({ autoRefresh: F().default(true), debounceMs: P().int().nonnegative().default(300) });
5698
- var Mh = H(["debug", "info", "notice", "warning", "error", "critical", "alert", "emergency"]), Nh = Up.extend({ level: Mh }), Ph = J.extend({ method: U("logging/setLevel"), params: Nh }), Fh = Kp.extend({ level: Mh, logger: M().optional(), data: I() }), Ih = qp.extend({ method: U("notifications/message"), params: Fh }), Lh = R({ hints: L(R({ name: M().optional() })).optional(), costPriority: P().min(0).max(1).optional(), speedPriority: P().min(0).max(1).optional(), intelligencePriority: P().min(0).max(1).optional() }), Rh = R({ mode: H(["auto", "required", "none"]).optional() }), zh = R({ type: U("tool_result"), toolUseId: M().describe("The unique identifier for the corresponding tool call."), content: L(yh).default([]), structuredContent: R({}).loose().optional(), isError: F().optional(), _meta: V(M(), I()).optional() }), Bh = ff("type", [ph, mh, hh]), Vh = ff("type", [ph, mh, hh, gh, zh]), Hh = R({ role: Hm, content: B([Vh, L(Vh)]), _meta: V(M(), I()).optional() }), Uh = Wp.extend({ messages: L(Hh), modelPreferences: Lh.optional(), systemPrompt: M().optional(), includeContext: H(["none", "thisServer", "allServers"]).optional(), temperature: P().optional(), maxTokens: P().int(), stopSequences: L(M()).optional(), metadata: q.optional(), tools: L(Th).optional(), toolChoice: Rh.optional() }), Wh = J.extend({ method: U("sampling/createMessage"), params: Uh }), Gh = Y.extend({ model: M(), stopReason: W(H(["endTurn", "stopSequence", "maxTokens"]).or(M())), role: Hm, content: Bh }), Kh = Y.extend({ model: M(), stopReason: W(H(["endTurn", "stopSequence", "maxTokens", "toolUse"]).or(M())), role: Hm, content: B([Vh, L(Vh)]) }), qh = R({ type: U("boolean"), title: M().optional(), description: M().optional(), default: F().optional() }), Jh = R({ type: U("string"), title: M().optional(), description: M().optional(), minLength: P().optional(), maxLength: P().optional(), format: H(["email", "uri", "date", "date-time"]).optional(), default: M().optional() }), Yh = R({ type: H(["number", "integer"]), title: M().optional(), description: M().optional(), minimum: P().optional(), maximum: P().optional(), default: P().optional() }), Xh = R({ type: U("string"), title: M().optional(), description: M().optional(), enum: L(M()), default: M().optional() }), Zh = R({ type: U("string"), title: M().optional(), description: M().optional(), oneOf: L(R({ const: M(), title: M() })), default: M().optional() }), Qh = B([B([R({ type: U("string"), title: M().optional(), description: M().optional(), enum: L(M()), enumNames: L(M()).optional(), default: M().optional() }), B([Xh, Zh]), B([R({ type: U("array"), title: M().optional(), description: M().optional(), minItems: P().optional(), maxItems: P().optional(), items: R({ type: U("string"), enum: L(M()) }), default: L(M()).optional() }), R({ type: U("array"), title: M().optional(), description: M().optional(), minItems: P().optional(), maxItems: P().optional(), items: R({ anyOf: L(R({ const: M(), title: M() })) }), default: L(M()).optional() })])]), qh, Jh, Yh]), $h = B([Wp.extend({ mode: U("form").optional(), message: M(), requestedSchema: R({ type: U("object"), properties: V(M(), Qh), required: L(M()).optional() }) }), Wp.extend({ mode: U("url"), message: M(), elicitationId: M(), url: M().url() })]), eg = J.extend({ method: U("elicitation/create"), params: $h }), tg = Kp.extend({ elicitationId: M() }), ng = qp.extend({ method: U("notifications/elicitation/complete"), params: tg }), rg = Y.extend({ action: H(["accept", "decline", "cancel"]), content: yp((e4) => e4 === null ? void 0 : e4, V(M(), B([M(), P(), F(), L(M())])).optional()) }), ig = R({ type: U("ref/resource"), uri: M() }), ag = R({ type: U("ref/prompt"), name: M() }), og = Up.extend({ ref: B([ag, ig]), argument: R({ name: M(), value: M() }), context: R({ arguments: V(M(), M()).optional() }).optional() }), sg = J.extend({ method: U("completion/complete"), params: og }), cg = Y.extend({ completion: z({ values: L(M()).max(100), total: W(P().int()), hasMore: W(F()) }) }), lg = R({ uri: M().startsWith("file://"), name: M().optional(), _meta: V(M(), I()).optional() }), ug = J.extend({ method: U("roots/list"), params: Up.optional() }), dg = Y.extend({ roots: L(lg) }), fg = qp.extend({ method: U("notifications/roots/list_changed"), params: Kp.optional() });
5699
- B([ym, hm, sg, Ph, fh, lh, Km, Jm, Qm, nh, ih, Ah, Eh, jm, Nm, Pm, Im]), B([om, Sm, vm, fg, Am]), B([im, Gh, Kh, rg, dg, Mm, Fm, Om]), B([ym, Wh, eg, ug, jm, Nm, Pm, Im]), B([om, Sm, Ih, oh, eh, jh, Sh, Am, ng]), B([im, _m, cg, xh, uh, qm, Ym, $m, Oh, Dh, Mm, Fm, Om]);
5700
- var Z = class e2 extends Error {
5694
+ }, { message: "Invalid Base64 string" }), Hm = zm.extend({ blob: Vm }), Um = V(["user", "assistant"]), Wm = L({ audience: I(Um).optional(), priority: N().min(0).max(1).optional(), lastModified: uu({ offset: true }).optional() }), Gm = L({ ...lm.shape, ...cm.shape, uri: j(), description: U(j()), mimeType: U(j()), size: U(N()), annotations: Wm.optional(), _meta: U(R({})) }), Km = L({ ...lm.shape, ...cm.shape, uriTemplate: j(), description: U(j()), mimeType: U(j()), annotations: Wm.optional(), _meta: U(R({})) }), qm = Tm.extend({ method: H("resources/list") }), Jm = Em.extend({ resources: I(Gm) }), Ym = Tm.extend({ method: H("resources/templates/list") }), Xm = Em.extend({ resourceTemplates: I(Km) }), Zm = Wp.extend({ uri: j() }), Qm = Zm, $m = q.extend({ method: H("resources/read"), params: Qm }), eh = J.extend({ contents: I(z([Bm, Hm])) }), th = Jp.extend({ method: H("notifications/resources/list_changed"), params: qp.optional() }), nh = Zm, rh = q.extend({ method: H("resources/subscribe"), params: nh }), ih = Zm, ah = q.extend({ method: H("resources/unsubscribe"), params: ih }), oh = qp.extend({ uri: j() }), sh = Jp.extend({ method: H("notifications/resources/updated"), params: oh }), ch = L({ name: j(), description: U(j()), required: U(P()) }), lh = L({ ...lm.shape, ...cm.shape, description: U(j()), arguments: U(I(ch)), _meta: U(R({})) }), uh = Tm.extend({ method: H("prompts/list") }), dh = Em.extend({ prompts: I(lh) }), fh = Wp.extend({ name: j(), arguments: B(j(), j()).optional() }), ph = q.extend({ method: H("prompts/get"), params: fh }), mh = L({ type: H("text"), text: j(), annotations: Wm.optional(), _meta: B(j(), F()).optional() }), hh = L({ type: H("image"), data: Vm, mimeType: j(), annotations: Wm.optional(), _meta: B(j(), F()).optional() }), gh = L({ type: H("audio"), data: Vm, mimeType: j(), annotations: Wm.optional(), _meta: B(j(), F()).optional() }), _h = L({ type: H("tool_use"), name: j(), id: j(), input: B(j(), F()), _meta: B(j(), F()).optional() }), vh = L({ type: H("resource"), resource: z([Bm, Hm]), annotations: Wm.optional(), _meta: B(j(), F()).optional() }), yh = Gm.extend({ type: H("resource_link") }), bh = z([mh, hh, gh, yh, vh]), xh = L({ role: Um, content: bh }), Sh = J.extend({ description: j().optional(), messages: I(xh) }), Ch = Jp.extend({ method: H("notifications/prompts/list_changed"), params: qp.optional() }), wh = L({ title: j().optional(), readOnlyHint: P().optional(), destructiveHint: P().optional(), idempotentHint: P().optional(), openWorldHint: P().optional() }), Th = L({ taskSupport: V(["required", "optional", "forbidden"]).optional() }), Eh = L({ ...lm.shape, ...cm.shape, description: j().optional(), inputSchema: L({ type: H("object"), properties: B(j(), K).optional(), required: I(j()).optional() }).catchall(F()), outputSchema: L({ type: H("object"), properties: B(j(), K).optional(), required: I(j()).optional() }).catchall(F()).optional(), annotations: wh.optional(), execution: Th.optional(), _meta: B(j(), F()).optional() }), Dh = Tm.extend({ method: H("tools/list") }), Oh = Em.extend({ tools: I(Eh) }), kh = J.extend({ content: I(bh).default([]), structuredContent: B(j(), F()).optional(), isError: P().optional() });
5695
+ kh.or(J.extend({ toolResult: F() }));
5696
+ var Ah = Gp.extend({ name: j(), arguments: B(j(), F()).optional() }), jh = q.extend({ method: H("tools/call"), params: Ah }), Mh = Jp.extend({ method: H("notifications/tools/list_changed"), params: qp.optional() });
5697
+ L({ autoRefresh: P().default(true), debounceMs: N().int().nonnegative().default(300) });
5698
+ var Nh = V(["debug", "info", "notice", "warning", "error", "critical", "alert", "emergency"]), Ph = Wp.extend({ level: Nh }), Fh = q.extend({ method: H("logging/setLevel"), params: Ph }), Ih = qp.extend({ level: Nh, logger: j().optional(), data: F() }), Lh = Jp.extend({ method: H("notifications/message"), params: Ih }), Rh = L({ hints: I(L({ name: j().optional() })).optional(), costPriority: N().min(0).max(1).optional(), speedPriority: N().min(0).max(1).optional(), intelligencePriority: N().min(0).max(1).optional() }), zh = L({ mode: V(["auto", "required", "none"]).optional() }), Bh = L({ type: H("tool_result"), toolUseId: j().describe("The unique identifier for the corresponding tool call."), content: I(bh).default([]), structuredContent: L({}).loose().optional(), isError: P().optional(), _meta: B(j(), F()).optional() }), Vh = pf("type", [mh, hh, gh]), Hh = pf("type", [mh, hh, gh, _h, Bh]), Uh = L({ role: Um, content: z([Hh, I(Hh)]), _meta: B(j(), F()).optional() }), Wh = Gp.extend({ messages: I(Uh), modelPreferences: Rh.optional(), systemPrompt: j().optional(), includeContext: V(["none", "thisServer", "allServers"]).optional(), temperature: N().optional(), maxTokens: N().int(), stopSequences: I(j()).optional(), metadata: K.optional(), tools: I(Eh).optional(), toolChoice: zh.optional() }), Gh = q.extend({ method: H("sampling/createMessage"), params: Wh }), Kh = J.extend({ model: j(), stopReason: U(V(["endTurn", "stopSequence", "maxTokens"]).or(j())), role: Um, content: Vh }), qh = J.extend({ model: j(), stopReason: U(V(["endTurn", "stopSequence", "maxTokens", "toolUse"]).or(j())), role: Um, content: z([Hh, I(Hh)]) }), Jh = L({ type: H("boolean"), title: j().optional(), description: j().optional(), default: P().optional() }), Yh = L({ type: H("string"), title: j().optional(), description: j().optional(), minLength: N().optional(), maxLength: N().optional(), format: V(["email", "uri", "date", "date-time"]).optional(), default: j().optional() }), Xh = L({ type: V(["number", "integer"]), title: j().optional(), description: j().optional(), minimum: N().optional(), maximum: N().optional(), default: N().optional() }), Zh = L({ type: H("string"), title: j().optional(), description: j().optional(), enum: I(j()), default: j().optional() }), Qh = L({ type: H("string"), title: j().optional(), description: j().optional(), oneOf: I(L({ const: j(), title: j() })), default: j().optional() }), $h = z([z([L({ type: H("string"), title: j().optional(), description: j().optional(), enum: I(j()), enumNames: I(j()).optional(), default: j().optional() }), z([Zh, Qh]), z([L({ type: H("array"), title: j().optional(), description: j().optional(), minItems: N().optional(), maxItems: N().optional(), items: L({ type: H("string"), enum: I(j()) }), default: I(j()).optional() }), L({ type: H("array"), title: j().optional(), description: j().optional(), minItems: N().optional(), maxItems: N().optional(), items: L({ anyOf: I(L({ const: j(), title: j() })) }), default: I(j()).optional() })])]), Jh, Yh, Xh]), eg = z([Gp.extend({ mode: H("form").optional(), message: j(), requestedSchema: L({ type: H("object"), properties: B(j(), $h), required: I(j()).optional() }) }), Gp.extend({ mode: H("url"), message: j(), elicitationId: j(), url: j().url() })]), tg = q.extend({ method: H("elicitation/create"), params: eg }), ng = qp.extend({ elicitationId: j() }), rg = Jp.extend({ method: H("notifications/elicitation/complete"), params: ng }), ig = J.extend({ action: V(["accept", "decline", "cancel"]), content: bp((e4) => e4 === null ? void 0 : e4, B(j(), z([j(), N(), P(), I(j())])).optional()) }), ag = L({ type: H("ref/resource"), uri: j() }), og = L({ type: H("ref/prompt"), name: j() }), sg = Wp.extend({ ref: z([og, ag]), argument: L({ name: j(), value: j() }), context: L({ arguments: B(j(), j()).optional() }).optional() }), cg = q.extend({ method: H("completion/complete"), params: sg }), lg = J.extend({ completion: R({ values: I(j()).max(100), total: U(N().int()), hasMore: U(P()) }) }), ug = L({ uri: j().startsWith("file://"), name: j().optional(), _meta: B(j(), F()).optional() }), dg = q.extend({ method: H("roots/list"), params: Wp.optional() }), fg = J.extend({ roots: I(ug) }), pg = Jp.extend({ method: H("notifications/roots/list_changed"), params: qp.optional() });
5699
+ z([bm, gm, cg, Fh, ph, uh, qm, Ym, $m, rh, ah, jh, Dh, Mm, Pm, Fm, Lm]), z([sm, Cm, ym, pg, jm]), z([am, Kh, qh, ig, fg, Nm, Im, km]), z([bm, Gh, tg, dg, Mm, Pm, Fm, Lm]), z([sm, Cm, Lh, sh, th, Mh, Ch, jm, rg]), z([am, vm, lg, Sh, dh, Jm, Xm, eh, kh, Oh, Nm, Im, km]);
5700
+ var X = class e2 extends Error {
5701
5701
  constructor(e4, t2, n2) {
5702
5702
  super("MCP error ".concat(e4, ": ").concat(t2)), this.code = e4, this.data = n2, this.name = "McpError";
5703
5703
  }
5704
5704
  static fromError(t2, n2, r2) {
5705
- if (t2 === X.UrlElicitationRequired && r2) {
5705
+ if (t2 === Y.UrlElicitationRequired && r2) {
5706
5706
  let e4 = r2;
5707
- if (e4.elicitations) return new pg(e4.elicitations, n2);
5707
+ if (e4.elicitations) return new mg(e4.elicitations, n2);
5708
5708
  }
5709
5709
  return new e2(t2, n2, r2);
5710
5710
  }
5711
- }, pg = class extends Z {
5711
+ }, mg = class extends X {
5712
5712
  constructor(e4, t2 = "URL elicitation".concat(e4.length > 1 ? "s" : "", " required")) {
5713
- super(X.UrlElicitationRequired, t2, { elicitations: e4 });
5713
+ super(Y.UrlElicitationRequired, t2, { elicitations: e4 });
5714
5714
  }
5715
5715
  get elicitations() {
5716
5716
  var e4, t2;
5717
5717
  return (e4 = (t2 = this.data) == null ? void 0 : t2.elicitations) == null ? [] : e4;
5718
5718
  }
5719
5719
  };
5720
- function mg(e4) {
5720
+ function hg(e4) {
5721
5721
  return e4 === "completed" || e4 === "failed" || e4 === "cancelled";
5722
5722
  }
5723
- function hg(e4) {
5723
+ function gg(e4) {
5724
5724
  let t2 = au(e4), n2 = t2 == null ? void 0 : t2.method;
5725
5725
  if (!n2) throw Error("Schema is missing a method literal");
5726
5726
  let r2 = ou(n2);
5727
5727
  if (typeof r2 != "string") throw Error("Schema method literal must be a string");
5728
5728
  return r2;
5729
5729
  }
5730
- function gg(e4, t2) {
5730
+ function _g(e4, t2) {
5731
5731
  let n2 = iu(e4, t2);
5732
5732
  if (!n2.success) throw n2.error;
5733
5733
  return n2.data;
5734
5734
  }
5735
- var _g = 6e4, vg = class {
5735
+ var vg = 6e4, yg = class {
5736
5736
  constructor(e4) {
5737
- this._options = e4, this._requestMessageId = 0, this._requestHandlers = /* @__PURE__ */ new Map(), this._requestHandlerAbortControllers = /* @__PURE__ */ new Map(), this._notificationHandlers = /* @__PURE__ */ new Map(), this._responseHandlers = /* @__PURE__ */ new Map(), this._progressHandlers = /* @__PURE__ */ new Map(), this._timeoutInfo = /* @__PURE__ */ new Map(), this._pendingDebouncedNotifications = /* @__PURE__ */ new Set(), this._taskProgressTokens = /* @__PURE__ */ new Map(), this._requestResolvers = /* @__PURE__ */ new Map(), this.setNotificationHandler(om, (e5) => {
5737
+ this._options = e4, this._requestMessageId = 0, this._requestHandlers = /* @__PURE__ */ new Map(), this._requestHandlerAbortControllers = /* @__PURE__ */ new Map(), this._notificationHandlers = /* @__PURE__ */ new Map(), this._responseHandlers = /* @__PURE__ */ new Map(), this._progressHandlers = /* @__PURE__ */ new Map(), this._timeoutInfo = /* @__PURE__ */ new Map(), this._pendingDebouncedNotifications = /* @__PURE__ */ new Set(), this._taskProgressTokens = /* @__PURE__ */ new Map(), this._requestResolvers = /* @__PURE__ */ new Map(), this.setNotificationHandler(sm, (e5) => {
5738
5738
  this._oncancel(e5);
5739
- }), this.setNotificationHandler(Sm, (e5) => {
5739
+ }), this.setNotificationHandler(Cm, (e5) => {
5740
5740
  this._onprogress(e5);
5741
- }), this.setRequestHandler(ym, (e5) => ({})), this._taskStore = e4 == null ? void 0 : e4.taskStore, this._taskMessageQueue = e4 == null ? void 0 : e4.taskMessageQueue, this._taskStore && (this.setRequestHandler(jm, async (e5, t2) => {
5741
+ }), this.setRequestHandler(bm, (e5) => ({})), this._taskStore = e4 == null ? void 0 : e4.taskStore, this._taskMessageQueue = e4 == null ? void 0 : e4.taskMessageQueue, this._taskStore && (this.setRequestHandler(Mm, async (e5, t2) => {
5742
5742
  let n2 = await this._taskStore.getTask(e5.params.taskId, t2.sessionId);
5743
- if (!n2) throw new Z(X.InvalidParams, "Failed to retrieve task: Task not found");
5743
+ if (!n2) throw new X(Y.InvalidParams, "Failed to retrieve task: Task not found");
5744
5744
  return { ...n2 };
5745
- }), this.setRequestHandler(Nm, async (e5, t2) => {
5745
+ }), this.setRequestHandler(Pm, async (e5, t2) => {
5746
5746
  let n2 = async () => {
5747
5747
  let r2 = e5.params.taskId;
5748
5748
  if (this._taskMessageQueue) {
@@ -5754,7 +5754,7 @@ var _g = 6e4, vg = class {
5754
5754
  if (r3) if (this._requestResolvers.delete(n3), e6.type === "response") r3(t3);
5755
5755
  else {
5756
5756
  let e7 = t3;
5757
- r3(new Z(e7.error.code, e7.error.message, e7.error.data));
5757
+ r3(new X(e7.error.code, e7.error.message, e7.error.data));
5758
5758
  }
5759
5759
  else {
5760
5760
  let t4 = e6.type === "response" ? "Response" : "Error";
@@ -5766,34 +5766,34 @@ var _g = 6e4, vg = class {
5766
5766
  }
5767
5767
  }
5768
5768
  let a2 = await this._taskStore.getTask(r2, t2.sessionId);
5769
- if (!a2) throw new Z(X.InvalidParams, "Task not found: ".concat(r2));
5770
- if (!mg(a2.status)) return await this._waitForTaskUpdate(r2, t2.signal), await n2();
5771
- if (mg(a2.status)) {
5769
+ if (!a2) throw new X(Y.InvalidParams, "Task not found: ".concat(r2));
5770
+ if (!hg(a2.status)) return await this._waitForTaskUpdate(r2, t2.signal), await n2();
5771
+ if (hg(a2.status)) {
5772
5772
  let e6 = await this._taskStore.getTaskResult(r2, t2.sessionId);
5773
- return this._clearTaskQueue(r2), { ...e6, _meta: { ...e6._meta, [Lp]: { taskId: r2 } } };
5773
+ return this._clearTaskQueue(r2), { ...e6, _meta: { ...e6._meta, [Rp]: { taskId: r2 } } };
5774
5774
  }
5775
5775
  return await n2();
5776
5776
  };
5777
5777
  return await n2();
5778
- }), this.setRequestHandler(Pm, async (e5, t2) => {
5778
+ }), this.setRequestHandler(Fm, async (e5, t2) => {
5779
5779
  try {
5780
5780
  var n2;
5781
5781
  let { tasks: r2, nextCursor: i2 } = await this._taskStore.listTasks((n2 = e5.params) == null ? void 0 : n2.cursor, t2.sessionId);
5782
5782
  return { tasks: r2, nextCursor: i2, _meta: {} };
5783
5783
  } catch (e6) {
5784
- throw new Z(X.InvalidParams, "Failed to list tasks: ".concat(e6 instanceof Error ? e6.message : String(e6)));
5784
+ throw new X(Y.InvalidParams, "Failed to list tasks: ".concat(e6 instanceof Error ? e6.message : String(e6)));
5785
5785
  }
5786
- }), this.setRequestHandler(Im, async (e5, t2) => {
5786
+ }), this.setRequestHandler(Lm, async (e5, t2) => {
5787
5787
  try {
5788
5788
  let n2 = await this._taskStore.getTask(e5.params.taskId, t2.sessionId);
5789
- if (!n2) throw new Z(X.InvalidParams, "Task not found: ".concat(e5.params.taskId));
5790
- if (mg(n2.status)) throw new Z(X.InvalidParams, "Cannot cancel task in terminal status: ".concat(n2.status));
5789
+ if (!n2) throw new X(Y.InvalidParams, "Task not found: ".concat(e5.params.taskId));
5790
+ if (hg(n2.status)) throw new X(Y.InvalidParams, "Cannot cancel task in terminal status: ".concat(n2.status));
5791
5791
  await this._taskStore.updateTaskStatus(e5.params.taskId, "cancelled", "Client cancelled task execution.", t2.sessionId), this._clearTaskQueue(e5.params.taskId);
5792
5792
  let r2 = await this._taskStore.getTask(e5.params.taskId, t2.sessionId);
5793
- if (!r2) throw new Z(X.InvalidParams, "Task not found after cancellation: ".concat(e5.params.taskId));
5793
+ if (!r2) throw new X(Y.InvalidParams, "Task not found after cancellation: ".concat(e5.params.taskId));
5794
5794
  return { _meta: {}, ...r2 };
5795
5795
  } catch (e6) {
5796
- throw e6 instanceof Z ? e6 : new Z(X.InvalidRequest, "Failed to cancel task: ".concat(e6 instanceof Error ? e6.message : String(e6)));
5796
+ throw e6 instanceof X ? e6 : new X(Y.InvalidRequest, "Failed to cancel task: ".concat(e6 instanceof Error ? e6.message : String(e6)));
5797
5797
  }
5798
5798
  }));
5799
5799
  }
@@ -5809,7 +5809,7 @@ var _g = 6e4, vg = class {
5809
5809
  let t2 = this._timeoutInfo.get(e4);
5810
5810
  if (!t2) return false;
5811
5811
  let n2 = Date.now() - t2.startTime;
5812
- if (t2.maxTotalTimeout && n2 >= t2.maxTotalTimeout) throw this._timeoutInfo.delete(e4), Z.fromError(X.RequestTimeout, "Maximum total timeout exceeded", { maxTotalTimeout: t2.maxTotalTimeout, totalElapsed: n2 });
5812
+ if (t2.maxTotalTimeout && n2 >= t2.maxTotalTimeout) throw this._timeoutInfo.delete(e4), X.fromError(Y.RequestTimeout, "Maximum total timeout exceeded", { maxTotalTimeout: t2.maxTotalTimeout, totalElapsed: n2 });
5813
5813
  return clearTimeout(t2.timeoutId), t2.timeoutId = setTimeout(t2.onTimeout, t2.timeout), true;
5814
5814
  }
5815
5815
  _cleanupTimeout(e4) {
@@ -5830,7 +5830,7 @@ var _g = 6e4, vg = class {
5830
5830
  };
5831
5831
  let o2 = (r2 = this._transport) == null ? void 0 : r2.onmessage;
5832
5832
  this._transport.onmessage = (e5, t3) => {
5833
- o2 == null || o2(e5, t3), em(e5) || nm(e5) ? this._onresponse(e5) : Xp(e5) ? this._onrequest(e5, t3) : Qp(e5) ? this._onnotification(e5) : this._onerror(Error("Unknown message type: ".concat(JSON.stringify(e5))));
5833
+ o2 == null || o2(e5, t3), tm(e5) || rm(e5) ? this._onresponse(e5) : Zp(e5) ? this._onrequest(e5, t3) : $p(e5) ? this._onnotification(e5) : this._onerror(Error("Unknown message type: ".concat(JSON.stringify(e5))));
5834
5834
  }, await this._transport.start();
5835
5835
  }
5836
5836
  _onclose() {
@@ -5841,7 +5841,7 @@ var _g = 6e4, vg = class {
5841
5841
  this._timeoutInfo.clear();
5842
5842
  for (let e5 of this._requestHandlerAbortControllers.values()) e5.abort();
5843
5843
  this._requestHandlerAbortControllers.clear();
5844
- let n2 = Z.fromError(X.ConnectionClosed, "Connection closed");
5844
+ let n2 = X.fromError(Y.ConnectionClosed, "Connection closed");
5845
5845
  this._transport = void 0, (e4 = this.onclose) == null || e4.call(this);
5846
5846
  for (let e5 of t2.values()) e5(n2);
5847
5847
  }
@@ -5858,19 +5858,19 @@ var _g = 6e4, vg = class {
5858
5858
  var n2, r2, i2;
5859
5859
  let a2 = (n2 = this._requestHandlers.get(e4.method)) == null ? this.fallbackRequestHandler : n2, o2 = this._transport, s2 = (r2 = e4.params) == null || (r2 = r2._meta) == null || (r2 = r2["io.modelcontextprotocol/related-task"]) == null ? void 0 : r2.taskId;
5860
5860
  if (a2 === void 0) {
5861
- let t3 = { jsonrpc: "2.0", id: e4.id, error: { code: X.MethodNotFound, message: "Method not found" } };
5861
+ let t3 = { jsonrpc: "2.0", id: e4.id, error: { code: Y.MethodNotFound, message: "Method not found" } };
5862
5862
  s2 && this._taskMessageQueue ? this._enqueueTaskMessage(s2, { type: "error", message: t3, timestamp: Date.now() }, o2 == null ? void 0 : o2.sessionId).catch((e5) => this._onerror(Error("Failed to enqueue error response: ".concat(e5)))) : o2 == null || o2.send(t3).catch((e5) => this._onerror(Error("Failed to send an error response: ".concat(e5))));
5863
5863
  return;
5864
5864
  }
5865
5865
  let c2 = new AbortController();
5866
5866
  this._requestHandlerAbortControllers.set(e4.id, c2);
5867
- let l2 = Gp(e4.params) ? e4.params.task : void 0, u2 = this._taskStore ? this.requestTaskStore(e4, o2 == null ? void 0 : o2.sessionId) : void 0, d2 = { signal: c2.signal, sessionId: o2 == null ? void 0 : o2.sessionId, _meta: (i2 = e4.params) == null ? void 0 : i2._meta, sendNotification: async (t3) => {
5867
+ let l2 = Kp(e4.params) ? e4.params.task : void 0, u2 = this._taskStore ? this.requestTaskStore(e4, o2 == null ? void 0 : o2.sessionId) : void 0, d2 = { signal: c2.signal, sessionId: o2 == null ? void 0 : o2.sessionId, _meta: (i2 = e4.params) == null ? void 0 : i2._meta, sendNotification: async (t3) => {
5868
5868
  if (c2.signal.aborted) return;
5869
5869
  let n3 = { relatedRequestId: e4.id };
5870
5870
  s2 && (n3.relatedTask = { taskId: s2 }), await this.notification(t3, n3);
5871
5871
  }, sendRequest: async (t3, n3, r3) => {
5872
5872
  var i3, a3;
5873
- if (c2.signal.aborted) throw new Z(X.ConnectionClosed, "Request was cancelled");
5873
+ if (c2.signal.aborted) throw new X(Y.ConnectionClosed, "Request was cancelled");
5874
5874
  let o3 = { ...r3, relatedRequestId: e4.id };
5875
5875
  s2 && !o3.relatedTask && (o3.relatedTask = { taskId: s2 });
5876
5876
  let l3 = (i3 = (a3 = o3.relatedTask) == null ? void 0 : a3.taskId) == null ? s2 : i3;
@@ -5885,7 +5885,7 @@ var _g = 6e4, vg = class {
5885
5885
  }, async (t3) => {
5886
5886
  var n3;
5887
5887
  if (c2.signal.aborted) return;
5888
- let r3 = { jsonrpc: "2.0", id: e4.id, error: { code: Number.isSafeInteger(t3.code) ? t3.code : X.InternalError, message: (n3 = t3.message) == null ? "Internal error" : n3, ...t3.data !== void 0 && { data: t3.data } } };
5888
+ let r3 = { jsonrpc: "2.0", id: e4.id, error: { code: Number.isSafeInteger(t3.code) ? t3.code : Y.InternalError, message: (n3 = t3.message) == null ? "Internal error" : n3, ...t3.data !== void 0 && { data: t3.data } } };
5889
5889
  s2 && this._taskMessageQueue ? await this._enqueueTaskMessage(s2, { type: "error", message: r3, timestamp: Date.now() }, o2 == null ? void 0 : o2.sessionId) : await (o2 == null ? void 0 : o2.send(r3));
5890
5890
  }).catch((e5) => this._onerror(Error("Failed to send response: ".concat(e5)))).finally(() => {
5891
5891
  this._requestHandlerAbortControllers.get(e4.id) === c2 && this._requestHandlerAbortControllers.delete(e4.id);
@@ -5909,7 +5909,7 @@ var _g = 6e4, vg = class {
5909
5909
  _onresponse(e4) {
5910
5910
  let t2 = Number(e4.id), n2 = this._requestResolvers.get(t2);
5911
5911
  if (n2) {
5912
- this._requestResolvers.delete(t2), em(e4) ? n2(e4) : n2(new Z(e4.error.code, e4.error.message, e4.error.data));
5912
+ this._requestResolvers.delete(t2), tm(e4) ? n2(e4) : n2(new X(e4.error.code, e4.error.message, e4.error.data));
5913
5913
  return;
5914
5914
  }
5915
5915
  let r2 = this._responseHandlers.get(t2);
@@ -5919,14 +5919,14 @@ var _g = 6e4, vg = class {
5919
5919
  }
5920
5920
  this._responseHandlers.delete(t2), this._cleanupTimeout(t2);
5921
5921
  let i2 = false;
5922
- if (em(e4) && e4.result && typeof e4.result == "object") {
5922
+ if (tm(e4) && e4.result && typeof e4.result == "object") {
5923
5923
  let n3 = e4.result;
5924
5924
  if (n3.task && typeof n3.task == "object") {
5925
5925
  let e5 = n3.task;
5926
5926
  typeof e5.taskId == "string" && (i2 = true, this._taskProgressTokens.set(e5.taskId, t2));
5927
5927
  }
5928
5928
  }
5929
- i2 || this._progressHandlers.delete(t2), em(e4) ? r2(e4) : r2(Z.fromError(e4.error.code, e4.error.message, e4.error.data));
5929
+ i2 || this._progressHandlers.delete(t2), tm(e4) ? r2(e4) : r2(X.fromError(e4.error.code, e4.error.message, e4.error.data));
5930
5930
  }
5931
5931
  get transport() {
5932
5932
  return this._transport;
@@ -5941,20 +5941,20 @@ var _g = 6e4, vg = class {
5941
5941
  try {
5942
5942
  yield { type: "result", result: await this.request(e4, t2, n2) };
5943
5943
  } catch (e5) {
5944
- yield { type: "error", error: e5 instanceof Z ? e5 : new Z(X.InternalError, String(e5)) };
5944
+ yield { type: "error", error: e5 instanceof X ? e5 : new X(Y.InternalError, String(e5)) };
5945
5945
  }
5946
5946
  return;
5947
5947
  }
5948
5948
  let i2;
5949
5949
  try {
5950
- let r3 = await this.request(e4, Om, n2);
5950
+ let r3 = await this.request(e4, km, n2);
5951
5951
  if (r3.task) i2 = r3.task.taskId, yield { type: "taskCreated", task: r3.task };
5952
- else throw new Z(X.InternalError, "Task creation did not return a task");
5952
+ else throw new X(Y.InternalError, "Task creation did not return a task");
5953
5953
  for (; ; ) {
5954
5954
  var a2, o2, s2, c2;
5955
5955
  let e5 = await this.getTask({ taskId: i2 }, n2);
5956
- if (yield { type: "taskStatus", task: e5 }, mg(e5.status)) {
5957
- e5.status === "completed" ? yield { type: "result", result: await this.getTaskResult({ taskId: i2 }, t2, n2) } : e5.status === "failed" ? yield { type: "error", error: new Z(X.InternalError, "Task ".concat(i2, " failed")) } : e5.status === "cancelled" && (yield { type: "error", error: new Z(X.InternalError, "Task ".concat(i2, " was cancelled")) });
5956
+ if (yield { type: "taskStatus", task: e5 }, hg(e5.status)) {
5957
+ e5.status === "completed" ? yield { type: "result", result: await this.getTaskResult({ taskId: i2 }, t2, n2) } : e5.status === "failed" ? yield { type: "error", error: new X(Y.InternalError, "Task ".concat(i2, " failed")) } : e5.status === "cancelled" && (yield { type: "error", error: new X(Y.InternalError, "Task ".concat(i2, " was cancelled")) });
5958
5958
  return;
5959
5959
  }
5960
5960
  if (e5.status === "input_required") {
@@ -5965,7 +5965,7 @@ var _g = 6e4, vg = class {
5965
5965
  await new Promise((e6) => setTimeout(e6, r4)), n2 == null || (c2 = n2.signal) == null || c2.throwIfAborted();
5966
5966
  }
5967
5967
  } catch (e5) {
5968
- yield { type: "error", error: e5 instanceof Z ? e5 : new Z(X.InternalError, String(e5)) };
5968
+ yield { type: "error", error: e5 instanceof X ? e5 : new X(Y.InternalError, String(e5)) };
5969
5969
  }
5970
5970
  }
5971
5971
  request(e4, t2, n2) {
@@ -5993,11 +5993,11 @@ var _g = 6e4, vg = class {
5993
5993
  }
5994
5994
  if (o2 && (_2.params = { ..._2.params, task: o2 }), s2) {
5995
5995
  var te2;
5996
- _2.params = { ..._2.params, _meta: { ...((te2 = _2.params) == null ? void 0 : te2._meta) || {}, [Lp]: s2 } };
5996
+ _2.params = { ..._2.params, _meta: { ...((te2 = _2.params) == null ? void 0 : te2._meta) || {}, [Rp]: s2 } };
5997
5997
  }
5998
5998
  let v2 = (e5) => {
5999
5999
  var t3;
6000
- this._responseHandlers.delete(g2), this._progressHandlers.delete(g2), this._cleanupTimeout(g2), (t3 = this._transport) == null || t3.send({ jsonrpc: "2.0", method: "notifications/cancelled", params: { requestId: g2, reason: String(e5) } }, { relatedRequestId: r2, resumptionToken: i2, onresumptiontoken: a2 }).catch((e6) => this._onerror(Error("Failed to send cancellation: ".concat(e6)))), l2(e5 instanceof Z ? e5 : new Z(X.RequestTimeout, String(e5)));
6000
+ this._responseHandlers.delete(g2), this._progressHandlers.delete(g2), this._cleanupTimeout(g2), (t3 = this._transport) == null || t3.send({ jsonrpc: "2.0", method: "notifications/cancelled", params: { requestId: g2, reason: String(e5) } }, { relatedRequestId: r2, resumptionToken: i2, onresumptiontoken: a2 }).catch((e6) => this._onerror(Error("Failed to send cancellation: ".concat(e6)))), l2(e5 instanceof X ? e5 : new X(Y.RequestTimeout, String(e5)));
6001
6001
  };
6002
6002
  this._responseHandlers.set(g2, (e5) => {
6003
6003
  var r3;
@@ -6014,8 +6014,8 @@ var _g = 6e4, vg = class {
6014
6014
  var e5;
6015
6015
  v2(n2 == null || (e5 = n2.signal) == null ? void 0 : e5.reason);
6016
6016
  });
6017
- let y2 = (p2 = n2 == null ? void 0 : n2.timeout) == null ? _g : p2;
6018
- this._setupTimeout(g2, y2, n2 == null ? void 0 : n2.maxTotalTimeout, () => v2(Z.fromError(X.RequestTimeout, "Request timed out", { timeout: y2 })), (m2 = n2 == null ? void 0 : n2.resetTimeoutOnProgress) == null ? false : m2);
6017
+ let y2 = (p2 = n2 == null ? void 0 : n2.timeout) == null ? vg : p2;
6018
+ this._setupTimeout(g2, y2, n2 == null ? void 0 : n2.maxTotalTimeout, () => v2(X.fromError(Y.RequestTimeout, "Request timed out", { timeout: y2 })), (m2 = n2 == null ? void 0 : n2.resetTimeoutOnProgress) == null ? false : m2);
6019
6019
  let ne2 = s2 == null ? void 0 : s2.taskId;
6020
6020
  ne2 ? (this._requestResolvers.set(g2, (e5) => {
6021
6021
  let t3 = this._responseHandlers.get(g2);
@@ -6028,16 +6028,16 @@ var _g = 6e4, vg = class {
6028
6028
  });
6029
6029
  }
6030
6030
  async getTask(e4, t2) {
6031
- return this.request({ method: "tasks/get", params: e4 }, Mm, t2);
6031
+ return this.request({ method: "tasks/get", params: e4 }, Nm, t2);
6032
6032
  }
6033
6033
  async getTaskResult(e4, t2, n2) {
6034
6034
  return this.request({ method: "tasks/result", params: e4 }, t2, n2);
6035
6035
  }
6036
6036
  async listTasks(e4, t2) {
6037
- return this.request({ method: "tasks/list", params: e4 }, Fm, t2);
6037
+ return this.request({ method: "tasks/list", params: e4 }, Im, t2);
6038
6038
  }
6039
6039
  async cancelTask(e4, t2) {
6040
- return this.request({ method: "tasks/cancel", params: e4 }, Lm, t2);
6040
+ return this.request({ method: "tasks/cancel", params: e4 }, Rm, t2);
6041
6041
  }
6042
6042
  async notification(e4, t2) {
6043
6043
  var n2, r2, i2;
@@ -6046,7 +6046,7 @@ var _g = 6e4, vg = class {
6046
6046
  let a2 = t2 == null || (n2 = t2.relatedTask) == null ? void 0 : n2.taskId;
6047
6047
  if (a2) {
6048
6048
  var o2;
6049
- let n3 = { ...e4, jsonrpc: "2.0", params: { ...e4.params, _meta: { ...((o2 = e4.params) == null ? void 0 : o2._meta) || {}, [Lp]: t2.relatedTask } } };
6049
+ let n3 = { ...e4, jsonrpc: "2.0", params: { ...e4.params, _meta: { ...((o2 = e4.params) == null ? void 0 : o2._meta) || {}, [Rp]: t2.relatedTask } } };
6050
6050
  await this._enqueueTaskMessage(a2, { type: "notification", message: n3, timestamp: Date.now() });
6051
6051
  return;
6052
6052
  }
@@ -6058,7 +6058,7 @@ var _g = 6e4, vg = class {
6058
6058
  let r3 = { ...e4, jsonrpc: "2.0" };
6059
6059
  if (t2 != null && t2.relatedTask) {
6060
6060
  var i3;
6061
- r3 = { ...r3, params: { ...r3.params, _meta: { ...((i3 = r3.params) == null ? void 0 : i3._meta) || {}, [Lp]: t2.relatedTask } } };
6061
+ r3 = { ...r3, params: { ...r3.params, _meta: { ...((i3 = r3.params) == null ? void 0 : i3._meta) || {}, [Rp]: t2.relatedTask } } };
6062
6062
  }
6063
6063
  (n3 = this._transport) == null || n3.send(r3, t2).catch((e5) => this._onerror(e5));
6064
6064
  });
@@ -6067,14 +6067,14 @@ var _g = 6e4, vg = class {
6067
6067
  let s2 = { ...e4, jsonrpc: "2.0" };
6068
6068
  if (t2 != null && t2.relatedTask) {
6069
6069
  var c2;
6070
- s2 = { ...s2, params: { ...s2.params, _meta: { ...((c2 = s2.params) == null ? void 0 : c2._meta) || {}, [Lp]: t2.relatedTask } } };
6070
+ s2 = { ...s2, params: { ...s2.params, _meta: { ...((c2 = s2.params) == null ? void 0 : c2._meta) || {}, [Rp]: t2.relatedTask } } };
6071
6071
  }
6072
6072
  await this._transport.send(s2, t2);
6073
6073
  }
6074
6074
  setRequestHandler(e4, t2) {
6075
- let n2 = hg(e4);
6075
+ let n2 = gg(e4);
6076
6076
  this.assertRequestHandlerCapability(n2), this._requestHandlers.set(n2, (n3, r2) => {
6077
- let i2 = gg(e4, n3);
6077
+ let i2 = _g(e4, n3);
6078
6078
  return Promise.resolve(t2(i2, r2));
6079
6079
  });
6080
6080
  }
@@ -6085,9 +6085,9 @@ var _g = 6e4, vg = class {
6085
6085
  if (this._requestHandlers.has(e4)) throw Error("A request handler for ".concat(e4, " already exists, which would be overridden"));
6086
6086
  }
6087
6087
  setNotificationHandler(e4, t2) {
6088
- let n2 = hg(e4);
6088
+ let n2 = gg(e4);
6089
6089
  this._notificationHandlers.set(n2, (n3) => {
6090
- let r2 = gg(e4, n3);
6090
+ let r2 = _g(e4, n3);
6091
6091
  return Promise.resolve(t2(r2));
6092
6092
  });
6093
6093
  }
@@ -6107,9 +6107,9 @@ var _g = 6e4, vg = class {
6107
6107
  async _clearTaskQueue(e4, t2) {
6108
6108
  if (this._taskMessageQueue) {
6109
6109
  let n2 = await this._taskMessageQueue.dequeueAll(e4, t2);
6110
- for (let t3 of n2) if (t3.type === "request" && Xp(t3.message)) {
6110
+ for (let t3 of n2) if (t3.type === "request" && Zp(t3.message)) {
6111
6111
  let n3 = t3.message.id, r2 = this._requestResolvers.get(n3);
6112
- r2 ? (r2(new Z(X.InternalError, "Task cancelled or completed")), this._requestResolvers.delete(n3)) : this._onerror(Error("Resolver missing for request ".concat(n3, " during task ").concat(e4, " cleanup")));
6112
+ r2 ? (r2(new X(Y.InternalError, "Task cancelled or completed")), this._requestResolvers.delete(n3)) : this._onerror(Error("Resolver missing for request ".concat(n3, " during task ").concat(e4, " cleanup")));
6113
6113
  }
6114
6114
  }
6115
6115
  }
@@ -6124,12 +6124,12 @@ var _g = 6e4, vg = class {
6124
6124
  }
6125
6125
  return new Promise((e5, n3) => {
6126
6126
  if (t2.aborted) {
6127
- n3(new Z(X.InvalidRequest, "Request cancelled"));
6127
+ n3(new X(Y.InvalidRequest, "Request cancelled"));
6128
6128
  return;
6129
6129
  }
6130
6130
  let r3 = setTimeout(e5, i2);
6131
6131
  t2.addEventListener("abort", () => {
6132
- clearTimeout(r3), n3(new Z(X.InvalidRequest, "Request cancelled"));
6132
+ clearTimeout(r3), n3(new X(Y.InvalidRequest, "Request cancelled"));
6133
6133
  }, { once: true });
6134
6134
  });
6135
6135
  }
@@ -6141,44 +6141,44 @@ var _g = 6e4, vg = class {
6141
6141
  return await n2.createTask(r2, e4.id, { method: e4.method, params: e4.params }, t2);
6142
6142
  }, getTask: async (e5) => {
6143
6143
  let r2 = await n2.getTask(e5, t2);
6144
- if (!r2) throw new Z(X.InvalidParams, "Failed to retrieve task: Task not found");
6144
+ if (!r2) throw new X(Y.InvalidParams, "Failed to retrieve task: Task not found");
6145
6145
  return r2;
6146
6146
  }, storeTaskResult: async (e5, r2, i2) => {
6147
6147
  await n2.storeTaskResult(e5, r2, i2, t2);
6148
6148
  let a2 = await n2.getTask(e5, t2);
6149
6149
  if (a2) {
6150
- let t3 = Am.parse({ method: "notifications/tasks/status", params: a2 });
6151
- await this.notification(t3), mg(a2.status) && this._cleanupTaskProgressHandler(e5);
6150
+ let t3 = jm.parse({ method: "notifications/tasks/status", params: a2 });
6151
+ await this.notification(t3), hg(a2.status) && this._cleanupTaskProgressHandler(e5);
6152
6152
  }
6153
6153
  }, getTaskResult: (e5) => n2.getTaskResult(e5, t2), updateTaskStatus: async (e5, r2, i2) => {
6154
6154
  let a2 = await n2.getTask(e5, t2);
6155
- if (!a2) throw new Z(X.InvalidParams, 'Task "'.concat(e5, '" not found - it may have been cleaned up'));
6156
- if (mg(a2.status)) throw new Z(X.InvalidParams, 'Cannot update task "'.concat(e5, '" from terminal status "').concat(a2.status, '" to "').concat(r2, '". Terminal states (completed, failed, cancelled) cannot transition to other states.'));
6155
+ if (!a2) throw new X(Y.InvalidParams, 'Task "'.concat(e5, '" not found - it may have been cleaned up'));
6156
+ if (hg(a2.status)) throw new X(Y.InvalidParams, 'Cannot update task "'.concat(e5, '" from terminal status "').concat(a2.status, '" to "').concat(r2, '". Terminal states (completed, failed, cancelled) cannot transition to other states.'));
6157
6157
  await n2.updateTaskStatus(e5, r2, i2, t2);
6158
6158
  let o2 = await n2.getTask(e5, t2);
6159
6159
  if (o2) {
6160
- let t3 = Am.parse({ method: "notifications/tasks/status", params: o2 });
6161
- await this.notification(t3), mg(o2.status) && this._cleanupTaskProgressHandler(e5);
6160
+ let t3 = jm.parse({ method: "notifications/tasks/status", params: o2 });
6161
+ await this.notification(t3), hg(o2.status) && this._cleanupTaskProgressHandler(e5);
6162
6162
  }
6163
6163
  }, listTasks: (e5) => n2.listTasks(e5, t2) };
6164
6164
  }
6165
6165
  };
6166
- function yg(e4) {
6166
+ function bg(e4) {
6167
6167
  return typeof e4 == "object" && !!e4 && !Array.isArray(e4);
6168
6168
  }
6169
- function bg(e4, t2) {
6169
+ function xg(e4, t2) {
6170
6170
  let n2 = { ...e4 };
6171
6171
  for (let e5 in t2) {
6172
6172
  let r2 = e5, i2 = t2[r2];
6173
6173
  if (i2 === void 0) continue;
6174
6174
  let a2 = n2[r2];
6175
- yg(a2) && yg(i2) ? n2[r2] = { ...a2, ...i2 } : n2[r2] = i2;
6175
+ bg(a2) && bg(i2) ? n2[r2] = { ...a2, ...i2 } : n2[r2] = i2;
6176
6176
  }
6177
6177
  return n2;
6178
6178
  }
6179
- var xg = "modulepreload", Sg = function(e4) {
6179
+ var Sg = "modulepreload", Cg = function(e4) {
6180
6180
  return "/" + e4;
6181
- }, Cg = {}, wg = function(e4, t2, n2) {
6181
+ }, wg = {}, Tg = function(e4, t2, n2) {
6182
6182
  let r2 = Promise.resolve();
6183
6183
  if (t2 && t2.length > 0) {
6184
6184
  let o3 = function(e6) {
@@ -6187,8 +6187,8 @@ var xg = "modulepreload", Sg = function(e4) {
6187
6187
  var o2 = o3;
6188
6188
  let e5 = document.getElementsByTagName("link"), i3 = document.querySelector("meta[property=csp-nonce]"), a2 = (i3 == null ? void 0 : i3.nonce) || (i3 == null ? void 0 : i3.getAttribute("nonce"));
6189
6189
  r2 = o3(t2.map((t3) => {
6190
- if (t3 = Sg(t3, n2), t3 in Cg) return;
6191
- Cg[t3] = true;
6190
+ if (t3 = Cg(t3, n2), t3 in wg) return;
6191
+ wg[t3] = true;
6192
6192
  let r3 = t3.endsWith(".css"), i4 = r3 ? '[rel="stylesheet"]' : "";
6193
6193
  if (n2) for (let n3 = e5.length - 1; n3 >= 0; n3--) {
6194
6194
  let i5 = e5[n3];
@@ -6196,7 +6196,7 @@ var xg = "modulepreload", Sg = function(e4) {
6196
6196
  }
6197
6197
  else if (document.querySelector('link[href="'.concat(t3, '"]').concat(i4))) return;
6198
6198
  let o4 = document.createElement("link");
6199
- if (o4.rel = r3 ? "stylesheet" : xg, r3 || (o4.as = "script"), o4.crossOrigin = "", o4.href = t3, a2 && o4.setAttribute("nonce", a2), document.head.appendChild(o4), r3) return new Promise((e6, n3) => {
6199
+ if (o4.rel = r3 ? "stylesheet" : Sg, r3 || (o4.as = "script"), o4.crossOrigin = "", o4.href = t3, a2 && o4.setAttribute("nonce", a2), document.head.appendChild(o4), r3) return new Promise((e6, n3) => {
6200
6200
  o4.addEventListener("load", e6), o4.addEventListener("error", () => n3(Error("Unable to preload CSS for ".concat(t3))));
6201
6201
  });
6202
6202
  }));
@@ -6214,7 +6214,7 @@ var xg = "modulepreload", Sg = function(e4) {
6214
6214
  if (typeof n < "u") return n.apply(this, arguments);
6215
6215
  throw Error('Dynamic require of "' + e4 + '" is not supported');
6216
6216
  });
6217
- var Tg = class extends vg {
6217
+ var Eg = class extends yg {
6218
6218
  constructor(...e4) {
6219
6219
  super(...e4), o(this, "_registeredMethods", /* @__PURE__ */ new Set()), o(this, "_eventSlots", /* @__PURE__ */ new Map()), o(this, "setRequestHandler", (e5, t2) => {
6220
6220
  this._assertMethodNotRegistered(e5, "setRequestHandler"), super.setRequestHandler(e5, t2);
@@ -6270,7 +6270,7 @@ var Tg = class extends vg {
6270
6270
  if (this._registeredMethods.has(n2)) throw Error('Handler for "'.concat(n2, '" already registered (via ').concat(t2, "). Use addEventListener() to attach multiple listeners, or the on* setter for replace semantics."));
6271
6271
  this._registeredMethods.add(n2);
6272
6272
  }
6273
- }, Eg = "2026-01-26", Dg = class {
6273
+ }, Dg = "2026-01-26", Og = class {
6274
6274
  constructor(e4 = window.parent, t2) {
6275
6275
  o(this, "eventTarget", void 0), o(this, "eventSource", void 0), o(this, "messageListener", void 0), o(this, "onclose", void 0), o(this, "onerror", void 0), o(this, "onmessage", void 0), o(this, "sessionId", void 0), o(this, "setProtocolVersion", void 0), this.eventTarget = e4, this.eventSource = t2, this.messageListener = (e5) => {
6276
6276
  var n2, r2, i2;
@@ -6278,7 +6278,7 @@ var Tg = class extends vg {
6278
6278
  console.debug("Ignoring message from unknown source", e5);
6279
6279
  return;
6280
6280
  }
6281
- let a2 = rm.safeParse(e5.data);
6281
+ let a2 = im.safeParse(e5.data);
6282
6282
  a2.success ? (console.debug("Parsed message", a2.data), (n2 = this.onmessage) == null || n2.call(this, a2.data)) : ((r2 = e5.data) == null ? void 0 : r2.jsonrpc) === "2.0" ? (console.error("Failed to parse message", a2.error.message, e5), (i2 = this.onerror) == null || i2.call(this, Error("Invalid JSON-RPC message received: " + a2.error.message))) : console.debug("Ignoring non-JSON-RPC message", a2.error.message, e5);
6283
6283
  };
6284
6284
  }
@@ -6292,36 +6292,36 @@ var Tg = class extends vg {
6292
6292
  var e4;
6293
6293
  window.removeEventListener("message", this.messageListener), (e4 = this.onclose) == null || e4.call(this);
6294
6294
  }
6295
- }, Og = B([U("light"), U("dark")]).describe("Color theme preference for the host environment."), kg = B([U("inline"), U("fullscreen"), U("pip")]).describe("Display mode for UI presentation."), Ag = V(B([U("--color-background-primary"), U("--color-background-secondary"), U("--color-background-tertiary"), U("--color-background-inverse"), U("--color-background-ghost"), U("--color-background-info"), U("--color-background-danger"), U("--color-background-success"), U("--color-background-warning"), U("--color-background-disabled"), U("--color-text-primary"), U("--color-text-secondary"), U("--color-text-tertiary"), U("--color-text-inverse"), U("--color-text-ghost"), U("--color-text-info"), U("--color-text-danger"), U("--color-text-success"), U("--color-text-warning"), U("--color-text-disabled"), U("--color-border-primary"), U("--color-border-secondary"), U("--color-border-tertiary"), U("--color-border-inverse"), U("--color-border-ghost"), U("--color-border-info"), U("--color-border-danger"), U("--color-border-success"), U("--color-border-warning"), U("--color-border-disabled"), U("--color-ring-primary"), U("--color-ring-secondary"), U("--color-ring-inverse"), U("--color-ring-info"), U("--color-ring-danger"), U("--color-ring-success"), U("--color-ring-warning"), U("--font-sans"), U("--font-mono"), U("--font-weight-normal"), U("--font-weight-medium"), U("--font-weight-semibold"), U("--font-weight-bold"), U("--font-text-xs-size"), U("--font-text-sm-size"), U("--font-text-md-size"), U("--font-text-lg-size"), U("--font-heading-xs-size"), U("--font-heading-sm-size"), U("--font-heading-md-size"), U("--font-heading-lg-size"), U("--font-heading-xl-size"), U("--font-heading-2xl-size"), U("--font-heading-3xl-size"), U("--font-text-xs-line-height"), U("--font-text-sm-line-height"), U("--font-text-md-line-height"), U("--font-text-lg-line-height"), U("--font-heading-xs-line-height"), U("--font-heading-sm-line-height"), U("--font-heading-md-line-height"), U("--font-heading-lg-line-height"), U("--font-heading-xl-line-height"), U("--font-heading-2xl-line-height"), U("--font-heading-3xl-line-height"), U("--border-radius-xs"), U("--border-radius-sm"), U("--border-radius-md"), U("--border-radius-lg"), U("--border-radius-xl"), U("--border-radius-full"), U("--border-width-regular"), U("--shadow-hairline"), U("--shadow-sm"), U("--shadow-md"), U("--shadow-lg")]).describe("CSS variable keys available to MCP apps for theming.").describe("Style variables for theming MCP apps.\n\nIndividual style keys are optional - hosts may provide any subset of these values.\nValues are strings containing CSS values (colors, sizes, font stacks, etc.).\n\nNote: This type uses `Record<K, string | undefined>` rather than `Partial<Record<K, string>>`\nfor compatibility with Zod schema generation. Both are functionally equivalent for validation."), B([M(), Gd()]).describe("Style variables for theming MCP apps.\n\nIndividual style keys are optional - hosts may provide any subset of these values.\nValues are strings containing CSS values (colors, sizes, font stacks, etc.).\n\nNote: This type uses `Record<K, string | undefined>` rather than `Partial<Record<K, string>>`\nfor compatibility with Zod schema generation. Both are functionally equivalent for validation.")).describe("Style variables for theming MCP apps.\n\nIndividual style keys are optional - hosts may provide any subset of these values.\nValues are strings containing CSS values (colors, sizes, font stacks, etc.).\n\nNote: This type uses `Record<K, string | undefined>` rather than `Partial<Record<K, string>>`\nfor compatibility with Zod schema generation. Both are functionally equivalent for validation.");
6296
- R({ method: U("ui/open-link"), params: R({ url: M().describe("URL to open in the host's browser") }) });
6297
- var jg = R({ isError: F().optional().describe("True if the host failed to open the URL (e.g., due to security policy).") }).passthrough(), Mg = R({ isError: F().optional().describe("True if the download failed (e.g., user cancelled or host denied).") }).passthrough(), Ng = R({ isError: F().optional().describe("True if the host rejected or failed to deliver the message.") }).passthrough();
6298
- R({ method: U("ui/notifications/sandbox-proxy-ready"), params: R({}) });
6299
- var Pg = R({ connectDomains: L(M()).optional().describe("Origins for network requests (fetch/XHR/WebSocket).\n\n- Maps to CSP `connect-src` directive\n- Empty or omitted \u2192 no network connections (secure default)"), resourceDomains: L(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 \u2192 no network resources (secure default)"), frameDomains: L(M()).optional().describe("Origins for nested iframes.\n\n- Maps to CSP `frame-src` directive\n- Empty or omitted \u2192 no nested iframes allowed (`frame-src 'none'`)"), baseUriDomains: L(M()).optional().describe("Allowed base URIs for the document.\n\n- Maps to CSP `base-uri` directive\n- Empty or omitted \u2192 only same origin allowed (`base-uri 'self'`)") }), Fg = R({ camera: R({}).optional().describe("Request camera access.\n\nMaps to Permission Policy `camera` feature."), microphone: R({}).optional().describe("Request microphone access.\n\nMaps to Permission Policy `microphone` feature."), geolocation: R({}).optional().describe("Request geolocation access.\n\nMaps to Permission Policy `geolocation` feature."), clipboardWrite: R({}).optional().describe("Request clipboard write access.\n\nMaps to Permission Policy `clipboard-write` feature.") });
6300
- R({ method: U("ui/notifications/size-changed"), params: R({ width: P().optional().describe("New width in pixels."), height: P().optional().describe("New height in pixels.") }) });
6301
- var Ig = R({ method: U("ui/notifications/tool-input"), params: R({ arguments: V(M(), I().describe("Complete tool call arguments as key-value pairs.")).optional().describe("Complete tool call arguments as key-value pairs.") }) }), Lg = R({ method: U("ui/notifications/tool-input-partial"), params: R({ arguments: V(M(), I().describe("Partial tool call arguments (incomplete, may change).")).optional().describe("Partial tool call arguments (incomplete, may change).") }) }), Rg = R({ method: U("ui/notifications/tool-cancelled"), params: R({ reason: M().optional().describe('Optional reason for the cancellation (e.g., "user action", "timeout").') }) }), zg = R({ fonts: M().optional() }), Bg = R({ variables: Ag.optional().describe("CSS variables for theming the app."), css: zg.optional().describe("CSS blocks that apps can inject.") }), Vg = R({ method: U("ui/resource-teardown"), params: R({}) });
6302
- V(M(), I());
6303
- var Hg = R({ text: R({}).optional().describe("Host supports text content blocks."), image: R({}).optional().describe("Host supports image content blocks."), audio: R({}).optional().describe("Host supports audio content blocks."), resource: R({}).optional().describe("Host supports resource content blocks."), resourceLink: R({}).optional().describe("Host supports resource link content blocks."), structuredContent: R({}).optional().describe("Host supports structured content.") });
6304
- R({ method: U("ui/notifications/request-teardown"), params: R({}).optional() });
6305
- var Ug = R({ experimental: R({}).optional().describe("Experimental features (structure TBD)."), openLinks: R({}).optional().describe("Host supports opening external URLs."), downloadFile: R({}).optional().describe("Host supports file downloads via ui/download-file."), serverTools: R({ listChanged: F().optional().describe("Host supports tools/list_changed notifications.") }).optional().describe("Host can proxy tool calls to the MCP server."), serverResources: R({ listChanged: F().optional().describe("Host supports resources/list_changed notifications.") }).optional().describe("Host can proxy resource reads to the MCP server."), logging: R({}).optional().describe("Host accepts log messages."), sandbox: R({ permissions: Fg.optional().describe("Permissions granted by the host (camera, microphone, geolocation)."), csp: Pg.optional().describe("CSP domains approved by the host.") }).optional().describe("Sandbox configuration applied by the host."), updateModelContext: Hg.optional().describe("Host accepts context updates (ui/update-model-context) to be included in the model's context for future turns."), message: Hg.optional().describe("Host supports receiving content messages (ui/message) from the view."), sampling: R({ tools: R({}).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.") }), Wg = R({ experimental: R({}).optional().describe("Experimental features (structure TBD)."), tools: R({ listChanged: F().optional().describe("App supports tools/list_changed notifications.") }).optional().describe("App exposes MCP-style tools that the host can call."), availableDisplayModes: L(kg).optional().describe("Display modes the app supports.") });
6306
- R({ method: U("ui/notifications/initialized"), params: R({}).optional() }), R({ csp: Pg.optional().describe("Content Security Policy configuration for UI resources."), permissions: Fg.optional().describe("Sandbox permissions requested by the UI resource."), domain: M().optional().describe("Dedicated origin for view sandbox.\n\nUseful when views need stable, dedicated origins for OAuth callbacks, CORS policies, or API key allowlists.\n\n**Host-dependent:** The format and validation rules for this field are determined by each host. Servers MUST consult host-specific documentation for the expected domain format. Common patterns include:\n- Hash-based subdomains (e.g., `{hash}.claudemcpcontent.com`)\n- URL-derived subdomains (e.g., `www-example-com.oaiusercontent.com`)\n\nIf omitted, host uses default sandbox origin (typically per-conversation)."), prefersBorder: F().optional().describe("Visual boundary preference - true if view prefers a visible border.\n\nBoolean requesting whether a visible border and background is provided by the host. Specifying an explicit value for this is recommended because hosts' defaults may vary.\n\n- `true`: request visible border + background\n- `false`: request no visible border + background\n- omitted: host decides border") }), R({ method: U("ui/request-display-mode"), params: R({ mode: kg.describe("The display mode being requested.") }) });
6307
- var Gg = R({ mode: kg.describe("The display mode that was actually set. May differ from requested if not supported.") }).passthrough(), Kg = B([U("model"), U("app")]).describe("Tool visibility scope - who can access the tool.");
6308
- R({ resourceUri: M().optional(), visibility: L(Kg).optional().describe('Who can access this tool. Default: ["model", "app"]\n- "model": Tool visible to and callable by the agent\n- "app": Tool callable by the app from this server only'), csp: Qd().optional(), permissions: Qd().optional() }), R({ mimeTypes: L(M()).optional().describe('Array of supported MIME types for UI resources.\nMust include `"text/html;profile=mcp-app"` for MCP Apps support.') }), R({ method: U("ui/download-file"), params: R({ contents: L(B([_h, vh])).describe("Resource contents to download \u2014 embedded (inline data) or linked (host fetches). Uses standard MCP resource types.") }) }), R({ method: U("ui/message"), params: R({ role: U("user").describe('Message role, currently only "user" is supported.'), content: L(yh).describe("Message content blocks (text, image, etc.).") }) }), R({ method: U("ui/notifications/sandbox-resource-ready"), params: R({ 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: Pg.optional().describe("CSP configuration from resource metadata."), permissions: Fg.optional().describe("Sandbox permissions from resource metadata.") }) });
6309
- var qg = R({ method: U("ui/notifications/tool-result"), params: Oh.describe("Standard MCP tool execution result.") }), Jg = R({ toolInfo: R({ id: Jp.optional().describe("JSON-RPC id of the tools/call request."), tool: Th.describe("Tool definition including name, inputSchema, etc.") }).optional().describe("Metadata of the tool call that instantiated this App."), theme: Og.optional().describe("Current color theme preference."), styles: Bg.optional().describe("Style configuration for theming the app."), displayMode: kg.optional().describe("How the UI is currently displayed."), availableDisplayModes: L(kg).optional().describe("Display modes the host supports."), containerDimensions: B([R({ height: P().describe("Fixed container height in pixels.") }), R({ maxHeight: B([P(), Gd()]).optional().describe("Maximum container height in pixels.") })]).and(B([R({ width: P().describe("Fixed container width in pixels.") }), R({ maxWidth: B([P(), Gd()]).optional().describe("Maximum container width in pixels.") })])).optional().describe("Container dimensions. Represents the dimensions of the iframe or other\ncontainer 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: B([U("web"), U("desktop"), U("mobile")]).optional().describe("Platform type for responsive design decisions."), deviceCapabilities: R({ touch: F().optional().describe("Whether the device supports touch input."), hover: F().optional().describe("Whether the device supports hover interactions.") }).optional().describe("Device input capabilities."), safeAreaInsets: R({ top: P().describe("Top safe area inset in pixels."), right: P().describe("Right safe area inset in pixels."), bottom: P().describe("Bottom safe area inset in pixels."), left: P().describe("Left safe area inset in pixels.") }).optional().describe("Mobile safe area boundaries in pixels.") }).passthrough(), Yg = R({ method: U("ui/notifications/host-context-changed"), params: Jg.describe("Partial context update containing only changed fields.") });
6310
- R({ method: U("ui/update-model-context"), params: R({ content: L(yh).optional().describe("Context content blocks (text, image, etc.)."), structuredContent: V(M(), I().describe("Structured content for machine-readable context data.")).optional().describe("Structured content for machine-readable context data.") }) }), R({ method: U("ui/initialize"), params: R({ appInfo: lm.describe("App identification (name and version)."), appCapabilities: Wg.describe("Features and capabilities this app provides."), protocolVersion: M().describe("Protocol version this app supports.") }) });
6311
- var Xg = R({ protocolVersion: M().describe('Negotiated protocol version string (e.g., "2025-11-21").'), hostInfo: lm.describe("Host application identification and version."), hostCapabilities: Ug.describe("Features and capabilities provided by the host."), hostContext: Jg.describe("Rich context about the host environment.") }).passthrough(), Zg = { target: "draft-2020-12" };
6312
- async function Qg(e4, t2) {
6295
+ }, kg = z([H("light"), H("dark")]).describe("Color theme preference for the host environment."), Ag = z([H("inline"), H("fullscreen"), H("pip")]).describe("Display mode for UI presentation."), jg = B(z([H("--color-background-primary"), H("--color-background-secondary"), H("--color-background-tertiary"), H("--color-background-inverse"), H("--color-background-ghost"), H("--color-background-info"), H("--color-background-danger"), H("--color-background-success"), H("--color-background-warning"), H("--color-background-disabled"), H("--color-text-primary"), H("--color-text-secondary"), H("--color-text-tertiary"), H("--color-text-inverse"), H("--color-text-ghost"), H("--color-text-info"), H("--color-text-danger"), H("--color-text-success"), H("--color-text-warning"), H("--color-text-disabled"), H("--color-border-primary"), H("--color-border-secondary"), H("--color-border-tertiary"), H("--color-border-inverse"), H("--color-border-ghost"), H("--color-border-info"), H("--color-border-danger"), H("--color-border-success"), H("--color-border-warning"), H("--color-border-disabled"), H("--color-ring-primary"), H("--color-ring-secondary"), H("--color-ring-inverse"), H("--color-ring-info"), H("--color-ring-danger"), H("--color-ring-success"), H("--color-ring-warning"), H("--font-sans"), H("--font-mono"), H("--font-weight-normal"), H("--font-weight-medium"), H("--font-weight-semibold"), H("--font-weight-bold"), H("--font-text-xs-size"), H("--font-text-sm-size"), H("--font-text-md-size"), H("--font-text-lg-size"), H("--font-heading-xs-size"), H("--font-heading-sm-size"), H("--font-heading-md-size"), H("--font-heading-lg-size"), H("--font-heading-xl-size"), H("--font-heading-2xl-size"), H("--font-heading-3xl-size"), H("--font-text-xs-line-height"), H("--font-text-sm-line-height"), H("--font-text-md-line-height"), H("--font-text-lg-line-height"), H("--font-heading-xs-line-height"), H("--font-heading-sm-line-height"), H("--font-heading-md-line-height"), H("--font-heading-lg-line-height"), H("--font-heading-xl-line-height"), H("--font-heading-2xl-line-height"), H("--font-heading-3xl-line-height"), H("--border-radius-xs"), H("--border-radius-sm"), H("--border-radius-md"), H("--border-radius-lg"), H("--border-radius-xl"), H("--border-radius-full"), H("--border-width-regular"), H("--shadow-hairline"), H("--shadow-sm"), H("--shadow-md"), H("--shadow-lg")]).describe("CSS variable keys available to MCP apps for theming.").describe("Style variables for theming MCP apps.\n\nIndividual style keys are optional - hosts may provide any subset of these values.\nValues are strings containing CSS values (colors, sizes, font stacks, etc.).\n\nNote: This type uses `Record<K, string | undefined>` rather than `Partial<Record<K, string>>`\nfor compatibility with Zod schema generation. Both are functionally equivalent for validation."), z([j(), Kd()]).describe("Style variables for theming MCP apps.\n\nIndividual style keys are optional - hosts may provide any subset of these values.\nValues are strings containing CSS values (colors, sizes, font stacks, etc.).\n\nNote: This type uses `Record<K, string | undefined>` rather than `Partial<Record<K, string>>`\nfor compatibility with Zod schema generation. Both are functionally equivalent for validation.")).describe("Style variables for theming MCP apps.\n\nIndividual style keys are optional - hosts may provide any subset of these values.\nValues are strings containing CSS values (colors, sizes, font stacks, etc.).\n\nNote: This type uses `Record<K, string | undefined>` rather than `Partial<Record<K, string>>`\nfor compatibility with Zod schema generation. Both are functionally equivalent for validation.");
6296
+ L({ method: H("ui/open-link"), params: L({ url: j().describe("URL to open in the host's browser") }) });
6297
+ var Mg = L({ isError: P().optional().describe("True if the host failed to open the URL (e.g., due to security policy).") }).passthrough(), Ng = L({ isError: P().optional().describe("True if the download failed (e.g., user cancelled or host denied).") }).passthrough(), Pg = L({ isError: P().optional().describe("True if the host rejected or failed to deliver the message.") }).passthrough();
6298
+ L({ method: H("ui/notifications/sandbox-proxy-ready"), params: L({}) });
6299
+ var Fg = L({ connectDomains: I(j()).optional().describe("Origins for network requests (fetch/XHR/WebSocket).\n\n- Maps to CSP `connect-src` directive\n- Empty or omitted \u2192 no network connections (secure default)"), resourceDomains: I(j()).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 \u2192 no network resources (secure default)"), frameDomains: I(j()).optional().describe("Origins for nested iframes.\n\n- Maps to CSP `frame-src` directive\n- Empty or omitted \u2192 no nested iframes allowed (`frame-src 'none'`)"), baseUriDomains: I(j()).optional().describe("Allowed base URIs for the document.\n\n- Maps to CSP `base-uri` directive\n- Empty or omitted \u2192 only same origin allowed (`base-uri 'self'`)") }), Ig = L({ camera: L({}).optional().describe("Request camera access.\n\nMaps to Permission Policy `camera` feature."), microphone: L({}).optional().describe("Request microphone access.\n\nMaps to Permission Policy `microphone` feature."), geolocation: L({}).optional().describe("Request geolocation access.\n\nMaps to Permission Policy `geolocation` feature."), clipboardWrite: L({}).optional().describe("Request clipboard write access.\n\nMaps to Permission Policy `clipboard-write` feature.") });
6300
+ L({ method: H("ui/notifications/size-changed"), params: L({ width: N().optional().describe("New width in pixels."), height: N().optional().describe("New height in pixels.") }) });
6301
+ var Lg = L({ method: H("ui/notifications/tool-input"), params: L({ arguments: B(j(), F().describe("Complete tool call arguments as key-value pairs.")).optional().describe("Complete tool call arguments as key-value pairs.") }) }), Rg = L({ method: H("ui/notifications/tool-input-partial"), params: L({ arguments: B(j(), F().describe("Partial tool call arguments (incomplete, may change).")).optional().describe("Partial tool call arguments (incomplete, may change).") }) }), zg = L({ method: H("ui/notifications/tool-cancelled"), params: L({ reason: j().optional().describe('Optional reason for the cancellation (e.g., "user action", "timeout").') }) }), Bg = L({ fonts: j().optional() }), Vg = L({ variables: jg.optional().describe("CSS variables for theming the app."), css: Bg.optional().describe("CSS blocks that apps can inject.") }), Hg = L({ method: H("ui/resource-teardown"), params: L({}) });
6302
+ B(j(), F());
6303
+ var Ug = L({ text: L({}).optional().describe("Host supports text content blocks."), image: L({}).optional().describe("Host supports image content blocks."), audio: L({}).optional().describe("Host supports audio content blocks."), resource: L({}).optional().describe("Host supports resource content blocks."), resourceLink: L({}).optional().describe("Host supports resource link content blocks."), structuredContent: L({}).optional().describe("Host supports structured content.") });
6304
+ L({ method: H("ui/notifications/request-teardown"), params: L({}).optional() });
6305
+ var Wg = L({ experimental: L({}).optional().describe("Experimental features (structure TBD)."), openLinks: L({}).optional().describe("Host supports opening external URLs."), downloadFile: L({}).optional().describe("Host supports file downloads via ui/download-file."), serverTools: L({ listChanged: P().optional().describe("Host supports tools/list_changed notifications.") }).optional().describe("Host can proxy tool calls to the MCP server."), serverResources: L({ listChanged: P().optional().describe("Host supports resources/list_changed notifications.") }).optional().describe("Host can proxy resource reads to the MCP server."), logging: L({}).optional().describe("Host accepts log messages."), sandbox: L({ permissions: Ig.optional().describe("Permissions granted by the host (camera, microphone, geolocation)."), csp: Fg.optional().describe("CSP domains approved by the host.") }).optional().describe("Sandbox configuration applied by the host."), updateModelContext: Ug.optional().describe("Host accepts context updates (ui/update-model-context) to be included in the model's context for future turns."), message: Ug.optional().describe("Host supports receiving content messages (ui/message) from the view."), sampling: L({ tools: L({}).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.") }), Gg = L({ experimental: L({}).optional().describe("Experimental features (structure TBD)."), tools: L({ listChanged: P().optional().describe("App supports tools/list_changed notifications.") }).optional().describe("App exposes MCP-style tools that the host can call."), availableDisplayModes: I(Ag).optional().describe("Display modes the app supports.") });
6306
+ L({ method: H("ui/notifications/initialized"), params: L({}).optional() }), L({ csp: Fg.optional().describe("Content Security Policy configuration for UI resources."), permissions: Ig.optional().describe("Sandbox permissions requested by the UI resource."), domain: j().optional().describe("Dedicated origin for view sandbox.\n\nUseful when views need stable, dedicated origins for OAuth callbacks, CORS policies, or API key allowlists.\n\n**Host-dependent:** The format and validation rules for this field are determined by each host. Servers MUST consult host-specific documentation for the expected domain format. Common patterns include:\n- Hash-based subdomains (e.g., `{hash}.claudemcpcontent.com`)\n- URL-derived subdomains (e.g., `www-example-com.oaiusercontent.com`)\n\nIf omitted, host uses default sandbox origin (typically per-conversation)."), prefersBorder: P().optional().describe("Visual boundary preference - true if view prefers a visible border.\n\nBoolean requesting whether a visible border and background is provided by the host. Specifying an explicit value for this is recommended because hosts' defaults may vary.\n\n- `true`: request visible border + background\n- `false`: request no visible border + background\n- omitted: host decides border") }), L({ method: H("ui/request-display-mode"), params: L({ mode: Ag.describe("The display mode being requested.") }) });
6307
+ var Kg = L({ mode: Ag.describe("The display mode that was actually set. May differ from requested if not supported.") }).passthrough(), qg = z([H("model"), H("app")]).describe("Tool visibility scope - who can access the tool.");
6308
+ L({ resourceUri: j().optional(), visibility: I(qg).optional().describe('Who can access this tool. Default: ["model", "app"]\n- "model": Tool visible to and callable by the agent\n- "app": Tool callable by the app from this server only'), csp: $d().optional(), permissions: $d().optional() }), L({ mimeTypes: I(j()).optional().describe('Array of supported MIME types for UI resources.\nMust include `"text/html;profile=mcp-app"` for MCP Apps support.') }), L({ method: H("ui/download-file"), params: L({ contents: I(z([vh, yh])).describe("Resource contents to download \u2014 embedded (inline data) or linked (host fetches). Uses standard MCP resource types.") }) }), L({ method: H("ui/message"), params: L({ role: H("user").describe('Message role, currently only "user" is supported.'), content: I(bh).describe("Message content blocks (text, image, etc.).") }) }), L({ method: H("ui/notifications/sandbox-resource-ready"), params: L({ html: j().describe("HTML content to load into the inner iframe."), sandbox: j().optional().describe("Optional override for the inner iframe's sandbox attribute."), csp: Fg.optional().describe("CSP configuration from resource metadata."), permissions: Ig.optional().describe("Sandbox permissions from resource metadata.") }) });
6309
+ var Jg = L({ method: H("ui/notifications/tool-result"), params: kh.describe("Standard MCP tool execution result.") }), Yg = L({ toolInfo: L({ id: Yp.optional().describe("JSON-RPC id of the tools/call request."), tool: Eh.describe("Tool definition including name, inputSchema, etc.") }).optional().describe("Metadata of the tool call that instantiated this App."), theme: kg.optional().describe("Current color theme preference."), styles: Vg.optional().describe("Style configuration for theming the app."), displayMode: Ag.optional().describe("How the UI is currently displayed."), availableDisplayModes: I(Ag).optional().describe("Display modes the host supports."), containerDimensions: z([L({ height: N().describe("Fixed container height in pixels.") }), L({ maxHeight: z([N(), Kd()]).optional().describe("Maximum container height in pixels.") })]).and(z([L({ width: N().describe("Fixed container width in pixels.") }), L({ maxWidth: z([N(), Kd()]).optional().describe("Maximum container width in pixels.") })])).optional().describe("Container dimensions. Represents the dimensions of the iframe or other\ncontainer holding the app. Specify either width or maxWidth, and either height or maxHeight."), locale: j().optional().describe("User's language and region preference in BCP 47 format."), timeZone: j().optional().describe("User's timezone in IANA format."), userAgent: j().optional().describe("Host application identifier."), platform: z([H("web"), H("desktop"), H("mobile")]).optional().describe("Platform type for responsive design decisions."), deviceCapabilities: L({ touch: P().optional().describe("Whether the device supports touch input."), hover: P().optional().describe("Whether the device supports hover interactions.") }).optional().describe("Device input capabilities."), safeAreaInsets: L({ top: N().describe("Top safe area inset in pixels."), right: N().describe("Right safe area inset in pixels."), bottom: N().describe("Bottom safe area inset in pixels."), left: N().describe("Left safe area inset in pixels.") }).optional().describe("Mobile safe area boundaries in pixels.") }).passthrough(), Xg = L({ method: H("ui/notifications/host-context-changed"), params: Yg.describe("Partial context update containing only changed fields.") });
6310
+ L({ method: H("ui/update-model-context"), params: L({ content: I(bh).optional().describe("Context content blocks (text, image, etc.)."), structuredContent: B(j(), F().describe("Structured content for machine-readable context data.")).optional().describe("Structured content for machine-readable context data.") }) }), L({ method: H("ui/initialize"), params: L({ appInfo: um.describe("App identification (name and version)."), appCapabilities: Gg.describe("Features and capabilities this app provides."), protocolVersion: j().describe("Protocol version this app supports.") }) });
6311
+ var Zg = L({ protocolVersion: j().describe('Negotiated protocol version string (e.g., "2025-11-21").'), hostInfo: um.describe("Host application identification and version."), hostCapabilities: Wg.describe("Features and capabilities provided by the host."), hostContext: Yg.describe("Rich context about the host environment.") }).passthrough(), Qg = { target: "draft-2020-12" };
6312
+ async function $g(e4, t2) {
6313
6313
  let n2 = e4["~standard"];
6314
- if (n2.jsonSchema) return n2.jsonSchema[t2](Zg);
6314
+ if (n2.jsonSchema) return n2.jsonSchema[t2](Qg);
6315
6315
  if (n2.vendor === "zod") {
6316
- let { z: n3 } = await wg(async () => {
6317
- let { z: e5 } = await Promise.resolve().then(() => Ip);
6316
+ let { z: n3 } = await Tg(async () => {
6317
+ let { z: e5 } = await Promise.resolve().then(() => Lp);
6318
6318
  return { z: e5 };
6319
6319
  }, __VITE_PRELOAD__);
6320
6320
  return n3.toJSONSchema(e4, { io: t2 });
6321
6321
  }
6322
6322
  throw Error("Schema (vendor: ".concat(n2.vendor, ") does not implement Standard JSON Schema (~standard.jsonSchema). Use a library that does (zod v4, ArkType, Valibot) or wrap your schema accordingly."));
6323
6323
  }
6324
- async function $g(e4, t2, n2 = "") {
6324
+ async function e_(e4, t2, n2 = "") {
6325
6325
  let r2 = await e4["~standard"].validate(t2);
6326
6326
  if (r2.issues) {
6327
6327
  let e5 = r2.issues.map((e6) => {
@@ -6333,7 +6333,7 @@ async function $g(e4, t2, n2 = "") {
6333
6333
  }
6334
6334
  return r2.value;
6335
6335
  }
6336
- var e_ = class e3 extends Tg {
6336
+ var t_ = class e3 extends Eg {
6337
6337
  _assertInitialized(e4) {
6338
6338
  var t2;
6339
6339
  if (this._initializedSent) return;
@@ -6358,11 +6358,11 @@ var e_ = class e3 extends Tg {
6358
6358
  e4 === "hostcontextchanged" && (this._hostContext = { ...this._hostContext, ...t2 });
6359
6359
  }
6360
6360
  constructor(e4, t2 = {}, n2 = { autoResize: true }) {
6361
- super(n2), o(this, "_appInfo", void 0), o(this, "_capabilities", void 0), o(this, "options", void 0), o(this, "_hostCapabilities", void 0), o(this, "_hostInfo", void 0), o(this, "_hostContext", void 0), o(this, "_registeredTools", {}), o(this, "_initializedSent", false), o(this, "eventSchemas", { toolinput: Ig, toolinputpartial: Lg, toolresult: qg, toolcancelled: Rg, hostcontextchanged: Yg }), o(this, "_everHadListener", /* @__PURE__ */ new Set()), o(this, "_toolHandlersInitialized", false), o(this, "_onteardown", void 0), o(this, "_oncalltool", void 0), o(this, "_onlisttools", void 0), o(this, "sendOpenLink", this.openLink), this._appInfo = e4, this._capabilities = t2, this.options = n2, n2.allowUnsafeEval || p({ jitless: true }), this.setRequestHandler(ym, (e5) => (console.log("Received ping:", e5.params), {})), this.setEventHandler("hostcontextchanged", void 0);
6361
+ super(n2), o(this, "_appInfo", void 0), o(this, "_capabilities", void 0), o(this, "options", void 0), o(this, "_hostCapabilities", void 0), o(this, "_hostInfo", void 0), o(this, "_hostContext", void 0), o(this, "_registeredTools", {}), o(this, "_initializedSent", false), o(this, "eventSchemas", { toolinput: Lg, toolinputpartial: Rg, toolresult: Jg, toolcancelled: zg, hostcontextchanged: Xg }), o(this, "_everHadListener", /* @__PURE__ */ new Set()), o(this, "_toolHandlersInitialized", false), o(this, "_onteardown", void 0), o(this, "_oncalltool", void 0), o(this, "_onlisttools", void 0), o(this, "sendOpenLink", this.openLink), this._appInfo = e4, this._capabilities = t2, this.options = n2, n2.allowUnsafeEval || p({ jitless: true }), this.setRequestHandler(bm, (e5) => (console.log("Received ping:", e5.params), {})), this.setEventHandler("hostcontextchanged", void 0);
6362
6362
  }
6363
6363
  registerCapabilities(e4) {
6364
6364
  if (this.transport) throw Error("Cannot register capabilities after transport is established");
6365
- this._capabilities = bg(this._capabilities, e4);
6365
+ this._capabilities = xg(this._capabilities, e4);
6366
6366
  }
6367
6367
  registerTool(e4, t2, n2) {
6368
6368
  if (this._registeredTools[e4]) throw Error("Tool ".concat(e4, " is already registered"));
@@ -6382,9 +6382,9 @@ var e_ = class e3 extends Tg {
6382
6382
  let i3;
6383
6383
  if (a2) {
6384
6384
  let a3 = o2.inputSchema;
6385
- i3 = await n2(a3 ? await $g(a3, t3 == null ? {} : t3, "Invalid input for tool ".concat(e4, ": ")) : t3 == null ? {} : t3, r3);
6385
+ i3 = await n2(a3 ? await e_(a3, t3 == null ? {} : t3, "Invalid input for tool ".concat(e4, ": ")) : t3 == null ? {} : t3, r3);
6386
6386
  } else i3 = await n2(r3);
6387
- return o2.outputSchema && !i3.isError && (i3.structuredContent = await $g(o2.outputSchema, i3.structuredContent, "Invalid output for tool ".concat(e4, ": "))), i3;
6387
+ return o2.outputSchema && !i3.isError && (i3.structuredContent = await e_(o2.outputSchema, i3.structuredContent, "Invalid output for tool ".concat(e4, ": "))), i3;
6388
6388
  } };
6389
6389
  return this._registeredTools[e4] = o2, !this._capabilities.tools && !this.transport && this.registerCapabilities({ tools: { listChanged: true } }), this.ensureToolHandlersInitialized(), i2(), o2;
6390
6390
  }
@@ -6394,8 +6394,8 @@ var e_ = class e3 extends Tg {
6394
6394
  if (!n2) throw Error("Tool ".concat(e4.name, " not found"));
6395
6395
  return n2.handler(e4.arguments, t2);
6396
6396
  }, this.onlisttools = async (e4, t2) => ({ tools: await Promise.all(Object.entries(this._registeredTools).filter(([e5, t3]) => t3.enabled).map(async ([e5, t3]) => {
6397
- let n2 = { name: e5, title: t3.title, description: t3.description, inputSchema: t3.inputSchema ? await Qg(t3.inputSchema, "input") : { type: "object", properties: {} } };
6398
- return t3.outputSchema && (n2.outputSchema = await Qg(t3.outputSchema, "output")), t3.annotations && (n2.annotations = t3.annotations), t3._meta && (n2._meta = t3._meta), n2;
6397
+ let n2 = { name: e5, title: t3.title, description: t3.description, inputSchema: t3.inputSchema ? await $g(t3.inputSchema, "input") : { type: "object", properties: {} } };
6398
+ return t3.outputSchema && (n2.outputSchema = await $g(t3.outputSchema, "output")), t3.annotations && (n2.annotations = t3.annotations), t3._meta && (n2._meta = t3._meta), n2;
6399
6399
  })) }));
6400
6400
  }
6401
6401
  async sendToolListChanged(e4 = {}) {
@@ -6444,7 +6444,7 @@ var e_ = class e3 extends Tg {
6444
6444
  return this._onteardown;
6445
6445
  }
6446
6446
  set onteardown(e4) {
6447
- this.warnIfRequestHandlerReplaced("onteardown", this._onteardown, e4), this._onteardown = e4, this.replaceRequestHandler(Vg, (e5, t2) => {
6447
+ this.warnIfRequestHandlerReplaced("onteardown", this._onteardown, e4), this._onteardown = e4, this.replaceRequestHandler(Hg, (e5, t2) => {
6448
6448
  if (!this._onteardown) throw Error("No onteardown handler set");
6449
6449
  return this._onteardown(e5.params, t2);
6450
6450
  });
@@ -6453,7 +6453,7 @@ var e_ = class e3 extends Tg {
6453
6453
  return this._oncalltool;
6454
6454
  }
6455
6455
  set oncalltool(e4) {
6456
- this.warnIfRequestHandlerReplaced("oncalltool", this._oncalltool, e4), this._oncalltool = e4, this.replaceRequestHandler(Ah, (e5, t2) => {
6456
+ this.warnIfRequestHandlerReplaced("oncalltool", this._oncalltool, e4), this._oncalltool = e4, this.replaceRequestHandler(jh, (e5, t2) => {
6457
6457
  if (!this._oncalltool) throw Error("No oncalltool handler set");
6458
6458
  return this._oncalltool(e5.params, t2);
6459
6459
  });
@@ -6462,7 +6462,7 @@ var e_ = class e3 extends Tg {
6462
6462
  return this._onlisttools;
6463
6463
  }
6464
6464
  set onlisttools(e4) {
6465
- this.warnIfRequestHandlerReplaced("onlisttools", this._onlisttools, e4), this._onlisttools = e4, this.replaceRequestHandler(Eh, (e5, t2) => {
6465
+ this.warnIfRequestHandlerReplaced("onlisttools", this._onlisttools, e4), this._onlisttools = e4, this.replaceRequestHandler(Dh, (e5, t2) => {
6466
6466
  if (!this._onlisttools) throw Error("No onlisttools handler set");
6467
6467
  return this._onlisttools(e5.params, t2);
6468
6468
  });
@@ -6498,40 +6498,40 @@ var e_ = class e3 extends Tg {
6498
6498
  }
6499
6499
  async callServerTool(e4, t2) {
6500
6500
  if (this._assertInitialized("callServerTool"), typeof e4 == "string") throw Error('callServerTool() expects an object as its first argument, but received a string ("'.concat(e4, '"). Did you mean: callServerTool({ name: "').concat(e4, '", arguments: { ... } })?'));
6501
- return await this.request({ method: "tools/call", params: e4 }, Oh, { onprogress: () => {
6501
+ return await this.request({ method: "tools/call", params: e4 }, kh, { onprogress: () => {
6502
6502
  }, resetTimeoutOnProgress: true, ...t2 });
6503
6503
  }
6504
6504
  async readServerResource(e4, t2) {
6505
- return this._assertInitialized("readServerResource"), await this.request({ method: "resources/read", params: e4 }, $m, t2);
6505
+ return this._assertInitialized("readServerResource"), await this.request({ method: "resources/read", params: e4 }, eh, t2);
6506
6506
  }
6507
6507
  async listServerResources(e4, t2) {
6508
- return this._assertInitialized("listServerResources"), await this.request({ method: "resources/list", params: e4 }, qm, t2);
6508
+ return this._assertInitialized("listServerResources"), await this.request({ method: "resources/list", params: e4 }, Jm, t2);
6509
6509
  }
6510
6510
  async createSamplingMessage(e4, t2) {
6511
6511
  this._assertInitialized("createSamplingMessage");
6512
- let n2 = e4.tools ? Kh : Gh;
6512
+ let n2 = e4.tools ? qh : Kh;
6513
6513
  return await this.request({ method: "sampling/createMessage", params: e4 }, n2, t2);
6514
6514
  }
6515
6515
  sendMessage(e4, t2) {
6516
- return this._assertInitialized("sendMessage"), this.request({ method: "ui/message", params: e4 }, Ng, t2);
6516
+ return this._assertInitialized("sendMessage"), this.request({ method: "ui/message", params: e4 }, Pg, t2);
6517
6517
  }
6518
6518
  sendLog(e4) {
6519
6519
  return this.notification({ method: "notifications/message", params: e4 });
6520
6520
  }
6521
6521
  updateModelContext(e4, t2) {
6522
- return this._assertInitialized("updateModelContext"), this.request({ method: "ui/update-model-context", params: e4 }, im, t2);
6522
+ return this._assertInitialized("updateModelContext"), this.request({ method: "ui/update-model-context", params: e4 }, am, t2);
6523
6523
  }
6524
6524
  openLink(e4, t2) {
6525
- return this._assertInitialized("openLink"), this.request({ method: "ui/open-link", params: e4 }, jg, t2);
6525
+ return this._assertInitialized("openLink"), this.request({ method: "ui/open-link", params: e4 }, Mg, t2);
6526
6526
  }
6527
6527
  downloadFile(e4, t2) {
6528
- return this._assertInitialized("downloadFile"), this.request({ method: "ui/download-file", params: e4 }, Mg, t2);
6528
+ return this._assertInitialized("downloadFile"), this.request({ method: "ui/download-file", params: e4 }, Ng, t2);
6529
6529
  }
6530
6530
  requestTeardown(e4 = {}) {
6531
6531
  return this.notification({ method: "ui/notifications/request-teardown", params: e4 });
6532
6532
  }
6533
6533
  requestDisplayMode(e4, t2) {
6534
- return this._assertInitialized("requestDisplayMode"), this.request({ method: "ui/request-display-mode", params: e4 }, Gg, t2);
6534
+ return this._assertInitialized("requestDisplayMode"), this.request({ method: "ui/request-display-mode", params: e4 }, Kg, t2);
6535
6535
  }
6536
6536
  sendSizeChanged(e4) {
6537
6537
  return this.notification({ method: "ui/notifications/size-changed", params: e4 });
@@ -6552,12 +6552,12 @@ var e_ = class e3 extends Tg {
6552
6552
  let i2 = new ResizeObserver(r2);
6553
6553
  return i2.observe(document.documentElement), i2.observe(document.body), () => i2.disconnect();
6554
6554
  }
6555
- async connect(e4 = new Dg(window.parent, window.parent), t2) {
6555
+ async connect(e4 = new Og(window.parent, window.parent), t2) {
6556
6556
  if (this.transport) throw Error("App is already connected. Call close() before connecting again.");
6557
6557
  this._initializedSent = false, await super.connect(e4);
6558
6558
  try {
6559
6559
  var n2;
6560
- let e5 = await this.request({ method: "ui/initialize", params: { appCapabilities: this._capabilities, appInfo: this._appInfo, protocolVersion: Eg } }, Xg, t2);
6560
+ let e5 = await this.request({ method: "ui/initialize", params: { appCapabilities: this._capabilities, appInfo: this._appInfo, protocolVersion: Dg } }, Zg, t2);
6561
6561
  if (e5 === void 0) throw Error("Server sent invalid initialize result: ".concat(e5));
6562
6562
  this._hostCapabilities = e5.hostCapabilities, this._hostInfo = e5.hostInfo, this._hostContext = e5.hostContext, await this.notification({ method: "ui/notifications/initialized" }), this._initializedSent = true, (n2 = this.options) != null && n2.autoResize && this.setupSizeChangedNotifications();
6563
6563
  } catch (e5) {
@@ -6565,49 +6565,49 @@ var e_ = class e3 extends Tg {
6565
6565
  }
6566
6566
  }
6567
6567
  };
6568
- o(e_, "ONE_SHOT_EVENTS", /* @__PURE__ */ new Set(["toolinput", "toolinputpartial", "toolresult", "toolcancelled"]));
6569
- var t_ = null;
6570
- function n_(e4) {
6571
- t_ = e4;
6568
+ o(t_, "ONE_SHOT_EVENTS", /* @__PURE__ */ new Set(["toolinput", "toolinputpartial", "toolresult", "toolcancelled"]));
6569
+ var n_ = null;
6570
+ function r_(e4) {
6571
+ n_ = e4;
6572
6572
  }
6573
- var r_ = null;
6574
- function i_(e4) {
6575
- r_ = e4;
6573
+ var i_ = null;
6574
+ function a_(e4) {
6575
+ i_ = e4;
6576
6576
  }
6577
- var a_ = null;
6578
- function o_() {
6579
- return a_ || (a_ = document.getElementById("tooltip")), a_;
6577
+ var o_ = null;
6578
+ function s_() {
6579
+ return o_ || (o_ = document.getElementById("tooltip")), o_;
6580
6580
  }
6581
- function s_(e4, t2, n2, r2, i2) {
6582
- let a2 = o_();
6581
+ function c_(e4, t2, n2, r2, i2) {
6582
+ let a2 = s_();
6583
6583
  if (!a2) return;
6584
- a2.innerHTML = '\n <div class="tooltip-title">'.concat(g_(n2), '</div>\n <div class="tooltip-detail">').concat(g_(r2), "</div>\n ").concat(i2 ? '<div class="tooltip-hint">'.concat(g_(i2), "</div>") : "", "\n ");
6584
+ a2.innerHTML = '\n <div class="tooltip-title">'.concat(__(n2), '</div>\n <div class="tooltip-detail">').concat(__(r2), "</div>\n ").concat(i2 ? '<div class="tooltip-hint">'.concat(__(i2), "</div>") : "", "\n ");
6585
6585
  let o2 = a2.getBoundingClientRect(), s2 = o2.width || 250, c2 = o2.height || 80, l2 = e4 + 14, u2 = t2 + 10;
6586
6586
  l2 + s2 > window.innerWidth && (l2 = e4 - s2 - 8), u2 + c2 > window.innerHeight && (u2 = t2 - c2 - 8), a2.style.left = "".concat(l2, "px"), a2.style.top = "".concat(u2, "px"), a2.classList.add("visible");
6587
6587
  }
6588
- function c_() {
6588
+ function l_() {
6589
6589
  var e4;
6590
- (e4 = o_()) == null || e4.classList.remove("visible");
6591
- }
6592
- var l_ = { 1: "The Creative", 2: "The Receptive", 3: "Ordering", 4: "Formulization", 5: "Fixed Rhythms", 6: "Friction", 7: "The Role of the Self", 8: "Contribution", 9: "Focus", 10: "Behaviour of the Self", 11: "Ideas", 12: "Caution", 13: "Fellowship", 14: "Power Skills", 15: "Extremes", 16: "Skills", 17: "Opinions", 18: "Correction", 19: "Wanting", 20: "Contemplation", 21: "The Treasurer", 22: "Openness", 23: "Splitting Apart", 24: "Rationalisation", 25: "Innocence", 26: "The Taming Power", 27: "Caring", 28: "The Game Player", 29: "The Abysmal", 30: "Feelings", 31: "Influence", 32: "Continuity", 33: "Privacy", 34: "Power", 35: "Change", 36: "Crisis", 37: "Friendship", 38: "The Fighter", 39: "Provocation", 40: "Aloneness", 41: "Contraction", 42: "Growth", 43: "Insight", 44: "Alertness", 45: "The Gatherer", 46: "Determination", 47: "Realisation", 48: "Depth", 49: "Revolution", 50: "Values", 51: "Shock", 52: "Stillness", 53: "Beginnings", 54: "Ambition", 55: "Spirit", 56: "Stimulation", 57: "Intuitive Clarity", 58: "Vitality", 59: "Sexuality", 60: "Limitation", 61: "Mystery", 62: "Detail", 63: "Doubt", 64: "Confusion" }, u_ = { head: "inspiration & pressure to think", ajna: "conceptualization & mental awareness", throat: "communication & manifestation", g: "identity, direction & love", heart: "willpower & ego", sacral: "life force & response", root: "adrenalized pressure & drive", spleen: "survival & intuition", solar_plexus: "emotions & spirit" }, d_ = null;
6593
- function f_() {
6594
- return d_ || (d_ = document.createElement("div"), d_.id = "hd-popup-panel", d_.className = "hd-popup", document.body.appendChild(d_)), d_;
6590
+ (e4 = s_()) == null || e4.classList.remove("visible");
6595
6591
  }
6592
+ var u_ = { 1: "The Creative", 2: "The Receptive", 3: "Ordering", 4: "Formulization", 5: "Fixed Rhythms", 6: "Friction", 7: "The Role of the Self", 8: "Contribution", 9: "Focus", 10: "Behaviour of the Self", 11: "Ideas", 12: "Caution", 13: "Fellowship", 14: "Power Skills", 15: "Extremes", 16: "Skills", 17: "Opinions", 18: "Correction", 19: "Wanting", 20: "Contemplation", 21: "The Treasurer", 22: "Openness", 23: "Splitting Apart", 24: "Rationalisation", 25: "Innocence", 26: "The Taming Power", 27: "Caring", 28: "The Game Player", 29: "The Abysmal", 30: "Feelings", 31: "Influence", 32: "Continuity", 33: "Privacy", 34: "Power", 35: "Change", 36: "Crisis", 37: "Friendship", 38: "The Fighter", 39: "Provocation", 40: "Aloneness", 41: "Contraction", 42: "Growth", 43: "Insight", 44: "Alertness", 45: "The Gatherer", 46: "Determination", 47: "Realisation", 48: "Depth", 49: "Revolution", 50: "Values", 51: "Shock", 52: "Stillness", 53: "Beginnings", 54: "Ambition", 55: "Spirit", 56: "Stimulation", 57: "Intuitive Clarity", 58: "Vitality", 59: "Sexuality", 60: "Limitation", 61: "Mystery", 62: "Detail", 63: "Doubt", 64: "Confusion" }, d_ = { head: "inspiration & pressure to think", ajna: "conceptualization & mental awareness", throat: "communication & manifestation", g: "identity, direction & love", heart: "willpower & ego", sacral: "life force & response", root: "adrenalized pressure & drive", spleen: "survival & intuition", solar_plexus: "emotions & spirit" }, f_ = null;
6596
6593
  function p_() {
6597
- d_ == null || d_.classList.remove("visible"), t_ == null || t_(null);
6594
+ return f_ || (f_ = document.createElement("div"), f_.id = "hd-popup-panel", f_.className = "hd-popup", document.body.appendChild(f_)), f_;
6595
+ }
6596
+ function m_() {
6597
+ f_ == null || f_.classList.remove("visible"), n_ == null || n_(null);
6598
6598
  }
6599
- function m_(e4, t2, n2, r2, i2, a2) {
6599
+ function h_(e4, t2, n2, r2, i2, a2) {
6600
6600
  var o2;
6601
- let s2 = r_ ? '<button class="ask-claude-btn" id="hd-ask-claude-btn">Ask Claude \u2014 Interpret</button>' : "", c2 = a2 ? '<div class="hd-popup-body">'.concat(a2, "</div>") : "", l2 = '\n <div class="hd-popup-header">\n <span class="hd-popup-icon">'.concat(g_(t2), '</span>\n <div class="hd-popup-title">\n <strong>').concat(g_(n2), '</strong>\n <div class="hd-popup-sub">').concat(g_(r2), '</div>\n </div>\n <button class="hd-popup-close" id="hd-popup-close">\u2715</button>\n </div>\n ').concat(c2, "\n ").concat(s2, "\n "), u2 = document.querySelector("#fs-bottom-bar [data-column='right']");
6601
+ let s2 = i_ ? '<button class="ask-claude-btn" id="hd-ask-claude-btn">Ask Claude \u2014 Interpret</button>' : "", c2 = a2 ? '<div class="hd-popup-body">'.concat(a2, "</div>") : "", l2 = '\n <div class="hd-popup-header">\n <span class="hd-popup-icon">'.concat(__(t2), '</span>\n <div class="hd-popup-title">\n <strong>').concat(__(n2), '</strong>\n <div class="hd-popup-sub">').concat(__(r2), '</div>\n </div>\n <button class="hd-popup-close" id="hd-popup-close">\u2715</button>\n </div>\n ').concat(c2, "\n ").concat(s2, "\n "), u2 = document.querySelector("#fs-bottom-bar [data-column='right']");
6602
6602
  if (u2 && document.body.classList.contains("is-fullscreen")) {
6603
6603
  var d2;
6604
6604
  let e5 = u2.querySelector(".hd-detail-panel");
6605
6605
  e5 || (e5 = document.createElement("div"), e5.className = "hd-detail-panel", u2.appendChild(e5)), e5.innerHTML = l2, (d2 = e5.querySelector("#hd-popup-close")) == null || d2.addEventListener("click", () => {
6606
- e5.innerHTML = "", t_ == null || t_(null);
6607
- }), h_(e5, i2);
6606
+ e5.innerHTML = "", n_ == null || n_(null);
6607
+ }), g_(e5, i2);
6608
6608
  return;
6609
6609
  }
6610
- let f2 = f_();
6610
+ let f2 = p_();
6611
6611
  f2.innerHTML = l2, f2.classList.add("visible"), requestAnimationFrame(() => {
6612
6612
  let t3 = f2.getBoundingClientRect(), n3 = f2.offsetParent, r3, i3, a3, o3;
6613
6613
  if (n3) {
@@ -6616,17 +6616,17 @@ function m_(e4, t2, n2, r2, i2, a2) {
6616
6616
  } else r3 = window.innerWidth, i3 = window.innerHeight, a3 = 0, o3 = 0;
6617
6617
  let s3 = e4.clientX - a3 + 14, c3 = e4.clientY - o3 + 14;
6618
6618
  s3 + t3.width > r3 - 14 && (s3 = e4.clientX - a3 - t3.width - 14), c3 + t3.height > i3 - 14 && (c3 = e4.clientY - o3 - t3.height - 14), s3 = Math.max(14, s3), c3 = Math.max(14, c3), f2.style.left = "".concat(s3, "px"), f2.style.top = "".concat(c3, "px");
6619
- }), (o2 = document.getElementById("hd-popup-close")) == null || o2.addEventListener("click", p_), h_(f2, i2);
6619
+ }), (o2 = document.getElementById("hd-popup-close")) == null || o2.addEventListener("click", m_), g_(f2, i2);
6620
6620
  }
6621
- function h_(e4, t2) {
6621
+ function g_(e4, t2) {
6622
6622
  var n2;
6623
6623
  (n2 = e4.querySelector("#hd-ask-claude-btn")) == null || n2.addEventListener("click", () => {
6624
- if (!r_) return;
6624
+ if (!i_) return;
6625
6625
  let n3 = e4.querySelector("#hd-ask-claude-btn");
6626
6626
  if (!n3 || n3.disabled) return;
6627
6627
  n3.disabled = true, n3.textContent = "Sending\u2026", n3.classList.add("sending");
6628
6628
  let r2 = Object.fromEntries(Object.entries(t2.data).filter(([e5, t3]) => t3 != null && t3 !== "" && t3 !== 0)), i2 = { type: t2.type, data: r2 };
6629
- r_(i2).then(() => {
6629
+ i_(i2).then(() => {
6630
6630
  n3.textContent = "Sent", n3.classList.remove("sending"), n3.classList.add("sent"), setTimeout(() => {
6631
6631
  n3.textContent = "Ask Claude \u2014 Interpret", n3.classList.remove("sent"), n3.disabled = false;
6632
6632
  }, 2500);
@@ -6635,14 +6635,14 @@ function h_(e4, t2) {
6635
6635
  });
6636
6636
  });
6637
6637
  }
6638
- function g_(e4) {
6638
+ function __(e4) {
6639
6639
  return e4.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;");
6640
6640
  }
6641
- function __(e4, t2, n2, r2, i2, a2) {
6642
- let o2 = (e5, t3) => t3 ? '<span class="info-value interactive-text" data-ask="true" data-topic="'.concat(g_(e5), '" data-val="').concat(g_(t3), '" tabindex="0" role="button" title="Ask Claude about this">').concat(g_(t3), "</span>") : '<span class="info-value">None</span>';
6643
- return '\n <div class="info-row"><span class="info-label">Type</span>'.concat(o2("Type", e4), '</div>\n <div class="info-row"><span class="info-label">Profile</span>').concat(o2("Profile", t2), '</div>\n <div class="info-row"><span class="info-label">Authority</span>').concat(o2("Authority", n2), '</div>\n <div class="info-row"><span class="info-label">Definition</span>').concat(o2("Definition", r2), '</div>\n <div class="info-row"><span class="info-label">Cross</span>').concat(o2("Incarnation Cross", i2), '</div>\n <div class="info-row"><span class="info-label">Defined</span><span class="info-value">').concat(a2.length > 0 ? a2.map(g_).join(", ") : "None", "</span></div>\n ");
6641
+ function v_(e4, t2, n2, r2, i2, a2) {
6642
+ let o2 = (e5, t3) => t3 ? '<span class="info-value interactive-text" data-ask="true" data-topic="'.concat(__(e5), '" data-val="').concat(__(t3), '" tabindex="0" role="button" title="Ask Claude about this">').concat(__(t3), "</span>") : '<span class="info-value">None</span>';
6643
+ return '\n <div class="info-row"><span class="info-label">Type</span>'.concat(o2("Type", e4), '</div>\n <div class="info-row"><span class="info-label">Profile</span>').concat(o2("Profile", t2), '</div>\n <div class="info-row"><span class="info-label">Authority</span>').concat(o2("Authority", n2), '</div>\n <div class="info-row"><span class="info-label">Definition</span>').concat(o2("Definition", r2), '</div>\n <div class="info-row"><span class="info-label">Cross</span>').concat(o2("Incarnation Cross", i2), '</div>\n <div class="info-row"><span class="info-label">Defined</span><span class="info-value">').concat(a2.length > 0 ? a2.map(__).join(", ") : "None", "</span></div>\n ");
6644
6644
  }
6645
- function v_(e4, t2) {
6645
+ function y_(e4, t2) {
6646
6646
  var n2, r2, i2, a2, o2, s2;
6647
6647
  let c2 = document.getElementById(t2), l2 = c2 == null ? void 0 : c2.querySelector("#btn-zoom-in"), u2 = c2 == null ? void 0 : c2.querySelector("#btn-zoom-out"), d2 = c2 == null ? void 0 : c2.querySelector("#btn-reset-view");
6648
6648
  c2 && (c2.hidden = false);
@@ -6691,25 +6691,25 @@ function v_(e4, t2) {
6691
6691
  };
6692
6692
  e4.addEventListener("pointerup", le2), e4.addEventListener("pointercancel", le2);
6693
6693
  }
6694
- var y_ = { head: "Head", ajna: "Ajna", throat: "Throat", g: "G", heart: "Heart", sacral: "Sacral", spleen: "Spleen", solar_plexus: "Solar Plexus", root: "Root" };
6695
- function b_(e4) {
6694
+ var b_ = { head: "Head", ajna: "Ajna", throat: "Throat", g: "G", heart: "Heart", sacral: "Sacral", spleen: "Spleen", solar_plexus: "Solar Plexus", root: "Root" };
6695
+ function x_(e4) {
6696
6696
  var t2;
6697
- return (t2 = y_[e4]) == null ? e4 : t2;
6697
+ return (t2 = b_[e4]) == null ? e4 : t2;
6698
6698
  }
6699
- function x_(e4, t2, n2, r2) {
6699
+ function S_(e4, t2, n2, r2) {
6700
6700
  var i2, a2, o2, s2;
6701
- i_((i2 = r2.onAskClaude) == null ? null : i2);
6701
+ a_((i2 = r2.onAskClaude) == null ? null : i2);
6702
6702
  let c2 = e4.querySelector("#pan-zoom-controls");
6703
6703
  e4.innerHTML = "", c2 && e4.appendChild(c2);
6704
6704
  let l2 = document.createElement("div");
6705
6705
  l2.style.cssText = "width:100%;height:100%;", l2.innerHTML = t2;
6706
6706
  let u2 = l2.querySelector("svg");
6707
6707
  if (!u2) return console.error("[wire-go-svg] No <svg> element found in payload"), null;
6708
- u2.setAttribute("width", "100%"), u2.setAttribute("height", "100%"), u2.setAttribute("role", "group"), u2.setAttribute("aria-label", "Human Design Bodygraph"), u2.addEventListener("click", (e5) => e5.stopPropagation()), e4.appendChild(u2), v_(u2, "pan-zoom-controls"), new Set((a2 = n2.personality_gates) == null ? [] : a2), new Set((o2 = n2.design_gates) == null ? [] : o2);
6708
+ u2.setAttribute("width", "100%"), u2.setAttribute("height", "100%"), u2.setAttribute("role", "group"), u2.setAttribute("aria-label", "Human Design Bodygraph"), u2.addEventListener("click", (e5) => e5.stopPropagation()), e4.appendChild(u2), y_(u2, "pan-zoom-controls"), new Set((a2 = n2.personality_gates) == null ? [] : a2), new Set((o2 = n2.design_gates) == null ? [] : o2);
6709
6709
  let d2 = /* @__PURE__ */ new Set();
6710
6710
  for (let e5 of (s2 = n2.centers) == null ? [] : s2) e5.defined && d2.add(e5.name);
6711
6711
  let f2 = {};
6712
- for (let [e5, t3] of Object.entries(y_)) f2[t3.toLowerCase()] = e5;
6712
+ for (let [e5, t3] of Object.entries(b_)) f2[t3.toLowerCase()] = e5;
6713
6713
  u2.addEventListener("mouseover", (e5) => m2(e5, true)), u2.addEventListener("mouseout", (e5) => m2(e5, false)), u2.addEventListener("click", h2), g2();
6714
6714
  function p2(e5, t3) {
6715
6715
  let n3 = e5;
@@ -6722,53 +6722,53 @@ function x_(e4, t2, n2, r2) {
6722
6722
  function m2(e5, t3) {
6723
6723
  let n3 = e5, r3 = p2(n3.target, "data-gate"), i3 = p2(n3.target, "data-center"), a3 = p2(n3.target, "data-channel");
6724
6724
  if (!t3) {
6725
- c_();
6725
+ l_();
6726
6726
  return;
6727
6727
  }
6728
6728
  if (r3) {
6729
6729
  var o3, s3;
6730
- let e6 = Number(r3.getAttribute("data-gate")), t4 = (o3 = r3.getAttribute("data-source")) == null ? "inactive" : o3, i4 = r3.getAttribute("data-hanging") === "true", a4 = (s3 = l_[e6]) == null ? "Gate ".concat(e6) : s3, c4 = t4 === "inactive" ? "Inactive gate" : "".concat(C_(t4)).concat(i4 ? " \xB7 hanging" : "");
6731
- s_(n3.clientX, n3.clientY, "Gate ".concat(e6, " \u2014 ").concat(a4), c4, "Click to interpret");
6730
+ let e6 = Number(r3.getAttribute("data-gate")), t4 = (o3 = r3.getAttribute("data-source")) == null ? "inactive" : o3, i4 = r3.getAttribute("data-hanging") === "true", a4 = (s3 = u_[e6]) == null ? "Gate ".concat(e6) : s3, c4 = t4 === "inactive" ? "Inactive gate" : "".concat(w_(t4)).concat(i4 ? " \xB7 hanging" : "");
6731
+ c_(n3.clientX, n3.clientY, "Gate ".concat(e6, " \u2014 ").concat(a4), c4, "Click to interpret");
6732
6732
  return;
6733
6733
  }
6734
6734
  if (a3) {
6735
6735
  var c3, l3, u3, d3;
6736
6736
  let e6 = (c3 = a3.getAttribute("data-channel")) == null ? "" : c3, t4 = (l3 = a3.getAttribute("data-gate1")) == null ? "" : l3, r4 = (u3 = a3.getAttribute("data-gate2")) == null ? "" : u3, i4 = (d3 = a3.getAttribute("class")) == null ? "" : d3, o4 = i4.includes("channel--hanging") ? "Hanging gate" : i4.includes("channel--active") ? "Active channel" : "Inactive channel";
6737
- s_(n3.clientX, n3.clientY, "Channel ".concat(e6), "".concat(o4, " \u2014 gates ").concat(t4, " \u2194 ").concat(r4));
6737
+ c_(n3.clientX, n3.clientY, "Channel ".concat(e6), "".concat(o4, " \u2014 gates ").concat(t4, " \u2194 ").concat(r4));
6738
6738
  return;
6739
6739
  }
6740
6740
  if (i3) {
6741
6741
  var f3, m3;
6742
- let e6 = (f3 = i3.getAttribute("data-center")) == null ? "" : f3, t4 = i3.getAttribute("data-defined") === "true", r4 = b_(e6), a4 = (m3 = u_[e6]) == null ? "" : m3;
6743
- s_(n3.clientX, n3.clientY, "".concat(r4, " Center"), "".concat(t4 ? "Defined" : "Open").concat(a4 ? " \u2014 " + a4 : ""), "Click to interpret");
6742
+ let e6 = (f3 = i3.getAttribute("data-center")) == null ? "" : f3, t4 = i3.getAttribute("data-defined") === "true", r4 = x_(e6), a4 = (m3 = d_[e6]) == null ? "" : m3;
6743
+ c_(n3.clientX, n3.clientY, "".concat(r4, " Center"), "".concat(t4 ? "Defined" : "Open").concat(a4 ? " \u2014 " + a4 : ""), "Click to interpret");
6744
6744
  return;
6745
6745
  }
6746
- c_();
6746
+ l_();
6747
6747
  }
6748
6748
  function h2(e5) {
6749
6749
  let t3 = e5, n3 = p2(t3.target, "data-gate"), i3 = p2(t3.target, "data-center"), a3 = p2(t3.target, "data-channel");
6750
6750
  if (n3) {
6751
6751
  var o3;
6752
- let e6 = Number(n3.getAttribute("data-gate")), i4 = (o3 = n3.getAttribute("data-source")) == null ? "inactive" : o3, a4 = i4 === "personality" ? true : i4 === "design" ? false : null, c4 = b_(n3.getAttribute("data-center") || "");
6752
+ let e6 = Number(n3.getAttribute("data-gate")), i4 = (o3 = n3.getAttribute("data-source")) == null ? "inactive" : o3, a4 = i4 === "personality" ? true : i4 === "design" ? false : null, c4 = x_(n3.getAttribute("data-center") || "");
6753
6753
  if (r2.onGateClick(e6, a4, c4), r2.onAskClaude) {
6754
6754
  var s3;
6755
- m_(t3, "\u25C9", "Gate ".concat(e6), (s3 = l_[e6]) == null ? "Active gate" : s3, { type: "gate", data: { gate: e6, conscious: a4, center: c4 } });
6755
+ h_(t3, "\u25C9", "Gate ".concat(e6), (s3 = u_[e6]) == null ? "Active gate" : s3, { type: "gate", data: { gate: e6, conscious: a4, center: c4 } });
6756
6756
  }
6757
6757
  return;
6758
6758
  }
6759
6759
  if (a3) {
6760
6760
  var c3, l3, u3, d3;
6761
6761
  let e6 = (c3 = a3.getAttribute("data-channel")) == null ? "" : c3, n4 = Number((l3 = a3.getAttribute("data-gate1")) == null ? 0 : l3), i4 = Number((u3 = a3.getAttribute("data-gate2")) == null ? 0 : u3), o4 = (d3 = a3.getAttribute("data-source")) == null ? "" : d3;
6762
- r2.onChannelClick(e6, n4, i4, "", "", o4), r2.onAskClaude && m_(t3, "\u2194", "Channel ".concat(e6), "Gates ".concat(n4, "\u2013").concat(i4).concat(o4 ? " \xB7 " + o4 : ""), { type: "channel", data: { channel: e6, gate1: n4, gate2: i4, color_type: o4 } });
6762
+ r2.onChannelClick(e6, n4, i4, "", "", o4), r2.onAskClaude && h_(t3, "\u2194", "Channel ".concat(e6), "Gates ".concat(n4, "\u2013").concat(i4).concat(o4 ? " \xB7 " + o4 : ""), { type: "channel", data: { channel: e6, gate1: n4, gate2: i4, color_type: o4 } });
6763
6763
  return;
6764
6764
  }
6765
6765
  if (i3) {
6766
6766
  var f3;
6767
- let e6 = (f3 = i3.getAttribute("data-center")) == null ? "" : f3, n4 = i3.getAttribute("data-defined") === "true", a4 = b_(e6);
6767
+ let e6 = (f3 = i3.getAttribute("data-center")) == null ? "" : f3, n4 = i3.getAttribute("data-defined") === "true", a4 = x_(e6);
6768
6768
  if (r2.onCenterClick(a4, n4, []), r2.onAskClaude) {
6769
6769
  var m3;
6770
- let r3 = (m3 = u_[e6]) == null ? "" : m3;
6771
- m_(t3, n4 ? "\u25C9" : "\u25CB", "".concat(a4, " Center"), "".concat(n4 ? "Defined" : "Open").concat(r3 ? " \u2014 " + r3 : ""), { type: "center", data: { center_name: a4, defined: n4 } }, g_(r3));
6770
+ let r3 = (m3 = d_[e6]) == null ? "" : m3;
6771
+ h_(t3, n4 ? "\u25C9" : "\u25CB", "".concat(a4, " Center"), "".concat(n4 ? "Defined" : "Open").concat(r3 ? " \u2014 " + r3 : ""), { type: "center", data: { center_name: a4, defined: n4 } }, __(r3));
6772
6772
  }
6773
6773
  return;
6774
6774
  }
@@ -6778,15 +6778,15 @@ function x_(e4, t2, n2, r2) {
6778
6778
  let t3;
6779
6779
  if (e5.hasAttribute("data-gate")) {
6780
6780
  var n3, r3;
6781
- let i4 = Number(e5.getAttribute("data-gate")), a4 = (n3 = e5.getAttribute("data-source")) == null ? "inactive" : n3, o4 = (r3 = l_[i4]) == null ? "" : r3;
6782
- t3 = "Gate ".concat(i4).concat(o4 ? " \u2014 " + o4 : "", ", ").concat(a4 === "inactive" ? "inactive" : C_(a4));
6781
+ let i4 = Number(e5.getAttribute("data-gate")), a4 = (n3 = e5.getAttribute("data-source")) == null ? "inactive" : n3, o4 = (r3 = u_[i4]) == null ? "" : r3;
6782
+ t3 = "Gate ".concat(i4).concat(o4 ? " \u2014 " + o4 : "", ", ").concat(a4 === "inactive" ? "inactive" : w_(a4));
6783
6783
  } else if (e5.hasAttribute("data-channel")) {
6784
6784
  var i3, a3, o3;
6785
6785
  t3 = "Channel ".concat((i3 = e5.getAttribute("data-channel")) == null ? "" : i3, ", gates ").concat((a3 = e5.getAttribute("data-gate1")) == null ? "" : a3, " to ").concat((o3 = e5.getAttribute("data-gate2")) == null ? "" : o3);
6786
6786
  } else {
6787
6787
  var s3;
6788
6788
  let n4 = (s3 = e5.getAttribute("data-center")) == null ? "" : s3, r4 = e5.getAttribute("data-defined") === "true";
6789
- t3 = "".concat(b_(n4), " Center, ").concat(r4 ? "defined" : "open");
6789
+ t3 = "".concat(x_(n4), " Center, ").concat(r4 ? "defined" : "open");
6790
6790
  }
6791
6791
  e5.setAttribute("tabindex", "0"), e5.setAttribute("role", "button"), e5.setAttribute("aria-label", t3), e5.addEventListener("keydown", (t4) => {
6792
6792
  let n4 = t4;
@@ -6799,7 +6799,7 @@ function x_(e4, t2, n2, r2) {
6799
6799
  }
6800
6800
  return u2;
6801
6801
  }
6802
- function S_(e4, t2) {
6802
+ function C_(e4, t2) {
6803
6803
  var n2, r2, i2, a2, o2, s2;
6804
6804
  e4.querySelectorAll("[data-highlighted]").forEach((e5) => {
6805
6805
  e5.removeAttribute("data-highlighted"), e5.removeAttribute("data-highlighted-primary");
@@ -6825,13 +6825,13 @@ function S_(e4, t2) {
6825
6825
  e5.setAttribute("data-highlighted", "true"), h2.has(t3) && e5.setAttribute("data-highlighted-primary", "true");
6826
6826
  });
6827
6827
  }
6828
- function C_(e4) {
6828
+ function w_(e4) {
6829
6829
  return e4.charAt(0).toUpperCase() + e4.slice(1);
6830
6830
  }
6831
- var w_ = class {
6831
+ var T_ = class {
6832
6832
  constructor(e4) {
6833
6833
  var t2, n2, r2, i2, a2, s2;
6834
- o(this, "config", void 0), o(this, "params", void 0), o(this, "dateInput", void 0), o(this, "timeInput", void 0), o(this, "refreshBtn", void 0), o(this, "locInput", void 0), o(this, "locDropdown", void 0), o(this, "summaryBar", void 0), o(this, "searchTimeout", null), o(this, "searchVersion", 0), o(this, "isSearching", false), this.config = e4, this.params = { date: ((t2 = e4.initialParams) == null ? void 0 : t2.date) || this.getTodayDate(), time: ((n2 = e4.initialParams) == null ? void 0 : n2.time) || "12:00", latitude: ((r2 = e4.initialParams) == null ? void 0 : r2.latitude) || null, longitude: ((i2 = e4.initialParams) == null ? void 0 : i2.longitude) || null, timezone: ((a2 = e4.initialParams) == null ? void 0 : a2.timezone) || null, locationName: ((s2 = e4.initialParams) == null ? void 0 : s2.locationName) || null }, this.render();
6834
+ o(this, "config", void 0), o(this, "params", void 0), o(this, "dateInput", void 0), o(this, "timeInput", void 0), o(this, "refreshBtn", void 0), o(this, "locInput", void 0), o(this, "locDropdown", void 0), o(this, "summaryBar", void 0), o(this, "extraToggleInput", void 0), o(this, "searchTimeout", null), o(this, "searchVersion", 0), o(this, "isSearching", false), this.config = e4, this.params = { date: ((t2 = e4.initialParams) == null ? void 0 : t2.date) || this.getTodayDate(), time: ((n2 = e4.initialParams) == null ? void 0 : n2.time) || "12:00", latitude: ((r2 = e4.initialParams) == null ? void 0 : r2.latitude) || null, longitude: ((i2 = e4.initialParams) == null ? void 0 : i2.longitude) || null, timezone: ((a2 = e4.initialParams) == null ? void 0 : a2.timezone) || null, locationName: ((s2 = e4.initialParams) == null ? void 0 : s2.locationName) || null }, this.render();
6835
6835
  }
6836
6836
  getTodayDate() {
6837
6837
  return (/* @__PURE__ */ new Date()).toISOString().split("T")[0];
@@ -6845,6 +6845,14 @@ var w_ = class {
6845
6845
  updateSummary(e4) {
6846
6846
  (e4 == null ? void 0 : e4.name) !== void 0 && (this.config.subjectName = e4.name), e4 != null && e4.date && (this.params.date = e4.date), e4 != null && e4.time && (this.params.time = e4.time), e4 != null && e4.location && (this.params.locationName = e4.location), this.renderSummaryBar();
6847
6847
  }
6848
+ syncExtraToggle(e4) {
6849
+ if (this.extraToggleInput && (e4.checked !== void 0 && (this.extraToggleInput.checked = e4.checked), e4.available !== void 0)) {
6850
+ var t2;
6851
+ this.extraToggleInput.disabled = !e4.available;
6852
+ let n2 = this.extraToggleInput.closest("label");
6853
+ n2 && (n2.title = e4.available || (t2 = e4.disabledTitle) == null ? "" : t2);
6854
+ }
6855
+ }
6848
6856
  renderSummaryBar() {
6849
6857
  if (!this.summaryBar) return;
6850
6858
  let e4 = this.config.subjectName, t2 = this.params.locationName, n2 = this.params.date, r2 = this.params.time, i2 = "";
@@ -6945,6 +6953,15 @@ var w_ = class {
6945
6953
  let e5 = document.createElement("span");
6946
6954
  e5.className = "param-cost-hint", e5.textContent = this.config.costHint, e5.title = "Approximate credit cost each time you recalculate", s2.append(e5);
6947
6955
  }
6956
+ if (this.config.extraToggle) {
6957
+ var c2, l2;
6958
+ let e5 = this.config.extraToggle, t3 = document.createElement("label");
6959
+ t3.className = "param-extra-toggle", this.extraToggleInput = document.createElement("input"), this.extraToggleInput.type = "checkbox", this.extraToggleInput.checked = (c2 = e5.initialChecked) == null ? false : c2, this.extraToggleInput.disabled = (l2 = e5.initialDisabled) == null ? false : l2, this.extraToggleInput.disabled && e5.disabledTitle && (t3.title = e5.disabledTitle), this.extraToggleInput.addEventListener("change", () => {
6960
+ e5.onChange(this.extraToggleInput.checked);
6961
+ });
6962
+ let n3 = document.createElement("span");
6963
+ n3.textContent = e5.label, t3.append(this.extraToggleInput, n3), s2.append(t3);
6964
+ }
6948
6965
  this.config.hideLocation ? e4.append(t2, r2, s2) : e4.append(t2, r2, a2, s2), this.config.container.append(e4);
6949
6966
  }
6950
6967
  stepDay(e4) {
@@ -6955,20 +6972,20 @@ var w_ = class {
6955
6972
  escHtml(e4) {
6956
6973
  return e4.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;");
6957
6974
  }
6958
- }, T_ = /* @__PURE__ */ new Set();
6959
- function E_(e4) {
6960
- return T_.has(e4);
6961
- }
6975
+ }, E_ = /* @__PURE__ */ new Set();
6962
6976
  function D_(e4) {
6963
- T_.add(e4);
6977
+ return E_.has(e4);
6964
6978
  }
6965
- var O_ = { "chart-wheel": { stripIcon: "\u2726", stripTitle: "Welcome to your Natal Chart", stripHints: ["Click any <strong>planet</strong> for a deep placement reading", "Click any <strong>aspect line</strong> for its dynamic interpretation", "Click any <strong>house cusp</strong> for house themes", "Use the <strong>date controls</strong> to move through time"], modalText: "Your birth chart is now rendered \u2014 an exact celestial snapshot of the sky at your moment of birth." }, "bi-wheel": { stripIcon: "\u2295", stripTitle: "Welcome to the Bi-Wheel", stripHints: ["Click any <strong>inner planet</strong> for natal placement depth", "Click any <strong>outer planet</strong> for transit or synastry meaning", "Click a <strong>cross-aspect line</strong> for inter-chart dynamics", "Use the <strong>date controls</strong> to advance transits"], modalText: "Two charts are now layered \u2014 the inner wheel is your natal chart; the outer ring shows the second chart (transits or another person's planets)." }, bodygraph: { stripIcon: "\u25C8", stripTitle: "Welcome to your Bodygraph", stripHints: ["Click any <strong>center</strong> (defined or undefined) for its meaning", "Click any <strong>channel</strong> to explore its life theme", "Click any <strong>gate number</strong> for its I Ching hexagram reading", "Click a <strong>planet row</strong> in the sidebar for its HD role"], modalText: "Your bodygraph is now rendered \u2014 a living map of the energy centres, channels, and gates that define your design." }, "vedic-chart": { stripIcon: "\u{1F549}", stripTitle: "Welcome to your Jyotish Chart", stripHints: ["Click any <strong>rashi cell</strong> for its themes and any planets placed there", "The <strong>diagonal mark</strong> shows your Lagna (Ascendant) rashi", "Use the <strong>action bar</strong> for a full chart interpretation", "Click <strong>Moon &amp; Nakshatra</strong> for lunar mansion detail"], modalText: "Your Vedic birth chart is now rendered as a South Indian Rashi grid \u2014 sidereal planetary placements by fixed sign." }, "transit-timeline": { stripIcon: "\u2604", stripTitle: "Welcome to your Transit Timeline", stripHints: ["Each entry is an <strong>exact transit hit</strong> \u2014 a transiting planet contacting a natal point", "Events are <strong>grouped by month</strong> in chronological order", "The <strong>\u211E marker</strong> flags a retrograde crossing", "Click any transit for a focused <strong>interpretation</strong>"], modalText: "This timeline lists upcoming transits to your natal chart \u2014 the exact dates outer-planet energies activate your placements." }, "moon-phase": { stripIcon: "\u263E", stripTitle: "Welcome to the Moon Phase dial", stripHints: ["Click the <strong>Moon</strong> for its phase interpretation", "Click the <strong>Void-of-Course</strong> card when the Moon is VOC", "Use the <strong>date control</strong> to move the sky to any moment"], modalText: "The dial shows the Moon's live illumination, phase, sign, and void-of-course status \u2014 a snapshot of tonight's sky." }, bazi: { stripIcon: "\u56DB", stripTitle: "Welcome to your BaZi Chart", stripHints: ["Click any <strong>pillar</strong> (Year, Month, Day, Hour) for its interpretation", "The <strong>Day Master</strong> is your core identity element", "The <strong>Wu Xing bar</strong> shows your Five Element balance"], modalText: "Your BaZi (Four Pillars of Destiny) chart is now rendered \u2014 a map of the Heavenly Stems and Earthly Branches present at your moment of birth." } }, k_ = '\n .oe-welcome-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: oklch(0% 0 0 / 0.55);\n backdrop-filter: blur(8px);\n -webkit-backdrop-filter: blur(8px);\n z-index: 9999;\n display: flex;\n align-items: center;\n justify-content: center;\n animation: oe-fade-in 0.4s ease both;\n font-family: system-ui, sans-serif;\n }\n\n .oe-welcome-modal {\n background: oklch(11% 0.010 265);\n border: 1px solid var(--gold-glow, oklch(72% 0.12 80 / 0.20));\n border-radius: 16px;\n padding: 32px;\n width: 90%;\n max-width: 440px;\n box-shadow: 0 20px 40px oklch(0% 0 0 / 0.55), inset 0 1px 0 oklch(100% 0 0 / 0.06);\n animation: oe-modal-in 0.5s cubic-bezier(0.22, 1, 0.36, 1) both;\n display: flex;\n flex-direction: column;\n gap: 20px;\n }\n\n @keyframes oe-fade-in {\n from { opacity: 0; }\n to { opacity: 1; }\n }\n\n @keyframes oe-modal-in {\n from { opacity: 0; transform: scale(0.95) translateY(10px); }\n to { opacity: 1; transform: scale(1) translateY(0); }\n }\n\n .oe-welcome-header {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 4px;\n }\n\n .oe-welcome-icon {\n font-size: 28px;\n color: var(--gold, oklch(72% 0.12 80));\n line-height: 1;\n text-shadow: 0 0 10px var(--gold-glow, oklch(72% 0.12 80 / 0.30));\n }\n\n .oe-welcome-title {\n font-size: 20px;\n font-weight: 600;\n color: var(--text, oklch(92% 0.006 265));\n margin: 0;\n letter-spacing: 0.02em;\n }\n\n .oe-welcome-text {\n font-size: 14.5px;\n line-height: 1.5;\n color: var(--text-secondary, oklch(68% 0.008 265));\n margin: 0;\n }\n\n .oe-welcome-hints {\n display: flex;\n flex-direction: column;\n gap: 12px;\n margin: 8px 0 12px 0;\n padding: 0;\n list-style: none;\n }\n\n .oe-welcome-hints li {\n font-size: 13.5px;\n line-height: 1.4;\n color: var(--text-secondary, oklch(68% 0.008 265));\n display: flex;\n align-items: flex-start;\n gap: 10px;\n opacity: 0;\n animation: oe-fade-in 0.4s ease forwards;\n }\n\n /* Stagger the hints */\n .oe-welcome-hints li:nth-child(1) { animation-delay: 0.15s; }\n .oe-welcome-hints li:nth-child(2) { animation-delay: 0.25s; }\n .oe-welcome-hints li:nth-child(3) { animation-delay: 0.35s; }\n .oe-welcome-hints li:nth-child(4) { animation-delay: 0.45s; }\n\n .oe-welcome-hints li::before {\n content: "\u2726";\n color: var(--gold-dim, oklch(52% 0.06 80));\n font-size: 12px;\n padding-top: 2px;\n }\n\n .oe-welcome-hints strong {\n color: var(--text, oklch(92% 0.006 265));\n font-weight: 600;\n }\n\n .oe-welcome-button {\n align-self: flex-end;\n background: var(--gold-subtle, oklch(72% 0.12 80 / 0.10));\n color: var(--gold, oklch(72% 0.12 80));\n border: 1px solid var(--gold-glow, oklch(72% 0.12 80 / 0.20));\n padding: 10px 24px;\n border-radius: 8px;\n font-size: 14px;\n font-weight: 600;\n cursor: pointer;\n transition: background 0.2s ease, border-color 0.2s ease;\n margin-top: 4px;\n }\n\n .oe-welcome-button:hover {\n background: oklch(72% 0.12 80 / 0.18);\n border-color: oklch(72% 0.12 80 / 0.40);\n }\n\n .oe-welcome-button:focus-visible {\n outline: 2px solid var(--gold, oklch(72% 0.12 80));\n outline-offset: 2px;\n }\n\n .oe-welcome-backdrop.is-dismissing {\n animation: oe-fade-out 0.3s ease forwards;\n }\n\n .oe-welcome-backdrop.is-dismissing .oe-welcome-modal {\n animation: oe-modal-out 0.3s cubic-bezier(0.22, 1, 0.36, 1) forwards;\n }\n\n @keyframes oe-fade-out {\n to { opacity: 0; }\n }\n\n @keyframes oe-modal-out {\n to { opacity: 0; transform: scale(0.95) translateY(10px); }\n }\n';
6966
- function A_() {
6979
+ function O_(e4) {
6980
+ E_.add(e4);
6981
+ }
6982
+ var k_ = { "chart-wheel": { stripIcon: "\u2726", stripTitle: "Welcome to your Natal Chart", stripHints: ["Click any <strong>planet</strong> for a deep placement reading", "Click any <strong>aspect line</strong> for its dynamic interpretation", "Click any <strong>house cusp</strong> for house themes", "Use the <strong>date controls</strong> to move through time"], modalText: "Your birth chart is now rendered \u2014 an exact celestial snapshot of the sky at your moment of birth." }, "bi-wheel": { stripIcon: "\u2295", stripTitle: "Welcome to the Bi-Wheel", stripHints: ["Click any <strong>inner planet</strong> for natal placement depth", "Click any <strong>outer planet</strong> for transit or synastry meaning", "Click a <strong>cross-aspect line</strong> for inter-chart dynamics", "Use the <strong>date controls</strong> to advance transits"], modalText: "Two charts are now layered \u2014 the inner wheel is your natal chart; the outer ring shows the second chart (transits or another person's planets)." }, bodygraph: { stripIcon: "\u25C8", stripTitle: "Welcome to your Bodygraph", stripHints: ["Click any <strong>center</strong> (defined or undefined) for its meaning", "Click any <strong>channel</strong> to explore its life theme", "Click any <strong>gate number</strong> for its I Ching hexagram reading", "Click a <strong>planet row</strong> in the sidebar for its HD role"], modalText: "Your bodygraph is now rendered \u2014 a living map of the energy centres, channels, and gates that define your design." }, "vedic-chart": { stripIcon: "\u{1F549}", stripTitle: "Welcome to your Jyotish Chart", stripHints: ["Click any <strong>rashi cell</strong> for its themes and any planets placed there", "The <strong>diagonal mark</strong> shows your Lagna (Ascendant) rashi", "Use the <strong>action bar</strong> for a full chart interpretation", "Click <strong>Moon &amp; Nakshatra</strong> for lunar mansion detail"], modalText: "Your Vedic birth chart is now rendered as a South Indian Rashi grid \u2014 sidereal planetary placements by fixed sign." }, "transit-timeline": { stripIcon: "\u2604", stripTitle: "Welcome to your Transit Timeline", stripHints: ["Each entry is an <strong>exact transit hit</strong> \u2014 a transiting planet contacting a natal point", "Events are <strong>grouped by month</strong> in chronological order", "The <strong>\u211E marker</strong> flags a retrograde crossing", "Click any transit for a focused <strong>interpretation</strong>"], modalText: "This timeline lists upcoming transits to your natal chart \u2014 the exact dates outer-planet energies activate your placements." }, "moon-phase": { stripIcon: "\u263E", stripTitle: "Welcome to the Moon Phase dial", stripHints: ["Click the <strong>Moon</strong> for its phase interpretation", "Click the <strong>Void-of-Course</strong> card when the Moon is VOC", "Use the <strong>date control</strong> to move the sky to any moment"], modalText: "The dial shows the Moon's live illumination, phase, sign, and void-of-course status \u2014 a snapshot of tonight's sky." }, bazi: { stripIcon: "\u56DB", stripTitle: "Welcome to your BaZi Chart", stripHints: ["Click any <strong>pillar</strong> (Year, Month, Day, Hour) for its interpretation", "The <strong>Day Master</strong> is your core identity element", "The <strong>Wu Xing bar</strong> shows your Five Element balance"], modalText: "Your BaZi (Four Pillars of Destiny) chart is now rendered \u2014 a map of the Heavenly Stems and Earthly Branches present at your moment of birth." } }, A_ = '\n .oe-welcome-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: oklch(0% 0 0 / 0.55);\n backdrop-filter: blur(8px);\n -webkit-backdrop-filter: blur(8px);\n z-index: 9999;\n display: flex;\n align-items: center;\n justify-content: center;\n animation: oe-fade-in 0.4s ease both;\n font-family: system-ui, sans-serif;\n }\n\n .oe-welcome-modal {\n background: oklch(11% 0.010 265);\n border: 1px solid var(--gold-glow, oklch(72% 0.12 80 / 0.20));\n border-radius: 16px;\n padding: 32px;\n width: 90%;\n max-width: 440px;\n box-shadow: 0 20px 40px oklch(0% 0 0 / 0.55), inset 0 1px 0 oklch(100% 0 0 / 0.06);\n animation: oe-modal-in 0.5s cubic-bezier(0.22, 1, 0.36, 1) both;\n display: flex;\n flex-direction: column;\n gap: 20px;\n }\n\n @keyframes oe-fade-in {\n from { opacity: 0; }\n to { opacity: 1; }\n }\n\n @keyframes oe-modal-in {\n from { opacity: 0; transform: scale(0.95) translateY(10px); }\n to { opacity: 1; transform: scale(1) translateY(0); }\n }\n\n .oe-welcome-header {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 4px;\n }\n\n .oe-welcome-icon {\n font-size: 28px;\n color: var(--gold, oklch(72% 0.12 80));\n line-height: 1;\n text-shadow: 0 0 10px var(--gold-glow, oklch(72% 0.12 80 / 0.30));\n }\n\n .oe-welcome-title {\n font-size: 20px;\n font-weight: 600;\n color: var(--text, oklch(92% 0.006 265));\n margin: 0;\n letter-spacing: 0.02em;\n }\n\n .oe-welcome-text {\n font-size: 14.5px;\n line-height: 1.5;\n color: var(--text-secondary, oklch(68% 0.008 265));\n margin: 0;\n }\n\n .oe-welcome-hints {\n display: flex;\n flex-direction: column;\n gap: 12px;\n margin: 8px 0 12px 0;\n padding: 0;\n list-style: none;\n }\n\n .oe-welcome-hints li {\n font-size: 13.5px;\n line-height: 1.4;\n color: var(--text-secondary, oklch(68% 0.008 265));\n display: flex;\n align-items: flex-start;\n gap: 10px;\n opacity: 0;\n animation: oe-fade-in 0.4s ease forwards;\n }\n\n /* Stagger the hints */\n .oe-welcome-hints li:nth-child(1) { animation-delay: 0.15s; }\n .oe-welcome-hints li:nth-child(2) { animation-delay: 0.25s; }\n .oe-welcome-hints li:nth-child(3) { animation-delay: 0.35s; }\n .oe-welcome-hints li:nth-child(4) { animation-delay: 0.45s; }\n\n .oe-welcome-hints li::before {\n content: "\u2726";\n color: var(--gold-dim, oklch(52% 0.06 80));\n font-size: 12px;\n padding-top: 2px;\n }\n\n .oe-welcome-hints strong {\n color: var(--text, oklch(92% 0.006 265));\n font-weight: 600;\n }\n\n .oe-welcome-button {\n align-self: flex-end;\n background: var(--gold-subtle, oklch(72% 0.12 80 / 0.10));\n color: var(--gold, oklch(72% 0.12 80));\n border: 1px solid var(--gold-glow, oklch(72% 0.12 80 / 0.20));\n padding: 10px 24px;\n border-radius: 8px;\n font-size: 14px;\n font-weight: 600;\n cursor: pointer;\n transition: background 0.2s ease, border-color 0.2s ease;\n margin-top: 4px;\n }\n\n .oe-welcome-button:hover {\n background: oklch(72% 0.12 80 / 0.18);\n border-color: oklch(72% 0.12 80 / 0.40);\n }\n\n .oe-welcome-button:focus-visible {\n outline: 2px solid var(--gold, oklch(72% 0.12 80));\n outline-offset: 2px;\n }\n\n .oe-welcome-backdrop.is-dismissing {\n animation: oe-fade-out 0.3s ease forwards;\n }\n\n .oe-welcome-backdrop.is-dismissing .oe-welcome-modal {\n animation: oe-modal-out 0.3s cubic-bezier(0.22, 1, 0.36, 1) forwards;\n }\n\n @keyframes oe-fade-out {\n to { opacity: 0; }\n }\n\n @keyframes oe-modal-out {\n to { opacity: 0; transform: scale(0.95) translateY(10px); }\n }\n';
6983
+ function j_() {
6967
6984
  if (document.getElementById("oe-first-run-styles")) return;
6968
6985
  let e4 = document.createElement("style");
6969
- e4.id = "oe-first-run-styles", e4.textContent = k_, document.head.appendChild(e4);
6986
+ e4.id = "oe-first-run-styles", e4.textContent = A_, document.head.appendChild(e4);
6970
6987
  }
6971
- function j_(e4, t2) {
6988
+ function M_(e4, t2) {
6972
6989
  let n2 = document.activeElement, r2 = document.createElement("div");
6973
6990
  r2.className = "oe-welcome-backdrop";
6974
6991
  let i2 = document.createElement("div");
@@ -6978,7 +6995,7 @@ function j_(e4, t2) {
6978
6995
  let o2 = i2.querySelector(".oe-welcome-button"), s2 = () => {
6979
6996
  r2.classList.add("is-dismissing"), r2.addEventListener("animationend", () => {
6980
6997
  r2.remove(), n2 == null || n2.focus();
6981
- }, { once: true }), D_(t2);
6998
+ }, { once: true }), O_(t2);
6982
6999
  };
6983
7000
  return o2.addEventListener("click", s2), r2.addEventListener("click", (e5) => {
6984
7001
  e5.target === r2 && s2();
@@ -6986,14 +7003,14 @@ function j_(e4, t2) {
6986
7003
  e5.key === "Escape" && (e5.preventDefault(), s2()), e5.key === "Tab" && (e5.preventDefault(), o2.focus());
6987
7004
  }), requestAnimationFrame(() => o2.focus()), r2;
6988
7005
  }
6989
- function M_(e4, t2) {
6990
- if (E_(e4)) return;
6991
- let n2 = O_[e4];
6992
- A_();
6993
- let r2 = j_(n2, e4);
7006
+ function N_(e4, t2) {
7007
+ if (D_(e4)) return;
7008
+ let n2 = k_[e4];
7009
+ j_();
7010
+ let r2 = M_(n2, e4);
6994
7011
  document.body.appendChild(r2);
6995
7012
  }
6996
- function N_(e4) {
7013
+ function P_(e4) {
6997
7014
  var t2;
6998
7015
  if (!e4) return null;
6999
7016
  if (e4.structuredContent != null && typeof e4.structuredContent == "object") return e4.structuredContent;
@@ -7006,17 +7023,17 @@ function N_(e4) {
7006
7023
  }
7007
7024
  return null;
7008
7025
  }
7009
- function P_(e4) {
7026
+ function F_(e4) {
7010
7027
  return e4.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;");
7011
7028
  }
7012
- function F_(e4) {
7013
- let { container: t2, message: n2, onRetry: r2, retryLabel: i2 = "\u21BA Try again" } = e4, a2 = r2 ? '<button class="error-retry-btn" type="button">'.concat(P_(i2), "</button>") : "";
7014
- if (t2.innerHTML = '<div class="error-state" role="alert"><div class="error-icon" aria-hidden="true">\u26A0\uFE0F</div><p class="error-msg">'.concat(P_(n2), "</p>") + a2 + "</div>", t2.removeAttribute("hidden"), r2) {
7029
+ function I_(e4) {
7030
+ let { container: t2, message: n2, onRetry: r2, retryLabel: i2 = "\u21BA Try again" } = e4, a2 = r2 ? '<button class="error-retry-btn" type="button">'.concat(F_(i2), "</button>") : "";
7031
+ if (t2.innerHTML = '<div class="error-state" role="alert"><div class="error-icon" aria-hidden="true">\u26A0\uFE0F</div><p class="error-msg">'.concat(F_(n2), "</p>") + a2 + "</div>", t2.removeAttribute("hidden"), r2) {
7015
7032
  var o2;
7016
7033
  (o2 = t2.querySelector(".error-retry-btn")) == null || o2.addEventListener("click", r2);
7017
7034
  }
7018
7035
  }
7019
- function I_() {
7036
+ function L_() {
7020
7037
  let e4 = window.matchMedia("(prefers-color-scheme: dark)").matches;
7021
7038
  if (!e4) try {
7022
7039
  let t2 = getComputedStyle(document.body).backgroundColor;
@@ -7031,7 +7048,7 @@ function I_() {
7031
7048
  }
7032
7049
  return e4;
7033
7050
  }
7034
- function L_(e4, t2, n2 = []) {
7051
+ function R_(e4, t2, n2 = []) {
7035
7052
  var r2, i2;
7036
7053
  if (!t2 || t2.querySelector("#btn-fullscreen")) return;
7037
7054
  let a2 = document.createElement("button");
@@ -7114,14 +7131,14 @@ function L_(e4, t2, n2 = []) {
7114
7131
  }, 4e3);
7115
7132
  }
7116
7133
  }
7117
- function R_(e4, t2) {
7134
+ function z_(e4, t2) {
7118
7135
  e4.ontoolcancelled = (e5) => {
7119
7136
  var n2, r2, i2;
7120
7137
  let a2 = (n2 = e5.reason) == null ? "Tool call was cancelled" : n2;
7121
- console.warn("[AppChrome] Tool cancelled:", a2), (r2 = t2.statusFn) == null || r2.call(t2, null), !t2.loadingEl.hidden && t2.loadingEl.getAttribute("hidden") === null && (t2.loadingEl.setAttribute("hidden", ""), t2.contentEl.removeAttribute("hidden")), (i2 = t2.paramControls) == null || i2.setBusy(false), z_(a2);
7138
+ console.warn("[AppChrome] Tool cancelled:", a2), (r2 = t2.statusFn) == null || r2.call(t2, null), !t2.loadingEl.hidden && t2.loadingEl.getAttribute("hidden") === null && (t2.loadingEl.setAttribute("hidden", ""), t2.contentEl.removeAttribute("hidden")), (i2 = t2.paramControls) == null || i2.setBusy(false), B_(a2);
7122
7139
  };
7123
7140
  }
7124
- function z_(e4) {
7141
+ function B_(e4) {
7125
7142
  var t2;
7126
7143
  (t2 = document.getElementById("cancel-toast")) == null || t2.remove();
7127
7144
  let n2 = document.createElement("div");
@@ -7129,7 +7146,7 @@ function z_(e4) {
7129
7146
  n2.classList.remove("visible"), setTimeout(() => n2.remove(), 300);
7130
7147
  }, 3e3);
7131
7148
  }
7132
- function B_(e4) {
7149
+ function V_(e4) {
7133
7150
  var t2;
7134
7151
  function n2(e5) {
7135
7152
  if (!e5) return;
@@ -7142,59 +7159,119 @@ function B_(e4) {
7142
7159
  n2(e5);
7143
7160
  });
7144
7161
  }
7145
- var V_ = document.getElementById("loading-state"), H_ = document.getElementById("bodygraph-container"), U_ = document.getElementById("info-panel"), W_ = document.getElementById("controls-panel"), G_ = document.getElementById("chart-status"), K_ = document.getElementById("param-controls-container"), Q = new e_({ name: "Human Design Bodygraph Explorer", version: "1.0.0" }), $ = null, q_ = null, J_ = false, Y_ = "dark", X_ = false, Z_ = {};
7146
- function Q_() {
7147
- delete Z_.light, delete Z_.dark;
7162
+ var H_ = document.getElementById("loading-state"), U_ = document.getElementById("bodygraph-container"), W_ = document.getElementById("info-panel"), G_ = document.getElementById("controls-panel"), K_ = document.getElementById("chart-status"), q_ = document.getElementById("param-controls-container"), Z = new t_({ name: "Human Design Bodygraph Explorer", version: "1.0.0" }), Q = null, J_ = null, Y_ = false, X_ = "dark", Z_ = false, $ = "graph", Q_ = false, $_ = false, ev = false, tv = "quarter,zodiac,planets";
7163
+ function nv(e4) {
7164
+ return e4 === "mandala" && $_;
7165
+ }
7166
+ function rv() {
7167
+ let e4 = Q == null ? void 0 : Q._birth_params;
7168
+ return typeof (e4 == null ? void 0 : e4.latitude) == "number" && typeof (e4 == null ? void 0 : e4.longitude) == "number";
7169
+ }
7170
+ function iv(e4 = $, t2 = nv(e4)) {
7171
+ return e4 === "mandala" ? { layout: e4, rings: t2 ? "".concat(tv, ",houses") : tv } : { layout: e4 };
7172
+ }
7173
+ var av = {};
7174
+ function ov(e4, t2, n2) {
7175
+ return "".concat(e4, ":").concat(t2, ":").concat(n2);
7148
7176
  }
7149
- function $_() {
7150
- return I_() ? "dark" : "light";
7177
+ function sv() {
7178
+ for (let e4 of Object.keys(av)) delete av[e4];
7151
7179
  }
7152
- async function ev(e4) {
7153
- if (e4 === Y_ || X_ || !$) return;
7154
- let t2 = Z_[e4];
7180
+ function cv() {
7181
+ return L_() ? "dark" : "light";
7182
+ }
7183
+ async function lv(e4) {
7184
+ if (e4 === X_ || Z_ || !Q) return;
7185
+ let t2 = av[ov($, e4, nv($))];
7155
7186
  if (t2) {
7156
- Y_ = e4, uv(t2);
7187
+ X_ = e4, Sv(t2);
7157
7188
  return;
7158
7189
  }
7159
- X_ = true, Y_ = e4;
7160
- let n2 = $._refetch;
7190
+ Z_ = true, X_ = e4;
7191
+ let n2 = Q._refetch;
7161
7192
  try {
7162
7193
  let t3;
7163
- if (n2) t3 = await Q.callServerTool({ name: n2.tool, arguments: { ...n2.args, theme: e4 } });
7194
+ if (n2) t3 = await Z.callServerTool({ name: n2.tool, arguments: { ...n2.args, theme: e4 } });
7164
7195
  else {
7165
7196
  var r2, i2, a2, o2, s2;
7166
- let n3 = (r2 = $._birth_params) == null ? { datetime: "" } : r2;
7167
- t3 = await Q.callServerTool({ name: "bodygraph_recalculate", arguments: { datetime: n3.datetime, latitude: (i2 = n3.latitude) == null ? void 0 : i2, longitude: (a2 = n3.longitude) == null ? void 0 : a2, timezone: (o2 = n3.timezone) == null ? void 0 : o2, location: (s2 = n3.location) == null ? void 0 : s2, theme: e4 } });
7197
+ let n3 = (r2 = Q._birth_params) == null ? { datetime: "" } : r2;
7198
+ t3 = await Z.callServerTool({ name: "bodygraph_recalculate", arguments: { datetime: n3.datetime, latitude: (i2 = n3.latitude) == null ? void 0 : i2, longitude: (a2 = n3.longitude) == null ? void 0 : a2, timezone: (o2 = n3.timezone) == null ? void 0 : o2, location: (s2 = n3.location) == null ? void 0 : s2, theme: e4, ...iv() } });
7168
7199
  }
7169
- let c2 = gv(N_(t3));
7170
- c2 && (c2.type || c2.centers) && (Z_[e4] = c2, uv(c2));
7200
+ let c2 = Ov(P_(t3));
7201
+ c2 && (c2.type || c2.centers) && (av[ov($, e4, nv($))] = c2, Sv(c2));
7171
7202
  } catch (e5) {
7172
7203
  console.error("[Bodygraph] Theme re-fetch failed:", e5);
7173
7204
  } finally {
7174
- X_ = false;
7205
+ Z_ = false;
7175
7206
  }
7176
7207
  }
7177
- async function tv(e4) {
7208
+ async function uv() {
7209
+ if (!Q || Q_ || Z_) return;
7210
+ let e4 = $ === "graph" ? "mandala" : "graph", t2 = av[ov(e4, X_, nv(e4))];
7211
+ if (t2) {
7212
+ $ = e4, Sv(t2);
7213
+ return;
7214
+ }
7215
+ Q_ = true;
7216
+ let n2 = document.getElementById("hd-layout-btn");
7217
+ n2 && (n2.disabled = true);
7178
7218
  try {
7179
- (await Q.sendMessage({ role: "user", content: [{ type: "text", text: e4 }] })).isError && console.error("[Bodygraph] Host rejected sendMessage");
7219
+ var r2, i2, a2, o2, s2;
7220
+ let t3 = (r2 = Q._birth_params) == null ? { datetime: "" } : r2, n3 = Ov(P_(await Z.callServerTool({ name: "bodygraph_recalculate", arguments: { datetime: t3.datetime, latitude: (i2 = t3.latitude) == null ? void 0 : i2, longitude: (a2 = t3.longitude) == null ? void 0 : a2, timezone: (o2 = t3.timezone) == null ? void 0 : o2, location: (s2 = t3.location) == null ? void 0 : s2, theme: X_, ...iv(e4) } })));
7221
+ n3 && (n3.type || n3.centers) && ($ = e4, av[ov($, X_, nv($))] = n3, Sv(n3));
7222
+ } catch (e5) {
7223
+ console.error("[Bodygraph] Layout toggle failed:", e5);
7224
+ } finally {
7225
+ Q_ = false;
7226
+ let e5 = document.getElementById("hd-layout-btn");
7227
+ e5 && (e5.disabled = false);
7228
+ }
7229
+ }
7230
+ function dv() {
7231
+ $_ && !rv() && ($_ = false), J_ == null || J_.syncExtraToggle({ checked: $_, available: $ === "mandala" && rv(), disabledTitle: $ === "mandala" ? "Add a birth location to draw houses" : "Switch to Mandala view to add house rings" });
7232
+ }
7233
+ async function fv(e4) {
7234
+ if (!Q || $ !== "mandala" || ev) {
7235
+ dv();
7236
+ return;
7237
+ }
7238
+ let t2 = av[ov($, X_, e4)];
7239
+ if (t2) {
7240
+ $_ = e4, Sv(t2);
7241
+ return;
7242
+ }
7243
+ ev = true, J_ == null || J_.syncExtraToggle({ available: false });
7244
+ try {
7245
+ var n2, r2, i2, a2, o2;
7246
+ let t3 = (n2 = Q._birth_params) == null ? { datetime: "" } : n2, s2 = Ov(P_(await Z.callServerTool({ name: "bodygraph_recalculate", arguments: { datetime: t3.datetime, latitude: (r2 = t3.latitude) == null ? void 0 : r2, longitude: (i2 = t3.longitude) == null ? void 0 : i2, timezone: (a2 = t3.timezone) == null ? void 0 : a2, location: (o2 = t3.location) == null ? void 0 : o2, theme: X_, ...iv($, e4) } })));
7247
+ s2 && (s2.type || s2.centers) && ($_ = e4, av[ov($, X_, e4)] = s2, Sv(s2));
7248
+ } catch (e5) {
7249
+ console.error("[Bodygraph] House ring toggle failed:", e5);
7250
+ } finally {
7251
+ ev = false, dv();
7252
+ }
7253
+ }
7254
+ async function pv(e4) {
7255
+ try {
7256
+ (await Z.sendMessage({ role: "user", content: [{ type: "text", text: e4 }] })).isError && console.error("[Bodygraph] Host rejected sendMessage");
7180
7257
  } catch (e5) {
7181
7258
  console.error("[Bodygraph] sendMessage failed:", e5);
7182
7259
  }
7183
7260
  }
7184
- function nv(e4) {
7185
- if (G_) {
7261
+ function mv(e4) {
7262
+ if (K_) {
7186
7263
  if (!e4) {
7187
- G_.classList.remove("visible");
7264
+ K_.classList.remove("visible");
7188
7265
  return;
7189
7266
  }
7190
- G_.textContent = "\xB7 ".concat(e4), G_.classList.add("visible");
7267
+ K_.textContent = "\xB7 ".concat(e4), K_.classList.add("visible");
7191
7268
  }
7192
7269
  }
7193
- n_(nv);
7194
- async function rv(e4) {
7270
+ r_(mv);
7271
+ async function hv(e4) {
7195
7272
  var t2, n2, r2, i2;
7196
- if (!$) return;
7197
- let a2 = (t2 = $.type) == null ? "Unknown" : t2, o2 = (n2 = $.profile) == null ? "" : n2, s2 = (r2 = $.authority) == null ? "" : r2, c2 = (i2 = $.incarnation_cross) == null ? "" : i2, l2 = "";
7273
+ if (!Q) return;
7274
+ let a2 = (t2 = Q.type) == null ? "Unknown" : t2, o2 = (n2 = Q.profile) == null ? "" : n2, s2 = (r2 = Q.authority) == null ? "" : r2, c2 = (i2 = Q.incarnation_cross) == null ? "" : i2, l2 = "";
7198
7275
  if (e4.type === "center") {
7199
7276
  var u2;
7200
7277
  let t3 = e4.data, n3 = String(t3.center_name), r3 = !!t3.defined, i3 = (u2 = t3.active_gates) == null ? [] : u2, d3 = i3.length ? "Active gates: ".concat(i3.join(", ")) : "No active gates";
@@ -7213,7 +7290,7 @@ async function rv(e4) {
7213
7290
  let t3 = e4.data;
7214
7291
  try {
7215
7292
  var m2, h2;
7216
- await Q.callServerTool({ name: "hd_on_planet_click", arguments: { planet: String((m2 = t3.planet) == null ? "" : m2), gate: t3.gate == null ? void 0 : Number(t3.gate), line: t3.line == null ? void 0 : Number(t3.line), column: String((h2 = t3.side) == null ? "personality" : h2) } });
7293
+ await Z.callServerTool({ name: "hd_on_planet_click", arguments: { planet: String((m2 = t3.planet) == null ? "" : m2), gate: t3.gate == null ? void 0 : Number(t3.gate), line: t3.line == null ? void 0 : Number(t3.line), column: String((h2 = t3.side) == null ? "personality" : h2) } });
7217
7294
  } catch (e5) {
7218
7295
  console.error("[Bodygraph] hd_on_planet_click failed:", e5);
7219
7296
  }
@@ -7222,119 +7299,120 @@ async function rv(e4) {
7222
7299
  let t3 = e4.data;
7223
7300
  try {
7224
7301
  var g2, _2;
7225
- await Q.callServerTool({ name: "hd_on_variable_click", arguments: { variable: String((g2 = t3.name) == null ? "" : g2).toLowerCase(), direction: String((_2 = t3.direction) == null ? "right" : _2), tone: t3.tone == null ? void 0 : Number(t3.tone), color: t3.color == null ? void 0 : Number(t3.color) } });
7302
+ await Z.callServerTool({ name: "hd_on_variable_click", arguments: { variable: String((g2 = t3.name) == null ? "" : g2).toLowerCase(), direction: String((_2 = t3.direction) == null ? "right" : _2), tone: t3.tone == null ? void 0 : Number(t3.tone), color: t3.color == null ? void 0 : Number(t3.color) } });
7226
7303
  } catch (e5) {
7227
7304
  console.error("[Bodygraph] hd_on_variable_click failed:", e5);
7228
7305
  }
7229
7306
  return;
7230
7307
  }
7231
- l2 && await tv(l2);
7308
+ l2 && await pv(l2);
7232
7309
  }
7233
- async function iv() {
7310
+ async function gv() {
7234
7311
  var e4, t2, n2, r2, i2, a2, o2;
7235
- if (!$) return;
7236
- let s2 = $, c2 = (e4 = s2.type) == null ? "Unknown" : e4, l2 = (t2 = s2.profile) == null ? "" : t2, u2 = (n2 = s2.authority) == null ? "" : n2, d2 = (r2 = s2.incarnation_cross) == null ? "" : r2, f2 = (i2 = s2.definition) == null ? "" : i2, p2 = ((a2 = s2.centers) == null ? [] : a2).filter((e5) => e5.defined).map((e5) => e5.name).join(", ") || "none", m2 = ((o2 = s2.channels) == null ? [] : o2).filter((e5) => e5.defined).map((e5) => {
7312
+ if (!Q) return;
7313
+ let s2 = Q, c2 = (e4 = s2.type) == null ? "Unknown" : e4, l2 = (t2 = s2.profile) == null ? "" : t2, u2 = (n2 = s2.authority) == null ? "" : n2, d2 = (r2 = s2.incarnation_cross) == null ? "" : r2, f2 = (i2 = s2.definition) == null ? "" : i2, p2 = ((a2 = s2.centers) == null ? [] : a2).filter((e5) => e5.defined).map((e5) => e5.name).join(", ") || "none", m2 = ((o2 = s2.channels) == null ? [] : o2).filter((e5) => e5.defined).map((e5) => {
7237
7314
  var t3;
7238
7315
  return (t3 = e5.id) == null ? "".concat(e5.gate1, "-").concat(e5.gate2) : t3;
7239
7316
  }).join(", ") || "none";
7240
- await tv("Please give me a complete Human Design reading for this chart.\n\nType: ".concat(c2, "\n") + (l2 ? "Profile: ".concat(l2, "\n") : "") + (u2 ? "Authority: ".concat(u2, "\n") : "") + (f2 ? "Definition: ".concat(f2, "\n") : "") + (d2 ? "Incarnation Cross: ".concat(d2, "\n") : "") + "Defined Centers: ".concat(p2, "\nDefined Channels: ").concat(m2, "\n\nCover: (1) Life theme and purpose of this Type, (2) Strategy and how it works practically, (3) Authority and how to make aligned decisions, (4) The defined channels as core personality traits, (5) Key shadows and conditioning to watch for, (6) A practical summary of how to live this design."));
7317
+ await pv("Please give me a complete Human Design reading for this chart.\n\nType: ".concat(c2, "\n") + (l2 ? "Profile: ".concat(l2, "\n") : "") + (u2 ? "Authority: ".concat(u2, "\n") : "") + (f2 ? "Definition: ".concat(f2, "\n") : "") + (d2 ? "Incarnation Cross: ".concat(d2, "\n") : "") + "Defined Centers: ".concat(p2, "\nDefined Channels: ").concat(m2, "\n\nCover: (1) Life theme and purpose of this Type, (2) Strategy and how it works practically, (3) Authority and how to make aligned decisions, (4) The defined channels as core personality traits, (5) Key shadows and conditioning to watch for, (6) A practical summary of how to live this design."));
7241
7318
  }
7242
- async function av() {
7319
+ async function _v() {
7243
7320
  var e4, t2, n2, r2, i2;
7244
- if (!$) return;
7245
- let a2 = $, o2 = (e4 = a2.type) == null ? "Unknown" : e4, s2 = (t2 = a2.profile) == null ? "" : t2, c2 = (n2 = a2.authority) == null ? "" : n2, l2 = [...(r2 = a2.personality_gates) == null ? [] : r2, ...(i2 = a2.design_gates) == null ? [] : i2].slice(0, 6).map((e5) => {
7321
+ if (!Q) return;
7322
+ let a2 = Q, o2 = (e4 = a2.type) == null ? "Unknown" : e4, s2 = (t2 = a2.profile) == null ? "" : t2, c2 = (n2 = a2.authority) == null ? "" : n2, l2 = [...(r2 = a2.personality_gates) == null ? [] : r2, ...(i2 = a2.design_gates) == null ? [] : i2].slice(0, 6).map((e5) => {
7246
7323
  var t3;
7247
7324
  return typeof e5 == "number" ? "Gate ".concat(e5) : "Gate ".concat((t3 = e5.gate) == null ? e5 : t3);
7248
7325
  }).join(", ") || "none";
7249
- await tv("I'm exploring a Human Design Bodygraph for a ".concat(o2) + (s2 ? " with Profile ".concat(s2) : "") + (c2 ? " and ".concat(c2, " authority") : "") + ". Active gates include: ".concat(l2, ".\n\nBased on this design, please suggest 3-4 specific, insightful questions I could ask to understand this chart more deeply \u2014 such as how the type and authority work in daily life, what specific gates or channels mean, or how to live in alignment with this design. Present each as a tappable question I can ask you."));
7326
+ await pv("I'm exploring a Human Design Bodygraph for a ".concat(o2) + (s2 ? " with Profile ".concat(s2) : "") + (c2 ? " and ".concat(c2, " authority") : "") + ". Active gates include: ".concat(l2, ".\n\nBased on this design, please suggest 3-4 specific, insightful questions I could ask to understand this chart more deeply \u2014 such as how the type and authority work in daily life, what specific gates or channels mean, or how to live in alignment with this design. Present each as a tappable question I can ask you."));
7250
7327
  }
7251
- async function ov(e4) {
7252
- J_ && setTimeout(async () => {
7328
+ async function vv(e4) {
7329
+ Y_ && setTimeout(async () => {
7253
7330
  try {
7254
7331
  var t2, n2, r2;
7255
- let i2 = "User selected ".concat(e4.type, ": ").concat(JSON.stringify(e4.data, null, 2), "\nHD Type: ").concat((t2 = $ == null ? void 0 : $.type) == null ? null : t2, "\nProfile: ").concat((n2 = $ == null ? void 0 : $.profile) == null ? null : n2, "\nAuthority: ").concat((r2 = $ == null ? void 0 : $.authority) == null ? null : r2);
7256
- await Q.updateModelContext({ content: [{ type: "text", text: i2 }] });
7332
+ let i2 = "User selected ".concat(e4.type, ": ").concat(JSON.stringify(e4.data, null, 2), "\nHD Type: ").concat((t2 = Q == null ? void 0 : Q.type) == null ? null : t2, "\nProfile: ").concat((n2 = Q == null ? void 0 : Q.profile) == null ? null : n2, "\nAuthority: ").concat((r2 = Q == null ? void 0 : Q.authority) == null ? null : r2);
7333
+ await Z.updateModelContext({ content: [{ type: "text", text: i2 }] });
7257
7334
  } catch (e5) {
7258
- J_ = false;
7335
+ Y_ = false;
7259
7336
  }
7260
7337
  }, 0);
7261
7338
  }
7262
- async function sv(e4, t2, n2) {
7263
- nv("".concat(t2 ? "\u25C9" : "\u25CB", " ").concat(e4, " Center (").concat(t2 ? "defined" : "undefined", ")")), ov({ type: "center", data: { center_name: e4, defined: t2, active_gates: n2 } });
7339
+ async function yv(e4, t2, n2) {
7340
+ mv("".concat(t2 ? "\u25C9" : "\u25CB", " ").concat(e4, " Center (").concat(t2 ? "defined" : "undefined", ")")), vv({ type: "center", data: { center_name: e4, defined: t2, active_gates: n2 } });
7264
7341
  }
7265
- async function cv(e4, t2, n2) {
7266
- nv("Gate ".concat(e4, " \xB7 ").concat(n2, " \xB7 ").concat(t2 === true ? "Conscious" : t2 === false ? "Unconscious" : "Both")), ov({ type: "gate", data: { gate: e4, conscious: t2, center: n2 } });
7342
+ async function bv(e4, t2, n2) {
7343
+ mv("Gate ".concat(e4, " \xB7 ").concat(n2, " \xB7 ").concat(t2 === true ? "Conscious" : t2 === false ? "Unconscious" : "Both")), vv({ type: "gate", data: { gate: e4, conscious: t2, center: n2 } });
7267
7344
  }
7268
- async function lv(e4, t2, n2, r2, i2, a2) {
7269
- nv("Channel ".concat(e4, " \xB7 ").concat(r2, "\u2013").concat(i2)), ov({ type: "channel", data: { channel: e4, gate1: t2, gate2: n2, center1: r2, center2: i2, color_type: a2 } });
7345
+ async function xv(e4, t2, n2, r2, i2, a2) {
7346
+ mv("Channel ".concat(e4, " \xB7 ").concat(r2, "\u2013").concat(i2)), vv({ type: "channel", data: { channel: e4, gate1: t2, gate2: n2, center1: r2, center2: i2, color_type: a2 } });
7270
7347
  }
7271
- function uv(e4) {
7272
- var t2, n2, r2, i2, a2, o2, s2, c2, l2, u2, d2, f2;
7273
- $ = e4, V_.setAttribute("hidden", ""), H_.removeAttribute("hidden");
7274
- let p2 = e4._svg;
7275
- if (!p2) {
7276
- pv("Bodygraph render unavailable \u2014 the server did not return an SVG.", mv);
7348
+ function Sv(e4) {
7349
+ var t2, n2, r2, i2, a2, o2, s2, c2, l2, u2, d2, f2, p2;
7350
+ Q = e4, H_.setAttribute("hidden", ""), U_.removeAttribute("hidden"), document.body.classList.toggle("layout-mandala", $ === "mandala"), dv();
7351
+ let m2 = e4._svg;
7352
+ if (!m2) {
7353
+ Tv("Bodygraph render unavailable \u2014 the server did not return an SVG.", Ev);
7277
7354
  return;
7278
7355
  }
7279
- let m2 = x_(H_, p2, e4, { onCenterClick: sv, onGateClick: cv, onChannelClick: lv, onAskClaude: rv });
7280
- m2 && new URLSearchParams(window.location.search).has("debugHighlight") && hv(m2);
7281
- let h2 = document.getElementById("hd-action-bar");
7282
- if (!h2) {
7283
- h2 = document.createElement("div"), h2.id = "hd-action-bar", h2.className = "hd-action-bar";
7356
+ let h2 = S_(U_, m2, e4, { onCenterClick: yv, onGateClick: bv, onChannelClick: xv, onAskClaude: hv });
7357
+ h2 && new URLSearchParams(window.location.search).has("debugHighlight") && Dv(h2);
7358
+ let g2 = document.getElementById("hd-action-bar");
7359
+ if (!g2) {
7360
+ g2 = document.createElement("div"), g2.id = "hd-action-bar", g2.className = "hd-action-bar";
7284
7361
  let e5 = document.querySelector("#fs-bottom-bar [data-column='right']");
7285
- if (e5) e5.appendChild(h2);
7362
+ if (e5) e5.appendChild(g2);
7286
7363
  else {
7287
- var g2;
7288
- (g2 = H_.parentElement) == null || g2.insertBefore(h2, H_);
7364
+ var _2;
7365
+ (_2 = U_.parentElement) == null || _2.insertBefore(g2, U_);
7289
7366
  }
7290
7367
  }
7291
- h2.innerHTML = '\n <button class="action-btn action-btn--primary" id="hd-interpret-btn">\u2728 Interpret this chart</button>\n <button class="action-btn" id="hd-questions-btn">\u{1F52E} What should I ask?</button>\n ', (t2 = h2.querySelector("#hd-interpret-btn")) == null || t2.addEventListener("click", () => void iv()), (n2 = h2.querySelector("#hd-questions-btn")) == null || n2.addEventListener("click", () => void av());
7292
- let _2 = ((r2 = (i2 = e4.personality_gates) == null ? void 0 : i2.length) == null ? 0 : r2) > 0 || ((a2 = (o2 = e4.design_gates) == null ? void 0 : o2.length) == null ? 0 : a2) > 0, ee2 = document.querySelector(".channel-legend");
7293
- if (_2 && !ee2) {
7368
+ let ee2 = e4._refetch ? "" : '<button class="action-btn" id="hd-layout-btn">'.concat($ === "mandala" ? "\u2726 Graph view" : "\u2726 Mandala view", "</button>");
7369
+ g2.innerHTML = '\n <button class="action-btn action-btn--primary" id="hd-interpret-btn">\u2728 Interpret this chart</button>\n <button class="action-btn" id="hd-questions-btn">\u{1F52E} What should I ask?</button>\n '.concat(ee2, "\n "), (t2 = g2.querySelector("#hd-interpret-btn")) == null || t2.addEventListener("click", () => void gv()), (n2 = g2.querySelector("#hd-questions-btn")) == null || n2.addEventListener("click", () => void _v()), (r2 = g2.querySelector("#hd-layout-btn")) == null || r2.addEventListener("click", () => void uv());
7370
+ let te2 = ((i2 = (a2 = e4.personality_gates) == null ? void 0 : a2.length) == null ? 0 : i2) > 0 || ((o2 = (s2 = e4.design_gates) == null ? void 0 : s2.length) == null ? 0 : o2) > 0, v2 = document.querySelector(".channel-legend");
7371
+ if (te2 && !v2) {
7294
7372
  let e5 = document.createElement("div");
7295
- e5.className = "channel-legend", e5.innerHTML = '\n <span class="legend-item">\n <span class="legend-swatch" style="background:#a5b4fc"></span>Conscious\n </span>\n <span class="legend-item">\n <span class="legend-swatch" style="background:#f87171"></span>Unconscious\n </span>\n <span class="legend-item">\n <span class="legend-swatch" style="background:#f59e0b"></span>Both\n </span>\n ', U_.prepend(e5);
7373
+ e5.className = "channel-legend", e5.innerHTML = '\n <span class="legend-item">\n <span class="legend-swatch" style="background:#a5b4fc"></span>Conscious\n </span>\n <span class="legend-item">\n <span class="legend-swatch" style="background:#f87171"></span>Unconscious\n </span>\n <span class="legend-item">\n <span class="legend-swatch" style="background:#f59e0b"></span>Both\n </span>\n ', W_.prepend(e5);
7296
7374
  }
7297
- let te2 = ((s2 = e4.centers) == null ? [] : s2).filter((e5) => e5.defined).map((e5) => e5.name);
7298
- U_.innerHTML = __((c2 = e4.type) == null ? "Unknown" : c2, (l2 = e4.profile) == null ? "" : l2, (u2 = e4.authority) == null ? "" : u2, (d2 = e4.definition) == null ? "" : d2, (f2 = e4.incarnation_cross) == null ? "" : f2, te2), U_.removeAttribute("hidden"), U_.querySelectorAll(".interactive-text").forEach((e5) => {
7375
+ let y2 = ((c2 = e4.centers) == null ? [] : c2).filter((e5) => e5.defined).map((e5) => e5.name);
7376
+ W_.innerHTML = v_((l2 = e4.type) == null ? "Unknown" : l2, (u2 = e4.profile) == null ? "" : u2, (d2 = e4.authority) == null ? "" : d2, (f2 = e4.definition) == null ? "" : f2, (p2 = e4.incarnation_cross) == null ? "" : p2, y2), W_.removeAttribute("hidden"), W_.querySelectorAll(".interactive-text").forEach((e5) => {
7299
7377
  e5.addEventListener("click", () => {
7300
7378
  let t3 = e5.getAttribute("data-topic"), n3 = e5.getAttribute("data-val");
7301
- t3 && n3 && rv({ type: "attribute", data: { topic: t3, val: n3 } });
7379
+ t3 && n3 && hv({ type: "attribute", data: { topic: t3, val: n3 } });
7302
7380
  }), e5.addEventListener("keydown", (t3) => {
7303
7381
  let n3 = t3;
7304
7382
  (n3.key === "Enter" || n3.key === " ") && (n3.preventDefault(), e5.dispatchEvent(new MouseEvent("click", { bubbles: true, cancelable: true })));
7305
7383
  });
7306
- }), W_.setAttribute("hidden", ""), K_.removeAttribute("hidden"), M_("bodygraph", H_);
7384
+ }), G_.setAttribute("hidden", ""), q_.removeAttribute("hidden"), N_("bodygraph", U_);
7307
7385
  }
7308
- var dv;
7309
- function fv() {
7310
- dv && (clearTimeout(dv), dv = void 0);
7386
+ var Cv;
7387
+ function wv() {
7388
+ Cv && (clearTimeout(Cv), Cv = void 0);
7311
7389
  }
7312
- function pv(e4, t2) {
7313
- fv(), V_.setAttribute("hidden", ""), F_({ container: H_, message: e4, onRetry: t2 });
7390
+ function Tv(e4, t2) {
7391
+ wv(), H_.setAttribute("hidden", ""), I_({ container: U_, message: e4, onRetry: t2 });
7314
7392
  }
7315
- function mv() {
7316
- fv(), H_.setAttribute("hidden", ""), V_.removeAttribute("hidden"), dv = setTimeout(() => {
7317
- pv("The bodygraph didn't load. Tap to try again.", mv);
7318
- }, 3e4), Q.sendMessage({ role: "user", content: [{ type: "text", text: "Please regenerate the Human Design bodygraph." }] }).catch(() => {
7393
+ function Ev() {
7394
+ wv(), U_.setAttribute("hidden", ""), H_.removeAttribute("hidden"), Cv = setTimeout(() => {
7395
+ Tv("The bodygraph didn't load. Tap to try again.", Ev);
7396
+ }, 3e4), Z.sendMessage({ role: "user", content: [{ type: "text", text: "Please regenerate the Human Design bodygraph." }] }).catch(() => {
7319
7397
  });
7320
7398
  }
7321
- function hv(e4) {
7399
+ function Dv(e4) {
7322
7400
  e4.addEventListener("click", (t2) => {
7323
7401
  let n2 = t2.target;
7324
7402
  for (; n2 && n2 !== e4; ) {
7325
7403
  if (n2.hasAttribute("data-gate")) {
7326
7404
  let t3 = Number(n2.getAttribute("data-gate"));
7327
7405
  if (t3) {
7328
- S_(e4, { gates: [t3] });
7406
+ C_(e4, { gates: [t3] });
7329
7407
  return;
7330
7408
  }
7331
7409
  }
7332
7410
  n2 = n2.parentElement;
7333
7411
  }
7334
- S_(e4, {});
7412
+ C_(e4, {});
7335
7413
  });
7336
7414
  }
7337
- function gv(e4) {
7415
+ function Ov(e4) {
7338
7416
  var t2;
7339
7417
  if (!e4) return null;
7340
7418
  if (e4.type || e4.centers) return e4;
@@ -7346,15 +7424,15 @@ function gv(e4) {
7346
7424
  }
7347
7425
  return null;
7348
7426
  }
7349
- Q.ontoolresult = (e4) => {
7350
- fv();
7427
+ Z.ontoolresult = (e4) => {
7428
+ wv();
7351
7429
  try {
7352
- let a2 = gv(N_(e4)), o2 = a2 == null ? void 0 : a2._theme;
7353
- if ((o2 === "light" || o2 === "dark") && (Y_ = o2), !a2) {
7354
- pv("Bodygraph data could not be parsed from the server response.", mv);
7430
+ let a2 = Ov(P_(e4)), o2 = a2 == null ? void 0 : a2._theme;
7431
+ if ((o2 === "light" || o2 === "dark") && (X_ = o2), !a2) {
7432
+ Tv("Bodygraph data could not be parsed from the server response.", Ev);
7355
7433
  return;
7356
7434
  }
7357
- if (Q_(), Z_[Y_] = a2, !q_ && a2._birth_params) {
7435
+ if ($ = "graph", $_ = false, sv(), av[ov($, X_, false)] = a2, !J_ && a2._birth_params) {
7358
7436
  var t2, n2, r2, i2;
7359
7437
  let e5 = (t2 = a2._birth_params) == null ? {} : t2, o3 = (n2 = e5.datetime) == null ? "" : n2, s2 = (r2 = e5.location) == null ? "" : r2, c2 = (i2 = e5.timezone) == null ? "" : i2, l2 = e5.latitude, u2 = e5.longitude, d2 = "", f2 = "12:00";
7360
7438
  if (o3) try {
@@ -7363,30 +7441,30 @@ Q.ontoolresult = (e4) => {
7363
7441
  } catch (e6) {
7364
7442
  o3.includes("T") && (d2 = o3.split("T")[0], f2 = o3.split("T")[1].substring(0, 5));
7365
7443
  }
7366
- q_ = new w_({ app: Q, container: K_, initialParams: { date: d2, time: f2, locationName: s2, timezone: c2, latitude: typeof l2 == "number" ? l2 : null, longitude: typeof u2 == "number" ? u2 : null }, showStepControls: false, costHint: "~2 credits", onRefresh: async (e6) => {
7367
- q_ == null || q_.setBusy(true), V_.removeAttribute("hidden"), H_.setAttribute("hidden", "");
7444
+ J_ = new T_({ app: Z, container: q_, initialParams: { date: d2, time: f2, locationName: s2, timezone: c2, latitude: typeof l2 == "number" ? l2 : null, longitude: typeof u2 == "number" ? u2 : null }, showStepControls: false, costHint: "~2 credits", extraToggle: { label: "Add house rings (+1 credit)", initialChecked: false, initialDisabled: true, disabledTitle: "Switch to Mandala view to add house rings", onChange: (e6) => void fv(e6) }, onRefresh: async (e6) => {
7445
+ J_ == null || J_.setBusy(true), H_.removeAttribute("hidden"), U_.setAttribute("hidden", "");
7368
7446
  try {
7369
7447
  var t3, n3, r3, i3;
7370
- let a3 = "".concat(e6.date, "T").concat(e6.time, ":00"), o4 = e6.timezone ? a3 : "".concat(a3, "Z"), s3 = new Promise((e7, t4) => setTimeout(() => t4(Error("Bodygraph recalculate timed out after 30s")), 3e4)), c3 = N_(await Promise.race([Q.callServerTool({ name: "bodygraph_recalculate", arguments: { datetime: o4, latitude: (t3 = e6.latitude) == null ? void 0 : t3, longitude: (n3 = e6.longitude) == null ? void 0 : n3, timezone: (r3 = e6.timezone) == null ? void 0 : r3, location: (i3 = e6.locationName) == null ? void 0 : i3, theme: Y_ } }), s3])), l3 = c3 && (c3.type || c3.centers) ? c3 : null;
7371
- l3 ? (Q_(), Z_[Y_] = l3, uv(l3)) : $ && (V_.setAttribute("hidden", ""), H_.removeAttribute("hidden"));
7448
+ let a3 = "".concat(e6.date, "T").concat(e6.time, ":00"), o4 = e6.timezone ? a3 : "".concat(a3, "Z"), s3 = new Promise((e7, t4) => setTimeout(() => t4(Error("Bodygraph recalculate timed out after 30s")), 3e4)), c3 = P_(await Promise.race([Z.callServerTool({ name: "bodygraph_recalculate", arguments: { datetime: o4, latitude: (t3 = e6.latitude) == null ? void 0 : t3, longitude: (n3 = e6.longitude) == null ? void 0 : n3, timezone: (r3 = e6.timezone) == null ? void 0 : r3, location: (i3 = e6.locationName) == null ? void 0 : i3, theme: X_, ...iv() } }), s3])), l3 = c3 && (c3.type || c3.centers) ? c3 : null;
7449
+ l3 ? (sv(), av[ov($, X_, nv($))] = l3, Sv(l3)) : Q && (H_.setAttribute("hidden", ""), U_.removeAttribute("hidden"));
7372
7450
  } catch (e7) {
7373
- console.error("[Bodygraph] Recalculate failed or timed out:", e7), $ && (V_.setAttribute("hidden", ""), H_.removeAttribute("hidden"));
7451
+ console.error("[Bodygraph] Recalculate failed or timed out:", e7), Q && (H_.setAttribute("hidden", ""), U_.removeAttribute("hidden"));
7374
7452
  } finally {
7375
- q_ == null || q_.setBusy(false);
7453
+ J_ == null || J_.setBusy(false);
7376
7454
  }
7377
7455
  } });
7378
7456
  }
7379
- uv(a2), ev($_());
7457
+ Sv(a2), lv(cv());
7380
7458
  } catch (e5) {
7381
- pv("An error occurred while rendering the bodygraph.", mv), console.error("[Bodygraph] Render error:", e5);
7459
+ Tv("An error occurred while rendering the bodygraph.", Ev), console.error("[Bodygraph] Render error:", e5);
7382
7460
  }
7383
- }, R_(Q, { loadingEl: V_, contentEl: H_, statusFn: nv, paramControls: q_ }), dv = setTimeout(() => {
7384
- pv("Bodygraph data is taking longer than expected.", mv);
7461
+ }, z_(Z, { loadingEl: H_, contentEl: U_, statusFn: mv, paramControls: J_ }), Cv = setTimeout(() => {
7462
+ Tv("Bodygraph data is taking longer than expected.", Ev);
7385
7463
  }, 3e4), (async () => {
7386
7464
  try {
7387
- await Q.connect();
7388
- let e4 = Q.getHostCapabilities();
7389
- J_ = !!(e4 != null && e4.modelContext), e4 == null || e4.sampling, L_(Q, document.getElementById("pan-zoom-controls"), ["param-controls-container", "controls-panel", "info-panel", "hd-action-bar"]), B_(Q), window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change", () => void ev($_()));
7465
+ await Z.connect();
7466
+ let e4 = Z.getHostCapabilities();
7467
+ Y_ = !!(e4 != null && e4.modelContext), e4 == null || e4.sampling, R_(Z, document.getElementById("pan-zoom-controls"), ["param-controls-container", "controls-panel", "info-panel", "hd-action-bar"]), V_(Z), window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change", () => void lv(cv()));
7390
7468
  } catch (e4) {
7391
7469
  console.error("[Bodygraph] connect() failed:", e4);
7392
7470
  }