@joewinke/jatui 0.42.0 → 0.44.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.
Files changed (49) hide show
  1. package/CLAUDE.md +24 -3
  2. package/THIRD_PARTY_NOTICES.md +14 -0
  3. package/dist/actions/dismissOutside.d.ts +52 -0
  4. package/dist/actions/dismissOutside.js +80 -0
  5. package/dist/components/FileDropzone.svelte +165 -3
  6. package/dist/components/FileDropzone.svelte.d.ts +9 -0
  7. package/dist/components/ImageReveal.svelte +353 -0
  8. package/dist/components/ImageReveal.svelte.d.ts +31 -0
  9. package/dist/components/TextInput.svelte +71 -20
  10. package/dist/components/TextInput.svelte.d.ts +7 -0
  11. package/dist/components/ThumbnailGrid.svelte +106 -1
  12. package/dist/components/ThumbnailGrid.svelte.d.ts +7 -0
  13. package/dist/components/basic/Alert.svelte +113 -16
  14. package/dist/components/basic/Alert.svelte.d.ts +17 -1
  15. package/dist/components/basic/Checkbox.svelte +53 -1
  16. package/dist/components/basic/Checkbox.svelte.d.ts +6 -0
  17. package/dist/components/basic/RadioGroup.svelte +59 -3
  18. package/dist/components/basic/RadioGroup.svelte.d.ts +15 -0
  19. package/dist/components/basic/Slider.svelte +257 -9
  20. package/dist/components/basic/Slider.svelte.d.ts +14 -2
  21. package/dist/components/basic/sliderMath.d.ts +29 -0
  22. package/dist/components/basic/sliderMath.js +64 -0
  23. package/dist/components/field/FieldHint.svelte +29 -0
  24. package/dist/components/field/FieldHint.svelte.d.ts +17 -0
  25. package/dist/components/field/FieldLabel.svelte +100 -0
  26. package/dist/components/field/FieldLabel.svelte.d.ts +29 -0
  27. package/dist/components/form-cards/CheckGlyph.svelte +138 -0
  28. package/dist/components/form-cards/CheckGlyph.svelte.d.ts +29 -0
  29. package/dist/components/form-cards/CheckboxCard.svelte +120 -0
  30. package/dist/components/form-cards/CheckboxCard.svelte.d.ts +33 -0
  31. package/dist/components/form-cards/ChoiceCard.svelte +156 -0
  32. package/dist/components/form-cards/ChoiceCard.svelte.d.ts +42 -0
  33. package/dist/components/form-cards/SwitchCard.svelte +114 -0
  34. package/dist/components/form-cards/SwitchCard.svelte.d.ts +28 -0
  35. package/dist/components/imageReveal.d.ts +51 -0
  36. package/dist/components/imageReveal.js +83 -0
  37. package/dist/components/toast/ToastHost.svelte +56 -3
  38. package/dist/components/toast/ToastHost.svelte.d.ts +9 -1
  39. package/dist/components/toast/ToastItem.svelte +75 -23
  40. package/dist/components/toast/ToastItem.svelte.d.ts +2 -0
  41. package/dist/components/uploadProgress.d.ts +30 -0
  42. package/dist/components/uploadProgress.js +47 -0
  43. package/dist/index.d.ts +15 -2
  44. package/dist/index.js +13 -1
  45. package/dist/stores/toast.d.ts +35 -0
  46. package/dist/stores/toast.js +15 -1
  47. package/dist/styles/motion.css +72 -0
  48. package/dist/styles/rail.css +51 -0
  49. package/package.json +1 -1
@@ -223,3 +223,75 @@
223
223
  opacity: 1;
224
224
  }
225
225
  }
