@ai-matrx/design-system 0.18.10 → 0.18.12

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.
Files changed (62) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/content-transfer/alchemy.svg +1 -1
  3. package/dist/content-transfer/icon.cjs +3 -1
  4. package/dist/content-transfer/icon.cjs.map +1 -1
  5. package/dist/content-transfer/icon.d.cts +3 -2
  6. package/dist/content-transfer/icon.d.ts +3 -2
  7. package/dist/content-transfer/icon.js +3 -1
  8. package/dist/content-transfer/icon.js.map +1 -1
  9. package/dist/content-transfer.cjs +312 -278
  10. package/dist/content-transfer.cjs.map +1 -1
  11. package/dist/content-transfer.css +87 -24
  12. package/dist/content-transfer.d.cts +1 -1
  13. package/dist/content-transfer.d.ts +1 -1
  14. package/dist/content-transfer.js +312 -278
  15. package/dist/content-transfer.js.map +1 -1
  16. package/dist/data-table/copy-helpers.d.cts +1 -1
  17. package/dist/data-table/copy-helpers.d.ts +1 -1
  18. package/dist/data-table/copy-types.cjs.map +1 -1
  19. package/dist/data-table/copy-types.d.cts +1 -1
  20. package/dist/data-table/copy-types.d.ts +1 -1
  21. package/dist/data-table/data-row-inspector.cjs +314 -277
  22. package/dist/data-table/data-row-inspector.cjs.map +1 -1
  23. package/dist/data-table/data-row-inspector.js +314 -277
  24. package/dist/data-table/data-row-inspector.js.map +1 -1
  25. package/dist/data-table/data-row-window.cjs +314 -277
  26. package/dist/data-table/data-row-window.cjs.map +1 -1
  27. package/dist/data-table/data-row-window.js +314 -277
  28. package/dist/data-table/data-row-window.js.map +1 -1
  29. package/dist/data-table/filter-engine.d.cts +1 -1
  30. package/dist/data-table/filter-engine.d.ts +1 -1
  31. package/dist/data-table/host.cjs.map +1 -1
  32. package/dist/data-table/host.d.cts +16 -2
  33. package/dist/data-table/host.d.ts +16 -2
  34. package/dist/data-table/host.js.map +1 -1
  35. package/dist/data-table/index.cjs +452 -399
  36. package/dist/data-table/index.cjs.map +1 -1
  37. package/dist/data-table/index.d.cts +3 -3
  38. package/dist/data-table/index.d.ts +3 -3
  39. package/dist/data-table/index.js +453 -400
  40. package/dist/data-table/index.js.map +1 -1
  41. package/dist/data-table/infer-filter.d.cts +1 -1
  42. package/dist/data-table/infer-filter.d.ts +1 -1
  43. package/dist/data-table/layered-filters.d.cts +1 -1
  44. package/dist/data-table/layered-filters.d.ts +1 -1
  45. package/dist/data-table/pagination.cjs.map +1 -1
  46. package/dist/data-table/pagination.js.map +1 -1
  47. package/dist/data-table/query-control.d.cts +1 -1
  48. package/dist/data-table/query-control.d.ts +1 -1
  49. package/dist/data-table/types.cjs.map +1 -1
  50. package/dist/data-table/types.d.cts +1 -1
  51. package/dist/data-table/types.d.ts +1 -1
  52. package/dist/data-table/url-state.d.cts +1 -1
  53. package/dist/data-table/url-state.d.ts +1 -1
  54. package/dist/data-table/uuid-cell.cjs.map +1 -1
  55. package/dist/data-table/uuid-cell.js.map +1 -1
  56. package/dist/data-table/xlsx.d.cts +1 -1
  57. package/dist/data-table/xlsx.d.ts +1 -1
  58. package/dist/index.cjs.map +1 -1
  59. package/dist/index.js.map +1 -1
  60. package/dist/{types-C2xN6W_q.d.ts → types-BuDKVpeF.d.ts} +2 -1
  61. package/dist/{types-D_tpuk6m.d.cts → types-Dqcb7jXO.d.cts} +2 -1
  62. package/package.json +2 -2
@@ -42,6 +42,21 @@
42
42
  padding: 0.4375rem;
43
43
  max-height: var(--radix-popover-content-available-height, 80dvh);
