@wrongstack/desktop 0.280.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ :root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--sidebar:292px;--bg:#101114;--sidebar-bg:#151617;--panel:#1d1f20;--panel-2:#242728;--border:#34383a;--text:#f1f0e8;--muted:#adaca3;--faint:#777b73;--accent:#d59b2d;--accent-2:#78ba8f;--red:#e06767;--blue:#73a9d9;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0}body{background:var(--bg);color:var(--text);overflow:hidden}button{font:inherit;border-radius:6px}.desktop-shell{grid-template-columns:var(--sidebar) minmax(0, 1fr);background:linear-gradient(90deg, var(--sidebar-bg) 0 var(--sidebar), transparent var(--sidebar)), var(--bg);width:100%;height:100%;display:grid}.desktop-shell.shell-collapsed{--sidebar:56px}@media (width<=1179px){:root{--sidebar:276px}}@media (width<=899px){:root{--sidebar:252px}}.sidebar{border-right:1px solid var(--border);background:var(--sidebar-bg);grid-column:1;grid-template-columns:56px minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.shell-collapsed .sidebar{grid-template-columns:56px}.desktop-rail{border-right:1px solid var(--border);scrollbar-width:none;background:#111314;flex-direction:column;align-items:center;gap:8px;min-width:0;min-height:0;padding:10px 8px;display:flex;overflow:hidden auto}.desktop-rail::-webkit-scrollbar{display:none}.rail-brand{color:#f0bd62;background:#d59b2d21;border:1px solid #d59b2d8c;place-items:center;width:38px;height:38px;font-size:11px;font-weight:800;display:grid}.rail-section,.rail-runtime-list{gap:7px;display:grid}.rail-spacer{flex:auto;min-height:8px}.rail-divider{background:var(--border);width:30px;height:1px;margin:3px 0}.rail-badge{color:#17130a;font-variant-numeric:tabular-nums;background:#d59b2ddb;border-radius:999px;place-items:center;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:800;line-height:1;display:grid;position:absolute;top:3px;right:3px}.rail-toggle .svg-icon{transition:transform .12s}.shell-collapsed .rail-toggle .svg-icon{transform:rotate(180deg)}.sidebar-pane{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.pane-header{border-bottom:1px solid var(--border);flex:none;grid-template-columns:minmax(0,1fr);align-content:center;gap:3px;min-width:0;height:62px;padding:0 14px;display:grid}.pane-title-block{min-width:0}.pane-kicker{color:var(--faint);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:700}.pane-title{color:var(--text);margin-top:3px;font-size:17px;font-weight:760;line-height:1.1}.pane-subtitle{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.pane-body{flex:auto;min-width:0;min-height:0}.pane-body-scroll{scrollbar-gutter:stable;overflow:hidden auto}.workspace-pane{grid-template-rows:minmax(0,1fr) minmax(190px,34%);display:grid}.workspace-main,.workspace-projects{scrollbar-gutter:stable;min-height:0;overflow:hidden auto}.workspace-main{border-bottom:1px solid var(--border)}.workspace-projects{background:#00000014}.brand{border-bottom:1px solid var(--border);flex:none;align-items:center;gap:11px;height:62px;padding:0 16px;display:flex;position:relative}.shell-collapsed .brand{justify-content:center;height:54px;padding:0}.brand-mark{color:#f0bd62;background:#d59b2d21;border:1px solid #d59b2d8c;place-items:center;width:36px;height:36px;font-size:12px;font-weight:800;display:grid}.brand-copy{flex:auto;min-width:0}.brand-title{letter-spacing:0;font-weight:750}.brand-subtitle{color:var(--muted);margin-top:2px;font-size:11px}.brand-toggle{width:24px;height:24px;color:var(--faint);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;display:grid}.brand-toggle:hover{color:var(--text);background:#ffffff0f}.brand-toggle .svg-icon{width:13px;height:13px;transform:rotate(180deg)}.shell-collapsed .brand-copy{display:none}.shell-collapsed .brand-mark{width:34px;height:34px;font-size:11px}.shell-collapsed .brand-toggle{border:1px solid var(--border);background:var(--sidebar-bg);width:24px;height:16px;position:absolute;top:41px;left:16px}.shell-collapsed .brand-toggle .svg-icon{transform:none}.open-zone{border-bottom:1px solid var(--border);gap:8px;padding:14px;display:grid}.rail-button,.rail-runtime{border:1px solid var(--border);background:var(--panel);width:38px;height:36px;color:var(--muted);cursor:pointer;border-radius:7px;place-items:center;display:grid;position:relative}.rail-locale-select{border:1px solid var(--border);background:var(--panel);width:38px;height:36px;color:var(--muted);text-align:center;cursor:pointer;border-radius:7px;padding:0 2px;font-size:11px;font-weight:600}.rail-locale-select:hover:not(:disabled){border-color:var(--primary);color:var(--foreground)}.rail-locale-select:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.rail-button.accent{color:#f0bd62;background:#d59b2d24;border-color:#d59b2d9e}.rail-button:hover:not(:disabled),.rail-runtime:hover{background:var(--panel-2);color:var(--text)}.rail-button:disabled{cursor:not-allowed;opacity:.45}.rail-button.active,.rail-runtime.active{color:#a7e0b8;background:#78ba8f29;border-color:#78ba8fad}.rail-button.pending{color:#9fc8ea;background:#73a9d91a;border-color:#73a9d97a}.rail-runtime{font-size:10px;font-weight:800}.rail-runtime .status-dot{width:7px;height:7px;position:absolute;top:4px;right:4px}.primary-action,.secondary-action,.icon-button,.icon-tool-button{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:7px;display:inline-flex}.primary-action{color:#f0bd62;background:#d59b2d24;border-color:#d59b2d9e;width:100%;height:36px;font-weight:650}.primary-action.inline{width:160px}.secondary-action.inline{width:120px}.wide-action{width:100%}.primary-action:hover{background:#d59b2d38}.primary-action:disabled{cursor:progress;opacity:.65}.secondary-action{background:var(--panel);height:32px;color:var(--muted);padding:0 12px}.svg-icon{flex:none;width:15px;height:15px}.primary-action span,.secondary-action span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.secondary-action:hover,.icon-button:hover,.icon-tool-button:hover{color:var(--text);background:#ffffff0f}.panel{border-bottom:1px solid var(--border);min-height:0}.shell-error{color:#f2a0a0;background:#e067671a;border:1px solid #e0676761;border-radius:6px;grid-template-columns:minmax(0,1fr) 28px;align-items:start;gap:8px;margin:10px 14px 0;padding:10px;font-size:12px;line-height:1.4;display:grid}.shell-error-copy{overflow-wrap:anywhere;min-width:0;max-height:112px;overflow:auto}.panel-header{height:34px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;align-items:center;padding:0 14px;font-size:11px;display:flex}.panel-header-actions{align-items:center;gap:6px;display:inline-flex}.panel-header-button{border:1px solid var(--border);background:var(--panel);width:22px;height:22px;color:var(--muted);cursor:pointer;border-radius:5px;place-items:center;display:grid}.panel-header-button:hover:not(:disabled){color:#f0bd62;border-color:#d59b2d73}.panel-header-button:disabled{cursor:progress;opacity:.55}.panel-header-button .svg-icon{width:13px;height:13px}.count{color:var(--faint);font-variant-numeric:tabular-nums}.active-project,.project-empty{padding:0 14px 12px}.project-empty,.empty{color:var(--faint);font-size:12px}.empty{padding:12px 8px}.active-title{text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:750;line-height:1.2;overflow:hidden}.active-path,.runtime-path{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11px;line-height:1.35;overflow:hidden}.active-path{margin-top:5px}.active-meta{color:var(--faint);gap:10px;margin-top:9px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11px;display:flex}.webui-state{color:var(--muted);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;margin-top:10px;font-size:12px;display:grid}.webui-error{color:#f09a9a;text-overflow:ellipsis;white-space:nowrap;grid-column:2;min-width:0;overflow:hidden}.action-row{grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:8px;padding:0 14px 14px;display:grid}.project-action-row{grid-template-columns:minmax(0,1fr) repeat(3,30px);align-items:center}.project-action-row.compact-actions{grid-template-columns:repeat(3,30px);justify-content:start}.project-session-action{min-width:0}.icon-tool-button{border-color:var(--border);background:var(--panel);width:30px;height:30px;color:var(--muted);padding:0}.launcher-panel{flex:none;padding-bottom:14px}.launcher-feedback{border:1px solid var(--border);min-height:28px;color:var(--muted);background:#ffffff09;border-radius:6px;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:7px;margin:0 14px 12px;padding:6px 8px;font-size:11px;display:grid}.launcher-feedback span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.launcher-feedback.pending{color:#9fc8ea;border-color:#73a9d966}.launcher-feedback.success{color:#a7e0b8;border-color:#78ba8f6b}.launcher-feedback.error{color:#f09a9a;border-color:#e067676b}.quick-action-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding:0 14px;display:grid}.shortcut-button{border:1px solid var(--border);background:var(--panel);min-width:0;height:36px;color:var(--muted);cursor:pointer;text-align:center;justify-content:center;align-items:center;gap:0;padding:0;font-size:12px;display:inline-flex;position:relative}.shortcut-button span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.shortcut-button:hover:not(:disabled){color:var(--text);background:var(--panel-2)}.shortcut-button.pending-shortcut{color:#9fc8ea;background:#73a9d91a;border-color:#73a9d97a}.shortcut-button:disabled{cursor:not-allowed;opacity:.45}.shortcut-button.pending-shortcut:disabled{opacity:.85}.active-shortcut{color:#a7e0b8;background:#78ba8f29;border-color:#78ba8fad}.active-shortcut:hover:not(:disabled){background:#78ba8f3d}.projects-panel{flex-direction:column;min-height:0;display:flex}.projects-menu-stack{grid-template-rows:minmax(0,auto) minmax(0,1fr);gap:10px;min-height:0;display:grid}.projects-panel-full{border-bottom:0}.projects-panel-dock{border-bottom:0;height:100%}.projects-panel-embedded{min-height:280px}.project-picker{grid-template-rows:auto auto auto minmax(0,1fr);gap:8px;min-height:0;padding:0 8px 12px;display:grid;overflow:hidden}.projects-panel-dock .project-picker{grid-template-rows:auto auto minmax(0,1fr)}.projects-panel-embedded .project-picker{grid-template-rows:auto auto auto minmax(0,1fr)}.project-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:0 6px;display:grid}.project-tab{min-width:0;height:25px;color:var(--muted);cursor:pointer;background:#ffffff09;border:1px solid #0000;border-radius:5px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px;padding:0 6px;font-size:10px;display:grid}.project-tab span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.project-tab span:last-child{color:var(--faint);font-variant-numeric:tabular-nums}.project-tab:hover,.project-tab.active{color:#f0bd62;background:#d59b2d1a;border-color:#d59b2d5c}.project-picker-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0 6px;display:grid}.compact-action{width:100%;min-width:0;padding:0 8px}.project-search-row{border:1px solid var(--border);min-width:0;height:30px;color:var(--faint);background:#0000001f;border-radius:6px;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:6px;margin:0 6px;padding:0 7px;display:grid}.project-search-row:focus-within{color:var(--text);border-color:#d59b2d8c}.project-search-input{width:100%;min-width:0;height:26px;color:var(--text);background:0 0;border:0;outline:0;font:12px/1.2 inherit}.project-search-input::placeholder{color:var(--faint)}.project-search-input::-webkit-search-cancel-button{appearance:none}.project-search-clear{width:20px;height:20px;color:var(--faint);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;display:grid}.project-search-clear:hover{color:var(--text);background:#ffffff0f}.project-search-clear .svg-icon{width:13px;height:13px}.compact-empty{padding:4px 6px 2px}.project-group{min-width:0}.project-group-label{color:var(--faint);text-transform:uppercase;letter-spacing:.08em;padding:0 6px 5px;font-size:10px;font-weight:700}.project-list{align-content:start;gap:3px;min-height:0;padding-right:2px;display:grid;overflow:hidden auto}.project-item-row{min-width:0;min-height:34px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:minmax(0,1fr) 24px;align-items:center;gap:3px;padding:3px;display:grid}.project-item-row:hover,.project-item-row.open{border-color:var(--border);color:var(--text);background:#ffffff0a}.project-item-row.open{border-color:#78ba8f59}.project-item-main{min-width:0;min-height:28px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;grid-template-columns:17px minmax(0,1fr) auto;align-items:center;gap:7px;padding:0 4px;display:grid}.project-item-main:hover{background:#ffffff0b}.project-item-main .svg-icon{color:var(--faint)}.project-item-copy{gap:1px;min-width:0;display:grid}.project-item-title,.project-item-path{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.project-item-title{color:var(--text);font-size:12px;font-weight:650}.project-item-path{color:var(--faint);font:10px/1.25 ui-monospace,SF Mono,Menlo,Consolas,monospace}.project-open-dot{background:var(--accent-2);border-radius:50%;width:7px;height:7px;box-shadow:0 0 7px #78ba8f9e}.project-remove-button{width:22px;height:22px;color:var(--faint);cursor:pointer;opacity:.1;background:0 0;border:0;border-radius:5px;place-items:center;display:grid}.project-remove-button:hover,.project-remove-button:focus-visible,.project-item-row:hover .project-remove-button{opacity:1}.project-remove-button:hover{color:#f09a9a;background:#e067671f}.project-remove-button .svg-icon{width:13px;height:13px}.status-chip{border:1px solid var(--border);color:var(--muted);letter-spacing:0;text-transform:none;padding:3px 7px;font-size:10px}.status-chip.running{color:#91d8a6;border-color:#78ba8f73}.status-chip.starting{color:#9fc8ea;border-color:#73a9d973}.status-chip.error{color:#f09a9a;border-color:#e0676773}.runtime-panel{flex-direction:column;flex:none;display:flex}.project-sessions-panel{min-height:0}.runtime-list{gap:8px;min-height:0;max-height:min(260px,36dvh);padding:0 8px 10px;display:grid;overflow-y:auto}.project-session-tree{max-height:min(360px,42dvh)}.runtime-project-group{background:#ffffff06;border:1px solid #0000;border-radius:6px;overflow:hidden}.runtime-project-group:hover,.runtime-project-group.active{border-color:var(--border);background:#ffffff0a}.runtime-project-group.active{border-color:#d59b2d6b}.runtime-project-header{border-bottom:1px solid #ffffff0e;grid-template-columns:minmax(0,1fr) 24px;align-items:center;gap:4px;min-width:0;min-height:42px;padding:4px;display:grid}.runtime-project-group.collapsed .runtime-project-header{border-bottom:0}.runtime-project-toggle{min-width:0;min-height:34px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;grid-template-columns:12px 18px minmax(0,1fr) auto auto;align-items:center;gap:7px;padding:0 5px;display:grid}.runtime-project-toggle:hover{background:#ffffff0b}.runtime-chevron{color:var(--faint);place-items:center;display:grid}.runtime-chevron .svg-icon{width:12px;height:12px;transition:transform .12s}.runtime-project-group.open .runtime-chevron .svg-icon{transform:rotate(90deg)}.runtime-project-header .svg-icon{color:var(--faint)}.runtime-project-copy,.runtime-session-copy{min-width:0}.runtime-project-copy{gap:2px;display:grid}.runtime-session-count{color:var(--faint);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:10px}.runtime-status-stack{align-items:center;gap:3px;display:inline-flex}.runtime-status-stack .status-dot{width:6px;height:6px}.runtime-add-session{color:#f0bd62}.runtime-session-list{gap:2px;padding:3px;display:grid}.runtime-session-row{border:0;border-radius:5px;grid-template-columns:minmax(0,1fr);align-items:stretch;min-height:32px;padding:2px;display:grid}.runtime-session-row:hover,.runtime-session-row.active{background:var(--panel)}.runtime-session-row.active{background:#d59b2d1f}.runtime-session-main{min-width:0;min-height:32px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0 7px;display:flex}.runtime-session-actions{flex-wrap:wrap;gap:4px;min-width:0;padding:0 6px 6px 26px;display:flex}.runtime-session-action,.runtime-session-icon{min-width:0;min-height:24px;color:var(--muted);cursor:pointer;background:#ffffff09;border:1px solid #ffffff14;border-radius:5px;justify-content:center;align-items:center;gap:4px;padding:0 7px;font:10px/1 inherit;display:inline-flex}.runtime-session-action.primary{color:#f0bd62;background:#d59b2d14;border-color:#d59b2d57}.runtime-session-action:hover:not(:disabled),.runtime-session-icon:hover:not(:disabled){color:var(--text);background:#ffffff12}.runtime-session-action:disabled,.runtime-session-icon:disabled{cursor:not-allowed;opacity:.42}.runtime-session-icon{width:24px;padding:0}.runtime-session-icon.danger:hover:not(:disabled){color:#f09a9a;background:#e067671a;border-color:#e0676757}.runtime-session-action .svg-icon,.runtime-session-icon .svg-icon{flex:none;width:13px;height:13px}.runtime-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:650;display:block;overflow:hidden}.runtime-session-title,.runtime-session-meta{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.runtime-session-title{color:var(--text);font-size:12px;font-weight:650}.runtime-session-meta{color:var(--faint);margin-top:1px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:10px}.runtime-kind{color:#f0bd62;text-transform:uppercase;letter-spacing:.08em;margin-top:2px;font-size:10px;font-weight:650;display:block}.icon-button{width:24px;height:24px;color:var(--faint);background:0 0;border:0;padding:0}.stage{background:linear-gradient(#78ba8f0a,#0000 40%),#101114;grid-column:2;place-items:center;min-width:0;min-height:0;padding:28px;display:grid;overflow:auto}.stage-mounted{background:#101114}.mount-shadow{width:100%;height:100%}.stage-card{border:1px solid var(--border);background:var(--panel);border-radius:8px;width:min(560px,100%);max-height:calc(100dvh - 56px);padding:26px;overflow:auto}.stage-kicker{color:#f0bd62;letter-spacing:.1em;text-transform:uppercase;font-size:11px}.stage-card h1{letter-spacing:0;margin:8px 0 18px;font-size:32px;line-height:1.05}.stage-path{color:var(--muted);overflow-wrap:anywhere;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12px}.stage-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.runtime-error,.error-card pre{color:#f09a9a;white-space:pre-wrap;overflow-wrap:anywhere}.runtime-error{margin-top:10px;font-size:12px}.runtime-log-details{background:#00000029;border:1px solid #ffffff14;border-radius:6px;margin-top:10px}.runtime-log-details summary{min-height:30px;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:8px;padding:0 9px;font-size:11px;display:flex}.runtime-log-details summary span{color:var(--faint);font-variant-numeric:tabular-nums}.runtime-log-details pre{max-height:160px;color:var(--muted);overflow-wrap:anywhere;white-space:pre-wrap;border-top:1px solid #ffffff14;margin:0;padding:8px 9px 10px;font:11px/1.45 ui-monospace,SF Mono,Menlo,Consolas,monospace;overflow:auto}.error-card pre{margin:0;font:12px/1.5 ui-monospace,SF Mono,Menlo,Consolas,monospace}.status-dot{background:var(--faint);border-radius:50%;flex:none;width:8px;height:8px}.status-running{background:var(--accent-2);box-shadow:0 0 8px #78ba8fa6}.status-starting{background:var(--blue)}.status-error{background:var(--red)}.status-stopped{background:var(--faint)}
@@ -0,0 +1,395 @@
1
+ (function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var e=`wrongstack.desktop.locale`;function t(e){try{window.wrongstackDesktop?.setLocale?.(e)}catch{}}function n(){try{let t=localStorage.getItem(e);if(t&&t in l)return t}catch{}return`en`}var r=n();function i(n,i={}){if(n!==r){r=n;try{localStorage.setItem(e,n)}catch{}i.propagate!==!1&&t(n);for(let e of o)e()}}function a(){return r}var o=new Set;function s(e){return o.add(e),()=>{o.delete(e)}}var c=[`en`,`tr`,`de`,`fr`,`it`,`es`,`pt-BR`],l={en:{desktopNavAria:`Desktop navigation`,openProjectFolderTitle:`Open project folder`,dismiss:`Dismiss`,active:`Active`,globalSettingsWorkspace:`Global settings workspace`,newSession:`New Session`,revealProjectFolder:`Reveal project folder`,registerProjectFolder:`Register project folder`,findProject:`Find project`,clearProjectSearch:`Clear project search`,register:`Register`,projectLists:`Project lists`,removeFromRegistry:`Remove from project registry`,none:`None`,quickView:`Quick view`,openChat:`Open chat`,openTerminal:`Open terminal`,term:`Term`,openFiles:`Open files`,files:`Files`,openInBrowser:`Open in browser`,closeSession:`Close session`,runtimeError:`Runtime Error`,openProject:`Open Project`,restoring:`Restoring`,workspace:`Workspace`,projects:`Projects`,quick:`Quick`,quickActions:`Quick actions`,all:`All`,recent:`Recent`,registered:`Registered`,globalSettings:`Global Settings`,settings:`Settings`,webui:`WebUI`,webuiCommands:`WebUI commands`,webuiReady:`WebUI ready`,webuiLoading:`WebUI loading`,webuiError:`WebUI error`,webuiIdle:`WebUI idle`,noActiveWebui:`No active WebUI`,chat:`Chat`,terminal:`Terminal`,newTerm:`New Term`,prompt:`Prompt`,command:`Command`,compact:`Compact`,yolo:`YOLO`,ready:`Ready`,loading:`Loading`,idle:`Idle`,error:`Error`,offline:`Offline`,running:`Running`,starting:`Starting`,stopped:`Stopped`,noProject:`No project`,noMatchingProjects:`No matching projects`,noRegisteredProjects:`No registered projects`,noOpenProjectSessions:`No open project sessions`,unknownError:`Unknown error`,next:`Next`,collapseSidebar:`Collapse desktop sidebar`,expandSidebar:`Expand desktop sidebar`,gs:`GS`,sessions:`Sessions`,runtimes:`Runtimes`,launcherError:`The active WebUI did not handle that launcher command. Try Reload if the view is still starting.`,sessionLauncherError:`That session WebUI did not handle the command yet. Try Reload if it is still starting.`,operationFailed:`Operation failed.`},tr:{desktopNavAria:`Masaüstü navigasyon`,openProjectFolderTitle:`Proje klasörünü aç`,dismiss:`Kapat`,active:`Aktif`,globalSettingsWorkspace:`Genel ayarlar çalışma alanı`,newSession:`Yeni Oturum`,revealProjectFolder:`Proje klasörünü göster`,registerProjectFolder:`Proje klasörünü kaydet`,findProject:`Proje bul`,clearProjectSearch:`Proje aramasını temizle`,register:`Kaydet`,projectLists:`Proje listeleri`,removeFromRegistry:`Proje kaydından kaldır`,none:`Yok`,quickView:`Hızlı görünüm`,openChat:`Sohbeti aç`,openTerminal:`Terminali aç`,term:`Term`,openFiles:`Dosyaları aç`,files:`Dosyalar`,openInBrowser:`Tarayıcıda aç`,closeSession:`Oturumu kapat`,runtimeError:`Çalışma Zamanı Hatası`,openProject:`Proje Aç`,restoring:`Geri yükleniyor`,workspace:`Çalışma alanı`,projects:`Projeler`,quick:`Hızlı`,quickActions:`Hızlı eylemler`,all:`Tümü`,recent:`Son`,registered:`Kayıtlı`,globalSettings:`Genel Ayarlar`,settings:`Ayarlar`,webui:`WebUI`,webuiCommands:`WebUI komutları`,webuiReady:`WebUI hazır`,webuiLoading:`WebUI yükleniyor`,webuiError:`WebUI hatası`,webuiIdle:`WebUI boşta`,noActiveWebui:`Etkin WebUI yok`,chat:`Sohbet`,terminal:`Terminal`,newTerm:`Yeni Terminal`,prompt:`İstem`,command:`Komut`,compact:`Sıkışık`,yolo:`YOLO`,ready:`Hazır`,loading:`Yükleniyor`,idle:`Boşta`,error:`Hata`,offline:`Çevrimdışı`,running:`Çalışıyor`,starting:`Başlatılıyor`,stopped:`Durduruldu`,noProject:`Proje yok`,noMatchingProjects:`Eşleşen proje yok`,noRegisteredProjects:`Kayıtlı proje yok`,noOpenProjectSessions:`Açık proje oturumu yok`,unknownError:`Bilinmeyen hata`,next:`İleri`,collapseSidebar:`Masaüstü kenar çubuğunu daralt`,expandSidebar:`Masaüstü kenar çubuğunu genişlet`,gs:`GA`,sessions:`Oturumlar`,runtimes:`Çalışma zamanları`},de:{desktopNavAria:`Desktop-Navigation`,openProjectFolderTitle:`Projektordner öffnen`,dismiss:`Verwerfen`,active:`Aktiv`,globalSettingsWorkspace:`Globale Einstellungen-Workspace`,newSession:`Neue Sitzung`,revealProjectFolder:`Projektordner anzeigen`,registerProjectFolder:`Projektordner registrieren`,findProject:`Projekt finden`,clearProjectSearch:`Projektsuche löschen`,register:`Registrieren`,projectLists:`Projektlisten`,removeFromRegistry:`Aus Projekt-Registry entfernen`,none:`Keine`,quickView:`Schnellansicht`,openChat:`Chat öffnen`,openTerminal:`Terminal öffnen`,term:`Term`,openFiles:`Dateien öffnen`,files:`Dateien`,openInBrowser:`Im Browser öffnen`,closeSession:`Sitzung schließen`,runtimeError:`Laufzeitfehler`,openProject:`Projekt öffnen`,restoring:`Wiederherstellen`,workspace:`Workspace`,projects:`Projekte`,quick:`Schnell`,quickActions:`Schnellaktionen`,all:`Alle`,recent:`Zuletzt`,registered:`Registriert`,globalSettings:`Globale Einstellungen`,settings:`Einstellungen`,webui:`WebUI`,webuiCommands:`WebUI-Befehle`,webuiReady:`WebUI bereit`,webuiLoading:`WebUI lädt`,webuiError:`WebUI-Fehler`,webuiIdle:`WebUI inaktiv`,noActiveWebui:`Kein aktives WebUI`,chat:`Chat`,terminal:`Terminal`,newTerm:`Neues Terminal`,prompt:`Prompt`,command:`Befehl`,compact:`Kompakt`,yolo:`YOLO`,ready:`Bereit`,loading:`Lädt`,idle:`Inaktiv`,error:`Fehler`,offline:`Offline`,running:`Läuft`,starting:`Startet`,stopped:`Gestoppt`,noProject:`Kein Projekt`,noMatchingProjects:`Keine passenden Projekte`,noRegisteredProjects:`Keine registrierten Projekte`,noOpenProjectSessions:`Keine offenen Projektsessions`,unknownError:`Unbekannter Fehler`,next:`Weiter`,collapseSidebar:`Desktop-Seitenleiste einklappen`,expandSidebar:`Desktop-Seitenleiste ausklappen`,gs:`GE`,sessions:`Sessions`,runtimes:`Runtimes`},fr:{desktopNavAria:`Navigation du bureau`,openProjectFolderTitle:`Ouvrir le dossier du projet`,dismiss:`Fermer`,active:`Actif`,globalSettingsWorkspace:`Espace des paramètres globaux`,newSession:`Nouvelle session`,revealProjectFolder:`Révéler le dossier du projet`,registerProjectFolder:`Enregistrer le dossier du projet`,findProject:`Rechercher un projet`,clearProjectSearch:`Effacer la recherche de projet`,register:`Enregistrer`,projectLists:`Listes de projets`,removeFromRegistry:`Retirer du registre des projets`,none:`Aucun`,quickView:`Vue rapide`,openChat:`Ouvrir le chat`,openTerminal:`Ouvrir le terminal`,term:`Term`,openFiles:`Ouvrir les fichiers`,files:`Fichiers`,openInBrowser:`Ouvrir dans le navigateur`,closeSession:`Fermer la session`,runtimeError:`Erreur d'exécution`,openProject:`Ouvrir un projet`,restoring:`Restauration`,workspace:`Espace de travail`,projects:`Projets`,quick:`Rapide`,quickActions:`Actions rapides`,all:`Tous`,recent:`Récents`,registered:`Enregistrés`,globalSettings:`Paramètres globaux`,settings:`Paramètres`,webui:`WebUI`,webuiCommands:`Commandes WebUI`,webuiReady:`WebUI prêt`,webuiLoading:`WebUI charge`,webuiError:`Erreur WebUI`,webuiIdle:`WebUI inactif`,noActiveWebui:`Pas de WebUI actif`,chat:`Chat`,terminal:`Terminal`,newTerm:`Nouveau terminal`,prompt:`Invite`,command:`Commande`,compact:`Compact`,yolo:`YOLO`,ready:`Prêt`,loading:`Chargement`,idle:`Inactif`,error:`Erreur`,offline:`Hors ligne`,running:`En cours`,starting:`Démarrage`,stopped:`Arrêté`,noProject:`Aucun projet`,noMatchingProjects:`Aucun projet correspondant`,noRegisteredProjects:`Aucun projet enregistré`,noOpenProjectSessions:`Aucune session de projet ouverte`,unknownError:`Erreur inconnue`,next:`Suivant`,collapseSidebar:`Réduire la barre latérale`,expandSidebar:`Agrandir la barre latérale`,gs:`PG`,sessions:`Sessions`,runtimes:`Runtimes`},it:{desktopNavAria:`Navigazione desktop`,openProjectFolderTitle:`Apri cartella progetto`,dismiss:`Chiudi`,active:`Attivo`,globalSettingsWorkspace:`Workspace impostazioni globali`,newSession:`Nuova sessione`,revealProjectFolder:`Rivela cartella progetto`,registerProjectFolder:`Registra cartella progetto`,findProject:`Trova progetto`,clearProjectSearch:`Cancella ricerca progetto`,register:`Registra`,projectLists:`Elenchi progetti`,removeFromRegistry:`Rimuovi dal registro progetti`,none:`Nessuno`,quickView:`Vista rapida`,openChat:`Apri chat`,openTerminal:`Apri terminale`,term:`Term`,openFiles:`Apri file`,files:`File`,openInBrowser:`Apri nel browser`,closeSession:`Chiudi sessione`,runtimeError:`Errore di runtime`,openProject:`Apri progetto`,restoring:`Ripristino`,workspace:`Workspace`,projects:`Progetti`,quick:`Rapido`,quickActions:`Azioni rapide`,all:`Tutti`,recent:`Recenti`,registered:`Registrati`,globalSettings:`Impostazioni globali`,settings:`Impostazioni`,webui:`WebUI`,webuiCommands:`Comandi WebUI`,webuiReady:`WebUI pronto`,webuiLoading:`WebUI carica`,webuiError:`Errore WebUI`,webuiIdle:`WebUI inattivo`,noActiveWebui:`Nessun WebUI attivo`,chat:`Chat`,terminal:`Terminale`,newTerm:`Nuovo terminale`,prompt:`Prompt`,command:`Comando`,compact:`Compatto`,yolo:`YOLO`,ready:`Pronto`,loading:`Caricamento`,idle:`Inattivo`,error:`Errore`,offline:`Offline`,running:`In corso`,starting:`Avvio`,stopped:`Fermato`,noProject:`Nessun progetto`,noMatchingProjects:`Nessun progetto corrispondente`,noRegisteredProjects:`Nessun progetto registrato`,noOpenProjectSessions:`Nessuna sessione di progetto aperta`,unknownError:`Errore sconosciuto`,next:`Avanti`,collapseSidebar:`Comprimi barra laterale`,expandSidebar:`Espandi barra laterale`,gs:`IG`,sessions:`Sessioni`,runtimes:`Runtime`},es:{desktopNavAria:`Navegación de escritorio`,openProjectFolderTitle:`Abrir carpeta del proyecto`,dismiss:`Cerrar`,active:`Activo`,globalSettingsWorkspace:`Espacio de ajustes globales`,newSession:`Nueva sesión`,revealProjectFolder:`Revelar carpeta del proyecto`,registerProjectFolder:`Registrar carpeta del proyecto`,findProject:`Buscar proyecto`,clearProjectSearch:`Borrar búsqueda de proyecto`,register:`Registrar`,projectLists:`Listas de proyectos`,removeFromRegistry:`Quitar del registro de proyectos`,none:`Ninguno`,quickView:`Vista rápida`,openChat:`Abrir chat`,openTerminal:`Abrir terminal`,term:`Term`,openFiles:`Abrir archivos`,files:`Archivos`,openInBrowser:`Abrir en el navegador`,closeSession:`Cerrar sesión`,runtimeError:`Error de ejecución`,openProject:`Abrir proyecto`,restoring:`Restaurando`,workspace:`Espacio de trabajo`,projects:`Proyectos`,quick:`Rápido`,quickActions:`Acciones rápidas`,all:`Todos`,recent:`Recientes`,registered:`Registrados`,globalSettings:`Ajustes globales`,settings:`Ajustes`,webui:`WebUI`,webuiCommands:`Comandos WebUI`,webuiReady:`WebUI listo`,webuiLoading:`WebUI cargando`,webuiError:`Error de WebUI`,webuiIdle:`WebUI inactivo`,noActiveWebui:`Sin WebUI activo`,chat:`Chat`,terminal:`Terminal`,newTerm:`Nuevo terminal`,prompt:`Indicación`,command:`Comando`,compact:`Compacto`,yolo:`YOLO`,ready:`Listo`,loading:`Cargando`,idle:`Inactivo`,error:`Error`,offline:`Desconectado`,running:`En ejecución`,starting:`Iniciando`,stopped:`Detenido`,noProject:`Sin proyecto`,noMatchingProjects:`Sin proyectos coincidentes`,noRegisteredProjects:`Sin proyectos registrados`,noOpenProjectSessions:`Sin sesiones de proyecto abiertas`,unknownError:`Error desconocido`,next:`Siguiente`,collapseSidebar:`Contraer barra lateral`,expandSidebar:`Expandir barra lateral`,gs:`AG`,sessions:`Sesiones`,runtimes:`Runtimes`},"pt-BR":{desktopNavAria:`Navegação do desktop`,openProjectFolderTitle:`Abrir pasta do projeto`,dismiss:`Dispensar`,active:`Ativo`,globalSettingsWorkspace:`Espaço de configurações globais`,newSession:`Nova sessão`,revealProjectFolder:`Revelar pasta do projeto`,registerProjectFolder:`Registrar pasta do projeto`,findProject:`Encontrar projeto`,clearProjectSearch:`Limpar busca de projeto`,register:`Registrar`,projectLists:`Listas de projetos`,removeFromRegistry:`Remover do registro de projetos`,none:`Nenhum`,quickView:`Vista rápida`,openChat:`Abrir chat`,openTerminal:`Abrir terminal`,term:`Term`,openFiles:`Abrir arquivos`,files:`Arquivos`,openInBrowser:`Abrir no navegador`,closeSession:`Fechar sessão`,runtimeError:`Erro de execução`,openProject:`Abrir projeto`,restoring:`Restaurando`,workspace:`Workspace`,projects:`Projetos`,quick:`Rápido`,quickActions:`Ações rápidas`,all:`Todos`,recent:`Recentes`,registered:`Registrados`,globalSettings:`Configurações globais`,settings:`Configurações`,webui:`WebUI`,webuiCommands:`Comandos WebUI`,webuiReady:`WebUI pronto`,webuiLoading:`WebUI carregando`,webuiError:`Erro WebUI`,webuiIdle:`WebUI inativo`,noActiveWebui:`Sem WebUI ativo`,chat:`Chat`,terminal:`Terminal`,newTerm:`Novo terminal`,prompt:`Prompt`,command:`Comando`,compact:`Compacto`,yolo:`YOLO`,ready:`Pronto`,loading:`Carregando`,idle:`Inativo`,error:`Erro`,offline:`Offline`,running:`Em execução`,starting:`Iniciando`,stopped:`Parado`,noProject:`Sem projeto`,noMatchingProjects:`Sem projetos correspondentes`,noRegisteredProjects:`Sem projetos registrados`,noOpenProjectSessions:`Sem sessões de projeto abertas`,unknownError:`Erro desconhecido`,next:`Próximo`,collapseSidebar:`Recolher barra lateral`,expandSidebar:`Expandir barra lateral`,gs:`CG`,sessions:`Sessões`,runtimes:`Runtimes`}};function u(e){return l[r]?.[e]??l.en[e]??e}try{window.wrongstackDesktop?.onLocaleChanged?.(e=>{e&&e in l&&i(e,{propagate:!1})})}catch{}var ee={en:`English`,tr:`Türkçe`,de:`Deutsch`,fr:`Français`,it:`Italiano`,es:`Español`,"pt-BR":`Português`},d=document.querySelector(`#app`);if(!d)throw Error(`Missing #app root`);var f=d,p={activeRuntimeId:null,runtimes:[],recentProjects:[],registeredProjects:[],restoring:!1},m={runtimeId:null,status:`idle`},h=!1,g=null,_=`wrongstack.desktop.runtimeGroups`,v=`wrongstack.desktop.sidebarCollapsed`,y=`wrongstack.desktop.panel`,b=`wrongstack.desktop.projectTab`,x=Ee(),S=De(),C=Oe(),w=Ae(),T=``,E=null,D=0;function te(){return p.runtimes.find(e=>e.id===p.activeRuntimeId)}function O(){let e=te();f.innerHTML=`
2
+ <div class="desktop-shell ${S?`shell-collapsed`:``}">
3
+ <aside class="sidebar">
4
+ ${ne()}
5
+ ${S?``:ae(e)}
6
+ </aside>
7
+
8
+ <main class="stage ${e?.status===`running`?`stage-mounted`:``}">
9
+ ${Se(e)}
10
+ </main>
11
+ </div>
12
+ `}function ne(){return`
13
+ <nav class="desktop-rail" aria-label="${u(`desktopNavAria`)}">
14
+ <div class="rail-brand" title="WrongStack Desktop">WS</div>
15
+ <div class="rail-section">
16
+ <button class="rail-button accent" title="${u(`openProjectFolderTitle`)}" data-action="open-project" ${h?`disabled`:``}>
17
+ ${$(`folder-plus`)}
18
+ </button>
19
+ ${k(u(`workspace`),`monitor`,`workspace`)}
20
+ ${k(u(`projects`),`folder`,`projects`,Z())}
21
+ ${k(u(`quickActions`),`command`,`quick`)}
22
+ </div>
23
+ ${re()}
24
+ <div class="rail-spacer"></div>
25
+ <select
26
+ class="rail-locale-select"
27
+ data-action="set-locale"
28
+ title="${u(`settings`)}"
29
+ aria-label="${u(`settings`)}"
30
+ >
31
+ ${c.map(e=>`<option value="${e}"${e===a()?` selected`:``}>${ee[e]??e}</option>`).join(``)}
32
+ </select>
33
+ <button class="rail-button" title="${u(`globalSettings`)}" data-action="open-settings" ${h?`disabled`:``}>
34
+ ${$(`settings`)}
35
+ </button>
36
+ <button
37
+ class="rail-button rail-toggle"
38
+ title="${u(S?`expandSidebar`:`collapseSidebar`)}"
39
+ data-action="toggle-shell-sidebar"
40
+ aria-label="${u(S?`expandSidebar`:`collapseSidebar`)}"
41
+ aria-pressed="${S?`true`:`false`}"
42
+ >
43
+ ${$(`chevron`)}
44
+ </button>
45
+ </nav>
46
+ `}function k(e,t,n,r){let i=C===n;return`
47
+ <button
48
+ class="rail-button ${i?`active`:``}"
49
+ title="${G(e)}"
50
+ data-action="select-desktop-panel"
51
+ data-panel="${G(n)}"
52
+ aria-pressed="${i?`true`:`false`}"
53
+ >
54
+ ${$(t)}
55
+ ${r?`<span class="rail-badge">${W(r)}</span>`:``}
56
+ </button>
57
+ `}function re(){return p.runtimes.length===0?``:`
58
+ <div class="rail-divider"></div>
59
+ <div class="rail-runtime-list">
60
+ ${p.runtimes.map(ie).join(``)}
61
+ </div>
62
+ `}function ie(e){return`
63
+ <button
64
+ class="rail-runtime ${e.id===p.activeRuntimeId?`active`:``}"
65
+ title="${G(`${e.name} · ${e.root}`)}"
66
+ data-action="activate"
67
+ data-runtime="${G(e.id)}"
68
+ >
69
+ <span class="status-dot status-${e.status}"></span>
70
+ <span>${W(Fe(e))}</span>
71
+ </button>
72
+ `}function ae(e){return`
73
+ <section class="sidebar-pane">
74
+ ${oe(e)}
75
+ ${se(e)}
76
+ </section>
77
+ `}function oe(e){let t=u(C===`projects`?`projects`:C===`quick`?`quick`:`workspace`),n=C===`projects`?`${Z()} projects`:C===`quick`?e?.status===`running`?u(`webuiCommands`):u(`noActiveWebui`):e?e.name:p.restoring?u(`restoring`):u(`noProject`);return`
78
+ <header class="pane-header">
79
+ <div class="pane-title-block">
80
+ <div class="pane-kicker">WrongStack</div>
81
+ <div class="pane-title">${W(t)}</div>
82
+ </div>
83
+ <div class="pane-subtitle" title="${G(n)}">${W(n)}</div>
84
+ </header>
85
+ `}function se(e){return C===`projects`?`
86
+ <div class="pane-body pane-body-scroll">
87
+ ${A()}
88
+ ${ce()}
89
+ </div>
90
+ `:C===`quick`?`
91
+ <div class="pane-body pane-body-scroll">
92
+ ${A()}
93
+ ${fe(e)}
94
+ ${le(e)}
95
+ </div>
96
+ `:`
97
+ <div class="pane-body workspace-pane">
98
+ <div class="workspace-main">
99
+ ${A()}
100
+ ${le(e)}
101
+ ${ge()}
102
+ </div>
103
+ <div class="workspace-projects">
104
+ ${M(`dock`)}
105
+ </div>
106
+ </div>
107
+ `}function ce(){return`
108
+ <div class="projects-menu-stack">
109
+ ${P()}
110
+ ${_e()}
111
+ ${M(`embedded`)}
112
+ </div>
113
+ `}function A(){return g?`
114
+ <div class="shell-error" role="alert">
115
+ <div class="shell-error-copy">${W(g)}</div>
116
+ <button class="icon-button" title="${u(`dismiss`)}" data-action="clear-error">
117
+ ${$(`x`)}
118
+ </button>
119
+ </div>
120
+ `:``}function le(e){return e?`
121
+ <section class="panel active-panel">
122
+ <header class="panel-header">
123
+ <span>${u(`active`)}</span>
124
+ <span class="status-chip ${e.status}">${W(Ce(e))}</span>
125
+ </header>
126
+ <div class="active-project">
127
+ <div class="active-title">${W(e.name)}</div>
128
+ ${e.kind===`global-settings`?`<div class="runtime-kind">${u(`globalSettingsWorkspace`)}</div>`:``}
129
+ <div class="active-path">${W(e.root)}</div>
130
+ <div class="active-meta">
131
+ <span>HTTP ${e.httpPort}</span>
132
+ <span>WS ${e.wsPort}</span>
133
+ </div>
134
+ ${ue(e)}
135
+ ${e.error?`<div class="runtime-error">${W(e.error)}</div>`:``}
136
+ ${j(e)}
137
+ </div>
138
+ <div class="action-row project-action-row ${e.kind===`project`?``:`compact-actions`}">
139
+ ${e.kind===`project`?`<button class="secondary-action project-session-action" data-action="new-project-session" data-runtime="${G(e.id)}">
140
+ ${$(`plus`)}<span>${u(`newSession`)}</span>
141
+ </button>`:``}
142
+ <button class="icon-tool-button" title="${u(`revealProjectFolder`)}" data-action="reveal-root" data-runtime="${G(e.id)}">
143
+ ${$(`folder`)}
144
+ </button>
145
+ <button class="icon-tool-button" title="${u(`openInBrowser`)}" data-action="open-browser" data-runtime="${G(e.id)}">
146
+ ${$(`external`)}
147
+ </button>
148
+ <button class="icon-tool-button" title="${u(`refresh`)}" data-action="reload-webui" data-runtime="${G(e.id)}">
149
+ ${$(`refresh`)}
150
+ </button>
151
+ </div>
152
+ </section>
153
+ `:`
154
+ <section class="panel active-panel">
155
+ <header class="panel-header">
156
+ <span>${u(`active`)}</span>
157
+ <span class="status-chip idle">${p.restoring?u(`restoring`):u(`idle`)}</span>
158
+ </header>
159
+ <div class="project-empty">${p.restoring?`${u(`restoring`)}...`:u(`noProject`)}</div>
160
+ </section>
161
+ `}function ue(e){let t=F(e),n=m.runtimeId===e.id&&m.pendingCommands?` · ${m.pendingCommands} queued`:``,r=de(e),i=u(t===`ready`?`webuiReady`:t===`loading`?`webuiLoading`:t===`error`?`webuiError`:`webuiIdle`);return`
162
+ <div class="webui-state">
163
+ <span class="status-dot status-${t===`ready`?`running`:t===`error`?`error`:t===`loading`?`starting`:`stopped`}"></span>
164
+ <span>${W(`${i}${n}${r}`)}</span>
165
+ ${m.error&&m.runtimeId===e.id?`<span class="webui-error">${W(m.error)}</span>`:``}
166
+ </div>
167
+ `}function de(e){if(m.runtimeId!==e.id||!m.prefs)return``;let t=[];return m.prefs.yolo===!0&&t.push(u(`yolo`)),m.prefs.nextPrediction===!0&&t.push(u(`next`)),m.prefs.contextAutoCompact===!0&&t.push(u(`compact`)),t.length>0?` · ${t.join(` · `)}`:``}function j(e){let t=e.recentLogs?.filter(e=>e.trim())??[];return t.length===0?``:`
168
+ <details class="runtime-log-details" ${e.status===`error`?`open`:``}>
169
+ <summary>WebUI output <span>${t.length}</span></summary>
170
+ <pre>${t.map(W).join(`
171
+ `)}</pre>
172
+ </details>
173
+ `}function fe(e){let t=!!(e&&e.status===`running`&&F(e)!==`error`),n=t?``:`disabled`,r=!!(e&&m.runtimeId===e.id&&m.prefs?.yolo===!0);return`
174
+ <section class="panel launcher-panel">
175
+ <header class="panel-header">
176
+ <span>${u(`quick`)}</span>
177
+ <span class="count">${u(t?`ready`:`offline`)}</span>
178
+ </header>
179
+ ${P()}
180
+ <div class="quick-action-grid">
181
+ ${[I(u(`chat`),`message`,{activity:`chat`,view:`chat`},n),I(u(`prompt`),`cursor`,{action:`focus-chat`},n),I(u(`terminal`),`terminal`,{terminal:!0},n),I(u(`newTerm`),`plus`,{terminal:`new`},n),I(u(`yolo`),`shield`,{pref:{key:`yolo`,toggle:!0}},n,r)].join(``)}
182
+ </div>
183
+ </section>
184
+ `}function M(e){let t=z([...p.recentProjects,...p.registeredProjects]),n=z(p.recentProjects),r=z(p.registeredProjects),i=w===`recent`?n:w===`registered`?r:t,a=T.trim(),o=a?i.filter(e=>he(e,a)):i,s=e===`dock`?8:e===`embedded`?18:48,c=o.slice(0,s),l=c.length,ee=o.length,d=t.length;return`
185
+ <section class="panel projects-panel projects-panel-${e}">
186
+ <header class="panel-header projects-header">
187
+ <span>${u(`projects`)}</span>
188
+ <span class="panel-header-actions">
189
+ <span class="count">${l}/${ee||d}</span>
190
+ <button class="panel-header-button" title="${u(`registerProjectFolder`)}" data-action="register-project" ${h?`disabled`:``}>
191
+ ${$(`folder-plus`)}
192
+ </button>
193
+ </span>
194
+ </header>
195
+ <div class="project-picker">
196
+ ${pe(n.length,r.length,t.length)}
197
+ <div class="project-search-row">
198
+ ${$(`search`)}
199
+ <input
200
+ class="project-search-input"
201
+ type="search"
202
+ value="${G(T)}"
203
+ placeholder="${u(`findProject`)}"
204
+ aria-label="${u(`findProject`)}"
205
+ autocomplete="off"
206
+ spellcheck="false"
207
+ />
208
+ ${T?`<button class="project-search-clear" title="${u(`clearProjectSearch`)}" data-action="clear-project-search">${$(`x`)}</button>`:``}
209
+ </div>
210
+ ${e===`full`||e===`embedded`?`<div class="project-picker-actions">
211
+ <button class="secondary-action compact-action" data-action="open-project" ${h?`disabled`:``}>
212
+ ${$(`folder`)}<span>${u(`open`)}</span>
213
+ </button>
214
+ <button class="secondary-action compact-action" data-action="register-project" ${h?`disabled`:``}>
215
+ ${$(`folder-plus`)}<span>${u(`register`)}</span>
216
+ </button>
217
+ </div>`:``}
218
+ ${c.length===0?`<div class="empty compact-empty">${u(d===0?`noRegisteredProjects`:`noMatchingProjects`)}</div>`:`<div class="project-list">${c.map(me).join(``)}</div>`}
219
+ </div>
220
+ </section>
221
+ `}function pe(e,t,n){return`
222
+ <div class="project-tabs" role="tablist" aria-label="${u(`projectLists`)}">
223
+ ${N(`recent`,u(`recent`),e)}
224
+ ${N(`registered`,u(`registered`),t)}
225
+ ${N(`all`,u(`all`),n)}
226
+ </div>
227
+ `}function N(e,t,n){let r=w===e;return`
228
+ <button
229
+ class="project-tab ${r?`active`:``}"
230
+ data-action="set-project-tab"
231
+ data-project-tab="${G(e)}"
232
+ role="tab"
233
+ aria-selected="${r?`true`:`false`}"
234
+ >
235
+ <span>${W(t)}</span>
236
+ <span>${n}</span>
237
+ </button>
238
+ `}function me(e){let t=p.runtimes.find(t=>ye(t.root,e.root)),n=e.name||B(e.root)||e.root,r=e.lastWorkingDir||e.root;return`
239
+ <div class="project-item-row ${t?`open`:``}">
240
+ <button
241
+ class="project-item-main"
242
+ data-action="${t?`activate`:`open-project-path`}"
243
+ ${t?`data-runtime="${G(t.id)}"`:`data-project-root="${G(e.root)}"`}
244
+ title="${G(e.root)}"
245
+ >
246
+ ${$(t?`project`:`folder`)}
247
+ <span class="project-item-copy">
248
+ <span class="project-item-title">${W(n)}</span>
249
+ <span class="project-item-path">${W(r)}</span>
250
+ </span>
251
+ ${t?`<span class="project-open-dot" title="${u(`open`)}"></span>`:``}
252
+ </button>
253
+ <button
254
+ class="project-remove-button"
255
+ data-action="unregister-project"
256
+ data-project-root="${G(e.root)}"
257
+ title="${u(`removeFromRegistry`)}"
258
+ aria-label="${u(`removeFromRegistry`)}"
259
+ >
260
+ ${$(`x`)}
261
+ </button>
262
+ </div>
263
+ `}function he(e,t){return[e.name,e.root,e.slug,e.lastWorkingDir].filter(Boolean).join(` `).toLowerCase().includes(t.toLowerCase())}function P(){if(!E)return``;let e=E.state===`success`?`check`:E.state===`error`?`x`:`pulse`,t=E.message??(E.state===`pending`?`Opening ${E.label}...`:E.state===`success`?`${E.label} opened`:`${E.label} failed`);return`
264
+ <div class="launcher-feedback ${E.state}" role="status">
265
+ ${$(e)}
266
+ <span>${W(t)}</span>
267
+ </div>
268
+ `}function F(e){return m.runtimeId===e.id?m.status:e.status===`running`?`loading`:`idle`}function I(e,t,n,r,i=!1){let a=X(n),o=E?.state===`pending`&&E.commandKey===a,s=r||o?`disabled`:``;return`
269
+ <button
270
+ class="shortcut-button ${i?`active-shortcut`:``} ${o?`pending-shortcut`:``}"
271
+ data-action="webui-command"
272
+ data-command="${G(a)}"
273
+ data-label="${G(e)}"
274
+ title="${G(e)}"
275
+ aria-pressed="${i?`true`:`false`}"
276
+ aria-busy="${o?`true`:`false`}"
277
+ ${s}
278
+ >
279
+ ${$(t)}<span>${W(e)}</span>
280
+ </button>
281
+ `}function ge(){let e=L(p.runtimes);return`
282
+ <section class="panel runtime-panel">
283
+ <header class="panel-header">
284
+ <span>${u(`runtimes`)}</span>
285
+ <span class="count">${e.length}/${p.runtimes.length}</span>
286
+ </header>
287
+ <div class="runtime-list">
288
+ ${p.runtimes.length===0?`<div class="empty">${u(`none`)}</div>`:e.map(V).join(``)}
289
+ </div>
290
+ </section>
291
+ `}function _e(){let e=L(p.runtimes).filter(e=>e.kind===`project`);return`
292
+ <section class="panel runtime-panel project-sessions-panel">
293
+ <header class="panel-header">
294
+ <span>${u(`sessions`)}</span>
295
+ <span class="count">${e.length}/${e.reduce((e,t)=>e+t.sessions.length,0)}</span>
296
+ </header>
297
+ <div class="runtime-list project-session-tree">
298
+ ${e.length===0?`<div class="empty compact-empty">${p.restoring?`${u(`restoring`)}...`:u(`noOpenProjectSessions`)}</div>`:e.map(V).join(``)}
299
+ </div>
300
+ </section>
301
+ `}function L(e){let t=new Map;for(let n of e){let e=ve(n),r=t.get(e);if(r){r.sessions.push(n);continue}t.set(e,{key:e,name:n.kind===`global-settings`?u(`globalSettings`):B(n.root)||n.name,root:n.root,kind:n.kind,sessions:[n]})}return[...t.values()]}function ve(e){return e.kind===`global-settings`?`global-settings`:`${e.kind}:${R(e.root)||e.id}`}function R(e){return e.replace(/\\/g,`/`).replace(/\/+$/g,``).trim().toLowerCase()}function ye(e,t){return R(e)===R(t)}function z(e){let t=new Set,n=[];for(let r of e){let e=R(r.root);!e||t.has(e)||(t.add(e),n.push(r))}return n}function B(e){let t=e.replace(/\\/g,`/`).replace(/\/+$/g,``).trim();return t?t.split(`/`).filter(Boolean).pop()??t:e}function V(e){let t=e.sessions.some(e=>e.id===p.activeRuntimeId),n=e.sessions[0],r=H(e),i=e.sessions.length===1?`1 session`:`${e.sessions.length} sessions`;return`
302
+ <div class="runtime-project-group ${t?`active`:``} ${r?`open`:`collapsed`}" data-runtime-group="${G(e.key)}">
303
+ <div class="runtime-project-header">
304
+ <button
305
+ class="runtime-project-toggle"
306
+ data-action="toggle-runtime-group"
307
+ data-runtime-group-key="${G(e.key)}"
308
+ aria-expanded="${r?`true`:`false`}"
309
+ title="${G(e.root)}"
310
+ >
311
+ <span class="runtime-chevron">${$(`chevron`)}</span>
312
+ ${$(e.kind===`global-settings`?`settings`:`folder`)}
313
+ <span class="runtime-project-copy">
314
+ <span class="runtime-name">${W(e.name)}</span>
315
+ <span class="runtime-path">${W(e.root)}</span>
316
+ </span>
317
+ ${be(e)}
318
+ <span class="runtime-session-count">${W(i)}</span>
319
+ </button>
320
+ ${e.kind===`project`&&n?`<button class="icon-button runtime-add-session" title="${u(`newSession`)}" data-action="new-project-session" data-runtime="${G(n.id)}">
321
+ ${$(`plus`)}
322
+ </button>`:``}
323
+ </div>
324
+ ${r?`<div class="runtime-session-list">
325
+ ${e.sessions.map((e,t)=>xe(e,t+1)).join(``)}
326
+ </div>`:``}
327
+ </div>
328
+ `}function H(e){if(e.sessions.some(e=>e.id===p.activeRuntimeId))return!0;let t=x[e.key];return typeof t==`boolean`?t:p.runtimes.length===e.sessions.length}function be(e){return`
329
+ <span class="runtime-status-stack" aria-hidden="true">
330
+ ${[`error`,`starting`,`running`,`stopped`].filter(t=>e.sessions.some(e=>e.status===t)).map(e=>`<span class="status-dot status-${G(e)}"></span>`).join(``)}
331
+ </span>
332
+ `}function xe(e,t){let n=e.id===p.activeRuntimeId,r=e.kind===`global-settings`?u(`settings`):`Session ${t}`,i=e.status===`error`?e.error??u(`error`):`HTTP ${e.httpPort} · WS ${e.wsPort}`,a=e.status===`running`?``:`disabled`;return`
333
+ <div class="runtime-session-row ${n?`active`:``}">
334
+ <button class="runtime-session-main" data-action="activate" data-runtime="${G(e.id)}" title="${G(e.root)}">
335
+ <span class="status-dot status-${e.status}"></span>
336
+ <span class="runtime-session-copy">
337
+ <span class="runtime-session-title">${W(r)}</span>
338
+ <span class="runtime-session-meta">${W(i)}</span>
339
+ </span>
340
+ </button>
341
+ <div class="runtime-session-actions" aria-label="${G(r)} actions">
342
+ <button class="runtime-session-action primary" title="${u(`quickView`)}" data-action="activate" data-runtime="${G(e.id)}">
343
+ ${$(`monitor`)}<span>${u(`quick`)}</span>
344
+ </button>
345
+ <button class="runtime-session-action" title="${u(`openChat`)}" data-action="session-webui-command" data-runtime="${G(e.id)}" data-command="${G(X({activity:`chat`,view:`chat`}))}" data-label="Chat" ${a}>
346
+ ${$(`message`)}<span>${u(`chat`)}</span>
347
+ </button>
348
+ <button class="runtime-session-action" title="${u(`openTerminal`)}" data-action="session-webui-command" data-runtime="${G(e.id)}" data-command="${G(X({terminal:`toggle`}))}" data-label="Terminal" ${a}>
349
+ ${$(`terminal`)}<span>${u(`term`)}</span>
350
+ </button>
351
+ <button class="runtime-session-action" title="${u(`openFiles`)}" data-action="session-webui-command" data-runtime="${G(e.id)}" data-command="${G(X({activity:`files`,view:`files`}))}" data-label="Files" ${a}>
352
+ ${$(`files`)}<span>${u(`files`)}</span>
353
+ </button>
354
+ <button class="runtime-session-icon" title="${u(`openInBrowser`)}" data-action="open-browser" data-runtime="${G(e.id)}" ${a}>
355
+ ${$(`external`)}
356
+ </button>
357
+ <button class="runtime-session-icon" title="${u(`refresh`)}" data-action="session-reload-webui" data-runtime="${G(e.id)}" ${a}>
358
+ ${$(`refresh`)}
359
+ </button>
360
+ <button class="runtime-session-icon danger" title="${u(`closeSession`)}" data-action="close" data-runtime="${G(e.id)}">
361
+ ${$(`x`)}
362
+ </button>
363
+ </div>
364
+ </div>
365
+ `}function Se(e){return e?.status===`running`?`<div class="mount-shadow"></div>`:e?.status===`starting`?`
366
+ <section class="stage-card">
367
+ <div class="stage-kicker">${u(`starting`)}</div>
368
+ <h1>${W(e.name)}</h1>
369
+ <div class="stage-path">${W(e.root)}</div>
370
+ </section>
371
+ `:e?.status===`error`?`
372
+ <section class="stage-card error-card">
373
+ <div class="stage-kicker">${u(`runtimeError`)}</div>
374
+ <h1>${W(e.name)}</h1>
375
+ <pre>${W(e.error??u(`unknownError`))}</pre>
376
+ ${j(e)}
377
+ </section>
378
+ `:`
379
+ <section class="stage-card">
380
+ <div class="stage-kicker">WrongStack Desktop</div>
381
+ <h1>${p.restoring?u(`restoring`):u(`openProject`)}</h1>
382
+ <div class="stage-actions">
383
+ <button class="primary-action inline" data-action="open-project" ${h?`disabled`:``}>
384
+ ${$(`folder-plus`)}<span>${u(`openProject`)}</span>
385
+ </button>
386
+ <button class="secondary-action inline" data-action="register-project" ${h?`disabled`:``}>
387
+ ${$(`folder`)}<span>${u(`register`)}</span>
388
+ </button>
389
+ <button class="secondary-action inline" data-action="open-settings" ${h?`disabled`:``}>
390
+ ${$(`settings`)}<span>${u(`settings`)}</span>
391
+ </button>
392
+ </div>
393
+ </section>
394
+ `}function Ce(e){return e.status===`starting`?u(`starting`):e.status===`running`?u(`running`):e.status===`error`?u(`error`):u(`stopped`)}async function we(){let[e,t]=await Promise.all([window.wrongstackDesktop.getState(),window.wrongstackDesktop.getWebuiStatus()]);p=e,m=t,O()}async function U(e){if(!h){h=!0,g=null,O();try{await e()}catch(e){g=Te(e),console.error(e)}finally{h=!1,O()}}}window.addEventListener(`keydown`,e=>{(e.ctrlKey||e.metaKey)&&e.key.toLowerCase()===`k`&&(e.preventDefault(),window.wrongstackDesktop.navigateWebui({action:`open-command-palette`}))}),f.addEventListener(`input`,e=>{let t=e.target;if(!t?.classList.contains(`project-search-input`))return;let n=t.selectionStart??t.value.length;T=t.value,O(),Ie(n)}),f.addEventListener(`change`,e=>{let t=e.target;if(t?.dataset.action!==`set-locale`)return;let n=c.find(e=>e===t.value);n&&n!==a()&&(i(n),O())}),f.addEventListener(`click`,e=>{let t=e.target?.closest(`[data-action]`);if(!t)return;let n=t.dataset.action,r=t.dataset.runtime;if(n===`webui-command`){let e=t.dataset.command;if(!e)return;let n=t.dataset.label??u(`command`),r=e;try{let t=JSON.parse(e);Q({state:`pending`,label:n,commandKey:r}),window.wrongstackDesktop.navigateWebui(t).then(e=>{if(e){Q({state:`success`,label:n,commandKey:r});return}let t=u(`launcherError`);g=t,Q({state:`error`,label:n,commandKey:r,message:t})})}catch{}return}if(n===`session-webui-command`){if(!r)return;let e=t.dataset.command;if(!e)return;let n=t.dataset.label??`WebUI`,i=e;try{let t=JSON.parse(e);Q({state:`pending`,label:n,commandKey:`${r}:${i}`}),U(async()=>{if(p=await window.wrongstackDesktop.activateRuntime(r),await window.wrongstackDesktop.navigateWebui(t)){Q({state:`success`,label:n,commandKey:`${r}:${i}`});return}let e=u(`sessionLauncherError`);g=e,Q({state:`error`,label:n,commandKey:`${r}:${i}`,message:e})})}catch{}return}if(n===`clear-error`){g=null,O();return}if(n===`clear-project-search`){T=``,O(),Ie(0);return}if(n===`toggle-shell-sidebar`){S=!S,K(),window.wrongstackDesktop.setShellSidebarCollapsed(S),O();return}if(n===`select-desktop-panel`){let e=J(t.dataset.panel);if(!e)return;C=e,ke(),O();return}if(n===`set-project-tab`){let e=Y(t.dataset.projectTab);if(!e)return;w=e,je(),O();return}if(n===`toggle-runtime-group`){let e=t.dataset.runtimeGroupKey;if(!e)return;let n=L(p.runtimes).find(t=>t.key===e);if(!n)return;x={...x,[e]:!H(n)},Ne(),O();return}U(async()=>{if(n===`open-project`)p=await window.wrongstackDesktop.openProject();else if(n===`register-project`)p=await window.wrongstackDesktop.registerProject();else if(n===`open-project-path`){let e=t.dataset.projectRoot;e&&(p=await window.wrongstackDesktop.openProject(e))}else if(n===`unregister-project`){let e=t.dataset.projectRoot;e&&(p=await window.wrongstackDesktop.unregisterProject(e))}else n===`new-project-session`?p=await window.wrongstackDesktop.openProjectSession(r):n===`open-settings`?p=await window.wrongstackDesktop.openSettings():n===`activate`&&r?p=await window.wrongstackDesktop.activateRuntime(r):n===`close`&&r?p=await window.wrongstackDesktop.closeRuntime(r):n===`open-browser`&&r?await window.wrongstackDesktop.openRuntimeInBrowser(r):n===`reveal-root`&&r?await window.wrongstackDesktop.revealRuntimeRoot(r):n===`reload-webui`&&r?await window.wrongstackDesktop.reloadWebui():n===`session-reload-webui`&&r&&(p=await window.wrongstackDesktop.activateRuntime(r),await window.wrongstackDesktop.reloadWebui())})}),window.wrongstackDesktop.onStateChanged(e=>{p=e,O()}),window.wrongstackDesktop.onWebuiStatusChanged(e=>{m=e,O()}),window.wrongstackDesktop.onShellSidebarCollapsedChanged(e=>{S=e,K(),O()}),s(()=>O()),we(),window.wrongstackDesktop.setShellSidebarCollapsed(S);function W(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`)}function G(e){return W(e).replace(/'/g,`&#39;`)}function Te(e){return e instanceof Error?e.message:typeof e==`string`?e:u(`operationFailed`)}function Ee(){return Me(_)}function De(){try{return window.localStorage.getItem(v)===`true`}catch{return!1}}function K(){try{window.localStorage.setItem(v,String(S))}catch{}}function Oe(){return J(q(y))??`workspace`}function ke(){try{window.localStorage.setItem(y,C)}catch{}}function Ae(){return Y(q(b))??`recent`}function je(){try{window.localStorage.setItem(b,w)}catch{}}function q(e){try{return window.localStorage.getItem(e)}catch{return null}}function J(e){return e===`workspace`||e===`projects`||e===`quick`?e:null}function Y(e){return e===`recent`||e===`registered`||e===`all`?e:null}function Me(e){try{let t=window.localStorage.getItem(e);if(!t)return{};let n=JSON.parse(t);if(!n||typeof n!=`object`||Array.isArray(n))return{};let r={};for(let[e,t]of Object.entries(n))typeof t==`boolean`&&(r[e]=t);return r}catch{return{}}}function Ne(){Pe(_,x)}function Pe(e,t){try{window.localStorage.setItem(e,JSON.stringify(t))}catch{}}function X(e){return JSON.stringify(e)}function Fe(e){let t=e.kind===`global-settings`?u(`gs`):e.name||B(e.root),n=t.replace(/[_-]+/g,` `).split(/\s+/).filter(Boolean);return(n.length>=2?`${n[0]?.[0]??``}${n[1]?.[0]??``}`:t.slice(0,2)).toUpperCase()}function Z(){return String(z([...p.recentProjects,...p.registeredProjects]).length)}function Q(e){D+=1;let t=D;E={id:t,...e},O(),e.state!==`pending`&&window.setTimeout(()=>{E?.id===t&&(E=null,O())},e.state===`success`?1250:3e3)}function Ie(e){window.requestAnimationFrame(()=>{let t=document.querySelector(`.project-search-input`);if(!t)return;t.focus();let n=Math.max(0,Math.min(e,t.value.length));t.setSelectionRange(n,n)})}var Le={agents:`<path d="M16 21v-2a4 4 0 0 0-4-4H7a4 4 0 0 0-4 4v2"></path><circle cx="9.5" cy="7" r="4"></circle><path d="M22 21v-2a4 4 0 0 0-3-3.9"></path><path d="M16 3.1a4 4 0 0 1 0 7.8"></path>`,branch:`<circle cx="6" cy="6" r="3"></circle><circle cx="18" cy="6" r="3"></circle><circle cx="18" cy="18" r="3"></circle><path d="M9 6h6"></path><path d="M18 9v6"></path><path d="M6 9v3a6 6 0 0 0 6 6h3"></path>`,chart:`<path d="M3 3v18h18"></path><rect x="7" y="12" width="3" height="5"></rect><rect x="12" y="8" width="3" height="9"></rect><rect x="17" y="5" width="3" height="12"></rect>`,check:`<path d="M20 6L9 17l-5-5"></path>`,checklist:`<path d="M9 6h11"></path><path d="M9 12h11"></path><path d="M9 18h11"></path><path d="M4 6l1 1 2-2"></path><path d="M4 12l1 1 2-2"></path><path d="M4 18l1 1 2-2"></path>`,chevron:`<path d="M9 18l6-6-6-6"></path>`,chip:`<rect x="7" y="7" width="10" height="10" rx="2"></rect><path d="M4 9h3"></path><path d="M4 15h3"></path><path d="M17 9h3"></path><path d="M17 15h3"></path><path d="M9 4v3"></path><path d="M15 4v3"></path><path d="M9 17v3"></path><path d="M15 17v3"></path>`,clock:`<circle cx="12" cy="12" r="9"></circle><path d="M12 7v5l3 2"></path>`,command:`<path d="M7 7h.01"></path><path d="M12 7h.01"></path><path d="M17 7h.01"></path><path d="M7 12h.01"></path><path d="M12 12h.01"></path><path d="M17 12h.01"></path><path d="M7 17h.01"></path><path d="M12 17h.01"></path><path d="M17 17h.01"></path>`,collab:`<circle cx="8" cy="8" r="3"></circle><circle cx="16" cy="8" r="3"></circle><path d="M3 20a5 5 0 0 1 10 0"></path><path d="M11 20a5 5 0 0 1 10 0"></path>`,compress:`<path d="M8 3v6H2"></path><path d="M16 3v6h6"></path><path d="M8 21v-6H2"></path><path d="M16 21v-6h6"></path>`,cursor:`<path d="M4 4l9 17 2-7 7-2L4 4z"></path>`,debug:`<path d="M8 2h8"></path><path d="M9 2v4"></path><path d="M15 2v4"></path><path d="M5 10h14"></path><path d="M7 10v4a5 5 0 0 0 10 0v-4"></path><path d="M3 14h4"></path><path d="M17 14h4"></path><path d="M4 20l3-3"></path><path d="M20 20l-3-3"></path>`,document:`<path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><path d="M14 2v6h6"></path><path d="M8 13h8"></path><path d="M8 17h6"></path>`,download:`<path d="M12 3v12"></path><path d="M7 10l5 5 5-5"></path><path d="M5 21h14"></path>`,external:`<path d="M15 3h6v6"></path><path d="M10 14L21 3"></path><path d="M21 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5"></path>`,files:`<path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><path d="M14 2v6h6"></path>`,folder:`<path d="M3 7a2 2 0 0 1 2-2h5l2 2h7a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path>`,"folder-plus":`<path d="M3 7a2 2 0 0 1 2-2h5l2 2h7a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path><path d="M12 11v5"></path><path d="M9.5 13.5h5"></path>`,git:`<path d="M7 7h10"></path><path d="M7 12h10"></path><path d="M7 17h10"></path><path d="M4 7h.01"></path><path d="M4 12h.01"></path><path d="M4 17h.01"></path>`,gallery:`<rect x="3" y="3" width="18" height="18" rx="2"></rect><circle cx="8.5" cy="8.5" r="1.5"></circle><path d="M21 15l-5-5L5 21"></path>`,history:`<path d="M3 12a9 9 0 1 0 3-6.7"></path><path d="M3 4v6h6"></path><path d="M12 7v5l3 2"></path>`,kanban:`<rect x="3" y="4" width="18" height="16" rx="2"></rect><path d="M9 4v16"></path><path d="M15 4v16"></path><path d="M6 8h.01"></path><path d="M12 12h.01"></path><path d="M18 9h.01"></path>`,keyboard:`<rect x="3" y="5" width="18" height="14" rx="2"></rect><path d="M7 9h.01"></path><path d="M11 9h.01"></path><path d="M15 9h.01"></path><path d="M19 9h.01"></path><path d="M7 13h.01"></path><path d="M11 13h.01"></path><path d="M15 13h.01"></path><path d="M7 17h10"></path>`,list:`<path d="M8 6h13"></path><path d="M8 12h13"></path><path d="M8 18h13"></path><path d="M3 6h.01"></path><path d="M3 12h.01"></path><path d="M3 18h.01"></path>`,mail:`<rect x="3" y="5" width="18" height="14" rx="2"></rect><path d="M3 7l9 6 9-6"></path>`,map:`<path d="M9 18l-6 3V6l6-3 6 3 6-3v15l-6 3-6-3z"></path><path d="M9 3v15"></path><path d="M15 6v15"></path>`,message:`<path d="M21 15a4 4 0 0 1-4 4H8l-5 3V7a4 4 0 0 1 4-4h10a4 4 0 0 1 4 4z"></path>`,monitor:`<rect x="3" y="4" width="18" height="14" rx="2"></rect><path d="M8 21h8"></path><path d="M12 18v3"></path><path d="M7 13l3-3 2 2 4-5 1 3"></path>`,phase:`<path d="M4 7h6"></path><path d="M14 7h6"></path><path d="M4 17h6"></path><path d="M14 17h6"></path><circle cx="12" cy="7" r="2"></circle><circle cx="12" cy="17" r="2"></circle><path d="M12 9v6"></path>`,plan:`<rect x="4" y="3" width="16" height="18" rx="2"></rect><path d="M8 8h8"></path><path d="M8 12h8"></path><path d="M8 16h5"></path>`,plus:`<path d="M12 5v14"></path><path d="M5 12h14"></path>`,project:`<rect x="3" y="4" width="18" height="16" rx="2"></rect><path d="M8 4v16"></path><path d="M8 9h13"></path>`,pulse:`<path d="M3 12h4l2-6 4 12 2-6h6"></path>`,refresh:`<path d="M21 12a9 9 0 0 1-15.4 6.4"></path><path d="M3 12A9 9 0 0 1 18.4 5.6"></path><path d="M18 2v5h-5"></path><path d="M6 22v-5h5"></path>`,search:`<circle cx="11" cy="11" r="7"></circle><path d="M21 21l-4.3-4.3"></path>`,settings:`<path d="M12 8a4 4 0 1 0 0 8 4 4 0 0 0 0-8z"></path><path d="M4 12a8 8 0 0 1 .2-1.8l-2-1.5 2-3.4 2.4 1a8 8 0 0 1 3-1.7L10 2h4l.4 2.6a8 8 0 0 1 3 1.7l2.4-1 2 3.4-2 1.5A8 8 0 0 1 20 12a8 8 0 0 1-.2 1.8l2 1.5-2 3.4-2.4-1a8 8 0 0 1-3 1.7L14 22h-4l-.4-2.6a8 8 0 0 1-3-1.7l-2.4 1-2-3.4 2-1.5A8 8 0 0 1 4 12z"></path>`,shield:`<path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"></path><path d="M9 12l2 2 4-5"></path>`,skill:`<path d="M12 2l2.5 6.5L21 11l-6.5 2.5L12 20l-2.5-6.5L3 11l6.5-2.5L12 2z"></path>`,spark:`<path d="M12 3l1.7 5.3L19 10l-5.3 1.7L12 17l-1.7-5.3L5 10l5.3-1.7L12 3z"></path><path d="M19 16l.8 2.2L22 19l-2.2.8L19 22l-.8-2.2L16 19l2.2-.8L19 16z"></path>`,target:`<circle cx="12" cy="12" r="9"></circle><circle cx="12" cy="12" r="5"></circle><circle cx="12" cy="12" r="1"></circle>`,tasks:`<path d="M4 6h2"></path><path d="M4 12h2"></path><path d="M4 18h2"></path><path d="M10 6h10"></path><path d="M10 12h10"></path><path d="M10 18h10"></path>`,terminal:`<path d="M4 17l6-5-6-5"></path><path d="M12 19h8"></path>`,wand:`<path d="M15 4l5 5"></path><path d="M14 5l-9 9 5 5 9-9"></path><path d="M5 3v4"></path><path d="M3 5h4"></path><path d="M19 17v4"></path><path d="M17 19h4"></path>`,x:`<path d="M18 6L6 18"></path><path d="M6 6l12 12"></path>`};function $(e){return`<svg class="svg-icon" viewBox="0 0 24 24" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">${Le[e]}</svg>`}
395
+ //# sourceMappingURL=index-Cq-Fc_6i.js.map