@qfei-design/make-ai-assistant 0.2.1 → 0.2.2

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/dist/styles.css CHANGED
@@ -19,6 +19,11 @@
19
19
  --make-ai-internal-font-size-markdown: var(--make-ai-font-size-markdown, .6875rem);
20
20
  --make-ai-internal-font-size-ui: var(--make-ai-font-size-ui, .75rem);
21
21
  --make-ai-internal-line-height-body: var(--make-ai-line-height-body, 1.58);
22
+ --make-ai-internal-panel-gutter: var(--make-ai-panel-gutter, 16px);
23
+ --make-ai-internal-panel-gutter-compact: var(--make-ai-panel-gutter-compact, 12px);
24
+ --make-ai-internal-message-turn-gap: var(--make-ai-message-turn-gap, 8px);
25
+ --make-ai-internal-assistant-content-gap: var(--make-ai-assistant-content-gap, 12px);
26
+ --make-ai-internal-notice-block-gap: var(--make-ai-notice-block-gap, 8px);
22
27
  }
23
28
 
24
29
  .make-ai-assistant,
@@ -183,7 +188,7 @@
183
188
  grid-template-columns: auto 1fr auto;
184
189
  grid-row: 1;
185
190
  min-height: 70px;
186
- padding: 14px 18px;
191
+ padding: 14px var(--make-ai-internal-panel-gutter);
187
192
  }
188
193
 
189
194
  .make-ai-assistant__header h2,
@@ -258,6 +263,15 @@
258
263
  gap: 2px;
259
264
  }
260
265
 
266
+ .make-ai-assistant__notice-region {
267
+ background: var(--make-ai-internal-bg);
268
+ border-bottom: 1px solid color-mix(in srgb, var(--make-ai-internal-border) 72%, transparent);
269
+ grid-row: 2;
270
+ padding: var(--make-ai-internal-notice-block-gap) var(--make-ai-internal-panel-gutter);
271
+ position: relative;
272
+ z-index: 1;
273
+ }
274
+
261
275
  .make-ai-assistant__privacy-note {
262
276
  align-items: center;
263
277
  background:
@@ -269,9 +283,8 @@
269
283
  display: flex;
270
284
  font-size: .6875rem;
271
285
  gap: 7px;
272
- grid-row: 2;
273
286
  line-height: 1.45;
274
- margin: 10px 18px 0;
287
+ margin: 0;
275
288
  padding: 7px 9px;
276
289
  border-radius: 9px;
277
290
  overflow-wrap: anywhere;
@@ -306,7 +319,11 @@
306
319
  min-width: 0;
307
320
  overflow: auto;
308
321
  overscroll-behavior: contain;
309
- padding: 22px 18px 30px;
322
+ padding: 20px var(--make-ai-internal-panel-gutter) 28px;
323
+ }
324
+
325
+ .make-ai-assistant__body--with-notice {
326
+ padding-top: 12px;
310
327
  }
311
328
 
312
329
  .make-ai-assistant__empty {
@@ -340,6 +357,82 @@
340
357
  margin-top: 8px;
341
358
  }
342
359
 
