codebay 0.15.0 → 0.16.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/.mochi/manifest.json +490 -429
- package/.mochi/svelte-client/HydratableIsland-6y9p903x.js +1 -0
- package/.mochi/svelte-client/_hydrate-AppShell_2rtnxn6pgp2rh-nv6yzk0x.js +2 -0
- package/.mochi/svelte-client/_hydrate-AvatarsView_257s9yq1wwr4f-ry83ck8a.js +14 -0
- package/.mochi/svelte-client/_hydrate-InstanceView_2ma45l9bybfhl-vjt4jscf.js +3 -0
- package/.mochi/svelte-client/_hydrate-SettingsView_8hmarwmf8onq-1jdrk8x6.js +48 -0
- package/.mochi/svelte-client/{chunk-5pg0be5f.js → chunk-0vqvn81s.js} +1 -1
- package/.mochi/svelte-client/chunk-2dc6352a.js +1 -0
- package/.mochi/svelte-client/chunk-3cxaw5hr.js +2 -0
- package/.mochi/svelte-client/chunk-3jqc40sp.js +2 -0
- package/.mochi/svelte-client/chunk-3pgw6t5j.js +4 -0
- package/.mochi/svelte-client/chunk-7g3xt6ez.js +2 -0
- package/.mochi/svelte-client/chunk-b5s3mpg0.js +1 -0
- package/.mochi/svelte-client/chunk-bhseezf3.js +2 -0
- package/.mochi/svelte-client/chunk-bhwkq8er.js +1 -0
- package/.mochi/svelte-client/chunk-jm3ge348.js +1 -0
- package/.mochi/svelte-client/{chunk-ds9yn9cq.js → chunk-sxcr9gzp.js} +1 -1
- package/.mochi/svelte-client/{chunk-a2hty99b.js → chunk-tss2473w.js} +1 -1
- package/.mochi/svelte-compile/{App-68f9a9fq.server.js → App-8mpgrxza.server.js} +489 -295
- package/.mochi/svelte-compile/{Avatars-vyh3rwxx.server.js → Avatars-y5nf6q25.server.js} +102 -86
- package/.mochi/svelte-compile/{DefaultError-je52k17d.server.js → DefaultError-rrjye0s2.server.js} +1 -2
- package/.mochi/svelte-compile/{Instance-yfw7s5mp.server.js → Instance-3sbzyp0g.server.js} +186 -118
- package/.mochi/svelte-compile/{Settings-0b5t9kw9.server.js → Settings-ysvh5vhh.server.js} +739 -628
- package/.mochi/svelte-compile/chunk-7zaw9t5a.js +25 -0
- package/.mochi/svelte-compile/chunk-878xcmp4.js +65 -0
- package/.mochi/svelte-compile/chunk-d2z3qxxe.js +28 -0
- package/.mochi/svelte-compile/{chunk-60mpagr9.js → chunk-gnf5cnct.js} +661 -22
- package/.mochi/svelte-compile/{chunk-0y3wrae9.js → chunk-jq7jj8jd.js} +10 -6
- package/.mochi/svelte-compile/chunk-vr0e32mv.js +24 -0
- package/.mochi/svelte-compile/{chunk-apdte4nh.js → chunk-xmygdsj4.js} +35 -612
- package/.mochi/svelte-compile/{chunk-g0eravvj.js → chunk-zk4a9zms.js} +25 -17
- package/.mochi/svelte-css/DropZone-1zeitd761uwyd.css +1 -0
- package/.mochi/svelte-css/IdeBar-d3un7kuigxc5.css +1 -0
- package/.mochi/svelte-css/InstanceView-3ucotech5097w.css +1 -0
- package/README.md +13 -4
- package/migrations/0011_agent_run_rejected_structured_output.sql +2 -0
- package/package.json +9 -9
- package/src/__fixtures__/IdeBarStrip.svelte +41 -0
- package/src/avatars/dog.ts +1 -1
- package/src/avatars/lightning.ts +8 -9
- package/src/avatars/rocket.ts +4 -5
- package/src/components/AppShell.svelte +101 -1
- package/src/components/DropZone.svelte +77 -0
- package/src/components/HealthBox.svelte +6 -5
- package/src/components/IdeBar.svelte +222 -76
- package/src/components/InstanceView.svelte +75 -2
- package/src/components/SettingsView.svelte +87 -0
- package/src/components/TerminalPane.svelte +54 -0
- package/src/components/UiShowcase.svelte +19 -1
- package/src/container-injections/claude-code-install.ts +1 -1
- package/src/container-injections/claude-history.ts +52 -0
- package/src/container-injections/tmux.ts +6 -2
- package/src/index.ts +3 -0
- package/src/lib/agent-run-stream.ts +41 -1
- package/src/lib/agent-runs.server.ts +14 -3
- package/src/lib/config.server.ts +16 -1
- package/src/lib/db.server.ts +6 -2
- package/src/lib/devcontainer.server.ts +37 -4
- package/src/lib/injections.server.ts +5 -1
- package/src/lib/instances.server.ts +21 -4
- package/src/lib/log-capture.server.ts +46 -18
- package/src/lib/osc52.ts +18 -0
- package/src/lib/spawn.server.ts +7 -2
- package/src/lib/upload.ts +32 -0
- package/src/lib/uploads.server.ts +164 -0
- package/src/mcp/server.server.ts +4 -1
- package/src/mcp/tools.server.ts +178 -12
- package/src/pages/Instance.svelte +6 -2
- package/src/pages/Settings.svelte +3 -0
- package/src/routes.ts +16 -2
- package/src/types.ts +2 -0
- package/.mochi/svelte-client/HydratableIsland-smgsf0ma.js +0 -1
- package/.mochi/svelte-client/_hydrate-AppShell_2rtnxn6pgp2rh-9vc087ep.js +0 -2
- package/.mochi/svelte-client/_hydrate-AvatarsView_257s9yq1wwr4f-a48xq47a.js +0 -14
- package/.mochi/svelte-client/_hydrate-InstanceView_2ma45l9bybfhl-d4zehrqz.js +0 -3
- package/.mochi/svelte-client/_hydrate-SettingsView_8hmarwmf8onq-t5175pf5.js +0 -44
- package/.mochi/svelte-client/chunk-0mstgbtr.js +0 -2
- package/.mochi/svelte-client/chunk-0q9g0kpg.js +0 -1
- package/.mochi/svelte-client/chunk-3fwjzw1r.js +0 -1
- package/.mochi/svelte-client/chunk-fn03gxer.js +0 -4
- package/.mochi/svelte-client/chunk-jhgq7f65.js +0 -2
- package/.mochi/svelte-client/chunk-p5a07kx1.js +0 -1
- package/.mochi/svelte-client/chunk-p5wpyhsf.js +0 -2
- package/.mochi/svelte-client/chunk-t2kfvtb6.js +0 -2
- package/.mochi/svelte-client/chunk-v3wg9mdy.js +0 -1
- package/.mochi/svelte-compile/chunk-2qzc07gt.js +0 -34
- package/.mochi/svelte-compile/chunk-ef3hvegw.js +0 -21
- package/.mochi/svelte-compile/chunk-f9td8ej2.js +0 -24
- package/.mochi/svelte-compile/chunk-jx6h1xzp.js +0 -20
- package/.mochi/svelte-css/IdeBar-1mtgemqfuvqzi.css +0 -1
- package/.mochi/svelte-css/InstanceView-32j12hyg8v9u0.css +0 -1
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import {
|
|
3
|
-
Icon
|
|
4
|
-
} from "./chunk-60mpagr9.js";
|
|
5
|
-
|
|
6
|
-
// src/lib/links.ts
|
|
7
|
-
function forwardedPortUrl(hostPort) {
|
|
8
|
-
const host = typeof window === "undefined" ? "localhost" : window.location.hostname;
|
|
9
|
-
return `http://${host}:${hostPort}`;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
// src/components/StatusBadge.svelte
|
|
13
|
-
import"svelte/internal/flags/async";
|
|
14
|
-
import * as $ from "svelte/internal/server";
|
|
15
|
-
function StatusBadge($$renderer, $$props) {
|
|
16
|
-
let { status } = $$props;
|
|
17
|
-
const label = {
|
|
18
|
-
creating: "Booting\u2026",
|
|
19
|
-
running: "Running",
|
|
20
|
-
stopped: "Stopped",
|
|
21
|
-
error: "Error"
|
|
22
|
-
};
|
|
23
|
-
$$renderer.push(`<span${$.attr_class(`status ${$.stringify(status)}`, "svelte-1hqr9xd")}>${$.escape(label[status])}</span>`);
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
// node_modules/@lucide/svelte/dist/icons/chevron-right.svelte
|
|
27
|
-
import"svelte/internal/flags/async";
|
|
28
|
-
import * as $2 from "svelte/internal/server";
|
|
29
|
-
function Chevron_right($$renderer, $$props) {
|
|
30
|
-
let { $$slots, $$events, ...props } = $$props;
|
|
31
|
-
const iconNode = [["path", { d: "m9 18 6-6-6-6" }]];
|
|
32
|
-
Icon($$renderer, $2.spread_props([{ name: "chevron-right" }, props, { iconNode }]));
|
|
33
|
-
}
|
|
34
|
-
export { forwardedPortUrl, StatusBadge, Chevron_right };
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import {
|
|
3
|
-
Icon
|
|
4
|
-
} from "./chunk-60mpagr9.js";
|
|
5
|
-
|
|
6
|
-
// node_modules/@lucide/svelte/dist/icons/message-square.svelte
|
|
7
|
-
import"svelte/internal/flags/async";
|
|
8
|
-
import * as $ from "svelte/internal/server";
|
|
9
|
-
function Message_square($$renderer, $$props) {
|
|
10
|
-
let { $$slots, $$events, ...props } = $$props;
|
|
11
|
-
const iconNode = [
|
|
12
|
-
[
|
|
13
|
-
"path",
|
|
14
|
-
{
|
|
15
|
-
d: "M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"
|
|
16
|
-
}
|
|
17
|
-
]
|
|
18
|
-
];
|
|
19
|
-
Icon($$renderer, $.spread_props([{ name: "message-square" }, props, { iconNode }]));
|
|
20
|
-
}
|
|
21
|
-
export { Message_square };
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import {
|
|
3
|
-
Icon
|
|
4
|
-
} from "./chunk-60mpagr9.js";
|
|
5
|
-
|
|
6
|
-
// node_modules/@lucide/svelte/dist/icons/bot.svelte
|
|
7
|
-
import"svelte/internal/flags/async";
|
|
8
|
-
import * as $ from "svelte/internal/server";
|
|
9
|
-
function Bot($$renderer, $$props) {
|
|
10
|
-
let { $$slots, $$events, ...props } = $$props;
|
|
11
|
-
const iconNode = [
|
|
12
|
-
["path", { d: "M12 8V4H8" }],
|
|
13
|
-
[
|
|
14
|
-
"rect",
|
|
15
|
-
{ width: "16", height: "12", x: "4", y: "8", rx: "2" }
|
|
16
|
-
],
|
|
17
|
-
["path", { d: "M2 14h2" }],
|
|
18
|
-
["path", { d: "M20 14h2" }],
|
|
19
|
-
["path", { d: "M15 13v2" }],
|
|
20
|
-
["path", { d: "M9 13v2" }]
|
|
21
|
-
];
|
|
22
|
-
Icon($$renderer, $.spread_props([{ name: "bot" }, props, { iconNode }]));
|
|
23
|
-
}
|
|
24
|
-
export { Bot };
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import {
|
|
3
|
-
Icon
|
|
4
|
-
} from "./chunk-60mpagr9.js";
|
|
5
|
-
|
|
6
|
-
// node_modules/@lucide/svelte/dist/icons/rotate-ccw.svelte
|
|
7
|
-
import"svelte/internal/flags/async";
|
|
8
|
-
import * as $ from "svelte/internal/server";
|
|
9
|
-
function Rotate_ccw($$renderer, $$props) {
|
|
10
|
-
let { $$slots, $$events, ...props } = $$props;
|
|
11
|
-
const iconNode = [
|
|
12
|
-
[
|
|
13
|
-
"path",
|
|
14
|
-
{ d: "M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8" }
|
|
15
|
-
],
|
|
16
|
-
["path", { d: "M3 3v5h5" }]
|
|
17
|
-
];
|
|
18
|
-
Icon($$renderer, $.spread_props([{ name: "rotate-ccw" }, props, { iconNode }]));
|
|
19
|
-
}
|
|
20
|
-
export { Rotate_ccw };
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.right.svelte-r39acv{display:flex;align-items:stretch;margin-left:auto}.cog.svelte-r39acv,.reload.svelte-r39acv{display:inline-flex;color:var(--ink);border-left:1px solid var(--rule);flex:none;justify-content:center;align-items: center;width:48px}.reload.svelte-r39acv{appearance:none;cursor:pointer;background:0 0;border-top:0;border-bottom:0;border-right:0;padding:0}.cog.svelte-r39acv:hover,.reload.svelte-r39acv:hover{background:var(--fill);color:var(--fill-ink)}.strip.svelte-r39acv{display:flex;align-items:stretch;min-width:0}.viewport.svelte-r39acv{display:flex;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;min-width:0}.viewport.svelte-r39acv::-webkit-scrollbar{display:none}@media (prefers-reduced-motion:reduce){.viewport.svelte-r39acv{scroll-behavior:auto}}.tabs.svelte-r39acv{display:flex;flex:none;align-items:stretch}.page.svelte-r39acv{display:inline-flex;appearance:none;border:0;border-right:1px solid var(--rule);background:var(--bg-card);color:var(--ink);cursor:pointer;flex:none;justify-content:center;align-items: center;width:28px;margin:0;padding:0}.page.trailing.svelte-r39acv{border-right:0;border-left:1px solid var(--rule)}.page.svelte-r39acv:hover:not(:disabled){background:var(--fill);color:var(--fill-ink)}.page.svelte-r39acv:disabled{opacity:var(--dim);cursor:default}.page.svelte-r39acv:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.tab.svelte-r39acv{display:inline-flex;appearance:none;border:0;border-right:1px solid var(--rule);color:var(--ink-soft);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:0 0;flex:none;align-items: center;gap:10px;max-width:240px;margin:0;padding:0 12px;transition:background 80ms steps(2,end);font-size:13px;font-weight:700}.tab.svelte-r39acv:not(.active):hover{background:color-mix(in srgb,var(--ink)12%,transparent);color:var(--ink)}.tab.active.svelte-r39acv{background:var(--fill);color:var(--fill-ink);cursor:default;box-shadow:inset 0 3px 0 var(--bg)}.tab.svelte-r39acv:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.tab.active.svelte-r39acv:focus-visible{outline-color:var(--fill-ink)}.tab-name.svelte-r39acv{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tab-mode.svelte-r39acv{display:inline-flex;opacity:.7;border:1px solid;flex:none;justify-content:center;align-items: center;width:18px;height:18px}.attn.svelte-r39acv{border:1px solid var(--edge);animation:svelte-r39acv-tab-attn-pulse 1.4s ease-in-out infinite;flex:none;width:10px;height:10px}.attn.done.svelte-r39acv{background:var(--attn-done);color:var(--attn-done)}.attn.waiting.svelte-r39acv{background:var(--attn-waiting);color:var(--attn-waiting)}@keyframes svelte-r39acv-tab-attn-pulse{0%,to{box-shadow:0 0 #0000;filter:brightness(.85)}50%{box-shadow:0 0 6px 2px color-mix(in srgb,currentColor 60%,transparent);filter:brightness(1.15)}}@media (prefers-reduced-motion:reduce){.attn.svelte-r39acv{animation:none;filter:none}}.tab.editing.svelte-r39acv{cursor:default}.tab-name-edit.svelte-r39acv{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--ink);background:var(--bg);color:var(--ink);width:148px;margin:0;padding:3px 6px;font-size:12px}.tab-name-edit.svelte-r39acv:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.topbar.svelte-15fxkvm{display:flex;border-bottom:1px solid var(--rule);align-items: center;gap:18px;padding:16px 24px}.back.svelte-15fxkvm{display:inline-flex;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);text-decoration:none;align-items: center;gap:5px;font-size:12px}.back.svelte-15fxkvm:hover{color:var(--ink)}.title.svelte-15fxkvm{display:flex;flex:1;align-items: center;gap:12px}.name.svelte-15fxkvm{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.03em;font-size:20px;font-weight:700}.open.svelte-15fxkvm{display:inline-flex;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink);text-decoration:none;border:1px solid var(--edge);align-items: center;gap:6px;padding:7px 12px;font-size:12px;font-weight:600}.open.svelte-15fxkvm:hover{background:var(--fill);border-color:var(--fill);color:var(--fill-ink)}.restart.svelte-15fxkvm{display:inline-flex;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink);background:var(--bg);border:1px solid var(--edge);cursor:pointer;align-items: center;gap:6px;padding:7px 12px;font-size:12px;font-weight:600}.restart.svelte-15fxkvm:hover:not(:disabled){background:var(--fill);border-color:var(--fill);color:var(--fill-ink)}.restart.svelte-15fxkvm:disabled{opacity:var(--dim-panel);cursor:not-allowed}.restart-err.svelte-15fxkvm{font-family:var(--font-mono);color:var(--danger);margin:0;padding:8px 24px 0;font-size:12px}.stage.svelte-15fxkvm{max-width:1200px;margin:0 auto;padding:20px 24px 40px}.meta.svelte-15fxkvm{display:grid;grid-template-columns:max-content 1fr;align-items: center;gap:6px 14px;margin-bottom:18px}.meta.svelte-15fxkvm .k:where(.svelte-15fxkvm){font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-size:12px;font-weight:700}.meta.svelte-15fxkvm code:where(.svelte-15fxkvm){font-family:var(--font-mono);color:var(--ink-soft);font-size:13px}.meta.svelte-15fxkvm code.muted:where(.svelte-15fxkvm){color:var(--ink-faint)}.healthslot.svelte-15fxkvm,.ports.svelte-15fxkvm{margin-bottom:18px}.ports-bar.svelte-15fxkvm{display:flex;justify-content:space-between;align-items: center}.rebuild.svelte-15fxkvm{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;background:var(--fill-ink);color:var(--fill);border:1px solid var(--fill-ink);cursor:pointer;padding:4px 9px;font-size:10px;font-weight:600}.rebuild.svelte-15fxkvm:hover:not(:disabled){color:var(--fill-ink);background:0 0}.rebuild.svelte-15fxkvm:disabled{opacity:var(--dim-panel);cursor:not-allowed}.ports-body.svelte-15fxkvm{background:var(--bg-card);padding:12px 14px 14px}.port-list.svelte-15fxkvm{list-style:none;display:flex;flex-direction:column;gap:6px;margin:0 0 12px;padding:0}.port-list.svelte-15fxkvm li:where(.svelte-15fxkvm){display:flex;font-family:var(--font-mono);align-items: center;gap:8px;font-size:13px}.port-list.svelte-15fxkvm .cp:where(.svelte-15fxkvm){color:var(--ink);font-weight:600}.port-list.svelte-15fxkvm .arr:where(.svelte-15fxkvm){color:var(--ink-faint)}.port-list.svelte-15fxkvm a:where(.svelte-15fxkvm){display:inline-flex;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink-faint);align-items: center;gap:4px}.port-list.svelte-15fxkvm a:where(.svelte-15fxkvm):hover{border-bottom-color:var(--ink)}.rm.svelte-15fxkvm{border:1px solid var(--ink-faint);color:var(--ink-soft);cursor:pointer;background:0 0;width:20px;height:20px;margin-left:auto;font-size:15px;line-height:1}.rm.svelte-15fxkvm:hover{border-color:var(--danger);color:var(--danger)}.empty.svelte-15fxkvm{font-family:var(--font-mono);color:var(--ink-faint);margin:0 0 12px;font-size:12px}.add.svelte-15fxkvm{display:flex;gap:8px}.add.svelte-15fxkvm input:where(.svelte-15fxkvm){font-family:var(--font-mono);border:1px solid var(--ink);background:var(--bg);color:var(--ink);outline:none;flex:1;min-width:0;padding:6px 9px;font-size:13px}.add.svelte-15fxkvm button:where(.svelte-15fxkvm){font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--edge);background:var(--bg-card);color:var(--ink);cursor:pointer;padding:6px 14px;font-size:12px;font-weight:600}.add.svelte-15fxkvm button:where(.svelte-15fxkvm):hover{background:var(--fill);border-color:var(--fill);color:var(--fill-ink)}.port-err.svelte-15fxkvm{font-family:var(--font-mono);color:var(--danger);margin:10px 0 0;font-size:12px}.hint.svelte-15fxkvm{font-family:var(--font-mono);color:var(--ink-faint);margin:10px 0 0;font-size:11px}.hint.pending.svelte-15fxkvm{color:var(--ink-soft)}.hint.svelte-15fxkvm code:where(.svelte-15fxkvm){color:var(--ink)}.logwrap.svelte-15fxkvm{overflow:hidden}.log-bar.svelte-15fxkvm{display:flex;justify-content:space-between;align-items: center}.log-actions.svelte-15fxkvm{display:flex;align-items: center;gap:6px}.copy.svelte-15fxkvm{display:inline-flex;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;background:var(--fill-ink);color:var(--fill);border:1px solid var(--fill-ink);cursor:pointer;align-items: center;gap:5px;padding:4px 9px;font-size:10px;font-weight:600}.copy.svelte-15fxkvm:hover:not(:disabled),.copy.active.svelte-15fxkvm{color:var(--fill-ink);background:0 0}.dot.svelte-15fxkvm{background:var(--live-dot);border-radius:50%;flex:none;width:6px;height:6px}.copy.svelte-15fxkvm:disabled{opacity:var(--dim-panel);cursor:not-allowed}.logs.svelte-15fxkvm{position:relative;background:repeating-linear-gradient(0deg,var(--screen-line)0 1px,transparent 1px 3px),var(--screen-bg);color:var(--screen-ink);overflow:auto;overflow-anchor:none;height:calc(100vh - 320px);min-height:360px;padding:14px}.logs.svelte-15fxkvm pre:where(.svelte-15fxkvm){font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;margin:0;font-size:12.5px;line-height:1.5}@keyframes svelte-15fxkvm-lcd-blink{50%{background:0 0}}.caret.svelte-15fxkvm{display:inline-block;background:var(--screen-ink);vertical-align:text-bottom;animation:svelte-15fxkvm-lcd-blink 1.05s steps(1)infinite;width:.6em;height:1.05em;margin-left:2px}.err.svelte-15fxkvm{background:var(--bg-card);color:var(--ink);border-top:2px solid var(--ink);font-family:var(--font-mono);padding:12px 14px;font-size:13px}
|