@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
@@ -0,0 +1,20 @@
1
+ /** Thin font weight - CSS font-weight: 100 */
2
+ export declare const THIN: "thin";
3
+ /** Extra light font weight - CSS font-weight: 200 */
4
+ export declare const EXTRALIGHT: "extralight";
5
+ /** Light font weight - CSS font-weight: 300 */
6
+ export declare const LIGHT: "light";
7
+ /** Normal font weight - CSS font-weight: 400 (default) */
8
+ export declare const NORMAL: "normal";
9
+ /** Medium font weight - CSS font-weight: 500 */
10
+ export declare const MEDIUM: "medium";
11
+ /** Semibold font weight - CSS font-weight: 600 */
12
+ export declare const SEMIBOLD: "semibold";
13
+ /** Bold font weight - CSS font-weight: 700 */
14
+ export declare const BOLD: "bold";
15
+ /** Extra bold font weight - CSS font-weight: 800 */
16
+ export declare const EXTRABOLD: "extrabold";
17
+ /** Black font weight - CSS font-weight: 900 (heaviest) */
18
+ export declare const BLACK: "black";
19
+ /** All font weight property values */
20
+ export declare const FONT_WEIGHT_VALUES: readonly ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black"];
@@ -0,0 +1,6 @@
1
+ /** Enable spacing between flex/grid items - uses size-responsive gap values */
2
+ export declare const GAP: "gap";
3
+ /** Disable spacing between flex/grid items - no gap applied */
4
+ export declare const NO_GAP: "noGap";
5
+ /** All gap property values */
6
+ export declare const GAP_VALUES: readonly ["gap", "noGap"];
@@ -0,0 +1,12 @@
1
+ /** Hide element on extra-small screens and up - visible only on mobile */
2
+ export declare const XS_HIDE: "xsHide";
3
+ /** Hide element on small screens and up - visible only on extra-small mobile */
4
+ export declare const SM_HIDE: "smHide";
5
+ /** Hide element on medium screens and up - visible only on small screens and below */
6
+ export declare const MD_HIDE: "mdHide";
7
+ /** Hide element on large screens and up - visible only on medium screens and below */
8
+ export declare const LG_HIDE: "lgHide";
9
+ /** Hide element on extra-large screens and up - visible only on large screens and below */
10
+ export declare const XL_HIDE: "xlHide";
11
+ /** All hide property values */
12
+ export declare const HIDE_VALUES: readonly ["xsHide", "smHide", "mdHide", "lgHide", "xlHide"];
@@ -0,0 +1,12 @@
1
+ /** Align items to the start of the cross axis */
2
+ export declare const ITEMS_START: "itemsStart";
3
+ /** Align items to the end of the cross axis */
4
+ export declare const ITEMS_END: "itemsEnd";
5
+ /** Center items along the cross axis */
6
+ export declare const ITEMS_CENTER: "itemsCenter";
7
+ /** Align items along their baseline */
8
+ export declare const ITEMS_BASELINE: "itemsBaseline";
9
+ /** Stretch items to fill the cross axis */
10
+ export declare const ITEMS_STRETCH: "itemsStretch";
11
+ /** All items property values */
12
+ export declare const ITEMS_VALUES: readonly ["itemsStart", "itemsEnd", "itemsCenter", "itemsBaseline", "itemsStretch"];
@@ -0,0 +1,18 @@
1
+ /** Pack items toward the start of the main axis */
2
+ export declare const JUSTIFY_START: "justifyStart";
3
+ /** Pack items toward the end of the main axis */
4
+ export declare const JUSTIFY_END: "justifyEnd";
5
+ /** Center items along the main axis */
6
+ export declare const JUSTIFY_CENTER: "justifyCenter";
7
+ /** Distribute items with space between them */
8
+ export declare const JUSTIFY_BETWEEN: "justifyBetween";
9
+ /** Distribute items with space around them */
10
+ export declare const JUSTIFY_AROUND: "justifyAround";
11
+ /** Distribute items with equal space around them */
12
+ export declare const JUSTIFY_EVENLY: "justifyEvenly";
13
+ /** Stretch items to fill the main axis */
14
+ export declare const JUSTIFY_STRETCH: "justifyStretch";
15
+ /** Align items along their baseline on main axis */
16
+ export declare const JUSTIFY_BASELINE: "justifyBaseline";
17
+ /** All justify property values */
18
+ export declare const JUSTIFY_VALUES: readonly ["justifyStart", "justifyEnd", "justifyCenter", "justifyBetween", "justifyAround", "justifyEvenly", "justifyStretch", "justifyBaseline"];
@@ -1,97 +1,224 @@
1
+ /** Core layout properties for positioning and sizing elements */
1
2
  export declare const LAYOUT_CORE: readonly ["size", "hide", "items", "justify", "position", "display", "overflow"];
3
+ /** Flexbox-specific layout properties for flex containers */
2
4
  export declare const LAYOUT_FLEX: readonly ["wrap", "gap", "flexDirection", "reverse"];
