@telepath-computer/television 1.4.14 → 1.4.15
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/dist/cli.cjs
CHANGED
|
@@ -53345,7 +53345,7 @@ function disabledTelemetryRuntime() {
|
|
|
53345
53345
|
|
|
53346
53346
|
// ../server/src/updates/version.ts
|
|
53347
53347
|
function readVersionStamp() {
|
|
53348
|
-
if ("1.4.
|
|
53348
|
+
if ("1.4.15".length > 0) return "1.4.15";
|
|
53349
53349
|
return void 0;
|
|
53350
53350
|
}
|
|
53351
53351
|
function resolveUpdateReleaseVersion(env = process.env, stamp = readVersionStamp()) {
|
|
@@ -53887,8 +53887,8 @@ var Server = class {
|
|
|
53887
53887
|
};
|
|
53888
53888
|
};
|
|
53889
53889
|
function readServerPackageVersion() {
|
|
53890
|
-
if ("1.4.
|
|
53891
|
-
return telemetryVersion("1.4.
|
|
53890
|
+
if ("1.4.15".length > 0) {
|
|
53891
|
+
return telemetryVersion("1.4.15");
|
|
53892
53892
|
}
|
|
53893
53893
|
const packageJsonPath = import_node_path13.default.resolve(import_node_path13.default.dirname((0, import_node_url.fileURLToPath)(import_meta.url)), "..", "package.json");
|
|
53894
53894
|
if (!(0, import_node_fs11.existsSync)(packageJsonPath)) return telemetryVersion("0.0.0");
|
|
@@ -56119,8 +56119,8 @@ function resolveVercelSkillsInstallerBin() {
|
|
|
56119
56119
|
return localRequire.resolve("skills/bin/cli.mjs");
|
|
56120
56120
|
}
|
|
56121
56121
|
function readCLIVersion() {
|
|
56122
|
-
if ("1.4.
|
|
56123
|
-
return "1.4.
|
|
56122
|
+
if ("1.4.15".length > 0) {
|
|
56123
|
+
return "1.4.15";
|
|
56124
56124
|
}
|
|
56125
56125
|
const devPackageJsonPath = import_node_path20.default.join(getDevPackageDir(), "package.json");
|
|
56126
56126
|
if (!(0, import_node_fs18.existsSync)(devPackageJsonPath)) {
|
|
@@ -635,6 +635,9 @@ These four tokens are enough to replace the main surfaces and text, but they do
|
|
|
635
635
|
--navbar-border-color: transparent;
|
|
636
636
|
--navbar-border-width: 1px;
|
|
637
637
|
--navbar-border: var(--navbar-border-width) solid var(--navbar-border-color);
|
|
638
|
+
/* Space between the navbar's controls, and on each side of the line
|
|
639
|
+
between the sidebar titlebar's buttons; tabs follow it by default. */
|
|
640
|
+
--toolbar-gap: var(--space-3);
|
|
638
641
|
|
|
639
642
|
/* The ground behind the stage: one background value, composed from an
|
|
640
643
|
optional image URL over the light or dark neutral ground. The image token
|
|
@@ -663,7 +666,7 @@ These four tokens are enough to replace the main surfaces and text, but they do
|
|
|
663
666
|
/* The tab pill's own dials ([[ui/app/tab-strip/tab.frame]] and the strip
|
|
664
667
|
consume them). */
|
|
665
668
|
--tab-radius: var(--control-radius);
|
|
666
|
-
--tab-gap: var(--
|
|
669
|
+
--tab-gap: var(--toolbar-gap); /* between tabs in the strip */
|
|
667
670
|
--tab-border: var(--wallpaper-overlay-border);
|
|
668
671
|
/* Transparent at rest; pointer states use the shared control tints. */
|
|
669
672
|
--tab-background: var(--wallpaper-overlay-background);
|
|
@@ -685,10 +688,6 @@ These four tokens are enough to replace the main surfaces and text, but they do
|
|
|
685
688
|
--drag-item-shadow: var(--shadow-md);
|
|
686
689
|
--drag-action-shadow: var(--shadow-sm);
|
|
687
690
|
|
|
688
|
-
|
|
689
|
-
/* The shared top band supplies equal air above and below the tabs. */
|
|
690
|
-
--navbar-gap: 0px;
|
|
691
|
-
|
|
692
691
|
/* The artifact frame's radius ([[ui/app/artifact-frame/artifact-frame.frame]]);
|
|
693
692
|
artifact documents also apply it by reference
|
|
694
693
|
([[ui/app/artifact-frame/index.md#^af-document-corners]]). */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.sidebar{min-height:100vh;height:100%;box-sizing:border-box;display:flex;flex-direction:column;position:relative;background:var(--sidebar-background);background-clip:border-box;color:var(--sidebar-text-color);border-right:var(--sidebar-border);padding-right:1px;box-shadow:var(--sidebar-shadow)}.sidebar:after{content:"";position:absolute;top:0;bottom:0;right:0;width:1px;background:var(--panel-edge-highlight);font-size:0;background-size:100% calc(100% + 2px);background-position:bottom;pointer-events:none}.sidebar-titlebar{flex:none;height:var(--app-bar-height);padding-top:1px;padding-left:var(--traffic-light-x-reserve);padding-right:var(--app-bar-padding-inline);display:flex;align-items:center;justify-content:flex-end;-webkit-app-region:drag;border-bottom:1px solid transparent}.sidebar:has(.sidebar-body[continues-start]) .sidebar-titlebar{border-bottom-color:var(--sidebar-border-color)}.sidebar-body{flex:1;min-height:0;overflow-y:auto}.sidebar-titlebar>button{-webkit-app-region:no-drag}.toolbar-separator{flex:none;width:1px;height:16px;background:var(--color-border);margin:0 var(--toolbar-gap)}.channel-list{padding:var(--space-4) var(--space-8) var(--space-12)}.channel-group+.channel-group{margin-top:var(--space-24)}.channel-group-label{margin:0 0 var(--space-4);padding:0 var(--space-8);font-size:var(--sidebar-heading-font-size);font-weight:var(--font-weight-medium);color:var(--sidebar-heading-text-color)}.channel-row{position:relative;overflow:clip}.channel{display:block;width:100%;box-sizing:border-box;font-size:var(--text-md);line-height:var(--line-control);cursor:default;padding:var(--space-4) calc(2 * var(--space-4) + 20px) var(--space-4) var(--space-8);border:1px solid transparent;border-radius:var(--channel-radius);background:var(--channel-background);color:var(--channel-text-color);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:where(.channel-row:hover,.channel-row:has(.channel-menu-trigger[aria-expanded=true])) .channel:not([aria-selected=true]){background:var(--channel-background-hover)}:where(.channel-row:active) .channel:not([aria-selected=true]){background:var(--channel-background-active)}.channel[aria-selected=true]{background:var(--channel-background-selected);color:var(--channel-text-color-selected)}.channel-row:has(>.channel[aria-selected=true]) .channel-menu-trigger{color:var(--channel-text-color-selected)}.channel-menu-trigger{position:absolute;top:50%;right:var(--space-4);translate:0 -50%;opacity:0}.channel-row:hover .channel-menu-trigger,.channel-menu-trigger:focus-visible,.channel-row:has(.channel-menu-trigger[aria-expanded=true]) .channel-menu-trigger,.channel-row:has(>.channel[aria-selected=true]) .channel-menu-trigger{opacity:1}.channel-rename{display:block;width:100%;padding:var(--space-4) calc(2 * var(--space-4) + 20px) var(--space-4) var(--space-8)}.channel-row:has(.channel-rename){overflow:visible}.channel-rename-commit{position:absolute;top:50%;right:var(--space-4);translate:0 -50%}.channel-row.dragged{z-index:calc(var(--layer-ground) + 1);overflow:visible;width:fit-content;min-width:160px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--channel-radius);box-shadow:var(--drag-item-shadow)}.channel-row.dragged .channel{padding-right:var(--space-8)}.channel-drag-action{display:flex;align-items:center;gap:var(--space-4);position:absolute;top:-10px;right:-10px;height:20px;padding:0 var(--space-8) 0 var(--space-6);border-radius:10px;background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--drag-action-shadow);font-size:var(--text-sm)}.channel-drag-action tv-icon{font-size:12px}.channel-placeholder{display:block;height:calc(var(--line-control) + 2 * var(--space-4) + 2 * 1px);border-radius:var(--control-radius);background:var(--drag-placeholder-background)}:where(.dialog-overlay){position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--layer-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-16);background:var(--color-overlay)}:where(.dialog-alert){width:min(384px,90vw);box-sizing:border-box;padding:var(--space-24);display:flex;flex-direction:column;gap:var(--space-8)}:where(.dialog-alert h2){font-size:var(--text-lg);font-weight:var(--font-weight-semibold);overflow-wrap:break-word}:where(.dialog-alert p){color:var(--color-text-muted)}:where(.dialog-actions){margin-top:var(--space-16);display:flex;justify-content:flex-end;gap:var(--space-8)}.dialog-overlay>dialog::backdrop{background:transparent}.sidebar[dragging] .sidebar-body,.channel-switcher-pop[dragging] .channel-switcher-pop-body{overflow-anchor:none}.channel-group[drag-collapsed]{height:0;margin-top:0;overflow:visible}.channel-group[drag-collapsed]>.channel-group-label{display:none}.channel-group[drag-collapsed]+.channel-group{margin-top:0}.channel-group-withdrawal{position:fixed;z-index:2;margin:0;overflow:hidden;pointer-events:none}.channel-placeholder{width:100%}.channel-row.dragged{position:fixed;z-index:3;margin:0;overflow:visible;pointer-events:none}.channel-row.dragged :where(.channel-menu-trigger,tv-menu){display:none}.artifact-view .artifact-content{flex:1;min-height:0;overflow:auto;overscroll-behavior-y:contain;background:var(--color-surface)}.artifact-view[data-embed-loaded] .artifact-content{background:transparent}.artifact-view iframe.artifact-content,.artifact-view webview.artifact-content{margin-bottom:-1px;border:0;width:calc(100% + 2px);border-radius:var(--frame-radius) var(--frame-radius) 0 0}.artifact-view iframe.artifact-content{display:block}.artifact-view .artifact-placeholder{display:flex;align-items:center;justify-content:center;color:var(--color-text-muted, #888);font-size:12px}.artifact-view .artifact-missing{display:grid;place-items:center;box-sizing:border-box;padding:24px;color:#222;background:#dadada}.artifact-view .artifact-missing-wrapper{width:100%;max-width:520px;margin:0 auto}.artifact-view .artifact-missing h1{margin:0 0 .75rem;font-size:1.125rem;line-height:1.25}.artifact-view .artifact-missing p{margin:0;font-size:.875rem;line-height:1.45}.artifact-view .artifact-missing-path{margin:1rem 0}.artifact-view .artifact-missing-path-label{margin-bottom:.375rem}.artifact-view .artifact-missing code{display:inline-block;max-width:100%;overflow-wrap:anywhere;padding:.125rem .3rem;border-radius:.35rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.85em;color:#253040;background:#cbcbcb;-webkit-user-select:all;user-select:all}.artifact-frame{position:relative;isolation:isolate;display:flex;flex-direction:column;padding:0;box-sizing:border-box;height:100%;min-width:0;min-height:0;background:var(--frame-background);background-clip:border-box;box-shadow:var(--artifact-frame-shadow);border:var(--frame-border);border-radius:var(--frame-radius)}.artifact-frame-clip{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;padding:1px;overflow:hidden;border-radius:inherit}.artifact-frame:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;box-shadow:var(--panel-edge-shadow);pointer-events:none}.artifact-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;pointer-events:none;z-index:calc(var(--layer-ground) + 2);background:var(--panel-edge-highlight);font-size:var(--frame-radius);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude}.artifact-frame-clip>:is(iframe,webview){margin:-1px;width:calc(100% + 2px);flex:1;min-width:0;min-height:0;border:0}.artifact-title-bar{position:relative;flex:none;display:flex;align-items:center;gap:var(--space-6);padding:var(--frame-titlebar-padding);background:var(--frame-titlebar-background);color:var(--frame-titlebar-text-color);border-top:var(--frame-titlebar-border);margin:0 -1px -1px;border-left:1px solid transparent;border-right:1px solid transparent;border-bottom:1px solid transparent;background-clip:border-box}.artifact-title-bar .artifact-title{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.artifact-bar-divider{width:1px;height:14px;margin:0 var(--space-2);background:var(--frame-titlebar-divider-color)}.artifact-view{width:100%}.artifact-view>.artifact-frame-clip>.artifact-content{flex:1;height:auto;min-width:0;min-height:0;padding:0;border:0}.artifact-view>.artifact-frame-clip>iframe.artifact-content{display:block}body>.stage{height:100%}.stage{position:relative;flex:1;min-width:0;min-height:0;display:flex;container-type:size;background:transparent;overflow:hidden}.filmstrip{flex:1;min-width:0;min-height:0;overflow:hidden;overscroll-behavior:none;touch-action:none}.filmstrip-inner{height:100%;min-width:max-content;display:flex;align-items:center;gap:var(--page-gap);padding-bottom:var(--page-inset)}.filmstrip-inner:before,.filmstrip-inner:after{content:"";flex:none;width:50cqw}.page{flex:none;max-width:calc(100cqw - var(--page-inset) - var(--page-inset));max-height:calc(100cqh - var(--page-inset))}.page[full-screen]{width:calc(100cqw - var(--page-inset) - var(--page-inset));height:calc(100cqh - var(--page-inset))}.page>.artifact-frame{width:100%}.page{position:relative;transition:backdrop-filter .28s ease,scale .28s ease,width .28s ease,height .28s ease}.page:not([selected]){-webkit-backdrop-filter:blur(var(--page-inactive-backdrop-blur));backdrop-filter:blur(var(--page-inactive-backdrop-blur));border-radius:var(--frame-radius);scale:var(--page-inactive-scale)}.page>.artifact-frame{transition:filter .28s ease,opacity .28s ease}.page:not([selected])>.artifact-frame{filter:blur(var(--page-inactive-blur));opacity:var(--page-inactive-opacity)}.page:has(~.page[selected]){transform-origin:right center}.page[selected]~.page{transform-origin:left center}.page[selected]{z-index:calc(var(--layer-ground) + 1)}.page:not([selected]) .artifact-frame{box-shadow:none;pointer-events:none}@media(prefers-reduced-motion:reduce){.page,.page>.artifact-frame{transition:none}}.snap-outline{position:absolute;top:0;left:var(--page-inset);right:var(--page-inset);bottom:var(--page-inset);border:var(--page-snap-preview-border);border-radius:var(--page-snap-preview-radius);background:var(--page-snap-preview-background);pointer-events:none;z-index:calc(var(--layer-ground) + 2)}.stage-empty{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-sizing:border-box;width:max-content;min-height:160px;max-width:calc(100% - var(--page-inset) - var(--page-inset));padding:var(--space-24);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-8);text-align:center;color:var(--wallpaper-overlay-text-color);background:var(--wallpaper-overlay-background);border:var(--wallpaper-overlay-border);outline:var(--wallpaper-overlay-outline);outline-offset:0;border-radius:var(--panel-radius);-webkit-backdrop-filter:blur(var(--wallpaper-overlay-blur));backdrop-filter:blur(var(--wallpaper-overlay-blur))}.stage-empty p{margin:0}.page>.artifact-view{width:100%;height:100%}.page:not([selected]) .artifact-view{pointer-events:none}.page-handle{position:absolute;z-index:2;touch-action:none}.page-handle.left,.page-handle.right{top:0;bottom:0;width:var(--handle-band);cursor:ew-resize}.page-handle.top,.page-handle.bottom{left:0;right:0;height:var(--handle-band);cursor:ns-resize}.page-handle.left{left:calc(var(--handle-band) / -2)}.page-handle.right{right:calc(var(--handle-band) / -2)}.page-handle.top{top:calc(var(--handle-band) / -2)}.page-handle.bottom{bottom:calc(var(--handle-band) / -2)}.page-handle.top-left,.page-handle.top-right,.page-handle.bottom-left,.page-handle.bottom-right{width:var(--handle-reach);height:var(--handle-reach);z-index:3}.page-handle.top-left{left:calc(var(--handle-band) / 2 - var(--handle-thickness));top:calc(var(--handle-band) / 2 - var(--handle-thickness));cursor:nwse-resize;clip-path:polygon(0 0,100% 0,100% var(--handle-thickness),var(--handle-thickness) var(--handle-thickness),var(--handle-thickness) 100%,0 100%)}.page-handle.bottom-right{right:calc(var(--handle-band) / 2 - var(--handle-thickness));bottom:calc(var(--handle-band) / 2 - var(--handle-thickness));cursor:nwse-resize;clip-path:polygon(calc(100% - var(--handle-thickness)) 0,100% 0,100% 100%,0 100%,0 calc(100% - var(--handle-thickness)),calc(100% - var(--handle-thickness)) calc(100% - var(--handle-thickness)))}.page-handle.top-right{right:calc(var(--handle-band) / 2 - var(--handle-thickness));top:calc(var(--handle-band) / 2 - var(--handle-thickness));cursor:nesw-resize;clip-path:polygon(0 0,100% 0,100% 100%,calc(100% - var(--handle-thickness)) 100%,calc(100% - var(--handle-thickness)) var(--handle-thickness),0 var(--handle-thickness))}.page-handle.bottom-left{left:calc(var(--handle-band) / 2 - var(--handle-thickness));bottom:calc(var(--handle-band) / 2 - var(--handle-thickness));cursor:nesw-resize;clip-path:polygon(0 0,var(--handle-thickness) 0,var(--handle-thickness) calc(100% - var(--handle-thickness)),100% calc(100% - var(--handle-thickness)),100% 100%,0 100%)}.stage[resizing] iframe,.stage[resizing] webview{pointer-events:none}.stage[resizing] .page,.stage[window-tracking] .page{transition:none}.desktop-upgrade-gate{position:fixed;top:0;right:0;bottom:0;left:0}.upgrade-gate-body{box-sizing:border-box;width:min(560px,calc(100vw - 2 * var(--space-16)));max-height:calc(100vh - 2 * var(--space-16));overflow-y:auto;padding:var(--space-32) var(--space-24)}.upgrade-gate-body h1{font-size:var(--text-xl);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-12)}.upgrade-gate-body p{margin:0 0 var(--space-12)}.upgrade-gate-body pre{margin:0 0 var(--space-12);padding:var(--space-12);background:var(--color-surface-muted);border-radius:var(--control-radius);overflow-x:auto;font-family:var(--font-mono);font-size:var(--text-sm)}.upgrade-gate-body :last-child{margin-bottom:0}.upgrade-gate-actions{display:flex;justify-content:flex-end;padding:0 var(--space-24) var(--space-32)}.system-modal{width:min(400px,90vw);padding:var(--space-32) var(--space-24);display:flex;flex-direction:column;align-items:center;gap:var(--space-8);text-align:center}.system-modal h2{font-size:var(--text-lg);font-weight:var(--font-weight-semibold)}.system-modal p:not(.tv-error){color:var(--color-text-muted)}.auth-form .auth-token,.auth-form .auth-submit{align-self:stretch}.system-modal .server-url{font-family:var(--font-mono);font-size:var(--text-sm)}.system-modal-host{display:contents}.copy-button{position:relative}.copy-button .copy-button-idle,.copy-button .copy-button-done{display:inline-flex;align-items:center;gap:var(--space-6)}.copy-button .copy-button-done{display:none}.copy-button[copied] .copy-button-idle{visibility:hidden}.copy-button[copied] .copy-button-done{display:flex;position:absolute;top:0;right:0;bottom:0;left:0;align-items:center;justify-content:center}.copy-button-status{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.update-popover{width:360px;padding:var(--space-16);-webkit-user-select:text;user-select:text}.update-actions{display:flex;justify-content:flex-end;gap:var(--space-8);margin-top:var(--space-12)}.skill-popover{width:500px;padding:var(--space-16)}.skill-heading{font-size:var(--text-sm);font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text);padding:0 var(--space-2) var(--space-4)}.skill-intro{margin:0;padding:0 var(--space-2) var(--space-12);font-size:var(--text-sm);line-height:1.4;color:var(--color-text-muted)}.skill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-20)}.skill-card{display:flex;flex-direction:column;min-width:0}.skill-thumb{position:relative;aspect-ratio:1 / 1;border-radius:var(--panel-radius);overflow:hidden;background:var(--color-surface-muted)}.skill-thumb img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block}.skill-name{font-size:var(--text-md);font-weight:var(--font-weight-semibold);color:var(--color-text);margin-top:var(--space-6);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.skill-desc{font-size:var(--text-sm);line-height:1.35;color:var(--color-text-muted);margin:var(--space-2) 0 var(--space-6)}.skill-card button.copy-button{align-self:flex-start;margin-top:auto;height:auto;min-height:0;padding:var(--space-2) var(--space-6);font-size:var(--text-sm)}.settings-popover{width:320px;padding:var(--space-16)}.settings-heading{padding:0 var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text)}.settings-field{display:grid;gap:var(--space-4);margin-top:var(--space-12);font-size:var(--text-sm);color:var(--color-text-muted)}.settings-theme-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-8);align-items:center}.settings-field button[aria-haspopup=listbox]{width:100%;min-width:0;color:var(--color-text)}.settings-javascript-consent{display:grid;gap:var(--space-8);margin-top:var(--space-12);font-size:var(--text-sm)}.settings-javascript-disclosure{margin:0;color:var(--color-text-muted)}.settings-javascript-toggle{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-8);align-items:center;color:var(--color-text)}.settings-javascript-toggle input{-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;width:32px;height:18px;margin:0;padding:2px;border:var(--control-border);border-radius:var(--radius-pill);background:var(--control-background)}.settings-javascript-toggle input:before{content:"";display:block;width:12px;height:12px;border-radius:50%;background:var(--color-text-muted);transition:transform .12s ease}.settings-javascript-toggle input:checked{border-color:var(--color-primary);background:var(--color-primary)}.settings-javascript-toggle input:checked:before{background:var(--color-text-reversed);transform:translate(14px)}.settings-javascript-toggle input:focus-visible{outline:var(--outline-focus);outline-offset:2px}.settings-status,.settings-failure,.settings-errors{margin:var(--space-12) 0 0;font-size:var(--text-sm)}.settings-status{color:var(--color-text-muted)}.settings-failure{color:var(--color-danger)}.settings-errors{display:grid;gap:var(--space-8);color:var(--color-text-muted)}.settings-errors p{margin:0}.settings-errors strong{color:var(--color-text)}.tab-strip{display:flex;align-items:center;gap:var(--tab-gap);overflow-x:auto;scrollbar-width:none;padding:var(--space-4);margin:calc(-1 * var(--space-4))}.tab{position:relative;display:grid;align-items:center;font-size:var(--tab-font-size);line-height:var(--line-control);cursor:default;border:var(--tab-border);outline:var(--tab-outline);outline-offset:0;border-radius:var(--tab-radius);max-width:220px;flex:0 1 auto;padding:0 var(--space-8);background:var(--tab-background);background-clip:border-box;color:var(--tab-text-color)}.tab[data-compression=hugging]{min-width:max-content}.tab[data-compression=capped]{min-width:90px}.tab-label{min-width:0;padding:var(--space-4) 0;overflow:hidden;text-overflow:clip;white-space:nowrap}.tab-label[data-overflow]{-webkit-mask-image:linear-gradient(to right,black calc(100% - 16px),transparent);mask-image:linear-gradient(to right,black calc(100% - 16px),transparent)}.tab:not([aria-selected=true]){-webkit-backdrop-filter:blur(var(--wallpaper-overlay-blur));backdrop-filter:blur(var(--wallpaper-overlay-blur))}.tab:hover:not([aria-selected=true]){background:var(--tab-background-hover);background-clip:border-box}.tab:active:not([aria-selected=true]){background:var(--tab-background-active);background-clip:border-box}.tab[aria-selected=true]{border:var(--tab-border-selected);outline:var(--tab-outline-selected);background:var(--tab-background-selected);background-clip:border-box;color:var(--tab-text-color-selected)}.tab[aria-selected=true]:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;box-shadow:var(--panel-edge-shadow);pointer-events:none}.tab[aria-selected=true]:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;padding:1px;font-size:var(--tab-radius);background:var(--panel-edge-highlight);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.tab:focus-visible{outline:var(--outline-focus)}.tab[data-item-edge-fade]{-webkit-mask-image:linear-gradient(to right,transparent var(--item-fade-start),black calc(var(--item-fade-start) + var(--item-fade-left)),black calc(var(--item-fade-end) - var(--item-fade-right)),transparent var(--item-fade-end));mask-image:linear-gradient(to right,transparent var(--item-fade-start),black calc(var(--item-fade-start) + var(--item-fade-left)),black calc(var(--item-fade-end) - var(--item-fade-right)),transparent var(--item-fade-end));-webkit-mask-origin:border-box;mask-origin:border-box;mask-clip:border-box;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.tab.dragged{position:relative;z-index:calc(var(--layer-ground) + 1)}.tab-placeholder{display:block;flex:none;height:calc(var(--line-control) + 2 * var(--space-4) + 2 * 1px);box-sizing:border-box;border:var(--tab-border);border-radius:var(--tab-radius);background:var(--drag-placeholder-background)}.tab-strip{width:100%;min-width:0}.tab-strip>.tab[dragging]{position:fixed;z-index:calc(var(--layer-ground) + 2);flex:none;margin:0}.top-bar{background:var(--navbar-background);border-bottom:var(--navbar-border);color:var(--navbar-text-color);height:var(--app-bar-height);padding-top:var(--navbar-border-width);flex-shrink:0;display:grid;-webkit-app-region:drag;grid-template-columns:minmax(0,1fr) minmax(0,auto) minmax(max-content,1fr);align-items:center;column-gap:var(--space-8)}.top-bar>.tab-strip{grid-column:2;min-width:0;margin-inline:0}.top-bar:has(>.tab-strip[data-overflow]){grid-template-columns:0 minmax(0,1fr) max-content}.top-bar-controls{grid-column:3;justify-self:end;margin-left:calc(48px - var(--space-8));display:flex;align-items:center;gap:var(--toolbar-gap)}.top-bar :is(.top-bar-controls,.top-bar-lead)>button:not([intent]){color:var(--navbar-text-color)}.top-bar :is(.top-bar-controls,.top-bar-lead)>button[variant=ghost]:not([intent]){background:var(--wallpaper-overlay-background);background-clip:border-box;border:var(--wallpaper-overlay-border);outline:var(--wallpaper-overlay-outline);outline-offset:0;-webkit-backdrop-filter:blur(var(--wallpaper-overlay-blur));backdrop-filter:blur(var(--wallpaper-overlay-blur))}.top-bar :is(.top-bar-controls,.top-bar-lead)>button[variant=ghost]:not([intent]):hover:not(:disabled){background:var(--wallpaper-overlay-background-hover)}.top-bar :is(.top-bar-controls,.top-bar-lead)>button[variant=ghost]:not([intent]):is(:active,[aria-expanded=true]):not(:disabled){background:var(--wallpaper-overlay-background-active)}.top-bar :is(.top-bar-controls,.top-bar-lead)>button[variant=ghost]:not([intent]):focus-visible{outline:var(--outline-focus);outline-offset:1px}.top-bar>.tab-strip,.top-bar>.top-bar-controls{-webkit-app-region:no-drag}.top-bar:has(>.top-bar-lead){grid-template-columns:minmax(max-content,1fr) minmax(0,auto) minmax(max-content,1fr)}.top-bar:has(>.top-bar-lead):has(>.tab-strip[data-overflow]){grid-template-columns:max-content minmax(0,1fr) max-content}.top-bar:has(>.top-bar-lead)>.tab-strip[data-overflow]{grid-column:2}.top-bar:has(>.top-bar-lead):has(>.tab-strip[data-overflow])>.top-bar-controls{grid-column:3}.top-bar-lead{grid-column:1;justify-self:start;display:flex;align-items:center;gap:var(--toolbar-gap);padding-left:var(--traffic-light-x-reserve);min-width:0}.top-bar-lead>button{-webkit-app-region:no-drag}.channel-switcher{display:inline-flex;align-items:center;gap:var(--space-4);font-weight:var(--font-weight-medium);max-width:220px}.channel-switcher>.channel-switcher-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-bar tv-popover{max-height:600px}.channel-switcher-pop{--sidebar-text-color: var(--panel-text-color);--sidebar-heading-text-color: var(--color-text-muted);--channel-background: transparent;--channel-text-color: var(--panel-text-color);--channel-background-hover: var(--option-background-highlighted);--channel-background-active: var(--option-background-active);--channel-background-selected: var(--color-primary);--channel-text-color-selected: var(--color-primary-text);width:260px;display:flex;flex-direction:column}.channel-switcher-pop .channel:not([aria-selected=true]){background:var(--channel-background)}.channel-switcher-pop:not(:has(:focus-visible)) .channel-row:hover>.channel:not([aria-selected=true]),.channel-switcher-pop .channel:focus-visible:not([aria-selected=true]),.channel-switcher-pop .channel-row:has(>.channel-menu-trigger[aria-expanded=true])>.channel:not([aria-selected=true]){background:var(--channel-background-hover)}.channel-switcher-pop .channel-row:active>.channel:not([aria-selected=true]){background:var(--channel-background-active)}.channel-switcher-pop .channel:focus-visible{outline:none}.channel-switcher-pop-body{flex:1;min-height:0;overflow-y:auto;padding-top:var(--space-8)}.channel-switcher-pop-footer{display:flex;align-items:center;justify-content:flex-end;border-top:1px solid var(--color-border);padding:var(--space-4) var(--space-8)}#theme-iframe-background,#foreground-overlay,#theme-iframe-overlay{position:fixed;top:0;right:0;bottom:0;left:0;box-sizing:border-box;width:100%;height:100%;margin:0;padding:0;pointer-events:none!important}#theme-iframe-background,#theme-iframe-overlay{border:0;background:transparent}:root[data-theme=light] #theme-iframe-background,:root[data-theme=light] #theme-iframe-overlay{color-scheme:light!important}:root[data-theme=dark] #theme-iframe-background,:root[data-theme=dark] #theme-iframe-overlay{color-scheme:dark!important}#theme-iframe-background{z-index:0!important}#foreground-overlay{z-index:2147483646!important}#theme-iframe-overlay{z-index:2147483647!important}#app{position:relative;z-index:1!important;display:flex;height:100%;min-width:0}#app:focus{outline:none}.app-sidebar{flex:none;width:var(--sidebar-width);min-width:0}.app-main{border-left:1px solid transparent;position:relative;flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--app-wallpaper);will-change:opacity}.app-main:before{content:"";position:absolute;top:0;bottom:0;left:-1px;width:1px;box-shadow:var(--panel-edge-shadow);clip-path:inset(0 -1px 0 1px);translate:-1px;pointer-events:none}.app-main>.top-bar{min-width:0;padding-inline:var(--app-bar-padding-inline);padding-left:calc(var(--app-bar-padding-inline) - 1px)}#app{-webkit-user-select:none;user-select:none}.sidebar-motion-toggle{display:none}#app[data-sidebar-motion]{overflow:clip}#app[data-sidebar-motion] *{transition:none!important;animation:none!important}#app[data-sidebar-motion]>.app-sidebar{margin-left:calc(var(--motion-boundary) - var(--sidebar-width))}#app[data-sidebar-motion] :is(.sidebar-collapse,.sidebar-expand){visibility:hidden}#app[data-sidebar-motion] .sidebar-titlebar>:not(.sidebar-collapse){opacity:var(--motion-titlebar-opacity)}#app[data-sidebar-motion] .top-bar{position:relative}#app[data-sidebar-motion] .top-bar-lead{width:var(--motion-lead-reservation);padding-left:0}#app[data-sidebar-motion] .channel-switcher{position:absolute;left:var(--motion-switcher-left);opacity:var(--motion-switcher-opacity);pointer-events:none}#app[data-sidebar-motion] .sidebar-motion-toggle{display:inline-grid;place-items:center;position:absolute;z-index:3;top:var(--motion-toggle-top);left:var(--motion-toggle-left);width:var(--motion-toggle-width);height:var(--motion-toggle-height);padding:0;border:0;background:transparent;color:var(--sidebar-text-color);-webkit-app-region:no-drag}.sidebar-motion-toggle>span{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;border-radius:var(--control-radius)}.sidebar-motion-toggle>.expanded-paint{clip-path:inset(0 calc(100% - var(--motion-toggle-wipe)) 0 0)}.sidebar-motion-toggle>.collapsed-paint{color:var(--navbar-text-color);background:var(--wallpaper-overlay-background);border:var(--wallpaper-overlay-border);outline:var(--wallpaper-overlay-outline);outline-offset:0;-webkit-backdrop-filter:blur(var(--wallpaper-overlay-blur));backdrop-filter:blur(var(--wallpaper-overlay-blur));clip-path:inset(0 0 0 var(--motion-toggle-wipe))}#app{width:100%;height:100%;min-width:0;overflow:hidden}#app>.app-main{overflow:hidden}.app-sidebar-resize{position:absolute;z-index:2;top:0;bottom:0;left:var(--sidebar-width);width:6px;translate:-3px 0;border:0;background:transparent;cursor:col-resize;touch-action:none}.sidebar-toggle-seat{flex:none;width:24px;height:24px}#app[data-sidebar-transition]>:is(.app-sidebar,.app-main){pointer-events:none}#app[data-sidebar-transition]>.sidebar-motion-toggle{pointer-events:auto}.sidebar-toggle-paint{pointer-events:none}*,*:before,*:after{box-sizing:border-box}:where(html,body){margin:0;padding:0}:where(body){font-family:var(--font-sans);font-size:var(--text-md);font-weight:var(--font-weight-normal);line-height:normal;color:var(--color-text)}:where(h1,h2,h3,h4,h5,h6,p,ul,ol,blockquote,pre,hr){margin:0}:where(button,input,select,textarea){font:inherit;color:inherit}:where(dialog,[popover]){border:0;padding:0}@font-face{font-family:Hind;src:url(./Hind-Variable-C47b_dt9.woff2) format("woff2-variations");font-weight:300 700;font-display:block}:where(:root){--font-sans: "Hind", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, monospace;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600}:where(:root){--panel-edge-highlight: linear-gradient(to bottom, rgb(255 255 255 / .36) 0 .5px, rgb(255 255 255 / .28) .5px 1px, rgb(255 255 255 / .2) 1em);--panel-edge-shadow: 0 0 0 .5px rgb(0 0 0 / .205);--panel-background: var(--color-surface);--panel-text-color: var(--color-text);--panel-border-color: var(--color-border);--panel-border: none;--option-background-highlighted: color-mix(in oklch, transparent, var(--option-background-active) var(--hover-mix));--option-background-active: var(--tint-active);--checkbox-color: var(--color-primary);--control-text-color: var(--color-text);--control-border-color: var(--color-border);--control-border-width: 1px;--control-border: var(--control-border-width) solid var(--control-border-color);--input-placeholder-text-color: var(--color-text-muted);--neutral: oklch(.556 0 0);--red: oklch(.637 .237 25.331);--orange: oklch(.705 .213 47.604);--yellow: oklch(.852 .199 91.936);--green: oklch(.723 .219 149.579);--cyan: oklch(.715 .143 215.221);--blue: oklch(.623 .214 259.815);--purple: oklch(.627 .265 303.9);--pink: oklch(.656 .241 354.308);--accent: var(--blue);--neutral-50: oklch(from var(--neutral) .985 c h);--neutral-100: oklch(from var(--neutral) .97 c h);--neutral-200: oklch(from var(--neutral) .922 c h);--neutral-300: oklch(from var(--neutral) .87 c h);--neutral-400: oklch(from var(--neutral) .708 c h);--neutral-500: var(--neutral);--neutral-600: oklch(from var(--neutral) .439 c h);--neutral-700: oklch(from var(--neutral) .371 c h);--neutral-800: oklch(from var(--neutral) .269 c h);--neutral-900: oklch(from var(--neutral) .205 c h);--neutral-950: oklch(from var(--neutral) .145 c h);--red-50: oklch(from var(--red) calc(l + (1 - l)*.92) calc(c*.055) h);--red-100: oklch(from var(--red) calc(l + (1 - l)*.824) calc(c*.135) h);--red-200: oklch(from var(--red) calc(l + (1 - l)*.683) calc(c*.262) h);--red-300: oklch(from var(--red) calc(l + (1 - l)*.471) calc(c*.481) h);--red-400: oklch(from var(--red) calc(l + (1 - l)*.185) calc(c*.806) h);--red-500: var(--red);--red-600: oklch(from var(--red) calc(l*.906) calc(c*1.034) h);--red-700: oklch(from var(--red) calc(l*.793) calc(c*.899) h);--red-800: oklch(from var(--red) calc(l * (1 - .303)) calc(c*.747) h);--red-900: oklch(from var(--red) calc(l*.622) calc(c*.595) h);--red-950: oklch(from var(--red) calc(l*.405) calc(c*.435) h);--orange-50: oklch(from var(--orange) calc(l + (1 - l)*.92) calc(c*.055) h);--orange-100: oklch(from var(--orange) calc(l + (1 - l)*.824) calc(c*.135) h);--orange-200: oklch(from var(--orange) calc(l + (1 - l)*.683) calc(c*.262) h);--orange-300: oklch(from var(--orange) calc(l + (1 - l)*.471) calc(c*.481) h);--orange-400: oklch(from var(--orange) calc(l + (1 - l)*.185) calc(c*.806) h);--orange-500: var(--orange);--orange-600: oklch(from var(--orange) calc(l*.906) calc(c*1.034) h);--orange-700: oklch(from var(--orange) calc(l*.793) calc(c*.899) h);--orange-800: oklch(from var(--orange) calc(l * (1 - .303)) calc(c*.747) h);--orange-900: oklch(from var(--orange) calc(l*.622) calc(c*.595) h);--orange-950: oklch(from var(--orange) calc(l*.405) calc(c*.435) h);--yellow-50: oklch(from var(--yellow) calc(l + (1 - l)*.937) calc(c*.141) calc(h + 10) );--yellow-100: oklch(from var(--yellow) calc(l + (1 - l)*.868) calc(c*.386) calc(h + 11) );--yellow-200: oklch(from var(--yellow) calc(l + (1 - l)*.732) calc(c*.701) calc(h + 10) );--yellow-300: oklch(from var(--yellow) calc(l + (1 - l)*.537) calc(c*.989) calc(h + 6) );--yellow-400: oklch(from var(--yellow) calc(l + (1 - l)*.278) calc(c*1.082) calc(h + 3) );--yellow-500: var(--yellow);--yellow-600: oklch(from var(--yellow) calc(l*.92) calc(c*.95) calc(h - 6) );--yellow-700: oklch(from var(--yellow) calc(l*.81) calc(c*.8) calc(h - 14) );--yellow-800: oklch(from var(--yellow) calc(l * (1 - .33)) calc(c*.65) calc(h - 26) );--yellow-900: oklch(from var(--yellow) calc(l*.54) calc(c*.52) calc(h - 32) );--yellow-950: oklch(from var(--yellow) calc(l*.36) calc(c*.359) calc(h - 38) );--green-50: oklch(from var(--green) calc(l + (1 - l)*.92) calc(c*.055) h);--green-100: oklch(from var(--green) calc(l + (1 - l)*.824) calc(c*.135) h);--green-200: oklch(from var(--green) calc(l + (1 - l)*.683) calc(c*.262) h);--green-300: oklch(from var(--green) calc(l + (1 - l)*.471) calc(c*.481) h);--green-400: oklch(from var(--green) calc(l + (1 - l)*.185) calc(c*.806) h);--green-500: var(--green);--green-600: oklch(from var(--green) calc(l*.906) calc(c*1.034) h);--green-700: oklch(from var(--green) calc(l*.793) calc(c*.899) h);--green-800: oklch(from var(--green) calc(l * (1 - .303)) calc(c*.747) h);--green-900: oklch(from var(--green) calc(l*.622) calc(c*.595) h);--green-950: oklch(from var(--green) calc(l*.405) calc(c*.435) h);--cyan-50: oklch(from var(--cyan) calc(l + (1 - l)*.92) calc(c*.055) h);--cyan-100: oklch(from var(--cyan) calc(l + (1 - l)*.824) calc(c*.135) h);--cyan-200: oklch(from var(--cyan) calc(l + (1 - l)*.683) calc(c*.262) h);--cyan-300: oklch(from var(--cyan) calc(l + (1 - l)*.471) calc(c*.481) h);--cyan-400: oklch(from var(--cyan) calc(l + (1 - l)*.185) calc(c*.806) h);--cyan-500: var(--cyan);--cyan-600: oklch(from var(--cyan) calc(l*.906) calc(c*1.034) h);--cyan-700: oklch(from var(--cyan) calc(l*.793) calc(c*.899) h);--cyan-800: oklch(from var(--cyan) calc(l * (1 - .303)) calc(c*.747) h);--cyan-900: oklch(from var(--cyan) calc(l*.622) calc(c*.595) h);--cyan-950: oklch(from var(--cyan) calc(l*.405) calc(c*.435) h);--blue-50: oklch(from var(--blue) calc(l + (1 - l)*.92) calc(c*.055) h);--blue-100: oklch(from var(--blue) calc(l + (1 - l)*.824) calc(c*.135) h);--blue-200: oklch(from var(--blue) calc(l + (1 - l)*.683) calc(c*.262) h);--blue-300: oklch(from var(--blue) calc(l + (1 - l)*.471) calc(c*.481) h);--blue-400: oklch(from var(--blue) calc(l + (1 - l)*.185) calc(c*.806) h);--blue-500: var(--blue);--blue-600: oklch(from var(--blue) calc(l*.906) calc(c*1.034) h);--blue-700: oklch(from var(--blue) calc(l*.793) calc(c*.899) h);--blue-800: oklch(from var(--blue) calc(l * (1 - .303)) calc(c*.747) h);--blue-900: oklch(from var(--blue) calc(l*.622) calc(c*.595) h);--blue-950: oklch(from var(--blue) calc(l*.405) calc(c*.435) h);--purple-50: oklch(from var(--purple) calc(l + (1 - l)*.92) calc(c*.055) h);--purple-100: oklch(from var(--purple) calc(l + (1 - l)*.824) calc(c*.135) h);--purple-200: oklch(from var(--purple) calc(l + (1 - l)*.683) calc(c*.262) h);--purple-300: oklch(from var(--purple) calc(l + (1 - l)*.471) calc(c*.481) h);--purple-400: oklch(from var(--purple) calc(l + (1 - l)*.185) calc(c*.806) h);--purple-500: var(--purple);--purple-600: oklch(from var(--purple) calc(l*.906) calc(c*1.034) h);--purple-700: oklch(from var(--purple) calc(l*.793) calc(c*.899) h);--purple-800: oklch(from var(--purple) calc(l * (1 - .303)) calc(c*.747) h);--purple-900: oklch(from var(--purple) calc(l*.622) calc(c*.595) h);--purple-950: oklch(from var(--purple) calc(l*.405) calc(c*.435) h);--pink-50: oklch(from var(--pink) calc(l + (1 - l)*.92) calc(c*.055) h);--pink-100: oklch(from var(--pink) calc(l + (1 - l)*.824) calc(c*.135) h);--pink-200: oklch(from var(--pink) calc(l + (1 - l)*.683) calc(c*.262) h);--pink-300: oklch(from var(--pink) calc(l + (1 - l)*.471) calc(c*.481) h);--pink-400: oklch(from var(--pink) calc(l + (1 - l)*.185) calc(c*.806) h);--pink-500: var(--pink);--pink-600: oklch(from var(--pink) calc(l*.906) calc(c*1.034) h);--pink-700: oklch(from var(--pink) calc(l*.793) calc(c*.899) h);--pink-800: oklch(from var(--pink) calc(l * (1 - .303)) calc(c*.747) h);--pink-900: oklch(from var(--pink) calc(l*.622) calc(c*.595) h);--pink-950: oklch(from var(--pink) calc(l*.405) calc(c*.435) h);--accent-50: oklch(from var(--accent) calc(l + (1 - l)*.92) calc(c*.055) h);--accent-100: oklch(from var(--accent) calc(l + (1 - l)*.824) calc(c*.135) h);--accent-200: oklch(from var(--accent) calc(l + (1 - l)*.683) calc(c*.262) h);--accent-300: oklch(from var(--accent) calc(l + (1 - l)*.471) calc(c*.481) h);--accent-400: oklch(from var(--accent) calc(l + (1 - l)*.185) calc(c*.806) h);--accent-500: var(--accent);--accent-600: oklch(from var(--accent) calc(l*.906) calc(c*1.034) h);--accent-700: oklch(from var(--accent) calc(l*.793) calc(c*.899) h);--accent-800: oklch(from var(--accent) calc(l * (1 - .303)) calc(c*.747) h);--accent-900: oklch(from var(--accent) calc(l*.622) calc(c*.595) h);--accent-950: oklch(from var(--accent) calc(l*.405) calc(c*.435) h);--neutral-alpha-5: oklch(from var(--neutral) l c h / var(--alpha-5));--neutral-alpha-10: oklch(from var(--neutral) l c h / var(--alpha-10));--neutral-alpha-15: oklch(from var(--neutral) l c h / var(--alpha-15));--neutral-alpha-25: oklch(from var(--neutral) l c h / var(--alpha-25));--neutral-alpha-50: oklch(from var(--neutral) l c h / var(--alpha-50));--neutral-alpha-75: oklch(from var(--neutral) l c h / var(--alpha-75));--red-alpha-5: oklch(from var(--red) l c h / var(--alpha-5));--red-alpha-10: oklch(from var(--red) l c h / var(--alpha-10));--red-alpha-15: oklch(from var(--red) l c h / var(--alpha-15));--red-alpha-25: oklch(from var(--red) l c h / var(--alpha-25));--red-alpha-50: oklch(from var(--red) l c h / var(--alpha-50));--red-alpha-75: oklch(from var(--red) l c h / var(--alpha-75));--orange-alpha-5: oklch(from var(--orange) l c h / var(--alpha-5));--orange-alpha-10: oklch(from var(--orange) l c h / var(--alpha-10));--orange-alpha-15: oklch(from var(--orange) l c h / var(--alpha-15));--orange-alpha-25: oklch(from var(--orange) l c h / var(--alpha-25));--orange-alpha-50: oklch(from var(--orange) l c h / var(--alpha-50));--orange-alpha-75: oklch(from var(--orange) l c h / var(--alpha-75));--yellow-alpha-5: oklch(from var(--yellow) l c h / var(--alpha-5));--yellow-alpha-10: oklch(from var(--yellow) l c h / var(--alpha-10));--yellow-alpha-15: oklch(from var(--yellow) l c h / var(--alpha-15));--yellow-alpha-25: oklch(from var(--yellow) l c h / var(--alpha-25));--yellow-alpha-50: oklch(from var(--yellow) l c h / var(--alpha-50));--yellow-alpha-75: oklch(from var(--yellow) l c h / var(--alpha-75));--green-alpha-5: oklch(from var(--green) l c h / var(--alpha-5));--green-alpha-10: oklch(from var(--green) l c h / var(--alpha-10));--green-alpha-15: oklch(from var(--green) l c h / var(--alpha-15));--green-alpha-25: oklch(from var(--green) l c h / var(--alpha-25));--green-alpha-50: oklch(from var(--green) l c h / var(--alpha-50));--green-alpha-75: oklch(from var(--green) l c h / var(--alpha-75));--cyan-alpha-5: oklch(from var(--cyan) l c h / var(--alpha-5));--cyan-alpha-10: oklch(from var(--cyan) l c h / var(--alpha-10));--cyan-alpha-15: oklch(from var(--cyan) l c h / var(--alpha-15));--cyan-alpha-25: oklch(from var(--cyan) l c h / var(--alpha-25));--cyan-alpha-50: oklch(from var(--cyan) l c h / var(--alpha-50));--cyan-alpha-75: oklch(from var(--cyan) l c h / var(--alpha-75));--blue-alpha-5: oklch(from var(--blue) l c h / var(--alpha-5));--blue-alpha-10: oklch(from var(--blue) l c h / var(--alpha-10));--blue-alpha-15: oklch(from var(--blue) l c h / var(--alpha-15));--blue-alpha-25: oklch(from var(--blue) l c h / var(--alpha-25));--blue-alpha-50: oklch(from var(--blue) l c h / var(--alpha-50));--blue-alpha-75: oklch(from var(--blue) l c h / var(--alpha-75));--purple-alpha-5: oklch(from var(--purple) l c h / var(--alpha-5));--purple-alpha-10: oklch(from var(--purple) l c h / var(--alpha-10));--purple-alpha-15: oklch(from var(--purple) l c h / var(--alpha-15));--purple-alpha-25: oklch(from var(--purple) l c h / var(--alpha-25));--purple-alpha-50: oklch(from var(--purple) l c h / var(--alpha-50));--purple-alpha-75: oklch(from var(--purple) l c h / var(--alpha-75));--pink-alpha-5: oklch(from var(--pink) l c h / var(--alpha-5));--pink-alpha-10: oklch(from var(--pink) l c h / var(--alpha-10));--pink-alpha-15: oklch(from var(--pink) l c h / var(--alpha-15));--pink-alpha-25: oklch(from var(--pink) l c h / var(--alpha-25));--pink-alpha-50: oklch(from var(--pink) l c h / var(--alpha-50));--pink-alpha-75: oklch(from var(--pink) l c h / var(--alpha-75));--accent-alpha-5: oklch(from var(--accent) l c h / var(--alpha-5));--accent-alpha-10: oklch(from var(--accent) l c h / var(--alpha-10));--accent-alpha-15: oklch(from var(--accent) l c h / var(--alpha-15));--accent-alpha-25: oklch(from var(--accent) l c h / var(--alpha-25));--accent-alpha-50: oklch(from var(--accent) l c h / var(--alpha-50));--accent-alpha-75: oklch(from var(--accent) l c h / var(--alpha-75));--alpha-3: 3%;--alpha-5: 5%;--alpha-10: 10%;--alpha-15: 15%;--alpha-20: 20%;--alpha-25: 25%;--alpha-40: 40%;--alpha-50: 50%;--alpha-75: 75%;--hover-mix: 50%;--alpha-active: 8%;--tint-hover: color-mix(in oklch, transparent, var(--tint-active) var(--hover-mix));--tint-active: oklch(from currentColor l c h / var(--alpha-active));--icon-check: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 12"><path d="M10.2 3.1 5.1 8.2 2.4 5.5" fill="none" stroke="black" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>');--color-surface: white;--color-surface-muted: var(--neutral-100);--color-text: var(--neutral-900);--color-text-muted: var(--neutral-500);--color-text-reversed: white;--color-border: oklch(from var(--color-text) l c h / 12%);--tint-surface: oklch(from var(--color-surface) l c h / var(--alpha-50));--tint-surface-muted: oklch(from var(--color-surface-muted) l c h / var(--alpha-50));--control-background: var(--color-surface);--color-danger: var(--red-500);--tint-danger: oklch(from var(--color-danger) l c h / var(--alpha-10));--tint-danger-hover: color-mix(in oklch, transparent, var(--tint-danger-active) var(--hover-mix));--tint-danger-active: oklch(from var(--color-danger) l c h / var(--alpha-active));--color-alert: var(--yellow-500);--tint-alert: oklch(from var(--color-alert) l c h / var(--alpha-10));--tint-alert-hover: color-mix(in oklch, transparent, var(--tint-alert-active) var(--hover-mix));--tint-alert-active: oklch(from var(--color-alert) l c h / var(--alpha-active));--color-success: var(--green-500);--tint-success: oklch(from var(--color-success) l c h / var(--alpha-10));--color-primary: var(--accent-500);--tint-primary: oklch(from var(--color-primary) l c h / var(--alpha-10));--tint-primary-hover: color-mix(in oklch, transparent, var(--tint-primary-active) var(--hover-mix));--tint-primary-active: oklch(from var(--color-primary) l c h / var(--alpha-active));--color-primary-text: oklch(from var(--color-primary) clamp(.2, (var(--contrast-flip) - l) * 1e6, .98) 0 h);--outline-focus: 2px solid var(--color-primary);--control-background-hover: color-mix(in oklch, var(--control-background), var(--control-background-active) var(--hover-mix));--control-background-active: color-mix(in oklch, var(--control-background), oklch(from var(--control-background) clamp(0, (var(--state-flip) - l) * 1e6, 1) 0 h) var(--alpha-active));--color-primary-hover: color-mix(in oklch, var(--color-primary), var(--color-primary-active) var(--hover-mix));--color-primary-active: color-mix(in oklch, var(--color-primary), oklch(from var(--color-primary) clamp(0, (var(--state-flip) - l) * 1e6, 1) 0 h) var(--alpha-active));--color-danger-hover: color-mix(in oklch, var(--color-danger), var(--color-danger-active) var(--hover-mix));--color-danger-active: color-mix(in oklch, var(--color-danger), oklch(from var(--color-danger) clamp(0, (var(--state-flip) - l) * 1e6, 1) 0 h) var(--alpha-active));--color-alert-hover: color-mix(in oklch, var(--color-alert), var(--color-alert-active) var(--hover-mix));--color-alert-active: color-mix(in oklch, var(--color-alert), oklch(from var(--color-alert) clamp(0, (var(--state-flip) - l) * 1e6, 1) 0 h) var(--alpha-active));--color-link: currentColor;--color-overlay: oklch(from var(--neutral-950) l c h / var(--alpha-40));--state-flip: .35;--contrast-flip: .66;color-scheme:light}:where([data-theme=dark]){--panel-edge-shadow: 0 0 0 .5px rgb(0 0 0 / .912);--alpha-active: 12%;--red: oklch(.704 .191 22.216);--orange: oklch(.75 .183 55.934);--yellow: oklch(.879 .169 91.5);--green: oklch(.792 .209 151.711);--cyan: oklch(.789 .154 211.53);--blue: oklch(.707 .165 254.624);--purple: oklch(.714 .203 305.504);--pink: oklch(.718 .202 349.761);--color-surface: var(--neutral-900);--color-surface-muted: var(--neutral-800);--color-text: var(--neutral-100);--color-text-muted: var(--neutral-400);--color-border: oklch(from var(--color-text) l c h / 18%);color-scheme:dark}:where(:root){--control-font-size: var(--text-md);--text-base: 14px;--text-sm: round(calc(var(--text-base) * 12 / 14), 1px);--text-md: var(--text-base);--text-lg: round(calc(var(--text-base) * 16 / 14), 1px);--text-xl: round(calc(var(--text-base) * 18 / 14), 1px);--text-2xl: round(calc(var(--text-base) * 20 / 14), 1px);--text-3xl: round(calc(var(--text-base) * 24 / 14), 1px);--text-4xl: round(calc(var(--text-base) * 30 / 14), 1px);--line-control: 18px;--line-control-sm: 14px}:where(:root){--control-padding: var(--space-2) var(--space-16);--space-2: 2px;--space-3: 3px;--space-4: 4px;--space-6: 6px;--space-8: 8px;--space-10: 10px;--space-12: 12px;--space-16: 16px;--space-20: 20px;--space-24: 24px;--space-32: 32px;--space-48: 48px;--space-64: 64px;--control-radius: 6px;--radius-pill: 9999px;--panel-radius: 8px;--popover-distance: var(--space-4)}:where(:root){--shadow-sm: 0 1px 4px oklch(from var(--neutral-950) l c h / var(--alpha-15));--shadow-md: 0 4px 12px oklch(from var(--neutral-950) l c h / var(--alpha-15));--shadow-lg: 0 8px 24px oklch(from var(--neutral-950) l c h / var(--alpha-10)), 0 2px 8px oklch(from var(--neutral-950) l c h / var(--alpha-5));--shadow-xl: 0 24px 48px oklch(from var(--neutral-950) l c h / var(--alpha-15)), 0 4px 12px oklch(from var(--neutral-950) l c h / 7.5%);--popover-shadow: var(--shadow-md);--dialog-shadow: var(--shadow-lg)}:where([data-theme=dark]){--shadow-sm: 0 1px 4px oklch(from var(--neutral-950) l c h / var(--alpha-40));--shadow-md: 0 4px 12px oklch(from var(--neutral-950) l c h / var(--alpha-40));--shadow-lg: 0 8px 24px oklch(from var(--neutral-950) l c h / var(--alpha-40)), 0 2px 8px oklch(from var(--neutral-950) l c h / var(--alpha-25));--shadow-xl: 0 24px 48px oklch(from var(--neutral-950) l c h / 30%), 0 4px 12px oklch(from var(--neutral-950) l c h / 18.75%)}:where(:root){--layer-ground: 0;--layer-panel: 100;--layer-overlay: 200}:where([text-display=prose]){font-size:var(--text-md);font-weight:var(--font-weight-medium);line-height:1.5;-webkit-font-smoothing:antialiased}:where([text-display=prose] h1){font-size:var(--text-3xl);font-weight:var(--font-weight-semibold);line-height:1.25;margin:0 0 var(--space-12)}:where([text-display=prose] h2){font-size:var(--text-xl);font-weight:var(--font-weight-semibold);line-height:1.3;margin:var(--space-24) 0 var(--space-8)}:where([text-display=prose] h3,[text-display=prose] h4,[text-display=prose] h5,[text-display=prose] h6){font-size:var(--text-lg);font-weight:var(--font-weight-semibold);margin:var(--space-16) 0 var(--space-4)}:where([text-display=prose] p,[text-display=prose] ul,[text-display=prose] ol,[text-display=prose] blockquote,[text-display=prose] pre,[text-display=prose] hr,[text-display=prose] table,[text-display=prose] figure){margin:0 0 var(--space-12)}:where([text-display=prose]>:last-child){margin-bottom:0}:where([text-display=prose] a){color:var(--color-link);text-decoration:underline;text-underline-offset:2px}:where([text-display=prose] ul,[text-display=prose] ol){padding-left:var(--space-24)}:where([text-display=prose] li+li){margin-top:var(--space-4)}:where([text-display=prose] blockquote){border-left:2px solid var(--color-border);padding-left:var(--space-12);color:var(--color-text-muted)}:where([text-display=prose] code,[text-display=prose] kbd,[text-display=prose] samp){font-family:var(--font-mono);font-size:var(--text-sm);background:var(--color-surface-muted);border-radius:var(--control-radius);padding:1px var(--space-4)}:where([text-display=prose] pre){font-family:var(--font-mono);font-size:var(--text-sm);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--control-radius);padding:var(--space-12);overflow-x:auto}:where([text-display=prose] pre code){background:none;border-radius:0;padding:0}:where([text-display=prose] hr){border:0;border-top:1px solid var(--color-border)}:where([text-display=prose] table){border-collapse:collapse;width:100%}:where([text-display=prose] th){text-align:left;font-weight:var(--font-weight-semibold);background:var(--color-surface-muted)}:where([text-display=prose] th,[text-display=prose] td){padding:var(--space-4) var(--space-12) var(--space-4) 0;border-bottom:1px solid var(--color-border)}:where([text-display=prose] img){max-width:100%;height:auto}:where([text-display=prose] header p){color:var(--color-text-muted)}:where(header :is(h1,h2,h3,h4,h5,h6):has(+p)){margin-bottom:0}:where(header :is(h1,h2,h3,h4,h5,h6)+p){margin-top:var(--space-4)}:where(button){display:inline-flex;align-items:center;justify-content:center;gap:var(--space-6);padding:var(--control-padding);border:var(--control-border);border-radius:var(--control-radius);background:var(--control-background);color:var(--control-text-color);cursor:default}:where(button[intent]){border-color:transparent;color:var(--color-text-reversed)}:where(button[intent=primary]){background:var(--color-primary);color:var(--color-primary-text)}:where(button[intent=danger]){background:var(--color-danger);color:oklch(from var(--color-danger) clamp(.2,(var(--contrast-flip) - l) * 1e6,.98) 0 h)}:where(button[intent=alert]){background:var(--color-alert);color:oklch(from var(--color-alert) clamp(.2,(var(--contrast-flip) - l) * 1e6,.98) 0 h)}:where(button:active:not(:disabled)){background:var(--control-background-active)}:where(button[intent=primary]:active:not(:disabled)){background:var(--color-primary-active)}:where(button[intent=danger]:active:not(:disabled)){background:var(--color-danger-active)}:where(button[intent=alert]:active:not(:disabled)){background:var(--color-alert-active)}:where(button:focus-visible){outline:var(--outline-focus);outline-offset:1px}:where(button:disabled){opacity:.4}:where(button[icon]){padding:var(--space-2);display:inline-grid;place-items:center}:where(button[target]:not([icon])){padding:var(--space-2) var(--space-6)}:where(button[aria-expanded=true]:not(:disabled):not([variant=ghost])){background:var(--control-background-active)}:where(button[intent=primary][aria-expanded=true]:not(:disabled):not([variant=ghost])){background:var(--color-primary-active)}:where(button[intent=danger][aria-expanded=true]:not(:disabled):not([variant=ghost])){background:var(--color-danger-active)}:where(button[intent=alert][aria-expanded=true]:not(:disabled):not([variant=ghost])){background:var(--color-alert-active)}:where(button[variant=ghost]){border-color:transparent;background:transparent;color:inherit}:where(button[variant=ghost][intent=primary]){color:var(--color-primary)}:where(button[variant=ghost][intent=danger]){color:var(--color-danger)}:where(button[variant=ghost][intent=alert]){color:var(--color-alert)}:where(button[variant=ghost]:hover:not(:disabled)){background:var(--tint-hover)}:where(button[variant=ghost]:is(:active,[aria-expanded=true]):not(:disabled)){background:var(--tint-active);background-clip:border-box}:where(button[variant=ghost][intent=primary]:hover:not(:disabled)){background:var(--tint-primary-hover)}:where(button[variant=ghost][intent=primary]:is(:active,[aria-expanded=true]):not(:disabled)){background:var(--tint-primary-active)}:where(button[variant=ghost][intent=danger]:hover:not(:disabled)){background:var(--tint-danger-hover)}:where(button[variant=ghost][intent=danger]:is(:active,[aria-expanded=true]):not(:disabled)){background:var(--tint-danger-active)}:where(button[variant=ghost][intent=alert]:hover:not(:disabled)){background:var(--tint-alert-hover)}:where(button[variant=ghost][intent=alert]:is(:active,[aria-expanded=true]):not(:disabled)){background:var(--tint-alert-active)}:where(button[icon]):before{content:"";inline-size:1lh;block-size:1lh;grid-area:1 / 1}:where(button[icon]>*){grid-area:1 / 1}:where(button){font-size:var(--control-font-size);line-height:var(--line-control)}:where(button[size=sm]){font-size:var(--text-sm);line-height:var(--line-control-sm);padding:var(--space-2) var(--space-8)}:where(button[size=sm][icon]){padding:var(--space-2)}:where(button[size=sm] tv-icon){font-size:12px}:where(:is(input:not([type]),input[type=""],input[type=text],input[type=email],input[type=url],input[type=tel],input[type=password],input[type=number],textarea)){box-sizing:border-box;font-family:var(--font-sans);font-size:var(--control-font-size);line-height:var(--line-control);color:var(--control-text-color);background:var(--control-background);border:var(--control-border);border-radius:var(--control-radius);padding:var(--control-padding)}:where(:is(input:not([type]),input[type=""],input[type=text],input[type=email],input[type=url],input[type=tel],input[type=password],input[type=number],textarea))::placeholder{color:var(--input-placeholder-text-color);opacity:1}:where(:is(input:not([type]),input[type=""],input[type=text],input[type=email],input[type=url],input[type=tel],input[type=password],input[type=number],textarea):focus-visible){outline:var(--outline-focus);outline-offset:0}:where(:is(input:not([type]),input[type=""],input[type=text],input[type=email],input[type=url],input[type=tel],input[type=password],input[type=number],textarea)[aria-invalid=true]){border-color:var(--color-danger)}:where(:is(input:not([type]),input[type=""],input[type=text],input[type=email],input[type=url],input[type=tel],input[type=password],input[type=number],textarea):disabled){background:var(--color-surface-muted);opacity:.4}:where(textarea){line-height:1.5;resize:vertical}:where(.tv-error){margin:0;color:var(--color-danger);font-size:var(--text-sm);line-height:1.5;overflow-wrap:anywhere}:where(tv-popover,tv-menu,tv-select){position:relative;isolation:isolate;width:max-content;background:var(--panel-background);background-clip:border-box;color:var(--panel-text-color);font-family:var(--font-sans);border:var(--panel-border);border-radius:var(--panel-radius);box-shadow:var(--popover-shadow)}:where(tv-popover,tv-menu,tv-select):before{content:"";position:var(--_panel-edge-position, absolute);inset:var(--_panel-edge-inset, 0);width:var(--_panel-edge-width, auto);height:var(--_panel-edge-height, auto);box-sizing:border-box;border-radius:inherit;box-shadow:var(--panel-edge-shadow);pointer-events:none}:where(tv-popover,tv-menu,tv-select):after{content:"";position:var(--_panel-edge-position, absolute);inset:var(--_panel-edge-inset, 0);width:var(--_panel-edge-width, auto);height:var(--_panel-edge-height, auto);box-sizing:border-box;border-radius:inherit;padding:1px;font-size:var(--panel-radius);background:var(--panel-edge-highlight);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:1}tv-popover:not([open]),tv-menu:not([open]),tv-select:not([open]){display:none}:where(tv-popover[open],tv-menu[open],tv-select[open]){display:block}:where(dialog){position:relative;isolation:isolate;background:var(--panel-background);background-clip:border-box;color:var(--panel-text-color);border:var(--panel-border);border-radius:var(--panel-radius);box-shadow:var(--dialog-shadow)}:where(dialog):before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;box-shadow:var(--panel-edge-shadow);pointer-events:none}:where(dialog):after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;font-size:var(--panel-radius);background:var(--panel-edge-highlight);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:1}:where(dialog:focus-visible){outline:none}:where(dialog:has(>.dialog-content)){overflow:visible}:where(dialog[open]:has(>.dialog-content)){display:flex;flex-direction:column}:where(dialog>.dialog-content){height:100%;min-height:0;max-width:calc(100vw - 2 * var(--space-16));max-height:calc(100vh - 2 * var(--space-16));overflow:auto;border-radius:inherit}:where(tv-menu){min-width:180px;padding:var(--space-4)}:where(tv-menu-item){display:flex;align-items:center;font-size:var(--text-md);line-height:var(--line-control);padding:var(--space-3) var(--space-10);border-radius:calc(var(--panel-radius) - var(--space-4));cursor:default}:where(tv-menu:not(:has(:focus-visible)) tv-menu-item:hover),:where(tv-menu-item:focus-visible){background:var(--option-background-highlighted);outline:none}:where(tv-menu-item:active){background:var(--option-background-active)}:where(tv-menu-item[intent=danger]){color:var(--color-danger)}:where(tv-menu:not(:has(:focus-visible)) tv-menu-item[intent=danger]:hover),:where(tv-menu-item[intent=danger]:focus-visible){background:var(--tint-danger-hover)}:where(tv-menu-item[intent=danger]:active){background:var(--tint-danger-active)}:where(tv-menu hr){border:0;border-top:1px solid var(--color-border);margin:var(--space-4) calc(-1 * var(--space-4))}:where(button[aria-haspopup=listbox]){justify-content:space-between;text-align:left;padding-inline:var(--space-8) var(--space-4)}:where(tv-select){padding:var(--space-4)}:where(tv-option){position:relative;display:flex;align-items:center;font-size:var(--text-md);line-height:var(--line-control);padding:var(--space-3) var(--space-12) var(--space-3) var(--space-20);border-radius:calc(var(--panel-radius) - var(--space-4));cursor:default}:where(tv-option[highlighted]){background:var(--option-background-highlighted)}:where(tv-option:active){background:var(--option-background-active)}:where(tv-option[selected]):before{content:"";position:absolute;left:var(--space-4);top:50%;translate:0 -50%;width:1em;height:1em;background:currentColor;mask:var(--icon-check) center / 80% no-repeat}checkbox-list{display:grid;gap:var(--space-6);margin:var(--space-12) 0}checkbox-item{position:relative;display:grid;grid-template-columns:1em minmax(0,1fr);gap:var(--space-8);align-items:baseline}checkbox-item:before{content:"";width:1em;height:1em;align-self:start;translate:0 .12em;background:transparent;border:var(--control-border);border-radius:var(--control-radius);box-sizing:border-box;cursor:not-allowed}checkbox-item[checked]:before{background:var(--checkbox-color);border-color:var(--checkbox-color)}checkbox-item[checked]:after{content:"";position:absolute;left:0;top:.12em;width:1em;height:1em;background:var(--color-surface);mask:var(--icon-check) center / 80% no-repeat}checkbox-item[checked]{color:var(--color-text-muted);text-decoration:line-through;text-decoration-thickness:.08em}@property --app-wallpaper-image{syntax: "<url> | none"; inherits: true; initial-value: none;}:where(:root){--sidebar-background: var(--color-surface-muted);--sidebar-text-color: var(--color-text);--sidebar-shadow: none;--sidebar-border-color: var(--color-border);--sidebar-border: var(--panel-border);--sidebar-heading-text-color: var(--color-text-muted);--sidebar-heading-font-size: var(--text-md);--channel-background: transparent;--channel-text-color: var(--sidebar-text-color);--channel-background-hover: color-mix(in oklch, var(--channel-background), var(--channel-background-active) var(--hover-mix));--channel-background-active: color-mix(in oklch, var(--channel-background), oklch(from currentColor l c h / 1) var(--alpha-active));--channel-background-selected: var(--color-primary);--channel-text-color-selected: var(--color-primary-text);--channel-radius: var(--control-radius);--tab-text-color: oklch(from var(--navbar-text-color) l c h / var(--alpha-75));--tab-text-color-selected: var(--color-text);--tab-font-size: var(--text-md);--artifact-frame-shadow: var(--shadow-xl);--frame-background: var(--color-surface);--frame-border-color: var(--color-border);--frame-border: var(--panel-border);--frame-titlebar-background: var(--color-surface-muted);--frame-titlebar-text-color: var(--color-text);--frame-titlebar-border-color: transparent;--frame-titlebar-border-width: 1px;--frame-titlebar-border: var(--frame-titlebar-border-width) solid var(--frame-titlebar-border-color);--frame-titlebar-padding: var(--space-4) var(--space-10) var(--space-6);--frame-titlebar-divider-color: var(--color-border);--wallpaper-overlay-text-color: var(--color-text);--wallpaper-overlay-background: transparent;--wallpaper-overlay-background-hover: color-mix(in oklch, var(--wallpaper-overlay-background), var(--wallpaper-overlay-background-active) var(--hover-mix));--wallpaper-overlay-background-active: color-mix(in oklch, var(--wallpaper-overlay-background), oklch(from currentColor l c h / 1) var(--alpha-active));--wallpaper-overlay-border: 1px solid transparent;--wallpaper-overlay-outline: none;--wallpaper-overlay-blur: 0px;--app-bar-height: 44px;--app-bar-padding-inline: 10px;--traffic-light-x-reserve: 0px;--navbar-background: transparent;--navbar-text-color: var(--wallpaper-overlay-text-color);--navbar-border-color: transparent;--navbar-border-width: 1px;--navbar-border: var(--navbar-border-width) solid var(--navbar-border-color);--toolbar-gap: var(--space-3);--app-wallpaper-image: none;--app-wallpaper: var(--app-wallpaper-image) center / cover no-repeat, var(--neutral-200);--page-gap: var(--space-24);--page-inset: var(--space-8);--page-inactive-blur: 0px;--page-inactive-backdrop-blur: var(--wallpaper-overlay-blur);--page-inactive-opacity: .55;--page-inactive-scale: .94;--page-snap-preview-border-color: oklch(from currentColor l c h / var(--alpha-25));--page-snap-preview-background: transparent;--page-snap-preview-border-width: 3px;--page-snap-preview-border: var(--page-snap-preview-border-width) solid var(--page-snap-preview-border-color);--page-snap-preview-radius: 12px;--tab-radius: var(--control-radius);--tab-gap: var(--toolbar-gap);--tab-border: var(--wallpaper-overlay-border);--tab-background: var(--wallpaper-overlay-background);--tab-background-hover: color-mix(in oklch, var(--tab-background), var(--tab-background-active) var(--hover-mix));--tab-background-active: var(--wallpaper-overlay-background-active);--tab-background-selected: var(--color-surface-muted);--tab-border-selected: 1px solid transparent;--tab-outline: var(--wallpaper-overlay-outline);--tab-outline-selected: none;--drag-placeholder-background: oklch(from var(--color-text) l c h / var(--alpha-10));--drag-item-shadow: var(--shadow-md);--drag-action-shadow: var(--shadow-sm);--frame-radius: 12px}:where([data-theme=dark]){--app-wallpaper: var(--app-wallpaper-image) center / cover no-repeat, var(--neutral-950)}:root[data-platform=electron]{--traffic-light-x-reserve: 72px}html,body{width:100%;height:100%;overflow-x:hidden;overscroll-behavior-x:none}[electron-draggable]{-webkit-app-region:drag}[electron-draggable] :where(button,input,textarea,select,a,[role=button],[role=combobox]){-webkit-app-region:no-drag}
|
|
@@ -40,7 +40,7 @@ var Q4=Object.defineProperty;var Iv=n=>{throw TypeError(n)};var eA=(n,t,e)=>t in
|
|
|
40
40
|
`)}v.write("payload.value = newResult;"),v.write("return payload;");const L=v.compile();return(P,B)=>L(y,P,B)};let o;const a=Bc,l=!x8.jitless,u=l&&Uk.value,p=t.catchall;let f;n._zod.parse=(y,v)=>{f??(f=r.value);const S=y.value;return a(S)?l&&u&&(v==null?void 0:v.async)===!1&&v.jitless!==!0?(o||(o=i(t.shape)),y=o(y,v),p?G8([],S,y,v,f,n):y):e(y,v):(y.issues.push({expected:"object",code:"invalid_type",input:S,inst:n}),y)}});function u2(n,t,e,r){for(const o of n)if(o.issues.length===0)return t.value=o.value,t;const i=n.filter(o=>!$a(o));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:e,errors:n.map(o=>o.issues.map(a=>Ts(a,r,ks())))}),t)}const Y8=R("$ZodUnion",(n,t)=>{Ue.init(n,t),Ae(n._zod,"optin",()=>t.options.some(i=>i._zod.optin==="optional")?"optional":void 0),Ae(n._zod,"optout",()=>t.options.some(i=>i._zod.optout==="optional")?"optional":void 0),Ae(n._zod,"values",()=>{if(t.options.every(i=>i._zod.values))return new Set(t.options.flatMap(i=>Array.from(i._zod.values)))}),Ae(n._zod,"pattern",()=>{if(t.options.every(i=>i._zod.pattern)){const i=t.options.map(o=>o._zod.pattern);return new RegExp(`^(${i.map(o=>q1(o.source)).join("|")})$`)}});const e=t.options.length===1,r=t.options[0]._zod.run;n._zod.parse=(i,o)=>{if(e)return r(i,o);let a=!1;const l=[];for(const c of t.options){const u=c._zod.run({value:i.value,issues:[]},o);if(u instanceof Promise)l.push(u),a=!0;else{if(u.issues.length===0)return u;l.push(u)}}return a?Promise.all(l).then(c=>u2(c,i,n,o)):u2(l,i,n,o)}}),CC=R("$ZodDiscriminatedUnion",(n,t)=>{t.inclusive=!1,Y8.init(n,t);const e=n._zod.parse;Ae(n._zod,"propValues",()=>{const i={};for(const o of t.options){const a=o._zod.propValues;if(!a||Object.keys(a).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(o)}"`);for(const[l,c]of Object.entries(a)){i[l]||(i[l]=new Set);for(const u of c)i[l].add(u)}}return i});const r=Mp(()=>{var a;const i=t.options,o=new Map;for(const l of i){const c=(a=l._zod.propValues)==null?void 0:a[t.discriminator];if(!c||c.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(l)}"`);for(const u of c){if(o.has(u))throw new Error(`Duplicate discriminator value "${String(u)}"`);o.set(u,l)}}return o});n._zod.parse=(i,o)=>{const a=i.value;if(!Bc(a))return i.issues.push({code:"invalid_type",expected:"object",input:a,inst:n}),i;const l=r.value.get(a==null?void 0:a[t.discriminator]);return l?l._zod.run(i,o):t.unionFallback?e(i,o):(i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,input:a,path:[t.discriminator],inst:n}),i)}}),RC=R("$ZodIntersection",(n,t)=>{Ue.init(n,t),n._zod.parse=(e,r)=>{const i=e.value,o=t.left._zod.run({value:i,issues:[]},r),a=t.right._zod.run({value:i,issues:[]},r);return o instanceof Promise||a instanceof Promise?Promise.all([o,a]).then(([c,u])=>h2(e,c,u)):h2(e,o,a)}});function Wm(n,t){if(n===t)return{valid:!0,data:n};if(n instanceof Date&&t instanceof Date&&+n==+t)return{valid:!0,data:n};if(Ml(n)&&Ml(t)){const e=Object.keys(t),r=Object.keys(n).filter(o=>e.indexOf(o)!==-1),i={...n,...t};for(const o of r){const a=Wm(n[o],t[o]);if(!a.valid)return{valid:!1,mergeErrorPath:[o,...a.mergeErrorPath]};i[o]=a.data}return{valid:!0,data:i}}if(Array.isArray(n)&&Array.isArray(t)){if(n.length!==t.length)return{valid:!1,mergeErrorPath:[]};const e=[];for(let r=0;r<n.length;r++){const i=n[r],o=t[r],a=Wm(i,o);if(!a.valid)return{valid:!1,mergeErrorPath:[r,...a.mergeErrorPath]};e.push(a.data)}return{valid:!0,data:e}}return{valid:!1,mergeErrorPath:[]}}function h2(n,t,e){const r=new Map;let i;for(const l of t.issues)if(l.code==="unrecognized_keys"){i??(i=l);for(const c of l.keys)r.has(c)||r.set(c,{}),r.get(c).l=!0}else n.issues.push(l);for(const l of e.issues)if(l.code==="unrecognized_keys")for(const c of l.keys)r.has(c)||r.set(c,{}),r.get(c).r=!0;else n.issues.push(l);const o=[...r].filter(([,l])=>l.l&&l.r).map(([l])=>l);if(o.length&&i&&n.issues.push({...i,keys:o}),$a(n))return n;const a=Wm(t.value,e.value);if(!a.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(a.mergeErrorPath)}`);return n.value=a.data,n}const IC=R("$ZodRecord",(n,t)=>{Ue.init(n,t),n._zod.parse=(e,r)=>{const i=e.value;if(!Ml(i))return e.issues.push({expected:"record",code:"invalid_type",input:i,inst:n}),e;const o=[],a=t.keyType._zod.values;if(a){e.value={};const l=new Set;for(const u of a)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){l.add(typeof u=="number"?u.toString():u);const p=t.valueType._zod.run({value:i[u],issues:[]},r);p instanceof Promise?o.push(p.then(f=>{f.issues.length&&e.issues.push(...xa(u,f.issues)),e.value[u]=f.value})):(p.issues.length&&e.issues.push(...xa(u,p.issues)),e.value[u]=p.value)}let c;for(const u in i)l.has(u)||(c=c??[],c.push(u));c&&c.length>0&&e.issues.push({code:"unrecognized_keys",input:i,inst:n,keys:c})}else{e.value={};for(const l of Reflect.ownKeys(i)){if(l==="__proto__")continue;let c=t.keyType._zod.run({value:l,issues:[]},r);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof l=="string"&&U8.test(l)&&c.issues.length){const f=t.keyType._zod.run({value:Number(l),issues:[]},r);if(f instanceof Promise)throw new Error("Async schemas not supported in object keys currently");f.issues.length===0&&(c=f)}if(c.issues.length){t.mode==="loose"?e.value[l]=i[l]:e.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(f=>Ts(f,r,ks())),input:l,path:[l],inst:n});continue}const p=t.valueType._zod.run({value:i[l],issues:[]},r);p instanceof Promise?o.push(p.then(f=>{f.issues.length&&e.issues.push(...xa(l,f.issues)),e.value[c.value]=f.value})):(p.issues.length&&e.issues.push(...xa(l,p.issues)),e.value[c.value]=p.value)}}return o.length?Promise.all(o).then(()=>e):e}}),$C=R("$ZodEnum",(n,t)=>{Ue.init(n,t);const e=P8(t.entries),r=new Set(e);n._zod.values=r,n._zod.pattern=new RegExp(`^(${e.filter(i=>Fk.has(typeof i)).map(i=>typeof i=="string"?Nl(i):i.toString()).join("|")})$`),n._zod.parse=(i,o)=>{const a=i.value;return r.has(a)||i.issues.push({code:"invalid_value",values:e,input:a,inst:n}),i}}),xC=R("$ZodLiteral",(n,t)=>{if(Ue.init(n,t),t.values.length===0)throw new Error("Cannot create literal schema with no valid values");const e=new Set(t.values);n._zod.values=e,n._zod.pattern=new RegExp(`^(${t.values.map(r=>typeof r=="string"?Nl(r):r?Nl(r.toString()):String(r)).join("|")})$`),n._zod.parse=(r,i)=>{const o=r.value;return e.has(o)||r.issues.push({code:"invalid_value",values:t.values,input:o,inst:n}),r}}),PC=R("$ZodTransform",(n,t)=>{Ue.init(n,t),n._zod.parse=(e,r)=>{if(r.direction==="backward")throw new $8(n.constructor.name);const i=t.transform(e.value,e);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(a=>(e.value=a,e));if(i instanceof Promise)throw new La;return e.value=i,e}});function d2(n,t){return n.issues.length&&t===void 0?{issues:[],value:void 0}:n}const K8=R("$ZodOptional",(n,t)=>{Ue.init(n,t),n._zod.optin="optional",n._zod.optout="optional",Ae(n._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Ae(n._zod,"pattern",()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${q1(e.source)})?$`):void 0}),n._zod.parse=(e,r)=>{if(t.innerType._zod.optin==="optional"){const i=t.innerType._zod.run(e,r);return i instanceof Promise?i.then(o=>d2(o,e.value)):d2(i,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,r)}}),DC=R("$ZodExactOptional",(n,t)=>{K8.init(n,t),Ae(n._zod,"values",()=>t.innerType._zod.values),Ae(n._zod,"pattern",()=>t.innerType._zod.pattern),n._zod.parse=(e,r)=>t.innerType._zod.run(e,r)}),LC=R("$ZodNullable",(n,t)=>{Ue.init(n,t),Ae(n._zod,"optin",()=>t.innerType._zod.optin),Ae(n._zod,"optout",()=>t.innerType._zod.optout),Ae(n._zod,"pattern",()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${q1(e.source)}|null)$`):void 0}),Ae(n._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),n._zod.parse=(e,r)=>e.value===null?e:t.innerType._zod.run(e,r)}),OC=R("$ZodDefault",(n,t)=>{Ue.init(n,t),n._zod.optin="optional",Ae(n._zod,"values",()=>t.innerType._zod.values),n._zod.parse=(e,r)=>{if(r.direction==="backward")return t.innerType._zod.run(e,r);if(e.value===void 0)return e.value=t.defaultValue,e;const i=t.innerType._zod.run(e,r);return i instanceof Promise?i.then(o=>p2(o,t)):p2(i,t)}});function p2(n,t){return n.value===void 0&&(n.value=t.defaultValue),n}const MC=R("$ZodPrefault",(n,t)=>{Ue.init(n,t),n._zod.optin="optional",Ae(n._zod,"values",()=>t.innerType._zod.values),n._zod.parse=(e,r)=>(r.direction==="backward"||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,r))}),NC=R("$ZodNonOptional",(n,t)=>{Ue.init(n,t),Ae(n._zod,"values",()=>{const e=t.innerType._zod.values;return e?new Set([...e].filter(r=>r!==void 0)):void 0}),n._zod.parse=(e,r)=>{const i=t.innerType._zod.run(e,r);return i instanceof Promise?i.then(o=>f2(o,n)):f2(i,n)}});function f2(n,t){return!n.issues.length&&n.value===void 0&&n.issues.push({code:"invalid_type",expected:"nonoptional",input:n.value,inst:t}),n}const zC=R("$ZodCatch",(n,t)=>{Ue.init(n,t),Ae(n._zod,"optin",()=>t.innerType._zod.optin),Ae(n._zod,"optout",()=>t.innerType._zod.optout),Ae(n._zod,"values",()=>t.innerType._zod.values),n._zod.parse=(e,r)=>{if(r.direction==="backward")return t.innerType._zod.run(e,r);const i=t.innerType._zod.run(e,r);return i instanceof Promise?i.then(o=>(e.value=o.value,o.issues.length&&(e.value=t.catchValue({...e,error:{issues:o.issues.map(a=>Ts(a,r,ks()))},input:e.value}),e.issues=[]),e)):(e.value=i.value,i.issues.length&&(e.value=t.catchValue({...e,error:{issues:i.issues.map(o=>Ts(o,r,ks()))},input:e.value}),e.issues=[]),e)}}),HC=R("$ZodPipe",(n,t)=>{Ue.init(n,t),Ae(n._zod,"values",()=>t.in._zod.values),Ae(n._zod,"optin",()=>t.in._zod.optin),Ae(n._zod,"optout",()=>t.out._zod.optout),Ae(n._zod,"propValues",()=>t.in._zod.propValues),n._zod.parse=(e,r)=>{if(r.direction==="backward"){const o=t.out._zod.run(e,r);return o instanceof Promise?o.then(a=>$h(a,t.in,r)):$h(o,t.in,r)}const i=t.in._zod.run(e,r);return i instanceof Promise?i.then(o=>$h(o,t.out,r)):$h(i,t.out,r)}});function $h(n,t,e){return n.issues.length?(n.aborted=!0,n):t._zod.run({value:n.value,issues:n.issues},e)}const ZC=R("$ZodReadonly",(n,t)=>{Ue.init(n,t),Ae(n._zod,"propValues",()=>t.innerType._zod.propValues),Ae(n._zod,"values",()=>t.innerType._zod.values),Ae(n._zod,"optin",()=>{var e,r;return(r=(e=t.innerType)==null?void 0:e._zod)==null?void 0:r.optin}),Ae(n._zod,"optout",()=>{var e,r;return(r=(e=t.innerType)==null?void 0:e._zod)==null?void 0:r.optout}),n._zod.parse=(e,r)=>{if(r.direction==="backward")return t.innerType._zod.run(e,r);const i=t.innerType._zod.run(e,r);return i instanceof Promise?i.then(m2):m2(i)}});function m2(n){return n.value=Object.freeze(n.value),n}const UC=R("$ZodCustom",(n,t)=>{Wt.init(n,t),Ue.init(n,t),n._zod.parse=(e,r)=>e,n._zod.check=e=>{const r=e.value,i=t.fn(r);if(i instanceof Promise)return i.then(o=>g2(o,e,r,n));g2(i,e,r,n)}});function g2(n,t,e,r){if(!n){const i={code:"custom",input:e,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(i.params=r._zod.def.params),t.issues.push(Wc(i))}}var v2;class FC{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...e){const r=e[0];return this._map.set(t,r),r&&typeof r=="object"&&"id"in r&&this._idmap.set(r.id,t),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){const e=this._map.get(t);return e&&typeof e=="object"&&"id"in e&&this._idmap.delete(e.id),this._map.delete(t),this}get(t){const e=t._zod.parent;if(e){const r={...this.get(e)??{}};delete r.id;const i={...r,...this._map.get(t)};return Object.keys(i).length?i:void 0}return this._map.get(t)}has(t){return this._map.has(t)}}function qC(){return new FC}(v2=globalThis).__zod_globalRegistry??(v2.__zod_globalRegistry=qC());const _c=globalThis.__zod_globalRegistry;function VC(n,t){return new n({type:"string",...K(t)})}function BC(n,t){return new n({type:"string",format:"email",check:"string_format",abort:!1,...K(t)})}function y2(n,t){return new n({type:"string",format:"guid",check:"string_format",abort:!1,...K(t)})}function WC(n,t){return new n({type:"string",format:"uuid",check:"string_format",abort:!1,...K(t)})}function jC(n,t){return new n({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...K(t)})}function GC(n,t){return new n({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...K(t)})}function YC(n,t){return new n({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...K(t)})}function KC(n,t){return new n({type:"string",format:"url",check:"string_format",abort:!1,...K(t)})}function JC(n,t){return new n({type:"string",format:"emoji",check:"string_format",abort:!1,...K(t)})}function XC(n,t){return new n({type:"string",format:"nanoid",check:"string_format",abort:!1,...K(t)})}function QC(n,t){return new n({type:"string",format:"cuid",check:"string_format",abort:!1,...K(t)})}function eR(n,t){return new n({type:"string",format:"cuid2",check:"string_format",abort:!1,...K(t)})}function tR(n,t){return new n({type:"string",format:"ulid",check:"string_format",abort:!1,...K(t)})}function nR(n,t){return new n({type:"string",format:"xid",check:"string_format",abort:!1,...K(t)})}function rR(n,t){return new n({type:"string",format:"ksuid",check:"string_format",abort:!1,...K(t)})}function iR(n,t){return new n({type:"string",format:"ipv4",check:"string_format",abort:!1,...K(t)})}function sR(n,t){return new n({type:"string",format:"ipv6",check:"string_format",abort:!1,...K(t)})}function oR(n,t){return new n({type:"string",format:"cidrv4",check:"string_format",abort:!1,...K(t)})}function aR(n,t){return new n({type:"string",format:"cidrv6",check:"string_format",abort:!1,...K(t)})}function lR(n,t){return new n({type:"string",format:"base64",check:"string_format",abort:!1,...K(t)})}function cR(n,t){return new n({type:"string",format:"base64url",check:"string_format",abort:!1,...K(t)})}function uR(n,t){return new n({type:"string",format:"e164",check:"string_format",abort:!1,...K(t)})}function hR(n,t){return new n({type:"string",format:"jwt",check:"string_format",abort:!1,...K(t)})}function dR(n,t){return new n({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...K(t)})}function pR(n,t){return new n({type:"string",format:"date",check:"string_format",...K(t)})}function fR(n,t){return new n({type:"string",format:"time",check:"string_format",precision:null,...K(t)})}function mR(n,t){return new n({type:"string",format:"duration",check:"string_format",...K(t)})}function gR(n,t){return new n({type:"number",checks:[],...K(t)})}function vR(n,t){return new n({type:"number",check:"number_format",abort:!1,format:"safeint",...K(t)})}function yR(n,t){return new n({type:"boolean",...K(t)})}function wR(n){return new n({type:"unknown"})}function bR(n,t){return new n({type:"never",...K(t)})}function w2(n,t){return new q8({check:"less_than",...K(t),value:n,inclusive:!1})}function Sm(n,t){return new q8({check:"less_than",...K(t),value:n,inclusive:!0})}function b2(n,t){return new V8({check:"greater_than",...K(t),value:n,inclusive:!1})}function _m(n,t){return new V8({check:"greater_than",...K(t),value:n,inclusive:!0})}function S2(n,t){return new OT({check:"multiple_of",...K(t),value:n})}function J8(n,t){return new NT({check:"max_length",...K(t),maximum:n})}function Ed(n,t){return new zT({check:"min_length",...K(t),minimum:n})}function X8(n,t){return new HT({check:"length_equals",...K(t),length:n})}function SR(n,t){return new ZT({check:"string_format",format:"regex",...K(t),pattern:n})}function _R(n){return new UT({check:"string_format",format:"lowercase",...K(n)})}function AR(n){return new FT({check:"string_format",format:"uppercase",...K(n)})}function ER(n,t){return new qT({check:"string_format",format:"includes",...K(t),includes:n})}function kR(n,t){return new VT({check:"string_format",format:"starts_with",...K(t),prefix:n})}function TR(n,t){return new BT({check:"string_format",format:"ends_with",...K(t),suffix:n})}function Gl(n){return new WT({check:"overwrite",tx:n})}function CR(n){return Gl(t=>t.normalize(n))}function RR(){return Gl(n=>n.trim())}function IR(){return Gl(n=>n.toLowerCase())}function $R(){return Gl(n=>n.toUpperCase())}function xR(){return Gl(n=>Zk(n))}function PR(n,t,e){return new n({type:"array",element:t,...K(e)})}function DR(n,t,e){return new n({type:"custom",check:"custom",fn:t,...K(e)})}function LR(n){const t=OR(e=>(e.addIssue=r=>{if(typeof r=="string")e.issues.push(Wc(r,e.value,t._zod.def));else{const i=r;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=e.value),i.inst??(i.inst=t),i.continue??(i.continue=!t._zod.def.abort),e.issues.push(Wc(i))}},n(e.value,e)));return t}function OR(n,t){const e=new Wt({check:"custom",...K(t)});return e._zod.check=n,e}function Q8(n){let t=(n==null?void 0:n.target)??"draft-2020-12";return t==="draft-4"&&(t="draft-04"),t==="draft-7"&&(t="draft-07"),{processors:n.processors??{},metadataRegistry:(n==null?void 0:n.metadata)??_c,target:t,unrepresentable:(n==null?void 0:n.unrepresentable)??"throw",override:(n==null?void 0:n.override)??(()=>{}),io:(n==null?void 0:n.io)??"output",counter:0,seen:new Map,cycles:(n==null?void 0:n.cycles)??"ref",reused:(n==null?void 0:n.reused)??"inline",external:(n==null?void 0:n.external)??void 0}}function Qe(n,t,e={path:[],schemaPath:[]}){var p,f;var r;const i=n._zod.def,o=t.seen.get(n);if(o)return o.count++,e.schemaPath.includes(n)&&(o.cycle=e.path),o.schema;const a={schema:{},count:1,cycle:void 0,path:e.path};t.seen.set(n,a);const l=(f=(p=n._zod).toJSONSchema)==null?void 0:f.call(p);if(l)a.schema=l;else{const y={...e,schemaPath:[...e.schemaPath,n],path:e.path};if(n._zod.processJSONSchema)n._zod.processJSONSchema(t,a.schema,y);else{const S=a.schema,_=t.processors[i.type];if(!_)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);_(n,t,S,y)}const v=n._zod.parent;v&&(a.ref||(a.ref=v),Qe(v,t,y),t.seen.get(v).isParent=!0)}const c=t.metadataRegistry.get(n);return c&&Object.assign(a.schema,c),t.io==="input"&&At(n)&&(delete a.schema.examples,delete a.schema.default),t.io==="input"&&a.schema._prefault&&((r=a.schema).default??(r.default=a.schema._prefault)),delete a.schema._prefault,t.seen.get(n).schema}function e6(n,t){var a,l,c,u;const e=n.seen.get(t);if(!e)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=new Map;for(const p of n.seen.entries()){const f=(a=n.metadataRegistry.get(p[0]))==null?void 0:a.id;if(f){const y=r.get(f);if(y&&y!==p[0])throw new Error(`Duplicate schema id "${f}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(f,p[0])}}const i=p=>{var _;const f=n.target==="draft-2020-12"?"$defs":"definitions";if(n.external){const x=(_=n.external.registry.get(p[0]))==null?void 0:_.id,Z=n.external.uri??(z=>z);if(x)return{ref:Z(x)};const L=p[1].defId??p[1].schema.id??`schema${n.counter++}`;return p[1].defId=L,{defId:L,ref:`${Z("__shared")}#/${f}/${L}`}}if(p[1]===e)return{ref:"#"};const v=`#/${f}/`,S=p[1].schema.id??`__schema${n.counter++}`;return{defId:S,ref:v+S}},o=p=>{if(p[1].schema.$ref)return;const f=p[1],{ref:y,defId:v}=i(p);f.def={...f.schema},v&&(f.defId=v);const S=f.schema;for(const _ in S)delete S[_];S.$ref=y};if(n.cycles==="throw")for(const p of n.seen.entries()){const f=p[1];if(f.cycle)throw new Error(`Cycle detected: #/${(l=f.cycle)==null?void 0:l.join("/")}/<root>
|
|
41
41
|
|
|
42
42
|
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const p of n.seen.entries()){const f=p[1];if(t===p[0]){o(p);continue}if(n.external){const v=(c=n.external.registry.get(p[0]))==null?void 0:c.id;if(t!==p[0]&&v){o(p);continue}}if((u=n.metadataRegistry.get(p[0]))==null?void 0:u.id){o(p);continue}if(f.cycle){o(p);continue}if(f.count>1&&n.reused==="ref"){o(p);continue}}}function t6(n,t){var a,l,c;const e=n.seen.get(t);if(!e)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=u=>{const p=n.seen.get(u);if(p.ref===null)return;const f=p.def??p.schema,y={...f},v=p.ref;if(p.ref=null,v){r(v);const _=n.seen.get(v),x=_.schema;if(x.$ref&&(n.target==="draft-07"||n.target==="draft-04"||n.target==="openapi-3.0")?(f.allOf=f.allOf??[],f.allOf.push(x)):Object.assign(f,x),Object.assign(f,y),u._zod.parent===v)for(const L in f)L==="$ref"||L==="allOf"||L in y||delete f[L];if(x.$ref&&_.def)for(const L in f)L==="$ref"||L==="allOf"||L in _.def&&JSON.stringify(f[L])===JSON.stringify(_.def[L])&&delete f[L]}const S=u._zod.parent;if(S&&S!==v){r(S);const _=n.seen.get(S);if(_!=null&&_.schema.$ref&&(f.$ref=_.schema.$ref,_.def))for(const x in f)x==="$ref"||x==="allOf"||x in _.def&&JSON.stringify(f[x])===JSON.stringify(_.def[x])&&delete f[x]}n.override({zodSchema:u,jsonSchema:f,path:p.path??[]})};for(const u of[...n.seen.entries()].reverse())r(u[0]);const i={};if(n.target==="draft-2020-12"?i.$schema="https://json-schema.org/draft/2020-12/schema":n.target==="draft-07"?i.$schema="http://json-schema.org/draft-07/schema#":n.target==="draft-04"?i.$schema="http://json-schema.org/draft-04/schema#":n.target,(a=n.external)!=null&&a.uri){const u=(l=n.external.registry.get(t))==null?void 0:l.id;if(!u)throw new Error("Schema is missing an `id` property");i.$id=n.external.uri(u)}Object.assign(i,e.def??e.schema);const o=((c=n.external)==null?void 0:c.defs)??{};for(const u of n.seen.entries()){const p=u[1];p.def&&p.defId&&(o[p.defId]=p.def)}n.external||Object.keys(o).length>0&&(n.target==="draft-2020-12"?i.$defs=o:i.definitions=o);try{const u=JSON.parse(JSON.stringify(i));return Object.defineProperty(u,"~standard",{value:{...t["~standard"],jsonSchema:{input:kd(t,"input",n.processors),output:kd(t,"output",n.processors)}},enumerable:!1,writable:!1}),u}catch{throw new Error("Error converting schema to JSON.")}}function At(n,t){const e=t??{seen:new Set};if(e.seen.has(n))return!1;e.seen.add(n);const r=n._zod.def;if(r.type==="transform")return!0;if(r.type==="array")return At(r.element,e);if(r.type==="set")return At(r.valueType,e);if(r.type==="lazy")return At(r.getter(),e);if(r.type==="promise"||r.type==="optional"||r.type==="nonoptional"||r.type==="nullable"||r.type==="readonly"||r.type==="default"||r.type==="prefault")return At(r.innerType,e);if(r.type==="intersection")return At(r.left,e)||At(r.right,e);if(r.type==="record"||r.type==="map")return At(r.keyType,e)||At(r.valueType,e);if(r.type==="pipe")return At(r.in,e)||At(r.out,e);if(r.type==="object"){for(const i in r.shape)if(At(r.shape[i],e))return!0;return!1}if(r.type==="union"){for(const i of r.options)if(At(i,e))return!0;return!1}if(r.type==="tuple"){for(const i of r.items)if(At(i,e))return!0;return!!(r.rest&&At(r.rest,e))}return!1}const MR=(n,t={})=>e=>{const r=Q8({...e,processors:t});return Qe(n,r),e6(r,n),t6(r,n)},kd=(n,t,e={})=>r=>{const{libraryOptions:i,target:o}=r??{},a=Q8({...i??{},target:o,io:t,processors:e});return Qe(n,a),e6(a,n),t6(a,n)},NR={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},zR=(n,t,e,r)=>{const i=e;i.type="string";const{minimum:o,maximum:a,format:l,patterns:c,contentEncoding:u}=n._zod.bag;if(typeof o=="number"&&(i.minLength=o),typeof a=="number"&&(i.maxLength=a),l&&(i.format=NR[l]??l,i.format===""&&delete i.format,l==="time"&&delete i.format),u&&(i.contentEncoding=u),c&&c.size>0){const p=[...c];p.length===1?i.pattern=p[0].source:p.length>1&&(i.allOf=[...p.map(f=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:f.source}))])}},HR=(n,t,e,r)=>{const i=e,{minimum:o,maximum:a,format:l,multipleOf:c,exclusiveMaximum:u,exclusiveMinimum:p}=n._zod.bag;typeof l=="string"&&l.includes("int")?i.type="integer":i.type="number",typeof p=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(i.minimum=p,i.exclusiveMinimum=!0):i.exclusiveMinimum=p),typeof o=="number"&&(i.minimum=o,typeof p=="number"&&t.target!=="draft-04"&&(p>=o?delete i.minimum:delete i.exclusiveMinimum)),typeof u=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(i.maximum=u,i.exclusiveMaximum=!0):i.exclusiveMaximum=u),typeof a=="number"&&(i.maximum=a,typeof u=="number"&&t.target!=="draft-04"&&(u<=a?delete i.maximum:delete i.exclusiveMaximum)),typeof c=="number"&&(i.multipleOf=c)},ZR=(n,t,e,r)=>{e.type="boolean"},UR=(n,t,e,r)=>{e.not={}},FR=(n,t,e,r)=>{},qR=(n,t,e,r)=>{const i=n._zod.def,o=P8(i.entries);o.every(a=>typeof a=="number")&&(e.type="number"),o.every(a=>typeof a=="string")&&(e.type="string"),e.enum=o},VR=(n,t,e,r)=>{const i=n._zod.def,o=[];for(const a of i.values)if(a===void 0){if(t.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof a=="bigint"){if(t.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");o.push(Number(a))}else o.push(a);if(o.length!==0)if(o.length===1){const a=o[0];e.type=a===null?"null":typeof a,t.target==="draft-04"||t.target==="openapi-3.0"?e.enum=[a]:e.const=a}else o.every(a=>typeof a=="number")&&(e.type="number"),o.every(a=>typeof a=="string")&&(e.type="string"),o.every(a=>typeof a=="boolean")&&(e.type="boolean"),o.every(a=>a===null)&&(e.type="null"),e.enum=o},BR=(n,t,e,r)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},WR=(n,t,e,r)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},jR=(n,t,e,r)=>{const i=e,o=n._zod.def,{minimum:a,maximum:l}=n._zod.bag;typeof a=="number"&&(i.minItems=a),typeof l=="number"&&(i.maxItems=l),i.type="array",i.items=Qe(o.element,t,{...r,path:[...r.path,"items"]})},GR=(n,t,e,r)=>{var u;const i=e,o=n._zod.def;i.type="object",i.properties={};const a=o.shape;for(const p in a)i.properties[p]=Qe(a[p],t,{...r,path:[...r.path,"properties",p]});const l=new Set(Object.keys(a)),c=new Set([...l].filter(p=>{const f=o.shape[p]._zod;return t.io==="input"?f.optin===void 0:f.optout===void 0}));c.size>0&&(i.required=Array.from(c)),((u=o.catchall)==null?void 0:u._zod.def.type)==="never"?i.additionalProperties=!1:o.catchall?o.catchall&&(i.additionalProperties=Qe(o.catchall,t,{...r,path:[...r.path,"additionalProperties"]})):t.io==="output"&&(i.additionalProperties=!1)},YR=(n,t,e,r)=>{const i=n._zod.def,o=i.inclusive===!1,a=i.options.map((l,c)=>Qe(l,t,{...r,path:[...r.path,o?"oneOf":"anyOf",c]}));o?e.oneOf=a:e.anyOf=a},KR=(n,t,e,r)=>{const i=n._zod.def,o=Qe(i.left,t,{...r,path:[...r.path,"allOf",0]}),a=Qe(i.right,t,{...r,path:[...r.path,"allOf",1]}),l=u=>"allOf"in u&&Object.keys(u).length===1,c=[...l(o)?o.allOf:[o],...l(a)?a.allOf:[a]];e.allOf=c},JR=(n,t,e,r)=>{const i=e,o=n._zod.def;i.type="object";const a=o.keyType,l=a._zod.bag,c=l==null?void 0:l.patterns;if(o.mode==="loose"&&c&&c.size>0){const p=Qe(o.valueType,t,{...r,path:[...r.path,"patternProperties","*"]});i.patternProperties={};for(const f of c)i.patternProperties[f.source]=p}else(t.target==="draft-07"||t.target==="draft-2020-12")&&(i.propertyNames=Qe(o.keyType,t,{...r,path:[...r.path,"propertyNames"]})),i.additionalProperties=Qe(o.valueType,t,{...r,path:[...r.path,"additionalProperties"]});const u=a._zod.values;if(u){const p=[...u].filter(f=>typeof f=="string"||typeof f=="number");p.length>0&&(i.required=p)}},XR=(n,t,e,r)=>{const i=n._zod.def,o=Qe(i.innerType,t,r),a=t.seen.get(n);t.target==="openapi-3.0"?(a.ref=i.innerType,e.nullable=!0):e.anyOf=[o,{type:"null"}]},QR=(n,t,e,r)=>{const i=n._zod.def;Qe(i.innerType,t,r);const o=t.seen.get(n);o.ref=i.innerType},e3=(n,t,e,r)=>{const i=n._zod.def;Qe(i.innerType,t,r);const o=t.seen.get(n);o.ref=i.innerType,e.default=JSON.parse(JSON.stringify(i.defaultValue))},t3=(n,t,e,r)=>{const i=n._zod.def;Qe(i.innerType,t,r);const o=t.seen.get(n);o.ref=i.innerType,t.io==="input"&&(e._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},n3=(n,t,e,r)=>{const i=n._zod.def;Qe(i.innerType,t,r);const o=t.seen.get(n);o.ref=i.innerType;let a;try{a=i.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}e.default=a},r3=(n,t,e,r)=>{const i=n._zod.def,o=t.io==="input"?i.in._zod.def.type==="transform"?i.out:i.in:i.out;Qe(o,t,r);const a=t.seen.get(n);a.ref=o},i3=(n,t,e,r)=>{const i=n._zod.def;Qe(i.innerType,t,r);const o=t.seen.get(n);o.ref=i.innerType,e.readOnly=!0},n6=(n,t,e,r)=>{const i=n._zod.def;Qe(i.innerType,t,r);const o=t.seen.get(n);o.ref=i.innerType},s3=R("ZodISODateTime",(n,t)=>{oC.init(n,t),qe.init(n,t)});function o3(n){return dR(s3,n)}const a3=R("ZodISODate",(n,t)=>{aC.init(n,t),qe.init(n,t)});function l3(n){return pR(a3,n)}const c3=R("ZodISOTime",(n,t)=>{lC.init(n,t),qe.init(n,t)});function u3(n){return fR(c3,n)}const h3=R("ZodISODuration",(n,t)=>{cC.init(n,t),qe.init(n,t)});function d3(n){return mR(h3,n)}const r6=(n,t)=>{M8.init(n,t),n.name="ZodError",Object.defineProperties(n,{format:{value:e=>Qk(n,e)},flatten:{value:e=>Xk(n,e)},addIssue:{value:e=>{n.issues.push(e),n.message=JSON.stringify(n.issues,Bm,2)}},addIssues:{value:e=>{n.issues.push(...e),n.message=JSON.stringify(n.issues,Bm,2)}},isEmpty:{get(){return n.issues.length===0}}})},_2=R("ZodError",r6),In=R("ZodError",r6,{Parent:Error}),p3=B1(In),f3=W1(In),m3=Np(In),g3=zp(In),v3=nT(In),y3=rT(In),w3=iT(In),b3=sT(In),S3=oT(In),_3=aT(In),A3=lT(In),E3=cT(In),Fe=R("ZodType",(n,t)=>(Ue.init(n,t),Object.assign(n["~standard"],{jsonSchema:{input:kd(n,"input"),output:kd(n,"output")}}),n.toJSONSchema=MR(n,{}),n.def=t,n.type=t.type,Object.defineProperty(n,"_def",{value:t}),n.check=(...e)=>n.clone($s(t,{checks:[...t.checks??[],...e.map(r=>typeof r=="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]}),{parent:!0}),n.with=n.check,n.clone=(e,r)=>xs(n,e,r),n.brand=()=>n,n.register=((e,r)=>(e.add(n,r),n)),n.parse=(e,r)=>p3(n,e,r,{callee:n.parse}),n.safeParse=(e,r)=>m3(n,e,r),n.parseAsync=async(e,r)=>f3(n,e,r,{callee:n.parseAsync}),n.safeParseAsync=async(e,r)=>g3(n,e,r),n.spa=n.safeParseAsync,n.encode=(e,r)=>v3(n,e,r),n.decode=(e,r)=>y3(n,e,r),n.encodeAsync=async(e,r)=>w3(n,e,r),n.decodeAsync=async(e,r)=>b3(n,e,r),n.safeEncode=(e,r)=>S3(n,e,r),n.safeDecode=(e,r)=>_3(n,e,r),n.safeEncodeAsync=async(e,r)=>A3(n,e,r),n.safeDecodeAsync=async(e,r)=>E3(n,e,r),n.refine=(e,r)=>n.check(gI(e,r)),n.superRefine=e=>n.check(vI(e)),n.overwrite=e=>n.check(Gl(e)),n.optional=()=>k2(n),n.exactOptional=()=>rI(n),n.nullable=()=>T2(n),n.nullish=()=>k2(T2(n)),n.nonoptional=e=>cI(n,e),n.array=()=>G(n),n.or=e=>ae([n,e]),n.and=e=>Zp(n,e),n.transform=e=>C2(n,tI(e)),n.default=e=>oI(n,e),n.prefault=e=>lI(n,e),n.catch=e=>hI(n,e),n.pipe=e=>C2(n,e),n.readonly=()=>fI(n),n.describe=e=>{const r=n.clone();return _c.add(r,{description:e}),r},Object.defineProperty(n,"description",{get(){var e;return(e=_c.get(n))==null?void 0:e.description},configurable:!0}),n.meta=(...e)=>{if(e.length===0)return _c.get(n);const r=n.clone();return _c.add(r,e[0]),r},n.isOptional=()=>n.safeParse(void 0).success,n.isNullable=()=>n.safeParse(null).success,n.apply=e=>e(n),n)),i6=R("_ZodString",(n,t)=>{j1.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(r,i,o)=>zR(n,r,i);const e=n._zod.bag;n.format=e.format??null,n.minLength=e.minimum??null,n.maxLength=e.maximum??null,n.regex=(...r)=>n.check(SR(...r)),n.includes=(...r)=>n.check(ER(...r)),n.startsWith=(...r)=>n.check(kR(...r)),n.endsWith=(...r)=>n.check(TR(...r)),n.min=(...r)=>n.check(Ed(...r)),n.max=(...r)=>n.check(J8(...r)),n.length=(...r)=>n.check(X8(...r)),n.nonempty=(...r)=>n.check(Ed(1,...r)),n.lowercase=r=>n.check(_R(r)),n.uppercase=r=>n.check(AR(r)),n.trim=()=>n.check(RR()),n.normalize=(...r)=>n.check(CR(...r)),n.toLowerCase=()=>n.check(IR()),n.toUpperCase=()=>n.check($R()),n.slugify=()=>n.check(xR())}),k3=R("ZodString",(n,t)=>{j1.init(n,t),i6.init(n,t),n.email=e=>n.check(BC(T3,e)),n.url=e=>n.check(KC(C3,e)),n.jwt=e=>n.check(hR(F3,e)),n.emoji=e=>n.check(JC(R3,e)),n.guid=e=>n.check(y2(A2,e)),n.uuid=e=>n.check(WC(xh,e)),n.uuidv4=e=>n.check(jC(xh,e)),n.uuidv6=e=>n.check(GC(xh,e)),n.uuidv7=e=>n.check(YC(xh,e)),n.nanoid=e=>n.check(XC(I3,e)),n.guid=e=>n.check(y2(A2,e)),n.cuid=e=>n.check(QC($3,e)),n.cuid2=e=>n.check(eR(x3,e)),n.ulid=e=>n.check(tR(P3,e)),n.base64=e=>n.check(lR(H3,e)),n.base64url=e=>n.check(cR(Z3,e)),n.xid=e=>n.check(nR(D3,e)),n.ksuid=e=>n.check(rR(L3,e)),n.ipv4=e=>n.check(iR(O3,e)),n.ipv6=e=>n.check(sR(M3,e)),n.cidrv4=e=>n.check(oR(N3,e)),n.cidrv6=e=>n.check(aR(z3,e)),n.e164=e=>n.check(uR(U3,e)),n.datetime=e=>n.check(o3(e)),n.date=e=>n.check(l3(e)),n.time=e=>n.check(u3(e)),n.duration=e=>n.check(d3(e))});function g(n){return VC(k3,n)}const qe=R("ZodStringFormat",(n,t)=>{Me.init(n,t),i6.init(n,t)}),T3=R("ZodEmail",(n,t)=>{JT.init(n,t),qe.init(n,t)}),A2=R("ZodGUID",(n,t)=>{YT.init(n,t),qe.init(n,t)}),xh=R("ZodUUID",(n,t)=>{KT.init(n,t),qe.init(n,t)}),C3=R("ZodURL",(n,t)=>{XT.init(n,t),qe.init(n,t)}),R3=R("ZodEmoji",(n,t)=>{QT.init(n,t),qe.init(n,t)}),I3=R("ZodNanoID",(n,t)=>{eC.init(n,t),qe.init(n,t)}),$3=R("ZodCUID",(n,t)=>{tC.init(n,t),qe.init(n,t)}),x3=R("ZodCUID2",(n,t)=>{nC.init(n,t),qe.init(n,t)}),P3=R("ZodULID",(n,t)=>{rC.init(n,t),qe.init(n,t)}),D3=R("ZodXID",(n,t)=>{iC.init(n,t),qe.init(n,t)}),L3=R("ZodKSUID",(n,t)=>{sC.init(n,t),qe.init(n,t)}),O3=R("ZodIPv4",(n,t)=>{uC.init(n,t),qe.init(n,t)}),M3=R("ZodIPv6",(n,t)=>{hC.init(n,t),qe.init(n,t)}),N3=R("ZodCIDRv4",(n,t)=>{dC.init(n,t),qe.init(n,t)}),z3=R("ZodCIDRv6",(n,t)=>{pC.init(n,t),qe.init(n,t)}),H3=R("ZodBase64",(n,t)=>{fC.init(n,t),qe.init(n,t)}),Z3=R("ZodBase64URL",(n,t)=>{gC.init(n,t),qe.init(n,t)}),U3=R("ZodE164",(n,t)=>{vC.init(n,t),qe.init(n,t)}),F3=R("ZodJWT",(n,t)=>{wC.init(n,t),qe.init(n,t)}),s6=R("ZodNumber",(n,t)=>{W8.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(r,i,o)=>HR(n,r,i),n.gt=(r,i)=>n.check(b2(r,i)),n.gte=(r,i)=>n.check(_m(r,i)),n.min=(r,i)=>n.check(_m(r,i)),n.lt=(r,i)=>n.check(w2(r,i)),n.lte=(r,i)=>n.check(Sm(r,i)),n.max=(r,i)=>n.check(Sm(r,i)),n.int=r=>n.check(E2(r)),n.safe=r=>n.check(E2(r)),n.positive=r=>n.check(b2(0,r)),n.nonnegative=r=>n.check(_m(0,r)),n.negative=r=>n.check(w2(0,r)),n.nonpositive=r=>n.check(Sm(0,r)),n.multipleOf=(r,i)=>n.check(S2(r,i)),n.step=(r,i)=>n.check(S2(r,i)),n.finite=()=>n;const e=n._zod.bag;n.minValue=Math.max(e.minimum??Number.NEGATIVE_INFINITY,e.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,n.maxValue=Math.min(e.maximum??Number.POSITIVE_INFINITY,e.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,n.isInt=(e.format??"").includes("int")||Number.isSafeInteger(e.multipleOf??.5),n.isFinite=!0,n.format=e.format??null});function ie(n){return gR(s6,n)}const q3=R("ZodNumberFormat",(n,t)=>{bC.init(n,t),s6.init(n,t)});function E2(n){return vR(q3,n)}const V3=R("ZodBoolean",(n,t)=>{SC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>ZR(n,e,r)});function lt(n){return yR(V3,n)}const B3=R("ZodUnknown",(n,t)=>{_C.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>FR()});function E(){return wR(B3)}const W3=R("ZodNever",(n,t)=>{AC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>UR(n,e,r)});function j3(n){return bR(W3,n)}const G3=R("ZodArray",(n,t)=>{EC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>jR(n,e,r,i),n.element=t.element,n.min=(e,r)=>n.check(Ed(e,r)),n.nonempty=e=>n.check(Ed(1,e)),n.max=(e,r)=>n.check(J8(e,r)),n.length=(e,r)=>n.check(X8(e,r)),n.unwrap=()=>n.element});function G(n,t){return PR(G3,n,t)}const o6=R("ZodObject",(n,t)=>{TC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>GR(n,e,r,i),Ae(n,"shape",()=>t.shape),n.keyof=()=>c6(Object.keys(n._zod.def.shape)),n.catchall=e=>n.clone({...n._zod.def,catchall:e}),n.passthrough=()=>n.clone({...n._zod.def,catchall:E()}),n.loose=()=>n.clone({...n._zod.def,catchall:E()}),n.strict=()=>n.clone({...n._zod.def,catchall:j3()}),n.strip=()=>n.clone({...n._zod.def,catchall:void 0}),n.extend=e=>jk(n,e),n.safeExtend=e=>Gk(n,e),n.merge=e=>Yk(n,e),n.pick=e=>Bk(n,e),n.omit=e=>Wk(n,e),n.partial=(...e)=>Kk(u6,n,e[0]),n.required=(...e)=>Jk(h6,n,e[0])});function a6(n,t){const e={type:"object",shape:n??{},...K(t)};return new o6(e)}function b(n,t){return new o6({type:"object",shape:n,catchall:E(),...K(t)})}const l6=R("ZodUnion",(n,t)=>{Y8.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>YR(n,e,r,i),n.options=t.options});function ae(n,t){return new l6({type:"union",options:n,...K(t)})}const Y3=R("ZodDiscriminatedUnion",(n,t)=>{l6.init(n,t),CC.init(n,t)});function K3(n,t,e){return new Y3({type:"union",options:t,discriminator:n,...K(e)})}const J3=R("ZodIntersection",(n,t)=>{RC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>KR(n,e,r,i)});function Zp(n,t){return new J3({type:"intersection",left:n,right:t})}const X3=R("ZodRecord",(n,t)=>{IC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>JR(n,e,r,i),n.keyType=t.keyType,n.valueType=t.valueType});function T(n,t,e){return new X3({type:"record",keyType:n,valueType:t,...K(e)})}const jm=R("ZodEnum",(n,t)=>{$C.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(r,i,o)=>qR(n,r,i),n.enum=t.entries,n.options=Object.values(t.entries);const e=new Set(Object.keys(t.entries));n.extract=(r,i)=>{const o={};for(const a of r)if(e.has(a))o[a]=t.entries[a];else throw new Error(`Key ${a} not found in enum`);return new jm({...t,checks:[],...K(i),entries:o})},n.exclude=(r,i)=>{const o={...t.entries};for(const a of r)if(e.has(a))delete o[a];else throw new Error(`Key ${a} not found in enum`);return new jm({...t,checks:[],...K(i),entries:o})}});function c6(n,t){const e=Array.isArray(n)?Object.fromEntries(n.map(r=>[r,r])):n;return new jm({type:"enum",entries:e,...K(t)})}const Q3=R("ZodLiteral",(n,t)=>{xC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>VR(n,e,r),n.values=new Set(t.values),Object.defineProperty(n,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function D(n,t){return new Q3({type:"literal",values:Array.isArray(n)?n:[n],...K(t)})}const eI=R("ZodTransform",(n,t)=>{PC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>WR(n,e),n._zod.parse=(e,r)=>{if(r.direction==="backward")throw new $8(n.constructor.name);e.addIssue=o=>{if(typeof o=="string")e.issues.push(Wc(o,e.value,t));else{const a=o;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=e.value),a.inst??(a.inst=n),e.issues.push(Wc(a))}};const i=t.transform(e.value,e);return i instanceof Promise?i.then(o=>(e.value=o,e)):(e.value=i,e)}});function tI(n){return new eI({type:"transform",transform:n})}const u6=R("ZodOptional",(n,t)=>{K8.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>n6(n,e,r,i),n.unwrap=()=>n._zod.def.innerType});function k2(n){return new u6({type:"optional",innerType:n})}const nI=R("ZodExactOptional",(n,t)=>{DC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>n6(n,e,r,i),n.unwrap=()=>n._zod.def.innerType});function rI(n){return new nI({type:"optional",innerType:n})}const iI=R("ZodNullable",(n,t)=>{LC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>XR(n,e,r,i),n.unwrap=()=>n._zod.def.innerType});function T2(n){return new iI({type:"nullable",innerType:n})}const sI=R("ZodDefault",(n,t)=>{OC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>e3(n,e,r,i),n.unwrap=()=>n._zod.def.innerType,n.removeDefault=n.unwrap});function oI(n,t){return new sI({type:"default",innerType:n,get defaultValue(){return typeof t=="function"?t():L8(t)}})}const aI=R("ZodPrefault",(n,t)=>{MC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>t3(n,e,r,i),n.unwrap=()=>n._zod.def.innerType});function lI(n,t){return new aI({type:"prefault",innerType:n,get defaultValue(){return typeof t=="function"?t():L8(t)}})}const h6=R("ZodNonOptional",(n,t)=>{NC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>QR(n,e,r,i),n.unwrap=()=>n._zod.def.innerType});function cI(n,t){return new h6({type:"nonoptional",innerType:n,...K(t)})}const uI=R("ZodCatch",(n,t)=>{zC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>n3(n,e,r,i),n.unwrap=()=>n._zod.def.innerType,n.removeCatch=n.unwrap});function hI(n,t){return new uI({type:"catch",innerType:n,catchValue:typeof t=="function"?t:()=>t})}const dI=R("ZodPipe",(n,t)=>{HC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>r3(n,e,r,i),n.in=t.in,n.out=t.out});function C2(n,t){return new dI({type:"pipe",in:n,out:t})}const pI=R("ZodReadonly",(n,t)=>{ZC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>i3(n,e,r,i),n.unwrap=()=>n._zod.def.innerType});function fI(n){return new pI({type:"readonly",innerType:n})}const mI=R("ZodCustom",(n,t)=>{UC.init(n,t),Fe.init(n,t),n._zod.processJSONSchema=(e,r,i)=>BR(n,e)});function gI(n,t={}){return DR(mI,n,t)}function vI(n){return LR(n)}const yI=[".md",".markdown"];function d6(n){if(n.length===0)return!1;const t=n.at(-1);return t==="/"||t==="\\"}function p6(n){const t=n.lastIndexOf("/"),e=n.lastIndexOf("\\");return n.slice(Math.max(t,e)+1)}function wI(n){return p6(n).toLowerCase()}function bI(n,t){const e=wI(n);return t.some(r=>e.endsWith(r))}function Gm(n){return!d6(n)&&bI(n,yI)}function SI(n){let t;try{t=new URL(n)}catch{return!1}return t.protocol==="http:"||t.protocol==="https:"}function qr(n){try{const{pathname:t}=new URL(n);return/^\/artifact\/[0-9A-Za-z]{26}(\/|$)/.test(t)}catch{return!1}}const _I=a6({id:g().min(1),kind:D("path"),title:g(),path:g()}).strict(),AI=a6({id:g().min(1),kind:D("url"),title:g(),url:g().refine(SI,{message:"url must be an http(s) URL"})}).strict();K3("kind",[_I,AI]);const EI=new Set(["about:","blob:","chrome-extension:","chrome:","data:","devtools:","file:","filesystem:","javascript:","view-source:"]);function kI(n,t){try{const e=new URL(t),r=new URL(n,e);return r.protocol==="http:"||r.protocol==="https:"?{kind:"web",url:r.href}:EI.has(r.protocol)?{kind:"browser-local",url:r.href}:{kind:"application",url:r.href}}catch{return{kind:"invalid"}}}function R2(n,t){return kI(n,t).kind==="web"}const TI="/views/markdown/",CI="/views/url-unsupported/";function RI(n){try{const{protocol:t}=new URL(n);return t==="http:"||t==="https:"}catch{return!1}}function f6(n){return`/artifact/${encodeURIComponent(n)}`}function II(n,t){return`${f6(n)}/${encodeURIComponent(t)}`}function $I(n){return`/markdown/${encodeURIComponent(n)}`}function Td(n,t={electron:!1}){if(n.kind==="url")return t.electron?{renderer:"url-webview",viewURL:n.url,contentURL:null}:qr(n.url)?{renderer:"proxy-iframe",viewURL:n.url,contentURL:null}:t.browserDemo&&RI(n.url)?{renderer:"url-direct",viewURL:n.url,contentURL:null}:{renderer:"url-unsupported",viewURL:CI,contentURL:null};if(Gm(n.path)){const r={viewURL:TI,contentURL:$I(n.id)};return t.electron?{renderer:"url-webview",...r}:{renderer:"markdown",...r}}const e=d6(n.path)?`${f6(n.id)}/`:II(n.id,p6(n.path));return t.electron?{renderer:"url-webview",viewURL:e,contentURL:null}:{renderer:"proxy-iframe",viewURL:e,contentURL:null}}const xI="serverURL",PI="token",DI="mode",LI="desktopAppVersion",OI="electron";function MI(n=window.location.search,t=window.location.origin){const r=new URLSearchParams(n).get(xI);return r?new URL(r).origin:new URL(t).origin}function NI(n=window.location.search){return new URLSearchParams(n).get(PI)}function wi(n=typeof window>"u"?"":window.location.search){return new URLSearchParams(n).get(DI)===OI}function m6(n=typeof window>"u"?"":window.location.search){return new URLSearchParams(n).get(LI)}const I2="tv.telemetry.clientId",zI=5,HI=60,ZI=1e3,UI=zI*HI*ZI,$2=["pointerdown","scroll","keydown"],x2=["focus"],P2=["visibilitychange"],FI="hidden";function qI(n,t=GI){const e=n.getItem(I2);if(e)return e;const r=t();return n.setItem(I2,r),r}function VI(n){return{clientId:qI(n.storage,n.idFactory),userAgent:n.userAgent??(typeof navigator>"u"?"":navigator.userAgent),clientApp:n.clientApp,...n.desktopAppVersion?{desktopAppVersion:n.desktopAppVersion}:{}}}function BI(n){const t=new URLSearchParams;return t.set("clientId",n.clientId),t.set("userAgent",n.userAgent),t.set("clientApp",n.clientApp),n.desktopAppVersion&&t.set("desktopAppVersion",n.desktopAppVersion),t}function WI(n){return new jI(n)}var eu,Gr,Vi,tu,nu,fn,co,ru,Hd,g6;class jI{constructor(t){m(this,Hd);m(this,eu);m(this,Gr);m(this,Vi);m(this,tu);m(this,nu);m(this,fn);m(this,co,!1);m(this,ru,Number.NEGATIVE_INFINITY);d(this,eu,t.meta),d(this,Gr,t.documentTarget),d(this,Vi,t.windowTarget),d(this,tu,t.send),d(this,nu,t.nowMs??Date.now),d(this,fn,()=>h(this,Hd,g6).call(this))}start(){if(!s(this,co)){d(this,co,!0);for(const t of $2)s(this,Vi).addEventListener(t,s(this,fn)),s(this,Gr).addEventListener(t,s(this,fn));for(const t of x2)s(this,Vi).addEventListener(t,s(this,fn));for(const t of P2)s(this,Gr).addEventListener(t,s(this,fn))}}stop(){if(s(this,co)){d(this,co,!1);for(const t of $2)s(this,Vi).removeEventListener(t,s(this,fn)),s(this,Gr).removeEventListener(t,s(this,fn));for(const t of x2)s(this,Vi).removeEventListener(t,s(this,fn));for(const t of P2)s(this,Gr).removeEventListener(t,s(this,fn))}}}eu=new WeakMap,Gr=new WeakMap,Vi=new WeakMap,tu=new WeakMap,nu=new WeakMap,fn=new WeakMap,co=new WeakMap,ru=new WeakMap,Hd=new WeakSet,g6=function(){if(s(this,Gr).visibilityState===FI)return;const t=s(this,nu).call(this);t-s(this,ru)<UI||(d(this,ru,t),s(this,tu).call(this,{type:ZE,clientId:s(this,eu).clientId}))};function GI(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():U1().toLowerCase()}const De={authenticate:"authenticate",document_did_change:"document/didChange",document_did_close:"document/didClose",document_did_focus:"document/didFocus",document_did_open:"document/didOpen",document_did_save:"document/didSave",initialize:"initialize",logout:"logout",nes_accept:"nes/accept",nes_close:"nes/close",nes_reject:"nes/reject",nes_start:"nes/start",nes_suggest:"nes/suggest",session_cancel:"session/cancel",session_close:"session/close",session_fork:"session/fork",session_list:"session/list",session_load:"session/load",session_new:"session/new",session_prompt:"session/prompt",session_resume:"session/resume",session_set_config_option:"session/set_config_option",session_set_mode:"session/set_mode",session_set_model:"session/set_model"},Zr={fs_read_text_file:"fs/read_text_file",fs_write_text_file:"fs/write_text_file",session_request_permission:"session/request_permission",session_update:"session/update",terminal_create:"terminal/create",terminal_kill:"terminal/kill",terminal_output:"terminal/output",terminal_release:"terminal/release",terminal_wait_for_exit:"terminal/wait_for_exit"},YI=1,KI=b({_meta:T(g(),E()).nullish(),terminal:lt().optional().default(!1)}),JI=b({_meta:T(g(),E()).nullish(),label:g().nullish(),name:g(),optional:lt().optional().default(!1),secret:lt().optional().default(!0)}),XI=b({_meta:T(g(),E()).nullish(),description:g().nullish(),id:g(),name:g()}),QI=b({_meta:T(g(),E()).nullish(),description:g().nullish(),id:g(),link:g().nullish(),name:g(),vars:G(JI)}),e$=b({_meta:T(g(),E()).nullish(),args:G(g()).optional(),description:g().nullish(),env:T(g(),g()).optional(),id:g(),name:g()}),t$=ae([QI.and(b({type:D("env_var")})),e$.and(b({type:D("terminal")})),XI]),n$=b({_meta:T(g(),E()).nullish(),methodId:g()}),r$=b({_meta:T(g(),E()).nullish()}),i$=b({_meta:T(g(),E()).nullish(),blob:g(),mimeType:g().nullish(),uri:g()}),s$=b({default:lt().nullish(),description:g().nullish(),title:g().nullish()}),o$=b({_meta:T(g(),E()).nullish()}),a$=b({_meta:T(g(),E()).nullish()}),l$=b({amount:ie(),currency:g()}),c$=b({_meta:T(g(),E()).nullish(),terminalId:g()}),u$=b({_meta:T(g(),E()).nullish(),newText:g(),oldText:g().nullish(),path:g()}),h$=ae([g(),ie(),ie(),lt(),G(g())]),d$=b({content:T(g(),h$).nullish()}),p$=ae([d$.and(b({action:D("accept")})),b({action:D("decline")}),b({action:D("cancel")})]),f$=b({_meta:T(g(),E()).nullish()}),v6=g(),m$=b({_meta:T(g(),E()).nullish(),elicitationId:v6}),g$=b({_meta:T(g(),E()).nullish(),action:p$}),v$=D("object"),y$=D("string"),w$=b({_meta:T(g(),E()).nullish()}),b$=b({_meta:T(g(),E()).nullish(),form:f$.nullish(),url:w$.nullish()}),S$=b({elicitationId:v6,url:g().url()}),y6=b({const:g(),title:g()}),w6=b({_meta:T(g(),E()).nullish(),name:g(),value:g()}),_$=ae([D(-32700),D(-32600),D(-32601),D(-32602),D(-32603),D(-32800),D(-32e3),D(-32002),D(-32042),ie().int().min(-2147483648,{message:"Invalid value: Expected int32 to be >= -2147483648"}).max(2147483647,{message:"Invalid value: Expected int32 to be <= 2147483647"})]),b6=b({code:_$,data:E().optional(),message:g()}),S6=E(),_6=E(),A6=E(),A$=b({_meta:T(g(),E()).nullish(),readTextFile:lt().optional().default(!1),writeTextFile:lt().optional().default(!1)}),E6=b({_meta:T(g(),E()).nullish(),name:g(),value:g()}),k6=b({_meta:T(g(),E()).nullish(),name:g(),title:g().nullish(),version:g()}),E$=b({default:ie().nullish(),description:g().nullish(),maximum:ie().nullish(),minimum:ie().nullish(),title:g().nullish()}),k$=b({_meta:T(g(),E()).nullish()}),T$=b({_meta:T(g(),E()).nullish(),additionalDirectories:G(g()).optional(),cursor:g().nullish(),cwd:g().nullish()}),C$=b({_meta:T(g(),E()).nullish()}),R$=b({_meta:T(g(),E()).nullish(),logout:C$.nullish()}),I$=b({_meta:T(g(),E()).nullish()}),$$=b({_meta:T(g(),E()).nullish()}),x$=b({_meta:T(g(),E()).nullish(),http:lt().optional().default(!1),sse:lt().optional().default(!1)}),P$=b({_meta:T(g(),E()).nullish(),headers:G(E6),name:g(),url:g()}),D$=b({_meta:T(g(),E()).nullish(),headers:G(E6),name:g(),url:g()}),L$=b({_meta:T(g(),E()).nullish(),args:G(g()),command:g(),env:G(w6),name:g()}),Up=ae([P$.and(b({type:D("http")})),D$.and(b({type:D("sse")})),L$]),G1=g(),O$=b({_meta:T(g(),E()).nullish(),description:g().nullish(),modelId:G1,name:g()}),M$=ae([D("error"),D("warning"),D("information"),D("hint")]),N$=b({_meta:T(g(),E()).nullish()}),z$=b({_meta:T(g(),E()).nullish()}),H$=b({_meta:T(g(),E()).nullish()}),Z$=b({_meta:T(g(),E()).nullish()}),U$=b({_meta:T(g(),E()).nullish()}),F$=b({_meta:T(g(),E()).nullish(),maxCount:ie().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish()}),q$=b({diff:g(),uri:g()}),V$=b({endLine:ie().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}),startLine:ie().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}),text:g()}),B$=b({_meta:T(g(),E()).nullish()}),W$=b({_meta:T(g(),E()).nullish()}),j$=b({languageId:g(),text:g(),uri:g()}),G$=b({_meta:T(g(),E()).nullish(),maxCount:ie().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish()}),Y$=ae([D("rejected"),D("ignored"),D("replaced"),D("cancelled")]),K$=b({excerpts:G(V$),uri:g()}),J$=b({_meta:T(g(),E()).nullish()}),X$=b({_meta:T(g(),E()).nullish()}),Q$=b({name:g(),owner:g(),remoteUrl:g()}),ex=b({_meta:T(g(),E()).nullish()}),tx=b({_meta:T(g(),E()).nullish(),jump:B$.nullish(),rename:X$.nullish(),searchAndReplace:ex.nullish()}),nx=b({id:g(),isRegex:lt().nullish(),replace:g(),search:g(),uri:g()}),rx=ae([D("automatic"),D("diagnostic"),D("manual")]),ix=b({_meta:T(g(),E()).nullish(),maxCount:ie().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish()}),sx=b({_meta:T(g(),E()).nullish(),diagnostics:N$.nullish(),editHistory:F$.nullish(),openFiles:W$.nullish(),recentFiles:G$.nullish(),relatedSnippets:J$.nullish(),userActions:ix.nullish()}),ox=b({_meta:T(g(),E()).nullish(),additionalDirectories:G(g()).optional(),cwd:g(),mcpServers:G(Up)}),ax=b({default:ie().nullish(),description:g().nullish(),maximum:ie().nullish(),minimum:ie().nullish(),title:g().nullish()}),T6=g(),lx=ae([D("allow_once"),D("allow_always"),D("reject_once"),D("reject_always")]),cx=b({_meta:T(g(),E()).nullish(),kind:lx,name:g(),optionId:T6}),ux=ae([D("high"),D("medium"),D("low")]),hx=ae([D("pending"),D("in_progress"),D("completed")]),dx=b({_meta:T(g(),E()).nullish(),content:g(),priority:ux,status:hx}),px=b({_meta:T(g(),E()).nullish(),entries:G(dx)}),Cs=b({character:ie().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}),line:ie().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"})}),fx=b({id:g(),position:Cs,uri:g()}),mx=b({id:g(),newName:g(),position:Cs,uri:g()}),gx=b({action:g(),position:Cs,timestampMs:ie(),uri:g()}),C6=ae([D("utf-16"),D("utf-32"),D("utf-8")]),vx=b({_meta:T(g(),E()).nullish(),auth:KI.optional().default({terminal:!1}),elicitation:b$.nullish(),fs:A$.optional().default({readTextFile:!1,writeTextFile:!1}),nes:tx.nullish(),positionEncodings:G(C6).optional(),terminal:lt().optional().default(!1)}),yx=b({_meta:T(g(),E()).nullish(),audio:lt().optional().default(!1),embeddedContext:lt().optional().default(!1),image:lt().optional().default(!1)}),R6=ie().int().gte(0).lte(65535),wx=b({_meta:T(g(),E()).nullish(),clientCapabilities:vx.optional().default({auth:{terminal:!1},fs:{readTextFile:!1,writeTextFile:!1},terminal:!1}),clientInfo:k6.nullish(),protocolVersion:R6}),Yl=b({end:Cs,start:Cs}),bx=b({message:g(),range:Yl,severity:M$,uri:g()}),Sx=b({languageId:g(),lastFocusedMs:ie().nullish(),uri:g(),visibleRange:Yl.nullish()}),_x=b({_meta:T(g(),E()).nullish(),diagnostics:G(bx).nullish(),editHistory:G(q$).nullish(),openFiles:G(Sx).nullish(),recentFiles:G(j$).nullish(),relatedSnippets:G(K$).nullish(),userActions:G(gx).nullish()}),Ax=b({newText:g(),range:Yl}),Ex=b({cursorPosition:Cs.nullish(),edits:G(Ax),id:g(),uri:g()}),kx=ae([Ex.and(b({kind:D("edit")})),fx.and(b({kind:D("jump")})),mx.and(b({kind:D("rename")})),nx.and(b({kind:D("searchAndReplace")}))]),Tx=b({_meta:T(g(),E()).nullish(),content:g()}),Cx=b({_meta:T(g(),E()).nullish()}),Qo=ae([ie(),g()]).nullable();b({_meta:T(g(),E()).nullish(),requestId:Qo});const Rx=c6(["assistant","user"]),ph=b({_meta:T(g(),E()).nullish(),audience:G(Rx).nullish(),lastModified:g().nullish(),priority:ie().nullish()}),Ix=b({_meta:T(g(),E()).nullish(),annotations:ph.nullish(),data:g(),mimeType:g()}),$x=b({_meta:T(g(),E()).nullish(),annotations:ph.nullish(),data:g(),mimeType:g(),uri:g().nullish()}),xx=b({_meta:T(g(),E()).nullish(),annotations:ph.nullish(),description:g().nullish(),mimeType:g().nullish(),name:g(),size:ie().nullish(),title:g().nullish(),uri:g()}),Px=b({_meta:T(g(),E()).nullish(),optionId:T6}),Dx=ae([b({outcome:D("cancelled")}),Px.and(b({outcome:D("selected")}))]),Lx=b({_meta:T(g(),E()).nullish(),outcome:Dx}),Ox=b({_meta:T(g(),E()).nullish()}),Mx=b({_meta:T(g(),E()).nullish()}),Nx=b({currentValue:lt()}),zx=g(),I6=g(),Hx=ae([D("mode"),D("model"),D("thought_level"),g()]),Y1=g(),$6=b({_meta:T(g(),E()).nullish(),description:g().nullish(),name:g(),value:Y1}),Zx=b({_meta:T(g(),E()).nullish(),group:zx,name:g(),options:G($6)}),Ux=ae([G($6),G(Zx)]),Fx=b({currentValue:Y1,options:Ux}),Kl=Zp(ae([Fx.and(b({type:D("select")})),Nx.and(b({type:D("boolean")}))]),b({_meta:T(g(),E()).nullish(),category:Hx.nullish(),description:g().nullish(),id:I6,name:g()})),qx=b({_meta:T(g(),E()).nullish(),configOptions:G(Kl)}),Vx=b({_meta:T(g(),E()).nullish()}),be=g(),Bx=b({_meta:T(g(),E()).nullish(),id:g(),sessionId:be}),Wx=b({_meta:T(g(),E()).nullish(),sessionId:be}),jx=b({_meta:T(g(),E()).nullish(),sessionId:be}),Gx=b({_meta:T(g(),E()).nullish(),sessionId:be}),x6=b({_meta:T(g(),E()).nullish(),args:G(g()).optional(),command:g(),cwd:g().nullish(),env:G(w6).optional(),outputByteLimit:ie().nullish(),sessionId:be}),Yx=b({_meta:T(g(),E()).nullish(),sessionId:be,uri:g()}),Kx=b({_meta:T(g(),E()).nullish(),position:Cs,sessionId:be,uri:g(),version:ie(),visibleRange:Yl}),Jx=b({_meta:T(g(),E()).nullish(),languageId:g(),sessionId:be,text:g(),uri:g(),version:ie()}),Xx=b({_meta:T(g(),E()).nullish(),sessionId:be,uri:g()}),Qx=b({_meta:T(g(),E()).nullish(),additionalDirectories:G(g()).optional(),cwd:g(),mcpServers:G(Up).optional(),sessionId:be}),P6=b({_meta:T(g(),E()).nullish(),sessionId:be,terminalId:g()}),eP=b({_meta:T(g(),E()).nullish(),additionalDirectories:G(g()).optional(),cwd:g(),mcpServers:G(Up),sessionId:be}),D6=b({_meta:T(g(),E()).nullish(),limit:ie().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish(),line:ie().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish(),path:g(),sessionId:be}),tP=b({_meta:T(g(),E()).nullish(),id:g(),reason:Y$.nullish(),sessionId:be}),L6=b({_meta:T(g(),E()).nullish(),sessionId:be,terminalId:g()}),nP=b({_meta:T(g(),E()).nullish(),additionalDirectories:G(g()).optional(),cwd:g(),mcpServers:G(Up).optional(),sessionId:be}),rP=b({_meta:T(g(),E()).nullish(),additionalDirectories:G(g()).optional(),cwd:g(),sessionId:be,title:g().nullish(),updatedAt:g().nullish()}),iP=b({_meta:T(g(),E()).nullish(),nextCursor:g().nullish(),sessions:G(rP)}),sP=b({_meta:T(g(),E()).nullish(),title:g().nullish(),updatedAt:g().nullish()}),oP=b({_meta:T(g(),E()).nullish()}),Fp=g(),aP=b({_meta:T(g(),E()).nullish(),currentModeId:Fp}),lP=b({_meta:T(g(),E()).nullish(),description:g().nullish(),id:Fp,name:g()}),qp=b({_meta:T(g(),E()).nullish(),availableModes:G(lP),currentModeId:Fp}),Vp=b({_meta:T(g(),E()).nullish(),availableModels:G(O$),currentModelId:G1}),cP=b({_meta:T(g(),E()).nullish(),configOptions:G(Kl).nullish(),models:Vp.nullish(),modes:qp.nullish(),sessionId:be}),uP=b({_meta:T(g(),E()).nullish(),configOptions:G(Kl).nullish(),models:Vp.nullish(),modes:qp.nullish()}),hP=b({_meta:T(g(),E()).nullish(),configOptions:G(Kl).nullish(),models:Vp.nullish(),modes:qp.nullish(),sessionId:be}),dP=b({_meta:T(g(),E()).nullish(),configOptions:G(Kl).nullish(),models:Vp.nullish(),modes:qp.nullish()}),pP=b({_meta:T(g(),E()).nullish()}),fP=b({_meta:T(g(),E()).nullish(),additionalDirectories:Ox.nullish(),close:Mx.nullish(),fork:Vx.nullish(),list:oP.nullish(),resume:pP.nullish()}),mP=Zp(ae([b({type:D("boolean"),value:lt()}),b({value:Y1})]),b({_meta:T(g(),E()).nullish(),configId:I6,sessionId:be})),gP=b({_meta:T(g(),E()).nullish(),configOptions:G(Kl)}),vP=b({_meta:T(g(),E()).nullish(),modeId:Fp,sessionId:be}),yP=b({_meta:T(g(),E()).nullish()}),wP=b({_meta:T(g(),E()).nullish(),modelId:G1,sessionId:be}),bP=b({_meta:T(g(),E()).nullish()}),SP=b({_meta:T(g(),E()).nullish(),sessionId:be}),_P=ae([D("end_turn"),D("max_tokens"),D("max_turn_requests"),D("refusal"),D("cancelled")]),AP=ae([D("email"),D("uri"),D("date"),D("date-time")]),EP=b({default:g().nullish(),description:g().nullish(),enum:G(g()).nullish(),format:AP.nullish(),maxLength:ie().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish(),minLength:ie().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish(),oneOf:G(y6).nullish(),pattern:g().nullish(),title:g().nullish()}),kP=b({_meta:T(g(),E()).nullish(),context:_x.nullish(),position:Cs,selection:Yl.nullish(),sessionId:be,triggerKind:rx,uri:g(),version:ie()}),TP=b({_meta:T(g(),E()).nullish(),suggestions:G(kx)}),CP=b({_meta:T(g(),E()).nullish(),terminalId:g()}),RP=b({_meta:T(g(),E()).nullish(),exitCode:ie().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish(),signal:g().nullish()}),O6=b({_meta:T(g(),E()).nullish(),sessionId:be,terminalId:g()}),IP=b({_meta:T(g(),E()).nullish(),exitStatus:RP.nullish(),output:g(),truncated:lt()}),$P=b({_meta:T(g(),E()).nullish(),annotations:ph.nullish(),text:g()}),xP=b({range:Yl.nullish(),text:g()}),PP=b({_meta:T(g(),E()).nullish(),contentChanges:G(xP),sessionId:be,uri:g(),version:ie()});b({method:g(),params:ae([Wx,Jx,PP,Yx,Xx,Kx,Bx,tP,S6]).nullish()});const DP=ae([D("full"),D("incremental")]),LP=b({_meta:T(g(),E()).nullish(),syncKind:DP}),OP=b({_meta:T(g(),E()).nullish(),didChange:LP.nullish(),didClose:z$.nullish(),didFocus:H$.nullish(),didOpen:Z$.nullish(),didSave:U$.nullish()}),MP=b({_meta:T(g(),E()).nullish(),document:OP.nullish()}),NP=b({_meta:T(g(),E()).nullish(),context:sx.nullish(),events:MP.nullish()}),zP=b({_meta:T(g(),E()).nullish(),auth:R$.optional().default({}),loadSession:lt().optional().default(!1),mcpCapabilities:x$.optional().default({http:!1,sse:!1}),nes:NP.nullish(),positionEncoding:C6.nullish(),promptCapabilities:yx.optional().default({audio:!1,embeddedContext:!1,image:!1}),sessionCapabilities:fP.optional().default({})}),HP=b({_meta:T(g(),E()).nullish(),agentCapabilities:zP.optional().default({auth:{},loadSession:!1,mcpCapabilities:{http:!1,sse:!1},promptCapabilities:{audio:!1,embeddedContext:!1,image:!1},sessionCapabilities:{}}),agentInfo:k6.nullish(),authMethods:G(t$).optional().default([]),protocolVersion:R6}),ZP=b({_meta:T(g(),E()).nullish(),mimeType:g().nullish(),text:g(),uri:g()}),UP=ae([ZP,i$]),FP=b({_meta:T(g(),E()).nullish(),annotations:ph.nullish(),resource:UP}),K1=ae([$P.and(b({type:D("text")})),$x.and(b({type:D("image")})),Ix.and(b({type:D("audio")})),xx.and(b({type:D("resource_link")})),FP.and(b({type:D("resource")}))]),qP=b({_meta:T(g(),E()).nullish(),content:K1}),Am=b({_meta:T(g(),E()).nullish(),content:K1,messageId:g().nullish()}),VP=b({_meta:T(g(),E()).nullish(),messageId:g().nullish(),prompt:G(K1),sessionId:be}),BP=b({anyOf:G(y6)}),M6=ae([qP.and(b({type:D("content")})),u$.and(b({type:D("diff")})),CP.and(b({type:D("terminal")}))]),N6=g(),z6=b({_meta:T(g(),E()).nullish(),line:ie().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish(),path:g()}),H6=ae([D("pending"),D("in_progress"),D("completed"),D("failed")]),Z6=ae([D("read"),D("edit"),D("delete"),D("move"),D("search"),D("execute"),D("think"),D("fetch"),D("switch_mode"),D("other")]),WP=b({_meta:T(g(),E()).nullish(),content:G(M6).optional(),kind:Z6.optional(),locations:G(z6).optional(),rawInput:E().optional(),rawOutput:E().optional(),status:H6.optional(),title:g(),toolCallId:N6}),U6=b({_meta:T(g(),E()).nullish(),content:G(M6).nullish(),kind:Z6.nullish(),locations:G(z6).nullish(),rawInput:E().optional(),rawOutput:E().optional(),status:H6.nullish(),title:g().nullish(),toolCallId:N6}),F6=b({_meta:T(g(),E()).nullish(),options:G(cx),sessionId:be,toolCall:U6}),jP=b({_meta:T(g(),E()).nullish(),hint:g()}),GP=jP,YP=b({_meta:T(g(),E()).nullish(),description:g(),input:GP.nullish(),name:g()}),KP=b({_meta:T(g(),E()).nullish(),availableCommands:G(YP)}),JP=b({enum:G(g()),type:y$}),XP=ae([JP,BP]),QP=b({default:G(g()).nullish(),description:g().nullish(),items:XP,maxItems:ie().nullish(),minItems:ie().nullish(),title:g().nullish()}),e5=ae([EP.and(b({type:D("string")})),ax.and(b({type:D("number")})),E$.and(b({type:D("integer")})),s$.and(b({type:D("boolean")})),QP.and(b({type:D("array")}))]),t5=b({description:g().nullish(),properties:T(g(),e5).optional().default({}),required:G(g()).nullish(),title:g().nullish(),type:v$.optional().default("object")}),n5=b({requestedSchema:t5}),r5=Zp(ae([n5.and(b({mode:D("form")})),S$.and(b({mode:D("url")}))]),b({_meta:T(g(),E()).nullish(),message:g(),sessionId:be})),i5=b({cachedReadTokens:ie().nullish(),cachedWriteTokens:ie().nullish(),inputTokens:ie(),outputTokens:ie(),thoughtTokens:ie().nullish(),totalTokens:ie()}),s5=b({_meta:T(g(),E()).nullish(),stopReason:_P,usage:i5.nullish(),userMessageId:g().nullish()});ae([b({id:Qo,result:ae([HP,r$,$$,hP,uP,iP,cP,dP,a$,yP,gP,s5,bP,SP,TP,o$,A6])}),b({error:b6,id:Qo})]);const o5=b({_meta:T(g(),E()).nullish(),cost:l$.nullish(),size:ie(),used:ie()}),a5=ae([Am.and(b({sessionUpdate:D("user_message_chunk")})),Am.and(b({sessionUpdate:D("agent_message_chunk")})),Am.and(b({sessionUpdate:D("agent_thought_chunk")})),WP.and(b({sessionUpdate:D("tool_call")})),U6.and(b({sessionUpdate:D("tool_call_update")})),px.and(b({sessionUpdate:D("plan")})),KP.and(b({sessionUpdate:D("available_commands_update")})),aP.and(b({sessionUpdate:D("current_mode_update")})),qx.and(b({sessionUpdate:D("config_option_update")})),sP.and(b({sessionUpdate:D("session_info_update")})),o5.and(b({sessionUpdate:D("usage_update")}))]),q6=b({_meta:T(g(),E()).nullish(),sessionId:be,update:a5});b({method:g(),params:ae([q6,m$,S6]).nullish()});const V6=b({_meta:T(g(),E()).nullish(),sessionId:be,terminalId:g()}),l5=b({_meta:T(g(),E()).nullish(),exitCode:ie().int().gte(0).max(4294967295,{message:"Invalid value: Expected uint32 to be <= 4294967295"}).nullish(),signal:g().nullish()}),c5=b({name:g(),uri:g()}),u5=b({_meta:T(g(),E()).nullish(),repository:Q$.nullish(),workspaceFolders:G(c5).nullish(),workspaceUri:g().nullish()});b({id:Qo,method:g(),params:ae([wx,n$,I$,ox,eP,T$,Qx,nP,Gx,vP,mP,VP,wP,u5,kP,jx,_6]).nullish()});const B6=b({_meta:T(g(),E()).nullish(),content:g(),path:g(),sessionId:be});b({id:Qo,method:g(),params:ae([B6,D6,F6,x6,O6,L6,V6,P6,r5,_6]).nullish()});const h5=b({_meta:T(g(),E()).nullish()});ae([b({id:Qo,result:ae([h5,Tx,Lx,c$,IP,Cx,l5,k$,g$,A6])}),b({error:b6,id:Qo})]);var we;class d5{constructor(t,e){m(this,we);const r=t(this),i=async(a,l)=>{var c,u,p,f,y,v,S;switch(a){case Zr.fs_write_text_file:{const _=B6.parse(l);return(c=r.writeTextFile)==null?void 0:c.call(r,_)}case Zr.fs_read_text_file:{const _=D6.parse(l);return(u=r.readTextFile)==null?void 0:u.call(r,_)}case Zr.session_request_permission:{const _=F6.parse(l);return r.requestPermission(_)}case Zr.terminal_create:{const _=x6.parse(l);return(p=r.createTerminal)==null?void 0:p.call(r,_)}case Zr.terminal_output:{const _=O6.parse(l);return(f=r.terminalOutput)==null?void 0:f.call(r,_)}case Zr.terminal_release:{const _=L6.parse(l);return await((y=r.releaseTerminal)==null?void 0:y.call(r,_))??{}}case Zr.terminal_wait_for_exit:{const _=V6.parse(l);return(v=r.waitForTerminalExit)==null?void 0:v.call(r,_)}case Zr.terminal_kill:{const _=P6.parse(l);return await((S=r.killTerminal)==null?void 0:S.call(r,_))??{}}default:if(r.extMethod)return r.extMethod(a,l);throw rt.methodNotFound(a)}},o=async(a,l)=>{switch(a){case Zr.session_update:{const c=q6.parse(l);return r.sessionUpdate(c)}default:if(r.extNotification)return r.extNotification(a,l);throw rt.methodNotFound(a)}};d(this,we,new p5(i,o,e))}async initialize(t){return await s(this,we).sendRequest(De.initialize,t)}async newSession(t){return await s(this,we).sendRequest(De.session_new,t)}async loadSession(t){return await s(this,we).sendRequest(De.session_load,t)??{}}async unstable_forkSession(t){return await s(this,we).sendRequest(De.session_fork,t)}async listSessions(t){return await s(this,we).sendRequest(De.session_list,t)}async unstable_resumeSession(t){return await s(this,we).sendRequest(De.session_resume,t)}async unstable_closeSession(t){return await s(this,we).sendRequest(De.session_close,t)}async setSessionMode(t){return await s(this,we).sendRequest(De.session_set_mode,t)??{}}async unstable_setSessionModel(t){return await s(this,we).sendRequest(De.session_set_model,t)??{}}async setSessionConfigOption(t){return await s(this,we).sendRequest(De.session_set_config_option,t)}async authenticate(t){return await s(this,we).sendRequest(De.authenticate,t)??{}}async unstable_logout(t){return await s(this,we).sendRequest(De.logout,t)??{}}async prompt(t){return await s(this,we).sendRequest(De.session_prompt,t)}async cancel(t){return await s(this,we).sendNotification(De.session_cancel,t)}async unstable_startNes(t){return await s(this,we).sendRequest(De.nes_start,t)}async unstable_suggestNes(t){return await s(this,we).sendRequest(De.nes_suggest,t)}async unstable_closeNes(t){return await s(this,we).sendRequest(De.nes_close,t)??{}}async unstable_didOpenDocument(t){return await s(this,we).sendNotification(De.document_did_open,t)}async unstable_didChangeDocument(t){return await s(this,we).sendNotification(De.document_did_change,t)}async unstable_didCloseDocument(t){return await s(this,we).sendNotification(De.document_did_close,t)}async unstable_didSaveDocument(t){return await s(this,we).sendNotification(De.document_did_save,t)}async unstable_didFocusDocument(t){return await s(this,we).sendNotification(De.document_did_focus,t)}async unstable_acceptNes(t){return await s(this,we).sendNotification(De.nes_accept,t)}async unstable_rejectNes(t){return await s(this,we).sendNotification(De.nes_reject,t)}async extMethod(t,e){return await s(this,we).sendRequest(t,e)}async extNotification(t,e){return await s(this,we).sendNotification(t,e)}get signal(){return s(this,we).signal}get closed(){return s(this,we).closed}}we=new WeakMap;var Bi,Zd,iu,su,Ha,Za,or,ou,Ze,W6,Ym,j6,G6,Y6,K6,Km,Ac;class p5{constructor(t,e,r){m(this,Ze);m(this,Bi,new Map);m(this,Zd,0);m(this,iu);m(this,su);m(this,Ha);m(this,Za,Promise.resolve());m(this,or,new AbortController);m(this,ou);d(this,iu,t),d(this,su,e),d(this,Ha,r),d(this,ou,new Promise(i=>{s(this,or).signal.addEventListener("abort",()=>i())})),h(this,Ze,W6).call(this)}get signal(){return s(this,or).signal}get closed(){return s(this,ou)}async sendRequest(t,e){h(this,Ze,Km).call(this);const r=kh(this,Zd)._++,i=new Promise((o,a)=>{s(this,Bi).set(r,{resolve:o,reject:a})});return await h(this,Ze,Ac).call(this,{jsonrpc:"2.0",id:r,method:t,params:e}),i}async sendNotification(t,e){h(this,Ze,Km).call(this),await h(this,Ze,Ac).call(this,{jsonrpc:"2.0",method:t,params:e})}}Bi=new WeakMap,Zd=new WeakMap,iu=new WeakMap,su=new WeakMap,Ha=new WeakMap,Za=new WeakMap,or=new WeakMap,ou=new WeakMap,Ze=new WeakSet,W6=async function(){let t;try{const e=s(this,Ha).readable.getReader();try{for(;!s(this,or).signal.aborted;){const{value:r,done:i}=await e.read();if(i)break;if(r)try{h(this,Ze,j6).call(this,r)}catch(o){console.error("Unexpected error during message processing:",r,o),"id"in r&&r.id!==void 0&&h(this,Ze,Ac).call(this,{jsonrpc:"2.0",id:r.id,error:{code:-32700,message:"Parse error"}})}}}finally{e.releaseLock()}}catch(e){t=e}finally{h(this,Ze,Ym).call(this,t)}},Ym=function(t){if(s(this,or).signal.aborted)return;const e=t??new Error("ACP connection closed");for(const r of s(this,Bi).values())r.reject(e);s(this,Bi).clear(),s(this,or).abort(e)},j6=async function(t){if("method"in t&&"id"in t){const e=await h(this,Ze,G6).call(this,t.method,t.params);"error"in e&&console.error("Error handling request",t,e.error),await h(this,Ze,Ac).call(this,{jsonrpc:"2.0",id:t.id,...e})}else if("method"in t){const e=await h(this,Ze,Y6).call(this,t.method,t.params);"error"in e&&console.error("Error handling notification",t,e.error)}else"id"in t?h(this,Ze,K6).call(this,t):console.error("Invalid message",{message:t})},G6=async function(t,e){try{return{result:await s(this,iu).call(this,t,e)??null}}catch(r){if(r instanceof rt)return r.toResult();if(r instanceof _2)return rt.invalidParams(r.format()).toResult();let i;(r instanceof Error||typeof r=="object"&&r!=null&&"message"in r&&typeof r.message=="string")&&(i=r.message);try{return rt.internalError(i?JSON.parse(i):{}).toResult()}catch{return rt.internalError({details:i}).toResult()}}},Y6=async function(t,e){try{return await s(this,su).call(this,t,e),{result:null}}catch(r){if(r instanceof rt)return r.toResult();if(r instanceof _2)return rt.invalidParams(r.format()).toResult();let i;(r instanceof Error||typeof r=="object"&&r!=null&&"message"in r&&typeof r.message=="string")&&(i=r.message);try{return rt.internalError(i?JSON.parse(i):{}).toResult()}catch{return rt.internalError({details:i}).toResult()}}},K6=function(t){const e=s(this,Bi).get(t.id);if(e){if("result"in t)e.resolve(t.result);else if("error"in t){const{code:r,message:i,data:o}=t.error;e.reject(new rt(r,i,o))}s(this,Bi).delete(t.id)}else console.error("Got response to unknown request",t.id)},Km=function(){if(s(this,or).signal.aborted)throw s(this,or).signal.reason??new Error("ACP connection closed")},Ac=async function(t){return d(this,Za,s(this,Za).then(async()=>{const e=s(this,Ha).writable.getWriter();try{await e.write(t)}finally{e.releaseLock()}}).catch(e=>{h(this,Ze,Ym).call(this,e)})),s(this,Za)};class rt extends Error{constructor(e,r,i){super(r);I(this,"code");I(this,"data");this.code=e,this.name="RequestError",this.data=i}static parseError(e,r){return new rt(-32700,`Parse error${r?`: ${r}`:""}`,e)}static invalidRequest(e,r){return new rt(-32600,`Invalid request${r?`: ${r}`:""}`,e)}static methodNotFound(e){return new rt(-32601,`"Method not found": ${e}`,{method:e})}static invalidParams(e,r){return new rt(-32602,`Invalid params${r?`: ${r}`:""}`,e)}static internalError(e,r){return new rt(-32603,`Internal error${r?`: ${r}`:""}`,e)}static authRequired(e,r){return new rt(-32e3,`Authentication required${r?`: ${r}`:""}`,e)}static resourceNotFound(e){return new rt(-32002,`Resource not found${e?`: ${e}`:""}`,e&&{uri:e})}toResult(){return{error:{code:this.code,message:this.message,data:this.data}}}toErrorResponse(){return{code:this.code,message:this.message,data:this.data}}}function f5(n,t,e){const r=n.dispose.bind(n);n.dispose=(()=>{if(!t())return e(),r()})}function J6(n){var e;class t extends n{constructor(...o){super(...o);m(this,e,!1);f5(this,()=>s(this,e),()=>{d(this,e,!0)})}[Symbol.dispose](){this.dispose()}get disposed(){return s(this,e)}}return e=new WeakMap,t}const m5=/^Sender \(untrusted metadata\):\n```json\n[\s\S]*?\n```\n\n?/,g5=/^\[[^\n]*Working directory:[^\n]*\]\n\n?/,v5=/\[Television channel context\][\s\S]*?\[\/Television channel context\]\n*/,y5=/\b(tv|television|channel|artifact|artifacts|viewer|filmstrip|layout|focus)\b/i,w5=/^[A-Za-z0-9_@%+=:,./-]+$/,b5=/\[\[\s*(?:reply_to_current|reply_to\s*:\s*[^\]\n]+|audio_as_voice)\s*\]\]\s*/gi,S5="single_session",_5={name:"television-acp-client",version:"0.0.0"},X6="agent:main:television",A5=J6(Ti);var Ua,ar,Xt,lr,Wi,On,Yr,cr,Mn,ji,Nn,Fa,qa,ur,Et,Kr,Va,uo,Jr,Gi,au,zn,hr,Ud,dr,O,Jm,Q6,eS,tS,Vh,nS,rS,iS,sS,oS,aS,lS,Vs,va,ya,Fr,cS,wa,Xm,Qm,Bh,uS,Wh,eg,tg,lu,cu,jh,ba,ng,hS;class E5 extends A5{constructor(e){super();m(this,O);m(this,Ua,"disconnected");m(this,ar,null);m(this,Xt,new Map);m(this,lr,null);m(this,Wi,null);m(this,On,null);m(this,Yr,null);m(this,cr,null);m(this,Mn,null);m(this,ji);m(this,Nn,null);m(this,Fa,0);m(this,qa,1);m(this,ur,null);m(this,Et,null);m(this,Kr,!1);m(this,Va,!1);m(this,uo,!1);m(this,Jr,null);m(this,Gi,new Set);m(this,au);m(this,zn);m(this,hr);m(this,Ud,e=>{h(this,O,eS).call(this,e)});m(this,dr,null);m(this,lu,()=>{h(this,O,ba).call(this,"ACP bridge websocket closed")});m(this,cu,()=>{h(this,O,ba).call(this,"ACP bridge websocket error")});d(this,zn,e),d(this,hr,e.sessionMode??S5),d(this,ji,e.mappedSessionStore??k5()),d(this,au,e.createSocket??(r=>new WebSocket(r)))}get status(){return s(this,Ua)}get messages(){return[...s(this,Xt).values()]}get enabled(){return s(this,zn).enabled??!1}setToken(e){s(this,zn).token=e??""}setEnabled(e){s(this,zn).enabled=e,e||(h(this,O,jh).call(this),d(this,ar,null),h(this,O,Fr).call(this,"disconnected"))}async connect(){if(this.disposed)throw new Error("ACPClient has been disposed");if(this.enabled&&this.status==="disconnected"){s(this,Wi)===null&&(d(this,ar,null),d(this,Wi,h(this,O,Q6).call(this)));try{await s(this,Wi),await h(this,O,Vh).call(this)}catch(e){throw h(this,O,ba).call(this,Em(e)),e}}}dispose(){h(this,O,jh).call(this),d(this,ar,null),h(this,O,Fr).call(this,"disposed")}async sendMessage(e){if(await this.connect(),(this.status==="running"||this.status==="cancelling")&&(await this.cancel(),await h(this,O,Jm).call(this,"ready")),(s(this,cr)===null||s(this,Nn)!==h(this,O,Wh).call(this))&&await h(this,O,Vh).call(this),this.status!=="ready")throw new Error("ACPClient is not ready to send a new message");const r=e.text.trim();if(!r)throw new Error("Cannot send an empty message");h(this,O,va).call(this,{id:h(this,O,wa).call(this,"user"),kind:"user",text:r,status:"final"}),h(this,O,Fr).call(this,"running");try{const i=await h(this,O,Bh).call(this).prompt({sessionId:h(this,O,Qm).call(this),prompt:[{type:"text",text:h(this,O,cS).call(this,r)}]});h(this,O,Vs).call(this,i.stopReason==="cancelled"?"cancelled":"final"),h(this,O,Fr).call(this,"ready")}catch(i){throw h(this,O,hS).call(this)||(h(this,O,Vs).call(this,"error"),h(this,O,Fr).call(this,"ready")),i}}async startNewSession(){var r;await this.connect(),(this.status==="running"||this.status==="cancelling")&&(await this.cancel(),await h(this,O,Jm).call(this,"ready"));const e=h(this,O,Wh).call(this);((r=s(this,Mn))==null?void 0:r.sessionIdStrategy)==="mapped"?s(this,ji).clearActualSessionId(e):d(this,Fa,s(this,Fa)+1),d(this,On,null),d(this,Yr,null),d(this,cr,null),d(this,Nn,null),h(this,O,ng).call(this)}async cancel(){this.status==="running"&&(h(this,O,Fr).call(this,"cancelling"),await h(this,O,Bh).call(this).cancel({sessionId:h(this,O,Qm).call(this)}))}setChannelContext(e){var o,a,l;if(e===null){if(s(this,Et)===null)return;d(this,Et,null),d(this,Kr,!1);return}const r={channelID:e.channelID,channelName:e.channelName};if(((o=s(this,Et))==null?void 0:o.channelID)===r.channelID&&((a=s(this,Et))==null?void 0:a.channelName)===r.channelName)return;const i=((l=s(this,Et))==null?void 0:l.channelID)??null;if(d(this,Et,r),s(this,hr)==="single_session"){(!s(this,Nn)||i!==r.channelID)&&d(this,Kr,!0);return}s(this,Nn)!==h(this,O,eg).call(this,r.channelID)&&(d(this,On,null),d(this,Yr,null),s(this,lr)&&this.status==="ready"&&h(this,O,Vh).call(this).catch(c=>{h(this,O,ba).call(this,Em(c))}))}}Ua=new WeakMap,ar=new WeakMap,Xt=new WeakMap,lr=new WeakMap,Wi=new WeakMap,On=new WeakMap,Yr=new WeakMap,cr=new WeakMap,Mn=new WeakMap,ji=new WeakMap,Nn=new WeakMap,Fa=new WeakMap,qa=new WeakMap,ur=new WeakMap,Et=new WeakMap,Kr=new WeakMap,Va=new WeakMap,uo=new WeakMap,Jr=new WeakMap,Gi=new WeakMap,au=new WeakMap,zn=new WeakMap,hr=new WeakMap,Ud=new WeakMap,dr=new WeakMap,O=new WeakSet,Jm=async function(e){if(this.status!==e){if(this.status==="disposed")throw new Error("ACPClient has been disposed");if(this.status==="disconnected")throw new Error(s(this,ar)??"ACPClient is disconnected");await new Promise((r,i)=>{const o=()=>{this.removeEventListener("status-changed",a)},a=()=>{if(this.status===e){o(),r();return}if(this.status==="disposed"){o(),i(new Error("ACPClient has been disposed"));return}this.status==="disconnected"&&(o(),i(new Error(s(this,ar)??"ACPClient is disconnected")))};this.addEventListener("status-changed",a)})}},Q6=async function(){try{const{stream:e,socket:r,metadata:i}=await I5({serverURL:s(this,zn).serverURL,token:s(this,zn).token,createSocket:s(this,au),onDisconnect:s(this,Ud)});d(this,Mn,i),d(this,dr,r),r.addEventListener("close",s(this,lu)),r.addEventListener("error",s(this,cu)),d(this,lr,new d5(o=>({connection:o,sessionUpdate:async a=>{await h(this,O,rS).call(this,a)},requestPermission:async a=>h(this,O,iS).call(this,a)}),e)),await s(this,lr).initialize({protocolVersion:YI,clientCapabilities:{},clientInfo:_5})}catch(e){throw e}},eS=function(e){h(this,O,ba).call(this,Em(e))},tS=function(e){const r=e==null?void 0:e.models;if(!(r!=null&&r.currentModelId))return;const i=r.availableModels.find(o=>o.modelId===r.currentModelId);console.info("[ACPClient] Current model:",(i==null?void 0:i.name)??r.currentModelId,`(${r.currentModelId})`)},Vh=async function(){const e=h(this,O,Wh).call(this);if(s(this,On)&&s(this,Yr)===e){await s(this,On);return}d(this,Yr,e),d(this,On,h(this,O,nS).call(this,e)),await s(this,On)},nS=async function(e){var c;const r=h(this,O,Bh).call(this);h(this,O,ng).call(this);let i,o=!1,a=null;const l={cwd:h(this,O,uS).call(this),mcpServers:[],_meta:{sessionKey:e}};try{if(d(this,uo,!0),d(this,Jr,null),((c=s(this,Mn))==null?void 0:c.sessionIdStrategy)==="mapped"){const u=s(this,ji).getActualSessionId(e);if(u)try{const p=await r.loadSession({...l,sessionId:u});if(T5(p))throw new Error("Mapped ACP session was not found");a=p,i=u,o=!0}catch{const p=await r.newSession(l);a=p,i=p.sessionId,s(this,ji).setActualSessionId(e,i),o=!1}else{const p=await r.newSession(l);a=p,i=p.sessionId,s(this,ji).setActualSessionId(e,i),o=!1}}else try{a=await r.loadSession({...l,sessionId:e}),i=e,o=s(this,Xt).size>0}catch{const u=await r.newSession(l);a=u,i=u.sessionId,o=!1}}finally{d(this,uo,!1),d(this,Jr,null),h(this,O,Vs).call(this,"final")}h(this,O,tS).call(this,a),await r.setSessionConfigOption({sessionId:i,configId:"verbose_level",value:"full"}),d(this,cr,i),d(this,Nn,e),d(this,Va,!0),o?(s(this,Gi).add(e),s(this,hr)==="single_session"&&d(this,Kr,!1)):(s(this,Gi).delete(e),d(this,Kr,s(this,hr)==="single_session")),d(this,ar,null),h(this,O,Fr).call(this,"ready")},rS=async function(e){const r=e.update;switch(r.sessionUpdate){case"user_message_chunk":r.content.type==="text"&&h(this,O,lS).call(this,r.content.text);return;case"agent_message_chunk":r.content.type==="text"&&h(this,O,sS).call(this,r.content.text);return;case"tool_call":h(this,O,oS).call(this,r);return;case"tool_call_update":h(this,O,aS).call(this,r);return;case"agent_thought_chunk":return;default:return}},iS=async function(e){return{outcome:{outcome:"cancelled"}}},sS=function(e){d(this,Jr,null);const r=R5(e);if(!r)return;if(!s(this,ur)){const o={id:h(this,O,wa).call(this,"assistant"),kind:"assistant",text:r,status:"streaming"};d(this,ur,o.id),h(this,O,va).call(this,o);return}const i=s(this,Xt).get(s(this,ur));if(!i||i.kind!=="assistant")throw new Error("Open assistant message invariant violated");h(this,O,ya).call(this,{...i,text:`${i.text}${r}`,status:"streaming"})},oS=function(e){h(this,O,Vs).call(this,"final");const r=h(this,O,Xm).call(this,e.toolCallId),i=L2("content"in e?e.content:void 0),o={id:(r==null?void 0:r.id)??h(this,O,wa).call(this,"tool"),kind:"tool_call",toolCallId:e.toolCallId,title:e.title,toolKind:e.kind??"other",status:e.status==="failed"?"failed":e.status==="completed"?"completed":"in_progress",text:(r==null?void 0:r.text)??i,locations:e.locations??(r==null?void 0:r.locations)};if(r){h(this,O,ya).call(this,o);return}h(this,O,va).call(this,o)},aS=function(e){const r=h(this,O,Xm).call(this,e.toolCallId),i=(r==null?void 0:r.text)??"",o=L2(e.content),a=o?`${i}${o}`:i,l={id:(r==null?void 0:r.id)??h(this,O,wa).call(this,"tool"),kind:"tool_call",toolCallId:e.toolCallId,title:(r==null?void 0:r.title)??e.toolCallId,toolKind:(r==null?void 0:r.toolKind)??"other",status:e.status==="failed"?"failed":e.status==="completed"?"completed":"in_progress",text:a,locations:e.locations??(r==null?void 0:r.locations)};if(r){h(this,O,ya).call(this,l);return}h(this,O,va).call(this,l)},lS=function(e){if(h(this,O,Vs).call(this,"final"),!e)return;const r=s(this,uo)?s(this,Jr):null;if(!r){const o=D2(e);if(!o)return;const a={id:h(this,O,wa).call(this,"user"),kind:"user",text:o,status:"final"};h(this,O,va).call(this,a),s(this,uo)&&d(this,Jr,a.id);return}const i=s(this,Xt).get(r);if(!i||i.kind!=="user")throw new Error("Replay user message invariant violated");h(this,O,ya).call(this,{...i,text:D2(`${i.text}${e}`)})},Vs=function(e){if(!s(this,ur))return;const r=s(this,Xt).get(s(this,ur));(r==null?void 0:r.kind)==="assistant"&&h(this,O,ya).call(this,{...r,status:e}),d(this,ur,null)},va=function(e){s(this,Xt).set(e.id,e),this.dispatchEvent(new bm("messages-changed"))},ya=function(e){s(this,Xt).set(e.id,e),this.dispatchEvent(new bm("messages-changed"))},Fr=function(e){s(this,Ua)!==e&&(d(this,Ua,e),this.dispatchEvent(new Pk("status-changed")))},cS=function(e){var u;const r=s(this,Nn);if(!r)return e;const i=s(this,Et)?s(this,hr)==="single_session"?s(this,Kr)||!s(this,Gi).has(r):!s(this,Gi).has(r):!1,o=s(this,Va)&&(s(this,Et)!==null||y5.test(e));if(!(o||i))return e;o&&d(this,Va,!1),i&&(d(this,Kr,!1),s(this,Gi).add(r));const l=["[Television channel context]","This chat session is coming from a Television client.","Using Television requires the knowledge in the `television` skill. Re-read it only if it is not already in context or you know it changed.","If the skill is not installed, it can be installed via `tv skills install <your agent skills path>`."],c=((u=s(this,Mn))==null?void 0:u.tvArgs)??[];return c.length>0&&l.push(`To reach this Television server, add these arguments to each tv command that contacts it: ${c.map(P5).join(" ")}`),s(this,Et)?(l.push("This conversation is currently attached to the channel below."),l.push(`channel_id: ${s(this,Et).channelID}`),l.push(`channel_name: ${s(this,Et).channelName??""}`),l.push("When the user asks to inspect or change Television state with the tv CLI, use this channel ID with the --channel argument.")):l.push("There is currently no active Television channel."),l.push("[/Television channel context]","",e),l.join(`
|
|
43
|
-
`)},wa=function(e){const r=`${e}-${s(this,qa)}`;return d(this,qa,s(this,qa)+1),r},Xm=function(e){for(const r of s(this,Xt).values())if((r==null?void 0:r.kind)==="tool_call"&&r.toolCallId===e)return r;return null},Qm=function(){if(!s(this,cr))throw new Error("ACP session is not ready");return s(this,cr)},Bh=function(){if(!s(this,lr))throw new Error("ACP connection is not ready");return s(this,lr)},uS=function(){var r;const e=(r=s(this,Mn))==null?void 0:r.sessionCwd;if(!e)throw new Error("ACP bridge session cwd is not ready");return e},Wh=function(){var r;if(s(this,hr)==="single_session")return h(this,O,tg).call(this,`${X6}-${(s(this,zn).clientGUID??"default-client").toLowerCase()}`);const e=(r=s(this,Et))==null?void 0:r.channelID;if(!e)throw new Error("Channel context is required for per-channel session mode");return h(this,O,eg).call(this,e)},eg=function(e){return h(this,O,tg).call(this,C5(s(this,hr),e,s(this,zn).clientGUID??"default-client"))},tg=function(e){var r;return((r=s(this,Mn))==null?void 0:r.sessionIdStrategy)==="deterministic"&&s(this,Fa)>0?`${e}:epoch-${s(this,Fa)}`:e},lu=new WeakMap,cu=new WeakMap,jh=function(){d(this,lr,null),d(this,Wi,null),d(this,On,null),d(this,Yr,null),d(this,cr,null),d(this,Nn,null),d(this,Mn,null),s(this,dr)&&(s(this,dr).removeEventListener("close",s(this,lu)),s(this,dr).removeEventListener("error",s(this,cu)),s(this,dr).close(),d(this,dr,null))},ba=function(e){const r=s(this,lr)!==null||s(this,Wi)!==null||s(this,On)!==null||s(this,Yr)!==null||s(this,cr)!==null||s(this,Nn)!==null||s(this,Mn)!==null||s(this,dr)!==null;this.disposed||this.status==="disconnected"&&!r||(h(this,O,Vs).call(this,"error"),h(this,O,jh).call(this),d(this,ar,e??null),h(this,O,Fr).call(this,"disconnected"))},ng=function(){const e=s(this,Xt).size>0;d(this,ur,null),d(this,Jr,null),d(this,qa,1),s(this,Xt).clear(),e&&this.dispatchEvent(new bm("messages-changed"))},hS=function(){return this.status==="disconnected"};function k5(){const n=new Map;return{getActualSessionId(t){return n.get(t)??null},setActualSessionId(t,e){n.set(t,e)},clearActualSessionId(t){n.delete(t)}}}function T5(n){return n==null?!0:typeof n=="object"&&Object.keys(n).length===0}function C5(n,t,e){return n==="single_session"?`${X6}-${e.toLowerCase()}`:`agent:main:television-${e.toLowerCase()}-${t.toLowerCase()}`}function dS(n){return n.replace(/^(?:\s*\n)+/,"")}function D2(n){let t=n;return t=t.replace(m5,""),t=t.replace(g5,""),t=t.replace(v5,""),t=dS(t),t}function R5(n){let t=n;return t=t.replace(b5,""),t=dS(t),t}function L2(n){return!n||n.length===0?"":n.flatMap(t=>t.type==="content"&&t.content.type==="text"?[t.content.text]:[]).join("")}async function I5(n){const t=n.createSocket(L5(n.serverURL,n.token));let e=!1,r,i;const o=new Promise((u,p)=>{r=u,i=p}),a=new ReadableStream({start(u){let p=!1;const f=()=>{t.send(JSON.stringify({type:"acp-bridge-connect"}))},y=_=>{const x=D5(_);if(!x)return;let Z;try{Z=JSON.parse(x)}catch(L){const z=L instanceof Error?L:new Error(String(L));i(z),u.error(z);return}switch(Z.type){case"acp-bridge-status":if(Z.status==="ready"){let L;try{L=$5(Z)}catch(z){const P=z instanceof Error?z:new Error(String(z));e||i(P),u.error(P);return}e||(e=!0,r(L));return}if(Z.status==="error"||Z.status==="exited"){const L=new Error(Z.error??`ACP bridge ${Z.status}`);e||i(L),u.error(L)}return;case"acp-bridge-message":u.enqueue(Z.message);return}},v=()=>{var x;if(p)return;p=!0;const _=new Error("ACP bridge websocket closed");e||i(_),(x=n.onDisconnect)==null||x.call(n,_),u.close()},S=()=>{var x;if(p)return;p=!0;const _=new Error("ACP bridge websocket error");e||i(_),(x=n.onDisconnect)==null||x.call(n,_),u.error(_)};t.addEventListener("open",f),t.addEventListener("message",y),t.addEventListener("close",v),t.addEventListener("error",S)}}),l=new WritableStream({async write(u){await o,t.send(JSON.stringify({type:"acp-bridge-message",message:u}))},close(){t.close()},abort(){t.close()}}),c=await o;return{stream:{readable:a,writable:l},socket:t,metadata:c}}function $5(n){const{agent:t,sessionIdStrategy:e,sessionCwd:r,tvArgs:i}=n;if((t==="openclaw"||t==="hermes")&&(e==="deterministic"||e==="mapped")&&typeof r=="string"&&r.length>0&&x5(i))return{agent:t,sessionIdStrategy:e,sessionCwd:r,tvArgs:i};throw new Error("ACP bridge ready status missing bootstrap metadata")}function x5(n){return Array.isArray(n)&&n.every(t=>typeof t=="string")}function P5(n){return w5.test(n)?n:`'${n.replace(/'/g,"'\\''")}'`}function D5(n){if(typeof n=="string")return n;if(n instanceof Uint8Array)return new TextDecoder().decode(n);if(typeof Buffer<"u"&&n instanceof Buffer)return n.toString("utf8");if(typeof n=="object"&&n!==null&&"data"in n){const t=n.data;if(typeof t=="string")return t;if(t instanceof Uint8Array)return new TextDecoder().decode(t);if(Array.isArray(t))return Buffer.concat(t).toString("utf8")}return null}function L5(n,t){const e=new URL(n);return e.protocol=e.protocol==="https:"?"wss:":"ws:",e.pathname="/acp",e.search="",e.searchParams.set("token",t),e.hash="",e.toString()}function Em(n){return n instanceof Error?n.message:String(n)}const O2="television.acpClientGUID",M2="television.acpMappedSessions",N2=1;var Ba;class O5{constructor(){m(this,Ba,new Map)}getActualSessionId(t){return s(this,Ba).get(t)??null}setActualSessionId(t,e){s(this,Ba).set(t,e)}clearActualSessionId(t){s(this,Ba).delete(t)}}Ba=new WeakMap;var Wa,uu,sn,Gh,Yh,rg;class M5{constructor(t,e){m(this,sn);m(this,Wa);m(this,uu);d(this,Wa,t),d(this,uu,e)}getActualSessionId(t){const e=h(this,sn,Yh).call(this)[h(this,sn,Gh).call(this,t)];return typeof e=="string"&&e.length>0?e:null}setActualSessionId(t,e){const r=h(this,sn,Yh).call(this);r[h(this,sn,Gh).call(this,t)]=e,h(this,sn,rg).call(this,r)}clearActualSessionId(t){const e=h(this,sn,Yh).call(this);delete e[h(this,sn,Gh).call(this,t)],h(this,sn,rg).call(this,e)}}Wa=new WeakMap,uu=new WeakMap,sn=new WeakSet,Gh=function(t){return JSON.stringify([s(this,uu),t])},Yh=function(){const t=s(this,Wa).getItem(M2);if(!t)return{};let e;try{e=JSON.parse(t)}catch{return{}}if(typeof e!="object"||e===null||Array.isArray(e))return{};const r=e;return r.version!==N2?{}:typeof r.entries!="object"||r.entries===null||Array.isArray(r.entries)?{}:Object.fromEntries(Object.entries(r.entries).filter(i=>typeof i[1]=="string"))},rg=function(t){const e={version:N2,entries:t};s(this,Wa).setItem(M2,JSON.stringify(e))};function pS(){return typeof window>"u"?null:window.localStorage}function N5(n){const t=n.getItem(O2);if(t)return t;const e=U1().toLowerCase();return n.setItem(O2,e),e}const z2=4401,z5=401,Ph=1e3,H5=3e4;class Kh extends Error{constructor(t="Authentication required"){super(t),this.name="AuthError"}}class Z5 extends Ti{constructor(e){var a,l;super();I(this,"url");I(this,"name");I(this,"telemetryMeta");I(this,"status","unauthorized");I(this,"channels",new Map);I(this,"client");I(this,"acpClient");I(this,"_token");I(this,"attempting",!1);I(this,"nextRetryAt",null);I(this,"hasEverConnected",!1);I(this,"browserDemoMode",!1);I(this,"hasAuthRejected",!1);I(this,"hasAuthTokenRejected",!1);I(this,"bootState","pending");I(this,"serverVersion",null);I(this,"updateState",null);I(this,"decideBoot");I(this,"navigationPending");I(this,"createSocket");I(this,"createClient");I(this,"socket",null);I(this,"connectAttempt",0);I(this,"autoReconnect",!1);I(this,"retryTimer",null);I(this,"retryDelay",Ph);I(this,"visibilityEventTarget");I(this,"networkEventTarget");I(this,"onVisibilityChange");I(this,"onNetworkOnline");I(this,"telemetryActivityAgent");this.url=Es(e.url),this.name=e.name,this.decideBoot=e.decideBoot??null,this.navigationPending=e.navigationPending??(()=>!1),this._token=e.token??null,this.telemetryMeta=e.telemetryMeta??null,this.createSocket=e.createSocket??(c=>new WebSocket(c)),this.createClient=e.createClient??((c,u,p)=>new sk(c,{token:u??void 0,onUnauthorized:()=>this.handleAuthRejected(),...p?{telemetryMeta:p}:{}})),this.client=this.createClient(this.url,this._token,this.telemetryMeta);const r=e.mappedSessionStore??(e.acpStorage?new M5(e.acpStorage,this.url):new O5);this.acpClient=new E5({serverURL:this.url,token:this._token??"",...e.createACPSocket?{createSocket:e.createACPSocket}:e.createSocket?{createSocket:e.createSocket}:{},...e.clientGUID?{clientGUID:e.clientGUID}:{},mappedSessionStore:r}),this.visibilityEventTarget=e.visibilityEventTarget!==void 0?e.visibilityEventTarget:typeof document<"u"?document:null,this.networkEventTarget=e.networkEventTarget!==void 0?e.networkEventTarget:typeof window<"u"?window:null,this.onVisibilityChange=()=>{this.isPageVisible()&&this.kickReconnect()},this.onNetworkOnline=()=>{this.kickReconnect()},(a=this.visibilityEventTarget)==null||a.addEventListener("visibilitychange",this.onVisibilityChange),(l=this.networkEventTarget)==null||l.addEventListener("online",this.onNetworkOnline);const i=e.telemetryDocumentTarget!==void 0?e.telemetryDocumentTarget:typeof document<"u"?document:null,o=e.telemetryWindowTarget!==void 0?e.telemetryWindowTarget:typeof window<"u"?window:null;this.telemetryActivityAgent=this.telemetryMeta&&i&&o?WI({meta:this.telemetryMeta,documentTarget:i,windowTarget:o,send:c=>this.sendTelemetryActivity(c)}):null}get token(){return this._token}clearToken(){this._token=null,this.acpClient.setToken(null),this.client=this.createClient(this.url,null,this.telemetryMeta)}async connect(e){this._token=e,this.hasAuthRejected=!1,this.hasAuthTokenRejected=!1,this.acpClient.setToken(e),this.cancelRetryTimer(),this.retryDelay=Ph,this.autoReconnect=!0,await this.attempt()}dispose(){var e,r,i,o;this.autoReconnect=!1,this.connectAttempt+=1,this.cancelRetryTimer(),(e=this.socket)==null||e.close(),this.socket=null,this.setStatus("unauthorized"),(r=this.visibilityEventTarget)==null||r.removeEventListener("visibilitychange",this.onVisibilityChange),(i=this.networkEventTarget)==null||i.removeEventListener("online",this.onNetworkOnline),(o=this.telemetryActivityAgent)==null||o.stop(),this.acpClient.dispose()}getViewURL(e){const r=Td(e,this.renderOptions());return wi()?new URL(r.viewURL,this.url).toString():r.renderer==="proxy-iframe"?new URL(r.viewURL,this.url).toString():r.viewURL}async readDemoMode(){try{return await this.client.demoMode()}catch{return null}}renderOptions(){return{electron:wi(),browserDemo:this.browserDemoMode}}getContentURL(e){const r=Td(e,this.renderOptions()).contentURL;return r===null?null:new URL(r,this.url).toString()}async createChannel(e){const{channel:r}=await this.client.channels.create({name:e});return this.channels.set(r.id,structuredClone(r)),r}applyServerEvent(e){switch(e.type){case"channel-created":this.channels.set(e.channel.id,structuredClone(e.channel)),this.dispatchEvent(new Sc("channels-changed"));break;case"channel-updated":this.channels.set(e.channel.id,structuredClone(e.channel)),this.dispatchEvent(new Sc("channels-changed"));break;case"channel-removed":this.channels.delete(e.channelID),this.dispatchEvent(new Sc("channels-changed"));break;case"artifact-created":{const r=this.channels.get(e.channelID);r&&!FE(r).includes(e.artifact.id)&&(r.layout=[...r.layout,{artifactIds:[e.artifact.id],geometry:{...g8},size:{...v8}}]);break}case"artifact-removed":{const r=this.channels.get(e.channelID);r&&(r.layout=zm(r.layout,e.artifactID));break}case"artifact-updated":case"artifact-content-changed":case"channel-changed":case"pinned-channels-changed":case"theme-changed":case"appearance-changed":case"artifact-focus":break;default:return U5(e,"server event")}}async attempt(){var i;this.attempting=!0,this.nextRetryAt=null,this.connectAttempt+=1,this.bootState="pending";const e=this.connectAttempt;(i=this.socket)==null||i.close(),this.client=this.createClient(this.url,this._token,this.telemetryMeta),this.setStatus("disconnected"),this.dispatchEvent(new Bt("change"));const r=this.createSocket(F5(this.url,this._token,this.telemetryMeta));return this.socket=r,await new Promise((o,a)=>{let l=!1;const c=()=>{var f;l||this.connectAttempt!==e||(l=!0,this.retryDelay=Ph,this.hasEverConnected=!0,this.setStatus("connected"),(f=this.telemetryActivityAgent)==null||f.start(),o())},u=f=>{l||this.connectAttempt!==e||(l=!0,a(f))},p=async()=>{const f=this.hasEverConnected;try{const[{channels:y},v,S]=await Promise.all([this.client.channels.list(),this.client.display.get(),f?null:this.readDemoMode()]);f||(this.browserDemoMode=(S==null?void 0:S.browserExternalPages)===!0),this.channels=new Map(y.map(_=>[_.id,structuredClone(_)])),this.acpClient.setEnabled(v.acpEnabled),this.dispatchEvent(new Bt("change")),f&&this.dispatchEvent(new Sc("channels-changed")),this.dispatchEvent(new Fh("server-event",{serverURL:this.url,event:{type:"channel-changed",channelID:v.focusedChannelId}})),this.dispatchEvent(new Fh("server-event",{serverURL:this.url,event:{type:"pinned-channels-changed",pinnedChannelIds:[...v.pinnedChannelIds]}})),c(),f&&this.connectAttempt===e&&this.dispatchEvent(new R8("server-reconnected",{serverURL:this.url}))}catch(y){if(G5(y)){u(new Kh);return}u(y instanceof Error?y:new Error(String(y)))}};r.addEventListener("open",()=>{this.decideBoot===null&&(this.bootState="booted",this.navigationPending()||p())}),r.addEventListener("message",f=>{const y=j5(f);if(!y)return;if(y.type==="server-status"){const S=y;this.serverVersion=S.version,this.updateState=S.update??null;let _=!1;this.decideBoot!==null&&this.bootState==="pending"&&this.connectAttempt===e&&(this.decideBoot(S)==="boot"?(this.bootState="booted",_=!0):(this.bootState="halted",this.attempting=!1)),this.dispatchEvent(new I8("server-status",{serverURL:this.url,message:S})),_?this.navigationPending()||p():this.bootState==="halted"&&!this.navigationPending()&&this.dispatchEvent(new Bt("change"));return}if(!W5(y.type))return;const v=y;this.applyServerEvent(v),this.dispatchEvent(new Fh("server-event",{serverURL:this.url,event:v}))}),r.addEventListener("close",f=>{if(this.connectAttempt!==e)return;this.socket=null;const y=q5(f);if(!l){u(y===z2?new Kh:new Error("Connection closed before initialization"));return}if(y===z2){this.handleAuthRejected();return}this.handleTransportFailure(new Error("Connection closed"))}),r.addEventListener("error",()=>{if(this.connectAttempt===e){if(l){this.handleTransportFailure(new Error("WebSocket error"));return}u(new Error("WebSocket connection failed"))}})}).then(()=>{this.attempting=!1},o=>{throw this.attempting=!1,this.handleAttemptFailure(o),o})}handleAuthRejected(){this.hasAuthRejected=!0,this.hasAuthTokenRejected=this._token!==null,this.autoReconnect=!1,this.cancelRetryTimer(),this.setStatus("unauthorized")}handleAttemptFailure(e){if(e instanceof Kh){this.handleAuthRejected();return}this.autoReconnect&&this.scheduleRetry()}handleTransportFailure(e){this.autoReconnect&&(this.setStatus("disconnected"),this.scheduleRetry())}scheduleRetry(){this.cancelRetryTimer(),this.connectAttempt+=1;const e=this.retryDelay;this.retryDelay=Math.min(this.retryDelay*2,H5),this.nextRetryAt=Date.now()+e,this.retryTimer=setTimeout(()=>{this.retryTimer=null,this.attempt().catch(()=>{})},e),this.dispatchEvent(new Bt("change"))}cancelRetryTimer(){this.retryTimer!==null&&(clearTimeout(this.retryTimer),this.retryTimer=null),this.nextRetryAt!==null&&(this.nextRetryAt=null,this.dispatchEvent(new Bt("change")))}kickReconnect(){this.autoReconnect&&this.status!=="connected"&&(this.attempting||(this.cancelRetryTimer(),this.retryDelay=Ph,this.attempt().catch(()=>{})))}sendTelemetryActivity(e){var r;this.status==="connected"&&((r=this.socket)==null||r.send(JSON.stringify(e)))}sendTelemetrySignal(e,r){var o;if(!this.telemetryMeta||this.status!=="connected"&&this.bootState!=="halted")return;const i={type:UE,clientId:this.telemetryMeta.clientId,event:e,properties:r};(o=this.socket)==null||o.send(JSON.stringify(i))}setStatus(e){this.status!==e&&(this.status=e,this.dispatchEvent(new Bt("change")))}isPageVisible(){return this.visibilityEventTarget===null?!0:this.visibilityEventTarget.visibilityState==="visible"}}function U5(n,t){throw new Error(`Unexpected ${t}: ${JSON.stringify(n)}`)}function F5(n,t,e=null){const r=new URL(n);if(r.protocol=r.protocol==="https:"?"wss:":"ws:",r.pathname="/events",r.search="",t&&r.searchParams.set("token",t),e)for(const[i,o]of BI(e))r.searchParams.set(i,o);return r.hash="",r.toString()}function q5(n){return typeof n=="object"&&n!==null&&"code"in n&&typeof n.code=="number"?n.code:null}const V5={"artifact-created":!0,"artifact-updated":!0,"artifact-content-changed":!0,"artifact-removed":!0,"channel-created":!0,"channel-updated":!0,"channel-removed":!0,"channel-changed":!0,"pinned-channels-changed":!0,"theme-changed":!0,"appearance-changed":!0,"artifact-focus":!0},B5=new Set(Object.keys(V5));function W5(n){return B5.has(n)}function j5(n){const t=typeof n=="string"?n:typeof n=="object"&&n!==null&&"data"in n&&typeof n.data=="string"?n.data:"";if(!t)return null;let e;try{e=JSON.parse(t)}catch{return null}return typeof e!="object"||e===null||!("type"in e)||typeof e.type!="string"?null:e}function G5(n){return n instanceof jl&&n.status===z5}const Y5="Local";var mn,Hn,$r,ig,sg,fS,hu,du,pu,fu,mu;class K5 extends Ti{constructor(e){super();m(this,$r);I(this,"connection");I(this,"clientGUID");I(this,"acpStorage");I(this,"connectError",null);m(this,mn);m(this,Hn,!1);m(this,hu,()=>{s(this,Hn)||(h(this,$r,fS).call(this),this.dispatchEvent(new Bt("change")))});m(this,du,e=>{s(this,Hn)||this.dispatchEvent(new Fh("server-event",{serverURL:e.serverURL,event:e.event}))});m(this,pu,()=>{s(this,Hn)||this.dispatchEvent(new Sc("channels-changed"))});m(this,fu,e=>{s(this,Hn)||this.dispatchEvent(new R8("server-reconnected",{serverURL:e.serverURL}))});m(this,mu,e=>{s(this,Hn)||this.dispatchEvent(new I8("server-status",{serverURL:e.serverURL,message:e.message}))});d(this,mn,e.localStore),this.acpStorage=e.acpStorage===void 0?pS():e.acpStorage,this.clientGUID=e.clientGUID??(this.acpStorage?N5(this.acpStorage):U1().toLowerCase());const r=Es(e.serverURL);e.launchToken!==void 0&&e.launchToken!==null&&s(this,mn).set(s2(s(this,mn).get(),r,e.launchToken));const i=e.launchToken??i2(s(this,mn).get(),r),o=e.createSocket??(l=>new WebSocket(l)),a=e.createConnection??(l=>new Z5(l));this.connection=a({url:r,name:e.connectionName??Y5,token:i,createSocket:o,clientGUID:this.clientGUID,acpStorage:this.acpStorage,telemetryMeta:e.telemetryMeta??null,decideBoot:e.decideBoot,navigationPending:e.navigationPending}),this.connection.addEventListener("change",s(this,hu)),this.connection.addEventListener("server-event",s(this,du)),this.connection.addEventListener("channels-changed",s(this,pu)),this.connection.addEventListener("server-reconnected",s(this,fu)),this.connection.addEventListener("server-status",s(this,mu))}get storedAuthToken(){return i2(s(this,mn).get(),this.connection.url)}async connect(){await h(this,$r,ig).call(this,this.connection.token)}async authenticate(e){s(this,mn).set(s2(s(this,mn).get(),this.connection.url,e)),await h(this,$r,ig).call(this,e)}dispose(){s(this,Hn)||(d(this,Hn,!0),this.connection.removeEventListener("change",s(this,hu)),this.connection.removeEventListener("server-event",s(this,du)),this.connection.removeEventListener("channels-changed",s(this,pu)),this.connection.removeEventListener("server-reconnected",s(this,fu)),this.connection.removeEventListener("server-status",s(this,mu)),this.connection.dispose())}}mn=new WeakMap,Hn=new WeakMap,$r=new WeakSet,ig=async function(e){if(!s(this,Hn)){h(this,$r,sg).call(this,null);try{await this.connection.connect(e)}catch(r){h(this,$r,sg).call(this,r instanceof Kh?null:r instanceof Error?r.message:String(r))}}},sg=function(e){this.connectError!==e&&(this.connectError=e,this.dispatchEvent(new Bt("change")))},fS=function(){if(this.connection.status!=="unauthorized"||!this.connection.hasAuthRejected)return;const e=s(this,mn).get(),r=Mk(e,this.connection.url);r!==e&&s(this,mn).set(r),this.connection.token!==null&&this.connection.clearToken()},hu=new WeakMap,du=new WeakMap,pu=new WeakMap,fu=new WeakMap,mu=new WeakMap;const og="tv-nav:",zl="tv-reload",H2=100,J5=1e3,X5=60,Q5=60,eD=24,tD=30,nD=tD*eD*Q5*X5*J5;function bi(n){try{const t=new URL(n,window.location.href),e=t.searchParams.has(zl);return t.searchParams.delete(zl),t.origin===window.location.origin?`${t.pathname}${t.search}${t.hash}`:e?t.toString():n}catch{return n}}var gu,ja,$e,Ce,ho,Xe,mS,Mi,gS,ag,lg;class rD extends Ti{constructor(e,r){super();m(this,Xe);m(this,gu);m(this,ja);m(this,$e,[]);m(this,Ce,-1);m(this,ho,0);d(this,gu,e),d(this,ja,bi(r)),h(this,Xe,mS).call(this)}get currentURL(){var e;return s(this,Ce)===-1?null:((e=s(this,$e)[s(this,Ce)])==null?void 0:e.url)??null}get canGoBack(){return s(this,Ce)>-1}get canGoForward(){return s(this,Ce)<s(this,$e).length-1}get entries(){return s(this,$e).map(e=>({...e}))}get cursor(){return s(this,Ce)}navigate(e){const r=bi(e);if(r===s(this,ja)){if(s(this,Ce)===-1)return;d(this,Ce,-1),h(this,Xe,Mi).call(this);return}s(this,Ce)<s(this,$e).length-1&&d(this,$e,s(this,$e).slice(0,s(this,Ce)+1)),s(this,$e).push({url:r}),d(this,Ce,s(this,$e).length-1),h(this,Xe,ag).call(this),h(this,Xe,Mi).call(this)}replace(e){var i;if(s(this,Ce)===-1){this.navigate(e);return}const r=bi(e);if(r===s(this,ja)){d(this,$e,s(this,$e).filter((o,a)=>a!==s(this,Ce))),d(this,Ce,-1),h(this,Xe,Mi).call(this);return}((i=s(this,$e)[s(this,Ce)])==null?void 0:i.url)!==r&&(d(this,$e,s(this,$e).map((o,a)=>a===s(this,Ce)?{url:r}:o)),h(this,Xe,Mi).call(this))}back(){s(this,Ce)!==-1&&(d(this,Ce,s(this,Ce)-1),h(this,Xe,Mi).call(this))}forward(){this.canGoForward&&(d(this,Ce,s(this,Ce)+1),h(this,Xe,Mi).call(this))}reset(){s(this,Ce)===-1&&s(this,$e).length===0||(d(this,$e,[]),d(this,Ce,-1),h(this,Xe,Mi).call(this))}}gu=new WeakMap,ja=new WeakMap,$e=new WeakMap,Ce=new WeakMap,ho=new WeakMap,Xe=new WeakSet,mS=function(){const e=localStorage.getItem(s(this,Xe,lg));if(e!==null)try{const r=JSON.parse(e);if(!vS(r))return;d(this,$e,r.entries.map(i=>({url:i.url}))),d(this,Ce,r.cursor),d(this,ho,r.lastWritten),h(this,Xe,ag).call(this)}catch{d(this,$e,[]),d(this,Ce,-1),d(this,ho,0)}},Mi=function(){d(this,ho,Date.now());try{localStorage.setItem(s(this,Xe,lg),JSON.stringify(h(this,Xe,gS).call(this)))}catch(e){if(!oD(e))throw e}this.dispatchEvent(new Bt("change"))},gS=function(){return{v:1,entries:s(this,$e).map(e=>({...e})),cursor:s(this,Ce),lastWritten:s(this,ho)}},ag=function(){if(s(this,$e).length<=H2)return;const e=s(this,$e).length-H2;d(this,$e,s(this,$e).slice(e)),d(this,Ce,Math.max(-1,s(this,Ce)-e))},lg=function(){return iD(s(this,gu))};function iD(n){return`${og}${n}`}function sD(n){const t=Date.now()-nD,e=[];for(let r=0;r<localStorage.length;r+=1){const i=localStorage.key(r);if(!(i!=null&&i.startsWith(og)))continue;const o=i.slice(og.length),a=localStorage.getItem(i);if(a===null)continue;let l;try{l=JSON.parse(a)}catch{e.push(i);continue}if(!vS(l)){e.push(i);continue}!n.has(o)&&l.lastWritten<t&&e.push(i)}for(const r of e)localStorage.removeItem(r)}function oD(n){return n instanceof DOMException&&n.name==="QuotaExceededError"}function vS(n){if(typeof n!="object"||n===null)return!1;const t=n;if(t.v!==1||!Array.isArray(t.entries))return!1;const e=t.cursor;return typeof e!="number"||!Number.isInteger(e)||typeof t.lastWritten!="number"||!Number.isFinite(t.lastWritten)||e<-1||e>=t.entries.length?!1:t.entries.every(r=>typeof r=="object"&&r!==null&&typeof r.url=="string")}const km="tv-channel-sidebar-collapsed";var po;class aD{constructor(t){m(this,po);d(this,po,t)}read(){return s(this,po).getItem(km)==="true"}setCollapsed(t){try{t?s(this,po).setItem(km,"true"):s(this,po).removeItem(km)}catch{}}}po=new WeakMap;const Tm="tv-channel-sidebar-width",cg=160,ug=350,Dh=260,lD=/^-?\d+$/;var fo;class cD{constructor(t){m(this,fo);d(this,fo,t)}read(){const t=s(this,fo).getItem(Tm);if(t===null||!lD.test(t))return null;const e=BigInt(t);return e<BigInt(cg)?cg:e>BigInt(ug)?ug:Number(e)}commit(t){const e=yS(Math.round(t));try{s(this,fo).setItem(Tm,String(e))}catch{}return e}clear(){try{s(this,fo).removeItem(Tm)}catch{}}}fo=new WeakMap;function yS(n){return Math.min(Math.max(n,cg),ug)}const uD="1.4.14";function J1(n=uD){return n!==void 0&&n.length>0?n:"0.0.0"}function X1(){let n=!1;return{get pending(){return n},begin(t){n||(n=!0,t())}}}const hg="tv-reload-attempted";function hD(n){return n.originMatch?n.marker!==null&&n.bundleVersion===n.serverVersion?{action:"signal-autoreloaded",fromVersion:n.marker.fromVersion,toVersion:n.bundleVersion}:lk(n.bundleVersion,n.serverVersion)?n.marker!==null&&n.marker.serverVersion===n.serverVersion?{action:"none"}:{action:"reload",marker:{serverVersion:n.serverVersion,fromVersion:n.bundleVersion}}:{action:"none"}:{action:"none"}}function dD(n){const t=n.getItem(hg);if(t===null)return null;let e;try{e=JSON.parse(t)}catch{return null}if(!e||typeof e!="object")return null;const r=e;return typeof r.serverVersion!="string"||typeof r.fromVersion!="string"?null:{serverVersion:r.serverVersion,fromVersion:r.fromVersion}}function pD(n){const t=n.storage!==void 0?n.storage:typeof sessionStorage<"u"?sessionStorage:null,e=n.reload??(()=>location.reload()),r=n.navigationLatch??X1(),i=n.bundleVersion??J1();if(t===null)return{dispose(){}};let o=null;const a=()=>{if(o===null)return;const u=n.owner.connection;if(u.url!==n.primaryServerURL||u.status!=="connected")return;const p=o;o=null,u.sendTelemetrySignal("client_autoreloaded",{from_version:p.fromVersion,to_version:p.toVersion})},l=u=>{if(r.pending)return;const p=hD({bundleVersion:i,serverVersion:u.message.version,originMatch:u.serverURL===n.primaryServerURL,marker:dD(t)});switch(p.action){case"reload":t.setItem(hg,JSON.stringify(p.marker)),r.begin(e);return;case"signal-autoreloaded":t.removeItem(hg),o={fromVersion:p.fromVersion,toVersion:p.toVersion},a();return;case"none":return}},c=()=>{a()};return n.owner.addEventListener("server-status",l),n.owner.addEventListener("change",c),{dispose(){n.owner.removeEventListener("server-status",l),n.owner.removeEventListener("change",c)}}}function fD(n){const t=wi(n.search),e=m6(n.search),r=e!==null&&Op(e)?e:null;return{electron:t,shellVersion:r}}function mD(n){return!n.electron||n.requiredDesktopVersion===null||!Op(n.requiredDesktopVersion)?!1:n.shellVersion===null?!0:n.shellVersion===bd?!1:Z1(n.requiredDesktopVersion,n.shellVersion)}const gD=`# Desktop app update required
|
|
43
|
+
`)},wa=function(e){const r=`${e}-${s(this,qa)}`;return d(this,qa,s(this,qa)+1),r},Xm=function(e){for(const r of s(this,Xt).values())if((r==null?void 0:r.kind)==="tool_call"&&r.toolCallId===e)return r;return null},Qm=function(){if(!s(this,cr))throw new Error("ACP session is not ready");return s(this,cr)},Bh=function(){if(!s(this,lr))throw new Error("ACP connection is not ready");return s(this,lr)},uS=function(){var r;const e=(r=s(this,Mn))==null?void 0:r.sessionCwd;if(!e)throw new Error("ACP bridge session cwd is not ready");return e},Wh=function(){var r;if(s(this,hr)==="single_session")return h(this,O,tg).call(this,`${X6}-${(s(this,zn).clientGUID??"default-client").toLowerCase()}`);const e=(r=s(this,Et))==null?void 0:r.channelID;if(!e)throw new Error("Channel context is required for per-channel session mode");return h(this,O,eg).call(this,e)},eg=function(e){return h(this,O,tg).call(this,C5(s(this,hr),e,s(this,zn).clientGUID??"default-client"))},tg=function(e){var r;return((r=s(this,Mn))==null?void 0:r.sessionIdStrategy)==="deterministic"&&s(this,Fa)>0?`${e}:epoch-${s(this,Fa)}`:e},lu=new WeakMap,cu=new WeakMap,jh=function(){d(this,lr,null),d(this,Wi,null),d(this,On,null),d(this,Yr,null),d(this,cr,null),d(this,Nn,null),d(this,Mn,null),s(this,dr)&&(s(this,dr).removeEventListener("close",s(this,lu)),s(this,dr).removeEventListener("error",s(this,cu)),s(this,dr).close(),d(this,dr,null))},ba=function(e){const r=s(this,lr)!==null||s(this,Wi)!==null||s(this,On)!==null||s(this,Yr)!==null||s(this,cr)!==null||s(this,Nn)!==null||s(this,Mn)!==null||s(this,dr)!==null;this.disposed||this.status==="disconnected"&&!r||(h(this,O,Vs).call(this,"error"),h(this,O,jh).call(this),d(this,ar,e??null),h(this,O,Fr).call(this,"disconnected"))},ng=function(){const e=s(this,Xt).size>0;d(this,ur,null),d(this,Jr,null),d(this,qa,1),s(this,Xt).clear(),e&&this.dispatchEvent(new bm("messages-changed"))},hS=function(){return this.status==="disconnected"};function k5(){const n=new Map;return{getActualSessionId(t){return n.get(t)??null},setActualSessionId(t,e){n.set(t,e)},clearActualSessionId(t){n.delete(t)}}}function T5(n){return n==null?!0:typeof n=="object"&&Object.keys(n).length===0}function C5(n,t,e){return n==="single_session"?`${X6}-${e.toLowerCase()}`:`agent:main:television-${e.toLowerCase()}-${t.toLowerCase()}`}function dS(n){return n.replace(/^(?:\s*\n)+/,"")}function D2(n){let t=n;return t=t.replace(m5,""),t=t.replace(g5,""),t=t.replace(v5,""),t=dS(t),t}function R5(n){let t=n;return t=t.replace(b5,""),t=dS(t),t}function L2(n){return!n||n.length===0?"":n.flatMap(t=>t.type==="content"&&t.content.type==="text"?[t.content.text]:[]).join("")}async function I5(n){const t=n.createSocket(L5(n.serverURL,n.token));let e=!1,r,i;const o=new Promise((u,p)=>{r=u,i=p}),a=new ReadableStream({start(u){let p=!1;const f=()=>{t.send(JSON.stringify({type:"acp-bridge-connect"}))},y=_=>{const x=D5(_);if(!x)return;let Z;try{Z=JSON.parse(x)}catch(L){const z=L instanceof Error?L:new Error(String(L));i(z),u.error(z);return}switch(Z.type){case"acp-bridge-status":if(Z.status==="ready"){let L;try{L=$5(Z)}catch(z){const P=z instanceof Error?z:new Error(String(z));e||i(P),u.error(P);return}e||(e=!0,r(L));return}if(Z.status==="error"||Z.status==="exited"){const L=new Error(Z.error??`ACP bridge ${Z.status}`);e||i(L),u.error(L)}return;case"acp-bridge-message":u.enqueue(Z.message);return}},v=()=>{var x;if(p)return;p=!0;const _=new Error("ACP bridge websocket closed");e||i(_),(x=n.onDisconnect)==null||x.call(n,_),u.close()},S=()=>{var x;if(p)return;p=!0;const _=new Error("ACP bridge websocket error");e||i(_),(x=n.onDisconnect)==null||x.call(n,_),u.error(_)};t.addEventListener("open",f),t.addEventListener("message",y),t.addEventListener("close",v),t.addEventListener("error",S)}}),l=new WritableStream({async write(u){await o,t.send(JSON.stringify({type:"acp-bridge-message",message:u}))},close(){t.close()},abort(){t.close()}}),c=await o;return{stream:{readable:a,writable:l},socket:t,metadata:c}}function $5(n){const{agent:t,sessionIdStrategy:e,sessionCwd:r,tvArgs:i}=n;if((t==="openclaw"||t==="hermes")&&(e==="deterministic"||e==="mapped")&&typeof r=="string"&&r.length>0&&x5(i))return{agent:t,sessionIdStrategy:e,sessionCwd:r,tvArgs:i};throw new Error("ACP bridge ready status missing bootstrap metadata")}function x5(n){return Array.isArray(n)&&n.every(t=>typeof t=="string")}function P5(n){return w5.test(n)?n:`'${n.replace(/'/g,"'\\''")}'`}function D5(n){if(typeof n=="string")return n;if(n instanceof Uint8Array)return new TextDecoder().decode(n);if(typeof Buffer<"u"&&n instanceof Buffer)return n.toString("utf8");if(typeof n=="object"&&n!==null&&"data"in n){const t=n.data;if(typeof t=="string")return t;if(t instanceof Uint8Array)return new TextDecoder().decode(t);if(Array.isArray(t))return Buffer.concat(t).toString("utf8")}return null}function L5(n,t){const e=new URL(n);return e.protocol=e.protocol==="https:"?"wss:":"ws:",e.pathname="/acp",e.search="",e.searchParams.set("token",t),e.hash="",e.toString()}function Em(n){return n instanceof Error?n.message:String(n)}const O2="television.acpClientGUID",M2="television.acpMappedSessions",N2=1;var Ba;class O5{constructor(){m(this,Ba,new Map)}getActualSessionId(t){return s(this,Ba).get(t)??null}setActualSessionId(t,e){s(this,Ba).set(t,e)}clearActualSessionId(t){s(this,Ba).delete(t)}}Ba=new WeakMap;var Wa,uu,sn,Gh,Yh,rg;class M5{constructor(t,e){m(this,sn);m(this,Wa);m(this,uu);d(this,Wa,t),d(this,uu,e)}getActualSessionId(t){const e=h(this,sn,Yh).call(this)[h(this,sn,Gh).call(this,t)];return typeof e=="string"&&e.length>0?e:null}setActualSessionId(t,e){const r=h(this,sn,Yh).call(this);r[h(this,sn,Gh).call(this,t)]=e,h(this,sn,rg).call(this,r)}clearActualSessionId(t){const e=h(this,sn,Yh).call(this);delete e[h(this,sn,Gh).call(this,t)],h(this,sn,rg).call(this,e)}}Wa=new WeakMap,uu=new WeakMap,sn=new WeakSet,Gh=function(t){return JSON.stringify([s(this,uu),t])},Yh=function(){const t=s(this,Wa).getItem(M2);if(!t)return{};let e;try{e=JSON.parse(t)}catch{return{}}if(typeof e!="object"||e===null||Array.isArray(e))return{};const r=e;return r.version!==N2?{}:typeof r.entries!="object"||r.entries===null||Array.isArray(r.entries)?{}:Object.fromEntries(Object.entries(r.entries).filter(i=>typeof i[1]=="string"))},rg=function(t){const e={version:N2,entries:t};s(this,Wa).setItem(M2,JSON.stringify(e))};function pS(){return typeof window>"u"?null:window.localStorage}function N5(n){const t=n.getItem(O2);if(t)return t;const e=U1().toLowerCase();return n.setItem(O2,e),e}const z2=4401,z5=401,Ph=1e3,H5=3e4;class Kh extends Error{constructor(t="Authentication required"){super(t),this.name="AuthError"}}class Z5 extends Ti{constructor(e){var a,l;super();I(this,"url");I(this,"name");I(this,"telemetryMeta");I(this,"status","unauthorized");I(this,"channels",new Map);I(this,"client");I(this,"acpClient");I(this,"_token");I(this,"attempting",!1);I(this,"nextRetryAt",null);I(this,"hasEverConnected",!1);I(this,"browserDemoMode",!1);I(this,"hasAuthRejected",!1);I(this,"hasAuthTokenRejected",!1);I(this,"bootState","pending");I(this,"serverVersion",null);I(this,"updateState",null);I(this,"decideBoot");I(this,"navigationPending");I(this,"createSocket");I(this,"createClient");I(this,"socket",null);I(this,"connectAttempt",0);I(this,"autoReconnect",!1);I(this,"retryTimer",null);I(this,"retryDelay",Ph);I(this,"visibilityEventTarget");I(this,"networkEventTarget");I(this,"onVisibilityChange");I(this,"onNetworkOnline");I(this,"telemetryActivityAgent");this.url=Es(e.url),this.name=e.name,this.decideBoot=e.decideBoot??null,this.navigationPending=e.navigationPending??(()=>!1),this._token=e.token??null,this.telemetryMeta=e.telemetryMeta??null,this.createSocket=e.createSocket??(c=>new WebSocket(c)),this.createClient=e.createClient??((c,u,p)=>new sk(c,{token:u??void 0,onUnauthorized:()=>this.handleAuthRejected(),...p?{telemetryMeta:p}:{}})),this.client=this.createClient(this.url,this._token,this.telemetryMeta);const r=e.mappedSessionStore??(e.acpStorage?new M5(e.acpStorage,this.url):new O5);this.acpClient=new E5({serverURL:this.url,token:this._token??"",...e.createACPSocket?{createSocket:e.createACPSocket}:e.createSocket?{createSocket:e.createSocket}:{},...e.clientGUID?{clientGUID:e.clientGUID}:{},mappedSessionStore:r}),this.visibilityEventTarget=e.visibilityEventTarget!==void 0?e.visibilityEventTarget:typeof document<"u"?document:null,this.networkEventTarget=e.networkEventTarget!==void 0?e.networkEventTarget:typeof window<"u"?window:null,this.onVisibilityChange=()=>{this.isPageVisible()&&this.kickReconnect()},this.onNetworkOnline=()=>{this.kickReconnect()},(a=this.visibilityEventTarget)==null||a.addEventListener("visibilitychange",this.onVisibilityChange),(l=this.networkEventTarget)==null||l.addEventListener("online",this.onNetworkOnline);const i=e.telemetryDocumentTarget!==void 0?e.telemetryDocumentTarget:typeof document<"u"?document:null,o=e.telemetryWindowTarget!==void 0?e.telemetryWindowTarget:typeof window<"u"?window:null;this.telemetryActivityAgent=this.telemetryMeta&&i&&o?WI({meta:this.telemetryMeta,documentTarget:i,windowTarget:o,send:c=>this.sendTelemetryActivity(c)}):null}get token(){return this._token}clearToken(){this._token=null,this.acpClient.setToken(null),this.client=this.createClient(this.url,null,this.telemetryMeta)}async connect(e){this._token=e,this.hasAuthRejected=!1,this.hasAuthTokenRejected=!1,this.acpClient.setToken(e),this.cancelRetryTimer(),this.retryDelay=Ph,this.autoReconnect=!0,await this.attempt()}dispose(){var e,r,i,o;this.autoReconnect=!1,this.connectAttempt+=1,this.cancelRetryTimer(),(e=this.socket)==null||e.close(),this.socket=null,this.setStatus("unauthorized"),(r=this.visibilityEventTarget)==null||r.removeEventListener("visibilitychange",this.onVisibilityChange),(i=this.networkEventTarget)==null||i.removeEventListener("online",this.onNetworkOnline),(o=this.telemetryActivityAgent)==null||o.stop(),this.acpClient.dispose()}getViewURL(e){const r=Td(e,this.renderOptions());return wi()?new URL(r.viewURL,this.url).toString():r.renderer==="proxy-iframe"?new URL(r.viewURL,this.url).toString():r.viewURL}async readDemoMode(){try{return await this.client.demoMode()}catch{return null}}renderOptions(){return{electron:wi(),browserDemo:this.browserDemoMode}}getContentURL(e){const r=Td(e,this.renderOptions()).contentURL;return r===null?null:new URL(r,this.url).toString()}async createChannel(e){const{channel:r}=await this.client.channels.create({name:e});return this.channels.set(r.id,structuredClone(r)),r}applyServerEvent(e){switch(e.type){case"channel-created":this.channels.set(e.channel.id,structuredClone(e.channel)),this.dispatchEvent(new Sc("channels-changed"));break;case"channel-updated":this.channels.set(e.channel.id,structuredClone(e.channel)),this.dispatchEvent(new Sc("channels-changed"));break;case"channel-removed":this.channels.delete(e.channelID),this.dispatchEvent(new Sc("channels-changed"));break;case"artifact-created":{const r=this.channels.get(e.channelID);r&&!FE(r).includes(e.artifact.id)&&(r.layout=[...r.layout,{artifactIds:[e.artifact.id],geometry:{...g8},size:{...v8}}]);break}case"artifact-removed":{const r=this.channels.get(e.channelID);r&&(r.layout=zm(r.layout,e.artifactID));break}case"artifact-updated":case"artifact-content-changed":case"channel-changed":case"pinned-channels-changed":case"theme-changed":case"appearance-changed":case"artifact-focus":break;default:return U5(e,"server event")}}async attempt(){var i;this.attempting=!0,this.nextRetryAt=null,this.connectAttempt+=1,this.bootState="pending";const e=this.connectAttempt;(i=this.socket)==null||i.close(),this.client=this.createClient(this.url,this._token,this.telemetryMeta),this.setStatus("disconnected"),this.dispatchEvent(new Bt("change"));const r=this.createSocket(F5(this.url,this._token,this.telemetryMeta));return this.socket=r,await new Promise((o,a)=>{let l=!1;const c=()=>{var f;l||this.connectAttempt!==e||(l=!0,this.retryDelay=Ph,this.hasEverConnected=!0,this.setStatus("connected"),(f=this.telemetryActivityAgent)==null||f.start(),o())},u=f=>{l||this.connectAttempt!==e||(l=!0,a(f))},p=async()=>{const f=this.hasEverConnected;try{const[{channels:y},v,S]=await Promise.all([this.client.channels.list(),this.client.display.get(),f?null:this.readDemoMode()]);f||(this.browserDemoMode=(S==null?void 0:S.browserExternalPages)===!0),this.channels=new Map(y.map(_=>[_.id,structuredClone(_)])),this.acpClient.setEnabled(v.acpEnabled),this.dispatchEvent(new Bt("change")),f&&this.dispatchEvent(new Sc("channels-changed")),this.dispatchEvent(new Fh("server-event",{serverURL:this.url,event:{type:"channel-changed",channelID:v.focusedChannelId}})),this.dispatchEvent(new Fh("server-event",{serverURL:this.url,event:{type:"pinned-channels-changed",pinnedChannelIds:[...v.pinnedChannelIds]}})),c(),f&&this.connectAttempt===e&&this.dispatchEvent(new R8("server-reconnected",{serverURL:this.url}))}catch(y){if(G5(y)){u(new Kh);return}u(y instanceof Error?y:new Error(String(y)))}};r.addEventListener("open",()=>{this.decideBoot===null&&(this.bootState="booted",this.navigationPending()||p())}),r.addEventListener("message",f=>{const y=j5(f);if(!y)return;if(y.type==="server-status"){const S=y;this.serverVersion=S.version,this.updateState=S.update??null;let _=!1;this.decideBoot!==null&&this.bootState==="pending"&&this.connectAttempt===e&&(this.decideBoot(S)==="boot"?(this.bootState="booted",_=!0):(this.bootState="halted",this.attempting=!1)),this.dispatchEvent(new I8("server-status",{serverURL:this.url,message:S})),_?this.navigationPending()||p():this.bootState==="halted"&&!this.navigationPending()&&this.dispatchEvent(new Bt("change"));return}if(!W5(y.type))return;const v=y;this.applyServerEvent(v),this.dispatchEvent(new Fh("server-event",{serverURL:this.url,event:v}))}),r.addEventListener("close",f=>{if(this.connectAttempt!==e)return;this.socket=null;const y=q5(f);if(!l){u(y===z2?new Kh:new Error("Connection closed before initialization"));return}if(y===z2){this.handleAuthRejected();return}this.handleTransportFailure(new Error("Connection closed"))}),r.addEventListener("error",()=>{if(this.connectAttempt===e){if(l){this.handleTransportFailure(new Error("WebSocket error"));return}u(new Error("WebSocket connection failed"))}})}).then(()=>{this.attempting=!1},o=>{throw this.attempting=!1,this.handleAttemptFailure(o),o})}handleAuthRejected(){this.hasAuthRejected=!0,this.hasAuthTokenRejected=this._token!==null,this.autoReconnect=!1,this.cancelRetryTimer(),this.setStatus("unauthorized")}handleAttemptFailure(e){if(e instanceof Kh){this.handleAuthRejected();return}this.autoReconnect&&this.scheduleRetry()}handleTransportFailure(e){this.autoReconnect&&(this.setStatus("disconnected"),this.scheduleRetry())}scheduleRetry(){this.cancelRetryTimer(),this.connectAttempt+=1;const e=this.retryDelay;this.retryDelay=Math.min(this.retryDelay*2,H5),this.nextRetryAt=Date.now()+e,this.retryTimer=setTimeout(()=>{this.retryTimer=null,this.attempt().catch(()=>{})},e),this.dispatchEvent(new Bt("change"))}cancelRetryTimer(){this.retryTimer!==null&&(clearTimeout(this.retryTimer),this.retryTimer=null),this.nextRetryAt!==null&&(this.nextRetryAt=null,this.dispatchEvent(new Bt("change")))}kickReconnect(){this.autoReconnect&&this.status!=="connected"&&(this.attempting||(this.cancelRetryTimer(),this.retryDelay=Ph,this.attempt().catch(()=>{})))}sendTelemetryActivity(e){var r;this.status==="connected"&&((r=this.socket)==null||r.send(JSON.stringify(e)))}sendTelemetrySignal(e,r){var o;if(!this.telemetryMeta||this.status!=="connected"&&this.bootState!=="halted")return;const i={type:UE,clientId:this.telemetryMeta.clientId,event:e,properties:r};(o=this.socket)==null||o.send(JSON.stringify(i))}setStatus(e){this.status!==e&&(this.status=e,this.dispatchEvent(new Bt("change")))}isPageVisible(){return this.visibilityEventTarget===null?!0:this.visibilityEventTarget.visibilityState==="visible"}}function U5(n,t){throw new Error(`Unexpected ${t}: ${JSON.stringify(n)}`)}function F5(n,t,e=null){const r=new URL(n);if(r.protocol=r.protocol==="https:"?"wss:":"ws:",r.pathname="/events",r.search="",t&&r.searchParams.set("token",t),e)for(const[i,o]of BI(e))r.searchParams.set(i,o);return r.hash="",r.toString()}function q5(n){return typeof n=="object"&&n!==null&&"code"in n&&typeof n.code=="number"?n.code:null}const V5={"artifact-created":!0,"artifact-updated":!0,"artifact-content-changed":!0,"artifact-removed":!0,"channel-created":!0,"channel-updated":!0,"channel-removed":!0,"channel-changed":!0,"pinned-channels-changed":!0,"theme-changed":!0,"appearance-changed":!0,"artifact-focus":!0},B5=new Set(Object.keys(V5));function W5(n){return B5.has(n)}function j5(n){const t=typeof n=="string"?n:typeof n=="object"&&n!==null&&"data"in n&&typeof n.data=="string"?n.data:"";if(!t)return null;let e;try{e=JSON.parse(t)}catch{return null}return typeof e!="object"||e===null||!("type"in e)||typeof e.type!="string"?null:e}function G5(n){return n instanceof jl&&n.status===z5}const Y5="Local";var mn,Hn,$r,ig,sg,fS,hu,du,pu,fu,mu;class K5 extends Ti{constructor(e){super();m(this,$r);I(this,"connection");I(this,"clientGUID");I(this,"acpStorage");I(this,"connectError",null);m(this,mn);m(this,Hn,!1);m(this,hu,()=>{s(this,Hn)||(h(this,$r,fS).call(this),this.dispatchEvent(new Bt("change")))});m(this,du,e=>{s(this,Hn)||this.dispatchEvent(new Fh("server-event",{serverURL:e.serverURL,event:e.event}))});m(this,pu,()=>{s(this,Hn)||this.dispatchEvent(new Sc("channels-changed"))});m(this,fu,e=>{s(this,Hn)||this.dispatchEvent(new R8("server-reconnected",{serverURL:e.serverURL}))});m(this,mu,e=>{s(this,Hn)||this.dispatchEvent(new I8("server-status",{serverURL:e.serverURL,message:e.message}))});d(this,mn,e.localStore),this.acpStorage=e.acpStorage===void 0?pS():e.acpStorage,this.clientGUID=e.clientGUID??(this.acpStorage?N5(this.acpStorage):U1().toLowerCase());const r=Es(e.serverURL);e.launchToken!==void 0&&e.launchToken!==null&&s(this,mn).set(s2(s(this,mn).get(),r,e.launchToken));const i=e.launchToken??i2(s(this,mn).get(),r),o=e.createSocket??(l=>new WebSocket(l)),a=e.createConnection??(l=>new Z5(l));this.connection=a({url:r,name:e.connectionName??Y5,token:i,createSocket:o,clientGUID:this.clientGUID,acpStorage:this.acpStorage,telemetryMeta:e.telemetryMeta??null,decideBoot:e.decideBoot,navigationPending:e.navigationPending}),this.connection.addEventListener("change",s(this,hu)),this.connection.addEventListener("server-event",s(this,du)),this.connection.addEventListener("channels-changed",s(this,pu)),this.connection.addEventListener("server-reconnected",s(this,fu)),this.connection.addEventListener("server-status",s(this,mu))}get storedAuthToken(){return i2(s(this,mn).get(),this.connection.url)}async connect(){await h(this,$r,ig).call(this,this.connection.token)}async authenticate(e){s(this,mn).set(s2(s(this,mn).get(),this.connection.url,e)),await h(this,$r,ig).call(this,e)}dispose(){s(this,Hn)||(d(this,Hn,!0),this.connection.removeEventListener("change",s(this,hu)),this.connection.removeEventListener("server-event",s(this,du)),this.connection.removeEventListener("channels-changed",s(this,pu)),this.connection.removeEventListener("server-reconnected",s(this,fu)),this.connection.removeEventListener("server-status",s(this,mu)),this.connection.dispose())}}mn=new WeakMap,Hn=new WeakMap,$r=new WeakSet,ig=async function(e){if(!s(this,Hn)){h(this,$r,sg).call(this,null);try{await this.connection.connect(e)}catch(r){h(this,$r,sg).call(this,r instanceof Kh?null:r instanceof Error?r.message:String(r))}}},sg=function(e){this.connectError!==e&&(this.connectError=e,this.dispatchEvent(new Bt("change")))},fS=function(){if(this.connection.status!=="unauthorized"||!this.connection.hasAuthRejected)return;const e=s(this,mn).get(),r=Mk(e,this.connection.url);r!==e&&s(this,mn).set(r),this.connection.token!==null&&this.connection.clearToken()},hu=new WeakMap,du=new WeakMap,pu=new WeakMap,fu=new WeakMap,mu=new WeakMap;const og="tv-nav:",zl="tv-reload",H2=100,J5=1e3,X5=60,Q5=60,eD=24,tD=30,nD=tD*eD*Q5*X5*J5;function bi(n){try{const t=new URL(n,window.location.href),e=t.searchParams.has(zl);return t.searchParams.delete(zl),t.origin===window.location.origin?`${t.pathname}${t.search}${t.hash}`:e?t.toString():n}catch{return n}}var gu,ja,$e,Ce,ho,Xe,mS,Mi,gS,ag,lg;class rD extends Ti{constructor(e,r){super();m(this,Xe);m(this,gu);m(this,ja);m(this,$e,[]);m(this,Ce,-1);m(this,ho,0);d(this,gu,e),d(this,ja,bi(r)),h(this,Xe,mS).call(this)}get currentURL(){var e;return s(this,Ce)===-1?null:((e=s(this,$e)[s(this,Ce)])==null?void 0:e.url)??null}get canGoBack(){return s(this,Ce)>-1}get canGoForward(){return s(this,Ce)<s(this,$e).length-1}get entries(){return s(this,$e).map(e=>({...e}))}get cursor(){return s(this,Ce)}navigate(e){const r=bi(e);if(r===s(this,ja)){if(s(this,Ce)===-1)return;d(this,Ce,-1),h(this,Xe,Mi).call(this);return}s(this,Ce)<s(this,$e).length-1&&d(this,$e,s(this,$e).slice(0,s(this,Ce)+1)),s(this,$e).push({url:r}),d(this,Ce,s(this,$e).length-1),h(this,Xe,ag).call(this),h(this,Xe,Mi).call(this)}replace(e){var i;if(s(this,Ce)===-1){this.navigate(e);return}const r=bi(e);if(r===s(this,ja)){d(this,$e,s(this,$e).filter((o,a)=>a!==s(this,Ce))),d(this,Ce,-1),h(this,Xe,Mi).call(this);return}((i=s(this,$e)[s(this,Ce)])==null?void 0:i.url)!==r&&(d(this,$e,s(this,$e).map((o,a)=>a===s(this,Ce)?{url:r}:o)),h(this,Xe,Mi).call(this))}back(){s(this,Ce)!==-1&&(d(this,Ce,s(this,Ce)-1),h(this,Xe,Mi).call(this))}forward(){this.canGoForward&&(d(this,Ce,s(this,Ce)+1),h(this,Xe,Mi).call(this))}reset(){s(this,Ce)===-1&&s(this,$e).length===0||(d(this,$e,[]),d(this,Ce,-1),h(this,Xe,Mi).call(this))}}gu=new WeakMap,ja=new WeakMap,$e=new WeakMap,Ce=new WeakMap,ho=new WeakMap,Xe=new WeakSet,mS=function(){const e=localStorage.getItem(s(this,Xe,lg));if(e!==null)try{const r=JSON.parse(e);if(!vS(r))return;d(this,$e,r.entries.map(i=>({url:i.url}))),d(this,Ce,r.cursor),d(this,ho,r.lastWritten),h(this,Xe,ag).call(this)}catch{d(this,$e,[]),d(this,Ce,-1),d(this,ho,0)}},Mi=function(){d(this,ho,Date.now());try{localStorage.setItem(s(this,Xe,lg),JSON.stringify(h(this,Xe,gS).call(this)))}catch(e){if(!oD(e))throw e}this.dispatchEvent(new Bt("change"))},gS=function(){return{v:1,entries:s(this,$e).map(e=>({...e})),cursor:s(this,Ce),lastWritten:s(this,ho)}},ag=function(){if(s(this,$e).length<=H2)return;const e=s(this,$e).length-H2;d(this,$e,s(this,$e).slice(e)),d(this,Ce,Math.max(-1,s(this,Ce)-e))},lg=function(){return iD(s(this,gu))};function iD(n){return`${og}${n}`}function sD(n){const t=Date.now()-nD,e=[];for(let r=0;r<localStorage.length;r+=1){const i=localStorage.key(r);if(!(i!=null&&i.startsWith(og)))continue;const o=i.slice(og.length),a=localStorage.getItem(i);if(a===null)continue;let l;try{l=JSON.parse(a)}catch{e.push(i);continue}if(!vS(l)){e.push(i);continue}!n.has(o)&&l.lastWritten<t&&e.push(i)}for(const r of e)localStorage.removeItem(r)}function oD(n){return n instanceof DOMException&&n.name==="QuotaExceededError"}function vS(n){if(typeof n!="object"||n===null)return!1;const t=n;if(t.v!==1||!Array.isArray(t.entries))return!1;const e=t.cursor;return typeof e!="number"||!Number.isInteger(e)||typeof t.lastWritten!="number"||!Number.isFinite(t.lastWritten)||e<-1||e>=t.entries.length?!1:t.entries.every(r=>typeof r=="object"&&r!==null&&typeof r.url=="string")}const km="tv-channel-sidebar-collapsed";var po;class aD{constructor(t){m(this,po);d(this,po,t)}read(){return s(this,po).getItem(km)==="true"}setCollapsed(t){try{t?s(this,po).setItem(km,"true"):s(this,po).removeItem(km)}catch{}}}po=new WeakMap;const Tm="tv-channel-sidebar-width",cg=160,ug=350,Dh=260,lD=/^-?\d+$/;var fo;class cD{constructor(t){m(this,fo);d(this,fo,t)}read(){const t=s(this,fo).getItem(Tm);if(t===null||!lD.test(t))return null;const e=BigInt(t);return e<BigInt(cg)?cg:e>BigInt(ug)?ug:Number(e)}commit(t){const e=yS(Math.round(t));try{s(this,fo).setItem(Tm,String(e))}catch{}return e}clear(){try{s(this,fo).removeItem(Tm)}catch{}}}fo=new WeakMap;function yS(n){return Math.min(Math.max(n,cg),ug)}const uD="1.4.15";function J1(n=uD){return n!==void 0&&n.length>0?n:"0.0.0"}function X1(){let n=!1;return{get pending(){return n},begin(t){n||(n=!0,t())}}}const hg="tv-reload-attempted";function hD(n){return n.originMatch?n.marker!==null&&n.bundleVersion===n.serverVersion?{action:"signal-autoreloaded",fromVersion:n.marker.fromVersion,toVersion:n.bundleVersion}:lk(n.bundleVersion,n.serverVersion)?n.marker!==null&&n.marker.serverVersion===n.serverVersion?{action:"none"}:{action:"reload",marker:{serverVersion:n.serverVersion,fromVersion:n.bundleVersion}}:{action:"none"}:{action:"none"}}function dD(n){const t=n.getItem(hg);if(t===null)return null;let e;try{e=JSON.parse(t)}catch{return null}if(!e||typeof e!="object")return null;const r=e;return typeof r.serverVersion!="string"||typeof r.fromVersion!="string"?null:{serverVersion:r.serverVersion,fromVersion:r.fromVersion}}function pD(n){const t=n.storage!==void 0?n.storage:typeof sessionStorage<"u"?sessionStorage:null,e=n.reload??(()=>location.reload()),r=n.navigationLatch??X1(),i=n.bundleVersion??J1();if(t===null)return{dispose(){}};let o=null;const a=()=>{if(o===null)return;const u=n.owner.connection;if(u.url!==n.primaryServerURL||u.status!=="connected")return;const p=o;o=null,u.sendTelemetrySignal("client_autoreloaded",{from_version:p.fromVersion,to_version:p.toVersion})},l=u=>{if(r.pending)return;const p=hD({bundleVersion:i,serverVersion:u.message.version,originMatch:u.serverURL===n.primaryServerURL,marker:dD(t)});switch(p.action){case"reload":t.setItem(hg,JSON.stringify(p.marker)),r.begin(e);return;case"signal-autoreloaded":t.removeItem(hg),o={fromVersion:p.fromVersion,toVersion:p.toVersion},a();return;case"none":return}},c=()=>{a()};return n.owner.addEventListener("server-status",l),n.owner.addEventListener("change",c),{dispose(){n.owner.removeEventListener("server-status",l),n.owner.removeEventListener("change",c)}}}function fD(n){const t=wi(n.search),e=m6(n.search),r=e!==null&&Op(e)?e:null;return{electron:t,shellVersion:r}}function mD(n){return!n.electron||n.requiredDesktopVersion===null||!Op(n.requiredDesktopVersion)?!1:n.shellVersion===null?!0:n.shellVersion===bd?!1:Z1(n.requiredDesktopVersion,n.shellVersion)}const gD=`# Desktop app update required
|
|
44
44
|
|
|
45
45
|
This version of the Television desktop app does not work with this server and needs to be updated. The new version has already downloaded and installs when you restart the app.`,vD=`# Desktop app update required
|
|
46
46
|
|
package/dist/web/index.html
CHANGED
|
@@ -40,10 +40,10 @@
|
|
|
40
40
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
|
|
41
41
|
<link rel="icon" type="image/svg+xml" href="./assets/favicon-DaYMFRha.svg" />
|
|
42
42
|
<title>Television</title>
|
|
43
|
-
<script type="module" crossorigin src="./assets/main-
|
|
43
|
+
<script type="module" crossorigin src="./assets/main-dsjTnD1P.js"></script>
|
|
44
44
|
<link rel="modulepreload" crossorigin href="./assets/artifact-bridge-BEUWXKq7.js">
|
|
45
45
|
<link rel="modulepreload" crossorigin href="./assets/missing-artifact-page-DVzJ41AE.js">
|
|
46
|
-
<link rel="stylesheet" crossorigin href="./assets/main-
|
|
46
|
+
<link rel="stylesheet" crossorigin href="./assets/main-CT9O9pvW.css">
|
|
47
47
|
<link rel="preload" as="font" crossorigin="" href="/canonical/v2/fonts/Hind-Variable.933e9900.woff2">
|
|
48
48
|
</head>
|
|
49
49
|
<body></body>
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.sidebar{min-height:100vh;height:100%;box-sizing:border-box;display:flex;flex-direction:column;position:relative;background:var(--sidebar-background);background-clip:border-box;color:var(--sidebar-text-color);border-right:var(--sidebar-border);padding-right:1px;box-shadow:var(--sidebar-shadow)}.sidebar:after{content:"";position:absolute;top:0;bottom:0;right:0;width:1px;background:var(--panel-edge-highlight);font-size:0;background-size:100% calc(100% + 2px);background-position:bottom;pointer-events:none}.sidebar-titlebar{flex:none;height:var(--app-bar-height);padding-top:1px;padding-left:var(--traffic-light-x-reserve);padding-right:var(--app-bar-padding-inline);display:flex;align-items:center;justify-content:flex-end;-webkit-app-region:drag;border-bottom:1px solid transparent}.sidebar:has(.sidebar-body[continues-start]) .sidebar-titlebar{border-bottom-color:var(--sidebar-border-color)}.sidebar-body{flex:1;min-height:0;overflow-y:auto}.sidebar-titlebar>button{-webkit-app-region:no-drag}.toolbar-separator{flex:none;width:1px;height:16px;background:var(--color-border);margin:0 var(--space-4)}.channel-list{padding:var(--space-4) var(--space-8) var(--space-12)}.channel-group+.channel-group{margin-top:var(--space-24)}.channel-group-label{margin:0 0 var(--space-4);padding:0 var(--space-8);font-size:var(--sidebar-heading-font-size);font-weight:var(--font-weight-medium);color:var(--sidebar-heading-text-color)}.channel-row{position:relative;overflow:clip}.channel{display:block;width:100%;box-sizing:border-box;font-size:var(--text-md);line-height:var(--line-control);cursor:default;padding:var(--space-4) calc(2 * var(--space-4) + 20px) var(--space-4) var(--space-8);border:1px solid transparent;border-radius:var(--channel-radius);background:var(--channel-background);color:var(--channel-text-color);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:where(.channel-row:hover,.channel-row:has(.channel-menu-trigger[aria-expanded=true])) .channel:not([aria-selected=true]){background:var(--channel-background-hover)}:where(.channel-row:active) .channel:not([aria-selected=true]){background:var(--channel-background-active)}.channel[aria-selected=true]{background:var(--channel-background-selected);color:var(--channel-text-color-selected)}.channel-row:has(>.channel[aria-selected=true]) .channel-menu-trigger{color:var(--channel-text-color-selected)}.channel-menu-trigger{position:absolute;top:50%;right:var(--space-4);translate:0 -50%;opacity:0}.channel-row:hover .channel-menu-trigger,.channel-menu-trigger:focus-visible,.channel-row:has(.channel-menu-trigger[aria-expanded=true]) .channel-menu-trigger,.channel-row:has(>.channel[aria-selected=true]) .channel-menu-trigger{opacity:1}.channel-rename{display:block;width:100%;padding:var(--space-4) calc(2 * var(--space-4) + 20px) var(--space-4) var(--space-8)}.channel-row:has(.channel-rename){overflow:visible}.channel-rename-commit{position:absolute;top:50%;right:var(--space-4);translate:0 -50%}.channel-row.dragged{z-index:calc(var(--layer-ground) + 1);overflow:visible;width:fit-content;min-width:160px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--channel-radius);box-shadow:var(--drag-item-shadow)}.channel-row.dragged .channel{padding-right:var(--space-8)}.channel-drag-action{display:flex;align-items:center;gap:var(--space-4);position:absolute;top:-10px;right:-10px;height:20px;padding:0 var(--space-8) 0 var(--space-6);border-radius:10px;background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--drag-action-shadow);font-size:var(--text-sm)}.channel-drag-action tv-icon{font-size:12px}.channel-placeholder{display:block;height:calc(var(--line-control) + 2 * var(--space-4) + 2 * 1px);border-radius:var(--control-radius);background:var(--drag-placeholder-background)}:where(.dialog-overlay){position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--layer-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-16);background:var(--color-overlay)}:where(.dialog-alert){width:min(384px,90vw);box-sizing:border-box;padding:var(--space-24);display:flex;flex-direction:column;gap:var(--space-8)}:where(.dialog-alert h2){font-size:var(--text-lg);font-weight:var(--font-weight-semibold);overflow-wrap:break-word}:where(.dialog-alert p){color:var(--color-text-muted)}:where(.dialog-actions){margin-top:var(--space-16);display:flex;justify-content:flex-end;gap:var(--space-8)}.dialog-overlay>dialog::backdrop{background:transparent}.sidebar[dragging] .sidebar-body,.channel-switcher-pop[dragging] .channel-switcher-pop-body{overflow-anchor:none}.channel-group[drag-collapsed]{height:0;margin-top:0;overflow:visible}.channel-group[drag-collapsed]>.channel-group-label{display:none}.channel-group[drag-collapsed]+.channel-group{margin-top:0}.channel-group-withdrawal{position:fixed;z-index:2;margin:0;overflow:hidden;pointer-events:none}.channel-placeholder{width:100%}.channel-row.dragged{position:fixed;z-index:3;margin:0;overflow:visible;pointer-events:none}.channel-row.dragged :where(.channel-menu-trigger,tv-menu){display:none}.artifact-view .artifact-content{flex:1;min-height:0;overflow:auto;overscroll-behavior-y:contain;background:var(--color-surface)}.artifact-view[data-embed-loaded] .artifact-content{background:transparent}.artifact-view iframe.artifact-content,.artifact-view webview.artifact-content{margin-bottom:-1px;border:0;width:calc(100% + 2px);border-radius:var(--frame-radius) var(--frame-radius) 0 0}.artifact-view iframe.artifact-content{display:block}.artifact-view .artifact-placeholder{display:flex;align-items:center;justify-content:center;color:var(--color-text-muted, #888);font-size:12px}.artifact-view .artifact-missing{display:grid;place-items:center;box-sizing:border-box;padding:24px;color:#222;background:#dadada}.artifact-view .artifact-missing-wrapper{width:100%;max-width:520px;margin:0 auto}.artifact-view .artifact-missing h1{margin:0 0 .75rem;font-size:1.125rem;line-height:1.25}.artifact-view .artifact-missing p{margin:0;font-size:.875rem;line-height:1.45}.artifact-view .artifact-missing-path{margin:1rem 0}.artifact-view .artifact-missing-path-label{margin-bottom:.375rem}.artifact-view .artifact-missing code{display:inline-block;max-width:100%;overflow-wrap:anywhere;padding:.125rem .3rem;border-radius:.35rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.85em;color:#253040;background:#cbcbcb;-webkit-user-select:all;user-select:all}.artifact-frame{position:relative;isolation:isolate;display:flex;flex-direction:column;padding:0;box-sizing:border-box;height:100%;min-width:0;min-height:0;background:var(--frame-background);background-clip:border-box;box-shadow:var(--artifact-frame-shadow);border:var(--frame-border);border-radius:var(--frame-radius)}.artifact-frame-clip{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;padding:1px;overflow:hidden;border-radius:inherit}.artifact-frame:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;box-shadow:var(--panel-edge-shadow);pointer-events:none}.artifact-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;pointer-events:none;z-index:calc(var(--layer-ground) + 2);background:var(--panel-edge-highlight);font-size:var(--frame-radius);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude}.artifact-frame-clip>:is(iframe,webview){margin:-1px;width:calc(100% + 2px);flex:1;min-width:0;min-height:0;border:0}.artifact-title-bar{position:relative;flex:none;display:flex;align-items:center;gap:var(--space-6);padding:var(--frame-titlebar-padding);background:var(--frame-titlebar-background);color:var(--frame-titlebar-text-color);border-top:var(--frame-titlebar-border);margin:0 -1px -1px;border-left:1px solid transparent;border-right:1px solid transparent;border-bottom:1px solid transparent;background-clip:border-box}.artifact-title-bar .artifact-title{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.artifact-bar-divider{width:1px;height:14px;margin:0 var(--space-2);background:var(--frame-titlebar-divider-color)}.artifact-view{width:100%}.artifact-view>.artifact-frame-clip>.artifact-content{flex:1;height:auto;min-width:0;min-height:0;padding:0;border:0}.artifact-view>.artifact-frame-clip>iframe.artifact-content{display:block}body>.stage{height:100%}.stage{position:relative;flex:1;min-width:0;min-height:0;display:flex;container-type:size;background:transparent;overflow:hidden}.filmstrip{flex:1;min-width:0;min-height:0;overflow:hidden;overscroll-behavior:none;touch-action:none}.filmstrip-inner{height:100%;min-width:max-content;display:flex;align-items:center;gap:var(--page-gap);padding-bottom:var(--page-inset)}.filmstrip-inner:before,.filmstrip-inner:after{content:"";flex:none;width:50cqw}.page{flex:none;max-width:calc(100cqw - var(--page-inset) - var(--page-inset));max-height:calc(100cqh - var(--page-inset))}.page[full-screen]{width:calc(100cqw - var(--page-inset) - var(--page-inset));height:calc(100cqh - var(--page-inset))}.page>.artifact-frame{width:100%}.page{position:relative;transition:backdrop-filter .28s ease,scale .28s ease,width .28s ease,height .28s ease}.page:not([selected]){-webkit-backdrop-filter:blur(var(--page-inactive-backdrop-blur));backdrop-filter:blur(var(--page-inactive-backdrop-blur));border-radius:var(--frame-radius);scale:var(--page-inactive-scale)}.page>.artifact-frame{transition:filter .28s ease,opacity .28s ease}.page:not([selected])>.artifact-frame{filter:blur(var(--page-inactive-blur));opacity:var(--page-inactive-opacity)}.page:has(~.page[selected]){transform-origin:right center}.page[selected]~.page{transform-origin:left center}.page[selected]{z-index:calc(var(--layer-ground) + 1)}.page:not([selected]) .artifact-frame{box-shadow:none;pointer-events:none}@media(prefers-reduced-motion:reduce){.page,.page>.artifact-frame{transition:none}}.snap-outline{position:absolute;top:0;left:var(--page-inset);right:var(--page-inset);bottom:var(--page-inset);border:var(--page-snap-preview-border);border-radius:var(--page-snap-preview-radius);background:var(--page-snap-preview-background);pointer-events:none;z-index:calc(var(--layer-ground) + 2)}.stage-empty{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-sizing:border-box;width:max-content;min-height:160px;max-width:calc(100% - var(--page-inset) - var(--page-inset));padding:var(--space-24);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-8);text-align:center;color:var(--wallpaper-overlay-text-color);background:var(--wallpaper-overlay-background);border:var(--wallpaper-overlay-border);outline:var(--wallpaper-overlay-outline);outline-offset:0;border-radius:var(--panel-radius);-webkit-backdrop-filter:blur(var(--wallpaper-overlay-blur));backdrop-filter:blur(var(--wallpaper-overlay-blur))}.stage-empty p{margin:0}.page>.artifact-view{width:100%;height:100%}.page:not([selected]) .artifact-view{pointer-events:none}.page-handle{position:absolute;z-index:2;touch-action:none}.page-handle.left,.page-handle.right{top:0;bottom:0;width:var(--handle-band);cursor:ew-resize}.page-handle.top,.page-handle.bottom{left:0;right:0;height:var(--handle-band);cursor:ns-resize}.page-handle.left{left:calc(var(--handle-band) / -2)}.page-handle.right{right:calc(var(--handle-band) / -2)}.page-handle.top{top:calc(var(--handle-band) / -2)}.page-handle.bottom{bottom:calc(var(--handle-band) / -2)}.page-handle.top-left,.page-handle.top-right,.page-handle.bottom-left,.page-handle.bottom-right{width:var(--handle-reach);height:var(--handle-reach);z-index:3}.page-handle.top-left{left:calc(var(--handle-band) / 2 - var(--handle-thickness));top:calc(var(--handle-band) / 2 - var(--handle-thickness));cursor:nwse-resize;clip-path:polygon(0 0,100% 0,100% var(--handle-thickness),var(--handle-thickness) var(--handle-thickness),var(--handle-thickness) 100%,0 100%)}.page-handle.bottom-right{right:calc(var(--handle-band) / 2 - var(--handle-thickness));bottom:calc(var(--handle-band) / 2 - var(--handle-thickness));cursor:nwse-resize;clip-path:polygon(calc(100% - var(--handle-thickness)) 0,100% 0,100% 100%,0 100%,0 calc(100% - var(--handle-thickness)),calc(100% - var(--handle-thickness)) calc(100% - var(--handle-thickness)))}.page-handle.top-right{right:calc(var(--handle-band) / 2 - var(--handle-thickness));top:calc(var(--handle-band) / 2 - var(--handle-thickness));cursor:nesw-resize;clip-path:polygon(0 0,100% 0,100% 100%,calc(100% - var(--handle-thickness)) 100%,calc(100% - var(--handle-thickness)) var(--handle-thickness),0 var(--handle-thickness))}.page-handle.bottom-left{left:calc(var(--handle-band) / 2 - var(--handle-thickness));bottom:calc(var(--handle-band) / 2 - var(--handle-thickness));cursor:nesw-resize;clip-path:polygon(0 0,var(--handle-thickness) 0,var(--handle-thickness) calc(100% - var(--handle-thickness)),100% calc(100% - var(--handle-thickness)),100% 100%,0 100%)}.stage[resizing] iframe,.stage[resizing] webview{pointer-events:none}.stage[resizing] .page,.stage[window-tracking] .page{transition:none}.desktop-upgrade-gate{position:fixed;top:0;right:0;bottom:0;left:0}.upgrade-gate-body{box-sizing:border-box;width:min(560px,calc(100vw - 2 * var(--space-16)));max-height:calc(100vh - 2 * var(--space-16));overflow-y:auto;padding:var(--space-32) var(--space-24)}.upgrade-gate-body h1{font-size:var(--text-xl);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-12)}.upgrade-gate-body p{margin:0 0 var(--space-12)}.upgrade-gate-body pre{margin:0 0 var(--space-12);padding:var(--space-12);background:var(--color-surface-muted);border-radius:var(--control-radius);overflow-x:auto;font-family:var(--font-mono);font-size:var(--text-sm)}.upgrade-gate-body :last-child{margin-bottom:0}.upgrade-gate-actions{display:flex;justify-content:flex-end;padding:0 var(--space-24) var(--space-32)}.system-modal{width:min(400px,90vw);padding:var(--space-32) var(--space-24);display:flex;flex-direction:column;align-items:center;gap:var(--space-8);text-align:center}.system-modal h2{font-size:var(--text-lg);font-weight:var(--font-weight-semibold)}.system-modal p:not(.tv-error){color:var(--color-text-muted)}.auth-form .auth-token,.auth-form .auth-submit{align-self:stretch}.system-modal .server-url{font-family:var(--font-mono);font-size:var(--text-sm)}.system-modal-host{display:contents}.copy-button{position:relative}.copy-button .copy-button-idle,.copy-button .copy-button-done{display:inline-flex;align-items:center;gap:var(--space-6)}.copy-button .copy-button-done{display:none}.copy-button[copied] .copy-button-idle{visibility:hidden}.copy-button[copied] .copy-button-done{display:flex;position:absolute;top:0;right:0;bottom:0;left:0;align-items:center;justify-content:center}.copy-button-status{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.update-popover{width:360px;padding:var(--space-16);-webkit-user-select:text;user-select:text}.update-actions{display:flex;justify-content:flex-end;gap:var(--space-8);margin-top:var(--space-12)}.skill-popover{width:500px;padding:var(--space-16)}.skill-heading{font-size:var(--text-sm);font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text);padding:0 var(--space-2) var(--space-4)}.skill-intro{margin:0;padding:0 var(--space-2) var(--space-12);font-size:var(--text-sm);line-height:1.4;color:var(--color-text-muted)}.skill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-20)}.skill-card{display:flex;flex-direction:column;min-width:0}.skill-thumb{position:relative;aspect-ratio:1 / 1;border-radius:var(--panel-radius);overflow:hidden;background:var(--color-surface-muted)}.skill-thumb img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block}.skill-name{font-size:var(--text-md);font-weight:var(--font-weight-semibold);color:var(--color-text);margin-top:var(--space-6);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.skill-desc{font-size:var(--text-sm);line-height:1.35;color:var(--color-text-muted);margin:var(--space-2) 0 var(--space-6)}.skill-card button.copy-button{align-self:flex-start;margin-top:auto;height:auto;min-height:0;padding:var(--space-2) var(--space-6);font-size:var(--text-sm)}.settings-popover{width:320px;padding:var(--space-16)}.settings-heading{padding:0 var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text)}.settings-field{display:grid;gap:var(--space-4);margin-top:var(--space-12);font-size:var(--text-sm);color:var(--color-text-muted)}.settings-theme-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-8);align-items:center}.settings-field button[aria-haspopup=listbox]{width:100%;min-width:0;color:var(--color-text)}.settings-javascript-consent{display:grid;gap:var(--space-8);margin-top:var(--space-12);font-size:var(--text-sm)}.settings-javascript-disclosure{margin:0;color:var(--color-text-muted)}.settings-javascript-toggle{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-8);align-items:center;color:var(--color-text)}.settings-javascript-toggle input{-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;width:32px;height:18px;margin:0;padding:2px;border:var(--control-border);border-radius:var(--radius-pill);background:var(--control-background)}.settings-javascript-toggle input:before{content:"";display:block;width:12px;height:12px;border-radius:50%;background:var(--color-text-muted);transition:transform .12s ease}.settings-javascript-toggle input:checked{border-color:var(--color-primary);background:var(--color-primary)}.settings-javascript-toggle input:checked:before{background:var(--color-text-reversed);transform:translate(14px)}.settings-javascript-toggle input:focus-visible{outline:var(--outline-focus);outline-offset:2px}.settings-status,.settings-failure,.settings-errors{margin:var(--space-12) 0 0;font-size:var(--text-sm)}.settings-status{color:var(--color-text-muted)}.settings-failure{color:var(--color-danger)}.settings-errors{display:grid;gap:var(--space-8);color:var(--color-text-muted)}.settings-errors p{margin:0}.settings-errors strong{color:var(--color-text)}.tab-strip{display:flex;align-items:center;gap:var(--tab-gap);overflow-x:auto;scrollbar-width:none;padding:var(--space-4);margin:calc(-1 * var(--space-4))}.tab{position:relative;display:grid;align-items:center;font-size:var(--tab-font-size);line-height:var(--line-control);cursor:default;border:var(--tab-border);outline:var(--tab-outline);outline-offset:0;border-radius:var(--tab-radius);max-width:220px;flex:0 1 auto;padding:0 var(--space-8);background:var(--tab-background);background-clip:border-box;color:var(--tab-text-color)}.tab[data-compression=hugging]{min-width:max-content}.tab[data-compression=capped]{min-width:90px}.tab-label{min-width:0;padding:var(--space-4) 0;overflow:hidden;text-overflow:clip;white-space:nowrap}.tab-label[data-overflow]{-webkit-mask-image:linear-gradient(to right,black calc(100% - 16px),transparent);mask-image:linear-gradient(to right,black calc(100% - 16px),transparent)}.tab:not([aria-selected=true]){-webkit-backdrop-filter:blur(var(--wallpaper-overlay-blur));backdrop-filter:blur(var(--wallpaper-overlay-blur))}.tab:hover:not([aria-selected=true]){background:var(--tab-background-hover);background-clip:border-box}.tab:active:not([aria-selected=true]){background:var(--tab-background-active);background-clip:border-box}.tab[aria-selected=true]{border:var(--tab-border-selected);outline:var(--tab-outline-selected);background:var(--tab-background-selected);background-clip:border-box;color:var(--tab-text-color-selected)}.tab[aria-selected=true]:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;box-shadow:var(--panel-edge-shadow);pointer-events:none}.tab[aria-selected=true]:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;padding:1px;font-size:var(--tab-radius);background:var(--panel-edge-highlight);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.tab:focus-visible{outline:var(--outline-focus)}.tab[data-item-edge-fade]{-webkit-mask-image:linear-gradient(to right,transparent var(--item-fade-start),black calc(var(--item-fade-start) + var(--item-fade-left)),black calc(var(--item-fade-end) - var(--item-fade-right)),transparent var(--item-fade-end));mask-image:linear-gradient(to right,transparent var(--item-fade-start),black calc(var(--item-fade-start) + var(--item-fade-left)),black calc(var(--item-fade-end) - var(--item-fade-right)),transparent var(--item-fade-end));-webkit-mask-origin:border-box;mask-origin:border-box;mask-clip:border-box;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.tab.dragged{position:relative;z-index:calc(var(--layer-ground) + 1)}.tab-placeholder{display:block;flex:none;height:calc(var(--line-control) + 2 * var(--space-4) + 2 * 1px);box-sizing:border-box;border:var(--tab-border);border-radius:var(--tab-radius);background:var(--drag-placeholder-background)}.tab-strip{width:100%;min-width:0}.tab-strip>.tab[dragging]{position:fixed;z-index:calc(var(--layer-ground) + 2);flex:none;margin:0}.top-bar{background:var(--navbar-background);border-bottom:var(--navbar-border);color:var(--navbar-text-color);height:var(--app-bar-height);padding-top:var(--navbar-border-width);flex-shrink:0;display:grid;-webkit-app-region:drag;grid-template-columns:minmax(0,1fr) minmax(0,auto) minmax(max-content,1fr);align-items:center;column-gap:var(--space-8)}.top-bar>.tab-strip{grid-column:2;min-width:0;margin-inline:0}.top-bar:has(>.tab-strip[data-overflow]){grid-template-columns:0 minmax(0,1fr) max-content}.top-bar-controls{grid-column:3;justify-self:end;margin-left:calc(48px - var(--space-8));display:flex;align-items:center;gap:var(--space-8)}.top-bar :is(.top-bar-controls,.top-bar-lead)>button:not([intent]){color:var(--navbar-text-color)}.top-bar :is(.top-bar-controls,.top-bar-lead)>button[variant=ghost]:not([intent]){background:var(--wallpaper-overlay-background);background-clip:border-box;border:var(--wallpaper-overlay-border);outline:var(--wallpaper-overlay-outline);outline-offset:0;-webkit-backdrop-filter:blur(var(--wallpaper-overlay-blur));backdrop-filter:blur(var(--wallpaper-overlay-blur))}.top-bar :is(.top-bar-controls,.top-bar-lead)>button[variant=ghost]:not([intent]):hover:not(:disabled){background:var(--wallpaper-overlay-background-hover)}.top-bar :is(.top-bar-controls,.top-bar-lead)>button[variant=ghost]:not([intent]):is(:active,[aria-expanded=true]):not(:disabled){background:var(--wallpaper-overlay-background-active)}.top-bar :is(.top-bar-controls,.top-bar-lead)>button[variant=ghost]:not([intent]):focus-visible{outline:var(--outline-focus);outline-offset:1px}.top-bar>.tab-strip,.top-bar>.top-bar-controls{-webkit-app-region:no-drag}.top-bar:has(>.top-bar-lead){grid-template-columns:minmax(max-content,1fr) minmax(0,auto) minmax(max-content,1fr)}.top-bar:has(>.top-bar-lead):has(>.tab-strip[data-overflow]){grid-template-columns:max-content minmax(0,1fr) max-content}.top-bar:has(>.top-bar-lead)>.tab-strip[data-overflow]{grid-column:2}.top-bar:has(>.top-bar-lead):has(>.tab-strip[data-overflow])>.top-bar-controls{grid-column:3}.top-bar-lead{grid-column:1;justify-self:start;display:flex;align-items:center;gap:var(--space-8);padding-left:var(--traffic-light-x-reserve);min-width:0}.top-bar-lead>button{-webkit-app-region:no-drag}.channel-switcher{display:inline-flex;align-items:center;gap:var(--space-4);font-weight:var(--font-weight-medium);max-width:220px}.channel-switcher>.channel-switcher-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-bar tv-popover{max-height:600px}.channel-switcher-pop{--sidebar-text-color: var(--panel-text-color);--sidebar-heading-text-color: var(--color-text-muted);--channel-background: transparent;--channel-text-color: var(--panel-text-color);--channel-background-hover: var(--option-background-highlighted);--channel-background-active: var(--option-background-active);--channel-background-selected: var(--color-primary);--channel-text-color-selected: var(--color-primary-text);width:260px;display:flex;flex-direction:column}.channel-switcher-pop .channel:not([aria-selected=true]){background:var(--channel-background)}.channel-switcher-pop:not(:has(:focus-visible)) .channel-row:hover>.channel:not([aria-selected=true]),.channel-switcher-pop .channel:focus-visible:not([aria-selected=true]),.channel-switcher-pop .channel-row:has(>.channel-menu-trigger[aria-expanded=true])>.channel:not([aria-selected=true]){background:var(--channel-background-hover)}.channel-switcher-pop .channel-row:active>.channel:not([aria-selected=true]){background:var(--channel-background-active)}.channel-switcher-pop .channel:focus-visible{outline:none}.channel-switcher-pop-body{flex:1;min-height:0;overflow-y:auto;padding-top:var(--space-8)}.channel-switcher-pop-footer{display:flex;align-items:center;justify-content:flex-end;border-top:1px solid var(--color-border);padding:var(--space-4) var(--space-8)}#theme-iframe-background,#foreground-overlay,#theme-iframe-overlay{position:fixed;top:0;right:0;bottom:0;left:0;box-sizing:border-box;width:100%;height:100%;margin:0;padding:0;pointer-events:none!important}#theme-iframe-background,#theme-iframe-overlay{border:0;background:transparent}:root[data-theme=light] #theme-iframe-background,:root[data-theme=light] #theme-iframe-overlay{color-scheme:light!important}:root[data-theme=dark] #theme-iframe-background,:root[data-theme=dark] #theme-iframe-overlay{color-scheme:dark!important}#theme-iframe-background{z-index:0!important}#foreground-overlay{z-index:2147483646!important}#theme-iframe-overlay{z-index:2147483647!important}#app{position:relative;z-index:1!important;display:flex;height:100%;min-width:0}#app:focus{outline:none}.app-sidebar{flex:none;width:var(--sidebar-width);min-width:0}.app-main{border-left:1px solid transparent;position:relative;flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;gap:var(--navbar-gap);background:var(--app-wallpaper);will-change:opacity}.app-main:before{content:"";position:absolute;top:0;bottom:0;left:-1px;width:1px;box-shadow:var(--panel-edge-shadow);clip-path:inset(0 -1px 0 1px);translate:-1px;pointer-events:none}.app-main>.top-bar{min-width:0;padding-inline:var(--app-bar-padding-inline);padding-left:calc(var(--app-bar-padding-inline) - 1px)}#app{-webkit-user-select:none;user-select:none}.sidebar-motion-toggle{display:none}#app[data-sidebar-motion]{overflow:clip}#app[data-sidebar-motion] *{transition:none!important;animation:none!important}#app[data-sidebar-motion]>.app-sidebar{margin-left:calc(var(--motion-boundary) - var(--sidebar-width))}#app[data-sidebar-motion] :is(.sidebar-collapse,.sidebar-expand){visibility:hidden}#app[data-sidebar-motion] .sidebar-titlebar>:not(.sidebar-collapse){opacity:var(--motion-titlebar-opacity)}#app[data-sidebar-motion] .top-bar{position:relative}#app[data-sidebar-motion] .top-bar-lead{width:var(--motion-lead-reservation);padding-left:0}#app[data-sidebar-motion] .channel-switcher{position:absolute;left:var(--motion-switcher-left);opacity:var(--motion-switcher-opacity);pointer-events:none}#app[data-sidebar-motion] .sidebar-motion-toggle{display:inline-grid;place-items:center;position:absolute;z-index:3;top:var(--motion-toggle-top);left:var(--motion-toggle-left);width:var(--motion-toggle-width);height:var(--motion-toggle-height);padding:0;border:0;background:transparent;color:var(--sidebar-text-color);-webkit-app-region:no-drag}.sidebar-motion-toggle>span{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;border-radius:var(--control-radius)}.sidebar-motion-toggle>.expanded-paint{clip-path:inset(0 calc(100% - var(--motion-toggle-wipe)) 0 0)}.sidebar-motion-toggle>.collapsed-paint{color:var(--navbar-text-color);background:var(--wallpaper-overlay-background);border:var(--wallpaper-overlay-border);outline:var(--wallpaper-overlay-outline);outline-offset:0;-webkit-backdrop-filter:blur(var(--wallpaper-overlay-blur));backdrop-filter:blur(var(--wallpaper-overlay-blur));clip-path:inset(0 0 0 var(--motion-toggle-wipe))}#app{width:100%;height:100%;min-width:0;overflow:hidden}#app>.app-main{overflow:hidden}.app-sidebar-resize{position:absolute;z-index:2;top:0;bottom:0;left:var(--sidebar-width);width:6px;translate:-3px 0;border:0;background:transparent;cursor:col-resize;touch-action:none}.sidebar-toggle-seat{flex:none;width:24px;height:24px}#app[data-sidebar-transition]>:is(.app-sidebar,.app-main){pointer-events:none}#app[data-sidebar-transition]>.sidebar-motion-toggle{pointer-events:auto}.sidebar-toggle-paint{pointer-events:none}*,*:before,*:after{box-sizing:border-box}:where(html,body){margin:0;padding:0}:where(body){font-family:var(--font-sans);font-size:var(--text-md);font-weight:var(--font-weight-normal);line-height:normal;color:var(--color-text)}:where(h1,h2,h3,h4,h5,h6,p,ul,ol,blockquote,pre,hr){margin:0}:where(button,input,select,textarea){font:inherit;color:inherit}:where(dialog,[popover]){border:0;padding:0}@font-face{font-family:Hind;src:url(./Hind-Variable-C47b_dt9.woff2) format("woff2-variations");font-weight:300 700;font-display:block}:where(:root){--font-sans: "Hind", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, monospace;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600}:where(:root){--panel-edge-highlight: linear-gradient(to bottom, rgb(255 255 255 / .36) 0 .5px, rgb(255 255 255 / .28) .5px 1px, rgb(255 255 255 / .2) 1em);--panel-edge-shadow: 0 0 0 .5px rgb(0 0 0 / .205);--panel-background: var(--color-surface);--panel-text-color: var(--color-text);--panel-border-color: var(--color-border);--panel-border: none;--option-background-highlighted: color-mix(in oklch, transparent, var(--option-background-active) var(--hover-mix));--option-background-active: var(--tint-active);--checkbox-color: var(--color-primary);--control-text-color: var(--color-text);--control-border-color: var(--color-border);--control-border-width: 1px;--control-border: var(--control-border-width) solid var(--control-border-color);--input-placeholder-text-color: var(--color-text-muted);--neutral: oklch(.556 0 0);--red: oklch(.637 .237 25.331);--orange: oklch(.705 .213 47.604);--yellow: oklch(.852 .199 91.936);--green: oklch(.723 .219 149.579);--cyan: oklch(.715 .143 215.221);--blue: oklch(.623 .214 259.815);--purple: oklch(.627 .265 303.9);--pink: oklch(.656 .241 354.308);--accent: var(--blue);--neutral-50: oklch(from var(--neutral) .985 c h);--neutral-100: oklch(from var(--neutral) .97 c h);--neutral-200: oklch(from var(--neutral) .922 c h);--neutral-300: oklch(from var(--neutral) .87 c h);--neutral-400: oklch(from var(--neutral) .708 c h);--neutral-500: var(--neutral);--neutral-600: oklch(from var(--neutral) .439 c h);--neutral-700: oklch(from var(--neutral) .371 c h);--neutral-800: oklch(from var(--neutral) .269 c h);--neutral-900: oklch(from var(--neutral) .205 c h);--neutral-950: oklch(from var(--neutral) .145 c h);--red-50: oklch(from var(--red) calc(l + (1 - l)*.92) calc(c*.055) h);--red-100: oklch(from var(--red) calc(l + (1 - l)*.824) calc(c*.135) h);--red-200: oklch(from var(--red) calc(l + (1 - l)*.683) calc(c*.262) h);--red-300: oklch(from var(--red) calc(l + (1 - l)*.471) calc(c*.481) h);--red-400: oklch(from var(--red) calc(l + (1 - l)*.185) calc(c*.806) h);--red-500: var(--red);--red-600: oklch(from var(--red) calc(l*.906) calc(c*1.034) h);--red-700: oklch(from var(--red) calc(l*.793) calc(c*.899) h);--red-800: oklch(from var(--red) calc(l * (1 - .303)) calc(c*.747) h);--red-900: oklch(from var(--red) calc(l*.622) calc(c*.595) h);--red-950: oklch(from var(--red) calc(l*.405) calc(c*.435) h);--orange-50: oklch(from var(--orange) calc(l + (1 - l)*.92) calc(c*.055) h);--orange-100: oklch(from var(--orange) calc(l + (1 - l)*.824) calc(c*.135) h);--orange-200: oklch(from var(--orange) calc(l + (1 - l)*.683) calc(c*.262) h);--orange-300: oklch(from var(--orange) calc(l + (1 - l)*.471) calc(c*.481) h);--orange-400: oklch(from var(--orange) calc(l + (1 - l)*.185) calc(c*.806) h);--orange-500: var(--orange);--orange-600: oklch(from var(--orange) calc(l*.906) calc(c*1.034) h);--orange-700: oklch(from var(--orange) calc(l*.793) calc(c*.899) h);--orange-800: oklch(from var(--orange) calc(l * (1 - .303)) calc(c*.747) h);--orange-900: oklch(from var(--orange) calc(l*.622) calc(c*.595) h);--orange-950: oklch(from var(--orange) calc(l*.405) calc(c*.435) h);--yellow-50: oklch(from var(--yellow) calc(l + (1 - l)*.937) calc(c*.141) calc(h + 10) );--yellow-100: oklch(from var(--yellow) calc(l + (1 - l)*.868) calc(c*.386) calc(h + 11) );--yellow-200: oklch(from var(--yellow) calc(l + (1 - l)*.732) calc(c*.701) calc(h + 10) );--yellow-300: oklch(from var(--yellow) calc(l + (1 - l)*.537) calc(c*.989) calc(h + 6) );--yellow-400: oklch(from var(--yellow) calc(l + (1 - l)*.278) calc(c*1.082) calc(h + 3) );--yellow-500: var(--yellow);--yellow-600: oklch(from var(--yellow) calc(l*.92) calc(c*.95) calc(h - 6) );--yellow-700: oklch(from var(--yellow) calc(l*.81) calc(c*.8) calc(h - 14) );--yellow-800: oklch(from var(--yellow) calc(l * (1 - .33)) calc(c*.65) calc(h - 26) );--yellow-900: oklch(from var(--yellow) calc(l*.54) calc(c*.52) calc(h - 32) );--yellow-950: oklch(from var(--yellow) calc(l*.36) calc(c*.359) calc(h - 38) );--green-50: oklch(from var(--green) calc(l + (1 - l)*.92) calc(c*.055) h);--green-100: oklch(from var(--green) calc(l + (1 - l)*.824) calc(c*.135) h);--green-200: oklch(from var(--green) calc(l + (1 - l)*.683) calc(c*.262) h);--green-300: oklch(from var(--green) calc(l + (1 - l)*.471) calc(c*.481) h);--green-400: oklch(from var(--green) calc(l + (1 - l)*.185) calc(c*.806) h);--green-500: var(--green);--green-600: oklch(from var(--green) calc(l*.906) calc(c*1.034) h);--green-700: oklch(from var(--green) calc(l*.793) calc(c*.899) h);--green-800: oklch(from var(--green) calc(l * (1 - .303)) calc(c*.747) h);--green-900: oklch(from var(--green) calc(l*.622) calc(c*.595) h);--green-950: oklch(from var(--green) calc(l*.405) calc(c*.435) h);--cyan-50: oklch(from var(--cyan) calc(l + (1 - l)*.92) calc(c*.055) h);--cyan-100: oklch(from var(--cyan) calc(l + (1 - l)*.824) calc(c*.135) h);--cyan-200: oklch(from var(--cyan) calc(l + (1 - l)*.683) calc(c*.262) h);--cyan-300: oklch(from var(--cyan) calc(l + (1 - l)*.471) calc(c*.481) h);--cyan-400: oklch(from var(--cyan) calc(l + (1 - l)*.185) calc(c*.806) h);--cyan-500: var(--cyan);--cyan-600: oklch(from var(--cyan) calc(l*.906) calc(c*1.034) h);--cyan-700: oklch(from var(--cyan) calc(l*.793) calc(c*.899) h);--cyan-800: oklch(from var(--cyan) calc(l * (1 - .303)) calc(c*.747) h);--cyan-900: oklch(from var(--cyan) calc(l*.622) calc(c*.595) h);--cyan-950: oklch(from var(--cyan) calc(l*.405) calc(c*.435) h);--blue-50: oklch(from var(--blue) calc(l + (1 - l)*.92) calc(c*.055) h);--blue-100: oklch(from var(--blue) calc(l + (1 - l)*.824) calc(c*.135) h);--blue-200: oklch(from var(--blue) calc(l + (1 - l)*.683) calc(c*.262) h);--blue-300: oklch(from var(--blue) calc(l + (1 - l)*.471) calc(c*.481) h);--blue-400: oklch(from var(--blue) calc(l + (1 - l)*.185) calc(c*.806) h);--blue-500: var(--blue);--blue-600: oklch(from var(--blue) calc(l*.906) calc(c*1.034) h);--blue-700: oklch(from var(--blue) calc(l*.793) calc(c*.899) h);--blue-800: oklch(from var(--blue) calc(l * (1 - .303)) calc(c*.747) h);--blue-900: oklch(from var(--blue) calc(l*.622) calc(c*.595) h);--blue-950: oklch(from var(--blue) calc(l*.405) calc(c*.435) h);--purple-50: oklch(from var(--purple) calc(l + (1 - l)*.92) calc(c*.055) h);--purple-100: oklch(from var(--purple) calc(l + (1 - l)*.824) calc(c*.135) h);--purple-200: oklch(from var(--purple) calc(l + (1 - l)*.683) calc(c*.262) h);--purple-300: oklch(from var(--purple) calc(l + (1 - l)*.471) calc(c*.481) h);--purple-400: oklch(from var(--purple) calc(l + (1 - l)*.185) calc(c*.806) h);--purple-500: var(--purple);--purple-600: oklch(from var(--purple) calc(l*.906) calc(c*1.034) h);--purple-700: oklch(from var(--purple) calc(l*.793) calc(c*.899) h);--purple-800: oklch(from var(--purple) calc(l * (1 - .303)) calc(c*.747) h);--purple-900: oklch(from var(--purple) calc(l*.622) calc(c*.595) h);--purple-950: oklch(from var(--purple) calc(l*.405) calc(c*.435) h);--pink-50: oklch(from var(--pink) calc(l + (1 - l)*.92) calc(c*.055) h);--pink-100: oklch(from var(--pink) calc(l + (1 - l)*.824) calc(c*.135) h);--pink-200: oklch(from var(--pink) calc(l + (1 - l)*.683) calc(c*.262) h);--pink-300: oklch(from var(--pink) calc(l + (1 - l)*.471) calc(c*.481) h);--pink-400: oklch(from var(--pink) calc(l + (1 - l)*.185) calc(c*.806) h);--pink-500: var(--pink);--pink-600: oklch(from var(--pink) calc(l*.906) calc(c*1.034) h);--pink-700: oklch(from var(--pink) calc(l*.793) calc(c*.899) h);--pink-800: oklch(from var(--pink) calc(l * (1 - .303)) calc(c*.747) h);--pink-900: oklch(from var(--pink) calc(l*.622) calc(c*.595) h);--pink-950: oklch(from var(--pink) calc(l*.405) calc(c*.435) h);--accent-50: oklch(from var(--accent) calc(l + (1 - l)*.92) calc(c*.055) h);--accent-100: oklch(from var(--accent) calc(l + (1 - l)*.824) calc(c*.135) h);--accent-200: oklch(from var(--accent) calc(l + (1 - l)*.683) calc(c*.262) h);--accent-300: oklch(from var(--accent) calc(l + (1 - l)*.471) calc(c*.481) h);--accent-400: oklch(from var(--accent) calc(l + (1 - l)*.185) calc(c*.806) h);--accent-500: var(--accent);--accent-600: oklch(from var(--accent) calc(l*.906) calc(c*1.034) h);--accent-700: oklch(from var(--accent) calc(l*.793) calc(c*.899) h);--accent-800: oklch(from var(--accent) calc(l * (1 - .303)) calc(c*.747) h);--accent-900: oklch(from var(--accent) calc(l*.622) calc(c*.595) h);--accent-950: oklch(from var(--accent) calc(l*.405) calc(c*.435) h);--neutral-alpha-5: oklch(from var(--neutral) l c h / var(--alpha-5));--neutral-alpha-10: oklch(from var(--neutral) l c h / var(--alpha-10));--neutral-alpha-15: oklch(from var(--neutral) l c h / var(--alpha-15));--neutral-alpha-25: oklch(from var(--neutral) l c h / var(--alpha-25));--neutral-alpha-50: oklch(from var(--neutral) l c h / var(--alpha-50));--neutral-alpha-75: oklch(from var(--neutral) l c h / var(--alpha-75));--red-alpha-5: oklch(from var(--red) l c h / var(--alpha-5));--red-alpha-10: oklch(from var(--red) l c h / var(--alpha-10));--red-alpha-15: oklch(from var(--red) l c h / var(--alpha-15));--red-alpha-25: oklch(from var(--red) l c h / var(--alpha-25));--red-alpha-50: oklch(from var(--red) l c h / var(--alpha-50));--red-alpha-75: oklch(from var(--red) l c h / var(--alpha-75));--orange-alpha-5: oklch(from var(--orange) l c h / var(--alpha-5));--orange-alpha-10: oklch(from var(--orange) l c h / var(--alpha-10));--orange-alpha-15: oklch(from var(--orange) l c h / var(--alpha-15));--orange-alpha-25: oklch(from var(--orange) l c h / var(--alpha-25));--orange-alpha-50: oklch(from var(--orange) l c h / var(--alpha-50));--orange-alpha-75: oklch(from var(--orange) l c h / var(--alpha-75));--yellow-alpha-5: oklch(from var(--yellow) l c h / var(--alpha-5));--yellow-alpha-10: oklch(from var(--yellow) l c h / var(--alpha-10));--yellow-alpha-15: oklch(from var(--yellow) l c h / var(--alpha-15));--yellow-alpha-25: oklch(from var(--yellow) l c h / var(--alpha-25));--yellow-alpha-50: oklch(from var(--yellow) l c h / var(--alpha-50));--yellow-alpha-75: oklch(from var(--yellow) l c h / var(--alpha-75));--green-alpha-5: oklch(from var(--green) l c h / var(--alpha-5));--green-alpha-10: oklch(from var(--green) l c h / var(--alpha-10));--green-alpha-15: oklch(from var(--green) l c h / var(--alpha-15));--green-alpha-25: oklch(from var(--green) l c h / var(--alpha-25));--green-alpha-50: oklch(from var(--green) l c h / var(--alpha-50));--green-alpha-75: oklch(from var(--green) l c h / var(--alpha-75));--cyan-alpha-5: oklch(from var(--cyan) l c h / var(--alpha-5));--cyan-alpha-10: oklch(from var(--cyan) l c h / var(--alpha-10));--cyan-alpha-15: oklch(from var(--cyan) l c h / var(--alpha-15));--cyan-alpha-25: oklch(from var(--cyan) l c h / var(--alpha-25));--cyan-alpha-50: oklch(from var(--cyan) l c h / var(--alpha-50));--cyan-alpha-75: oklch(from var(--cyan) l c h / var(--alpha-75));--blue-alpha-5: oklch(from var(--blue) l c h / var(--alpha-5));--blue-alpha-10: oklch(from var(--blue) l c h / var(--alpha-10));--blue-alpha-15: oklch(from var(--blue) l c h / var(--alpha-15));--blue-alpha-25: oklch(from var(--blue) l c h / var(--alpha-25));--blue-alpha-50: oklch(from var(--blue) l c h / var(--alpha-50));--blue-alpha-75: oklch(from var(--blue) l c h / var(--alpha-75));--purple-alpha-5: oklch(from var(--purple) l c h / var(--alpha-5));--purple-alpha-10: oklch(from var(--purple) l c h / var(--alpha-10));--purple-alpha-15: oklch(from var(--purple) l c h / var(--alpha-15));--purple-alpha-25: oklch(from var(--purple) l c h / var(--alpha-25));--purple-alpha-50: oklch(from var(--purple) l c h / var(--alpha-50));--purple-alpha-75: oklch(from var(--purple) l c h / var(--alpha-75));--pink-alpha-5: oklch(from var(--pink) l c h / var(--alpha-5));--pink-alpha-10: oklch(from var(--pink) l c h / var(--alpha-10));--pink-alpha-15: oklch(from var(--pink) l c h / var(--alpha-15));--pink-alpha-25: oklch(from var(--pink) l c h / var(--alpha-25));--pink-alpha-50: oklch(from var(--pink) l c h / var(--alpha-50));--pink-alpha-75: oklch(from var(--pink) l c h / var(--alpha-75));--accent-alpha-5: oklch(from var(--accent) l c h / var(--alpha-5));--accent-alpha-10: oklch(from var(--accent) l c h / var(--alpha-10));--accent-alpha-15: oklch(from var(--accent) l c h / var(--alpha-15));--accent-alpha-25: oklch(from var(--accent) l c h / var(--alpha-25));--accent-alpha-50: oklch(from var(--accent) l c h / var(--alpha-50));--accent-alpha-75: oklch(from var(--accent) l c h / var(--alpha-75));--alpha-3: 3%;--alpha-5: 5%;--alpha-10: 10%;--alpha-15: 15%;--alpha-20: 20%;--alpha-25: 25%;--alpha-40: 40%;--alpha-50: 50%;--alpha-75: 75%;--hover-mix: 50%;--alpha-active: 8%;--tint-hover: color-mix(in oklch, transparent, var(--tint-active) var(--hover-mix));--tint-active: oklch(from currentColor l c h / var(--alpha-active));--icon-check: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 12"><path d="M10.2 3.1 5.1 8.2 2.4 5.5" fill="none" stroke="black" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>');--color-surface: white;--color-surface-muted: var(--neutral-100);--color-text: var(--neutral-900);--color-text-muted: var(--neutral-500);--color-text-reversed: white;--color-border: oklch(from var(--color-text) l c h / 12%);--tint-surface: oklch(from var(--color-surface) l c h / var(--alpha-50));--tint-surface-muted: oklch(from var(--color-surface-muted) l c h / var(--alpha-50));--control-background: var(--color-surface);--color-danger: var(--red-500);--tint-danger: oklch(from var(--color-danger) l c h / var(--alpha-10));--tint-danger-hover: color-mix(in oklch, transparent, var(--tint-danger-active) var(--hover-mix));--tint-danger-active: oklch(from var(--color-danger) l c h / var(--alpha-active));--color-alert: var(--yellow-500);--tint-alert: oklch(from var(--color-alert) l c h / var(--alpha-10));--tint-alert-hover: color-mix(in oklch, transparent, var(--tint-alert-active) var(--hover-mix));--tint-alert-active: oklch(from var(--color-alert) l c h / var(--alpha-active));--color-success: var(--green-500);--tint-success: oklch(from var(--color-success) l c h / var(--alpha-10));--color-primary: var(--accent-500);--tint-primary: oklch(from var(--color-primary) l c h / var(--alpha-10));--tint-primary-hover: color-mix(in oklch, transparent, var(--tint-primary-active) var(--hover-mix));--tint-primary-active: oklch(from var(--color-primary) l c h / var(--alpha-active));--color-primary-text: oklch(from var(--color-primary) clamp(.2, (var(--contrast-flip) - l) * 1e6, .98) 0 h);--outline-focus: 2px solid var(--color-primary);--control-background-hover: color-mix(in oklch, var(--control-background), var(--control-background-active) var(--hover-mix));--control-background-active: color-mix(in oklch, var(--control-background), oklch(from var(--control-background) clamp(0, (var(--state-flip) - l) * 1e6, 1) 0 h) var(--alpha-active));--color-primary-hover: color-mix(in oklch, var(--color-primary), var(--color-primary-active) var(--hover-mix));--color-primary-active: color-mix(in oklch, var(--color-primary), oklch(from var(--color-primary) clamp(0, (var(--state-flip) - l) * 1e6, 1) 0 h) var(--alpha-active));--color-danger-hover: color-mix(in oklch, var(--color-danger), var(--color-danger-active) var(--hover-mix));--color-danger-active: color-mix(in oklch, var(--color-danger), oklch(from var(--color-danger) clamp(0, (var(--state-flip) - l) * 1e6, 1) 0 h) var(--alpha-active));--color-alert-hover: color-mix(in oklch, var(--color-alert), var(--color-alert-active) var(--hover-mix));--color-alert-active: color-mix(in oklch, var(--color-alert), oklch(from var(--color-alert) clamp(0, (var(--state-flip) - l) * 1e6, 1) 0 h) var(--alpha-active));--color-link: currentColor;--color-overlay: oklch(from var(--neutral-950) l c h / var(--alpha-40));--state-flip: .35;--contrast-flip: .66;color-scheme:light}:where([data-theme=dark]){--panel-edge-shadow: 0 0 0 .5px rgb(0 0 0 / .912);--alpha-active: 12%;--red: oklch(.704 .191 22.216);--orange: oklch(.75 .183 55.934);--yellow: oklch(.879 .169 91.5);--green: oklch(.792 .209 151.711);--cyan: oklch(.789 .154 211.53);--blue: oklch(.707 .165 254.624);--purple: oklch(.714 .203 305.504);--pink: oklch(.718 .202 349.761);--color-surface: var(--neutral-900);--color-surface-muted: var(--neutral-800);--color-text: var(--neutral-100);--color-text-muted: var(--neutral-400);--color-border: oklch(from var(--color-text) l c h / 18%);color-scheme:dark}:where(:root){--control-font-size: var(--text-md);--text-base: 14px;--text-sm: round(calc(var(--text-base) * 12 / 14), 1px);--text-md: var(--text-base);--text-lg: round(calc(var(--text-base) * 16 / 14), 1px);--text-xl: round(calc(var(--text-base) * 18 / 14), 1px);--text-2xl: round(calc(var(--text-base) * 20 / 14), 1px);--text-3xl: round(calc(var(--text-base) * 24 / 14), 1px);--text-4xl: round(calc(var(--text-base) * 30 / 14), 1px);--line-control: 18px;--line-control-sm: 14px}:where(:root){--control-padding: var(--space-2) var(--space-16);--space-2: 2px;--space-3: 3px;--space-4: 4px;--space-6: 6px;--space-8: 8px;--space-10: 10px;--space-12: 12px;--space-16: 16px;--space-20: 20px;--space-24: 24px;--space-32: 32px;--space-48: 48px;--space-64: 64px;--control-radius: 6px;--radius-pill: 9999px;--panel-radius: 8px;--popover-distance: var(--space-4)}:where(:root){--shadow-sm: 0 1px 4px oklch(from var(--neutral-950) l c h / var(--alpha-15));--shadow-md: 0 4px 12px oklch(from var(--neutral-950) l c h / var(--alpha-15));--shadow-lg: 0 8px 24px oklch(from var(--neutral-950) l c h / var(--alpha-10)), 0 2px 8px oklch(from var(--neutral-950) l c h / var(--alpha-5));--shadow-xl: 0 24px 48px oklch(from var(--neutral-950) l c h / var(--alpha-15)), 0 4px 12px oklch(from var(--neutral-950) l c h / 7.5%);--popover-shadow: var(--shadow-md);--dialog-shadow: var(--shadow-lg)}:where([data-theme=dark]){--shadow-sm: 0 1px 4px oklch(from var(--neutral-950) l c h / var(--alpha-40));--shadow-md: 0 4px 12px oklch(from var(--neutral-950) l c h / var(--alpha-40));--shadow-lg: 0 8px 24px oklch(from var(--neutral-950) l c h / var(--alpha-40)), 0 2px 8px oklch(from var(--neutral-950) l c h / var(--alpha-25));--shadow-xl: 0 24px 48px oklch(from var(--neutral-950) l c h / 30%), 0 4px 12px oklch(from var(--neutral-950) l c h / 18.75%)}:where(:root){--layer-ground: 0;--layer-panel: 100;--layer-overlay: 200}:where([text-display=prose]){font-size:var(--text-md);font-weight:var(--font-weight-medium);line-height:1.5;-webkit-font-smoothing:antialiased}:where([text-display=prose] h1){font-size:var(--text-3xl);font-weight:var(--font-weight-semibold);line-height:1.25;margin:0 0 var(--space-12)}:where([text-display=prose] h2){font-size:var(--text-xl);font-weight:var(--font-weight-semibold);line-height:1.3;margin:var(--space-24) 0 var(--space-8)}:where([text-display=prose] h3,[text-display=prose] h4,[text-display=prose] h5,[text-display=prose] h6){font-size:var(--text-lg);font-weight:var(--font-weight-semibold);margin:var(--space-16) 0 var(--space-4)}:where([text-display=prose] p,[text-display=prose] ul,[text-display=prose] ol,[text-display=prose] blockquote,[text-display=prose] pre,[text-display=prose] hr,[text-display=prose] table,[text-display=prose] figure){margin:0 0 var(--space-12)}:where([text-display=prose]>:last-child){margin-bottom:0}:where([text-display=prose] a){color:var(--color-link);text-decoration:underline;text-underline-offset:2px}:where([text-display=prose] ul,[text-display=prose] ol){padding-left:var(--space-24)}:where([text-display=prose] li+li){margin-top:var(--space-4)}:where([text-display=prose] blockquote){border-left:2px solid var(--color-border);padding-left:var(--space-12);color:var(--color-text-muted)}:where([text-display=prose] code,[text-display=prose] kbd,[text-display=prose] samp){font-family:var(--font-mono);font-size:var(--text-sm);background:var(--color-surface-muted);border-radius:var(--control-radius);padding:1px var(--space-4)}:where([text-display=prose] pre){font-family:var(--font-mono);font-size:var(--text-sm);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--control-radius);padding:var(--space-12);overflow-x:auto}:where([text-display=prose] pre code){background:none;border-radius:0;padding:0}:where([text-display=prose] hr){border:0;border-top:1px solid var(--color-border)}:where([text-display=prose] table){border-collapse:collapse;width:100%}:where([text-display=prose] th){text-align:left;font-weight:var(--font-weight-semibold);background:var(--color-surface-muted)}:where([text-display=prose] th,[text-display=prose] td){padding:var(--space-4) var(--space-12) var(--space-4) 0;border-bottom:1px solid var(--color-border)}:where([text-display=prose] img){max-width:100%;height:auto}:where([text-display=prose] header p){color:var(--color-text-muted)}:where(header :is(h1,h2,h3,h4,h5,h6):has(+p)){margin-bottom:0}:where(header :is(h1,h2,h3,h4,h5,h6)+p){margin-top:var(--space-4)}:where(button){display:inline-flex;align-items:center;justify-content:center;gap:var(--space-6);padding:var(--control-padding);border:var(--control-border);border-radius:var(--control-radius);background:var(--control-background);color:var(--control-text-color);cursor:default}:where(button[intent]){border-color:transparent;color:var(--color-text-reversed)}:where(button[intent=primary]){background:var(--color-primary);color:var(--color-primary-text)}:where(button[intent=danger]){background:var(--color-danger);color:oklch(from var(--color-danger) clamp(.2,(var(--contrast-flip) - l) * 1e6,.98) 0 h)}:where(button[intent=alert]){background:var(--color-alert);color:oklch(from var(--color-alert) clamp(.2,(var(--contrast-flip) - l) * 1e6,.98) 0 h)}:where(button:active:not(:disabled)){background:var(--control-background-active)}:where(button[intent=primary]:active:not(:disabled)){background:var(--color-primary-active)}:where(button[intent=danger]:active:not(:disabled)){background:var(--color-danger-active)}:where(button[intent=alert]:active:not(:disabled)){background:var(--color-alert-active)}:where(button:focus-visible){outline:var(--outline-focus);outline-offset:1px}:where(button:disabled){opacity:.4}:where(button[icon]){padding:var(--space-2);display:inline-grid;place-items:center}:where(button[target]:not([icon])){padding:var(--space-2) var(--space-6)}:where(button[aria-expanded=true]:not(:disabled):not([variant=ghost])){background:var(--control-background-active)}:where(button[intent=primary][aria-expanded=true]:not(:disabled):not([variant=ghost])){background:var(--color-primary-active)}:where(button[intent=danger][aria-expanded=true]:not(:disabled):not([variant=ghost])){background:var(--color-danger-active)}:where(button[intent=alert][aria-expanded=true]:not(:disabled):not([variant=ghost])){background:var(--color-alert-active)}:where(button[variant=ghost]){border-color:transparent;background:transparent;color:inherit}:where(button[variant=ghost][intent=primary]){color:var(--color-primary)}:where(button[variant=ghost][intent=danger]){color:var(--color-danger)}:where(button[variant=ghost][intent=alert]){color:var(--color-alert)}:where(button[variant=ghost]:hover:not(:disabled)){background:var(--tint-hover)}:where(button[variant=ghost]:is(:active,[aria-expanded=true]):not(:disabled)){background:var(--tint-active);background-clip:border-box}:where(button[variant=ghost][intent=primary]:hover:not(:disabled)){background:var(--tint-primary-hover)}:where(button[variant=ghost][intent=primary]:is(:active,[aria-expanded=true]):not(:disabled)){background:var(--tint-primary-active)}:where(button[variant=ghost][intent=danger]:hover:not(:disabled)){background:var(--tint-danger-hover)}:where(button[variant=ghost][intent=danger]:is(:active,[aria-expanded=true]):not(:disabled)){background:var(--tint-danger-active)}:where(button[variant=ghost][intent=alert]:hover:not(:disabled)){background:var(--tint-alert-hover)}:where(button[variant=ghost][intent=alert]:is(:active,[aria-expanded=true]):not(:disabled)){background:var(--tint-alert-active)}:where(button[icon]):before{content:"";inline-size:1lh;block-size:1lh;grid-area:1 / 1}:where(button[icon]>*){grid-area:1 / 1}:where(button){font-size:var(--control-font-size);line-height:var(--line-control)}:where(button[size=sm]){font-size:var(--text-sm);line-height:var(--line-control-sm);padding:var(--space-2) var(--space-8)}:where(button[size=sm][icon]){padding:var(--space-2)}:where(button[size=sm] tv-icon){font-size:12px}:where(:is(input:not([type]),input[type=""],input[type=text],input[type=email],input[type=url],input[type=tel],input[type=password],input[type=number],textarea)){box-sizing:border-box;font-family:var(--font-sans);font-size:var(--control-font-size);line-height:var(--line-control);color:var(--control-text-color);background:var(--control-background);border:var(--control-border);border-radius:var(--control-radius);padding:var(--control-padding)}:where(:is(input:not([type]),input[type=""],input[type=text],input[type=email],input[type=url],input[type=tel],input[type=password],input[type=number],textarea))::placeholder{color:var(--input-placeholder-text-color);opacity:1}:where(:is(input:not([type]),input[type=""],input[type=text],input[type=email],input[type=url],input[type=tel],input[type=password],input[type=number],textarea):focus-visible){outline:var(--outline-focus);outline-offset:0}:where(:is(input:not([type]),input[type=""],input[type=text],input[type=email],input[type=url],input[type=tel],input[type=password],input[type=number],textarea)[aria-invalid=true]){border-color:var(--color-danger)}:where(:is(input:not([type]),input[type=""],input[type=text],input[type=email],input[type=url],input[type=tel],input[type=password],input[type=number],textarea):disabled){background:var(--color-surface-muted);opacity:.4}:where(textarea){line-height:1.5;resize:vertical}:where(.tv-error){margin:0;color:var(--color-danger);font-size:var(--text-sm);line-height:1.5;overflow-wrap:anywhere}:where(tv-popover,tv-menu,tv-select){position:relative;isolation:isolate;width:max-content;background:var(--panel-background);background-clip:border-box;color:var(--panel-text-color);font-family:var(--font-sans);border:var(--panel-border);border-radius:var(--panel-radius);box-shadow:var(--popover-shadow)}:where(tv-popover,tv-menu,tv-select):before{content:"";position:var(--_panel-edge-position, absolute);inset:var(--_panel-edge-inset, 0);width:var(--_panel-edge-width, auto);height:var(--_panel-edge-height, auto);box-sizing:border-box;border-radius:inherit;box-shadow:var(--panel-edge-shadow);pointer-events:none}:where(tv-popover,tv-menu,tv-select):after{content:"";position:var(--_panel-edge-position, absolute);inset:var(--_panel-edge-inset, 0);width:var(--_panel-edge-width, auto);height:var(--_panel-edge-height, auto);box-sizing:border-box;border-radius:inherit;padding:1px;font-size:var(--panel-radius);background:var(--panel-edge-highlight);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:1}tv-popover:not([open]),tv-menu:not([open]),tv-select:not([open]){display:none}:where(tv-popover[open],tv-menu[open],tv-select[open]){display:block}:where(dialog){position:relative;isolation:isolate;background:var(--panel-background);background-clip:border-box;color:var(--panel-text-color);border:var(--panel-border);border-radius:var(--panel-radius);box-shadow:var(--dialog-shadow)}:where(dialog):before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;box-shadow:var(--panel-edge-shadow);pointer-events:none}:where(dialog):after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;font-size:var(--panel-radius);background:var(--panel-edge-highlight);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:1}:where(dialog:focus-visible){outline:none}:where(dialog:has(>.dialog-content)){overflow:visible}:where(dialog[open]:has(>.dialog-content)){display:flex;flex-direction:column}:where(dialog>.dialog-content){height:100%;min-height:0;max-width:calc(100vw - 2 * var(--space-16));max-height:calc(100vh - 2 * var(--space-16));overflow:auto;border-radius:inherit}:where(tv-menu){min-width:180px;padding:var(--space-4)}:where(tv-menu-item){display:flex;align-items:center;font-size:var(--text-md);line-height:var(--line-control);padding:var(--space-3) var(--space-10);border-radius:calc(var(--panel-radius) - var(--space-4));cursor:default}:where(tv-menu:not(:has(:focus-visible)) tv-menu-item:hover),:where(tv-menu-item:focus-visible){background:var(--option-background-highlighted);outline:none}:where(tv-menu-item:active){background:var(--option-background-active)}:where(tv-menu-item[intent=danger]){color:var(--color-danger)}:where(tv-menu:not(:has(:focus-visible)) tv-menu-item[intent=danger]:hover),:where(tv-menu-item[intent=danger]:focus-visible){background:var(--tint-danger-hover)}:where(tv-menu-item[intent=danger]:active){background:var(--tint-danger-active)}:where(tv-menu hr){border:0;border-top:1px solid var(--color-border);margin:var(--space-4) calc(-1 * var(--space-4))}:where(button[aria-haspopup=listbox]){justify-content:space-between;text-align:left;padding-inline:var(--space-8) var(--space-4)}:where(tv-select){padding:var(--space-4)}:where(tv-option){position:relative;display:flex;align-items:center;font-size:var(--text-md);line-height:var(--line-control);padding:var(--space-3) var(--space-12) var(--space-3) var(--space-20);border-radius:calc(var(--panel-radius) - var(--space-4));cursor:default}:where(tv-option[highlighted]){background:var(--option-background-highlighted)}:where(tv-option:active){background:var(--option-background-active)}:where(tv-option[selected]):before{content:"";position:absolute;left:var(--space-4);top:50%;translate:0 -50%;width:1em;height:1em;background:currentColor;mask:var(--icon-check) center / 80% no-repeat}checkbox-list{display:grid;gap:var(--space-6);margin:var(--space-12) 0}checkbox-item{position:relative;display:grid;grid-template-columns:1em minmax(0,1fr);gap:var(--space-8);align-items:baseline}checkbox-item:before{content:"";width:1em;height:1em;align-self:start;translate:0 .12em;background:transparent;border:var(--control-border);border-radius:var(--control-radius);box-sizing:border-box;cursor:not-allowed}checkbox-item[checked]:before{background:var(--checkbox-color);border-color:var(--checkbox-color)}checkbox-item[checked]:after{content:"";position:absolute;left:0;top:.12em;width:1em;height:1em;background:var(--color-surface);mask:var(--icon-check) center / 80% no-repeat}checkbox-item[checked]{color:var(--color-text-muted);text-decoration:line-through;text-decoration-thickness:.08em}@property --app-wallpaper-image{syntax: "<url> | none"; inherits: true; initial-value: none;}:where(:root){--sidebar-background: var(--color-surface-muted);--sidebar-text-color: var(--color-text);--sidebar-shadow: none;--sidebar-border-color: var(--color-border);--sidebar-border: var(--panel-border);--sidebar-heading-text-color: var(--color-text-muted);--sidebar-heading-font-size: var(--text-md);--channel-background: transparent;--channel-text-color: var(--sidebar-text-color);--channel-background-hover: color-mix(in oklch, var(--channel-background), var(--channel-background-active) var(--hover-mix));--channel-background-active: color-mix(in oklch, var(--channel-background), oklch(from currentColor l c h / 1) var(--alpha-active));--channel-background-selected: var(--color-primary);--channel-text-color-selected: var(--color-primary-text);--channel-radius: var(--control-radius);--tab-text-color: oklch(from var(--navbar-text-color) l c h / var(--alpha-75));--tab-text-color-selected: var(--color-text);--tab-font-size: var(--text-md);--artifact-frame-shadow: var(--shadow-xl);--frame-background: var(--color-surface);--frame-border-color: var(--color-border);--frame-border: var(--panel-border);--frame-titlebar-background: var(--color-surface-muted);--frame-titlebar-text-color: var(--color-text);--frame-titlebar-border-color: transparent;--frame-titlebar-border-width: 1px;--frame-titlebar-border: var(--frame-titlebar-border-width) solid var(--frame-titlebar-border-color);--frame-titlebar-padding: var(--space-4) var(--space-10) var(--space-6);--frame-titlebar-divider-color: var(--color-border);--wallpaper-overlay-text-color: var(--color-text);--wallpaper-overlay-background: transparent;--wallpaper-overlay-background-hover: color-mix(in oklch, var(--wallpaper-overlay-background), var(--wallpaper-overlay-background-active) var(--hover-mix));--wallpaper-overlay-background-active: color-mix(in oklch, var(--wallpaper-overlay-background), oklch(from currentColor l c h / 1) var(--alpha-active));--wallpaper-overlay-border: 1px solid transparent;--wallpaper-overlay-outline: none;--wallpaper-overlay-blur: 0px;--app-bar-height: 44px;--app-bar-padding-inline: 10px;--traffic-light-x-reserve: 0px;--navbar-background: transparent;--navbar-text-color: var(--wallpaper-overlay-text-color);--navbar-border-color: transparent;--navbar-border-width: 1px;--navbar-border: var(--navbar-border-width) solid var(--navbar-border-color);--app-wallpaper-image: none;--app-wallpaper: var(--app-wallpaper-image) center / cover no-repeat, var(--neutral-200);--page-gap: var(--space-24);--page-inset: var(--space-8);--page-inactive-blur: 0px;--page-inactive-backdrop-blur: var(--wallpaper-overlay-blur);--page-inactive-opacity: .55;--page-inactive-scale: .94;--page-snap-preview-border-color: oklch(from currentColor l c h / var(--alpha-25));--page-snap-preview-background: transparent;--page-snap-preview-border-width: 3px;--page-snap-preview-border: var(--page-snap-preview-border-width) solid var(--page-snap-preview-border-color);--page-snap-preview-radius: 12px;--tab-radius: var(--control-radius);--tab-gap: var(--space-3);--tab-border: var(--wallpaper-overlay-border);--tab-background: var(--wallpaper-overlay-background);--tab-background-hover: color-mix(in oklch, var(--tab-background), var(--tab-background-active) var(--hover-mix));--tab-background-active: var(--wallpaper-overlay-background-active);--tab-background-selected: var(--color-surface-muted);--tab-border-selected: 1px solid transparent;--tab-outline: var(--wallpaper-overlay-outline);--tab-outline-selected: none;--drag-placeholder-background: oklch(from var(--color-text) l c h / var(--alpha-10));--drag-item-shadow: var(--shadow-md);--drag-action-shadow: var(--shadow-sm);--navbar-gap: 0px;--frame-radius: 12px}:where([data-theme=dark]){--app-wallpaper: var(--app-wallpaper-image) center / cover no-repeat, var(--neutral-950)}:root[data-platform=electron]{--traffic-light-x-reserve: 72px}html,body{width:100%;height:100%;overflow-x:hidden;overscroll-behavior-x:none}[electron-draggable]{-webkit-app-region:drag}[electron-draggable] :where(button,input,textarea,select,a,[role=button],[role=combobox]){-webkit-app-region:no-drag}
|