@vaneui/ui 0.2.2-alpha.20250907183237.5f63365 → 0.2.2-alpha.20250913214402.427a7ea

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 (74) hide show
  1. package/README.md +2 -2
  2. package/dist/index.esm.js +1007 -410
  3. package/dist/index.esm.js.map +1 -1
  4. package/dist/index.js +1169 -409
  5. package/dist/index.js.map +1 -1
  6. package/dist/src/components/tests/grid5.test.d.ts +1 -0
  7. package/dist/src/components/tests/grid6.test.d.ts +1 -0
  8. package/dist/src/components/tests/input.test.d.ts +1 -0
  9. package/dist/src/components/tests/transparent-key-behavior.test.d.ts +1 -0
  10. package/dist/src/components/themeContext.d.ts +11 -1
  11. package/dist/src/components/ui/card.d.ts +126 -2
  12. package/dist/src/components/ui/checkbox.d.ts +2 -0
  13. package/dist/src/components/ui/classes/appearanceClasses.d.ts +20 -18
  14. package/dist/src/components/ui/classes/typographyClasses.d.ts +3 -3
  15. package/dist/src/components/ui/code.d.ts +2 -0
  16. package/dist/src/components/ui/col.d.ts +93 -2
  17. package/dist/src/components/ui/container.d.ts +93 -2
  18. package/dist/src/components/ui/grid.d.ts +420 -4
  19. package/dist/src/components/ui/img.d.ts +2 -0
  20. package/dist/src/components/ui/input.d.ts +123 -0
  21. package/dist/src/components/ui/layout.d.ts +1 -1
  22. package/dist/src/components/ui/props/appearance.d.ts +22 -0
  23. package/dist/src/components/ui/props/border.d.ts +6 -0
  24. package/dist/src/components/ui/props/breakpoint.d.ts +12 -0
  25. package/dist/src/components/ui/props/display.d.ts +24 -0
  26. package/dist/src/components/ui/props/flexDirection.d.ts +10 -0
  27. package/dist/src/components/ui/props/focusVisible.d.ts +6 -0
  28. package/dist/src/components/ui/props/fontFamily.d.ts +8 -0
  29. package/dist/src/components/ui/props/fontStyle.d.ts +6 -0
  30. package/dist/src/components/ui/props/fontWeight.d.ts +20 -0
  31. package/dist/src/components/ui/props/gap.d.ts +6 -0
  32. package/dist/src/components/ui/props/hide.d.ts +12 -0
  33. package/dist/src/components/ui/props/items.d.ts +12 -0
  34. package/dist/src/components/ui/props/justify.d.ts +18 -0
  35. package/dist/src/components/ui/props/keys.d.ts +143 -16
  36. package/dist/src/components/ui/props/listStyle.d.ts +6 -0
  37. package/dist/src/components/ui/props/mode.d.ts +21 -0
  38. package/dist/src/components/ui/props/overflow.d.ts +32 -0
  39. package/dist/src/components/ui/props/padding.d.ts +6 -0
  40. package/dist/src/components/ui/props/position.d.ts +12 -0
  41. package/dist/src/components/ui/props/props.d.ts +25 -8
  42. package/dist/src/components/ui/props/reverse.d.ts +4 -0
  43. package/dist/src/components/ui/props/ring.d.ts +6 -0
  44. package/dist/src/components/ui/props/shadow.d.ts +6 -0
  45. package/dist/src/components/ui/props/shape.d.ts +8 -0
  46. package/dist/src/components/ui/props/size.d.ts +12 -0
  47. package/dist/src/components/ui/props/textAlign.d.ts +10 -0
  48. package/dist/src/components/ui/props/textDecoration.d.ts +10 -0
  49. package/dist/src/components/ui/props/textTransform.d.ts +10 -0
  50. package/dist/src/components/ui/props/transparent.d.ts +4 -0
  51. package/dist/src/components/ui/props/variant.d.ts +6 -0
  52. package/dist/src/components/ui/props/wrap.d.ts +8 -0
  53. package/dist/src/components/ui/row.d.ts +98 -2
  54. package/dist/src/components/ui/section.d.ts +100 -2
  55. package/dist/src/components/ui/stack.d.ts +100 -2
  56. package/dist/src/components/ui/theme/appearance/appearanceTheme.d.ts +3 -2
  57. package/dist/src/components/ui/theme/appearance/genericVariantTheme.d.ts +5 -0
  58. package/dist/src/components/ui/theme/appearance/shadowAppearanceTheme.d.ts +5 -5
  59. package/dist/src/components/ui/theme/badgeTheme.d.ts +3 -0
  60. package/dist/src/components/ui/theme/buttonTheme.d.ts +3 -0
  61. package/dist/src/components/ui/theme/checkboxTheme.d.ts +11 -2
  62. package/dist/src/components/ui/theme/chipTheme.d.ts +3 -0
  63. package/dist/src/components/ui/theme/codeTheme.d.ts +3 -0
  64. package/dist/src/components/ui/theme/common/ComponentTheme.d.ts +3 -3
  65. package/dist/src/components/ui/theme/gridTheme.d.ts +2 -0
  66. package/dist/src/components/ui/theme/imgTheme.d.ts +4 -0
  67. package/dist/src/components/ui/theme/inputTheme.d.ts +40 -0
  68. package/dist/src/components/ui/theme/layout/borderTheme.d.ts +2 -0
  69. package/dist/src/components/ui/theme/layout/focusVisibleTheme.d.ts +11 -0
  70. package/dist/src/components/ui/theme/layout/ringTheme.d.ts +2 -0
  71. package/dist/src/index.d.ts +2 -1
  72. package/dist/ui.css +690 -566
  73. package/dist/vars.css +134 -134
  74. package/package.json +1 -1
package/dist/index.esm.js CHANGED
@@ -9,16 +9,382 @@ import { createContext, useContext, useMemo, forwardRef } from 'react';
9
9
  class BaseTheme {
10
10
  }
11
11
 
12
+ /** Default neutral appearance - uses default color variables */
13
+ const DEFAULT = 'default';
14
+ /** Accent appearance - uses accent/rose color variables for brand secondary styling */
15
+ const ACCENT = 'accent';
16
+ /** Primary appearance - uses primary/blue color variables for main brand styling */
17
+ const PRIMARY = 'primary';
18
+ /** Secondary appearance - uses secondary/gray color variables for muted styling */
19
+ const SECONDARY = 'secondary';
20
+ /** Tertiary appearance - uses tertiary/gray color variables for subtle styling */
21
+ const TERTIARY = 'tertiary';
22
+ /** Success appearance - uses success/emerald color variables for positive states */
23
+ const SUCCESS = 'success';
24
+ /** Danger appearance - uses danger/red color variables for error/destructive states */
25
+ const DANGER = 'danger';
26
+ /** Warning appearance - uses warning/amber color variables for caution states */
27
+ const WARNING = 'warning';
28
+ /** Info appearance - uses info/cyan color variables for informational states */
29
+ const INFO = 'info';
30
+ /** Link appearance - uses link/blue color variables for hyperlinks and navigation */
31
+ const LINK = 'link';
32
+ /** All appearance property values */
33
+ const APPEARANCE_VALUES = [DEFAULT, ACCENT, PRIMARY, SECONDARY, TERTIARY, SUCCESS, DANGER, WARNING, INFO, LINK];
34
+
35
+ /** Show border - adds appearance-based border styling */
36
+ const BORDER = 'border';
37
+ /** Hide border - removes border styling (overrides appearance colors) */
38
+ const NO_BORDER = 'noBorder';
39
+ /** All border property values */
40
+ const BORDER_VALUES = [BORDER, NO_BORDER];
41
+
42
+ /** Extra-small column breakpoint - responsive grid column sizing for xs screens */
43
+ const XS_COL = 'xsCol';
44
+ /** Small column breakpoint - responsive grid column sizing for sm screens */
45
+ const SM_COL = 'smCol';
46
+ /** Medium column breakpoint - responsive grid column sizing for md screens */
47
+ const MD_COL = 'mdCol';
48
+ /** Large column breakpoint - responsive grid column sizing for lg screens */
49
+ const LG_COL = 'lgCol';
50
+ /** Extra-large column breakpoint - responsive grid column sizing for xl screens */
51
+ const XL_COL = 'xlCol';
52
+ /** All breakpoint property values */
53
+ const BREAKPOINT_VALUES = [XS_COL, SM_COL, MD_COL, LG_COL, XL_COL];
54
+
55
+ /** Inline display - flows with text */
56
+ const INLINE = 'inline';
57
+ /** Block display - takes full width, new line */
58
+ const BLOCK = 'block';
59
+ /** Inline-block display - inline but with block properties */
60
+ const INLINE_BLOCK = 'inlineBlock';
61
+ /** Flex display - flexbox container */
62
+ const FLEX = 'flex';
63
+ /** Inline-flex display - inline flexbox container */
64
+ const INLINE_FLEX = 'inlineFlex';
65
+ /** Grid display - CSS grid container */
66
+ const GRID = 'grid';
67
+ /** Inline-grid display - inline grid container */
68
+ const INLINE_GRID = 'inlineGrid';
69
+ /** Contents display - element's box is removed, children display as if parent didn't exist */
70
+ const CONTENTS = 'contents';
71
+ /** Table display - behaves like table element */
72
+ const TABLE = 'table';
73
+ /** Table-cell display - behaves like td element */
74
+ const TABLE_CELL = 'tableCell';
75
+ /** Hidden display - element is not visible */
76
+ const HIDDEN = 'hidden';
77
+ /** All display property values */
78
+ const DISPLAY_VALUES = [INLINE, BLOCK, INLINE_BLOCK, FLEX, INLINE_FLEX, GRID, INLINE_GRID, CONTENTS, TABLE, TABLE_CELL, HIDDEN];
79
+
80
+ /** Horizontal flex direction (left to right) */
81
+ const ROW = 'row';
82
+ /** Vertical flex direction (top to bottom) */
83
+ const COLUMN = 'column';
84
+ /** Horizontal flex direction reversed (right to left) */
85
+ const ROW_REVERSE = 'rowReverse';
86
+ /** Vertical flex direction reversed (bottom to top) */
87
+ const COLUMN_REVERSE = 'columnReverse';
88
+ /** All flex direction property values */
89
+ const FLEX_DIRECTION_VALUES = [ROW, COLUMN, ROW_REVERSE, COLUMN_REVERSE];
90
+
91
+ /** Sans-serif font family - clean, modern typeface without serifs */
92
+ const SANS = 'sans';
93
+ /** Serif font family - traditional typeface with small decorative strokes */
94
+ const SERIF = 'serif';
95
+ /** Monospace font family - fixed-width typeface for code and data */
96
+ const MONO = 'mono';
97
+ /** All font family property values */
98
+ const FONT_FAMILY_VALUES = [SANS, SERIF, MONO];
99
+
100
+ /** Italic font style - slanted text styling */
101
+ const ITALIC = 'italic';
102
+ /** Normal font style - upright text styling (not italic) */
103
+ const NOT_ITALIC = 'notItalic';
104
+ /** All font style property values */
105
+ const FONT_STYLE_VALUES = [ITALIC, NOT_ITALIC];
106
+
107
+ /** Thin font weight - CSS font-weight: 100 */
108
+ const THIN = 'thin';
109
+ /** Extra light font weight - CSS font-weight: 200 */
110
+ const EXTRALIGHT = 'extralight';
111
+ /** Light font weight - CSS font-weight: 300 */
112
+ const LIGHT = 'light';
113
+ /** Normal font weight - CSS font-weight: 400 (default) */
114
+ const NORMAL = 'normal';
115
+ /** Medium font weight - CSS font-weight: 500 */
116
+ const MEDIUM = 'medium';
117
+ /** Semibold font weight - CSS font-weight: 600 */
118
+ const SEMIBOLD = 'semibold';
119
+ /** Bold font weight - CSS font-weight: 700 */
120
+ const BOLD = 'bold';
121
+ /** Extra bold font weight - CSS font-weight: 800 */
122
+ const EXTRABOLD = 'extrabold';
123
+ /** Black font weight - CSS font-weight: 900 (heaviest) */
124
+ const BLACK = 'black';
125
+ /** All font weight property values */
126
+ const FONT_WEIGHT_VALUES = [THIN, EXTRALIGHT, LIGHT, NORMAL, MEDIUM, SEMIBOLD, BOLD, EXTRABOLD, BLACK];
127
+
128
+ /** Enable spacing between flex/grid items - uses size-responsive gap values */
129
+ const GAP = 'gap';
130
+ /** Disable spacing between flex/grid items - no gap applied */
131
+ const NO_GAP = 'noGap';
132
+ /** All gap property values */
133
+ const GAP_VALUES = [GAP, NO_GAP];
134
+
135
+ /** Hide element on extra-small screens and up - visible only on mobile */
136
+ const XS_HIDE = 'xsHide';
137
+ /** Hide element on small screens and up - visible only on extra-small mobile */
138
+ const SM_HIDE = 'smHide';
139
+ /** Hide element on medium screens and up - visible only on small screens and below */
140
+ const MD_HIDE = 'mdHide';
141
+ /** Hide element on large screens and up - visible only on medium screens and below */
142
+ const LG_HIDE = 'lgHide';
143
+ /** Hide element on extra-large screens and up - visible only on large screens and below */
144
+ const XL_HIDE = 'xlHide';
145
+ /** All hide property values */
146
+ const HIDE_VALUES = [XS_HIDE, SM_HIDE, MD_HIDE, LG_HIDE, XL_HIDE];
147
+
148
+ /** Align items to the start of the cross axis */
149
+ const ITEMS_START = 'itemsStart';
150
+ /** Align items to the end of the cross axis */
151
+ const ITEMS_END = 'itemsEnd';
152
+ /** Center items along the cross axis */
153
+ const ITEMS_CENTER = 'itemsCenter';
154
+ /** Align items along their baseline */
155
+ const ITEMS_BASELINE = 'itemsBaseline';
156
+ /** Stretch items to fill the cross axis */
157
+ const ITEMS_STRETCH = 'itemsStretch';
158
+ /** All items property values */
159
+ const ITEMS_VALUES = [ITEMS_START, ITEMS_END, ITEMS_CENTER, ITEMS_BASELINE, ITEMS_STRETCH];
160
+
161
+ /** Pack items toward the start of the main axis */
162
+ const JUSTIFY_START = 'justifyStart';
163
+ /** Pack items toward the end of the main axis */
164
+ const JUSTIFY_END = 'justifyEnd';
165
+ /** Center items along the main axis */
166
+ const JUSTIFY_CENTER = 'justifyCenter';
167
+ /** Distribute items with space between them */
168
+ const JUSTIFY_BETWEEN = 'justifyBetween';
169
+ /** Distribute items with space around them */
170
+ const JUSTIFY_AROUND = 'justifyAround';
171
+ /** Distribute items with equal space around them */
172
+ const JUSTIFY_EVENLY = 'justifyEvenly';
173
+ /** Stretch items to fill the main axis */
174
+ const JUSTIFY_STRETCH = 'justifyStretch';
175
+ /** Align items along their baseline on main axis */
176
+ const JUSTIFY_BASELINE = 'justifyBaseline';
177
+ /** All justify property values */
178
+ const JUSTIFY_VALUES = [JUSTIFY_START, JUSTIFY_END, JUSTIFY_CENTER, JUSTIFY_BETWEEN, JUSTIFY_AROUND, JUSTIFY_EVENLY, JUSTIFY_STRETCH, JUSTIFY_BASELINE];
179
+
180
+ /** Disc bullet points - circular bullets for list items */
181
+ const DISC = 'disc';
182
+ /** Decimal numbers - numbered list items (1, 2, 3...) */
183
+ const DECIMAL = 'decimal';
184
+ /** All list style property values */
185
+ const LIST_STYLE_VALUES = [DISC, DECIMAL];
186
+
187
+ /** Auto overflow - show scrollbars if needed */
188
+ const OVERFLOW_AUTO = 'overflowAuto';
189
+ /** Hidden overflow - clip content without scrollbars */
190
+ const OVERFLOW_HIDDEN = 'overflowHidden';
191
+ /** Clip overflow - hard clip without scrollbars */
192
+ const OVERFLOW_CLIP = 'overflowClip';
193
+ /** Visible overflow - content extends beyond bounds */
194
+ const OVERFLOW_VISIBLE = 'overflowVisible';
195
+ /** Scroll overflow - always show scrollbars */
196
+ const OVERFLOW_SCROLL = 'overflowScroll';
197
+ /** Auto overflow on X-axis only */
198
+ const OVERFLOW_X_AUTO = 'overflowXAuto';
199
+ /** Auto overflow on Y-axis only */
200
+ const OVERFLOW_Y_AUTO = 'overflowYAuto';
201
+ /** Hidden overflow on X-axis only */
202
+ const OVERFLOW_X_HIDDEN = 'overflowXHidden';
203
+ /** Hidden overflow on Y-axis only */
204
+ const OVERFLOW_Y_HIDDEN = 'overflowYHidden';
205
+ /** Clip overflow on X-axis only */
206
+ const OVERFLOW_X_CLIP = 'overflowXClip';
207
+ /** Clip overflow on Y-axis only */
208
+ const OVERFLOW_Y_CLIP = 'overflowYClip';
209
+ /** Visible overflow on X-axis only */
210
+ const OVERFLOW_X_VISIBLE = 'overflowXVisible';
211
+ /** Visible overflow on Y-axis only */
212
+ const OVERFLOW_Y_VISIBLE = 'overflowYVisible';
213
+ /** Scroll overflow on X-axis only */
214
+ const OVERFLOW_X_SCROLL = 'overflowXScroll';
215
+ /** Scroll overflow on Y-axis only */
216
+ const OVERFLOW_Y_SCROLL = 'overflowYScroll';
217
+ /** All overflow property values */
218
+ const OVERFLOW_VALUES = [
219
+ OVERFLOW_AUTO, OVERFLOW_HIDDEN, OVERFLOW_CLIP, OVERFLOW_VISIBLE, OVERFLOW_SCROLL,
220
+ OVERFLOW_X_AUTO, OVERFLOW_Y_AUTO, OVERFLOW_X_HIDDEN, OVERFLOW_Y_HIDDEN,
221
+ OVERFLOW_X_CLIP, OVERFLOW_Y_CLIP, OVERFLOW_X_VISIBLE, OVERFLOW_Y_VISIBLE,
222
+ OVERFLOW_X_SCROLL, OVERFLOW_Y_SCROLL
223
+ ];
224
+
225
+ /** Enable internal padding - uses size-responsive padding values */
226
+ const PADDING$1 = 'padding';
227
+ /** Disable internal padding - no padding applied */
228
+ const NO_PADDING = 'noPadding';
229
+ /** All padding property values */
230
+ const PADDING_VALUES = [PADDING$1, NO_PADDING];
231
+
232
+ /** Relative positioning - offset from normal position */
233
+ const RELATIVE = 'relative';
234
+ /** Absolute positioning - removed from normal flow */
235
+ const ABSOLUTE = 'absolute';
236
+ /** Fixed positioning - positioned relative to viewport */
237
+ const FIXED = 'fixed';
238
+ /** Sticky positioning - toggles between relative and fixed */
239
+ const STICKY = 'sticky';
240
+ /** Static positioning - normal document flow (default) */
241
+ const STATIC = 'static';
242
+ /** All position property values */
243
+ const POSITION_VALUES = [RELATIVE, ABSOLUTE, FIXED, STICKY, STATIC];
244
+
245
+ /** Reverse flex direction - converts row to row-reverse or column to column-reverse */
246
+ const REVERSE = 'reverse';
247
+ /** All reverse property values */
248
+ const REVERSE_VALUES = [REVERSE];
249
+
250
+ /** Show ring - adds decorative ring/outline border around element */
251
+ const RING = 'ring';
252
+ /** Hide ring - removes ring/outline border styling */
253
+ const NO_RING = 'noRing';
254
+ /** All ring property values */
255
+ const RING_VALUES = [RING, NO_RING];
256
+
257
+ /** Enable drop shadow - adds size-responsive shadow styling */
258
+ const SHADOW = 'shadow';
259
+ /** Disable drop shadow - removes all shadow styling */
260
+ const NO_SHADOW = 'noShadow';
261
+ /** All shadow property values */
262
+ const SHADOW_VALUES = [SHADOW, NO_SHADOW];
263
+
264
+ /** Show focus-visible outline - adds visible focus indicator for keyboard navigation */
265
+ const FOCUS_VISIBLE_OUTLINE = 'focusVisible';
266
+ /** Hide focus-visible outline - removes focus-visible outline styling */
267
+ const NO_FOCUS_VISIBLE_OUTLINE = 'noFocusVisible';
268
+ /** All focusVisible property values */
269
+ const FOCUS_VISIBLE_VALUES = [FOCUS_VISIBLE_OUTLINE, NO_FOCUS_VISIBLE_OUTLINE];
270
+
271
+ /** Pill shape - fully rounded corners (rounded-full) */
272
+ const PILL = 'pill';
273
+ /** Sharp shape - no border radius (rounded-none) */
274
+ const SHARP = 'sharp';
275
+ /** Rounded shape - size-responsive border radius (varies by component size) */
276
+ const ROUNDED = 'rounded';
277
+ /** All shape property values */
278
+ const SHAPE_VALUES = [PILL, SHARP, ROUNDED];
279
+
280
+ /** Extra small size - affects padding, font-size, border-radius, and spacing */
281
+ const XS = 'xs';
282
+ /** Small size - affects padding, font-size, border-radius, and spacing */
283
+ const SM = 'sm';
284
+ /** Medium size (default) - affects padding, font-size, border-radius, and spacing */
285
+ const MD = 'md';
286
+ /** Large size - affects padding, font-size, border-radius, and spacing */
287
+ const LG = 'lg';
288
+ /** Extra large size - affects padding, font-size, border-radius, and spacing */
289
+ const XL = 'xl';
290
+ /** All size property values */
291
+ const SIZE_VALUES = [XS, SM, MD, LG, XL];
292
+
293
+ /** Left-aligned text */
294
+ const TEXT_LEFT = 'textLeft';
295
+ /** Center-aligned text */
296
+ const TEXT_CENTER = 'textCenter';
297
+ /** Right-aligned text */
298
+ const TEXT_RIGHT = 'textRight';
299
+ /** Justified text */
300
+ const TEXT_JUSTIFY = 'textJustify';
301
+ /** All text align property values */
302
+ const TEXT_ALIGN_VALUES = [TEXT_LEFT, TEXT_CENTER, TEXT_RIGHT, TEXT_JUSTIFY];
303
+
304
+ /** Add underline decoration below text */
305
+ const UNDERLINE = 'underline';
306
+ /** Add strikethrough/line-through decoration across text */
307
+ const LINE_THROUGH = 'lineThrough';
308
+ /** Remove text decoration (no underline, strikethrough, etc.) */
309
+ const NO_UNDERLINE = 'noUnderline';
310
+ /** Add overline decoration above text */
311
+ const OVERLINE = 'overline';
312
+ /** All text decoration property values */
313
+ const TEXT_DECORATION_VALUES = [UNDERLINE, LINE_THROUGH, NO_UNDERLINE, OVERLINE];
314
+
315
+ /** Transform text to UPPERCASE */
316
+ const UPPERCASE = 'uppercase';
317
+ /** Transform text to lowercase */
318
+ const LOWERCASE = 'lowercase';
319
+ /** Transform text to Capitalize Each Word */
320
+ const CAPITALIZE = 'capitalize';
321
+ /** Normal case - no transformation */
322
+ const NORMAL_CASE = 'normalCase';
323
+ /** All text transform property values */
324
+ const TEXT_TRANSFORM_VALUES = [UPPERCASE, LOWERCASE, CAPITALIZE, NORMAL_CASE];
325
+
326
+ /** Make background transparent for layout/UI components or text transparent for typography components */
327
+ const TRANSPARENT = 'transparent';
328
+ /** All transparent property values */
329
+ const TRANSPARENT_VALUES = [TRANSPARENT];
330
+
331
+ /** Filled variant - solid background with contrasting text color */
332
+ const FILLED = 'filled';
333
+ /** Outline variant - transparent background with border and colored text (default) */
334
+ const OUTLINE = 'outline';
335
+ /** All variant property values */
336
+ const VARIANT_VALUES = [FILLED, OUTLINE];
337
+
338
+ /** Allow flex items to wrap to new lines when container is too narrow */
339
+ const FLEX_WRAP = 'flexWrap';
340
+ /** Force flex items to stay on single line (may overflow) */
341
+ const FLEX_NO_WRAP = 'flexNoWrap';
342
+ /** Wrap flex items in reverse order (last items wrap first) */
343
+ const FLEX_WRAP_REVERSE = 'flexWrapReverse';
344
+ /** All wrap property values */
345
+ const WRAP_VALUES = [FLEX_WRAP, FLEX_NO_WRAP, FLEX_WRAP_REVERSE];
346
+
347
+ /** Base state - default resting appearance */
348
+ const BASE = 'base';
349
+ /** Hover state - appearance when cursor hovers over element */
350
+ const HOVER = 'hover';
351
+ /** Active state - appearance when element is being pressed/clicked */
352
+ const ACTIVE = 'active';
353
+ /** Focus state - appearance when element receives focus */
354
+ const FOCUS = 'focus';
355
+ /** Focus visible state - appearance when element has visible focus indicator */
356
+ const FOCUS_VISIBLE = 'focusVisible';
357
+ /** All mode property values */
358
+ const MODE_VALUES = [BASE, HOVER, ACTIVE, FOCUS, FOCUS_VISIBLE];
359
+ /** Styling mode keys for different interaction states */
360
+ const ModeKeys = {
361
+ /** Interaction states for styling: base, hover, active, focus, focusVisible */
362
+ mode: MODE_VALUES,
363
+ };
364
+
365
+ /** Core layout properties for positioning and sizing elements */
12
366
  const LAYOUT_CORE = ['size', 'hide', 'items', 'justify', 'position', 'display', 'overflow'];
