@almadar/ui 6.29.0 → 6.30.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 (52) hide show
  1. package/dist/{EntityBindingContext-UyeCfEBS.d.cts → EntityBindingContext-ChCONv2W.d.cts} +1 -50
  2. package/dist/{EntityBindingContext-UyeCfEBS.d.ts → EntityBindingContext-ChCONv2W.d.ts} +1 -50
  3. package/dist/avl/index.cjs +5 -6
  4. package/dist/avl/index.js +5 -6
  5. package/dist/components/index.cjs +4 -5
  6. package/dist/components/index.js +4 -5
  7. package/dist/context/index.cjs +135 -105
  8. package/dist/context/index.d.cts +2 -60
  9. package/dist/context/index.d.ts +2 -60
  10. package/dist/context/index.js +135 -105
  11. package/dist/lib/index.cjs +455 -0
  12. package/dist/lib/index.d.cts +42 -1
  13. package/dist/lib/index.d.ts +42 -1
  14. package/dist/lib/index.js +438 -1
  15. package/dist/marketing/index.cjs +4 -5
  16. package/dist/marketing/index.js +4 -5
  17. package/dist/providers/index.cjs +143 -116
  18. package/dist/providers/index.d.cts +1 -1
  19. package/dist/providers/index.d.ts +1 -1
  20. package/dist/providers/index.js +143 -116
  21. package/dist/runtime/index.cjs +5 -6
  22. package/dist/runtime/index.d.cts +2 -2
  23. package/dist/runtime/index.d.ts +2 -2
  24. package/dist/runtime/index.js +5 -6
  25. package/dist/themeTokens-DVRwufw8.d.cts +112 -0
  26. package/dist/themeTokens-DVRwufw8.d.ts +112 -0
  27. package/package.json +6 -5
  28. package/scripts/audit-tailwind-safelist.ts +4 -0
  29. package/tailwind-preset.cjs +155 -28
  30. package/themes/almadar-website.css +37 -107
  31. package/themes/almadar.css +37 -108
  32. package/themes/atelier.css +145 -240
  33. package/themes/bloomberg-dense.css +145 -252
  34. package/themes/clay.css +39 -137
  35. package/themes/comic.css +39 -145
  36. package/themes/corporate.css +39 -131
  37. package/themes/game-adventure.css +22 -87
  38. package/themes/game-rpg.css +22 -84
  39. package/themes/game-sci-fi.css +22 -88
  40. package/themes/game-ui-pack.css +22 -85
  41. package/themes/gazette.css +43 -135
  42. package/themes/glass.css +39 -148
  43. package/themes/kiosk.css +51 -146
  44. package/themes/linear-clean.css +145 -215
  45. package/themes/minimalist.css +39 -125
  46. package/themes/neon.css +39 -132
  47. package/themes/notion-editorial.css +145 -215
  48. package/themes/prism.css +37 -100
  49. package/themes/retro.css +39 -130
  50. package/themes/terminal.css +61 -152
  51. package/themes/trait-wars.css +121 -285
  52. package/themes/wireframe.css +41 -128
package/themes/kiosk.css CHANGED
@@ -1,54 +1,20 @@
1
1
  /**
2
- * Kiosk Theme
3
- *
4
- * Touch-first, chunky, mobile/kiosk-influenced. Big tap targets,
5
- * pill buttons, friendly saturated colors, and generous spacing.
2
+ * GENERATED — do not edit by hand.
3
+ * Source: packages/almadar-core/themes/kiosk.json
4
+ * Regenerate: node tools/almadar-pattern-sync/dist/index.js themes (or `almadar-sync themes`)
6
5
  */
7
6
 
