codebay 0.11.1 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.mochi/manifest.json +116 -108
- package/.mochi/svelte-client/HydratableIsland-4j3bazeq.js +1 -0
- package/.mochi/svelte-client/{_hydrate-AppShell_2rtnxn6pgp2rh-v65ctd99.js → _hydrate-AppShell_2rtnxn6pgp2rh-aqm4k957.js} +2 -2
- package/.mochi/svelte-client/{_hydrate-AvatarsView_257s9yq1wwr4f-htjfv8q9.js → _hydrate-AvatarsView_257s9yq1wwr4f-m7h7xdxn.js} +1 -1
- package/.mochi/svelte-client/{_hydrate-InstanceView_2ma45l9bybfhl-v07seqge.js → _hydrate-InstanceView_2ma45l9bybfhl-d256bw54.js} +1 -1
- package/.mochi/svelte-client/_hydrate-SettingsView_8hmarwmf8onq-pwbtv8ma.js +39 -0
- package/.mochi/svelte-client/{chunk-wjagstre.js → chunk-1ttqgrz7.js} +1 -1
- package/.mochi/svelte-client/{chunk-czkxd74n.js → chunk-2eaagsfc.js} +1 -1
- package/.mochi/svelte-client/chunk-6v5d7dex.js +2 -0
- package/.mochi/svelte-client/{chunk-qx1defbm.js → chunk-a5e8vytv.js} +2 -2
- package/.mochi/svelte-client/{chunk-hxydjtda.js → chunk-d8rdrqsh.js} +1 -1
- package/.mochi/svelte-client/{chunk-566rqq4c.js → chunk-d9bszcp8.js} +1 -1
- package/.mochi/svelte-client/chunk-krevp8yb.js +2 -0
- package/.mochi/svelte-client/{chunk-0zkdsrth.js → chunk-s70rry6z.js} +1 -1
- package/.mochi/svelte-client/{chunk-79aj59e0.js → chunk-wcfbjj3x.js} +2 -2
- package/.mochi/svelte-client/{chunk-y9yy1004.js → chunk-y1xjps59.js} +1 -1
- package/.mochi/svelte-compile/{App-mzn3dqjm.server.js → App-bhak71kt.server.js} +4 -3
- package/.mochi/svelte-compile/{Settings-tvc5yp08.server.js → Settings-j3aygrjb.server.js} +178 -147
- package/.mochi/svelte-compile/{chunk-bpqwf1nw.js → chunk-pqb403fh.js} +12 -1
- package/.mochi/svelte-css/AppShell-22m1mjm8nq2hn.css +1 -0
- package/package.json +1 -1
- package/src/components/AppShell.svelte +5 -1
- package/src/components/SettingsView.svelte +36 -1
- package/src/container-injections/code-server-dark.ts +216 -0
- package/src/lib/devcontainer.server.ts +22 -7
- package/src/lib/injections.server.ts +4 -2
- package/src/settings.ts +13 -0
- package/src/shell.html +17 -6
- package/.mochi/svelte-client/HydratableIsland-dammyce5.js +0 -1
- package/.mochi/svelte-client/_hydrate-SettingsView_8hmarwmf8onq-hj9yvqc4.js +0 -38
- package/.mochi/svelte-client/chunk-r3wxmmc0.js +0 -2
- package/.mochi/svelte-client/chunk-vs6pd2b4.js +0 -2
- package/.mochi/svelte-css/AppShell-36mpg5smnbmuw.css +0 -1
|
@@ -5,9 +5,11 @@ import {
|
|
|
5
5
|
Terminal,
|
|
6
6
|
playChime,
|
|
7
7
|
setSoundEnabled,
|
|
8
|
+
setTabShortcutsEnabled,
|
|
8
9
|
soundEnabled,
|
|
10
|
+
tabShortcutsEnabled,
|
|
9
11
|
unlockAudio
|
|
10
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-pqb403fh.js";
|
|
11
13
|
import {
|
|
12
14
|
CLAUDE_EFFORT_LEVELS,
|
|
13
15
|
CLAUDE_PERMISSION_MODES,
|
|
@@ -38,11 +40,11 @@ import"./chunk-xpt1a7jm.js";
|
|
|
38
40
|
|
|
39
41
|
// src/pages/Settings.svelte
|
|
40
42
|
import"svelte/internal/flags/async";
|
|
41
|
-
import * as $
|
|
43
|
+
import * as $28 from "svelte/internal/server";
|
|
42
44
|
|
|
43
45
|
// src/components/SettingsView.svelte
|
|
44
46
|
import"svelte/internal/flags/async";
|
|
45
|
-
import * as $
|
|
47
|
+
import * as $27 from "svelte/internal/server";
|
|
46
48
|
|
|
47
49
|
// node_modules/@lucide/svelte/dist/icons/container.svelte
|
|
48
50
|
import"svelte/internal/flags/async";
|
|
@@ -91,9 +93,30 @@ function Volume_2($$renderer, $$props) {
|
|
|
91
93
|
];
|
|
92
94
|
Icon($$renderer, $3.spread_props([{ name: "volume-2" }, props, { iconNode }]));
|
|
93
95
|
}
|
|
94
|
-
// node_modules/@lucide/svelte/dist/icons/
|
|
96
|
+
// node_modules/@lucide/svelte/dist/icons/keyboard.svelte
|
|
95
97
|
import"svelte/internal/flags/async";
|
|
96
98
|
import * as $4 from "svelte/internal/server";
|
|
99
|
+
function Keyboard($$renderer, $$props) {
|
|
100
|
+
let { $$slots, $$events, ...props } = $$props;
|
|
101
|
+
const iconNode = [
|
|
102
|
+
["path", { d: "M10 8h.01" }],
|
|
103
|
+
["path", { d: "M12 12h.01" }],
|
|
104
|
+
["path", { d: "M14 8h.01" }],
|
|
105
|
+
["path", { d: "M16 12h.01" }],
|
|
106
|
+
["path", { d: "M18 8h.01" }],
|
|
107
|
+
["path", { d: "M6 8h.01" }],
|
|
108
|
+
["path", { d: "M7 16h10" }],
|
|
109
|
+
["path", { d: "M8 12h.01" }],
|
|
110
|
+
[
|
|
111
|
+
"rect",
|
|
112
|
+
{ width: "20", height: "16", x: "2", y: "4", rx: "2" }
|
|
113
|
+
]
|
|
114
|
+
];
|
|
115
|
+
Icon($$renderer, $4.spread_props([{ name: "keyboard" }, props, { iconNode }]));
|
|
116
|
+
}
|
|
117
|
+
// node_modules/@lucide/svelte/dist/icons/paw-print.svelte
|
|
118
|
+
import"svelte/internal/flags/async";
|
|
119
|
+
import * as $5 from "svelte/internal/server";
|
|
97
120
|
function Paw_print($$renderer, $$props) {
|
|
98
121
|
let { $$slots, $$events, ...props } = $$props;
|
|
99
122
|
const iconNode = [
|
|
@@ -107,11 +130,11 @@ function Paw_print($$renderer, $$props) {
|
|
|
107
130
|
}
|
|
108
131
|
]
|
|
109
132
|
];
|
|
110
|
-
Icon($$renderer, $
|
|
133
|
+
Icon($$renderer, $5.spread_props([{ name: "paw-print" }, props, { iconNode }]));
|
|
111
134
|
}
|
|
112
135
|
// node_modules/@lucide/svelte/dist/icons/sun-moon.svelte
|
|
113
136
|
import"svelte/internal/flags/async";
|
|
114
|
-
import * as $
|
|
137
|
+
import * as $6 from "svelte/internal/server";
|
|
115
138
|
function Sun_moon($$renderer, $$props) {
|
|
116
139
|
let { $$slots, $$events, ...props } = $$props;
|
|
117
140
|
const iconNode = [
|
|
@@ -126,15 +149,15 @@ function Sun_moon($$renderer, $$props) {
|
|
|
126
149
|
["path", { d: "m19 5-1.256 1.256" }],
|
|
127
150
|
["path", { d: "M20 12h2" }]
|
|
128
151
|
];
|
|
129
|
-
Icon($$renderer, $
|
|
152
|
+
Icon($$renderer, $6.spread_props([{ name: "sun-moon" }, props, { iconNode }]));
|
|
130
153
|
}
|
|
131
154
|
// src/components/ThemePicker.svelte
|
|
132
155
|
import"svelte/internal/flags/async";
|
|
133
|
-
import * as $
|
|
156
|
+
import * as $10 from "svelte/internal/server";
|
|
134
157
|
|
|
135
158
|
// node_modules/@lucide/svelte/dist/icons/sun.svelte
|
|
136
159
|
import"svelte/internal/flags/async";
|
|
137
|
-
import * as $
|
|
160
|
+
import * as $7 from "svelte/internal/server";
|
|
138
161
|
function Sun($$renderer, $$props) {
|
|
139
162
|
let { $$slots, $$events, ...props } = $$props;
|
|
140
163
|
const iconNode = [
|
|
@@ -148,11 +171,11 @@ function Sun($$renderer, $$props) {
|
|
|
148
171
|
["path", { d: "m6.34 17.66-1.41 1.41" }],
|
|
149
172
|
["path", { d: "m19.07 4.93-1.41 1.41" }]
|
|
150
173
|
];
|
|
151
|
-
Icon($$renderer, $
|
|
174
|
+
Icon($$renderer, $7.spread_props([{ name: "sun" }, props, { iconNode }]));
|
|
152
175
|
}
|
|
153
176
|
// node_modules/@lucide/svelte/dist/icons/moon.svelte
|
|
154
177
|
import"svelte/internal/flags/async";
|
|
155
|
-
import * as $
|
|
178
|
+
import * as $8 from "svelte/internal/server";
|
|
156
179
|
function Moon($$renderer, $$props) {
|
|
157
180
|
let { $$slots, $$events, ...props } = $$props;
|
|
158
181
|
const iconNode = [
|
|
@@ -163,11 +186,11 @@ function Moon($$renderer, $$props) {
|
|
|
163
186
|
}
|
|
164
187
|
]
|
|
165
188
|
];
|
|
166
|
-
Icon($$renderer, $
|
|
189
|
+
Icon($$renderer, $8.spread_props([{ name: "moon" }, props, { iconNode }]));
|
|
167
190
|
}
|
|
168
191
|
// node_modules/@lucide/svelte/dist/icons/monitor.svelte
|
|
169
192
|
import"svelte/internal/flags/async";
|
|
170
|
-
import * as $
|
|
193
|
+
import * as $9 from "svelte/internal/server";
|
|
171
194
|
function Monitor($$renderer, $$props) {
|
|
172
195
|
let { $$slots, $$events, ...props } = $$props;
|
|
173
196
|
const iconNode = [
|
|
@@ -178,7 +201,7 @@ function Monitor($$renderer, $$props) {
|
|
|
178
201
|
["line", { x1: "8", x2: "16", y1: "21", y2: "21" }],
|
|
179
202
|
["line", { x1: "12", x2: "12", y1: "17", y2: "21" }]
|
|
180
203
|
];
|
|
181
|
-
Icon($$renderer, $
|
|
204
|
+
Icon($$renderer, $9.spread_props([{ name: "monitor" }, props, { iconNode }]));
|
|
182
205
|
}
|
|
183
206
|
// src/components/ThemePicker.svelte
|
|
184
207
|
function ThemePicker($$renderer, $$props) {
|
|
@@ -212,10 +235,10 @@ function ThemePicker($$renderer, $$props) {
|
|
|
212
235
|
phase = null;
|
|
213
236
|
}
|
|
214
237
|
$$renderer2.push(`<div class="picker svelte-3gcwuj" role="radiogroup" aria-label="Theme"><!--[-->`);
|
|
215
|
-
const each_array = $
|
|
238
|
+
const each_array = $10.ensure_array_like(options);
|
|
216
239
|
for (let $$index = 0, $$length = each_array.length;$$index < $$length; $$index++) {
|
|
217
240
|
let { value, label, icon: Icon2 } = each_array[$$index];
|
|
218
|
-
$$renderer2.push(`<button type="button"${$
|
|
241
|
+
$$renderer2.push(`<button type="button"${$10.attr_class("segment svelte-3gcwuj", undefined, { active: theme === value })} role="radio"${$10.attr("aria-checked", theme === value)}>`);
|
|
219
242
|
if (Icon2) {
|
|
220
243
|
$$renderer2.push("<!--[-->");
|
|
221
244
|
Icon2($$renderer2, { size: 13 });
|
|
@@ -224,12 +247,12 @@ function ThemePicker($$renderer, $$props) {
|
|
|
224
247
|
$$renderer2.push("<!--[!-->");
|
|
225
248
|
$$renderer2.push("<!--]-->");
|
|
226
249
|
}
|
|
227
|
-
$$renderer2.push(` ${$
|
|
250
|
+
$$renderer2.push(` ${$10.escape(label)}</button>`);
|
|
228
251
|
}
|
|
229
252
|
$$renderer2.push(`<!--]--></div> `);
|
|
230
253
|
if (phase) {
|
|
231
254
|
$$renderer2.push("<!--[0-->");
|
|
232
|
-
$$renderer2.push(`<div${$
|
|
255
|
+
$$renderer2.push(`<div${$10.attr_class("crt svelte-3gcwuj", undefined, {
|
|
233
256
|
collapse: phase === "collapse",
|
|
234
257
|
restore: phase === "restore"
|
|
235
258
|
})}><span class="bar top svelte-3gcwuj"></span> <span class="bar bottom svelte-3gcwuj"></span> <span class="line svelte-3gcwuj"></span></div>`);
|
|
@@ -242,7 +265,7 @@ function ThemePicker($$renderer, $$props) {
|
|
|
242
265
|
|
|
243
266
|
// node_modules/@lucide/svelte/dist/icons/layers.svelte
|
|
244
267
|
import"svelte/internal/flags/async";
|
|
245
|
-
import * as $
|
|
268
|
+
import * as $11 from "svelte/internal/server";
|
|
246
269
|
function Layers($$renderer, $$props) {
|
|
247
270
|
let { $$slots, $$events, ...props } = $$props;
|
|
248
271
|
const iconNode = [
|
|
@@ -265,11 +288,11 @@ function Layers($$renderer, $$props) {
|
|
|
265
288
|
}
|
|
266
289
|
]
|
|
267
290
|
];
|
|
268
|
-
Icon($$renderer, $
|
|
291
|
+
Icon($$renderer, $11.spread_props([{ name: "layers" }, props, { iconNode }]));
|
|
269
292
|
}
|
|
270
293
|
// node_modules/@lucide/svelte/dist/icons/folder-minus.svelte
|
|
271
294
|
import"svelte/internal/flags/async";
|
|
272
|
-
import * as $
|
|
295
|
+
import * as $12 from "svelte/internal/server";
|
|
273
296
|
function Folder_minus($$renderer, $$props) {
|
|
274
297
|
let { $$slots, $$events, ...props } = $$props;
|
|
275
298
|
const iconNode = [
|
|
@@ -281,11 +304,11 @@ function Folder_minus($$renderer, $$props) {
|
|
|
281
304
|
}
|
|
282
305
|
]
|
|
283
306
|
];
|
|
284
|
-
Icon($$renderer, $
|
|
307
|
+
Icon($$renderer, $12.spread_props([{ name: "folder-minus" }, props, { iconNode }]));
|
|
285
308
|
}
|
|
286
309
|
// node_modules/@lucide/svelte/dist/icons/trash-2.svelte
|
|
287
310
|
import"svelte/internal/flags/async";
|
|
288
|
-
import * as $
|
|
311
|
+
import * as $13 from "svelte/internal/server";
|
|
289
312
|
function Trash_2($$renderer, $$props) {
|
|
290
313
|
let { $$slots, $$events, ...props } = $$props;
|
|
291
314
|
const iconNode = [
|
|
@@ -295,11 +318,11 @@ function Trash_2($$renderer, $$props) {
|
|
|
295
318
|
["path", { d: "M3 6h18" }],
|
|
296
319
|
["path", { d: "M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2" }]
|
|
297
320
|
];
|
|
298
|
-
Icon($$renderer, $
|
|
321
|
+
Icon($$renderer, $13.spread_props([{ name: "trash-2" }, props, { iconNode }]));
|
|
299
322
|
}
|
|
300
323
|
// node_modules/@lucide/svelte/dist/icons/hammer.svelte
|
|
301
324
|
import"svelte/internal/flags/async";
|
|
302
|
-
import * as $
|
|
325
|
+
import * as $14 from "svelte/internal/server";
|
|
303
326
|
function Hammer($$renderer, $$props) {
|
|
304
327
|
let { $$slots, $$events, ...props } = $$props;
|
|
305
328
|
const iconNode = [
|
|
@@ -312,11 +335,11 @@ function Hammer($$renderer, $$props) {
|
|
|
312
335
|
}
|
|
313
336
|
]
|
|
314
337
|
];
|
|
315
|
-
Icon($$renderer, $
|
|
338
|
+
Icon($$renderer, $14.spread_props([{ name: "hammer" }, props, { iconNode }]));
|
|
316
339
|
}
|
|
317
340
|
// node_modules/@lucide/svelte/dist/icons/key-round.svelte
|
|
318
341
|
import"svelte/internal/flags/async";
|
|
319
|
-
import * as $
|
|
342
|
+
import * as $15 from "svelte/internal/server";
|
|
320
343
|
function Key_round($$renderer, $$props) {
|
|
321
344
|
let { $$slots, $$events, ...props } = $$props;
|
|
322
345
|
const iconNode = [
|
|
@@ -331,11 +354,11 @@ function Key_round($$renderer, $$props) {
|
|
|
331
354
|
{ cx: "16.5", cy: "7.5", r: ".5", fill: "currentColor" }
|
|
332
355
|
]
|
|
333
356
|
];
|
|
334
|
-
Icon($$renderer, $
|
|
357
|
+
Icon($$renderer, $15.spread_props([{ name: "key-round" }, props, { iconNode }]));
|
|
335
358
|
}
|
|
336
359
|
// node_modules/@lucide/svelte/dist/icons/user-cog.svelte
|
|
337
360
|
import"svelte/internal/flags/async";
|
|
338
|
-
import * as $
|
|
361
|
+
import * as $16 from "svelte/internal/server";
|
|
339
362
|
function User_cog($$renderer, $$props) {
|
|
340
363
|
let { $$slots, $$events, ...props } = $$props;
|
|
341
364
|
const iconNode = [
|
|
@@ -351,11 +374,11 @@ function User_cog($$renderer, $$props) {
|
|
|
351
374
|
["circle", { cx: "18", cy: "15", r: "3" }],
|
|
352
375
|
["circle", { cx: "9", cy: "7", r: "4" }]
|
|
353
376
|
];
|
|
354
|
-
Icon($$renderer, $
|
|
377
|
+
Icon($$renderer, $16.spread_props([{ name: "user-cog" }, props, { iconNode }]));
|
|
355
378
|
}
|
|
356
379
|
// node_modules/@lucide/svelte/dist/icons/cpu.svelte
|
|
357
380
|
import"svelte/internal/flags/async";
|
|
358
|
-
import * as $
|
|
381
|
+
import * as $17 from "svelte/internal/server";
|
|
359
382
|
function Cpu($$renderer, $$props) {
|
|
360
383
|
let { $$slots, $$events, ...props } = $$props;
|
|
361
384
|
const iconNode = [
|
|
@@ -377,11 +400,11 @@ function Cpu($$renderer, $$props) {
|
|
|
377
400
|
],
|
|
378
401
|
["rect", { x: "8", y: "8", width: "8", height: "8", rx: "1" }]
|
|
379
402
|
];
|
|
380
|
-
Icon($$renderer, $
|
|
403
|
+
Icon($$renderer, $17.spread_props([{ name: "cpu" }, props, { iconNode }]));
|
|
381
404
|
}
|
|
382
405
|
// node_modules/@lucide/svelte/dist/icons/variable.svelte
|
|
383
406
|
import"svelte/internal/flags/async";
|
|
384
|
-
import * as $
|
|
407
|
+
import * as $18 from "svelte/internal/server";
|
|
385
408
|
function Variable($$renderer, $$props) {
|
|
386
409
|
let { $$slots, $$events, ...props } = $$props;
|
|
387
410
|
const iconNode = [
|
|
@@ -390,11 +413,11 @@ function Variable($$renderer, $$props) {
|
|
|
390
413
|
["line", { x1: "15", x2: "9", y1: "9", y2: "15" }],
|
|
391
414
|
["line", { x1: "9", x2: "15", y1: "9", y2: "15" }]
|
|
392
415
|
];
|
|
393
|
-
Icon($$renderer, $
|
|
416
|
+
Icon($$renderer, $18.spread_props([{ name: "variable" }, props, { iconNode }]));
|
|
394
417
|
}
|
|
395
418
|
// node_modules/@lucide/svelte/dist/icons/key-square.svelte
|
|
396
419
|
import"svelte/internal/flags/async";
|
|
397
|
-
import * as $
|
|
420
|
+
import * as $19 from "svelte/internal/server";
|
|
398
421
|
function Key_square($$renderer, $$props) {
|
|
399
422
|
let { $$slots, $$events, ...props } = $$props;
|
|
400
423
|
const iconNode = [
|
|
@@ -412,11 +435,11 @@ function Key_square($$renderer, $$props) {
|
|
|
412
435
|
}
|
|
413
436
|
]
|
|
414
437
|
];
|
|
415
|
-
Icon($$renderer, $
|
|
438
|
+
Icon($$renderer, $19.spread_props([{ name: "key-square" }, props, { iconNode }]));
|
|
416
439
|
}
|
|
417
440
|
// node_modules/@lucide/svelte/dist/icons/sliders-horizontal.svelte
|
|
418
441
|
import"svelte/internal/flags/async";
|
|
419
|
-
import * as $
|
|
442
|
+
import * as $20 from "svelte/internal/server";
|
|
420
443
|
function Sliders_horizontal($$renderer, $$props) {
|
|
421
444
|
let { $$slots, $$events, ...props } = $$props;
|
|
422
445
|
const iconNode = [
|
|
@@ -430,11 +453,11 @@ function Sliders_horizontal($$renderer, $$props) {
|
|
|
430
453
|
["path", { d: "M8 10v4" }],
|
|
431
454
|
["path", { d: "M8 12H3" }]
|
|
432
455
|
];
|
|
433
|
-
Icon($$renderer, $
|
|
456
|
+
Icon($$renderer, $20.spread_props([{ name: "sliders-horizontal" }, props, { iconNode }]));
|
|
434
457
|
}
|
|
435
458
|
// node_modules/@lucide/svelte/dist/icons/list-ordered.svelte
|
|
436
459
|
import"svelte/internal/flags/async";
|
|
437
|
-
import * as $
|
|
460
|
+
import * as $21 from "svelte/internal/server";
|
|
438
461
|
function List_ordered($$renderer, $$props) {
|
|
439
462
|
let { $$slots, $$events, ...props } = $$props;
|
|
440
463
|
const iconNode = [
|
|
@@ -450,11 +473,11 @@ function List_ordered($$renderer, $$props) {
|
|
|
450
473
|
}
|
|
451
474
|
]
|
|
452
475
|
];
|
|
453
|
-
Icon($$renderer, $
|
|
476
|
+
Icon($$renderer, $21.spread_props([{ name: "list-ordered" }, props, { iconNode }]));
|
|
454
477
|
}
|
|
455
478
|
// node_modules/@lucide/svelte/dist/icons/boxes.svelte
|
|
456
479
|
import"svelte/internal/flags/async";
|
|
457
|
-
import * as $
|
|
480
|
+
import * as $22 from "svelte/internal/server";
|
|
458
481
|
function Boxes($$renderer, $$props) {
|
|
459
482
|
let { $$slots, $$events, ...props } = $$props;
|
|
460
483
|
const iconNode = [
|
|
@@ -486,11 +509,11 @@ function Boxes($$renderer, $$props) {
|
|
|
486
509
|
["path", { d: "m12 8 4.74-2.85" }],
|
|
487
510
|
["path", { d: "M12 13.5V8" }]
|
|
488
511
|
];
|
|
489
|
-
Icon($$renderer, $
|
|
512
|
+
Icon($$renderer, $22.spread_props([{ name: "boxes" }, props, { iconNode }]));
|
|
490
513
|
}
|
|
491
514
|
// node_modules/@lucide/svelte/dist/icons/puzzle.svelte
|
|
492
515
|
import"svelte/internal/flags/async";
|
|
493
|
-
import * as $
|
|
516
|
+
import * as $23 from "svelte/internal/server";
|
|
494
517
|
function Puzzle($$renderer, $$props) {
|
|
495
518
|
let { $$slots, $$events, ...props } = $$props;
|
|
496
519
|
const iconNode = [
|
|
@@ -501,14 +524,14 @@ function Puzzle($$renderer, $$props) {
|
|
|
501
524
|
}
|
|
502
525
|
]
|
|
503
526
|
];
|
|
504
|
-
Icon($$renderer, $
|
|
527
|
+
Icon($$renderer, $23.spread_props([{ name: "puzzle" }, props, { iconNode }]));
|
|
505
528
|
}
|
|
506
529
|
// src/components/SettingsView.svelte
|
|
507
530
|
import { flushSync } from "svelte";
|
|
508
531
|
|
|
509
532
|
// src/components/CoinButton.svelte
|
|
510
533
|
import"svelte/internal/flags/async";
|
|
511
|
-
import * as $
|
|
534
|
+
import * as $24 from "svelte/internal/server";
|
|
512
535
|
function CoinButton($$renderer, $$props) {
|
|
513
536
|
let { href = "/avatars" } = $$props;
|
|
514
537
|
const coinArt = {
|
|
@@ -524,14 +547,14 @@ function CoinButton($$renderer, $$props) {
|
|
|
524
547
|
"..####.."
|
|
525
548
|
]
|
|
526
549
|
};
|
|
527
|
-
$$renderer.push(`<div class="coin-row svelte-1ioj7vz"><span class="pixel-line svelte-1ioj7vz" aria-hidden="true"></span> <a class="coin-btn svelte-1ioj7vz"${$
|
|
550
|
+
$$renderer.push(`<div class="coin-row svelte-1ioj7vz"><span class="pixel-line svelte-1ioj7vz" aria-hidden="true"></span> <a class="coin-btn svelte-1ioj7vz"${$24.attr("href", href)} aria-label="Draw your own avatar" title="Draw your own avatar"><span class="new svelte-1ioj7vz" aria-hidden="true">New</span> <span class="coin svelte-1ioj7vz" aria-hidden="true">`);
|
|
528
551
|
Avatar($$renderer, { art: coinArt, name: "coin", scale: 3 });
|
|
529
552
|
$$renderer.push(`<!----></span></a> <span class="pixel-line svelte-1ioj7vz" aria-hidden="true"></span></div>`);
|
|
530
553
|
}
|
|
531
554
|
|
|
532
555
|
// node_modules/@lucide/svelte/dist/icons/shield-check.svelte
|
|
533
556
|
import"svelte/internal/flags/async";
|
|
534
|
-
import * as $
|
|
557
|
+
import * as $25 from "svelte/internal/server";
|
|
535
558
|
function Shield_check($$renderer, $$props) {
|
|
536
559
|
let { $$slots, $$events, ...props } = $$props;
|
|
537
560
|
const iconNode = [
|
|
@@ -543,18 +566,18 @@ function Shield_check($$renderer, $$props) {
|
|
|
543
566
|
],
|
|
544
567
|
["path", { d: "m9 12 2 2 4-4" }]
|
|
545
568
|
];
|
|
546
|
-
Icon($$renderer, $
|
|
569
|
+
Icon($$renderer, $25.spread_props([{ name: "shield-check" }, props, { iconNode }]));
|
|
547
570
|
}
|
|
548
571
|
// node_modules/@lucide/svelte/dist/icons/gauge.svelte
|
|
549
572
|
import"svelte/internal/flags/async";
|
|
550
|
-
import * as $
|
|
573
|
+
import * as $26 from "svelte/internal/server";
|
|
551
574
|
function Gauge($$renderer, $$props) {
|
|
552
575
|
let { $$slots, $$events, ...props } = $$props;
|
|
553
576
|
const iconNode = [
|
|
554
577
|
["path", { d: "m12 14 4-4" }],
|
|
555
578
|
["path", { d: "M3.34 19a10 10 0 1 1 17.32 0" }]
|
|
556
579
|
];
|
|
557
|
-
Icon($$renderer, $
|
|
580
|
+
Icon($$renderer, $26.spread_props([{ name: "gauge" }, props, { iconNode }]));
|
|
558
581
|
}
|
|
559
582
|
// src/components/SettingsView.svelte
|
|
560
583
|
function SettingsView($$renderer, $$props) {
|
|
@@ -601,6 +624,7 @@ function SettingsView($$renderer, $$props) {
|
|
|
601
624
|
version
|
|
602
625
|
} = $$props;
|
|
603
626
|
let sound = soundEnabled();
|
|
627
|
+
let tabShortcuts = tabShortcutsEnabled();
|
|
604
628
|
let petArt = pet;
|
|
605
629
|
let savingPet = false;
|
|
606
630
|
let petError = null;
|
|
@@ -968,7 +992,7 @@ function SettingsView($$renderer, $$props) {
|
|
|
968
992
|
manualModelsMsg = "Saved.";
|
|
969
993
|
}
|
|
970
994
|
});
|
|
971
|
-
let litellmBlocker = $
|
|
995
|
+
let litellmBlocker = $27.derived(() => manualTokens ? "Set tokens manually" : manualModelOverride ? "Override models manually" : null);
|
|
972
996
|
let hostEnvVars = hostEnvVarsEnabled;
|
|
973
997
|
let savingHostEnvToggle = false;
|
|
974
998
|
let hostEnvToggleError = null;
|
|
@@ -1099,6 +1123,10 @@ function SettingsView($$renderer, $$props) {
|
|
|
1099
1123
|
if (on)
|
|
1100
1124
|
playChime("done");
|
|
1101
1125
|
}
|
|
1126
|
+
function toggleTabShortcuts(on) {
|
|
1127
|
+
tabShortcuts = on;
|
|
1128
|
+
setTabShortcutsEnabled(on);
|
|
1129
|
+
}
|
|
1102
1130
|
const petToggleOpts = {
|
|
1103
1131
|
onPending: (v) => savingPet = v,
|
|
1104
1132
|
submit: () => {
|
|
@@ -1140,30 +1168,30 @@ function SettingsView($$renderer, $$props) {
|
|
|
1140
1168
|
$$renderer2.push(`<!----> <main class="content svelte-1n6ht58"><section class="card svelte-1n6ht58"><form class="row svelte-1n6ht58" method="POST" action="?/defaultMode"><div class="label svelte-1n6ht58">`);
|
|
1141
1169
|
Terminal($$renderer2, { size: 20 });
|
|
1142
1170
|
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Default editor</div> <div class="desc svelte-1n6ht58">What new instances start in. <strong>Full IDE</strong> serves browser VS Code; <strong>Terminal</strong> is lighter \u2014 just Claude Code in a terminal, no code-server. You
|
|
1143
|
-
can override this per instance when creating one.</div></div></div> <input type="hidden" name="mode"${$
|
|
1171
|
+
can override this per instance when creating one.</div></div></div> <input type="hidden" name="mode"${$27.attr("value", modeChoice)}/> <div class="mode-toggle svelte-1n6ht58" role="group" aria-label="Default editor mode"><button type="button"${$27.attr_class("mode-btn svelte-1n6ht58", undefined, { active: modeChoice === "ide" })}${$27.attr("aria-pressed", modeChoice === "ide")}${$27.attr("disabled", savingMode, true)}>`);
|
|
1144
1172
|
Layout_template($$renderer2, { size: 15 });
|
|
1145
|
-
$$renderer2.push(`<!----> Full IDE</button> <button type="button"${$
|
|
1173
|
+
$$renderer2.push(`<!----> Full IDE</button> <button type="button"${$27.attr_class("mode-btn svelte-1n6ht58", undefined, { active: modeChoice === "terminal" })}${$27.attr("aria-pressed", modeChoice === "terminal")}${$27.attr("disabled", savingMode, true)}>`);
|
|
1146
1174
|
Terminal($$renderer2, { size: 15 });
|
|
1147
1175
|
$$renderer2.push(`<!----> Terminal</button></div></form> `);
|
|
1148
1176
|
if (modeError) {
|
|
1149
1177
|
$$renderer2.push("<!--[0-->");
|
|
1150
|
-
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$
|
|
1178
|
+
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$27.escape(modeError)}</div></div>`);
|
|
1151
1179
|
} else {
|
|
1152
1180
|
$$renderer2.push("<!--[-1-->");
|
|
1153
1181
|
}
|
|
1154
1182
|
$$renderer2.push(`<!--]--></section> <section class="card svelte-1n6ht58"><form class="row svelte-1n6ht58" method="POST" action="?/claudePermissionMode"><div class="label svelte-1n6ht58">`);
|
|
1155
1183
|
Shield_check($$renderer2, { size: 20 });
|
|
1156
1184
|
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Claude permission mode</div> <div class="desc svelte-1n6ht58">The mode Claude Code starts in inside new instances. <strong>Default</strong> runs <code class="svelte-1n6ht58">--dangerously-skip-permissions</code>, which never prompts; the other three pass <code class="svelte-1n6ht58">--permission-mode</code> instead, because the skip flag overrides them. Applies on
|
|
1157
|
-
create and rebuild, not to already-running instances.</div></div></div> <input type="hidden" name="mode"${$
|
|
1158
|
-
const each_array = $
|
|
1185
|
+
create and rebuild, not to already-running instances.</div></div></div> <input type="hidden" name="mode"${$27.attr("value", permissionChoice)}/> <div class="mode-toggle svelte-1n6ht58" role="group" aria-label="Claude permission mode"><!--[-->`);
|
|
1186
|
+
const each_array = $27.ensure_array_like(CLAUDE_PERMISSION_MODES);
|
|
1159
1187
|
for (let $$index = 0, $$length = each_array.length;$$index < $$length; $$index++) {
|
|
1160
1188
|
let option = each_array[$$index];
|
|
1161
|
-
$$renderer2.push(`<button type="button"${$
|
|
1189
|
+
$$renderer2.push(`<button type="button"${$27.attr_class("mode-btn svelte-1n6ht58", undefined, { active: permissionChoice === option })}${$27.attr("aria-pressed", permissionChoice === option)}${$27.attr("disabled", savingPermission, true)}>${$27.escape(PERMISSION_LABELS[option])}</button>`);
|
|
1162
1190
|
}
|
|
1163
1191
|
$$renderer2.push(`<!--]--></div></form> `);
|
|
1164
1192
|
if (permissionError) {
|
|
1165
1193
|
$$renderer2.push("<!--[0-->");
|
|
1166
|
-
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$
|
|
1194
|
+
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$27.escape(permissionError)}</div></div>`);
|
|
1167
1195
|
} else {
|
|
1168
1196
|
$$renderer2.push("<!--[-1-->");
|
|
1169
1197
|
}
|
|
@@ -1171,16 +1199,16 @@ function SettingsView($$renderer, $$props) {
|
|
|
1171
1199
|
Gauge($$renderer2, { size: 20 });
|
|
1172
1200
|
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Claude effort level</div> <div class="desc svelte-1n6ht58">The default reasoning effort Claude Code starts new sessions at inside instances,
|
|
1173
1201
|
written to <code class="svelte-1n6ht58">~/.claude/settings.json</code>. Applies on create and rebuild, not to
|
|
1174
|
-
already-running instances.</div></div></div> <input type="hidden" name="level"${$
|
|
1175
|
-
const each_array_1 = $
|
|
1202
|
+
already-running instances.</div></div></div> <input type="hidden" name="level"${$27.attr("value", effortChoice)}/> <div class="mode-toggle svelte-1n6ht58" role="group" aria-label="Claude effort level"><!--[-->`);
|
|
1203
|
+
const each_array_1 = $27.ensure_array_like(CLAUDE_EFFORT_LEVELS);
|
|
1176
1204
|
for (let $$index_1 = 0, $$length = each_array_1.length;$$index_1 < $$length; $$index_1++) {
|
|
1177
1205
|
let option = each_array_1[$$index_1];
|
|
1178
|
-
$$renderer2.push(`<button type="button"${$
|
|
1206
|
+
$$renderer2.push(`<button type="button"${$27.attr_class("mode-btn svelte-1n6ht58", undefined, { active: effortChoice === option })}${$27.attr("aria-pressed", effortChoice === option)}${$27.attr("disabled", savingEffort, true)}>${$27.escape(EFFORT_LABELS[option])}</button>`);
|
|
1179
1207
|
}
|
|
1180
1208
|
$$renderer2.push(`<!--]--></div></form> `);
|
|
1181
1209
|
if (effortError) {
|
|
1182
1210
|
$$renderer2.push("<!--[0-->");
|
|
1183
|
-
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$
|
|
1211
|
+
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$27.escape(effortError)}</div></div>`);
|
|
1184
1212
|
} else {
|
|
1185
1213
|
$$renderer2.push("<!--[-1-->");
|
|
1186
1214
|
}
|
|
@@ -1189,12 +1217,12 @@ function SettingsView($$renderer, $$props) {
|
|
|
1189
1217
|
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Default container image `);
|
|
1190
1218
|
if (dockerArch) {
|
|
1191
1219
|
$$renderer2.push("<!--[0-->");
|
|
1192
|
-
$$renderer2.push(`<span class="arch svelte-1n6ht58" title="Docker daemon architecture">${$
|
|
1220
|
+
$$renderer2.push(`<span class="arch svelte-1n6ht58" title="Docker daemon architecture">${$27.escape(dockerArch)}</span>`);
|
|
1193
1221
|
} else {
|
|
1194
1222
|
$$renderer2.push("<!--[-1-->");
|
|
1195
1223
|
}
|
|
1196
1224
|
$$renderer2.push(`<!--]--></div> <div class="desc svelte-1n6ht58">Used only when a project folder ships no devcontainer.json. Takes effect for instances
|
|
1197
|
-
created from now on.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="text" name="image" class="image-input svelte-1n6ht58"${$
|
|
1225
|
+
created from now on.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="text" name="image" class="image-input svelte-1n6ht58"${$27.attr("value", image)} spellcheck="false" autocapitalize="off" autocorrect="off" placeholder="mcr.microsoft.com/devcontainers/base:ubuntu"/> `);
|
|
1198
1226
|
Button($$renderer2, {
|
|
1199
1227
|
type: "submit",
|
|
1200
1228
|
disabled: savingImage,
|
|
@@ -1209,14 +1237,14 @@ function SettingsView($$renderer, $$props) {
|
|
|
1209
1237
|
icon: Rotate_ccw,
|
|
1210
1238
|
disabled: savingImage,
|
|
1211
1239
|
onclick: resetImage,
|
|
1212
|
-
title: `Reset to default (${$
|
|
1240
|
+
title: `Reset to default (${$27.stringify(builtinImage)})`,
|
|
1213
1241
|
"aria-label": "Reset to default image"
|
|
1214
1242
|
});
|
|
1215
1243
|
$$renderer2.push(`<!----></div> <div class="desc tip svelte-1n6ht58">`);
|
|
1216
1244
|
if (dockerArch) {
|
|
1217
1245
|
$$renderer2.push("<!--[0-->");
|
|
1218
|
-
$$renderer2.push(`Your Docker daemon runs on <strong>${$
|
|
1219
|
-
an <strong>${$
|
|
1246
|
+
$$renderer2.push(`Your Docker daemon runs on <strong>${$27.escape(dockerArch)}</strong> \u2014 pick an image that publishes
|
|
1247
|
+
an <strong>${$27.escape(dockerArch)}</strong> manifest, or the pull will fail.`);
|
|
1220
1248
|
} else {
|
|
1221
1249
|
$$renderer2.push("<!--[-1-->");
|
|
1222
1250
|
$$renderer2.push(`Pick an image whose manifest covers your Docker daemon's architecture, or the pull will
|
|
@@ -1225,7 +1253,7 @@ function SettingsView($$renderer, $$props) {
|
|
|
1225
1253
|
$$renderer2.push(`<!--]--></div> `);
|
|
1226
1254
|
if (imageError) {
|
|
1227
1255
|
$$renderer2.push("<!--[0-->");
|
|
1228
|
-
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$
|
|
1256
|
+
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$27.escape(imageError)}</div>`);
|
|
1229
1257
|
} else if (imageSaved) {
|
|
1230
1258
|
$$renderer2.push("<!--[1-->");
|
|
1231
1259
|
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">Saved.</div>`);
|
|
@@ -1236,7 +1264,7 @@ function SettingsView($$renderer, $$props) {
|
|
|
1236
1264
|
Folder_minus($$renderer2, { size: 20 });
|
|
1237
1265
|
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Skip when copying a local folder</div> <div class="desc svelte-1n6ht58">Comma-separated folder/file names excluded when copying a local source folder into a
|
|
1238
1266
|
new instance's workspace. Leave blank to copy everything. Only applies to local
|
|
1239
|
-
folders \u2014 cloning a Git repo URL is unaffected.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="text" name="patterns" class="image-input svelte-1n6ht58"${$
|
|
1267
|
+
folders \u2014 cloning a Git repo URL is unaffected.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="text" name="patterns" class="image-input svelte-1n6ht58"${$27.attr("value", copyIgnore)} spellcheck="false" autocapitalize="off" autocorrect="off" placeholder="node_modules, .venv, dist"/> `);
|
|
1240
1268
|
Button($$renderer2, {
|
|
1241
1269
|
type: "submit",
|
|
1242
1270
|
disabled: savingCopyIgnore,
|
|
@@ -1251,13 +1279,13 @@ function SettingsView($$renderer, $$props) {
|
|
|
1251
1279
|
icon: Rotate_ccw,
|
|
1252
1280
|
disabled: savingCopyIgnore,
|
|
1253
1281
|
onclick: resetCopyIgnore,
|
|
1254
|
-
title: `Reset to default (${$
|
|
1282
|
+
title: `Reset to default (${$27.stringify(builtinCopyIgnore)})`,
|
|
1255
1283
|
"aria-label": "Reset to default copy-ignore patterns"
|
|
1256
1284
|
});
|
|
1257
1285
|
$$renderer2.push(`<!----></div> `);
|
|
1258
1286
|
if (copyIgnoreError) {
|
|
1259
1287
|
$$renderer2.push("<!--[0-->");
|
|
1260
|
-
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$
|
|
1288
|
+
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$27.escape(copyIgnoreError)}</div>`);
|
|
1261
1289
|
} else if (copyIgnoreSaved) {
|
|
1262
1290
|
$$renderer2.push("<!--[1-->");
|
|
1263
1291
|
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">Saved.</div>`);
|
|
@@ -1268,10 +1296,10 @@ function SettingsView($$renderer, $$props) {
|
|
|
1268
1296
|
User_cog($$renderer2, { size: 20 });
|
|
1269
1297
|
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Override git identity</div> <div class="desc svelte-1n6ht58">Inject a name and email as <code class="svelte-1n6ht58">git config --global user.name/user.email</code> in every
|
|
1270
1298
|
new container, taking precedence over the host's own git config. When off, each container
|
|
1271
|
-
falls back to the host's identity.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$
|
|
1299
|
+
falls back to the host's identity.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$27.attr("checked", gitIdentity, true)}${$27.attr("disabled", savingGitToggle, true)} class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> `);
|
|
1272
1300
|
if (gitToggleError) {
|
|
1273
1301
|
$$renderer2.push("<!--[0-->");
|
|
1274
|
-
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$
|
|
1302
|
+
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$27.escape(gitToggleError)}</div></div>`);
|
|
1275
1303
|
} else {
|
|
1276
1304
|
$$renderer2.push("<!--[-1-->");
|
|
1277
1305
|
}
|
|
@@ -1279,7 +1307,7 @@ function SettingsView($$renderer, $$props) {
|
|
|
1279
1307
|
if (gitIdentity) {
|
|
1280
1308
|
$$renderer2.push("<!--[0-->");
|
|
1281
1309
|
$$renderer2.push(`<form class="row divided token-row svelte-1n6ht58" method="POST" action="?/gitIdentityOverride"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Identity</div> <div class="desc svelte-1n6ht58">Both fields are required \u2014 leave either blank and the container falls back to the
|
|
1282
|
-
host's identity.</div></div></div> <div class="model-fields svelte-1n6ht58"><label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Name</span> <input type="text" name="name" class="image-input svelte-1n6ht58"${$
|
|
1310
|
+
host's identity.</div></div></div> <div class="model-fields svelte-1n6ht58"><label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Name</span> <input type="text" name="name" class="image-input svelte-1n6ht58"${$27.attr("value", gitName)} spellcheck="false" autocapitalize="off" autocorrect="off" placeholder="Jane Doe"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Email</span> <input type="text" name="email" class="image-input svelte-1n6ht58"${$27.attr("value", gitEmail)} spellcheck="false" autocapitalize="off" autocorrect="off" placeholder="jane@example.com"/></label> <div class="model-save-row svelte-1n6ht58">`);
|
|
1283
1311
|
Button($$renderer2, {
|
|
1284
1312
|
type: "submit",
|
|
1285
1313
|
disabled: savingGitIdentity,
|
|
@@ -1291,7 +1319,7 @@ function SettingsView($$renderer, $$props) {
|
|
|
1291
1319
|
$$renderer2.push(`<!----></div></div> `);
|
|
1292
1320
|
if (gitIdentityError) {
|
|
1293
1321
|
$$renderer2.push("<!--[0-->");
|
|
1294
|
-
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$
|
|
1322
|
+
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$27.escape(gitIdentityError)}</div>`);
|
|
1295
1323
|
} else if (gitIdentitySaved) {
|
|
1296
1324
|
$$renderer2.push("<!--[1-->");
|
|
1297
1325
|
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">Saved.</div>`);
|
|
@@ -1305,10 +1333,10 @@ function SettingsView($$renderer, $$props) {
|
|
|
1305
1333
|
$$renderer2.push(`<!--]--></section> <section class="card svelte-1n6ht58"><form class="row svelte-1n6ht58" method="POST" action="?/disableBuildCache"><div class="label svelte-1n6ht58">`);
|
|
1306
1334
|
Layers($$renderer2, { size: 20 });
|
|
1307
1335
|
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Disable build cache</div> <div class="desc svelte-1n6ht58">Build every new container with <code class="svelte-1n6ht58">--build-no-cache</code>. Applies to first boot
|
|
1308
|
-
and rebuilds \u2014 slower, but always picks up upstream image/layer changes.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$
|
|
1336
|
+
and rebuilds \u2014 slower, but always picks up upstream image/layer changes.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$27.attr("checked", noCache, true)}${$27.attr("disabled", savingCache, true)} class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> `);
|
|
1309
1337
|
if (cacheError) {
|
|
1310
1338
|
$$renderer2.push("<!--[0-->");
|
|
1311
|
-
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$
|
|
1339
|
+
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$27.escape(cacheError)}</div></div>`);
|
|
1312
1340
|
} else {
|
|
1313
1341
|
$$renderer2.push("<!--[-1-->");
|
|
1314
1342
|
}
|
|
@@ -1318,10 +1346,10 @@ function SettingsView($$renderer, $$props) {
|
|
|
1318
1346
|
remove pulled images.</div> `);
|
|
1319
1347
|
if (clearError) {
|
|
1320
1348
|
$$renderer2.push("<!--[0-->");
|
|
1321
|
-
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$
|
|
1349
|
+
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$27.escape(clearError)}</div>`);
|
|
1322
1350
|
} else if (clearMsg) {
|
|
1323
1351
|
$$renderer2.push("<!--[1-->");
|
|
1324
|
-
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$
|
|
1352
|
+
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$27.escape(clearMsg)}</div>`);
|
|
1325
1353
|
} else {
|
|
1326
1354
|
$$renderer2.push("<!--[-1-->");
|
|
1327
1355
|
}
|
|
@@ -1331,7 +1359,7 @@ function SettingsView($$renderer, $$props) {
|
|
|
1331
1359
|
icon: Trash_2,
|
|
1332
1360
|
disabled: clearing,
|
|
1333
1361
|
children: ($$renderer3) => {
|
|
1334
|
-
$$renderer3.push(`<!---->${$
|
|
1362
|
+
$$renderer3.push(`<!---->${$27.escape(clearing ? "Clearing\u2026" : "Clear cache")}`);
|
|
1335
1363
|
},
|
|
1336
1364
|
$$slots: { default: true }
|
|
1337
1365
|
});
|
|
@@ -1341,10 +1369,10 @@ function SettingsView($$renderer, $$props) {
|
|
|
1341
1369
|
layers. In-container edits are kept; stopped instances are left alone.</div> `);
|
|
1342
1370
|
if (rebuildError) {
|
|
1343
1371
|
$$renderer2.push("<!--[0-->");
|
|
1344
|
-
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$
|
|
1372
|
+
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$27.escape(rebuildError)}</div>`);
|
|
1345
1373
|
} else if (rebuildMsg) {
|
|
1346
1374
|
$$renderer2.push("<!--[1-->");
|
|
1347
|
-
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$
|
|
1375
|
+
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$27.escape(rebuildMsg)}</div>`);
|
|
1348
1376
|
} else {
|
|
1349
1377
|
$$renderer2.push("<!--[-1-->");
|
|
1350
1378
|
}
|
|
@@ -1354,11 +1382,11 @@ function SettingsView($$renderer, $$props) {
|
|
|
1354
1382
|
icon: Hammer,
|
|
1355
1383
|
disabled: rebuilding,
|
|
1356
1384
|
children: ($$renderer3) => {
|
|
1357
|
-
$$renderer3.push(`<!---->${$
|
|
1385
|
+
$$renderer3.push(`<!---->${$27.escape(rebuilding ? "Starting\u2026" : "Rebuild all")}`);
|
|
1358
1386
|
},
|
|
1359
1387
|
$$slots: { default: true }
|
|
1360
1388
|
});
|
|
1361
|
-
$$renderer2.push(`<!----></form></section> <section${$
|
|
1389
|
+
$$renderer2.push(`<!----></form></section> <section${$27.attr_class("card svelte-1n6ht58", undefined, { "disabled-card": customEndpoint })}><form class="row svelte-1n6ht58" method="POST" action="?/manualTokensToggle"><div class="label svelte-1n6ht58">`);
|
|
1362
1390
|
Key_round($$renderer2, { size: 20 });
|
|
1363
1391
|
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Set tokens manually `);
|
|
1364
1392
|
if (customEndpoint) {
|
|
@@ -1379,10 +1407,10 @@ function SettingsView($$renderer, $$props) {
|
|
|
1379
1407
|
token set here is injected into every new container and overrides host credential
|
|
1380
1408
|
discovery.`);
|
|
1381
1409
|
}
|
|
1382
|
-
$$renderer2.push(`<!--]--></div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$
|
|
1410
|
+
$$renderer2.push(`<!--]--></div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$27.attr("checked", manualTokens, true)}${$27.attr("disabled", savingManualToggle || customEndpoint, true)} class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> `);
|
|
1383
1411
|
if (manualToggleError) {
|
|
1384
1412
|
$$renderer2.push("<!--[0-->");
|
|
1385
|
-
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$
|
|
1413
|
+
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$27.escape(manualToggleError)}</div></div>`);
|
|
1386
1414
|
} else {
|
|
1387
1415
|
$$renderer2.push("<!--[-1-->");
|
|
1388
1416
|
}
|
|
@@ -1390,7 +1418,7 @@ function SettingsView($$renderer, $$props) {
|
|
|
1390
1418
|
if (manualTokens && !customEndpoint) {
|
|
1391
1419
|
$$renderer2.push("<!--[0-->");
|
|
1392
1420
|
$$renderer2.push(`<form class="row divided token-row svelte-1n6ht58" method="POST" action="?/githubToken"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">GitHub token</div> <div class="desc svelte-1n6ht58">macOS / Linux: run <code class="svelte-1n6ht58">gh auth token</code> to print your GitHub CLI token, or
|
|
1393
|
-
create a Personal Access Token at <code class="svelte-1n6ht58">github.com/settings/tokens</code> (scopes: <code class="svelte-1n6ht58">repo</code>, <code class="svelte-1n6ht58">read:org</code>). Leave blank and Save to clear.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="password" name="githubToken" class="image-input svelte-1n6ht58"${$
|
|
1421
|
+
create a Personal Access Token at <code class="svelte-1n6ht58">github.com/settings/tokens</code> (scopes: <code class="svelte-1n6ht58">repo</code>, <code class="svelte-1n6ht58">read:org</code>). Leave blank and Save to clear.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="password" name="githubToken" class="image-input svelte-1n6ht58"${$27.attr("value", githubToken)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"${$27.attr("placeholder", ghSaved ? "\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022 (saved)" : "ghp_\u2026 / gho_\u2026")}/> `);
|
|
1394
1422
|
Button($$renderer2, {
|
|
1395
1423
|
type: "submit",
|
|
1396
1424
|
disabled: savingGithub,
|
|
@@ -1402,17 +1430,17 @@ function SettingsView($$renderer, $$props) {
|
|
|
1402
1430
|
$$renderer2.push(`<!----></div> `);
|
|
1403
1431
|
if (githubError) {
|
|
1404
1432
|
$$renderer2.push("<!--[0-->");
|
|
1405
|
-
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$
|
|
1433
|
+
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$27.escape(githubError)}</div>`);
|
|
1406
1434
|
} else if (githubMsg) {
|
|
1407
1435
|
$$renderer2.push("<!--[1-->");
|
|
1408
|
-
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$
|
|
1436
|
+
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$27.escape(githubMsg)}</div>`);
|
|
1409
1437
|
} else {
|
|
1410
1438
|
$$renderer2.push("<!--[-1-->");
|
|
1411
1439
|
}
|
|
1412
1440
|
$$renderer2.push(`<!--]--></form> <form class="row divided token-row svelte-1n6ht58" method="POST" action="?/claudeToken"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Claude Code token</div> <div class="desc svelte-1n6ht58">macOS / Linux: run <code class="svelte-1n6ht58">claude setup-token</code> to mint a long-lived token and
|
|
1413
1441
|
paste it here. Copying a live login out of the keychain or <code class="svelte-1n6ht58">~/.claude/.credentials.json</code> works too, but that credential rotates \u2014
|
|
1414
1442
|
the first <code class="svelte-1n6ht58">claude</code> to refresh it signs the other one out. Leave blank and Save
|
|
1415
|
-
to clear.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="password" name="claudeToken" class="image-input svelte-1n6ht58"${$
|
|
1443
|
+
to clear.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="password" name="claudeToken" class="image-input svelte-1n6ht58"${$27.attr("value", claudeToken)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"${$27.attr("placeholder", claudeSaved ? "\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022 (saved)" : "sk-ant-oat\u2026")}/> `);
|
|
1416
1444
|
Button($$renderer2, {
|
|
1417
1445
|
type: "submit",
|
|
1418
1446
|
disabled: savingClaude,
|
|
@@ -1424,10 +1452,10 @@ function SettingsView($$renderer, $$props) {
|
|
|
1424
1452
|
$$renderer2.push(`<!----></div> `);
|
|
1425
1453
|
if (claudeError) {
|
|
1426
1454
|
$$renderer2.push("<!--[0-->");
|
|
1427
|
-
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$
|
|
1455
|
+
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$27.escape(claudeError)}</div>`);
|
|
1428
1456
|
} else if (claudeMsg) {
|
|
1429
1457
|
$$renderer2.push("<!--[1-->");
|
|
1430
|
-
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$
|
|
1458
|
+
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$27.escape(claudeMsg)}</div>`);
|
|
1431
1459
|
} else {
|
|
1432
1460
|
$$renderer2.push("<!--[-1-->");
|
|
1433
1461
|
}
|
|
@@ -1435,19 +1463,19 @@ function SettingsView($$renderer, $$props) {
|
|
|
1435
1463
|
} else {
|
|
1436
1464
|
$$renderer2.push("<!--[-1-->");
|
|
1437
1465
|
}
|
|
1438
|
-
$$renderer2.push(`<!--]--></section> <section${$
|
|
1466
|
+
$$renderer2.push(`<!--]--></section> <section${$27.attr_class("card svelte-1n6ht58", undefined, { "disabled-card": litellmBlocker() })}><form class="row svelte-1n6ht58" method="POST" action="?/customEndpointToggle"><div class="label svelte-1n6ht58">`);
|
|
1439
1467
|
Key_round($$renderer2, { size: 20 });
|
|
1440
1468
|
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">LiteLLM + Bedrock `);
|
|
1441
1469
|
if (litellmBlocker()) {
|
|
1442
1470
|
$$renderer2.push("<!--[0-->");
|
|
1443
|
-
$$renderer2.push(`<span class="arch svelte-1n6ht58"${$
|
|
1471
|
+
$$renderer2.push(`<span class="arch svelte-1n6ht58"${$27.attr("title", `Disabled while ${$27.stringify(litellmBlocker())} is on`)}>disabled</span>`);
|
|
1444
1472
|
} else {
|
|
1445
1473
|
$$renderer2.push("<!--[-1-->");
|
|
1446
1474
|
}
|
|
1447
1475
|
$$renderer2.push(`<!--]--></div> <div class="desc svelte-1n6ht58">`);
|
|
1448
1476
|
if (litellmBlocker()) {
|
|
1449
1477
|
$$renderer2.push("<!--[0-->");
|
|
1450
|
-
$$renderer2.push(`Not available while "${$
|
|
1478
|
+
$$renderer2.push(`Not available while "${$27.escape(litellmBlocker())}" is enabled \u2014 these modes are mutually
|
|
1451
1479
|
incompatible.`);
|
|
1452
1480
|
} else {
|
|
1453
1481
|
$$renderer2.push("<!--[-1-->");
|
|
@@ -1455,17 +1483,17 @@ function SettingsView($$renderer, $$props) {
|
|
|
1455
1483
|
default API. When enabled, the Bedrock endpoint variables are injected into every new
|
|
1456
1484
|
container, host OAuth credentials are not used, and "Set tokens manually" is disabled.`);
|
|
1457
1485
|
}
|
|
1458
|
-
$$renderer2.push(`<!--]--></div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$
|
|
1486
|
+
$$renderer2.push(`<!--]--></div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$27.attr("checked", customEndpoint, true)}${$27.attr("disabled", savingCustomToggle || !!litellmBlocker(), true)} class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> `);
|
|
1459
1487
|
if (customToggleError) {
|
|
1460
1488
|
$$renderer2.push("<!--[0-->");
|
|
1461
|
-
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$
|
|
1489
|
+
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$27.escape(customToggleError)}</div></div>`);
|
|
1462
1490
|
} else {
|
|
1463
1491
|
$$renderer2.push("<!--[-1-->");
|
|
1464
1492
|
}
|
|
1465
1493
|
$$renderer2.push(`<!--]--> `);
|
|
1466
1494
|
if (customEndpoint) {
|
|
1467
1495
|
$$renderer2.push("<!--[0-->");
|
|
1468
|
-
$$renderer2.push(`<form class="row divided token-row svelte-1n6ht58" method="POST" action="?/customBaseUrl"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Base URL</div> <div class="desc svelte-1n6ht58">The LiteLLM proxy endpoint, e.g. <code class="svelte-1n6ht58">https://litellm.example.com/bedrock</code>. Passed as <code class="svelte-1n6ht58">ANTHROPIC_BEDROCK_BASE_URL</code>.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="text" name="baseUrl" class="image-input svelte-1n6ht58"${$
|
|
1496
|
+
$$renderer2.push(`<form class="row divided token-row svelte-1n6ht58" method="POST" action="?/customBaseUrl"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Base URL</div> <div class="desc svelte-1n6ht58">The LiteLLM proxy endpoint, e.g. <code class="svelte-1n6ht58">https://litellm.example.com/bedrock</code>. Passed as <code class="svelte-1n6ht58">ANTHROPIC_BEDROCK_BASE_URL</code>.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="text" name="baseUrl" class="image-input svelte-1n6ht58"${$27.attr("value", customBaseUrl)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off" placeholder="https://litellm.example.com/bedrock"/> `);
|
|
1469
1497
|
Button($$renderer2, {
|
|
1470
1498
|
type: "submit",
|
|
1471
1499
|
disabled: savingCustomBaseUrl,
|
|
@@ -1477,15 +1505,15 @@ function SettingsView($$renderer, $$props) {
|
|
|
1477
1505
|
$$renderer2.push(`<!----></div> `);
|
|
1478
1506
|
if (customBaseUrlError) {
|
|
1479
1507
|
$$renderer2.push("<!--[0-->");
|
|
1480
|
-
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$
|
|
1508
|
+
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$27.escape(customBaseUrlError)}</div>`);
|
|
1481
1509
|
} else if (customBaseUrlMsg) {
|
|
1482
1510
|
$$renderer2.push("<!--[1-->");
|
|
1483
|
-
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$
|
|
1511
|
+
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$27.escape(customBaseUrlMsg)}</div>`);
|
|
1484
1512
|
} else {
|
|
1485
1513
|
$$renderer2.push("<!--[-1-->");
|
|
1486
1514
|
}
|
|
1487
1515
|
$$renderer2.push(`<!--]--></form> <form class="row divided token-row svelte-1n6ht58" method="POST" action="?/customToken"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Auth token</div> <div class="desc svelte-1n6ht58">Your LiteLLM API key. Passed as <code class="svelte-1n6ht58">ANTHROPIC_AUTH_TOKEN</code>. Leave blank and
|
|
1488
|
-
Save to clear.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="password" name="token" class="image-input svelte-1n6ht58"${$
|
|
1516
|
+
Save to clear.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="password" name="token" class="image-input svelte-1n6ht58"${$27.attr("value", customToken)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"${$27.attr("placeholder", customTokenSaved ? "\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022 (saved)" : "sk-\u2026")}/> `);
|
|
1489
1517
|
Button($$renderer2, {
|
|
1490
1518
|
type: "submit",
|
|
1491
1519
|
disabled: savingCustomToken,
|
|
@@ -1497,15 +1525,15 @@ function SettingsView($$renderer, $$props) {
|
|
|
1497
1525
|
$$renderer2.push(`<!----></div> `);
|
|
1498
1526
|
if (customTokenError) {
|
|
1499
1527
|
$$renderer2.push("<!--[0-->");
|
|
1500
|
-
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$
|
|
1528
|
+
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$27.escape(customTokenError)}</div>`);
|
|
1501
1529
|
} else if (customTokenMsg) {
|
|
1502
1530
|
$$renderer2.push("<!--[1-->");
|
|
1503
|
-
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$
|
|
1531
|
+
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$27.escape(customTokenMsg)}</div>`);
|
|
1504
1532
|
} else {
|
|
1505
1533
|
$$renderer2.push("<!--[-1-->");
|
|
1506
1534
|
}
|
|
1507
1535
|
$$renderer2.push(`<!--]--></form> <form class="row divided token-row svelte-1n6ht58" method="POST" action="?/customModels"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Model IDs</div> <div class="desc svelte-1n6ht58">Model aliases to use for each tier. Prefilled with defaults from the reference
|
|
1508
|
-
launcher script. Leave a field as-is to keep its current value.</div></div></div> <div class="model-fields svelte-1n6ht58"><label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Opus</span> <input type="text" name="opusModel" class="image-input svelte-1n6ht58"${$
|
|
1536
|
+
launcher script. Leave a field as-is to keep its current value.</div></div></div> <div class="model-fields svelte-1n6ht58"><label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Opus</span> <input type="text" name="opusModel" class="image-input svelte-1n6ht58"${$27.attr("value", customOpusModel)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Sonnet</span> <input type="text" name="sonnetModel" class="image-input svelte-1n6ht58"${$27.attr("value", customSonnetModel)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Haiku</span> <input type="text" name="haikuModel" class="image-input svelte-1n6ht58"${$27.attr("value", customHaikuModel)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Small/fast</span> <input type="text" name="smallFastModel" class="image-input svelte-1n6ht58"${$27.attr("value", customSmallFastModel)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Default</span> <input type="text" name="defaultModel" class="image-input svelte-1n6ht58"${$27.attr("value", customDefaultModel)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <div class="model-save-row svelte-1n6ht58">`);
|
|
1509
1537
|
Button($$renderer2, {
|
|
1510
1538
|
type: "submit",
|
|
1511
1539
|
disabled: savingCustomModels,
|
|
@@ -1517,10 +1545,10 @@ function SettingsView($$renderer, $$props) {
|
|
|
1517
1545
|
$$renderer2.push(`<!----></div></div> `);
|
|
1518
1546
|
if (customModelsError) {
|
|
1519
1547
|
$$renderer2.push("<!--[0-->");
|
|
1520
|
-
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$
|
|
1548
|
+
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$27.escape(customModelsError)}</div>`);
|
|
1521
1549
|
} else if (customModelsMsg) {
|
|
1522
1550
|
$$renderer2.push("<!--[1-->");
|
|
1523
|
-
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$
|
|
1551
|
+
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$27.escape(customModelsMsg)}</div>`);
|
|
1524
1552
|
} else {
|
|
1525
1553
|
$$renderer2.push("<!--[-1-->");
|
|
1526
1554
|
}
|
|
@@ -1528,7 +1556,7 @@ function SettingsView($$renderer, $$props) {
|
|
|
1528
1556
|
} else {
|
|
1529
1557
|
$$renderer2.push("<!--[-1-->");
|
|
1530
1558
|
}
|
|
1531
|
-
$$renderer2.push(`<!--]--></section> <section${$
|
|
1559
|
+
$$renderer2.push(`<!--]--></section> <section${$27.attr_class("card svelte-1n6ht58", undefined, { "disabled-card": customEndpoint })}><form class="row svelte-1n6ht58" method="POST" action="?/manualModelToggle"><div class="label svelte-1n6ht58">`);
|
|
1532
1560
|
Cpu($$renderer2, { size: 18 });
|
|
1533
1561
|
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Override models manually `);
|
|
1534
1562
|
if (customEndpoint) {
|
|
@@ -1547,17 +1575,17 @@ function SettingsView($$renderer, $$props) {
|
|
|
1547
1575
|
$$renderer2.push(`Pin which model <code class="svelte-1n6ht58">claude</code> uses on the standard (subscription) path. Only
|
|
1548
1576
|
the fields you fill are injected into new containers as <code class="svelte-1n6ht58">ANTHROPIC_*_MODEL</code> variables; blanks fall through to Claude Code's own defaults.`);
|
|
1549
1577
|
}
|
|
1550
|
-
$$renderer2.push(`<!--]--></div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$
|
|
1578
|
+
$$renderer2.push(`<!--]--></div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$27.attr("checked", manualModelOverride, true)}${$27.attr("disabled", savingManualModelToggle || customEndpoint, true)} class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> `);
|
|
1551
1579
|
if (manualModelToggleError) {
|
|
1552
1580
|
$$renderer2.push("<!--[0-->");
|
|
1553
|
-
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$
|
|
1581
|
+
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$27.escape(manualModelToggleError)}</div></div>`);
|
|
1554
1582
|
} else {
|
|
1555
1583
|
$$renderer2.push("<!--[-1-->");
|
|
1556
1584
|
}
|
|
1557
1585
|
$$renderer2.push(`<!--]--> `);
|
|
1558
1586
|
if (manualModelOverride) {
|
|
1559
1587
|
$$renderer2.push("<!--[0-->");
|
|
1560
|
-
$$renderer2.push(`<form class="row divided token-row svelte-1n6ht58" method="POST" action="?/manualModels"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Model IDs</div> <div class="desc svelte-1n6ht58">A model name or alias per tier, e.g. <code class="svelte-1n6ht58">opusplan</code>, <code class="svelte-1n6ht58">opus</code>, <code class="svelte-1n6ht58">sonnet</code>, or a full <code class="svelte-1n6ht58">claude-\u2026</code> id. Leave a field blank to skip it.</div></div></div> <div class="model-fields svelte-1n6ht58"><label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Opus</span> <input type="text" name="opusModel" class="image-input svelte-1n6ht58"${$
|
|
1588
|
+
$$renderer2.push(`<form class="row divided token-row svelte-1n6ht58" method="POST" action="?/manualModels"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Model IDs</div> <div class="desc svelte-1n6ht58">A model name or alias per tier, e.g. <code class="svelte-1n6ht58">opusplan</code>, <code class="svelte-1n6ht58">opus</code>, <code class="svelte-1n6ht58">sonnet</code>, or a full <code class="svelte-1n6ht58">claude-\u2026</code> id. Leave a field blank to skip it.</div></div></div> <div class="model-fields svelte-1n6ht58"><label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Opus</span> <input type="text" name="opusModel" class="image-input svelte-1n6ht58"${$27.attr("value", manualOpus)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Sonnet</span> <input type="text" name="sonnetModel" class="image-input svelte-1n6ht58"${$27.attr("value", manualSonnet)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Haiku</span> <input type="text" name="haikuModel" class="image-input svelte-1n6ht58"${$27.attr("value", manualHaiku)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Small/fast</span> <input type="text" name="smallFastModel" class="image-input svelte-1n6ht58"${$27.attr("value", manualSmallFast)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Default</span> <input type="text" name="defaultModel" class="image-input svelte-1n6ht58"${$27.attr("value", manualDefault)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <div class="model-save-row svelte-1n6ht58">`);
|
|
1561
1589
|
Button($$renderer2, {
|
|
1562
1590
|
type: "submit",
|
|
1563
1591
|
disabled: savingManualModels,
|
|
@@ -1569,10 +1597,10 @@ function SettingsView($$renderer, $$props) {
|
|
|
1569
1597
|
$$renderer2.push(`<!----></div></div> `);
|
|
1570
1598
|
if (manualModelsError) {
|
|
1571
1599
|
$$renderer2.push("<!--[0-->");
|
|
1572
|
-
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$
|
|
1600
|
+
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$27.escape(manualModelsError)}</div>`);
|
|
1573
1601
|
} else if (manualModelsMsg) {
|
|
1574
1602
|
$$renderer2.push("<!--[1-->");
|
|
1575
|
-
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$
|
|
1603
|
+
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$27.escape(manualModelsMsg)}</div>`);
|
|
1576
1604
|
} else {
|
|
1577
1605
|
$$renderer2.push("<!--[-1-->");
|
|
1578
1606
|
}
|
|
@@ -1584,10 +1612,10 @@ function SettingsView($$renderer, $$props) {
|
|
|
1584
1612
|
Variable($$renderer2, { size: 20 });
|
|
1585
1613
|
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Host environment variables</div> <div class="desc svelte-1n6ht58">Forward selected environment variables from this machine into every new container's
|
|
1586
1614
|
interactive shells. Values are read from this process's own environment at container
|
|
1587
|
-
start and are never shown here or stored \u2014 only the variable names are saved.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$
|
|
1615
|
+
start and are never shown here or stored \u2014 only the variable names are saved.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$27.attr("checked", hostEnvVars, true)}${$27.attr("disabled", savingHostEnvToggle, true)} class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> `);
|
|
1588
1616
|
if (hostEnvToggleError) {
|
|
1589
1617
|
$$renderer2.push("<!--[0-->");
|
|
1590
|
-
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$
|
|
1618
|
+
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$27.escape(hostEnvToggleError)}</div></div>`);
|
|
1591
1619
|
} else {
|
|
1592
1620
|
$$renderer2.push("<!--[-1-->");
|
|
1593
1621
|
}
|
|
@@ -1595,18 +1623,18 @@ function SettingsView($$renderer, $$props) {
|
|
|
1595
1623
|
if (hostEnvVars) {
|
|
1596
1624
|
$$renderer2.push("<!--[0-->");
|
|
1597
1625
|
$$renderer2.push(`<div class="row divided var-row svelte-1n6ht58"><div class="var-list svelte-1n6ht58">`);
|
|
1598
|
-
const each_array_2 = $
|
|
1626
|
+
const each_array_2 = $27.ensure_array_like(hostEnvNames);
|
|
1599
1627
|
if (each_array_2.length !== 0) {
|
|
1600
1628
|
$$renderer2.push("<!--[-->");
|
|
1601
1629
|
for (let $$index_3 = 0, $$length = each_array_2.length;$$index_3 < $$length; $$index_3++) {
|
|
1602
1630
|
let name = each_array_2[$$index_3];
|
|
1603
1631
|
$$renderer2.push(`<form class="var-item svelte-1n6ht58" method="POST" action="?/hostEnvVarNames"><!--[-->`);
|
|
1604
|
-
const each_array_3 = $
|
|
1632
|
+
const each_array_3 = $27.ensure_array_like(hostEnvNames.filter((n) => n !== name));
|
|
1605
1633
|
for (let $$index_2 = 0, $$length2 = each_array_3.length;$$index_2 < $$length2; $$index_2++) {
|
|
1606
1634
|
let other = each_array_3[$$index_2];
|
|
1607
|
-
$$renderer2.push(`<input type="hidden" name="names"${$
|
|
1635
|
+
$$renderer2.push(`<input type="hidden" name="names"${$27.attr("value", other)}/>`);
|
|
1608
1636
|
}
|
|
1609
|
-
$$renderer2.push(`<!--]--> <span class="var-name svelte-1n6ht58">${$
|
|
1637
|
+
$$renderer2.push(`<!--]--> <span class="var-name svelte-1n6ht58">${$27.escape(name)}</span> <span${$27.attr_class("var-status svelte-1n6ht58", undefined, { present: hostEnvPresence[name] })}${$27.attr("title", hostEnvPresence[name] ? "Set on this host \u2014 will be injected" : "Not set on this host \u2014 will be skipped")}>${$27.escape(hostEnvPresence[name] ? "set" : "missing")}</span> <button type="submit" class="var-remove svelte-1n6ht58"${$27.attr("disabled", savingHostEnvNames, true)}${$27.attr("aria-label", `Remove ${name}`)}>`);
|
|
1610
1638
|
X($$renderer2, { size: 13 });
|
|
1611
1639
|
$$renderer2.push(`<!----></button></form>`);
|
|
1612
1640
|
}
|
|
@@ -1615,12 +1643,12 @@ function SettingsView($$renderer, $$props) {
|
|
|
1615
1643
|
$$renderer2.push(`<div class="var-empty svelte-1n6ht58">No variables added yet.</div>`);
|
|
1616
1644
|
}
|
|
1617
1645
|
$$renderer2.push(`<!--]--></div> <form class="var-add svelte-1n6ht58" method="POST" action="?/hostEnvVarNames"><!--[-->`);
|
|
1618
|
-
const each_array_4 = $
|
|
1646
|
+
const each_array_4 = $27.ensure_array_like(hostEnvNames);
|
|
1619
1647
|
for (let $$index_4 = 0, $$length = each_array_4.length;$$index_4 < $$length; $$index_4++) {
|
|
1620
1648
|
let name = each_array_4[$$index_4];
|
|
1621
|
-
$$renderer2.push(`<input type="hidden" name="names"${$
|
|
1649
|
+
$$renderer2.push(`<input type="hidden" name="names"${$27.attr("value", name)}/>`);
|
|
1622
1650
|
}
|
|
1623
|
-
$$renderer2.push(`<!--]--> <input type="text" name="names" class="image-input svelte-1n6ht58"${$
|
|
1651
|
+
$$renderer2.push(`<!--]--> <input type="text" name="names" class="image-input svelte-1n6ht58"${$27.attr("value", newHostEnvName)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off" placeholder="AWS_ACCESS_KEY_ID"/> `);
|
|
1624
1652
|
Button($$renderer2, {
|
|
1625
1653
|
type: "submit",
|
|
1626
1654
|
icon: Plus,
|
|
@@ -1633,10 +1661,10 @@ function SettingsView($$renderer, $$props) {
|
|
|
1633
1661
|
$$renderer2.push(`<!----></form> `);
|
|
1634
1662
|
if (hostEnvNamesError) {
|
|
1635
1663
|
$$renderer2.push("<!--[0-->");
|
|
1636
|
-
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$
|
|
1664
|
+
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$27.escape(hostEnvNamesError)}</div>`);
|
|
1637
1665
|
} else if (hostEnvNamesMsg) {
|
|
1638
1666
|
$$renderer2.push("<!--[1-->");
|
|
1639
|
-
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$
|
|
1667
|
+
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$27.escape(hostEnvNamesMsg)}</div>`);
|
|
1640
1668
|
} else {
|
|
1641
1669
|
$$renderer2.push("<!--[-1-->");
|
|
1642
1670
|
}
|
|
@@ -1648,10 +1676,10 @@ function SettingsView($$renderer, $$props) {
|
|
|
1648
1676
|
Key_square($$renderer2, { size: 20 });
|
|
1649
1677
|
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Custom environment variables</div> <div class="desc svelte-1n6ht58">Inject your own <code class="svelte-1n6ht58">NAME=value</code> pairs into every new container as <code class="svelte-1n6ht58">containerEnv</code>, available to all processes. Values are secret \u2014 stored
|
|
1650
1678
|
locally, masked in the build log, and never shown here after saving. Re-add a name to
|
|
1651
|
-
update its value.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$
|
|
1679
|
+
update its value.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$27.attr("checked", customEnvEnabled, true)}${$27.attr("disabled", savingCustomEnvToggle, true)} class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> `);
|
|
1652
1680
|
if (customEnvToggleError) {
|
|
1653
1681
|
$$renderer2.push("<!--[0-->");
|
|
1654
|
-
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$
|
|
1682
|
+
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$27.escape(customEnvToggleError)}</div></div>`);
|
|
1655
1683
|
} else {
|
|
1656
1684
|
$$renderer2.push("<!--[-1-->");
|
|
1657
1685
|
}
|
|
@@ -1659,12 +1687,12 @@ function SettingsView($$renderer, $$props) {
|
|
|
1659
1687
|
if (customEnvEnabled) {
|
|
1660
1688
|
$$renderer2.push("<!--[0-->");
|
|
1661
1689
|
$$renderer2.push(`<div class="row divided var-row svelte-1n6ht58"><div class="var-list svelte-1n6ht58">`);
|
|
1662
|
-
const each_array_5 = $
|
|
1690
|
+
const each_array_5 = $27.ensure_array_like(customEnvNames);
|
|
1663
1691
|
if (each_array_5.length !== 0) {
|
|
1664
1692
|
$$renderer2.push("<!--[-->");
|
|
1665
1693
|
for (let $$index_5 = 0, $$length = each_array_5.length;$$index_5 < $$length; $$index_5++) {
|
|
1666
1694
|
let name = each_array_5[$$index_5];
|
|
1667
|
-
$$renderer2.push(`<form class="var-item svelte-1n6ht58" method="POST" action="?/removeCustomEnvVar"><input type="hidden" name="name"${$
|
|
1695
|
+
$$renderer2.push(`<form class="var-item svelte-1n6ht58" method="POST" action="?/removeCustomEnvVar"><input type="hidden" name="name"${$27.attr("value", name)}/> <span class="var-name svelte-1n6ht58">${$27.escape(name)}</span> <span class="var-status present svelte-1n6ht58" title="Set \u2014 injected into every new container">\u2022\u2022\u2022\u2022 saved</span> <button type="submit" class="var-remove svelte-1n6ht58"${$27.attr("disabled", savingCustomEnv, true)}${$27.attr("aria-label", `Remove ${name}`)}>`);
|
|
1668
1696
|
X($$renderer2, { size: 13 });
|
|
1669
1697
|
$$renderer2.push(`<!----></button></form>`);
|
|
1670
1698
|
}
|
|
@@ -1672,7 +1700,7 @@ function SettingsView($$renderer, $$props) {
|
|
|
1672
1700
|
$$renderer2.push("<!--[!-->");
|
|
1673
1701
|
$$renderer2.push(`<div class="var-empty svelte-1n6ht58">No variables added yet.</div>`);
|
|
1674
1702
|
}
|
|
1675
|
-
$$renderer2.push(`<!--]--></div> <form class="var-add svelte-1n6ht58" method="POST" action="?/setCustomEnvVar"><input type="text" name="name" class="image-input svelte-1n6ht58"${$
|
|
1703
|
+
$$renderer2.push(`<!--]--></div> <form class="var-add svelte-1n6ht58" method="POST" action="?/setCustomEnvVar"><input type="text" name="name" class="image-input svelte-1n6ht58"${$27.attr("value", newCustomEnvName)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off" placeholder="MY_SECRET"/> <input type="password" name="value" class="image-input svelte-1n6ht58"${$27.attr("value", newCustomEnvValue)} spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off" placeholder="value"/> `);
|
|
1676
1704
|
Button($$renderer2, {
|
|
1677
1705
|
type: "submit",
|
|
1678
1706
|
icon: Plus,
|
|
@@ -1685,10 +1713,10 @@ function SettingsView($$renderer, $$props) {
|
|
|
1685
1713
|
$$renderer2.push(`<!----></form> `);
|
|
1686
1714
|
if (customEnvError) {
|
|
1687
1715
|
$$renderer2.push("<!--[0-->");
|
|
1688
|
-
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$
|
|
1716
|
+
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$27.escape(customEnvError)}</div>`);
|
|
1689
1717
|
} else if (customEnvMsg) {
|
|
1690
1718
|
$$renderer2.push("<!--[1-->");
|
|
1691
|
-
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$
|
|
1719
|
+
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$27.escape(customEnvMsg)}</div>`);
|
|
1692
1720
|
} else {
|
|
1693
1721
|
$$renderer2.push("<!--[-1-->");
|
|
1694
1722
|
}
|
|
@@ -1702,12 +1730,15 @@ function SettingsView($$renderer, $$props) {
|
|
|
1702
1730
|
ThemePicker($$renderer2, {});
|
|
1703
1731
|
$$renderer2.push(`<!----></div></section> <section class="card svelte-1n6ht58"><div class="row svelte-1n6ht58"><div class="label svelte-1n6ht58">`);
|
|
1704
1732
|
Volume_2($$renderer2, { size: 20 });
|
|
1705
|
-
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Attention sound</div> <div class="desc svelte-1n6ht58">Play a chime when an instance finishes a task or needs your input.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox"${$
|
|
1733
|
+
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Attention sound</div> <div class="desc svelte-1n6ht58">Play a chime when an instance finishes a task or needs your input.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox"${$27.attr("checked", sound, true)} class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></div></section> <section class="card svelte-1n6ht58"><div class="row svelte-1n6ht58"><div class="label svelte-1n6ht58">`);
|
|
1734
|
+
Keyboard($$renderer2, { size: 20 });
|
|
1735
|
+
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Tab keyboard shortcuts</div> <div class="desc svelte-1n6ht58">Jump between open instance tabs with <code class="svelte-1n6ht58">Alt</code>+<code class="svelte-1n6ht58">1</code>\u2013<code class="svelte-1n6ht58">9</code> (9 is
|
|
1736
|
+
always the last tab). Turn off to leave those keystrokes to the editor.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox"${$27.attr("checked", tabShortcuts, true)} class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></div></section> <section class="card svelte-1n6ht58"><form class="row svelte-1n6ht58" method="POST" action="?/petToggle"><div class="label svelte-1n6ht58">`);
|
|
1706
1737
|
Paw_print($$renderer2, { size: 18 });
|
|
1707
|
-
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Pet logo</div> <div class="desc svelte-1n6ht58">Swap the box in the header for a pixel pet.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$
|
|
1738
|
+
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Pet logo</div> <div class="desc svelte-1n6ht58">Swap the box in the header for a pixel pet.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$27.attr("checked", !!petArt, true)}${$27.attr("disabled", savingPet, true)} class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> `);
|
|
1708
1739
|
if (petError) {
|
|
1709
1740
|
$$renderer2.push("<!--[0-->");
|
|
1710
|
-
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$
|
|
1741
|
+
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$27.escape(petError)}</div></div>`);
|
|
1711
1742
|
} else {
|
|
1712
1743
|
$$renderer2.push("<!--[-1-->");
|
|
1713
1744
|
}
|
|
@@ -1715,10 +1746,10 @@ function SettingsView($$renderer, $$props) {
|
|
|
1715
1746
|
if (petArt) {
|
|
1716
1747
|
$$renderer2.push("<!--[0-->");
|
|
1717
1748
|
$$renderer2.push(`<div class="sub pets svelte-1n6ht58"><!--[-->`);
|
|
1718
|
-
const each_array_6 = $
|
|
1749
|
+
const each_array_6 = $27.ensure_array_like(avatars);
|
|
1719
1750
|
for (let $$index_6 = 0, $$length = each_array_6.length;$$index_6 < $$length; $$index_6++) {
|
|
1720
1751
|
let art = each_array_6[$$index_6];
|
|
1721
|
-
$$renderer2.push(`<form method="POST" action="?/petChoose" class="svelte-1n6ht58"><input type="hidden" name="name"${$
|
|
1752
|
+
$$renderer2.push(`<form method="POST" action="?/petChoose" class="svelte-1n6ht58"><input type="hidden" name="name"${$27.attr("value", art.name)}/> <button type="submit"${$27.attr_class("pet svelte-1n6ht58", undefined, { selected: art.name === petArt.name })}${$27.attr("disabled", savingPet, true)}${$27.attr("title", art.name)}${$27.attr("aria-label", art.name)}${$27.attr("aria-pressed", art.name === petArt.name)}>`);
|
|
1722
1753
|
Avatar($$renderer2, { art, name: art.name, scale: 4 });
|
|
1723
1754
|
$$renderer2.push(`<!----></button></form>`);
|
|
1724
1755
|
}
|
|
@@ -1731,30 +1762,30 @@ function SettingsView($$renderer, $$props) {
|
|
|
1731
1762
|
$$renderer2.push(`<!----> <span class="name svelte-1n6ht58">Advanced</span> <span class="hint svelte-1n6ht58">escape hatches \u2014 defaults are right for almost everyone</span></summary> <form class="row divided svelte-1n6ht58" method="POST" action="?/serialInjectionsToggle"><div class="label svelte-1n6ht58">`);
|
|
1732
1763
|
List_ordered($$renderer2, { size: 20 });
|
|
1733
1764
|
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Serial boot injections</div> <div class="desc svelte-1n6ht58">Run boot injections one at a time instead of in parallel stages. Slower boot; useful
|
|
1734
|
-
when diagnosing injection interference.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$
|
|
1765
|
+
when diagnosing injection interference.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$27.attr("checked", serialInjections, true)}${$27.attr("disabled", savingSerial, true)} class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> `);
|
|
1735
1766
|
if (serialError) {
|
|
1736
1767
|
$$renderer2.push("<!--[0-->");
|
|
1737
|
-
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$
|
|
1768
|
+
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$27.escape(serialError)}</div></div>`);
|
|
1738
1769
|
} else {
|
|
1739
1770
|
$$renderer2.push("<!--[-1-->");
|
|
1740
1771
|
}
|
|
1741
1772
|
$$renderer2.push(`<!--]--> <form class="row divided svelte-1n6ht58" method="POST" action="?/noBuildkitToggle"><div class="label svelte-1n6ht58">`);
|
|
1742
1773
|
Boxes($$renderer2, { size: 20 });
|
|
1743
1774
|
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Don't force BuildKit</div> <div class="desc svelte-1n6ht58">Skip setting <code class="svelte-1n6ht58">DOCKER_BUILDKIT=1</code> for container builds and let the daemon's
|
|
1744
|
-
default builder decide. For daemons where forcing BuildKit breaks builds.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$
|
|
1775
|
+
default builder decide. For daemons where forcing BuildKit breaks builds.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$27.attr("checked", noBuildkit, true)}${$27.attr("disabled", savingBuildkit, true)} class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> `);
|
|
1745
1776
|
if (buildkitError) {
|
|
1746
1777
|
$$renderer2.push("<!--[0-->");
|
|
1747
|
-
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$
|
|
1778
|
+
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$27.escape(buildkitError)}</div></div>`);
|
|
1748
1779
|
} else {
|
|
1749
1780
|
$$renderer2.push("<!--[-1-->");
|
|
1750
1781
|
}
|
|
1751
1782
|
$$renderer2.push(`<!--]--> <form class="row divided svelte-1n6ht58" method="POST" action="?/blockingExtInstallToggle"><div class="label svelte-1n6ht58">`);
|
|
1752
1783
|
Puzzle($$renderer2, { size: 20 });
|
|
1753
1784
|
$$renderer2.push(`<!----> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Blocking IDE extension install</div> <div class="desc svelte-1n6ht58">Install the Claude Code IDE extension before code-server starts, so the first window
|
|
1754
|
-
always has it active. Slower first boot.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$
|
|
1785
|
+
always has it active. Slower first boot.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled"${$27.attr("checked", blockingExtInstall, true)}${$27.attr("disabled", savingBlocking, true)} class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> `);
|
|
1755
1786
|
if (blockingError) {
|
|
1756
1787
|
$$renderer2.push("<!--[0-->");
|
|
1757
|
-
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$
|
|
1788
|
+
$$renderer2.push(`<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58">${$27.escape(blockingError)}</div></div>`);
|
|
1758
1789
|
} else {
|
|
1759
1790
|
$$renderer2.push("<!--[-1-->");
|
|
1760
1791
|
}
|
|
@@ -1764,10 +1795,10 @@ function SettingsView($$renderer, $$props) {
|
|
|
1764
1795
|
again.</div> `);
|
|
1765
1796
|
if (verError) {
|
|
1766
1797
|
$$renderer2.push("<!--[0-->");
|
|
1767
|
-
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$
|
|
1798
|
+
$$renderer2.push(`<div class="msg error svelte-1n6ht58">${$27.escape(verError)}</div>`);
|
|
1768
1799
|
} else if (verMsg) {
|
|
1769
1800
|
$$renderer2.push("<!--[1-->");
|
|
1770
|
-
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$
|
|
1801
|
+
$$renderer2.push(`<div class="msg ok svelte-1n6ht58">${$27.escape(verMsg)}</div>`);
|
|
1771
1802
|
} else {
|
|
1772
1803
|
$$renderer2.push("<!--[-1-->");
|
|
1773
1804
|
}
|
|
@@ -1777,7 +1808,7 @@ function SettingsView($$renderer, $$props) {
|
|
|
1777
1808
|
icon: Trash_2,
|
|
1778
1809
|
disabled: clearingVer,
|
|
1779
1810
|
children: ($$renderer3) => {
|
|
1780
|
-
$$renderer3.push(`<!---->${$
|
|
1811
|
+
$$renderer3.push(`<!---->${$27.escape(clearingVer ? "Clearing\u2026" : "Clear cache")}`);
|
|
1781
1812
|
},
|
|
1782
1813
|
$$slots: { default: true }
|
|
1783
1814
|
});
|
|
@@ -1801,7 +1832,7 @@ function SettingsView($$renderer, $$props) {
|
|
|
1801
1832
|
}
|
|
1802
1833
|
$$renderer2.push(`<!--]--></form></section> `);
|
|
1803
1834
|
CoinButton($$renderer2, {});
|
|
1804
|
-
$$renderer2.push(`<!----> <div class="version svelte-1n6ht58">Codebay v${$
|
|
1835
|
+
$$renderer2.push(`<!----> <div class="version svelte-1n6ht58">Codebay v${$27.escape(version)}</div></main></div> `);
|
|
1805
1836
|
Toaster($$renderer2, { toastOptions: TOAST_OPTIONS });
|
|
1806
1837
|
$$renderer2.push(`<!---->`);
|
|
1807
1838
|
});
|
|
@@ -1853,7 +1884,7 @@ function Settings($$renderer, $$props) {
|
|
|
1853
1884
|
} = $$props;
|
|
1854
1885
|
if (true) {
|
|
1855
1886
|
let failed = function($$renderer3, error) {
|
|
1856
|
-
$$renderer3.push(`<mochi-island-failure data-component="SettingsView"${$
|
|
1887
|
+
$$renderer3.push(`<mochi-island-failure data-component="SettingsView"${$28.attr("data-message", error.message)}></mochi-island-failure>`);
|
|
1857
1888
|
};
|
|
1858
1889
|
$$renderer2.push("<!--[0-->");
|
|
1859
1890
|
$$renderer2.boundary({ failed }, ($$renderer3) => {
|
|
@@ -1861,7 +1892,7 @@ function Settings($$renderer, $$props) {
|
|
|
1861
1892
|
{
|
|
1862
1893
|
HydratableBoundary($$renderer3, {
|
|
1863
1894
|
children: ($$renderer4) => {
|
|
1864
|
-
$$renderer4.push(`<mochi-hydratable-island component-name="SettingsView_8hmarwmf8onq" component-url="__MOCHI_COMPONENT_URL__SettingsView_8hmarwmf8onq__"${$
|
|
1895
|
+
$$renderer4.push(`<mochi-hydratable-island component-name="SettingsView_8hmarwmf8onq" component-url="__MOCHI_COMPONENT_URL__SettingsView_8hmarwmf8onq__"${$28.attr("props-ref", emitIslandProps({
|
|
1865
1896
|
pet,
|
|
1866
1897
|
defaultMode,
|
|
1867
1898
|
claudePermissionMode,
|