44
44
  }
45
+ .matrx-alchemy-output {
46
+ display: grid;
47
+ gap: 0.375rem;
48
+ padding: 0.375rem;
49
+ border: 1px solid hsl(var(--border, 240 6% 90%));
50
+ border-radius: 0.5rem;
51
+ }
52
+ .matrx-alchemy-output > h3 {
53
+ margin: 0.125rem 0.125rem 0;
54
+ color: hsl(var(--muted-foreground, 240 4% 46%));
55
+ font-size: 0.6875rem;
56
+ font-weight: 600;
57
+ letter-spacing: 0.04em;
58
+ text-transform: uppercase;
59
+ }
45
60
  .matrx-alchemy-mode {
46
61
  display: flex;
47
62
  gap: 0.1875rem;
@@ -79,8 +94,9 @@
79
94
  color: hsl(var(--muted-foreground, 240 4% 46%));
80
95
  }
81
96
  .matrx-alchemy-workspace {
82
- max-height: min(90dvh, 56rem);
83
- overflow: auto;
97
+ max-height: min(90dvh, 48rem);
98
+ overflow: hidden;
99
+ grid-template-rows: auto minmax(0, 1fr) auto;
84
100
  }
85
101
  .matrx-alchemy-workspace-grid {
86
102
  display: grid;
@@ -88,8 +104,15 @@
88
104
  gap: 1rem;
89
105
  min-height: 0;
90
106
  }
107
+ .matrx-alchemy-workspace-body {
108
+ min-height: 0;
109
+ overflow: auto;
110
+ overscroll-behavior: contain;
111
+ padding-right: 0.125rem;
112
+ }
91
113
  .matrx-alchemy-main {
92
114
  display: grid;
115
+ align-content: start;
93
116
  gap: 0.75rem;
94
117
  min-width: 0;
95
118
  }
@@ -128,6 +151,15 @@
128
151
  border-radius: 0.375rem;
129
152
  padding: 0.625rem;
130
153
  }