367
+ /** Flexbox-specific layout properties for flex containers */
13
368
  const LAYOUT_FLEX = ['wrap', 'gap', 'flexDirection', 'reverse'];
369
+ /** Padding properties for internal spacing control */
14
370
  const PADDING = ['padding'];
371
+ /** Responsive breakpoint properties for different screen sizes */
15
372
  const BREAKPOINT = ['breakpoint'];
373
+ /** Core visual properties including appearance colors and transparency */
16
374
  const VISUAL_CORE = ['appearance', 'transparent'];
17
- const VISUAL_DECORATION = ['border', 'shadow', 'ring'];
375
+ /** Visual decoration properties for borders, shadows, and focus rings */
376
+ const VISUAL_DECORATION = ['border', 'shadow', 'ring', 'focusVisible'];
377
+ /** Layout-specific visual decoration (excluding focusVisible for non-interactive elements) */
378
+ const VISUAL_DECORATION_LAYOUT = ['border', 'shadow', 'ring'];
379
+ /** Shape properties for border radius and corner rounding */
18
380
  const SHAPE = ['shape'];
381
+ /** Typography styling properties for text appearance and formatting */
19
382
  const TYPOGRAPHY_STYLE = ['fontWeight', 'fontStyle', 'textDecoration', 'textTransform', 'fontFamily', 'textAlign'];
383
+ /** List-specific styling properties for bullet points and numbering */
20
384
  const LIST_STYLE = ['listStyle'];
385
+ /** Variant properties for filled/outline styling modes */
21
386
  const VARIANT = ['variant'];