8
- /* ==========================================================================
9
- * LIGHT MODE
10
- * ========================================================================== */
11
7
  [data-theme="kiosk-light"] {
12
- /* Shadows - Lifted, prominent for touch feedback */
13
- --shadow-main:
14
- 0 6px 20px rgba(255, 90, 79, 0.14), 0 2px 6px rgba(0, 0, 0, 0.08);
15
- --shadow-sm: 0 3px 8px rgba(0, 0, 0, 0.08);
16
- --shadow-lg:
17
- 0 16px 40px rgba(255, 90, 79, 0.22), 0 6px 16px rgba(0, 0, 0, 0.1);
18
- --shadow-inner: inset 0 2px 4px rgba(0, 0, 0, 0.08);
19
- --shadow-none: none;
20
- --shadow-hover:
21
- 0 20px 50px rgba(255, 90, 79, 0.28), 0 8px 20px rgba(0, 0, 0, 0.12);
22
- --shadow-active: 0 3px 10px rgba(255, 90, 79, 0.2);
23
-
24
- /* Border radius - Chunky containers, pill interactive */
25
- --radius-none: 0px;
26
- --radius-sm: 10px;
27
- --radius-md: 14px;
28
- --radius-lg: 20px;
29
- --radius-xl: 28px;
30
- --radius-full: 9999px;
31
-
32
- /* Border width - Tactile, visible */
33
- --border-width: 2px;
34
- --border-width-thin: 1px;
35
- --border-width-thick: 3px;
36
-
37
- /* Colors - Warm white background, saturated coral primary */
38
8
  --color-primary: #dc2626;
39
9
  --color-primary-hover: #b91c1c;
40
10
  --color-primary-foreground: #ffffff;
41
-
42
11
  --color-secondary: #fff1ef;
43
12
  --color-secondary-hover: #ffe1dd;
44
13
  --color-secondary-foreground: #1a1a1a;
45
-
46
14
  --color-accent: #0f766e;
47
15
  --color-accent-foreground: #ffffff;
48
-
49
16
  --color-muted: #f5f5f4;
50
17
  --color-muted-foreground: #595959;
51
-
52
18
  --color-background: #fefefe;
53
19
  --color-foreground: #1a1a1a;
54
20
  --color-card: #ffffff;
@@ -57,8 +23,6 @@
57
23
  --color-border: #e6e6e6;
58
24
  --color-input: #d4d4d4;
59
25
  --color-ring: #ff5a4f;
60
-
61
- /* Semantic colors - Saturated, cheerful */
62
26
  --color-error: #b91c1c;
63
27
  --color-error-foreground: #ffffff;
64
28
  --color-success: #15803d;
@@ -67,39 +31,44 @@
67
31
  --color-warning-foreground: #1a1a1a;
68
32
  --color-info: #0369a1;
69
33
  --color-info-foreground: #ffffff;
70
-
71
- /* Typography - Chunky, rounded geometric */
72
- --font-family:
73
- "Manrope", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
34
+ --radius-none: 0px;
35
+ --radius-sm: 10px;
36
+ --radius-md: 14px;
37
+ --radius-lg: 20px;
38
+ --radius-xl: 28px;
39
+ --radius-full: 9999px;
40
+ --border-width: 2px;
41
+ --border-width-thin: 1px;
42
+ --border-width-thick: 3px;
43
+ --font-family: "Manrope", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
74
44
  --font-weight-normal: 500;
75
45
  --font-weight-medium: 600;
76
46
  --font-weight-bold: 800;
77
47
  --letter-spacing: -0.01em;
78
48
  --line-height: 1.55;
79
-
80
- /* Icon styling - Filled, large, visible */
81
- --icon-stroke-width: 0;
82
49
  --icon-color: #1a1a1a;
83
-
84
- /* Transitions - Organic, friendly */
85
50
  --transition-fast: 300ms;
86
51
  --transition-normal: 500ms;
87
52
  --transition-slow: 750ms;
88
53
  --transition-timing: cubic-bezier(0.16, 1, 0.3, 1);
89
-
90
- /* Hover/Active transforms - Bigger lift for touch */
91
54
  --hover-scale: 1.03;
92
55
  --hover-translate-y: -3px;
93
56
  --hover-translate-x: 0;
94
57
  --active-scale: 0.96;
95
58
  --active-translate-y: 1px;
96
-
97
- /* Focus ring - Thick coral */
98
59
  --focus-ring-width: 3px;
99
60
  --focus-ring-offset: 3px;
100
61
  --focus-ring-color: #ff5a4f;
101
-
102
- /* Density axis — spacing scale (extra-spacious, 12pt rhythm) */
62
+ --intent-heading-major-size: 28px;
63
+ --intent-heading-major-weight: var(--font-weight-bold);
64
+ --intent-heading-major-leading: 36px;
65
+ --shadow-main: 0 6px 20px rgba(255, 90, 79, 0.14), 0 2px 6px rgba(0, 0, 0, 0.08);
66
+ --shadow-sm: 0 3px 8px rgba(0, 0, 0, 0.08);
67
+ --shadow-lg: 0 16px 40px rgba(255, 90, 79, 0.22), 0 6px 16px rgba(0, 0, 0, 0.1);
68
+ --shadow-inner: inset 0 2px 4px rgba(0, 0, 0, 0.08);
69
+ --shadow-none: none;
70
+ --shadow-hover: 0 20px 50px rgba(255, 90, 79, 0.28), 0 8px 20px rgba(0, 0, 0, 0.12);
71
+ --shadow-active: 0 3px 10px rgba(255, 90, 79, 0.2);
103
72
  --space-0: 0px;
104
73
  --space-1: 4px;
105
74
  --space-2: 8px;
@@ -113,7 +82,6 @@
113
82
  --space-10: 64px;
114
83
  --space-11: 72px;
115
84
  --space-12: 80px;
116
- /* Density axis — per-element heights (large tap targets) */
117
85
  --button-height-sm: 44px;
118
86
  --button-height-md: 52px;
119
87
  --button-height-lg: 64px;
@@ -123,20 +91,14 @@
123
91
  --row-height-compact: 56px;
124
92
  --row-height-normal: 72px;
125
93
  --row-height-spacious: 88px;
126
- /* Density axis — per-element padding (generous) */
127
94
  --card-padding-sm: 16px;
128
95
  --card-padding-md: 24px;
129
96
  --card-padding-lg: 32px;
130
97
  --dialog-padding: 32px;
131
98
  --section-gap: 48px;
132
- /* Type axis family triplet */
133
- --font-family-display:
134
- "Manrope", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
135
- --font-family-body:
136
- "Manrope", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
137
- --font-family-mono:
138
- "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
139
- /* Type axis — size scale (chunky, readable at arm's length) */
99
+ --font-family-display: "Manrope", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
100
+ --font-family-body: "Manrope", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
101
+ --font-family-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
140
102
  --text-xs: 14px;
141
103
  --leading-xs: 20px;
142
104
  --text-sm: 16px;
@@ -157,10 +119,6 @@
157
119
  --leading-display-1: 72px;
158
120
  --text-display-2: 80px;
159
121
  --leading-display-2: 88px;
160
- /* Type axis — intent mapping */
161
- --intent-heading-major-size: 28px;
162
- --intent-heading-major-weight: var(--font-weight-bold);
163
- --intent-heading-major-leading: 36px;
164
122
  --intent-heading-minor-size: var(--text-lg);
165
123
  --intent-heading-minor-weight: var(--font-weight-bold);
166
124
  --intent-heading-minor-leading: var(--leading-lg);
@@ -179,80 +137,41 @@
179
137
  --intent-numeric-size: var(--text-base);
180
138
  --intent-numeric-weight: var(--font-weight-bold);
181
139
  --intent-numeric-leading: var(--leading-base);
182
- /* Motion axis — duration palette (organic, slower) */
183
140
  --duration-instant: 0ms;
184
141
  --duration-fast: 300ms;
185
142
  --duration-normal: 500ms;
186
143
  --duration-slow: 750ms;
187
144
  --duration-dramatic: 1000ms;
188
- /* Motion axis — easing palette (ease-out, friendly) */
189
145
  --easing-linear: linear;
190
146
  --easing-standard: cubic-bezier(0.16, 1, 0.3, 1);
191
147
  --easing-emphasized: cubic-bezier(0.16, 1, 0.3, 1);
192
148
  --easing-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
193
- /* Iconography axis - FontAwesome solid, large. Chunky filled silhouettes
194
- distinct from phosphor-fill's refined geometric forms — fits kiosk's touch-first energy. */
195
149
  --icon-family: fa-solid;
150
+ --icon-stroke-width: 0;
196
151
  --icon-default-size: 26px;
197
- /* Elevation axis - lifted, prominent */
198
152
  --elevation-card: var(--shadow-lg);
199
153
  --elevation-popover: var(--shadow-lg);
200
154
  --elevation-dialog: var(--shadow-lg);
201
155
  --elevation-toast: var(--shadow-main);
202
- /* Geometry axis - pill interactive, chunky containers */
203
156
  --radius-container: 16px;
204
157
  --radius-interactive: 9999px;
205
158
  --radius-pill: 9999px;
206
- /* Geometry axis - tactile borders */
207
159
  --border-hairline: 1px;
208
160
  --border-standard: 2px;
209
161
  --border-heavy: 3px;
210
162
  }