5
+ /** Padding properties for internal spacing control */
3
6
  export declare const PADDING: readonly ["padding"];
7
+ /** Responsive breakpoint properties for different screen sizes */
4
8
  export declare const BREAKPOINT: readonly ["breakpoint"];
9
+ /** Core visual properties including appearance colors and transparency */
5
10
  export declare const VISUAL_CORE: readonly ["appearance", "transparent"];
6
- export declare const VISUAL_DECORATION: readonly ["border", "shadow", "ring"];
11
+ /** Visual decoration properties for borders, shadows, and focus rings */
12
+ export declare const VISUAL_DECORATION: readonly ["border", "shadow", "ring", "focusVisible"];
13
+ /** Layout-specific visual decoration (excluding focusVisible for non-interactive elements) */
14
+ export declare const VISUAL_DECORATION_LAYOUT: readonly ["border", "shadow", "ring"];
15
+ /** Shape properties for border radius and corner rounding */
7
16
  export declare const SHAPE: readonly ["shape"];
17
+ /** Typography styling properties for text appearance and formatting */
8
18
  export declare const TYPOGRAPHY_STYLE: readonly ["fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign"];
19
+ /** List-specific styling properties for bullet points and numbering */
9
20
  export declare const LIST_STYLE: readonly ["listStyle"];
21
+ /** Variant properties for filled/outline styling modes */
10
22
  export declare const VARIANT: readonly ["variant"];