387
+ /** All available component property categories combined */
22
388
  const COMPONENT_PROPS_CATEGORY = [
23
389
  ...VISUAL_CORE,
24
390
  ...LAYOUT_FLEX,
@@ -30,71 +396,126 @@ const COMPONENT_PROPS_CATEGORY = [
30
396
  ...VISUAL_DECORATION,
31
397
  ...SHAPE,
32
398
  ...VARIANT,
33
- 'mode',
34
399
  ];
35
400
  /**
36
- * Describes what the @ComponentKeys.appearance can be applied to
401
+ * Describes category for which the appearance can be applied
37
402
  * @see ComponentKeys.appearance
38
403
  */
39
- const APPEARANCE_CATEGORY = ['text', 'border', 'ring', 'shadow', 'bg', 'accent'];
404
+ const APPEARANCE_CATEGORY = ['text', 'border', 'ring', 'shadow', 'bg', 'accent', 'focusVisible'];
405
+ /** Component property keys mapping categories to their available values */
40
406
  const ComponentKeys = {
41
- appearance: ['default', 'accent', 'primary', 'secondary', 'tertiary', 'success', 'danger', 'warning', 'info', 'link'],
42
- border: ['border', 'noBorder'],
43
- breakpoint: ['xsCol', 'smCol', 'mdCol', 'lgCol', 'xlCol'],
44
- display: ['inline', 'block', 'inlineBlock', 'flex', 'inlineFlex', 'grid', 'inlineGrid', 'contents', 'table', 'tableCell', 'hidden'],
45
- flexDirection: ['row', 'column', 'rowReverse', 'columnReverse'],
46
- fontFamily: ['sans', 'serif', 'mono'],
47
- fontStyle: ['italic', 'notItalic'],
48
- fontWeight: ['thin', 'extralight', 'light', 'normal', 'medium', 'semibold', 'bold', 'extrabold', 'black'],
49
- gap: ['gap', 'noGap'],
50
- hide: ['xsHide', 'smHide', 'mdHide', 'lgHide', 'xlHide'],
51
- items: ['itemsStart', 'itemsEnd', 'itemsCenter', 'itemsBaseline', 'itemsStretch'],
52
- justify: ['justifyStart', 'justifyEnd', 'justifyCenter', 'justifyBetween', 'justifyAround', 'justifyEvenly', 'justifyStretch', 'justifyBaseline'],
53
- listStyle: ['disc', 'decimal'],
54
- mode: ['base', 'hover', 'active'],
55
- overflow: ['overflowAuto', 'overflowHidden', 'overflowClip', 'overflowVisible', 'overflowScroll', 'overflowXAuto', 'overflowYAuto', 'overflowXHidden', 'overflowYHidden', 'overflowXClip', 'overflowYClip', 'overflowXVisible', 'overflowYVisible', 'overflowXScroll', 'overflowYScroll'],
56
- padding: ['padding', 'noPadding'],
57
- position: ['relative', 'absolute', 'fixed', 'sticky', 'static'],
58
- reverse: ['reverse'],
59
- ring: ['ring', 'noRing'],
60
- shadow: ['shadow', 'noShadow'],
61
- shape: ['pill', 'sharp', 'rounded'],
62
- size: ['xs', 'sm', 'md', 'lg', 'xl'],
63
- textAlign: ['textLeft', 'textCenter', 'textRight', 'textJustify'],
64
- textDecoration: ['underline', 'lineThrough', 'noUnderline', 'overline'],
65
- textTransform: ['uppercase', 'lowercase', 'capitalize', 'normalCase'],
66
- transparent: ['transparent'],
67
- variant: ['filled', 'outline'],
68
- wrap: ['flexWrap', 'flexNoWrap', 'flexWrapReverse'],
407
+ /** Color appearance options */
408
+ appearance: APPEARANCE_VALUES,
409
+ /** Border visibility: border (show) or noBorder (hide) */
410
+ border: BORDER_VALUES,
411
+ /** Column breakpoints for responsive grid layouts */
412
+ breakpoint: BREAKPOINT_VALUES,
413
+ /** CSS display property values for element layout behavior */
414
+ display: DISPLAY_VALUES,
415
+ /** Flex direction: row (horizontal), column (vertical), or reversed variants */
416
+ flexDirection: FLEX_DIRECTION_VALUES,
417
+ /** Font family types: sans-serif, serif, or monospace */
418
+ fontFamily: FONT_FAMILY_VALUES,
419
+ /** Font style: italic or notItalic (normal) */
420
+ fontStyle: FONT_STYLE_VALUES,
421
+ /** Font weight from thin (100) to black (900) */
422
+ fontWeight: FONT_WEIGHT_VALUES,
423
+ /** Spacing between flex/grid items: gap (enabled) or noGap (disabled) */
424
+ gap: GAP_VALUES,
425
+ /** Hide elements at specific breakpoint sizes */
426
+ hide: HIDE_VALUES,
427
+ /** Cross-axis alignment for flex items (align-items) */
428
+ items: ITEMS_VALUES,
429
+ /** Main-axis alignment for flex items (justify-content) */
430
+ justify: JUSTIFY_VALUES,
431
+ /** List bullet/numbering style: disc (bullets) or decimal (numbers) */
432
+ listStyle: LIST_STYLE_VALUES,
433
+ /** Overflow behavior for content that exceeds container bounds */
434
+ overflow: OVERFLOW_VALUES,
435
+ /** Internal spacing: padding (enabled) or noPadding (disabled) */
436
+ padding: PADDING_VALUES,
437
+ /** CSS positioning: relative, absolute, fixed, sticky, static */
438
+ position: POSITION_VALUES,
439
+ /** Reverse the order of flex items */
440
+ reverse: REVERSE_VALUES,
441
+ /** Focus ring visibility: ring (show) or noRing (hide) */
442
+ ring: RING_VALUES,
443
+ /** Drop shadow visibility: shadow (enabled) or noShadow (disabled) */
444
+ shadow: SHADOW_VALUES,
445
+ /** Focus-visible outline visibility: focusVisible (show) or noFocusVisible (hide) */
446
+ focusVisible: FOCUS_VISIBLE_VALUES,
447
+ /** Border radius shape: pill (fully rounded), sharp (no radius), rounded (medium radius) */
448
+ shape: SHAPE_VALUES,
449
+ /** Size scale from extra-small to extra-large */
450
+ size: SIZE_VALUES,
451
+ /** Text alignment: left, center, right, justify */
452
+ textAlign: TEXT_ALIGN_VALUES,
453
+ /** Text decoration: underline, strikethrough (lineThrough), none (noUnderline), overline */
454
+ textDecoration: TEXT_DECORATION_VALUES,
455
+ /** Text case transformation: UPPERCASE, lowercase, Capitalize, normalCase */
456
+ textTransform: TEXT_TRANSFORM_VALUES,
457
+ /** Make background (layout/UI) or text (typography) transparent */
458
+ transparent: TRANSPARENT_VALUES,
459
+ /** Style variant: filled (solid background) or outline (border only) */
460
+ variant: VARIANT_VALUES,
461
+ /** Flex item wrapping behavior: wrap, no-wrap, or wrap-reverse */
462
+ wrap: WRAP_VALUES,
69
463
  };
70
- // Composite categories built from core blocks
464
+ /** Composite categories built from core blocks */
465
+ /** Complete layout category including core and flex properties */
71
466
  const LAYOUT_FULL = [...LAYOUT_CORE, ...LAYOUT_FLEX];
467
+ /** Complete visual category including core, decoration, and shape properties */
72
468
  const VISUAL_FULL = [...VISUAL_CORE, ...VISUAL_DECORATION, ...SHAPE];
469
+ /** Layout-specific visual category (excludes focusVisible for non-interactive elements) */
470
+ const VISUAL_LAYOUT = [...VISUAL_CORE, ...VISUAL_DECORATION_LAYOUT, ...SHAPE];
471
+ /** Complete typography category for text styling */
73
472
  const TYPOGRAPHY_FULL = [...TYPOGRAPHY_STYLE];
473
+ /** Categories for interactive components like buttons, badges, chips */
74
474
  const INTERACTIVE_CATEGORIES = [...LAYOUT_FULL, ...VISUAL_FULL, ...TYPOGRAPHY_STYLE, ...PADDING, ...VARIANT];
475
+ /** Button component categories */
75
476
  const BUTTON_CATEGORIES = INTERACTIVE_CATEGORIES;
477
+ /** Badge component categories */
76
478
  const BADGE_CATEGORIES = INTERACTIVE_CATEGORIES;
479
+ /** Chip component categories */
77
480
  const CHIP_CATEGORIES = INTERACTIVE_CATEGORIES;
481
+ /** Code component categories */
78
482
  const CODE_CATEGORIES = INTERACTIVE_CATEGORIES;
79
- //typography:
483
+ /** Typography component categories */
484
+ /** Categories for typography components like Text, Title, Link */
80
485
  const TYPOGRAPHY_CATEGORIES = [...TYPOGRAPHY_FULL, ...LAYOUT_CORE, ...VISUAL_CORE, ...VARIANT];
486
+ /** Categories for list components with typography and list-specific styling */
81
487
  const LIST_CATEGORIES = [...TYPOGRAPHY_FULL, ...LIST_STYLE, ...LAYOUT_CORE, ...VISUAL_CORE, ...PADDING, ...VARIANT];
82
- //layout:
488
+ /** Layout component categories */
489
+ /** Categories for grid layout components */
83
490
  const GRID_CATEGORIES = [...LAYOUT_FULL, ...VISUAL_CORE, ...VARIANT];
84
- const CONTAINER_CATEGORIES = [...LAYOUT_FULL, ...VISUAL_FULL, ...VARIANT];
85
- const COL_CATEGORIES = [...LAYOUT_FULL, ...VISUAL_FULL, ...VARIANT];
86
- const ROW_CATEGORIES = [...LAYOUT_FULL, ...BREAKPOINT, ...VISUAL_FULL, ...VARIANT];
87
- const STACK_CATEGORIES = [...LAYOUT_FULL, ...BREAKPOINT, ...PADDING, ...VISUAL_FULL, ...VARIANT];
88
- const CARD_CATEGORIES = [...TYPOGRAPHY_FULL, ...LAYOUT_FULL, ...BREAKPOINT, ...VISUAL_FULL, ...PADDING, ...VARIANT];
491
+ /** Categories for container layout components */
492
+ const CONTAINER_CATEGORIES = [...LAYOUT_FULL, ...VISUAL_LAYOUT, ...VARIANT];
493
+ /** Categories for column layout components */
494
+ const COL_CATEGORIES = [...LAYOUT_FULL, ...VISUAL_LAYOUT, ...VARIANT];
495
+ /** Categories for row layout components with responsive breakpoints */
496
+ const ROW_CATEGORIES = [...LAYOUT_FULL, ...BREAKPOINT, ...VISUAL_LAYOUT, ...VARIANT];
497
+ /** Categories for stack layout components with responsive and padding support */
498
+ const STACK_CATEGORIES = [...LAYOUT_FULL, ...BREAKPOINT, ...PADDING, ...VISUAL_LAYOUT, ...VARIANT];
499
+ /** Categories for card components with full typography and layout support */
500
+ const CARD_CATEGORIES = [...TYPOGRAPHY_FULL, ...LAYOUT_FULL, ...BREAKPOINT, ...VISUAL_LAYOUT, ...PADDING, ...VARIANT];
501
+ /** Categories for divider components with basic layout and visual properties */
89
502
  const DIVIDER_CATEGORIES = [...LAYOUT_CORE, ...VISUAL_CORE, ...PADDING];
90
- const SECTION_CATEGORIES = [...LAYOUT_FULL, ...VISUAL_FULL, ...PADDING, ...BREAKPOINT, ...VARIANT];
91
- // Form component categories
503
+ /** Categories for section layout components with full responsive support */
504
+ const SECTION_CATEGORIES = [...LAYOUT_FULL, ...VISUAL_LAYOUT, ...PADDING, ...BREAKPOINT, ...VARIANT];
505
+ /** Form component categories */
506
+ /** Categories for checkbox form components */
92
507
  const CHECKBOX_CATEGORIES = [...LAYOUT_CORE, ...VISUAL_CORE, ...VISUAL_DECORATION, ...SHAPE, ...VARIANT];
508
+ /** Categories for label form components with typography support */
93
509
  const LABEL_CATEGORIES = [...TYPOGRAPHY_FULL, ...LAYOUT_FULL, ...VISUAL_CORE, ...VARIANT];
94
- // Media component categories
510
+ /** Categories for input form components with interactive and form-specific properties */
511
+ const INPUT_CATEGORIES = [...INTERACTIVE_CATEGORIES];
512
+ /** Media component categories */
513
+ /** Categories for image media components */
95
514
  const IMG_CATEGORIES = [...LAYOUT_CORE, ...VISUAL_CORE, ...VISUAL_DECORATION, ...SHAPE, ...VARIANT];
515
+ /** All available component names in the library */
96
516
  const COMPONENT = ['button', 'badge', 'chip', 'code', 'card', 'divider', 'container', 'row', 'col', 'stack', 'section',
97
- 'grid2', 'grid3', 'grid4', 'pageTitle', 'sectionTitle', 'title', 'text', 'link', 'list', 'listItem', 'checkbox', 'label', 'img'];
517
+ 'grid2', 'grid3', 'grid4', 'grid5', 'grid6', 'pageTitle', 'sectionTitle', 'title', 'text', 'link', 'list', 'listItem', 'checkbox', 'label', 'img', 'input'];
518
+ /** Mapping of each component to its available property categories */
98
519
  const ComponentCategories = {
99
520
  badge: BADGE_CATEGORIES,
100
521
  button: BUTTON_CATEGORIES,
@@ -108,7 +529,10 @@ const ComponentCategories = {
108
529
  grid2: GRID_CATEGORIES,
109
530
  grid3: GRID_CATEGORIES,
110
531
  grid4: GRID_CATEGORIES,
532
+ grid5: GRID_CATEGORIES,
533
+ grid6: GRID_CATEGORIES,
111
534
  img: IMG_CATEGORIES,
535
+ input: INPUT_CATEGORIES,
112
536
  label: LABEL_CATEGORIES,
113
537
  link: TYPOGRAPHY_CATEGORIES,
114
538
  list: LIST_CATEGORIES,
@@ -3039,7 +3463,7 @@ function pickFirstTruthyKeyByCategory(props, defaults, category) {
3039
3463
  return undefined;
3040
3464
  }
3041
3465
 
3042
- const defaultLayoutTheme = {
3466
+ const defaultLayoutsThemes = {
3043
3467
  hide: new HideTheme(),
3044
3468
  items: new ItemsTheme(),
3045
3469
  justify: new JustifyTheme(),
@@ -3047,7 +3471,7 @@ const defaultLayoutTheme = {
3047
3471
  display: new DisplayTheme(),
3048
3472
  overflow: new OverflowTheme(),
3049
3473
  };
3050
- const defaultTypographyTheme = {
3474
+ const defaultTypographyThemes = {
3051
3475
  fontFamily: new FontFamilyTheme(),
3052
3476
  fontWeight: new FontWeightTheme(),
3053
3477
  fontStyle: new FontStyleTheme(),
@@ -3180,18 +3604,18 @@ class GapTheme extends BaseTheme {
3180
3604
  }
3181
3605
 
3182
3606
  const uiBorderRadiusClasses = {
3183
- xs: "rounded-(--ui-border-radius-xs)",
3184
- sm: "rounded-(--ui-border-radius-sm)",
3185
- md: "rounded-(--ui-border-radius-md)",
3186
- lg: "rounded-(--ui-border-radius-lg)",
3187
- xl: "rounded-(--ui-border-radius-xl)",
3607
+ xs: "rounded-(--ui-br-xs)",
3608
+ sm: "rounded-(--ui-br-sm)",
3609
+ md: "rounded-(--ui-br-md)",
3610
+ lg: "rounded-(--ui-br-lg)",
3611
+ xl: "rounded-(--ui-br-xl)",
3188
3612
  };
3189
3613
  const layoutBorderRadiusClasses = {
3190
- xs: "rounded-(--layout-border-radius-xs)",
3191
- sm: "rounded-(--layout-border-radius-sm)",
3192
- md: "rounded-(--layout-border-radius-md)",
3193
- lg: "rounded-(--layout-border-radius-lg)",
3194
- xl: "rounded-(--layout-border-radius-xl)",
3614
+ xs: "rounded-(--layout-br-xs)",
3615
+ sm: "rounded-(--layout-br-sm)",
3616
+ md: "rounded-(--layout-br-md)",
3617
+ lg: "rounded-(--layout-br-lg)",
3618
+ xl: "rounded-(--layout-br-xl)",
3195
3619
  };
3196
3620
 
3197
3621
  class RadiusTheme extends BaseTheme {
@@ -3232,10 +3656,12 @@ class BorderTheme extends BaseTheme {
3232
3656
  this.base = "border";
3233
3657
  this.hover = "";
3234
3658
  this.active = "";
3659
+ this.focus = "";
3660
+ this.focusVisible = "";
3235
3661
  }
3236
3662
  getClasses(extractedKeys) {
3237
3663
  return (extractedKeys === null || extractedKeys === void 0 ? void 0 : extractedKeys.border) === "border"
3238
- ? ComponentKeys.mode.map((mode) => this[mode])
3664
+ ? ModeKeys.mode.map((mode) => this[mode])
3239
3665
  : [];
3240
3666
  }
3241
3667
  }
@@ -3246,10 +3672,28 @@ class RingTheme extends BaseTheme {
3246
3672
  this.base = "ring ring-inset";
3247
3673
  this.hover = "";
3248
3674
  this.active = "";
3675
+ this.focus = "";
3676
+ this.focusVisible = "";
3249
3677
  }
3250
3678
  getClasses(extractedKeys) {
3251
3679
  return (extractedKeys === null || extractedKeys === void 0 ? void 0 : extractedKeys.ring) === 'ring'
3252
- ? ComponentKeys.mode.map(mode => this[mode] || '').filter(Boolean)
3680
+ ? ModeKeys.mode.map(mode => this[mode] || '').filter(Boolean)
3681
+ : [];
3682
+ }
3683
+ }
3684
+
3685
+ class FocusVisibleTheme extends BaseTheme {
3686
+ constructor() {
3687
+ super(...arguments);
3688
+ this.base = "";
3689
+ this.hover = "";
3690
+ this.active = "";
3691
+ this.focus = "";
3692
+ this.focusVisible = "focus-visible:outline-2 focus-visible:outline-offset-2";
3693
+ }
3694
+ getClasses(extractedKeys) {
3695
+ return (extractedKeys === null || extractedKeys === void 0 ? void 0 : extractedKeys.focusVisible) === 'focusVisible'
3696
+ ? ModeKeys.mode.map(mode => this[mode] || '').filter(Boolean)
3253
3697
  : [];
3254
3698
  }
3255
3699
  }
@@ -3309,25 +3753,29 @@ class PyTheme extends PaddingTheme {
3309
3753
  }
3310
3754
 
3311
3755
  class AppearanceTheme extends BaseTheme {
3312
- constructor(config, category, transparentClasses) {
3756
+ constructor(config, category, transparentClasses, ignoreTransparent = false) {
3313
3757
  super();
3314
3758
  Object.assign(this, config);
3315
3759
  this.category = category;
3316
3760
  this.transparentClasses = transparentClasses;
3761
+ this.ignoreTransparent = ignoreTransparent;
3317
3762
  }
3318
3763
  getClasses(extractedKeys) {
3319
3764
  var _a;
3320
- if (this.category === 'border' && extractedKeys.border === 'noBorder') {
3765
+ if (this.category === 'border' && (extractedKeys.border === 'noBorder' || extractedKeys.border === undefined)) {
3321
3766
  return [];
3322
3767
  }
3323
- if (this.category === 'ring' && extractedKeys.ring === 'noRing') {
3768
+ if (this.category === 'ring' && (extractedKeys.ring === 'noRing' || extractedKeys.ring === undefined)) {
3324
3769
  return [];
3325
3770
  }
3326
- if (this.category === 'shadow' && extractedKeys.shadow === 'noShadow') {
3771
+ if (this.category === 'shadow' && (extractedKeys.shadow === 'noShadow' || extractedKeys.shadow === undefined)) {
3772
+ return [];
3773
+ }
3774
+ if (this.category === 'focusVisible' && (extractedKeys.focusVisible === 'noFocusVisible' || extractedKeys.focusVisible === undefined)) {
3327
3775
  return [];
3328
3776
  }
3329
3777
  // Check for specific transparent styles first
3330
- if (extractedKeys === null || extractedKeys === void 0 ? void 0 : extractedKeys.transparent) {
3778
+ if ((extractedKeys === null || extractedKeys === void 0 ? void 0 : extractedKeys.transparent) && !this.ignoreTransparent) {
3331
3779
  const transparentClass = ((_a = this.transparentClasses) === null || _a === void 0 ? void 0 : _a[extractedKeys.transparent]) || '';
3332
3780
  return [transparentClass];
3333
3781
  }
@@ -3336,50 +3784,50 @@ class AppearanceTheme extends BaseTheme {
3336
3784
  if (pickedAppearanceKey) {
3337
3785
  const modes = this[pickedAppearanceKey];
3338
3786
  if (modes) {
3339
- return ComponentKeys.mode.map(mode => modes[mode] || '');
3787
+ return ModeKeys.mode.map(mode => modes[mode] || '');
3340
3788
  }
3341
3789
  }
3342
3790
  return [];
3343
3791
  }
3344
- static createTheme(src = {}, category) {
3345
- const config = Object.fromEntries(ComponentKeys.appearance.map(textKey => [
3346
- textKey,
3347
- Object.fromEntries(ComponentKeys.mode.map(modeKey => {
3792
+ static createTheme(src = {}, category, ignoreTransparent = false) {
3793
+ const config = Object.fromEntries(ComponentKeys.appearance.map(key => [
3794
+ key,
3795
+ Object.fromEntries(ModeKeys.mode.map(modeKey => {
3348
3796
  var _a;
3349
3797
  return [
3350
3798
  modeKey,
3351
- ((_a = src[modeKey]) === null || _a === void 0 ? void 0 : _a[textKey]) || ''
3799
+ ((_a = src[modeKey]) === null || _a === void 0 ? void 0 : _a[key]) || ''
3352
3800
  ];
3353
3801
  })),
3354
3802
  ]));
3355
- return new AppearanceTheme(config, category, src.base);
3803
+ return new AppearanceTheme(config, category, src.base, ignoreTransparent);
3356
3804
  }
3357
3805
  }
3358
3806
 
3359
3807
  const filledTextAppearanceClasses = {
3360
- default: "text-(--filled-text-color-default)",
3361
- primary: "text-(--filled-text-color-primary)",
3362
- secondary: "text-(--filled-text-color-secondary)",
3363
- tertiary: "text-(--filled-text-color-tertiary)",
3364
- link: "text-(--filled-text-color-link)",
3365
- accent: "text-(--filled-text-color-accent)",
3366
- success: "text-(--filled-text-color-success)",
3367
- danger: "text-(--filled-text-color-danger)",
3368
- warning: "text-(--filled-text-color-warning)",
3369
- info: "text-(--filled-text-color-info)",
3370
- transparent: "text-(--filled-text-color-transparent)",
3808
+ default: "text-(--color-text-filled-default)",
3809
+ primary: "text-(--color-text-filled-primary)",
3810
+ secondary: "text-(--color-text-filled-secondary)",
3811
+ tertiary: "text-(--color-text-filled-tertiary)",
3812
+ link: "text-(--color-text-filled-link)",
3813
+ accent: "text-(--color-text-filled-accent)",
3814
+ success: "text-(--color-text-filled-success)",
3815
+ danger: "text-(--color-text-filled-danger)",
3816
+ warning: "text-(--color-text-filled-warning)",
3817
+ info: "text-(--color-text-filled-info)",
3818
+ transparent: "text-transparent",
3371
3819
  };
3372
3820
  const textAppearanceClasses = {
3373
- default: "text-(--text-color-default)",
3374
- primary: "text-(--text-color-primary)",
3375
- secondary: "text-(--text-color-secondary)",
3376
- tertiary: "text-(--text-color-tertiary)",
3377
- link: "text-(--text-color-link)",
3378
- accent: "text-(--text-color-accent)",
3379
- success: "text-(--text-color-success)",
3380
- danger: "text-(--text-color-danger)",
3381
- warning: "text-(--text-color-warning)",
3382
- info: "text-(--text-color-info)",
3821
+ default: "text-(--color-text-default)",
3822
+ primary: "text-(--color-text-primary)",
3823
+ secondary: "text-(--color-text-secondary)",
3824
+ tertiary: "text-(--color-text-tertiary)",
3825
+ link: "text-(--color-text-link)",
3826
+ accent: "text-(--color-text-accent)",
3827
+ success: "text-(--color-text-success)",
3828
+ danger: "text-(--color-text-danger)",
3829
+ warning: "text-(--color-text-warning)",
3830
+ info: "text-(--color-text-info)",
3383
3831
  transparent: "text-transparent",
3384
3832
  };
3385
3833
  const textSizeClasses = {
@@ -3391,233 +3839,258 @@ const textSizeClasses = {
3391
3839
  };
3392
3840
 
3393
3841
  const filledBackgroundAppearanceClasses = {
3394
- default: "bg-(--filled-background-color-default)",
3395
- primary: "bg-(--filled-background-color-primary)",
3396
- secondary: "bg-(--filled-background-color-secondary)",
3397
- tertiary: "bg-(--filled-background-color-tertiary)",
3398
- accent: "bg-(--filled-background-color-accent)",
3399
- success: "bg-(--filled-background-color-success)",
3400
- danger: "bg-(--filled-background-color-danger)",
3401
- warning: "bg-(--filled-background-color-warning)",
3402
- info: "bg-(--filled-background-color-info)",
3842
+ default: "bg-(--color-bg-filled-default)",
3843
+ primary: "bg-(--color-bg-filled-primary)",
3844
+ secondary: "bg-(--color-bg-filled-secondary)",
3845
+ tertiary: "bg-(--color-bg-filled-tertiary)",
3846
+ accent: "bg-(--color-bg-filled-accent)",
3847
+ success: "bg-(--color-bg-filled-success)",
3848
+ danger: "bg-(--color-bg-filled-danger)",
3849
+ warning: "bg-(--color-bg-filled-warning)",
3850
+ info: "bg-(--color-bg-filled-info)",
3403
3851
  transparent: "bg-transparent",
3404
- link: "bg-(--filled-background-color-link)",
3852
+ link: "bg-(--color-bg-filled-link)",
3405
3853
  };
3406
3854
  const filledHoverBackgroundAppearanceClasses = {
3407
- default: "hover:bg-(--filled-background-color-hover-default)",
3408
- primary: "hover:bg-(--filled-background-color-hover-primary)",
3409
- secondary: "hover:bg-(--filled-background-color-hover-secondary)",
3410
- tertiary: "hover:bg-(--filled-background-color-hover-tertiary)",
3411
- accent: "hover:bg-(--filled-background-color-hover-accent)",
3412
- success: "hover:bg-(--filled-background-color-hover-success)",
3413
- danger: "hover:bg-(--filled-background-color-hover-danger)",
3414
- warning: "hover:bg-(--filled-background-color-hover-warning)",
3415
- info: "hover:bg-(--filled-background-color-hover-info)",
3855
+ default: "hover:bg-(--color-bg-filled-hover-default)",
3856
+ primary: "hover:bg-(--color-bg-filled-hover-primary)",
3857
+ secondary: "hover:bg-(--color-bg-filled-hover-secondary)",
3858
+ tertiary: "hover:bg-(--color-bg-filled-hover-tertiary)",
3859
+ accent: "hover:bg-(--color-bg-filled-hover-accent)",
3860
+ success: "hover:bg-(--color-bg-filled-hover-success)",
3861
+ danger: "hover:bg-(--color-bg-filled-hover-danger)",
3862
+ warning: "hover:bg-(--color-bg-filled-hover-warning)",
3863
+ info: "hover:bg-(--color-bg-filled-hover-info)",
3416
3864
  transparent: "hover:bg-transparent",
3417
- link: "hover:bg-(--filled-background-color-hover-link)",
3865
+ link: "hover:bg-(--color-bg-filled-hover-link)",
3418
3866
  };
3419
3867
  const filledActiveBackgroundAppearanceClasses = {
3420
- default: "active:bg-(--filled-background-color-active-default)",
3421
- primary: "active:bg-(--filled-background-color-active-primary)",
3422
- secondary: "active:bg-(--filled-background-color-active-secondary)",
3423
- tertiary: "active:bg-(--filled-background-color-active-tertiary)",
3424
- accent: "active:bg-(--filled-background-color-active-accent)",
3425
- success: "active:bg-(--filled-background-color-active-success)",
3426
- danger: "active:bg-(--filled-background-color-active-danger)",
3427
- warning: "active:bg-(--filled-background-color-active-warning)",
3428
- info: "active:bg-(--filled-background-color-active-info)",
3868
+ default: "active:bg-(--color-bg-filled-active-default)",
3869
+ primary: "active:bg-(--color-bg-filled-active-primary)",
3870
+ secondary: "active:bg-(--color-bg-filled-active-secondary)",
3871
+ tertiary: "active:bg-(--color-bg-filled-active-tertiary)",
3872
+ accent: "active:bg-(--color-bg-filled-active-accent)",
3873
+ success: "active:bg-(--color-bg-filled-active-success)",
3874
+ danger: "active:bg-(--color-bg-filled-active-danger)",
3875
+ warning: "active:bg-(--color-bg-filled-active-warning)",
3876
+ info: "active:bg-(--color-bg-filled-active-info)",
3429
3877
  transparent: "active:bg-transparent",
3430
- link: "active:bg-(--filled-background-color-active-link)",
3878
+ link: "active:bg-(--color-bg-filled-active-link)",
3431
3879
  };
3432
3880
  const backgroundAppearanceClasses = {
3433
- default: "bg-(--background-color-default)",
3434
- primary: "bg-(--background-color-primary)",
3435
- secondary: "bg-(--background-color-secondary)",
3436
- tertiary: "bg-(--background-color-tertiary)",
3437
- accent: "bg-(--background-color-accent)",
3438
- success: "bg-(--background-color-success)",
3439
- danger: "bg-(--background-color-danger)",
3440
- warning: "bg-(--background-color-warning)",
3441
- info: "bg-(--background-color-info)",
3881
+ default: "bg-(--color-bg-default)",
3882
+ primary: "bg-(--color-bg-primary)",
3883
+ secondary: "bg-(--color-bg-secondary)",
3884
+ tertiary: "bg-(--color-bg-tertiary)",
3885
+ accent: "bg-(--color-bg-accent)",
3886
+ success: "bg-(--color-bg-success)",
3887
+ danger: "bg-(--color-bg-danger)",
3888
+ warning: "bg-(--color-bg-warning)",
3889
+ info: "bg-(--color-bg-info)",
3442
3890
  transparent: "bg-transparent",
3443
- link: "bg-(--background-color-link)",
3891
+ link: "bg-(--color-bg-link)",
3444
3892
  };
3445
3893
  const hoverBackgroundAppearanceClasses = {
3446
- default: "hover:bg-(--background-color-hover-default)",
3447
- primary: "hover:bg-(--background-color-hover-primary)",
3448
- secondary: "hover:bg-(--background-color-hover-secondary)",
3449
- tertiary: "hover:bg-(--background-color-hover-tertiary)",
3450
- accent: "hover:bg-(--background-color-hover-accent)",
3451
- success: "hover:bg-(--background-color-hover-success)",
3452
- danger: "hover:bg-(--background-color-hover-danger)",
3453
- warning: "hover:bg-(--background-color-hover-warning)",
3454
- info: "hover:bg-(--background-color-hover-info)",
3894
+ default: "hover:bg-(--color-bg-hover-default)",
3895
+ primary: "hover:bg-(--color-bg-hover-primary)",
3896
+ secondary: "hover:bg-(--color-bg-hover-secondary)",
3897
+ tertiary: "hover:bg-(--color-bg-hover-tertiary)",
3898
+ accent: "hover:bg-(--color-bg-hover-accent)",
3899
+ success: "hover:bg-(--color-bg-hover-success)",
3900
+ danger: "hover:bg-(--color-bg-hover-danger)",
3901
+ warning: "hover:bg-(--color-bg-hover-warning)",
3902
+ info: "hover:bg-(--color-bg-hover-info)",
3455
3903
  transparent: "hover:bg-transparent",
3456
- link: "hover:bg-(--background-color-hover-link)",
3904
+ link: "hover:bg-(--color-bg-hover-link)",
3457
3905
  };
3458
3906
  const activeBackgroundAppearanceClasses = {
3459
- default: "active:bg-(--background-color-active-default)",
3460
- primary: "active:bg-(--background-color-active-primary)",
3461
- secondary: "active:bg-(--background-color-active-secondary)",
3462
- tertiary: "active:bg-(--background-color-active-tertiary)",
3463
- accent: "active:bg-(--background-color-active-accent)",
3464
- success: "active:bg-(--background-color-active-success)",
3465
- danger: "active:bg-(--background-color-active-danger)",
3466
- warning: "active:bg-(--background-color-active-warning)",
3467
- info: "active:bg-(--background-color-active-info)",
3907
+ default: "active:bg-(--color-bg-active-default)",
3908
+ primary: "active:bg-(--color-bg-active-primary)",
3909
+ secondary: "active:bg-(--color-bg-active-secondary)",
3910
+ tertiary: "active:bg-(--color-bg-active-tertiary)",
3911
+ accent: "active:bg-(--color-bg-active-accent)",
3912
+ success: "active:bg-(--color-bg-active-success)",
3913
+ danger: "active:bg-(--color-bg-active-danger)",
3914
+ warning: "active:bg-(--color-bg-active-warning)",
3915
+ info: "active:bg-(--color-bg-active-info)",
3468
3916
  transparent: "active:bg-transparent",
3469
- link: "active:bg-(--background-color-active-link)",
3917
+ link: "active:bg-(--color-bg-active-link)",
3470
3918
  };
3471
3919
  const layoutBackgroundAppearanceClasses = {
3472
- default: "bg-(--layout-background-default)",
3473
- primary: "bg-(--layout-background-primary)",
3474
- secondary: "bg-(--layout-background-secondary)",
3475
- tertiary: "bg-(--layout-background-tertiary)",
3476
- accent: "bg-(--layout-background-accent)",
3477
- success: "bg-(--layout-background-success)",
3478
- danger: "bg-(--layout-background-danger)",
3479
- warning: "bg-(--layout-background-warning)",
3480
- info: "bg-(--layout-background-info)",
3920
+ default: "bg-(--color-bg-layout-default)",
3921
+ primary: "bg-(--color-bg-layout-primary)",
3922
+ secondary: "bg-(--color-bg-layout-secondary)",
3923
+ tertiary: "bg-(--color-bg-layout-tertiary)",
3924
+ accent: "bg-(--color-bg-layout-accent)",
3925
+ success: "bg-(--color-bg-layout-success)",
3926
+ danger: "bg-(--color-bg-layout-danger)",
3927
+ warning: "bg-(--color-bg-layout-warning)",
3928
+ info: "bg-(--color-bg-layout-info)",
3481
3929
  transparent: "bg-transparent",
3482
- link: "bg-(--layout-background-link)",
3930
+ link: "bg-(--color-bg-layout-link)",
3483
3931
  };
3484
3932
  const layoutFilledBackgroundAppearanceClasses = {
3485
- default: "bg-(--layout-filled-background-color-default)",
3486
- primary: "bg-(--layout-filled-background-color-primary)",
3487
- secondary: "bg-(--layout-filled-background-color-secondary)",
3488
- tertiary: "bg-(--layout-filled-background-color-tertiary)",
3489
- accent: "bg-(--layout-filled-background-color-accent)",
3490
- success: "bg-(--layout-filled-background-color-success)",
3491
- danger: "bg-(--layout-filled-background-color-danger)",
3492
- warning: "bg-(--layout-filled-background-color-warning)",
3493
- info: "bg-(--layout-filled-background-color-info)",
3933
+ default: "bg-(--color-bg-filled-layout-default)",
3934
+ primary: "bg-(--color-bg-filled-layout-primary)",
3935
+ secondary: "bg-(--color-bg-filled-layout-secondary)",
3936
+ tertiary: "bg-(--color-bg-filled-layout-tertiary)",
3937
+ accent: "bg-(--color-bg-filled-layout-accent)",
3938
+ success: "bg-(--color-bg-filled-layout-success)",
3939
+ danger: "bg-(--color-bg-filled-layout-danger)",
3940
+ warning: "bg-(--color-bg-filled-layout-warning)",
3941
+ info: "bg-(--color-bg-filled-layout-info)",
3494
3942
  transparent: "bg-transparent",
3495
- link: "bg-(--layout-filled-background-color-link)",
3943
+ link: "bg-(--color-bg-filled-layout-link)",
3496
3944
  };
3497
3945
  const bgBorderAppearanceClasses = {
3498
- default: "bg-(--border-color-default)",
3499
- primary: "bg-(--border-color-primary)",
3500
- secondary: "bg-(--border-color-secondary)",
3501
- tertiary: "bg-(--border-color-tertiary)",
3502
- accent: "bg-(--border-color-accent)",
3503
- success: "bg-(--border-color-success)",
3504
- danger: "bg-(--border-color-danger)",
3505
- warning: "bg-(--border-color-warning)",
3506
- info: "bg-(--border-color-info)",
3507
- link: "bg-(--border-color-link)",
3946
+ default: "bg-(--color-border-default)",
3947
+ primary: "bg-(--color-border-primary)",
3948
+ secondary: "bg-(--color-border-secondary)",
3949
+ tertiary: "bg-(--color-border-tertiary)",
3950
+ accent: "bg-(--color-border-accent)",
3951
+ success: "bg-(--color-border-success)",
3952
+ danger: "bg-(--color-border-danger)",
3953
+ warning: "bg-(--color-border-warning)",
3954
+ info: "bg-(--color-border-info)",
3955
+ link: "bg-(--color-border-link)",
3508
3956
  transparent: "bg-transparent",
3509
3957
  };
3510
3958
  const borderAppearanceClasses = {
3511
- default: "border-(--border-color-default)",
3512
- primary: "border-(--border-color-primary)",
3513
- secondary: "border-(--border-color-secondary)",
3514
- tertiary: "border-(--border-color-tertiary)",
3515
- accent: "border-(--border-color-accent)",
3516
- success: "border-(--border-color-success)",
3517
- danger: "border-(--border-color-danger)",
3518
- warning: "border-(--border-color-warning)",
3519
- info: "border-(--border-color-info)",
3520
- link: "border-(--border-color-link)",
3959
+ default: "border-(--color-border-default)",
3960
+ primary: "border-(--color-border-primary)",
3961
+ secondary: "border-(--color-border-secondary)",
3962
+ tertiary: "border-(--color-border-tertiary)",
3963
+ accent: "border-(--color-border-accent)",
3964
+ success: "border-(--color-border-success)",
3965
+ danger: "border-(--color-border-danger)",
3966
+ warning: "border-(--color-border-warning)",
3967
+ info: "border-(--color-border-info)",
3968
+ link: "border-(--color-border-link)",
3521
3969
  transparent: "border-transparent",
3522
3970
  };
3523
3971
  const filledBorderAppearanceClasses = {
3524
- default: "border-(--filled-border-color-default)",
3525
- primary: "border-(--filled-border-color-primary)",
3526
- secondary: "border-(--filled-border-color-secondary)",
3527
- tertiary: "border-(--filled-border-color-tertiary)",
3528
- accent: "border-(--filled-border-color-accent)",
3529
- success: "border-(--filled-border-color-success)",
3530
- danger: "border-(--filled-border-color-danger)",
3531
- warning: "border-(--filled-border-color-warning)",
3532
- info: "border-(--filled-border-color-info)",
3533
- link: "border-(--filled-border-color-link)",
3972
+ default: "border-(--color-border-filled-default)",
3973
+ primary: "border-(--color-border-filled-primary)",
3974
+ secondary: "border-(--color-border-filled-secondary)",
3975
+ tertiary: "border-(--color-border-filled-tertiary)",
3976
+ accent: "border-(--color-border-filled-accent)",
3977
+ success: "border-(--color-border-filled-success)",
3978
+ danger: "border-(--color-border-filled-danger)",
3979
+ warning: "border-(--color-border-filled-warning)",
3980
+ info: "border-(--color-border-filled-info)",
3981
+ link: "border-(--color-border-filled-link)",
3534
3982
  transparent: "border-transparent",
3535
3983
  };
3536
3984
  const ringAppearanceClasses = {
3537
- default: "ring-(--border-color-default)",
3538
- primary: "ring-(--border-color-primary)",
3539
- secondary: "ring-(--border-color-secondary)",
3540
- tertiary: "ring-(--border-color-tertiary)",
3541
- accent: "ring-(--border-color-accent)",
3542
- success: "ring-(--border-color-success)",
3543
- danger: "ring-(--border-color-danger)",
3544
- warning: "ring-(--border-color-warning)",
3545
- info: "ring-(--border-color-info)",
3546
- link: "ring-(--border-color-link)",
3985
+ default: "ring-(--color-border-default)",
3986
+ primary: "ring-(--color-border-primary)",
3987
+ secondary: "ring-(--color-border-secondary)",
3988
+ tertiary: "ring-(--color-border-tertiary)",
3989
+ accent: "ring-(--color-border-accent)",
3990
+ success: "ring-(--color-border-success)",
3991
+ danger: "ring-(--color-border-danger)",
3992
+ warning: "ring-(--color-border-warning)",
3993
+ info: "ring-(--color-border-info)",
3994
+ link: "ring-(--color-border-link)",
3547
3995
  transparent: "ring-transparent",
3548
3996
  };
3549
3997
  const filledRingAppearanceClasses = {
3550
- default: "ring-(--filled-border-color-default)",
3551
- primary: "ring-(--filled-border-color-primary)",
3552
- secondary: "ring-(--filled-border-color-secondary)",
3553
- tertiary: "ring-(--filled-border-color-tertiary)",
3554
- accent: "ring-(--filled-border-color-accent)",
3555
- success: "ring-(--filled-border-color-success)",
3556
- danger: "ring-(--filled-border-color-danger)",
3557
- warning: "ring-(--filled-border-color-warning)",
3558
- info: "ring-(--filled-border-color-info)",
3559
- link: "ring-(--filled-border-color-link)",
3998
+ default: "ring-(--color-border-filled-default)",
3999
+ primary: "ring-(--color-border-filled-primary)",
4000
+ secondary: "ring-(--color-border-filled-secondary)",
4001
+ tertiary: "ring-(--color-border-filled-tertiary)",
4002
+ accent: "ring-(--color-border-filled-accent)",
4003
+ success: "ring-(--color-border-filled-success)",
4004
+ danger: "ring-(--color-border-filled-danger)",
4005
+ warning: "ring-(--color-border-filled-warning)",
4006
+ info: "ring-(--color-border-filled-info)",
4007
+ link: "ring-(--color-border-filled-link)",
3560
4008
  transparent: "ring-transparent",
3561
4009
  };
4010
+ const focusVisibleOutlineAppearanceClasses = {
4011
+ default: "focus-visible:outline-(--color-border-default)",
4012
+ primary: "focus-visible:outline-(--color-border-primary)",
4013
+ secondary: "focus-visible:outline-(--color-border-secondary)",
4014
+ tertiary: "focus-visible:outline-(--color-border-tertiary)",
4015
+ accent: "focus-visible:outline-(--color-border-accent)",
4016
+ success: "focus-visible:outline-(--color-border-success)",
4017
+ danger: "focus-visible:outline-(--color-border-danger)",
4018
+ warning: "focus-visible:outline-(--color-border-warning)",
4019
+ info: "focus-visible:outline-(--color-border-info)",
4020
+ link: "focus-visible:outline-(--color-border-link)",
4021
+ transparent: "focus-visible:outline-transparent",
4022
+ };
4023
+ const filledFocusVisibleOutlineAppearanceClasses = {
4024
+ default: "focus-visible:outline-(--color-border-filled-default)",
4025
+ primary: "focus-visible:outline-(--color-border-filled-primary)",
4026
+ secondary: "focus-visible:outline-(--color-border-filled-secondary)",
4027
+ tertiary: "focus-visible:outline-(--color-border-filled-tertiary)",
4028
+ accent: "focus-visible:outline-(--color-border-filled-accent)",
4029
+ success: "focus-visible:outline-(--color-border-filled-success)",
4030
+ danger: "focus-visible:outline-(--color-border-filled-danger)",
4031
+ warning: "focus-visible:outline-(--color-border-filled-warning)",
4032
+ info: "focus-visible:outline-(--color-border-filled-info)",
4033
+ link: "focus-visible:outline-(--color-border-filled-link)",
4034
+ transparent: "focus-visible:outline-transparent",
4035
+ };
3562
4036
  const accentColorAppearanceClasses = {
3563
- default: "accent-(--background-color-default)",
3564
- primary: "accent-(--background-color-primary)",
3565
- secondary: "accent-(--background-color-secondary)",
3566
- tertiary: "accent-(--background-color-tertiary)",
3567
- accent: "accent-(--background-color-accent)",
3568
- success: "accent-(--background-color-success)",
3569
- danger: "accent-(--background-color-danger)",
3570
- warning: "accent-(--background-color-warning)",
3571
- info: "accent-(--background-color-info)",
4037
+ default: "accent-(--color-bg-default)",
4038
+ primary: "accent-(--color-bg-primary)",
4039
+ secondary: "accent-(--color-bg-secondary)",
4040
+ tertiary: "accent-(--color-bg-tertiary)",
4041
+ accent: "accent-(--color-bg-accent)",
4042
+ success: "accent-(--color-bg-success)",
4043
+ danger: "accent-(--color-bg-danger)",
4044
+ warning: "accent-(--color-bg-warning)",
4045
+ info: "accent-(--color-bg-info)",
3572
4046
  transparent: "accent-transparent",
3573
- link: "accent-(--background-color-link)",
4047
+ link: "accent-(--color-bg-link)",
3574
4048
  };
3575
4049
  const filledAccentColorAppearanceClasses = {
3576
- default: "accent-(--filled-background-color-default)",
3577
- primary: "accent-(--filled-background-color-primary)",
3578
- secondary: "accent-(--filled-background-color-secondary)",
3579
- tertiary: "accent-(--filled-background-color-tertiary)",
3580
- accent: "accent-(--filled-background-color-accent)",
3581
- success: "accent-(--filled-background-color-success)",
3582
- danger: "accent-(--filled-background-color-danger)",
3583
- warning: "accent-(--filled-background-color-warning)",
3584
- info: "accent-(--filled-background-color-info)",
4050
+ default: "accent-(--color-bg-filled-default)",
4051
+ primary: "accent-(--color-bg-filled-primary)",
4052
+ secondary: "accent-(--color-bg-filled-secondary)",
4053
+ tertiary: "accent-(--color-bg-filled-tertiary)",
4054
+ accent: "accent-(--color-bg-filled-accent)",
4055
+ success: "accent-(--color-bg-filled-success)",
4056
+ danger: "accent-(--color-bg-filled-danger)",
4057
+ warning: "accent-(--color-bg-filled-warning)",
4058
+ info: "accent-(--color-bg-filled-info)",
3585
4059
  transparent: "accent-transparent",
3586
- link: "accent-(--filled-background-color-link)",
4060
+ link: "accent-(--color-bg-filled-link)",
3587
4061
  };
3588
4062
  const checkedBackgroundAppearanceClasses = {
3589
- default: "checked:bg-(--background-color-default)",
3590
- primary: "checked:bg-(--background-color-primary)",
3591
- secondary: "checked:bg-(--background-color-secondary)",
3592
- tertiary: "checked:bg-(--background-color-tertiary)",
3593
- accent: "checked:bg-(--background-color-accent)",
3594
- success: "checked:bg-(--background-color-success)",
3595
- danger: "checked:bg-(--background-color-danger)",
3596
- warning: "checked:bg-(--background-color-warning)",
3597
- info: "checked:bg-(--background-color-info)",
4063
+ default: "checked:bg-(--color-bg-default)",
4064
+ primary: "checked:bg-(--color-bg-primary)",
4065
+ secondary: "checked:bg-(--color-bg-secondary)",
4066
+ tertiary: "checked:bg-(--color-bg-tertiary)",
4067
+ accent: "checked:bg-(--color-bg-accent)",
4068
+ success: "checked:bg-(--color-bg-success)",
4069
+ danger: "checked:bg-(--color-bg-danger)",
4070
+ warning: "checked:bg-(--color-bg-warning)",
4071
+ info: "checked:bg-(--color-bg-info)",
3598
4072
  transparent: "checked:bg-transparent",
3599
- link: "checked:bg-(--background-color-link)",
4073
+ link: "checked:bg-(--color-bg-link)",
3600
4074
  };
3601
4075
  const filledCheckedBackgroundAppearanceClasses = {
3602
- default: "checked:bg-(--filled-background-color-default)",
3603
- primary: "checked:bg-(--filled-background-color-primary)",
3604
- secondary: "checked:bg-(--filled-background-color-secondary)",
3605
- tertiary: "checked:bg-(--filled-background-color-tertiary)",
3606
- accent: "checked:bg-(--filled-background-color-accent)",
3607
- success: "checked:bg-(--filled-background-color-success)",
3608
- danger: "checked:bg-(--filled-background-color-danger)",
3609
- warning: "checked:bg-(--filled-background-color-warning)",
3610
- info: "checked:bg-(--filled-background-color-info)",
4076
+ default: "checked:bg-(--color-bg-filled-default)",
4077
+ primary: "checked:bg-(--color-bg-filled-primary)",
4078
+ secondary: "checked:bg-(--color-bg-filled-secondary)",
4079
+ tertiary: "checked:bg-(--color-bg-filled-tertiary)",
4080
+ accent: "checked:bg-(--color-bg-filled-accent)",
4081
+ success: "checked:bg-(--color-bg-filled-success)",
4082
+ danger: "checked:bg-(--color-bg-filled-danger)",
4083
+ warning: "checked:bg-(--color-bg-filled-warning)",
4084
+ info: "checked:bg-(--color-bg-filled-info)",
3611
4085
  transparent: "checked:bg-transparent",
3612
- link: "checked:bg-(--filled-background-color-link)",
4086
+ link: "checked:bg-(--color-bg-filled-link)",
3613
4087
  };
3614
4088
 
3615
4089
  class ShadowAppearanceTheme extends BaseTheme {
3616
4090
  constructor(initial) {
3617
4091
  super();
3618
4092
  ComponentKeys.appearance.forEach((key) => {
3619
- const initialAppearance = initial === null || initial === void 0 ? void 0 : initial[key];
3620
- this[key] = initialAppearance === undefined ? ShadowAppearanceTheme.defaultShadow : null;
4093
+ this[key] = initial;
3621
4094
  });
3622
4095
  }
3623
4096
  getClasses(extractedKeys) {
@@ -3625,37 +4098,30 @@ class ShadowAppearanceTheme extends BaseTheme {
3625
4098
  const appearance = (_a = extractedKeys === null || extractedKeys === void 0 ? void 0 : extractedKeys.appearance) !== null && _a !== void 0 ? _a : 'default';
3626
4099
  const size = (_b = extractedKeys === null || extractedKeys === void 0 ? void 0 : extractedKeys.size) !== null && _b !== void 0 ? _b : 'md';
3627
4100
  const shadow = extractedKeys === null || extractedKeys === void 0 ? void 0 : extractedKeys.shadow;
3628
- if (shadow === undefined || shadow === 'noShadow') {
3629
- return [];
3630
- }
3631
- return ComponentKeys.mode.map(mode => { var _a, _b, _c; return (_c = (_b = (_a = this[appearance]) === null || _a === void 0 ? void 0 : _a[size]) === null || _b === void 0 ? void 0 : _b[mode]) !== null && _c !== void 0 ? _c : ""; });
4101
+ return shadow === undefined || shadow === 'noShadow'
4102
+ ? []
4103
+ : ModeKeys.mode.map(mode => { var _a, _b, _c; return (_c = (_b = (_a = this[appearance]) === null || _a === void 0 ? void 0 : _a[size]) === null || _b === void 0 ? void 0 : _b[mode]) !== null && _c !== void 0 ? _c : ""; });
3632
4104
  }
3633
- static createTheme(src = {}) {
3634
- return new ShadowAppearanceTheme(src);
4105
+ static createUITheme() {
4106
+ return new ShadowAppearanceTheme(ShadowAppearanceTheme.defaultUIShadow);
3635
4107
  }
3636
- static createLayoutTheme(src = {}) {
3637
- const theme = new ShadowAppearanceTheme(src);
3638
- ComponentKeys.appearance.forEach((key) => {
3639
- if (theme[key] === ShadowAppearanceTheme.defaultShadow) {
3640
- theme[key] = ShadowAppearanceTheme.layoutShadow;
3641
- }
3642
- });
3643
- return theme;
4108
+ static createLayoutTheme() {
4109
+ return new ShadowAppearanceTheme(ShadowAppearanceTheme.defaultLayoutShadow);
3644
4110
  }
3645
4111
  }
3646
- ShadowAppearanceTheme.defaultShadow = {
3647
- xs: { base: "shadow-2xs", hover: "hover:shadow-xs", active: "" },
3648
- sm: { base: "shadow-xs", hover: "hover:shadow-sm", active: "" },
3649
- md: { base: "shadow-sm", hover: "hover:shadow-md", active: "" },
3650
- lg: { base: "shadow-md", hover: "hover:shadow-lg", active: "" },
3651
- xl: { base: "shadow-lg", hover: "hover:shadow-xl", active: "" }
4112
+ ShadowAppearanceTheme.defaultUIShadow = {
4113
+ xs: { base: "shadow-2xs", hover: "hover:shadow-xs", active: "", focus: "", focusVisible: "" },
4114
+ sm: { base: "shadow-xs", hover: "hover:shadow-sm", active: "", focus: "", focusVisible: "" },
4115
+ md: { base: "shadow-sm", hover: "hover:shadow-md", active: "", focus: "", focusVisible: "" },
4116
+ lg: { base: "shadow-md", hover: "hover:shadow-lg", active: "", focus: "", focusVisible: "" },
4117
+ xl: { base: "shadow-lg", hover: "hover:shadow-xl", active: "", focus: "", focusVisible: "" }
3652
4118
  };
3653
- ShadowAppearanceTheme.layoutShadow = {
3654
- xs: { base: "shadow-2xs", hover: "", active: "" },
3655
- sm: { base: "shadow-xs", hover: "", active: "" },
3656
- md: { base: "shadow-sm", hover: "", active: "" },
3657
- lg: { base: "shadow-md", hover: "", active: "" },
3658
- xl: { base: "shadow-lg", hover: "", active: "" }
4119
+ ShadowAppearanceTheme.defaultLayoutShadow = {
4120
+ xs: { base: "shadow-2xs", hover: "", active: "", focus: "", focusVisible: "" },
4121
+ sm: { base: "shadow-xs", hover: "", active: "", focus: "", focusVisible: "" },
4122
+ md: { base: "shadow-sm", hover: "", active: "", focus: "", focusVisible: "" },
4123
+ lg: { base: "shadow-md", hover: "", active: "", focus: "", focusVisible: "" },
4124
+ xl: { base: "shadow-lg", hover: "", active: "", focus: "", focusVisible: "" }
3659
4125
  };
3660
4126
 
3661
4127
  class GenericVariantTheme extends BaseTheme {
@@ -3668,63 +4134,107 @@ class GenericVariantTheme extends BaseTheme {
3668
4134
  getClasses(extractedKeys) {
3669
4135
  var _a;
3670
4136
  const variantKey = (_a = extractedKeys === null || extractedKeys === void 0 ? void 0 : extractedKeys.variant) !== null && _a !== void 0 ? _a : 'outline';
3671
- const activeTheme = this[variantKey];
3672
- if (!activeTheme) {
3673
- return [];
3674
- }
3675
- return activeTheme.getClasses(extractedKeys);
4137
+ return this[variantKey].getClasses(extractedKeys);
3676
4138
  }
3677
- // used for button, bages, chips, etc
4139
+ // used for button, badges, chips, etc - UI elements where transparent affects background
3678
4140
  static createUIElementTextTheme() {
3679
4141
  return new GenericVariantTheme({
3680
4142
  outline: AppearanceTheme.createTheme({
3681
4143
  base: textAppearanceClasses
3682
- }, 'text'),
4144
+ }, 'text', true), // Layout/UI components: text themes should ignore transparent
4145
+ filled: AppearanceTheme.createTheme({
4146
+ base: filledTextAppearanceClasses
4147
+ }, 'text', true)
4148
+ });
4149
+ }
4150
+ // used for typography components where transparent affects text color
4151
+ static createTypographyTextTheme() {
4152
+ return new GenericVariantTheme({
4153
+ outline: AppearanceTheme.createTheme({
4154
+ base: textAppearanceClasses
4155
+ }, 'text', false), // Typography components: text themes should respect transparent
4156
+ filled: AppearanceTheme.createTheme({
4157
+ base: filledTextAppearanceClasses
4158
+ }, 'text', false)
4159
+ });
4160
+ }
4161
+ // used for typography components where transparent should NOT affect background
4162
+ static createTypographyBgTheme() {
4163
+ return new GenericVariantTheme({
4164
+ outline: AppearanceTheme.createTheme({
4165
+ base: backgroundAppearanceClasses,
4166
+ hover: hoverBackgroundAppearanceClasses,
4167
+ active: activeBackgroundAppearanceClasses
4168
+ }, 'bg', true), // Typography components: bg themes should ignore transparent
4169
+ filled: AppearanceTheme.createTheme({
4170
+ base: filledBackgroundAppearanceClasses,
4171
+ hover: filledHoverBackgroundAppearanceClasses,
4172
+ active: filledActiveBackgroundAppearanceClasses
4173
+ }, 'bg', true)
4174
+ });
4175
+ }
4176
+ // used for typography components where transparent should NOT affect border
4177
+ static createTypographyBorderTheme() {
4178
+ return new GenericVariantTheme({
4179
+ outline: AppearanceTheme.createTheme({
4180
+ base: borderAppearanceClasses
4181
+ }, 'border', true), // Typography components: border themes should ignore transparent
4182
+ filled: AppearanceTheme.createTheme({
4183
+ base: filledBorderAppearanceClasses
4184
+ }, 'border', true)
4185
+ });
4186
+ }
4187
+ // used for layout/UI components where transparent should NOT affect text
4188
+ static createUIElementTextThemeIgnoreTransparent() {
4189
+ return new GenericVariantTheme({
4190
+ outline: AppearanceTheme.createTheme({
4191
+ base: textAppearanceClasses
4192
+ }, 'text', true), // Layout/UI components: text themes should ignore transparent
3683
4193
  filled: AppearanceTheme.createTheme({
3684
4194
  base: filledTextAppearanceClasses
3685
- }, 'text')
4195
+ }, 'text', true)
3686
4196
  });
3687
4197
  }
3688
4198
  static createUIElementShadowTheme() {
3689
4199
  return new GenericVariantTheme({
3690
- outline: ShadowAppearanceTheme.createTheme({}),
3691
- filled: ShadowAppearanceTheme.createTheme({})
4200
+ outline: ShadowAppearanceTheme.createUITheme(),
4201
+ filled: ShadowAppearanceTheme.createUITheme()
3692
4202
  });
3693
4203
  }
3694
4204
  static createLayoutShadowTheme() {
3695
4205
  return new GenericVariantTheme({
3696
- outline: ShadowAppearanceTheme.createLayoutTheme({}),
3697
- filled: ShadowAppearanceTheme.createLayoutTheme({})
4206
+ outline: ShadowAppearanceTheme.createLayoutTheme(),
4207
+ filled: ShadowAppearanceTheme.createLayoutTheme()
3698
4208
  });
3699
4209
  }
3700
4210
  static createUIElementBorderTheme() {
3701
4211
  return new GenericVariantTheme({
3702
4212
  outline: AppearanceTheme.createTheme({
3703
4213
  base: borderAppearanceClasses
3704
- }, 'border'),
4214
+ }, 'border', true), // Layout/UI components: border themes should ignore transparent
3705
4215
  filled: AppearanceTheme.createTheme({
3706
4216
  base: filledBorderAppearanceClasses
3707
- }, 'border')
4217
+ }, 'border', true)
3708
4218
  });
3709
4219
  }
3710
4220
  static createUIElementRingTheme() {
3711
4221
  return new GenericVariantTheme({
3712
4222
  outline: AppearanceTheme.createTheme({
3713
4223
  base: ringAppearanceClasses
3714
- }, 'ring'),
4224
+ }, 'ring', true), // Layout/UI components: ring themes should ignore transparent
3715
4225
  filled: AppearanceTheme.createTheme({
3716
4226
  base: filledRingAppearanceClasses
3717
- }, 'ring')
4227
+ }, 'ring', true)
3718
4228
  });
3719
4229
  }
3720
4230
  static createCheckboxBgAppearanceTheme() {
3721
4231
  return new GenericVariantTheme({
3722
4232
  outline: AppearanceTheme.createTheme({
3723
4233
  base: backgroundAppearanceClasses,
3724
- }, 'bg'),
4234
+ }, 'bg', false), // Layout/UI components: bg themes should respect transparent
3725
4235
  filled: AppearanceTheme.createTheme({
3726
4236
  base: backgroundAppearanceClasses,
3727
- }, 'bg')
4237
+ }, 'bg', false)
3728
4238
  });
3729
4239
  }
3730
4240
  static createBgAppearanceTheme() {
@@ -3733,52 +4243,62 @@ class GenericVariantTheme extends BaseTheme {
3733
4243
  base: backgroundAppearanceClasses,
3734
4244
  hover: hoverBackgroundAppearanceClasses,
3735
4245
  active: activeBackgroundAppearanceClasses
3736
- }, 'bg'),
4246
+ }, 'bg', false), // Layout/UI components: bg themes should respect transparent
3737
4247
  filled: AppearanceTheme.createTheme({
3738
4248
  base: filledBackgroundAppearanceClasses,
3739
4249
  hover: filledHoverBackgroundAppearanceClasses,
3740
4250
  active: filledActiveBackgroundAppearanceClasses
3741
- }, 'bg')
4251
+ }, 'bg', false)
3742
4252
  });
3743
4253
  }
3744
4254
  static createSimpleUIElementBgAppearanceTheme() {
3745
4255
  return new GenericVariantTheme({
3746
4256
  outline: AppearanceTheme.createTheme({
3747
4257
  base: backgroundAppearanceClasses,
3748
- }, 'bg'),
4258
+ }, 'bg', false), // Layout/UI components: bg themes should respect transparent
3749
4259
  filled: AppearanceTheme.createTheme({
3750
4260
  base: filledBackgroundAppearanceClasses,
3751
- }, 'bg')
4261
+ }, 'bg', false)
3752
4262
  });