226
+
227
+ /*
228
+ * One-shot utility animations (BoardUI wave 5, jatui-bns3w). All on the
229
+ * tokens above, so they scale with data-motion and collapse under reduced
230
+ * motion. Ideas after BoardUI's globals.css (MIT © 2026 Mertcan Dundar
231
+ * Esmergul).
232
+ *
233
+ * .jatui-check-draw — an SVG stroke with pathLength="1" draws itself on
234
+ * (the CheckGlyph tick carries its own copy).
235
+ * .jatui-row-exit — a list row slides aside and collapses its height;
236
+ * remove it on `animationend` (bulk-delete flows).
237
+ * .jatui-label-out / .jatui-label-in — a button label swap: old text
238
+ * lifts out, new text rises in.
239
+ */
240
+ .jatui-check-draw {
241
+ stroke-dasharray: 1;
242
+ stroke-dashoffset: 1;
243
+ animation: jatui-check-draw var(--motion-fast) var(--motion-glide) forwards;
244
+ }
245
+
246
+ @keyframes jatui-check-draw {
247
+ to {
248
+ stroke-dashoffset: 0;
249
+ }
250
+ }
251
+
252
+ .jatui-row-exit {
253
+ overflow: hidden;
254
+ animation: jatui-row-exit var(--motion-move) var(--motion-standard) forwards;
255
+ }
256
+
257
+ @keyframes jatui-row-exit {
258
+ 0% {
259
+ opacity: 1;
260
+ transform: translateX(0);
261
+ max-height: var(--jatui-row-h, 4rem);
262
+ }
263
+ 50% {
264
+ opacity: 0;
265
+ transform: translateX(calc(var(--motion-travel) * 1.5));
266
+ max-height: var(--jatui-row-h, 4rem);
267
+ }
268
+ 100% {
269
+ opacity: 0;
270
+ transform: translateX(calc(var(--motion-travel) * 1.5));
271
+ max-height: 0;
272
+ padding-block: 0;
273
+ margin-block: 0;
274
+ }
275
+ }
276
+
277
+ .jatui-label-out {
278
+ animation: jatui-label-out var(--motion-fast) var(--motion-glide) forwards;
279
+ }
280
+
281
+ .jatui-label-in {
282
+ animation: jatui-label-in var(--motion-enter) var(--motion-glide) both;
283
+ }
284
+
285
+ @keyframes jatui-label-out {
286
+ to {
287
+ opacity: 0;
288
+ transform: translateY(calc(var(--motion-travel) * -0.5));
289
+ }
290
+ }
291
+
292
+ @keyframes jatui-label-in {
293
+ from {
294
+ opacity: 0;
295
+ transform: translateY(calc(var(--motion-travel) * 0.5));
296
+ }
297
+ }
@@ -74,3 +74,54 @@
74
74
  line-height: 1rem; /* 16px */
75
75
  letter-spacing: 0.01em;
76
76
  }
77
+
78
+ /* ─── Type ramp — composite text utilities (BoardUI wave 5) ──────────────
79
+ Each class sets size + line-height + tracking + weight together, so a
80
+ caption is one class instead of `text-xs font-medium tracking-wide`.
81
+ Deliberately small (six steps), not a Figma matrix. Colour is left to
82
+ the caller (text-base-content/60 etc.). Idea after BoardUI's
83
+ typography.css (MIT © 2026 Mertcan Dundar Esmergul).
84
+ ─────────────────────────────────────────────────────────────────────── */
85
+
86
+ .text-jatui-caption {
87
+ font-size: 0.75rem; /* 12px */
88
+ line-height: 1rem;
89
+ letter-spacing: 0.01em;
90
+ font-weight: 400;
91
+ }
92
+
93
+ .text-jatui-label {
94
+ font-size: 0.6875rem; /* 11px — uppercase instrument label */
95
+ line-height: 1rem;
96
+ letter-spacing: 0.08em;
97
+ font-weight: 600;
98
+ text-transform: uppercase;
99
+ }
100
+
101
+ .text-jatui-body {
102
+ font-size: 0.875rem; /* 14px */
103
+ line-height: 1.25rem;
104
+ letter-spacing: 0;
105
+ font-weight: 400;
106
+ }
107
+
108
+ .text-jatui-body-strong {
109
+ font-size: 0.875rem;
110
+ line-height: 1.25rem;
111
+ letter-spacing: 0;
112
+ font-weight: 600;
113
+ }
114
+
115
+ .text-jatui-title {
116
+ font-size: 1.125rem; /* 18px */
117
+ line-height: 1.5rem;
118
+ letter-spacing: -0.01em;
119
+ font-weight: 600;
120
+ }
121
+
122
+ .text-jatui-display {
123
+ font-size: 1.875rem; /* 30px */
124
+ line-height: 2.25rem;
125
+ letter-spacing: -0.02em;
126
+ font-weight: 700;
127
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@joewinke/jatui",
3
- "version": "0.42.0",
3
+ "version": "0.44.0",
4
4
  "private": false,
5
5
  "description": "Shared Svelte 5 component library for JAT projects",
6
6
  "type": "module",