@cdx-ui/components 0.0.1-beta.4 → 0.0.1-beta.40
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.
- package/README.md +18 -11
- package/lib/commonjs/components/Avatar/index.js +1 -1
- package/lib/commonjs/components/Avatar/styles.js +36 -29
- package/lib/commonjs/components/Avatar/styles.js.map +1 -1
- package/lib/commonjs/components/Button/styles.js +2 -2
- package/lib/commonjs/components/Button/styles.js.map +1 -1
- package/lib/commonjs/components/CLAUDE.md +90 -0
- package/lib/commonjs/components/Card/index.js +22 -4
- package/lib/commonjs/components/Card/index.js.map +1 -1
- package/lib/commonjs/components/Card/styles.js +27 -5
- package/lib/commonjs/components/Card/styles.js.map +1 -1
- package/lib/commonjs/components/Checkbox/index.js +5 -29
- package/lib/commonjs/components/Checkbox/index.js.map +1 -1
- package/lib/commonjs/components/Checkbox/styles.js +39 -47
- package/lib/commonjs/components/Checkbox/styles.js.map +1 -1
- package/lib/commonjs/components/Chip/index.js +78 -9
- package/lib/commonjs/components/Chip/index.js.map +1 -1
- package/lib/commonjs/components/Chip/styles.js +207 -21
- package/lib/commonjs/components/Chip/styles.js.map +1 -1
- package/lib/commonjs/components/Field/index.js +8 -2
- package/lib/commonjs/components/Field/index.js.map +1 -1
- package/lib/commonjs/components/Field/styles.js +4 -4
- package/lib/commonjs/components/Field/styles.js.map +1 -1
- package/lib/commonjs/components/Heading/styles.js +1 -1
- package/lib/commonjs/components/Heading/styles.js.map +1 -1
- package/lib/commonjs/components/Icon/index.js +1 -2
- package/lib/commonjs/components/Icon/index.js.map +1 -1
- package/lib/commonjs/components/IconButton/index.js +6 -1
- package/lib/commonjs/components/IconButton/index.js.map +1 -1
- package/lib/commonjs/components/IconButton/styles.js +135 -10
- package/lib/commonjs/components/IconButton/styles.js.map +1 -1
- package/lib/commonjs/components/Input/styles.js +7 -6
- package/lib/commonjs/components/Input/styles.js.map +1 -1
- package/lib/commonjs/components/ListItem/index.js +283 -0
- package/lib/commonjs/components/ListItem/index.js.map +1 -0
- package/lib/commonjs/components/ListItem/styles.js +130 -0
- package/lib/commonjs/components/ListItem/styles.js.map +1 -0
- package/lib/commonjs/components/ProgressSegmented/index.js +22 -10
- package/lib/commonjs/components/ProgressSegmented/index.js.map +1 -1
- package/lib/commonjs/components/Radio/index.js +167 -0
- package/lib/commonjs/components/Radio/index.js.map +1 -0
- package/lib/commonjs/components/Radio/styles.js +31 -0
- package/lib/commonjs/components/Radio/styles.js.map +1 -0
- package/lib/commonjs/components/Text/styles.js +2 -2
- package/lib/commonjs/components/Text/styles.js.map +1 -1
- package/lib/commonjs/components/Tile/index.js +251 -0
- package/lib/commonjs/components/Tile/index.js.map +1 -0
- package/lib/commonjs/components/Tile/styles.js +52 -0
- package/lib/commonjs/components/Tile/styles.js.map +1 -0
- package/lib/commonjs/components/index.js +36 -0
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/figma/Avatar.figma.js +54 -0
- package/lib/commonjs/figma/Avatar.figma.js.map +1 -0
- package/lib/commonjs/figma/Button.figma.js +28 -11
- package/lib/commonjs/figma/Button.figma.js.map +1 -1
- package/lib/commonjs/figma/CLAUDE.md +30 -0
- package/lib/commonjs/figma/Card.Header.figma.js +28 -0
- package/lib/commonjs/figma/Card.Header.figma.js.map +1 -0
- package/lib/commonjs/figma/Card.figma.js +42 -0
- package/lib/commonjs/figma/Card.figma.js.map +1 -0
- package/lib/commonjs/figma/Checkbox.figma.js +55 -0
- package/lib/commonjs/figma/Checkbox.figma.js.map +1 -0
- package/lib/commonjs/figma/Chip.figma.js +68 -0
- package/lib/commonjs/figma/Chip.figma.js.map +1 -0
- package/lib/commonjs/figma/Field.Input.figma.js +57 -0
- package/lib/commonjs/figma/Field.Input.figma.js.map +1 -0
- package/lib/commonjs/figma/Field.Select.figma.js +57 -0
- package/lib/commonjs/figma/Field.Select.figma.js.map +1 -0
- package/lib/commonjs/figma/Heading.figma.js +30 -0
- package/lib/commonjs/figma/Heading.figma.js.map +1 -0
- package/lib/commonjs/figma/Icon.figma.js +20 -0
- package/lib/commonjs/figma/Icon.figma.js.map +1 -0
- package/lib/commonjs/figma/IconButton.figma.js +47 -0
- package/lib/commonjs/figma/IconButton.figma.js.map +1 -0
- package/lib/commonjs/figma/Input.figma.js +52 -0
- package/lib/commonjs/figma/Input.figma.js.map +1 -0
- package/lib/commonjs/figma/ProgressSegmented.figma.js +39 -0
- package/lib/commonjs/figma/ProgressSegmented.figma.js.map +1 -0
- package/lib/commonjs/figma/Radio.figma.js +38 -0
- package/lib/commonjs/figma/Radio.figma.js.map +1 -0
- package/lib/commonjs/figma/Select.figma.js +53 -0
- package/lib/commonjs/figma/Select.figma.js.map +1 -0
- package/lib/commonjs/figma/Text.figma.js +29 -0
- package/lib/commonjs/figma/Text.figma.js.map +1 -0
- package/lib/commonjs/figma/icons.figma.batch.js +27 -0
- package/lib/commonjs/figma/icons.figma.batch.js.map +1 -0
- package/lib/commonjs/figma/icons.figma.batch.json +17705 -0
- package/lib/commonjs/styles/primitives.js +42 -5
- package/lib/commonjs/styles/primitives.js.map +1 -1
- package/lib/module/components/Avatar/index.js +1 -1
- package/lib/module/components/Avatar/styles.js +36 -29
- package/lib/module/components/Avatar/styles.js.map +1 -1
- package/lib/module/components/Button/styles.js +2 -2
- package/lib/module/components/Button/styles.js.map +1 -1
- package/lib/module/components/CLAUDE.md +90 -0
- package/lib/module/components/Card/index.js +23 -4
- package/lib/module/components/Card/index.js.map +1 -1
- package/lib/module/components/Card/styles.js +27 -5
- package/lib/module/components/Card/styles.js.map +1 -1
- package/lib/module/components/Checkbox/index.js +6 -30
- package/lib/module/components/Checkbox/index.js.map +1 -1
- package/lib/module/components/Checkbox/styles.js +40 -48
- package/lib/module/components/Checkbox/styles.js.map +1 -1
- package/lib/module/components/Chip/index.js +82 -13
- package/lib/module/components/Chip/index.js.map +1 -1
- package/lib/module/components/Chip/styles.js +206 -20
- package/lib/module/components/Chip/styles.js.map +1 -1
- package/lib/module/components/Field/index.js +9 -3
- package/lib/module/components/Field/index.js.map +1 -1
- package/lib/module/components/Field/styles.js +4 -4
- package/lib/module/components/Field/styles.js.map +1 -1
- package/lib/module/components/Heading/styles.js +1 -1
- package/lib/module/components/Heading/styles.js.map +1 -1
- package/lib/module/components/Icon/index.js +1 -2
- package/lib/module/components/Icon/index.js.map +1 -1
- package/lib/module/components/IconButton/index.js +6 -1
- package/lib/module/components/IconButton/index.js.map +1 -1
- package/lib/module/components/IconButton/styles.js +135 -10
- package/lib/module/components/IconButton/styles.js.map +1 -1
- package/lib/module/components/Input/styles.js +7 -6
- package/lib/module/components/Input/styles.js.map +1 -1
- package/lib/module/components/ListItem/index.js +226 -0
- package/lib/module/components/ListItem/index.js.map +1 -0
- package/lib/module/components/ListItem/styles.js +127 -0
- package/lib/module/components/ListItem/styles.js.map +1 -0
- package/lib/module/components/ProgressSegmented/index.js +23 -11
- package/lib/module/components/ProgressSegmented/index.js.map +1 -1
- package/lib/module/components/Radio/index.js +164 -0
- package/lib/module/components/Radio/index.js.map +1 -0
- package/lib/module/components/Radio/styles.js +27 -0
- package/lib/module/components/Radio/styles.js.map +1 -0
- package/lib/module/components/Text/styles.js +2 -2
- package/lib/module/components/Text/styles.js.map +1 -1
- package/lib/module/components/Tile/index.js +243 -0
- package/lib/module/components/Tile/index.js.map +1 -0
- package/lib/module/components/Tile/styles.js +48 -0
- package/lib/module/components/Tile/styles.js.map +1 -0
- package/lib/module/components/index.js +3 -0
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/figma/Avatar.figma.js +48 -0
- package/lib/module/figma/Avatar.figma.js.map +1 -0
- package/lib/module/figma/Button.figma.js +28 -11
- package/lib/module/figma/Button.figma.js.map +1 -1
- package/lib/module/figma/CLAUDE.md +30 -0
- package/lib/module/figma/Card.Header.figma.js +22 -0
- package/lib/module/figma/Card.Header.figma.js.map +1 -0
- package/lib/module/figma/Card.figma.js +36 -0
- package/lib/module/figma/Card.figma.js.map +1 -0
- package/lib/module/figma/Checkbox.figma.js +49 -0
- package/lib/module/figma/Checkbox.figma.js.map +1 -0
- package/lib/module/figma/Chip.figma.js +62 -0
- package/lib/module/figma/Chip.figma.js.map +1 -0
- package/lib/module/figma/Field.Input.figma.js +51 -0
- package/lib/module/figma/Field.Input.figma.js.map +1 -0
- package/lib/module/figma/Field.Select.figma.js +51 -0
- package/lib/module/figma/Field.Select.figma.js.map +1 -0
- package/lib/module/figma/Heading.figma.js +24 -0
- package/lib/module/figma/Heading.figma.js.map +1 -0
- package/lib/module/figma/Icon.figma.js +14 -0
- package/lib/module/figma/Icon.figma.js.map +1 -0
- package/lib/module/figma/IconButton.figma.js +41 -0
- package/lib/module/figma/IconButton.figma.js.map +1 -0
- package/lib/module/figma/Input.figma.js +46 -0
- package/lib/module/figma/Input.figma.js.map +1 -0
- package/lib/module/figma/ProgressSegmented.figma.js +33 -0
- package/lib/module/figma/ProgressSegmented.figma.js.map +1 -0
- package/lib/module/figma/Radio.figma.js +32 -0
- package/lib/module/figma/Radio.figma.js.map +1 -0
- package/lib/module/figma/Select.figma.js +47 -0
- package/lib/module/figma/Select.figma.js.map +1 -0
- package/lib/module/figma/Text.figma.js +23 -0
- package/lib/module/figma/Text.figma.js.map +1 -0
- package/lib/module/figma/icons.figma.batch.js +22 -0
- package/lib/module/figma/icons.figma.batch.js.map +1 -0
- package/lib/module/figma/icons.figma.batch.json +17705 -0
- package/lib/module/styles/primitives.js +42 -5
- package/lib/module/styles/primitives.js.map +1 -1
- package/lib/typescript/components/Avatar/styles.d.ts +4 -4
- package/lib/typescript/components/Avatar/styles.d.ts.map +1 -1
- package/lib/typescript/components/Card/index.d.ts +4 -3
- package/lib/typescript/components/Card/index.d.ts.map +1 -1
- package/lib/typescript/components/Card/styles.d.ts +13 -3
- package/lib/typescript/components/Card/styles.d.ts.map +1 -1
- package/lib/typescript/components/Checkbox/index.d.ts +1 -2
- package/lib/typescript/components/Checkbox/index.d.ts.map +1 -1
- package/lib/typescript/components/Checkbox/styles.d.ts +4 -14
- package/lib/typescript/components/Checkbox/styles.d.ts.map +1 -1
- package/lib/typescript/components/Chip/index.d.ts +19 -6
- package/lib/typescript/components/Chip/index.d.ts.map +1 -1
- package/lib/typescript/components/Chip/styles.d.ts +13 -4
- package/lib/typescript/components/Chip/styles.d.ts.map +1 -1
- package/lib/typescript/components/Field/FieldLabel.web.d.ts +2 -2
- package/lib/typescript/components/Field/FieldLabel.web.d.ts.map +1 -1
- package/lib/typescript/components/Field/index.d.ts.map +1 -1
- package/lib/typescript/components/Field/styles.d.ts.map +1 -1
- package/lib/typescript/components/Heading/styles.d.ts +1 -1
- package/lib/typescript/components/Icon/index.d.ts.map +1 -1
- package/lib/typescript/components/IconButton/index.d.ts.map +1 -1
- package/lib/typescript/components/IconButton/styles.d.ts +6 -2
- package/lib/typescript/components/IconButton/styles.d.ts.map +1 -1
- package/lib/typescript/components/Input/styles.d.ts.map +1 -1
- package/lib/typescript/components/ListItem/index.d.ts +49 -0
- package/lib/typescript/components/ListItem/index.d.ts.map +1 -0
- package/lib/typescript/components/ListItem/styles.d.ts +30 -0
- package/lib/typescript/components/ListItem/styles.d.ts.map +1 -0
- package/lib/typescript/components/ProgressSegmented/index.d.ts +14 -3
- package/lib/typescript/components/ProgressSegmented/index.d.ts.map +1 -1
- package/lib/typescript/components/Radio/index.d.ts +40 -0
- package/lib/typescript/components/Radio/index.d.ts.map +1 -0
- package/lib/typescript/components/Radio/styles.d.ts +8 -0
- package/lib/typescript/components/Radio/styles.d.ts.map +1 -0
- package/lib/typescript/components/Stack/styles.d.ts +2 -2
- package/lib/typescript/components/Text/styles.d.ts +1 -1
- package/lib/typescript/components/Tile/index.d.ts +70 -0
- package/lib/typescript/components/Tile/index.d.ts.map +1 -0
- package/lib/typescript/components/Tile/styles.d.ts +18 -0
- package/lib/typescript/components/Tile/styles.d.ts.map +1 -0
- package/lib/typescript/components/index.d.ts +3 -0
- package/lib/typescript/components/index.d.ts.map +1 -1
- package/lib/typescript/figma/Avatar.figma.d.ts +8 -0
- package/lib/typescript/figma/Avatar.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Button.figma.d.ts.map +1 -1
- package/lib/typescript/figma/Card.Header.figma.d.ts +8 -0
- package/lib/typescript/figma/Card.Header.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Card.figma.d.ts +8 -0
- package/lib/typescript/figma/Card.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Checkbox.figma.d.ts +8 -0
- package/lib/typescript/figma/Checkbox.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Chip.figma.d.ts +8 -0
- package/lib/typescript/figma/Chip.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Field.Input.figma.d.ts +8 -0
- package/lib/typescript/figma/Field.Input.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Field.Select.figma.d.ts +8 -0
- package/lib/typescript/figma/Field.Select.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Heading.figma.d.ts +8 -0
- package/lib/typescript/figma/Heading.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Icon.figma.d.ts +8 -0
- package/lib/typescript/figma/Icon.figma.d.ts.map +1 -0
- package/lib/typescript/figma/IconButton.figma.d.ts +8 -0
- package/lib/typescript/figma/IconButton.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Input.figma.d.ts +8 -0
- package/lib/typescript/figma/Input.figma.d.ts.map +1 -0
- package/lib/typescript/figma/ProgressSegmented.figma.d.ts +8 -0
- package/lib/typescript/figma/ProgressSegmented.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Radio.figma.d.ts +8 -0
- package/lib/typescript/figma/Radio.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Select.figma.d.ts +8 -0
- package/lib/typescript/figma/Select.figma.d.ts.map +1 -0
- package/lib/typescript/figma/Text.figma.d.ts +8 -0
- package/lib/typescript/figma/Text.figma.d.ts.map +1 -0
- package/lib/typescript/figma/icons.figma.batch.d.ts +14 -0
- package/lib/typescript/figma/icons.figma.batch.d.ts.map +1 -0
- package/lib/typescript/styles/primitives.d.ts +38 -0
- package/lib/typescript/styles/primitives.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/components/Avatar/index.tsx +1 -1
- package/src/components/Avatar/styles.ts +49 -34
- package/src/components/Button/styles.ts +2 -2
- package/src/components/CLAUDE.md +90 -0
- package/src/components/Card/index.tsx +41 -16
- package/src/components/Card/styles.ts +43 -23
- package/src/components/Checkbox/index.tsx +8 -19
- package/src/components/Checkbox/styles.ts +82 -86
- package/src/components/Chip/index.tsx +104 -27
- package/src/components/Chip/styles.ts +232 -18
- package/src/components/Field/FieldLabel.web.tsx +1 -1
- package/src/components/Field/index.tsx +10 -3
- package/src/components/Field/styles.ts +5 -4
- package/src/components/Heading/styles.ts +1 -1
- package/src/components/Icon/index.tsx +1 -2
- package/src/components/IconButton/index.tsx +3 -2
- package/src/components/IconButton/styles.ts +136 -10
- package/src/components/Input/styles.ts +14 -9
- package/src/components/ListItem/index.tsx +285 -0
- package/src/components/ListItem/styles.ts +153 -0
- package/src/components/ProgressSegmented/index.tsx +49 -14
- package/src/components/Radio/index.tsx +192 -0
- package/src/components/Radio/styles.ts +59 -0
- package/src/components/Text/styles.ts +2 -2
- package/src/components/Tile/index.tsx +296 -0
- package/src/components/Tile/styles.ts +82 -0
- package/src/components/index.ts +3 -0
- package/src/styles/primitives.ts +42 -5
|
@@ -9,36 +9,65 @@ exports.TRANSITION_COLORS = exports.SIZE_SCALE = exports.SHADOW_SM = exports.SHA
|
|
|
9
9
|
|
|
10
10
|
// ─── Colors ──────────────────────────────────────────────
|
|
11
11
|
// Surface & background
|
|
12
|
+
/** @deprecated Use `bg-surface-primary` (--color-surface-primary) instead. */
|
|
12
13
|
const COLOR_BG_PRIMARY = exports.COLOR_BG_PRIMARY = 'bg-white';
|
|
14
|
+
/** @deprecated Use `bg-surface-secondary` (--color-surface-secondary) instead. */
|
|
13
15
|
const COLOR_BG_SUBTLE = exports.COLOR_BG_SUBTLE = 'bg-slate-50';
|
|
16
|
+
/** @deprecated Use `bg-surface-neutral-subtle` (--color-surface-neutral-subtle) instead. */
|
|
14
17
|
const COLOR_BG_MUTED = exports.COLOR_BG_MUTED = 'bg-slate-100';
|
|
18
|
+
/** @deprecated Use `bg-base-950` (--color-base-950) instead. */
|
|
15
19
|
const COLOR_BG_INVERSE = exports.COLOR_BG_INVERSE = 'bg-slate-900';
|
|
16
20
|
|
|
17
21
|
// Border
|
|
22
|
+
/** @deprecated Use `border-stroke-secondary` (--color-stroke-secondary) instead. */
|
|
18
23
|
const COLOR_BORDER_DEFAULT = exports.COLOR_BORDER_DEFAULT = 'border-slate-200';
|
|
24
|
+
/** @deprecated Use `border-stroke-hover` (--color-stroke-hover) instead. */
|
|
19
25
|
const COLOR_BORDER_STRONG = exports.COLOR_BORDER_STRONG = 'border-slate-300';
|
|
26
|
+
/** @deprecated Use `border-stroke-focus` (--color-stroke-focus) instead. */
|
|
20
27
|
const COLOR_BORDER_FOCUS = exports.COLOR_BORDER_FOCUS = 'border-slate-900';
|
|
28
|
+
/** @deprecated Use `border-stroke-danger` (--color-stroke-danger) instead. */
|
|
21
29
|
const COLOR_BORDER_INVALID = exports.COLOR_BORDER_INVALID = 'border-red-500';
|
|
22
30
|
|
|
23
31
|
// Text
|
|
32
|
+
/** @deprecated Use `text-content-primary` (--color-content-primary) instead. */
|
|
24
33
|
const COLOR_TEXT_PRIMARY = exports.COLOR_TEXT_PRIMARY = 'text-slate-900';
|
|
34
|
+
/** @deprecated Use `text-content-secondary` (--color-content-secondary) instead. */
|
|
25
35
|
const COLOR_TEXT_SECONDARY = exports.COLOR_TEXT_SECONDARY = 'text-slate-500';
|
|
36
|
+
/** @deprecated Use `text-content-tertiary` (--color-content-tertiary) instead. */
|
|
26
37
|
const COLOR_TEXT_MUTED = exports.COLOR_TEXT_MUTED = 'text-slate-400';
|
|
38
|
+
/** @deprecated Use the appropriate `text-content-*-on-strong` token for the surface color, e.g. `text-content-action-on-strong` (--color-content-action-on-strong). */
|
|
27
39
|
const COLOR_TEXT_INVERSE = exports.COLOR_TEXT_INVERSE = 'text-white';
|
|
40
|
+
/** @deprecated Use `text-content-tertiary` (--color-content-tertiary) instead. */
|
|
28
41
|
const COLOR_TEXT_PLACEHOLDER = exports.COLOR_TEXT_PLACEHOLDER = 'text-slate-400';
|
|
42
|
+
/** @deprecated Use `text-content-danger` (--color-content-danger) instead. */
|
|
29
43
|
const COLOR_TEXT_INVALID = exports.COLOR_TEXT_INVALID = 'text-red-600';
|
|
30
44
|
|
|
31
45
|
// Brand / Action
|
|
46
|
+
/** @deprecated Use `bg-surface-action-strong` (--color-surface-action-strong) instead. */
|
|
32
47
|
const COLOR_BRAND_DEFAULT = exports.COLOR_BRAND_DEFAULT = 'bg-slate-900';
|
|
48
|
+
/** @deprecated Use `bg-surface-action-strong-hover` (--color-surface-action-strong-hover) instead. */
|
|
33
49
|
const COLOR_BRAND_HOVER = exports.COLOR_BRAND_HOVER = 'bg-slate-800';
|
|
50
|
+
/** @deprecated Use `bg-surface-action-strong-active` (--color-surface-action-strong-active) instead. */
|
|
34
51
|
const COLOR_BRAND_ACTIVE = exports.COLOR_BRAND_ACTIVE = 'bg-slate-700';
|
|
35
52
|
|
|
36
53
|
// Accent (for checked states, active indicators)
|
|
54
|
+
/** @deprecated Use `bg-surface-action-strong` (--color-surface-action-strong) instead. */
|
|
37
55
|
const COLOR_ACCENT_DEFAULT = exports.COLOR_ACCENT_DEFAULT = 'bg-slate-900';
|
|
56
|
+
/** @deprecated Use `border-stroke-action` (--color-stroke-action) instead. */
|
|
38
57
|
const COLOR_ACCENT_BORDER = exports.COLOR_ACCENT_BORDER = 'border-slate-900';
|
|
39
58
|
|
|
40
|
-
|
|
41
|
-
|
|
59
|
+
/**
|
|
60
|
+
* @deprecated Use semantic token classes directly instead. Map each color key to its
|
|
61
|
+
* corresponding `--color-surface-*`, `--color-stroke-*`, and `--color-content-*` tokens:
|
|
62
|
+
* - `bg` → `bg-surface-{color}-strong` (--color-surface-{color}-strong)
|
|
63
|
+
* - `bgHover` → `bg-surface-{color}-strong-hover` (--color-surface-{color}-strong-hover)
|
|
64
|
+
* - `bgActive` → `bg-surface-{color}-strong-active` (--color-surface-{color}-strong-active)
|
|
65
|
+
* - `border` → `border-stroke-{color}` (--color-stroke-{color})
|
|
66
|
+
* - `text` → `text-content-{color}` (--color-content-{color})
|
|
67
|
+
* - `ring` → `ring-[--color-stroke-focus]` (--color-stroke-focus)
|
|
68
|
+
*
|
|
69
|
+
* See Button/styles.ts for a complete migration example.
|
|
70
|
+
*/
|
|
42
71
|
const SEMANTIC_COLORS = exports.SEMANTIC_COLORS = {
|
|
43
72
|
action: {
|
|
44
73
|
bg: 'bg-slate-900',
|
|
@@ -83,21 +112,29 @@ const SEMANTIC_COLORS = exports.SEMANTIC_COLORS = {
|
|
|
83
112
|
};
|
|
84
113
|
|
|
85
114
|
// ─── Focus ───────────────────────────────────────────────
|
|
115
|
+
/** @deprecated Use `ring-2 ring-[--color-stroke-focus] ring-offset-2` (--color-stroke-focus) instead. */
|
|
86
116
|
const FOCUS_RING = exports.FOCUS_RING = 'ring-2 ring-slate-400/50 ring-offset-2';
|
|
87
117
|
|
|
88
118
|
// ─── Radius ──────────────────────────────────────────────
|
|
89
|
-
|
|
90
|
-
const
|
|
91
|
-
|
|
119
|
+
/** @deprecated Use `rounded-[var(--border-radius-button)]` for buttons/inputs or `rounded-[var(--border-radius-default)]` for containers. */
|
|
120
|
+
const RADIUS_SM = exports.RADIUS_SM = 'rounded-lg';
|
|
121
|
+
/** @deprecated Use `rounded-[var(--border-radius-default)]` for cards/containers. */
|
|
122
|
+
const RADIUS_MD = exports.RADIUS_MD = 'rounded-xl';
|
|
123
|
+
/** @deprecated Use `rounded-[var(--border-radius-round)]` for circular elements (icon buttons, radio, pills). */
|
|
124
|
+
const RADIUS_FULL = exports.RADIUS_FULL = 'rounded-full';
|
|
92
125
|
|
|
93
126
|
// ─── Shadows ─────────────────────────────────────────────
|
|
127
|
+
|
|
128
|
+
/** @deprecated Use `shadow-sm` directly instead */
|
|
94
129
|
const SHADOW_SM = exports.SHADOW_SM = 'shadow-sm';
|
|
130
|
+
/** @deprecated Use `shadow-md` directly instead */
|
|
95
131
|
const SHADOW_MD = exports.SHADOW_MD = 'shadow-md';
|
|
96
132
|
|
|
97
133
|
// ─── Sizing ──────────────────────────────────────────────
|
|
98
134
|
// Unified size scale for interactive/form components (Button, Input, Select, Checkbox).
|
|
99
135
|
// Only two sizes: 'default' (regular) and 'small' (compact).
|
|
100
136
|
// NOTE: Text and Heading use a separate typography scale (xs/sm/md/lg/xl) — not this.
|
|
137
|
+
/** @deprecated */
|
|
101
138
|
const SIZE_SCALE = exports.SIZE_SCALE = {
|
|
102
139
|
default: {
|
|
103
140
|
height: 'h-10',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["COLOR_BG_PRIMARY","exports","COLOR_BG_SUBTLE","COLOR_BG_MUTED","COLOR_BG_INVERSE","COLOR_BORDER_DEFAULT","COLOR_BORDER_STRONG","COLOR_BORDER_FOCUS","COLOR_BORDER_INVALID","COLOR_TEXT_PRIMARY","COLOR_TEXT_SECONDARY","COLOR_TEXT_MUTED","COLOR_TEXT_INVERSE","COLOR_TEXT_PLACEHOLDER","COLOR_TEXT_INVALID","COLOR_BRAND_DEFAULT","COLOR_BRAND_HOVER","COLOR_BRAND_ACTIVE","COLOR_ACCENT_DEFAULT","COLOR_ACCENT_BORDER","SEMANTIC_COLORS","action","bg","bgHover","bgActive","border","text","ring","danger","warning","success","info","FOCUS_RING","RADIUS_SM","RADIUS_MD","RADIUS_FULL","SHADOW_SM","SHADOW_MD","SIZE_SCALE","default","height","px","gap","small","TRANSITION_COLORS","DISABLED_OPACITY","DISABLED_CURSOR"],"sourceRoot":"../../../src","sources":["styles/primitives.ts"],"mappings":";;;;;;AAAA;AACA;;AAEA;AACA;AACO,MAAMA,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,UAAU;
|
|
1
|
+
{"version":3,"names":["COLOR_BG_PRIMARY","exports","COLOR_BG_SUBTLE","COLOR_BG_MUTED","COLOR_BG_INVERSE","COLOR_BORDER_DEFAULT","COLOR_BORDER_STRONG","COLOR_BORDER_FOCUS","COLOR_BORDER_INVALID","COLOR_TEXT_PRIMARY","COLOR_TEXT_SECONDARY","COLOR_TEXT_MUTED","COLOR_TEXT_INVERSE","COLOR_TEXT_PLACEHOLDER","COLOR_TEXT_INVALID","COLOR_BRAND_DEFAULT","COLOR_BRAND_HOVER","COLOR_BRAND_ACTIVE","COLOR_ACCENT_DEFAULT","COLOR_ACCENT_BORDER","SEMANTIC_COLORS","action","bg","bgHover","bgActive","border","text","ring","danger","warning","success","info","FOCUS_RING","RADIUS_SM","RADIUS_MD","RADIUS_FULL","SHADOW_SM","SHADOW_MD","SIZE_SCALE","default","height","px","gap","small","TRANSITION_COLORS","DISABLED_OPACITY","DISABLED_CURSOR"],"sourceRoot":"../../../src","sources":["styles/primitives.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,77 +1,84 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { cva } from 'class-variance-authority';
|
|
4
|
-
import { COLOR_BG_MUTED, COLOR_TEXT_SECONDARY, RADIUS_FULL } from '../../styles/primitives';
|
|
5
4
|
|
|
6
5
|
// ── Root ─────────────────────────────────────────────────
|
|
7
6
|
|
|
8
|
-
export const avatarRootVariants = cva([
|
|
7
|
+
export const avatarRootVariants = cva(['rounded-[var(--border-radius-round)]', 'relative items-center justify-center', 'bg-surface-tertiary'], {
|
|
9
8
|
variants: {
|
|
10
9
|
size: {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
10
|
+
'2xs': 'w-3 h-3',
|
|
11
|
+
xs: 'w-[18px] h-[18px]',
|
|
12
|
+
sm: 'w-6 h-6',
|
|
13
|
+
md: 'w-8 h-8',
|
|
14
|
+
lg: 'w-10 h-10',
|
|
15
|
+
xl: 'w-12 h-12',
|
|
16
|
+
'2xl': 'w-14 h-14'
|
|
16
17
|
}
|
|
17
18
|
},
|
|
18
19
|
defaultVariants: {
|
|
19
|
-
size: '
|
|
20
|
+
size: 'md'
|
|
20
21
|
}
|
|
21
22
|
});
|
|
22
23
|
|
|
23
24
|
// ── Image ────────────────────────────────────────────────
|
|
24
25
|
|
|
25
|
-
export const avatarImageVariants = cva(['absolute top-0 left-0 w-full h-full',
|
|
26
|
+
export const avatarImageVariants = cva(['absolute top-0 left-0 w-full h-full', 'rounded-[var(--border-radius-round)]', 'overflow-hidden', 'border border-stroke-secondary']);
|
|
26
27
|
|
|
27
28
|
// ── Text ─────────────────────────────────────────────────
|
|
28
29
|
|
|
29
|
-
export const avatarTextVariants = cva([
|
|
30
|
+
export const avatarTextVariants = cva(['text-content-primary', 'font-medium'], {
|
|
30
31
|
variants: {
|
|
31
32
|
size: {
|
|
33
|
+
'2xs': 'text-[6px]',
|
|
34
|
+
xs: 'text-[9px]',
|
|
32
35
|
sm: 'text-xs',
|
|
33
|
-
md: 'text-
|
|
34
|
-
lg: 'text-
|
|
35
|
-
xl: 'text-
|
|
36
|
-
'2xl': 'text-
|
|
36
|
+
md: 'text-base',
|
|
37
|
+
lg: 'text-xl',
|
|
38
|
+
xl: 'text-2xl',
|
|
39
|
+
'2xl': 'text-[28px]'
|
|
37
40
|
}
|
|
38
41
|
},
|
|
39
42
|
defaultVariants: {
|
|
40
|
-
size: '
|
|
43
|
+
size: 'md'
|
|
41
44
|
}
|
|
42
45
|
});
|
|
43
46
|
|
|
44
47
|
// ── Icon ─────────────────────────────────────────────────
|
|
45
48
|
|
|
46
|
-
export const avatarIconVariants = cva([
|
|
49
|
+
export const avatarIconVariants = cva(['text-content-primary'], {
|
|
47
50
|
variants: {
|
|
48
51
|
size: {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
'2xs': 'size-1.5',
|
|
53
|
+
xs: 'size-[9px]',
|
|
54
|
+
sm: 'size-3',
|
|
55
|
+
md: 'size-4',
|
|
56
|
+
lg: 'size-5',
|
|
57
|
+
xl: 'size-6',
|
|
58
|
+
'2xl': 'size-7'
|
|
54
59
|
}
|
|
55
60
|
},
|
|
56
61
|
defaultVariants: {
|
|
57
|
-
size: '
|
|
62
|
+
size: 'md'
|
|
58
63
|
}
|
|
59
64
|
});
|
|
60
65
|
|
|
61
66
|
// ── Badge ────────────────────────────────────────────────
|
|
62
67
|
|
|
63
|
-
export const avatarBadgeVariants = cva(['absolute border-
|
|
68
|
+
export const avatarBadgeVariants = cva(['absolute border-white', 'rounded-[var(--border-radius-round)]', 'bottom-0 right-0'], {
|
|
64
69
|
variants: {
|
|
65
70
|
size: {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
+
'2xs': 'w-1.5 h-1.5 border translate-x-[21%] translate-y-[21%]',
|
|
72
|
+
xs: 'w-2 h-2 border translate-x-[17%] translate-y-[17%]',
|
|
73
|
+
sm: 'w-2.5 h-2.5 border-2 translate-x-[15%] translate-y-[15%]',
|
|
74
|
+
md: 'w-3 h-3 border-2 translate-x-[11%] translate-y-[11%]',
|
|
75
|
+
lg: 'w-3.5 h-3.5 border-2 translate-x-[8%] translate-y-[8%]',
|
|
76
|
+
xl: 'w-4 h-4 border-2 translate-x-[6%] translate-y-[6%]',
|
|
77
|
+
'2xl': 'w-5 h-5 border-2 translate-x-[9%] translate-y-[9%]'
|
|
71
78
|
}
|
|
72
79
|
},
|
|
73
80
|
defaultVariants: {
|
|
74
|
-
size: '
|
|
81
|
+
size: 'md'
|
|
75
82
|
}
|
|
76
83
|
});
|
|
77
84
|
//# sourceMappingURL=styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["cva","
|
|
1
|
+
{"version":3,"names":["cva","avatarRootVariants","variants","size","xs","sm","md","lg","xl","defaultVariants","avatarImageVariants","avatarTextVariants","avatarIconVariants","avatarBadgeVariants"],"sourceRoot":"../../../../src","sources":["components/Avatar/styles.ts"],"mappings":";;AAAA,SAASA,GAAG,QAA2B,0BAA0B;;AAEjE;;AAEA,OAAO,MAAMC,kBAAkB,GAAGD,GAAG,CACnC,CACE,sCAAsC,EACtC,sCAAsC,EACtC,qBAAqB,CACtB,EACD;EACEE,QAAQ,EAAE;IACRC,IAAI,EAAE;MACJ,KAAK,EAAE,SAAS;MAChBC,EAAE,EAAE,mBAAmB;MACvBC,EAAE,EAAE,SAAS;MACbC,EAAE,EAAE,SAAS;MACbC,EAAE,EAAE,WAAW;MACfC,EAAE,EAAE,WAAW;MACf,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfN,IAAI,EAAE;EACR;AACF,CACF,CAAC;;AAED;;AAEA,OAAO,MAAMO,mBAAmB,GAAGV,GAAG,CAAC,CACrC,qCAAqC,EACrC,sCAAsC,EACtC,iBAAiB,EACjB,gCAAgC,CACjC,CAAC;;AAEF;;AAEA,OAAO,MAAMW,kBAAkB,GAAGX,GAAG,CAAC,CAAC,sBAAsB,EAAE,aAAa,CAAC,EAAE;EAC7EE,QAAQ,EAAE;IACRC,IAAI,EAAE;MACJ,KAAK,EAAE,YAAY;MACnBC,EAAE,EAAE,YAAY;MAChBC,EAAE,EAAE,SAAS;MACbC,EAAE,EAAE,WAAW;MACfC,EAAE,EAAE,SAAS;MACbC,EAAE,EAAE,UAAU;MACd,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfN,IAAI,EAAE;EACR;AACF,CAAC,CAAC;;AAEF;;AAEA,OAAO,MAAMS,kBAAkB,GAAGZ,GAAG,CAAC,CAAC,sBAAsB,CAAC,EAAE;EAC9DE,QAAQ,EAAE;IACRC,IAAI,EAAE;MACJ,KAAK,EAAE,UAAU;MACjBC,EAAE,EAAE,YAAY;MAChBC,EAAE,EAAE,QAAQ;MACZC,EAAE,EAAE,QAAQ;MACZC,EAAE,EAAE,QAAQ;MACZC,EAAE,EAAE,QAAQ;MACZ,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfN,IAAI,EAAE;EACR;AACF,CAAC,CAAC;;AAEF;;AAEA,OAAO,MAAMU,mBAAmB,GAAGb,GAAG,CACpC,CAAC,uBAAuB,EAAE,sCAAsC,EAAE,kBAAkB,CAAC,EACrF;EACEE,QAAQ,EAAE;IACRC,IAAI,EAAE;MACJ,KAAK,EAAE,wDAAwD;MAC/DC,EAAE,EAAE,oDAAoD;MACxDC,EAAE,EAAE,0DAA0D;MAC9DC,EAAE,EAAE,sDAAsD;MAC1DC,EAAE,EAAE,wDAAwD;MAC5DC,EAAE,EAAE,oDAAoD;MACxD,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfN,IAAI,EAAE;EACR;AACF,CACF,CAAC","ignoreList":[]}
|
|
@@ -6,7 +6,7 @@ import { DISABLED_CURSOR, TRANSITION_COLORS } from '../../styles/primitives';
|
|
|
6
6
|
|
|
7
7
|
// TODO: Validate that `dark:` syntax works with Uniwind `ScopedTheme`
|
|
8
8
|
|
|
9
|
-
export const buttonRootVariants = cva(['flex-row items-center justify-center', 'rounded-[var(--border-radius-button)]', 'web:outline-none web:focus:outline-none web:focus-visible:outline-none', TRANSITION_COLORS, 'data-[disabled=true]:opacity-[--opacity-disabled]', DISABLED_CURSOR, 'web:data-[focus-visible=true]:ring-2 web:data-[focus-visible=true]:ring-[--color-stroke-focus] web:data-[focus-visible=true]:ring-offset-2'], {
|
|
9
|
+
export const buttonRootVariants = cva(['flex-row items-center justify-center', 'rounded-[var(--border-radius-button)]', 'web:outline-none web:focus:outline-none web:focus-visible:outline-none', TRANSITION_COLORS, 'data-[disabled=true]:opacity-[var(--opacity-disabled)]', DISABLED_CURSOR, 'web:data-[focus-visible=true]:ring-2 web:data-[focus-visible=true]:ring-[--color-stroke-focus] web:data-[focus-visible=true]:ring-offset-2'], {
|
|
10
10
|
variants: {
|
|
11
11
|
variant: {
|
|
12
12
|
strong: ['border-b-1 border-black/75'],
|
|
@@ -22,7 +22,7 @@ export const buttonRootVariants = cva(['flex-row items-center justify-center', '
|
|
|
22
22
|
info: []
|
|
23
23
|
},
|
|
24
24
|
size: {
|
|
25
|
-
default: 'h-
|
|
25
|
+
default: 'h-11 px-4 gap-2',
|
|
26
26
|
small: 'h-8 px-3 gap-1.5'
|
|
27
27
|
},
|
|
28
28
|
fullWidth: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Platform","cva","DISABLED_CURSOR","TRANSITION_COLORS","buttonRootVariants","variants","variant","strong","outline","ghost","color","action","danger","warning","success","info","size","default","small","fullWidth","true","false","compoundVariants","className","select","web","defaultVariants","buttonTextVariants","buttonSpinnerVariants","buttonGroupVariants","flexDirection","row","column","isAttached","buttonIconVariants"],"sourceRoot":"../../../../src","sources":["components/Button/styles.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,cAAc;AACvC,SAASC,GAAG,QAA2B,0BAA0B;AACjE,SAASC,eAAe,EAAEC,iBAAiB,QAAQ,yBAAyB;;AAE5E;;AAEA,OAAO,MAAMC,kBAAkB,GAAGH,GAAG,CACnC,CACE,sCAAsC,EACtC,uCAAuC,EACvC,wEAAwE,EACxEE,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"names":["Platform","cva","DISABLED_CURSOR","TRANSITION_COLORS","buttonRootVariants","variants","variant","strong","outline","ghost","color","action","danger","warning","success","info","size","default","small","fullWidth","true","false","compoundVariants","className","select","web","defaultVariants","buttonTextVariants","buttonSpinnerVariants","buttonGroupVariants","flexDirection","row","column","isAttached","buttonIconVariants"],"sourceRoot":"../../../../src","sources":["components/Button/styles.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# Components — authoring & styling conventions
|
|
2
|
+
|
|
3
|
+
Auto-loaded when working in `packages/components/src/components/**`. Covers both the
|
|
4
|
+
styled component files (`index.tsx`) and their co-located CVA variant files (`styles.ts`).
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Component Authoring (`index.tsx`)
|
|
9
|
+
|
|
10
|
+
Styled components in `@cdx-ui/components` follow a consistent pattern. Read the full guides before making changes:
|
|
11
|
+
|
|
12
|
+
- `docs/internal/practices/composition.md` — compound component pattern, naming conventions
|
|
13
|
+
- `docs/internal/practices/types.md` — prop types, `I*Props` vs `*Props`, exporting
|
|
14
|
+
- `docs/internal/practices/styling.md` — `cn()`, CVA, token classes, `Platform.select()`
|
|
15
|
+
- `docs/internal/practices/state.md` — `useControllableState`, `composeEventHandlers`
|
|
16
|
+
- `docs/internal/practices/data-attributes.md` — `data-[state]` and `data-slot`
|
|
17
|
+
|
|
18
|
+
### Pattern summary
|
|
19
|
+
|
|
20
|
+
Each component follows this structure (see `Button/index.tsx` as the canonical example):
|
|
21
|
+
|
|
22
|
+
1. **Imports** — RN base components, primitive from `@cdx-ui/primitives`, `cn` + style context from `@cdx-ui/utils`, variant functions from `./styles`
|
|
23
|
+
2. **Scope constant** — `const SCOPE = 'COMPONENT_NAME'` for `withStyleContext` / `useStyleContext`
|
|
24
|
+
3. **Root wrapping** — `const Root = withStyleContext(BaseRNComponent, SCOPE)`
|
|
25
|
+
4. **Primitive instantiation** — `const Primitive = createComponent({ Root, Text, ... })` using the primitive factory
|
|
26
|
+
5. **Styled sub-components** — each wraps a single element, uses `forwardRef`, destructures variant props with defaults, computes `cn(variantFn({ ...variants }), className)`, passes `context` to the primitive root
|
|
27
|
+
6. **Compound export** — `Object.assign(RootComponent, { Sub1, Sub2 }) as CompoundType`
|
|
28
|
+
|
|
29
|
+
### Key rules
|
|
30
|
+
|
|
31
|
+
- Props interface extends RN base props + primitive `I*Props` + CVA `VariantProps` + `{ className?: string }`
|
|
32
|
+
- Always accept and spread `style` alongside `className`
|
|
33
|
+
- Variant defaults in destructuring must match CVA `defaultVariants`
|
|
34
|
+
- `displayName` set on every exported sub-component
|
|
35
|
+
- `className` is merged last via `cn()` so consumer overrides always win
|
|
36
|
+
- Never hardcode colors — use semantic token classes (`bg-surface-*`, `text-content-*`, `border-stroke-*`)
|
|
37
|
+
- Event handlers composed via `composeEventHandlers` from `@cdx-ui/utils`
|
|
38
|
+
- Third-party libraries fully abstracted — no adopted library types leak to consumers
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Styling Conventions (`styles.ts`)
|
|
43
|
+
|
|
44
|
+
Variant definitions live in co-located `styles.ts` files using CVA. Read the full guides before making changes:
|
|
45
|
+
|
|
46
|
+
- `docs/internal/practices/styling.md` — `cn()`, CVA, token architecture, dark mode, `Platform.select()`
|
|
47
|
+
- `docs/internal/practices/data-attributes.md` — `data-[state]` selectors for interaction states
|
|
48
|
+
|
|
49
|
+
### Pattern summary
|
|
50
|
+
|
|
51
|
+
Each `styles.ts` exports CVA variant functions and their derived `VariantProps` types (see `Button/styles.ts` as the canonical example):
|
|
52
|
+
|
|
53
|
+
```ts
|
|
54
|
+
import { Platform } from 'react-native';
|
|
55
|
+
import { cva, type VariantProps } from 'class-variance-authority';
|
|
56
|
+
import { DISABLED_CURSOR, TRANSITION_COLORS } from '../../styles/primitives';
|
|
57
|
+
|
|
58
|
+
export const componentRootVariants = cva(
|
|
59
|
+
[
|
|
60
|
+
/* base classes */
|
|
61
|
+
],
|
|
62
|
+
{
|
|
63
|
+
variants: {
|
|
64
|
+
/* variant axes */
|
|
65
|
+
},
|
|
66
|
+
compoundVariants: [
|
|
67
|
+
/* variant × variant combinations */
|
|
68
|
+
],
|
|
69
|
+
defaultVariants: {
|
|
70
|
+
/* defaults matching the component's destructured defaults */
|
|
71
|
+
},
|
|
72
|
+
},
|
|
73
|
+
);
|
|
74
|
+
|
|
75
|
+
export type ComponentVariantProps = VariantProps<typeof componentRootVariants>;
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Key rules
|
|
79
|
+
|
|
80
|
+
- **Semantic token classes only** — use `bg-surface-action-strong`, `text-content-primary`, `border-stroke-primary`, etc. Never hardcode hex colors, `bg-white`, `text-black`, or raw Tailwind color scales for themed values.
|
|
81
|
+
- **`data-[state]` selectors** — use `data-[disabled=true]:`, `data-[hover=true]:`, `data-[active=true]:`, `data-[focus-visible=true]:` for interaction states. Primitives emit these data attributes.
|
|
82
|
+
- **`Platform.select()`** for platform-specific classes — web gets `data-[hover=true]` styles (hover exists on web); native responds only to `data-[active=true]` (press). Always set `default` (native) and `web` keys.
|
|
83
|
+
- **Shared style primitives** — import `DISABLED_CURSOR`, `TRANSITION_COLORS`, etc. from `../../styles/primitives` for cross-component consistency.
|
|
84
|
+
- **`web:` prefix** for web-only utilities — e.g., `web:outline-none`, `web:focus-visible:ring-2`.
|
|
85
|
+
- **`compoundVariants`** for variant × variant combinations where simple variant merging is insufficient.
|
|
86
|
+
- **`defaultVariants`** must match the destructured defaults in the component's `index.tsx`.
|
|
87
|
+
- **One `cva()` per sub-component** — root, text, icon, spinner, etc. each get their own variant function.
|
|
88
|
+
- **Export `VariantProps` types** — derived via `VariantProps<typeof variantFn>` for the component layer to consume.
|
|
89
|
+
- **No dynamic string construction** — all Tailwind class names must be statically detectable by the Tailwind scanner.
|
|
90
|
+
- **CSS variables for token values** — use `rounded-[var(--border-radius-button)]` syntax when referencing design tokens not mapped to Tailwind utilities.
|
|
@@ -2,24 +2,31 @@
|
|
|
2
2
|
|
|
3
3
|
import { forwardRef } from 'react';
|
|
4
4
|
import { View } from 'react-native';
|
|
5
|
-
import { cn } from '@cdx-ui/utils';
|
|
5
|
+
import { cn, useStyleContext, withStyleContext } from '@cdx-ui/utils';
|
|
6
6
|
import { cardContentVariants, cardFooterVariants, cardHeaderVariants, cardRootVariants } from './styles';
|
|
7
7
|
|
|
8
8
|
// =============================================================================
|
|
9
9
|
// STYLED ROOT COMPONENT
|
|
10
10
|
// =============================================================================
|
|
11
11
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
12
|
+
const SCOPE = 'CARD';
|
|
13
|
+
const Root = withStyleContext(View, SCOPE);
|
|
14
|
+
const useCardStyleContext = () => useStyleContext(SCOPE);
|
|
12
15
|
const CardRoot = /*#__PURE__*/forwardRef(({
|
|
13
16
|
className,
|
|
14
17
|
children,
|
|
15
18
|
style,
|
|
19
|
+
fullBleed,
|
|
16
20
|
...props
|
|
17
21
|
}, ref) => {
|
|
18
22
|
const computedClassName = cn(cardRootVariants(), className);
|
|
19
|
-
return /*#__PURE__*/_jsx(
|
|
23
|
+
return /*#__PURE__*/_jsx(Root, {
|
|
20
24
|
ref: ref,
|
|
21
25
|
className: computedClassName,
|
|
22
26
|
style: style,
|
|
27
|
+
context: {
|
|
28
|
+
fullBleed
|
|
29
|
+
},
|
|
23
30
|
...props,
|
|
24
31
|
children: children
|
|
25
32
|
});
|
|
@@ -55,9 +62,15 @@ const CardContent = /*#__PURE__*/forwardRef(({
|
|
|
55
62
|
className,
|
|
56
63
|
children,
|
|
57
64
|
style,
|
|
65
|
+
fullBleed,
|
|
58
66
|
...props
|
|
59
67
|
}, ref) => {
|
|
60
|
-
const
|
|
68
|
+
const {
|
|
69
|
+
fullBleed: fullBleedFromContext
|
|
70
|
+
} = useCardStyleContext();
|
|
71
|
+
const computedClassName = cn(cardContentVariants({
|
|
72
|
+
fullBleed: fullBleed ?? fullBleedFromContext
|
|
73
|
+
}), className);
|
|
61
74
|
return /*#__PURE__*/_jsx(View, {
|
|
62
75
|
ref: ref,
|
|
63
76
|
className: computedClassName,
|
|
@@ -76,9 +89,15 @@ const CardFooter = /*#__PURE__*/forwardRef(({
|
|
|
76
89
|
className,
|
|
77
90
|
children,
|
|
78
91
|
style,
|
|
92
|
+
fullBleed,
|
|
79
93
|
...props
|
|
80
94
|
}, ref) => {
|
|
81
|
-
const
|
|
95
|
+
const {
|
|
96
|
+
fullBleed: fullBleedFromContext
|
|
97
|
+
} = useCardStyleContext();
|
|
98
|
+
const computedClassName = cn(cardFooterVariants({
|
|
99
|
+
fullBleed: fullBleed ?? fullBleedFromContext
|
|
100
|
+
}), className);
|
|
82
101
|
return /*#__PURE__*/_jsx(View, {
|
|
83
102
|
ref: ref,
|
|
84
103
|
className: computedClassName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forwardRef","View","cn","cardContentVariants","cardFooterVariants","cardHeaderVariants","cardRootVariants","jsx","_jsx","CardRoot","className","children","style","props","ref","computedClassName","displayName","CardHeader","CardContent","CardFooter","Card","Header","Content","Footer"],"sourceRoot":"../../../../src","sources":["components/Card/index.tsx"],"mappings":";;AAAA,SAASA,UAAU,QAAwB,OAAO;AAClD,SAASC,IAAI,QAAwB,cAAc;AACnD,SAASC,EAAE,QAAQ,eAAe;
|
|
1
|
+
{"version":3,"names":["forwardRef","View","cn","useStyleContext","withStyleContext","cardContentVariants","cardFooterVariants","cardHeaderVariants","cardRootVariants","jsx","_jsx","SCOPE","Root","useCardStyleContext","CardRoot","className","children","style","fullBleed","props","ref","computedClassName","context","displayName","CardHeader","CardContent","fullBleedFromContext","CardFooter","Card","Header","Content","Footer"],"sourceRoot":"../../../../src","sources":["components/Card/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,15 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { cva } from 'class-variance-authority';
|
|
4
|
-
import { COLOR_BG_PRIMARY, COLOR_BORDER_DEFAULT, COLOR_TEXT_PRIMARY, RADIUS_SM, SHADOW_SM } from '../../styles/primitives';
|
|
5
4
|
|
|
6
5
|
// ── Root ────────────────────────────────────────────────────
|
|
7
6
|
|
|
8
|
-
export const cardRootVariants = cva([
|
|
7
|
+
export const cardRootVariants = cva(['bg-surface-primary', 'border border-stroke-secondary', 'rounded-[var(--border-radius-default)]', 'overflow-hidden'], {
|
|
8
|
+
variants: {
|
|
9
|
+
fullBleed: {
|
|
10
|
+
true: '',
|
|
11
|
+
false: ''
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
});
|
|
9
15
|
|
|
10
16
|
// ── Header ──────────────────────────────────────────────────
|
|
11
17
|
|
|
12
|
-
export const cardHeaderVariants = cva(['flex-row items-center justify-between
|
|
18
|
+
export const cardHeaderVariants = cva(['border-t-8 border-t-surface-brand-strong', 'border-b border-solid border-b-stroke-secondary', 'flex-row items-center justify-between gap-0.5', 'px-5 py-3']);
|
|
13
19
|
|
|
14
20
|
// ── Title ───────────────────────────────────────────────────
|
|
15
21
|
|
|
@@ -17,9 +23,25 @@ export const cardTitleVariants = cva(['flex-1']);
|
|
|
17
23
|
|
|
18
24
|
// ── Content ─────────────────────────────────────────────────
|
|
19
25
|
|
|
20
|
-
export const cardContentVariants = cva([
|
|
26
|
+
export const cardContentVariants = cva(['text-content-primary', 'p-5'], {
|
|
27
|
+
variants: {
|
|
28
|
+
fullBleed: {
|
|
29
|
+
true: 'p-0'
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
});
|
|
21
33
|
|
|
22
34
|
// ── Footer ──────────────────────────────────────────────────
|
|
23
35
|
|
|
24
|
-
export const cardFooterVariants = cva(['
|
|
36
|
+
export const cardFooterVariants = cva(['flex-col items-stretch gap-2'], {
|
|
37
|
+
variants: {
|
|
38
|
+
fullBleed: {
|
|
39
|
+
true: 'p-5',
|
|
40
|
+
false: 'px-5 pb-5 pt-0'
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
defaultVariants: {
|
|
44
|
+
fullBleed: false
|
|
45
|
+
}
|
|
46
|
+
});
|
|
25
47
|
//# sourceMappingURL=styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["cva","
|
|
1
|
+
{"version":3,"names":["cva","cardRootVariants","variants","fullBleed","true","false","cardHeaderVariants","cardTitleVariants","cardContentVariants","cardFooterVariants","defaultVariants"],"sourceRoot":"../../../../src","sources":["components/Card/styles.ts"],"mappings":";;AAAA,SAASA,GAAG,QAAsB,0BAA0B;;AAE5D;;AAEA,OAAO,MAAMC,gBAAgB,GAAGD,GAAG,CACjC,CACE,oBAAoB,EACpB,gCAAgC,EAChC,wCAAwC,EACxC,iBAAiB,CAClB,EACD;EACEE,QAAQ,EAAE;IACRC,SAAS,EAAE;MACTC,IAAI,EAAE,EAAE;MACRC,KAAK,EAAE;IACT;EACF;AACF,CACF,CAAC;;AAED;;AAEA,OAAO,MAAMC,kBAAkB,GAAGN,GAAG,CAAC,CACpC,0CAA0C,EAC1C,iDAAiD,EACjD,+CAA+C,EAC/C,WAAW,CACZ,CAAC;;AAEF;;AAEA,OAAO,MAAMO,iBAAiB,GAAGP,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;;AAEhD;;AAEA,OAAO,MAAMQ,mBAAmB,GAAGR,GAAG,CAAC,CAAC,sBAAsB,EAAE,KAAK,CAAC,EAAE;EACtEE,QAAQ,EAAE;IACRC,SAAS,EAAE;MACTC,IAAI,EAAE;IACR;EACF;AACF,CAAC,CAAC;;AAEF;;AAEA,OAAO,MAAMK,kBAAkB,GAAGT,GAAG,CAAC,CAAC,8BAA8B,CAAC,EAAE;EACtEE,QAAQ,EAAE;IACRC,SAAS,EAAE;MACTC,IAAI,EAAE,KAAK;MACXC,KAAK,EAAE;IACT;EACF,CAAC;EACDK,eAAe,EAAE;IACfP,SAAS,EAAE;EACb;AACF,CAAC,CAAC","ignoreList":[]}
|