3753
4263
  }
3754
4264
  static createAccentColorAppearanceTheme() {
3755
4265
  return new GenericVariantTheme({
3756
4266
  outline: AppearanceTheme.createTheme({
3757
4267
  base: accentColorAppearanceClasses
3758
- }, 'accent'),
4268
+ }, 'accent', true), // Layout/UI components: accent themes should ignore transparent
3759
4269
  filled: AppearanceTheme.createTheme({
3760
4270
  base: filledAccentColorAppearanceClasses
3761
- }, 'accent')
4271
+ }, 'accent', true)
3762
4272
  });
3763
4273
  }
3764
4274
  static createCheckedAppearanceTheme() {
3765
4275
  return new GenericVariantTheme({
3766
4276
  outline: AppearanceTheme.createTheme({
3767
4277
  base: checkedBackgroundAppearanceClasses
3768
- }, 'bg'),
4278
+ }, 'bg', false), // Layout/UI components: bg themes should respect transparent
3769
4279
  filled: AppearanceTheme.createTheme({
3770
4280
  base: filledCheckedBackgroundAppearanceClasses
3771
- }, 'bg')
4281
+ }, 'bg', false)
3772
4282
  });
3773
4283
  }
3774
4284
  static createLayoutBgAppearanceTheme() {
3775
4285
  return new GenericVariantTheme({
3776
4286
  outline: AppearanceTheme.createTheme({
3777
4287
  base: layoutBackgroundAppearanceClasses
3778
- }, 'bg'),
4288
+ }, 'bg', false), // Layout components: bg themes should respect transparent
3779
4289
  filled: AppearanceTheme.createTheme({
3780
4290
  base: layoutFilledBackgroundAppearanceClasses
3781
- }, 'bg')
4291
+ }, 'bg', false)
4292
+ });
4293
+ }
4294
+ static createUIElementFocusVisibleTheme() {
4295
+ return new GenericVariantTheme({
4296
+ outline: AppearanceTheme.createTheme({
4297
+ focusVisible: focusVisibleOutlineAppearanceClasses
4298
+ }, 'focusVisible', true), // UI components: focusVisible themes should ignore transparent
4299
+ filled: AppearanceTheme.createTheme({
4300
+ focusVisible: filledFocusVisibleOutlineAppearanceClasses
4301
+ }, 'focusVisible', true)
3782
4302
  });
3783
4303
  }