211
163
 
212
- /* ==========================================================================
213
- * DARK MODE
214
- * ========================================================================== */
215
164
  [data-theme="kiosk-dark"] {
216
- /* Shadows - Deep, lifted with coral glow */
217
- --shadow-main:
218
- 0 6px 20px rgba(255, 90, 79, 0.2), 0 2px 6px rgba(0, 0, 0, 0.4);
219
- --shadow-sm: 0 3px 8px rgba(0, 0, 0, 0.4);
220
- --shadow-lg:
221
- 0 16px 40px rgba(255, 90, 79, 0.3), 0 6px 16px rgba(0, 0, 0, 0.5);
222
- --shadow-inner: inset 0 2px 4px rgba(0, 0, 0, 0.3);
223
- --shadow-none: none;
224
- --shadow-hover:
225
- 0 20px 50px rgba(255, 90, 79, 0.4), 0 8px 20px rgba(34, 200, 190, 0.2);
226
- --shadow-active: 0 3px 10px rgba(255, 90, 79, 0.3);
227
-
228
- /* Border radius - Chunky containers, pill interactive */
229
- --radius-none: 0px;
230
- --radius-sm: 10px;
231
- --radius-md: 14px;
232
- --radius-lg: 20px;
233
- --radius-xl: 28px;
234
- --radius-full: 9999px;
235
-
236
- /* Border width - Tactile, visible */
237
- --border-width: 2px;
238
- --border-width-thin: 1px;
239
- --border-width-thick: 3px;
240
-
241
- /* Colors - Deep navy background, coral primary, turquoise pop */
242
165
  --color-primary: #ff6b5e;
243
166
  --color-primary-hover: #ff8478;
244
167
  --color-primary-foreground: #1a0606;
245
-
246
168
  --color-secondary: #1c2a44;
247
169
  --color-secondary-hover: #2a3a5c;
248
170
  --color-secondary-foreground: #ffffff;
249
-
250
171
  --color-accent: #2ee0d4;
251
172
  --color-accent-foreground: #06231f;
252
-
253
173
  --color-muted: #16243c;
254
174
  --color-muted-foreground: #b8c4d8;
255
-
256
175
  --color-background: #0a1428;
257
176
  --color-foreground: #ffffff;
258
177
  --color-card: #122038;
@@ -261,8 +180,6 @@
261
180
  --color-border: rgba(255, 255, 255, 0.12);
262
181
  --color-input: rgba(255, 255, 255, 0.16);
263
182
  --color-ring: #ff6b5e;
264
-
265
- /* Semantic colors - Saturated, bright for dark */
266
183
  --color-error: #ff7a7a;
267
184
  --color-error-foreground: #1a0606;
268
185
  --color-success: #4ade80;
@@ -271,39 +188,44 @@
271
188
  --color-warning-foreground: #1a1106;
272
189
  --color-info: #38bdf8;
273
190
  --color-info-foreground: #062235;
274
-
275
- /* Typography - Chunky, rounded geometric */
276
- --font-family:
277
- "Manrope", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
191
+ --radius-none: 0px;
192
+ --radius-sm: 10px;
193
+ --radius-md: 14px;
194
+ --radius-lg: 20px;
195
+ --radius-xl: 28px;
196
+ --radius-full: 9999px;
197
+ --border-width: 2px;
198
+ --border-width-thin: 1px;
199
+ --border-width-thick: 3px;
200
+ --font-family: "Manrope", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
278
201
  --font-weight-normal: 500;
279
202
  --font-weight-medium: 600;
280
203
  --font-weight-bold: 800;
281
204
  --letter-spacing: -0.01em;
282
205
  --line-height: 1.55;
283
-
284
- /* Icon styling - Filled, large, visible */
285
- --icon-stroke-width: 0;
286
206
  --icon-color: #ffffff;
287
-
288
- /* Transitions - Organic, friendly */
289
207
  --transition-fast: 300ms;
290
208
  --transition-normal: 500ms;
291
209
  --transition-slow: 750ms;
292
210
  --transition-timing: cubic-bezier(0.16, 1, 0.3, 1);
293
-
294
- /* Hover/Active transforms - Bigger lift for touch */
295
211
  --hover-scale: 1.03;
296
212
  --hover-translate-y: -3px;
297
213
  --hover-translate-x: 0;
298
214
  --active-scale: 0.96;
299
215
  --active-translate-y: 1px;
300
-
301
- /* Focus ring - Thick coral */
302
216
  --focus-ring-width: 3px;
303
217
  --focus-ring-offset: 3px;
304
218
  --focus-ring-color: #ff6b5e;
305
-
306
- /* Density axis — spacing scale (extra-spacious, 12pt rhythm) */
219
+ --intent-heading-major-size: 28px;
220
+ --intent-heading-major-weight: var(--font-weight-bold);
221
+ --intent-heading-major-leading: 36px;
222
+ --shadow-main: 0 6px 20px rgba(255, 90, 79, 0.2), 0 2px 6px rgba(0, 0, 0, 0.4);
223
+ --shadow-sm: 0 3px 8px rgba(0, 0, 0, 0.4);
224
+ --shadow-lg: 0 16px 40px rgba(255, 90, 79, 0.3), 0 6px 16px rgba(0, 0, 0, 0.5);
225
+ --shadow-inner: inset 0 2px 4px rgba(0, 0, 0, 0.3);
226
+ --shadow-none: none;
227
+ --shadow-hover: 0 20px 50px rgba(255, 90, 79, 0.4), 0 8px 20px rgba(34, 200, 190, 0.2);
228
+ --shadow-active: 0 3px 10px rgba(255, 90, 79, 0.3);
307
229
  --space-0: 0px;
308
230
  --space-1: 4px;
309
231
  --space-2: 8px;
@@ -317,7 +239,6 @@
317
239
  --space-10: 64px;
318
240
  --space-11: 72px;
319
241
  --space-12: 80px;
320
- /* Density axis — per-element heights (large tap targets) */
321
242
  --button-height-sm: 44px;
322
243
  --button-height-md: 52px;
323
244
  --button-height-lg: 64px;
@@ -327,20 +248,14 @@
327
248
  --row-height-compact: 56px;
328
249
  --row-height-normal: 72px;
329
250
  --row-height-spacious: 88px;
330
- /* Density axis — per-element padding (generous) */
331
251
  --card-padding-sm: 16px;
332
252
  --card-padding-md: 24px;
333
253
  --card-padding-lg: 32px;
334
254
  --dialog-padding: 32px;
335
255
  --section-gap: 48px;
336
- /* Type axis family triplet */
337
- --font-family-display:
338
- "Manrope", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
339
- --font-family-body:
340
- "Manrope", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
341
- --font-family-mono:
342
- "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
343
- /* Type axis — size scale (chunky, readable at arm's length) */
256
+ --font-family-display: "Manrope", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
257
+ --font-family-body: "Manrope", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
258
+ --font-family-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
344
259
  --text-xs: 14px;
345
260
  --leading-xs: 20px;
346
261
  --text-sm: 16px;
@@ -361,10 +276,6 @@
361
276
  --leading-display-1: 72px;
362
277
  --text-display-2: 80px;
363
278
  --leading-display-2: 88px;
364
- /* Type axis — intent mapping */
365
- --intent-heading-major-size: 28px;
366
- --intent-heading-major-weight: var(--font-weight-bold);
367
- --intent-heading-major-leading: 36px;
368
279
  --intent-heading-minor-size: var(--text-lg);
369
280
  --intent-heading-minor-weight: var(--font-weight-bold);
370
281
  --intent-heading-minor-leading: var(--leading-lg);
@@ -383,31 +294,25 @@
383
294
  --intent-numeric-size: var(--text-base);
384
295
  --intent-numeric-weight: var(--font-weight-bold);
385
296
  --intent-numeric-leading: var(--leading-base);
386
- /* Motion axis — duration palette (organic, slower) */
387
297
  --duration-instant: 0ms;
388
298
  --duration-fast: 300ms;
389
299
  --duration-normal: 500ms;
390
300
  --duration-slow: 750ms;
391
301
  --duration-dramatic: 1000ms;
392
- /* Motion axis — easing palette (ease-out, friendly) */
393
302
  --easing-linear: linear;
394
303
  --easing-standard: cubic-bezier(0.16, 1, 0.3, 1);
395
304
  --easing-emphasized: cubic-bezier(0.16, 1, 0.3, 1);
396
305
  --easing-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
397
- /* Iconography axis - FontAwesome solid, large. Chunky filled silhouettes
398
- distinct from phosphor-fill's refined geometric forms — fits kiosk's touch-first energy. */
399
306
  --icon-family: fa-solid;
307
+ --icon-stroke-width: 0;
400
308
  --icon-default-size: 26px;
401
- /* Elevation axis - lifted, prominent */
402
309
  --elevation-card: var(--shadow-lg);
403
310
  --elevation-popover: var(--shadow-lg);
404
311
  --elevation-dialog: var(--shadow-lg);
405
312
  --elevation-toast: var(--shadow-main);
406
- /* Geometry axis - pill interactive, chunky containers */
407
313
  --radius-container: 16px;
408
314
  --radius-interactive: 9999px;
409
315
  --radius-pill: 9999px;
410
- /* Geometry axis - tactile borders */
411
316
  --border-hairline: 1px;
412
317
  --border-standard: 2px;
413
318
  --border-heavy: 3px;