11
- export declare const COMPONENT_PROPS_CATEGORY: readonly ["appearance", "transparent", "wrap", "gap", "flexDirection", "reverse", "fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "listStyle", "size", "hide", "items", "justify", "position", "display", "overflow", "breakpoint", "padding", "border", "shadow", "ring", "shape", "variant", "mode"];
23
+ /** All available component property categories combined */
24
+ export declare const COMPONENT_PROPS_CATEGORY: readonly ["appearance", "transparent", "wrap", "gap", "flexDirection", "reverse", "fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "listStyle", "size", "hide", "items", "justify", "position", "display", "overflow", "breakpoint", "padding", "border", "shadow", "ring", "focusVisible", "shape", "variant"];
12
25
  /**
13
- * Describes what the @ComponentKeys.appearance can be applied to
26
+ * Describes category for which the appearance can be applied
14
27
  * @see ComponentKeys.appearance
15
28
  */
16
- export declare const APPEARANCE_CATEGORY: readonly ["text", "border", "ring", "shadow", "bg", "accent"];
29
+ export declare const APPEARANCE_CATEGORY: readonly ["text", "border", "ring", "shadow", "bg", "accent", "focusVisible"];
30
+ /** Type for appearance category keys used in theming */
17
31
  export type AppearanceCategoryKey = typeof APPEARANCE_CATEGORY[number];
32
+ /** Type for all component category keys */
18
33
  export type ComponentCategoryKey = typeof COMPONENT_PROPS_CATEGORY[number];
34
+ export * from './appearance';
35
+ export * from './border';
36
+ export * from './breakpoint';
37
+ export * from './display';
38
+ export * from './flexDirection';
39
+ export * from './fontFamily';
40
+ export * from './fontStyle';
41
+ export * from './fontWeight';
42
+ export * from './gap';
43
+ export * from './hide';
44
+ export * from './items';
45
+ export * from './justify';
46
+ export * from './listStyle';
47
+ export * from './mode';
48
+ export * from './overflow';
49
+ export * from './padding';
50
+ export * from './position';
51
+ export * from './reverse';
52
+ export * from './ring';
53
+ export * from './shadow';
54
+ export * from './focusVisible';
55
+ export * from './shape';
56
+ export * from './size';
57
+ export * from './textAlign';
58
+ export * from './textDecoration';
59
+ export * from './textTransform';
60
+ export * from './transparent';
61
+ export * from './variant';
62
+ export * from './wrap';
63
+ /** Component property keys mapping categories to their available values */
19
64
  export declare const ComponentKeys: {
65
+ /** Color appearance options */
20
66
  readonly appearance: readonly ["default", "accent", "primary", "secondary", "tertiary", "success", "danger", "warning", "info", "link"];
67
+ /** Border visibility: border (show) or noBorder (hide) */
21
68
  readonly border: readonly ["border", "noBorder"];
69
+ /** Column breakpoints for responsive grid layouts */
22
70
  readonly breakpoint: readonly ["xsCol", "smCol", "mdCol", "lgCol", "xlCol"];
71
+ /** CSS display property values for element layout behavior */
23
72
  readonly display: readonly ["inline", "block", "inlineBlock", "flex", "inlineFlex", "grid", "inlineGrid", "contents", "table", "tableCell", "hidden"];
73
+ /** Flex direction: row (horizontal), column (vertical), or reversed variants */
24
74
  readonly flexDirection: readonly ["row", "column", "rowReverse", "columnReverse"];
75
+ /** Font family types: sans-serif, serif, or monospace */
25
76
  readonly fontFamily: readonly ["sans", "serif", "mono"];
77
+ /** Font style: italic or notItalic (normal) */
26
78
  readonly fontStyle: readonly ["italic", "notItalic"];
79
+ /** Font weight from thin (100) to black (900) */
27
80
  readonly fontWeight: readonly ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black"];
81
+ /** Spacing between flex/grid items: gap (enabled) or noGap (disabled) */
28
82
  readonly gap: readonly ["gap", "noGap"];
83
+ /** Hide elements at specific breakpoint sizes */
29
84
  readonly hide: readonly ["xsHide", "smHide", "mdHide", "lgHide", "xlHide"];
85
+ /** Cross-axis alignment for flex items (align-items) */
30
86
  readonly items: readonly ["itemsStart", "itemsEnd", "itemsCenter", "itemsBaseline", "itemsStretch"];
87
+ /** Main-axis alignment for flex items (justify-content) */
31
88
  readonly justify: readonly ["justifyStart", "justifyEnd", "justifyCenter", "justifyBetween", "justifyAround", "justifyEvenly", "justifyStretch", "justifyBaseline"];
89
+ /** List bullet/numbering style: disc (bullets) or decimal (numbers) */
32
90
  readonly listStyle: readonly ["disc", "decimal"];
33
- readonly mode: readonly ["base", "hover", "active"];
91
+ /** Overflow behavior for content that exceeds container bounds */
34
92
  readonly overflow: readonly ["overflowAuto", "overflowHidden", "overflowClip", "overflowVisible", "overflowScroll", "overflowXAuto", "overflowYAuto", "overflowXHidden", "overflowYHidden", "overflowXClip", "overflowYClip", "overflowXVisible", "overflowYVisible", "overflowXScroll", "overflowYScroll"];
93
+ /** Internal spacing: padding (enabled) or noPadding (disabled) */
35
94
  readonly padding: readonly ["padding", "noPadding"];
95
+ /** CSS positioning: relative, absolute, fixed, sticky, static */
36
96
  readonly position: readonly ["relative", "absolute", "fixed", "sticky", "static"];
97
+ /** Reverse the order of flex items */
37
98
  readonly reverse: readonly ["reverse"];
99
+ /** Focus ring visibility: ring (show) or noRing (hide) */
38
100
  readonly ring: readonly ["ring", "noRing"];
101
+ /** Drop shadow visibility: shadow (enabled) or noShadow (disabled) */
39
102
  readonly shadow: readonly ["shadow", "noShadow"];
103
+ /** Focus-visible outline visibility: focusVisible (show) or noFocusVisible (hide) */
104
+ readonly focusVisible: readonly ["focusVisible", "noFocusVisible"];
105
+ /** Border radius shape: pill (fully rounded), sharp (no radius), rounded (medium radius) */
40
106
  readonly shape: readonly ["pill", "sharp", "rounded"];
107
+ /** Size scale from extra-small to extra-large */
41
108
  readonly size: readonly ["xs", "sm", "md", "lg", "xl"];
109
+ /** Text alignment: left, center, right, justify */
42
110
  readonly textAlign: readonly ["textLeft", "textCenter", "textRight", "textJustify"];
111
+ /** Text decoration: underline, strikethrough (lineThrough), none (noUnderline), overline */
43
112
  readonly textDecoration: readonly ["underline", "lineThrough", "noUnderline", "overline"];
113
+ /** Text case transformation: UPPERCASE, lowercase, Capitalize, normalCase */
44
114
  readonly textTransform: readonly ["uppercase", "lowercase", "capitalize", "normalCase"];
115
+ /** Make background (layout/UI) or text (typography) transparent */
45
116
  readonly transparent: readonly ["transparent"];
117
+ /** Style variant: filled (solid background) or outline (border only) */
46
118
  readonly variant: readonly ["filled", "outline"];
119
+ /** Flex item wrapping behavior: wrap, no-wrap, or wrap-reverse */
47
120
  readonly wrap: readonly ["flexWrap", "flexNoWrap", "flexWrapReverse"];
48
121
  };
49
- export type ModeKey = typeof ComponentKeys.mode[number];
122
+ /** Interaction state keys for component styling modes */
123
+ export type ModeKey = typeof import('./mode').ModeKeys.mode[number];
124
+ /** Size scale keys: xs, sm, md, lg, xl */
50
125
  export type SizeKey = typeof ComponentKeys.size[number];
126
+ /** Style variant keys: filled or outline */
51
127
  export type VariantKey = typeof ComponentKeys.variant[number];
128
+ /** Color appearance keys for semantic styling */
52
129
  export type AppearanceKey = typeof ComponentKeys.appearance[number];
130
+ /** Transparency key for making backgrounds or text transparent */
53
131
  export type TransparentKey = typeof ComponentKeys.transparent[number];
54
- export type LinkKey = 'link';
132
+ /** List style keys for bullet points and numbering */
55
133
  export type ListStyleKey = typeof ComponentKeys.listStyle[number];
134
+ /** Font family keys: sans, serif, mono */
56
135
  export type FontFamilyKey = typeof ComponentKeys.fontFamily[number];
136
+ /** Font weight keys from thin to black */
57
137
  export type FontWeightKey = typeof ComponentKeys.fontWeight[number];
138
+ /** Font style keys: italic or notItalic */
58
139
  export type FontStyleKey = typeof ComponentKeys.fontStyle[number];
140
+ /** Text decoration keys: underline, lineThrough, noUnderline, overline */
59
141
  export type TextDecorationKey = typeof ComponentKeys.textDecoration[number];
142
+ /** Text case transformation keys: uppercase, lowercase, capitalize, normalCase */
60
143
  export type TextTransformKey = typeof ComponentKeys.textTransform[number];
144
+ /** Text alignment keys: textLeft, textCenter, textRight, textJustify */
61
145
  export type TextAlignKey = typeof ComponentKeys.textAlign[number];
146
+ /** Responsive breakpoint column keys for grid layouts */
62
147
  export type BreakpointKey = typeof ComponentKeys.breakpoint[number];
148
+ /** Breakpoint-specific hide keys for responsive visibility */
63
149
  export type HideKey = typeof ComponentKeys.hide[number];
150
+ /** CSS position keys: relative, absolute, fixed, sticky, static */
64
151
  export type PositionKey = typeof ComponentKeys.position[number];
152
+ /** Flex direction keys: row, column, rowReverse, columnReverse */
65
153
  export type FlexDirectionKey = typeof ComponentKeys.flexDirection[number];
154
+ /** Flex align-items keys for cross-axis alignment */
66
155
  export type ItemsKey = typeof ComponentKeys.items[number];
156
+ /** Flex justify-content keys for main-axis alignment */
67
157
  export type JustifyKey = typeof ComponentKeys.justify[number];
158
+ /** Flex wrap keys: flexWrap, flexNoWrap, flexWrapReverse */
68
159
  export type WrapKey = typeof ComponentKeys.wrap[number];
160
+ /** CSS display property keys for layout behavior */
69
161
  export type DisplayKey = typeof ComponentKeys.display[number];
162
+ /** CSS overflow property keys for content clipping behavior */
70
163
  export type OverflowKey = typeof ComponentKeys.overflow[number];
164
+ /** Composite categories built from core blocks */
165
+ /** Complete layout category including core and flex properties */
71
166
  export declare const LAYOUT_FULL: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse"];
72
- export declare const VISUAL_FULL: readonly ["appearance", "transparent", "border", "shadow", "ring", "shape"];
167
+ /** Complete visual category including core, decoration, and shape properties */
168
+ export declare const VISUAL_FULL: readonly ["appearance", "transparent", "border", "shadow", "ring", "focusVisible", "shape"];
169
+ /** Layout-specific visual category (excludes focusVisible for non-interactive elements) */
170
+ export declare const VISUAL_LAYOUT: readonly ["appearance", "transparent", "border", "shadow", "ring", "shape"];
171
+ /** Complete typography category for text styling */
73
172
  export declare const TYPOGRAPHY_FULL: readonly ["fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign"];
74
- export declare const INTERACTIVE_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "border", "shadow", "ring", "shape", "fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "padding", "variant"];
75
- export declare const BUTTON_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "border", "shadow", "ring", "shape", "fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "padding", "variant"];
76
- export declare const BADGE_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "border", "shadow", "ring", "shape", "fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "padding", "variant"];
77
- export declare const CHIP_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "border", "shadow", "ring", "shape", "fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "padding", "variant"];
78
- export declare const CODE_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "border", "shadow", "ring", "shape", "fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "padding", "variant"];
173
+ /** Categories for interactive components like buttons, badges, chips */
174
+ export declare const INTERACTIVE_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "border", "shadow", "ring", "focusVisible", "shape", "fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "padding", "variant"];
175
+ /** Button component categories */
176
+ export declare const BUTTON_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "border", "shadow", "ring", "focusVisible", "shape", "fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "padding", "variant"];
177
+ /** Badge component categories */
178
+ export declare const BADGE_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "border", "shadow", "ring", "focusVisible", "shape", "fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "padding", "variant"];
179
+ /** Chip component categories */
180
+ export declare const CHIP_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "border", "shadow", "ring", "focusVisible", "shape", "fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "padding", "variant"];
181
+ /** Code component categories */
182
+ export declare const CODE_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "border", "shadow", "ring", "focusVisible", "shape", "fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "padding", "variant"];
183
+ /** Typography component categories */
184
+ /** Categories for typography components like Text, Title, Link */
79
185
  export declare const TYPOGRAPHY_CATEGORIES: readonly ["fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "size", "hide", "items", "justify", "position", "display", "overflow", "appearance", "transparent", "variant"];
186
+ /** Categories for list components with typography and list-specific styling */
80
187
  export declare const LIST_CATEGORIES: readonly ["fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "listStyle", "size", "hide", "items", "justify", "position", "display", "overflow", "appearance", "transparent", "padding", "variant"];
188
+ /** Layout component categories */
189
+ /** Categories for grid layout components */
81
190
  export declare const GRID_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "variant"];
191
+ /** Categories for container layout components */
82
192
  export declare const CONTAINER_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "border", "shadow", "ring", "shape", "variant"];
193
+ /** Categories for column layout components */
83
194
  export declare const COL_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "border", "shadow", "ring", "shape", "variant"];
195
+ /** Categories for row layout components with responsive breakpoints */
84
196
  export declare const ROW_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "breakpoint", "appearance", "transparent", "border", "shadow", "ring", "shape", "variant"];
