@openephemeris/mcp-server 3.23.1 → 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.
- package/CHANGELOG.md +8 -0
- package/README.md +12 -1
- package/dist/tools/apps/bodygraph-app.js +30 -15
- package/dist/ui/bi-wheel.html +21 -4
- package/dist/ui/bodygraph.html +795 -717
- package/dist/ui/chart-wheel.html +22 -5
- package/dist/ui/moon-phase.html +19 -2
- package/package.json +4 -2
package/dist/ui/bodygraph.html
CHANGED
|
@@ -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),
|
|
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),
|
|
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),
|
|
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),
|
|
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),
|
|
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) =>
|
|
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)),
|
|
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),
|
|
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
|
-
}),
|
|
4964
|
-
mr.init(e4, t2),
|
|
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
|
|
4967
|
-
return ts(
|
|
4966
|
+
function j(e4) {
|
|
4967
|
+
return ts(Pu, e4);
|
|
4968
4968
|
}
|
|
4969
|
-
var
|
|
4970
|
-
E.init(e4, t2),
|
|
4971
|
-
}),
|
|
4972
|
-
_r.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
|
|
4975
|
-
return rs(
|
|
4974
|
+
function Iu(e4) {
|
|
4975
|
+
return rs(Fu, e4);
|
|
4976
4976
|
}
|
|
4977
|
-
var
|
|
4978
|
-
hr.init(e4, t2),
|
|
4977
|
+
var Lu = c("ZodGUID", (e4, t2) => {
|
|
4978
|
+
hr.init(e4, t2), M.init(e4, t2);
|
|
4979
4979
|
});
|
|
4980
|
-
function
|
|
4981
|
-
return is(
|
|
4980
|
+
function Ru(e4) {
|
|
4981
|
+
return is(Lu, e4);
|
|
4982
4982
|
}
|
|
4983
|
-
var
|
|
4984
|
-
gr.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
|
|
4987
|
+
return as(zu, e4);
|
|
4991
4988
|
}
|
|
4992
4989
|
function Vu(e4) {
|
|
4993
|
-
return
|
|
4990
|
+
return os(zu, e4);
|
|
4994
4991
|
}
|
|
4995
4992
|
function Hu(e4) {
|
|
4996
|
-
return
|
|
4993
|
+
return ss(zu, e4);
|
|
4997
4994
|
}
|
|
4998
|
-
|
|
4999
|
-
|
|
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(
|
|
5002
|
+
return ls(Wu, e4);
|
|
5006
5003
|
}
|
|
5007
|
-
|
|
5008
|
-
|
|
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
|
|
5014
|
-
|
|
5007
|
+
var qu = c("ZodEmoji", (e4, t2) => {
|
|
5008
|
+
yr.init(e4, t2), M.init(e4, t2);
|
|
5015
5009
|
});
|
|
5016
|
-
function
|
|
5017
|
-
return
|
|
5010
|
+
function Ju(e4) {
|
|
5011
|
+
return us(qu, e4);
|
|
5018
5012
|
}
|
|
5019
|
-
var
|
|
5020
|
-
|
|
5013
|
+
var Yu = c("ZodNanoID", (e4, t2) => {
|
|
5014
|
+
br.init(e4, t2), M.init(e4, t2);
|
|
5021
5015
|
});
|
|
5022
|
-
function
|
|
5023
|
-
return
|
|
5016
|
+
function Xu(e4) {
|
|
5017
|
+
return ds(Yu, e4);
|
|
5024
5018
|
}
|
|
5025
|
-
var
|
|
5026
|
-
|
|
5019
|
+
var Zu = c("ZodCUID", (e4, t2) => {
|
|
5020
|
+
xr.init(e4, t2), M.init(e4, t2);
|
|
5027
5021
|
});
|
|
5028
|
-
function
|
|
5029
|
-
return
|
|
5022
|
+
function Qu(e4) {
|
|
5023
|
+
return fs(Zu, e4);
|
|
5030
5024
|
}
|
|
5031
|
-
var
|
|
5032
|
-
|
|
5025
|
+
var $u = c("ZodCUID2", (e4, t2) => {
|
|
5026
|
+
Sr.init(e4, t2), M.init(e4, t2);
|
|
5033
5027
|
});
|
|
5034
|
-
function
|
|
5035
|
-
return
|
|
5028
|
+
function ed(e4) {
|
|
5029
|
+
return ps($u, e4);
|
|
5036
5030
|
}
|
|
5037
|
-
var
|
|
5038
|
-
|
|
5031
|
+
var td = c("ZodULID", (e4, t2) => {
|
|
5032
|
+
Cr.init(e4, t2), M.init(e4, t2);
|
|
5039
5033
|
});
|
|
5040
|
-
function
|
|
5041
|
-
return
|
|
5034
|
+
function nd(e4) {
|
|
5035
|
+
return ms(td, e4);
|
|
5042
5036
|
}
|
|
5043
|
-
var
|
|
5044
|
-
|
|
5037
|
+
var rd = c("ZodXID", (e4, t2) => {
|
|
5038
|
+
wr.init(e4, t2), M.init(e4, t2);
|
|
5045
5039
|
});
|
|
5046
|
-
function
|
|
5047
|
-
return
|
|
5040
|
+
function id(e4) {
|
|
5041
|
+
return hs(rd, e4);
|
|
5048
5042
|
}
|
|
5049
|
-
var
|
|
5050
|
-
|
|
5043
|
+
var ad = c("ZodKSUID", (e4, t2) => {
|
|
5044
|
+
Tr.init(e4, t2), M.init(e4, t2);
|
|
5051
5045
|
});
|
|
5052
|
-
function
|
|
5053
|
-
return
|
|
5046
|
+
function od(e4) {
|
|
5047
|
+
return gs(ad, e4);
|
|
5054
5048
|
}
|
|
5055
|
-
var
|
|
5056
|
-
|
|
5049
|
+
var sd = c("ZodIPv4", (e4, t2) => {
|
|
5050
|
+
Ar.init(e4, t2), M.init(e4, t2);
|
|
5057
5051
|
});
|
|
5058
|
-
function
|
|
5059
|
-
return
|
|
5052
|
+
function cd(e4) {
|
|
5053
|
+
return _s(sd, e4);
|
|
5060
5054
|
}
|
|
5061
|
-
var
|
|
5062
|
-
|
|
5055
|
+
var ld = c("ZodMAC", (e4, t2) => {
|
|
5056
|
+
Mr.init(e4, t2), M.init(e4, t2);
|
|
5063
5057
|
});
|
|
5064
|
-
function
|
|
5065
|
-
return
|
|
5058
|
+
function ud(e4) {
|
|
5059
|
+
return ys(ld, e4);
|
|
5066
5060
|
}
|
|
5067
|
-
var
|
|
5068
|
-
|
|
5061
|
+
var dd = c("ZodIPv6", (e4, t2) => {
|
|
5062
|
+
jr.init(e4, t2), M.init(e4, t2);
|
|
5069
5063
|
});
|
|
5070
|
-
function
|
|
5071
|
-
return
|
|
5064
|
+
function fd(e4) {
|
|
5065
|
+
return vs(dd, e4);
|
|
5072
5066
|
}
|
|
5073
|
-
var
|
|
5074
|
-
|
|
5067
|
+
var pd = c("ZodCIDRv4", (e4, t2) => {
|
|
5068
|
+
Nr.init(e4, t2), M.init(e4, t2);
|
|
5075
5069
|
});
|
|
5076
|
-
function
|
|
5077
|
-
return
|
|
5070
|
+
function md(e4) {
|
|
5071
|
+
return bs(pd, e4);
|
|
5078
5072
|
}
|
|
5079
|
-
var
|
|
5080
|
-
|
|
5073
|
+
var hd = c("ZodCIDRv6", (e4, t2) => {
|
|
5074
|
+
Pr.init(e4, t2), M.init(e4, t2);
|
|
5081
5075
|
});
|
|
5082
|
-
function
|
|
5083
|
-
return
|
|
5076
|
+
function gd(e4) {
|
|
5077
|
+
return xs(hd, e4);
|
|
5084
5078
|
}
|
|
5085
|
-
var
|
|
5086
|
-
|
|
5079
|
+
var _d = c("ZodBase64", (e4, t2) => {
|
|
5080
|
+
Ir.init(e4, t2), M.init(e4, t2);
|
|
5087
5081
|
});
|
|
5088
|
-
function
|
|
5089
|
-
return
|
|
5082
|
+
function vd(e4) {
|
|
5083
|
+
return Ss(_d, e4);
|
|
5090
5084
|
}
|
|
5091
|
-
var
|
|
5092
|
-
|
|
5085
|
+
var yd = c("ZodBase64URL", (e4, t2) => {
|
|
5086
|
+
Rr.init(e4, t2), M.init(e4, t2);
|
|
5093
5087
|
});
|
|
5094
|
-
function
|
|
5095
|
-
return
|
|
5088
|
+
function bd(e4) {
|
|
5089
|
+
return Cs(yd, e4);
|
|
5096
5090
|
}
|
|
5097
|
-
var
|
|
5098
|
-
|
|
5091
|
+
var xd = c("ZodE164", (e4, t2) => {
|
|
5092
|
+
zr.init(e4, t2), M.init(e4, t2);
|
|
5099
5093
|
});
|
|
5100
|
-
function
|
|
5101
|
-
return
|
|
5094
|
+
function Sd(e4) {
|
|
5095
|
+
return ws(xd, e4);
|
|
5102
5096
|
}
|
|
5103
|
-
var
|
|
5104
|
-
|
|
5097
|
+
var Cd = c("ZodJWT", (e4, t2) => {
|
|
5098
|
+
Vr.init(e4, t2), M.init(e4, t2);
|
|
5105
5099
|
});
|
|
5106
|
-
function
|
|
5107
|
-
return
|
|
5100
|
+
function wd(e4) {
|
|
5101
|
+
return Ts(Cd, e4);
|
|
5108
5102
|
}
|
|
5109
|
-
|
|
5110
|
-
|
|
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(
|
|
5110
|
+
return ol(Td, "hostname", cn, e4);
|
|
5114
5111
|
}
|
|
5115
|
-
function Od(e4
|
|
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(
|
|
5119
|
+
return ol(Td, r2, i2, t2);
|
|
5120
5120
|
}
|
|
5121
|
-
var
|
|
5121
|
+
var Ad = c("ZodNumber", (e4, t2) => {
|
|
5122
5122
|
var n2, r2, i2, a2, o2, s2, c2, l2, u2;
|
|
5123
|
-
Ur.init(e4, t2),
|
|
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
|
|
5128
|
-
return js(
|
|
5127
|
+
function N(e4) {
|
|
5128
|
+
return js(Ad, e4);
|
|
5129
5129
|
}
|
|
5130
|
-
var
|
|
5131
|
-
Wr.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
|
|
5134
|
+
return Ns(jd, e4);
|
|
5138
5135
|
}
|
|
5139
5136
|
function Nd(e4) {
|
|
5140
|
-
return
|
|
5137
|
+
return Ps(jd, e4);
|
|
5141
5138
|
}
|
|
5142
5139
|
function Pd(e4) {
|
|
5143
|
-
return
|
|
5140
|
+
return Fs(jd, e4);
|
|
5144
5141
|
}
|
|
5145
5142
|
function Fd(e4) {
|
|
5146
|
-
return
|
|
5143
|
+
return Is(jd, e4);
|
|
5147
5144
|
}
|
|
5148
|
-
|
|
5149
|
-
|
|
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
|
|
5152
|
-
return Rs(
|
|
5151
|
+
function P(e4) {
|
|
5152
|
+
return Rs(Ld, e4);
|
|
5153
5153
|
}
|
|
5154
|
-
var
|
|
5154
|
+
var Rd = c("ZodBigInt", (e4, t2) => {
|
|
5155
5155
|
var n2, r2, i2;
|
|
5156
|
-
Kr.init(e4, t2),
|
|
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
|
|
5161
|
-
return Bs(
|
|
5160
|
+
function zd(e4) {
|
|
5161
|
+
return Bs(Rd, e4);
|
|
5162
5162
|
}
|
|
5163
|
-
var
|
|
5164
|
-
qr.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
|
|
5167
|
+
return Hs(Bd, e4);
|
|
5168
|
+
}
|
|
5169
|
+
function Hd(e4) {
|
|
5170
|
+
return Us(Bd, e4);
|
|
5171
5171
|
}
|
|
5172
|
-
var
|
|
5173
|
-
Jr.init(e4, t2),
|
|
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
|
|
5176
|
-
return Ws(
|
|
5175
|
+
function Wd(e4) {
|
|
5176
|
+
return Ws(Ud, e4);
|
|
5177
5177
|
}
|
|
5178
|
-
var
|
|
5179
|
-
Yr.init(e4, t2),
|
|
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
|
|
5182
|
-
return Gs(
|
|
5181
|
+
function Kd(e4) {
|
|
5182
|
+
return Gs(Gd, e4);
|
|
5183
5183
|
}
|
|
5184
|
-
var
|
|
5185
|
-
Xr.init(e4, t2),
|
|
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
|
|
5188
|
-
return Ks(
|
|
5187
|
+
function Jd(e4) {
|
|
5188
|
+
return Ks(qd, e4);
|
|
5189
5189
|
}
|
|
5190
|
-
var
|
|
5191
|
-
Zr.init(e4, t2),
|
|
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
|
|
5194
|
-
return qs(
|
|
5193
|
+
function Xd() {
|
|
5194
|
+
return qs(Yd);
|
|
5195
5195
|
}
|
|
5196
|
-
var
|
|
5197
|
-
Qr.init(e4, t2),
|
|
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
|
|
5200
|
-
return Js(
|
|
5199
|
+
function F() {
|
|
5200
|
+
return Js(Zd);
|
|
5201
5201
|
}
|
|
5202
|
-
var
|
|
5203
|
-
$r.init(e4, t2),
|
|
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
|
|
5206
|
-
return Ys(
|
|
5205
|
+
function $d(e4) {
|
|
5206
|
+
return Ys(Qd, e4);
|
|
5207
5207
|
}
|
|
5208
|
-
var
|
|
5209
|
-
ei.init(e4, t2),
|
|
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
|
|
5212
|
-
return Xs(
|
|
5211
|
+
function tf(e4) {
|
|
5212
|
+
return Xs(ef, e4);
|
|
5213
5213
|
}
|
|
5214
|
-
var
|
|
5215
|
-
ti.init(e4, t2),
|
|
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
|
|
5220
|
-
return Zs(
|
|
5219
|
+
function rf(e4) {
|
|
5220
|
+
return Zs(nf, e4);
|
|
5221
5221
|
}
|
|
5222
|
-
var
|
|
5223
|
-
ri.init(e4, t2),
|
|
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
|
|
5226
|
-
return Oc(
|
|
5225
|
+
function I(e4, t2) {
|
|
5226
|
+
return Oc(af, e4, t2);
|
|
5227
5227
|
}
|
|
5228
|
-
function
|
|
5228
|
+
function of(e4) {
|
|
5229
5229
|
let t2 = e4._zod.def.shape;
|
|
5230
|
-
return
|
|
5230
|
+
return V(Object.keys(t2));
|
|
5231
5231
|
}
|
|
5232
|
-
var
|
|
5233
|
-
ci.init(e4, t2),
|
|
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
|
|
5236
|
-
return new
|
|
5235
|
+
function L(e4, t2) {
|
|
5236
|
+
return new sf({ type: "object", shape: e4 == null ? {} : e4, ...x(t2) });
|
|
5237
5237
|
}
|
|
5238
|
-
function
|
|
5239
|
-
return new
|
|
5238
|
+
function cf(e4, t2) {
|
|
5239
|
+
return new sf({ type: "object", shape: e4, catchall: $d(), ...x(t2) });
|
|
5240
5240
|
}
|
|
5241
|
-
function
|
|
5242
|
-
return new
|
|
5241
|
+
function R(e4, t2) {
|
|
5242
|
+
return new sf({ type: "object", shape: e4, catchall: F(), ...x(t2) });
|
|
5243
5243
|
}
|
|
5244
|
-
var
|
|
5245
|
-
ui.init(e4, t2),
|
|
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
|
|
5248
|
-
return new
|
|
5247
|
+
function z(e4, t2) {
|
|
5248
|
+
return new lf({ type: "union", options: e4, ...x(t2) });
|
|
5249
5249
|
}
|
|
5250
|
-
var
|
|
5251
|
-
|
|
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
|
|
5254
|
-
return new
|
|
5253
|
+
function df(e4, t2) {
|
|
5254
|
+
return new uf({ type: "union", options: e4, inclusive: false, ...x(t2) });
|
|
5255
5255
|
}
|
|
5256
|
-
var
|
|
5257
|
-
|
|
5256
|
+
var ff = c("ZodDiscriminatedUnion", (e4, t2) => {
|
|
5257
|
+
lf.init(e4, t2), pi.init(e4, t2);
|
|
5258
5258
|
});
|
|
5259
|
-
function
|
|
5260
|
-
return new
|
|
5259
|
+
function pf(e4, t2, n2) {
|
|
5260
|
+
return new ff({ type: "union", options: t2, discriminator: e4, ...x(n2) });
|
|
5261
5261
|
}
|
|
5262
|
-
var
|
|
5263
|
-
mi.init(e4, t2),
|
|
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
|
|
5266
|
-
return new
|
|
5265
|
+
function hf(e4, t2) {
|
|
5266
|
+
return new mf({ type: "intersection", left: e4, right: t2 });
|
|
5267
5267
|
}
|
|
5268
|
-
var
|
|
5269
|
-
_i.init(e4, t2),
|
|
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
|
|
5271
|
+
function _f(e4, t2, n2) {
|
|
5272
5272
|
let r2 = t2 instanceof T;
|
|
5273
|
-
return new
|
|
5273
|
+
return new gf({ type: "tuple", items: e4, rest: r2 ? t2 : null, ...x(r2 ? n2 : t2) });
|
|
5274
5274
|
}
|
|
5275
|
-
var
|
|
5276
|
-
yi.init(e4, t2),
|
|
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
|
|
5279
|
-
return new
|
|
5278
|
+
function B(e4, t2, n2) {
|
|
5279
|
+
return new vf({ type: "record", keyType: e4, valueType: t2, ...x(n2) });
|
|
5280
5280
|
}
|
|
5281
|
-
function
|
|
5281
|
+
function yf(e4, t2, n2) {
|
|
5282
5282
|
let r2 = De(e4);
|
|
5283
|
-
return r2._zod.values = void 0, new
|
|
5283
|
+
return r2._zod.values = void 0, new vf({ type: "record", keyType: r2, valueType: t2, ...x(n2) });
|
|
5284
5284
|
}
|
|
5285
|
-
function
|
|
5286
|
-
return new
|
|
5285
|
+
function bf(e4, t2, n2) {
|
|
5286
|
+
return new vf({ type: "record", keyType: e4, valueType: t2, mode: "loose", ...x(n2) });
|
|
5287
5287
|
}
|
|
5288
|
-
var
|
|
5289
|
-
bi.init(e4, t2),
|
|
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
|
|
5292
|
-
return new
|
|
5291
|
+
function Sf(e4, t2, n2) {
|
|
5292
|
+
return new xf({ type: "map", keyType: e4, valueType: t2, ...x(n2) });
|
|
5293
5293
|
}
|
|
5294
|
-
var
|
|
5295
|
-
Si.init(e4, t2),
|
|
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
|
|
5298
|
-
return new
|
|
5297
|
+
function wf(e4, t2) {
|
|
5298
|
+
return new Cf({ type: "set", valueType: e4, ...x(t2) });
|
|
5299
5299
|
}
|
|
5300
|
-
var
|
|
5301
|
-
wi.init(e4, t2),
|
|
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
|
|
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
|
|
5312
|
+
return new Tf({ ...t2, checks: [], ...x(r2), entries: i2 });
|
|
5313
5313
|
};
|
|
5314
5314
|
});
|
|
5315
|
-
function
|
|
5316
|
-
return new
|
|
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
|
|
5319
|
-
return new
|
|
5318
|
+
function Ef(e4, t2) {
|
|
5319
|
+
return new Tf({ type: "enum", entries: e4, ...x(t2) });
|
|
5320
5320
|
}
|
|
5321
|
-
var
|
|
5322
|
-
Ti.init(e4, t2),
|
|
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
|
|
5328
|
-
return new
|
|
5327
|
+
function H(e4, t2) {
|
|
5328
|
+
return new Df({ type: "literal", values: Array.isArray(e4) ? e4 : [e4], ...x(t2) });
|
|
5329
5329
|
}
|
|
5330
|
-
var
|
|
5331
|
-
Ei.init(e4, t2),
|
|
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
|
|
5334
|
-
return Bc(
|
|
5333
|
+
function kf(e4) {
|
|
5334
|
+
return Bc(Of, e4);
|
|
5335
5335
|
}
|
|
5336
|
-
var
|
|
5337
|
-
Di.init(e4, t2),
|
|
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
|
|
5351
|
-
return new
|
|
5350
|
+
function jf(e4) {
|
|
5351
|
+
return new Af({ type: "transform", transform: e4 });
|
|
5352
5352
|
}
|
|
5353
|
-
var
|
|
5354
|
-
ki.init(e4, t2),
|
|
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
|
|
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
|
|
5366
|
-
|
|
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
|
|
5369
|
-
return new
|
|
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
|
|
5369
|
+
return new Ff({ type: "nullable", innerType: e4 });
|
|
5373
5370
|
}
|
|
5374
|
-
|
|
5375
|
-
|
|
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
|
|
5378
|
-
return new
|
|
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
|
|
5383
|
-
Pi.init(e4, t2),
|
|
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
|
|
5386
|
-
return new
|
|
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
|
|
5391
|
-
Fi.init(e4, t2),
|
|
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
|
|
5394
|
-
return new
|
|
5393
|
+
function Uf(e4, t2) {
|
|
5394
|
+
return new Hf({ type: "nonoptional", innerType: e4, ...x(t2) });
|
|
5395
5395
|
}
|
|
5396
|
-
var
|
|
5397
|
-
Li.init(e4, t2),
|
|
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
|
|
5400
|
-
return new
|
|
5399
|
+
function Gf(e4) {
|
|
5400
|
+
return new Wf({ type: "success", innerType: e4 });
|
|
5401
5401
|
}
|
|
5402
|
-
var
|
|
5403
|
-
Ri.init(e4, t2),
|
|
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
|
|
5406
|
-
return new
|
|
5405
|
+
function qf(e4, t2) {
|
|
5406
|
+
return new Kf({ type: "catch", innerType: e4, catchValue: typeof t2 == "function" ? t2 : () => t2 });
|
|
5407
5407
|
}
|
|
5408
|
-
var
|
|
5409
|
-
zi.init(e4, t2),
|
|
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
|
|
5412
|
-
return $s(
|
|
5411
|
+
function Yf(e4) {
|
|
5412
|
+
return $s(Jf, e4);
|
|
5413
5413
|
}
|
|
5414
|
-
var
|
|
5415
|
-
Bi.init(e4, t2),
|
|
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
|
|
5418
|
-
return new
|
|
5417
|
+
function Zf(e4, t2) {
|
|
5418
|
+
return new Xf({ type: "pipe", in: e4, out: t2 });
|
|
5419
5419
|
}
|
|
5420
|
-
var
|
|
5421
|
-
|
|
5420
|
+
var Qf = c("ZodCodec", (e4, t2) => {
|
|
5421
|
+
Xf.init(e4, t2), Hi.init(e4, t2);
|
|
5422
5422
|
});
|
|
5423
|
-
function
|
|
5424
|
-
return new
|
|
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
|
|
5427
|
-
Gi.init(e4, t2),
|
|
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
|
|
5430
|
-
return new
|
|
5429
|
+
function tp(e4) {
|
|
5430
|
+
return new ep({ type: "readonly", innerType: e4 });
|
|
5431
5431
|
}
|
|
5432
|
-
var
|
|
5433
|
-
qi.init(e4, t2),
|
|
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
|
|
5436
|
-
return new
|
|
5435
|
+
function rp(e4, t2) {
|
|
5436
|
+
return new np({ type: "template_literal", parts: e4, ...x(t2) });
|
|
5437
5437
|
}
|
|
5438
|
-
var
|
|
5439
|
-
Xi.init(e4, t2),
|
|
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
|
|
5442
|
-
return new
|
|
5441
|
+
function ap(e4) {
|
|
5442
|
+
return new ip({ type: "lazy", getter: e4 });
|
|
5443
5443
|
}
|
|
5444
|
-
var
|
|
5445
|
-
Yi.init(e4, t2),
|
|
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
|
|
5448
|
-
return new
|
|
5447
|
+
function sp(e4) {
|
|
5448
|
+
return new op({ type: "promise", innerType: e4 });
|
|
5449
5449
|
}
|
|
5450
|
-
var
|
|
5451
|
-
Ji.init(e4, t2),
|
|
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
|
|
5453
|
+
function lp(e4) {
|
|
5454
5454
|
var t2, n2;
|
|
5455
|
-
return new
|
|
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
|
|
5458
|
-
Zi.init(e4, t2),
|
|
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
|
|
5460
|
+
function dp(e4) {
|
|
5461
5461
|
let t2 = new w({ check: "custom" });
|
|
5462
5462
|
return t2._zod.check = e4, t2;
|
|
5463
5463
|
}
|
|
5464
|
-
function
|
|
5465
|
-
return $c(
|
|
5464
|
+
function fp(e4, t2) {
|
|
5465
|
+
return $c(up, e4 == null ? (() => true) : e4, t2);
|
|
5466
5466
|
}
|
|
5467
|
-
function
|
|
5468
|
-
return el(
|
|
5467
|
+
function pp(e4, t2 = {}) {
|
|
5468
|
+
return el(up, e4, t2);
|
|
5469
5469
|
}
|
|
5470
|
-
function
|
|
5470
|
+
function mp(e4) {
|
|
5471
5471
|
return tl(e4);
|
|
5472
5472
|
}
|
|
5473
|
-
var
|
|
5474
|
-
function
|
|
5475
|
-
let n2 = new
|
|
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
|
|
5484
|
-
function
|
|
5485
|
-
let 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
|
|
5489
|
-
return
|
|
5488
|
+
function bp(e4, t2) {
|
|
5489
|
+
return Zf(jf(e4), t2);
|
|
5490
5490
|
}
|
|
5491
|
-
var
|
|
5492
|
-
function
|
|
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
|
|
5495
|
+
function Cp() {
|
|
5496
5496
|
return p().customError;
|
|
5497
5497
|
}
|
|
5498
|
-
var
|
|
5498
|
+
var wp;
|
|
5499
5499
|
/* @__PURE__ */ (function(e4) {
|
|
5500
|
-
})(
|
|
5501
|
-
var
|
|
5502
|
-
function
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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 =
|
|
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
|
|
5541
|
-
if (n3.length === 0) return
|
|
5542
|
-
if (n3.length === 1) return
|
|
5543
|
-
if (n3.every((e5) => typeof e5 == "string")) return
|
|
5544
|
-
let r3 = n3.map((e5) =>
|
|
5545
|
-
return r3.length < 2 ? r3[0] :
|
|
5546
|
-
}
|
|
5547
|
-
if (e4.const !== void 0) return
|
|
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) =>
|
|
5551
|
-
return r3.length === 0 ?
|
|
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
|
|
5553
|
+
if (!n2) return W.any();
|
|
5554
5554
|
let r2;
|
|
5555
5555
|
switch (n2) {
|
|
5556
5556
|
case "string": {
|
|
5557
|
-
let t3 =
|
|
5557
|
+
let t3 = W.string();
|
|
5558
5558
|
if (e4.format) {
|
|
5559
5559
|
let n3 = e4.format;
|
|
5560
|
-
n3 === "email" ? t3 = t3.check(
|
|
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" ?
|
|
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 =
|
|
5572
|
+
r2 = W.boolean();
|
|
5573
5573
|
break;
|
|
5574
5574
|
case "null":
|
|
5575
|
-
r2 =
|
|
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 =
|
|
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 =
|
|
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 =
|
|
5586
|
+
r2 = W.record(i3, a3);
|
|
5587
5587
|
break;
|
|
5588
5588
|
}
|
|
5589
|
-
let o3 =
|
|
5590
|
-
r2 =
|
|
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 =
|
|
5597
|
-
o3.push(
|
|
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(
|
|
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 =
|
|
5604
|
-
for (let t3 = 2; t3 < s2.length; t3++) e5 =
|
|
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 =
|
|
5610
|
-
r2 = e4.additionalProperties === false ? o2.strict() : typeof e4.additionalProperties == "object" ? o2.catchall(
|
|
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) =>
|
|
5617
|
-
r2 = o2 ?
|
|
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) =>
|
|
5620
|
-
r2 = a2 ?
|
|
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 =
|
|
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 =
|
|
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
|
|
5633
|
-
if (typeof e4 == "boolean") return e4 ?
|
|
5634
|
-
let n2 =
|
|
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) =>
|
|
5637
|
-
n2 = r2 ?
|
|
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) =>
|
|
5641
|
-
n2 = r2 ?
|
|
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 :
|
|
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 :
|
|
5646
|
-
for (let n3 = a2; n3 < e4.allOf.length; n3++) i3 =
|
|
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 =
|
|
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))
|
|
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
|
|
5656
|
+
function kp(e4, t2) {
|
|
5657
5657
|
var n2;
|
|
5658
|
-
return typeof e4 == "boolean" ? e4 ?
|
|
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
|
|
5662
|
+
return ns(Pu, e4);
|
|
5666
5663
|
}
|
|
5667
5664
|
function Mp(e4) {
|
|
5668
|
-
return
|
|
5665
|
+
return Ms(Ad, e4);
|
|
5669
5666
|
}
|
|
5670
5667
|
function Np(e4) {
|
|
5671
|
-
return
|
|
5668
|
+
return zs(Ld, e4);
|
|
5672
5669
|
}
|
|
5673
5670
|
function Pp(e4) {
|
|
5674
|
-
return
|
|
5671
|
+
return Vs(Rd, e4);
|
|
5675
5672
|
}
|
|
5676
|
-
|
|
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
|
|
5679
|
-
|
|
5680
|
-
var
|
|
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
|
-
})(
|
|
5684
|
-
var
|
|
5685
|
-
|
|
5686
|
-
var
|
|
5687
|
-
|
|
5688
|
-
var
|
|
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" }),
|
|
5695
|
-
|
|
5696
|
-
var
|
|
5697
|
-
|
|
5698
|
-
var
|
|
5699
|
-
|
|
5700
|
-
var
|
|
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 ===
|
|
5705
|
+
if (t2 === Y.UrlElicitationRequired && r2) {
|
|
5706
5706
|
let e4 = r2;
|
|
5707
|
-
if (e4.elicitations) return new
|
|
5707
|
+
if (e4.elicitations) return new mg(e4.elicitations, n2);
|
|
5708
5708
|
}
|
|
5709
5709
|
return new e2(t2, n2, r2);
|
|
5710
5710
|
}
|
|
5711
|
-
},
|
|
5711
|
+
}, mg = class extends X {
|
|
5712
5712
|
constructor(e4, t2 = "URL elicitation".concat(e4.length > 1 ? "s" : "", " required")) {
|
|
5713
|
-
super(
|
|
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
|
|
5720
|
+
function hg(e4) {
|
|
5721
5721
|
return e4 === "completed" || e4 === "failed" || e4 === "cancelled";
|
|
5722
5722
|
}
|
|
5723
|
-
function
|
|
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
|
|
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
|
|
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(
|
|
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(
|
|
5739
|
+
}), this.setNotificationHandler(Cm, (e5) => {
|
|
5740
5740
|
this._onprogress(e5);
|
|
5741
|
-
}), this.setRequestHandler(
|
|
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
|
|
5743
|
+
if (!n2) throw new X(Y.InvalidParams, "Failed to retrieve task: Task not found");
|
|
5744
5744
|
return { ...n2 };
|
|
5745
|
-
}), this.setRequestHandler(
|
|
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
|
|
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
|
|
5770
|
-
if (!
|
|
5771
|
-
if (
|
|
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, [
|
|
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(
|
|
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
|
|
5784
|
+
throw new X(Y.InvalidParams, "Failed to list tasks: ".concat(e6 instanceof Error ? e6.message : String(e6)));
|
|
5785
5785
|
}
|
|
5786
|
-
}), this.setRequestHandler(
|
|
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
|
|
5790
|
-
if (
|
|
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
|
|
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
|
|
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),
|
|
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),
|
|
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 =
|
|
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:
|
|
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 =
|
|
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
|
|
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 :
|
|
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),
|
|
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 (
|
|
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),
|
|
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
|
|
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,
|
|
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
|
|
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 },
|
|
5957
|
-
e5.status === "completed" ? yield { type: "result", result: await this.getTaskResult({ taskId: i2 }, t2, n2) } : e5.status === "failed" ? yield { type: "error", error: new
|
|
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
|
|
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) || {}, [
|
|
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
|
|
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 ?
|
|
6018
|
-
this._setupTimeout(g2, y2, n2 == null ? void 0 : n2.maxTotalTimeout, () => v2(
|
|
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 },
|
|
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 },
|
|
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 },
|
|
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) || {}, [
|
|
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) || {}, [
|
|
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) || {}, [
|
|
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 =
|
|
6075
|
+
let n2 = gg(e4);
|
|
6076
6076
|
this.assertRequestHandlerCapability(n2), this._requestHandlers.set(n2, (n3, r2) => {
|
|
6077
|
-
let i2 =
|
|
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 =
|
|
6088
|
+
let n2 = gg(e4);
|
|
6089
6089
|
this._notificationHandlers.set(n2, (n3) => {
|
|
6090
|
-
let r2 =
|
|
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" &&
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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 =
|
|
6151
|
-
await this.notification(t3),
|
|
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
|
|
6156
|
-
if (
|
|
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 =
|
|
6161
|
-
await this.notification(t3),
|
|
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
|
|
6166
|
+
function bg(e4) {
|
|
6167
6167
|
return typeof e4 == "object" && !!e4 && !Array.isArray(e4);
|
|
6168
6168
|
}
|
|
6169
|
-
function
|
|
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
|
-
|
|
6175
|
+
bg(a2) && bg(i2) ? n2[r2] = { ...a2, ...i2 } : n2[r2] = i2;
|
|
6176
6176
|
}
|
|
6177
6177
|
return n2;
|
|
6178
6178
|
}
|
|
6179
|
-
var
|
|
6179
|
+
var Sg = "modulepreload", Cg = function(e4) {
|
|
6180
6180
|
return "/" + e4;
|
|
6181
|
-
},
|
|
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 =
|
|
6191
|
-
|
|
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" :
|
|
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
|
|
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
|
-
},
|
|
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 =
|
|
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
|
-
},
|
|
6296
|
-
|
|
6297
|
-
var
|
|
6298
|
-
|
|
6299
|
-
var
|
|
6300
|
-
|
|
6301
|
-
var
|
|
6302
|
-
|
|
6303
|
-
var
|
|
6304
|
-
|
|
6305
|
-
var
|
|
6306
|
-
|
|
6307
|
-
var
|
|
6308
|
-
|
|
6309
|
-
var
|
|
6310
|
-
|
|
6311
|
-
var
|
|
6312
|
-
async function
|
|
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](
|
|
6314
|
+
if (n2.jsonSchema) return n2.jsonSchema[t2](Qg);
|
|
6315
6315
|
if (n2.vendor === "zod") {
|
|
6316
|
-
let { z: n3 } = await
|
|
6317
|
-
let { z: e5 } = await Promise.resolve().then(() =>
|
|
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
|
|
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
|
|
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:
|
|
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 =
|
|
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
|
|
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
|
|
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
|
|
6398
|
-
return t3.outputSchema && (n2.outputSchema = await
|
|
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(
|
|
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(
|
|
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(
|
|
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 },
|
|
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 },
|
|
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 },
|
|
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 ?
|
|
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 },
|
|
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 },
|
|
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 },
|
|
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 },
|
|
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 },
|
|
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
|
|
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:
|
|
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(
|
|
6569
|
-
var
|
|
6570
|
-
function
|
|
6571
|
-
|
|
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
|
|
6574
|
-
function
|
|
6575
|
-
|
|
6573
|
+
var i_ = null;
|
|
6574
|
+
function a_(e4) {
|
|
6575
|
+
i_ = e4;
|
|
6576
6576
|
}
|
|
6577
|
-
var
|
|
6578
|
-
function
|
|
6579
|
-
return
|
|
6577
|
+
var o_ = null;
|
|
6578
|
+
function s_() {
|
|
6579
|
+
return o_ || (o_ = document.getElementById("tooltip")), o_;
|
|
6580
6580
|
}
|
|
6581
|
-
function
|
|
6582
|
-
let a2 =
|
|
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(
|
|
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
|
|
6588
|
+
function l_() {
|
|
6589
6589
|
var e4;
|
|
6590
|
-
(e4 =
|
|
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
|
-
|
|
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
|
|
6599
|
+
function h_(e4, t2, n2, r2, i2, a2) {
|
|
6600
6600
|
var o2;
|
|
6601
|
-
let s2 =
|
|
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 = "",
|
|
6607
|
-
}),
|
|
6606
|
+
e5.innerHTML = "", n_ == null || n_(null);
|
|
6607
|
+
}), g_(e5, i2);
|
|
6608
6608
|
return;
|
|
6609
6609
|
}
|
|
6610
|
-
let f2 =
|
|
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",
|
|
6619
|
+
}), (o2 = document.getElementById("hd-popup-close")) == null || o2.addEventListener("click", m_), g_(f2, i2);
|
|
6620
6620
|
}
|
|
6621
|
-
function
|
|
6621
|
+
function g_(e4, t2) {
|
|
6622
6622
|
var n2;
|
|
6623
6623
|
(n2 = e4.querySelector("#hd-ask-claude-btn")) == null || n2.addEventListener("click", () => {
|
|
6624
|
-
if (!
|
|
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
|
-
|
|
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
|
|
6638
|
+
function __(e4) {
|
|
6639
6639
|
return e4.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """);
|
|
6640
6640
|
}
|
|
6641
|
-
function
|
|
6642
|
-
let o2 = (e5, t3) => t3 ? '<span class="info-value interactive-text" data-ask="true" data-topic="'.concat(
|
|
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(
|
|
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
|
|
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
|
|
6695
|
-
function
|
|
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 =
|
|
6697
|
+
return (t2 = b_[e4]) == null ? e4 : t2;
|
|
6698
6698
|
}
|
|
6699
|
-
function
|
|
6699
|
+
function S_(e4, t2, n2, r2) {
|
|
6700
6700
|
var i2, a2, o2, s2;
|
|
6701
|
-
|
|
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),
|
|
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(
|
|
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
|
-
|
|
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 =
|
|
6731
|
-
|
|
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
|
-
|
|
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 =
|
|
6743
|
-
|
|
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
|
-
|
|
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 =
|
|
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
|
-
|
|
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 &&
|
|
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 =
|
|
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 =
|
|
6771
|
-
|
|
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 =
|
|
6782
|
-
t3 = "Gate ".concat(i4).concat(o4 ? " \u2014 " + o4 : "", ", ").concat(a4 === "inactive" ? "inactive" :
|
|
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(
|
|
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
|
|
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
|
|
6828
|
+
function w_(e4) {
|
|
6829
6829
|
return e4.charAt(0).toUpperCase() + e4.slice(1);
|
|
6830
6830
|
}
|
|
6831
|
-
var
|
|
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, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """);
|
|
6957
6974
|
}
|
|
6958
|
-
},
|
|
6959
|
-
function E_(e4) {
|
|
6960
|
-
return T_.has(e4);
|
|
6961
|
-
}
|
|
6975
|
+
}, E_ = /* @__PURE__ */ new Set();
|
|
6962
6976
|
function D_(e4) {
|
|
6963
|
-
|
|
6977
|
+
return E_.has(e4);
|
|
6964
6978
|
}
|
|
6965
|
-
|
|
6966
|
-
|
|
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 & 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 =
|
|
6986
|
+
e4.id = "oe-first-run-styles", e4.textContent = A_, document.head.appendChild(e4);
|
|
6970
6987
|
}
|
|
6971
|
-
function
|
|
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 }),
|
|
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
|
|
6990
|
-
if (
|
|
6991
|
-
let n2 =
|
|
6992
|
-
|
|
6993
|
-
let r2 =
|
|
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
|
|
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
|
|
7026
|
+
function F_(e4) {
|
|
7010
7027
|
return e4.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """);
|
|
7011
7028
|
}
|
|
7012
|
-
function
|
|
7013
|
-
let { container: t2, message: n2, onRetry: r2, retryLabel: i2 = "\u21BA Try again" } = e4, a2 = r2 ? '<button class="error-retry-btn" type="button">'.concat(
|
|
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(
|
|
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
|
|
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
|
|
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
|
|
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),
|
|
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
|
|
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
|
|
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
|
|
7146
|
-
function
|
|
7147
|
-
|
|
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
|
-
|
|
7177
|
+
function sv() {
|
|
7178
|
+
for (let e4 of Object.keys(av)) delete av[e4];
|
|
7151
7179
|
}
|
|
7152
|
-
|
|
7153
|
-
|
|
7154
|
-
|
|
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
|
-
|
|
7187
|
+
X_ = e4, Sv(t2);
|
|
7157
7188
|
return;
|
|
7158
7189
|
}
|
|
7159
|
-
|
|
7160
|
-
let n2 =
|
|
7190
|
+
Z_ = true, X_ = e4;
|
|
7191
|
+
let n2 = Q._refetch;
|
|
7161
7192
|
try {
|
|
7162
7193
|
let t3;
|
|
7163
|
-
if (n2) t3 = await
|
|
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 =
|
|
7167
|
-
t3 = await
|
|
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 =
|
|
7170
|
-
c2 && (c2.type || c2.centers) && (
|
|
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
|
-
|
|
7205
|
+
Z_ = false;
|
|
7175
7206
|
}
|
|
7176
7207
|
}
|
|
7177
|
-
async function
|
|
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
|
-
|
|
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
|
|
7185
|
-
if (
|
|
7261
|
+
function mv(e4) {
|
|
7262
|
+
if (K_) {
|
|
7186
7263
|
if (!e4) {
|
|
7187
|
-
|
|
7264
|
+
K_.classList.remove("visible");
|
|
7188
7265
|
return;
|
|
7189
7266
|
}
|
|
7190
|
-
|
|
7267
|
+
K_.textContent = "\xB7 ".concat(e4), K_.classList.add("visible");
|
|
7191
7268
|
}
|
|
7192
7269
|
}
|
|
7193
|
-
|
|
7194
|
-
async function
|
|
7270
|
+
r_(mv);
|
|
7271
|
+
async function hv(e4) {
|
|
7195
7272
|
var t2, n2, r2, i2;
|
|
7196
|
-
if (
|
|
7197
|
-
let a2 = (t2 =
|
|
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
|
|
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
|
|
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
|
|
7308
|
+
l2 && await pv(l2);
|
|
7232
7309
|
}
|
|
7233
|
-
async function
|
|
7310
|
+
async function gv() {
|
|
7234
7311
|
var e4, t2, n2, r2, i2, a2, o2;
|
|
7235
|
-
if (
|
|
7236
|
-
let s2 =
|
|
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
|
|
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
|
|
7319
|
+
async function _v() {
|
|
7243
7320
|
var e4, t2, n2, r2, i2;
|
|
7244
|
-
if (
|
|
7245
|
-
let a2 =
|
|
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
|
|
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
|
|
7252
|
-
|
|
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 =
|
|
7256
|
-
await
|
|
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
|
-
|
|
7335
|
+
Y_ = false;
|
|
7259
7336
|
}
|
|
7260
7337
|
}, 0);
|
|
7261
7338
|
}
|
|
7262
|
-
async function
|
|
7263
|
-
|
|
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
|
|
7266
|
-
|
|
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
|
|
7269
|
-
|
|
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
|
|
7272
|
-
var t2, n2, r2, i2, a2, o2, s2, c2, l2, u2, d2, f2;
|
|
7273
|
-
|
|
7274
|
-
let
|
|
7275
|
-
if (!
|
|
7276
|
-
|
|
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
|
|
7280
|
-
|
|
7281
|
-
let
|
|
7282
|
-
if (!
|
|
7283
|
-
|
|
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(
|
|
7362
|
+
if (e5) e5.appendChild(g2);
|
|
7286
7363
|
else {
|
|
7287
|
-
var
|
|
7288
|
-
(
|
|
7364
|
+
var _2;
|
|
7365
|
+
(_2 = U_.parentElement) == null || _2.insertBefore(g2, U_);
|
|
7289
7366
|
}
|
|
7290
7367
|
}
|
|
7291
|
-
|
|
7292
|
-
|
|
7293
|
-
|
|
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 ',
|
|
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
|
|
7298
|
-
|
|
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 &&
|
|
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
|
-
}),
|
|
7384
|
+
}), G_.setAttribute("hidden", ""), q_.removeAttribute("hidden"), N_("bodygraph", U_);
|
|
7307
7385
|
}
|
|
7308
|
-
var
|
|
7309
|
-
function
|
|
7310
|
-
|
|
7386
|
+
var Cv;
|
|
7387
|
+
function wv() {
|
|
7388
|
+
Cv && (clearTimeout(Cv), Cv = void 0);
|
|
7311
7389
|
}
|
|
7312
|
-
function
|
|
7313
|
-
|
|
7390
|
+
function Tv(e4, t2) {
|
|
7391
|
+
wv(), H_.setAttribute("hidden", ""), I_({ container: U_, message: e4, onRetry: t2 });
|
|
7314
7392
|
}
|
|
7315
|
-
function
|
|
7316
|
-
|
|
7317
|
-
|
|
7318
|
-
}, 3e4),
|
|
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
|
|
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
|
-
|
|
7406
|
+
C_(e4, { gates: [t3] });
|
|
7329
7407
|
return;
|
|
7330
7408
|
}
|
|
7331
7409
|
}
|
|
7332
7410
|
n2 = n2.parentElement;
|
|
7333
7411
|
}
|
|
7334
|
-
|
|
7412
|
+
C_(e4, {});
|
|
7335
7413
|
});
|
|
7336
7414
|
}
|
|
7337
|
-
function
|
|
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
|
-
|
|
7350
|
-
|
|
7427
|
+
Z.ontoolresult = (e4) => {
|
|
7428
|
+
wv();
|
|
7351
7429
|
try {
|
|
7352
|
-
let a2 =
|
|
7353
|
-
if ((o2 === "light" || o2 === "dark") && (
|
|
7354
|
-
|
|
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 (
|
|
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
|
-
|
|
7367
|
-
|
|
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 =
|
|
7371
|
-
l3 ? (
|
|
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),
|
|
7451
|
+
console.error("[Bodygraph] Recalculate failed or timed out:", e7), Q && (H_.setAttribute("hidden", ""), U_.removeAttribute("hidden"));
|
|
7374
7452
|
} finally {
|
|
7375
|
-
|
|
7453
|
+
J_ == null || J_.setBusy(false);
|
|
7376
7454
|
}
|
|
7377
7455
|
} });
|
|
7378
7456
|
}
|
|
7379
|
-
|
|
7457
|
+
Sv(a2), lv(cv());
|
|
7380
7458
|
} catch (e5) {
|
|
7381
|
-
|
|
7459
|
+
Tv("An error occurred while rendering the bodygraph.", Ev), console.error("[Bodygraph] Render error:", e5);
|
|
7382
7460
|
}
|
|
7383
|
-
},
|
|
7384
|
-
|
|
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
|
|
7388
|
-
let e4 =
|
|
7389
|
-
|
|
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
|
}
|