3784
4304
  }
@@ -3833,6 +4353,7 @@ const themeDefaults = {
3833
4353
  padding: true,
3834
4354
  ring: true,
3835
4355
  shadow: true,
4356
+ focusVisible: true,
3836
4357
  },
3837
4358
  card: {
3838
4359
  md: true,
@@ -3939,6 +4460,16 @@ const themeDefaults = {
3939
4460
  grid: true,
3940
4461
  gap: true,
3941
4462
  },
4463
+ grid5: {
4464
+ md: true,
4465
+ grid: true,
4466
+ gap: true,
4467
+ },
4468
+ grid6: {
4469
+ md: true,
4470
+ grid: true,
4471
+ gap: true,
4472
+ },
3942
4473
  divider: {
3943
4474
  md: true,
3944
4475
  default: true,
@@ -4011,6 +4542,7 @@ const themeDefaults = {
4011
4542
  noRing: true,
4012
4543
  noShadow: true,
4013
4544
  filled: true,
4545
+ focusVisible: true,
4014
4546
  },
4015
4547
  check: {
4016
4548
  default: true,
@@ -4025,6 +4557,18 @@ const themeDefaults = {
4025
4557
  filled: true,
4026
4558
  },
4027
4559
  },
4560
+ input: {
4561
+ md: true,
4562
+ default: true,
4563
+ rounded: true,
4564
+ outline: true,
4565
+ sans: true,
4566
+ normal: true,
4567
+ padding: true,
4568
+ ring: true,
4569
+ noShadow: true,
4570
+ focusVisible: true,
4571
+ },
4028
4572
  };
4029
4573
 
4030
4574
  const defaultButtonTheme = new ComponentTheme("button", "w-fit h-fit cursor-pointer transition-all duration-200 whitespace-nowrap", {
@@ -4038,20 +4582,22 @@ const defaultButtonTheme = new ComponentTheme("button", "w-fit h-fit cursor-poin
4038
4582
  },
4039
4583
  appearance: {
4040
4584
  background: GenericVariantTheme.createBgAppearanceTheme(),
4041
- text: GenericVariantTheme.createUIElementTextTheme(),
4585
+ text: GenericVariantTheme.createUIElementTextThemeIgnoreTransparent(),
4042
4586
  border: GenericVariantTheme.createUIElementBorderTheme(),
4043
4587
  ring: GenericVariantTheme.createUIElementRingTheme(),
4588
+ focusVisible: GenericVariantTheme.createUIElementFocusVisibleTheme(),
4044
4589
  shadow: GenericVariantTheme.createUIElementShadowTheme()
4045
4590
  },
4046
4591
  layout: {
4047
- ...defaultLayoutTheme,
4592
+ ...defaultLayoutsThemes,
4048
4593
  border: new BorderTheme(),
4049
4594
  ring: new RingTheme(),
4595
+ focusVisible: new FocusVisibleTheme(),
4050
4596
  radius: RadiusTheme.createUITheme(),
4051
4597
  wrap: new WrapTheme(),
4052
4598
  flexDirection: new DirectionTheme(),
4053
4599
  },
4054
- typography: defaultTypographyTheme,
4600
+ typography: defaultTypographyThemes,
4055
4601
  }, themeDefaults.button, BUTTON_CATEGORIES, (props) => {
4056
4602
  // Determine tag based on href prop
4057
4603
  return props.href ? "a" : "button";
@@ -4066,20 +4612,22 @@ const defaultBadgeTheme = new ComponentTheme("span", "w-fit h-fit transition-all
4066
4612
  },
4067
4613
  appearance: {
4068
4614
  background: GenericVariantTheme.createSimpleUIElementBgAppearanceTheme(),
4069
- text: GenericVariantTheme.createUIElementTextTheme(),
4615
+ text: GenericVariantTheme.createUIElementTextThemeIgnoreTransparent(),
4070
4616
  border: GenericVariantTheme.createUIElementBorderTheme(),
4071
4617
  ring: GenericVariantTheme.createUIElementRingTheme(),
4618
+ focusVisible: GenericVariantTheme.createUIElementFocusVisibleTheme(),
4072
4619
  shadow: GenericVariantTheme.createLayoutShadowTheme()
4073
4620
  },
4074
4621
  layout: {
4075
- ...defaultLayoutTheme,
4622
+ ...defaultLayoutsThemes,
4076
4623
  border: new BorderTheme(),
4077
4624
  ring: new RingTheme(),
4625
+ focusVisible: new FocusVisibleTheme(),
4078
4626
  radius: RadiusTheme.createUITheme(),
4079
4627
  wrap: new WrapTheme(),
4080
4628
  flexDirection: new DirectionTheme(),
4081
4629
  },
4082
- typography: defaultTypographyTheme,
4630
+ typography: defaultTypographyThemes,
4083
4631
  }, themeDefaults.badge, BADGE_CATEGORIES, (props) => {
4084
4632
  return props.href ? "a" : "span";
4085
4633
  });
@@ -4093,20 +4641,22 @@ const defaultChipTheme = new ComponentTheme("span", "w-fit h-fit transition-all
4093
4641
  },
4094
4642
  appearance: {
4095
4643
  background: GenericVariantTheme.createSimpleUIElementBgAppearanceTheme(),
4096
- text: GenericVariantTheme.createUIElementTextTheme(),
4644
+ text: GenericVariantTheme.createUIElementTextThemeIgnoreTransparent(),
4097
4645
  border: GenericVariantTheme.createUIElementBorderTheme(),
4098
4646
  ring: GenericVariantTheme.createUIElementRingTheme(),
4647
+ focusVisible: GenericVariantTheme.createUIElementFocusVisibleTheme(),
4099
4648
  shadow: GenericVariantTheme.createLayoutShadowTheme()
4100
4649
  },
4101
4650
  layout: {
4102
- ...defaultLayoutTheme,
4651
+ ...defaultLayoutsThemes,
4103
4652
  radius: RadiusTheme.createUITheme(),
4104
4653
  border: new BorderTheme(),
4105
4654
  ring: new RingTheme(),
4655
+ focusVisible: new FocusVisibleTheme(),
4106
4656
  wrap: new WrapTheme(),
4107
4657
  flexDirection: new DirectionTheme(),
4108
4658
  },
4109
- typography: defaultTypographyTheme,
4659
+ typography: defaultTypographyThemes,
4110
4660
  }, themeDefaults.chip, CHIP_CATEGORIES, (props) => {
4111
4661
  return props.href ? "a" : "span";
4112
4662
  });
