viberoom 0.7.0 → 0.9.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/NOTICE +5 -3
- package/README.md +90 -19
- package/assets/vendors/grok.svg +3 -0
- package/assets/vendors/hermes.svg +1 -0
- package/dist/agent-health.js +1 -1
- package/dist/hub.js +98 -49
- package/dist/jsonrpc.js +3 -1
- package/dist/look-lint.js +180 -0
- package/dist/looks.js +151 -0
- package/dist/main.js +4 -1
- package/dist/mcp-skills-server.js +87 -0
- package/dist/persona.js +10 -3
- package/dist/recipes.js +110 -8
- package/dist/room-design.js +9 -6
- package/dist/room.js +190 -26
- package/dist/server.js +73 -1
- package/dist/skills.js +23 -2
- package/package.json +1 -1
- package/ui/app.css +23 -16
- package/ui/app.js +198 -66
- package/ui/components.css +96 -115
- package/ui/components.js +8 -3
- package/ui/index.html +3 -2
- package/ui/looks.css +462 -77
- package/ui/theme.css +94 -13
- package/ui/tokens.js +526 -57
package/ui/theme.css
CHANGED
|
@@ -163,6 +163,7 @@
|
|
|
163
163
|
--shadow: 0 2px 0 rgba(28, 27, 51, 0.04);
|
|
164
164
|
--bevel: none;
|
|
165
165
|
--shadow-room: 0px;
|
|
166
|
+
--bevel-pressed: none;
|
|
166
167
|
--grad-canvas: radial-gradient(900px 520px at 100% 100%, rgba(91, 91, 240, 0.06), transparent 70%), radial-gradient(640px 380px at 0% 0%, rgba(47, 201, 126, 0.04), transparent 70%), linear-gradient(165deg, #fdfdff 0%, #f7f7fe 55%, #f0f1fd 100%);
|
|
167
168
|
--canvas-pattern: radial-gradient(circle at 1px 1px, rgba(91, 91, 240, 0.13) 0.9px, transparent 1.6px);
|
|
168
169
|
--canvas-pattern-size: 22px 22px;
|
|
@@ -171,6 +172,7 @@
|
|
|
171
172
|
--sb-thumb: rgba(91, 91, 240, 0.22);
|
|
172
173
|
--sb-thumb-hover: rgba(91, 91, 240, 0.45);
|
|
173
174
|
--r-scale: 1;
|
|
175
|
+
--r-ctl-min: 0px;
|
|
174
176
|
--r-xs: calc(8px * var(--r-scale));
|
|
175
177
|
--r-sm: calc(12px * var(--r-scale));
|
|
176
178
|
--r-md: calc(14px * var(--r-scale));
|
|
@@ -204,6 +206,7 @@
|
|
|
204
206
|
--btn-hover-ink: #5b5bf0;
|
|
205
207
|
--btn-on-primary: #ffffff;
|
|
206
208
|
--btn-secondary-bg: #ffffff;
|
|
209
|
+
--btn-secondary-hover-bg: #ffffff;
|
|
207
210
|
--btn-soft-bg: #eef0fb;
|
|
208
211
|
--btn-soft-hover-bg: #e4e6fb;
|
|
209
212
|
--btn-ghost-ink: #8080a3;
|
|
@@ -219,8 +222,8 @@
|
|
|
219
222
|
--btn-spinner-track-quiet: #e4e6fb;
|
|
220
223
|
--btn-spinner-head-quiet: #5b5bf0;
|
|
221
224
|
--btn-disabled-opacity: 0.45;
|
|
222
|
-
--btn-dark-bg: rgba(
|
|
223
|
-
--btn-dark-ink: #
|
|
225
|
+
--btn-dark-bg: rgba(244, 242, 255, 0.12);
|
|
226
|
+
--btn-dark-ink: #f4f2ff;
|
|
224
227
|
--btn-dark-hover-bg: #5b5bf0;
|
|
225
228
|
--btn-warn-ink: #a07408;
|
|
226
229
|
--btn-warn-hover-bg: #fff3cc;
|
|
@@ -234,6 +237,23 @@
|
|
|
234
237
|
--btn-paper-bg: #ffffff;
|
|
235
238
|
--btn-paper-ink: #5c5c80;
|
|
236
239
|
--btn-paper-hover-bg: #f6f6fb;
|
|
240
|
+
--btn-border: 0;
|
|
241
|
+
--btn-case: none;
|
|
242
|
+
--btn-tracking: 0px;
|
|
243
|
+
--btn-link-underline: none;
|
|
244
|
+
--btn-ghost-bg: transparent;
|
|
245
|
+
--btn-shadow: none;
|
|
246
|
+
--btn-hover-shadow: none;
|
|
247
|
+
--btn-hover-lift: 0px;
|
|
248
|
+
--btn-active-shadow: none;
|
|
249
|
+
--btn-primary-active-shadow: var(--shadow-primary);
|
|
250
|
+
--btn-primary-hover-filter: brightness(1.05);
|
|
251
|
+
--btn-secondary-hover-shadow: var(--shadow-tile);
|
|
252
|
+
--btn-secondary-active-shadow: var(--shadow-tile);
|
|
253
|
+
--btn-danger-solid-hover-shadow: 0 8px 18px -8px rgba(224, 85, 74, 0.8);
|
|
254
|
+
--btn-danger-solid-active-shadow: 0 8px 18px -8px rgba(224, 85, 74, 0.8);
|
|
255
|
+
--btn-ok-shadow: none;
|
|
256
|
+
--btn-warn-shadow: none;
|
|
237
257
|
--btn-h: 42px;
|
|
238
258
|
--btn-h-sm: 34px;
|
|
239
259
|
--btn-h-xs: 24px;
|
|
@@ -260,6 +280,14 @@
|
|
|
260
280
|
--icon-button-inline-ink: #5c5c80;
|
|
261
281
|
--icon-button-inline-on-bg: rgba(91, 91, 240, 0.1);
|
|
262
282
|
--icon-button-inline-on-ink: #5b5bf0;
|
|
283
|
+
--icon-button-ghost-bg: transparent;
|
|
284
|
+
--icon-button-shadow: none;
|
|
285
|
+
--icon-button-hover-shadow: none;
|
|
286
|
+
--icon-button-hover-lift: 0px;
|
|
287
|
+
--icon-button-active-shadow: none;
|
|
288
|
+
--icon-button-primary-shadow: var(--shadow-primary);
|
|
289
|
+
--icon-button-primary-hover-shadow: var(--shadow-primary);
|
|
290
|
+
--icon-button-primary-active-shadow: var(--shadow-primary);
|
|
263
291
|
--badge-bg: #eef0fb;
|
|
264
292
|
--badge-ink: #5b5bf0;
|
|
265
293
|
--badge-attention-bg: #fff3cc;
|
|
@@ -267,19 +295,33 @@
|
|
|
267
295
|
--badge-muted-bg: #f1f1f8;
|
|
268
296
|
--badge-muted-ink: #8080a3;
|
|
269
297
|
--badge-outline-border: #e4e6fb;
|
|
298
|
+
--badge-outline-w: 2px;
|
|
270
299
|
--badge-outline-ink: #8080a3;
|
|
271
300
|
--badge-fs-xs: calc(10px * var(--fs-scale));
|
|
301
|
+
--badge-fill: 100%;
|
|
302
|
+
--badge-border: 0;
|
|
303
|
+
--badge-case: none;
|
|
304
|
+
--badge-tracking: 0px;
|
|
305
|
+
--badge-shadow: none;
|
|
272
306
|
--chip-bg: #eef0fb;
|
|
273
307
|
--chip-ink: #5b5bf0;
|
|
274
308
|
--chip-hover-bg: #e4e6fb;
|
|
309
|
+
--chip-fill: 100%;
|
|
310
|
+
--chip-border: 0;
|
|
311
|
+
--chip-shadow: none;
|
|
312
|
+
--chip-hover-shadow: none;
|
|
313
|
+
--chip-hover-lift: 0px;
|
|
314
|
+
--chip-active-shadow: none;
|
|
315
|
+
--chip-active-drop: 0px;
|
|
275
316
|
--file-card-bg: #26244a;
|
|
276
317
|
--file-card-ink: #f4f2ff;
|
|
277
|
-
--file-card-head-bg: rgba(
|
|
318
|
+
--file-card-head-bg: rgba(244, 242, 255, 0.06);
|
|
278
319
|
--file-card-head-ink: #e8e6ff;
|
|
279
320
|
--file-card-head-meta: #a9a5d8;
|
|
280
321
|
--file-card-note-ink: #e0554a;
|
|
281
|
-
--file-card-image-body-bg: rgba(
|
|
322
|
+
--file-card-image-body-bg: rgba(244, 242, 255, 0.04);
|
|
282
323
|
--file-card-image-bg: #ffffff;
|
|
324
|
+
--file-card-shadow: var(--edge);
|
|
283
325
|
--tool-call-ready-bg: #d9f7e8;
|
|
284
326
|
--tool-call-ready-ink: #1d8f6a;
|
|
285
327
|
--tool-call-error-bg: #fff0ee;
|
|
@@ -301,6 +343,7 @@
|
|
|
301
343
|
--tool-fold-hover-ink: #5b5bf0;
|
|
302
344
|
--tool-fold-failed-ink: #e0554a;
|
|
303
345
|
--tool-fold-fs: calc(11px * var(--fs-scale));
|
|
346
|
+
--tool-fold-shadow: none;
|
|
304
347
|
--ask-card-bg: #fff3cc;
|
|
305
348
|
--ask-card-ink: #1c1b33;
|
|
306
349
|
--ask-card-quiet-ink: #8080a3;
|
|
@@ -309,6 +352,7 @@
|
|
|
309
352
|
--ask-card-kind-fs: calc(11px * var(--fs-scale));
|
|
310
353
|
--ask-card-input-fs: calc(11px * var(--fs-scale));
|
|
311
354
|
--ask-card-outcome-fs: calc(12px * var(--fs-scale));
|
|
355
|
+
--ask-card-shadow: none;
|
|
312
356
|
--reply-note-ink: #8080a3;
|
|
313
357
|
--reply-note-bg: #f6f6fb;
|
|
314
358
|
--reply-note-attention-ink: #a07408;
|
|
@@ -321,6 +365,7 @@
|
|
|
321
365
|
--look-card-border: #e4e6fb;
|
|
322
366
|
--look-card-hover-border: #a9a9f5;
|
|
323
367
|
--look-card-on-border: #5b5bf0;
|
|
368
|
+
--look-card-shadow: none;
|
|
324
369
|
--choice-bg: #f6f6fb;
|
|
325
370
|
--choice-ink: #5c5c80;
|
|
326
371
|
--choice-hover-bg: #eef0fb;
|
|
@@ -328,6 +373,13 @@
|
|
|
328
373
|
--choice-on-border: #5b5bf0;
|
|
329
374
|
--choice-quiet-ink: #8080a3;
|
|
330
375
|
--choice-h: 32px;
|
|
376
|
+
--choice-border: transparent;
|
|
377
|
+
--choice-shadow: none;
|
|
378
|
+
--choice-hover-shadow: none;
|
|
379
|
+
--choice-hover-lift: 0px;
|
|
380
|
+
--choice-active-shadow: none;
|
|
381
|
+
--choice-active-drop: 0px;
|
|
382
|
+
--choice-on-shadow: none;
|
|
331
383
|
--control-knob: #ffffff;
|
|
332
384
|
--control-knob-shadow: 0 1px 3px rgba(28, 27, 51, 0.25);
|
|
333
385
|
--control-box-bg: #ffffff;
|
|
@@ -339,6 +391,10 @@
|
|
|
339
391
|
--room-mark-grad-from: 72% 66%;
|
|
340
392
|
--room-mark-grad-to: 68% 52%;
|
|
341
393
|
--room-mark-emoji: 70% 93%;
|
|
394
|
+
--room-mark-shadow: none;
|
|
395
|
+
--room-mark-radius: calc(14px * var(--r-scale));
|
|
396
|
+
--room-mark-radius-lg: calc(16px * var(--r-scale));
|
|
397
|
+
--room-mark-radius-rail: calc(13px * var(--r-scale));
|
|
342
398
|
--pop-bg: #ffffff;
|
|
343
399
|
--pop-shadow: 0 10px 28px -12px rgba(28, 27, 51, 0.45);
|
|
344
400
|
--pop-arrow-shadow: 3px 3px 4px -3px rgba(28, 27, 51, 0.25);
|
|
@@ -403,19 +459,19 @@
|
|
|
403
459
|
--code-gutter-ink: #7c78ad;
|
|
404
460
|
--code-line-mark-ink: #ffcf8f;
|
|
405
461
|
--code-line-mark-bg: rgba(255, 207, 143, 0.16);
|
|
406
|
-
--code-head-bg: rgba(
|
|
462
|
+
--code-head-bg: rgba(244, 242, 255, 0.06);
|
|
407
463
|
--code-head-ink: #e8e6ff;
|
|
408
464
|
--code-head-meta: #a9a5d8;
|
|
409
|
-
--code-head-btn-bg: rgba(
|
|
410
|
-
--code-head-btn-ink: #
|
|
411
|
-
--code-body-bg: rgba(
|
|
465
|
+
--code-head-btn-bg: rgba(244, 242, 255, 0.12);
|
|
466
|
+
--code-head-btn-ink: #f4f2ff;
|
|
467
|
+
--code-body-bg: rgba(244, 242, 255, 0.04);
|
|
412
468
|
--code-sb-track: rgba(0, 0, 0, 0.25);
|
|
413
|
-
--code-sb-thumb: rgba(
|
|
414
|
-
--code-sb-thumb-hover: rgba(
|
|
415
|
-
--code-sb-firefox: rgba(
|
|
469
|
+
--code-sb-thumb: rgba(244, 242, 255, 0.3);
|
|
470
|
+
--code-sb-thumb-hover: rgba(244, 242, 255, 0.5);
|
|
471
|
+
--code-sb-firefox: rgba(244, 242, 255, 0.35);
|
|
416
472
|
--code-find-hit-bg: #ffcf8f;
|
|
417
473
|
--code-find-hit-ink: #26244a;
|
|
418
|
-
--syntax-comment: #
|
|
474
|
+
--syntax-comment: #7c78ad;
|
|
419
475
|
--syntax-punctuation: #c9c6ea;
|
|
420
476
|
--syntax-keyword: #b9a7ff;
|
|
421
477
|
--syntax-string: #8fe3bd;
|
|
@@ -444,6 +500,8 @@
|
|
|
444
500
|
--face-avatar-default: #5b5bf0;
|
|
445
501
|
--face-avatar-gloss: #ffffff;
|
|
446
502
|
--face-avatar-label-ink: #ffffff;
|
|
503
|
+
--face-shadow: 0 0 0 0 transparent;
|
|
504
|
+
--face-card-shadow: var(--shadow-pop);
|
|
447
505
|
--logo-tile-bg: #ffffff;
|
|
448
506
|
--logo-tile-ink: #1f1d3a;
|
|
449
507
|
--logo-tile-badge-bg: #ffffff;
|
|
@@ -454,11 +512,20 @@
|
|
|
454
512
|
--logo-tile-sm: 30px;
|
|
455
513
|
--logo-tile-md: 36px;
|
|
456
514
|
--logo-tile-lg: 40px;
|
|
515
|
+
--logo-tile-shadow: var(--shadow-tile);
|
|
516
|
+
--logo-tile-radius: calc(12px * var(--r-scale));
|
|
517
|
+
--logo-tile-radius-sm: calc(10px * var(--r-scale));
|
|
518
|
+
--logo-tile-radius-lg: calc(13px * var(--r-scale));
|
|
519
|
+
--logo-tile-radius-badge: calc(6px * var(--r-scale));
|
|
457
520
|
--unseen-line-ink: #be185d;
|
|
458
521
|
--unseen-line-bg: #fff1f7;
|
|
459
522
|
--unseen-line-line: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='8' viewBox='0 0 16 8'><path d='M0 4 Q4 0 8 4 T16 4' fill='none' stroke='%23be185d' stroke-width='1.6'/></svg>") repeat-x center / 16px 8px;
|
|
460
523
|
--unseen-line-line-h: 8px;
|
|
461
524
|
--unseen-line-line-opacity: 0.55;
|
|
525
|
+
--unseen-line-label-border: 0;
|
|
526
|
+
--unseen-line-label-case: none;
|
|
527
|
+
--unseen-line-label-tracking: 0px;
|
|
528
|
+
--unseen-line-label-shadow: none;
|
|
462
529
|
--number-field-step-w: 22px;
|
|
463
530
|
--number-field-step-ink: #8080a3;
|
|
464
531
|
--number-field-step-hover-bg: #eef0fb;
|
|
@@ -471,12 +538,14 @@
|
|
|
471
538
|
--adjust-row-back-hover-bg: #eef0fb;
|
|
472
539
|
--row-button-size: 24px;
|
|
473
540
|
--row-button-icon: 14px;
|
|
474
|
-
--row-button-radius: 8px;
|
|
541
|
+
--row-button-radius: calc(8px * var(--r-scale));
|
|
475
542
|
--row-button-bg: #f1f1f8;
|
|
476
543
|
--row-button-ink: #8080a3;
|
|
477
544
|
--row-button-hover-bg: #5b5bf0;
|
|
478
545
|
--row-button-hover-ink: #ffffff;
|
|
479
546
|
--row-button-disabled-opacity: 0.4;
|
|
547
|
+
--row-button-shadow: none;
|
|
548
|
+
--row-button-active-shadow: none;
|
|
480
549
|
--hub-row-ink: #8080a3;
|
|
481
550
|
--hub-row-attention-ink: #a07408;
|
|
482
551
|
--hub-row-error-ink: #e0554a;
|
|
@@ -484,6 +553,9 @@
|
|
|
484
553
|
--hub-row-action-ink: #1d8f6a;
|
|
485
554
|
--hub-row-action-hover-bg: #c4efdb;
|
|
486
555
|
--hub-row-face-size: 18px;
|
|
556
|
+
--hub-row-prefix: none;
|
|
557
|
+
--hub-row-prefix-gap: 0px;
|
|
558
|
+
--hub-row-action-shadow: var(--edge);
|
|
487
559
|
--hero-ink: #ffffff;
|
|
488
560
|
--hero-bg: linear-gradient(120deg, #6a6af7 0%, #5b5bf0 45%, #8b5cf6 100%);
|
|
489
561
|
--hero-shadow: 0 18px 40px -22px rgba(91, 91, 240, 0.9);
|
|
@@ -503,6 +575,11 @@
|
|
|
503
575
|
--hero-spark: #ffd166;
|
|
504
576
|
--feature-emoji-bg: rgba(255, 255, 255, 0.8);
|
|
505
577
|
--feature-peach-bg: #ffe4d6;
|
|
578
|
+
--feature-shadow: var(--edge);
|
|
579
|
+
--composer-shadow: none;
|
|
580
|
+
--composer-bg: transparent;
|
|
581
|
+
--composer-radius: 0px;
|
|
582
|
+
--composer-pad-x: 0px;
|
|
506
583
|
--step-bg: #ffffff;
|
|
507
584
|
--step-num-ink: #ffffff;
|
|
508
585
|
--tpl-shadow: 0 1px 3px rgba(28, 27, 51, 0.06);
|
|
@@ -538,6 +615,7 @@ pre { background: var(--code-bg); color: var(--code-ink); padding: 10px 12px; bo
|
|
|
538
615
|
.hint { color: var(--faint); font-size: var(--fs-xs); font-weight: 600; line-height: 1.45; }
|
|
539
616
|
.hint.accent { color: var(--primary); }
|
|
540
617
|
.hint.warn { color: var(--warm-ink); }
|
|
618
|
+
.hint.req { color: var(--rose-ink); font-weight: 700; }
|
|
541
619
|
.hint.error, .error { color: var(--rose-ink); font-size: var(--fs-sm); font-weight: 700; }
|
|
542
620
|
.eyebrow { font-size: calc(11px * var(--fs-scale)); text-transform: uppercase; letter-spacing: 0.1em; color: var(--faint); font-weight: 800; }
|
|
543
621
|
.muted { color: var(--muted); }
|
|
@@ -743,6 +821,9 @@ code .open-link { color: inherit; }
|
|
|
743
821
|
.dialog .actions .spacer { flex: 1; }
|
|
744
822
|
.dialog.wide { width: 720px; }
|
|
745
823
|
.dialog.narrow { width: 440px; }
|
|
824
|
+
.dialog.narrow.three-way { width: 580px; }
|
|
825
|
+
.dialog.narrow.three-way .actions { flex-wrap: nowrap; }
|
|
826
|
+
.dialog.narrow.three-way .actions [data-ui="button"] { white-space: nowrap; }
|
|
746
827
|
.toasts { position: fixed; right: 18px; bottom: 20px; display: flex; flex-direction: column; gap: 8px; max-width: 400px; z-index: 50; pointer-events: none; }
|
|
747
828
|
.toast { pointer-events: auto; background: var(--toast-bg); color: var(--toast-ink); padding: 10px 14px; border-radius: calc(12px * var(--r-scale)); font-size: var(--fs-sm); font-weight: 700; box-shadow: var(--shadow-pop); cursor: pointer; animation: slide-in-right var(--t-slow) var(--ease-pop); line-height: 1.4; display: flex; gap: 8px; align-items: flex-start; }
|
|
748
829
|
.toast .i { width: 15px; height: 15px; margin-top: 1px; opacity: 0.85; }
|