197
+ /** Categories for stack layout components with responsive and padding support */
85
198
  export declare const STACK_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "breakpoint", "padding", "appearance", "transparent", "border", "shadow", "ring", "shape", "variant"];
199
+ /** Categories for card components with full typography and layout support */
86
200
  export declare const CARD_CATEGORIES: readonly ["fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "breakpoint", "appearance", "transparent", "border", "shadow", "ring", "shape", "padding", "variant"];
201
+ /** Categories for divider components with basic layout and visual properties */
87
202
  export declare const DIVIDER_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "appearance", "transparent", "padding"];
203
+ /** Categories for section layout components with full responsive support */
88
204
  export declare const SECTION_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "border", "shadow", "ring", "shape", "padding", "breakpoint", "variant"];
89
- export declare const CHECKBOX_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "appearance", "transparent", "border", "shadow", "ring", "shape", "variant"];
205
+ /** Form component categories */
206
+ /** Categories for checkbox form components */
207
+ export declare const CHECKBOX_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "appearance", "transparent", "border", "shadow", "ring", "focusVisible", "shape", "variant"];
208
+ /** Categories for label form components with typography support */
90
209
  export declare const LABEL_CATEGORIES: readonly ["fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "variant"];
91
- export declare const IMG_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "appearance", "transparent", "border", "shadow", "ring", "shape", "variant"];
210
+ /** Categories for input form components with interactive and form-specific properties */
211
+ export declare const INPUT_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "wrap", "gap", "flexDirection", "reverse", "appearance", "transparent", "border", "shadow", "ring", "focusVisible", "shape", "fontWeight", "fontStyle", "textDecoration", "textTransform", "fontFamily", "textAlign", "padding", "variant"];
212
+ /** Media component categories */
213
+ /** Categories for image media components */
214
+ export declare const IMG_CATEGORIES: readonly ["size", "hide", "items", "justify", "position", "display", "overflow", "appearance", "transparent", "border", "shadow", "ring", "focusVisible", "shape", "variant"];
215
+ /** Props type mapping category keys to their possible values */
92
216
  export type CategoryProps = {
93
217
  [K in ComponentCategoryKey]?: (typeof ComponentKeys)[K][number];
94
218
  };