154
+ .matrx-alchemy-options > fieldset {
155
+ display: grid;
156
+ gap: 0.5rem;
157
+ min-width: 0;
158
+ margin: 0.625rem 0 0;
159
+ padding: 0;
160
+ border: 0;
161
+ }
162
+ .matrx-alchemy-options summary { cursor: pointer; }
131
163
  .matrx-alchemy-options legend {
132
164
  padding: 0 0.25rem;
133
165
  font-size: 0.8125rem;
@@ -287,13 +319,11 @@
287
319
  .matrx-alchemy-workspace {
288
320
  position: fixed;
289
321
  z-index: 10001;
290
- top: 50%;
291
- left: 50%;
292
- right: auto;
293
- bottom: auto;
294
- margin: 0;
295
- translate: -50% -50%;
296
- width: min(64rem, calc(100vw - 2rem));
322
+ inset: 0;
323
+ margin: auto;
324
+ translate: none;
325
+ height: fit-content;
326
+ width: min(56rem, calc(100vw - 2rem));
297
327
  max-width: calc(100vw - 2rem);
298
328
  padding: 1.5rem;
299
329
  display: grid;
@@ -327,27 +357,35 @@
327
357
  gap: 0.5rem;
328
358
  align-items: center;
329
359
  }
330
- .matrx-alchemy-workspace button {
360
+ .matrx-alchemy-workspace-secondary,
361
+ .matrx-alchemy-workspace-primary {
331
362
  display: inline-flex;
332
363
  align-items: center;
333
364
  justify-content: center;
334
- gap: 0.375rem;
335
365
  min-height: 2rem;
336
366
  padding: 0.375rem 0.75rem;
337
- border: 1px solid hsl(var(--border, 240 6% 90%));
338
367
  border-radius: 0.375rem;
339
- background: hsl(var(--background, 0 0% 100%));
340
- color: inherit;
368
+ cursor: pointer;
341
369
  font: inherit;
342
370
  font-size: 0.8125rem;
343
- cursor: pointer;
344
371
  }
345
- .matrx-alchemy-workspace button:hover {
346
- background: hsl(var(--accent, 240 5% 96%));
372
+ .matrx-alchemy-workspace-secondary {
373
+ border: 1px solid hsl(var(--border, 240 6% 90%));
374
+ background: hsl(var(--background, 0 0% 100%));
375
+ color: hsl(var(--foreground, 240 10% 4%));
347
376
  }
348
- .matrx-alchemy-workspace button:disabled {
349
- opacity: 0.5;
350
- cursor: not-allowed;
377
+ .matrx-alchemy-workspace-primary {
378
+ border: 1px solid hsl(var(--primary, 262 43% 51%));
379
+ background: hsl(var(--primary, 262 43% 51%));
380
+ color: hsl(var(--primary-foreground, 0 0% 100%));
381
+ }
382
+ .matrx-alchemy-workspace :is(.matrx-alchemy-workspace-secondary, .matrx-alchemy-workspace-primary):disabled { opacity: 0.5; cursor: not-allowed; }
383
+ .matrx-alchemy-workspace-secondary:hover { background: hsl(var(--accent, 240 5% 96%)); }
384
+ .matrx-alchemy-workspace-primary:hover { filter: brightness(0.96); }
385
+ .matrx-alchemy-configuration {
386
+ width: min(40rem, calc(100vw - 2rem));
387
+ max-height: min(90dvh, 42rem);
388
+ overflow: hidden;
351
389
  }
352
390
  .matrx-alchemy-workspace button:focus-visible,
353
391
  .matrx-alchemy-workspace :is(input, textarea, select):focus-visible {
@@ -379,10 +417,7 @@
379
417
  }
380
418
  @media (max-width: 767px) {
381
419
  .matrx-alchemy-workspace {
382
- top: auto;
383
- bottom: 0;
384
- left: 0;
385
- translate: none;
420
+ inset: auto 0 0;
386
421
  width: 100%;
387
422
  max-width: 100%;
388
423
  max-height: 92dvh;
@@ -393,3 +428,31 @@
393
428
 
394
429
  .matrx-alchemy-menu *, .matrx-alchemy-workspace * { box-sizing: border-box; }
395
430
  .matrx-alchemy-workspace-grid:not(:has(aside)) { grid-template-columns: minmax(0, 1fr); }
431
+
432
+ /* Table toolbar matches the canonical tap-target 44 / 28 / 14 geometry.
433
+ tap-target depends on design-system, so this primitive cannot import it. */
434
+ .matrx-alchemy-toolbar-target .matrx-alchemy-trigger {
435
+ position: relative;
436
+ flex-shrink: 0;
437
+ width: 2.75rem;
438
+ height: 2.75rem;
439
+ background: transparent;
440
+ touch-action: manipulation;
441
+ }
442
+ .matrx-alchemy-toolbar-target .matrx-alchemy-trigger::before {
443
+ content: "";
444
+ position: absolute;
445
+ width: 1.75rem;
446
+ height: 1.75rem;
447
+ border-radius: 9999px;
448
+ transition: background-color 150ms ease, transform 100ms ease;
449
+ }
450
+ .matrx-alchemy-toolbar-target .matrx-alchemy-trigger:hover::before {
451
+ background: hsl(var(--accent, 240 5% 96%));
452
+ }
453
+ .matrx-alchemy-toolbar-target .matrx-alchemy-trigger:active::before { transform: scale(0.92); }
454
+ .matrx-alchemy-toolbar-target .matrx-alchemy-trigger svg {
455
+ position: relative;
456
+ width: 0.875rem;
457
+ height: 0.875rem;
458
+ }
@@ -133,7 +133,7 @@ interface MatrxCopyMenuProps {
133
133
  disabled?: boolean;
134
134
  className?: string;
135
135
  stopPropagation?: boolean;
136
- size?: "xs" | "icon" | "sm";
136
+ size?: "xs" | "icon" | "sm" | "toolbar";
137
137
  appearance?: "bare" | "segmented";
138
138
  unified?: boolean;
139
139
  grouped?: boolean;
@@ -133,7 +133,7 @@ interface MatrxCopyMenuProps {
133
133
  disabled?: boolean;
134
134
  className?: string;
135
135
  stopPropagation?: boolean;
136
- size?: "xs" | "icon" | "sm";
136
+ size?: "xs" | "icon" | "sm" | "toolbar";
137
137
  appearance?: "bare" | "segmented";
138
138
  unified?: boolean;
139
139
  grouped?: boolean;