@@ -4120,20 +4670,22 @@ const defaultCodeTheme = new ComponentTheme("code", "", {
4120
4670
  },
4121
4671
  appearance: {
4122
4672
  background: GenericVariantTheme.createSimpleUIElementBgAppearanceTheme(),
4123
- text: GenericVariantTheme.createUIElementTextTheme(),
4673
+ text: GenericVariantTheme.createUIElementTextThemeIgnoreTransparent(),
4124
4674
  border: GenericVariantTheme.createUIElementBorderTheme(),
4125
4675
  ring: GenericVariantTheme.createUIElementRingTheme(),
4676
+ focusVisible: GenericVariantTheme.createUIElementFocusVisibleTheme(),
4126
4677
  shadow: GenericVariantTheme.createLayoutShadowTheme()
4127
4678
  },
4128
4679
  layout: {
4129
- ...defaultLayoutTheme,
4680
+ ...defaultLayoutsThemes,
4130
4681
  radius: RadiusTheme.createUITheme(),
4131
4682
  border: new BorderTheme(),
4132
4683
  ring: new RingTheme(),
4684
+ focusVisible: new FocusVisibleTheme(),
4133
4685
  wrap: new WrapTheme(),
4134
4686
  flexDirection: new DirectionTheme(),
4135
4687
  },
4136
- typography: defaultTypographyTheme,
4688
+ typography: defaultTypographyThemes,
4137
4689
  }, themeDefaults.code, CODE_CATEGORIES);
4138
4690
 