95
- export declare const COMPONENT: readonly ["button", "badge", "chip", "code", "card", "divider", "container", "row", "col", "stack", "section", "grid2", "grid3", "grid4", "pageTitle", "sectionTitle", "title", "text", "link", "list", "listItem", "checkbox", "label", "img"];
219
+ /** All available component names in the library */
220
+ export declare const COMPONENT: readonly ["button", "badge", "chip", "code", "card", "divider", "container", "row", "col", "stack", "section", "grid2", "grid3", "grid4", "grid5", "grid6", "pageTitle", "sectionTitle", "title", "text", "link", "list", "listItem", "checkbox", "label", "img", "input"];
221
+ /** Type for component name keys */
96
222
  export type ComponentKey = typeof COMPONENT[number];
223
+ /** Mapping of each component to its available property categories */
97
224
  export declare const ComponentCategories: Record<ComponentKey, readonly string[]>;
@@ -0,0 +1,6 @@
1
+ /** Disc bullet points - circular bullets for list items */
2
+ export declare const DISC: "disc";
3
+ /** Decimal numbers - numbered list items (1, 2, 3...) */
4
+ export declare const DECIMAL: "decimal";
5
+ /** All list style property values */
6
+ export declare const LIST_STYLE_VALUES: readonly ["disc", "decimal"];
@@ -0,0 +1,21 @@
1
+ /** Base state - default resting appearance */
2
+ export declare const BASE: "base";
3
+ /** Hover state - appearance when cursor hovers over element */
4
+ export declare const HOVER: "hover";
5
+ /** Active state - appearance when element is being pressed/clicked */
6
+ export declare const ACTIVE: "active";
7
+ /** Focus state - appearance when element receives focus */
8
+ export declare const FOCUS: "focus";
9
+ /** Focus visible state - appearance when element has visible focus indicator */
10
+ export declare const FOCUS_VISIBLE: "focusVisible";
11
+ /** All mode property values */
12
+ export declare const MODE_VALUES: readonly ["base", "hover", "active", "focus", "focusVisible"];
13
+ /** Styling mode keys for different interaction states */
14
+ export declare const ModeKeys: {
15
+ /** Interaction states for styling: base, hover, active, focus, focusVisible */
16
+ readonly mode: readonly ["base", "hover", "active", "focus", "focusVisible"];
17
+ };
18
+ /** Type for mode keys */
19
+ export type ModeKey = typeof ModeKeys.mode[number];
20
+ /** Type for all mode category keys */
21
+ export type ModeCategoryKey = keyof typeof ModeKeys;
@@ -0,0 +1,32 @@
1
+ /** Auto overflow - show scrollbars if needed */
2
+ export declare const OVERFLOW_AUTO: "overflowAuto";
3
+ /** Hidden overflow - clip content without scrollbars */
4
+ export declare const OVERFLOW_HIDDEN: "overflowHidden";
5
+ /** Clip overflow - hard clip without scrollbars */
6
+ export declare const OVERFLOW_CLIP: "overflowClip";
7
+ /** Visible overflow - content extends beyond bounds */
8
+ export declare const OVERFLOW_VISIBLE: "overflowVisible";
9
+ /** Scroll overflow - always show scrollbars */
10
+ export declare const OVERFLOW_SCROLL: "overflowScroll";
11
+ /** Auto overflow on X-axis only */
12
+ export declare const OVERFLOW_X_AUTO: "overflowXAuto";
13
+ /** Auto overflow on Y-axis only */
14
+ export declare const OVERFLOW_Y_AUTO: "overflowYAuto";
15
+ /** Hidden overflow on X-axis only */
16
+ export declare const OVERFLOW_X_HIDDEN: "overflowXHidden";
17
+ /** Hidden overflow on Y-axis only */
18
+ export declare const OVERFLOW_Y_HIDDEN: "overflowYHidden";
19
+ /** Clip overflow on X-axis only */
20
+ export declare const OVERFLOW_X_CLIP: "overflowXClip";
21
+ /** Clip overflow on Y-axis only */
22
+ export declare const OVERFLOW_Y_CLIP: "overflowYClip";
23
+ /** Visible overflow on X-axis only */
24
+ export declare const OVERFLOW_X_VISIBLE: "overflowXVisible";
25
+ /** Visible overflow on Y-axis only */
26
+ export declare const OVERFLOW_Y_VISIBLE: "overflowYVisible";
27
+ /** Scroll overflow on X-axis only */
28
+ export declare const OVERFLOW_X_SCROLL: "overflowXScroll";
29
+ /** Scroll overflow on Y-axis only */
30
+ export declare const OVERFLOW_Y_SCROLL: "overflowYScroll";
31
+ /** All overflow property values */
32
+ export declare const OVERFLOW_VALUES: readonly ["overflowAuto", "overflowHidden", "overflowClip", "overflowVisible", "overflowScroll", "overflowXAuto", "overflowYAuto", "overflowXHidden", "overflowYHidden", "overflowXClip", "overflowYClip", "overflowXVisible", "overflowYVisible", "overflowXScroll", "overflowYScroll"];
@@ -0,0 +1,6 @@
1
+ /** Enable internal padding - uses size-responsive padding values */
2
+ export declare const PADDING: "padding";
3
+ /** Disable internal padding - no padding applied */
4
+ export declare const NO_PADDING: "noPadding";
5
+ /** All padding property values */
6
+ export declare const PADDING_VALUES: readonly ["padding", "noPadding"];
@@ -0,0 +1,12 @@
1
+ /** Relative positioning - offset from normal position */
2
+ export declare const RELATIVE: "relative";
3
+ /** Absolute positioning - removed from normal flow */
4
+ export declare const ABSOLUTE: "absolute";
5
+ /** Fixed positioning - positioned relative to viewport */
6
+ export declare const FIXED: "fixed";
7
+ /** Sticky positioning - toggles between relative and fixed */
8
+ export declare const STICKY: "sticky";
9
+ /** Static positioning - normal document flow (default) */
10
+ export declare const STATIC: "static";
11
+ /** All position property values */
12
+ export declare const POSITION_VALUES: readonly ["relative", "absolute", "fixed", "sticky", "static"];
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
- import { ComponentKeys, ComponentCategoryKey, BUTTON_CATEGORIES, BADGE_CATEGORIES, CHIP_CATEGORIES, CODE_CATEGORIES, GRID_CATEGORIES, ROW_CATEGORIES, COL_CATEGORIES, CARD_CATEGORIES, STACK_CATEGORIES, SECTION_CATEGORIES, DIVIDER_CATEGORIES, CONTAINER_CATEGORIES, TYPOGRAPHY_CATEGORIES, LIST_CATEGORIES, CHECKBOX_CATEGORIES, LABEL_CATEGORIES, IMG_CATEGORIES } from './keys';
2
+ import { ComponentKeys, ComponentCategoryKey, BUTTON_CATEGORIES, BADGE_CATEGORIES, CHIP_CATEGORIES, CODE_CATEGORIES, GRID_CATEGORIES, ROW_CATEGORIES, COL_CATEGORIES, CARD_CATEGORIES, STACK_CATEGORIES, SECTION_CATEGORIES, DIVIDER_CATEGORIES, CONTAINER_CATEGORIES, TYPOGRAPHY_CATEGORIES, LIST_CATEGORIES, CHECKBOX_CATEGORIES, LABEL_CATEGORIES, IMG_CATEGORIES, INPUT_CATEGORIES } from './keys';
3
3
  /**
4
4
  * Creates component props by extracting keys from categories and making them optional boolean properties.
5
5
  * Combines the functionality of FlattenKeysFromCategories and BooleanProps.
@@ -32,13 +32,27 @@ type TagOrHref<E extends React.ElementType, Own> = WithTag<E, Own> | LinkBranch<
32
32
  export type ButtonProps<E extends React.ElementType = "button"> = TagOrHref<E, Base & Cats<typeof BUTTON_CATEGORIES>>;
33
33
  export type BadgeProps<E extends React.ElementType = "span"> = TagOrHref<E, Base & Cats<typeof BADGE_CATEGORIES>>;
34
34
  export type ChipProps<E extends React.ElementType = "span"> = TagOrHref<E, Base & Cats<typeof CHIP_CATEGORIES>>;
35
- export type GridProps<E extends React.ElementType = "div"> = TagOrHref<E, Base & Cats<typeof GRID_CATEGORIES>>;
36
- export type RowProps<E extends React.ElementType = "div"> = TagOrHref<E, Base & Cats<typeof ROW_CATEGORIES>>;
37
- export type ColProps<E extends React.ElementType = "div"> = TagOrHref<E, Base & Cats<typeof COL_CATEGORIES>>;
38
- export type CardProps<E extends React.ElementType = "div"> = TagOrHref<E, Base & Cats<typeof CARD_CATEGORIES>>;
39
- export type StackProps<E extends React.ElementType = "div"> = TagOrHref<E, Base & Cats<typeof STACK_CATEGORIES>>;
40
- export type SectionProps<E extends React.ElementType = "div"> = TagOrHref<E, Base & Cats<typeof SECTION_CATEGORIES>>;
41
- export type ContainerProps<E extends React.ElementType = "div"> = TagOrHref<E, Base & Cats<typeof CONTAINER_CATEGORIES>>;
35
+ export type GridProps = (Base & React.HTMLAttributes<HTMLDivElement>) & Cats<typeof GRID_CATEGORIES> & {
36
+ tag?: React.ElementType;
37
+ };
38
+ export type RowProps = (Base & React.HTMLAttributes<HTMLDivElement>) & Cats<typeof ROW_CATEGORIES> & {
39
+ tag?: React.ElementType;
40
+ };
41
+ export type ColProps = (Base & React.HTMLAttributes<HTMLDivElement>) & Cats<typeof COL_CATEGORIES> & {
42
+ tag?: React.ElementType;
43
+ };
44
+ export type CardProps = (Base & React.HTMLAttributes<HTMLDivElement>) & Cats<typeof CARD_CATEGORIES> & {
45
+ tag?: React.ElementType;
46
+ };
47
+ export type StackProps = (Base & React.HTMLAttributes<HTMLDivElement>) & Cats<typeof STACK_CATEGORIES> & {
48
+ tag?: React.ElementType;
49
+ };
50
+ export type SectionProps = (Base & React.HTMLAttributes<HTMLDivElement>) & Cats<typeof SECTION_CATEGORIES> & {
51
+ tag?: React.ElementType;
52
+ };
53
+ export type ContainerProps = (Base & React.HTMLAttributes<HTMLDivElement>) & Cats<typeof CONTAINER_CATEGORIES> & {
54
+ tag?: React.ElementType;
55
+ };
42
56
  export type TypographyProps<E extends React.ElementType = "span"> = TagOrHref<E, Base & Cats<typeof TYPOGRAPHY_CATEGORIES>>;
43
57
  export type DividerProps = (Base & React.HTMLAttributes<HTMLDivElement>) & Cats<typeof DIVIDER_CATEGORIES> & {
44
58
  tag?: React.ElementType;
@@ -58,4 +72,7 @@ export type LabelProps = (Base & React.LabelHTMLAttributes<HTMLLabelElement>) &
58
72
  export type ImgProps = (Base & React.ImgHTMLAttributes<HTMLImageElement>) & Cats<typeof IMG_CATEGORIES> & {
59
73
  tag?: React.ElementType;
60
74
  };
75
+ export type InputProps = (Base & React.InputHTMLAttributes<HTMLInputElement>) & Cats<typeof INPUT_CATEGORIES> & {
76
+ tag?: React.ElementType;
77
+ };
61
78
  export {};
@@ -0,0 +1,4 @@
1
+ /** Reverse flex direction - converts row to row-reverse or column to column-reverse */
2
+ export declare const REVERSE: "reverse";
3
+ /** All reverse property values */
4
+ export declare const REVERSE_VALUES: readonly ["reverse"];
@@ -0,0 +1,6 @@
1
+ /** Show ring - adds decorative ring/outline border around element */
2
+ export declare const RING: "ring";
3
+ /** Hide ring - removes ring/outline border styling */
4
+ export declare const NO_RING: "noRing";
5
+ /** All ring property values */
6
+ export declare const RING_VALUES: readonly ["ring", "noRing"];
@@ -0,0 +1,6 @@
1
+ /** Enable drop shadow - adds size-responsive shadow styling */
2
+ export declare const SHADOW: "shadow";
3
+ /** Disable drop shadow - removes all shadow styling */
4
+ export declare const NO_SHADOW: "noShadow";
5
+ /** All shadow property values */
6
+ export declare const SHADOW_VALUES: readonly ["shadow", "noShadow"];
@@ -0,0 +1,8 @@
1
+ /** Pill shape - fully rounded corners (rounded-full) */
2
+ export declare const PILL: "pill";
3
+ /** Sharp shape - no border radius (rounded-none) */
4
+ export declare const SHARP: "sharp";
5
+ /** Rounded shape - size-responsive border radius (varies by component size) */
6
+ export declare const ROUNDED: "rounded";
7
+ /** All shape property values */
8
+ export declare const SHAPE_VALUES: readonly ["pill", "sharp", "rounded"];
@@ -0,0 +1,12 @@
1
+ /** Extra small size - affects padding, font-size, border-radius, and spacing */
2
+ export declare const XS: "xs";
3
+ /** Small size - affects padding, font-size, border-radius, and spacing */
4
+ export declare const SM: "sm";
5
+ /** Medium size (default) - affects padding, font-size, border-radius, and spacing */
6
+ export declare const MD: "md";
7
+ /** Large size - affects padding, font-size, border-radius, and spacing */
8
+ export declare const LG: "lg";
9
+ /** Extra large size - affects padding, font-size, border-radius, and spacing */
10
+ export declare const XL: "xl";
11
+ /** All size property values */
12
+ export declare const SIZE_VALUES: readonly ["xs", "sm", "md", "lg", "xl"];
@@ -0,0 +1,10 @@
1
+ /** Left-aligned text */
2
+ export declare const TEXT_LEFT: "textLeft";
3
+ /** Center-aligned text */
4
+ export declare const TEXT_CENTER: "textCenter";
5
+ /** Right-aligned text */
6
+ export declare const TEXT_RIGHT: "textRight";
7
+ /** Justified text */
8
+ export declare const TEXT_JUSTIFY: "textJustify";
9
+ /** All text align property values */
10
+ export declare const TEXT_ALIGN_VALUES: readonly ["textLeft", "textCenter", "textRight", "textJustify"];
@@ -0,0 +1,10 @@
1
+ /** Add underline decoration below text */
2
+ export declare const UNDERLINE: "underline";
3
+ /** Add strikethrough/line-through decoration across text */
4
+ export declare const LINE_THROUGH: "lineThrough";
5
+ /** Remove text decoration (no underline, strikethrough, etc.) */
6
+ export declare const NO_UNDERLINE: "noUnderline";
7
+ /** Add overline decoration above text */
8
+ export declare const OVERLINE: "overline";
9
+ /** All text decoration property values */
10
+ export declare const TEXT_DECORATION_VALUES: readonly ["underline", "lineThrough", "noUnderline", "overline"];
@@ -0,0 +1,10 @@
1
+ /** Transform text to UPPERCASE */
2
+ export declare const UPPERCASE: "uppercase";
3
+ /** Transform text to lowercase */
4
+ export declare const LOWERCASE: "lowercase";
5
+ /** Transform text to Capitalize Each Word */
6
+ export declare const CAPITALIZE: "capitalize";
7
+ /** Normal case - no transformation */
8
+ export declare const NORMAL_CASE: "normalCase";
9
+ /** All text transform property values */
10
+ export declare const TEXT_TRANSFORM_VALUES: readonly ["uppercase", "lowercase", "capitalize", "normalCase"];
@@ -0,0 +1,4 @@
1
+ /** Make background transparent for layout/UI components or text transparent for typography components */
2
+ export declare const TRANSPARENT: "transparent";
3
+ /** All transparent property values */
4
+ export declare const TRANSPARENT_VALUES: readonly ["transparent"];
@@ -0,0 +1,6 @@
1
+ /** Filled variant - solid background with contrasting text color */
2
+ export declare const FILLED: "filled";
3
+ /** Outline variant - transparent background with border and colored text (default) */
4
+ export declare const OUTLINE: "outline";
5
+ /** All variant property values */
6
+ export declare const VARIANT_VALUES: readonly ["filled", "outline"];
@@ -0,0 +1,8 @@
1
+ /** Allow flex items to wrap to new lines when container is too narrow */
2
+ export declare const FLEX_WRAP: "flexWrap";
3
+ /** Force flex items to stay on single line (may overflow) */
4
+ export declare const FLEX_NO_WRAP: "flexNoWrap";
5
+ /** Wrap flex items in reverse order (last items wrap first) */
6
+ export declare const FLEX_WRAP_REVERSE: "flexWrapReverse";
7
+ /** All wrap property values */
8
+ export declare const WRAP_VALUES: readonly ["flexWrap", "flexNoWrap", "flexWrapReverse"];