360
+ .make-ai-assistant__load-failure {
361
+ --make-ai-load-failure-accent: var(--make-ai-internal-accent);
362
+ align-items: center;
363
+ background: transparent;
364
+ border: 0;
365
+ display: flex;
366
+ flex-direction: column;
367
+ gap: 12px;
368
+ max-width: min(100%, 300px);
369
+ padding: 0;
370
+ text-align: center;
371
+ width: 100%;
372
+ }
373
+
374
+ .make-ai-assistant__load-failure[data-load-failure-kind="service"] {
375
+ --make-ai-load-failure-accent: var(--make-ai-internal-warning);
376
+ }
377
+
378
+ .make-ai-assistant__load-failure-icon {
379
+ align-items: center;
380
+ background: color-mix(in srgb, var(--make-ai-load-failure-accent) 10%, var(--make-ai-internal-bg));
381
+ border: 1px solid color-mix(in srgb, var(--make-ai-load-failure-accent) 18%, transparent);
382
+ border-radius: 10px;
383
+ color: var(--make-ai-load-failure-accent);
384
+ display: inline-flex;
385
+ height: 44px;
386
+ justify-content: center;
387
+ width: 44px;
388
+ }
389
+
390
+ .make-ai-assistant__load-failure-icon svg,
391
+ .make-ai-assistant__retry svg {
392
+ fill: none;
393
+ height: 16px;
394
+ stroke: currentColor;
395
+ stroke-linecap: round;
396
+ stroke-linejoin: round;
397
+ stroke-width: 1.8;
398
+ width: 16px;
399
+ }
400
+
401
+ .make-ai-assistant__load-failure-copy {
402
+ align-items: center;
403
+ display: flex;
404
+ flex-direction: column;
405
+ gap: 4px;
406
+ min-width: 0;
407
+ text-align: center;
408
+ }
409
+
410
+ .make-ai-assistant__load-failure-label {
411
+ color: var(--make-ai-load-failure-accent);
412
+ font-size: .625rem;
413
+ font-weight: 700;
414
+ letter-spacing: .04em;
415
+ line-height: 1.4;
416
+ }
417
+
418
+ .make-ai-assistant__load-failure h3,
419
+ .make-ai-assistant__load-failure p {
420
+ margin: 0;
421
+ }
422
+
423
+ .make-ai-assistant__load-failure h3 {
424
+ color: var(--make-ai-internal-text);
425
+ font-size: 1rem;
426
+ font-weight: 700;
427
+ line-height: 1.45;
428
+ }
429
+
430
+ .make-ai-assistant__load-failure p {
431
+ color: var(--make-ai-internal-text-secondary);
432
+ font-size: var(--make-ai-internal-font-size-body);
433
+ line-height: 1.55;
434
+ }
435
+
343
436
  .make-ai-assistant__message {
344
437
  display: block;
345
438
  margin-bottom: 24px;
@@ -353,10 +446,12 @@
353
446
  .make-ai-assistant__message-turn {
354
447
  display: flex;
355
448
  flex-direction: column;
449
+ gap: var(--make-ai-internal-message-turn-gap);
356
450
  min-width: 0;
357
451
  }
358
452
 
359
453
  .make-ai-assistant__message--assistant .make-ai-assistant__message-turn {
454
+ gap: var(--make-ai-internal-assistant-content-gap);
360
455
  max-width: 100%;
361
456
  }
362
457
 
@@ -389,14 +484,9 @@
389
484
 
390
485
  .make-ai-assistant__message--user .make-ai-assistant__message-stack {
391
486
  align-items: flex-end;
392
- margin-top: 5px;
393
487
  width: 100%;
394
488
  }
395
489
 
396
- .make-ai-assistant__message--user:not([data-message-has-identity]) .make-ai-assistant__message-stack {
397
- margin-top: 0;
398
- }
399
-
400
490
  .make-ai-assistant__message-sender {
401
491
  color: var(--make-ai-internal-text-secondary);
402
492
  font-size: 12px;
@@ -463,6 +553,7 @@
463
553
  .make-ai-assistant__assistant-text p,
464
554
  .make-ai-assistant__assistant-text .make-ai-assistant__markdown-heading,
465
555
  .make-ai-assistant__assistant-text ul,
556
+ .make-ai-assistant__assistant-text .make-ai-assistant__markdown-table-scroll,
466
557
  .make-ai-assistant__assistant-text pre {
467
558
  margin: 0;
468
559
  }
@@ -557,6 +648,51 @@
557
648
  white-space: pre;
558
649
  }
559
650
 
651
+ .make-ai-assistant__markdown-table-scroll {
652
+ border: 1px solid color-mix(in srgb, var(--make-ai-internal-border) 88%, transparent);
653
+ border-radius: 10px;
654
+ max-width: 100%;
655
+ overflow-x: auto;
656
+ overscroll-behavior-inline: contain;
657
+ }
658
+
659
+ .make-ai-assistant__markdown-table {
660
+ border-collapse: collapse;
661
+ font-size: 1em;
662
+ min-width: max-content;
663
+ width: 100%;
664
+ }
665
+
666
+ .make-ai-assistant__markdown-table th,
667
+ .make-ai-assistant__markdown-table td {
668
+ border-bottom: 1px solid color-mix(in srgb, var(--make-ai-internal-border) 82%, transparent);
669
+ min-width: 0;
670
+ padding: 6px 8px;
671
+ text-align: left;
672
+ vertical-align: top;
673
+ }
674
+
675
+ .make-ai-assistant__markdown-table th {
676
+ background: color-mix(in srgb, var(--make-ai-internal-surface) 72%, var(--make-ai-internal-bg));
677
+ color: color-mix(in srgb, var(--make-ai-internal-text) 92%, var(--make-ai-internal-accent));
678
+ font-weight: 680;
679
+ white-space: nowrap;
680
+ }
681
+
682
+ .make-ai-assistant__markdown-table td {
683
+ color: var(--make-ai-internal-text-secondary);
684
+ overflow-wrap: anywhere;
685
+ }
686
+
687
+ .make-ai-assistant__markdown-table tbody tr:last-child td {
688
+ border-bottom: 0;
689
+ }
690
+
691
+ .make-ai-assistant__markdown-table th + th,
692
+ .make-ai-assistant__markdown-table td + td {
693
+ border-left: 1px solid color-mix(in srgb, var(--make-ai-internal-border) 72%, transparent);
694
+ }
695
+
560
696
  .make-ai-assistant__typing {
561
697
  align-items: center;
562
698
  background: var(--make-ai-internal-surface);
@@ -591,9 +727,44 @@
591
727
  }
592
728
 
593
729
  .make-ai-assistant__message-status--error {
594
- background: color-mix(in srgb, var(--make-ai-internal-danger) 7%, var(--make-ai-internal-surface));
595
- border: 1px solid color-mix(in srgb, var(--make-ai-internal-danger) 22%, var(--make-ai-internal-border));
730
+ background: color-mix(in srgb, var(--make-ai-internal-danger) 5%, var(--make-ai-internal-surface));
731
+ border: 1px solid color-mix(in srgb, var(--make-ai-internal-danger) 20%, var(--make-ai-internal-border));
732
+ box-shadow: inset 3px 0 0 color-mix(in srgb, var(--make-ai-internal-danger) 68%, transparent);
733
+ gap: 8px;
734
+ }
735
+
736
+ .make-ai-assistant__message-status-header {
737
+ align-items: center;
596
738
  color: var(--make-ai-internal-danger);
739
+ display: flex;
740
+ gap: 8px;
741
+ line-height: 20px;
742
+ }
743
+
744
+ .make-ai-assistant__message-status-icon {
745
+ align-items: center;
746
+ background: color-mix(in srgb, var(--make-ai-internal-danger) 10%, var(--make-ai-internal-bg));
747
+ border-radius: 50%;
748
+ display: inline-flex;
749
+ flex: 0 0 auto;
750
+ height: 24px;
751
+ justify-content: center;
752
+ width: 24px;
753
+ }
754
+
755
+ .make-ai-assistant__message-status-icon svg {
756
+ fill: none;
757
+ height: 15px;
758
+ stroke: currentColor;
759
+ stroke-linecap: round;
760
+ stroke-linejoin: round;
761
+ stroke-width: 1.9;
762
+ width: 15px;
763
+ }
764
+
765
+ .make-ai-assistant__message-status-message {
766
+ color: var(--make-ai-internal-text-secondary);
767
+ padding-left: 32px;
597
768
  }
598
769
 
599
770
  .make-ai-assistant__progress {
@@ -663,11 +834,6 @@
663
834
  transform: rotate(225deg);
664
835
  }
665
836
 
666
- .make-ai-assistant__process-title {
667
- flex: 1;
668
- min-width: 0;
669
- }
670
-
671
837
  .make-ai-assistant__process-count {
672
838
  color: color-mix(in srgb, var(--make-ai-internal-text-secondary) 78%, var(--make-ai-internal-bg));
673
839
  flex: 0 0 auto;
@@ -812,7 +978,7 @@
812
978
  justify-content: center;
813
979
  padding: 0;
814
980
  position: absolute;
815
- right: 18px;
981
+ right: var(--make-ai-internal-panel-gutter);
816
982
  transition: background 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
817
983
  width: 34px;
818
984
  z-index: 2;
@@ -836,16 +1002,53 @@
836
1002
  }
837
1003
 
838
1004
  .make-ai-assistant__retry {
1005
+ align-items: center;
839
1006
  align-self: flex-start;
840
- background: transparent;
841
- border: 1px solid currentColor;
842
- border-radius: 7px;
843
- color: inherit;
1007
+ background: color-mix(in srgb, var(--make-ai-internal-danger) 7%, var(--make-ai-internal-bg));
1008
+ border: 1px solid color-mix(in srgb, var(--make-ai-internal-danger) 28%, var(--make-ai-internal-border));
1009
+ border-radius: 8px;
1010
+ color: var(--make-ai-internal-danger);
844
1011
  cursor: pointer;
1012
+ display: inline-flex;
845
1013
  font-size: 12px;
846
1014
  font-weight: 600;
847
- margin-top: 3px;
848
- padding: 5px 9px;
1015
+ gap: 6px;
1016
+ margin-top: 4px;
1017
+ min-height: 32px;
1018
+ padding: 0 10px;
1019
+ transition: background 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
1020
+ }
1021
+
1022
+ .make-ai-assistant__retry:hover {
1023
+ background: color-mix(in srgb, var(--make-ai-internal-danger) 11%, var(--make-ai-internal-bg));
1024
+ border-color: color-mix(in srgb, var(--make-ai-internal-danger) 44%, var(--make-ai-internal-border));
1025
+ }
1026
+
1027
+ .make-ai-assistant__retry:active {
1028
+ transform: translateY(1px);
1029
+ }
1030
+
1031
+ .make-ai-assistant__retry--primary {
1032
+ align-self: center;
1033
+ background: var(--make-ai-internal-accent);
1034
+ border-color: var(--make-ai-internal-accent);
1035
+ border-radius: 9px;
1036
+ color: #fcfcff;
1037
+ font-weight: 650;
1038
+ margin-top: 0;
1039
+ min-height: 40px;
1040
+ padding: 0 16px;
1041
+ }
1042
+
1043
+ .make-ai-assistant__retry--primary:hover {
1044
+ background: var(--make-ai-internal-accent-strong);
1045
+ border-color: var(--make-ai-internal-accent-strong);
1046
+ box-shadow: 0 4px 10px color-mix(in srgb, var(--make-ai-internal-accent) 18%, transparent);
1047
+ transform: translateY(-1px);
1048
+ }
1049
+
1050
+ .make-ai-assistant__retry--primary:active {
1051
+ transform: translateY(0);
849
1052
  }
850
1053
 
851
1054
  .make-ai-assistant__composer-region {
@@ -853,7 +1056,7 @@
853
1056
  border-top: 1px solid var(--make-ai-internal-border);
854
1057
  grid-row: 4;
855
1058
  box-shadow: 0 -8px 18px rgb(30 31 43 / 3%);
856
- padding: 10px 18px 9px;
1059
+ padding: 10px var(--make-ai-internal-panel-gutter) 9px;
857
1060
  }
858
1061
 
859
1062
  .make-ai-assistant__suggestions {
@@ -1168,15 +1371,19 @@ button.make-ai-artifact__record:hover { background: var(--make-ai-internal-accen
1168
1371
  gap: 8px;
1169
1372
  grid-template-columns: auto minmax(0, 1fr) auto;
1170
1373
  min-height: 64px;
1171
- padding: 12px 14px;
1374
+ padding: 12px var(--make-ai-internal-panel-gutter-compact);
1172
1375
  }
1173
1376
 
1174
- .make-ai-assistant__privacy-note {
1175
- margin: 10px 14px 0;
1377
+ .make-ai-assistant__notice-region {
1378
+ padding: var(--make-ai-internal-notice-block-gap) var(--make-ai-internal-panel-gutter-compact);
1176
1379
  }
1177
1380
 
1178
1381
  .make-ai-assistant__body {
1179
- padding: 18px 14px 28px;
1382
+ padding: 16px var(--make-ai-internal-panel-gutter-compact) 24px;
1383
+ }
1384
+
1385
+ .make-ai-assistant__body--with-notice {
1386
+ padding-top: 12px;
1180
1387
  }
1181
1388
 
1182
1389
  .make-ai-assistant__message {
@@ -1191,6 +1398,16 @@ button.make-ai-artifact__record:hover { background: var(--make-ai-internal-accen
1191
1398
  max-width: 100%;
1192
1399
  }
1193
1400
 
1401
+ .make-ai-assistant__load-failure {
1402
+ gap: 10px;
1403
+ }
1404
+
1405
+ .make-ai-assistant__load-failure-icon {
1406
+ border-radius: 9px;
1407
+ height: 40px;
1408
+ width: 40px;
1409
+ }
1410
+
1194
1411
  .make-ai-assistant__suggestions {
1195
1412
  display: grid;
1196
1413
  grid-template-columns: minmax(0, 1fr);
@@ -1203,7 +1420,7 @@ button.make-ai-artifact__record:hover { background: var(--make-ai-internal-accen
1203
1420
  }
1204
1421
 
1205
1422
  .make-ai-assistant__composer-region {
1206
- padding: 10px 14px 9px;
1423
+ padding: 10px var(--make-ai-internal-panel-gutter-compact) 9px;
1207
1424
  }
1208
1425
 
1209
1426
  .make-ai-assistant__back-to-latest {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qfei-design/make-ai-assistant",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "description": "Platform-wide Make AI Assistant contracts, React shell, and context-aware artifact templates.",
5
5
  "type": "module",
6
6
  "sideEffects": [