4139
4691
  const isObject = (item) => {
@@ -4249,10 +4801,10 @@ const createTypographyComponentTheme = (tag, base = "text-balance", textSizeMap
4249
4801
  text: new SizeTheme(textSizeMap),
4250
4802
  },
4251
4803
  appearance: {
4252
- text: GenericVariantTheme.createUIElementTextTheme(),
4804
+ text: GenericVariantTheme.createTypographyTextTheme(),
4253
4805
  },
4254
- typography: defaultTypographyTheme,
4255
- layout: defaultLayoutTheme,
4806
+ typography: defaultTypographyThemes,
4807
+ layout: defaultLayoutsThemes,
4256
4808
  }, defaults, TYPOGRAPHY_CATEGORIES, (props) => {
4257
4809
  // Determine tag based on href prop
4258
4810
  return props.href ? "a" : tag;
@@ -4284,10 +4836,10 @@ const linkTheme = new ComponentTheme("a", "hover:underline w-fit cursor-pointer"
4284
4836
  text: new SizeTheme(textSizeClasses, false),
4285
4837
  },
4286
4838
  appearance: {
4287
- text: GenericVariantTheme.createUIElementTextTheme(),
4839
+ text: GenericVariantTheme.createTypographyTextTheme(),
4288
4840
  },
4289
- typography: defaultTypographyTheme,
4290
- layout: defaultLayoutTheme,
4841
+ typography: defaultTypographyThemes,
4842
+ layout: defaultLayoutsThemes,
4291
4843
  }, themeDefaults.link, TYPOGRAPHY_CATEGORIES);
4292
4844
  // List specific theme
