@webskill/chatbot 0.2.0 → 0.4.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/README.md +17 -0
- package/dist/chatbot.css +168 -84
- package/dist/index.d.ts +834 -160
- package/dist/index.js +6900 -2438
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -109,6 +109,23 @@ export function App() {
|
|
|
109
109
|
See `examples/chatbot-playground` for a complete `ChatbotHostAdapter`
|
|
110
110
|
implementation (OPFS storage, skills, demo/model providers, console embedding).
|
|
111
111
|
|
|
112
|
+
## Session list ordering and paging
|
|
113
|
+
|
|
114
|
+
`ChatEngine.listSessions()` forwards straight to the `SessionStore`, so the
|
|
115
|
+
default `FsSessionStore` decides what you see:
|
|
116
|
+
|
|
117
|
+
- Sessions are sorted by `createdAt` **ascending**, and a page is taken from the
|
|
118
|
+
**tail** of that list. The first screen therefore holds the *newest* sessions,
|
|
119
|
+
and the oldest session is not on it.
|
|
120
|
+
- The page size is the store's (`FS_SESSION_PAGE_SIZE`, 50). `<Chatbot>` does
|
|
121
|
+
not override it — pass your own `sessionStore` if you need another size.
|
|
122
|
+
- `nextCursor` points further back in history. While it is set, the session list
|
|
123
|
+
shows a **Load earlier sessions** entry; when it is absent the list is at the
|
|
124
|
+
end and the entry disappears, so "no button" always means "nothing older".
|
|
125
|
+
- Session files that cannot be parsed are skipped rather than failing the whole
|
|
126
|
+
list. Their file names come back in `skipped` and are shown above the list, so
|
|
127
|
+
a session you expected to see but cannot is always accounted for.
|
|
128
|
+
|
|
112
129
|
## Embedding models
|
|
113
130
|
|
|
114
131
|
- **As a component** inside an existing web app — mount `<Chatbot>` in your own
|
package/dist/chatbot.css
CHANGED
|
@@ -3,8 +3,10 @@
|
|
|
3
3
|
@layer theme, base, components, utilities;
|
|
4
4
|
@layer theme {
|
|
5
5
|
:root, :host {
|
|
6
|
-
--font-sans: 'Inter', ui-sans-serif, system-ui,
|
|
7
|
-
|
|
6
|
+
--font-sans: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Microsoft YaHei',
|
|
7
|
+
'PingFang SC', 'Hiragino Sans GB', 'Noto Sans CJK SC', 'Source Han Sans SC', 'WenQuanYi Micro Hei', sans-serif;
|
|
8
|
+
--font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, 'Microsoft YaHei', 'PingFang SC',
|
|
9
|
+
'Noto Sans Mono CJK SC', monospace;
|
|
8
10
|
--spacing: 0.25rem;
|
|
9
11
|
--container-sm: 24rem;
|
|
10
12
|
--container-md: 28rem;
|
|
@@ -30,8 +32,10 @@
|
|
|
30
32
|
--aspect-video: 16 / 9;
|
|
31
33
|
--default-transition-duration: 150ms;
|
|
32
34
|
--default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
|
33
|
-
--default-font-family: 'Inter', ui-sans-serif, system-ui,
|
|
34
|
-
|
|
35
|
+
--default-font-family: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Microsoft YaHei',
|
|
36
|
+
'PingFang SC', 'Hiragino Sans GB', 'Noto Sans CJK SC', 'Source Han Sans SC', 'WenQuanYi Micro Hei', sans-serif;
|
|
37
|
+
--default-mono-font-family: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, 'Microsoft YaHei', 'PingFang SC',
|
|
38
|
+
'Noto Sans Mono CJK SC', monospace;
|
|
35
39
|
--color-background: var(--background);
|
|
36
40
|
--color-foreground: var(--foreground);
|
|
37
41
|
--color-card: var(--card);
|
|
@@ -44,6 +48,8 @@
|
|
|
44
48
|
--color-ring: var(--ring);
|
|
45
49
|
--color-destructive: var(--destructive);
|
|
46
50
|
--color-success: var(--success);
|
|
51
|
+
--color-warning: var(--warning);
|
|
52
|
+
--color-info: var(--info);
|
|
47
53
|
--color-surface: var(--card);
|
|
48
54
|
--color-subtle: var(--accent);
|
|
49
55
|
--color-ink: var(--foreground);
|
|
@@ -200,6 +206,9 @@
|
|
|
200
206
|
}
|
|
201
207
|
}
|
|
202
208
|
@layer utilities {
|
|
209
|
+
.pointer-events-auto {
|
|
210
|
+
pointer-events: auto;
|
|
211
|
+
}
|
|
203
212
|
.pointer-events-none {
|
|
204
213
|
pointer-events: none;
|
|
205
214
|
}
|
|
@@ -235,9 +244,15 @@
|
|
|
235
244
|
.inset-0 {
|
|
236
245
|
inset: 0px;
|
|
237
246
|
}
|
|
247
|
+
.inset-x-0 {
|
|
248
|
+
inset-inline: 0px;
|
|
249
|
+
}
|
|
238
250
|
.inset-y-0 {
|
|
239
251
|
inset-block: 0px;
|
|
240
252
|
}
|
|
253
|
+
.top-0 {
|
|
254
|
+
top: 0px;
|
|
255
|
+
}
|
|
241
256
|
.top-1\.5 {
|
|
242
257
|
top: calc(var(--spacing) * 1.5);
|
|
243
258
|
}
|
|
@@ -271,6 +286,12 @@
|
|
|
271
286
|
.right-4 {
|
|
272
287
|
right: calc(var(--spacing) * 4);
|
|
273
288
|
}
|
|
289
|
+
.right-full {
|
|
290
|
+
right: 100%;
|
|
291
|
+
}
|
|
292
|
+
.-bottom-7 {
|
|
293
|
+
bottom: calc(var(--spacing) * -7);
|
|
294
|
+
}
|
|
274
295
|
.bottom-4 {
|
|
275
296
|
bottom: calc(var(--spacing) * 4);
|
|
276
297
|
}
|
|
@@ -286,6 +307,9 @@
|
|
|
286
307
|
.left-2\.5 {
|
|
287
308
|
left: calc(var(--spacing) * 2.5);
|
|
288
309
|
}
|
|
310
|
+
.left-full {
|
|
311
|
+
left: 100%;
|
|
312
|
+
}
|
|
289
313
|
.z-20 {
|
|
290
314
|
z-index: 20;
|
|
291
315
|
}
|
|
@@ -313,6 +337,9 @@
|
|
|
313
337
|
.m-3 {
|
|
314
338
|
margin: calc(var(--spacing) * 3);
|
|
315
339
|
}
|
|
340
|
+
.mx-1 {
|
|
341
|
+
margin-inline: var(--spacing);
|
|
342
|
+
}
|
|
316
343
|
.mx-2 {
|
|
317
344
|
margin-inline: calc(var(--spacing) * 2);
|
|
318
345
|
}
|
|
@@ -337,6 +364,9 @@
|
|
|
337
364
|
.ms-auto {
|
|
338
365
|
margin-inline-start: auto;
|
|
339
366
|
}
|
|
367
|
+
.-mt-2 {
|
|
368
|
+
margin-top: calc(var(--spacing) * -2);
|
|
369
|
+
}
|
|
340
370
|
.mt-0\.5 {
|
|
341
371
|
margin-top: calc(var(--spacing) * 0.5);
|
|
342
372
|
}
|
|
@@ -355,12 +385,15 @@
|
|
|
355
385
|
.mb-2 {
|
|
356
386
|
margin-bottom: calc(var(--spacing) * 2);
|
|
357
387
|
}
|
|
358
|
-
.mb-
|
|
359
|
-
margin-bottom: calc(var(--spacing) *
|
|
388
|
+
.mb-7 {
|
|
389
|
+
margin-bottom: calc(var(--spacing) * 7);
|
|
360
390
|
}
|
|
361
391
|
.block {
|
|
362
392
|
display: block;
|
|
363
393
|
}
|
|
394
|
+
.contents {
|
|
395
|
+
display: contents;
|
|
396
|
+
}
|
|
364
397
|
.flex {
|
|
365
398
|
display: flex;
|
|
366
399
|
}
|
|
@@ -429,6 +462,9 @@
|
|
|
429
462
|
width: 100%;
|
|
430
463
|
height: 100%;
|
|
431
464
|
}
|
|
465
|
+
.h-0 {
|
|
466
|
+
height: 0px;
|
|
467
|
+
}
|
|
432
468
|
.h-2\.5 {
|
|
433
469
|
height: calc(var(--spacing) * 2.5);
|
|
434
470
|
}
|
|
@@ -477,6 +513,9 @@
|
|
|
477
513
|
.min-h-0 {
|
|
478
514
|
min-height: 0px;
|
|
479
515
|
}
|
|
516
|
+
.min-h-16 {
|
|
517
|
+
min-height: calc(var(--spacing) * 16);
|
|
518
|
+
}
|
|
480
519
|
.min-h-20 {
|
|
481
520
|
min-height: calc(var(--spacing) * 20);
|
|
482
521
|
}
|
|
@@ -489,6 +528,9 @@
|
|
|
489
528
|
.w-\(--sidebar-width\) {
|
|
490
529
|
width: var(--sidebar-width);
|
|
491
530
|
}
|
|
531
|
+
.w-0 {
|
|
532
|
+
width: 0px;
|
|
533
|
+
}
|
|
492
534
|
.w-2 {
|
|
493
535
|
width: calc(var(--spacing) * 2);
|
|
494
536
|
}
|
|
@@ -510,18 +552,9 @@
|
|
|
510
552
|
.w-72 {
|
|
511
553
|
width: calc(var(--spacing) * 72);
|
|
512
554
|
}
|
|
513
|
-
.w-96 {
|
|
514
|
-
width: calc(var(--spacing) * 96);
|
|
515
|
-
}
|
|
516
|
-
.w-\[min\(22rem\,calc\(100vw-2rem\)\)\] {
|
|
517
|
-
width: min(22rem, calc(100vw - 2rem));
|
|
518
|
-
}
|
|
519
555
|
.w-\[min\(36rem\,calc\(100vw-2rem\)\)\] {
|
|
520
556
|
width: min(36rem, calc(100vw - 2rem));
|
|
521
557
|
}
|
|
522
|
-
.w-\[min\(100\%-2rem\,32rem\)\] {
|
|
523
|
-
width: min(100% - 2rem, 32rem);
|
|
524
|
-
}
|
|
525
558
|
.w-auto {
|
|
526
559
|
width: auto;
|
|
527
560
|
}
|
|
@@ -534,17 +567,20 @@
|
|
|
534
567
|
.w-px {
|
|
535
568
|
width: 1px;
|
|
536
569
|
}
|
|
570
|
+
.w-screen {
|
|
571
|
+
width: 100vw;
|
|
572
|
+
}
|
|
537
573
|
.max-w-2xl {
|
|
538
574
|
max-width: var(--container-2xl);
|
|
539
575
|
}
|
|
540
576
|
.max-w-3xl {
|
|
541
577
|
max-width: var(--container-3xl);
|
|
542
578
|
}
|
|
543
|
-
.max-w-
|
|
544
|
-
max-width: calc(var(--spacing) *
|
|
579
|
+
.max-w-48 {
|
|
580
|
+
max-width: calc(var(--spacing) * 48);
|
|
545
581
|
}
|
|
546
|
-
.max-w
|
|
547
|
-
max-width: calc(
|
|
582
|
+
.max-w-72 {
|
|
583
|
+
max-width: calc(var(--spacing) * 72);
|
|
548
584
|
}
|
|
549
585
|
.max-w-full {
|
|
550
586
|
max-width: 100%;
|
|
@@ -623,6 +659,9 @@
|
|
|
623
659
|
.cursor-col-resize {
|
|
624
660
|
cursor: col-resize;
|
|
625
661
|
}
|
|
662
|
+
.cursor-default {
|
|
663
|
+
cursor: default;
|
|
664
|
+
}
|
|
626
665
|
.cursor-not-allowed {
|
|
627
666
|
cursor: not-allowed;
|
|
628
667
|
}
|
|
@@ -653,8 +692,8 @@
|
|
|
653
692
|
.grid-cols-1 {
|
|
654
693
|
grid-template-columns: repeat(1, minmax(0, 1fr));
|
|
655
694
|
}
|
|
656
|
-
.grid-cols
|
|
657
|
-
grid-template-columns: 1fr
|
|
695
|
+
.grid-cols-2 {
|
|
696
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
658
697
|
}
|
|
659
698
|
.flex-col {
|
|
660
699
|
flex-direction: column;
|
|
@@ -671,9 +710,6 @@
|
|
|
671
710
|
.items-center {
|
|
672
711
|
align-items: center;
|
|
673
712
|
}
|
|
674
|
-
.items-end {
|
|
675
|
-
align-items: flex-end;
|
|
676
|
-
}
|
|
677
713
|
.items-start {
|
|
678
714
|
align-items: flex-start;
|
|
679
715
|
}
|
|
@@ -707,17 +743,11 @@
|
|
|
707
743
|
.gap-4 {
|
|
708
744
|
gap: calc(var(--spacing) * 4);
|
|
709
745
|
}
|
|
710
|
-
.gap-6 {
|
|
711
|
-
gap: calc(var(--spacing) * 6);
|
|
712
|
-
}
|
|
713
746
|
:where(.space-y-1 > :not(:last-child)) {
|
|
714
747
|
--tw-space-y-reverse: 0;
|
|
715
748
|
margin-block-start: calc(var(--spacing) * var(--tw-space-y-reverse));
|
|
716
749
|
margin-block-end: calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)));
|
|
717
750
|
}
|
|
718
|
-
.gap-x-4 {
|
|
719
|
-
column-gap: calc(var(--spacing) * 4);
|
|
720
|
-
}
|
|
721
751
|
:where(.divide-y > :not(:last-child)) {
|
|
722
752
|
--tw-divide-y-reverse: 0;
|
|
723
753
|
border-bottom-style: var(--tw-border-style);
|
|
@@ -757,6 +787,9 @@
|
|
|
757
787
|
.overflow-y-auto {
|
|
758
788
|
overflow-y: auto;
|
|
759
789
|
}
|
|
790
|
+
.rounded {
|
|
791
|
+
border-radius: 0.25rem;
|
|
792
|
+
}
|
|
760
793
|
.rounded-\[2px\] {
|
|
761
794
|
border-radius: 2px;
|
|
762
795
|
}
|
|
@@ -794,6 +827,10 @@
|
|
|
794
827
|
border-style: var(--tw-border-style);
|
|
795
828
|
border-width: 0px;
|
|
796
829
|
}
|
|
830
|
+
.border-e {
|
|
831
|
+
border-inline-end-style: var(--tw-border-style);
|
|
832
|
+
border-inline-end-width: 1px;
|
|
833
|
+
}
|
|
797
834
|
.border-t {
|
|
798
835
|
border-top-style: var(--tw-border-style);
|
|
799
836
|
border-top-width: 1px;
|
|
@@ -961,12 +998,6 @@
|
|
|
961
998
|
.bg-warning-soft {
|
|
962
999
|
background-color: var(--warning-soft);
|
|
963
1000
|
}
|
|
964
|
-
.bg-warning\/15 {
|
|
965
|
-
background-color: var(--warning);
|
|
966
|
-
@supports (color: color-mix(in lab, red, red)) {
|
|
967
|
-
background-color: color-mix(in oklab, var(--warning) 15%, transparent);
|
|
968
|
-
}
|
|
969
|
-
}
|
|
970
1001
|
.fill-current {
|
|
971
1002
|
fill: currentcolor;
|
|
972
1003
|
}
|
|
@@ -991,9 +1022,6 @@
|
|
|
991
1022
|
.p-4 {
|
|
992
1023
|
padding: calc(var(--spacing) * 4);
|
|
993
1024
|
}
|
|
994
|
-
.p-5 {
|
|
995
|
-
padding: calc(var(--spacing) * 5);
|
|
996
|
-
}
|
|
997
1025
|
.px-1 {
|
|
998
1026
|
padding-inline: var(--spacing);
|
|
999
1027
|
}
|
|
@@ -1054,9 +1082,6 @@
|
|
|
1054
1082
|
.ps-9 {
|
|
1055
1083
|
padding-inline-start: calc(var(--spacing) * 9);
|
|
1056
1084
|
}
|
|
1057
|
-
.pt-0\.5 {
|
|
1058
|
-
padding-top: calc(var(--spacing) * 0.5);
|
|
1059
|
-
}
|
|
1060
1085
|
.pt-2 {
|
|
1061
1086
|
padding-top: calc(var(--spacing) * 2);
|
|
1062
1087
|
}
|
|
@@ -1066,9 +1091,6 @@
|
|
|
1066
1091
|
.pt-4 {
|
|
1067
1092
|
padding-top: calc(var(--spacing) * 4);
|
|
1068
1093
|
}
|
|
1069
|
-
.pt-5 {
|
|
1070
|
-
padding-top: calc(var(--spacing) * 5);
|
|
1071
|
-
}
|
|
1072
1094
|
.pr-2 {
|
|
1073
1095
|
padding-right: calc(var(--spacing) * 2);
|
|
1074
1096
|
}
|
|
@@ -1102,14 +1124,22 @@
|
|
|
1102
1124
|
.text-left {
|
|
1103
1125
|
text-align: left;
|
|
1104
1126
|
}
|
|
1127
|
+
.text-right {
|
|
1128
|
+
text-align: right;
|
|
1129
|
+
}
|
|
1130
|
+
.text-start {
|
|
1131
|
+
text-align: start;
|
|
1132
|
+
}
|
|
1105
1133
|
.font-display {
|
|
1106
1134
|
font-family: var(--font-sans);
|
|
1107
1135
|
}
|
|
1108
1136
|
.font-mono {
|
|
1109
|
-
font-family: 'JetBrains Mono', ui-monospace, SFMono-Regular,
|
|
1137
|
+
font-family: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, 'Microsoft YaHei', 'PingFang SC',
|
|
1138
|
+
'Noto Sans Mono CJK SC', monospace;
|
|
1110
1139
|
}
|
|
1111
1140
|
.font-sans {
|
|
1112
|
-
font-family: 'Inter', ui-sans-serif, system-ui,
|
|
1141
|
+
font-family: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Microsoft YaHei',
|
|
1142
|
+
'PingFang SC', 'Hiragino Sans GB', 'Noto Sans CJK SC', 'Source Han Sans SC', 'WenQuanYi Micro Hei', sans-serif;
|
|
1113
1143
|
}
|
|
1114
1144
|
.text-2xl {
|
|
1115
1145
|
font-size: var(--text-2xl);
|
|
@@ -1134,9 +1164,6 @@
|
|
|
1134
1164
|
.text-\[0\.85em\] {
|
|
1135
1165
|
font-size: 0.85em;
|
|
1136
1166
|
}
|
|
1137
|
-
.text-\[11px\] {
|
|
1138
|
-
font-size: 11px;
|
|
1139
|
-
}
|
|
1140
1167
|
.leading-6 {
|
|
1141
1168
|
--tw-leading: calc(var(--spacing) * 6);
|
|
1142
1169
|
line-height: calc(var(--spacing) * 6);
|
|
@@ -1194,6 +1221,9 @@
|
|
|
1194
1221
|
.text-ink {
|
|
1195
1222
|
color: var(--foreground);
|
|
1196
1223
|
}
|
|
1224
|
+
.text-input {
|
|
1225
|
+
color: var(--input);
|
|
1226
|
+
}
|
|
1197
1227
|
.text-muted {
|
|
1198
1228
|
color: var(--muted-foreground);
|
|
1199
1229
|
}
|
|
@@ -1224,9 +1254,6 @@
|
|
|
1224
1254
|
.uppercase {
|
|
1225
1255
|
text-transform: uppercase;
|
|
1226
1256
|
}
|
|
1227
|
-
.italic {
|
|
1228
|
-
font-style: italic;
|
|
1229
|
-
}
|
|
1230
1257
|
.tabular-nums {
|
|
1231
1258
|
--tw-numeric-spacing: tabular-nums;
|
|
1232
1259
|
font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
|
|
@@ -1345,6 +1372,9 @@
|
|
|
1345
1372
|
-webkit-user-select: none;
|
|
1346
1373
|
user-select: none;
|
|
1347
1374
|
}
|
|
1375
|
+
.group-focus-within\:opacity-100:is(:where(.group):focus-within *) {
|
|
1376
|
+
opacity: 100%;
|
|
1377
|
+
}
|
|
1348
1378
|
.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *) {
|
|
1349
1379
|
opacity: 100%;
|
|
1350
1380
|
}
|
|
@@ -1451,19 +1481,6 @@
|
|
|
1451
1481
|
.empty\:hidden:empty {
|
|
1452
1482
|
display: none;
|
|
1453
1483
|
}
|
|
1454
|
-
.focus-within\:border-ring:focus-within {
|
|
1455
|
-
border-color: var(--ring);
|
|
1456
|
-
}
|
|
1457
|
-
.focus-within\:ring-2:focus-within {
|
|
1458
|
-
--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
|
|
1459
|
-
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
|
|
1460
|
-
}
|
|
1461
|
-
.focus-within\:ring-ring\/20:focus-within {
|
|
1462
|
-
--tw-ring-color: var(--ring);
|
|
1463
|
-
@supports (color: color-mix(in lab, red, red)) {
|
|
1464
|
-
--tw-ring-color: color-mix(in oklab, var(--ring) 20%, transparent);
|
|
1465
|
-
}
|
|
1466
|
-
}
|
|
1467
1484
|
@media (hover: hover) {
|
|
1468
1485
|
.hover\:border-ring:hover {
|
|
1469
1486
|
border-color: var(--ring);
|
|
@@ -1471,9 +1488,6 @@
|
|
|
1471
1488
|
.hover\:bg-accent:hover {
|
|
1472
1489
|
background-color: var(--accent);
|
|
1473
1490
|
}
|
|
1474
|
-
.hover\:bg-danger-soft:hover {
|
|
1475
|
-
background-color: var(--destructive-soft);
|
|
1476
|
-
}
|
|
1477
1491
|
.hover\:bg-destructive-soft:hover {
|
|
1478
1492
|
background-color: var(--destructive-soft);
|
|
1479
1493
|
}
|
|
@@ -1505,9 +1519,6 @@
|
|
|
1505
1519
|
.hover\:bg-surface:hover {
|
|
1506
1520
|
background-color: var(--card);
|
|
1507
1521
|
}
|
|
1508
|
-
.hover\:text-danger:hover {
|
|
1509
|
-
color: var(--destructive);
|
|
1510
|
-
}
|
|
1511
1522
|
.hover\:text-foreground:hover {
|
|
1512
1523
|
color: var(--foreground);
|
|
1513
1524
|
}
|
|
@@ -1523,6 +1534,9 @@
|
|
|
1523
1534
|
.hover\:opacity-85:hover {
|
|
1524
1535
|
opacity: 85%;
|
|
1525
1536
|
}
|
|
1537
|
+
.hover\:opacity-90:hover {
|
|
1538
|
+
opacity: 90%;
|
|
1539
|
+
}
|
|
1526
1540
|
}
|
|
1527
1541
|
.focus\:border-ring:focus {
|
|
1528
1542
|
border-color: var(--ring);
|
|
@@ -1595,6 +1609,9 @@
|
|
|
1595
1609
|
.disabled\:opacity-60:disabled {
|
|
1596
1610
|
opacity: 60%;
|
|
1597
1611
|
}
|
|
1612
|
+
.has-\[\[aria-expanded\=true\]\]\:opacity-100:has(:is([aria-expanded=true])) {
|
|
1613
|
+
opacity: 100%;
|
|
1614
|
+
}
|
|
1598
1615
|
.aria-disabled\:pointer-events-none[aria-disabled="true"] {
|
|
1599
1616
|
pointer-events: none;
|
|
1600
1617
|
}
|
|
@@ -1825,7 +1842,58 @@
|
|
|
1825
1842
|
flex-shrink: 0;
|
|
1826
1843
|
}
|
|
1827
1844
|
}
|
|
1828
|
-
:
|
|
1845
|
+
:where(.dark, .light, [data-theme]) {
|
|
1846
|
+
--color-background: var(--background);
|
|
1847
|
+
--color-foreground: var(--foreground);
|
|
1848
|
+
--color-card: var(--card);
|
|
1849
|
+
--color-card-foreground: var(--card-foreground);
|
|
1850
|
+
--color-popover: var(--popover);
|
|
1851
|
+
--color-popover-foreground: var(--popover-foreground);
|
|
1852
|
+
--color-primary: var(--primary);
|
|
1853
|
+
--color-primary-foreground: var(--primary-foreground);
|
|
1854
|
+
--color-secondary: var(--secondary);
|
|
1855
|
+
--color-secondary-foreground: var(--secondary-foreground);
|
|
1856
|
+
--color-muted: var(--muted-foreground);
|
|
1857
|
+
--color-muted-foreground: var(--muted-foreground);
|
|
1858
|
+
--color-accent: var(--accent);
|
|
1859
|
+
--color-accent-foreground: var(--accent-foreground);
|
|
1860
|
+
--color-border: var(--border);
|
|
1861
|
+
--color-input: var(--input);
|
|
1862
|
+
--color-ring: var(--ring);
|
|
1863
|
+
--color-destructive: var(--destructive);
|
|
1864
|
+
--color-destructive-foreground: var(--destructive-foreground);
|
|
1865
|
+
--color-destructive-soft: var(--destructive-soft);
|
|
1866
|
+
--color-success: var(--success);
|
|
1867
|
+
--color-success-foreground: var(--success-foreground);
|
|
1868
|
+
--color-success-soft: var(--success-soft);
|
|
1869
|
+
--color-warning: var(--warning);
|
|
1870
|
+
--color-warning-foreground: var(--warning-foreground);
|
|
1871
|
+
--color-warning-soft: var(--warning-soft);
|
|
1872
|
+
--color-info: var(--info);
|
|
1873
|
+
--color-info-foreground: var(--info-foreground);
|
|
1874
|
+
--color-info-soft: var(--info-soft);
|
|
1875
|
+
--color-sidebar: var(--sidebar);
|
|
1876
|
+
--color-sidebar-foreground: var(--sidebar-foreground);
|
|
1877
|
+
--color-sidebar-primary: var(--sidebar-primary);
|
|
1878
|
+
--color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
|
|
1879
|
+
--color-sidebar-accent: var(--sidebar-accent);
|
|
1880
|
+
--color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
|
|
1881
|
+
--color-sidebar-border: var(--sidebar-border);
|
|
1882
|
+
--color-sidebar-ring: var(--sidebar-ring);
|
|
1883
|
+
--color-brand: var(--brand);
|
|
1884
|
+
--color-brand-foreground: var(--brand-foreground);
|
|
1885
|
+
--color-canvas: var(--background);
|
|
1886
|
+
--color-surface: var(--card);
|
|
1887
|
+
--color-subtle: var(--accent);
|
|
1888
|
+
--color-ink: var(--foreground);
|
|
1889
|
+
--color-danger: var(--destructive);
|
|
1890
|
+
--color-danger-soft: var(--destructive-soft);
|
|
1891
|
+
--color-sidebar-canvas: var(--sidebar);
|
|
1892
|
+
--color-sidebar-surface: var(--card);
|
|
1893
|
+
--color-sidebar-ink: var(--sidebar-foreground);
|
|
1894
|
+
--color-sidebar-muted: var(--muted-foreground);
|
|
1895
|
+
}
|
|
1896
|
+
:root, :where(.light, [data-theme='light']) {
|
|
1829
1897
|
--radius: 0.625rem;
|
|
1830
1898
|
--background: oklch(1 0 0);
|
|
1831
1899
|
--foreground: oklch(0.145 0 0);
|
|
@@ -1883,6 +1951,7 @@
|
|
|
1883
1951
|
--sidebar-ring: oklch(0.708 0 0);
|
|
1884
1952
|
--brand: oklch(0.55 0.16 275);
|
|
1885
1953
|
--brand-foreground: oklch(0.985 0 0);
|
|
1954
|
+
--text-min: 0.75rem;
|
|
1886
1955
|
}
|
|
1887
1956
|
:where(.dark, [data-theme='dark']) {
|
|
1888
1957
|
--background: oklch(0.145 0 0);
|
|
@@ -2000,19 +2069,34 @@
|
|
|
2000
2069
|
background: color-mix(in oklab, var(--muted-foreground) 60%, transparent);
|
|
2001
2070
|
}
|
|
2002
2071
|
}
|
|
2003
|
-
|
|
2004
|
-
|
|
2005
|
-
height: 4px;
|
|
2072
|
+
[data-webskill-theme='light'] {
|
|
2073
|
+
color-scheme: light;
|
|
2006
2074
|
}
|
|
2007
|
-
|
|
2008
|
-
|
|
2075
|
+
[data-webskill-theme='dark'] {
|
|
2076
|
+
color-scheme: dark;
|
|
2009
2077
|
}
|
|
2010
|
-
|
|
2011
|
-
|
|
2012
|
-
|
|
2013
|
-
}
|
|
2014
|
-
|
|
2015
|
-
|
|
2078
|
+
@layer components {
|
|
2079
|
+
.webskill-sheet-content {
|
|
2080
|
+
width: var(--webskill-sheet-width, min(22rem, calc(100vw - 2rem)));
|
|
2081
|
+
}
|
|
2082
|
+
.webskill-dialog-content {
|
|
2083
|
+
width: var(--webskill-dialog-width, min(100% - 2rem, 32rem));
|
|
2084
|
+
}
|
|
2085
|
+
.webskill-toast-root {
|
|
2086
|
+
width: 100%;
|
|
2087
|
+
max-width: var(--webskill-toast-width, 24rem);
|
|
2088
|
+
}
|
|
2089
|
+
.webskill-input {
|
|
2090
|
+
width: 100%;
|
|
2091
|
+
height: 2.25rem;
|
|
2092
|
+
padding-inline: 0.75rem;
|
|
2093
|
+
}
|
|
2094
|
+
.webskill-resizable-panel {
|
|
2095
|
+
min-height: 0;
|
|
2096
|
+
}
|
|
2097
|
+
.webskill-dropdown-content {
|
|
2098
|
+
min-width: 10rem;
|
|
2099
|
+
}
|
|
2016
2100
|
}
|
|
2017
2101
|
.webskill-surface-list {
|
|
2018
2102
|
display: flex;
|