@bd7pil/ocrc 0.15.0 → 0.15.1
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/package.json +1 -1
- package/web/dist/_app/immutable/assets/0.nqUv72Y6.css +1 -0
- package/web/dist/_app/immutable/chunks/{DtoJQObH.js → BZhYrFQy.js} +1 -1
- package/web/dist/_app/immutable/chunks/_bauirnP.js +1 -0
- package/web/dist/_app/immutable/entry/{app.hFak2gjq.js → app.DwzATkUd.js} +2 -2
- package/web/dist/_app/immutable/entry/start.DsoTOtiL.js +1 -0
- package/web/dist/_app/immutable/nodes/{0.CU9HFn58.js → 0.BH0-mNP5.js} +1 -1
- package/web/dist/_app/immutable/nodes/{1.chxndJY0.js → 1.reI34Q_v.js} +1 -1
- package/web/dist/_app/immutable/nodes/{2.Dm862ke7.js → 2.BqCecRSm.js} +1 -1
- package/web/dist/_app/immutable/nodes/{3.MyHPpk1O.js → 3.BRXJ5-j-.js} +1 -1
- package/web/dist/_app/version.json +1 -1
- package/web/dist/index.html +9 -9
- package/web/dist/service-worker.js +1 -1
- package/web/dist/_app/immutable/assets/0.B40ibMgm.css +0 -1
- package/web/dist/_app/immutable/chunks/BFcyGgGQ.js +0 -1
- package/web/dist/_app/immutable/entry/start.DctaO3j4.js +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bd7pil/ocrc",
|
|
3
|
-
"version": "0.15.
|
|
3
|
+
"version": "0.15.1",
|
|
4
4
|
"description": "OpenCode plugin — remote-control your local opencode from Telegram and a mobile web console (channels, schedules, skills, files, worktrees).",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/plugin/entry.js",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:root{color-scheme:dark;--bg: #0d0d0d;--bg-panel: #121212;--bg-elev: #171717;--bg-elev2: #1f1f1f;--bg-input: #101010;--border: #262626;--border-2: #1f1f1f;--text: #f5f4f0;--text-2: #c9c7c1;--text-3: #8c877d;--text-4: #7a766e;--accent: #fb8b3c;--accent-2: #2a1c10;--accent-ink:#211307;--accent-line:#7a4416;--user-bubble: #2b2a27;--user-ink: #f0efe9;--bubbleline:#3a3833;--cv: var(--accent);--cv-2: var(--accent-2);--cv-ink: var(--accent-ink);--cv-line: var(--accent-line);--cv-bubble: var(--user-bubble);--ok: #6ee7a0;--warn: #ffd479;--err: #f97066;--info: #8ab4ff;--hl-purple: #b48cf0;--hl-green: #6cc08b;--hl-cyan: #4ec9b0;--hl-orange: #dca87a;--hl-yellow: #ffd479;--hl-gray: #8c877d;--role-gold: #f5b301;--role-blue: #6f9ffa;--role-green: #58c08c;--role-silver: #cdd6e6;--bg-code: #0f0f0f;--toolcmd: #e8e6e0;--toolout: #a3a09a;--scrim: rgba(0, 0, 0, .5);--ease: cubic-bezier(.2, 0, 0, 1);--radius: 14px;--radius-sm: 9px;--radius-xs: 6px;--radius-tail: 4px;--radius-bar: 2px;--radius-pill: 999px;--shadow-card: 0 1px 4px rgba(0, 0, 0, .35);--shadow-composer: 0 6px 24px rgba(0, 0, 0, .4);--shadow-palette: 0 24px 70px rgba(0, 0, 0, .6);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-serif: "Noto Serif CJK SC", "Source Han Serif SC", "DejaVu Serif", Georgia, "Times New Roman", serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--z-sticky: 5;--z-hud: 8;--z-dropdown: 10;--z-backdrop: 25;--z-drawer: 30;--z-sheet: 35;--z-fab: 42;--z-popover: 50;--z-overlay: 200;--z-modal: 300;--z-gate: 500}:root[data-theme=light]{color-scheme:light;--bg: #f2efe8;--bg-panel: #efede5;--bg-canvas: #fbfbfa;--bg-elev: #ffffff;--bg-elev2: #f2f1ed;--bg-input: #f6f5f2;--border: #e4e3df;--border-2: #edece9;--text: #1d1c1a;--text-2: #43413d;--text-3: #8a8884;--text-4: #6e6d69;--accent: #e4580f;--accent-2: #fdeee3;--accent-ink:#1c1b18;--accent-line:#f0c9ac;--user-bubble: #efeeea;--user-ink: #1d1c1a;--bubbleline:#e2e1dc;--ok: #1f7a3d;--warn: #9a6b00;--err: #c2372c;--info: #2456a6;--hl-purple: #8250df;--hl-green: #116329;--hl-cyan: #0e7a8d;--hl-orange: #b65708;--hl-yellow: #9a6700;--hl-gray: #6e7781;--role-gold: #d99e00;--role-blue: #3a6fd8;--role-green: #2f9d68;--role-silver: #8a877e;--bg-code: #f4f2ec;--toolcmd: #1c1b18;--toolout: #57534e;--scrim: rgba(28, 27, 24, .32);--shadow-card: 0 1px 3px rgba(28, 27, 24, .06);--shadow-composer: 0 4px 18px rgba(28, 27, 24, .08);--shadow-palette: 0 24px 70px rgba(28, 27, 24, .18)}@media (prefers-color-scheme: light){:root:not([data-theme=dark]){color-scheme:light;--bg: #f2efe8;--bg-panel: #efede5;--bg-canvas: #fbfbfa;--bg-elev: #ffffff;--bg-elev2: #f2f1ed;--bg-input: #f6f5f2;--border: #e4e3df;--border-2: #edece9;--text: #1d1c1a;--text-2: #43413d;--text-3: #8a8884;--text-4: #6e6d69;--accent: #e4580f;--accent-2: #fdeee3;--accent-ink:#1c1b18;--accent-line:#f0c9ac;--user-bubble: #efeeea;--user-ink: #1d1c1a;--bubbleline:#e2e1dc;--ok: #1f7a3d;--warn: #9a6b00;--err: #c2372c;--info: #2456a6;--hl-purple: #8250df;--hl-green: #116329;--hl-cyan: #0e7a8d;--hl-orange: #b65708;--hl-yellow: #9a6700;--hl-gray: #6e7781;--role-gold: #d99e00;--role-blue: #3a6fd8;--role-green: #2f9d68;--role-silver: #8a877e;--bg-code: #f4f2ec;--toolcmd: #1c1b18;--toolout: #57534e;--scrim: rgba(28, 27, 24, .32);--shadow-card: 0 1px 3px rgba(28, 27, 24, .06);--shadow-composer: 0 4px 18px rgba(28, 27, 24, .08);--shadow-palette: 0 24px 70px rgba(28, 27, 24, .18)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--ease-out: cubic-bezier(.22, 1, .36, 1);--dur-enter: .2s}@keyframes ocrc-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes ocrc-rise-sm{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes ocrc-pop{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes ocrc-fade{0%{opacity:0}to{opacity:1}}:root[data-accent=azure]{--accent: #6f9ffa;--accent-2: #16202f;--accent-ink: #071120;--accent-line: #31527e}:root[data-accent=amber]{--accent: #ffc34d;--accent-2: #2a2110;--accent-ink: #1f1503;--accent-line: #8a6a26}:root[data-accent=violet]{--accent: #b48cf0;--accent-2: #1d1733;--accent-ink: #0f0820;--accent-line: #5a4790}:root[data-theme=light][data-accent=azure]{--accent: #2f6bcc;--accent-2: #e8f0fc;--accent-ink: #ffffff;--accent-line: #b9d0f2}:root[data-theme=light][data-accent=amber]{--accent: #b57f00;--accent-2: #faf0d8;--accent-ink: #ffffff;--accent-line: #ecd9a8}:root[data-theme=light][data-accent=violet]{--accent: #7a4fd0;--accent-2: #f0eafc;--accent-ink: #ffffff;--accent-line: #d4c5f2}@media (prefers-color-scheme: light){:root:not([data-theme=dark])[data-accent=azure]{--accent: #2f6bcc;--accent-2: #e8f0fc;--accent-ink: #ffffff;--accent-line: #b9d0f2}:root:not([data-theme=dark])[data-accent=amber]{--accent: #b57f00;--accent-2: #faf0d8;--accent-ink: #ffffff;--accent-line: #ecd9a8}:root:not([data-theme=dark])[data-accent=violet]{--accent: #7a4fd0;--accent-2: #f0eafc;--accent-ink: #ffffff;--accent-line: #d4c5f2}}html{background:var(--bg)}html,body{height:100vh}button{transition:opacity .12s var(--ease, ease),transform .12s var(--ease, ease)}button:active:not(:disabled){opacity:.78}body{margin:0;overflow:hidden;overscroll-behavior:none;-webkit-text-size-adjust:100%;background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-size:10px}.mono{font-family:var(--font-mono)}.conversation-emerald{--accent: var(--cv);--accent-2: var(--cv-2);--accent-ink: var(--cv-ink);--accent-line: var(--cv-line);--user-bubble: var(--cv-bubble)}.md .hljs-string,.md .hljs-regexp,.md .hljs-addition{color:var(--hl-green)}.md .hljs-keyword,.md .hljs-selector-tag,.md .hljs-type{color:var(--hl-purple)}.md .hljs-title.function_,.md .hljs-title.class_.invoke__,.md .hljs-function>.hljs-title{color:var(--hl-yellow)}.md .hljs-title.class_,.md .hljs-built_in{color:var(--hl-cyan)}.md .hljs-number,.md .hljs-literal,.md .hljs-variable.constant_{color:var(--hl-orange)}.md .hljs-comment,.md .hljs-deletion,.md .hljs-meta{color:var(--hl-gray)}.md .hljs-attr,.md .hljs-attribute,.md .hljs-selector-attr,.md .hljs-selector-class{color:var(--hl-green)}.md .hljs-punctuation,.md .hljs-params,.md .hljs-property,.md .hljs-symbol{color:var(--text)}*{scrollbar-width:thin;scrollbar-color:var(--border) transparent}*::-webkit-scrollbar{width:9px;height:9px}*::-webkit-scrollbar-thumb{background:var(--border);border-radius:6px;border:2px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:var(--text-4);background-clip:content-box}@keyframes ocrc-pulse{0%,to{opacity:1}50%{opacity:.28}}@keyframes ocrc-blink{0%,to{opacity:1}50%{opacity:0}}@keyframes ocrc-ring{0%{transform:scale(.6);opacity:.7}to{transform:scale(2.2);opacity:0}}@keyframes ocrc-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.titlebar.svelte-hhath1{display:flex;align-items:center;gap:12px;height:calc(52px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 16px 0;box-sizing:border-box;border-bottom:1px solid var(--border);background:var(--bg-panel);flex-shrink:0;font-size:13px}.brand.svelte-hhath1{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand-mark.svelte-hhath1{width:27px;height:27px;flex-shrink:0}.wordmark.svelte-hhath1{font-family:var(--font-serif);font-size:15.5px;letter-spacing:.01em;display:inline-flex;align-items:baseline;gap:5px}.wordmark.svelte-hhath1 b:where(.svelte-hhath1){font-weight:700;color:var(--text)}.new-session.svelte-hhath1{display:inline-flex;align-items:center;gap:5px;background:var(--accent);color:var(--accent-ink);border:none;border-radius:var(--radius-pill);padding:5px 11px;font-size:12px;font-weight:650;cursor:pointer;flex-shrink:0;transition:opacity .12s ease,transform .12s ease}.new-session.svelte-hhath1:hover:not(:disabled){opacity:.9}.new-session.svelte-hhath1:disabled{opacity:.5;cursor:default}.new-icon.svelte-hhath1{font-size:14px;line-height:1}.new-label.svelte-hhath1{white-space:nowrap}.new-caret.svelte-hhath1{font-size:9px;line-height:1;margin-left:2px;opacity:.85}.palette-trigger.svelte-hhath1{display:flex;align-items:center;gap:8px;min-width:230px;max-width:min(340px,calc(100vw - 32px));background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-3);padding:5px 10px;font-size:12.5px;cursor:text;transition:border-color .15s ease,color .15s ease}.palette-trigger.svelte-hhath1:hover{border-color:var(--text-3);color:var(--text-2)}.palette-icon.svelte-hhath1{font-size:14px;opacity:.85}.palette-label.svelte-hhath1{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.palette-keycap.svelte-hhath1{font-size:10px;color:var(--text-3);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-xs);padding:2px 5px}.spacer.svelte-hhath1{flex:1}.themebtn.svelte-hhath1{display:inline-grid;place-items:center;width:28px;height:28px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-2);font-size:14px;line-height:1;cursor:pointer;flex-shrink:0;transition:color .12s ease,border-color .12s ease}.themebtn.svelte-hhath1:hover{color:var(--text);border-color:var(--text-4)}.connection-pill.svelte-hhath1{display:inline-flex;align-items:center;gap:7px;border-radius:var(--radius-pill);background:var(--bg-elev);border:1px solid var(--border);padding:4px 10px;flex-shrink:0}.dot-wrap.svelte-hhath1{position:relative;width:10px;height:10px;display:grid;place-items:center}.dot.svelte-hhath1{width:7px;height:7px;border-radius:50%;background:var(--text-4);flex-shrink:0}.dot-ring.svelte-hhath1{position:absolute;width:8px;height:8px;border-radius:50%;border:1.5px solid var(--ok);opacity:0;animation:ocrc-ring 1.6s ease-out infinite;pointer-events:none}.connection-pill.connected.svelte-hhath1 .dot:where(.svelte-hhath1){background:var(--ok);box-shadow:0 0 7px var(--ok)}.connection-pill.reconnecting.svelte-hhath1 .dot:where(.svelte-hhath1){background:var(--warn);animation:ocrc-pulse 1.2s ease-in-out infinite}.connection-pill.offline.svelte-hhath1 .dot:where(.svelte-hhath1){background:transparent;border:1.5px solid var(--text-4)}.connection-state.svelte-hhath1{font-weight:600;color:var(--text-3)}.connection-pill.connected.svelte-hhath1 .connection-state:where(.svelte-hhath1){color:var(--ok)}.connection-pill.reconnecting.svelte-hhath1 .connection-state:where(.svelte-hhath1){color:var(--warn)}.connection-pill.offline.svelte-hhath1 .connection-state:where(.svelte-hhath1){color:var(--err)}.connection-latency.svelte-hhath1{color:var(--text-3);font-size:10.5px}.install.svelte-hhath1{background:var(--accent);color:var(--accent-ink);border:none;border-radius:var(--radius-pill);padding:4px 12px;font-size:.8em;font-weight:600;cursor:pointer;flex-shrink:0}.user.svelte-hhath1{display:flex;align-items:center;gap:10px;flex-shrink:0}.user-email.svelte-hhath1{color:var(--text-3);font-size:12px}.avatar.svelte-hhath1{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--accent-2);color:var(--accent);border:1px solid var(--accent-line);font-size:11px;font-weight:700}.iconbtn.svelte-hhath1{display:none;background:transparent;border:none;color:var(--text-2);font-size:18px;line-height:1;padding:4px 6px;cursor:pointer;border-radius:var(--radius-pill)}.iconbtn.svelte-hhath1:hover{color:var(--text);background:var(--bg-elev)}.iconbtn.active.svelte-hhath1{color:var(--accent);background:var(--accent-2)}@media (pointer: coarse){.themebtn.svelte-hhath1{width:36px;height:36px}}@media (max-width: 820px){.palette-trigger.svelte-hhath1,.user-email.svelte-hhath1,.new-session.svelte-hhath1,.new-label.svelte-hhath1,.iconbtn.svelte-hhath1,.user.svelte-hhath1{display:none}}.banner.svelte-l46k7l{text-align:center;font-size:.8em;padding:4px 8px;background:color-mix(in srgb,var(--warn) 14%,var(--bg));color:var(--warn);border-bottom:1px solid color-mix(in srgb,var(--warn) 32%,transparent);animation:svelte-l46k7l-banner-drop .18s var(--ease-out, ease-out)}@keyframes svelte-l46k7l-banner-drop{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.banner.offline.svelte-l46k7l{background:color-mix(in srgb,var(--err) 14%,var(--bg));color:var(--err);border-bottom-color:color-mix(in srgb,var(--err) 32%,transparent)}.sidebar.svelte-1h8243g{width:100%;box-sizing:border-box;background:var(--bg-panel);overflow-y:auto;display:flex;flex-direction:column;padding:4px 8px 8px;gap:2px}.group-header.svelte-1h8243g{display:flex;align-items:center;gap:8px;padding:10px 8px 6px;color:var(--text-4);font-size:10px;text-transform:uppercase;letter-spacing:.16em}.gh-label.svelte-1h8243g{flex-shrink:0}.gh-line.svelte-1h8243g{flex:1;height:1px;background:var(--border-2);opacity:.7}.gh-count.svelte-1h8243g{flex-shrink:0;font-variant-numeric:tabular-nums}.session.svelte-1h8243g{position:relative;display:block;text-decoration:none;padding:9px 12px 9px 16px;border-radius:var(--radius-sm);background:transparent;cursor:pointer;transition:background .12s ease}.session.svelte-1h8243g:hover{background:var(--bg-elev)}.session.active.svelte-1h8243g{background:var(--accent-2)}.session.active.svelte-1h8243g:before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:2.5px;border-radius:var(--radius-bar);background:var(--accent)}.line1.svelte-1h8243g{display:flex;align-items:center;gap:7px}.sr-only.svelte-1h8243g{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.dot.svelte-1h8243g{width:7px;height:7px;border-radius:50%;border:1.5px solid transparent;flex-shrink:0;box-sizing:border-box}.dot.busy.svelte-1h8243g{background:var(--accent);border-color:var(--accent);animation:ocrc-pulse 1.2s ease-in-out infinite}.dot.wait.svelte-1h8243g{background:var(--warn);border-color:var(--warn)}.dot.idle.svelte-1h8243g{background:var(--ok);border-color:var(--ok)}.dot.offline.svelte-1h8243g{background:transparent;border:1.5px solid var(--text-4)}.title.svelte-1h8243g{flex:1;font-size:13px;font-weight:600;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session.active.svelte-1h8243g .title:where(.svelte-1h8243g){color:var(--text)}.pin-dot.svelte-1h8243g{flex-shrink:0;font-size:7px;color:var(--accent);line-height:1}.rename-input.svelte-1h8243g{flex:1;min-width:0;font-size:16px;font-weight:600;color:var(--text);background:var(--bg-panel);border:1px solid var(--accent);border-radius:var(--radius-sm);padding:1px 6px;outline:none;font-family:inherit}.rename-input.svelte-1h8243g:disabled{opacity:.6}.actions.svelte-1h8243g{display:inline-flex;gap:1px;flex-shrink:0}.act.svelte-1h8243g{display:inline-flex;background:transparent;border:none;color:var(--text-3);cursor:pointer;padding:2px;opacity:0;transition:opacity .12s ease,color .12s ease}.session.svelte-1h8243g:hover .act:where(.svelte-1h8243g){opacity:.65}.session.svelte-1h8243g:focus-within .act:where(.svelte-1h8243g){opacity:.65}.act.svelte-1h8243g:hover{opacity:1}.act.pin.svelte-1h8243g:hover{color:var(--text)}.act.rename.svelte-1h8243g:hover{color:var(--accent)}.act.pin.on.svelte-1h8243g{opacity:1;color:var(--accent)}.act.trash.svelte-1h8243g:hover{color:var(--err)}.act.svelte-1h8243g:disabled{opacity:.4;cursor:default}@media (hover: none),(max-width: 820px){.act.svelte-1h8243g{opacity:.6;padding:8px;min-width:40px;min-height:40px;align-items:center;justify-content:center}.actions.svelte-1h8243g{gap:2px}}.meta.svelte-1h8243g{display:flex;align-items:center;gap:5px;flex-wrap:wrap;font-size:10.5px;color:var(--text-3);margin:4px 0 0 16px}.sep.svelte-1h8243g{color:var(--border)}.id.svelte-1h8243g,.repo.svelte-1h8243g{color:var(--text-2)}.add.svelte-1h8243g{color:var(--ok)}.del.svelte-1h8243g{color:var(--err)}.empty.svelte-1h8243g{padding:16px 12px;color:var(--text-3);font-size:11px}.progress.svelte-1h8243g{height:3px;margin-top:8px;background:var(--border-2);border-radius:var(--radius-bar);overflow:hidden}.progress-fill.svelte-1h8243g{display:block;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,var(--accent) 50%,transparent 100%);background-size:200% 100%;animation:ocrc-shimmer 1.4s linear infinite}.agent-panel.svelte-wmno67{display:flex;height:100%;background:var(--bg-panel);border-right:1px solid var(--border-2);flex-shrink:0}.agent-panel.drawer.svelte-wmno67{width:100%;border-right:none}.panel.svelte-wmno67{display:flex;flex-direction:column;width:100%;min-width:0}.header.svelte-wmno67{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 12px 10px;border-bottom:1px solid var(--border-2);flex-shrink:0}.agent-pill.svelte-wmno67{display:inline-flex;align-items:center;gap:7px;min-width:0;padding:5px 9px 5px 5px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-2);cursor:pointer;transition:border-color .12s ease,background .12s ease}.agent-pill.svelte-wmno67:hover{border-color:var(--accent);background:var(--bg-elev2)}.glyph-tile.svelte-wmno67{width:24px;height:24px;display:inline-grid;place-items:center;border-radius:50%;border:1px solid transparent;font-family:var(--font-mono);font-size:10px;font-weight:700;flex-shrink:0}.status-dot.svelte-wmno67{width:7px;height:7px;border-radius:50%;border:1.5px solid transparent;flex-shrink:0;box-sizing:border-box}.sr-only.svelte-wmno67{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.status-dot.online.svelte-wmno67{background:var(--dot, var(--ok));border-color:var(--dot, var(--ok))}.status-dot.connecting.svelte-wmno67{background:var(--warn);border-color:var(--warn);animation:ocrc-pulse 1.2s ease-in-out infinite}.status-dot.offline.svelte-wmno67{background:transparent;border:1.5px solid var(--text-4)}.name.svelte-wmno67{font-size:12.5px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.host.svelte-wmno67{font-size:11px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.caret.svelte-wmno67{font-size:9px;color:var(--text-3);flex-shrink:0}.collapse.svelte-wmno67{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-3);cursor:pointer;transition:color .12s ease,background .12s ease,border-color .12s ease;flex-shrink:0}.collapse.svelte-wmno67:hover{color:var(--text);background:var(--bg-elev);border-color:var(--border)}.picker.svelte-wmno67{position:absolute;top:calc(100% + 6px);left:12px;right:12px;width:auto;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 18px 50px #0000008c;z-index:var(--z-popover);overflow:hidden;animation:svelte-wmno67-ocrc-pop .14s ease}@keyframes svelte-wmno67-ocrc-pop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.picker-list.svelte-wmno67{max-height:320px;overflow-y:auto;padding:6px;display:flex;flex-direction:column;gap:2px}.agent-row.svelte-wmno67{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text);cursor:pointer;text-align:left;transition:background .12s ease}.agent-row.svelte-wmno67:hover,.agent-row.selected.svelte-wmno67{background:var(--accent-2)}.row-tile.svelte-wmno67{width:30px;height:30px;display:inline-grid;place-items:center;border-radius:var(--radius-xs);border:1px solid transparent;font-family:var(--font-mono);font-size:11px;font-weight:700;flex-shrink:0}.row-info.svelte-wmno67{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.row-name.svelte-wmno67{font-size:12.5px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-host.svelte-wmno67{font-size:10.5px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.check.svelte-wmno67{font-size:13px;color:var(--accent);flex-shrink:0}.picker-footer.svelte-wmno67{border-top:1px solid var(--border);padding:10px}.theme-row.svelte-wmno67{display:flex;flex-direction:column;gap:8px}.theme-label.svelte-wmno67{font-size:10.5px;color:var(--text-3)}.swatches.svelte-wmno67{display:flex;align-items:center;gap:8px}.swatch.svelte-wmno67{width:20px;height:20px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .12s ease,border-color .12s ease}.swatch.svelte-wmno67:hover{transform:scale(1.1)}.swatch.active.svelte-wmno67{border-color:var(--text)}.auto.svelte-wmno67{margin-left:auto;padding:3px 9px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-3);font-family:var(--font-mono);font-size:10.5px;cursor:pointer;transition:color .12s ease,border-color .12s ease,background .12s ease}.auto.svelte-wmno67:hover,.auto.active.svelte-wmno67{color:var(--text);border-color:var(--accent);background:var(--accent-2)}.agents-label.svelte-wmno67{padding:12px 14px 6px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--text-3)}.mobile-search.svelte-wmno67{display:flex;align-items:center;gap:8px;margin:6px 12px 8px;padding:10px 12px;width:calc(100% - 24px);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-3);cursor:pointer;font-size:13px;font-family:var(--font-sans);text-align:left}.mobile-search.svelte-wmno67:hover{border-color:var(--text-4)}.switcher-row.svelte-wmno67{display:flex;gap:7px;padding:10px 12px;overflow-x:auto;border-bottom:1px solid var(--border-2);flex-shrink:0;scrollbar-width:none}.switcher-row.svelte-wmno67::-webkit-scrollbar{display:none}.switch-pill.svelte-wmno67{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding:5px 10px 5px 5px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-2);cursor:pointer;transition:border-color .12s ease,background .12s ease}.switch-pill.active.svelte-wmno67{background:var(--accent-2);border-color:var(--accent)}.switch-tile.svelte-wmno67{width:22px;height:22px;display:inline-grid;place-items:center;border-radius:var(--radius-xs);border:1px solid transparent;font-family:var(--font-mono);font-size:9.5px;font-weight:700;flex-shrink:0}.switch-name.svelte-wmno67{font-size:12px;font-weight:600;color:var(--text);white-space:nowrap}.switch-count.svelte-wmno67{font-size:10px;color:var(--text-3);background:var(--bg);border-radius:var(--radius-xs);padding:1px 6px}.list.svelte-wmno67{flex:1;overflow-y:auto;min-height:0}.footer.svelte-wmno67{display:flex;align-items:center;gap:7px;padding:10px max(20px,env(safe-area-inset-right,0px)) max(18px,calc(env(safe-area-inset-bottom,0px) + var(--kb, 0px))) max(20px,env(safe-area-inset-left,0px));font-size:10px;color:var(--text-4);border-top:1px solid var(--border-2);flex-shrink:0}.sep.svelte-wmno67{color:var(--border)}.task.svelte-1h1y2gb{flex:1;overflow:auto;padding:14px 16px}.hd.svelte-1h1y2gb{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.section-label.svelte-1h1y2gb{text-transform:uppercase;letter-spacing:.16em;color:var(--text-3);font-size:10px}.meta.svelte-1h1y2gb{font-family:var(--font-mono);color:var(--text-2);font-size:11px}.bar.svelte-1h1y2gb{height:4px;background:var(--bg-input);border-radius:var(--radius-bar);overflow:hidden;margin-bottom:10px}.fill.svelte-1h1y2gb{height:100%;width:100%;background:var(--accent);transform-origin:left;transition:transform .3s ease}.items.svelte-1h1y2gb{display:flex;flex-direction:column;gap:6px}.row.svelte-1h1y2gb{display:flex;align-items:flex-start;gap:9px;padding:3px 0;margin:0;border:none;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.row.svelte-1h1y2gb:hover .tx:where(.svelte-1h1y2gb){color:var(--text)}.row.svelte-1h1y2gb:focus-visible{outline:1px solid var(--accent);outline-offset:1px;border-radius:var(--radius-xs)}.box.svelte-1h1y2gb{flex-shrink:0;width:15px;height:15px;margin-top:1px;border-radius:var(--radius-xs);display:grid;place-items:center;position:relative}.dot.svelte-1h1y2gb{width:5px;height:5px;border-radius:50%;background:var(--accent);animation:ocrc-pulse 1.2s ease-in-out infinite;display:none}.check.svelte-1h1y2gb{font-size:11px;line-height:1;display:none}.tx.svelte-1h1y2gb{font-size:12px;line-height:1.45;color:var(--text-2)}.row.done.svelte-1h1y2gb .box:where(.svelte-1h1y2gb){background:transparent;border-color:var(--accent-line)}.row.done.svelte-1h1y2gb .check:where(.svelte-1h1y2gb){display:block;color:var(--accent)}.row.done.svelte-1h1y2gb .tx:where(.svelte-1h1y2gb){color:var(--text-3);text-decoration:line-through;text-decoration-color:var(--border)}.row.running.svelte-1h1y2gb .box:where(.svelte-1h1y2gb){border:1.5px solid var(--accent)}.row.running.svelte-1h1y2gb .dot:where(.svelte-1h1y2gb){display:block}.row.running.svelte-1h1y2gb .tx:where(.svelte-1h1y2gb){color:var(--text);font-weight:500}.row.pending.svelte-1h1y2gb .box:where(.svelte-1h1y2gb){border:1.5px solid var(--border)}.mcp.svelte-ehf8ic{font-size:11.5px}.list.svelte-ehf8ic{display:flex;flex-direction:column;gap:4px;color:var(--text-2);margin-top:6px}.row.svelte-ehf8ic{display:flex;align-items:center;gap:7px}.dot.svelte-ehf8ic{width:6px;height:6px;border-radius:50%;background:var(--ok);flex-shrink:0}.row.off.svelte-ehf8ic{color:var(--text-3)}.row.off.svelte-ehf8ic .dot:where(.svelte-ehf8ic){background:var(--text-3)}.sr-only.svelte-ehf8ic{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.schedules.svelte-pijcyq{font-size:11.5px}.hd.svelte-pijcyq{display:flex;align-items:center;justify-content:space-between}.label.svelte-pijcyq{text-transform:uppercase;letter-spacing:.16em;color:var(--text-3);font-size:10px}.add.svelte-pijcyq{width:20px;height:20px;display:grid;place-items:center;padding:0;background:transparent;border:1px solid var(--border-2);border-radius:var(--radius-sm);color:var(--text-3);font-size:13px;line-height:1;cursor:pointer}.add.svelte-pijcyq:hover{color:var(--text);border-color:var(--accent)}.list.svelte-pijcyq{display:flex;flex-direction:column;gap:7px;margin-top:8px}.row.svelte-pijcyq{display:flex;align-items:flex-start;gap:8px}.switch.svelte-pijcyq{flex-shrink:0;width:22px;height:14px;margin-top:2px;padding:0;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-input);display:grid;align-items:center;cursor:pointer}.switch.svelte-pijcyq .dot:where(.svelte-pijcyq){width:8px;height:8px;margin:0 2px;border-radius:50%;background:var(--text-3);transition:transform .16s ease,background .16s ease}.switch.on.svelte-pijcyq{border-color:var(--accent)}.switch.on.svelte-pijcyq .dot:where(.svelte-pijcyq){background:var(--accent);transform:translate(8px)}.txt.svelte-pijcyq{flex:1;min-width:0}.prompt.svelte-pijcyq{font-size:11.5px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row.off.svelte-pijcyq .prompt:where(.svelte-pijcyq){color:var(--text-3);text-decoration:line-through;text-decoration-color:var(--border)}.spec.svelte-pijcyq{font-size:10px;color:var(--text-3);margin-top:1px}.del.svelte-pijcyq{flex-shrink:0;margin-top:1px;padding:0 5px;min-width:18px;height:18px;background:transparent;border:none;border-radius:var(--radius-xs);color:var(--text-3);font-size:11px;cursor:pointer}.del.svelte-pijcyq:hover{color:var(--err)}.del.arm.svelte-pijcyq{color:var(--err);border:1px solid var(--err)}.form.svelte-pijcyq{margin-top:10px;padding:9px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);display:flex;flex-direction:column;gap:7px}.prompt-in.svelte-pijcyq{width:100%;resize:vertical;padding:6px 8px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;box-sizing:border-box}.prompt-in.svelte-pijcyq:focus{outline:1px solid var(--accent)}.kind.svelte-pijcyq{display:flex;align-items:center;gap:10px;color:var(--text-2)}.kind.svelte-pijcyq label:where(.svelte-pijcyq){display:inline-flex;align-items:center;gap:4px;cursor:pointer}.kind.svelte-pijcyq input[type=radio]:where(.svelte-pijcyq){accent-color:var(--accent);margin:0}.num.svelte-pijcyq,.time.svelte-pijcyq{width:62px;padding:2px 5px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text);font:inherit;font-size:11px}.num.svelte-pijcyq:disabled,.time.svelte-pijcyq:disabled{opacity:.4}.err.svelte-pijcyq{color:var(--err);font-size:10.5px}.go.svelte-pijcyq{align-self:flex-end;padding:4px 12px;background:var(--accent);border:none;border-radius:var(--radius-sm);color:var(--accent-ink);font:inherit;font-weight:600;cursor:pointer}.go.svelte-pijcyq:disabled{opacity:.45;cursor:default}.skills.svelte-taxat6{font-size:11.5px}.label.svelte-taxat6{text-transform:uppercase;letter-spacing:.16em;color:var(--text-3);font-size:10px}.chips.svelte-taxat6{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px;animation:ocrc-fade .15s var(--ease-out, ease-out)}.chips.clipped.svelte-taxat6{max-height:132px;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,#000 70%,transparent);mask-image:linear-gradient(to bottom,#000 70%,transparent)}.chip.svelte-taxat6{padding:2px 7px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-2);font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.more.svelte-taxat6{margin-top:5px;padding:0;background:transparent;border:none;color:var(--text-3);font:inherit;font-size:10.5px;cursor:pointer;text-align:left}.more.svelte-taxat6:hover{color:var(--accent)}.files.svelte-tp0rgj{font-size:11.5px}.label.svelte-tp0rgj{text-transform:uppercase;letter-spacing:.16em;color:var(--text-3);font-size:10px}.crumb.svelte-tp0rgj{margin-top:6px;color:var(--text-3);font-size:10.5px}.up.svelte-tp0rgj{background:transparent;border:none;padding:0;color:var(--accent);font:inherit;cursor:pointer}.list.svelte-tp0rgj{display:flex;flex-direction:column;gap:2px;margin-top:4px}.row.svelte-tp0rgj{display:flex;align-items:center;gap:7px;padding:3px 4px;margin:0;background:transparent;border:none;border-radius:var(--radius-xs);color:var(--text-2);font:inherit;text-align:left;cursor:pointer}.row.svelte-tp0rgj:hover{background:var(--bg-input);color:var(--text)}.ico.svelte-tp0rgj{flex-shrink:0;width:14px;text-align:center}.name.svelte-tp0rgj{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-scrim.svelte-tp0rgj{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);background:var(--scrim);display:grid;place-items:center;padding:20px}.preview.svelte-tp0rgj{width:min(92vw,680px);max-height:76vh;display:flex;flex-direction:column;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-palette);animation:ocrc-pop .16s var(--ease-out, ease-out) backwards}.p-hd.svelte-tp0rgj{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border-bottom:1px solid var(--border-2);color:var(--text-2);font-size:11px}.p-close.svelte-tp0rgj{background:transparent;border:none;color:var(--text-3);font-size:12px;cursor:pointer}.p-body.svelte-tp0rgj{margin:0;padding:10px 12px;overflow:auto;font-size:11px;line-height:1.5;color:var(--text-2);white-space:pre-wrap;word-break:break-word}.p-body.binary.svelte-tp0rgj{color:var(--text-3)}.wt.svelte-148ev8e{font-size:11.5px}.hd.svelte-148ev8e{display:flex;align-items:center;justify-content:space-between}.label.svelte-148ev8e{text-transform:uppercase;letter-spacing:.16em;color:var(--text-3);font-size:10px}.add.svelte-148ev8e{width:20px;height:20px;display:grid;place-items:center;padding:0;background:transparent;border:1px solid var(--border-2);border-radius:var(--radius-sm);color:var(--text-3);font-size:13px;line-height:1;cursor:pointer}.add.svelte-148ev8e:hover{color:var(--text);border-color:var(--accent)}.list.svelte-148ev8e{display:flex;flex-direction:column;gap:4px;margin-top:6px}.rows.svelte-148ev8e{display:flex;flex-direction:column;gap:4px;animation:ocrc-fade .15s var(--ease-out, ease-out)}.row.svelte-148ev8e{display:flex;align-items:center;gap:6px}.ico.svelte-148ev8e{flex-shrink:0}.name.svelte-148ev8e{flex:1;min-width:0;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.del.svelte-148ev8e{flex-shrink:0;padding:0 5px;min-width:18px;height:18px;background:transparent;border:none;border-radius:var(--radius-xs);color:var(--text-3);font-size:11px;cursor:pointer}.del.svelte-148ev8e:hover,.del.arm.svelte-148ev8e{color:var(--err)}.del.arm.svelte-148ev8e{border:1px solid var(--err)}.form.svelte-148ev8e{margin-top:8px;display:flex;gap:6px;align-items:center}.name-in.svelte-148ev8e{flex:1;min-width:0;padding:5px 8px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;font-size:11px;box-sizing:border-box}.name-in.svelte-148ev8e:focus{outline:1px solid var(--accent)}.err.svelte-148ev8e{color:var(--err);font-size:10.5px}.go.svelte-148ev8e{padding:4px 10px;background:var(--accent);border:none;border-radius:var(--radius-sm);color:var(--accent-ink);font:inherit;font-weight:600;cursor:pointer}.go.svelte-148ev8e:disabled{opacity:.45;cursor:default}.usage.svelte-q9r9ub{display:flex;flex-direction:column;gap:10px}.tiles.svelte-q9r9ub{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tile.svelte-q9r9ub{display:flex;flex-direction:column;gap:5px;padding:10px;background:var(--bg-elev);border-radius:var(--radius-sm)}.tile.svelte-q9r9ub .label:where(.svelte-q9r9ub){text-transform:uppercase;letter-spacing:.14em;color:var(--text-3);font-size:9.5px}.tile.svelte-q9r9ub .num:where(.svelte-q9r9ub){font-size:20px;font-weight:600;color:var(--text)}.spend.svelte-q9r9ub{color:var(--text-3);font-size:11px}.ctx.svelte-1h7zxuf{display:flex;flex-direction:column;gap:8px}.hd.svelte-1h7zxuf{display:flex;justify-content:space-between;align-items:center}.pct.svelte-1h7zxuf{font-family:var(--font-mono);color:var(--text-2);font-size:11px}.body.svelte-1h7zxuf{display:flex;align-items:baseline;gap:6px;color:var(--text)}.big.svelte-1h7zxuf{font-family:var(--font-mono);font-size:20px;font-weight:600}.max.svelte-1h7zxuf{font-family:var(--font-mono);color:var(--text-3);font-size:11px}.bar.svelte-1h7zxuf{height:7px;background:var(--bg-input);border-radius:var(--radius-bar);overflow:hidden}.fill.svelte-1h7zxuf{height:100%;width:100%;background:var(--accent);transform-origin:left;transition:transform .3s ease}.model.svelte-1h7zxuf{display:flex;align-items:center;gap:7px;color:var(--text-2);font-size:11px}.sq.svelte-1h7zxuf{width:8px;height:8px;border-radius:var(--radius-bar);background:var(--hl-cyan)}.cache.svelte-1h7zxuf{display:flex;align-items:center;gap:7px;color:var(--text-3);font-size:11px}.cdot.svelte-1h7zxuf{width:8px;height:8px;border-radius:var(--radius-bar);background:var(--hl-green)}.wd.svelte-1oo25bu{display:flex;flex-direction:column;gap:8px}.hd.svelte-1oo25bu{display:flex;justify-content:space-between;align-items:center}.section-label.svelte-1oo25bu{text-transform:uppercase;letter-spacing:.16em;color:var(--text-3);font-size:10px}.counts.svelte-1oo25bu{color:var(--text-2);font-size:11px}.counts.svelte-1oo25bu *{color:inherit}.repo-line.svelte-1oo25bu{color:var(--text-2);font-size:11px}.files.svelte-1oo25bu{color:var(--text-2);display:flex;flex-direction:column;gap:4px}.entry.svelte-1oo25bu{display:flex;flex-direction:column;background:var(--bg-elev);border-radius:var(--radius-sm);overflow:hidden}.f.svelte-1oo25bu{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;margin:0;border:none;background:transparent;color:inherit;font:inherit;text-align:left;white-space:nowrap;cursor:pointer}.f.svelte-1oo25bu:hover{background:var(--bg-elev2)}.f.svelte-1oo25bu:focus-visible{outline:1px solid var(--accent);outline-offset:1px;border-radius:var(--radius-bar)}.change.svelte-1oo25bu{width:8px;height:8px;border-radius:var(--radius-bar);flex-shrink:0}.nm.svelte-1oo25bu{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:rtl;text-align:left;font-size:11px}.cnt.svelte-1oo25bu{margin-left:auto;flex-shrink:0;display:inline-flex;align-items:center;gap:4px;font-size:11px}.cnt.svelte-1oo25bu .add:where(.svelte-1oo25bu){color:var(--ok)}.cnt.svelte-1oo25bu .del:where(.svelte-1oo25bu){color:var(--err)}.cnt.svelte-1oo25bu .sep:where(.svelte-1oo25bu){color:var(--text-3)}.diff.svelte-1oo25bu{margin:2px 6px 6px;padding:4px 6px;background:var(--bg);border:1px solid var(--border-2);border-radius:var(--radius-sm);overflow-x:auto}.line.svelte-1oo25bu{font-family:var(--font-mono);white-space:pre;line-height:1.45}.line.svelte-1oo25bu .pre:where(.svelte-1oo25bu){-webkit-user-select:none;user-select:none}.line.add.svelte-1oo25bu{color:var(--ok)}.line.del.svelte-1oo25bu{color:var(--err)}.line.ctx.svelte-1oo25bu{color:var(--text-3)}.fold.svelte-4p37uf{display:flex;flex-direction:column}.hd.svelte-4p37uf{display:flex;align-items:center;gap:6px;margin:0 0 2px -4px;padding:3px 4px;background:transparent;border:none;border-radius:var(--radius-xs);color:var(--text-3);cursor:pointer;text-align:left}.hd.svelte-4p37uf:hover{color:var(--text-2);background:var(--bg-elev)}.caret.svelte-4p37uf{width:11px;height:11px;flex-shrink:0;transition:transform .16s ease;transform:rotate(0)}.caret.open.svelte-4p37uf{transform:rotate(90deg)}.t.svelte-4p37uf{text-transform:uppercase;letter-spacing:.14em;font-size:9.5px;font-weight:600}.body.svelte-4p37uf{animation:ocrc-fade .15s var(--ease-out, ease-out)}.inspector.svelte-gu3dqx{width:var(--insp-w, 280px);flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-elev);border-left:1px solid var(--border-2)}.head.svelte-gu3dqx{padding:14px 16px;border-bottom:1px solid var(--border-2)}.section-label.svelte-gu3dqx{text-transform:uppercase;letter-spacing:.16em;color:var(--text-3);font-size:10px}.name.svelte-gu3dqx{margin-top:4px;display:flex;align-items:center;gap:6px;min-width:0;font-weight:600;font-size:13px;color:var(--text)}.title-text.svelte-gu3dqx{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pinned.svelte-gu3dqx{border-top:1px solid var(--border-2);padding:14px 16px 18px;display:flex;flex-direction:column;gap:12px}.divider.svelte-gu3dqx{border-top:1px solid var(--border-2)}@media (max-width: 820px){.inspector.svelte-gu3dqx{width:100%;height:100%;display:block;overflow-y:auto;-webkit-overflow-scrolling:touch}.pinned.svelte-gu3dqx{border-top:none}}.overlay.svelte-wh9uu8{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:flex-start;padding-top:84px;z-index:var(--z-overlay)}.backdrop.svelte-wh9uu8{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);border:none;padding:0;margin:0;cursor:default;animation:ocrc-fade .16s ease backwards}.palette.svelte-wh9uu8{position:relative;z-index:1;width:min(560px,92vw);max-height:calc(100vh - 120px);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-palette);display:flex;flex-direction:column;animation:ocrc-pop .16s var(--ease-out, ease-out) backwards}.header.svelte-wh9uu8{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--border);flex-shrink:0}.search-icon.svelte-wh9uu8{font-size:18px;color:var(--text-3);line-height:1;flex-shrink:0}.q.svelte-wh9uu8{flex:1;min-width:0;background:transparent;border:none;color:var(--text);font-family:var(--font-sans);font-size:16px;outline:none;padding:0}.q.svelte-wh9uu8::placeholder{color:var(--text-4)}.keycap.svelte-wh9uu8{flex-shrink:0;font-size:10px;color:var(--text-3);text-transform:uppercase;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-xs);padding:3px 6px}.results.svelte-wh9uu8{overflow-y:auto;padding:8px}.group.svelte-wh9uu8{display:flex;align-items:center;gap:8px;padding:8px 10px 4px}.group-icon.svelte-wh9uu8{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-xs);background:var(--accent-2);color:var(--accent);font-family:var(--font-mono);font-size:12px;font-weight:600}.group-label.svelte-wh9uu8{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--text-3)}.row.svelte-wh9uu8{display:flex;align-items:center;gap:10px;width:100%;background:transparent;border:none;color:var(--text);padding:7px 10px;border-radius:var(--radius-sm);cursor:pointer;text-align:left;transition:background .12s ease}.row.active.svelte-wh9uu8,.row.svelte-wh9uu8:hover:not(.disabled){background:var(--accent-2)}.row.disabled.svelte-wh9uu8{opacity:.5;cursor:default}.row.svelte-wh9uu8:disabled{opacity:.5;cursor:default}.tile.svelte-wh9uu8{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--radius-xs);background:var(--bg-panel);border:1px solid var(--border-2);color:var(--text-2);font-family:var(--font-mono);font-size:11px;font-weight:600}.label.svelte-wh9uu8{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13.5px;color:var(--text);text-transform:none;letter-spacing:normal}.hint.svelte-wh9uu8{flex-shrink:0;max-width:45%;font-size:11px;color:var(--text-4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}.empty.svelte-wh9uu8{padding:24px;text-align:center;color:var(--text-3);font-size:13.5px}.error.svelte-wh9uu8{padding:10px;color:var(--err);font-size:12px}.about.svelte-wh9uu8{padding:8px 14px 10px;border-top:1px solid var(--border-2);color:var(--text-4);font-size:10.5px}.overlay.svelte-cfrpez{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:flex-start;padding-top:84px;z-index:var(--z-modal)}.backdrop.svelte-cfrpez{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);border:none;padding:0;margin:0;cursor:default;animation:ocrc-fade .16s ease backwards}.modal.svelte-cfrpez{position:relative;z-index:1;width:min(460px,92vw);max-height:calc(100vh - 120px);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 24px 70px #0009;display:flex;flex-direction:column;overflow:hidden;animation:svelte-cfrpez-ocrc-pop .14s ease}@keyframes svelte-cfrpez-ocrc-pop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.header.svelte-cfrpez{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.title.svelte-cfrpez{font-size:15px;font-weight:600;color:var(--text)}.close.svelte-cfrpez{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-3);cursor:pointer;font-size:14px;transition:color .12s ease,background .12s ease,border-color .12s ease}.close.svelte-cfrpez:hover{color:var(--text);background:var(--bg-elev2);border-color:var(--border)}.body.svelte-cfrpez{padding:16px;display:flex;flex-direction:column;gap:18px;overflow-y:auto}.field.svelte-cfrpez{display:flex;flex-direction:column;gap:8px}.label.svelte-cfrpez{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--text-3)}.optional.svelte-cfrpez{font-weight:400;color:var(--text-4);text-transform:none;letter-spacing:normal}.agent-chips.svelte-cfrpez{display:flex;flex-wrap:wrap;gap:8px}.agent-chip.svelte-cfrpez{display:inline-flex;align-items:center;gap:7px;padding:5px 10px 5px 5px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-2);cursor:pointer;transition:border-color .12s ease,background .12s ease}.agent-chip.svelte-cfrpez:hover{border-color:var(--accent);background:var(--bg-elev2)}.agent-chip.selected.svelte-cfrpez{background:var(--accent-2);border-color:var(--accent-line);color:var(--text)}.chip-tile.svelte-cfrpez{width:22px;height:22px;display:inline-grid;place-items:center;border-radius:var(--radius-xs);border:1px solid transparent;font-family:var(--font-mono);font-size:9.5px;font-weight:700;flex-shrink:0}.chip-name.svelte-cfrpez{font-size:12px;font-weight:600}.chip-status.svelte-cfrpez{width:6px;height:6px;border-radius:50%;border:1.5px solid transparent;flex-shrink:0;box-sizing:border-box}.sr-only.svelte-cfrpez{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chip-status.online.svelte-cfrpez{background:var(--dot, var(--ok));border-color:var(--dot, var(--ok))}.chip-status.connecting.svelte-cfrpez{background:var(--warn);border-color:var(--warn);animation:ocrc-pulse 1.2s ease-in-out infinite}.chip-status.offline.svelte-cfrpez{background:transparent;border:1.5px solid var(--text-4)}.dir-input.svelte-cfrpez{display:flex;align-items:center;gap:0;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;transition:border-color .15s ease}.dir-input.svelte-cfrpez:focus-within{border-color:var(--accent)}.host-prefix.svelte-cfrpez{padding:8px 0 8px 10px;font-size:12.5px;color:var(--text-3);flex-shrink:0}.path.svelte-cfrpez{flex:1;min-width:0;background:transparent;border:none;color:var(--text);font-size:16px;padding:8px 10px;outline:none}.path.svelte-cfrpez::placeholder{color:var(--text-4)}.browse.svelte-cfrpez{border:none;border-left:1px solid var(--border);background:var(--bg-panel);color:var(--text-3);font-size:11px;font-weight:600;padding:0 12px;cursor:pointer;transition:color .12s ease,background .12s ease;flex-shrink:0}.browse.svelte-cfrpez:hover{color:var(--text);background:var(--bg-elev2)}.recents.svelte-cfrpez{display:none;flex-direction:column;gap:6px}.recents.open.svelte-cfrpez{display:flex}.recents-label.svelte-cfrpez{font-size:10px;color:var(--text-4);text-transform:uppercase;letter-spacing:.1em}.recents-list.svelte-cfrpez{display:flex;flex-direction:column;gap:2px;max-height:160px;overflow-y:auto;padding:4px;background:var(--bg-panel);border:1px solid var(--border-2);border-radius:var(--radius-sm)}.recent.svelte-cfrpez{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:6px 8px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text);cursor:pointer;text-align:left;transition:background .12s ease}.recent.svelte-cfrpez:hover{background:var(--bg-elev)}.recent-name.svelte-cfrpez{font-size:12px;font-weight:600;color:var(--text-2)}.recent-dir.svelte-cfrpez{font-size:10.5px;color:var(--text-4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.branch.svelte-cfrpez{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:16px;padding:8px 10px;outline:none;transition:border-color .15s ease}.branch.svelte-cfrpez:focus{border-color:var(--accent)}.branch.svelte-cfrpez::placeholder{color:var(--text-4)}.error.svelte-cfrpez{padding:10px 12px;background:color-mix(in srgb,var(--err) 12%,transparent);border:1px solid color-mix(in srgb,var(--err) 35%,transparent);border-radius:var(--radius-sm);color:var(--err);font-size:12px}.footer.svelte-cfrpez{display:flex;justify-content:flex-end;gap:10px;padding:14px 16px;border-top:1px solid var(--border);flex-shrink:0}.btn.svelte-cfrpez{padding:7px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:650;cursor:pointer;transition:opacity .12s ease,transform .12s ease;border:none}.btn.svelte-cfrpez:disabled{opacity:.5;cursor:default}.secondary.svelte-cfrpez{background:transparent;border:1px solid var(--border);color:var(--text-2)}.secondary.svelte-cfrpez:hover:not(:disabled){background:var(--bg-elev2);color:var(--text)}.primary.svelte-cfrpez{background:var(--accent);color:var(--accent-ink)}.primary.svelte-cfrpez:hover:not(:disabled){opacity:.9}.empty.svelte-cfrpez{padding:24px;text-align:center;color:var(--text-3);font-size:13.5px}@media (max-width: 820px){.overlay.svelte-cfrpez{align-items:flex-end;padding:0 0 calc(env(safe-area-inset-bottom,0px) + var(--kb, 0px));transition:padding-bottom .2s ease-out}.modal.svelte-cfrpez{width:100%;max-height:calc(86vh - var(--kb, 0px));border-bottom-left-radius:0;border-bottom-right-radius:0;animation:svelte-cfrpez-sheetin .22s ease}@keyframes svelte-cfrpez-sheetin{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}}.overlay.svelte-b8emeh{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:grid;place-items:center;padding:24px}.backdrop.svelte-b8emeh{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);border:none;padding:0;margin:0;cursor:default;animation:ocrc-fade .16s ease backwards}.modal.svelte-b8emeh{position:relative;width:min(880px,94vw);max-height:86vh;overflow:auto;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-palette);animation:ocrc-pop .16s var(--ease-out, ease-out) backwards}.header.svelte-b8emeh{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border-2)}.title.svelte-b8emeh{font-family:var(--font-serif);font-size:16px;font-weight:600;color:var(--text)}.close.svelte-b8emeh{background:transparent;border:none;color:var(--text-3);font-size:14px;cursor:pointer}.cols.svelte-b8emeh{display:flex;gap:14px;padding:14px 18px}.list.svelte-b8emeh{width:170px;flex-shrink:0;display:flex;flex-direction:column;gap:6px}.ch.svelte-b8emeh{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:8px 10px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;text-align:left;cursor:pointer}.ch-logo.svelte-b8emeh{display:grid;place-items:center}.ch.sel.svelte-b8emeh{border-color:var(--accent);background:var(--accent-2)}.ch-state.svelte-b8emeh{font-size:10px;color:var(--text-3)}.ch-state.on.svelte-b8emeh{color:var(--ok, var(--accent))}.detail.svelte-b8emeh{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px}.d-hd.svelte-b8emeh{display:flex;align-items:center;justify-content:space-between}.d-name.svelte-b8emeh{font-family:var(--font-serif);font-size:15px;font-weight:600;color:var(--text)}.switch.svelte-b8emeh{width:40px;height:22px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-input);display:grid;align-items:center;padding:0 2px;cursor:pointer}.switch.svelte-b8emeh .knob:where(.svelte-b8emeh){width:14px;height:14px;border-radius:50%;background:var(--text-3);transition:transform .16s ease,background .16s ease}.switch.on.svelte-b8emeh{border-color:var(--accent)}.switch.on.svelte-b8emeh .knob:where(.svelte-b8emeh){background:var(--accent);transform:translate(18px)}.note.svelte-b8emeh{margin:0;font-size:11.5px;color:var(--text-3)}.sec.svelte-b8emeh{border-top:1px solid var(--border-2);padding-top:10px}.danger.svelte-b8emeh{border-top-color:var(--err)}.sec-label.svelte-b8emeh{font-size:11px;color:var(--text-3);margin-bottom:6px}.cred.svelte-b8emeh{width:100%;box-sizing:border-box;padding:6px 8px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:11px}.cred.svelte-b8emeh:focus{outline:1px solid var(--accent)}.sec-acts.svelte-b8emeh{display:flex;align-items:center;gap:8px;margin-top:6px}.save.svelte-b8emeh{padding:4px 12px;background:var(--accent);border:none;border-radius:var(--radius-sm);color:var(--accent-ink);font:inherit;font-size:11.5px;font-weight:600;cursor:pointer}.opts.svelte-b8emeh{display:flex;flex-direction:column;gap:4px}.opt.svelte-b8emeh{padding:7px 10px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);font:inherit;font-size:12px;text-align:left;cursor:pointer}.opt.sel.svelte-b8emeh{border-color:var(--accent);color:var(--text);background:var(--accent-2)}.hint.svelte-b8emeh{font-size:10.5px;color:var(--text-3);margin:4px 0 0}.reset.svelte-b8emeh{padding:5px 12px;background:transparent;border:1px solid var(--err);border-radius:var(--radius-sm);color:var(--err);font:inherit;font-size:11.5px;cursor:pointer}.pair.svelte-b8emeh{border-top:1px solid var(--border-2);padding:12px 18px 16px}.pair-head.svelte-b8emeh{display:flex;align-items:flex-start;gap:10px;justify-content:space-between}.pair-title.svelte-b8emeh{font-size:12.5px;font-weight:650;color:var(--text)}.cd.svelte-b8emeh{font-weight:500;color:var(--text-3);font-size:11.5px;margin-left:4px}.cd.expired.svelte-b8emeh{color:var(--warn)}.stop.svelte-b8emeh{flex-shrink:0;padding:4px 12px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);font:inherit;font-size:11.5px;cursor:pointer}.stop.svelte-b8emeh:hover{color:var(--err);border-color:var(--err)}.qr-big.svelte-b8emeh{position:relative;width:min(200px,70%);margin:14px auto 12px;background:#fff;padding:10px;border-radius:var(--radius);animation:ocrc-fade .18s var(--ease-out, ease-out)}.qr-big.svelte-b8emeh svg{width:100%;height:auto;display:block}.qr-big.dim.svelte-b8emeh svg{opacity:.18;filter:blur(1px)}.qr-expired.svelte-b8emeh{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text);font-size:12px;font-weight:600}.pair-acts.svelte-b8emeh{display:flex;align-items:center;gap:8px}.spacer.svelte-b8emeh{flex:1}.pair-stopped.svelte-b8emeh{display:flex;align-items:center;gap:10px;padding:10px 0 2px;color:var(--text-2);font-size:12px}.copy.svelte-b8emeh{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);font:inherit;font-size:11.5px;cursor:pointer}.copy.svelte-b8emeh:hover{border-color:var(--accent);color:var(--text)}.overlay.svelte-1r7zhoh{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);pointer-events:none}.backdrop.svelte-1r7zhoh{position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;border:none;padding:0;margin:0;cursor:default;pointer-events:auto}.menu.svelte-1r7zhoh{position:absolute;z-index:1;min-width:180px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 18px 50px #0000008c;padding:6px;display:flex;flex-direction:column;gap:2px;pointer-events:auto;animation:svelte-1r7zhoh-ocrc-pop .14s ease}@keyframes svelte-1r7zhoh-ocrc-pop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.item.svelte-1r7zhoh{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text);cursor:pointer;text-align:left;transition:background .12s ease}.item.svelte-1r7zhoh:hover{background:var(--accent-2)}.icon.svelte-1r7zhoh{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-xs);background:var(--bg-panel);border:1px solid var(--border-2);color:var(--text-2);font-size:12px;flex-shrink:0}.label.svelte-1r7zhoh{flex:1;font-size:13px;font-weight:500}.keycap.svelte-1r7zhoh{flex-shrink:0;font-size:10px;color:var(--text-3);text-transform:uppercase;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-xs);padding:2px 5px}@media (max-width: 820px){.overlay.svelte-1r7zhoh{display:flex;align-items:flex-end;justify-content:center;padding:0 0 env(safe-area-inset-bottom,0);pointer-events:auto;background:var(--scrim)}.menu.svelte-1r7zhoh{position:relative;top:auto!important;left:auto!important;width:100%;max-width:100%;border-bottom-left-radius:0;border-bottom-right-radius:0;animation:svelte-1r7zhoh-sheetin .18s ease}@keyframes svelte-1r7zhoh-sheetin{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}}.fab-root.svelte-9zfapn{display:none}@media (max-width: 820px){.fab-root.svelte-9zfapn{display:block}}.scrim.svelte-9zfapn{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-fab);background:var(--scrim);border:none;padding:0;cursor:default;animation:svelte-9zfapn-fade .16s ease}@keyframes svelte-9zfapn-fade{0%{opacity:0}to{opacity:1}}.fab.svelte-9zfapn{position:fixed;z-index:var(--z-fab);right:18px;bottom:calc(76px + env(safe-area-inset-bottom,0px) + var(--kb, 0px));width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);border:none;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 8px 24px #0006;transition:transform .2s ease}.fab.rot.svelte-9zfapn{transform:rotate(45deg)}.fab.svelte-9zfapn:active{transform:scale(.94)}.fab.rot.svelte-9zfapn:active{transform:rotate(45deg) scale(.94)}.dial.svelte-9zfapn{position:fixed;z-index:var(--z-fab);right:20px;bottom:calc(146px + env(safe-area-inset-bottom,0px) + var(--kb, 0px));display:flex;flex-direction:column;align-items:flex-end;gap:12px}.dial-item.svelte-9zfapn{display:flex;align-items:center;gap:10px;background:transparent;border:none;padding:0;cursor:pointer;animation:svelte-9zfapn-rise .16s ease both}@keyframes svelte-9zfapn-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.dial-label.svelte-9zfapn{font-size:12px;color:var(--text);background:var(--bg-elev);border:1px solid var(--border);padding:6px 10px;border-radius:var(--radius-xs);white-space:nowrap;box-shadow:0 4px 14px #0000004d}.dial-icon.svelte-9zfapn{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:18px;background:var(--bg-elev2);color:var(--text);border:1px solid var(--border)}.gate.svelte-9s687p{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-gate);display:flex;align-items:center;justify-content:center;background:var(--bg);padding:24px;padding-top:calc(24px + env(safe-area-inset-top,0px));padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));overflow-y:auto}.panel.svelte-9s687p{width:min(1060px,100%);background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:22px 26px;display:flex;flex-direction:column;gap:14px;animation:ocrc-pop var(--dur-enter, .2s) var(--ease-out, ease-out) backwards}.head.svelte-9s687p{display:flex;gap:14px;align-items:center}.hicon.svelte-9s687p{width:52px;height:52px;flex-shrink:0;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 8%,transparent);border:1px solid var(--border-2);border-radius:var(--radius)}.hicon.svelte-9s687p svg:where(.svelte-9s687p){width:34px;height:34px;display:block}h1.svelte-9s687p{margin:0;font-size:17px;color:var(--text);font-weight:700}.sub.svelte-9s687p{margin:2px 0 0;font-size:12.5px;color:var(--text-2)}.cols.svelte-9s687p{display:grid;grid-template-columns:1.25fr 1fr;gap:16px}@media (max-width: 860px){.cols.svelte-9s687p{grid-template-columns:1fr}}.scan.svelte-9s687p,.channels.svelte-9s687p{border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;display:flex;flex-direction:column;gap:10px}.sec-head.svelte-9s687p{display:flex;align-items:center;gap:8px;justify-content:space-between;flex-wrap:wrap}.sec-title.svelte-9s687p{font-size:13px;font-weight:650;color:var(--text)}.chip.svelte-9s687p{font-size:10.5px;color:var(--text-2);background:var(--bg-elev);border:1px solid var(--border);padding:2px 8px;border-radius:var(--radius-pill)}.wait-row.svelte-9s687p{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.wait.done.svelte-9s687p{color:var(--ok, #2e9e6b)}.btn.enter.svelte-9s687p{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.wait.svelte-9s687p{font-size:12px;color:var(--text);font-weight:600}.cd.svelte-9s687p{font-weight:500;color:var(--text-3)}.cd.expired.svelte-9s687p{color:var(--warn)}.qr-wrap.svelte-9s687p{position:relative;width:min(230px,80%);margin:4px auto;background:#fff;padding:12px;border-radius:var(--radius);border:1px dashed var(--border-2)}.qr-wrap.svelte-9s687p svg{width:100%;height:auto;display:block}.qr-re.svelte-9s687p{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text);font-size:12.5px;font-weight:600}.acts.svelte-9s687p{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.spacer.svelte-9s687p{flex:1}.btn.svelte-9s687p{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);font:inherit;font-size:12px;cursor:pointer}.btn.svelte-9s687p:hover{border-color:var(--accent);color:var(--text)}.ch.svelte-9s687p{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:default}.lock.svelte-9s687p{margin-left:auto;font-size:12px;opacity:.65;flex-shrink:0}.ch-icon.svelte-9s687p{display:grid;place-items:center;flex-shrink:0}.ch-name.svelte-9s687p{font-size:12.5px;font-weight:650;color:var(--text);display:flex;gap:8px;align-items:baseline}.ok.svelte-9s687p{font-size:10.5px;color:var(--ok, #2e9e6b);font-weight:600}.off.svelte-9s687p{font-size:10.5px;color:var(--text-3);font-weight:500}.ch-note.svelte-9s687p{font-size:11.5px;color:var(--text-3);margin-top:2px}.hint.svelte-9s687p{font-size:11.5px;color:var(--text-3);margin:0;line-height:1.5}.dim.svelte-9s687p{color:var(--text-3)}.rejected.svelte-9s687p{margin:0;font-size:12.5px;color:var(--err)}.paste.svelte-9s687p{border-top:1px solid var(--border-2);padding-top:10px}.paste.svelte-9s687p summary:where(.svelte-9s687p){cursor:pointer;font-size:12px;color:var(--text-2)}.paste-body.svelte-9s687p{display:flex;flex-direction:column;gap:8px;padding-top:10px}.field.svelte-9s687p{padding:9px 11px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:12.5px}.field.svelte-9s687p:focus{outline:none;border-color:var(--accent-line)}.err.svelte-9s687p{font-size:12px;color:var(--err)}.connect.svelte-9s687p{align-self:flex-start;padding:8px 18px;background:var(--accent);border:1px solid var(--accent);color:var(--accent-ink);border-radius:var(--radius-sm);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer}.connect.svelte-9s687p:disabled{opacity:.45;cursor:default}.foot.svelte-9s687p{border-top:1px solid var(--border-2);padding-top:10px}.app.svelte-12qhfyh{position:fixed;top:0;left:0;right:0;display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg)}.body.svelte-12qhfyh{display:flex;flex:1;overflow:hidden;position:relative}main.svelte-12qhfyh{position:relative;flex:1;overflow:hidden;display:flex;flex-direction:column;min-width:0;background:var(--bg-canvas, var(--bg));border-radius:var(--radius) var(--radius) 0 0}.rail-wrap.svelte-12qhfyh{display:block;width:var(--rail-w, 250px);flex-shrink:0;overflow:hidden;position:relative;z-index:1;transition:transform .22s ease}.rail-wrap.collapsed.svelte-12qhfyh{transform:translate(-100%);margin-right:calc(-1 * var(--rail-w, 250px))}.inspector-wrap.svelte-12qhfyh{display:contents}.divider.svelte-12qhfyh{width:6px;flex-shrink:0;margin:0 -3px;z-index:5;cursor:col-resize;background:transparent;transition:background .15s ease}.divider.svelte-12qhfyh:hover,.divider.resizing.svelte-12qhfyh{background:color-mix(in srgb,var(--accent) 35%,transparent)}.backdrop.svelte-12qhfyh{display:none}@media (max-width: 820px){.rail-wrap.svelte-12qhfyh{display:block;position:absolute;top:0;bottom:0;left:0;z-index:var(--z-drawer);width:100%;overflow:hidden;margin-right:0;transition:transform .24s var(--ease, ease);transform:translate(-100%)}.rail-wrap.open.svelte-12qhfyh{transform:translate(0)}.inspector-wrap.svelte-12qhfyh{display:block;position:absolute;left:0;right:0;bottom:var(--kb, 0px);top:auto;z-index:var(--z-sheet);width:100%;height:min(82vh,580px);overflow:hidden;transition:transform .24s ease;transform:translateY(calc(100% + var(--kb, 0px)));border-radius:var(--radius) var(--radius) 0 0;box-shadow:0 -10px 44px #0000008c}.inspector-wrap.open.svelte-12qhfyh{transform:translateY(0)}.rail-wrap.svelte-12qhfyh .agent-panel,.rail-wrap.svelte-12qhfyh .panel{width:100%}.inspector-wrap.svelte-12qhfyh .inspector{width:100%;height:100%}.backdrop.svelte-12qhfyh{display:block;position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-backdrop);background:var(--scrim);border:none;padding:0;cursor:default;animation:svelte-12qhfyh-fade .18s ease}@keyframes svelte-12qhfyh-fade{0%{opacity:0}to{opacity:1}}}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{z as Ne,ai as p,ag as Z,a8 as ie,aG as Re,k as He,aV as fe,aP as F,aQ as K,ah as D,a as _e,H as Ie,ak as le,U as I,T as U,g as b,G as $,a0 as Oe,aT as De,Z as ze,am as Pe,x as ee,f as Fe,e as xe,au as Ge,aW as oe,E as Ve,D as Be,aL as Me,aA as me,I as q,B as Ye,K as Ke,at as Ue,_ as qe,ac as O,aF as B,ad as Ee,d as Ae,c as We,a$ as Se,u as Xe,y as W,aH as Je,aj as Qe,i as Ze,R as $e,o as je,n as er,C as ce,t as ue,m as rr,A as ar,N as nr,ae as tr,ab as sr,l as be,F as ir,v as fr,ar as Te,b1 as lr,b4 as we,aJ as ke,al as or,a_ as cr,b8 as m,w as ur,a7 as dr,V as vr,aK as hr}from"./BjY4dxcB.js";import{b as pr}from"./
|
|
1
|
+
import{z as Ne,ai as p,ag as Z,a8 as ie,aG as Re,k as He,aV as fe,aP as F,aQ as K,ah as D,a as _e,H as Ie,ak as le,U as I,T as U,g as b,G as $,a0 as Oe,aT as De,Z as ze,am as Pe,x as ee,f as Fe,e as xe,au as Ge,aW as oe,E as Ve,D as Be,aL as Me,aA as me,I as q,B as Ye,K as Ke,at as Ue,_ as qe,ac as O,aF as B,ad as Ee,d as Ae,c as We,a$ as Se,u as Xe,y as W,aH as Je,aj as Qe,i as Ze,R as $e,o as je,n as er,C as ce,t as ue,m as rr,A as ar,N as nr,ae as tr,ab as sr,l as be,F as ir,v as fr,ar as Te,b1 as lr,b4 as we,aJ as ke,al as or,a_ as cr,b8 as m,w as ur,a7 as dr,V as vr,aK as hr}from"./BjY4dxcB.js";import{b as pr}from"./_bauirnP.js";import"./CWj6FrbW.js";import"./TuGPYaVf.js";import{p as de}from"./C2FuqD3s.js";function Pr(e,r){return r}function gr(e,r,a){for(var n=[],s=r.length,i,t=r.length,u=0;u<s;u++){let _=r[u];me(_,()=>{if(i){if(i.pending.delete(_),i.done.add(_),i.pending.size===0){var d=e.outrogroups;j(e,ee(i.done)),d.delete(i),d.size===0&&(e.outrogroups=null)}}else t-=1},!1)}if(t===0){var c=n.length===0&&a!==null;if(c){var f=a,o=f.parentNode;Ke(o),o.append(f),e.items.clear()}j(e,r,!c)}else i={pending:new Set(r),done:new Set},(e.outrogroups??(e.outrogroups=new Set)).add(i)}function j(e,r,a=!0){var n;if(e.pending.size>0){n=new Set;for(const t of e.pending.values())for(const u of t)n.add(e.items.get(u).e)}for(var s=0;s<r.length;s++){var i=r[s];if(n!=null&&n.has(i)){i.f|=b;const t=document.createDocumentFragment();Ue(i,t)}else qe(r[s],a)}}var ve;function Fr(e,r,a,n,s,i=null){var t=e,u=new Map,c=(r&Ae)!==0;if(c){var f=e;t=p?F(O(f)):f.appendChild(U())}p&&Z();var o=null,_=ze(()=>{var h=a();return Pe(h)?h:h==null?[]:ee(h)}),d,M=new Map,g=!0;function L(h){w.effect.f&Be||(w.pending.delete(h),w.fallback=o,_r(w,d,t,r,n),o!==null&&(d.length===0?o.f&b?(o.f^=b,P(o,null,t)):Me(o):me(o,()=>{o=null})))}function l(h){w.pending.delete(h)}var v=Ne(()=>{d=ie(_);var h=d.length;let A=!1;if(p){var x=Re(t)===He;x!==(h===0)&&(t=fe(),F(t),K(!1),A=!0)}for(var k=new Set,E=I,R=De(),C=0;C<h;C+=1){p&&D.nodeType===_e&&D.data===Ie&&(t=D,A=!0,K(!1));var H=d[C],N=n(H,C),S=g?null:u.get(N);S?(S.v&&le(S.v,H),S.i&&le(S.i,C),R&&E.unskip_effect(S.e)):(S=Mr(u,g?t:ve??(ve=U()),H,N,C,s,r,a),g||(S.e.f|=b),u.set(N,S)),k.add(N)}if(h===0&&i&&!o&&(g?o=$(()=>i(t)):(o=$(()=>i(ve??(ve=U()))),o.f|=b)),h>k.size&&Oe(),p&&h>0&&F(fe()),!g)if(M.set(E,k),R){for(const[G,V]of u)k.has(G)||E.skip_effect(V.e);E.oncommit(L),E.ondiscard(l)}else L(E);A&&K(!0),ie(_)}),w={effect:v,items:u,pending:M,outrogroups:null,fallback:o};g=!1,p&&(t=D)}function z(e){for(;e!==null&&!(e.f&Ye);)e=e.next;return e}function _r(e,r,a,n,s){var H,N,S,G,V,re,ae,ne,te;var i=(n&We)!==0,t=r.length,u=e.items,c=z(e.effect.first),f,o=null,_,d=[],M=[],g,L,l,v;if(i)for(v=0;v<t;v+=1)g=r[v],L=s(g,v),l=u.get(L).e,l.f&b||((N=(H=l.nodes)==null?void 0:H.a)==null||N.measure(),(_??(_=new Set)).add(l));for(v=0;v<t;v+=1){if(g=r[v],L=s(g,v),l=u.get(L).e,e.outrogroups!==null)for(const T of e.outrogroups)T.pending.delete(l),T.done.delete(l);if(l.f&q&&(Me(l),i&&((G=(S=l.nodes)==null?void 0:S.a)==null||G.unfix(),(_??(_=new Set)).delete(l))),l.f&b)if(l.f^=b,l===c)P(l,null,a);else{var w=o?o.next:c;l===e.effect.last&&(e.effect.last=l.prev),l.prev&&(l.prev.next=l.next),l.next&&(l.next.prev=l.prev),y(e,o,l),y(e,l,w),P(l,w,a),o=l,d=[],M=[],c=z(o.next);continue}if(l!==c){if(f!==void 0&&f.has(l)){if(d.length<M.length){var h=M[0],A;o=h.prev;var x=d[0],k=d[d.length-1];for(A=0;A<d.length;A+=1)P(d[A],h,a);for(A=0;A<M.length;A+=1)f.delete(M[A]);y(e,x.prev,k.next),y(e,o,x),y(e,k,h),c=h,o=k,v-=1,d=[],M=[]}else f.delete(l),P(l,c,a),y(e,l.prev,l.next),y(e,l,o===null?e.effect.first:o.next),y(e,o,l),o=l;continue}for(d=[],M=[];c!==null&&c!==l;)(f??(f=new Set)).add(c),M.push(c),c=z(c.next);if(c===null)continue}l.f&b||d.push(l),o=l,c=z(l.next)}if(e.outrogroups!==null){for(const T of e.outrogroups)T.pending.size===0&&(j(e,ee(T.done)),(V=e.outrogroups)==null||V.delete(T));e.outrogroups.size===0&&(e.outrogroups=null)}if(c!==null||f!==void 0){var E=[];if(f!==void 0)for(l of f)l.f&q||E.push(l);for(;c!==null;)!(c.f&q)&&c!==e.fallback&&E.push(c),c=z(c.next);var R=E.length;if(R>0){var C=n&Ae&&t===0?a:null;if(i){for(v=0;v<R;v+=1)(ae=(re=E[v].nodes)==null?void 0:re.a)==null||ae.measure();for(v=0;v<R;v+=1)(te=(ne=E[v].nodes)==null?void 0:ne.a)==null||te.fix()}gr(e,E,C)}}i&&B(()=>{var T,se;if(_!==void 0)for(l of _)(se=(T=l.nodes)==null?void 0:T.a)==null||se.apply()})}function Mr(e,r,a,n,s,i,t,u){var c=t&Fe?t&xe?oe(a):Ge(a,!1,!1):null,f=t&Ve?oe(s):null;return{v:c,i:f,e:$(()=>(i(r,c??a,f??s,u),()=>{e.delete(n)}))}}function P(e,r,a){if(e.nodes)for(var n=e.nodes.start,s=e.nodes.end,i=r&&!(r.f&b)?r.nodes.start:a;n!==null;){var t=Ee(n);if(i.before(n),n===s)return;n=t}}function y(e,r,a){r===null?e.effect.first=a:r.next=a,a===null?e.effect.last=r:a.prev=r}function mr(e,r,a=!1,n=!1,s=!1,i=!1){var t=e,u="";if(a){var c=e;p&&(t=F(O(c)))}Se(()=>{var f=Xe;if(u===(u=r()??"")){p&&Z();return}if(a&&!p){f.nodes=null,c.innerHTML=u,u!==""&&W(O(c),c.lastChild);return}if(f.nodes!==null&&(Je(f.nodes.start,f.nodes.end),f.nodes=null),u!==""){if(p){D.data;for(var o=Z(),_=o;o!==null&&(o.nodeType!==_e||o.data!=="");)_=o,o=Ee(o);if(o===null)throw Qe(),Ze;W(D,_),t=F(o);return}var d=n?je:s?er:void 0,M=$e(n?"svg":s?"math":"template",d);M.innerHTML=u;var g=n||s?M:M.content;if(W(O(g),g.lastChild),n||s)for(;O(g);)t.before(O(g));else t.before(g)}})}const he=[...`
|
|
2
2
|
\r\f \v\uFEFF`];function Er(e,r,a){var n=e==null?"":""+e;if(r&&(n=n?n+" "+r:r),a){for(var s of Object.keys(a))if(a[s])n=n?n+" "+s:s;else if(n.length)for(var i=s.length,t=0;(t=n.indexOf(s,t))>=0;){var u=t+i;(t===0||he.includes(n[t-1]))&&(u===n.length||he.includes(n[u]))?n=(t===0?"":n.substring(0,t))+n.substring(u+1):t=u}}return n===""?null:n}function Ar(e,r){return e==null?null:String(e)}function xr(e,r,a,n,s,i){var t=e[ce];if(p||t!==a||t===void 0){var u=Er(a,n,i);(!p||u!==e.getAttribute("class"))&&(u==null?e.removeAttribute("class"):r?e.className=u:e.setAttribute("class",u)),e[ce]=a}else if(i&&s!==i)for(var c in i){var f=!!i[c];(s==null||f!==!!s[c])&&e.classList.toggle(c,f)}return i}function Gr(e,r,a,n){var s=e[ue];if(p||s!==r){var i=Ar(r);(!p||i!==e.getAttribute("style"))&&(i==null?e.removeAttribute("style"):e.style.cssText=i),e[ue]=r}return n}const Sr=Symbol("is custom element"),br=Symbol("is html"),Tr=be?"link":"LINK",wr=be?"progress":"PROGRESS";function Vr(e){if(p){var r=!1,a=()=>{if(!r){if(r=!0,e.hasAttribute("value")){var n=e.value;Y(e,"value",null),e.value=n}if(e.hasAttribute("checked")){var s=e.checked;Y(e,"checked",null),e.checked=s}}};e[ir]=a,B(a),fr()}}function Br(e,r){var a=Ce(e);a.value===(a.value=r??void 0)||e.value===r&&(r!==0||e.nodeName!==wr)||(e.value=r??"")}function Y(e,r,a,n){var s=Ce(e);p&&(s[r]=e.getAttribute(r),r==="src"||r==="srcset"||r==="href"&&e.nodeName===Tr)||s[r]!==(s[r]=a)&&(r==="loading"&&(e[rr]=a),a==null?e.removeAttribute(r):typeof a!="string"&&kr(e).includes(r)?e[r]=a:e.setAttribute(r,a))}function Ce(e){var r;return e[r=ar]??(e[r]={[Sr]:e.nodeName.includes("-"),[br]:e.namespaceURI===nr})}var pe=new Map;function kr(e){var r=e.getAttribute("is")||e.nodeName,a=pe.get(r);if(a)return a;pe.set(r,a=[]);for(var n,s=e,i=Element.prototype;i!==s;){n=sr(s);for(var t in n)n[t].set&&t!=="innerHTML"&&t!=="textContent"&&t!=="innerText"&&a.push(t);s=tr(s)}return a}function Yr(e,r,a=r){var n=new WeakSet;Te(e,"input",async s=>{var i=s?e.defaultValue:e.value;if(i=J(e)?Q(i):i,a(i),I!==null&&n.add(I),await lr(),i!==(i=r())){var t=e.selectionStart,u=e.selectionEnd,c=e.value.length;if(e.value=i??"",u!==null){var f=e.value.length;t===u&&u===c&&f>c?(e.selectionStart=f,e.selectionEnd=f):(e.selectionStart=t,e.selectionEnd=Math.min(u,f))}}}),(p&&e.defaultValue!==e.value||we(r)==null&&e.value)&&(a(J(e)?Q(e.value):e.value),I!==null&&n.add(I)),ke(()=>{var s=r();if(e===document.activeElement){var i=I;if(n.has(i))return}J(e)&&s===Q(e.value)||e.type==="date"&&!s&&!e.value||s!==e.value&&(e.value=s??"")})}const X=new Set;function Kr(e,r,a,n,s=n){var i=a.getAttribute("type")==="checkbox",t=e;let u=!1;if(r!==null)for(var c of r)t=t[c]??(t[c]=[]);t.push(a),Te(a,"change",()=>{var f=a.__value;i&&(f=ge(t,f,a.checked)),s(f)},()=>s(i?[]:null)),ke(()=>{var f=n();if(p&&a.defaultChecked!==a.checked){u=!0;return}i?(f=f||[],a.checked=f.includes(a.__value)):a.checked=or(a.__value,f)}),cr(()=>{var f=t.indexOf(a);f!==-1&&t.splice(f,1)}),X.has(t)||(X.add(t),B(()=>{t.sort((f,o)=>f.compareDocumentPosition(o)===4?-1:1),X.delete(t)})),B(()=>{if(u){var f;if(i)f=ge(t,f,a.checked);else{var o=t.find(_=>_.checked);f=o==null?void 0:o.__value}s(f)}})}function ge(e,r,a){for(var n=new Set,s=0;s<e.length;s+=1)e[s].checked&&n.add(e[s].__value);return a||n.delete(r),Array.from(n)}function J(e){var r=e.type;return r==="number"||r==="range"}function Q(e){return e===""?null:+e}function Ur(e){return function(...r){var a=r[0];return a.stopPropagation(),e==null?void 0:e.apply(this,r)}}function qr(e){return function(...r){var a=r[0];return a.preventDefault(),e==null?void 0:e.apply(this,r)}}const Cr=()=>{const e=pr;return{page:{subscribe:e.page.subscribe},navigating:{subscribe:e.navigating.subscribe},updated:e.updated}},Wr={subscribe(e){return Cr().page.subscribe(e)}},Xr=m("offline"),Jr=m(0),Qr=m(!1),Zr=m(!0),$r=m(!1),jr=m(!1),ea=m(!1),ra=m(!1),aa=m(!1),na=m(void 0),ta=m(!0),yr="ocrc-theme";function ye(){if(typeof document<"u"){const e=document.documentElement.getAttribute("data-theme");if(e==="light"||e==="dark")return e}return typeof matchMedia<"u"&&matchMedia("(prefers-color-scheme: light)").matches?"light":"dark"}function Le(e){const r=e==="light"?"#faf9f6":"#0d0d0d";document.querySelectorAll('meta[name="theme-color"]').forEach(a=>a.setAttribute("content",r))}const Lr=m(ye());typeof document<"u"&&Le(ye());function sa(){Lr.update(e=>{const r=e==="light"?"dark":"light";try{localStorage.setItem(yr,r)}catch{}return document.documentElement.setAttribute("data-theme",r),Le(r),r})}var Nr=dr('<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"></svg>');function ia(e,r){const a={menu:'<path d="M4 7h16M4 12h16M4 17h16"/>',sun:'<circle cx="12" cy="12" r="4"/><path d="M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4"/>',moon:'<path d="M21 12.8A9 9 0 1 1 11.2 3 7 7 0 0 0 21 12.8z"/>',"caret-down":'<path d="M6 9l6 6 6-6"/>',"caret-right":'<path d="M9 6l6 6-6 6"/>',search:'<circle cx="11" cy="11" r="7"/><path d="M21 21l-4.3-4.3"/>',check:'<path d="M20 6L9 17l-5-5"/>',copy:'<rect x="9" y="9" width="11" height="11" rx="2"/><path d="M5 15V5a2 2 0 0 1 2-2h10"/>',refresh:'<path d="M20.5 15a9 9 0 1 1-2.2-9.5L21 8"/><path d="M21 3v5h-5"/>',alert:'<path d="M12 3l10 17H2L12 3z"/><path d="M12 10v4"/><path d="M12 17.6v.4"/>',close:'<path d="M6 6l12 12M18 6L6 18"/>',gear:'<circle cx="12" cy="12" r="3"/><path d="M12 2v3M12 19v3M4.6 4.6l2.1 2.1M17.3 17.3l2.1 2.1M2 12h3M19 12h3M4.6 19.4l2.1-2.1M17.3 6.7l2.1-2.1"/>',bolt:'<path d="M13 2L4 14h6l-1 8 9-12h-6l1-8z"/>',cpu:'<rect x="5" y="5" width="14" height="14" rx="2"/><rect x="10" y="10" width="4" height="4"/><path d="M9 2v3M15 2v3M9 19v3M15 19v3M2 9h3M2 15h3M19 9h3M19 15h3"/>',plus:'<path d="M12 5v14M5 12h14"/>',"arrow-down":'<path d="M12 5v14"/><path d="M19 12l-7 7-7-7"/>'};let n=de(r,"name",8,""),s=de(r,"size",8,16);var i=Nr();mr(i,()=>(vr(n()),we(()=>a[n()]??"")),!0),hr(i),Se(()=>{Y(i,"width",s()),Y(i,"height",s())}),ur(e,i)}const fa=m([]),la=m(null);function Rr(e){const r=String(e??"").toLowerCase();return r==="completed"||r==="done"?"done":r==="in_progress"||r==="running"||r==="active"?"running":"pending"}function oa(e){const a=(Array.isArray(e)?e:[]).map(n=>({text:String((n==null?void 0:n.content)??(n==null?void 0:n.text)??(n==null?void 0:n.title)??""),status:Rr(n==null?void 0:n.status)}));return{total:a.length,done:a.filter(n=>n.status==="done").length,items:a}}export{Lr as A,sa as B,fa as C,ia as I,la as a,Kr as b,Yr as c,ea as d,na as e,ta as f,Xr as g,Fr as h,aa as i,mr as j,Pr as k,ra as l,Jr as m,Zr as n,jr as o,Wr as p,Qr as q,$r as r,qr as s,Vr as t,Y as u,xr as v,Gr as w,Br as x,Ur as y,oa as z};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var tt=e=>{throw TypeError(e)};var Dt=(e,t,n)=>t.has(e)||tt("Cannot "+n);var y=(e,t,n)=>(Dt(e,t,"read from private field"),n?n.call(e):t.get(e)),A=(e,t,n)=>t.has(e)?tt("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n);import{b8 as Ve,az as nt,aX as T,a8 as I,aO as P,b1 as _e,aZ as qt,aS as Vt}from"./BjY4dxcB.js";class Me{constructor(t,n){this.status=t,typeof n=="string"?this.body={message:n}:n?this.body=n:this.body={message:`Error: ${t}`}}toString(){return JSON.stringify(this.body)}}class Be{constructor(t,n){try{new Headers({location:n})}catch{throw new Error(`Invalid redirect location ${JSON.stringify(n)}: this string contains characters that cannot be used in HTTP headers`)}this.status=t,this.location=n}}class Ke extends Error{constructor(t,n,a){super(a),this.status=t,this.text=n}}new URL("sveltekit-internal://");function Mt(e,t){return e==="/"||t==="ignore"?e:t==="never"?e.endsWith("/")?e.slice(0,-1):e:t==="always"&&!e.endsWith("/")?e+"/":e}function Bt(e){return e.split("%25").map(decodeURI).join("%25")}function Kt(e){for(const t in e)e[t]=decodeURIComponent(e[t]);return e}function Pe({href:e}){return e.split("#")[0]}function j(){}function Ft(...e){let t=5381;for(const n of e)if(typeof n=="string"){let a=n.length;for(;a;)t=t*33^n.charCodeAt(--a)}else if(ArrayBuffer.isView(n)){const a=new Uint8Array(n.buffer,n.byteOffset,n.byteLength);let r=a.length;for(;r;)t=t*33^a[--r]}else throw new TypeError("value must be a string or TypedArray");return(t>>>0).toString(36)}new TextEncoder;function Gt(e){const t=atob(e),n=new Uint8Array(t.length);for(let a=0;a<t.length;a++)n[a]=t.charCodeAt(a);return n}const Ht=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:(t==null?void 0:t.method)||"GET")!=="GET"&&X.delete(Fe(e)),Ht(e,t));const X=new Map;function Wt(e,t){const n=Fe(e,t),a=document.querySelector(n);if(a!=null&&a.textContent){a.remove();let{body:r,...i}=JSON.parse(a.textContent);const o=a.getAttribute("data-ttl");return o&&X.set(n,{body:r,init:i,ttl:1e3*Number(o)}),a.getAttribute("data-b64")!==null&&(r=Gt(r)),Promise.resolve(new Response(r,i))}return window.fetch(e,t)}function zt(e,t,n){if(X.size>0){const a=Fe(e,n),r=X.get(a);if(r){if(performance.now()<r.ttl&&["default","force-cache","only-if-cached",void 0].includes(n==null?void 0:n.cache))return new Response(r.body,r.init);X.delete(a)}}return window.fetch(t,n)}function Fe(e,t){let a=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t!=null&&t.headers||t!=null&&t.body){const r=[];t.headers&&r.push([...new Headers(t.headers)].join(",")),t.body&&(typeof t.body=="string"||ArrayBuffer.isView(t.body))&&r.push(t.body),a+=`[data-hash="${Ft(...r)}"]`}return a}const Jt=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/;function Yt(e){const t=[];return{pattern:e==="/"?/^\/$/:new RegExp(`^${Zt(e).map(a=>{const r=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(a);if(r)return t.push({name:r[1],matcher:r[2],optional:!1,rest:!0,chained:!0}),"(?:/([^]*))?";const i=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(a);if(i)return t.push({name:i[1],matcher:i[2],optional:!0,rest:!1,chained:!0}),"(?:/([^/]+))?";if(!a)return;const o=a.split(/\[(.+?)\](?!\])/);return"/"+o.map((l,c)=>{if(c%2){if(l.startsWith("x+"))return Oe(String.fromCharCode(parseInt(l.slice(2),16)));if(l.startsWith("u+"))return Oe(String.fromCharCode(...l.slice(2).split("-").map(m=>parseInt(m,16))));const d=Jt.exec(l),[,u,w,p,f]=d;return t.push({name:p,matcher:f,optional:!!u,rest:!!w,chained:w?c===1&&o[0]==="":!1}),w?"([^]*?)":u?"([^/]*)?":"([^/]+?)"}return Oe(l)}).join("")}).join("")}/?$`),params:t}}function Xt(e){return e!==""&&!/^\([^)]+\)$/.test(e)}function Zt(e){return e.slice(1).split("/").filter(Xt)}function Qt(e,t,n){const a={},r=e.slice(1),i=r.filter(s=>s!==void 0);let o=0;for(let s=0;s<t.length;s+=1){const l=t[s];let c=r[s-o];if(l.chained&&l.rest&&o&&(c=r.slice(s-o,s+1).filter(d=>d).join("/"),o=0),c===void 0)if(l.rest)c="";else continue;if(!l.matcher||n[l.matcher](c)){a[l.name]=c;const d=t[s+1],u=r[s+1];d&&!d.rest&&d.optional&&u&&l.chained&&(o=0),!d&&!u&&Object.keys(a).length===i.length&&(o=0);continue}if(l.optional&&l.chained){o++;continue}return}if(!o)return a}function Oe(e){return e.normalize().replace(/[[\]]/g,"\\$&").replace(/%/g,"%25").replace(/\//g,"%2[Ff]").replace(/\?/g,"%3[Ff]").replace(/#/g,"%23").replace(/[.*+?^${}()|\\]/g,"\\$&")}function en({nodes:e,server_loads:t,dictionary:n,matchers:a}){const r=new Set(t);return Object.entries(n).map(([s,[l,c,d]])=>{const{pattern:u,params:w}=Yt(s),p={id:s,exec:f=>{const m=u.exec(f);if(m)return Qt(m,w,a)},errors:[1,...d||[]].map(f=>e[f]),layouts:[0,...c||[]].map(o),leaf:i(l)};return p.errors.length=p.layouts.length=Math.max(p.errors.length,p.layouts.length),p});function i(s){const l=s<0;return l&&(s=~s),[l,e[s]]}function o(s){return s===void 0?s:[r.has(s),e[s]]}}function mt(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function rt(e,t,n=JSON.stringify){const a=n(t);try{sessionStorage[e]=a}catch{}}var ut;const U=((ut=globalThis.__sveltekit_xfpk66)==null?void 0:ut.base)??"";var dt;const tn=((dt=globalThis.__sveltekit_xfpk66)==null?void 0:dt.assets)??U??"",nn="1790709001128",_t="sveltekit:snapshot",wt="sveltekit:scroll",vt="sveltekit:states",rn="sveltekit:pageurl",F="sveltekit:history",Z="sveltekit:navigation",V={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},Le=location.origin;function Ge(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){const n=document.getElementsByTagName("base");t=n.length?n[0].href:document.URL}return new URL(e,t)}function M(){return{x:pageXOffset,y:pageYOffset}}function K(e,t){return e.getAttribute(`data-sveltekit-${t}`)}const at={...V,"":V.hover};function yt(e){let t=e.assignedSlot??e.parentNode;return(t==null?void 0:t.nodeType)===11&&(t=t.host),t}function bt(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()==="A"&&e.hasAttribute("href"))return e;e=yt(e)}}function je(e,t,n){let a;try{if(a=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&a.hash.match(/^#[^/]/)){const s=location.hash.split("#")[1]||"/";a.hash=`#${s}${a.hash}`}}catch{}const r=e instanceof SVGAElement?e.target.baseVal:e.target,i=!a||!!r||Ue(a,t,n)||(e.getAttribute("rel")||"").split(/\s+/).includes("external"),o=(a==null?void 0:a.origin)===Le&&e.hasAttribute("download");return{url:a,external:i,target:r,download:o}}function we(e){let t=null,n=null,a=null,r=null,i=null,o=null,s=e;for(;s&&s!==document.documentElement;)a===null&&(a=K(s,"preload-code")),r===null&&(r=K(s,"preload-data")),t===null&&(t=K(s,"keepfocus")),n===null&&(n=K(s,"noscroll")),i===null&&(i=K(s,"reload")),o===null&&(o=K(s,"replacestate")),s=yt(s);function l(c){switch(c){case"":case"true":return!0;case"off":case"false":return!1;default:return}}return{preload_code:at[a??"off"],preload_data:at[r??"off"],keepfocus:l(t),noscroll:l(n),reload:l(i),replace_state:l(o)}}function ot(e){const t=Ve(e);let n=!0;function a(){n=!0,t.update(o=>o)}function r(o){n=!1,t.set(o)}function i(o){let s;return t.subscribe(l=>{(s===void 0||n&&l!==s)&&o(s=l)})}return{notify:a,set:r,subscribe:i}}const kt={v:j};function an(){const{set:e,subscribe:t}=Ve(!1);let n;async function a(){clearTimeout(n);try{const r=await fetch(`${tn}/_app/version.json`,{headers:{pragma:"no-cache","cache-control":"no-cache"}});if(!r.ok)return!1;const o=(await r.json()).version!==nn;return o&&(e(!0),kt.v(),clearTimeout(n)),o}catch{return!1}}return{subscribe:t,check:a}}function Ue(e,t,n){return e.origin!==Le||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function On(e){}const St=new Set(["load","prerender","csr","ssr","trailingSlash","config"]);[...St];const on=new Set([...St]);[...on];function sn(e){return e.filter(t=>t!=null)}function ge(e,t){return e+"/"+t}function He(e){return e instanceof Me||e instanceof Ke?e.status:500}function ln(e){return e instanceof Ke?e.text:"Internal Error"}let x,Q,$e;const cn=nt.toString().includes("$$")||/function \w+\(\) \{\}/.test(nt.toString()),st="a:";var ae,oe,se,ie,le,ce,fe,ue,ht,de,pt,he,gt;cn?(x={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(st)},Q={current:null},$e={current:!1}):(x=new(ht=class{constructor(){A(this,ae,T({}));A(this,oe,T(null));A(this,se,T(null));A(this,ie,T({}));A(this,le,T({id:null}));A(this,ce,T({}));A(this,fe,T(-1));A(this,ue,T(new URL(st)))}get data(){return I(y(this,ae))}set data(t){P(y(this,ae),t)}get form(){return I(y(this,oe))}set form(t){P(y(this,oe),t)}get error(){return I(y(this,se))}set error(t){P(y(this,se),t)}get params(){return I(y(this,ie))}set params(t){P(y(this,ie),t)}get route(){return I(y(this,le))}set route(t){P(y(this,le),t)}get state(){return I(y(this,ce))}set state(t){P(y(this,ce),t)}get status(){return I(y(this,fe))}set status(t){P(y(this,fe),t)}get url(){return I(y(this,ue))}set url(t){P(y(this,ue),t)}},ae=new WeakMap,oe=new WeakMap,se=new WeakMap,ie=new WeakMap,le=new WeakMap,ce=new WeakMap,fe=new WeakMap,ue=new WeakMap,ht),Q=new(pt=class{constructor(){A(this,de,T(null))}get current(){return I(y(this,de))}set current(t){P(y(this,de),t)}},de=new WeakMap,pt),$e=new(gt=class{constructor(){A(this,he,T(!1))}get current(){return I(y(this,he))}set current(t){P(y(this,he),t)}},he=new WeakMap,gt),kt.v=()=>$e.current=!0);function Et(e){Object.assign(x,e)}const{onMount:fn}=qt,un=new Set(["icon","shortcut icon","apple-touch-icon"]);let J=null;const D=mt(wt)??{},ee=mt(_t)??{},N={url:ot({}),page:ot({}),navigating:Ve(null),updated:an()};function We(e){D[e]=M()}function dn(e,t){let n=e+1;for(;D[n];)delete D[n],n+=1;for(n=t+1;ee[n];)delete ee[n],n+=1}function te(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(j)}async function Rt(){if("serviceWorker"in navigator){const e=await navigator.serviceWorker.getRegistration(U||"/");e&&await e.update()}}let ze,Ne,ve,O,De,S;const ye=[],be=[];let v=null;function ke(){var e;(e=v==null?void 0:v.fork)==null||e.then(t=>t==null?void 0:t.discard()),v=null}const me=new Map,xt=new Set,hn=new Set,G=new Set;let _={branch:[],error:null,url:null},Lt=!1,Se=!1,it=!0,ne=!1,Y=!1,Ut=!1,Je=!1,At,k,L,C;const Ee=new Set,lt=new Map,ct=new Map;async function Nn(e,t,n){var i,o,s,l;globalThis.__sveltekit_xfpk66&&(globalThis.__sveltekit_xfpk66.query,globalThis.__sveltekit_xfpk66.prerender),document.URL!==location.href&&(location.href=location.href),S=e,await((o=(i=e.hooks).init)==null?void 0:o.call(i)),ze=en(e),O=document.documentElement,De=t,Ne=e.nodes[0],ve=e.nodes[1],Ne(),ve(),k=(s=history.state)==null?void 0:s[F],L=(l=history.state)==null?void 0:l[Z],k||(k=L=Date.now(),history.replaceState({...history.state,[F]:k,[Z]:L},""));const a=D[k];function r(){a&&(history.scrollRestoration="manual",scrollTo(a.x,a.y))}n?(r(),await Ln(De,n)):(await H({type:"enter",url:Ge(S.hash?Tn(new URL(location.href)):location.href),replace_state:!0}),r()),xn()}function pn(){ye.length=0,Je=!1}function Tt(e){be.some(t=>t==null?void 0:t.snapshot)&&(ee[e]=be.map(t=>{var n;return(n=t==null?void 0:t.snapshot)==null?void 0:n.capture()}))}function It(e){var t;(t=ee[e])==null||t.forEach((n,a)=>{var r,i;(i=(r=be[a])==null?void 0:r.snapshot)==null||i.restore(n)})}function ft(){We(k),rt(wt,D),Tt(L),rt(_t,ee)}async function Pt(e,t,n,a){let r,i;t.invalidateAll&&ke(),await H({type:"goto",url:Ge(e),keepfocus:t.keepFocus,noscroll:t.noScroll,replace_state:t.replaceState,state:t.state,redirect_count:n,nav_token:a,accept:()=>{if(t.invalidateAll){Je=!0,r=new Set;for(const[o,s]of lt)for(const l of s.keys())r.add(ge(o,l));i=new Set;for(const[o,s]of ct)for(const l of s.keys())i.add(ge(o,l))}t.invalidate&&t.invalidate.forEach(Rn)}}),t.invalidateAll&&_e().then(_e).then(()=>{for(const[o,s]of lt)for(const[l,{resource:c}]of s)r!=null&&r.has(ge(o,l))&&c.refresh();for(const[o,s]of ct)for(const[l,{resource:c}]of s)i!=null&&i.has(ge(o,l))&&c.reconnect()})}async function gn(e){if(e.id!==(v==null?void 0:v.id)){ke();const t={};Ee.add(t),v={id:e.id,token:t,promise:$t({...e,preload:t}).then(n=>(Ee.delete(t),n.type==="loaded"&&n.state.error&&ke(),n)),fork:null}}return v.promise}async function Ce(e){var n;const t=(n=await Ae(e,!1))==null?void 0:n.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(a=>a[1]()))}async function Ot(e,t,n){var i;const a={params:_.params,route:{id:((i=_.route)==null?void 0:i.id)??null},url:new URL(location.href)};_={...e.state,nav:a};const r=document.querySelector("style[data-sveltekit]");if(r&&r.remove(),Et(e.props.page),At=new S.root({target:t,props:{...e.props,stores:N,components:be},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),It(L),n){const o={from:null,to:{...a,scroll:D[k]??M()},willUnload:!1,type:"enter",complete:Promise.resolve()};G.forEach(s=>s(o))}Se=!0}async function Re({url:e,params:t,branch:n,errors:a,status:r,error:i,route:o,form:s}){let l="never";if(U&&(e.pathname===U||e.pathname===U+"/"))l="always";else for(const f of n)(f==null?void 0:f.slash)!==void 0&&(l=f.slash);e.pathname=Mt(e.pathname,l),e.search=e.search;const c={type:"loaded",state:{url:e,params:t,branch:n,error:i,route:o},props:{constructors:sn(n).map(f=>f.node.component),page:et(x)}};s!==void 0&&(c.props.form=s);let d={},u=!x,w=0;for(let f=0;f<Math.max(n.length,_.branch.length);f+=1){const m=n[f],h=_.branch[f];(m==null?void 0:m.data)!==(h==null?void 0:h.data)&&(u=!0),m&&(d={...d,...m.data},u&&(c.props[`data_${w}`]=d),w+=1)}return(!_.url||e.href!==_.url.href||_.error!==i||s!==void 0&&s!==x.form||u)&&(c.props.page={error:i,params:t,route:{id:(o==null?void 0:o.id)??null},state:{},status:r,url:new URL(e),form:s??null,data:u?d:x.data}),c}async function Ye({loader:e,parent:t,url:n,params:a,route:r,server_data_node:i}){var c,d;let o=null;const s={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},l=await e();return{node:l,loader:e,server:i,universal:(c=l.universal)!=null&&c.load?{type:"data",data:o,uses:s}:null,data:o??(i==null?void 0:i.data)??null,slash:((d=l.universal)==null?void 0:d.trailingSlash)??(i==null?void 0:i.slash)}}function mn(e,t,n){let a=e instanceof Request?e.url:e;const r=new URL(a,n);r.origin===n.origin&&(a=r.href.slice(n.origin.length));const i=Se?zt(a,r.href,t):Wt(a,t);return{resolved:r,promise:i}}function _n(e,t,n,a,r,i){if(Je)return!0;if(!r)return!1;if(r.parent&&e||r.route&&t||r.url&&n)return!0;for(const o of r.search_params)if(a.has(o))return!0;for(const o of r.params)if(i[o]!==_.params[o])return!0;for(const o of r.dependencies)if(ye.some(s=>s(new URL(o))))return!0;return!1}function Xe(e,t){return(e==null?void 0:e.type)==="data"?e:(e==null?void 0:e.type)==="skip"?t??null:null}function wn(e,t){if(!e)return new Set(t.searchParams.keys());const n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(const a of n){const r=e.searchParams.getAll(a),i=t.searchParams.getAll(a);r.every(o=>i.includes(o))&&i.every(o=>r.includes(o))&&n.delete(a)}return n}function vn({error:e,url:t,route:n,params:a}){return{type:"loaded",state:{error:e,url:t,route:n,params:a,branch:[]},props:{page:et(x),constructors:[]}}}async function $t({id:e,invalidating:t,url:n,params:a,route:r,preload:i}){if((v==null?void 0:v.id)===e)return Ee.delete(v.token),v.promise;const{errors:o,layouts:s,leaf:l}=r,c=[...s,l];o.forEach(h=>h==null?void 0:h().catch(j)),c.forEach(h=>h==null?void 0:h[1]().catch(j));const d=_.url?e!==xe(_.url):!1,u=_.route?r.id!==_.route.id:!1,w=wn(_.url,n);let p=!1;const f=c.map(async(h,g)=>{var $;if(!h)return;const b=_.branch[g];return h[1]===(b==null?void 0:b.loader)&&!_n(p,u,d,w,($=b.universal)==null?void 0:$.uses,a)?b:(p=!0,Ye({loader:h[1],url:n,params:a,route:r,parent:async()=>{var pe;const q={};for(let B=0;B<g;B+=1)Object.assign(q,(pe=await f[B])==null?void 0:pe.data);return q},server_data_node:Xe(h[0]?{type:"skip"}:null,h[0]?b==null?void 0:b.server:void 0)}))});for(const h of f)h.catch(j);const m=[];for(let h=0;h<c.length;h+=1)if(c[h])try{m.push(await f[h])}catch(g){if(g instanceof Be)return{type:"redirect",location:g.location};if(Ee.has(i))return vn({error:await re(g,{params:a,url:n,route:{id:r.id}}),url:n,params:a,route:r});let b=He(g),R;if(g instanceof Me)R=g.body;else{if(await N.updated.check())return await Rt(),await te(n);R=await re(g,{params:a,url:n,route:{id:r.id}})}const $=await yn(h,m,o);return $?Re({url:n,params:a,branch:m.slice(0,$.idx).concat($.node),errors:o,status:b,error:R,route:r}):await jt(n,{id:r.id},R,b)}else m.push(void 0);return Re({url:n,params:a,branch:m,errors:o,status:200,error:null,route:r,form:t?void 0:null})}async function yn(e,t,n){for(;e--;)if(n[e]){let a=e;for(;!t[a];)a-=1;try{return{idx:a+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function Ze({status:e,error:t,url:n,route:a}){const r={};let i=null;try{const o=await Ye({loader:Ne,url:n,params:r,route:a,parent:()=>Promise.resolve({}),server_data_node:Xe(i)}),s={node:await ve(),loader:ve,universal:null,server:null,data:null};return Re({url:n,params:r,branch:[o,s],status:e,error:t,errors:[],route:null})}catch(o){if(o instanceof Be)return Pt(new URL(o.location,location.href),{},0);throw o}}async function bn(e){const t=e.href;if(me.has(t))return me.get(t);let n;try{const a=(async()=>{let r=await S.hooks.reroute({url:new URL(e),fetch:async(i,o)=>mn(i,o,e).promise})??e;if(typeof r=="string"){const i=new URL(e);S.hash?i.hash=r:i.pathname=r,r=i}return r})();me.set(t,a),n=await a}catch{me.delete(t);return}return n}async function Ae(e,t){if(e&&!Ue(e,U,S.hash)){const n=await bn(e);if(!n)return;const a=kn(n);for(const r of ze){const i=r.exec(a);if(i)return{id:xe(e),invalidating:t,route:r,params:Kt(i),url:e}}}}function kn(e){return Bt(S.hash?e.hash.replace(/^#/,"").replace(/[?#].+/,""):e.pathname.slice(U.length))||"/"}function xe(e){return(S.hash?e.hash.replace(/^#/,""):e.pathname)+e.search}function Ct({url:e,type:t,intent:n,delta:a,event:r,scroll:i}){let o=!1;const s=Qe(_,n,e,t,i??null);a!==void 0&&(s.navigation.delta=a),r!==void 0&&(s.navigation.event=r);const l={...s.navigation,cancel:()=>{o=!0,s.reject(new Error("navigation cancelled"))}};return ne||xt.forEach(c=>c(l)),o?null:s}async function H({type:e,url:t,popped:n,keepfocus:a,noscroll:r,replace_state:i,state:o={},redirect_count:s=0,nav_token:l={},accept:c=j,block:d=j,event:u}){var B;const w=C;C=l;const p=await Ae(t,!1),f=e==="enter"?Qe(_,p,t,e):Ct({url:t,type:e,delta:n==null?void 0:n.delta,intent:p,scroll:n==null?void 0:n.scroll,event:u});if(!f){d(),C===l&&(C=w);return}const m=k,h=L;c(),ne=!0,Se&&f.navigation.type!=="enter"&&N.navigating.set(Q.current=f.navigation);let g=p&&await $t(p);if(!g){if(Ue(t,U,S.hash))return await te(t,i);g=await jt(t,{id:null},await re(new Ke(404,"Not Found",`Not found: ${t.pathname}`),{url:t,params:{},route:{id:null}}),404,i)}if(t=(p==null?void 0:p.url)||t,C!==l)return f.reject(new Error("navigation aborted")),!1;if(g.type==="redirect"){if(s<20){await H({type:e,url:new URL(g.location,t),popped:n,keepfocus:a,noscroll:r,replace_state:i,state:o,redirect_count:s+1,nav_token:l}),f.fulfil(void 0);return}g=await Ze({status:500,error:await re(new Error("Redirect loop"),{url:t,params:{},route:{id:null}}),url:t,route:{id:null}})}else g.props.page.status>=400&&await N.updated.check()&&(await Rt(),await te(t,i));if(pn(),We(m),Tt(h),g.props.page.url.pathname!==t.pathname&&(t.pathname=g.props.page.url.pathname),o=n?n.state:o,!n){const E=i?0:1,W={[F]:k+=E,[Z]:L+=E,[vt]:o};(i?history.replaceState:history.pushState).call(history,W,"",t),i||dn(k,L)}const b=p&&(v==null?void 0:v.id)===p.id?v.fork:null;v!=null&&v.fork&&!b&&ke(),v=null,g.props.page.state=o;let R;if(Se){const E=(await Promise.all(Array.from(hn,z=>z(f.navigation)))).filter(z=>typeof z=="function");if(E.length>0){let z=function(){E.forEach(Ie=>{G.delete(Ie)})};E.push(z),E.forEach(Ie=>{G.add(Ie)})}const W=f.navigation.to;_={...g.state,nav:{params:W.params,route:W.route,url:W.url}},g.props.page&&(g.props.page.url=t);const Te=b&&await b;Te?R=Te.commit():(J=null,At.$set(g.props),J&&Object.assign(g.props.page,J),Et(g.props.page),R=(B=Vt)==null?void 0:B()),Ut=!0}else await Ot(g,De,!1);const{activeElement:$}=document;if(await R,await _e(),await _e(),C!==l)return f.reject(new Error("navigation aborted")),!1;g.props.page&&J&&Object.assign(g.props.page,J);let q=null;if(it){const E=n?n.scroll:r?M():null;E?scrollTo(E.x,E.y):(q=t.hash&&document.getElementById(Nt(t)))?q.scrollIntoView():scrollTo(0,0)}const pe=document.activeElement!==$&&document.activeElement!==document.body;!a&&!pe&&An(t,!q),it=!0,ne=!1,e==="popstate"&&It(L),f.fulfil(void 0),f.navigation.to&&(f.navigation.to.scroll=M()),G.forEach(E=>E(f.navigation)),N.navigating.set(Q.current=null)}async function jt(e,t,n,a,r){return e.origin===Le&&e.pathname===location.pathname&&!Lt?await Ze({status:a,error:n,url:e,route:t}):await te(e,r)}function Sn(){let e,t={element:void 0,href:void 0},n;O.addEventListener("mousemove",s=>{const l=s.target;clearTimeout(e),e=setTimeout(()=>{i(l,V.hover)},20)});function a(s){s.defaultPrevented||i(s.composedPath()[0],V.tap)}O.addEventListener("mousedown",a),O.addEventListener("touchstart",a,{passive:!0});const r=new IntersectionObserver(s=>{for(const l of s)l.isIntersecting&&(Ce(new URL(l.target.href)),r.unobserve(l.target))},{threshold:0});async function i(s,l){const c=bt(s,O),d=c===t.element&&(c==null?void 0:c.href)===t.href&&l>=n;if(!c||d)return;const{url:u,external:w,download:p}=je(c,U,S.hash);if(w||p)return;const f=we(c),m=u&&xe(_.url)===xe(u);if(!(f.reload||m))if(l<=f.preload_data){t={element:c,href:c.href},n=V.tap;const h=await Ae(u,!1);if(!h)return;gn(h)}else l<=f.preload_code&&(t={element:c,href:c.href},n=l,Ce(u))}function o(){r.disconnect();for(const s of O.querySelectorAll("a")){const{url:l,external:c,download:d}=je(s,U,S.hash);if(c||d)continue;const u=we(s);u.reload||(u.preload_code===V.viewport&&r.observe(s),u.preload_code===V.eager&&Ce(l))}}G.add(o),o()}function re(e,t){if(e instanceof Me)return e.body;const n=He(e),a=ln(e);return S.hooks.handleError({error:e,event:t,status:n,message:a})??{message:a}}function En(e,t){fn(()=>(e.add(t),()=>{e.delete(t)}))}function Dn(e){En(G,e)}function qn(e,t={}){return e=new URL(Ge(e)),e.origin!==Le?Promise.reject(new Error("goto: invalid URL")):Pt(e,t,0)}function Rn(e){if(typeof e=="function")ye.push(e);else{const{href:t}=new URL(e,location.href);ye.push(n=>n.href===t)}}function xn(){var t;history.scrollRestoration="manual",addEventListener("beforeunload",n=>{let a=!1;if(ft(),!ne){const r=Qe(_,void 0,null,"leave"),i={...r.navigation,cancel:()=>{a=!0,r.reject(new Error("navigation cancelled"))}};xt.forEach(o=>o(i))}a?(n.preventDefault(),n.returnValue=""):history.scrollRestoration="auto"}),addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&ft()}),(t=navigator.connection)!=null&&t.saveData||Sn(),O.addEventListener("click",async n=>{if(n.button||n.which!==1||n.metaKey||n.ctrlKey||n.shiftKey||n.altKey||n.defaultPrevented)return;const a=bt(n.composedPath()[0],O);if(!a)return;const{url:r,external:i,target:o,download:s}=je(a,U,S.hash);if(!r)return;if(o==="_parent"||o==="_top"){if(window.parent!==window)return}else if(o&&o!=="_self")return;const l=we(a);if(!(a instanceof SVGAElement)&&r.protocol!==location.protocol&&!(r.protocol==="https:"||r.protocol==="http:")||s)return;const[d,u]=(S.hash?r.hash.replace(/^#/,""):r.href).split("#"),w=d===Pe(location);if(i||l.reload&&(!w||!u)){Ct({url:r,type:"link",event:n})?ne=!0:n.preventDefault();return}if(u!==void 0&&w){const[,p]=_.url.href.split("#");if(p===u){if(n.preventDefault(),u===""||u==="top"&&a.ownerDocument.getElementById("top")===null)scrollTo({top:0});else{const f=a.ownerDocument.getElementById(decodeURIComponent(u));f&&(f.scrollIntoView(),f.focus())}return}if(Y=!0,We(k),e(r),!l.replace_state)return;Y=!1}n.preventDefault(),await new Promise(p=>{requestAnimationFrame(()=>{setTimeout(p,0)}),setTimeout(p,100)}),await H({type:"link",url:r,keepfocus:l.keepfocus,noscroll:l.noscroll,replace_state:l.replace_state??r.href===location.href,event:n})}),O.addEventListener("submit",n=>{if(n.defaultPrevented)return;const a=HTMLFormElement.prototype.cloneNode.call(n.target),r=n.submitter;if(((r==null?void 0:r.formTarget)||a.target)==="_blank"||((r==null?void 0:r.formMethod)||a.method)!=="get")return;const s=new URL((r==null?void 0:r.hasAttribute("formaction"))&&(r==null?void 0:r.formAction)||a.action);if(Ue(s,U,!1))return;const l=n.target,c=we(l);if(c.reload)return;n.preventDefault(),n.stopPropagation();const d=new FormData(l,r);s.search=new URLSearchParams(d).toString(),H({type:"form",url:s,keepfocus:c.keepfocus,noscroll:c.noscroll,replace_state:c.replace_state??s.href===location.href,event:n})}),addEventListener("popstate",async n=>{var a;if(!qe){if((a=n.state)!=null&&a[F]){const r=n.state[F];if(C={},r===k)return;const i=D[r],o=n.state[vt]??{},s=new URL(n.state[rn]??location.href),l=n.state[Z],c=_.url?Pe(location)===Pe(_.url):!1;if(l===L&&(Ut||c)){o!==x.state&&(x.state=o),e(s),D[k]=M(),i&&scrollTo(i.x,i.y),k=r;return}const u=r-k;await H({type:"popstate",url:s,popped:{state:o,scroll:i,delta:u},accept:()=>{k=r,L=l},block:()=>{history.go(-u)},nav_token:C,event:n})}else if(!Y){const r=new URL(location.href);e(r),S.hash&&location.reload()}}}),addEventListener("hashchange",()=>{Y&&(Y=!1,history.replaceState({...history.state,[F]:++k,[Z]:L},"",location.href))});for(const n of document.querySelectorAll("link"))un.has(n.rel)&&(n.href=n.href);addEventListener("pageshow",n=>{n.persisted&&N.navigating.set(Q.current=null)});function e(n){_.url=x.url=n,N.page.set(et(x)),N.page.notify()}}async function Ln(e,{status:t=200,error:n,node_ids:a,params:r,route:i,server_route:o,data:s,form:l}){Lt=!0;const c=new URL(location.href);let d;({params:r={},route:i={id:null}}=await Ae(c,!1)||{}),d=ze.find(({id:p})=>p===i.id);let u,w=!0;try{const p=a.map(async(m,h)=>{const g=s[h];return g!=null&&g.uses&&(g.uses=Un(g.uses)),Ye({loader:S.nodes[m],url:c,params:r,route:i,parent:async()=>{const b={};for(let R=0;R<h;R+=1)Object.assign(b,(await p[R]).data);return b},server_data_node:Xe(g)})}),f=await Promise.all(p);if(d){const m=d.layouts;for(let h=0;h<m.length;h++)m[h]||f.splice(h,0,void 0)}u=await Re({url:c,params:r,branch:f,status:t,error:n,errors:d==null?void 0:d.errors,form:l,route:d??null})}catch(p){if(p instanceof Be){await te(new URL(p.location,location.href));return}u=await Ze({status:He(p),error:await re(p,{url:c,params:r,route:i}),url:c,route:i}),e.textContent="",w=!1}finally{}u.props.page&&(u.props.page.state={}),await Ot(u,e,w)}function Un(e){return{dependencies:new Set((e==null?void 0:e.dependencies)??[]),params:new Set((e==null?void 0:e.params)??[]),parent:!!(e!=null&&e.parent),route:!!(e!=null&&e.route),url:!!(e!=null&&e.url),search_params:new Set((e==null?void 0:e.search_params)??[])}}let qe=!1;function An(e,t=!0){const n=document.querySelector("[autofocus]");if(n)n.focus();else{const a=Nt(e);if(a&&document.getElementById(a)){const{x:i,y:o}=M();setTimeout(()=>{const s=history.state;qe=!0,location.replace(new URL(`#${a}`,location.href)),history.replaceState(s,"",e),t&&scrollTo(i,o),qe=!1})}else{const i=document.body,o=i.getAttribute("tabindex");i.tabIndex=-1,i.focus({preventScroll:!0,focusVisible:!1}),o!==null?i.setAttribute("tabindex",o):i.removeAttribute("tabindex")}const r=getSelection();if(r&&r.type!=="None"){const i=[];for(let o=0;o<r.rangeCount;o+=1)i.push(r.getRangeAt(o));setTimeout(()=>{if(r.rangeCount===i.length){for(let o=0;o<r.rangeCount;o+=1){const s=i[o],l=r.getRangeAt(o);if(s.commonAncestorContainer!==l.commonAncestorContainer||s.startContainer!==l.startContainer||s.endContainer!==l.endContainer||s.startOffset!==l.startOffset||s.endOffset!==l.endOffset)return}r.removeAllRanges()}})}}}function Qe(e,t,n,a,r=null){var c,d;let i,o;const s=new Promise((u,w)=>{i=u,o=w});return s.catch(j),{navigation:{from:{params:e.params,route:{id:((c=e.route)==null?void 0:c.id)??null},url:e.url,scroll:M()},to:n&&{params:(t==null?void 0:t.params)??null,route:{id:((d=t==null?void 0:t.route)==null?void 0:d.id)??null},url:n,scroll:r},willUnload:!t,type:a,complete:s},fulfil:i,reject:o}}function et(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function Tn(e){const t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function Nt(e){let t;if(S.hash){const[,,n]=e.hash.split("#",3);t=n??""}else t=e.hash.slice(1);return decodeURIComponent(t)}export{Dn as a,N as b,qn as g,On as l,x as p,Nn as s};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.
|
|
2
|
-
var F=r=>{throw TypeError(r)};var G=(r,e,a)=>e.has(r)||F("Cannot "+a);var u=(r,e,a)=>(G(r,e,"read from private field"),a?a.call(r):e.get(r)),L=(r,e,a)=>e.has(r)?F("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,a),j=(r,e,a,n)=>(G(r,e,"write to private field"),n?n.call(r,a):e.set(r,a),a);import{ai as N,ag as X,z as Z,h as $,aG as ee,aV as te,aP as re,aQ as W,j as ae,ah as se,aO as S,L as ne,a8 as v,af as oe,as as ie,a5 as ce,W as le,b3 as ue,au as de,aE as fe,b7 as me,b6 as he,az as _e,b1 as ve,a4 as x,aU as ge,w,aB as ye,aX as C,M as B,J as be,aK as Ee,a6 as H,b0 as Re,a$ as Pe,aR as we,b5 as I}from"../chunks/BjY4dxcB.js";import"../chunks/CWj6FrbW.js";import{B as Oe,i as D}from"../chunks/DIEDQ_hk.js";import{p as V,b as U}from"../chunks/C2FuqD3s.js";function p(r,e,a){var n;N&&(n=se,X());var o=new Oe(r);Z(()=>{var i=e()??null;if(N){var s=ee(n),t=s===ae,d=i!==null;if(t!==d){var l=te();re(l),o.anchor=l,W(!1),o.ensure(i,i&&(f=>a(f,i))),W(!0);return}}o.ensure(i,i&&(f=>a(f,i)))},$)}function ke(r){return class extends xe{constructor(e){super({component:r,...e})}}}var g,m;class xe{constructor(e){L(this,g);L(this,m);var i;var a=new Map,n=(s,t)=>{var d=de(t,!1,!1);return a.set(s,d),d};const o=new Proxy({...e.props||{},$$events:{}},{get(s,t){return v(a.get(t)??n(t,Reflect.get(s,t)))},has(s,t){return t===ne?!0:(v(a.get(t)??n(t,Reflect.get(s,t))),Reflect.has(s,t))},set(s,t,d){return S(a.get(t)??n(t,d),d),Reflect.set(s,t,d)}});j(this,m,(e.hydrate?oe:ie)(e.component,{target:e.target,anchor:e.anchor,props:o,context:e.context,intro:e.intro??!1,recover:e.recover,transformError:e.transformError})),(!((i=e==null?void 0:e.props)!=null&&i.$$host)||e.sync===!1)&&ce(),j(this,g,o.$$events);for(const s of Object.keys(u(this,m)))s==="$set"||s==="$destroy"||s==="$on"||le(this,s,{get(){return u(this,m)[s]},set(t){u(this,m)[s]=t},enumerable:!0});u(this,m).$set=s=>{Object.assign(o,s)},u(this,m).$destroy=()=>{ue(u(this,m))}}$set(e){u(this,m).$set(e)}$on(e,a){u(this,g)[e]=u(this,g)[e]||[];const n=(...o)=>a.call(this,...o);return u(this,g)[e].push(n),()=>{u(this,g)[e]=u(this,g)[e].filter(o=>o!==n)}}$destroy(){u(this,m).$destroy()}}g=new WeakMap,m=new WeakMap;const Ae="modulepreload",Se=function(r,e){return new URL(r,e).href},Y={},A=function(e,a,n){let o=Promise.resolve();if(a&&a.length>0){const s=document.getElementsByTagName("link"),t=document.querySelector("meta[property=csp-nonce]"),d=(t==null?void 0:t.nonce)||(t==null?void 0:t.getAttribute("nonce"));o=Promise.allSettled(a.map(l=>{if(l=Se(l,n),l in Y)return;Y[l]=!0;const f=l.endsWith(".css"),T=f?'[rel="stylesheet"]':"";if(!!n)for(let y=s.length-1;y>=0;y--){const c=s[y];if(c.href===l&&(!f||c.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${T}`))return;const _=document.createElement("link");if(_.rel=f?"stylesheet":Ae,f||(_.as="script"),_.crossOrigin="",_.href=l,d&&_.setAttribute("nonce",d),document.head.appendChild(_),f)return new Promise((y,c)=>{_.addEventListener("load",y),_.addEventListener("error",()=>c(new Error(`Unable to preload CSS for ${l}`)))})}))}function i(s){const t=new Event("vite:preloadError",{cancelable:!0});if(t.payload=s,window.dispatchEvent(t),!t.defaultPrevented)throw s}return o.then(s=>{for(const t of s||[])t.status==="rejected"&&i(t.reason);return e().catch(i)})},qe={};var Te=H('<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>'),Le=H("<!> <!>",1);function je(r,e){fe(e,!0);let a=V(e,"components",23,()=>[]),n=V(e,"data_0",3,null),o=V(e,"data_1",3,null);me(()=>e.stores.page.set(e.page)),he(()=>{e.stores,e.page,e.constructors,a(),e.form,n(),o(),e.stores.page.notify()});let i=C(!1),s=C(!1),t=C(null);_e(()=>{const c=e.stores.page.subscribe(()=>{v(i)&&(S(s,!0),ve().then(()=>{S(t,document.title||"untitled page",!0)}))});return S(i,!0),c});const d=I(()=>e.constructors[1]);var l=Le(),f=x(l);{var T=c=>{const b=I(()=>e.constructors[0]);var E=B(),O=x(E);p(O,()=>v(b),(R,P)=>{U(P(R,{get data(){return n()},get form(){return e.form},get params(){return e.page.params},children:(h,Be)=>{var z=B(),K=x(z);p(K,()=>v(d),(M,Q)=>{U(Q(M,{get data(){return o()},get form(){return e.form},get params(){return e.page.params}}),k=>a()[1]=k,()=>{var k;return(k=a())==null?void 0:k[1]})}),w(h,z)},$$slots:{default:!0}}),h=>a()[0]=h,()=>{var h;return(h=a())==null?void 0:h[0]})}),w(c,E)},q=c=>{const b=I(()=>e.constructors[0]);var E=B(),O=x(E);p(O,()=>v(b),(R,P)=>{U(P(R,{get data(){return n()},get form(){return e.form},get params(){return e.page.params}}),h=>a()[0]=h,()=>{var h;return(h=a())==null?void 0:h[0]})}),w(c,E)};D(f,c=>{e.constructors[1]?c(T):c(q,-1)})}var _=ge(f,2);{var y=c=>{var b=Te(),E=be(b);{var O=R=>{var P=Re();Pe(()=>we(P,v(t))),w(R,P)};D(E,R=>{v(s)&&R(O)})}Ee(b),w(c,b)};D(_,c=>{v(i)&&c(y)})}w(r,l),ye()}const ze=ke(je),Fe=[()=>A(()=>import("../nodes/0.
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.BH0-mNP5.js","../chunks/CWj6FrbW.js","../chunks/TuGPYaVf.js","../chunks/BjY4dxcB.js","../chunks/DIEDQ_hk.js","../chunks/BZhYrFQy.js","../chunks/_bauirnP.js","../chunks/C2FuqD3s.js","../assets/0.nqUv72Y6.css","../nodes/1.reI34Q_v.js","../nodes/2.BqCecRSm.js","../assets/2.BNuGfmZP.css","../nodes/3.BRXJ5-j-.js","../assets/3.C2vSHMbd.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
var F=r=>{throw TypeError(r)};var G=(r,e,a)=>e.has(r)||F("Cannot "+a);var u=(r,e,a)=>(G(r,e,"read from private field"),a?a.call(r):e.get(r)),L=(r,e,a)=>e.has(r)?F("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,a),j=(r,e,a,n)=>(G(r,e,"write to private field"),n?n.call(r,a):e.set(r,a),a);import{ai as N,ag as X,z as Z,h as $,aG as ee,aV as te,aP as re,aQ as W,j as ae,ah as se,aO as S,L as ne,a8 as v,af as oe,as as ie,a5 as ce,W as le,b3 as ue,au as de,aE as fe,b7 as me,b6 as he,az as _e,b1 as ve,a4 as x,aU as ge,w,aB as ye,aX as C,M as B,J as be,aK as Ee,a6 as H,b0 as Re,a$ as Pe,aR as we,b5 as I}from"../chunks/BjY4dxcB.js";import"../chunks/CWj6FrbW.js";import{B as Oe,i as D}from"../chunks/DIEDQ_hk.js";import{p as V,b as U}from"../chunks/C2FuqD3s.js";function p(r,e,a){var n;N&&(n=se,X());var o=new Oe(r);Z(()=>{var i=e()??null;if(N){var s=ee(n),t=s===ae,d=i!==null;if(t!==d){var l=te();re(l),o.anchor=l,W(!1),o.ensure(i,i&&(f=>a(f,i))),W(!0);return}}o.ensure(i,i&&(f=>a(f,i)))},$)}function ke(r){return class extends xe{constructor(e){super({component:r,...e})}}}var g,m;class xe{constructor(e){L(this,g);L(this,m);var i;var a=new Map,n=(s,t)=>{var d=de(t,!1,!1);return a.set(s,d),d};const o=new Proxy({...e.props||{},$$events:{}},{get(s,t){return v(a.get(t)??n(t,Reflect.get(s,t)))},has(s,t){return t===ne?!0:(v(a.get(t)??n(t,Reflect.get(s,t))),Reflect.has(s,t))},set(s,t,d){return S(a.get(t)??n(t,d),d),Reflect.set(s,t,d)}});j(this,m,(e.hydrate?oe:ie)(e.component,{target:e.target,anchor:e.anchor,props:o,context:e.context,intro:e.intro??!1,recover:e.recover,transformError:e.transformError})),(!((i=e==null?void 0:e.props)!=null&&i.$$host)||e.sync===!1)&&ce(),j(this,g,o.$$events);for(const s of Object.keys(u(this,m)))s==="$set"||s==="$destroy"||s==="$on"||le(this,s,{get(){return u(this,m)[s]},set(t){u(this,m)[s]=t},enumerable:!0});u(this,m).$set=s=>{Object.assign(o,s)},u(this,m).$destroy=()=>{ue(u(this,m))}}$set(e){u(this,m).$set(e)}$on(e,a){u(this,g)[e]=u(this,g)[e]||[];const n=(...o)=>a.call(this,...o);return u(this,g)[e].push(n),()=>{u(this,g)[e]=u(this,g)[e].filter(o=>o!==n)}}$destroy(){u(this,m).$destroy()}}g=new WeakMap,m=new WeakMap;const Ae="modulepreload",Se=function(r,e){return new URL(r,e).href},Y={},A=function(e,a,n){let o=Promise.resolve();if(a&&a.length>0){const s=document.getElementsByTagName("link"),t=document.querySelector("meta[property=csp-nonce]"),d=(t==null?void 0:t.nonce)||(t==null?void 0:t.getAttribute("nonce"));o=Promise.allSettled(a.map(l=>{if(l=Se(l,n),l in Y)return;Y[l]=!0;const f=l.endsWith(".css"),T=f?'[rel="stylesheet"]':"";if(!!n)for(let y=s.length-1;y>=0;y--){const c=s[y];if(c.href===l&&(!f||c.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${T}`))return;const _=document.createElement("link");if(_.rel=f?"stylesheet":Ae,f||(_.as="script"),_.crossOrigin="",_.href=l,d&&_.setAttribute("nonce",d),document.head.appendChild(_),f)return new Promise((y,c)=>{_.addEventListener("load",y),_.addEventListener("error",()=>c(new Error(`Unable to preload CSS for ${l}`)))})}))}function i(s){const t=new Event("vite:preloadError",{cancelable:!0});if(t.payload=s,window.dispatchEvent(t),!t.defaultPrevented)throw s}return o.then(s=>{for(const t of s||[])t.status==="rejected"&&i(t.reason);return e().catch(i)})},qe={};var Te=H('<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>'),Le=H("<!> <!>",1);function je(r,e){fe(e,!0);let a=V(e,"components",23,()=>[]),n=V(e,"data_0",3,null),o=V(e,"data_1",3,null);me(()=>e.stores.page.set(e.page)),he(()=>{e.stores,e.page,e.constructors,a(),e.form,n(),o(),e.stores.page.notify()});let i=C(!1),s=C(!1),t=C(null);_e(()=>{const c=e.stores.page.subscribe(()=>{v(i)&&(S(s,!0),ve().then(()=>{S(t,document.title||"untitled page",!0)}))});return S(i,!0),c});const d=I(()=>e.constructors[1]);var l=Le(),f=x(l);{var T=c=>{const b=I(()=>e.constructors[0]);var E=B(),O=x(E);p(O,()=>v(b),(R,P)=>{U(P(R,{get data(){return n()},get form(){return e.form},get params(){return e.page.params},children:(h,Be)=>{var z=B(),K=x(z);p(K,()=>v(d),(M,Q)=>{U(Q(M,{get data(){return o()},get form(){return e.form},get params(){return e.page.params}}),k=>a()[1]=k,()=>{var k;return(k=a())==null?void 0:k[1]})}),w(h,z)},$$slots:{default:!0}}),h=>a()[0]=h,()=>{var h;return(h=a())==null?void 0:h[0]})}),w(c,E)},q=c=>{const b=I(()=>e.constructors[0]);var E=B(),O=x(E);p(O,()=>v(b),(R,P)=>{U(P(R,{get data(){return n()},get form(){return e.form},get params(){return e.page.params}}),h=>a()[0]=h,()=>{var h;return(h=a())==null?void 0:h[0]})}),w(c,E)};D(f,c=>{e.constructors[1]?c(T):c(q,-1)})}var _=ge(f,2);{var y=c=>{var b=Te(),E=be(b);{var O=R=>{var P=Re();Pe(()=>we(P,v(t))),w(R,P)};D(E,R=>{v(s)&&R(O)})}Ee(b),w(c,b)};D(_,c=>{v(i)&&c(y)})}w(r,l),ye()}const ze=ke(je),Fe=[()=>A(()=>import("../nodes/0.BH0-mNP5.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8]),import.meta.url),()=>A(()=>import("../nodes/1.reI34Q_v.js"),__vite__mapDeps([9,1,3,6]),import.meta.url),()=>A(()=>import("../nodes/2.BqCecRSm.js"),__vite__mapDeps([10,1,2,3,4,6,11]),import.meta.url),()=>A(()=>import("../nodes/3.BRXJ5-j-.js"),__vite__mapDeps([12,1,2,3,4,5,6,7,13]),import.meta.url)],Ge=[],Ne={"/":[2],"/[sessionId]":[3]},J={handleError:({error:r})=>{console.error(r)},reroute:()=>{},transport:{}},Ce=Object.fromEntries(Object.entries(J.transport).map(([r,e])=>[r,e.decode])),We=Object.fromEntries(Object.entries(J.transport).map(([r,e])=>[r,e.encode])),Ye=!1,He=(r,e)=>Ce[r](e);export{He as decode,Ce as decoders,Ne as dictionary,We as encoders,Ye as hash,J as hooks,qe as matchers,Fe as nodes,ze as root,Ge as server_loads};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{l as o,s as r}from"../chunks/_bauirnP.js";export{o as load_css,r as start};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import"../chunks/CWj6FrbW.js";import{q as Aa,r as Ye,z as dt,p as Mt,f as Ie,j as Ft,d as $a,a as wt,b as st,c as kt,e as xt,C as Kt,A as Pt,n as Ia,B as jt,l as na,k as pa,m as Sa,g as Ht,v as za,o as ra,E as Ca,h as Jt,u as Ma,t as Ta,G as La,x as la,D as Nt,F as Ea,s as qa}from"../chunks/TuGPYaVf.js";import{ai as Ba,ag as Oa,a1 as $t,b4 as r,a_ as fa,aa as Da,aJ as Pa,am as ja,aE as Ge,ap as Y,aO as s,V as de,a8 as e,aq as nt,J as a,aK as t,aU as n,aw as it,a$ as G,aR as M,a3 as F,w as u,aB as Ve,au as p,Z as gt,a6 as g,M as yt,a4 as Ke,b0 as Wt,b8 as Wa,b5 as bt,$ as Lt,aI as Fa,ay as Gt,Q as Ra,b1 as Ua,a7 as ha,az as Vt,av as oa,a9 as Ct}from"../chunks/BjY4dxcB.js";import{i as K,a as Be,s as ot}from"../chunks/DIEDQ_hk.js";import{m as ba,g as qt,I as At,v as fe,u as je,r as It,d as Qt,B as Ja,A as Na,h as et,a as Ka,t as ft,c as mt,w as rt,n as Zt,k as Xt,q as St,z as Ha,b as ia,p as ma,o as zt,C as Qa,y as Ya,j as _a,l as Ot,i as ca}from"../chunks/DtoJQObH.js";import{p as Ce,b as Rt}from"../chunks/C2FuqD3s.js";import{g as ea,a as Ga}from"../chunks/BFcyGgGQ.js";function Yt(O,c,d,I,T){var x;Ba&&Oa();var o=(x=c.$$slots)==null?void 0:x[d],L=!1;o===!0&&(o=c[d==="default"?"children":d],L=!0),o===void 0||o(O,L?()=>I:I)}function ta(O,c,d){$t(()=>{var I=r(()=>c(O,d==null?void 0:d())||{});if(I!=null&&I.destroy)return()=>I.destroy()})}function Va(O,c,d){var I=Da(O,c);I&&I.set&&(O[c]=d,fa(()=>{O[c]=null}))}function Za(O,c,d,I,T){var o=()=>{I(d[O])};d.addEventListener(c,o),T?Pa(()=>{d[O]=T()}):o(),(d===document.body||d===window||d===document)&&fa(()=>{d.removeEventListener(c,o)})}function Xa(O,c){var o;var d=(o=O.$$events)==null?void 0:o[c.type],I=ja(d)?d.slice():d==null?[]:[d];for(var T of I)T.call(this,c)}const es=!1,ts=!1,as="always",dl=Object.freeze(Object.defineProperty({__proto__:null,prerender:ts,ssr:es,trailingSlash:as},Symbol.toStringTag,{value:"Module"})),va=[2e3,4e3,8e3,16e3,3e4];function ss(O){const c=Aa();if(!c)return O;const d=O.includes("?")?"&":"?";return`${O}${d}token=${encodeURIComponent(c)}`}function ns(O){let c=null,d=0,I=null,T=null,o=null,L=0,x=!1,y=!1;const f=[];function w(D){var N;qt.set(D),(N=O.onStatus)==null||N.call(O,D)}function m(){I&&(clearTimeout(I),I=null),T&&(clearTimeout(T),T=null),o&&(clearTimeout(o),o=null)}function q(){T=setTimeout(()=>{(c==null?void 0:c.readyState)===WebSocket.OPEN&&(L=performance.now(),c.send(JSON.stringify({type:"ping"})),o=setTimeout(()=>{c==null||c.close(),z()},45e3))},25e3)}function A(){if(!x){w("reconnecting");try{c=new WebSocket(ss(O.url))}catch{z();return}c.onopen=()=>{var D;d=0,w("connected");for(const N of f.splice(0))c==null||c.send(N);y&&((D=O.onReconnect)==null||D.call(O)),y=!0,q()},c.onmessage=D=>{var N;try{const J=JSON.parse(D.data);if(J.type==="pong"){o&&(clearTimeout(o),o=null),L&&ba.set(Math.round(performance.now()-L)),q();return}(N=O.onMessage)==null||N.call(O,J)}catch{}},c.onclose=()=>{m(),x||z()},c.onerror=()=>{c==null||c.close()}}}function z(){if(m(),x)return;w("reconnecting");const D=va[Math.min(d,va.length-1)];d+=1,I=setTimeout(()=>void A(),D)}return A(),{send(D){const N=JSON.stringify(D);(c==null?void 0:c.readyState)===WebSocket.OPEN?c.send(N):f.push(N)},close(){x=!0,m(),f.length=0,c==null||c.close(),c=null,w("offline")}}}let da=new Map;const Tt=new Set;let ga,Et,Dt=!1;function aa(){if(typeof document>"u")return;const O=document.title.replace(/^(🔔 [\d]+ 新动态 — )/,"")||"ocrc";if(Tt.size===0){Et&&(clearInterval(Et),Et=void 0),Dt=!1,document.title=O;return}Et||(document.title=`🔔 ${Tt.size} 新动态 — ${O}`,Et=setInterval(()=>{Dt=!Dt,document.title=Dt?`🔔 ${Tt.size} 新动态 — ${O}`:O},1200))}function rs(O){ga=O,O&&(Tt.delete(O),aa())}function ls(O){for(const c of O){const d=da.get(c.id);da.set(c.id,c.lastActiveAt),!(d===void 0||c.id===ga)&&c.lastActiveAt>d+1500&&(Tt.add(c.id),aa())}}typeof document<"u"&&document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&(Tt.clear(),aa())});var os=g('<span class="dot-ring svelte-hhath1"></span>'),is=g('<span class="connection-latency mono svelte-hhath1"> </span>'),cs=g('<button class="install svelte-hhath1">Install</button>'),vs=g('<header class="titlebar svelte-hhath1"><button aria-label="Sessions"><!></button> <div class="brand svelte-hhath1" title="ocrc"><svg class="brand-mark svelte-hhath1" viewBox="0 0 64 64" fill="none" stroke-width="8" stroke-linecap="round" aria-hidden="true"><path d="M46 15 A24 24 0 1 0 54 32" stroke="var(--text)"></path><circle cx="49" cy="20" r="6" fill="var(--accent)" stroke="none"></circle></svg> <span class="wordmark svelte-hhath1"><b class="svelte-hhath1">ocrc</b></span></div> <button class="new-session svelte-hhath1" title="新建会话、命令面板…"><span class="new-icon svelte-hhath1" aria-hidden="true">+</span> <span class="new-label svelte-hhath1">新建</span> <span class="new-caret svelte-hhath1" aria-hidden="true"><!></span></button> <button class="palette-trigger svelte-hhath1" title="搜索会话与命令 (⌘K)"><span class="palette-icon svelte-hhath1" aria-hidden="true"><!></span> <span class="palette-label svelte-hhath1">搜索会话与命令…</span> <kbd class="palette-keycap mono svelte-hhath1">⌘K</kbd></button> <span class="spacer svelte-hhath1"></span> <button class="themebtn svelte-hhath1" title="机器人与通道" aria-label="机器人与通道"><svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="11" width="18" height="10" rx="2"></rect><circle cx="12" cy="5" r="2"></circle><path d="M12 7v4"></path><path d="M8 16h0M16 16h0"></path></svg></button> <button class="themebtn svelte-hhath1" aria-label="Toggle color theme"><!></button> <span><span class="dot-wrap svelte-hhath1" aria-hidden="true"><span class="dot svelte-hhath1"></span> <!></span> <span class="connection-state svelte-hhath1"> </span> <!></span> <!> <button aria-label="Inspector"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><line x1="4" y1="7" x2="20" y2="7"></line><line x1="4" y1="12" x2="20" y2="12"></line><line x1="4" y1="17" x2="14" y2="17"></line></svg></button> <div class="user svelte-hhath1"><span class="user-email mono svelte-hhath1"> </span> <span class="avatar mono svelte-hhath1" aria-hidden="true"> </span></div></header>');function ds(O,c){Ge(c,!1);const d=()=>Be(Na,"$theme",o),I=()=>Be(qt,"$connection",o),T=()=>Be(ba,"$latency",o),[o,L]=ot(),x=p(),y=p();let f=Ce(c,"email",8,""),w=Ce(c,"onPalette",8),m=Ce(c,"installEvent",8,null),q=Ce(c,"onInstall",8,()=>{}),A=Ce(c,"drawerLeft",8,!1),z=Ce(c,"drawerRight",8,!1),D=Ce(c,"onToggleLeft",8,()=>{}),N=Ce(c,"onToggleRight",8,()=>{}),J=Ce(c,"newButtonAnchor",12,null);function Q(S){return S==="connected"?"live":S==="reconnecting"?"reconnecting":"offline"}Y(()=>de(f()),()=>{s(x,f()||"you@local")}),Y(()=>e(x),()=>{s(y,e(x).charAt(0).toUpperCase())}),nt(),Ye();var V=vs(),R=a(V);let ce;var H=a(R);At(H,{name:"menu",size:18}),t(R);var X=n(R,4),he=n(a(X),4),ge=a(he);At(ge,{name:"caret-down",size:9}),t(he),t(X),Rt(X,S=>J(S),()=>J());var Se=n(X,2),oe=a(Se),ye=a(oe);At(ye,{name:"search",size:14}),t(oe),it(4),t(Se);var _=n(Se,4),v=n(_,2),i=a(v);{let S=gt(()=>d()==="light"?"moon":"sun");At(i,{get name(){return e(S)},size:15})}t(v);var h=n(v,2),l=a(h),k=n(a(l),2);{var se=S=>{var W=os();u(S,W)};K(k,S=>{I()==="connected"&&S(se)})}t(l);var ve=n(l,2),ke=a(ve,!0);t(ve);var Te=n(ve,2);{var ne=S=>{var W=is(),pe=a(W);t(W),G(()=>M(pe,`${T()??""}ms`)),u(S,W)};K(Te,S=>{I()==="connected"&&S(ne)})}t(h);var ue=n(h,2);{var Le=S=>{var W=cs();F("click",W,function(...pe){var Ae;(Ae=q())==null||Ae.apply(this,pe)}),u(S,W)};K(ue,S=>{m()&&S(Le)})}var ze=n(ue,2);let De;var B=n(ze,2),te=a(B),j=a(te,!0);t(te);var re=n(te,2),b=a(re,!0);t(re),t(B),t(V),G((S,W)=>{ce=fe(R,1,"iconbtn svelte-hhath1",null,ce,{active:A()}),je(v,"title",d()==="light"?"Switch to dark":"Switch to light"),fe(h,1,`connection-pill ${I()??""}`,"svelte-hhath1"),je(h,"title",`WebSocket: ${S??""}`),M(ke,W),De=fe(ze,1,"iconbtn svelte-hhath1",null,De,{active:z()}),M(j,e(x)),M(b,e(y))},[()=>(I(),r(()=>Q(I()))),()=>(I(),r(()=>Q(I())))]),F("click",R,function(...S){var W;(W=D())==null||W.apply(this,S)}),F("click",X,()=>It.update(S=>!S)),F("click",Se,function(...S){var W;(W=w())==null||W.apply(this,S)}),F("click",_,()=>Qt.set(!0)),F("click",v,function(...S){var W;(W=Ja)==null||W.apply(this,S)}),F("click",ze,function(...S){var W;(W=N())==null||W.apply(this,S)}),u(O,V),Ve(),L()}var us=g('<div role="status"><!></div>');function ps(O){const c=()=>Be(qt,"$connection",d),[d,I]=ot();var T=yt(),o=Ke(T);{var L=x=>{var y=us();let f;var w=a(y);{var m=A=>{var z=Wt("Reconnecting…");u(A,z)},q=A=>{var z=Wt("Offline — live updates paused");u(A,z)};K(w,A=>{c()==="reconnecting"?A(m):A(q,-1)})}t(y),G(()=>f=fe(y,1,"banner svelte-l46k7l",null,f,{offline:c()==="offline"})),u(x,y)};K(o,x=>{c()!=="connected"&&x(L)})}u(O,T),I()}const ya="ocrc.pinnedSessions";function fs(){if(typeof localStorage>"u")return[];try{const O=localStorage.getItem(ya),c=O?JSON.parse(O):[];return Array.isArray(c)?c.filter(d=>typeof d=="string"):[]}catch{return[]}}function hs(O){if(!(typeof localStorage>"u"))try{localStorage.setItem(ya,JSON.stringify(O))}catch{}}function bs(){const{subscribe:O,update:c}=Wa(fs());return{subscribe:O,toggle(d){c(I=>{const T=I.includes(d)?I.filter(o=>o!==d):[...I,d];return hs(T),T})}}}const ua=bs();function ms(O,c){return c?O.filter(d=>(d.directory??"")===c):O}var _s=g('<input class="rename-input svelte-1h8243g" placeholder="Session title" aria-label="Session title"/>'),gs=g('<span class="pin-dot svelte-1h8243g" aria-label="已钉住">●</span>'),ys=g('<span class="title svelte-1h8243g"> </span> <!> <span class="actions svelte-1h8243g"><button class="act rename svelte-1h8243g" title="重命名会话" aria-label="重命名会话"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M12 20h9"></path><path d="M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4 12.5-12.5z"></path></svg></button> <button aria-label="钉住会话"><svg width="13" height="13" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M9 4h6l-1 6 3 3v2H7v-2l3-3-1-6z"></path><line x1="12" y1="15" x2="12" y2="21"></line></svg></button> <button class="act trash svelte-1h8243g" title="删除会话" aria-label="删除会话"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M3 6h18M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6M10 11v6M14 11v6M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2"></path></svg></button></span>',1),ws=g('<span class="sep svelte-1h8243g">·</span><span class="repo svelte-1h8243g"> </span>',1),ks=g('<span class="add svelte-1h8243g"> </span>'),xs=g('<span class="del svelte-1h8243g"> </span>'),As=g('<span class="sep svelte-1h8243g">·</span> <!> <!>',1),$s=g('<div class="progress svelte-1h8243g" aria-hidden="true"><span class="progress-fill svelte-1h8243g"></span></div>'),Is=g('<a><div class="line1 svelte-1h8243g"><span><span class="sr-only svelte-1h8243g"> </span></span> <!></div> <div class="meta mono svelte-1h8243g"><span class="id svelte-1h8243g"> </span> <!> <span class="sep svelte-1h8243g">·</span><span> </span> <!></div> <!></a>'),Ss=g('<div class="group-header mono svelte-1h8243g"><span class="gh-label svelte-1h8243g"> </span> <span class="gh-line svelte-1h8243g" aria-hidden="true"></span> <span class="gh-count svelte-1h8243g"> </span></div> <!>',1),zs=g('<div class="empty mono svelte-1h8243g"> </div>'),Cs=g('<div class="sidebar svelte-1h8243g"><!> <!></div>');function Ms(O,c){Ge(c,!1);const d=()=>Be(dt,"$sessionList",x),I=()=>Be(Mt,"$feeds",x),T=()=>Be(qt,"$connection",x),o=()=>Be(Ka,"$activeWorkspace",x),L=()=>Be(ua,"$pinnedSessions",x),[x,y]=ot(),f=p(),w=p(),m=p(),q=p(),A=p(),z=p(),D=p();let N=Ce(c,"activeId",8,void 0),J=Ce(c,"onSelect",8,void 0),Q=Ce(c,"agentId",8,void 0),V=Ce(c,"agentName",8,void 0);const R=24*60*60*1e3;function ce(B,te){return te==="connected"&&Date.now()-B<R}function H(B,te){const j=te[B];if(!j||j.order.length===0)return!1;const re=j.byId[j.order[j.order.length-1]];return(re==null?void 0:re.kind)==="thinking"||(re==null?void 0:re.kind)==="streaming"||(re==null?void 0:re.kind)==="think-stream"}function X(B,te){const j=te[B];if(!j||j.order.length===0)return!1;const re=j.byId[j.order[j.order.length-1]];return(re==null?void 0:re.kind)==="approval"}function he(B,te,j){return H(B.id,te)?"busy":X(B.id,te)?"wait":ce(B.lastActiveAt,j)?"idle":"offline"}function ge(B){const te=Date.now()-B,j=Math.floor(te/6e4);if(j<1)return"now";if(j<60)return`${j}m`;const re=Math.floor(j/60);return re<24?`${re}h`:`${Math.floor(re/24)}d`}function Se(B){return(B.includes("_")?B.slice(B.indexOf("_")+1):B).slice(-8)}function oe(B){if(!B)return"";const te=B.replace(/\/+$/,"").split("/");return te[te.length-1]||""}function ye(B,te){J()&&(B.preventDefault(),J()(te))}function _(B,te){B.preventDefault(),B.stopPropagation(),ua.toggle(te)}let v=p(null),i=p(""),h=p(null);function l(B,te){B.preventDefault(),B.stopPropagation(),s(v,te.id),s(i,te.title||"")}function k(){s(v,null),s(i,"")}async function se(B){const te=e(i).trim();if(!te||e(h)){k();return}s(h,B);try{await Ie.renameSession(B,te),dt.set(await Ie.sessions())}catch(j){alert(`重命名失败:${j.message}`)}finally{s(h,null),s(v,null),s(i,"")}}function ve(B,te){B.key==="Enter"?(B.preventDefault(),se(te)):B.key==="Escape"&&(B.preventDefault(),k())}function ke(B){B.focus(),B.select()}let Te=p(null);async function ne(B,te){if(B.preventDefault(),B.stopPropagation(),!e(Te)&&confirm("Delete this session? This cannot be undone.")){s(Te,te);try{await Ie.deleteSession(te),dt.set(await Ie.sessions()),N()===te&&ea("/")}catch(j){alert(`删除失败:${j.message}`)}finally{s(Te,null)}}}Y(()=>(d(),I(),T()),()=>{s(f,new Map(d().map(B=>[B.id,he(B,I(),T())])))}),Y(()=>(de(Q()),d()),()=>{s(w,Q()?d().filter(B=>B.backendId===Q()||!B.backendId&&Q()==="opencode"):d())}),Y(()=>(e(w),o()),()=>{s(m,ms(e(w),o()))}),Y(()=>e(m),()=>{s(q,[...e(m)].sort((B,te)=>te.lastActiveAt-B.lastActiveAt))}),Y(()=>(e(q),L()),()=>{s(A,e(q).filter(B=>L().includes(B.id)))}),Y(()=>(e(q),L()),()=>{s(z,e(q).filter(B=>!L().includes(B.id)))}),Y(()=>(e(A),e(z)),()=>{s(D,[{key:"pinned",label:"Pinned",rows:e(A)},{key:"recent",label:"Recent",rows:e(z)}])}),nt(),Ye();var ue=Cs(),Le=a(ue);et(Le,1,()=>e(D),B=>B.key,(B,te)=>{var j=yt(),re=Ke(j);{var b=S=>{var W=Ss(),pe=Ke(W),Ae=a(pe),qe=a(Ae,!0);t(Ae);var Oe=n(Ae,4),Pe=a(Oe,!0);t(Oe),t(pe);var le=n(pe,2);et(le,1,()=>(e(te),r(()=>e(te).rows)),$e=>$e.id,($e,Z)=>{var We=Is();let $;var ae=a(We),C=a(ae),P=a(C),E=a(P,!0);t(P),t(C);var ee=n(C,2);{var ie=be=>{var _e=_s();ft(_e),$t(()=>mt(_e,()=>e(i),xe=>s(i,xe))),ta(_e,xe=>ke==null?void 0:ke(xe)),$t(()=>F("click",_e,xe=>xe.preventDefault())),$t(()=>F("keydown",_e,xe=>ve(xe,e(Z).id))),$t(()=>F("blur",_e,()=>se(e(Z).id))),G(()=>_e.disabled=(e(h),e(Z),r(()=>e(h)===e(Z).id))),u(be,_e)},me=be=>{var _e=ys(),xe=Ke(_e),at=a(xe,!0);t(xe);var Qe=n(xe,2);{var ut=pt=>{var Ut=gs();u(pt,Ut)},lt=bt(()=>(L(),e(Z),r(()=>L().includes(e(Z).id))));K(Qe,pt=>{e(lt)&&pt(ut)})}var ct=n(Qe,2),vt=a(ct),ht=n(vt,2);let Bt;var ka=a(ht);t(ht);var sa=n(ht,2);t(ct),G((pt,Ut,xa)=>{M(at,(e(Z),r(()=>e(Z).title||"Untitled session"))),Bt=fe(ht,1,"act pin svelte-1h8243g",null,Bt,pt),je(ht,"title",Ut),je(ka,"fill",xa),sa.disabled=(e(Te),e(Z),r(()=>e(Te)===e(Z).id))},[()=>({on:L().includes(e(Z).id)}),()=>(L(),e(Z),r(()=>L().includes(e(Z).id)?"取消钉住":"钉住")),()=>(L(),e(Z),r(()=>L().includes(e(Z).id)?"currentColor":"none"))]),F("click",vt,pt=>l(pt,e(Z))),F("click",ht,pt=>_(pt,e(Z).id)),F("click",sa,pt=>ne(pt,e(Z).id)),u(be,_e)};K(ee,be=>{e(v),e(Z),r(()=>e(v)===e(Z).id)?be(ie):be(me,-1)})}t(ae);var U=n(ae,2),Ue=a(U),Fe=a(Ue,!0);t(Ue);var Je=n(Ue,2);{var we=be=>{var _e=ws(),xe=n(Ke(_e)),at=a(xe,!0);t(xe),G(Qe=>M(at,Qe),[()=>(e(Z),r(()=>oe(e(Z).directory)))]),u(be,_e)},Me=bt(()=>(e(Z),r(()=>oe(e(Z).directory))));K(Je,be=>{e(Me)&&be(we)})}var tt=n(Je,3),Re=a(tt,!0);t(tt);var Ee=n(tt,2);{var Ne=be=>{var _e=As(),xe=n(Ke(_e),2);{var at=lt=>{var ct=ks(),vt=a(ct);t(ct),G(()=>M(vt,`+${e(Z),r(()=>e(Z).additions)??""}`)),u(lt,ct)};K(xe,lt=>{e(Z),r(()=>e(Z).additions)&<(at)})}var Qe=n(xe,2);{var ut=lt=>{var ct=xs(),vt=a(ct);t(ct),G(()=>M(vt,`−${e(Z),r(()=>e(Z).deletions)??""}`)),u(lt,ct)};K(Qe,lt=>{e(Z),r(()=>e(Z).deletions)&<(ut)})}u(be,_e)};K(Ee,be=>{e(Z),r(()=>e(Z).additions||e(Z).deletions)&&be(Ne)})}t(U);var He=n(U,2);{var Ze=be=>{var _e=$s();u(be,_e)},Xe=bt(()=>(e(f),e(Z),r(()=>e(f).get(e(Z).id)==="busy")));K(He,be=>{e(Xe)&&be(Ze)})}t(We),G((be,_e,xe,at,Qe)=>{je(We,"href",`/${e(Z),r(()=>e(Z).id)??""}/`),$=fe(We,1,"session svelte-1h8243g",null,$,be),fe(C,1,`dot ${_e??""}`,"svelte-1h8243g"),M(E,xe),M(Fe,at),M(Re,Qe)},[()=>({active:N()===e(Z).id,busy:e(f).get(e(Z).id)==="busy"}),()=>(e(f),e(Z),r(()=>e(f).get(e(Z).id)??"offline")),()=>(e(f),e(Z),r(()=>e(f).get(e(Z).id)??"offline")),()=>(e(Z),r(()=>Se(e(Z).id))),()=>(e(Z),r(()=>ge(e(Z).lastActiveAt)))]),F("click",We,be=>ye(be,e(Z).id)),u($e,We)}),G(()=>{M(qe,(e(te),r(()=>e(te).label))),M(Pe,(e(te),r(()=>e(te).rows.length)))}),u(S,W)};K(re,S=>{e(te),r(()=>e(te).rows.length)&&S(b)})}u(B,j)});var ze=n(Le,2);{var De=B=>{var te=zs(),j=a(te);t(te),G(()=>M(j,`no sessions on ${V()??"this agent"??""} yet`)),u(B,te)};K(ze,B=>{e(m),r(()=>e(m).length===0)&&B(De)})}t(ue),u(O,ue),Ve(),y()}var Ts=g('<span class="host mono svelte-wmno67"> </span>'),Ls=g('<button class="collapse svelte-wmno67" title="收起面板" aria-label="收起面板"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 18l-6-6 6-6"></path></svg></button>'),Es=g('<span class="check svelte-wmno67">✓</span>'),qs=g('<button><span class="row-tile svelte-wmno67"> </span> <span class="row-info svelte-wmno67"><span class="row-name mono svelte-wmno67"> </span> <span class="row-host mono svelte-wmno67"> </span></span> <span><span class="sr-only svelte-wmno67"> </span></span> <!></button>'),Bs=g("<button></button>"),Os=g('<div class="picker svelte-wmno67" role="dialog" aria-label="Agent 选择"><div class="picker-list svelte-wmno67"></div> <div class="picker-footer svelte-wmno67"><div class="theme-row svelte-wmno67"><span class="theme-label mono svelte-wmno67"> </span> <div class="swatches svelte-wmno67"><!> <button>auto</button></div></div></div></div>'),Ds=g('<button><span class="switch-tile svelte-wmno67"> </span> <span><span class="sr-only svelte-wmno67"> </span></span> <span class="switch-name mono svelte-wmno67"> </span> <span class="switch-count mono svelte-wmno67"> </span></button>'),Ps=g('<div class="agents-label svelte-wmno67">Agents</div> <div class="switcher-row svelte-wmno67"></div>',1),js=g('<button class="mobile-search svelte-wmno67"><svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><circle cx="11" cy="11" r="7"></circle><path d="M21 21l-4.3-4.3"></path></svg> <span>搜索会话与命令</span></button>'),Ws=g('<div><div class="panel svelte-wmno67"><div class="header svelte-wmno67"><button class="agent-pill svelte-wmno67" aria-haspopup="true"><span class="glyph-tile svelte-wmno67"> </span> <span><span class="sr-only svelte-wmno67"> </span></span> <span class="name mono svelte-wmno67"> </span> <!> <span class="caret svelte-wmno67" aria-hidden="true"><!></span></button> <!> <!></div> <!> <!> <div class="list svelte-wmno67"><!></div> <div class="footer mono svelte-wmno67"><span> </span> <span class="sep svelte-wmno67">·</span> <span> </span></div></div></div>');function Fs(O,c){Ge(c,!1);const d=()=>Be(Ft,"$backends",L),I=()=>Be(dt,"$sessionList",L),T=()=>Be(qt,"$connection",L),o=()=>Be($a,"$accentOverrides",L),[L,x]=ot(),y=p(),f=p(),w=p(),m=p(),q=p(),A=p(),z=p(),D=p();let N=Ce(c,"activeId",8,void 0),J=Ce(c,"drawer",8,!1),Q=p(!1);function V($){const ae=$.split(/[\s\-_:./]+/).filter(Boolean);return ae.length>=2?(ae[0][0]+ae[1][0]).toUpperCase():$.slice(0,2).toUpperCase()}function R($){return V(($==null?void 0:$.name)||($==null?void 0:$.id)||"OC")}function ce($){return $==="online"||$==="connected"?"online":$==="connecting"||$==="reconnecting"?"connecting":$==="offline"?"offline":"online"}async function H($){s(Q,!1),await jt($)}function X(){s(Q,!e(Q))}async function he($){await jt($)}function ge($){$.key==="Escape"&&s(Q,!1)}const Se=24*60*60*1e3;function oe($,ae){return ae==="connected"&&Date.now()-$<Se}function ye($,ae){return xt(ae)}Y(()=>d(),()=>{var $,ae,C;s(y,(($=d())==null?void 0:$.activeId)??((C=(ae=d())==null?void 0:ae.backends[0])==null?void 0:C.id)??"opencode")}),Y(()=>(d(),e(y)),()=>{var $;s(f,($=d())==null?void 0:$.backends.find(ae=>ae.id===e(y)))}),Y(()=>d(),()=>{var $;s(w,(($=d())==null?void 0:$.backends)??[])}),Y(()=>(d(),I()),()=>{var $;s(m,Object.fromEntries(((($=d())==null?void 0:$.backends)??[]).map(ae=>[ae.id,I().filter(C=>C.backendId===ae.id||!C.backendId&&ae.id==="opencode").length])))}),Y(()=>(I(),e(y),T()),()=>{s(q,I().filter($=>($.backendId===e(y)||!$.backendId&&e(y)==="opencode")&&oe($.lastActiveAt,T())).length)}),Y(()=>(I(),e(y)),()=>{s(A,I().filter($=>($.backendId===e(y)||!$.backendId&&e(y)==="opencode")&&($.additions||$.deletions)).length)}),Y(()=>(o(),e(y)),()=>{s(z,ye(o(),e(y)))}),Y(()=>(e(w),o()),()=>{s(D,Object.fromEntries(e(w).map($=>[$.id,ye(o(),$.id)])))}),nt(),Ye();var _=Ws();F("keydown",Lt,ge);let v;var i=a(_),h=a(i),l=a(h),k=a(l),se=a(k,!0);t(k);var ve=n(k,2),ke=a(ve),Te=a(ke,!0);t(ke),t(ve);var ne=n(ve,2),ue=a(ne,!0);t(ne);var Le=n(ne,2);{var ze=$=>{var ae=Ts(),C=a(ae,!0);t(ae),G(()=>M(C,(e(f),r(()=>e(f).host)))),u($,ae)};K(Le,$=>{e(f),r(()=>{var ae;return(ae=e(f))==null?void 0:ae.host})&&$(ze)})}var De=n(Le,2),B=a(De);At(B,{name:"caret-down",size:11}),t(De),t(l);var te=n(l,2);{var j=$=>{var ae=Ls();F("click",ae,()=>Zt.set(!1)),u($,ae)};K(te,$=>{J()||$(j)})}var re=n(te,2);{var b=$=>{var ae=Os(),C=a(ae);et(C,5,()=>e(w),Je=>Je.id,(Je,we)=>{const Me=gt(()=>(e(D),e(we),de(xt),r(()=>e(D)[e(we).id]??xt(e(we).id)))),tt=gt(()=>(e(we),e(y),r(()=>e(we).id===e(y))));var Re=qs();let Ee;var Ne=a(Re),He=a(Ne,!0);t(Ne);var Ze=n(Ne,2),Xe=a(Ze),be=a(Xe,!0);t(Xe);var _e=n(Xe,2),xe=a(_e);t(_e),t(Ze);var at=n(Ze,2),Qe=a(at),ut=a(Qe,!0);t(Qe),t(at);var lt=n(at,2);{var ct=vt=>{var ht=Es();u(vt,ht)};K(lt,vt=>{e(tt)&&vt(ct)})}t(Re),G((vt,ht,Bt)=>{Ee=fe(Re,1,"agent-row svelte-wmno67",null,Ee,{selected:e(tt)}),rt(Ne,`background:${de(wt),de(e(Me)),r(()=>wt[e(Me)])??""}; color:${de(st),de(e(Me)),r(()=>st[e(Me)])??""}; border-color:${de(kt),de(e(Me)),r(()=>kt[e(Me)])??""}`),M(He,vt),M(be,(e(we),r(()=>e(we).name??e(we).id))),M(xe,`${e(we),r(()=>e(we).host??"local")??""} · ${e(m),e(we),r(()=>e(m)[e(we).id]??0)??""} ses`),fe(at,1,`status-dot ${ht??""}`,"svelte-wmno67"),rt(at,`--dot:${de(st),de(e(Me)),r(()=>st[e(Me)])??""}`),M(ut,Bt)},[()=>(e(we),r(()=>R(e(we)))),()=>(e(we),r(()=>ce(e(we).status))),()=>(e(we),r(()=>ce(e(we).status)))]),F("click",Re,()=>H(e(we).id)),u(Je,Re)}),t(C);var P=n(C,2),E=a(P),ee=a(E),ie=a(ee);t(ee);var me=n(ee,2),U=a(me);et(U,1,()=>Pt,Xt,(Je,we)=>{var Me=Bs();let tt;G(()=>{tt=fe(Me,1,"swatch svelte-wmno67",null,tt,{active:e(z)===e(we)}),je(Me,"aria-label",`设置 ${e(we)??""} 主题`),rt(Me,`background:${de(st),e(we),r(()=>st[e(we)])??""}`)}),F("click",Me,()=>Kt(e(y),e(we))),u(Je,Me)});var Ue=n(U,2);let Fe;t(me),t(E),t(P),t(ae),G(Je=>{M(ie,`Theme · ${e(f),r(()=>{var we,Me;return((we=e(f))==null?void 0:we.name)??((Me=e(f))==null?void 0:Me.id)??"Agent"})??""}`),Fe=fe(Ue,1,"auto svelte-wmno67",null,Fe,Je)},[()=>({active:e(z)===Ia(e(y))})]),F("click",Ue,()=>Kt(e(y),null)),u($,ae)};K(re,$=>{e(Q)&&$(b)})}t(h);var S=n(h,2);{var W=$=>{var ae=Ps(),C=n(Ke(ae),2);et(C,5,()=>e(w),P=>P.id,(P,E)=>{const ee=gt(()=>(e(D),e(E),de(xt),r(()=>e(D)[e(E).id]??xt(e(E).id))));var ie=Ds();let me;var U=a(ie),Ue=a(U,!0);t(U);var Fe=n(U,2),Je=a(Fe),we=a(Je,!0);t(Je),t(Fe);var Me=n(Fe,2),tt=a(Me,!0);t(Me);var Re=n(Me,2),Ee=a(Re,!0);t(Re),t(ie),G((Ne,He,Ze)=>{me=fe(ie,1,"switch-pill svelte-wmno67",null,me,{active:e(E).id===e(y)}),rt(U,`background:${de(wt),de(e(ee)),r(()=>wt[e(ee)])??""}; color:${de(st),de(e(ee)),r(()=>st[e(ee)])??""}; border-color:${de(kt),de(e(ee)),r(()=>kt[e(ee)])??""}`),M(Ue,Ne),fe(Fe,1,`status-dot ${He??""}`,"svelte-wmno67"),rt(Fe,`--dot:${de(st),de(e(ee)),r(()=>st[e(ee)])??""}`),M(we,Ze),M(tt,(e(E),r(()=>e(E).name??e(E).id))),M(Ee,(e(m),e(E),r(()=>e(m)[e(E).id]??0)))},[()=>(e(E),r(()=>R(e(E)))),()=>(e(E),r(()=>ce(e(E).status))),()=>(e(E),r(()=>ce(e(E).status)))]),F("click",ie,()=>he(e(E).id)),u(P,ie)}),t(C),u($,ae)};K(S,$=>{de(J()),e(w),r(()=>J()&&e(w).length>1)&&$(W)})}var pe=n(S,2);{var Ae=$=>{var ae=js();F("click",ae,()=>St.set(!0)),u($,ae)};K(pe,$=>{J()&&$(Ae)})}var qe=n(pe,2),Oe=a(qe);{let $=gt(()=>(e(f),r(()=>{var ae,C;return((ae=e(f))==null?void 0:ae.name)??((C=e(f))==null?void 0:C.id)})));Ms(Oe,{get activeId(){return N()},get agentId(){return e(y)},get agentName(){return e($)}})}t(qe);var Pe=n(qe,2),le=a(Pe),$e=a(le);t(le);var Z=n(le,4),We=a(Z);t(Z),t(Pe),t(i),t(_),G(($,ae,C)=>{v=fe(_,1,"agent-panel svelte-wmno67",null,v,{drawer:J()}),je(l,"aria-expanded",e(Q)),rt(k,`background:${de(wt),e(z),r(()=>wt[e(z)])??""}; color:${de(st),e(z),r(()=>st[e(z)])??""}; border-color:${de(kt),e(z),r(()=>kt[e(z)])??""}`),M(se,$),fe(ve,1,`status-dot ${ae??""}`,"svelte-wmno67"),rt(ve,`--dot:${de(st),e(z),r(()=>st[e(z)])??""}`),M(Te,C),M(ue,(e(f),r(()=>{var P,E;return((P=e(f))==null?void 0:P.name)??((E=e(f))==null?void 0:E.id)??"Agent"}))),M($e,`${e(q)??""} 活跃`),M(We,`${e(A)??""} 已推送`)},[()=>(e(f),r(()=>R(e(f)))),()=>(e(f),r(()=>{var $;return ce(($=e(f))==null?void 0:$.status)})),()=>(e(f),r(()=>{var $;return ce(($=e(f))==null?void 0:$.status)}))]),F("click",l,X),u(O,_),Ve(),x()}var Rs=g('<span class="meta svelte-1h1y2gb"> </span>'),Us=g('<div class="bar svelte-1h1y2gb"><div class="fill svelte-1h1y2gb"></div></div>'),Js=g('<button type="button"><span class="box svelte-1h1y2gb"><span class="dot svelte-1h1y2gb"></span> <span class="check svelte-1h1y2gb">✓</span></span> <span class="tx svelte-1h1y2gb"> </span></button>'),Ns=g('<div class="section-label svelte-1h1y2gb">暂无任务</div>'),Ks=g('<div class="task svelte-1h1y2gb"><div class="hd svelte-1h1y2gb"><!></div> <!> <div class="items svelte-1h1y2gb"><!> <!></div></div>');function Hs(O,c){Ge(c,!1);const d=p(),I=p(),T=p();let o=Ce(c,"sessionId",8,void 0),L=Ce(c,"tick",8,0),x=p({total:0,done:0,items:[]}),y=p(new Set),f;async function w(H){if(!H){s(x,{total:0,done:0,items:[]}),s(y,new Set);return}H!==f&&(f=H,s(y,new Set));try{const X=await Ie.todo(H);if(H!==o())return;s(x,Ha(X))}catch{}}function m(H){e(y).has(H)?e(y).delete(H):e(y).add(H),s(y,e(y))}Y(()=>(de(o()),de(L())),()=>{w(o()),L()}),Y(()=>(e(x),e(y)),()=>{s(d,e(x).items.map((H,X)=>({...H,status:e(y).has(X)?H.status==="done"?"pending":"done":H.status})))}),Y(()=>e(d),()=>{s(I,e(d).filter(H=>H.status==="done").length)}),Y(()=>(e(x),e(I)),()=>{s(T,e(x).total?Math.round(e(I)/e(x).total*100):0)}),nt(),Ye();var q=Ks(),A=a(q),z=a(A);{var D=H=>{var X=Rs(),he=a(X);t(X),G(()=>M(he,`${e(I)??""}/${e(x),r(()=>e(x).total)??""}`)),u(H,X)};K(z,H=>{e(x),r(()=>e(x).total)&&H(D)})}t(A);var N=n(A,2);{var J=H=>{var X=Us(),he=a(X);t(X),G(()=>rt(he,`transform:scaleX(${e(T)/100})`)),u(H,X)};K(N,H=>{e(x),r(()=>e(x).total)&&H(J)})}var Q=n(N,2),V=a(Q);et(V,3,()=>e(d),(H,X)=>H.text+"-"+X,(H,X,he)=>{var ge=Js(),Se=n(a(ge),2),oe=a(Se,!0);t(Se),t(ge),G(()=>{fe(ge,1,`row ${e(X),r(()=>e(X).status)??""}`,"svelte-1h1y2gb"),M(oe,(e(X),r(()=>e(X).text)))}),F("click",ge,()=>m(e(he))),u(H,ge)});var R=n(V,2);{var ce=H=>{var X=Ns();u(H,X)};K(R,H=>{e(x),r(()=>e(x).total===0)&&H(ce)})}t(Q),t(q),u(O,q),Ve()}var Qs=g('<div><span class="dot svelte-ehf8ic" aria-hidden="true"></span><span> </span><span class="sr-only svelte-ehf8ic"> </span></div>'),Ys=g('<div class="label">未配置</div>'),Gs=g('<div class="mcp svelte-ehf8ic"><div class="list svelte-ehf8ic"><!> <!></div></div>');function Vs(O,c){Ge(c,!1);let d=Ce(c,"tick",8,0),I=p([]);async function T(){try{s(I,await Ie.mcp())}catch{}}Y(()=>de(d()),()=>{T(),d()}),nt(),Ye();var o=Gs(),L=a(o),x=a(L);et(x,1,()=>e(I),Xt,(w,m)=>{var q=Qs();let A;var z=n(a(q)),D=a(z,!0);t(z);var N=n(z),J=a(N,!0);t(N),t(q),G(()=>{A=fe(q,1,"row svelte-ehf8ic",null,A,{off:e(m).status==="disabled"}),M(D,(e(m),r(()=>e(m).name))),M(J,(e(m),r(()=>e(m).status)))}),u(w,q)});var y=n(x,2);{var f=w=>{var m=Ys();u(w,m)};K(y,w=>{e(I),r(()=>e(I).length===0)&&w(f)})}t(L),t(o),u(O,o),Ve()}var Zs=g('<div><button><span class="dot svelte-pijcyq" aria-hidden="true"></span></button> <div class="txt svelte-pijcyq"><div class="prompt svelte-pijcyq"> </div> <div class="spec mono svelte-pijcyq"> </div></div> <button> </button></div>'),Xs=g('<div class="label svelte-pijcyq">暂无</div>'),en=g('<div class="err svelte-pijcyq"> </div>'),tn=g('<div class="form svelte-pijcyq"><textarea class="prompt-in svelte-pijcyq" rows="2" placeholder="让 agent 做什么?"></textarea> <div class="kind svelte-pijcyq"><label><input type="radio" class="svelte-pijcyq"/> 每 <input class="num svelte-pijcyq" type="number" min="1" max="10080"/> 分钟</label> <label><input type="radio" class="svelte-pijcyq"/> 每天 <input class="time svelte-pijcyq" type="time"/></label></div> <!> <button class="go svelte-pijcyq">创建</button></div>'),an=g('<div class="schedules svelte-pijcyq"><div class="hd svelte-pijcyq"><button class="add svelte-pijcyq"> </button></div> <div class="list svelte-pijcyq"><!> <!></div> <!></div>');function sn(O,c){Ge(c,!1);const d=[];let I=Ce(c,"tick",8,0),T=p([]),o=p(!1),L=p(""),x=p("every"),y=p(30),f=p("09:00"),w=p(""),m=p(),q;async function A(){try{s(T,(await Ie.schedules()).schedules??[])}catch{}}function z(_){return _.kind==="every"?_.minutes>=60&&_.minutes%60===0?`every ${_.minutes/60}h`:`every ${_.minutes}m`:`daily ${_.time}`}function D(_){return _.name||_.prompt}async function N(){if(!e(L).trim())return;s(w,"");const _=e(x)==="every"?{kind:"every",minutes:Math.max(1,Math.round(e(y)))}:{kind:"daily",time:e(f)};try{const v=await Ie.addSchedule({prompt:e(L).trim(),spec:_});if(v.error){s(w,v.error);return}s(L,""),s(o,!1),await A()}catch(v){s(w,v.message)}}async function J(_){s(T,e(T).map(v=>v.id===_.id?{...v,enabled:!v.enabled}:v));try{await Ie.setScheduleEnabled(_.id,!_.enabled),await A()}catch{await A()}}async function Q(_){if(e(m)!==_){s(m,_),clearTimeout(q),q=setTimeout(()=>s(m,void 0),3e3);return}clearTimeout(q),s(m,void 0);try{await Ie.deleteSchedule(_),await A()}catch{}}Y(()=>de(I()),()=>{A(),I()}),nt(),Ye();var V=an(),R=a(V),ce=a(R),H=a(ce,!0);t(ce),t(R);var X=n(R,2),he=a(X);et(he,1,()=>e(T),_=>_.id,(_,v)=>{var i=Zs();let h;var l=a(i);let k;var se=n(l,2),ve=a(se),ke=a(ve,!0);t(ve);var Te=n(ve,2),ne=a(Te,!0);t(Te),t(se);var ue=n(se,2);let Le;var ze=a(ue,!0);t(ue),t(i),G((De,B,te,j)=>{h=fe(i,1,"row svelte-pijcyq",null,h,{off:!e(v).enabled}),k=fe(l,1,"switch svelte-pijcyq",null,k,{on:e(v).enabled}),je(l,"aria-pressed",(e(v),r(()=>e(v).enabled))),je(l,"aria-label",De),M(ke,B),M(ne,te),Le=fe(ue,1,"del svelte-pijcyq",null,Le,{arm:e(m)===e(v).id}),je(ue,"aria-label",`删除 ${j??""}`),M(ze,(e(m),e(v),r(()=>e(m)===e(v).id?"确认?":"✕")))},[()=>(e(v),r(()=>`${e(v).enabled?"停用":"启用"} ${D(e(v))}`)),()=>(e(v),r(()=>D(e(v)))),()=>(e(v),r(()=>z(e(v).spec))),()=>(e(v),r(()=>D(e(v))))]),F("click",l,()=>J(e(v))),F("click",ue,()=>Q(e(v).id)),u(_,i)});var ge=n(he,2);{var Se=_=>{var v=Xs();u(_,v)};K(ge,_=>{e(T),e(o),r(()=>e(T).length===0&&!e(o))&&_(Se)})}t(X);var oe=n(X,2);{var ye=_=>{var v=tn(),i=a(v);Fa(i);var h=n(i,2),l=a(h);let k;var se=a(l);ft(se),se.value=se.__value="every";var ve=n(se,2);ft(ve),it(),t(l);var ke=n(l,2);let Te;var ne=a(ke);ft(ne),ne.value=ne.__value="daily";var ue=n(ne,2);ft(ue),t(ke),t(h);var Le=n(h,2);{var ze=B=>{var te=en(),j=a(te,!0);t(te),G(()=>M(j,e(w))),u(B,te)};K(Le,B=>{e(w)&&B(ze)})}var De=n(Le,2);t(v),G(B=>{k=fe(l,1,"svelte-pijcyq",null,k,{sel:e(x)==="every"}),ve.disabled=e(x)!=="every",Te=fe(ke,1,"svelte-pijcyq",null,Te,{sel:e(x)==="daily"}),ue.disabled=e(x)!=="daily",De.disabled=B},[()=>(e(L),r(()=>!e(L).trim()))]),mt(i,()=>e(L),B=>s(L,B)),ia(d,[],se,()=>e(x),B=>s(x,B)),mt(ve,()=>e(y),B=>s(y,B)),ia(d,[],ne,()=>e(x),B=>s(x,B)),mt(ue,()=>e(f),B=>s(f,B)),F("click",De,N),u(_,v)};K(oe,_=>{e(o)&&_(ye)})}t(V),G(()=>{je(ce,"aria-label",e(o)?"取消新建计划":"新建计划"),M(H,e(o)?"×":"+")}),F("click",ce,()=>s(o,!e(o))),u(O,V),Ve()}var nn=g('<span class="chip svelte-taxat6"> </span>'),rn=g('<button class="more svelte-taxat6"> </button>'),ln=g("<div></div> <!>",1),on=g('<div class="label svelte-taxat6">none</div>'),cn=g('<div class="skills svelte-taxat6"><!></div>');function vn(O,c){Ge(c,!1);const d=p();let I=Ce(c,"tick",8,0),T=p([]),o=p(!1);async function L(){try{s(T,(await Ie.skills()).skills??[])}catch{}}Y(()=>(e(o),e(T)),()=>{s(d,e(o)?e(T):e(T).slice(0,18))}),Y(()=>de(I()),()=>{L(),I()}),nt(),Ye();var x=cn(),y=a(x);{var f=m=>{var q=ln(),A=Ke(q);let z;et(A,5,()=>e(d),J=>J.name,(J,Q)=>{var V=nn(),R=a(V,!0);t(V),G(()=>{je(V,"title",(e(Q),r(()=>e(Q).description??e(Q).name))),M(R,(e(Q),r(()=>e(Q).name)))}),u(J,V)}),t(A);var D=n(A,2);{var N=J=>{var Q=rn(),V=a(Q,!0);t(Q),G(()=>M(V,(e(o),e(T),r(()=>e(o)?"收起":`展开全部 ${e(T).length}`)))),F("click",Q,()=>s(o,!e(o))),u(J,Q)};K(D,J=>{e(T),r(()=>e(T).length>18)&&J(N)})}G(()=>z=fe(A,1,"chips svelte-taxat6",null,z,{clipped:!e(o)&&e(T).length>18})),u(m,q)},w=m=>{var q=on();u(m,q)};K(y,m=>{e(T),r(()=>e(T).length>0)?m(f):m(w,-1)})}t(x),u(O,x),Ve()}var dn=g('<button class="up svelte-tp0rgj" aria-label="上级目录"> </button>'),un=g('<span class="mono"> </span>'),pn=g('<button class="row svelte-tp0rgj"><span class="ico svelte-tp0rgj"> </span> <span class="name svelte-tp0rgj"> </span></button>'),fn=g('<div class="label svelte-tp0rgj">empty</div>'),hn=g('<div class="label svelte-tp0rgj">…</div>'),bn=g('<div class="preview-scrim svelte-tp0rgj" role="button" tabindex="0"><div class="preview svelte-tp0rgj" role="dialog" aria-label="File preview" tabindex="-1"><div class="p-hd svelte-tp0rgj"><span class="mono"> </span> <button class="p-close svelte-tp0rgj" aria-label="关闭预览">✕</button></div> <pre> </pre></div></div>'),mn=g('<div class="files svelte-tp0rgj"><div class="crumb mono svelte-tp0rgj"><!></div> <div class="list svelte-tp0rgj"><!> <!> <!></div> <!></div>');function _n(O,c){Ge(c,!1);const d=()=>Be(dt,"$sessionList",I),[I,T]=ot(),o=p();let L=Ce(c,"sessionId",8,void 0),x=Ce(c,"tick",8,0),y=p([]),f=p("."),w=p(null),m=p(!1),q=p(!1);async function A(){if(e(o)){s(q,!0);try{s(y,(await Ie.browse(e(o),e(f))).files??[])}catch{s(y,[])}finally{s(q,!1)}}}function z(){const v=e(f).replace(/(^|\/)[^/]+\/?$/,"")||".";s(f,v),A()}async function D(v){if(v.type==="directory"){s(f,v.path),await A();return}try{const i=await Ie.fileContent(e(o),v.path);if(i.type!=="text"){s(w,{path:v.path,content:"(二进制文件,无法预览)"}),s(m,!0);return}s(m,!1),s(w,{path:v.path,content:i.content.length>800?i.content.slice(0,800)+`
|
|
1
|
+
import"../chunks/CWj6FrbW.js";import{q as Aa,r as Ye,z as dt,p as Mt,f as Ie,j as Ft,d as $a,a as wt,b as st,c as kt,e as xt,C as Kt,A as Pt,n as Ia,B as jt,l as na,k as pa,m as Sa,g as Ht,v as za,o as ra,E as Ca,h as Jt,u as Ma,t as Ta,G as La,x as la,D as Nt,F as Ea,s as qa}from"../chunks/TuGPYaVf.js";import{ai as Ba,ag as Oa,a1 as $t,b4 as r,a_ as fa,aa as Da,aJ as Pa,am as ja,aE as Ge,ap as Y,aO as s,V as de,a8 as e,aq as nt,J as a,aK as t,aU as n,aw as it,a$ as G,aR as M,a3 as F,w as u,aB as Ve,au as p,Z as gt,a6 as g,M as yt,a4 as Ke,b0 as Wt,b8 as Wa,b5 as bt,$ as Lt,aI as Fa,ay as Gt,Q as Ra,b1 as Ua,a7 as ha,az as Vt,av as oa,a9 as Ct}from"../chunks/BjY4dxcB.js";import{i as K,a as Be,s as ot}from"../chunks/DIEDQ_hk.js";import{m as ba,g as qt,I as At,v as fe,u as je,r as It,d as Qt,B as Ja,A as Na,h as et,a as Ka,t as ft,c as mt,w as rt,n as Zt,k as Xt,q as St,z as Ha,b as ia,p as ma,o as zt,C as Qa,y as Ya,j as _a,l as Ot,i as ca}from"../chunks/BZhYrFQy.js";import{p as Ce,b as Rt}from"../chunks/C2FuqD3s.js";import{g as ea,a as Ga}from"../chunks/_bauirnP.js";function Yt(O,c,d,I,T){var x;Ba&&Oa();var o=(x=c.$$slots)==null?void 0:x[d],L=!1;o===!0&&(o=c[d==="default"?"children":d],L=!0),o===void 0||o(O,L?()=>I:I)}function ta(O,c,d){$t(()=>{var I=r(()=>c(O,d==null?void 0:d())||{});if(I!=null&&I.destroy)return()=>I.destroy()})}function Va(O,c,d){var I=Da(O,c);I&&I.set&&(O[c]=d,fa(()=>{O[c]=null}))}function Za(O,c,d,I,T){var o=()=>{I(d[O])};d.addEventListener(c,o),T?Pa(()=>{d[O]=T()}):o(),(d===document.body||d===window||d===document)&&fa(()=>{d.removeEventListener(c,o)})}function Xa(O,c){var o;var d=(o=O.$$events)==null?void 0:o[c.type],I=ja(d)?d.slice():d==null?[]:[d];for(var T of I)T.call(this,c)}const es=!1,ts=!1,as="always",dl=Object.freeze(Object.defineProperty({__proto__:null,prerender:ts,ssr:es,trailingSlash:as},Symbol.toStringTag,{value:"Module"})),va=[2e3,4e3,8e3,16e3,3e4];function ss(O){const c=Aa();if(!c)return O;const d=O.includes("?")?"&":"?";return`${O}${d}token=${encodeURIComponent(c)}`}function ns(O){let c=null,d=0,I=null,T=null,o=null,L=0,x=!1,y=!1;const f=[];function w(D){var N;qt.set(D),(N=O.onStatus)==null||N.call(O,D)}function m(){I&&(clearTimeout(I),I=null),T&&(clearTimeout(T),T=null),o&&(clearTimeout(o),o=null)}function q(){T=setTimeout(()=>{(c==null?void 0:c.readyState)===WebSocket.OPEN&&(L=performance.now(),c.send(JSON.stringify({type:"ping"})),o=setTimeout(()=>{c==null||c.close(),z()},45e3))},25e3)}function A(){if(!x){w("reconnecting");try{c=new WebSocket(ss(O.url))}catch{z();return}c.onopen=()=>{var D;d=0,w("connected");for(const N of f.splice(0))c==null||c.send(N);y&&((D=O.onReconnect)==null||D.call(O)),y=!0,q()},c.onmessage=D=>{var N;try{const J=JSON.parse(D.data);if(J.type==="pong"){o&&(clearTimeout(o),o=null),L&&ba.set(Math.round(performance.now()-L)),q();return}(N=O.onMessage)==null||N.call(O,J)}catch{}},c.onclose=()=>{m(),x||z()},c.onerror=()=>{c==null||c.close()}}}function z(){if(m(),x)return;w("reconnecting");const D=va[Math.min(d,va.length-1)];d+=1,I=setTimeout(()=>void A(),D)}return A(),{send(D){const N=JSON.stringify(D);(c==null?void 0:c.readyState)===WebSocket.OPEN?c.send(N):f.push(N)},close(){x=!0,m(),f.length=0,c==null||c.close(),c=null,w("offline")}}}let da=new Map;const Tt=new Set;let ga,Et,Dt=!1;function aa(){if(typeof document>"u")return;const O=document.title.replace(/^(🔔 [\d]+ 新动态 — )/,"")||"ocrc";if(Tt.size===0){Et&&(clearInterval(Et),Et=void 0),Dt=!1,document.title=O;return}Et||(document.title=`🔔 ${Tt.size} 新动态 — ${O}`,Et=setInterval(()=>{Dt=!Dt,document.title=Dt?`🔔 ${Tt.size} 新动态 — ${O}`:O},1200))}function rs(O){ga=O,O&&(Tt.delete(O),aa())}function ls(O){for(const c of O){const d=da.get(c.id);da.set(c.id,c.lastActiveAt),!(d===void 0||c.id===ga)&&c.lastActiveAt>d+1500&&(Tt.add(c.id),aa())}}typeof document<"u"&&document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&(Tt.clear(),aa())});var os=g('<span class="dot-ring svelte-hhath1"></span>'),is=g('<span class="connection-latency mono svelte-hhath1"> </span>'),cs=g('<button class="install svelte-hhath1">Install</button>'),vs=g('<header class="titlebar svelte-hhath1"><button aria-label="Sessions"><!></button> <div class="brand svelte-hhath1" title="ocrc"><svg class="brand-mark svelte-hhath1" viewBox="0 0 64 64" fill="none" stroke-width="8" stroke-linecap="round" aria-hidden="true"><path d="M46 15 A24 24 0 1 0 54 32" stroke="var(--text)"></path><circle cx="49" cy="20" r="6" fill="var(--accent)" stroke="none"></circle></svg> <span class="wordmark svelte-hhath1"><b class="svelte-hhath1">ocrc</b></span></div> <button class="new-session svelte-hhath1" title="新建会话、命令面板…"><span class="new-icon svelte-hhath1" aria-hidden="true">+</span> <span class="new-label svelte-hhath1">新建</span> <span class="new-caret svelte-hhath1" aria-hidden="true"><!></span></button> <button class="palette-trigger svelte-hhath1" title="搜索会话与命令 (⌘K)"><span class="palette-icon svelte-hhath1" aria-hidden="true"><!></span> <span class="palette-label svelte-hhath1">搜索会话与命令…</span> <kbd class="palette-keycap mono svelte-hhath1">⌘K</kbd></button> <span class="spacer svelte-hhath1"></span> <button class="themebtn svelte-hhath1" title="机器人与通道" aria-label="机器人与通道"><svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="11" width="18" height="10" rx="2"></rect><circle cx="12" cy="5" r="2"></circle><path d="M12 7v4"></path><path d="M8 16h0M16 16h0"></path></svg></button> <button class="themebtn svelte-hhath1" aria-label="Toggle color theme"><!></button> <span><span class="dot-wrap svelte-hhath1" aria-hidden="true"><span class="dot svelte-hhath1"></span> <!></span> <span class="connection-state svelte-hhath1"> </span> <!></span> <!> <button aria-label="Inspector"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><line x1="4" y1="7" x2="20" y2="7"></line><line x1="4" y1="12" x2="20" y2="12"></line><line x1="4" y1="17" x2="14" y2="17"></line></svg></button> <div class="user svelte-hhath1"><span class="user-email mono svelte-hhath1"> </span> <span class="avatar mono svelte-hhath1" aria-hidden="true"> </span></div></header>');function ds(O,c){Ge(c,!1);const d=()=>Be(Na,"$theme",o),I=()=>Be(qt,"$connection",o),T=()=>Be(ba,"$latency",o),[o,L]=ot(),x=p(),y=p();let f=Ce(c,"email",8,""),w=Ce(c,"onPalette",8),m=Ce(c,"installEvent",8,null),q=Ce(c,"onInstall",8,()=>{}),A=Ce(c,"drawerLeft",8,!1),z=Ce(c,"drawerRight",8,!1),D=Ce(c,"onToggleLeft",8,()=>{}),N=Ce(c,"onToggleRight",8,()=>{}),J=Ce(c,"newButtonAnchor",12,null);function Q(S){return S==="connected"?"live":S==="reconnecting"?"reconnecting":"offline"}Y(()=>de(f()),()=>{s(x,f()||"you@local")}),Y(()=>e(x),()=>{s(y,e(x).charAt(0).toUpperCase())}),nt(),Ye();var V=vs(),R=a(V);let ce;var H=a(R);At(H,{name:"menu",size:18}),t(R);var X=n(R,4),he=n(a(X),4),ge=a(he);At(ge,{name:"caret-down",size:9}),t(he),t(X),Rt(X,S=>J(S),()=>J());var Se=n(X,2),oe=a(Se),ye=a(oe);At(ye,{name:"search",size:14}),t(oe),it(4),t(Se);var _=n(Se,4),v=n(_,2),i=a(v);{let S=gt(()=>d()==="light"?"moon":"sun");At(i,{get name(){return e(S)},size:15})}t(v);var h=n(v,2),l=a(h),k=n(a(l),2);{var se=S=>{var W=os();u(S,W)};K(k,S=>{I()==="connected"&&S(se)})}t(l);var ve=n(l,2),ke=a(ve,!0);t(ve);var Te=n(ve,2);{var ne=S=>{var W=is(),pe=a(W);t(W),G(()=>M(pe,`${T()??""}ms`)),u(S,W)};K(Te,S=>{I()==="connected"&&S(ne)})}t(h);var ue=n(h,2);{var Le=S=>{var W=cs();F("click",W,function(...pe){var Ae;(Ae=q())==null||Ae.apply(this,pe)}),u(S,W)};K(ue,S=>{m()&&S(Le)})}var ze=n(ue,2);let De;var B=n(ze,2),te=a(B),j=a(te,!0);t(te);var re=n(te,2),b=a(re,!0);t(re),t(B),t(V),G((S,W)=>{ce=fe(R,1,"iconbtn svelte-hhath1",null,ce,{active:A()}),je(v,"title",d()==="light"?"Switch to dark":"Switch to light"),fe(h,1,`connection-pill ${I()??""}`,"svelte-hhath1"),je(h,"title",`WebSocket: ${S??""}`),M(ke,W),De=fe(ze,1,"iconbtn svelte-hhath1",null,De,{active:z()}),M(j,e(x)),M(b,e(y))},[()=>(I(),r(()=>Q(I()))),()=>(I(),r(()=>Q(I())))]),F("click",R,function(...S){var W;(W=D())==null||W.apply(this,S)}),F("click",X,()=>It.update(S=>!S)),F("click",Se,function(...S){var W;(W=w())==null||W.apply(this,S)}),F("click",_,()=>Qt.set(!0)),F("click",v,function(...S){var W;(W=Ja)==null||W.apply(this,S)}),F("click",ze,function(...S){var W;(W=N())==null||W.apply(this,S)}),u(O,V),Ve(),L()}var us=g('<div role="status"><!></div>');function ps(O){const c=()=>Be(qt,"$connection",d),[d,I]=ot();var T=yt(),o=Ke(T);{var L=x=>{var y=us();let f;var w=a(y);{var m=A=>{var z=Wt("Reconnecting…");u(A,z)},q=A=>{var z=Wt("Offline — live updates paused");u(A,z)};K(w,A=>{c()==="reconnecting"?A(m):A(q,-1)})}t(y),G(()=>f=fe(y,1,"banner svelte-l46k7l",null,f,{offline:c()==="offline"})),u(x,y)};K(o,x=>{c()!=="connected"&&x(L)})}u(O,T),I()}const ya="ocrc.pinnedSessions";function fs(){if(typeof localStorage>"u")return[];try{const O=localStorage.getItem(ya),c=O?JSON.parse(O):[];return Array.isArray(c)?c.filter(d=>typeof d=="string"):[]}catch{return[]}}function hs(O){if(!(typeof localStorage>"u"))try{localStorage.setItem(ya,JSON.stringify(O))}catch{}}function bs(){const{subscribe:O,update:c}=Wa(fs());return{subscribe:O,toggle(d){c(I=>{const T=I.includes(d)?I.filter(o=>o!==d):[...I,d];return hs(T),T})}}}const ua=bs();function ms(O,c){return c?O.filter(d=>(d.directory??"")===c):O}var _s=g('<input class="rename-input svelte-1h8243g" placeholder="Session title" aria-label="Session title"/>'),gs=g('<span class="pin-dot svelte-1h8243g" aria-label="已钉住">●</span>'),ys=g('<span class="title svelte-1h8243g"> </span> <!> <span class="actions svelte-1h8243g"><button class="act rename svelte-1h8243g" title="重命名会话" aria-label="重命名会话"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M12 20h9"></path><path d="M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4 12.5-12.5z"></path></svg></button> <button aria-label="钉住会话"><svg width="13" height="13" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M9 4h6l-1 6 3 3v2H7v-2l3-3-1-6z"></path><line x1="12" y1="15" x2="12" y2="21"></line></svg></button> <button class="act trash svelte-1h8243g" title="删除会话" aria-label="删除会话"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M3 6h18M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6M10 11v6M14 11v6M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2"></path></svg></button></span>',1),ws=g('<span class="sep svelte-1h8243g">·</span><span class="repo svelte-1h8243g"> </span>',1),ks=g('<span class="add svelte-1h8243g"> </span>'),xs=g('<span class="del svelte-1h8243g"> </span>'),As=g('<span class="sep svelte-1h8243g">·</span> <!> <!>',1),$s=g('<div class="progress svelte-1h8243g" aria-hidden="true"><span class="progress-fill svelte-1h8243g"></span></div>'),Is=g('<a><div class="line1 svelte-1h8243g"><span><span class="sr-only svelte-1h8243g"> </span></span> <!></div> <div class="meta mono svelte-1h8243g"><span class="id svelte-1h8243g"> </span> <!> <span class="sep svelte-1h8243g">·</span><span> </span> <!></div> <!></a>'),Ss=g('<div class="group-header mono svelte-1h8243g"><span class="gh-label svelte-1h8243g"> </span> <span class="gh-line svelte-1h8243g" aria-hidden="true"></span> <span class="gh-count svelte-1h8243g"> </span></div> <!>',1),zs=g('<div class="empty mono svelte-1h8243g"> </div>'),Cs=g('<div class="sidebar svelte-1h8243g"><!> <!></div>');function Ms(O,c){Ge(c,!1);const d=()=>Be(dt,"$sessionList",x),I=()=>Be(Mt,"$feeds",x),T=()=>Be(qt,"$connection",x),o=()=>Be(Ka,"$activeWorkspace",x),L=()=>Be(ua,"$pinnedSessions",x),[x,y]=ot(),f=p(),w=p(),m=p(),q=p(),A=p(),z=p(),D=p();let N=Ce(c,"activeId",8,void 0),J=Ce(c,"onSelect",8,void 0),Q=Ce(c,"agentId",8,void 0),V=Ce(c,"agentName",8,void 0);const R=24*60*60*1e3;function ce(B,te){return te==="connected"&&Date.now()-B<R}function H(B,te){const j=te[B];if(!j||j.order.length===0)return!1;const re=j.byId[j.order[j.order.length-1]];return(re==null?void 0:re.kind)==="thinking"||(re==null?void 0:re.kind)==="streaming"||(re==null?void 0:re.kind)==="think-stream"}function X(B,te){const j=te[B];if(!j||j.order.length===0)return!1;const re=j.byId[j.order[j.order.length-1]];return(re==null?void 0:re.kind)==="approval"}function he(B,te,j){return H(B.id,te)?"busy":X(B.id,te)?"wait":ce(B.lastActiveAt,j)?"idle":"offline"}function ge(B){const te=Date.now()-B,j=Math.floor(te/6e4);if(j<1)return"now";if(j<60)return`${j}m`;const re=Math.floor(j/60);return re<24?`${re}h`:`${Math.floor(re/24)}d`}function Se(B){return(B.includes("_")?B.slice(B.indexOf("_")+1):B).slice(-8)}function oe(B){if(!B)return"";const te=B.replace(/\/+$/,"").split("/");return te[te.length-1]||""}function ye(B,te){J()&&(B.preventDefault(),J()(te))}function _(B,te){B.preventDefault(),B.stopPropagation(),ua.toggle(te)}let v=p(null),i=p(""),h=p(null);function l(B,te){B.preventDefault(),B.stopPropagation(),s(v,te.id),s(i,te.title||"")}function k(){s(v,null),s(i,"")}async function se(B){const te=e(i).trim();if(!te||e(h)){k();return}s(h,B);try{await Ie.renameSession(B,te),dt.set(await Ie.sessions())}catch(j){alert(`重命名失败:${j.message}`)}finally{s(h,null),s(v,null),s(i,"")}}function ve(B,te){B.key==="Enter"?(B.preventDefault(),se(te)):B.key==="Escape"&&(B.preventDefault(),k())}function ke(B){B.focus(),B.select()}let Te=p(null);async function ne(B,te){if(B.preventDefault(),B.stopPropagation(),!e(Te)&&confirm("Delete this session? This cannot be undone.")){s(Te,te);try{await Ie.deleteSession(te),dt.set(await Ie.sessions()),N()===te&&ea("/")}catch(j){alert(`删除失败:${j.message}`)}finally{s(Te,null)}}}Y(()=>(d(),I(),T()),()=>{s(f,new Map(d().map(B=>[B.id,he(B,I(),T())])))}),Y(()=>(de(Q()),d()),()=>{s(w,Q()?d().filter(B=>B.backendId===Q()||!B.backendId&&Q()==="opencode"):d())}),Y(()=>(e(w),o()),()=>{s(m,ms(e(w),o()))}),Y(()=>e(m),()=>{s(q,[...e(m)].sort((B,te)=>te.lastActiveAt-B.lastActiveAt))}),Y(()=>(e(q),L()),()=>{s(A,e(q).filter(B=>L().includes(B.id)))}),Y(()=>(e(q),L()),()=>{s(z,e(q).filter(B=>!L().includes(B.id)))}),Y(()=>(e(A),e(z)),()=>{s(D,[{key:"pinned",label:"Pinned",rows:e(A)},{key:"recent",label:"Recent",rows:e(z)}])}),nt(),Ye();var ue=Cs(),Le=a(ue);et(Le,1,()=>e(D),B=>B.key,(B,te)=>{var j=yt(),re=Ke(j);{var b=S=>{var W=Ss(),pe=Ke(W),Ae=a(pe),qe=a(Ae,!0);t(Ae);var Oe=n(Ae,4),Pe=a(Oe,!0);t(Oe),t(pe);var le=n(pe,2);et(le,1,()=>(e(te),r(()=>e(te).rows)),$e=>$e.id,($e,Z)=>{var We=Is();let $;var ae=a(We),C=a(ae),P=a(C),E=a(P,!0);t(P),t(C);var ee=n(C,2);{var ie=be=>{var _e=_s();ft(_e),$t(()=>mt(_e,()=>e(i),xe=>s(i,xe))),ta(_e,xe=>ke==null?void 0:ke(xe)),$t(()=>F("click",_e,xe=>xe.preventDefault())),$t(()=>F("keydown",_e,xe=>ve(xe,e(Z).id))),$t(()=>F("blur",_e,()=>se(e(Z).id))),G(()=>_e.disabled=(e(h),e(Z),r(()=>e(h)===e(Z).id))),u(be,_e)},me=be=>{var _e=ys(),xe=Ke(_e),at=a(xe,!0);t(xe);var Qe=n(xe,2);{var ut=pt=>{var Ut=gs();u(pt,Ut)},lt=bt(()=>(L(),e(Z),r(()=>L().includes(e(Z).id))));K(Qe,pt=>{e(lt)&&pt(ut)})}var ct=n(Qe,2),vt=a(ct),ht=n(vt,2);let Bt;var ka=a(ht);t(ht);var sa=n(ht,2);t(ct),G((pt,Ut,xa)=>{M(at,(e(Z),r(()=>e(Z).title||"Untitled session"))),Bt=fe(ht,1,"act pin svelte-1h8243g",null,Bt,pt),je(ht,"title",Ut),je(ka,"fill",xa),sa.disabled=(e(Te),e(Z),r(()=>e(Te)===e(Z).id))},[()=>({on:L().includes(e(Z).id)}),()=>(L(),e(Z),r(()=>L().includes(e(Z).id)?"取消钉住":"钉住")),()=>(L(),e(Z),r(()=>L().includes(e(Z).id)?"currentColor":"none"))]),F("click",vt,pt=>l(pt,e(Z))),F("click",ht,pt=>_(pt,e(Z).id)),F("click",sa,pt=>ne(pt,e(Z).id)),u(be,_e)};K(ee,be=>{e(v),e(Z),r(()=>e(v)===e(Z).id)?be(ie):be(me,-1)})}t(ae);var U=n(ae,2),Ue=a(U),Fe=a(Ue,!0);t(Ue);var Je=n(Ue,2);{var we=be=>{var _e=ws(),xe=n(Ke(_e)),at=a(xe,!0);t(xe),G(Qe=>M(at,Qe),[()=>(e(Z),r(()=>oe(e(Z).directory)))]),u(be,_e)},Me=bt(()=>(e(Z),r(()=>oe(e(Z).directory))));K(Je,be=>{e(Me)&&be(we)})}var tt=n(Je,3),Re=a(tt,!0);t(tt);var Ee=n(tt,2);{var Ne=be=>{var _e=As(),xe=n(Ke(_e),2);{var at=lt=>{var ct=ks(),vt=a(ct);t(ct),G(()=>M(vt,`+${e(Z),r(()=>e(Z).additions)??""}`)),u(lt,ct)};K(xe,lt=>{e(Z),r(()=>e(Z).additions)&<(at)})}var Qe=n(xe,2);{var ut=lt=>{var ct=xs(),vt=a(ct);t(ct),G(()=>M(vt,`−${e(Z),r(()=>e(Z).deletions)??""}`)),u(lt,ct)};K(Qe,lt=>{e(Z),r(()=>e(Z).deletions)&<(ut)})}u(be,_e)};K(Ee,be=>{e(Z),r(()=>e(Z).additions||e(Z).deletions)&&be(Ne)})}t(U);var He=n(U,2);{var Ze=be=>{var _e=$s();u(be,_e)},Xe=bt(()=>(e(f),e(Z),r(()=>e(f).get(e(Z).id)==="busy")));K(He,be=>{e(Xe)&&be(Ze)})}t(We),G((be,_e,xe,at,Qe)=>{je(We,"href",`/${e(Z),r(()=>e(Z).id)??""}/`),$=fe(We,1,"session svelte-1h8243g",null,$,be),fe(C,1,`dot ${_e??""}`,"svelte-1h8243g"),M(E,xe),M(Fe,at),M(Re,Qe)},[()=>({active:N()===e(Z).id,busy:e(f).get(e(Z).id)==="busy"}),()=>(e(f),e(Z),r(()=>e(f).get(e(Z).id)??"offline")),()=>(e(f),e(Z),r(()=>e(f).get(e(Z).id)??"offline")),()=>(e(Z),r(()=>Se(e(Z).id))),()=>(e(Z),r(()=>ge(e(Z).lastActiveAt)))]),F("click",We,be=>ye(be,e(Z).id)),u($e,We)}),G(()=>{M(qe,(e(te),r(()=>e(te).label))),M(Pe,(e(te),r(()=>e(te).rows.length)))}),u(S,W)};K(re,S=>{e(te),r(()=>e(te).rows.length)&&S(b)})}u(B,j)});var ze=n(Le,2);{var De=B=>{var te=zs(),j=a(te);t(te),G(()=>M(j,`no sessions on ${V()??"this agent"??""} yet`)),u(B,te)};K(ze,B=>{e(m),r(()=>e(m).length===0)&&B(De)})}t(ue),u(O,ue),Ve(),y()}var Ts=g('<span class="host mono svelte-wmno67"> </span>'),Ls=g('<button class="collapse svelte-wmno67" title="收起面板" aria-label="收起面板"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 18l-6-6 6-6"></path></svg></button>'),Es=g('<span class="check svelte-wmno67">✓</span>'),qs=g('<button><span class="row-tile svelte-wmno67"> </span> <span class="row-info svelte-wmno67"><span class="row-name mono svelte-wmno67"> </span> <span class="row-host mono svelte-wmno67"> </span></span> <span><span class="sr-only svelte-wmno67"> </span></span> <!></button>'),Bs=g("<button></button>"),Os=g('<div class="picker svelte-wmno67" role="dialog" aria-label="Agent 选择"><div class="picker-list svelte-wmno67"></div> <div class="picker-footer svelte-wmno67"><div class="theme-row svelte-wmno67"><span class="theme-label mono svelte-wmno67"> </span> <div class="swatches svelte-wmno67"><!> <button>auto</button></div></div></div></div>'),Ds=g('<button><span class="switch-tile svelte-wmno67"> </span> <span><span class="sr-only svelte-wmno67"> </span></span> <span class="switch-name mono svelte-wmno67"> </span> <span class="switch-count mono svelte-wmno67"> </span></button>'),Ps=g('<div class="agents-label svelte-wmno67">Agents</div> <div class="switcher-row svelte-wmno67"></div>',1),js=g('<button class="mobile-search svelte-wmno67"><svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><circle cx="11" cy="11" r="7"></circle><path d="M21 21l-4.3-4.3"></path></svg> <span>搜索会话与命令</span></button>'),Ws=g('<div><div class="panel svelte-wmno67"><div class="header svelte-wmno67"><button class="agent-pill svelte-wmno67" aria-haspopup="true"><span class="glyph-tile svelte-wmno67"> </span> <span><span class="sr-only svelte-wmno67"> </span></span> <span class="name mono svelte-wmno67"> </span> <!> <span class="caret svelte-wmno67" aria-hidden="true"><!></span></button> <!> <!></div> <!> <!> <div class="list svelte-wmno67"><!></div> <div class="footer mono svelte-wmno67"><span> </span> <span class="sep svelte-wmno67">·</span> <span> </span></div></div></div>');function Fs(O,c){Ge(c,!1);const d=()=>Be(Ft,"$backends",L),I=()=>Be(dt,"$sessionList",L),T=()=>Be(qt,"$connection",L),o=()=>Be($a,"$accentOverrides",L),[L,x]=ot(),y=p(),f=p(),w=p(),m=p(),q=p(),A=p(),z=p(),D=p();let N=Ce(c,"activeId",8,void 0),J=Ce(c,"drawer",8,!1),Q=p(!1);function V($){const ae=$.split(/[\s\-_:./]+/).filter(Boolean);return ae.length>=2?(ae[0][0]+ae[1][0]).toUpperCase():$.slice(0,2).toUpperCase()}function R($){return V(($==null?void 0:$.name)||($==null?void 0:$.id)||"OC")}function ce($){return $==="online"||$==="connected"?"online":$==="connecting"||$==="reconnecting"?"connecting":$==="offline"?"offline":"online"}async function H($){s(Q,!1),await jt($)}function X(){s(Q,!e(Q))}async function he($){await jt($)}function ge($){$.key==="Escape"&&s(Q,!1)}const Se=24*60*60*1e3;function oe($,ae){return ae==="connected"&&Date.now()-$<Se}function ye($,ae){return xt(ae)}Y(()=>d(),()=>{var $,ae,C;s(y,(($=d())==null?void 0:$.activeId)??((C=(ae=d())==null?void 0:ae.backends[0])==null?void 0:C.id)??"opencode")}),Y(()=>(d(),e(y)),()=>{var $;s(f,($=d())==null?void 0:$.backends.find(ae=>ae.id===e(y)))}),Y(()=>d(),()=>{var $;s(w,(($=d())==null?void 0:$.backends)??[])}),Y(()=>(d(),I()),()=>{var $;s(m,Object.fromEntries(((($=d())==null?void 0:$.backends)??[]).map(ae=>[ae.id,I().filter(C=>C.backendId===ae.id||!C.backendId&&ae.id==="opencode").length])))}),Y(()=>(I(),e(y),T()),()=>{s(q,I().filter($=>($.backendId===e(y)||!$.backendId&&e(y)==="opencode")&&oe($.lastActiveAt,T())).length)}),Y(()=>(I(),e(y)),()=>{s(A,I().filter($=>($.backendId===e(y)||!$.backendId&&e(y)==="opencode")&&($.additions||$.deletions)).length)}),Y(()=>(o(),e(y)),()=>{s(z,ye(o(),e(y)))}),Y(()=>(e(w),o()),()=>{s(D,Object.fromEntries(e(w).map($=>[$.id,ye(o(),$.id)])))}),nt(),Ye();var _=Ws();F("keydown",Lt,ge);let v;var i=a(_),h=a(i),l=a(h),k=a(l),se=a(k,!0);t(k);var ve=n(k,2),ke=a(ve),Te=a(ke,!0);t(ke),t(ve);var ne=n(ve,2),ue=a(ne,!0);t(ne);var Le=n(ne,2);{var ze=$=>{var ae=Ts(),C=a(ae,!0);t(ae),G(()=>M(C,(e(f),r(()=>e(f).host)))),u($,ae)};K(Le,$=>{e(f),r(()=>{var ae;return(ae=e(f))==null?void 0:ae.host})&&$(ze)})}var De=n(Le,2),B=a(De);At(B,{name:"caret-down",size:11}),t(De),t(l);var te=n(l,2);{var j=$=>{var ae=Ls();F("click",ae,()=>Zt.set(!1)),u($,ae)};K(te,$=>{J()||$(j)})}var re=n(te,2);{var b=$=>{var ae=Os(),C=a(ae);et(C,5,()=>e(w),Je=>Je.id,(Je,we)=>{const Me=gt(()=>(e(D),e(we),de(xt),r(()=>e(D)[e(we).id]??xt(e(we).id)))),tt=gt(()=>(e(we),e(y),r(()=>e(we).id===e(y))));var Re=qs();let Ee;var Ne=a(Re),He=a(Ne,!0);t(Ne);var Ze=n(Ne,2),Xe=a(Ze),be=a(Xe,!0);t(Xe);var _e=n(Xe,2),xe=a(_e);t(_e),t(Ze);var at=n(Ze,2),Qe=a(at),ut=a(Qe,!0);t(Qe),t(at);var lt=n(at,2);{var ct=vt=>{var ht=Es();u(vt,ht)};K(lt,vt=>{e(tt)&&vt(ct)})}t(Re),G((vt,ht,Bt)=>{Ee=fe(Re,1,"agent-row svelte-wmno67",null,Ee,{selected:e(tt)}),rt(Ne,`background:${de(wt),de(e(Me)),r(()=>wt[e(Me)])??""}; color:${de(st),de(e(Me)),r(()=>st[e(Me)])??""}; border-color:${de(kt),de(e(Me)),r(()=>kt[e(Me)])??""}`),M(He,vt),M(be,(e(we),r(()=>e(we).name??e(we).id))),M(xe,`${e(we),r(()=>e(we).host??"local")??""} · ${e(m),e(we),r(()=>e(m)[e(we).id]??0)??""} ses`),fe(at,1,`status-dot ${ht??""}`,"svelte-wmno67"),rt(at,`--dot:${de(st),de(e(Me)),r(()=>st[e(Me)])??""}`),M(ut,Bt)},[()=>(e(we),r(()=>R(e(we)))),()=>(e(we),r(()=>ce(e(we).status))),()=>(e(we),r(()=>ce(e(we).status)))]),F("click",Re,()=>H(e(we).id)),u(Je,Re)}),t(C);var P=n(C,2),E=a(P),ee=a(E),ie=a(ee);t(ee);var me=n(ee,2),U=a(me);et(U,1,()=>Pt,Xt,(Je,we)=>{var Me=Bs();let tt;G(()=>{tt=fe(Me,1,"swatch svelte-wmno67",null,tt,{active:e(z)===e(we)}),je(Me,"aria-label",`设置 ${e(we)??""} 主题`),rt(Me,`background:${de(st),e(we),r(()=>st[e(we)])??""}`)}),F("click",Me,()=>Kt(e(y),e(we))),u(Je,Me)});var Ue=n(U,2);let Fe;t(me),t(E),t(P),t(ae),G(Je=>{M(ie,`Theme · ${e(f),r(()=>{var we,Me;return((we=e(f))==null?void 0:we.name)??((Me=e(f))==null?void 0:Me.id)??"Agent"})??""}`),Fe=fe(Ue,1,"auto svelte-wmno67",null,Fe,Je)},[()=>({active:e(z)===Ia(e(y))})]),F("click",Ue,()=>Kt(e(y),null)),u($,ae)};K(re,$=>{e(Q)&&$(b)})}t(h);var S=n(h,2);{var W=$=>{var ae=Ps(),C=n(Ke(ae),2);et(C,5,()=>e(w),P=>P.id,(P,E)=>{const ee=gt(()=>(e(D),e(E),de(xt),r(()=>e(D)[e(E).id]??xt(e(E).id))));var ie=Ds();let me;var U=a(ie),Ue=a(U,!0);t(U);var Fe=n(U,2),Je=a(Fe),we=a(Je,!0);t(Je),t(Fe);var Me=n(Fe,2),tt=a(Me,!0);t(Me);var Re=n(Me,2),Ee=a(Re,!0);t(Re),t(ie),G((Ne,He,Ze)=>{me=fe(ie,1,"switch-pill svelte-wmno67",null,me,{active:e(E).id===e(y)}),rt(U,`background:${de(wt),de(e(ee)),r(()=>wt[e(ee)])??""}; color:${de(st),de(e(ee)),r(()=>st[e(ee)])??""}; border-color:${de(kt),de(e(ee)),r(()=>kt[e(ee)])??""}`),M(Ue,Ne),fe(Fe,1,`status-dot ${He??""}`,"svelte-wmno67"),rt(Fe,`--dot:${de(st),de(e(ee)),r(()=>st[e(ee)])??""}`),M(we,Ze),M(tt,(e(E),r(()=>e(E).name??e(E).id))),M(Ee,(e(m),e(E),r(()=>e(m)[e(E).id]??0)))},[()=>(e(E),r(()=>R(e(E)))),()=>(e(E),r(()=>ce(e(E).status))),()=>(e(E),r(()=>ce(e(E).status)))]),F("click",ie,()=>he(e(E).id)),u(P,ie)}),t(C),u($,ae)};K(S,$=>{de(J()),e(w),r(()=>J()&&e(w).length>1)&&$(W)})}var pe=n(S,2);{var Ae=$=>{var ae=js();F("click",ae,()=>St.set(!0)),u($,ae)};K(pe,$=>{J()&&$(Ae)})}var qe=n(pe,2),Oe=a(qe);{let $=gt(()=>(e(f),r(()=>{var ae,C;return((ae=e(f))==null?void 0:ae.name)??((C=e(f))==null?void 0:C.id)})));Ms(Oe,{get activeId(){return N()},get agentId(){return e(y)},get agentName(){return e($)}})}t(qe);var Pe=n(qe,2),le=a(Pe),$e=a(le);t(le);var Z=n(le,4),We=a(Z);t(Z),t(Pe),t(i),t(_),G(($,ae,C)=>{v=fe(_,1,"agent-panel svelte-wmno67",null,v,{drawer:J()}),je(l,"aria-expanded",e(Q)),rt(k,`background:${de(wt),e(z),r(()=>wt[e(z)])??""}; color:${de(st),e(z),r(()=>st[e(z)])??""}; border-color:${de(kt),e(z),r(()=>kt[e(z)])??""}`),M(se,$),fe(ve,1,`status-dot ${ae??""}`,"svelte-wmno67"),rt(ve,`--dot:${de(st),e(z),r(()=>st[e(z)])??""}`),M(Te,C),M(ue,(e(f),r(()=>{var P,E;return((P=e(f))==null?void 0:P.name)??((E=e(f))==null?void 0:E.id)??"Agent"}))),M($e,`${e(q)??""} 活跃`),M(We,`${e(A)??""} 已推送`)},[()=>(e(f),r(()=>R(e(f)))),()=>(e(f),r(()=>{var $;return ce(($=e(f))==null?void 0:$.status)})),()=>(e(f),r(()=>{var $;return ce(($=e(f))==null?void 0:$.status)}))]),F("click",l,X),u(O,_),Ve(),x()}var Rs=g('<span class="meta svelte-1h1y2gb"> </span>'),Us=g('<div class="bar svelte-1h1y2gb"><div class="fill svelte-1h1y2gb"></div></div>'),Js=g('<button type="button"><span class="box svelte-1h1y2gb"><span class="dot svelte-1h1y2gb"></span> <span class="check svelte-1h1y2gb">✓</span></span> <span class="tx svelte-1h1y2gb"> </span></button>'),Ns=g('<div class="section-label svelte-1h1y2gb">暂无任务</div>'),Ks=g('<div class="task svelte-1h1y2gb"><div class="hd svelte-1h1y2gb"><!></div> <!> <div class="items svelte-1h1y2gb"><!> <!></div></div>');function Hs(O,c){Ge(c,!1);const d=p(),I=p(),T=p();let o=Ce(c,"sessionId",8,void 0),L=Ce(c,"tick",8,0),x=p({total:0,done:0,items:[]}),y=p(new Set),f;async function w(H){if(!H){s(x,{total:0,done:0,items:[]}),s(y,new Set);return}H!==f&&(f=H,s(y,new Set));try{const X=await Ie.todo(H);if(H!==o())return;s(x,Ha(X))}catch{}}function m(H){e(y).has(H)?e(y).delete(H):e(y).add(H),s(y,e(y))}Y(()=>(de(o()),de(L())),()=>{w(o()),L()}),Y(()=>(e(x),e(y)),()=>{s(d,e(x).items.map((H,X)=>({...H,status:e(y).has(X)?H.status==="done"?"pending":"done":H.status})))}),Y(()=>e(d),()=>{s(I,e(d).filter(H=>H.status==="done").length)}),Y(()=>(e(x),e(I)),()=>{s(T,e(x).total?Math.round(e(I)/e(x).total*100):0)}),nt(),Ye();var q=Ks(),A=a(q),z=a(A);{var D=H=>{var X=Rs(),he=a(X);t(X),G(()=>M(he,`${e(I)??""}/${e(x),r(()=>e(x).total)??""}`)),u(H,X)};K(z,H=>{e(x),r(()=>e(x).total)&&H(D)})}t(A);var N=n(A,2);{var J=H=>{var X=Us(),he=a(X);t(X),G(()=>rt(he,`transform:scaleX(${e(T)/100})`)),u(H,X)};K(N,H=>{e(x),r(()=>e(x).total)&&H(J)})}var Q=n(N,2),V=a(Q);et(V,3,()=>e(d),(H,X)=>H.text+"-"+X,(H,X,he)=>{var ge=Js(),Se=n(a(ge),2),oe=a(Se,!0);t(Se),t(ge),G(()=>{fe(ge,1,`row ${e(X),r(()=>e(X).status)??""}`,"svelte-1h1y2gb"),M(oe,(e(X),r(()=>e(X).text)))}),F("click",ge,()=>m(e(he))),u(H,ge)});var R=n(V,2);{var ce=H=>{var X=Ns();u(H,X)};K(R,H=>{e(x),r(()=>e(x).total===0)&&H(ce)})}t(Q),t(q),u(O,q),Ve()}var Qs=g('<div><span class="dot svelte-ehf8ic" aria-hidden="true"></span><span> </span><span class="sr-only svelte-ehf8ic"> </span></div>'),Ys=g('<div class="label">未配置</div>'),Gs=g('<div class="mcp svelte-ehf8ic"><div class="list svelte-ehf8ic"><!> <!></div></div>');function Vs(O,c){Ge(c,!1);let d=Ce(c,"tick",8,0),I=p([]);async function T(){try{s(I,await Ie.mcp())}catch{}}Y(()=>de(d()),()=>{T(),d()}),nt(),Ye();var o=Gs(),L=a(o),x=a(L);et(x,1,()=>e(I),Xt,(w,m)=>{var q=Qs();let A;var z=n(a(q)),D=a(z,!0);t(z);var N=n(z),J=a(N,!0);t(N),t(q),G(()=>{A=fe(q,1,"row svelte-ehf8ic",null,A,{off:e(m).status==="disabled"}),M(D,(e(m),r(()=>e(m).name))),M(J,(e(m),r(()=>e(m).status)))}),u(w,q)});var y=n(x,2);{var f=w=>{var m=Ys();u(w,m)};K(y,w=>{e(I),r(()=>e(I).length===0)&&w(f)})}t(L),t(o),u(O,o),Ve()}var Zs=g('<div><button><span class="dot svelte-pijcyq" aria-hidden="true"></span></button> <div class="txt svelte-pijcyq"><div class="prompt svelte-pijcyq"> </div> <div class="spec mono svelte-pijcyq"> </div></div> <button> </button></div>'),Xs=g('<div class="label svelte-pijcyq">暂无</div>'),en=g('<div class="err svelte-pijcyq"> </div>'),tn=g('<div class="form svelte-pijcyq"><textarea class="prompt-in svelte-pijcyq" rows="2" placeholder="让 agent 做什么?"></textarea> <div class="kind svelte-pijcyq"><label><input type="radio" class="svelte-pijcyq"/> 每 <input class="num svelte-pijcyq" type="number" min="1" max="10080"/> 分钟</label> <label><input type="radio" class="svelte-pijcyq"/> 每天 <input class="time svelte-pijcyq" type="time"/></label></div> <!> <button class="go svelte-pijcyq">创建</button></div>'),an=g('<div class="schedules svelte-pijcyq"><div class="hd svelte-pijcyq"><button class="add svelte-pijcyq"> </button></div> <div class="list svelte-pijcyq"><!> <!></div> <!></div>');function sn(O,c){Ge(c,!1);const d=[];let I=Ce(c,"tick",8,0),T=p([]),o=p(!1),L=p(""),x=p("every"),y=p(30),f=p("09:00"),w=p(""),m=p(),q;async function A(){try{s(T,(await Ie.schedules()).schedules??[])}catch{}}function z(_){return _.kind==="every"?_.minutes>=60&&_.minutes%60===0?`every ${_.minutes/60}h`:`every ${_.minutes}m`:`daily ${_.time}`}function D(_){return _.name||_.prompt}async function N(){if(!e(L).trim())return;s(w,"");const _=e(x)==="every"?{kind:"every",minutes:Math.max(1,Math.round(e(y)))}:{kind:"daily",time:e(f)};try{const v=await Ie.addSchedule({prompt:e(L).trim(),spec:_});if(v.error){s(w,v.error);return}s(L,""),s(o,!1),await A()}catch(v){s(w,v.message)}}async function J(_){s(T,e(T).map(v=>v.id===_.id?{...v,enabled:!v.enabled}:v));try{await Ie.setScheduleEnabled(_.id,!_.enabled),await A()}catch{await A()}}async function Q(_){if(e(m)!==_){s(m,_),clearTimeout(q),q=setTimeout(()=>s(m,void 0),3e3);return}clearTimeout(q),s(m,void 0);try{await Ie.deleteSchedule(_),await A()}catch{}}Y(()=>de(I()),()=>{A(),I()}),nt(),Ye();var V=an(),R=a(V),ce=a(R),H=a(ce,!0);t(ce),t(R);var X=n(R,2),he=a(X);et(he,1,()=>e(T),_=>_.id,(_,v)=>{var i=Zs();let h;var l=a(i);let k;var se=n(l,2),ve=a(se),ke=a(ve,!0);t(ve);var Te=n(ve,2),ne=a(Te,!0);t(Te),t(se);var ue=n(se,2);let Le;var ze=a(ue,!0);t(ue),t(i),G((De,B,te,j)=>{h=fe(i,1,"row svelte-pijcyq",null,h,{off:!e(v).enabled}),k=fe(l,1,"switch svelte-pijcyq",null,k,{on:e(v).enabled}),je(l,"aria-pressed",(e(v),r(()=>e(v).enabled))),je(l,"aria-label",De),M(ke,B),M(ne,te),Le=fe(ue,1,"del svelte-pijcyq",null,Le,{arm:e(m)===e(v).id}),je(ue,"aria-label",`删除 ${j??""}`),M(ze,(e(m),e(v),r(()=>e(m)===e(v).id?"确认?":"✕")))},[()=>(e(v),r(()=>`${e(v).enabled?"停用":"启用"} ${D(e(v))}`)),()=>(e(v),r(()=>D(e(v)))),()=>(e(v),r(()=>z(e(v).spec))),()=>(e(v),r(()=>D(e(v))))]),F("click",l,()=>J(e(v))),F("click",ue,()=>Q(e(v).id)),u(_,i)});var ge=n(he,2);{var Se=_=>{var v=Xs();u(_,v)};K(ge,_=>{e(T),e(o),r(()=>e(T).length===0&&!e(o))&&_(Se)})}t(X);var oe=n(X,2);{var ye=_=>{var v=tn(),i=a(v);Fa(i);var h=n(i,2),l=a(h);let k;var se=a(l);ft(se),se.value=se.__value="every";var ve=n(se,2);ft(ve),it(),t(l);var ke=n(l,2);let Te;var ne=a(ke);ft(ne),ne.value=ne.__value="daily";var ue=n(ne,2);ft(ue),t(ke),t(h);var Le=n(h,2);{var ze=B=>{var te=en(),j=a(te,!0);t(te),G(()=>M(j,e(w))),u(B,te)};K(Le,B=>{e(w)&&B(ze)})}var De=n(Le,2);t(v),G(B=>{k=fe(l,1,"svelte-pijcyq",null,k,{sel:e(x)==="every"}),ve.disabled=e(x)!=="every",Te=fe(ke,1,"svelte-pijcyq",null,Te,{sel:e(x)==="daily"}),ue.disabled=e(x)!=="daily",De.disabled=B},[()=>(e(L),r(()=>!e(L).trim()))]),mt(i,()=>e(L),B=>s(L,B)),ia(d,[],se,()=>e(x),B=>s(x,B)),mt(ve,()=>e(y),B=>s(y,B)),ia(d,[],ne,()=>e(x),B=>s(x,B)),mt(ue,()=>e(f),B=>s(f,B)),F("click",De,N),u(_,v)};K(oe,_=>{e(o)&&_(ye)})}t(V),G(()=>{je(ce,"aria-label",e(o)?"取消新建计划":"新建计划"),M(H,e(o)?"×":"+")}),F("click",ce,()=>s(o,!e(o))),u(O,V),Ve()}var nn=g('<span class="chip svelte-taxat6"> </span>'),rn=g('<button class="more svelte-taxat6"> </button>'),ln=g("<div></div> <!>",1),on=g('<div class="label svelte-taxat6">none</div>'),cn=g('<div class="skills svelte-taxat6"><!></div>');function vn(O,c){Ge(c,!1);const d=p();let I=Ce(c,"tick",8,0),T=p([]),o=p(!1);async function L(){try{s(T,(await Ie.skills()).skills??[])}catch{}}Y(()=>(e(o),e(T)),()=>{s(d,e(o)?e(T):e(T).slice(0,18))}),Y(()=>de(I()),()=>{L(),I()}),nt(),Ye();var x=cn(),y=a(x);{var f=m=>{var q=ln(),A=Ke(q);let z;et(A,5,()=>e(d),J=>J.name,(J,Q)=>{var V=nn(),R=a(V,!0);t(V),G(()=>{je(V,"title",(e(Q),r(()=>e(Q).description??e(Q).name))),M(R,(e(Q),r(()=>e(Q).name)))}),u(J,V)}),t(A);var D=n(A,2);{var N=J=>{var Q=rn(),V=a(Q,!0);t(Q),G(()=>M(V,(e(o),e(T),r(()=>e(o)?"收起":`展开全部 ${e(T).length}`)))),F("click",Q,()=>s(o,!e(o))),u(J,Q)};K(D,J=>{e(T),r(()=>e(T).length>18)&&J(N)})}G(()=>z=fe(A,1,"chips svelte-taxat6",null,z,{clipped:!e(o)&&e(T).length>18})),u(m,q)},w=m=>{var q=on();u(m,q)};K(y,m=>{e(T),r(()=>e(T).length>0)?m(f):m(w,-1)})}t(x),u(O,x),Ve()}var dn=g('<button class="up svelte-tp0rgj" aria-label="上级目录"> </button>'),un=g('<span class="mono"> </span>'),pn=g('<button class="row svelte-tp0rgj"><span class="ico svelte-tp0rgj"> </span> <span class="name svelte-tp0rgj"> </span></button>'),fn=g('<div class="label svelte-tp0rgj">empty</div>'),hn=g('<div class="label svelte-tp0rgj">…</div>'),bn=g('<div class="preview-scrim svelte-tp0rgj" role="button" tabindex="0"><div class="preview svelte-tp0rgj" role="dialog" aria-label="File preview" tabindex="-1"><div class="p-hd svelte-tp0rgj"><span class="mono"> </span> <button class="p-close svelte-tp0rgj" aria-label="关闭预览">✕</button></div> <pre> </pre></div></div>'),mn=g('<div class="files svelte-tp0rgj"><div class="crumb mono svelte-tp0rgj"><!></div> <div class="list svelte-tp0rgj"><!> <!> <!></div> <!></div>');function _n(O,c){Ge(c,!1);const d=()=>Be(dt,"$sessionList",I),[I,T]=ot(),o=p();let L=Ce(c,"sessionId",8,void 0),x=Ce(c,"tick",8,0),y=p([]),f=p("."),w=p(null),m=p(!1),q=p(!1);async function A(){if(e(o)){s(q,!0);try{s(y,(await Ie.browse(e(o),e(f))).files??[])}catch{s(y,[])}finally{s(q,!1)}}}function z(){const v=e(f).replace(/(^|\/)[^/]+\/?$/,"")||".";s(f,v),A()}async function D(v){if(v.type==="directory"){s(f,v.path),await A();return}try{const i=await Ie.fileContent(e(o),v.path);if(i.type!=="text"){s(w,{path:v.path,content:"(二进制文件,无法预览)"}),s(m,!0);return}s(m,!1),s(w,{path:v.path,content:i.content.length>800?i.content.slice(0,800)+`
|
|
2
2
|
…`:i.content})}catch{s(w,{path:v.path,content:"(读取失败)"}),s(m,!1)}}function N(){s(w,null),s(m,!1)}Y(()=>(d(),de(L())),()=>{var v;s(o,((v=d().find(i=>i.id===L()))==null?void 0:v.directory)??"")}),Y(()=>(e(o),e(f),de(x())),()=>{e(o)&&(e(o),e(f),x(),A())}),nt(),Ye();var J=mn(),Q=a(J),V=a(Q);{var R=v=>{var i=dn(),h=a(i);t(i),G(()=>M(h,`↰ ${e(f)??""}`)),F("click",i,z),u(v,i)},ce=v=>{var i=un(),h=a(i,!0);t(i),G(l=>M(h,l),[()=>(e(o),r(()=>e(o).split("/").pop()||"/"))]),u(v,i)};K(V,v=>{e(f)!=="."?v(R):v(ce,-1)})}t(Q);var H=n(Q,2),X=a(H);et(X,1,()=>e(y),v=>v.path,(v,i)=>{var h=pn(),l=a(h),k=a(l,!0);t(l);var se=n(l,2),ve=a(se,!0);t(se),t(h),G(()=>{M(k,(e(i),r(()=>e(i).type==="directory"?"📁":"📄"))),M(ve,(e(i),r(()=>e(i).name)))}),F("click",h,()=>D(e(i))),u(v,h)});var he=n(X,2);{var ge=v=>{var i=fn();u(v,i)};K(he,v=>{e(q),e(y),r(()=>!e(q)&&e(y).length===0)&&v(ge)})}var Se=n(he,2);{var oe=v=>{var i=hn();u(v,i)};K(Se,v=>{e(q)&&v(oe)})}t(H);var ye=n(H,2);{var _=v=>{var i=bn(),h=a(i),l=a(h),k=a(l),se=a(k,!0);t(k);var ve=n(k,2);t(l);var ke=n(l,2);let Te;var ne=a(ke,!0);t(ke),t(h),t(i),G(()=>{M(se,(e(w),r(()=>e(w).path))),Te=fe(ke,1,"p-body mono svelte-tp0rgj",null,Te,{binary:e(m)}),M(ne,(e(w),r(()=>e(w).content)))}),F("click",ve,N),F("click",i,N),F("keydown",i,ue=>ue.key==="Escape"&&N()),u(v,i)};K(ye,v=>{e(w)&&v(_)})}t(J),u(O,J),Ve(),T()}var gn=g('<div class="row svelte-148ev8e"><span class="ico svelte-148ev8e" aria-hidden="true">🌿</span> <span class="name svelte-148ev8e"> </span> <button> </button></div>'),yn=g('<div class="rows svelte-148ev8e"></div>'),wn=g('<div class="label svelte-148ev8e">none</div>'),kn=g('<div class="err svelte-148ev8e"> </div>'),xn=g('<div class="form svelte-148ev8e"><input class="name-in mono svelte-148ev8e" placeholder="worktree 名称"/> <!> <button class="go svelte-148ev8e">创建</button></div>'),An=g('<div class="wt svelte-148ev8e"><div class="hd svelte-148ev8e"><button class="add svelte-148ev8e"> </button></div> <div class="list svelte-148ev8e"><!></div> <!></div>');function $n(O,c){Ge(c,!1);const d=()=>Be(dt,"$sessionList",I),[I,T]=ot(),o=p();let L=Ce(c,"sessionId",8,void 0),x=Ce(c,"tick",8,0),y=p([]),f=p(!1),w=p(""),m=p(""),q=p(),A;async function z(){if(e(o))try{s(y,(await Ie.worktrees(e(o))).worktrees??[])}catch{}}async function D(){if(e(w).trim()){s(m,"");try{const oe=await Ie.createWorktree(e(o),e(w).trim());if(oe.error){s(m,oe.error);return}s(w,""),s(f,!1),await z()}catch(oe){s(m,oe.message)}}}async function N(oe){if(e(q)!==oe){s(q,oe),clearTimeout(A),A=setTimeout(()=>s(q,void 0),3e3);return}clearTimeout(A),s(q,void 0);try{await Ie.removeWorktree(e(o),oe),await z()}catch{}}Y(()=>(d(),de(L())),()=>{var oe;s(o,((oe=d().find(ye=>ye.id===L()))==null?void 0:oe.directory)??"")}),Y(()=>(de(x()),e(o)),()=>{z(),x(),e(o)}),nt(),Ye();var J=An(),Q=a(J),V=a(Q),R=a(V,!0);t(V),t(Q);var ce=n(Q,2),H=a(ce);{var X=oe=>{var ye=yn();et(ye,5,()=>e(y),_=>_.name,(_,v)=>{var i=gn(),h=n(a(i),2),l=a(h,!0);t(h);var k=n(h,2);let se;var ve=a(k,!0);t(k),t(i),G(()=>{M(l,(e(v),r(()=>e(v).name))),se=fe(k,1,"del svelte-148ev8e",null,se,{arm:e(q)===e(v).name}),je(k,"aria-label",`删除 ${e(v),r(()=>e(v).name)??""}`),M(ve,(e(q),e(v),r(()=>e(q)===e(v).name?"确认?":"✕")))}),F("click",k,()=>N(e(v).name)),u(_,i)}),t(ye),u(oe,ye)},he=oe=>{var ye=wn();u(oe,ye)};K(H,oe=>{e(y),r(()=>e(y).length>0)?oe(X):e(f)||oe(he,1)})}t(ce);var ge=n(ce,2);{var Se=oe=>{var ye=xn(),_=a(ye);ft(_);var v=n(_,2);{var i=l=>{var k=kn(),se=a(k,!0);t(k),G(()=>M(se,e(m))),u(l,k)};K(v,l=>{e(m)&&l(i)})}var h=n(v,2);t(ye),G(l=>h.disabled=l,[()=>(e(w),r(()=>!e(w).trim()))]),mt(_,()=>e(w),l=>s(w,l)),F("click",h,D),u(oe,ye)};K(ge,oe=>{e(f)&&oe(Se)})}t(J),G(()=>{je(V,"aria-label",e(f)?"取消新建":"新建 worktree"),M(R,e(f)?"×":"+")}),F("click",V,()=>s(f,!e(f))),u(O,J),Ve(),T()}var In=g('<div class="usage svelte-q9r9ub"><div class="tiles svelte-q9r9ub"><div class="tile svelte-q9r9ub"><div class="label svelte-q9r9ub">输入 tokens</div> <div class="num mono svelte-q9r9ub"> </div></div> <div class="tile svelte-q9r9ub"><div class="label svelte-q9r9ub">输出 tokens</div> <div class="num mono svelte-q9r9ub"> </div></div></div> <div class="spend mono svelte-q9r9ub"> </div></div>');function Sn(O,c){Ge(c,!1);const d=()=>Be(Mt,"$feeds",I),[I,T]=ot(),o=p(),L=p(),x=p(),y=p(),f=p(),w=p(),m=p(),q=p();let A=Ce(c,"sessionId",8,void 0),z=Ce(c,"tick",8,0),D=p({});async function N(i){if(!i){s(D,{});return}try{const h=await Ie.context(i);if(i!==A())return;s(D,h)}catch{}}let J=p(""),Q=p({in:0,out:0,cost:0});function V(i){return i==null?"—":i.toLocaleString()}function R(i){return i==null?"—":`$${i.toFixed(3)}`}Y(()=>(de(A()),de(z())),()=>{N(A()),z()}),Y(()=>e(D),()=>{var i,h,l,k;s(o,typeof((h=(i=e(D))==null?void 0:i.tokens)==null?void 0:h.input)=="number"||typeof((k=(l=e(D))==null?void 0:l.tokens)==null?void 0:k.output)=="number")}),Y(()=>e(D),()=>{var i,h;s(L,typeof((h=(i=e(D))==null?void 0:i.tokens)==null?void 0:h.input)=="number"?e(D).tokens.input:void 0)}),Y(()=>e(D),()=>{var i,h;s(x,typeof((h=(i=e(D))==null?void 0:i.tokens)==null?void 0:h.output)=="number"?e(D).tokens.output:void 0)}),Y(()=>e(D),()=>{var i;s(y,typeof((i=e(D))==null?void 0:i.cost)=="number"?e(D).cost:void 0)}),Y(()=>(de(A()),d()),()=>{s(f,A()?d()[A()]:void 0)}),Y(()=>(e(o),de(A()),e(f),e(J),na),()=>{var h,l;const i=e(o)?"":`${A()}:${((h=e(f))==null?void 0:h.lastSeq)??0}:${((l=e(f))==null?void 0:l.order.length)??0}`;i!==e(J)&&(s(J,i),s(Q,i===""?{in:0,out:0,cost:0}:na(e(f)).filter(k=>k.kind==="assistant").reduce((k,se)=>{var ke,Te;const ve=se.meta??{};return typeof((ke=ve.tokens)==null?void 0:ke.input)=="number"&&(k.in+=ve.tokens.input),typeof((Te=ve.tokens)==null?void 0:Te.output)=="number"&&(k.out+=ve.tokens.output),typeof ve.cost=="number"&&(k.cost+=ve.cost),k},{in:0,out:0,cost:0})))}),Y(()=>(e(o),e(L),e(Q)),()=>{s(w,e(o)?e(L):e(Q).in||void 0)}),Y(()=>(e(o),e(x),e(Q)),()=>{s(m,e(o)?e(x):e(Q).out||void 0)}),Y(()=>(e(y),e(Q)),()=>{s(q,e(y)??(e(Q).cost||void 0))}),nt(),Ye();var ce=In(),H=a(ce),X=a(H),he=n(a(X),2),ge=a(he,!0);t(he),t(X);var Se=n(X,2),oe=n(a(Se),2),ye=a(oe,!0);t(oe),t(Se),t(H);var _=n(H,2),v=a(_);t(_),t(ce),G((i,h,l)=>{M(ge,i),M(ye,h),M(v,`est. spend ${l??""}`)},[()=>(e(w),r(()=>V(e(w)))),()=>(e(m),r(()=>V(e(m)))),()=>(e(q),r(()=>R(e(q))))]),u(O,ce),Ve(),T()}var zn=g('<span class="pct svelte-1h7zxuf"> </span>'),Cn=g('<span class="max svelte-1h7zxuf"> </span>'),Mn=g('<span class="max svelte-1h7zxuf">tokens</span>'),Tn=g('<div class="bar svelte-1h7zxuf"><div class="fill svelte-1h7zxuf"></div></div>'),Ln=g('<div class="model mono svelte-1h7zxuf"><span class="sq svelte-1h7zxuf"></span> </div>'),En=g('<div class="cache mono svelte-1h7zxuf"><span class="cdot svelte-1h7zxuf"></span> </div>'),qn=g('<div class="ctx svelte-1h7zxuf"><div class="hd svelte-1h7zxuf"><!></div> <div class="body mono svelte-1h7zxuf"><span class="big svelte-1h7zxuf"> </span> <!></div> <!> <!> <!></div>');function Bn(O,c){Ge(c,!1);const d=p(),I=p(),T=p(),o=p(),L=p(),x=p(),y=p(),f=p(),w=p();let m=Ce(c,"sessionId",8,void 0),q=Ce(c,"tick",8,0),A=p({});async function z(l){if(!l){s(A,{});return}try{s(A,await Ie.context(l))}catch{}}function D(l){return l==null?"—":l.toLocaleString()}function N(l){return l==null?"—":l>=1e6?(l/1e6).toFixed(1)+"M":l>=1e3?(l/1e3).toFixed(1)+"K":String(l)}Y(()=>(de(m()),de(q())),()=>{z(m()),q()}),Y(()=>e(A),()=>{var l,k;s(d,typeof((k=(l=e(A))==null?void 0:l.tokens)==null?void 0:k.input)=="number"?e(A).tokens.input:void 0)}),Y(()=>e(A),()=>{var l,k;s(I,typeof((k=(l=e(A))==null?void 0:l.tokens)==null?void 0:k.output)=="number"?e(A).tokens.output:void 0)}),Y(()=>(e(A),e(d),e(I)),()=>{var l,k;s(T,typeof((k=(l=e(A))==null?void 0:l.tokens)==null?void 0:k.used)=="number"?e(A).tokens.used:e(d)!=null||e(I)!=null?(e(d)??0)+(e(I)??0):void 0)}),Y(()=>e(A),()=>{var l,k;s(o,typeof((k=(l=e(A))==null?void 0:l.tokens)==null?void 0:k.max)=="number"?e(A).tokens.max:void 0)}),Y(()=>(e(T),e(o)),()=>{s(L,e(T)!=null&&e(o)!=null?Math.min(100,Math.round(e(T)/e(o)*100)):void 0)}),Y(()=>e(A),()=>{var l;s(x,(l=e(A))!=null&&l.model?String(e(A).model).split("/").pop():void 0)}),Y(()=>e(A),()=>{var l,k,se;s(y,typeof((se=(k=(l=e(A))==null?void 0:l.tokens)==null?void 0:k.cache)==null?void 0:se.read)=="number"?e(A).tokens.cache.read:void 0)}),Y(()=>e(A),()=>{var l,k,se;s(f,typeof((se=(k=(l=e(A))==null?void 0:l.tokens)==null?void 0:k.cache)==null?void 0:se.write)=="number"?e(A).tokens.cache.write:void 0)}),Y(()=>(e(y),e(d)),()=>{s(w,e(y)!=null&&e(d)!=null&&e(d)+e(y)>0?Math.round(e(y)/(e(d)+e(y))*100):void 0)}),nt(),Ye();var J=qn(),Q=a(J),V=a(Q);{var R=l=>{var k=zn(),se=a(k);t(k),G(()=>M(se,`${e(L)??""}%`)),u(l,k)};K(V,l=>{e(L)!=null&&l(R)})}t(Q);var ce=n(Q,2),H=a(ce),X=a(H,!0);t(H);var he=n(H,2);{var ge=l=>{var k=Cn(),se=a(k);t(k),G(ve=>M(se,`/ ${ve??""} tokens`),[()=>(e(o),r(()=>D(e(o))))]),u(l,k)},Se=l=>{var k=Mn();u(l,k)};K(he,l=>{e(o)!=null?l(ge):l(Se,-1)})}t(ce);var oe=n(ce,2);{var ye=l=>{var k=Tn(),se=a(k);t(k),G(()=>rt(se,`transform:scaleX(${e(L)/100})`)),u(l,k)};K(oe,l=>{e(L)!=null&&l(ye)})}var _=n(oe,2);{var v=l=>{var k=Ln(),se=n(a(k),1,!0);t(k),G(()=>M(se,e(x))),u(l,k)};K(_,l=>{e(x)&&l(v)})}var i=n(_,2);{var h=l=>{var k=En(),se=n(a(k));t(k),G((ve,ke)=>M(se,`cache ${e(w)??""}% · ${ve??""} read / ${ke??""} write`),[()=>(e(y),r(()=>N(e(y)))),()=>(e(f),r(()=>N(e(f))))]),u(l,k)};K(i,l=>{e(w)!=null&&l(h)})}t(J),G(l=>M(X,l),[()=>(e(T),r(()=>D(e(T))))]),u(O,J),Ve()}var On=g('<span class="counts mono svelte-1oo25bu"> </span>'),Dn=g('<div class="repo-line mono svelte-1oo25bu"> </div>'),Pn=g('<div><span class="pre svelte-1oo25bu"> </span> </div>'),jn=g('<div class="diff svelte-1oo25bu"></div>'),Wn=g('<div class="entry svelte-1oo25bu"><button type="button"><span class="change svelte-1oo25bu"></span> <span class="nm svelte-1oo25bu"> </span> <span class="cnt svelte-1oo25bu"><span class="add svelte-1oo25bu"> </span> <span class="sep svelte-1oo25bu">/</span> <span class="del svelte-1oo25bu"> </span></span></button> <!></div>'),Fn=g('<div class="files mono svelte-1oo25bu"></div>'),Rn=g('<div class="section-label svelte-1oo25bu">—</div>'),Un=g('<div class="wd svelte-1oo25bu"><div class="hd svelte-1oo25bu"><!></div> <!> <!> <!></div>');function Jn(O,c){Ge(c,!1);const d=p(),I=p();let T=Ce(c,"sessionId",8,void 0),o=Ce(c,"tick",8,0),L=Ce(c,"showDiff",8,!0),x=p(""),y=p([]),f=p(new Set);async function w(_){if(!_){s(x,""),s(y,[]),e(f).clear(),s(f,e(f));return}try{const v=await Ie.context(_);if(_!==T())return;if(s(x,(v==null?void 0:v.directory)??""),L()){const i=await Ie.diff(_);if(_!==T())return;s(y,(Array.isArray(i)?i:[]).map(h=>({path:String((h==null?void 0:h.path)??""),additions:Number((h==null?void 0:h.additions)??0),deletions:Number((h==null?void 0:h.deletions)??0),lines:Array.isArray(h==null?void 0:h.lines)?h.lines:[]})).filter(h=>h.path).slice(0,8))}else s(y,[])}catch{}}function m(_){if(!_)return"";const v=_.replace(/\/+$/,"").split("/");return v[v.length-1]||""}function q(_){const v=_.split("/");return v.length>3?"…/"+v.slice(-3).join("/"):_}function A(_){return _.additions>0&&_.deletions>0?"mod":_.additions>0?"add":_.deletions>0?"del":"none"}function z(_){return _==="add"?"var(--ok)":_==="del"?"var(--err)":_==="mod"?"var(--warn)":"var(--text-4)"}function D(_){e(f).has(_)?e(f).delete(_):e(f).add(_),s(f,e(f))}function N(_){return _==="add"?"+":_==="del"?"−":" "}function J(_){return _.kind==="add"&&_.text.startsWith("+")||_.kind==="del"&&_.text.startsWith("-")||_.kind==="ctx"&&_.text.startsWith(" ")?_.text.slice(1):_.text}Y(()=>(de(T()),de(o()),de(L())),()=>{w(T()),o(),L()}),Y(()=>e(y),()=>{s(d,e(y).reduce((_,v)=>_+v.additions,0))}),Y(()=>e(y),()=>{s(I,e(y).reduce((_,v)=>_+v.deletions,0))}),nt(),Ye();var Q=Un(),V=a(Q),R=a(V);{var ce=_=>{var v=On(),i=a(v);t(v),G(()=>M(i,`+${e(d)??""}/−${e(I)??""}`)),u(_,v)};K(R,_=>{e(y),r(()=>e(y).length)&&_(ce)})}t(V);var H=n(V,2);{var X=_=>{var v=Dn(),i=a(v,!0);t(v),G(h=>M(i,h),[()=>(e(x),r(()=>m(e(x))))]),u(_,v)},he=bt(()=>(e(x),r(()=>m(e(x)))));K(H,_=>{e(he)&&_(X)})}var ge=n(H,2);{var Se=_=>{var v=Fn();et(v,5,()=>e(y),i=>i.path,(i,h)=>{var l=Wn(),k=a(l);let se;var ve=a(k),ke=n(ve,2),Te=a(ke,!0);t(ke);var ne=n(ke,2),ue=a(ne),Le=a(ue);t(ue);var ze=n(ue,4),De=a(ze);t(ze),t(ne),t(k);var B=n(k,2);{var te=re=>{var b=jn();et(b,5,()=>(e(h),r(()=>e(h).lines)),Xt,(S,W)=>{var pe=Pn(),Ae=a(pe),qe=a(Ae,!0);t(Ae);var Oe=n(Ae,1,!0);t(pe),G((Pe,le)=>{fe(pe,1,`line ${e(W),r(()=>e(W).kind)??""}`,"svelte-1oo25bu"),M(qe,Pe),M(Oe,le)},[()=>(e(W),r(()=>N(e(W).kind))),()=>(e(W),r(()=>J(e(W))))]),u(S,pe)}),t(b),u(re,b)},j=bt(()=>(e(f),e(h),r(()=>e(f).has(e(h).path)&&e(h).lines.length>0)));K(B,re=>{e(j)&&re(te)})}t(l),G((re,b,S,W)=>{se=fe(k,1,"f svelte-1oo25bu",null,se,re),je(k,"aria-expanded",b),rt(ve,`background: ${S??""}`),M(Te,W),M(Le,`+${e(h),r(()=>e(h).additions)??""}`),M(De,`−${e(h),r(()=>e(h).deletions)??""}`)},[()=>({open:e(f).has(e(h).path)}),()=>(e(f),e(h),r(()=>e(f).has(e(h).path))),()=>(e(h),r(()=>z(A(e(h))))),()=>(e(h),r(()=>q(e(h).path)))]),F("click",k,()=>D(e(h).path)),u(i,l)}),t(v),u(_,v)};K(ge,_=>{e(y),r(()=>e(y).length)&&_(Se)})}var oe=n(ge,2);{var ye=_=>{var v=Rn();u(_,v)};K(oe,_=>{e(x),e(y),r(()=>!e(x)&&e(y).length===0)&&_(ye)})}t(Q),u(O,Q),Ve()}var Nn=g('<div class="body svelte-4p37uf"><!></div>'),Kn=g('<section class="fold svelte-4p37uf"><button class="hd svelte-4p37uf"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M9 6l6 6-6 6"></path></svg> <span class="t svelte-4p37uf"> </span> <!></button> <!></section>');function _t(O,c){let d=Ce(c,"key",8),I=Ce(c,"title",8),T=Ce(c,"defaultOpen",8,!0);const o="ocrc.insp";let L=p(T());try{const J=JSON.parse(localStorage.getItem(o)??"{}");typeof J[d()]=="boolean"&&s(L,J[d()])}catch{}function x(){s(L,!e(L));try{const J=JSON.parse(localStorage.getItem(o)??"{}");J[d()]=e(L),localStorage.setItem(o,JSON.stringify(J))}catch{}}var y=Kn(),f=a(y),w=a(f);let m;var q=n(w,2),A=a(q,!0);t(q);var z=n(q,2);Yt(z,c,"hd",{}),t(f);var D=n(f,2);{var N=J=>{var Q=Nn(),V=a(Q);Yt(V,c,"default",{}),t(Q),u(J,Q)};K(D,J=>{e(L)&&J(N)})}t(y),G(()=>{je(f,"aria-expanded",e(L)),m=fe(w,0,"caret svelte-4p37uf",null,m,{open:e(L)}),M(A,I())}),F("click",f,x),u(O,y)}var Hn=g('<!><div class="divider svelte-gu3dqx"></div>',1),Qn=g('<!><div class="divider svelte-gu3dqx"></div>',1),Yn=g('<!><div class="divider svelte-gu3dqx"></div>',1),Gn=g('<!> <div class="divider svelte-gu3dqx"></div>',1),Vn=g('<aside class="inspector svelte-gu3dqx"><div class="head svelte-gu3dqx"><div class="section-label svelte-gu3dqx">会话</div> <div class="name svelte-gu3dqx"><span class="title-text svelte-gu3dqx"> </span></div></div> <!> <div class="pinned svelte-gu3dqx"><!> <div class="divider svelte-gu3dqx"></div> <!> <!> <!> <!> <!> <div class="divider svelte-gu3dqx"></div> <!> <div class="divider svelte-gu3dqx"></div> <!></div></aside>');function Zn(O,c){Ge(c,!1);const d=()=>Be(dt,"$sessionList",o),I=()=>Be(Mt,"$feeds",o),T=()=>Be(pa,"$can",o),[o,L]=ot(),x=p(),y=p(),f=p();let w=Ce(c,"sessionId",8,void 0),m=p(0),q=p(-1),A=p();Gt(()=>clearTimeout(e(A))),Y(()=>(d(),de(w())),()=>{s(x,d().find(ne=>ne.id===w()))}),Y(()=>e(x),()=>{var ne;s(y,(ne=e(x))==null?void 0:ne.title)}),Y(()=>(de(w()),I()),()=>{var ne;s(f,w()?((ne=I()[w()])==null?void 0:ne.lastSeq)??0:0)}),Y(()=>(e(f),e(q),e(A),e(m)),()=>{e(f)!==e(q)&&(s(q,e(f)),clearTimeout(e(A)),s(A,setTimeout(()=>s(m,e(m)+1),1e3)))}),nt(),Ye();var z=Vn(),D=a(z),N=n(a(D),2),J=a(N),Q=a(J,!0);t(J),t(N),t(D);var V=n(D,2);{var R=ne=>{_t(ne,{key:"tasks",title:"任务",defaultOpen:!0,children:(ue,Le)=>{Hs(ue,{get sessionId(){return w()},get tick(){return e(m)}})},$$slots:{default:!0}})},ce=bt(()=>(T(),r(()=>T()("todos"))));K(V,ne=>{e(ce)&&ne(R)})}var H=n(V,2),X=a(H);_t(X,{key:"schedules",title:"定时任务",defaultOpen:!0,children:(ne,ue)=>{sn(ne,{get tick(){return e(m)}})},$$slots:{default:!0}});var he=n(X,4);{var ge=ne=>{var ue=Hn(),Le=Ke(ue);_t(Le,{key:"skills",title:"Skills",defaultOpen:!1,children:(ze,De)=>{vn(ze,{get tick(){return e(m)}})},$$slots:{default:!0}}),it(),u(ne,ue)},Se=bt(()=>(T(),r(()=>T()("skills"))));K(he,ne=>{e(Se)&&ne(ge)})}var oe=n(he,2);{var ye=ne=>{var ue=Qn(),Le=Ke(ue);_t(Le,{key:"files",title:"Files",defaultOpen:!1,children:(ze,De)=>{_n(ze,{get sessionId(){return w()},get tick(){return e(m)}})},$$slots:{default:!0}}),it(),u(ne,ue)},_=bt(()=>(T(),r(()=>T()("files"))));K(oe,ne=>{e(_)&&ne(ye)})}var v=n(oe,2);{var i=ne=>{var ue=Yn(),Le=Ke(ue);_t(Le,{key:"worktrees",title:"Worktrees",defaultOpen:!1,children:(ze,De)=>{$n(ze,{get sessionId(){return w()},get tick(){return e(m)}})},$$slots:{default:!0}}),it(),u(ne,ue)},h=bt(()=>(T(),r(()=>T()("worktrees"))));K(v,ne=>{e(h)&&ne(i)})}var l=n(v,2);{var k=ne=>{var ue=Gn(),Le=Ke(ue);_t(Le,{key:"mcp",title:"MCP",defaultOpen:!0,children:(ze,De)=>{Vs(ze,{get tick(){return e(m)}})},$$slots:{default:!0}}),it(2),u(ne,ue)},se=bt(()=>(T(),r(()=>T()("mcp"))));K(l,ne=>{e(se)&&ne(k)})}var ve=n(l,2);_t(ve,{key:"usage",title:"用量",defaultOpen:!0,children:(ne,ue)=>{Sn(ne,{get sessionId(){return w()},get tick(){return e(m)}})},$$slots:{default:!0}});var ke=n(ve,4);_t(ke,{key:"context",title:"上下文",defaultOpen:!0,children:(ne,ue)=>{Bn(ne,{get sessionId(){return w()},get tick(){return e(m)}})},$$slots:{default:!0}});var Te=n(ke,4);_t(Te,{key:"workdir",title:"工作目录",defaultOpen:!0,children:(ne,ue)=>{{let Le=gt(()=>(T(),r(()=>T()("diff"))));Jn(ne,{get sessionId(){return w()},get tick(){return e(m)},get showDiff(){return e(Le)}})}},$$slots:{default:!0}}),t(H),t(z),G(ne=>{je(N,"title",e(y)??w()),M(Q,ne)},[()=>(e(y),de(w()),r(()=>e(y)||(w()?"…"+w().slice(-8):"No session")))]),u(O,z),Ve(),L()}function Xn(O,c){const d=c.trim().toLowerCase();return d?O.filter(I=>(I.title??"").toLowerCase().includes(d)||(I.agent??"").toLowerCase().includes(d)||I.id.toLowerCase().includes(d)):O}var er=g('<div class="empty svelte-wh9uu8">无匹配结果</div>'),tr=g('<div class="group svelte-wh9uu8" role="presentation"><span class="group-icon svelte-wh9uu8" aria-hidden="true"> </span> <span class="group-label mono svelte-wh9uu8"> </span></div>'),ar=g('<button role="option"><span class="tile glyph svelte-wh9uu8" aria-hidden="true"> </span> <span class="label svelte-wh9uu8"> </span> <span class="hint mono svelte-wh9uu8"> </span></button>'),sr=g('<button role="option"><span class="tile svelte-wh9uu8" aria-hidden="true">#</span> <span class="label svelte-wh9uu8"> </span> <span class="hint mono svelte-wh9uu8"> </span></button>'),nr=g('<button role="option"><span class="tile svelte-wh9uu8" aria-hidden="true">/</span> <span class="label svelte-wh9uu8"> </span> <span class="hint mono svelte-wh9uu8"> </span></button>'),rr=g('<div class="error svelte-wh9uu8"> </div>'),lr=g('<div class="about mono svelte-wh9uu8"> </div>'),or=g('<div class="overlay svelte-wh9uu8"><button class="backdrop svelte-wh9uu8" aria-label="关闭"></button> <div class="palette svelte-wh9uu8" role="dialog" aria-modal="true" aria-label="搜索会话与命令" tabindex="-1"><div class="header svelte-wh9uu8"><span class="search-icon svelte-wh9uu8" aria-hidden="true"><!></span> <input class="q svelte-wh9uu8" placeholder="跳转会话,或运行命令…" aria-label="搜索会话与命令"/> <kbd class="keycap mono svelte-wh9uu8" aria-label="按 Esc 关闭">esc</kbd></div> <div class="results svelte-wh9uu8" role="listbox" aria-label="结果"><!> <!> <!></div></div></div>');function ir(O,c){Ge(c,!1);const d=()=>Be(ma,"$page",x),I=()=>Be(Ft,"$backends",x),T=()=>Be(dt,"$sessionList",x),o=()=>Be(Sa,"$currentBackendId",x),L=()=>Be(pa,"$can",x),[x,y]=ot(),f=p(),w=p(),m=p(),q=p(),A=p(),z=p(),D=p(),N=p();let J=Ce(c,"open",8,!1);const Q=Ra();let V=p(""),R=p(0),ce=p(""),H=p(""),X=p(null),he=p([]),ge=p(null);function Se(b,S,W){const pe=W.trim().toLowerCase();return pe?b.toLowerCase().includes(pe)||S.toLowerCase().includes(pe):!0}const oe=[{name:"new-session",description:"New session"},{name:"toggle-panel",description:"Collapse / expand the agent panel"},{name:"cycle-accent",description:"Cycle accent color"}];function ye(b){var W,pe,Ae;const S=b.replace(/[^a-zA-Z0-9 ]/g," ").trim().split(/[\s-]+/).filter(Boolean);return((((W=S[0])==null?void 0:W[0])??"")+(((pe=S[1])==null?void 0:pe[0])??((Ae=S[0])==null?void 0:Ae[1])??"")).toUpperCase()||b.slice(0,2).toUpperCase()}function _(b,S,W,pe,Ae){const qe=[];let Oe=0;if(b.length){qe.push({type:"group",label:"Agents",icon:"◆"});for(const le of b)qe.push({type:"agent",agent:le,selectableIndex:Oe++})}if(S.length){qe.push({type:"group",label:"Sessions",icon:"#"});for(const le of S)qe.push({type:"session",session:le,selectableIndex:Oe++})}const Pe=[...W.map(le=>({...le,kind:"backend"})),...pe.map(le=>({...le}))];if(Pe.length){qe.push({type:"group",label:"Commands",icon:"/"});for(const le of Pe){const $e=le.kind==="backend"&&!Ae;qe.push({type:"command",command:le,disabled:$e,selectableIndex:$e?void 0:Oe++})}}return qe}let v=null,i=p();function h(b){v=document.activeElement,b.focus()}function l(){var b;Q("close"),s(V,""),s(ce,""),(b=v==null?void 0:v.focus)==null||b.call(v),v=null}function k(b){ea(`/${b}/`),l()}function se(){const b=o()??"opencode",S=xt(b),W=Pt[(Pt.indexOf(S)+1)%Pt.length];Kt(b,W)}async function ve(b){Ht(b);try{await jt(b)}catch{}l()}async function ke(b){if(b==="cycle-accent"){se(),l();return}if(b==="new-session"){zt.set(!0),l();return}if(b==="toggle-panel"){Zt.update(S=>!S),l();return}if(!(!e(f)||e(H))){s(H,b),s(ce,"");try{await Ie.runCommand({sessionId:e(f),command:b}),l()}catch(S){s(ce,`/${b} failed: ${S.message}`)}finally{s(H,"")}}}function Te(b){b.type==="agent"&&b.agent?ve(b.agent.id):b.type==="session"&&b.session?k(b.session.id):b.type==="command"&&!b.disabled&&b.command&&ke(b.command.name)}function ne(b){if(b.key==="Escape"){l();return}if(b.key==="Tab"){ue(b);return}if(e(N)!==0){if(b.key==="ArrowDown"){b.preventDefault(),s(R,Math.min(e(R)+1,e(N)-1)),Le();return}if(b.key==="ArrowUp"){b.preventDefault(),s(R,Math.max(e(R)-1,0)),Le();return}if(b.key==="Enter"){const S=e(D).find(W=>W.selectableIndex===e(R));S&&(b.preventDefault(),Te(S))}}}function ue(b){if(b.key!=="Tab"||!e(i))return;const S=Array.from(e(i).querySelectorAll("input, button:not(:disabled)"));if(S.length===0)return;const W=S[0],pe=S[S.length-1];b.shiftKey&&document.activeElement===W?(b.preventDefault(),pe.focus()):!b.shiftKey&&document.activeElement===pe&&(b.preventDefault(),W.focus())}async function Le(){await Ua();const b=document.querySelector(".palette .row.active");b==null||b.scrollIntoView({block:"nearest"})}function ze(b,S){return S?"Open a session first":(b==null?void 0:b.description)??""}Y(()=>(de(J()),e(X),Ie),()=>{J()&&!e(X)&&Ie.version().then(b=>{s(X,{version:b.version,uptime:b.uptime})}).catch(()=>{})}),Y(()=>d(),()=>{s(f,d().params.sessionId)}),Y(()=>I(),()=>{var b;s(w,((b=I())==null?void 0:b.backends)??[])}),Y(()=>(e(w),e(V)),()=>{s(m,e(w).filter(b=>Se(b.name??b.id,b.id,e(V))))}),Y(()=>(T(),e(V)),()=>{s(q,Xn(T(),e(V)))}),Y(()=>(de(J()),o(),e(ge),L(),Ie),()=>{J()&&o()&&o()!==e(ge)&&(s(ge,o()),L()("commands")?Ie.commands(o()).then(b=>{s(he,b)}).catch(()=>{s(ge,null)}):s(he,[]))}),Y(()=>(e(he),e(V)),()=>{s(A,e(he).filter(b=>Se(b.name,b.description,e(V))))}),Y(()=>e(V),()=>{s(z,oe.filter(b=>Se(b.name,b.description,e(V))))}),Y(()=>(e(m),e(q),e(A),e(z),e(f)),()=>{s(D,_(e(m),e(q),e(A),e(z),e(f)))}),Y(()=>e(D),()=>{s(N,e(D).filter(b=>b.selectableIndex!=null).length)}),Y(()=>(e(R),e(N)),()=>{s(R,e(N)?Math.max(0,Math.min(e(R),e(N)-1)):-1)}),Y(()=>e(V),()=>{e(V),s(R,0)}),nt();var De={close:l};Ye();var B=yt(),te=Ke(B);{var j=b=>{var S=or(),W=a(S),pe=n(W,2),Ae=a(pe),qe=a(Ae),Oe=a(qe);At(Oe,{name:"search",size:14}),t(qe);var Pe=n(qe,2);ft(Pe),ta(Pe,E=>h==null?void 0:h(E)),$t(()=>mt(Pe,()=>e(V),E=>s(V,E))),$t(()=>F("keydown",Pe,ne)),it(2),t(Ae);var le=n(Ae,2),$e=a(le);{var Z=E=>{var ee=er();u(E,ee)},We=E=>{var ee=yt(),ie=Ke(ee);et(ie,1,()=>e(D),me=>{var U,Ue,Fe;return((U=me.agent)==null?void 0:U.id)??((Ue=me.session)==null?void 0:Ue.id)??((Fe=me.command)==null?void 0:Fe.name)??me.label??""},(me,U)=>{var Ue=yt(),Fe=Ke(Ue);{var Je=Re=>{var Ee=tr(),Ne=a(Ee),He=a(Ne,!0);t(Ne);var Ze=n(Ne,2),Xe=a(Ze,!0);t(Ze),t(Ee),G(()=>{M(He,(e(U),r(()=>e(U).icon))),M(Xe,(e(U),r(()=>e(U).label)))}),u(Re,Ee)},we=Re=>{var Ee=ar();let Ne;var He=a(Ee),Ze=a(He,!0);t(He);var Xe=n(He,2),be=a(Xe,!0);t(Xe);var _e=n(Xe,2),xe=a(_e,!0);t(_e),t(Ee),G(at=>{Ne=fe(Ee,1,"row svelte-wh9uu8",null,Ne,{active:e(U).selectableIndex===e(R)}),je(Ee,"aria-selected",(e(U),e(R),r(()=>e(U).selectableIndex===e(R)))),M(Ze,at),M(be,(e(U),r(()=>{var Qe,ut;return((Qe=e(U).agent)==null?void 0:Qe.name)??((ut=e(U).agent)==null?void 0:ut.id)??""}))),M(xe,(e(U),I(),r(()=>{var Qe,ut,lt;return((Qe=e(U).agent)==null?void 0:Qe.id)===((ut=I())==null?void 0:ut.activeId)?"active":((lt=e(U).agent)==null?void 0:lt.status)??""})))},[()=>(e(U),r(()=>{var at,Qe;return ye(((at=e(U).agent)==null?void 0:at.name)??((Qe=e(U).agent)==null?void 0:Qe.id)??"")}))]),F("click",Ee,()=>{e(U).agent&&ve(e(U).agent.id)}),F("mouseenter",Ee,()=>{e(U).selectableIndex!=null&&s(R,e(U).selectableIndex)}),u(Re,Ee)},Me=Re=>{var Ee=sr();let Ne;var He=n(a(Ee),2),Ze=a(He,!0);t(He);var Xe=n(He,2),be=a(Xe,!0);t(Xe),t(Ee),G(_e=>{Ne=fe(Ee,1,"row svelte-wh9uu8",null,Ne,{active:e(U).selectableIndex===e(R)}),je(Ee,"aria-selected",(e(U),e(R),r(()=>e(U).selectableIndex===e(R)))),M(Ze,_e),M(be,(e(U),r(()=>{var xe;return((xe=e(U).session)==null?void 0:xe.agent)??""})))},[()=>(e(U),r(()=>{var _e,xe;return((_e=e(U).session)==null?void 0:_e.title)??((xe=e(U).session)==null?void 0:xe.id.slice(-8))??""}))]),F("click",Ee,()=>{e(U).session&&k(e(U).session.id)}),F("mouseenter",Ee,()=>{e(U).selectableIndex!=null&&s(R,e(U).selectableIndex)}),u(Re,Ee)},tt=Re=>{var Ee=nr();let Ne;var He=n(a(Ee),2),Ze=a(He,!0);t(He);var Xe=n(He,2),be=a(Xe,!0);t(Xe),t(Ee),G(_e=>{Ne=fe(Ee,1,"row svelte-wh9uu8",null,Ne,{active:e(U).selectableIndex===e(R),disabled:e(U).disabled}),Ee.disabled=(e(U),e(H),r(()=>{var xe;return e(U).disabled||e(H)===((xe=e(U).command)==null?void 0:xe.name)})),je(Ee,"aria-selected",(e(U),e(R),r(()=>e(U).selectableIndex===e(R)))),M(Ze,(e(U),r(()=>{var xe;return((xe=e(U).command)==null?void 0:xe.name)??""}))),M(be,_e)},[()=>(e(H),e(U),r(()=>{var _e;return e(H)===((_e=e(U).command)==null?void 0:_e.name)?"运行中…":ze(e(U).command,e(U).disabled)}))]),F("click",Ee,()=>{e(U).command&&ke(e(U).command.name)}),F("mouseenter",Ee,()=>{e(U).selectableIndex!=null&&s(R,e(U).selectableIndex)}),u(Re,Ee)};K(Fe,Re=>{e(U),r(()=>e(U).type==="group")?Re(Je):(e(U),r(()=>e(U).type==="agent")?Re(we,1):(e(U),r(()=>e(U).type==="session")?Re(Me,2):(e(U),r(()=>e(U).type==="command")&&Re(tt,3))))})}u(me,Ue)}),u(E,ee)};K($e,E=>{e(D),r(()=>e(D).length===0)?E(Z):E(We,-1)})}var $=n($e,2);{var ae=E=>{var ee=rr(),ie=a(ee,!0);t(ee),G(()=>M(ie,e(ce))),u(E,ee)};K($,E=>{e(ce)&&E(ae)})}var C=n($,2);{var P=E=>{var ee=lr(),ie=a(ee);t(ee),G(()=>M(ie,`ocrc v${e(X),r(()=>e(X).version)??""} · uptime ${e(X),r(()=>e(X).uptime)??""}`)),u(E,ee)};K(C,E=>{e(X)&&E(P)})}t(le),t(pe),Rt(pe,E=>s(i,E),()=>e(i)),t(S),F("click",W,l),F("keydown",pe,ue),u(b,S)};K(te,b=>{J()&&b(j)})}u(O,B),Va(c,"close",l);var re=Ve(De);return y(),re}var cr=g('<div class="empty svelte-cfrpez">正在加载 agent…</div>'),vr=g('<button type="button" role="radio"><span class="chip-tile svelte-cfrpez"> </span> <span><span class="sr-only svelte-cfrpez"> </span></span> <span class="chip-name svelte-cfrpez"> </span></button>'),dr=g('<div class="field svelte-cfrpez"><span class="label svelte-cfrpez">Agent</span> <div class="agent-chips svelte-cfrpez" role="radiogroup" aria-label="选择 agent"></div></div>'),ur=g('<button class="recent svelte-cfrpez" type="button"><span class="recent-name svelte-cfrpez"> </span> <span class="recent-dir mono svelte-cfrpez"> </span></button>'),pr=g('<div><span class="recents-label mono svelte-cfrpez"> </span> <div class="recents-list svelte-cfrpez"></div></div>'),fr=g('<div class="error svelte-cfrpez"> </div>'),hr=g('<div class="overlay svelte-cfrpez"><button class="backdrop svelte-cfrpez" aria-label="关闭"></button> <div class="modal svelte-cfrpez" role="dialog" aria-modal="true" aria-label="新建会话"><div class="header svelte-cfrpez"><span class="title svelte-cfrpez">New session</span> <button class="close svelte-cfrpez" aria-label="关闭"><!></button></div> <div class="body svelte-cfrpez"><!> <div class="field svelte-cfrpez"><label class="label svelte-cfrpez" for="new-session-dir">Working directory</label> <div class="dir-input svelte-cfrpez"><span class="host-prefix mono svelte-cfrpez">host:</span> <input id="new-session-dir" class="path mono svelte-cfrpez" type="text" placeholder="/path/to/project"/> <button class="browse svelte-cfrpez" type="button" title="该 agent 最近使用的目录">最近</button></div> <!></div> <div class="field svelte-cfrpez"><label class="label svelte-cfrpez" for="new-session-branch">Branch <span class="optional svelte-cfrpez">(optional)</span></label> <input id="new-session-branch" class="branch mono svelte-cfrpez" type="text" placeholder="main"/></div> <!></div> <div class="footer svelte-cfrpez"><button class="btn secondary svelte-cfrpez" type="button">取消</button> <button class="btn primary svelte-cfrpez" type="button"> </button></div></div></div>');function br(O,c){Ge(c,!1);const d=()=>Be(Ft,"$backends",o),I=()=>Be(dt,"$sessionList",o),T=()=>Be(zt,"$newSessionOpen",o),[o,L]=ot(),x=p(),y=p(),f=p(),w=p();let m=p(""),q=p(""),A=p(""),z=p(!1),D=p(null),N=p(!1);function J(i){const h=i.split(/[\s\-_:./]+/).filter(Boolean);return h.length>=2?(h[0][0]+h[1][0]).toUpperCase():i.slice(0,2).toUpperCase()}function Q(i){return J((i==null?void 0:i.name)||(i==null?void 0:i.id)||"OC")}function V(i){return i==="online"||i==="connected"?"online":i==="connecting"||i==="reconnecting"?"connecting":i==="offline"?"offline":"online"}function R(){zt.set(!1),s(D,null)}function ce(i){s(q,i),s(N,!1)}async function H(){const i=e(q).trim();if(!i){s(D,"需要填写工作目录");return}if(!e(z)){s(z,!0),s(D,null);try{await jt(e(m));const h=await Ie.createSession({directory:i});dt.set(await Ie.sessions()),Qa.set(await Ie.workspaces()),R(),ea(`/${h.id}/`)}catch(h){s(D,h.message)}finally{s(z,!1)}}}function X(i){if(i.key==="Escape"){R();return}i.key==="Tab"&&oe(i)}let he=p();function ge(i){return Array.from(i.querySelectorAll("button, input, [tabindex]")).filter(h=>!h.hasAttribute("disabled"))}function Se(i){const h=document.activeElement,l=i.querySelector("input:not([disabled])")??ge(i)[0];return l==null||l.focus(),{destroy(){var k;(k=h==null?void 0:h.focus)==null||k.call(h)}}}function oe(i){if(!e(he))return;const h=ge(e(he));if(h.length===0)return;const l=h[0],k=h[h.length-1];i.shiftKey&&document.activeElement===l?(i.preventDefault(),k.focus()):!i.shiftKey&&document.activeElement===k&&(i.preventDefault(),l.focus())}Y(()=>d(),()=>{var i;s(x,((i=d())==null?void 0:i.backends)??[])}),Y(()=>(d(),e(x)),()=>{var i,h;s(y,((i=d())==null?void 0:i.activeId)??((h=e(x)[0])==null?void 0:h.id)??"opencode")}),Y(()=>(e(m),e(y)),()=>{s(m,e(m)||e(y))}),Y(()=>(d(),e(m)),()=>{var i,h;s(f,((h=(i=d())==null?void 0:i.backends.find(l=>l.id===e(m)))==null?void 0:h.name)??e(m))}),Y(()=>(I(),e(m)),()=>{s(w,(()=>{const i=new Set,h=[];for(const l of[...I()].sort((k,se)=>se.lastActiveAt-k.lastActiveAt))!(l.backendId===e(m)||!l.backendId&&e(m)==="opencode")||!l.directory||i.has(l.directory)||(i.add(l.directory),h.push({directory:l.directory,name:l.directory.replace(/\/+$/,"").split("/").pop()||l.directory}));return h})())}),nt(),Ye();var ye=yt();F("keydown",Lt,X);var _=Ke(ye);{var v=i=>{var h=hr(),l=a(h),k=n(l,2),se=a(k),ve=n(a(se),2),ke=a(ve);At(ke,{name:"close",size:14}),t(ve),t(se);var Te=n(se,2),ne=a(Te);{var ue=le=>{var $e=cr();u(le,$e)},Le=le=>{var $e=dr(),Z=n(a($e),2);et(Z,5,()=>e(x),We=>We.id,(We,$)=>{const ae=gt(()=>(de(xt),e($),r(()=>xt(e($).id)))),C=gt(()=>(e($),e(m),r(()=>e($).id===e(m))));var P=vr();let E;var ee=a(P),ie=a(ee,!0);t(ee);var me=n(ee,2),U=a(me),Ue=a(U,!0);t(U),t(me);var Fe=n(me,2),Je=a(Fe,!0);t(Fe),t(P),G((we,Me,tt)=>{E=fe(P,1,"agent-chip svelte-cfrpez",null,E,{selected:e(C)}),je(P,"aria-checked",e(C)),rt(ee,`background:${de(wt),de(e(ae)),r(()=>wt[e(ae)])??""}; color:${de(st),de(e(ae)),r(()=>st[e(ae)])??""}; border-color:${de(kt),de(e(ae)),r(()=>kt[e(ae)])??""}`),M(ie,we),fe(me,1,`chip-status ${Me??""}`,"svelte-cfrpez"),rt(me,`--dot:${de(st),de(e(ae)),r(()=>st[e(ae)])??""}`),M(Ue,tt),M(Je,(e($),r(()=>e($).name??e($).id)))},[()=>(e($),r(()=>Q(e($)))),()=>(e($),r(()=>V(e($).status))),()=>(e($),r(()=>V(e($).status)))]),F("click",P,()=>{s(m,e($).id)}),u(We,P)}),t(Z),t($e),u(le,$e)};K(ne,le=>{e(x),r(()=>e(x).length===0)?le(ue):le(Le,-1)})}var ze=n(ne,2),De=n(a(ze),2),B=n(a(De),2);ft(B);var te=n(B,2);t(De);var j=n(De,2);{var re=le=>{var $e=pr();let Z;var We=a($e),$=a(We);t(We);var ae=n(We,2);et(ae,5,()=>e(w),C=>C.directory,(C,P)=>{var E=ur(),ee=a(E),ie=a(ee,!0);t(ee);var me=n(ee,2),U=a(me,!0);t(me),t(E),G(()=>{je(E,"title",(e(P),r(()=>e(P).directory))),M(ie,(e(P),r(()=>e(P).name))),M(U,(e(P),r(()=>e(P).directory)))}),F("click",E,()=>ce(e(P).directory)),u(C,E)}),t(ae),t($e),G(()=>{Z=fe($e,1,"recents svelte-cfrpez",null,Z,{open:e(N)}),M($,`recent · ${e(f)??""}`)}),u(le,$e)};K(j,le=>{e(w),r(()=>e(w).length>0)&&le(re)})}t(ze);var b=n(ze,2),S=n(a(b),2);ft(S),t(b);var W=n(b,2);{var pe=le=>{var $e=fr(),Z=a($e,!0);t($e),G(()=>M(Z,e(D))),u(le,$e)};K(W,le=>{e(D)&&le(pe)})}t(Te);var Ae=n(Te,2),qe=a(Ae),Oe=n(qe,2),Pe=a(Oe,!0);t(Oe),t(Ae),t(k),Rt(k,le=>s(he,le),()=>e(he)),ta(k,le=>Se==null?void 0:Se(le)),t(h),G(le=>{qe.disabled=e(z),Oe.disabled=le,M(Pe,e(z)?"Creating…":"Create")},[()=>(e(z),e(q),r(()=>e(z)||!e(q).trim()))]),F("click",l,R),F("click",ve,R),mt(B,()=>e(q),le=>s(q,le)),F("focus",B,()=>{s(N,!0)}),F("click",te,()=>s(N,!e(N))),mt(S,()=>e(A),le=>s(A,le)),F("click",qe,R),F("click",Oe,H),u(i,h)};K(_,i=>{T()&&i(v)})}u(O,ye),Ve(),L()}const mr="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QA/wD/AP+gvaeTAAAAB3RJTUUH6gkcFAMCstghUQAADE5JREFUeNrdm9lzW8eVxn/dd8MOggR3SqQWSyIlyrFlWbGVuOxxTWaqspQrVXnJU2r+wkzKqWSexk4yih3Hlmwp2mVtFPcVywXu2nnoC5HWYoEAKI5yqiCUQFzcPt855ztL3xZKKRIxgAwwABwETgCHks9fZYmBeeBy8qoDXvI5IgFAAOPA28C7wCRQBgrJ315lUYCbgPAP4G/AJWAJUCbawgeAD4CPgHOJ8q+65Z8UD23gaWAQ+DMwZ6Kt/GPg12jrpwC536vdA3HQhh5Eh7kB/MEEjqCtfw5I8+q7/PdJi+d+CKwByybwc2AWyO/36l6SiETXE8AHQin1OZr0hvd7ZS9ZloB7QilVRceHtdtfULu9oAPZw3gMAE8opaLkPru6V4wiVGrPQFBoJraE3CsQFEka3DXjK2AzCnkUNqnFMbFSPV+kAlJSMmGm6DcsLNFzGAQgzE6uDJViPvT4k7vBTc+lFkcoeuuuCkhLyWt2lvcyJaadLGnR++y8awAUEKFw44hHgcdnzS1u+S5bUUgvA0IBlhAMGw7rkY8tRzhuZXvuCbsGQACOkJxO5RkwLMatFL+rLvP3ZoWNHoMQKsVy5PPb6jIpIfmvvgnKpoXZQ1/rKAQEkBKSSSvNz3JlyobFWM3hU3eDR6GHr+KeLE4Bvoq57bt86m7wmpPh37Nl+mRHy+4dAI8vFoJJK01OmgwYFv2Gxf/U1/jWd2n0CASAhoq54tX4Y22VGSdHzs72zAt6AuWAYfFepsSY5WAKwR9rq9zyXZoq7llALEUef21s8XWzStmwGDacnvxuz2jVFpJDVobf9I3xUX6IY3YGu4c5PFKwFPp8XF3hpufSK//qaV5JC8kRK8MvC8P8qjDCjJ0l1cPUVY1DLjS2uOrVqURBTwi3d2ySiC0kJ+0cIq/T5X9Xl7np61qhWwmS+uOrZoU3UnneTBe6VqDnAIAmx2k7R6ogiZXi49oK1/w6jbh7TlAovmxWmG3kOJXKYQijqzDbEwBAFzGTVppfF0cxhSSuLnHFqxN0mR0ipbjh17ns1diKQhxDYnRRHD0TgCjxVqPLoZiTEONPc4N4KqYaR9wPGgSqcz9QQE1FzCmPW6FLWkmsALwgIgxjIqVAgRBgSIllShzbwLYMDONpoJ4CII5haRPCGAaLkLL0j3UqlhDMOFlq8QBLocfvaxGLobd7Fk/6VYlABYrFzQaf1VcJ/AaiFrNV83GbAUEQoZRCSq14Nm3Rl3col9L0Fx1syyCdMnEsAyGeAUAUw7WHsF6DmQMwNQIZp7tGxxGSk06Oj/JDLEU+F9wtViN/16YXkcIKQK2HLK9t8Umlyf2Khb/ps1H1qbsBfgKAYWgA8lmL/mKK8aEck2N5hgcyHJ8qMTqYxTTEdwFQaMvfmIeLd+DhKnz4Ohwdg2yXdUfJsHgrXWQ9CmnEMRcam7hJF9mW8s0Ycz3CWY5Q95rU7vl8tRDyjadQkSJWoJ4ILYFACJBSkHYMxgazvD07TC5jMTyQQT0JAIBS4AVa+fWa/n8QwYkJyKU6B0AA/dLig2yJpchjMwq42KwSvgiCGIz1EOOBj/Wth/EgQKyGqGqI14hpxPp6IcTToap01lAKanWwLYP+YopizsE0BILnkKAhIQhhbg3+75rmAKU0CNkUyA7jwRSCcTPFv2X6WQx9HoUeS6HP8/xABAq5GmJdb2Jdb2LM+Yi1CBEorawUGC9cjEApRSFnM324xLnTI4wPZZHJdc8EQAFCakJ8uAJ/vgp+qPnhxAQU0iA7LPAUMO3k+DDbz02/zp/qm2zGwbOVXwuxvmlgX3IxH/oIT2lX2mV2klJwaKLIf5w/yOvHyxRy9rZR2lnwo8QT6k2ouDA7CUPFztJkq5U+5eT4RW6IB0GTa16Et7M+iBRyJcT+poHzRR25FCB81RETSynoL6Q4e3KIn7w7+R3l2wIAIIx0avziFmy5sLoFZ4/B4REdLp3IsGFzPt3HNa9GNY6447uPlTfmA+zLDeyLrlbeU9vodQD4yaP9nJsdYaScwXxiwW0BIIUujla2wPWg1tDvQQgjJShkwNylN1hCctBK8Z+5Mg/CJmuRT6UZIJYC7G8a2F+7mHOBbgM75BwpBfmszZmZIU4fL2MZT3enbZfCLYatN+HqQ6g1dZZ44zDMHIShPjDl7oqmlJS8lS5w1e/jbt3lykoTcUlb3pxPlO9QFODYBq9N9nH6eJkDIzmEbKMSbAeIMIJ7S7BehfsrML8OZ47CkRFI2e2DIBHkhcmbMs+VNYdvv2wQf+Uil7tTXiOgKGQt3j87zrHJPhzr2S7acTMURrBRgyv3YasOi5vw5hENwmgJ0m0UTnGsqNR81m9UaXxewbpUJ1wOIOi+z0+nTA6O5Hl7doTRwexzv9cxAK00WHHh1jxs1mFxA05N6iwxOQT5NKSf4xFeELG46nLl5iqf/G2Om5eWUfN+95ZPgB0sZXjr1DBHDhTJZZ6/69d1O2xI7Q2LG9oj5tbg7iKcnITpCQ1ELq2/p8k0JggV9xcq/OXiAp9+McdXV1dYWnNRPdpdsSzJ0YNF3j87Tqlgf+9P9mQeIIQmHS+A+8s6W9xegOsT2htmDsLBQUhZMasbDS7fWuPCpUX++vUCN+9tUnUDYtVd17ltEMHUWJ6zJ4c4dXSAjPP9e749G4gIkmYq0mHR9BOPWIU7i3B0VJFzmty+84gvLz/gyu0V5ldcGk1dCMseaC8FpByLMyfHOHd6jFLBeeYMYE8AaIHQ0sMPYHkLKg1Y2IDrDyFjxdy963P/QcT6usD3JULECBWjlEIgOnMDpbtBJ+VweHKQc6cnmD48gNVGcbJnI7EWSfoBLKzDyiYYwqZaGSR0UmRKG5juKqFXJQqbqDgApZJJ7y7JQBhYts3QUIn33j7CD04M0V+028JyzwB4vDahXTNWglhZONkyTrpEFJQJcsPEgYvf2CBobhB6VQKvilLxtvri8T9PiAIlENLAdIqMjw/zozfG+Mk7wxwaS7ddme45AN/VQS8YaSANE8NOo1SElRkg9CqEXlW/ApcobBAFDeLQI458lIqSEJMIw8IwHaSVxU6VKBT7OTNb5qc/LjEz5ZDPtO89LwWA70grzQuJYTqaAA0H08mjIp849AgD9zEYUdjYDhEEUhpIw0FaGSynQL44wKnDOd4/k+LMMYtidnc08vIB2IlFq8kTBoZpgJUCBWYcEoeeBiQOUHGIStplPfkxkYZNJm0zNZriwzMG509CaZfKPxeAfXtQMAFEShNhG0AaoRRPPo6lEDiWYGpY8LOzgndOwGh/Zwnk2QAkxNXK7fshrZS4UymlIFbQn9eTqXdOwLvTMNYPVod7GE8BIAUUs7rHX6/qm/b++aQ2RSWPciWKmwaMleD0FPzwOLxxRDdeu51FPBcAgR5zTQ3Ba2MagHpTzwL3UwwJKRMGC3B+Gs7PaA/oy3Y+m3wmAK2bzRzQJa1jwsVvdUXnhy+fG1rPCpZyek3njmvrT5R1g9XpdHqnCKWe3qiLYl3H313UTc3le3Djke74Gn6ysA6r1hcprJSeRlsmDOTh2LhWfuYAHB6Fch6cLrfrXggA6JjzAz36ujEH/3gAd5f0hsnKVtLwJNNsIbaLnd2sS+2I8Vb4pW0oFzSxHRqG2SkdjsN9etrUC6u3BcBOcT0NxFpFA3H1IdxZ0JNiPwA/0l4Tx/r9RT+Y7GkgpSYwQ+pN2EJGK/r6IT1YmSjrOE87et64F9IWAC0WDiM9Ft+q69H4/IbeM7i3pMHYcjVxBhFPoyC23yxTK1XK6vw9VISJAT08KeW1m/flNChS9t7quwZgp8RKW7kVHpsJGBUXXF9/Vk9ezR0bwJax7cLZlH5lHK1oIa2JrpQD29Lf7XS/Yc8B2CkKDUYYQRwlXhJDw9MANPztctdOrC6EjnMnsa4htXsbsvuU1ikAHT0u/73AJEy+c765s7oUe5BBOlkmoLo6MNHOHR4DsN/qPi0B4En0Wbr1vbiDoMeu1VtZB65K4C/Awn6vZh/kAfAHCfwvcAOosn/N38sUBdSAK8DHJvB3tg8TvoM+OPmvdmq0JTHQBD4DPgFum+gDhJ8mf1xDHy8dTYD4V5IIWAU+B36LPjpbNYEQuJcgswxcBWaAMSDL/1sOa1sUUEmUvw9cQB+gfkSSBltflOh0mEWfJJ1NQHjVzxFHwF3gOpr41tCnySOAfwK44B4xUUtDyQAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyNi0wOS0yOFQyMDowMzowMiswMDowMJrHwKAAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjYtMDktMjhUMjA6MDM6MDIrMDA6MDDrmngcAAAAIHRFWHRzb2Z0d2FyZQBodHRwczovL2ltYWdlbWFnaWNrLm9yZ7zPHZ0AAAAYdEVYdFRodW1iOjpEb2N1bWVudDo6UGFnZXMAMaf/uy8AAAAXdEVYdFRodW1iOjpJbWFnZTo6SGVpZ2h0ADQ4h2CHLQAAABZ0RVh0VGh1bWI6OkltYWdlOjpXaWR0aAA0OH/PR6AAAAAZdEVYdFRodW1iOjpNaW1ldHlwZQBpbWFnZS9pY2+XMDjOAAAAF3RFWHRUaHVtYjo6TVRpbWUAMTc5MDYyNTc4MrLkzeUAAAASdEVYdFRodW1iOjpTaXplADk2NjJCQpTWNTIAAAAadEVYdFRodW1iOjpVUkkAZmlsZTovL2xhcmsuaWNvGFy81AAAAABJRU5ErkJggg==";var _r=ha('<svg viewBox="0 0 24 24" role="img" aria-label="Telegram"><path fill="#26A5E4" d="M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z"></path></svg>'),gr=ha('<svg viewBox="0 0 24 24" role="img" aria-label="WeChat"><path fill="#07C160" d="M8.691 2.188C3.891 2.188 0 5.476 0 9.53c0 2.212 1.17 4.203 3.002 5.55a.59.59 0 0 1 .213.665l-.39 1.48c-.019.07-.048.141-.048.213 0 .163.13.295.29.295a.326.326 0 0 0 .167-.054l1.903-1.114a.864.864 0 0 1 .717-.098 10.16 10.16 0 0 0 2.837.403c.276 0 .543-.027.811-.05-.857-2.578.157-4.972 1.932-6.446 1.703-1.415 3.882-1.98 5.853-1.838-.576-3.583-4.196-6.348-8.596-6.348zM5.785 5.991c.642 0 1.162.529 1.162 1.18a1.17 1.17 0 0 1-1.162 1.178A1.17 1.17 0 0 1 4.623 7.17c0-.651.52-1.18 1.162-1.18zm5.813 0c.642 0 1.162.529 1.162 1.18a1.17 1.17 0 0 1-1.162 1.178 1.17 1.17 0 0 1-1.162-1.178c0-.651.52-1.18 1.162-1.18zm5.34 2.867c-1.797-.052-3.746.512-5.28 1.786-1.72 1.428-2.687 3.72-1.78 6.22.942 2.453 3.666 4.229 6.884 4.229.826 0 1.622-.12 2.361-.336a.722.722 0 0 1 .598.082l1.584.926a.272.272 0 0 0 .14.047c.134 0 .24-.111.24-.247 0-.06-.023-.12-.038-.177l-.327-1.233a.582.582 0 0 1-.023-.156.49.49 0 0 1 .201-.398C23.024 18.48 24 16.82 24 14.98c0-3.21-2.931-5.837-6.656-6.088V8.89c-.135-.01-.27-.027-.407-.03zm-2.53 3.274c.535 0 .969.44.969.982a.976.976 0 0 1-.969.983.976.976 0 0 1-.969-.983c0-.542.434-.982.97-.982zm4.844 0c.535 0 .969.44.969.982a.976.976 0 0 1-.969.983.976.976 0 0 1-.969-.983c0-.542.434-.982.969-.982z"></path></svg>'),yr=g('<img alt="飞书 / Lark"/>');function wa(O,c){let d=Ce(c,"channel",8),I=Ce(c,"size",8,30);var T=yt(),o=Ke(T);{var L=f=>{var w=_r();G(()=>{je(w,"width",I()),je(w,"height",I())}),u(f,w)},x=f=>{var w=gr();G(()=>{je(w,"width",I()),je(w,"height",I())}),u(f,w)},y=f=>{var w=yr();G(()=>{je(w,"src",mr),je(w,"width",I()),je(w,"height",I()),rt(w,`border-radius: ${I()*.18}px`)}),u(f,w)};K(o,f=>{d()==="telegram"?f(L):d()==="wechat"?f(x,1):f(y,-1)})}u(O,T)}var wr=g('<button><span class="ch-logo svelte-b8emeh"><!></span> <span class="ch-name"> </span> <span> </span></button>'),kr=g('<span class="note svelte-b8emeh"> </span>'),xr=g('<p class="hint svelte-b8emeh">自定义白名单已保存——用工作区切换器添加条目后再来这里勾选。</p>'),Ar=g('<div class="detail svelte-b8emeh"><div class="d-hd svelte-b8emeh"><span class="d-name svelte-b8emeh"> </span> <button aria-label="启用通道"><span class="knob svelte-b8emeh"></span></button></div> <p class="note svelte-b8emeh"><!></p> <div class="sec svelte-b8emeh"><div class="sec-label svelte-b8emeh">关联凭证</div> <input class="cred mono svelte-b8emeh"/> <div class="sec-acts svelte-b8emeh"><button class="save svelte-b8emeh">保存</button> <!></div></div> <div class="sec svelte-b8emeh"><div class="sec-label svelte-b8emeh">回复粒度</div> <div class="opts svelte-b8emeh"><button>标准回复(隐藏工具过程)</button> <button>详细回复(显示工具过程)</button></div></div> <div class="sec svelte-b8emeh"><div class="sec-label svelte-b8emeh">工作区访问范围</div> <div class="opts svelte-b8emeh"><button>所有工作区</button> <button>自定义</button></div> <!></div> <div class="sec danger svelte-b8emeh"><div class="sec-label svelte-b8emeh">重置</div> <button class="reset svelte-b8emeh">恢复默认设置</button></div></div>'),$r=g("<span> </span>"),Ir=g('<div class="qr-expired svelte-b8emeh"><span>二维码已过期</span> <button class="copy svelte-b8emeh">刷新二维码</button></div>'),Sr=g('<div class="pair-head svelte-b8emeh"><div><div class="pair-title svelte-b8emeh">等待手机连接 <!></div> <div class="hint svelte-b8emeh">用手机扫码,或在手机上打开链接。链接 1 分钟内有效,仅可使用一次。</div></div> <button class="stop svelte-b8emeh">停止</button></div> <div><!> <!></div> <div class="pair-acts svelte-b8emeh"><span class="hint svelte-b8emeh">无法扫码?可以在手机上打开链接。</span> <span class="spacer svelte-b8emeh"></span> <button class="copy svelte-b8emeh"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><path d="M21 12a9 9 0 1 1-2.64-6.36"></path><path d="M21 3v6h-6"></path></svg> 刷新二维码</button> <button class="copy svelte-b8emeh"> </button></div>',1),zr=g('<div class="pair-stopped svelte-b8emeh"><span>已停止配对。</span> <button class="copy svelte-b8emeh">重新开始</button></div>'),Cr=g('<p class="hint svelte-b8emeh">配对信息加载中…</p>'),Mr=g('<div class="overlay svelte-b8emeh"><button class="backdrop svelte-b8emeh" aria-label="关闭"></button> <div class="modal svelte-b8emeh" role="dialog" aria-modal="true" aria-label="机器人与通道" tabindex="-1"><div class="header svelte-b8emeh"><span class="title svelte-b8emeh">🤖 机器人 · 通道</span> <button class="close svelte-b8emeh" aria-label="关闭">✕</button></div> <div class="cols svelte-b8emeh"><div class="list svelte-b8emeh"></div> <!></div> <div class="pair svelte-b8emeh"><!></div></div></div>');function Tr(O,c){Ge(c,!1);const d=()=>Be(Qt,"$channelsOpen",I),[I,T]=ot(),o=p(),L=p(),x=p(),y=p();let f=p([]),w=p(),m=p(null),q=p(""),A=p(""),z=p(!1),D=p(Date.now()),N=p(!1),J;async function Q(){try{s(f,(await Ie.channels()).channels??[]),!e(w)&&e(f).length>0&&s(w,e(f)[0].id)}catch{}}async function V(){s(N,!1);try{s(m,await Ie.pairQr())}catch{s(m,null)}}function R(){s(N,!0)}Vt(()=>{Q(),V(),J=setInterval(()=>s(D,Date.now()),1e3)}),Gt(()=>{J&&clearInterval(J)});function ce(l){return l==="telegram"?"Telegram":l==="wechat"?"微信":l==="lark"?"Lark":l}function H(){Qt.set(!1)}function X(l){s(w,l),s(q,""),s(A,"")}async function he(l){s(f,e(f).map(k=>k.id===l.id?{...k,enabled:!k.enabled}:k));try{await Ie.updateChannel(l.id,{enabled:!l.enabled})}catch{}}async function ge(l,k){s(f,e(f).map(se=>se.id===l.id?{...se,replyGranularity:k}:se));try{await Ie.updateChannel(l.id,{replyGranularity:k})}catch{}}async function Se(l){if(!e(q).trim()){s(A,"请输入凭证内容");return}try{await Ie.updateChannel(l.id,{credentials:{token:e(q).trim()}}),s(A,"已保存——重启实例后生效"),s(q,"")}catch{s(A,"保存失败")}}async function oe(){if(e(o)){try{await Ie.resetChannel(e(o).id)}catch{}await Q()}}async function ye(){if(e(m))try{await navigator.clipboard.writeText(e(m).url),s(z,!0),setTimeout(()=>s(z,!1),1600)}catch{}}function _(l){l.key==="Escape"&&H()}Y(()=>(e(f),e(w)),()=>{s(o,e(f).find(l=>l.id===e(w))??e(f)[0])}),Y(()=>(e(m),e(D)),()=>{var l;s(L,(l=e(m))!=null&&l.expiresAt?Math.max(0,e(m).expiresAt-e(D)):null)}),Y(()=>e(L),()=>{s(x,e(L)!==null&&e(L)<=0)}),Y(()=>e(L),()=>{s(y,e(L)===null?"":`${Math.floor(e(L)/6e4)}:${String(Math.floor(e(L)%6e4/1e3)).padStart(2,"0")}`)}),nt(),Ye();var v=yt();F("keydown",Lt,_);var i=Ke(v);{var h=l=>{var k=Mr(),se=a(k),ve=n(se,2),ke=a(ve),Te=n(a(ke),2);t(ke);var ne=n(ke,2),ue=a(ne);et(ue,5,()=>e(f),b=>b.id,(b,S)=>{var W=wr();let pe;var Ae=a(W),qe=a(Ae);wa(qe,{get channel(){return e(S),r(()=>e(S).channel)},size:22}),t(Ae);var Oe=n(Ae,2),Pe=a(Oe,!0);t(Oe);var le=n(Oe,2);let $e;var Z=a(le,!0);t(le),t(W),G(We=>{var $;pe=fe(W,1,"ch svelte-b8emeh",null,pe,{sel:(($=e(o))==null?void 0:$.id)===e(S).id}),M(Pe,We),$e=fe(le,1,"ch-state svelte-b8emeh",null,$e,{on:e(S).enabled}),M(Z,(e(S),r(()=>e(S).enabled?"已启用":"已停用")))},[()=>(e(S),r(()=>ce(e(S).channel)))]),F("click",W,()=>X(e(S).id)),u(b,W)}),t(ue);var Le=n(ue,2);{var ze=b=>{var S=Ar(),W=a(S),pe=a(W),Ae=a(pe,!0);t(pe);var qe=n(pe,2);let Oe;t(W);var Pe=n(W,2),le=a(Pe);{var $e=be=>{var _e=Wt();G(()=>M(_e,`${e(o),r(()=>{var xe;return(xe=e(o).live)!=null&&xe.connected?"轮询运行中":"未在轮询"})??""}${e(o),r(()=>{var xe;return(xe=e(o).live)!=null&&xe.username?` · @${e(o).live.username}`:""})??""}。
|
|
3
3
|
停用/启用在重启实例后生效。`)),u(be,_e)},Z=be=>{var _e=Wt("待接入:凭证保存后,通道本体在后续版本启用。");u(be,_e)};K(le,be=>{e(o),r(()=>e(o).channel==="telegram")?be($e):be(Z,-1)})}t(Pe);var We=n(Pe,2),$=n(a(We),2);ft($);var ae=n($,2),C=a(ae),P=n(C,2);{var E=be=>{var _e=kr(),xe=a(_e,!0);t(_e),G(()=>M(xe,e(A))),u(be,_e)};K(P,be=>{e(A)&&be(E)})}t(ae),t(We);var ee=n(We,2),ie=n(a(ee),2),me=a(ie);let U;var Ue=n(me,2);let Fe;t(ie),t(ee);var Je=n(ee,2),we=n(a(Je),2),Me=a(we);let tt;var Re=n(Me,2);let Ee;t(we);var Ne=n(we,2);{var He=be=>{var _e=xr();u(be,_e)};K(Ne,be=>{e(o),r(()=>e(o).workspaces.mode==="custom")&&be(He)})}t(Je);var Ze=n(Je,2),Xe=n(a(Ze),2);t(Ze),t(S),G(be=>{M(Ae,be),Oe=fe(qe,1,"switch svelte-b8emeh",null,Oe,{on:e(o).enabled}),je(qe,"aria-pressed",(e(o),r(()=>e(o).enabled))),je($,"placeholder",(e(o),r(()=>e(o).channel==="telegram"?"BotFather token(留空保持不变)":"凭证(预留)"))),U=fe(me,1,"opt svelte-b8emeh",null,U,{sel:e(o).replyGranularity==="standard"}),Fe=fe(Ue,1,"opt svelte-b8emeh",null,Fe,{sel:e(o).replyGranularity==="detailed"}),tt=fe(Me,1,"opt svelte-b8emeh",null,tt,{sel:e(o).workspaces.mode==="all"}),Ee=fe(Re,1,"opt svelte-b8emeh",null,Ee,{sel:e(o).workspaces.mode==="custom"})},[()=>(e(o),r(()=>ce(e(o).channel)))]),F("click",qe,()=>he(e(o))),mt($,()=>e(q),be=>s(q,be)),F("click",C,()=>Se(e(o))),F("click",me,()=>ge(e(o),"standard")),F("click",Ue,()=>ge(e(o),"detailed")),F("click",Me,()=>Ie.updateChannel(e(o).id,{workspaces:{mode:"all"}}).then(Q)),F("click",Re,()=>Ie.updateChannel(e(o).id,{workspaces:{mode:"custom",dirs:[]}}).then(Q)),F("click",Xe,oe),u(b,S)};K(Le,b=>{e(o)&&b(ze)})}t(ne);var De=n(ne,2),B=a(De);{var te=b=>{var S=Sr(),W=Ke(S),pe=a(W),Ae=a(pe),qe=n(a(Ae));{var Oe=ee=>{var ie=$r();let me;var U=a(ie,!0);t(ie),G(()=>{me=fe(ie,1,"cd mono svelte-b8emeh",null,me,{expired:e(x)}),M(U,e(x)?"已过期":`· ${e(y)}`)}),u(ee,ie)};K(qe,ee=>{e(L)!==null&&ee(Oe)})}t(Ae),it(2),t(pe);var Pe=n(pe,2);t(W);var le=n(W,2);let $e;var Z=a(le);_a(Z,()=>(e(m),r(()=>e(m).svg)));var We=n(Z,2);{var $=ee=>{var ie=Ir(),me=n(a(ie),2);t(ie),F("click",me,V),u(ee,ie)};K(We,ee=>{e(x)&&ee($)})}t(le);var ae=n(le,2),C=n(a(ae),4),P=n(C,2),E=a(P,!0);t(P),t(ae),G(()=>{$e=fe(le,1,"qr-big svelte-b8emeh",null,$e,{dim:e(x)}),M(E,e(z)?"✓ 已复制":"复制链接")}),F("click",Pe,R),F("click",C,V),F("click",P,ye),u(b,S)},j=b=>{var S=zr(),W=n(a(S),2);t(S),F("click",W,V),u(b,S)},re=b=>{var S=Cr();u(b,S)};K(B,b=>{e(m)&&!e(N)?b(te):e(N)?b(j,1):b(re,-1)})}t(De),t(ve),t(k),F("click",se,H),F("click",Te,H),F("click",ve,Ya(function(b){Xa.call(this,c,b)})),F("click",k,H),u(l,k)};K(i,l=>{d()&&l(h)})}u(O,v),Ve(),T()}var Lr=g('<div class="overlay svelte-1r7zhoh"><button class="backdrop svelte-1r7zhoh" aria-label="Close"></button> <div class="menu svelte-1r7zhoh" role="menu" aria-label="New actions"><button class="item svelte-1r7zhoh" role="menuitem"><span class="icon svelte-1r7zhoh" aria-hidden="true">+</span> <span class="label svelte-1r7zhoh">New session</span></button> <button class="item svelte-1r7zhoh" role="menuitem"><span class="icon svelte-1r7zhoh" aria-hidden="true"><!></span> <span class="label svelte-1r7zhoh">Command palette</span> <kbd class="keycap mono svelte-1r7zhoh">⌘K</kbd></button></div></div>');function Er(O,c){Ge(c,!1);const d=()=>Be(It,"$plusMenuOpen",I),[I,T]=ot();let o=Ce(c,"anchor",8,null);function L(){It.set(!1),zt.set(!0)}function x(){It.set(!1),St.set(!0)}function y(){It.set(!1)}function f(A){A.key==="Escape"&&y()}Ye();var w=yt();F("keydown",Lt,f);var m=Ke(w);{var q=A=>{var z=Lr(),D=a(z),N=n(D,2),J=a(N),Q=n(J,2),V=a(Q),R=a(V);At(R,{name:"search",size:14}),t(V),it(4),t(Q),t(N),t(z),G(ce=>rt(N,ce),[()=>(de(o()),r(()=>o()?`top:${o().getBoundingClientRect().bottom+6}px; left:${o().getBoundingClientRect().left}px`:""))]),F("click",D,y),F("click",J,L),F("click",Q,x),u(A,z)};K(m,A=>{d()&&A(q)})}u(O,w),Ve(),T()}var qr=g('<button class="scrim svelte-9zfapn" aria-label="Close"></button>'),Br=g('<button class="dial-item svelte-9zfapn" role="menuitem"><span class="dial-label mono svelte-9zfapn"> </span> <span class="dial-icon svelte-9zfapn" aria-hidden="true"> </span></button>'),Or=g('<div class="dial svelte-9zfapn" role="menu"></div>'),Dr=g('<div><!> <!> <button><span aria-hidden="true">+</span></button></div>');function Pr(O,c){Ge(c,!1);let d=p(!1);const I=()=>s(d,!e(d)),T=()=>s(d,!1),o=[{label:"新建会话",icon:"+",run:()=>zt.set(!0)},{label:"搜索与命令",icon:"⌕",run:()=>St.set(!0)}];function L(N){N.run(),T()}function x(N){N.key==="Escape"&&e(d)&&T()}Ye();var y=Dr();F("keydown",Lt,x);let f;var w=a(y);{var m=N=>{var J=qr();F("click",J,T),u(N,J)};K(w,N=>{e(d)&&N(m)})}var q=n(w,2);{var A=N=>{var J=Or();et(J,5,()=>o,Q=>Q.label,(Q,V)=>{var R=Br(),ce=a(R),H=a(ce,!0);t(ce);var X=n(ce,2),he=a(X,!0);t(X),t(R),G(()=>{M(H,e(V).label),M(he,e(V).icon)}),F("click",R,()=>L(e(V))),u(Q,R)}),t(J),u(N,J)};K(q,N=>{e(d)&&N(A)})}var z=n(q,2);let D;t(y),G(()=>{f=fe(y,1,"fab-root svelte-9zfapn",null,f,{open:e(d)}),D=fe(z,1,"fab svelte-9zfapn",null,D,{rot:e(d)}),je(z,"aria-label",e(d)?"关闭菜单":"快捷操作"),je(z,"aria-expanded",e(d))}),F("click",z,I),u(O,y),Ve()}var jr=g('<p class="rejected svelte-9s687p"> </p>'),Wr=g('<p class="rejected svelte-9s687p">上一次的令牌被服务器拒绝了——请在下方重新配对。</p>'),Fr=g('<span class="chip mono svelte-9s687p"> </span>'),Rr=g("<span> </span>"),Ur=g('<button class="btn enter svelte-9s687p">配对此浏览器并进入</button>'),Jr=g('<div class="qr-re svelte-9s687p"><span>已过期</span> <button class="btn svelte-9s687p">刷新二维码</button></div>'),Nr=g('<div class="wait-row svelte-9s687p"><span> <!></span> <!></div> <div class="qr-wrap svelte-9s687p"><!> <!></div> <div class="acts svelte-9s687p"><span class="hint svelte-9s687p">无法扫码?在手机上打开链接。</span> <span class="spacer svelte-9s687p"></span> <button class="btn svelte-9s687p">⟳ 刷新二维码</button> <button class="btn svelte-9s687p"> </button></div> <p class="hint dim svelte-9s687p">二维码 1 分钟内有效、仅可使用一次;过期自动刷新,刷新会作废旧码。配对成功后本页自动进入面板。</p>',1),Kr=g('<p class="hint dim svelte-9s687p">配对信息加载中…(若宿主机未启用配对组件,请用下方令牌粘贴)</p>'),Hr=g('<span class="ok svelte-9s687p"> </span>'),Qr=g('<span class="off svelte-9s687p">未连接</span>'),Yr=g('<span class="off svelte-9s687p">待接入</span>'),Gr=g('<div class="ch svelte-9s687p"><span class="ch-icon svelte-9s687p" aria-hidden="true"><!></span> <div class="ch-body"><div class="ch-name svelte-9s687p"> <!></div> <div class="ch-note svelte-9s687p"> </div></div> <span class="lock svelte-9s687p" title="配对后可配置">🔒</span></div>'),Vr=g('<!> <p class="hint dim svelte-9s687p">🔒 通道状态仅展示;凭证与回复粒度等配置在配对后的「机器人管理」面板(标题栏 🤖)中。</p>',1),Zr=g('<p class="hint dim svelte-9s687p">…</p>'),Xr=g('<div class="err svelte-9s687p"> </div>'),el=g('<div class="gate svelte-9s687p"><div class="panel svelte-9s687p"><div class="head svelte-9s687p"><span class="hicon svelte-9s687p" aria-hidden="true"><svg viewBox="0 0 64 64" fill="none" stroke-width="6" stroke-linecap="round" class="svelte-9s687p"><path d="M46 15 A24 24 0 1 0 54 32" stroke="var(--text)" opacity=".85"></path><circle cx="49" cy="20" r="7" fill="var(--accent)" stroke="none"></circle></svg></span> <div><h1 class="svelte-9s687p">配对 ocrc 远程控制</h1> <p class="sub svelte-9s687p">扫码或在手机上打开链接,即可远程控制这台机器的 opencode。</p></div></div> <!> <div class="cols svelte-9s687p"><section class="scan svelte-9s687p"><div class="sec-head svelte-9s687p"><span class="sec-title svelte-9s687p">📱 手机扫码连接</span> <!></div> <p class="sub svelte-9s687p">用手机相机扫码,在手机上打开这台机器。</p> <!></section> <section class="channels svelte-9s687p"><div class="sec-head svelte-9s687p"><span class="sec-title svelte-9s687p">🤖 Bot 通道</span></div> <p class="sub svelte-9s687p">连接聊天 Bot,适合更长时间的移动端访问。</p> <!></section></div> <details class="paste svelte-9s687p"><summary class="svelte-9s687p">已有配对链接或令牌?</summary> <div class="paste-body svelte-9s687p"><input class="field mono svelte-9s687p" placeholder="粘贴配对链接或令牌…" aria-label="配对令牌或链接" autocapitalize="off" autocorrect="off" spellcheck="false"/> <!> <button class="connect svelte-9s687p">连接</button></div></details> <p class="hint dim foot svelte-9s687p">令牌只保存在本设备上 · Telegram 通道为可选,未配置时仅 Web 面板可用</p></div></div>');function tl(O,c){Ge(c,!1);const d=()=>Be(za,"$pairHint",I),[I,T]=ot(),o=p(),L=p(),x=p(),y=p(),f=p();let w=Ce(c,"status",8,"pairing"),m=p(""),q=p(""),A=p(!1),z=p(null),D=p(Date.now()),N=p(!1),J;async function Q(){try{s(z,await Ie.pairOnboarding()),s(D,Date.now())}catch{s(z,null)}}const V={telegram:{name:"Telegram",note:"从 Telegram 打开这台机器"},wechat:{name:"微信",note:"待接入(配置面板已预埋)"},lark:{name:"飞书 / Lark",note:"待接入(配置面板已预埋)"}};Vt(()=>{Q(),J=setInterval(()=>{s(D,Date.now()),e(L)&&Q()},1e3)}),Gt(()=>{J&&clearInterval(J)});async function R(){if(e(z))try{await navigator.clipboard.writeText(e(z).url),s(N,!0),setTimeout(()=>s(N,!1),1600)}catch{}}function ce(j){const re=j.trim(),b=re.match(/token=([^&#\s]+)/);return b?decodeURIComponent(b[1]):re}async function H(){if(s(q,""),/[?#]pair=/.test(e(m))){s(q,await ra(e(m)));return}const j=ce(e(m));if(!j||j.length<16){s(q,"这看起来不是有效的令牌。");return}Ca(j)||s(q,"这看起来不是有效的令牌。")}Y(()=>(e(z),e(D)),()=>{var j;s(o,(j=e(z))!=null&&j.expiresAt?Math.max(0,e(z).expiresAt-e(D)):null)}),Y(()=>e(o),()=>{s(L,e(o)!==null&&e(o)<=0)}),Y(()=>e(z),()=>{var j;s(x,((j=e(z))==null?void 0:j.paired)??0)}),Y(()=>e(x),()=>{s(y,e(x)>0)}),Y(()=>e(o),()=>{s(f,e(o)===null?"":`${Math.floor(e(o)/6e4)}:${String(Math.floor(e(o)%6e4/1e3)).padStart(2,"0")}`)}),nt(),Ye();var X=el(),he=a(X),ge=n(a(he),2);{var Se=j=>{var re=jr(),b=a(re,!0);t(re),G(()=>M(b,d())),u(j,re)},oe=j=>{var re=Wr();u(j,re)};K(ge,j=>{d()?j(Se):w()==="rejected"&&j(oe,1)})}var ye=n(ge,2),_=a(ye),v=a(_),i=n(a(v),2);{var h=j=>{var re=Fr(),b=a(re);t(re),G(()=>M(b,`${e(z),r(()=>e(z).host.hostname)??""} · ${e(z),r(()=>e(z).host.arch)??""}`)),u(j,re)};K(i,j=>{e(z)&&j(h)})}t(v);var l=n(v,4);{var k=j=>{var re=Nr(),b=Ke(re),S=a(b);let W;var pe=a(S),Ae=n(pe);{var qe=E=>{var ee=Rr();let ie;var me=a(ee,!0);t(ee),G(()=>{ie=fe(ee,1,"mono cd svelte-9s687p",null,ie,{expired:e(L)}),M(me,e(L)?"二维码已过期":`· ${e(f)}`)}),u(E,ee)};K(Ae,E=>{e(o)!==null&&E(qe)})}t(S);var Oe=n(S,2);{var Pe=E=>{var ee=Ur();F("click",ee,()=>e(z)&&ra(e(z).url)),u(E,ee)};K(Oe,E=>{e(y)&&E(Pe)})}t(b);var le=n(b,2),$e=a(le);_a($e,()=>(e(z),r(()=>e(z).svg)));var Z=n($e,2);{var We=E=>{var ee=Jr(),ie=n(a(ee),2);t(ee),F("click",ie,Q),u(E,ee)};K(Z,E=>{e(L)&&E(We)})}t(le);var $=n(le,2),ae=n(a($),4),C=n(ae,2),P=a(C,!0);t(C),t($),it(2),G(()=>{W=fe(S,1,"wait svelte-9s687p",null,W,{done:e(y)}),M(pe,`${e(y)?`✓ 已有 ${e(x)} 台设备完成配对`:"等待手机连接"} `),M(P,e(N)?"✓ 已复制":"复制链接")}),F("click",ae,Q),F("click",C,R),u(j,re)},se=j=>{var re=Kr();u(j,re)};K(l,j=>{e(z)?j(k):j(se,-1)})}t(_);var ve=n(_,2),ke=n(a(ve),4);{var Te=j=>{var re=Vr(),b=Ke(re);et(b,1,()=>(e(z),r(()=>e(z).channels)),S=>S.channel,(S,W)=>{var pe=Gr(),Ae=a(pe),qe=a(Ae);wa(qe,{get channel(){return e(W),r(()=>e(W).channel)},size:30}),t(Ae);var Oe=n(Ae,2),Pe=a(Oe),le=a(Pe),$e=n(le);{var Z=P=>{var E=Hr(),ee=a(E);t(E),G(()=>M(ee,`已连接 @${e(W),r(()=>e(W).live.username)??""}`)),u(P,E)},We=P=>{var E=Qr();u(P,E)},$=P=>{var E=Yr();u(P,E)};K($e,P=>{e(W),r(()=>{var E;return e(W).channel==="telegram"&&((E=e(W).live)==null?void 0:E.connected)})?P(Z):(e(W),r(()=>e(W).channel==="telegram")?P(We,1):P($,-1))})}t(Pe);var ae=n(Pe,2),C=a(ae,!0);t(ae),t(Oe),it(2),t(pe),G(()=>{M(le,`${e(W),r(()=>{var P;return((P=V[e(W).channel])==null?void 0:P.name)??e(W).channel})??""} `),M(C,(e(W),r(()=>{var P;return((P=V[e(W).channel])==null?void 0:P.note)??""})))}),u(S,pe)}),it(2),u(j,re)},ne=j=>{var re=Zr();u(j,re)};K(ke,j=>{e(z)?j(Te):j(ne,-1)})}t(ve),t(ye);var ue=n(ye,2),Le=n(a(ue),2),ze=a(Le);ft(ze);var De=n(ze,2);{var B=j=>{var re=Xr(),b=a(re,!0);t(re),G(()=>M(b,e(q))),u(j,re)};K(De,j=>{e(q)&&j(B)})}var te=n(De,2);t(Le),t(ue),it(2),t(he),t(X),G(j=>te.disabled=j,[()=>(e(m),r(()=>!e(m).trim()))]),mt(ze,()=>e(m),j=>s(m,j)),F("keydown",ze,j=>j.key==="Enter"&&H()),F("click",te,H),Za("open","toggle",ue,j=>s(A,j),()=>e(A)),u(O,X),Ve(),T()}var al=g('<button class="backdrop svelte-12qhfyh" aria-label="Close"></button>'),sl=g('<div class="app svelte-12qhfyh"><!> <!> <div class="body svelte-12qhfyh"><!> <div><!></div> <div role="separator" aria-orientation="vertical" aria-label="调整会话栏宽度"></div> <main class="svelte-12qhfyh"><!></main> <div role="separator" aria-orientation="vertical" aria-label="调整检查器宽度"></div> <div><!></div></div></div> <!> <!> <!> <!> <!> <!>',1);function ul(O,c){Ge(c,!1);const d=()=>Be(ma,"$page",y),I=()=>Be(Ft,"$backends",y),T=()=>Be(Ot,"$inspectorOpen",y),o=()=>Be(Zt,"$leftPanelOpen",y),L=()=>Be(St,"$paletteOpen",y),x=()=>Be(Jt,"$auth",y),[y,f]=ot(),w=p();let m=p(!1),q=p(!1),A=p(),z=p(null);function D(){s(m,!1),Ot.set(!1)}function N(){s(m,!e(m)),Ot.set(!1)}function J(){Ot.update(C=>!C),s(m,!1)}function Q(C){if((C.metaKey||C.ctrlKey)&&C.key.toLowerCase()==="k"){C.preventDefault(),St.set(!0);return}if(C.key==="Escape"){if(Ct(It)){It.set(!1);return}if(Ct(zt)){zt.set(!1);return}D()}}let V=p(""),R=null,ce=p(250),H=p(280),X=p(null);try{s(ce,Math.max(180,Math.min(520,Number(localStorage.getItem("ocrc.railW"))||250))),s(H,Math.max(220,Math.min(520,Number(localStorage.getItem("ocrc.inspW"))||280)))}catch{}function he(C,P){if(window.matchMedia("(max-width: 820px)").matches)return;P.preventDefault(),s(X,C);const E=P.clientX,ee=C==="rail"?e(ce):e(H),ie=U=>{const Ue=C==="rail"?U.clientX-E:E-U.clientX,Fe=Math.max(C==="rail"?180:220,Math.min(520,ee+Ue));C==="rail"?s(ce,Fe):s(H,Fe)},me=()=>{window.removeEventListener("pointermove",ie),window.removeEventListener("pointerup",me),s(X,null);try{localStorage.setItem("ocrc.railW",String(e(ce))),localStorage.setItem("ocrc.inspW",String(e(H)))}catch{}};window.addEventListener("pointermove",ie),window.addEventListener("pointerup",me)}let ge=p(null);async function Se(){e(ge)&&(e(ge).prompt(),await e(ge).userChoice,s(ge,null))}let oe=null,ye=!1,_=0,v;async function i(C){if(!(ye||Date.now()-_<2e3)){ye=!0,_=Date.now();try{const{cards:P,lastSeq:E}=await Ie.history(C);ca.set(!0),Nt(C,P,E),setTimeout(()=>ca.set(!1),350),R==null||R.send({type:"subscribe",sessionId:C,sinceSeq:E})}catch(P){console.warn("[layout] resync failed",P)}finally{ye=!1}}}function h(C){var E,ee;if(Ct(Jt)!=="ready")return;if(La.set(C),rs(C),!C){la(void 0),oe=null;return}la(C);const P=!((ee=(E=Ct(Mt)[C])==null?void 0:E.order)!=null&&ee.length);C===oe&&!P||(oe=C,Ie.history(C).then(({cards:ie,lastSeq:me})=>{Nt(C,ie,me),R==null||R.send({type:"subscribe",sessionId:C,sinceSeq:me})}).catch(ie=>{console.warn("[layout] history failed",ie),Nt(C,[],0),R==null||R.send({type:"subscribe",sessionId:C})}))}function l(){R&&(R.close(),R=null),Ie.me().then(P=>{s(V,P.email)}).catch(()=>{}),Ie.sessions().then(P=>{dt.set(P)}).catch(()=>{}),Ma(),Ta();const C=location.protocol==="https:"?"wss:":"ws:";R=ns({url:`${C}//${location.host}/ws`,onReconnect:()=>{var P;if(oe){const E=((P=Ct(Mt)[oe])==null?void 0:P.lastSeq)??0;R==null||R.send({type:"subscribe",sessionId:oe,sinceSeq:E})}},onMessage:P=>{var E;if(P.type==="card"&&P.card){const ee=P.card.sessionId,ie=ee?((E=Ct(Mt)[ee])==null?void 0:E.lastSeq)??0:0;Ea(P.card),ee&&qa(ie,P.card)&&(clearTimeout(v),v=setTimeout(()=>{i(ee)},500))}(P.type==="hello"||P.type==="sessions")&&P.sessions&&(dt.set(P.sessions),ls(P.sessions)),P.type==="replayEnd"&&P.complete===!1&&typeof P.sessionId=="string"&&i(P.sessionId)}}),h(d().params.sessionId)}Vt(()=>{const C=Jt.subscribe(Me=>{Me==="ready"&&l()}),P=Me=>{Me.preventDefault(),s(ge,Me)};window.addEventListener("beforeinstallprompt",P);const E=window.matchMedia("(max-width: 820px)");s(q,E.matches);const ee=Me=>{s(q,Me.matches),Me.matches||D()};E.addEventListener("change",ee);const ie=window.visualViewport,me=()=>{!ie||!e(A)||(window.scrollY!==0&&window.scrollTo(0,0),oa(A,e(A).style.height=`${Math.round(ie.height)}px`),oa(A,e(A).style.transform=ie.offsetTop>0?`translateY(${Math.round(ie.offsetTop)}px)`:""))};me(),ie==null||ie.addEventListener("resize",me),ie==null||ie.addEventListener("scroll",me);const U=()=>setTimeout(me,300);window.addEventListener("orientationchange",U);let Ue=0,Fe=0;const Je=()=>{me(),Date.now()<Ue?Fe=requestAnimationFrame(Je):Fe=0},we=()=>{Ue=Date.now()+650,Fe||(Fe=requestAnimationFrame(Je))};return window.addEventListener("focusin",we),window.addEventListener("focusout",we),()=>{C(),window.removeEventListener("beforeinstallprompt",P),E.removeEventListener("change",ee),ie==null||ie.removeEventListener("resize",me),ie==null||ie.removeEventListener("scroll",me),window.removeEventListener("focusin",we),window.removeEventListener("focusout",we),window.removeEventListener("orientationchange",U),Fe&&cancelAnimationFrame(Fe),clearTimeout(v),R==null||R.close()}}),Ga(C=>{var P,E;D(),h((E=(P=C.to)==null?void 0:P.params)==null?void 0:E.sessionId)}),Y(()=>(I(),Ht),()=>{I()&&typeof document<"u"&&Ht(I().activeId)}),Y(()=>d(),()=>{s(w,!!d().params.sessionId)}),nt(),Ye();var k=sl();F("keydown",Lt,Q);var se=Ke(k),ve=a(se);{var ke=C=>{ds(C,{get email(){return e(V)},onPalette:()=>St.set(!0),get installEvent(){return e(ge)},onInstall:Se,get drawerLeft(){return e(m)},get drawerRight(){return T()},onToggleLeft:N,onToggleRight:J,get newButtonAnchor(){return e(z)},set newButtonAnchor(P){s(z,P)},$$legacy:!0})};K(ve,C=>{e(q)&&e(w)||C(ke)})}var Te=n(ve,2);ps(Te);var ne=n(Te,2),ue=a(ne);{var Le=C=>{var P=al();F("click",P,D),u(C,P)};K(ue,C=>{(e(m)||T())&&C(Le)})}var ze=n(ue,2);let De;var B=a(ze);Fs(B,{get activeId(){return d(),r(()=>d().params.sessionId)},get drawer(){return e(q)}}),t(ze);var te=n(ze,2);let j;var re=n(te,2),b=a(re);Yt(b,c,"default",{}),t(re);var S=n(re,2);let W;var pe=n(S,2);let Ae;var qe=a(pe);Zn(qe,{get sessionId(){return d(),r(()=>d().params.sessionId)}}),t(pe),t(ne),t(se),Rt(se,C=>s(A,C),()=>e(A));var Oe=n(se,2);ir(Oe,{get open(){return L()},$$events:{close:()=>St.set(!1)}});var Pe=n(Oe,2);Er(Pe,{get anchor(){return e(z)}});var le=n(Pe,2);br(le,{});var $e=n(le,2);Tr($e,{});var Z=n($e,2);{var We=C=>{Pr(C,{})};K(Z,C=>{e(w)||C(We)})}var $=n(Z,2);{var ae=C=>{{let P=gt(()=>x()==="rejected"?"rejected":"pairing");tl(C,{get status(){return e(P)}})}};K($,C=>{x()!=="ready"&&C(ae)})}G(()=>{rt(se,`--rail-w:${e(ce)??""}px; --insp-w:${e(H)??""}px`),De=fe(ze,1,"rail-wrap svelte-12qhfyh",null,De,{collapsed:!o()&&!e(q),open:e(m)||e(q)&&!e(w)}),j=fe(te,1,"divider svelte-12qhfyh",null,j,{resizing:e(X)==="rail"}),W=fe(S,1,"divider svelte-12qhfyh",null,W,{resizing:e(X)==="insp"}),Ae=fe(pe,1,"inspector-wrap svelte-12qhfyh",null,Ae,{open:T()})}),F("pointerdown",te,C=>he("rail",C)),F("pointerdown",S,C=>he("insp",C)),u(O,k),Ve(),f()}export{ul as component,dl as universal};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../chunks/CWj6FrbW.js";import{aE as f,a4 as g,a$ as v,w as d,aB as l,a6 as _,J as s,aK as o,aU as x,aR as p}from"../chunks/BjY4dxcB.js";import{b as $,p as c}from"../chunks/
|
|
1
|
+
import"../chunks/CWj6FrbW.js";import{aE as f,a4 as g,a$ as v,w as d,aB as l,a6 as _,J as s,aK as o,aU as x,aR as p}from"../chunks/BjY4dxcB.js";import{b as $,p as c}from"../chunks/_bauirnP.js";const b={get error(){return c.error},get status(){return c.status}};$.updated.check;const m=b;var k=_("<h1> </h1> <p> </p>",1);function J(n,u){f(u,!0);var t=k(),a=g(t),h=s(a,!0);o(a);var r=x(a,2),i=s(r,!0);o(r),v(()=>{var e;p(h,m.status),p(i,(e=m.error)==null?void 0:e.message)}),d(n,t),l()}export{J as component};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../chunks/CWj6FrbW.js";import{r as y,j as I,z as N,i as L}from"../chunks/TuGPYaVf.js";import{aE as B,ap as d,aq as M,w as l,aB as O,a8 as t,a6 as S,aO as p,J as j,b4 as q,aK as z,au as m,b0 as _,a$ as E,aR as J}from"../chunks/BjY4dxcB.js";import{i as K,s as R,a as f}from"../chunks/DIEDQ_hk.js";import{g as b}from"../chunks/
|
|
1
|
+
import"../chunks/CWj6FrbW.js";import{r as y,j as I,z as N,i as L}from"../chunks/TuGPYaVf.js";import{aE as B,ap as d,aq as M,w as l,aB as O,a8 as t,a6 as S,aO as p,J as j,b4 as q,aK as z,au as m,b0 as _,a$ as E,aR as J}from"../chunks/BjY4dxcB.js";import{i as K,s as R,a as f}from"../chunks/DIEDQ_hk.js";import{g as b}from"../chunks/_bauirnP.js";var C=S('<div class="empty svelte-1uha8ag"><!></div>');function Q(g,$){B($,!1);const v=()=>f(I,"$backends",c),s=()=>f(N,"$sessionList",c),h=()=>f(L,"$backendName",c),[c,k]=R(),o=m(),i=m(),u=window.matchMedia("(max-width: 820px)").matches;let n=m(!1);d(()=>v(),()=>{var e;p(o,(e=v())==null?void 0:e.activeId)}),d(()=>(t(o),s()),()=>{p(i,t(o)?s().filter(e=>e.backendId===t(o)||!e.backendId&&t(o)==="opencode").sort((e,a)=>a.lastActiveAt-e.lastActiveAt):[...s()].sort((e,a)=>a.lastActiveAt-e.lastActiveAt))}),d(()=>(t(n),t(i),b),()=>{!t(n)&&!u&&t(i).length>0&&(p(n,!0),b(`/${t(i)[0].id}/`,{replaceState:!0}))}),M(),y();var r=C(),A=j(r);{var x=e=>{var a=_();E(()=>J(a,`No sessions yet — create one to start chatting with ${h()??""}.`)),l(e,a)},w=e=>{var a=_("Opening latest session…");l(e,a)};K(A,e=>{s(),q(()=>s().length===0)?e(x):e(w,-1)})}z(r),l(g,r),O(),k()}export{Q as component};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var Yr=Object.defineProperty;var Xr=(s,t,n)=>t in s?Yr(s,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):s[t]=n;var Fe=(s,t,n)=>Xr(s,typeof t!="symbol"?t+"":t,n);import"../chunks/CWj6FrbW.js";import{r as Qe,f as Ge,k as ts,i as Vr,F as Qr,y as Jr,j as ea,z as Cn,e as ta,a as ms,b as vs,c as bs,B as na,p as er,l as sa,w as ra}from"../chunks/TuGPYaVf.js";import{aE as Je,M as Gt,a4 as nt,w as O,aB as et,V as pe,b4 as y,J as m,aK as h,a$ as ne,a8 as e,aR as Q,a3 as re,aU as T,a6 as D,aw as Vt,aO as f,au as S,ay as pn,ap as J,aq as bt,b5 as bn,Q as aa,az as ns,$ as Zt,b2 as tr,av as Yt,b1 as Ln,aI as ia,b0 as oa,a7 as la,Z as ca}from"../chunks/BjY4dxcB.js";import{i as se,a as ft,s as wn}from"../chunks/DIEDQ_hk.js";import{h as gt,w as nr,I as lt,u as Ke,v as st,j as sr,k as Qt,t as ua,x as da,c as pa,e as Vn,g as fa,f as rr,q as ga,s as ha,C as _s,a as ma,z as va,y as ba,l as ar,p as _a,n as Es,i as Ea}from"../chunks/
|
|
1
|
+
var Yr=Object.defineProperty;var Xr=(s,t,n)=>t in s?Yr(s,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):s[t]=n;var Fe=(s,t,n)=>Xr(s,typeof t!="symbol"?t+"":t,n);import"../chunks/CWj6FrbW.js";import{r as Qe,f as Ge,k as ts,i as Vr,F as Qr,y as Jr,j as ea,z as Cn,e as ta,a as ms,b as vs,c as bs,B as na,p as er,l as sa,w as ra}from"../chunks/TuGPYaVf.js";import{aE as Je,M as Gt,a4 as nt,w as O,aB as et,V as pe,b4 as y,J as m,aK as h,a$ as ne,a8 as e,aR as Q,a3 as re,aU as T,a6 as D,aw as Vt,aO as f,au as S,ay as pn,ap as J,aq as bt,b5 as bn,Q as aa,az as ns,$ as Zt,b2 as tr,av as Yt,b1 as Ln,aI as ia,b0 as oa,a7 as la,Z as ca}from"../chunks/BjY4dxcB.js";import{i as se,a as ft,s as wn}from"../chunks/DIEDQ_hk.js";import{h as gt,w as nr,I as lt,u as Ke,v as st,j as sr,k as Qt,t as ua,x as da,c as pa,e as Vn,g as fa,f as rr,q as ga,s as ha,C as _s,a as ma,z as va,y as ba,l as ar,p as _a,n as Es,i as Ea}from"../chunks/BZhYrFQy.js";import{p as Le,b as $t}from"../chunks/C2FuqD3s.js";import{g as Dn}from"../chunks/_bauirnP.js";var ya=D('<button class="chip svelte-1hbn5f9" role="listitem"> </button>'),ka=D('<div class="suggestions svelte-1hbn5f9" role="list" aria-label="建议的后续操作"><!> <button class="dismiss svelte-1hbn5f9" aria-label="忽略建议"><!></button></div>');function wa(s,t){Je(t,!1);let n=Le(t,"suggestions",24,()=>[]),r=Le(t,"onPick",8,()=>{}),a=Le(t,"onDismiss",8,()=>{});Qe();var o=Gt(),i=nt(o);{var l=c=>{var u=ka(),p=m(u);gt(p,3,n,E=>E,(E,R,P)=>{var _=ya(),k=m(_,!0);h(_),ne(B=>{nr(_,B),Q(k,e(R))},[()=>(pe(e(P)),y(()=>`animation-delay: ${Math.min(e(P),5)*45}ms`))]),re("click",_,()=>r()(e(R))),O(E,_)});var g=T(p,2),b=m(g);lt(b,{name:"close",size:12}),h(g),h(u),re("click",g,function(...E){var R;(R=a())==null||R.apply(this,E)}),O(c,u)};se(i,c=>{pe(n()),y(()=>n().length>0)&&c(l)})}O(s,o),et()}var xa=D('<div class="card user svelte-2ec03f"> </div>');function Ta(s,t){Je(t,!1);let n=Le(t,"card",8);Qe();var r=xa(),a=m(r,!0);h(r),ne(()=>Q(a,(pe(n()),y(()=>n().text)))),O(s,r),et()}var Aa=D('<button class="stop svelte-1n9pz5q">Stop</button>'),Sa=D('<div class="thinking-row svelte-1n9pz5q"><span class="toggle mono svelte-1n9pz5q"><span class="caret svelte-1n9pz5q" aria-hidden="true"><!></span> reasoning</span> <!></div>');function Ra(s,t){Je(t,!1);let n=Le(t,"card",8);Qe();var r=Sa(),a=m(r),o=m(a),i=m(o);lt(i,{name:"caret-right",size:11}),h(o),Vt(),h(a);var l=T(a,2);{var c=u=>{var p=Aa();re("click",p,()=>Ge.abort(n().sessionId)),O(u,p)};se(l,u=>{pe(n()),y(()=>n().showStop)&&u(c)})}h(r),O(s,r),et()}var Na=D('<div class="body mono svelte-z2jsf2"><pre class="svelte-z2jsf2"> </pre></div>'),Oa=D('<button class="toggle mono svelte-z2jsf2"><span aria-hidden="true"><!></span> reasoning</button> <!>',1);function Ia(s,t){Je(t,!1);let n=Le(t,"card",8),r=S(!1);Qe();var a=Oa(),o=nt(a),i=m(o);let l;var c=m(i);lt(c,{name:"caret-right",size:11}),h(i),Vt(),h(o);var u=T(o,2);{var p=g=>{var b=Na(),E=m(b),R=m(E,!0);h(E),h(b),ne(()=>Q(R,(pe(n()),y(()=>n().thinkingText)))),O(g,b)};se(u,g=>{e(r)&&g(p)})}ne(()=>{Ke(o,"aria-expanded",e(r)),l=st(i,1,"caret svelte-z2jsf2",null,l,{open:e(r)})}),re("click",o,()=>f(r,!e(r))),O(s,a),et()}function ss(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let en=ss();function ir(s){en=s}const or=/[&<>"']/,Ma=new RegExp(or.source,"g"),lr=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,Ca=new RegExp(lr.source,"g"),La={"&":"&","<":"<",">":">",'"':""","'":"'"},ys=s=>La[s];function Nt(s,t){if(t){if(or.test(s))return s.replace(Ma,ys)}else if(lr.test(s))return s.replace(Ca,ys);return s}const Da=/(^|[^\[])\^/g;function ze(s,t){let n=typeof s=="string"?s:s.source;t=t||"";const r={replace:(a,o)=>{let i=typeof o=="string"?o:o.source;return i=i.replace(Da,"$1"),n=n.replace(a,i),r},getRegex:()=>new RegExp(n,t)};return r}function ks(s){try{s=encodeURI(s).replace(/%25/g,"%")}catch{return null}return s}const _n={exec:()=>null};function ws(s,t){const n=s.replace(/\|/g,(o,i,l)=>{let c=!1,u=i;for(;--u>=0&&l[u]==="\\";)c=!c;return c?"|":" |"}),r=n.split(/ \|/);let a=0;if(r[0].trim()||r.shift(),r.length>0&&!r[r.length-1].trim()&&r.pop(),t)if(r.length>t)r.splice(t);else for(;r.length<t;)r.push("");for(;a<r.length;a++)r[a]=r[a].trim().replace(/\\\|/g,"|");return r}function gn(s,t,n){const r=s.length;if(r===0)return"";let a=0;for(;a<r&&s.charAt(r-a-1)===t;)a++;return s.slice(0,r-a)}function $a(s,t){if(s.indexOf(t[1])===-1)return-1;let n=0;for(let r=0;r<s.length;r++)if(s[r]==="\\")r++;else if(s[r]===t[0])n++;else if(s[r]===t[1]&&(n--,n<0))return r;return-1}function xs(s,t,n,r){const a=t.href,o=t.title?Nt(t.title):null,i=s[1].replace(/\\([\[\]])/g,"$1");if(s[0].charAt(0)!=="!"){r.state.inLink=!0;const l={type:"link",raw:n,href:a,title:o,text:i,tokens:r.inlineTokens(i)};return r.state.inLink=!1,l}return{type:"image",raw:n,href:a,title:o,text:Nt(i)}}function Pa(s,t){const n=s.match(/^(\s+)(?:```)/);if(n===null)return t;const r=n[1];return t.split(`
|
|
2
2
|
`).map(a=>{const o=a.match(/^\s+/);if(o===null)return a;const[i]=o;return i.length>=r.length?a.slice(r.length):a}).join(`
|
|
3
3
|
`)}class $n{constructor(t){Fe(this,"options");Fe(this,"rules");Fe(this,"lexer");this.options=t||en}space(t){const n=this.rules.block.newline.exec(t);if(n&&n[0].length>0)return{type:"space",raw:n[0]}}code(t){const n=this.rules.block.code.exec(t);if(n){const r=n[0].replace(/^(?: {1,4}| {0,3}\t)/gm,"");return{type:"code",raw:n[0],codeBlockStyle:"indented",text:this.options.pedantic?r:gn(r,`
|
|
4
4
|
`)}}}fences(t){const n=this.rules.block.fences.exec(t);if(n){const r=n[0],a=Pa(r,n[3]||"");return{type:"code",raw:r,lang:n[2]?n[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):n[2],text:a}}}heading(t){const n=this.rules.block.heading.exec(t);if(n){let r=n[2].trim();if(/#$/.test(r)){const a=gn(r,"#");(this.options.pedantic||!a||/ $/.test(a))&&(r=a.trim())}return{type:"heading",raw:n[0],depth:n[1].length,text:r,tokens:this.lexer.inline(r)}}}hr(t){const n=this.rules.block.hr.exec(t);if(n)return{type:"hr",raw:gn(n[0],`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"
|
|
1
|
+
{"version":"1790709001128"}
|
package/web/dist/index.html
CHANGED
|
@@ -25,32 +25,32 @@
|
|
|
25
25
|
<!-- iOS standalone PWA: fullscreen + translucent status bar (content padded via safe-area insets) -->
|
|
26
26
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
|
27
27
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
|
28
|
-
<link href="/_app/immutable/entry/start.
|
|
29
|
-
<link href="/_app/immutable/chunks/
|
|
28
|
+
<link href="/_app/immutable/entry/start.DsoTOtiL.js" rel="modulepreload">
|
|
29
|
+
<link href="/_app/immutable/chunks/_bauirnP.js" rel="modulepreload">
|
|
30
30
|
<link href="/_app/immutable/chunks/BjY4dxcB.js" rel="modulepreload">
|
|
31
|
-
<link href="/_app/immutable/entry/app.
|
|
31
|
+
<link href="/_app/immutable/entry/app.DwzATkUd.js" rel="modulepreload">
|
|
32
32
|
<link href="/_app/immutable/chunks/CWj6FrbW.js" rel="modulepreload">
|
|
33
33
|
<link href="/_app/immutable/chunks/DIEDQ_hk.js" rel="modulepreload">
|
|
34
34
|
<link href="/_app/immutable/chunks/C2FuqD3s.js" rel="modulepreload">
|
|
35
|
-
<link href="/_app/immutable/nodes/0.
|
|
35
|
+
<link href="/_app/immutable/nodes/0.BH0-mNP5.js" rel="modulepreload">
|
|
36
36
|
<link href="/_app/immutable/chunks/TuGPYaVf.js" rel="modulepreload">
|
|
37
|
-
<link href="/_app/immutable/chunks/
|
|
37
|
+
<link href="/_app/immutable/chunks/BZhYrFQy.js" rel="modulepreload">
|
|
38
38
|
|
|
39
|
-
<link href="/_app/immutable/assets/0.
|
|
39
|
+
<link href="/_app/immutable/assets/0.nqUv72Y6.css" rel="stylesheet">
|
|
40
40
|
</head>
|
|
41
41
|
<body data-sveltekit-preload-data="hover">
|
|
42
42
|
<div style="display: contents">
|
|
43
43
|
<script>
|
|
44
44
|
{
|
|
45
|
-
|
|
45
|
+
__sveltekit_xfpk66 = {
|
|
46
46
|
base: ""
|
|
47
47
|
};
|
|
48
48
|
|
|
49
49
|
const element = document.currentScript.parentElement;
|
|
50
50
|
|
|
51
51
|
Promise.all([
|
|
52
|
-
import("/_app/immutable/entry/start.
|
|
53
|
-
import("/_app/immutable/entry/app.
|
|
52
|
+
import("/_app/immutable/entry/start.DsoTOtiL.js"),
|
|
53
|
+
import("/_app/immutable/entry/app.DwzATkUd.js")
|
|
54
54
|
]).then(([kit, app]) => {
|
|
55
55
|
kit.start(app, element);
|
|
56
56
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a=location.pathname.split("/").slice(0,-1).join("/"),m=[a+"/_app/immutable/entry/app.
|
|
1
|
+
const a=location.pathname.split("/").slice(0,-1).join("/"),m=[a+"/_app/immutable/entry/app.DwzATkUd.js",a+"/_app/immutable/nodes/0.BH0-mNP5.js",a+"/_app/immutable/assets/0.nqUv72Y6.css",a+"/_app/immutable/nodes/1.reI34Q_v.js",a+"/_app/immutable/nodes/2.BqCecRSm.js",a+"/_app/immutable/assets/2.BNuGfmZP.css",a+"/_app/immutable/nodes/3.BRXJ5-j-.js",a+"/_app/immutable/assets/3.C2vSHMbd.css",a+"/_app/immutable/chunks/BZhYrFQy.js",a+"/_app/immutable/chunks/BjY4dxcB.js",a+"/_app/immutable/chunks/C2FuqD3s.js",a+"/_app/immutable/chunks/CWj6FrbW.js",a+"/_app/immutable/chunks/DIEDQ_hk.js",a+"/_app/immutable/chunks/TuGPYaVf.js",a+"/_app/immutable/chunks/_bauirnP.js",a+"/_app/immutable/entry/start.DsoTOtiL.js"],o=[a+"/apple-touch-icon.png",a+"/favicon.png",a+"/favicon.svg",a+"/icon-192.png",a+"/icon-512-maskable.png",a+"/icon-512.png",a+"/manifest.webmanifest"],u="1790709001128",n=self,i=`ocrc-cache-${u}`,p=[...m,...o];n.addEventListener("install",t=>{t.waitUntil(caches.open(i).then(e=>e.addAll(p.map(s=>new Request(s,{cache:"reload"})))).then(()=>n.skipWaiting()))});n.addEventListener("activate",t=>{t.waitUntil((async()=>{for(const e of await caches.keys())e!==i&&await caches.delete(e);await n.clients.claim()})())});n.addEventListener("fetch",t=>{const{request:e}=t;if(e.method!=="GET")return;const s=new URL(e.url);if(s.origin===location.origin&&!(s.pathname.startsWith("/api/")||s.pathname==="/ws")){if(p.includes(s.pathname)){t.respondWith(caches.match(e).then(c=>c??fetch(e)));return}t.respondWith((async()=>{try{return await fetch(e)}catch{return await caches.match(e)??await caches.match("/")??Response.error()}})())}});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
:root{color-scheme:dark;--bg: #0d0d0d;--bg-panel: #121212;--bg-elev: #171717;--bg-elev2: #1f1f1f;--bg-input: #101010;--border: #262626;--border-2: #1f1f1f;--text: #f5f4f0;--text-2: #c9c7c1;--text-3: #8c877d;--text-4: #7a766e;--accent: #fb8b3c;--accent-2: #2a1c10;--accent-ink:#211307;--accent-line:#7a4416;--user-bubble: #2b2a27;--user-ink: #f0efe9;--bubbleline:#3a3833;--cv: var(--accent);--cv-2: var(--accent-2);--cv-ink: var(--accent-ink);--cv-line: var(--accent-line);--cv-bubble: var(--user-bubble);--ok: #6ee7a0;--warn: #ffd479;--err: #f97066;--info: #8ab4ff;--hl-purple: #b48cf0;--hl-green: #6cc08b;--hl-cyan: #4ec9b0;--hl-orange: #dca87a;--hl-yellow: #ffd479;--hl-gray: #8c877d;--role-gold: #f5b301;--role-blue: #6f9ffa;--role-green: #58c08c;--role-silver: #cdd6e6;--bg-code: #0f0f0f;--toolcmd: #e8e6e0;--toolout: #a3a09a;--scrim: rgba(0, 0, 0, .5);--ease: cubic-bezier(.2, 0, 0, 1);--radius: 14px;--radius-sm: 9px;--radius-xs: 6px;--radius-tail: 4px;--radius-bar: 2px;--radius-pill: 999px;--shadow-card: 0 1px 4px rgba(0, 0, 0, .35);--shadow-composer: 0 6px 24px rgba(0, 0, 0, .4);--shadow-palette: 0 24px 70px rgba(0, 0, 0, .6);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-serif: "Noto Serif CJK SC", "Source Han Serif SC", "DejaVu Serif", Georgia, "Times New Roman", serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--z-sticky: 5;--z-hud: 8;--z-dropdown: 10;--z-backdrop: 25;--z-drawer: 30;--z-sheet: 35;--z-fab: 42;--z-popover: 50;--z-overlay: 200;--z-modal: 300;--z-gate: 500}:root[data-theme=light]{color-scheme:light;--bg: #f2efe8;--bg-panel: #efede5;--bg-canvas: #fbfbfa;--bg-elev: #ffffff;--bg-elev2: #f2f1ed;--bg-input: #f6f5f2;--border: #e4e3df;--border-2: #edece9;--text: #1d1c1a;--text-2: #43413d;--text-3: #8a8884;--text-4: #6e6d69;--accent: #e4580f;--accent-2: #fdeee3;--accent-ink:#1c1b18;--accent-line:#f0c9ac;--user-bubble: #efeeea;--user-ink: #1d1c1a;--bubbleline:#e2e1dc;--ok: #1f7a3d;--warn: #9a6b00;--err: #c2372c;--info: #2456a6;--hl-purple: #8250df;--hl-green: #116329;--hl-cyan: #0e7a8d;--hl-orange: #b65708;--hl-yellow: #9a6700;--hl-gray: #6e7781;--role-gold: #d99e00;--role-blue: #3a6fd8;--role-green: #2f9d68;--role-silver: #8a877e;--bg-code: #f4f2ec;--toolcmd: #1c1b18;--toolout: #57534e;--scrim: rgba(28, 27, 24, .32);--shadow-card: 0 1px 3px rgba(28, 27, 24, .06);--shadow-composer: 0 4px 18px rgba(28, 27, 24, .08);--shadow-palette: 0 24px 70px rgba(28, 27, 24, .18)}@media (prefers-color-scheme: light){:root:not([data-theme=dark]){color-scheme:light;--bg: #f2efe8;--bg-panel: #efede5;--bg-canvas: #fbfbfa;--bg-elev: #ffffff;--bg-elev2: #f2f1ed;--bg-input: #f6f5f2;--border: #e4e3df;--border-2: #edece9;--text: #1d1c1a;--text-2: #43413d;--text-3: #8a8884;--text-4: #6e6d69;--accent: #e4580f;--accent-2: #fdeee3;--accent-ink:#1c1b18;--accent-line:#f0c9ac;--user-bubble: #efeeea;--user-ink: #1d1c1a;--bubbleline:#e2e1dc;--ok: #1f7a3d;--warn: #9a6b00;--err: #c2372c;--info: #2456a6;--hl-purple: #8250df;--hl-green: #116329;--hl-cyan: #0e7a8d;--hl-orange: #b65708;--hl-yellow: #9a6700;--hl-gray: #6e7781;--role-gold: #d99e00;--role-blue: #3a6fd8;--role-green: #2f9d68;--role-silver: #8a877e;--bg-code: #f4f2ec;--toolcmd: #1c1b18;--toolout: #57534e;--scrim: rgba(28, 27, 24, .32);--shadow-card: 0 1px 3px rgba(28, 27, 24, .06);--shadow-composer: 0 4px 18px rgba(28, 27, 24, .08);--shadow-palette: 0 24px 70px rgba(28, 27, 24, .18)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--ease-out: cubic-bezier(.22, 1, .36, 1);--dur-enter: .2s}@keyframes ocrc-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes ocrc-rise-sm{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes ocrc-pop{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes ocrc-fade{0%{opacity:0}to{opacity:1}}:root[data-accent=azure]{--accent: #6f9ffa;--accent-2: #16202f;--accent-ink: #071120;--accent-line: #31527e}:root[data-accent=amber]{--accent: #ffc34d;--accent-2: #2a2110;--accent-ink: #1f1503;--accent-line: #8a6a26}:root[data-accent=violet]{--accent: #b48cf0;--accent-2: #1d1733;--accent-ink: #0f0820;--accent-line: #5a4790}:root[data-theme=light][data-accent=azure]{--accent: #2f6bcc;--accent-2: #e8f0fc;--accent-ink: #ffffff;--accent-line: #b9d0f2}:root[data-theme=light][data-accent=amber]{--accent: #b57f00;--accent-2: #faf0d8;--accent-ink: #ffffff;--accent-line: #ecd9a8}:root[data-theme=light][data-accent=violet]{--accent: #7a4fd0;--accent-2: #f0eafc;--accent-ink: #ffffff;--accent-line: #d4c5f2}@media (prefers-color-scheme: light){:root:not([data-theme=dark])[data-accent=azure]{--accent: #2f6bcc;--accent-2: #e8f0fc;--accent-ink: #ffffff;--accent-line: #b9d0f2}:root:not([data-theme=dark])[data-accent=amber]{--accent: #b57f00;--accent-2: #faf0d8;--accent-ink: #ffffff;--accent-line: #ecd9a8}:root:not([data-theme=dark])[data-accent=violet]{--accent: #7a4fd0;--accent-2: #f0eafc;--accent-ink: #ffffff;--accent-line: #d4c5f2}}html{background:var(--bg)}html,body{height:100vh}button{transition:opacity .12s var(--ease, ease),transform .12s var(--ease, ease)}button:active:not(:disabled){opacity:.78}body{margin:0;overflow:hidden;overscroll-behavior:none;-webkit-text-size-adjust:100%;background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-size:10px}.mono{font-family:var(--font-mono)}.conversation-emerald{--accent: var(--cv);--accent-2: var(--cv-2);--accent-ink: var(--cv-ink);--accent-line: var(--cv-line);--user-bubble: var(--cv-bubble)}.md .hljs-string,.md .hljs-regexp,.md .hljs-addition{color:var(--hl-green)}.md .hljs-keyword,.md .hljs-selector-tag,.md .hljs-type{color:var(--hl-purple)}.md .hljs-title.function_,.md .hljs-title.class_.invoke__,.md .hljs-function>.hljs-title{color:var(--hl-yellow)}.md .hljs-title.class_,.md .hljs-built_in{color:var(--hl-cyan)}.md .hljs-number,.md .hljs-literal,.md .hljs-variable.constant_{color:var(--hl-orange)}.md .hljs-comment,.md .hljs-deletion,.md .hljs-meta{color:var(--hl-gray)}.md .hljs-attr,.md .hljs-attribute,.md .hljs-selector-attr,.md .hljs-selector-class{color:var(--hl-green)}.md .hljs-punctuation,.md .hljs-params,.md .hljs-property,.md .hljs-symbol{color:var(--text)}*{scrollbar-width:thin;scrollbar-color:var(--border) transparent}*::-webkit-scrollbar{width:9px;height:9px}*::-webkit-scrollbar-thumb{background:var(--border);border-radius:6px;border:2px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:var(--text-4);background-clip:content-box}@keyframes ocrc-pulse{0%,to{opacity:1}50%{opacity:.28}}@keyframes ocrc-blink{0%,to{opacity:1}50%{opacity:0}}@keyframes ocrc-ring{0%{transform:scale(.6);opacity:.7}to{transform:scale(2.2);opacity:0}}@keyframes ocrc-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.titlebar.svelte-hhath1{display:flex;align-items:center;gap:12px;height:calc(52px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 16px 0;box-sizing:border-box;border-bottom:1px solid var(--border);background:var(--bg-panel);flex-shrink:0;font-size:13px}.brand.svelte-hhath1{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand-mark.svelte-hhath1{width:27px;height:27px;flex-shrink:0}.wordmark.svelte-hhath1{font-family:var(--font-serif);font-size:15.5px;letter-spacing:.01em;display:inline-flex;align-items:baseline;gap:5px}.wordmark.svelte-hhath1 b:where(.svelte-hhath1){font-weight:700;color:var(--text)}.new-session.svelte-hhath1{display:inline-flex;align-items:center;gap:5px;background:var(--accent);color:var(--accent-ink);border:none;border-radius:var(--radius-pill);padding:5px 11px;font-size:12px;font-weight:650;cursor:pointer;flex-shrink:0;transition:opacity .12s ease,transform .12s ease}.new-session.svelte-hhath1:hover:not(:disabled){opacity:.9}.new-session.svelte-hhath1:disabled{opacity:.5;cursor:default}.new-icon.svelte-hhath1{font-size:14px;line-height:1}.new-label.svelte-hhath1{white-space:nowrap}.new-caret.svelte-hhath1{font-size:9px;line-height:1;margin-left:2px;opacity:.85}.palette-trigger.svelte-hhath1{display:flex;align-items:center;gap:8px;min-width:230px;max-width:min(340px,calc(100vw - 32px));background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-3);padding:5px 10px;font-size:12.5px;cursor:text;transition:border-color .15s ease,color .15s ease}.palette-trigger.svelte-hhath1:hover{border-color:var(--text-3);color:var(--text-2)}.palette-icon.svelte-hhath1{font-size:14px;opacity:.85}.palette-label.svelte-hhath1{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.palette-keycap.svelte-hhath1{font-size:10px;color:var(--text-3);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-xs);padding:2px 5px}.spacer.svelte-hhath1{flex:1}.themebtn.svelte-hhath1{display:inline-grid;place-items:center;width:28px;height:28px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-2);font-size:14px;line-height:1;cursor:pointer;flex-shrink:0;transition:color .12s ease,border-color .12s ease}.themebtn.svelte-hhath1:hover{color:var(--text);border-color:var(--text-4)}.connection-pill.svelte-hhath1{display:inline-flex;align-items:center;gap:7px;border-radius:var(--radius-pill);background:var(--bg-elev);border:1px solid var(--border);padding:4px 10px;flex-shrink:0}.dot-wrap.svelte-hhath1{position:relative;width:10px;height:10px;display:grid;place-items:center}.dot.svelte-hhath1{width:7px;height:7px;border-radius:50%;background:var(--text-4);flex-shrink:0}.dot-ring.svelte-hhath1{position:absolute;width:8px;height:8px;border-radius:50%;border:1.5px solid var(--ok);opacity:0;animation:ocrc-ring 1.6s ease-out infinite;pointer-events:none}.connection-pill.connected.svelte-hhath1 .dot:where(.svelte-hhath1){background:var(--ok);box-shadow:0 0 7px var(--ok)}.connection-pill.reconnecting.svelte-hhath1 .dot:where(.svelte-hhath1){background:var(--warn);animation:ocrc-pulse 1.2s ease-in-out infinite}.connection-pill.offline.svelte-hhath1 .dot:where(.svelte-hhath1){background:transparent;border:1.5px solid var(--text-4)}.connection-state.svelte-hhath1{font-weight:600;color:var(--text-3)}.connection-pill.connected.svelte-hhath1 .connection-state:where(.svelte-hhath1){color:var(--ok)}.connection-pill.reconnecting.svelte-hhath1 .connection-state:where(.svelte-hhath1){color:var(--warn)}.connection-pill.offline.svelte-hhath1 .connection-state:where(.svelte-hhath1){color:var(--err)}.connection-latency.svelte-hhath1{color:var(--text-3);font-size:10.5px}.install.svelte-hhath1{background:var(--accent);color:var(--accent-ink);border:none;border-radius:var(--radius-pill);padding:4px 12px;font-size:.8em;font-weight:600;cursor:pointer;flex-shrink:0}.user.svelte-hhath1{display:flex;align-items:center;gap:10px;flex-shrink:0}.user-email.svelte-hhath1{color:var(--text-3);font-size:12px}.avatar.svelte-hhath1{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--accent-2);color:var(--accent);border:1px solid var(--accent-line);font-size:11px;font-weight:700}.iconbtn.svelte-hhath1{display:none;background:transparent;border:none;color:var(--text-2);font-size:18px;line-height:1;padding:4px 6px;cursor:pointer;border-radius:var(--radius-pill)}.iconbtn.svelte-hhath1:hover{color:var(--text);background:var(--bg-elev)}.iconbtn.active.svelte-hhath1{color:var(--accent);background:var(--accent-2)}@media (pointer: coarse){.themebtn.svelte-hhath1{width:36px;height:36px}}@media (max-width: 820px){.palette-trigger.svelte-hhath1,.user-email.svelte-hhath1,.new-session.svelte-hhath1,.new-label.svelte-hhath1,.iconbtn.svelte-hhath1,.user.svelte-hhath1{display:none}}.banner.svelte-l46k7l{text-align:center;font-size:.8em;padding:4px 8px;background:color-mix(in srgb,var(--warn) 14%,var(--bg));color:var(--warn);border-bottom:1px solid color-mix(in srgb,var(--warn) 32%,transparent);animation:svelte-l46k7l-banner-drop .18s var(--ease-out, ease-out)}@keyframes svelte-l46k7l-banner-drop{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.banner.offline.svelte-l46k7l{background:color-mix(in srgb,var(--err) 14%,var(--bg));color:var(--err);border-bottom-color:color-mix(in srgb,var(--err) 32%,transparent)}.sidebar.svelte-1h8243g{width:100%;box-sizing:border-box;background:var(--bg-panel);overflow-y:auto;display:flex;flex-direction:column;padding:4px 8px 8px;gap:2px}.group-header.svelte-1h8243g{display:flex;align-items:center;gap:8px;padding:10px 8px 6px;color:var(--text-4);font-size:10px;text-transform:uppercase;letter-spacing:.16em}.gh-label.svelte-1h8243g{flex-shrink:0}.gh-line.svelte-1h8243g{flex:1;height:1px;background:var(--border-2);opacity:.7}.gh-count.svelte-1h8243g{flex-shrink:0;font-variant-numeric:tabular-nums}.session.svelte-1h8243g{position:relative;display:block;text-decoration:none;padding:9px 12px 9px 16px;border-radius:var(--radius-sm);background:transparent;cursor:pointer;transition:background .12s ease}.session.svelte-1h8243g:hover{background:var(--bg-elev)}.session.active.svelte-1h8243g{background:var(--accent-2)}.session.active.svelte-1h8243g:before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:2.5px;border-radius:var(--radius-bar);background:var(--accent)}.line1.svelte-1h8243g{display:flex;align-items:center;gap:7px}.sr-only.svelte-1h8243g{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.dot.svelte-1h8243g{width:7px;height:7px;border-radius:50%;border:1.5px solid transparent;flex-shrink:0;box-sizing:border-box}.dot.busy.svelte-1h8243g{background:var(--accent);border-color:var(--accent);animation:ocrc-pulse 1.2s ease-in-out infinite}.dot.wait.svelte-1h8243g{background:var(--warn);border-color:var(--warn)}.dot.idle.svelte-1h8243g{background:var(--ok);border-color:var(--ok)}.dot.offline.svelte-1h8243g{background:transparent;border:1.5px solid var(--text-4)}.title.svelte-1h8243g{flex:1;font-size:13px;font-weight:600;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session.active.svelte-1h8243g .title:where(.svelte-1h8243g){color:var(--text)}.pin-dot.svelte-1h8243g{flex-shrink:0;font-size:7px;color:var(--accent);line-height:1}.rename-input.svelte-1h8243g{flex:1;min-width:0;font-size:16px;font-weight:600;color:var(--text);background:var(--bg-panel);border:1px solid var(--accent);border-radius:var(--radius-sm);padding:1px 6px;outline:none;font-family:inherit}.rename-input.svelte-1h8243g:disabled{opacity:.6}.actions.svelte-1h8243g{display:inline-flex;gap:1px;flex-shrink:0}.act.svelte-1h8243g{display:inline-flex;background:transparent;border:none;color:var(--text-3);cursor:pointer;padding:2px;opacity:0;transition:opacity .12s ease,color .12s ease}.session.svelte-1h8243g:hover .act:where(.svelte-1h8243g){opacity:.65}.session.svelte-1h8243g:focus-within .act:where(.svelte-1h8243g){opacity:.65}.act.svelte-1h8243g:hover{opacity:1}.act.pin.svelte-1h8243g:hover{color:var(--text)}.act.rename.svelte-1h8243g:hover{color:var(--accent)}.act.pin.on.svelte-1h8243g{opacity:1;color:var(--accent)}.act.trash.svelte-1h8243g:hover{color:var(--err)}.act.svelte-1h8243g:disabled{opacity:.4;cursor:default}@media (hover: none),(max-width: 820px){.act.svelte-1h8243g{opacity:.6;padding:8px;min-width:40px;min-height:40px;align-items:center;justify-content:center}.actions.svelte-1h8243g{gap:2px}}.meta.svelte-1h8243g{display:flex;align-items:center;gap:5px;flex-wrap:wrap;font-size:10.5px;color:var(--text-3);margin:4px 0 0 16px}.sep.svelte-1h8243g{color:var(--border)}.id.svelte-1h8243g,.repo.svelte-1h8243g{color:var(--text-2)}.add.svelte-1h8243g{color:var(--ok)}.del.svelte-1h8243g{color:var(--err)}.empty.svelte-1h8243g{padding:16px 12px;color:var(--text-3);font-size:11px}.progress.svelte-1h8243g{height:3px;margin-top:8px;background:var(--border-2);border-radius:var(--radius-bar);overflow:hidden}.progress-fill.svelte-1h8243g{display:block;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,var(--accent) 50%,transparent 100%);background-size:200% 100%;animation:ocrc-shimmer 1.4s linear infinite}.agent-panel.svelte-wmno67{display:flex;height:100%;background:var(--bg-panel);border-right:1px solid var(--border-2);flex-shrink:0}.agent-panel.drawer.svelte-wmno67{width:100%;border-right:none}.panel.svelte-wmno67{display:flex;flex-direction:column;width:100%;min-width:0}.header.svelte-wmno67{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 12px 10px;border-bottom:1px solid var(--border-2);flex-shrink:0}.agent-pill.svelte-wmno67{display:inline-flex;align-items:center;gap:7px;min-width:0;padding:5px 9px 5px 5px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-2);cursor:pointer;transition:border-color .12s ease,background .12s ease}.agent-pill.svelte-wmno67:hover{border-color:var(--accent);background:var(--bg-elev2)}.glyph-tile.svelte-wmno67{width:24px;height:24px;display:inline-grid;place-items:center;border-radius:50%;border:1px solid transparent;font-family:var(--font-mono);font-size:10px;font-weight:700;flex-shrink:0}.status-dot.svelte-wmno67{width:7px;height:7px;border-radius:50%;border:1.5px solid transparent;flex-shrink:0;box-sizing:border-box}.sr-only.svelte-wmno67{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.status-dot.online.svelte-wmno67{background:var(--dot, var(--ok));border-color:var(--dot, var(--ok))}.status-dot.connecting.svelte-wmno67{background:var(--warn);border-color:var(--warn);animation:ocrc-pulse 1.2s ease-in-out infinite}.status-dot.offline.svelte-wmno67{background:transparent;border:1.5px solid var(--text-4)}.name.svelte-wmno67{font-size:12.5px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.host.svelte-wmno67{font-size:11px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.caret.svelte-wmno67{font-size:9px;color:var(--text-3);flex-shrink:0}.collapse.svelte-wmno67{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-3);cursor:pointer;transition:color .12s ease,background .12s ease,border-color .12s ease;flex-shrink:0}.collapse.svelte-wmno67:hover{color:var(--text);background:var(--bg-elev);border-color:var(--border)}.picker.svelte-wmno67{position:absolute;top:calc(100% + 6px);left:12px;right:12px;width:auto;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 18px 50px #0000008c;z-index:var(--z-popover);overflow:hidden;animation:svelte-wmno67-ocrc-pop .14s ease}@keyframes svelte-wmno67-ocrc-pop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.picker-list.svelte-wmno67{max-height:320px;overflow-y:auto;padding:6px;display:flex;flex-direction:column;gap:2px}.agent-row.svelte-wmno67{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text);cursor:pointer;text-align:left;transition:background .12s ease}.agent-row.svelte-wmno67:hover,.agent-row.selected.svelte-wmno67{background:var(--accent-2)}.row-tile.svelte-wmno67{width:30px;height:30px;display:inline-grid;place-items:center;border-radius:var(--radius-xs);border:1px solid transparent;font-family:var(--font-mono);font-size:11px;font-weight:700;flex-shrink:0}.row-info.svelte-wmno67{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.row-name.svelte-wmno67{font-size:12.5px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-host.svelte-wmno67{font-size:10.5px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.check.svelte-wmno67{font-size:13px;color:var(--accent);flex-shrink:0}.picker-footer.svelte-wmno67{border-top:1px solid var(--border);padding:10px}.theme-row.svelte-wmno67{display:flex;flex-direction:column;gap:8px}.theme-label.svelte-wmno67{font-size:10.5px;color:var(--text-3)}.swatches.svelte-wmno67{display:flex;align-items:center;gap:8px}.swatch.svelte-wmno67{width:20px;height:20px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .12s ease,border-color .12s ease}.swatch.svelte-wmno67:hover{transform:scale(1.1)}.swatch.active.svelte-wmno67{border-color:var(--text)}.auto.svelte-wmno67{margin-left:auto;padding:3px 9px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-3);font-family:var(--font-mono);font-size:10.5px;cursor:pointer;transition:color .12s ease,border-color .12s ease,background .12s ease}.auto.svelte-wmno67:hover,.auto.active.svelte-wmno67{color:var(--text);border-color:var(--accent);background:var(--accent-2)}.agents-label.svelte-wmno67{padding:12px 14px 6px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--text-3)}.mobile-search.svelte-wmno67{display:flex;align-items:center;gap:8px;margin:6px 12px 8px;padding:10px 12px;width:calc(100% - 24px);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-3);cursor:pointer;font-size:13px;font-family:var(--font-sans);text-align:left}.mobile-search.svelte-wmno67:hover{border-color:var(--text-4)}.switcher-row.svelte-wmno67{display:flex;gap:7px;padding:10px 12px;overflow-x:auto;border-bottom:1px solid var(--border-2);flex-shrink:0;scrollbar-width:none}.switcher-row.svelte-wmno67::-webkit-scrollbar{display:none}.switch-pill.svelte-wmno67{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding:5px 10px 5px 5px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-2);cursor:pointer;transition:border-color .12s ease,background .12s ease}.switch-pill.active.svelte-wmno67{background:var(--accent-2);border-color:var(--accent)}.switch-tile.svelte-wmno67{width:22px;height:22px;display:inline-grid;place-items:center;border-radius:var(--radius-xs);border:1px solid transparent;font-family:var(--font-mono);font-size:9.5px;font-weight:700;flex-shrink:0}.switch-name.svelte-wmno67{font-size:12px;font-weight:600;color:var(--text);white-space:nowrap}.switch-count.svelte-wmno67{font-size:10px;color:var(--text-3);background:var(--bg);border-radius:var(--radius-xs);padding:1px 6px}.list.svelte-wmno67{flex:1;overflow-y:auto;min-height:0}.footer.svelte-wmno67{display:flex;align-items:center;gap:7px;padding:10px max(20px,env(safe-area-inset-right,0px)) max(18px,calc(env(safe-area-inset-bottom,0px) + var(--kb, 0px))) max(20px,env(safe-area-inset-left,0px));font-size:10px;color:var(--text-4);border-top:1px solid var(--border-2);flex-shrink:0}.sep.svelte-wmno67{color:var(--border)}.task.svelte-1h1y2gb{flex:1;overflow:auto;padding:14px 16px}.hd.svelte-1h1y2gb{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.section-label.svelte-1h1y2gb{text-transform:uppercase;letter-spacing:.16em;color:var(--text-3);font-size:10px}.meta.svelte-1h1y2gb{font-family:var(--font-mono);color:var(--text-2);font-size:11px}.bar.svelte-1h1y2gb{height:4px;background:var(--bg-input);border-radius:var(--radius-bar);overflow:hidden;margin-bottom:10px}.fill.svelte-1h1y2gb{height:100%;width:100%;background:var(--accent);transform-origin:left;transition:transform .3s ease}.items.svelte-1h1y2gb{display:flex;flex-direction:column;gap:6px}.row.svelte-1h1y2gb{display:flex;align-items:flex-start;gap:9px;padding:3px 0;margin:0;border:none;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.row.svelte-1h1y2gb:hover .tx:where(.svelte-1h1y2gb){color:var(--text)}.row.svelte-1h1y2gb:focus-visible{outline:1px solid var(--accent);outline-offset:1px;border-radius:var(--radius-xs)}.box.svelte-1h1y2gb{flex-shrink:0;width:15px;height:15px;margin-top:1px;border-radius:var(--radius-xs);display:grid;place-items:center;position:relative}.dot.svelte-1h1y2gb{width:5px;height:5px;border-radius:50%;background:var(--accent);animation:ocrc-pulse 1.2s ease-in-out infinite;display:none}.check.svelte-1h1y2gb{font-size:11px;line-height:1;display:none}.tx.svelte-1h1y2gb{font-size:12px;line-height:1.45;color:var(--text-2)}.row.done.svelte-1h1y2gb .box:where(.svelte-1h1y2gb){background:var(--accent)}.row.done.svelte-1h1y2gb .check:where(.svelte-1h1y2gb){display:block;color:var(--accent-ink)}.row.done.svelte-1h1y2gb .tx:where(.svelte-1h1y2gb){color:var(--text-3);text-decoration:line-through;text-decoration-color:var(--border)}.row.running.svelte-1h1y2gb .box:where(.svelte-1h1y2gb){border:1.5px solid var(--accent)}.row.running.svelte-1h1y2gb .dot:where(.svelte-1h1y2gb){display:block}.row.running.svelte-1h1y2gb .tx:where(.svelte-1h1y2gb){color:var(--text);font-weight:500}.row.pending.svelte-1h1y2gb .box:where(.svelte-1h1y2gb){border:1.5px solid var(--border)}.mcp.svelte-ehf8ic{font-size:11.5px}.list.svelte-ehf8ic{display:flex;flex-direction:column;gap:4px;color:var(--text-2);margin-top:6px}.row.svelte-ehf8ic{display:flex;align-items:center;gap:7px}.dot.svelte-ehf8ic{width:6px;height:6px;border-radius:50%;background:var(--ok);flex-shrink:0}.row.off.svelte-ehf8ic{color:var(--text-3)}.row.off.svelte-ehf8ic .dot:where(.svelte-ehf8ic){background:var(--text-3)}.sr-only.svelte-ehf8ic{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.schedules.svelte-pijcyq{font-size:11.5px}.hd.svelte-pijcyq{display:flex;align-items:center;justify-content:space-between}.label.svelte-pijcyq{text-transform:uppercase;letter-spacing:.16em;color:var(--text-3);font-size:10px}.add.svelte-pijcyq{width:20px;height:20px;display:grid;place-items:center;padding:0;background:transparent;border:1px solid var(--border-2);border-radius:var(--radius-sm);color:var(--text-3);font-size:13px;line-height:1;cursor:pointer}.add.svelte-pijcyq:hover{color:var(--text);border-color:var(--accent)}.list.svelte-pijcyq{display:flex;flex-direction:column;gap:7px;margin-top:8px}.row.svelte-pijcyq{display:flex;align-items:flex-start;gap:8px}.switch.svelte-pijcyq{flex-shrink:0;width:22px;height:14px;margin-top:2px;padding:0;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-input);display:grid;align-items:center;cursor:pointer}.switch.svelte-pijcyq .dot:where(.svelte-pijcyq){width:8px;height:8px;margin:0 2px;border-radius:50%;background:var(--text-3);transition:transform .16s ease,background .16s ease}.switch.on.svelte-pijcyq{border-color:var(--accent)}.switch.on.svelte-pijcyq .dot:where(.svelte-pijcyq){background:var(--accent);transform:translate(8px)}.txt.svelte-pijcyq{flex:1;min-width:0}.prompt.svelte-pijcyq{font-size:11.5px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row.off.svelte-pijcyq .prompt:where(.svelte-pijcyq){color:var(--text-3);text-decoration:line-through;text-decoration-color:var(--border)}.spec.svelte-pijcyq{font-size:10px;color:var(--text-3);margin-top:1px}.del.svelte-pijcyq{flex-shrink:0;margin-top:1px;padding:0 5px;min-width:18px;height:18px;background:transparent;border:none;border-radius:var(--radius-xs);color:var(--text-3);font-size:11px;cursor:pointer}.del.svelte-pijcyq:hover{color:var(--err)}.del.arm.svelte-pijcyq{color:var(--err);border:1px solid var(--err)}.form.svelte-pijcyq{margin-top:10px;padding:9px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);display:flex;flex-direction:column;gap:7px}.prompt-in.svelte-pijcyq{width:100%;resize:vertical;padding:6px 8px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;box-sizing:border-box}.prompt-in.svelte-pijcyq:focus{outline:1px solid var(--accent)}.kind.svelte-pijcyq{display:flex;align-items:center;gap:10px;color:var(--text-2)}.kind.svelte-pijcyq label:where(.svelte-pijcyq){display:inline-flex;align-items:center;gap:4px;cursor:pointer}.kind.svelte-pijcyq input[type=radio]:where(.svelte-pijcyq){accent-color:var(--accent);margin:0}.num.svelte-pijcyq,.time.svelte-pijcyq{width:62px;padding:2px 5px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text);font:inherit;font-size:11px}.num.svelte-pijcyq:disabled,.time.svelte-pijcyq:disabled{opacity:.4}.err.svelte-pijcyq{color:var(--err);font-size:10.5px}.go.svelte-pijcyq{align-self:flex-end;padding:4px 12px;background:var(--accent);border:none;border-radius:var(--radius-sm);color:var(--accent-ink);font:inherit;font-weight:600;cursor:pointer}.go.svelte-pijcyq:disabled{opacity:.45;cursor:default}.skills.svelte-taxat6{font-size:11.5px}.label.svelte-taxat6{text-transform:uppercase;letter-spacing:.16em;color:var(--text-3);font-size:10px}.chips.svelte-taxat6{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px;animation:ocrc-fade .15s var(--ease-out, ease-out)}.chips.clipped.svelte-taxat6{max-height:132px;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,#000 70%,transparent);mask-image:linear-gradient(to bottom,#000 70%,transparent)}.chip.svelte-taxat6{padding:2px 7px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-2);font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.more.svelte-taxat6{margin-top:5px;padding:0;background:transparent;border:none;color:var(--text-3);font:inherit;font-size:10.5px;cursor:pointer;text-align:left}.more.svelte-taxat6:hover{color:var(--accent)}.files.svelte-tp0rgj{font-size:11.5px}.label.svelte-tp0rgj{text-transform:uppercase;letter-spacing:.16em;color:var(--text-3);font-size:10px}.crumb.svelte-tp0rgj{margin-top:6px;color:var(--text-3);font-size:10.5px}.up.svelte-tp0rgj{background:transparent;border:none;padding:0;color:var(--accent);font:inherit;cursor:pointer}.list.svelte-tp0rgj{display:flex;flex-direction:column;gap:2px;margin-top:4px}.row.svelte-tp0rgj{display:flex;align-items:center;gap:7px;padding:3px 4px;margin:0;background:transparent;border:none;border-radius:var(--radius-xs);color:var(--text-2);font:inherit;text-align:left;cursor:pointer}.row.svelte-tp0rgj:hover{background:var(--bg-input);color:var(--text)}.ico.svelte-tp0rgj{flex-shrink:0;width:14px;text-align:center}.name.svelte-tp0rgj{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-scrim.svelte-tp0rgj{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);background:var(--scrim);display:grid;place-items:center;padding:20px}.preview.svelte-tp0rgj{width:min(92vw,680px);max-height:76vh;display:flex;flex-direction:column;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-palette);animation:ocrc-pop .16s var(--ease-out, ease-out) backwards}.p-hd.svelte-tp0rgj{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border-bottom:1px solid var(--border-2);color:var(--text-2);font-size:11px}.p-close.svelte-tp0rgj{background:transparent;border:none;color:var(--text-3);font-size:12px;cursor:pointer}.p-body.svelte-tp0rgj{margin:0;padding:10px 12px;overflow:auto;font-size:11px;line-height:1.5;color:var(--text-2);white-space:pre-wrap;word-break:break-word}.p-body.binary.svelte-tp0rgj{color:var(--text-3)}.wt.svelte-148ev8e{font-size:11.5px}.hd.svelte-148ev8e{display:flex;align-items:center;justify-content:space-between}.label.svelte-148ev8e{text-transform:uppercase;letter-spacing:.16em;color:var(--text-3);font-size:10px}.add.svelte-148ev8e{width:20px;height:20px;display:grid;place-items:center;padding:0;background:transparent;border:1px solid var(--border-2);border-radius:var(--radius-sm);color:var(--text-3);font-size:13px;line-height:1;cursor:pointer}.add.svelte-148ev8e:hover{color:var(--text);border-color:var(--accent)}.list.svelte-148ev8e{display:flex;flex-direction:column;gap:4px;margin-top:6px}.rows.svelte-148ev8e{display:flex;flex-direction:column;gap:4px;animation:ocrc-fade .15s var(--ease-out, ease-out)}.row.svelte-148ev8e{display:flex;align-items:center;gap:6px}.ico.svelte-148ev8e{flex-shrink:0}.name.svelte-148ev8e{flex:1;min-width:0;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.del.svelte-148ev8e{flex-shrink:0;padding:0 5px;min-width:18px;height:18px;background:transparent;border:none;border-radius:var(--radius-xs);color:var(--text-3);font-size:11px;cursor:pointer}.del.svelte-148ev8e:hover,.del.arm.svelte-148ev8e{color:var(--err)}.del.arm.svelte-148ev8e{border:1px solid var(--err)}.form.svelte-148ev8e{margin-top:8px;display:flex;gap:6px;align-items:center}.name-in.svelte-148ev8e{flex:1;min-width:0;padding:5px 8px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;font-size:11px;box-sizing:border-box}.name-in.svelte-148ev8e:focus{outline:1px solid var(--accent)}.err.svelte-148ev8e{color:var(--err);font-size:10.5px}.go.svelte-148ev8e{padding:4px 10px;background:var(--accent);border:none;border-radius:var(--radius-sm);color:var(--accent-ink);font:inherit;font-weight:600;cursor:pointer}.go.svelte-148ev8e:disabled{opacity:.45;cursor:default}.usage.svelte-q9r9ub{display:flex;flex-direction:column;gap:10px}.tiles.svelte-q9r9ub{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tile.svelte-q9r9ub{display:flex;flex-direction:column;gap:5px;padding:10px;background:var(--bg-elev);border-radius:var(--radius-sm)}.tile.svelte-q9r9ub .label:where(.svelte-q9r9ub){text-transform:uppercase;letter-spacing:.14em;color:var(--text-3);font-size:9.5px}.tile.svelte-q9r9ub .num:where(.svelte-q9r9ub){font-size:20px;font-weight:600;color:var(--text)}.spend.svelte-q9r9ub{color:var(--text-3);font-size:11px}.ctx.svelte-1h7zxuf{display:flex;flex-direction:column;gap:8px}.hd.svelte-1h7zxuf{display:flex;justify-content:space-between;align-items:center}.pct.svelte-1h7zxuf{font-family:var(--font-mono);color:var(--text-2);font-size:11px}.body.svelte-1h7zxuf{display:flex;align-items:baseline;gap:6px;color:var(--text)}.big.svelte-1h7zxuf{font-family:var(--font-mono);font-size:20px;font-weight:600}.max.svelte-1h7zxuf{font-family:var(--font-mono);color:var(--text-3);font-size:11px}.bar.svelte-1h7zxuf{height:7px;background:var(--bg-input);border-radius:var(--radius-bar);overflow:hidden}.fill.svelte-1h7zxuf{height:100%;width:100%;background:var(--accent);transform-origin:left;transition:transform .3s ease}.model.svelte-1h7zxuf{display:flex;align-items:center;gap:7px;color:var(--text-2);font-size:11px}.sq.svelte-1h7zxuf{width:8px;height:8px;border-radius:var(--radius-bar);background:var(--hl-cyan)}.cache.svelte-1h7zxuf{display:flex;align-items:center;gap:7px;color:var(--text-3);font-size:11px}.cdot.svelte-1h7zxuf{width:8px;height:8px;border-radius:var(--radius-bar);background:var(--hl-green)}.wd.svelte-1oo25bu{display:flex;flex-direction:column;gap:8px}.hd.svelte-1oo25bu{display:flex;justify-content:space-between;align-items:center}.section-label.svelte-1oo25bu{text-transform:uppercase;letter-spacing:.16em;color:var(--text-3);font-size:10px}.counts.svelte-1oo25bu{color:var(--text-2);font-size:11px}.counts.svelte-1oo25bu *{color:inherit}.repo-line.svelte-1oo25bu{color:var(--text-2);font-size:11px}.files.svelte-1oo25bu{color:var(--text-2);display:flex;flex-direction:column;gap:4px}.entry.svelte-1oo25bu{display:flex;flex-direction:column;background:var(--bg-elev);border-radius:var(--radius-sm);overflow:hidden}.f.svelte-1oo25bu{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;margin:0;border:none;background:transparent;color:inherit;font:inherit;text-align:left;white-space:nowrap;cursor:pointer}.f.svelte-1oo25bu:hover{background:var(--bg-elev2)}.f.svelte-1oo25bu:focus-visible{outline:1px solid var(--accent);outline-offset:1px;border-radius:var(--radius-bar)}.change.svelte-1oo25bu{width:8px;height:8px;border-radius:var(--radius-bar);flex-shrink:0}.nm.svelte-1oo25bu{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:rtl;text-align:left;font-size:11px}.cnt.svelte-1oo25bu{margin-left:auto;flex-shrink:0;display:inline-flex;align-items:center;gap:4px;font-size:11px}.cnt.svelte-1oo25bu .add:where(.svelte-1oo25bu){color:var(--ok)}.cnt.svelte-1oo25bu .del:where(.svelte-1oo25bu){color:var(--err)}.cnt.svelte-1oo25bu .sep:where(.svelte-1oo25bu){color:var(--text-3)}.diff.svelte-1oo25bu{margin:2px 6px 6px;padding:4px 6px;background:var(--bg);border:1px solid var(--border-2);border-radius:var(--radius-sm);overflow-x:auto}.line.svelte-1oo25bu{font-family:var(--font-mono);white-space:pre;line-height:1.45}.line.svelte-1oo25bu .pre:where(.svelte-1oo25bu){-webkit-user-select:none;user-select:none}.line.add.svelte-1oo25bu{color:var(--ok)}.line.del.svelte-1oo25bu{color:var(--err)}.line.ctx.svelte-1oo25bu{color:var(--text-3)}.fold.svelte-4p37uf{display:flex;flex-direction:column}.hd.svelte-4p37uf{display:flex;align-items:center;gap:6px;margin:0 0 2px -4px;padding:3px 4px;background:transparent;border:none;border-radius:var(--radius-xs);color:var(--text-3);cursor:pointer;text-align:left}.hd.svelte-4p37uf:hover{color:var(--text-2);background:var(--bg-elev)}.caret.svelte-4p37uf{width:11px;height:11px;flex-shrink:0;transition:transform .16s ease;transform:rotate(0)}.caret.open.svelte-4p37uf{transform:rotate(90deg)}.t.svelte-4p37uf{text-transform:uppercase;letter-spacing:.14em;font-size:9.5px;font-weight:600}.body.svelte-4p37uf{animation:ocrc-fade .15s var(--ease-out, ease-out)}.inspector.svelte-gu3dqx{width:var(--insp-w, 280px);flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-panel);border-left:1px solid var(--border-2)}.head.svelte-gu3dqx{padding:14px 16px;border-bottom:1px solid var(--border-2)}.section-label.svelte-gu3dqx{text-transform:uppercase;letter-spacing:.16em;color:var(--text-3);font-size:10px}.name.svelte-gu3dqx{margin-top:4px;display:flex;align-items:center;gap:6px;min-width:0;font-weight:600;font-size:13px;color:var(--text)}.title-text.svelte-gu3dqx{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pinned.svelte-gu3dqx{border-top:1px solid var(--border-2);padding:14px 16px 18px;display:flex;flex-direction:column;gap:12px}.divider.svelte-gu3dqx{border-top:1px solid var(--border-2)}@media (max-width: 820px){.inspector.svelte-gu3dqx{width:100%;height:100%;display:block;overflow-y:auto;-webkit-overflow-scrolling:touch}.pinned.svelte-gu3dqx{border-top:none}}.overlay.svelte-wh9uu8{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:flex-start;padding-top:84px;z-index:var(--z-overlay)}.backdrop.svelte-wh9uu8{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);border:none;padding:0;margin:0;cursor:default;animation:ocrc-fade .16s ease backwards}.palette.svelte-wh9uu8{position:relative;z-index:1;width:min(560px,92vw);max-height:calc(100vh - 120px);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-palette);display:flex;flex-direction:column;animation:ocrc-pop .16s var(--ease-out, ease-out) backwards}.header.svelte-wh9uu8{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--border);flex-shrink:0}.search-icon.svelte-wh9uu8{font-size:18px;color:var(--text-3);line-height:1;flex-shrink:0}.q.svelte-wh9uu8{flex:1;min-width:0;background:transparent;border:none;color:var(--text);font-family:var(--font-sans);font-size:16px;outline:none;padding:0}.q.svelte-wh9uu8::placeholder{color:var(--text-4)}.keycap.svelte-wh9uu8{flex-shrink:0;font-size:10px;color:var(--text-3);text-transform:uppercase;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-xs);padding:3px 6px}.results.svelte-wh9uu8{overflow-y:auto;padding:8px}.group.svelte-wh9uu8{display:flex;align-items:center;gap:8px;padding:8px 10px 4px}.group-icon.svelte-wh9uu8{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-xs);background:var(--accent-2);color:var(--accent);font-family:var(--font-mono);font-size:12px;font-weight:600}.group-label.svelte-wh9uu8{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--text-3)}.row.svelte-wh9uu8{display:flex;align-items:center;gap:10px;width:100%;background:transparent;border:none;color:var(--text);padding:7px 10px;border-radius:var(--radius-sm);cursor:pointer;text-align:left;transition:background .12s ease}.row.active.svelte-wh9uu8,.row.svelte-wh9uu8:hover:not(.disabled){background:var(--accent-2)}.row.disabled.svelte-wh9uu8{opacity:.5;cursor:default}.row.svelte-wh9uu8:disabled{opacity:.5;cursor:default}.tile.svelte-wh9uu8{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--radius-xs);background:var(--bg-panel);border:1px solid var(--border-2);color:var(--text-2);font-family:var(--font-mono);font-size:11px;font-weight:600}.label.svelte-wh9uu8{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13.5px;color:var(--text);text-transform:none;letter-spacing:normal}.hint.svelte-wh9uu8{flex-shrink:0;max-width:45%;font-size:11px;color:var(--text-4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}.empty.svelte-wh9uu8{padding:24px;text-align:center;color:var(--text-3);font-size:13.5px}.error.svelte-wh9uu8{padding:10px;color:var(--err);font-size:12px}.about.svelte-wh9uu8{padding:8px 14px 10px;border-top:1px solid var(--border-2);color:var(--text-4);font-size:10.5px}.overlay.svelte-cfrpez{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:flex-start;padding-top:84px;z-index:var(--z-modal)}.backdrop.svelte-cfrpez{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);border:none;padding:0;margin:0;cursor:default;animation:ocrc-fade .16s ease backwards}.modal.svelte-cfrpez{position:relative;z-index:1;width:min(460px,92vw);max-height:calc(100vh - 120px);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 24px 70px #0009;display:flex;flex-direction:column;overflow:hidden;animation:svelte-cfrpez-ocrc-pop .14s ease}@keyframes svelte-cfrpez-ocrc-pop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.header.svelte-cfrpez{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.title.svelte-cfrpez{font-size:15px;font-weight:600;color:var(--text)}.close.svelte-cfrpez{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-3);cursor:pointer;font-size:14px;transition:color .12s ease,background .12s ease,border-color .12s ease}.close.svelte-cfrpez:hover{color:var(--text);background:var(--bg-elev2);border-color:var(--border)}.body.svelte-cfrpez{padding:16px;display:flex;flex-direction:column;gap:18px;overflow-y:auto}.field.svelte-cfrpez{display:flex;flex-direction:column;gap:8px}.label.svelte-cfrpez{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--text-3)}.optional.svelte-cfrpez{font-weight:400;color:var(--text-4);text-transform:none;letter-spacing:normal}.agent-chips.svelte-cfrpez{display:flex;flex-wrap:wrap;gap:8px}.agent-chip.svelte-cfrpez{display:inline-flex;align-items:center;gap:7px;padding:5px 10px 5px 5px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-2);cursor:pointer;transition:border-color .12s ease,background .12s ease}.agent-chip.svelte-cfrpez:hover{border-color:var(--accent);background:var(--bg-elev2)}.agent-chip.selected.svelte-cfrpez{background:var(--accent-2);border-color:var(--accent-line);color:var(--text)}.chip-tile.svelte-cfrpez{width:22px;height:22px;display:inline-grid;place-items:center;border-radius:var(--radius-xs);border:1px solid transparent;font-family:var(--font-mono);font-size:9.5px;font-weight:700;flex-shrink:0}.chip-name.svelte-cfrpez{font-size:12px;font-weight:600}.chip-status.svelte-cfrpez{width:6px;height:6px;border-radius:50%;border:1.5px solid transparent;flex-shrink:0;box-sizing:border-box}.sr-only.svelte-cfrpez{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chip-status.online.svelte-cfrpez{background:var(--dot, var(--ok));border-color:var(--dot, var(--ok))}.chip-status.connecting.svelte-cfrpez{background:var(--warn);border-color:var(--warn);animation:ocrc-pulse 1.2s ease-in-out infinite}.chip-status.offline.svelte-cfrpez{background:transparent;border:1.5px solid var(--text-4)}.dir-input.svelte-cfrpez{display:flex;align-items:center;gap:0;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;transition:border-color .15s ease}.dir-input.svelte-cfrpez:focus-within{border-color:var(--accent)}.host-prefix.svelte-cfrpez{padding:8px 0 8px 10px;font-size:12.5px;color:var(--text-3);flex-shrink:0}.path.svelte-cfrpez{flex:1;min-width:0;background:transparent;border:none;color:var(--text);font-size:16px;padding:8px 10px;outline:none}.path.svelte-cfrpez::placeholder{color:var(--text-4)}.browse.svelte-cfrpez{border:none;border-left:1px solid var(--border);background:var(--bg-panel);color:var(--text-3);font-size:11px;font-weight:600;padding:0 12px;cursor:pointer;transition:color .12s ease,background .12s ease;flex-shrink:0}.browse.svelte-cfrpez:hover{color:var(--text);background:var(--bg-elev2)}.recents.svelte-cfrpez{display:none;flex-direction:column;gap:6px}.recents.open.svelte-cfrpez{display:flex}.recents-label.svelte-cfrpez{font-size:10px;color:var(--text-4);text-transform:uppercase;letter-spacing:.1em}.recents-list.svelte-cfrpez{display:flex;flex-direction:column;gap:2px;max-height:160px;overflow-y:auto;padding:4px;background:var(--bg-panel);border:1px solid var(--border-2);border-radius:var(--radius-sm)}.recent.svelte-cfrpez{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:6px 8px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text);cursor:pointer;text-align:left;transition:background .12s ease}.recent.svelte-cfrpez:hover{background:var(--bg-elev)}.recent-name.svelte-cfrpez{font-size:12px;font-weight:600;color:var(--text-2)}.recent-dir.svelte-cfrpez{font-size:10.5px;color:var(--text-4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.branch.svelte-cfrpez{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:16px;padding:8px 10px;outline:none;transition:border-color .15s ease}.branch.svelte-cfrpez:focus{border-color:var(--accent)}.branch.svelte-cfrpez::placeholder{color:var(--text-4)}.error.svelte-cfrpez{padding:10px 12px;background:color-mix(in srgb,var(--err) 12%,transparent);border:1px solid color-mix(in srgb,var(--err) 35%,transparent);border-radius:var(--radius-sm);color:var(--err);font-size:12px}.footer.svelte-cfrpez{display:flex;justify-content:flex-end;gap:10px;padding:14px 16px;border-top:1px solid var(--border);flex-shrink:0}.btn.svelte-cfrpez{padding:7px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:650;cursor:pointer;transition:opacity .12s ease,transform .12s ease;border:none}.btn.svelte-cfrpez:disabled{opacity:.5;cursor:default}.secondary.svelte-cfrpez{background:transparent;border:1px solid var(--border);color:var(--text-2)}.secondary.svelte-cfrpez:hover:not(:disabled){background:var(--bg-elev2);color:var(--text)}.primary.svelte-cfrpez{background:var(--accent);color:var(--accent-ink)}.primary.svelte-cfrpez:hover:not(:disabled){opacity:.9}.empty.svelte-cfrpez{padding:24px;text-align:center;color:var(--text-3);font-size:13.5px}@media (max-width: 820px){.overlay.svelte-cfrpez{align-items:flex-end;padding:0 0 calc(env(safe-area-inset-bottom,0px) + var(--kb, 0px));transition:padding-bottom .2s ease-out}.modal.svelte-cfrpez{width:100%;max-height:calc(86vh - var(--kb, 0px));border-bottom-left-radius:0;border-bottom-right-radius:0;animation:svelte-cfrpez-sheetin .22s ease}@keyframes svelte-cfrpez-sheetin{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}}.overlay.svelte-b8emeh{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:grid;place-items:center;padding:24px}.backdrop.svelte-b8emeh{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);border:none;padding:0;margin:0;cursor:default;animation:ocrc-fade .16s ease backwards}.modal.svelte-b8emeh{position:relative;width:min(880px,94vw);max-height:86vh;overflow:auto;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-palette);animation:ocrc-pop .16s var(--ease-out, ease-out) backwards}.header.svelte-b8emeh{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border-2)}.title.svelte-b8emeh{font-family:var(--font-serif);font-size:16px;font-weight:600;color:var(--text)}.close.svelte-b8emeh{background:transparent;border:none;color:var(--text-3);font-size:14px;cursor:pointer}.cols.svelte-b8emeh{display:flex;gap:14px;padding:14px 18px}.list.svelte-b8emeh{width:170px;flex-shrink:0;display:flex;flex-direction:column;gap:6px}.ch.svelte-b8emeh{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:8px 10px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;text-align:left;cursor:pointer}.ch-logo.svelte-b8emeh{display:grid;place-items:center}.ch.sel.svelte-b8emeh{border-color:var(--accent);background:var(--accent-2)}.ch-state.svelte-b8emeh{font-size:10px;color:var(--text-3)}.ch-state.on.svelte-b8emeh{color:var(--ok, var(--accent))}.detail.svelte-b8emeh{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px}.d-hd.svelte-b8emeh{display:flex;align-items:center;justify-content:space-between}.d-name.svelte-b8emeh{font-family:var(--font-serif);font-size:15px;font-weight:600;color:var(--text)}.switch.svelte-b8emeh{width:40px;height:22px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-input);display:grid;align-items:center;padding:0 2px;cursor:pointer}.switch.svelte-b8emeh .knob:where(.svelte-b8emeh){width:14px;height:14px;border-radius:50%;background:var(--text-3);transition:transform .16s ease,background .16s ease}.switch.on.svelte-b8emeh{border-color:var(--accent)}.switch.on.svelte-b8emeh .knob:where(.svelte-b8emeh){background:var(--accent);transform:translate(18px)}.note.svelte-b8emeh{margin:0;font-size:11.5px;color:var(--text-3)}.sec.svelte-b8emeh{border-top:1px solid var(--border-2);padding-top:10px}.danger.svelte-b8emeh{border-top-color:var(--err)}.sec-label.svelte-b8emeh{font-size:11px;color:var(--text-3);margin-bottom:6px}.cred.svelte-b8emeh{width:100%;box-sizing:border-box;padding:6px 8px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:11px}.cred.svelte-b8emeh:focus{outline:1px solid var(--accent)}.sec-acts.svelte-b8emeh{display:flex;align-items:center;gap:8px;margin-top:6px}.save.svelte-b8emeh{padding:4px 12px;background:var(--accent);border:none;border-radius:var(--radius-sm);color:var(--accent-ink);font:inherit;font-size:11.5px;font-weight:600;cursor:pointer}.opts.svelte-b8emeh{display:flex;flex-direction:column;gap:4px}.opt.svelte-b8emeh{padding:7px 10px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);font:inherit;font-size:12px;text-align:left;cursor:pointer}.opt.sel.svelte-b8emeh{border-color:var(--accent);color:var(--text);background:var(--accent-2)}.hint.svelte-b8emeh{font-size:10.5px;color:var(--text-3);margin:4px 0 0}.reset.svelte-b8emeh{padding:5px 12px;background:transparent;border:1px solid var(--err);border-radius:var(--radius-sm);color:var(--err);font:inherit;font-size:11.5px;cursor:pointer}.pair.svelte-b8emeh{border-top:1px solid var(--border-2);padding:12px 18px 16px}.pair-head.svelte-b8emeh{display:flex;align-items:flex-start;gap:10px;justify-content:space-between}.pair-title.svelte-b8emeh{font-size:12.5px;font-weight:650;color:var(--text)}.cd.svelte-b8emeh{font-weight:500;color:var(--text-3);font-size:11.5px;margin-left:4px}.cd.expired.svelte-b8emeh{color:var(--warn)}.stop.svelte-b8emeh{flex-shrink:0;padding:4px 12px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);font:inherit;font-size:11.5px;cursor:pointer}.stop.svelte-b8emeh:hover{color:var(--err);border-color:var(--err)}.qr-big.svelte-b8emeh{position:relative;width:min(200px,70%);margin:14px auto 12px;background:#fff;padding:10px;border-radius:var(--radius);animation:ocrc-fade .18s var(--ease-out, ease-out)}.qr-big.svelte-b8emeh svg{width:100%;height:auto;display:block}.qr-big.dim.svelte-b8emeh svg{opacity:.18;filter:blur(1px)}.qr-expired.svelte-b8emeh{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text);font-size:12px;font-weight:600}.pair-acts.svelte-b8emeh{display:flex;align-items:center;gap:8px}.spacer.svelte-b8emeh{flex:1}.pair-stopped.svelte-b8emeh{display:flex;align-items:center;gap:10px;padding:10px 0 2px;color:var(--text-2);font-size:12px}.copy.svelte-b8emeh{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);font:inherit;font-size:11.5px;cursor:pointer}.copy.svelte-b8emeh:hover{border-color:var(--accent);color:var(--text)}.overlay.svelte-1r7zhoh{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);pointer-events:none}.backdrop.svelte-1r7zhoh{position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;border:none;padding:0;margin:0;cursor:default;pointer-events:auto}.menu.svelte-1r7zhoh{position:absolute;z-index:1;min-width:180px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 18px 50px #0000008c;padding:6px;display:flex;flex-direction:column;gap:2px;pointer-events:auto;animation:svelte-1r7zhoh-ocrc-pop .14s ease}@keyframes svelte-1r7zhoh-ocrc-pop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.item.svelte-1r7zhoh{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text);cursor:pointer;text-align:left;transition:background .12s ease}.item.svelte-1r7zhoh:hover{background:var(--accent-2)}.icon.svelte-1r7zhoh{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-xs);background:var(--bg-panel);border:1px solid var(--border-2);color:var(--text-2);font-size:12px;flex-shrink:0}.label.svelte-1r7zhoh{flex:1;font-size:13px;font-weight:500}.keycap.svelte-1r7zhoh{flex-shrink:0;font-size:10px;color:var(--text-3);text-transform:uppercase;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-xs);padding:2px 5px}@media (max-width: 820px){.overlay.svelte-1r7zhoh{display:flex;align-items:flex-end;justify-content:center;padding:0 0 env(safe-area-inset-bottom,0);pointer-events:auto;background:var(--scrim)}.menu.svelte-1r7zhoh{position:relative;top:auto!important;left:auto!important;width:100%;max-width:100%;border-bottom-left-radius:0;border-bottom-right-radius:0;animation:svelte-1r7zhoh-sheetin .18s ease}@keyframes svelte-1r7zhoh-sheetin{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}}.fab-root.svelte-9zfapn{display:none}@media (max-width: 820px){.fab-root.svelte-9zfapn{display:block}}.scrim.svelte-9zfapn{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-fab);background:var(--scrim);border:none;padding:0;cursor:default;animation:svelte-9zfapn-fade .16s ease}@keyframes svelte-9zfapn-fade{0%{opacity:0}to{opacity:1}}.fab.svelte-9zfapn{position:fixed;z-index:var(--z-fab);right:18px;bottom:calc(76px + env(safe-area-inset-bottom,0px) + var(--kb, 0px));width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);border:none;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 8px 24px #0006;transition:transform .2s ease}.fab.rot.svelte-9zfapn{transform:rotate(45deg)}.fab.svelte-9zfapn:active{transform:scale(.94)}.fab.rot.svelte-9zfapn:active{transform:rotate(45deg) scale(.94)}.dial.svelte-9zfapn{position:fixed;z-index:var(--z-fab);right:20px;bottom:calc(146px + env(safe-area-inset-bottom,0px) + var(--kb, 0px));display:flex;flex-direction:column;align-items:flex-end;gap:12px}.dial-item.svelte-9zfapn{display:flex;align-items:center;gap:10px;background:transparent;border:none;padding:0;cursor:pointer;animation:svelte-9zfapn-rise .16s ease both}@keyframes svelte-9zfapn-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.dial-label.svelte-9zfapn{font-size:12px;color:var(--text);background:var(--bg-elev);border:1px solid var(--border);padding:6px 10px;border-radius:var(--radius-xs);white-space:nowrap;box-shadow:0 4px 14px #0000004d}.dial-icon.svelte-9zfapn{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:18px;background:var(--bg-elev2);color:var(--text);border:1px solid var(--border)}.gate.svelte-9s687p{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-gate);display:flex;align-items:center;justify-content:center;background:var(--bg);padding:24px;padding-top:calc(24px + env(safe-area-inset-top,0px));padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));overflow-y:auto}.panel.svelte-9s687p{width:min(1060px,100%);background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:22px 26px;display:flex;flex-direction:column;gap:14px;animation:ocrc-pop var(--dur-enter, .2s) var(--ease-out, ease-out) backwards}.head.svelte-9s687p{display:flex;gap:14px;align-items:center}.hicon.svelte-9s687p{width:52px;height:52px;flex-shrink:0;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 8%,transparent);border:1px solid var(--border-2);border-radius:var(--radius)}.hicon.svelte-9s687p svg:where(.svelte-9s687p){width:34px;height:34px;display:block}h1.svelte-9s687p{margin:0;font-size:17px;color:var(--text);font-weight:700}.sub.svelte-9s687p{margin:2px 0 0;font-size:12.5px;color:var(--text-2)}.cols.svelte-9s687p{display:grid;grid-template-columns:1.25fr 1fr;gap:16px}@media (max-width: 860px){.cols.svelte-9s687p{grid-template-columns:1fr}}.scan.svelte-9s687p,.channels.svelte-9s687p{border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;display:flex;flex-direction:column;gap:10px}.sec-head.svelte-9s687p{display:flex;align-items:center;gap:8px;justify-content:space-between;flex-wrap:wrap}.sec-title.svelte-9s687p{font-size:13px;font-weight:650;color:var(--text)}.chip.svelte-9s687p{font-size:10.5px;color:var(--text-2);background:var(--bg-elev);border:1px solid var(--border);padding:2px 8px;border-radius:var(--radius-pill)}.wait-row.svelte-9s687p{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.wait.done.svelte-9s687p{color:var(--ok, #2e9e6b)}.btn.enter.svelte-9s687p{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.wait.svelte-9s687p{font-size:12px;color:var(--text);font-weight:600}.cd.svelte-9s687p{font-weight:500;color:var(--text-3)}.cd.expired.svelte-9s687p{color:var(--warn)}.qr-wrap.svelte-9s687p{position:relative;width:min(230px,80%);margin:4px auto;background:#fff;padding:12px;border-radius:var(--radius);border:1px dashed var(--border-2)}.qr-wrap.svelte-9s687p svg{width:100%;height:auto;display:block}.qr-re.svelte-9s687p{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text);font-size:12.5px;font-weight:600}.acts.svelte-9s687p{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.spacer.svelte-9s687p{flex:1}.btn.svelte-9s687p{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);font:inherit;font-size:12px;cursor:pointer}.btn.svelte-9s687p:hover{border-color:var(--accent);color:var(--text)}.ch.svelte-9s687p{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:default}.lock.svelte-9s687p{margin-left:auto;font-size:12px;opacity:.65;flex-shrink:0}.ch-icon.svelte-9s687p{display:grid;place-items:center;flex-shrink:0}.ch-name.svelte-9s687p{font-size:12.5px;font-weight:650;color:var(--text);display:flex;gap:8px;align-items:baseline}.ok.svelte-9s687p{font-size:10.5px;color:var(--ok, #2e9e6b);font-weight:600}.off.svelte-9s687p{font-size:10.5px;color:var(--text-3);font-weight:500}.ch-note.svelte-9s687p{font-size:11.5px;color:var(--text-3);margin-top:2px}.hint.svelte-9s687p{font-size:11.5px;color:var(--text-3);margin:0;line-height:1.5}.dim.svelte-9s687p{color:var(--text-3)}.rejected.svelte-9s687p{margin:0;font-size:12.5px;color:var(--err)}.paste.svelte-9s687p{border-top:1px solid var(--border-2);padding-top:10px}.paste.svelte-9s687p summary:where(.svelte-9s687p){cursor:pointer;font-size:12px;color:var(--text-2)}.paste-body.svelte-9s687p{display:flex;flex-direction:column;gap:8px;padding-top:10px}.field.svelte-9s687p{padding:9px 11px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);font-size:12.5px}.field.svelte-9s687p:focus{outline:none;border-color:var(--accent-line)}.err.svelte-9s687p{font-size:12px;color:var(--err)}.connect.svelte-9s687p{align-self:flex-start;padding:8px 18px;background:var(--accent);border:1px solid var(--accent);color:var(--accent-ink);border-radius:var(--radius-sm);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer}.connect.svelte-9s687p:disabled{opacity:.45;cursor:default}.foot.svelte-9s687p{border-top:1px solid var(--border-2);padding-top:10px}.app.svelte-12qhfyh{position:fixed;top:0;left:0;right:0;display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg)}.body.svelte-12qhfyh{display:flex;flex:1;overflow:hidden;position:relative}main.svelte-12qhfyh{position:relative;flex:1;overflow:hidden;display:flex;flex-direction:column;min-width:0;background:var(--bg-canvas, var(--bg));border-radius:var(--radius) var(--radius) 0 0}.rail-wrap.svelte-12qhfyh{display:block;width:var(--rail-w, 250px);flex-shrink:0;overflow:hidden;position:relative;z-index:1;transition:transform .22s ease}.rail-wrap.collapsed.svelte-12qhfyh{transform:translate(-100%);margin-right:calc(-1 * var(--rail-w, 250px))}.inspector-wrap.svelte-12qhfyh{display:contents}.divider.svelte-12qhfyh{width:6px;flex-shrink:0;margin:0 -3px;z-index:5;cursor:col-resize;background:transparent;transition:background .15s ease}.divider.svelte-12qhfyh:hover,.divider.resizing.svelte-12qhfyh{background:color-mix(in srgb,var(--accent) 35%,transparent)}.backdrop.svelte-12qhfyh{display:none}@media (max-width: 820px){.rail-wrap.svelte-12qhfyh{display:block;position:absolute;top:0;bottom:0;left:0;z-index:var(--z-drawer);width:100%;overflow:hidden;margin-right:0;transition:transform .24s var(--ease, ease);transform:translate(-100%)}.rail-wrap.open.svelte-12qhfyh{transform:translate(0)}.inspector-wrap.svelte-12qhfyh{display:block;position:absolute;left:0;right:0;bottom:var(--kb, 0px);top:auto;z-index:var(--z-sheet);width:100%;height:min(82vh,580px);overflow:hidden;transition:transform .24s ease;transform:translateY(calc(100% + var(--kb, 0px)));border-radius:var(--radius) var(--radius) 0 0;box-shadow:0 -10px 44px #0000008c}.inspector-wrap.open.svelte-12qhfyh{transform:translateY(0)}.rail-wrap.svelte-12qhfyh .agent-panel,.rail-wrap.svelte-12qhfyh .panel{width:100%}.inspector-wrap.svelte-12qhfyh .inspector{width:100%;height:100%}.backdrop.svelte-12qhfyh{display:block;position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-backdrop);background:var(--scrim);border:none;padding:0;cursor:default;animation:svelte-12qhfyh-fade .18s ease}@keyframes svelte-12qhfyh-fade{0%{opacity:0}to{opacity:1}}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var tt=e=>{throw TypeError(e)};var qt=(e,t,n)=>t.has(e)||tt("Cannot "+n);var y=(e,t,n)=>(qt(e,t,"read from private field"),n?n.call(e):t.get(e)),A=(e,t,n)=>t.has(e)?tt("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n);import{b8 as Ve,az as nt,aX as T,a8 as I,aO as P,b1 as _e,aZ as Dt,aS as Vt}from"./BjY4dxcB.js";class Me{constructor(t,n){this.status=t,typeof n=="string"?this.body={message:n}:n?this.body=n:this.body={message:`Error: ${t}`}}toString(){return JSON.stringify(this.body)}}class Be{constructor(t,n){try{new Headers({location:n})}catch{throw new Error(`Invalid redirect location ${JSON.stringify(n)}: this string contains characters that cannot be used in HTTP headers`)}this.status=t,this.location=n}}class Ke extends Error{constructor(t,n,a){super(a),this.status=t,this.text=n}}new URL("sveltekit-internal://");function Mt(e,t){return e==="/"||t==="ignore"?e:t==="never"?e.endsWith("/")?e.slice(0,-1):e:t==="always"&&!e.endsWith("/")?e+"/":e}function Bt(e){return e.split("%25").map(decodeURI).join("%25")}function Kt(e){for(const t in e)e[t]=decodeURIComponent(e[t]);return e}function Pe({href:e}){return e.split("#")[0]}function j(){}function Ft(...e){let t=5381;for(const n of e)if(typeof n=="string"){let a=n.length;for(;a;)t=t*33^n.charCodeAt(--a)}else if(ArrayBuffer.isView(n)){const a=new Uint8Array(n.buffer,n.byteOffset,n.byteLength);let r=a.length;for(;r;)t=t*33^a[--r]}else throw new TypeError("value must be a string or TypedArray");return(t>>>0).toString(36)}new TextEncoder;function Gt(e){const t=atob(e),n=new Uint8Array(t.length);for(let a=0;a<t.length;a++)n[a]=t.charCodeAt(a);return n}const Ht=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:(t==null?void 0:t.method)||"GET")!=="GET"&&X.delete(Fe(e)),Ht(e,t));const X=new Map;function Wt(e,t){const n=Fe(e,t),a=document.querySelector(n);if(a!=null&&a.textContent){a.remove();let{body:r,...i}=JSON.parse(a.textContent);const o=a.getAttribute("data-ttl");return o&&X.set(n,{body:r,init:i,ttl:1e3*Number(o)}),a.getAttribute("data-b64")!==null&&(r=Gt(r)),Promise.resolve(new Response(r,i))}return window.fetch(e,t)}function zt(e,t,n){if(X.size>0){const a=Fe(e,n),r=X.get(a);if(r){if(performance.now()<r.ttl&&["default","force-cache","only-if-cached",void 0].includes(n==null?void 0:n.cache))return new Response(r.body,r.init);X.delete(a)}}return window.fetch(t,n)}function Fe(e,t){let a=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t!=null&&t.headers||t!=null&&t.body){const r=[];t.headers&&r.push([...new Headers(t.headers)].join(",")),t.body&&(typeof t.body=="string"||ArrayBuffer.isView(t.body))&&r.push(t.body),a+=`[data-hash="${Ft(...r)}"]`}return a}const Jt=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/;function Yt(e){const t=[];return{pattern:e==="/"?/^\/$/:new RegExp(`^${Zt(e).map(a=>{const r=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(a);if(r)return t.push({name:r[1],matcher:r[2],optional:!1,rest:!0,chained:!0}),"(?:/([^]*))?";const i=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(a);if(i)return t.push({name:i[1],matcher:i[2],optional:!0,rest:!1,chained:!0}),"(?:/([^/]+))?";if(!a)return;const o=a.split(/\[(.+?)\](?!\])/);return"/"+o.map((l,c)=>{if(c%2){if(l.startsWith("x+"))return Oe(String.fromCharCode(parseInt(l.slice(2),16)));if(l.startsWith("u+"))return Oe(String.fromCharCode(...l.slice(2).split("-").map(m=>parseInt(m,16))));const d=Jt.exec(l),[,u,w,p,f]=d;return t.push({name:p,matcher:f,optional:!!u,rest:!!w,chained:w?c===1&&o[0]==="":!1}),w?"([^]*?)":u?"([^/]*)?":"([^/]+?)"}return Oe(l)}).join("")}).join("")}/?$`),params:t}}function Xt(e){return e!==""&&!/^\([^)]+\)$/.test(e)}function Zt(e){return e.slice(1).split("/").filter(Xt)}function Qt(e,t,n){const a={},r=e.slice(1),i=r.filter(s=>s!==void 0);let o=0;for(let s=0;s<t.length;s+=1){const l=t[s];let c=r[s-o];if(l.chained&&l.rest&&o&&(c=r.slice(s-o,s+1).filter(d=>d).join("/"),o=0),c===void 0)if(l.rest)c="";else continue;if(!l.matcher||n[l.matcher](c)){a[l.name]=c;const d=t[s+1],u=r[s+1];d&&!d.rest&&d.optional&&u&&l.chained&&(o=0),!d&&!u&&Object.keys(a).length===i.length&&(o=0);continue}if(l.optional&&l.chained){o++;continue}return}if(!o)return a}function Oe(e){return e.normalize().replace(/[[\]]/g,"\\$&").replace(/%/g,"%25").replace(/\//g,"%2[Ff]").replace(/\?/g,"%3[Ff]").replace(/#/g,"%23").replace(/[.*+?^${}()|\\]/g,"\\$&")}function en({nodes:e,server_loads:t,dictionary:n,matchers:a}){const r=new Set(t);return Object.entries(n).map(([s,[l,c,d]])=>{const{pattern:u,params:w}=Yt(s),p={id:s,exec:f=>{const m=u.exec(f);if(m)return Qt(m,w,a)},errors:[1,...d||[]].map(f=>e[f]),layouts:[0,...c||[]].map(o),leaf:i(l)};return p.errors.length=p.layouts.length=Math.max(p.errors.length,p.layouts.length),p});function i(s){const l=s<0;return l&&(s=~s),[l,e[s]]}function o(s){return s===void 0?s:[r.has(s),e[s]]}}function mt(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function rt(e,t,n=JSON.stringify){const a=n(t);try{sessionStorage[e]=a}catch{}}var ut;const U=((ut=globalThis.__sveltekit_1v8uql8)==null?void 0:ut.base)??"";var dt;const tn=((dt=globalThis.__sveltekit_1v8uql8)==null?void 0:dt.assets)??U??"",nn="1790707240231",_t="sveltekit:snapshot",wt="sveltekit:scroll",vt="sveltekit:states",rn="sveltekit:pageurl",F="sveltekit:history",Z="sveltekit:navigation",V={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},Le=location.origin;function Ge(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){const n=document.getElementsByTagName("base");t=n.length?n[0].href:document.URL}return new URL(e,t)}function M(){return{x:pageXOffset,y:pageYOffset}}function K(e,t){return e.getAttribute(`data-sveltekit-${t}`)}const at={...V,"":V.hover};function yt(e){let t=e.assignedSlot??e.parentNode;return(t==null?void 0:t.nodeType)===11&&(t=t.host),t}function bt(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()==="A"&&e.hasAttribute("href"))return e;e=yt(e)}}function je(e,t,n){let a;try{if(a=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&a.hash.match(/^#[^/]/)){const s=location.hash.split("#")[1]||"/";a.hash=`#${s}${a.hash}`}}catch{}const r=e instanceof SVGAElement?e.target.baseVal:e.target,i=!a||!!r||Ue(a,t,n)||(e.getAttribute("rel")||"").split(/\s+/).includes("external"),o=(a==null?void 0:a.origin)===Le&&e.hasAttribute("download");return{url:a,external:i,target:r,download:o}}function we(e){let t=null,n=null,a=null,r=null,i=null,o=null,s=e;for(;s&&s!==document.documentElement;)a===null&&(a=K(s,"preload-code")),r===null&&(r=K(s,"preload-data")),t===null&&(t=K(s,"keepfocus")),n===null&&(n=K(s,"noscroll")),i===null&&(i=K(s,"reload")),o===null&&(o=K(s,"replacestate")),s=yt(s);function l(c){switch(c){case"":case"true":return!0;case"off":case"false":return!1;default:return}}return{preload_code:at[a??"off"],preload_data:at[r??"off"],keepfocus:l(t),noscroll:l(n),reload:l(i),replace_state:l(o)}}function ot(e){const t=Ve(e);let n=!0;function a(){n=!0,t.update(o=>o)}function r(o){n=!1,t.set(o)}function i(o){let s;return t.subscribe(l=>{(s===void 0||n&&l!==s)&&o(s=l)})}return{notify:a,set:r,subscribe:i}}const kt={v:j};function an(){const{set:e,subscribe:t}=Ve(!1);let n;async function a(){clearTimeout(n);try{const r=await fetch(`${tn}/_app/version.json`,{headers:{pragma:"no-cache","cache-control":"no-cache"}});if(!r.ok)return!1;const o=(await r.json()).version!==nn;return o&&(e(!0),kt.v(),clearTimeout(n)),o}catch{return!1}}return{subscribe:t,check:a}}function Ue(e,t,n){return e.origin!==Le||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function On(e){}const St=new Set(["load","prerender","csr","ssr","trailingSlash","config"]);[...St];const on=new Set([...St]);[...on];function sn(e){return e.filter(t=>t!=null)}function ge(e,t){return e+"/"+t}function He(e){return e instanceof Me||e instanceof Ke?e.status:500}function ln(e){return e instanceof Ke?e.text:"Internal Error"}let x,Q,$e;const cn=nt.toString().includes("$$")||/function \w+\(\) \{\}/.test(nt.toString()),st="a:";var ae,oe,se,ie,le,ce,fe,ue,ht,de,pt,he,gt;cn?(x={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(st)},Q={current:null},$e={current:!1}):(x=new(ht=class{constructor(){A(this,ae,T({}));A(this,oe,T(null));A(this,se,T(null));A(this,ie,T({}));A(this,le,T({id:null}));A(this,ce,T({}));A(this,fe,T(-1));A(this,ue,T(new URL(st)))}get data(){return I(y(this,ae))}set data(t){P(y(this,ae),t)}get form(){return I(y(this,oe))}set form(t){P(y(this,oe),t)}get error(){return I(y(this,se))}set error(t){P(y(this,se),t)}get params(){return I(y(this,ie))}set params(t){P(y(this,ie),t)}get route(){return I(y(this,le))}set route(t){P(y(this,le),t)}get state(){return I(y(this,ce))}set state(t){P(y(this,ce),t)}get status(){return I(y(this,fe))}set status(t){P(y(this,fe),t)}get url(){return I(y(this,ue))}set url(t){P(y(this,ue),t)}},ae=new WeakMap,oe=new WeakMap,se=new WeakMap,ie=new WeakMap,le=new WeakMap,ce=new WeakMap,fe=new WeakMap,ue=new WeakMap,ht),Q=new(pt=class{constructor(){A(this,de,T(null))}get current(){return I(y(this,de))}set current(t){P(y(this,de),t)}},de=new WeakMap,pt),$e=new(gt=class{constructor(){A(this,he,T(!1))}get current(){return I(y(this,he))}set current(t){P(y(this,he),t)}},he=new WeakMap,gt),kt.v=()=>$e.current=!0);function Et(e){Object.assign(x,e)}const{onMount:fn}=Dt,un=new Set(["icon","shortcut icon","apple-touch-icon"]);let J=null;const q=mt(wt)??{},ee=mt(_t)??{},N={url:ot({}),page:ot({}),navigating:Ve(null),updated:an()};function We(e){q[e]=M()}function dn(e,t){let n=e+1;for(;q[n];)delete q[n],n+=1;for(n=t+1;ee[n];)delete ee[n],n+=1}function te(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(j)}async function Rt(){if("serviceWorker"in navigator){const e=await navigator.serviceWorker.getRegistration(U||"/");e&&await e.update()}}let ze,Ne,ve,O,qe,S;const ye=[],be=[];let v=null;function ke(){var e;(e=v==null?void 0:v.fork)==null||e.then(t=>t==null?void 0:t.discard()),v=null}const me=new Map,xt=new Set,hn=new Set,G=new Set;let _={branch:[],error:null,url:null},Lt=!1,Se=!1,it=!0,ne=!1,Y=!1,Ut=!1,Je=!1,At,k,L,C;const Ee=new Set,lt=new Map,ct=new Map;async function Nn(e,t,n){var i,o,s,l;globalThis.__sveltekit_1v8uql8&&(globalThis.__sveltekit_1v8uql8.query,globalThis.__sveltekit_1v8uql8.prerender),document.URL!==location.href&&(location.href=location.href),S=e,await((o=(i=e.hooks).init)==null?void 0:o.call(i)),ze=en(e),O=document.documentElement,qe=t,Ne=e.nodes[0],ve=e.nodes[1],Ne(),ve(),k=(s=history.state)==null?void 0:s[F],L=(l=history.state)==null?void 0:l[Z],k||(k=L=Date.now(),history.replaceState({...history.state,[F]:k,[Z]:L},""));const a=q[k];function r(){a&&(history.scrollRestoration="manual",scrollTo(a.x,a.y))}n?(r(),await Ln(qe,n)):(await H({type:"enter",url:Ge(S.hash?Tn(new URL(location.href)):location.href),replace_state:!0}),r()),xn()}function pn(){ye.length=0,Je=!1}function Tt(e){be.some(t=>t==null?void 0:t.snapshot)&&(ee[e]=be.map(t=>{var n;return(n=t==null?void 0:t.snapshot)==null?void 0:n.capture()}))}function It(e){var t;(t=ee[e])==null||t.forEach((n,a)=>{var r,i;(i=(r=be[a])==null?void 0:r.snapshot)==null||i.restore(n)})}function ft(){We(k),rt(wt,q),Tt(L),rt(_t,ee)}async function Pt(e,t,n,a){let r,i;t.invalidateAll&&ke(),await H({type:"goto",url:Ge(e),keepfocus:t.keepFocus,noscroll:t.noScroll,replace_state:t.replaceState,state:t.state,redirect_count:n,nav_token:a,accept:()=>{if(t.invalidateAll){Je=!0,r=new Set;for(const[o,s]of lt)for(const l of s.keys())r.add(ge(o,l));i=new Set;for(const[o,s]of ct)for(const l of s.keys())i.add(ge(o,l))}t.invalidate&&t.invalidate.forEach(Rn)}}),t.invalidateAll&&_e().then(_e).then(()=>{for(const[o,s]of lt)for(const[l,{resource:c}]of s)r!=null&&r.has(ge(o,l))&&c.refresh();for(const[o,s]of ct)for(const[l,{resource:c}]of s)i!=null&&i.has(ge(o,l))&&c.reconnect()})}async function gn(e){if(e.id!==(v==null?void 0:v.id)){ke();const t={};Ee.add(t),v={id:e.id,token:t,promise:$t({...e,preload:t}).then(n=>(Ee.delete(t),n.type==="loaded"&&n.state.error&&ke(),n)),fork:null}}return v.promise}async function Ce(e){var n;const t=(n=await Ae(e,!1))==null?void 0:n.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(a=>a[1]()))}async function Ot(e,t,n){var i;const a={params:_.params,route:{id:((i=_.route)==null?void 0:i.id)??null},url:new URL(location.href)};_={...e.state,nav:a};const r=document.querySelector("style[data-sveltekit]");if(r&&r.remove(),Et(e.props.page),At=new S.root({target:t,props:{...e.props,stores:N,components:be},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),It(L),n){const o={from:null,to:{...a,scroll:q[k]??M()},willUnload:!1,type:"enter",complete:Promise.resolve()};G.forEach(s=>s(o))}Se=!0}async function Re({url:e,params:t,branch:n,errors:a,status:r,error:i,route:o,form:s}){let l="never";if(U&&(e.pathname===U||e.pathname===U+"/"))l="always";else for(const f of n)(f==null?void 0:f.slash)!==void 0&&(l=f.slash);e.pathname=Mt(e.pathname,l),e.search=e.search;const c={type:"loaded",state:{url:e,params:t,branch:n,error:i,route:o},props:{constructors:sn(n).map(f=>f.node.component),page:et(x)}};s!==void 0&&(c.props.form=s);let d={},u=!x,w=0;for(let f=0;f<Math.max(n.length,_.branch.length);f+=1){const m=n[f],h=_.branch[f];(m==null?void 0:m.data)!==(h==null?void 0:h.data)&&(u=!0),m&&(d={...d,...m.data},u&&(c.props[`data_${w}`]=d),w+=1)}return(!_.url||e.href!==_.url.href||_.error!==i||s!==void 0&&s!==x.form||u)&&(c.props.page={error:i,params:t,route:{id:(o==null?void 0:o.id)??null},state:{},status:r,url:new URL(e),form:s??null,data:u?d:x.data}),c}async function Ye({loader:e,parent:t,url:n,params:a,route:r,server_data_node:i}){var c,d;let o=null;const s={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},l=await e();return{node:l,loader:e,server:i,universal:(c=l.universal)!=null&&c.load?{type:"data",data:o,uses:s}:null,data:o??(i==null?void 0:i.data)??null,slash:((d=l.universal)==null?void 0:d.trailingSlash)??(i==null?void 0:i.slash)}}function mn(e,t,n){let a=e instanceof Request?e.url:e;const r=new URL(a,n);r.origin===n.origin&&(a=r.href.slice(n.origin.length));const i=Se?zt(a,r.href,t):Wt(a,t);return{resolved:r,promise:i}}function _n(e,t,n,a,r,i){if(Je)return!0;if(!r)return!1;if(r.parent&&e||r.route&&t||r.url&&n)return!0;for(const o of r.search_params)if(a.has(o))return!0;for(const o of r.params)if(i[o]!==_.params[o])return!0;for(const o of r.dependencies)if(ye.some(s=>s(new URL(o))))return!0;return!1}function Xe(e,t){return(e==null?void 0:e.type)==="data"?e:(e==null?void 0:e.type)==="skip"?t??null:null}function wn(e,t){if(!e)return new Set(t.searchParams.keys());const n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(const a of n){const r=e.searchParams.getAll(a),i=t.searchParams.getAll(a);r.every(o=>i.includes(o))&&i.every(o=>r.includes(o))&&n.delete(a)}return n}function vn({error:e,url:t,route:n,params:a}){return{type:"loaded",state:{error:e,url:t,route:n,params:a,branch:[]},props:{page:et(x),constructors:[]}}}async function $t({id:e,invalidating:t,url:n,params:a,route:r,preload:i}){if((v==null?void 0:v.id)===e)return Ee.delete(v.token),v.promise;const{errors:o,layouts:s,leaf:l}=r,c=[...s,l];o.forEach(h=>h==null?void 0:h().catch(j)),c.forEach(h=>h==null?void 0:h[1]().catch(j));const d=_.url?e!==xe(_.url):!1,u=_.route?r.id!==_.route.id:!1,w=wn(_.url,n);let p=!1;const f=c.map(async(h,g)=>{var $;if(!h)return;const b=_.branch[g];return h[1]===(b==null?void 0:b.loader)&&!_n(p,u,d,w,($=b.universal)==null?void 0:$.uses,a)?b:(p=!0,Ye({loader:h[1],url:n,params:a,route:r,parent:async()=>{var pe;const D={};for(let B=0;B<g;B+=1)Object.assign(D,(pe=await f[B])==null?void 0:pe.data);return D},server_data_node:Xe(h[0]?{type:"skip"}:null,h[0]?b==null?void 0:b.server:void 0)}))});for(const h of f)h.catch(j);const m=[];for(let h=0;h<c.length;h+=1)if(c[h])try{m.push(await f[h])}catch(g){if(g instanceof Be)return{type:"redirect",location:g.location};if(Ee.has(i))return vn({error:await re(g,{params:a,url:n,route:{id:r.id}}),url:n,params:a,route:r});let b=He(g),R;if(g instanceof Me)R=g.body;else{if(await N.updated.check())return await Rt(),await te(n);R=await re(g,{params:a,url:n,route:{id:r.id}})}const $=await yn(h,m,o);return $?Re({url:n,params:a,branch:m.slice(0,$.idx).concat($.node),errors:o,status:b,error:R,route:r}):await jt(n,{id:r.id},R,b)}else m.push(void 0);return Re({url:n,params:a,branch:m,errors:o,status:200,error:null,route:r,form:t?void 0:null})}async function yn(e,t,n){for(;e--;)if(n[e]){let a=e;for(;!t[a];)a-=1;try{return{idx:a+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function Ze({status:e,error:t,url:n,route:a}){const r={};let i=null;try{const o=await Ye({loader:Ne,url:n,params:r,route:a,parent:()=>Promise.resolve({}),server_data_node:Xe(i)}),s={node:await ve(),loader:ve,universal:null,server:null,data:null};return Re({url:n,params:r,branch:[o,s],status:e,error:t,errors:[],route:null})}catch(o){if(o instanceof Be)return Pt(new URL(o.location,location.href),{},0);throw o}}async function bn(e){const t=e.href;if(me.has(t))return me.get(t);let n;try{const a=(async()=>{let r=await S.hooks.reroute({url:new URL(e),fetch:async(i,o)=>mn(i,o,e).promise})??e;if(typeof r=="string"){const i=new URL(e);S.hash?i.hash=r:i.pathname=r,r=i}return r})();me.set(t,a),n=await a}catch{me.delete(t);return}return n}async function Ae(e,t){if(e&&!Ue(e,U,S.hash)){const n=await bn(e);if(!n)return;const a=kn(n);for(const r of ze){const i=r.exec(a);if(i)return{id:xe(e),invalidating:t,route:r,params:Kt(i),url:e}}}}function kn(e){return Bt(S.hash?e.hash.replace(/^#/,"").replace(/[?#].+/,""):e.pathname.slice(U.length))||"/"}function xe(e){return(S.hash?e.hash.replace(/^#/,""):e.pathname)+e.search}function Ct({url:e,type:t,intent:n,delta:a,event:r,scroll:i}){let o=!1;const s=Qe(_,n,e,t,i??null);a!==void 0&&(s.navigation.delta=a),r!==void 0&&(s.navigation.event=r);const l={...s.navigation,cancel:()=>{o=!0,s.reject(new Error("navigation cancelled"))}};return ne||xt.forEach(c=>c(l)),o?null:s}async function H({type:e,url:t,popped:n,keepfocus:a,noscroll:r,replace_state:i,state:o={},redirect_count:s=0,nav_token:l={},accept:c=j,block:d=j,event:u}){var B;const w=C;C=l;const p=await Ae(t,!1),f=e==="enter"?Qe(_,p,t,e):Ct({url:t,type:e,delta:n==null?void 0:n.delta,intent:p,scroll:n==null?void 0:n.scroll,event:u});if(!f){d(),C===l&&(C=w);return}const m=k,h=L;c(),ne=!0,Se&&f.navigation.type!=="enter"&&N.navigating.set(Q.current=f.navigation);let g=p&&await $t(p);if(!g){if(Ue(t,U,S.hash))return await te(t,i);g=await jt(t,{id:null},await re(new Ke(404,"Not Found",`Not found: ${t.pathname}`),{url:t,params:{},route:{id:null}}),404,i)}if(t=(p==null?void 0:p.url)||t,C!==l)return f.reject(new Error("navigation aborted")),!1;if(g.type==="redirect"){if(s<20){await H({type:e,url:new URL(g.location,t),popped:n,keepfocus:a,noscroll:r,replace_state:i,state:o,redirect_count:s+1,nav_token:l}),f.fulfil(void 0);return}g=await Ze({status:500,error:await re(new Error("Redirect loop"),{url:t,params:{},route:{id:null}}),url:t,route:{id:null}})}else g.props.page.status>=400&&await N.updated.check()&&(await Rt(),await te(t,i));if(pn(),We(m),Tt(h),g.props.page.url.pathname!==t.pathname&&(t.pathname=g.props.page.url.pathname),o=n?n.state:o,!n){const E=i?0:1,W={[F]:k+=E,[Z]:L+=E,[vt]:o};(i?history.replaceState:history.pushState).call(history,W,"",t),i||dn(k,L)}const b=p&&(v==null?void 0:v.id)===p.id?v.fork:null;v!=null&&v.fork&&!b&&ke(),v=null,g.props.page.state=o;let R;if(Se){const E=(await Promise.all(Array.from(hn,z=>z(f.navigation)))).filter(z=>typeof z=="function");if(E.length>0){let z=function(){E.forEach(Ie=>{G.delete(Ie)})};E.push(z),E.forEach(Ie=>{G.add(Ie)})}const W=f.navigation.to;_={...g.state,nav:{params:W.params,route:W.route,url:W.url}},g.props.page&&(g.props.page.url=t);const Te=b&&await b;Te?R=Te.commit():(J=null,At.$set(g.props),J&&Object.assign(g.props.page,J),Et(g.props.page),R=(B=Vt)==null?void 0:B()),Ut=!0}else await Ot(g,qe,!1);const{activeElement:$}=document;if(await R,await _e(),await _e(),C!==l)return f.reject(new Error("navigation aborted")),!1;g.props.page&&J&&Object.assign(g.props.page,J);let D=null;if(it){const E=n?n.scroll:r?M():null;E?scrollTo(E.x,E.y):(D=t.hash&&document.getElementById(Nt(t)))?D.scrollIntoView():scrollTo(0,0)}const pe=document.activeElement!==$&&document.activeElement!==document.body;!a&&!pe&&An(t,!D),it=!0,ne=!1,e==="popstate"&&It(L),f.fulfil(void 0),f.navigation.to&&(f.navigation.to.scroll=M()),G.forEach(E=>E(f.navigation)),N.navigating.set(Q.current=null)}async function jt(e,t,n,a,r){return e.origin===Le&&e.pathname===location.pathname&&!Lt?await Ze({status:a,error:n,url:e,route:t}):await te(e,r)}function Sn(){let e,t={element:void 0,href:void 0},n;O.addEventListener("mousemove",s=>{const l=s.target;clearTimeout(e),e=setTimeout(()=>{i(l,V.hover)},20)});function a(s){s.defaultPrevented||i(s.composedPath()[0],V.tap)}O.addEventListener("mousedown",a),O.addEventListener("touchstart",a,{passive:!0});const r=new IntersectionObserver(s=>{for(const l of s)l.isIntersecting&&(Ce(new URL(l.target.href)),r.unobserve(l.target))},{threshold:0});async function i(s,l){const c=bt(s,O),d=c===t.element&&(c==null?void 0:c.href)===t.href&&l>=n;if(!c||d)return;const{url:u,external:w,download:p}=je(c,U,S.hash);if(w||p)return;const f=we(c),m=u&&xe(_.url)===xe(u);if(!(f.reload||m))if(l<=f.preload_data){t={element:c,href:c.href},n=V.tap;const h=await Ae(u,!1);if(!h)return;gn(h)}else l<=f.preload_code&&(t={element:c,href:c.href},n=l,Ce(u))}function o(){r.disconnect();for(const s of O.querySelectorAll("a")){const{url:l,external:c,download:d}=je(s,U,S.hash);if(c||d)continue;const u=we(s);u.reload||(u.preload_code===V.viewport&&r.observe(s),u.preload_code===V.eager&&Ce(l))}}G.add(o),o()}function re(e,t){if(e instanceof Me)return e.body;const n=He(e),a=ln(e);return S.hooks.handleError({error:e,event:t,status:n,message:a})??{message:a}}function En(e,t){fn(()=>(e.add(t),()=>{e.delete(t)}))}function qn(e){En(G,e)}function Dn(e,t={}){return e=new URL(Ge(e)),e.origin!==Le?Promise.reject(new Error("goto: invalid URL")):Pt(e,t,0)}function Rn(e){if(typeof e=="function")ye.push(e);else{const{href:t}=new URL(e,location.href);ye.push(n=>n.href===t)}}function xn(){var t;history.scrollRestoration="manual",addEventListener("beforeunload",n=>{let a=!1;if(ft(),!ne){const r=Qe(_,void 0,null,"leave"),i={...r.navigation,cancel:()=>{a=!0,r.reject(new Error("navigation cancelled"))}};xt.forEach(o=>o(i))}a?(n.preventDefault(),n.returnValue=""):history.scrollRestoration="auto"}),addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&ft()}),(t=navigator.connection)!=null&&t.saveData||Sn(),O.addEventListener("click",async n=>{if(n.button||n.which!==1||n.metaKey||n.ctrlKey||n.shiftKey||n.altKey||n.defaultPrevented)return;const a=bt(n.composedPath()[0],O);if(!a)return;const{url:r,external:i,target:o,download:s}=je(a,U,S.hash);if(!r)return;if(o==="_parent"||o==="_top"){if(window.parent!==window)return}else if(o&&o!=="_self")return;const l=we(a);if(!(a instanceof SVGAElement)&&r.protocol!==location.protocol&&!(r.protocol==="https:"||r.protocol==="http:")||s)return;const[d,u]=(S.hash?r.hash.replace(/^#/,""):r.href).split("#"),w=d===Pe(location);if(i||l.reload&&(!w||!u)){Ct({url:r,type:"link",event:n})?ne=!0:n.preventDefault();return}if(u!==void 0&&w){const[,p]=_.url.href.split("#");if(p===u){if(n.preventDefault(),u===""||u==="top"&&a.ownerDocument.getElementById("top")===null)scrollTo({top:0});else{const f=a.ownerDocument.getElementById(decodeURIComponent(u));f&&(f.scrollIntoView(),f.focus())}return}if(Y=!0,We(k),e(r),!l.replace_state)return;Y=!1}n.preventDefault(),await new Promise(p=>{requestAnimationFrame(()=>{setTimeout(p,0)}),setTimeout(p,100)}),await H({type:"link",url:r,keepfocus:l.keepfocus,noscroll:l.noscroll,replace_state:l.replace_state??r.href===location.href,event:n})}),O.addEventListener("submit",n=>{if(n.defaultPrevented)return;const a=HTMLFormElement.prototype.cloneNode.call(n.target),r=n.submitter;if(((r==null?void 0:r.formTarget)||a.target)==="_blank"||((r==null?void 0:r.formMethod)||a.method)!=="get")return;const s=new URL((r==null?void 0:r.hasAttribute("formaction"))&&(r==null?void 0:r.formAction)||a.action);if(Ue(s,U,!1))return;const l=n.target,c=we(l);if(c.reload)return;n.preventDefault(),n.stopPropagation();const d=new FormData(l,r);s.search=new URLSearchParams(d).toString(),H({type:"form",url:s,keepfocus:c.keepfocus,noscroll:c.noscroll,replace_state:c.replace_state??s.href===location.href,event:n})}),addEventListener("popstate",async n=>{var a;if(!De){if((a=n.state)!=null&&a[F]){const r=n.state[F];if(C={},r===k)return;const i=q[r],o=n.state[vt]??{},s=new URL(n.state[rn]??location.href),l=n.state[Z],c=_.url?Pe(location)===Pe(_.url):!1;if(l===L&&(Ut||c)){o!==x.state&&(x.state=o),e(s),q[k]=M(),i&&scrollTo(i.x,i.y),k=r;return}const u=r-k;await H({type:"popstate",url:s,popped:{state:o,scroll:i,delta:u},accept:()=>{k=r,L=l},block:()=>{history.go(-u)},nav_token:C,event:n})}else if(!Y){const r=new URL(location.href);e(r),S.hash&&location.reload()}}}),addEventListener("hashchange",()=>{Y&&(Y=!1,history.replaceState({...history.state,[F]:++k,[Z]:L},"",location.href))});for(const n of document.querySelectorAll("link"))un.has(n.rel)&&(n.href=n.href);addEventListener("pageshow",n=>{n.persisted&&N.navigating.set(Q.current=null)});function e(n){_.url=x.url=n,N.page.set(et(x)),N.page.notify()}}async function Ln(e,{status:t=200,error:n,node_ids:a,params:r,route:i,server_route:o,data:s,form:l}){Lt=!0;const c=new URL(location.href);let d;({params:r={},route:i={id:null}}=await Ae(c,!1)||{}),d=ze.find(({id:p})=>p===i.id);let u,w=!0;try{const p=a.map(async(m,h)=>{const g=s[h];return g!=null&&g.uses&&(g.uses=Un(g.uses)),Ye({loader:S.nodes[m],url:c,params:r,route:i,parent:async()=>{const b={};for(let R=0;R<h;R+=1)Object.assign(b,(await p[R]).data);return b},server_data_node:Xe(g)})}),f=await Promise.all(p);if(d){const m=d.layouts;for(let h=0;h<m.length;h++)m[h]||f.splice(h,0,void 0)}u=await Re({url:c,params:r,branch:f,status:t,error:n,errors:d==null?void 0:d.errors,form:l,route:d??null})}catch(p){if(p instanceof Be){await te(new URL(p.location,location.href));return}u=await Ze({status:He(p),error:await re(p,{url:c,params:r,route:i}),url:c,route:i}),e.textContent="",w=!1}finally{}u.props.page&&(u.props.page.state={}),await Ot(u,e,w)}function Un(e){return{dependencies:new Set((e==null?void 0:e.dependencies)??[]),params:new Set((e==null?void 0:e.params)??[]),parent:!!(e!=null&&e.parent),route:!!(e!=null&&e.route),url:!!(e!=null&&e.url),search_params:new Set((e==null?void 0:e.search_params)??[])}}let De=!1;function An(e,t=!0){const n=document.querySelector("[autofocus]");if(n)n.focus();else{const a=Nt(e);if(a&&document.getElementById(a)){const{x:i,y:o}=M();setTimeout(()=>{const s=history.state;De=!0,location.replace(new URL(`#${a}`,location.href)),history.replaceState(s,"",e),t&&scrollTo(i,o),De=!1})}else{const i=document.body,o=i.getAttribute("tabindex");i.tabIndex=-1,i.focus({preventScroll:!0,focusVisible:!1}),o!==null?i.setAttribute("tabindex",o):i.removeAttribute("tabindex")}const r=getSelection();if(r&&r.type!=="None"){const i=[];for(let o=0;o<r.rangeCount;o+=1)i.push(r.getRangeAt(o));setTimeout(()=>{if(r.rangeCount===i.length){for(let o=0;o<r.rangeCount;o+=1){const s=i[o],l=r.getRangeAt(o);if(s.commonAncestorContainer!==l.commonAncestorContainer||s.startContainer!==l.startContainer||s.endContainer!==l.endContainer||s.startOffset!==l.startOffset||s.endOffset!==l.endOffset)return}r.removeAllRanges()}})}}}function Qe(e,t,n,a,r=null){var c,d;let i,o;const s=new Promise((u,w)=>{i=u,o=w});return s.catch(j),{navigation:{from:{params:e.params,route:{id:((c=e.route)==null?void 0:c.id)??null},url:e.url,scroll:M()},to:n&&{params:(t==null?void 0:t.params)??null,route:{id:((d=t==null?void 0:t.route)==null?void 0:d.id)??null},url:n,scroll:r},willUnload:!t,type:a,complete:s},fulfil:i,reject:o}}function et(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function Tn(e){const t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function Nt(e){let t;if(S.hash){const[,,n]=e.hash.split("#",3);t=n??""}else t=e.hash.slice(1);return decodeURIComponent(t)}export{qn as a,N as b,Dn as g,On as l,x as p,Nn as s};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{l as o,s as r}from"../chunks/BFcyGgGQ.js";export{o as load_css,r as start};
|