4293
4845
  const listItemTheme = new ComponentTheme("li", "", {
@@ -4295,9 +4847,9 @@ const listItemTheme = new ComponentTheme("li", "", {
4295
4847
  text: new SizeTheme(textSizeClasses, false),
4296
4848
  },
4297
4849
  appearance: {
4298
- text: GenericVariantTheme.createUIElementTextTheme(),
4850
+ text: GenericVariantTheme.createTypographyTextTheme(),
4299
4851
  },
4300
- typography: defaultTypographyTheme,
4852
+ typography: defaultTypographyThemes,
4301
4853
  }, themeDefaults.listItem, TYPOGRAPHY_CATEGORIES);
4302
4854
  // List specific theme
4303
4855
  const listTheme = new ComponentTheme("ul", "list-inside", {
@@ -4306,10 +4858,10 @@ const listTheme = new ComponentTheme("ul", "list-inside", {
4306
4858
  paddingLeft: new PlTheme(),
4307
4859
  },
4308
4860
  appearance: {
4309
- text: GenericVariantTheme.createUIElementTextTheme(),
4861
+ text: GenericVariantTheme.createTypographyTextTheme(),
4310
4862
  },
4311
- typography: defaultTypographyTheme,
4312
- layout: defaultLayoutTheme,
4863
+ typography: defaultTypographyThemes,
4864
+ layout: defaultLayoutsThemes,
4313
4865
  listStyle: new ListStyleTheme(),
4314
4866
  }, themeDefaults.list, LIST_CATEGORIES, (props) => {
4315
4867
  // Determine tag based on list style from props
@@ -4336,23 +4888,29 @@ class BreakpointTheme extends BaseTheme {
4336
4888
  const defaultCardTheme = new ComponentTheme("div", "", {
4337
4889
  size: {
4338
4890
  px: new PxTheme({
4339
- xs: "px-2",
4340
- sm: "px-3 max-lg:px-2",
4341
- md: "px-4 max-lg:px-3",
4342
- lg: "px-5 max-lg:px-4 max-md:px-3",
4343
- xl: "px-6 max-lg:px-5 max-md:px-4"
4891
+ xs: "px-4",
4892
+ sm: "px-5 max-lg:px-4",
4893
+ md: "px-6 max-lg:px-5",
4894
+ lg: "px-7 max-lg:px-6 max-md:px-5",
4895
+ xl: "px-8 max-lg:px-7 max-md:px-6"
4344
4896
  }),
4345
4897
  py: new PyTheme({
4346
- xs: "py-2",
4347
- sm: "py-3 max-lg:py-2",
4348
- md: "py-4 max-lg:py-3",
4349
- lg: "py-5 max-lg:py-4 max-md:py-3",
4350
- xl: "py-6 max-lg:py-5 max-md:py-4"
4898
+ xs: "py-4",
4899
+ sm: "py-5 max-lg:py-4",
4900
+ md: "py-6 max-lg:py-5",
4901
+ lg: "py-7 max-lg:py-6 max-md:py-5",
4902
+ xl: "py-8 max-lg:py-7 max-md:py-6"
4903
+ }),
4904
+ gap: new GapTheme({
4905
+ xs: "gap-2",
4906
+ sm: "gap-3 max-lg:gap-2",
4907
+ md: "gap-4 max-lg:gap-3",
4908
+ lg: "gap-5 max-lg:gap-4 max-md:gap-3",
4909
+ xl: "gap-6 max-lg:gap-5 max-md:gap-4"
4351
4910
  }),
4352
- gap: new GapTheme(),
4353
4911
  },
4354
4912
  layout: {
4355
- ...defaultLayoutTheme,
4913
+ ...defaultLayoutsThemes,
4356
4914
  border: new BorderTheme(),
4357
4915
  ring: new RingTheme(),
4358
4916
  radius: RadiusTheme.createLayoutTheme(),
@@ -4363,14 +4921,12 @@ const defaultCardTheme = new ComponentTheme("div", "", {
4363
4921
  },
4364
4922
  appearance: {
4365
4923
  background: GenericVariantTheme.createLayoutBgAppearanceTheme(),
4366
- text: GenericVariantTheme.createUIElementTextTheme(),
4924
+ text: GenericVariantTheme.createUIElementTextThemeIgnoreTransparent(),
4367
4925
  border: GenericVariantTheme.createUIElementBorderTheme(),
4368
4926
  ring: GenericVariantTheme.createUIElementRingTheme(),
4369
4927
  },
4370
- typography: defaultTypographyTheme,
4371
- }, themeDefaults.card, CARD_CATEGORIES, (props) => {
4372
- return props.href ? "a" : "div";
4373
- });
4928
+ typography: defaultTypographyThemes,
4929
+ }, themeDefaults.card, CARD_CATEGORIES);
4374
4930
 
4375
4931
  const defaultRowTheme = new ComponentTheme("div", "", {
4376
4932
  size: {
@@ -4378,7 +4934,7 @@ const defaultRowTheme = new ComponentTheme("div", "", {
4378
4934
  breakpoint: new BreakpointTheme(),
4379
4935
  },
4380
4936
  layout: {
4381
- ...defaultLayoutTheme,
4937
+ ...defaultLayoutsThemes,
4382
4938
  wrap: new WrapTheme(),
4383
4939
  direction: new DirectionTheme(),
4384
4940
  border: new BorderTheme(),
@@ -4387,15 +4943,12 @@ const defaultRowTheme = new ComponentTheme("div", "", {
4387
4943
  },
4388
4944
  appearance: {
4389
4945
  background: GenericVariantTheme.createLayoutBgAppearanceTheme(),
4390
- text: GenericVariantTheme.createUIElementTextTheme(),
4946
+ text: GenericVariantTheme.createUIElementTextThemeIgnoreTransparent(),
4391
4947
  border: GenericVariantTheme.createUIElementBorderTheme(),
4392
4948
  ring: GenericVariantTheme.createUIElementRingTheme(),
4393
4949
  shadow: GenericVariantTheme.createLayoutShadowTheme(),
4394
4950
  }
4395
- }, themeDefaults.row, ROW_CATEGORIES, (props) => {
4396
- // Determine tag based on href prop
4397
- return props.href ? "a" : "div";
4398
- });
4951
+ }, themeDefaults.row, ROW_CATEGORIES);
4399
4952
 
4400
4953
  const defaultDividerTheme = new ComponentTheme("div", "h-px w-full", {
4401
4954
  size: {
@@ -4406,7 +4959,7 @@ const defaultDividerTheme = new ComponentTheme("div", "h-px w-full", {
4406
4959
  base: bgBorderAppearanceClasses,
4407
4960
  }, 'bg'),
4408
4961
  },
4409
- layout: defaultLayoutTheme,
4962
+ layout: defaultLayoutsThemes,
4410
4963
  }, themeDefaults.divider, DIVIDER_CATEGORIES);
4411
4964
 
4412
4965
  const defaultContainerTheme = new ComponentTheme("div", "flex-col mx-auto w-full", {
@@ -4421,7 +4974,7 @@ const defaultContainerTheme = new ComponentTheme("div", "flex-col mx-auto w-full
4421
4974
  maxWidth: new SizeTheme({ xs: 'max-w-3xl', sm: 'max-w-4xl', md: 'max-w-5xl', lg: 'max-w-6xl', xl: 'max-w-7xl' }),
4422
4975
  },
4423
4976
  layout: {
4424
- ...defaultLayoutTheme,
4977
+ ...defaultLayoutsThemes,
4425
4978
  border: new BorderTheme(),
4426
4979
  ring: new RingTheme(),
4427
4980
  wrap: new WrapTheme(),
@@ -4430,21 +4983,19 @@ const defaultContainerTheme = new ComponentTheme("div", "flex-col mx-auto w-full
4430
4983
  },
4431
4984
  appearance: {
4432
4985
  background: GenericVariantTheme.createLayoutBgAppearanceTheme(),
4433
- text: GenericVariantTheme.createUIElementTextTheme(),
4986
+ text: GenericVariantTheme.createUIElementTextThemeIgnoreTransparent(),
4434
4987
  border: GenericVariantTheme.createUIElementBorderTheme(),
4435
4988
  ring: GenericVariantTheme.createUIElementRingTheme(),
4436
4989
  shadow: GenericVariantTheme.createLayoutShadowTheme(),
4437
4990
  }
4438
- }, themeDefaults.container, CONTAINER_CATEGORIES, (props) => {
4439
- return props.href ? "a" : "div";
4440
- });
4991
+ }, themeDefaults.container, CONTAINER_CATEGORIES);
4441
4992
 
4442
4993
  const defaultColTheme = new ComponentTheme("div", "", {
4443
4994
  size: {
4444
4995
  gap: new GapTheme(),
4445
4996
  },
4446
4997
  layout: {
4447
- ...defaultLayoutTheme,
4998
+ ...defaultLayoutsThemes,
4448
4999
  wrap: new WrapTheme(),
4449
5000
  direction: new DirectionTheme(),
4450
5001
  border: new BorderTheme(),
@@ -4453,14 +5004,12 @@ const defaultColTheme = new ComponentTheme("div", "", {
4453
5004
  },
4454
5005
  appearance: {
4455
5006
  background: GenericVariantTheme.createLayoutBgAppearanceTheme(),
4456
- text: GenericVariantTheme.createUIElementTextTheme(),
5007
+ text: GenericVariantTheme.createUIElementTextThemeIgnoreTransparent(),
4457
5008
  border: GenericVariantTheme.createUIElementBorderTheme(),
4458
5009
  ring: GenericVariantTheme.createUIElementRingTheme(),
4459
5010
  shadow: GenericVariantTheme.createLayoutShadowTheme(),
4460
5011
  }
4461
- }, themeDefaults.col, COL_CATEGORIES, (props) => {
4462
- return props.href ? "a" : "div";
4463
- });
5012
+ }, themeDefaults.col, COL_CATEGORIES);
4464
5013
 
4465
5014
  const defaultStackTheme = new ComponentTheme("div", "", {
4466
5015
  size: {
@@ -4470,7 +5019,7 @@ const defaultStackTheme = new ComponentTheme("div", "", {
4470
5019
  breakpoint: new BreakpointTheme(),
4471
5020
  },
4472
5021
  layout: {
4473
- ...defaultLayoutTheme,
5022
+ ...defaultLayoutsThemes,
4474
5023
  wrap: new WrapTheme(),
4475
5024
  direction: new DirectionTheme(),
4476
5025
  border: new BorderTheme(),
@@ -4479,14 +5028,12 @@ const defaultStackTheme = new ComponentTheme("div", "", {
4479
5028
  },
4480
5029
  appearance: {
4481
5030
  background: GenericVariantTheme.createLayoutBgAppearanceTheme(),
4482
- text: GenericVariantTheme.createUIElementTextTheme(),
5031
+ text: GenericVariantTheme.createUIElementTextThemeIgnoreTransparent(),
4483
5032
  border: GenericVariantTheme.createUIElementBorderTheme(),
4484
5033
  ring: GenericVariantTheme.createUIElementRingTheme(),
4485
5034
  shadow: GenericVariantTheme.createLayoutShadowTheme(),
4486
5035
  }
4487
- }, themeDefaults.stack, STACK_CATEGORIES, (props) => {
4488
- return props.href ? "a" : "div";
4489
- });
5036
+ }, themeDefaults.stack, STACK_CATEGORIES);
4490
5037
 
4491
5038
  const defaultSectionTheme = new ComponentTheme("div", "w-full flex-col", {
4492
5039
  size: {
@@ -4509,22 +5056,20 @@ const defaultSectionTheme = new ComponentTheme("div", "w-full flex-col", {
4509
5056
  },
4510
5057
  appearance: {
4511
5058
  background: GenericVariantTheme.createLayoutBgAppearanceTheme(),
4512
- text: GenericVariantTheme.createUIElementTextTheme(),
5059
+ text: GenericVariantTheme.createUIElementTextThemeIgnoreTransparent(),
4513
5060
  border: GenericVariantTheme.createUIElementBorderTheme(),
4514
5061
  ring: GenericVariantTheme.createUIElementRingTheme(),
4515
5062
  shadow: ShadowAppearanceTheme.createLayoutTheme(),
4516
5063
  },
4517
5064
  layout: {
4518
- ...defaultLayoutTheme,
5065
+ ...defaultLayoutsThemes,
4519
5066
  wrap: new WrapTheme(),
4520
5067
  direction: new DirectionTheme(),
4521
5068
  border: new BorderTheme(),
4522
5069
  ring: new RingTheme(),
4523
5070
  radius: RadiusTheme.createLayoutTheme(),
4524
5071
  },
4525
- }, themeDefaults.section, SECTION_CATEGORIES, (props) => {
4526
- return props.href ? "a" : "div";
4527
- });
5072
+ }, themeDefaults.section, SECTION_CATEGORIES);
4528
5073
 
4529
5074
  const gridSubThemes = {
4530
5075
  size: {
@@ -4538,23 +5083,19 @@ const gridSubThemes = {
4538
5083
  },
4539
5084
  appearance: {
4540
5085
  background: GenericVariantTheme.createLayoutBgAppearanceTheme(),
4541
- text: GenericVariantTheme.createUIElementTextTheme(),
5086
+ text: GenericVariantTheme.createUIElementTextThemeIgnoreTransparent(),
4542
5087
  },
4543
5088
  layout: {
4544
- ...defaultLayoutTheme,
5089
+ ...defaultLayoutsThemes,
4545
5090
  wrap: new WrapTheme(),
4546
5091
  flexDirection: new DirectionTheme(),
4547
5092
  },
4548
5093
  };
4549
- const defaultGrid2Theme = new ComponentTheme("div", "grid-cols-1 md:grid-cols-2", gridSubThemes, themeDefaults.grid2, GRID_CATEGORIES, (props) => {
4550
- return props.href ? "a" : "div";
4551
- });
4552
- const defaultGrid3Theme = new ComponentTheme("div", "grid-cols-1 md:grid-cols-3", gridSubThemes, themeDefaults.grid3, GRID_CATEGORIES, (props) => {
4553
- return props.href ? "a" : "div";
4554
- });
4555
- const defaultGrid4Theme = new ComponentTheme("div", "grid-cols-1 sm:grid-cols-2 lg:grid-cols-4", gridSubThemes, themeDefaults.grid4, GRID_CATEGORIES, (props) => {
4556
- return props.href ? "a" : "div";
4557
- });
5094
+ const defaultGrid2Theme = new ComponentTheme("div", "grid-cols-1 md:grid-cols-2", gridSubThemes, themeDefaults.grid2, GRID_CATEGORIES);
5095
+ const defaultGrid3Theme = new ComponentTheme("div", "grid-cols-1 md:grid-cols-3", gridSubThemes, themeDefaults.grid3, GRID_CATEGORIES);
5096
+ const defaultGrid4Theme = new ComponentTheme("div", "grid-cols-1 sm:grid-cols-2 lg:grid-cols-4", gridSubThemes, themeDefaults.grid4, GRID_CATEGORIES);
5097
+ const defaultGrid5Theme = new ComponentTheme("div", "grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-5", gridSubThemes, themeDefaults.grid5, GRID_CATEGORIES);
5098
+ const defaultGrid6Theme = new ComponentTheme("div", "grid-cols-1 sm:grid-cols-2 md:grid-cols-4 lg:grid-cols-6", gridSubThemes, themeDefaults.grid6, GRID_CATEGORIES);
4558
5099
 
4559
5100
  var _a, _b, _c;
4560
5101
  const defaultCheckboxTheme = new ComponentTheme("input", "peer col-start-1 row-start-1 cursor-pointer appearance-none ring-transparent", {
@@ -4569,15 +5110,16 @@ const defaultCheckboxTheme = new ComponentTheme("input", "peer col-start-1 row-s
4569
5110
  text: new SizeTheme(textSizeClasses)
4570
5111
  },
4571
5112
  layout: {
4572
- ...defaultLayoutTheme,
5113
+ ...defaultLayoutsThemes,
4573
5114
  border: new BorderTheme(),
4574
5115
  ring: new RingTheme(),
5116
+ focusVisible: new FocusVisibleTheme(),
4575
5117
  radius: RadiusTheme.createUITheme({
4576
- xs: 'rounded-(--ui-border-radius-xs)',
4577
- sm: 'rounded-(--ui-border-radius-xs)',
4578
- md: 'rounded-(--ui-border-radius-sm)',
4579
- lg: 'rounded-(--ui-border-radius-sm)',
4580
- xl: 'rounded-(--ui-border-radius-md)'
5118
+ xs: 'rounded-(--ui-br-xs)',
5119
+ sm: 'rounded-(--ui-br-xs)',
5120
+ md: 'rounded-(--ui-br-sm)',
5121
+ lg: 'rounded-(--ui-br-sm)',
5122
+ xl: 'rounded-(--ui-br-md)'
4581
5123
  }),
4582
5124
  },
4583
5125
  appearance: {
@@ -4585,6 +5127,7 @@ const defaultCheckboxTheme = new ComponentTheme("input", "peer col-start-1 row-s
4585
5127
  border: GenericVariantTheme.createUIElementBorderTheme(),
4586
5128
  background: GenericVariantTheme.createCheckboxBgAppearanceTheme(),
4587
5129
  ring: GenericVariantTheme.createUIElementRingTheme(),
5130
+ focusVisible: GenericVariantTheme.createUIElementFocusVisibleTheme(),
4588
5131
  check: GenericVariantTheme.createCheckedAppearanceTheme(),
4589
5132
  shadow: GenericVariantTheme.createUIElementShadowTheme(),
4590
5133
  }
@@ -4592,9 +5135,13 @@ const defaultCheckboxTheme = new ComponentTheme("input", "peer col-start-1 row-s
4592
5135
  const defaultCheckTheme = new ComponentTheme("span", "invisible col-start-1 row-start-1 peer-checked:visible", {
4593
5136
  checkElement: () => jsx("svg", { viewBox: "0 0 14 14", fill: "none", children: jsx("path", { d: "M3 8L6 11L11 3.5", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", fill: "none", stroke: "currentColor" }) }),
4594
5137
  appearance: {
4595
- color: GenericVariantTheme.createUIElementTextTheme()
5138
+ color: GenericVariantTheme.createUIElementTextThemeIgnoreTransparent(),
5139
+ focusVisible: GenericVariantTheme.createUIElementFocusVisibleTheme()
5140
+ },
5141
+ layout: {
5142
+ ...defaultLayoutsThemes,
5143
+ focusVisible: new FocusVisibleTheme()
4596
5144
  },
4597
- layout: defaultLayoutTheme,
4598
5145
  }, ((_b = themeDefaults.checkbox) === null || _b === void 0 ? void 0 : _b.check) || {}, CHECKBOX_CATEGORIES);
4599
5146
  const defaultCheckboxWrapperTheme = new ComponentTheme("span", "", {
4600
5147
  size: {
@@ -4606,9 +5153,13 @@ const defaultCheckboxWrapperTheme = new ComponentTheme("span", "", {
4606
5153
  xl: 'h-7'
4607
5154
  })
4608
5155
  },
4609
- layout: defaultLayoutTheme,
5156
+ layout: {
5157
+ ...defaultLayoutsThemes,
5158
+ focusVisible: new FocusVisibleTheme()
5159
+ },
4610
5160
  appearance: {
4611
- variant: GenericVariantTheme.createSimpleUIElementBgAppearanceTheme()
5161
+ variant: GenericVariantTheme.createSimpleUIElementBgAppearanceTheme(),
5162
+ focusVisible: GenericVariantTheme.createUIElementFocusVisibleTheme()
4612
5163
  }
4613
5164
  }, ((_c = themeDefaults.checkbox) === null || _c === void 0 ? void 0 : _c.wrapper) || {}, CHECKBOX_CATEGORIES);
4614
5165
 
@@ -4618,11 +5169,11 @@ const defaultLabelTheme = new ComponentTheme("label", "has-[input]:cursor-pointe
4618
5169
  gap: new GapTheme({ xs: 'gap-1.5', sm: 'gap-2', md: 'gap-2.5', lg: 'gap-3', xl: 'gap-3' }),
4619
5170
  },
4620
5171
  appearance: {
4621
- text: GenericVariantTheme.createUIElementTextTheme(),
5172
+ text: GenericVariantTheme.createTypographyTextTheme(),
4622
5173
  },
4623
- typography: defaultTypographyTheme,
5174
+ typography: defaultTypographyThemes,
4624
5175
  layout: {
4625
- ...defaultLayoutTheme,
5176
+ ...defaultLayoutsThemes,
4626
5177
  wrap: new WrapTheme(),
4627
5178
  flexDirection: new DirectionTheme(),
4628
5179
  },
@@ -4631,18 +5182,48 @@ const defaultLabelTheme = new ComponentTheme("label", "has-[input]:cursor-pointe
4631
5182
  const defaultImgTheme = new ComponentTheme("img", "object-cover", // Default to cover for better image display
4632
5183
  {
4633
5184
  layout: {
4634
- ...defaultLayoutTheme,
5185
+ ...defaultLayoutsThemes,
4635
5186
  border: new BorderTheme(),
4636
5187
  ring: new RingTheme(),
5188
+ focusVisible: new FocusVisibleTheme(),
4637
5189
  radius: RadiusTheme.createLayoutTheme(),
4638
5190
  },
4639
5191
  appearance: {
5192
+ background: GenericVariantTheme.createSimpleUIElementBgAppearanceTheme(),
4640
5193
  border: GenericVariantTheme.createUIElementBorderTheme(),
4641
5194
  ring: GenericVariantTheme.createUIElementRingTheme(),
5195
+ focusVisible: GenericVariantTheme.createUIElementFocusVisibleTheme(),
4642
5196
  shadow: GenericVariantTheme.createLayoutShadowTheme()
4643
5197
  }
4644
5198
  }, themeDefaults.img, IMG_CATEGORIES);
4645
5199
 
5200
+ const defaultInputTheme = new ComponentTheme("input", "w-full transition-all duration-200", {
5201
+ size: {
5202
+ px: new PxTheme({ xs: 'px-2', sm: 'px-3', md: 'px-4', lg: 'px-5', xl: 'px-6', }),
5203
+ py: new PyTheme({ xs: 'py-1', sm: 'py-1.5', md: 'py-2', lg: 'py-2.5', xl: 'py-3' }),
5204
+ gap: new GapTheme({ xs: 'gap-1', sm: 'gap-1.5', md: 'gap-2', lg: 'gap-2.5', xl: 'gap-3' }),
5205
+ text: new SizeTheme({ xs: 'text-xs', sm: 'text-sm', md: 'text-base', lg: 'text-lg', xl: 'text-xl' }),
5206
+ },
5207
+ appearance: {
5208
+ background: GenericVariantTheme.createSimpleUIElementBgAppearanceTheme(),
5209
+ text: GenericVariantTheme.createUIElementTextThemeIgnoreTransparent(),
5210
+ border: GenericVariantTheme.createUIElementBorderTheme(),
5211
+ ring: GenericVariantTheme.createUIElementRingTheme(),
5212
+ focusVisible: GenericVariantTheme.createUIElementFocusVisibleTheme(),
5213
+ shadow: GenericVariantTheme.createUIElementShadowTheme()
5214
+ },
5215
+ layout: {
5216
+ ...defaultLayoutsThemes,
5217
+ border: new BorderTheme(),
5218
+ ring: new RingTheme(),
5219
+ focusVisible: new FocusVisibleTheme(),
5220
+ radius: RadiusTheme.createUITheme(),
5221
+ wrap: new WrapTheme(),
5222
+ flexDirection: new DirectionTheme(),
5223
+ },
5224
+ typography: defaultTypographyThemes,
5225
+ }, themeDefaults.input, INPUT_CATEGORIES, () => "input");
5226
+
4646
5227
  const defaultTheme = {
4647
5228
  button: defaultButtonTheme,
4648
5229
  badge: defaultBadgeTheme,
@@ -4658,6 +5239,8 @@ const defaultTheme = {
4658
5239
  grid2: defaultGrid2Theme,
4659
5240
  grid3: defaultGrid3Theme,
4660
5241
  grid4: defaultGrid4Theme,
5242
+ grid5: defaultGrid5Theme,
5243
+ grid6: defaultGrid6Theme,
4661
5244
  pageTitle: pageTitleTheme,
4662
5245
  sectionTitle: sectionTitleTheme,
4663
5246
  title: titleTheme,
@@ -4672,6 +5255,7 @@ const defaultTheme = {
4672
5255
  },
4673
5256
  label: defaultLabelTheme,
4674
5257
  img: defaultImgTheme,
5258
+ input: defaultInputTheme,
4675
5259
  };
4676
5260
  /**
4677
5261
  * Recursively applies defaults to theme objects while preserving structure.
@@ -4847,6 +5431,11 @@ const Img = forwardRef(function Img(props, ref) {
4847
5431
  return (jsx(ThemedComponent, { theme: theme.img, ref: ref, ...props }));
4848
5432
  });
4849
5433
 
5434
+ const Input = forwardRef(function Input(props, ref) {
5435
+ const theme = useTheme();
5436
+ return jsx(ThemedComponent, { ref: ref, theme: theme.input, ...props });
5437
+ });
5438
+
4850
5439
  const Section = forwardRef(function Section(props, ref) {
4851
5440
  const theme = useTheme();
4852
5441
  return jsx(ThemedComponent, { theme: theme.section, ref: ref, ...props });
@@ -4879,6 +5468,14 @@ const Grid4 = forwardRef(function Grid4(props, ref) {
4879
5468
  const theme = useTheme();
4880
5469
  return jsx(ThemedComponent, { theme: theme.grid4, ref: ref, ...props });
4881
5470
  });
5471
+ const Grid5 = forwardRef(function Grid5(props, ref) {
5472
+ const theme = useTheme();
5473
+ return jsx(ThemedComponent, { theme: theme.grid5, ref: ref, ...props });
5474
+ });
5475
+ const Grid6 = forwardRef(function Grid6(props, ref) {
5476
+ const theme = useTheme();
5477
+ return jsx(ThemedComponent, { theme: theme.grid6, ref: ref, ...props });
5478
+ });
4882
5479
 
4883
5480
  const Card = forwardRef(function Card(props, ref) {
4884
5481
  const theme = useTheme();
@@ -4920,5 +5517,5 @@ const List = forwardRef(function List(props, ref) {
4920
5517
  return jsx(ThemedComponent, { ref: ref, theme: theme.list, ...props });
4921
5518
  });
4922
5519
 
4923
- export { APPEARANCE_CATEGORY, BADGE_CATEGORIES, BREAKPOINT, BUTTON_CATEGORIES, Badge, Button, CARD_CATEGORIES, CHECKBOX_CATEGORIES, CHIP_CATEGORIES, CODE_CATEGORIES, COL_CATEGORIES, COMPONENT, COMPONENT_PROPS_CATEGORY, CONTAINER_CATEGORIES, Card, Checkbox, Chip, Code, Col, ComponentCategories, ComponentKeys, Container, DIVIDER_CATEGORIES, Divider, GRID_CATEGORIES, Grid2, Grid3, Grid4, IMG_CATEGORIES, INTERACTIVE_CATEGORIES, Img, LABEL_CATEGORIES, LAYOUT_CORE, LAYOUT_FLEX, LAYOUT_FULL, LIST_CATEGORIES, LIST_STYLE, Label, Link, List, ListItem, PADDING, PageTitle, ROW_CATEGORIES, Row, SECTION_CATEGORIES, SHAPE, STACK_CATEGORIES, Section, SectionTitle, Stack, TYPOGRAPHY_CATEGORIES, TYPOGRAPHY_FULL, TYPOGRAPHY_STYLE, Text, ThemeProvider, Title, VARIANT, VISUAL_CORE, VISUAL_DECORATION, VISUAL_FULL, defaultTheme, themeDefaults, useTheme };
5520
+ export { ABSOLUTE, ACCENT, ACTIVE, APPEARANCE_CATEGORY, APPEARANCE_VALUES, BADGE_CATEGORIES, BASE, BLACK, BLOCK, BOLD, BORDER, BORDER_VALUES, BREAKPOINT, BREAKPOINT_VALUES, BUTTON_CATEGORIES, Badge, Button, CAPITALIZE, CARD_CATEGORIES, CHECKBOX_CATEGORIES, CHIP_CATEGORIES, CODE_CATEGORIES, COLUMN, COLUMN_REVERSE, COL_CATEGORIES, COMPONENT, COMPONENT_PROPS_CATEGORY, CONTAINER_CATEGORIES, CONTENTS, Card, Checkbox, Chip, Code, Col, ComponentCategories, ComponentKeys, Container, DANGER, DECIMAL, DEFAULT, DISC, DISPLAY_VALUES, DIVIDER_CATEGORIES, Divider, EXTRABOLD, EXTRALIGHT, FILLED, FIXED, FLEX, FLEX_DIRECTION_VALUES, FLEX_NO_WRAP, FLEX_WRAP, FLEX_WRAP_REVERSE, FOCUS, FOCUS_VISIBLE, FOCUS_VISIBLE_OUTLINE, FOCUS_VISIBLE_VALUES, FONT_FAMILY_VALUES, FONT_STYLE_VALUES, FONT_WEIGHT_VALUES, GAP, GAP_VALUES, GRID, GRID_CATEGORIES, Grid2, Grid3, Grid4, Grid5, Grid6, HIDDEN, HIDE_VALUES, HOVER, IMG_CATEGORIES, INFO, INLINE, INLINE_BLOCK, INLINE_FLEX, INLINE_GRID, INPUT_CATEGORIES, INTERACTIVE_CATEGORIES, ITALIC, ITEMS_BASELINE, ITEMS_CENTER, ITEMS_END, ITEMS_START, ITEMS_STRETCH, ITEMS_VALUES, Img, Input, JUSTIFY_AROUND, JUSTIFY_BASELINE, JUSTIFY_BETWEEN, JUSTIFY_CENTER, JUSTIFY_END, JUSTIFY_EVENLY, JUSTIFY_START, JUSTIFY_STRETCH, JUSTIFY_VALUES, LABEL_CATEGORIES, LAYOUT_CORE, LAYOUT_FLEX, LAYOUT_FULL, LG, LG_COL, LG_HIDE, LIGHT, LINE_THROUGH, LINK, LIST_CATEGORIES, LIST_STYLE, LIST_STYLE_VALUES, LOWERCASE, Label, Link, List, ListItem, MD, MD_COL, MD_HIDE, MEDIUM, MODE_VALUES, MONO, ModeKeys, NORMAL, NORMAL_CASE, NOT_ITALIC, NO_BORDER, NO_FOCUS_VISIBLE_OUTLINE, NO_GAP, NO_PADDING, NO_RING, NO_SHADOW, NO_UNDERLINE, OUTLINE, OVERFLOW_AUTO, OVERFLOW_CLIP, OVERFLOW_HIDDEN, OVERFLOW_SCROLL, OVERFLOW_VALUES, OVERFLOW_VISIBLE, OVERFLOW_X_AUTO, OVERFLOW_X_CLIP, OVERFLOW_X_HIDDEN, OVERFLOW_X_SCROLL, OVERFLOW_X_VISIBLE, OVERFLOW_Y_AUTO, OVERFLOW_Y_CLIP, OVERFLOW_Y_HIDDEN, OVERFLOW_Y_SCROLL, OVERFLOW_Y_VISIBLE, OVERLINE, PADDING, PADDING_VALUES, PILL, POSITION_VALUES, PRIMARY, PageTitle, RELATIVE, REVERSE, REVERSE_VALUES, RING, RING_VALUES, ROUNDED, ROW, ROW_CATEGORIES, ROW_REVERSE, Row, SANS, SECONDARY, SECTION_CATEGORIES, SEMIBOLD, SERIF, SHADOW, SHADOW_VALUES, SHAPE, SHAPE_VALUES, SHARP, SIZE_VALUES, SM, SM_COL, SM_HIDE, STACK_CATEGORIES, STATIC, STICKY, SUCCESS, Section, SectionTitle, Stack, TABLE, TABLE_CELL, TERTIARY, TEXT_ALIGN_VALUES, TEXT_CENTER, TEXT_DECORATION_VALUES, TEXT_JUSTIFY, TEXT_LEFT, TEXT_RIGHT, TEXT_TRANSFORM_VALUES, THIN, TRANSPARENT, TRANSPARENT_VALUES, TYPOGRAPHY_CATEGORIES, TYPOGRAPHY_FULL, TYPOGRAPHY_STYLE, Text, ThemeProvider, Title, UNDERLINE, UPPERCASE, VARIANT, VARIANT_VALUES, VISUAL_CORE, VISUAL_DECORATION, VISUAL_DECORATION_LAYOUT, VISUAL_FULL, VISUAL_LAYOUT, WARNING, WRAP_VALUES, XL, XL_COL, XL_HIDE, XS, XS_COL, XS_HIDE, defaultTheme, themeDefaults, useTheme };
4924
5521
  //# sourceMappingURL=index.esm.js.map