@cdx-ui/components 0.0.1-alpha.25 → 0.0.1-alpha.27

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 (36) hide show
  1. package/lib/commonjs/components/Button/buttonSharedVariants.js +200 -0
  2. package/lib/commonjs/components/Button/buttonSharedVariants.js.map +1 -0
  3. package/lib/commonjs/components/Button/styles.js +21 -222
  4. package/lib/commonjs/components/Button/styles.js.map +1 -1
  5. package/lib/commonjs/components/IconButton/index.js +80 -0
  6. package/lib/commonjs/components/IconButton/index.js.map +1 -0
  7. package/lib/commonjs/components/IconButton/styles.js +91 -0
  8. package/lib/commonjs/components/IconButton/styles.js.map +1 -0
  9. package/lib/commonjs/components/index.js +12 -0
  10. package/lib/commonjs/components/index.js.map +1 -1
  11. package/lib/module/components/Button/buttonSharedVariants.js +195 -0
  12. package/lib/module/components/Button/buttonSharedVariants.js.map +1 -0
  13. package/lib/module/components/Button/styles.js +21 -223
  14. package/lib/module/components/Button/styles.js.map +1 -1
  15. package/lib/module/components/IconButton/index.js +76 -0
  16. package/lib/module/components/IconButton/index.js.map +1 -0
  17. package/lib/module/components/IconButton/styles.js +87 -0
  18. package/lib/module/components/IconButton/styles.js.map +1 -0
  19. package/lib/module/components/index.js +1 -0
  20. package/lib/module/components/index.js.map +1 -1
  21. package/lib/typescript/components/Button/buttonSharedVariants.d.ts +29 -0
  22. package/lib/typescript/components/Button/buttonSharedVariants.d.ts.map +1 -0
  23. package/lib/typescript/components/Button/styles.d.ts +6 -6
  24. package/lib/typescript/components/Button/styles.d.ts.map +1 -1
  25. package/lib/typescript/components/IconButton/index.d.ts +15 -0
  26. package/lib/typescript/components/IconButton/index.d.ts.map +1 -0
  27. package/lib/typescript/components/IconButton/styles.d.ts +16 -0
  28. package/lib/typescript/components/IconButton/styles.d.ts.map +1 -0
  29. package/lib/typescript/components/index.d.ts +1 -0
  30. package/lib/typescript/components/index.d.ts.map +1 -1
  31. package/package.json +4 -4
  32. package/src/components/Button/buttonSharedVariants.ts +281 -0
  33. package/src/components/Button/styles.ts +32 -275
  34. package/src/components/IconButton/index.tsx +93 -0
  35. package/src/components/IconButton/styles.ts +131 -0
  36. package/src/components/index.ts +1 -0
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.iconButtonRootVariants = exports.iconButtonIconColorVariants = exports.iconButtonGlyphVariants = void 0;
7
+ var _reactNative = require("react-native");
8
+ var _classVarianceAuthority = require("class-variance-authority");
9
+ var _primitives = require("../../styles/primitives");
10
+ var _buttonSharedVariants = require("../Button/buttonSharedVariants");
11
+ function actionOnlyCompounds(compounds) {
12
+ return compounds.filter(c => c.color === 'action').map(c => {
13
+ const {
14
+ color,
15
+ ...rest
16
+ } = c;
17
+ void color;
18
+ return rest;
19
+ });
20
+ }
21
+
22
+ /** Dark-mode hover/active surface for ghost (solid uses a separate compound with border). */
23
+ const iconButtonDarkGhostSurfaceCompounds = actionOnlyCompounds(_buttonSharedVariants.sharedGhostSurfaceCompounds).map(c => ({
24
+ variant: 'ghost',
25
+ ...c
26
+ }));
27
+ const iconButtonForegroundTextCompounds = actionOnlyCompounds(_buttonSharedVariants.sharedOutlineGhostForegroundTextCompounds).map(c => ({
28
+ variant: ['solid', 'ghost'],
29
+ ...c
30
+ }));
31
+ const iconButtonRootVariants = exports.iconButtonRootVariants = (0, _classVarianceAuthority.cva)(['flex items-center justify-center', _primitives.RADIUS_FULL, 'web:outline-none web:focus:outline-none web:focus-visible:outline-none', _primitives.TRANSITION_COLORS, _primitives.DISABLED_OPACITY, _primitives.DISABLED_CURSOR, 'web:data-[focus-visible=true]:ring-2 web:data-[focus-visible=true]:ring-slate-400/50 web:data-[focus-visible=true]:ring-offset-2'], {
32
+ variants: {
33
+ variant: {
34
+ /** Same surface as ghost, with a light gray border (aligned with Button `outline`). */
35
+ solid: ['bg-transparent', `border ${_primitives.COLOR_BORDER_DEFAULT}`, 'data-[hover=true]:bg-slate-50', 'data-[active=true]:bg-slate-100'],
36
+ ghost: ['bg-transparent', 'data-[hover=true]:bg-slate-50', 'data-[active=true]:bg-slate-100']
37
+ },
38
+ size: {
39
+ default: 'h-10 w-10 min-w-10 shrink-0 p-0',
40
+ small: 'h-8 w-8 min-w-8 shrink-0 p-0'
41
+ },
42
+ mode: {
43
+ light: [],
44
+ dark: []
45
+ }
46
+ },
47
+ compoundVariants: [...iconButtonDarkGhostSurfaceCompounds, {
48
+ variant: 'solid',
49
+ mode: 'dark',
50
+ className: ['border-slate-700', _reactNative.Platform.select({
51
+ default: 'data-[active=true]:bg-slate-700',
52
+ web: 'data-[hover=true]:bg-slate-800 data-[active=true]:data-[hover=true]:bg-slate-700'
53
+ })]
54
+ }],
55
+ defaultVariants: {
56
+ variant: 'solid',
57
+ size: 'default',
58
+ mode: 'light'
59
+ }
60
+ });
61
+ const iconButtonGlyphVariants = exports.iconButtonGlyphVariants = (0, _classVarianceAuthority.cva)([], {
62
+ variants: {
63
+ size: {
64
+ default: 'size-5',
65
+ small: 'size-4'
66
+ }
67
+ },
68
+ defaultVariants: {
69
+ size: 'default'
70
+ }
71
+ });
72
+
73
+ /** Icon fill aligned with Button outline/ghost action label colors (solid matches ghost). */
74
+ const iconButtonIconColorVariants = exports.iconButtonIconColorVariants = (0, _classVarianceAuthority.cva)([], {
75
+ variants: {
76
+ variant: {
77
+ solid: [],
78
+ ghost: []
79
+ },
80
+ mode: {
81
+ light: [],
82
+ dark: []
83
+ }
84
+ },
85
+ compoundVariants: [...iconButtonForegroundTextCompounds],
86
+ defaultVariants: {
87
+ variant: 'solid',
88
+ mode: 'light'
89
+ }
90
+ });
91
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","_classVarianceAuthority","_primitives","_buttonSharedVariants","actionOnlyCompounds","compounds","filter","c","color","map","rest","iconButtonDarkGhostSurfaceCompounds","sharedGhostSurfaceCompounds","variant","iconButtonForegroundTextCompounds","sharedOutlineGhostForegroundTextCompounds","iconButtonRootVariants","exports","cva","RADIUS_FULL","TRANSITION_COLORS","DISABLED_OPACITY","DISABLED_CURSOR","variants","solid","COLOR_BORDER_DEFAULT","ghost","size","default","small","mode","light","dark","compoundVariants","className","Platform","select","web","defaultVariants","iconButtonGlyphVariants","iconButtonIconColorVariants"],"sourceRoot":"../../../../src","sources":["components/IconButton/styles.ts"],"mappings":"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","ignoreList":[]}
@@ -236,4 +236,16 @@ Object.keys(_Icon).forEach(function (key) {
236
236
  }
237
237
  });
238
238
  });
239
+ var _IconButton = require("./IconButton");
240
+ Object.keys(_IconButton).forEach(function (key) {
241
+ if (key === "default" || key === "__esModule") return;
242
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
243
+ if (key in exports && exports[key] === _IconButton[key]) return;
244
+ Object.defineProperty(exports, key, {
245
+ enumerable: true,
246
+ get: function () {
247
+ return _IconButton[key];
248
+ }
249
+ });
250
+ });
239
251
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_AlertDialog","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_Avatar","_BottomSheet","_Box","_Button","_Card","_Checkbox","_Chip","_Dialog","_Input","_Link","_ProgressSegmented","_Select","_VirtualizedList","_Switch","_Stack","_Heading","_Text","_Icon"],"sourceRoot":"../../../src","sources":["components/index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_AlertDialog","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_Avatar","_BottomSheet","_Box","_Button","_Card","_Checkbox","_Chip","_Dialog","_Input","_Link","_ProgressSegmented","_Select","_VirtualizedList","_Switch","_Stack","_Heading","_Text","_Icon","_IconButton"],"sourceRoot":"../../../src","sources":["components/index.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,195 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Neutral compound-variant **slices** shared by Button and IconButton (no consumer `variant` keys).
5
+ *
6
+ * Each consumer maps these into its own CVA, e.g. filled surface → Button `strong` or IconButton `solid`;
7
+ * ghost surface / outline+ghost foreground → attach the appropriate `variant` / tuple for that component.
8
+ *
9
+ * Button-only outline **surface** (borders) stays in `Button/styles.ts`.
10
+ */
11
+ import { Platform } from 'react-native';
12
+ import { SEMANTIC_COLORS } from '../../styles/primitives';
13
+ /** Root surface: filled semantic background (maps to Button `strong`, IconButton `solid`). */
14
+ export const sharedFilledSurfaceCompounds = [{
15
+ color: 'action',
16
+ className: [SEMANTIC_COLORS.action.bg, Platform.select({
17
+ default: 'data-[active=true]:bg-slate-700',
18
+ web: 'data-[hover=true]:bg-slate-800 data-[active=true]:data-[hover=true]:bg-slate-700'
19
+ })]
20
+ }, {
21
+ color: 'danger',
22
+ className: [SEMANTIC_COLORS.danger.bg, Platform.select({
23
+ default: 'data-[active=true]:bg-red-800',
24
+ web: 'data-[hover=true]:bg-red-700 data-[active=true]:data-[hover=true]:bg-red-800'
25
+ })]
26
+ }, {
27
+ color: 'warning',
28
+ className: [SEMANTIC_COLORS.warning.bg, Platform.select({
29
+ default: 'data-[active=true]:bg-amber-700',
30
+ web: 'data-[hover=true]:bg-amber-600 data-[active=true]:data-[hover=true]:bg-amber-700'
31
+ })]
32
+ }, {
33
+ color: 'success',
34
+ className: [SEMANTIC_COLORS.success.bg, Platform.select({
35
+ default: 'data-[active=true]:bg-green-800',
36
+ web: 'data-[hover=true]:bg-green-700 data-[active=true]:data-[hover=true]:bg-green-800'
37
+ })]
38
+ }, {
39
+ color: 'info',
40
+ className: [SEMANTIC_COLORS.info.bg, Platform.select({
41
+ default: 'data-[active=true]:bg-sky-700',
42
+ web: 'data-[hover=true]:bg-sky-600 data-[active=true]:data-[hover=true]:bg-sky-700'
43
+ })]
44
+ }, {
45
+ color: 'action',
46
+ mode: 'dark',
47
+ className: ['bg-slate-200', Platform.select({
48
+ default: 'data-[active=true]:bg-slate-400',
49
+ web: 'data-[hover=true]:bg-slate-300 data-[active=true]:data-[hover=true]:bg-slate-400'
50
+ })]
51
+ }];
52
+
53
+ /** Root surface: ghost hover/active fills (maps to `variant: 'ghost'` on Button and IconButton). */
54
+ export const sharedGhostSurfaceCompounds = [{
55
+ color: 'danger',
56
+ className: [Platform.select({
57
+ default: 'data-[active=true]:bg-red-100',
58
+ web: 'data-[hover=true]:bg-red-50 data-[active=true]:data-[hover=true]:bg-red-100'
59
+ })]
60
+ }, {
61
+ color: 'warning',
62
+ className: [Platform.select({
63
+ default: 'data-[active=true]:bg-amber-100',
64
+ web: 'data-[hover=true]:bg-amber-50 data-[active=true]:data-[hover=true]:bg-amber-100'
65
+ })]
66
+ }, {
67
+ color: 'success',
68
+ className: [Platform.select({
69
+ default: 'data-[active=true]:bg-green-100',
70
+ web: 'data-[hover=true]:bg-green-50 data-[active=true]:data-[hover=true]:bg-green-100'
71
+ })]
72
+ }, {
73
+ color: 'info',
74
+ className: [Platform.select({
75
+ default: 'data-[active=true]:bg-sky-100',
76
+ web: 'data-[hover=true]:bg-sky-50 data-[active=true]:data-[hover=true]:bg-sky-100'
77
+ })]
78
+ }, {
79
+ color: 'action',
80
+ mode: 'dark',
81
+ className: [Platform.select({
82
+ default: 'data-[active=true]:bg-slate-700',
83
+ web: 'data-[hover=true]:bg-slate-800 data-[active=true]:data-[hover=true]:bg-slate-700'
84
+ })]
85
+ }, {
86
+ color: 'danger',
87
+ mode: 'dark',
88
+ className: [Platform.select({
89
+ default: 'data-[active=true]:bg-red-950',
90
+ web: 'data-[hover=true]:bg-red-950/50 data-[active=true]:data-[hover=true]:bg-red-950'
91
+ })]
92
+ }, {
93
+ color: 'warning',
94
+ mode: 'dark',
95
+ className: [Platform.select({
96
+ default: 'data-[active=true]:bg-amber-950',
97
+ web: 'data-[hover=true]:bg-amber-950/50 data-[active=true]:data-[hover=true]:bg-amber-950'
98
+ })]
99
+ }, {
100
+ color: 'success',
101
+ mode: 'dark',
102
+ className: [Platform.select({
103
+ default: 'data-[active=true]:bg-green-950',
104
+ web: 'data-[hover=true]:bg-green-950/50 data-[active=true]:data-[hover=true]:bg-green-950'
105
+ })]
106
+ }, {
107
+ color: 'info',
108
+ mode: 'dark',
109
+ className: [Platform.select({
110
+ default: 'data-[active=true]:bg-sky-950',
111
+ web: 'data-[hover=true]:bg-sky-950/50 data-[active=true]:data-[hover=true]:bg-sky-950'
112
+ })]
113
+ }];
114
+
115
+ /** Foreground on filled controls (maps to Button `strong`, IconButton `solid`). */
116
+ export const sharedFilledForegroundTextCompounds = [{
117
+ color: 'action',
118
+ className: 'text-white'
119
+ }, {
120
+ color: 'danger',
121
+ className: 'text-white'
122
+ }, {
123
+ color: 'warning',
124
+ className: 'text-white'
125
+ }, {
126
+ color: 'success',
127
+ className: 'text-white'
128
+ }, {
129
+ color: 'info',
130
+ className: 'text-white'
131
+ }, {
132
+ color: 'action',
133
+ mode: 'dark',
134
+ className: 'text-slate-900'
135
+ }];
136
+
137
+ /**
138
+ * Foreground for transparent controls: same class names for Button `outline` and `ghost`, and for IconButton `ghost`.
139
+ * Consumers attach their own `variant` key(s).
140
+ */
141
+ export const sharedOutlineGhostForegroundTextCompounds = [{
142
+ color: 'action',
143
+ className: ['text-slate-900', Platform.select({
144
+ default: 'data-[active=true]:text-slate-700',
145
+ web: 'data-[hover=true]:text-slate-800 data-[active=true]:data-[hover=true]:text-slate-700'
146
+ })]
147
+ }, {
148
+ color: 'danger',
149
+ className: ['text-red-600', Platform.select({
150
+ default: 'data-[active=true]:text-red-800',
151
+ web: 'data-[hover=true]:text-red-700 data-[active=true]:data-[hover=true]:text-red-800'
152
+ })]
153
+ }, {
154
+ color: 'warning',
155
+ className: ['text-amber-600', Platform.select({
156
+ default: 'data-[active=true]:text-amber-800',
157
+ web: 'data-[hover=true]:text-amber-700 data-[active=true]:data-[hover=true]:text-amber-800'
158
+ })]
159
+ }, {
160
+ color: 'success',
161
+ className: ['text-green-600', Platform.select({
162
+ default: 'data-[active=true]:text-green-800',
163
+ web: 'data-[hover=true]:text-green-700 data-[active=true]:data-[hover=true]:text-green-800'
164
+ })]
165
+ }, {
166
+ color: 'info',
167
+ className: ['text-sky-600', Platform.select({
168
+ default: 'data-[active=true]:text-sky-800',
169
+ web: 'data-[hover=true]:text-sky-700 data-[active=true]:data-[hover=true]:text-sky-800'
170
+ })]
171
+ }, {
172
+ color: 'action',
173
+ mode: 'dark',
174
+ className: ['text-white', Platform.select({
175
+ default: 'data-[active=true]:text-white',
176
+ web: 'data-[hover=true]:text-white data-[active=true]:data-[hover=true]:text-white'
177
+ })]
178
+ }, {
179
+ color: 'danger',
180
+ mode: 'dark',
181
+ className: 'text-red-400'
182
+ }, {
183
+ color: 'warning',
184
+ mode: 'dark',
185
+ className: 'text-amber-400'
186
+ }, {
187
+ color: 'success',
188
+ mode: 'dark',
189
+ className: 'text-green-400'
190
+ }, {
191
+ color: 'info',
192
+ mode: 'dark',
193
+ className: 'text-sky-400'
194
+ }];
195
+ //# sourceMappingURL=buttonSharedVariants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","SEMANTIC_COLORS","sharedFilledSurfaceCompounds","color","className","action","bg","select","default","web","danger","warning","success","info","mode","sharedGhostSurfaceCompounds","sharedFilledForegroundTextCompounds","sharedOutlineGhostForegroundTextCompounds"],"sourceRoot":"../../../../src","sources":["components/Button/buttonSharedVariants.ts"],"mappings":"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","ignoreList":[]}
@@ -2,7 +2,24 @@
2
2
 
3
3
  import { Platform } from 'react-native';
4
4
  import { cva } from 'class-variance-authority';
5
- import { COLOR_BORDER_DEFAULT, DISABLED_CURSOR, DISABLED_OPACITY, RADIUS_SM, SEMANTIC_COLORS, TRANSITION_COLORS } from '../../styles/primitives';
5
+ import { COLOR_BORDER_DEFAULT, DISABLED_CURSOR, DISABLED_OPACITY, RADIUS_SM, TRANSITION_COLORS } from '../../styles/primitives';
6
+ import { sharedFilledForegroundTextCompounds, sharedFilledSurfaceCompounds, sharedGhostSurfaceCompounds, sharedOutlineGhostForegroundTextCompounds } from './buttonSharedVariants';
7
+ const buttonStrongSurfaceCompounds = sharedFilledSurfaceCompounds.map(c => ({
8
+ variant: 'strong',
9
+ ...c
10
+ }));
11
+ const buttonGhostSurfaceCompounds = sharedGhostSurfaceCompounds.map(c => ({
12
+ variant: 'ghost',
13
+ ...c
14
+ }));
15
+ const buttonStrongForegroundTextCompounds = sharedFilledForegroundTextCompounds.map(c => ({
16
+ variant: 'strong',
17
+ ...c
18
+ }));
19
+ const buttonOutlineGhostForegroundTextCompounds = sharedOutlineGhostForegroundTextCompounds.map(c => ({
20
+ variant: ['outline', 'ghost'],
21
+ ...c
22
+ }));
6
23
 
7
24
  // TODO: Split into 2 files
8
25
  // TODO: Create cva wrapper
@@ -34,54 +51,7 @@ export const buttonRootVariants = cva(['flex-row items-center justify-center', R
34
51
  false: ''
35
52
  }
36
53
  },
37
- compoundVariants: [
38
- // --- strong × color (light mode) ---
39
- {
40
- variant: 'strong',
41
- color: 'action',
42
- className: [SEMANTIC_COLORS.action.bg, Platform.select({
43
- default: 'data-[active=true]:bg-slate-700',
44
- web: 'data-[hover=true]:bg-slate-800 data-[active=true]:data-[hover=true]:bg-slate-700'
45
- })]
46
- }, {
47
- variant: 'strong',
48
- color: 'danger',
49
- className: [SEMANTIC_COLORS.danger.bg, Platform.select({
50
- default: 'data-[active=true]:bg-red-800',
51
- web: 'data-[hover=true]:bg-red-700 data-[active=true]:data-[hover=true]:bg-red-800'
52
- })]
53
- }, {
54
- variant: 'strong',
55
- color: 'warning',
56
- className: [SEMANTIC_COLORS.warning.bg, Platform.select({
57
- default: 'data-[active=true]:bg-amber-700',
58
- web: 'data-[hover=true]:bg-amber-600 data-[active=true]:data-[hover=true]:bg-amber-700'
59
- })]
60
- }, {
61
- variant: 'strong',
62
- color: 'success',
63
- className: [SEMANTIC_COLORS.success.bg, Platform.select({
64
- default: 'data-[active=true]:bg-green-800',
65
- web: 'data-[hover=true]:bg-green-700 data-[active=true]:data-[hover=true]:bg-green-800'
66
- })]
67
- }, {
68
- variant: 'strong',
69
- color: 'info',
70
- className: [SEMANTIC_COLORS.info.bg, Platform.select({
71
- default: 'data-[active=true]:bg-sky-700',
72
- web: 'data-[hover=true]:bg-sky-600 data-[active=true]:data-[hover=true]:bg-sky-700'
73
- })]
74
- },
75
- // --- strong × action × mode: dark ---
76
- {
77
- variant: 'strong',
78
- color: 'action',
79
- mode: 'dark',
80
- className: ['bg-slate-200', Platform.select({
81
- default: 'data-[active=true]:bg-slate-400',
82
- web: 'data-[hover=true]:bg-slate-300 data-[active=true]:data-[hover=true]:bg-slate-400'
83
- })]
84
- },
54
+ compoundVariants: [...buttonStrongSurfaceCompounds,
85
55
  // --- outline × color (light mode) ---
86
56
  {
87
57
  variant: 'outline',
@@ -162,81 +132,7 @@ export const buttonRootVariants = cva(['flex-row items-center justify-center', R
162
132
  default: 'data-[active=true]:bg-sky-950',
163
133
  web: 'data-[hover=true]:bg-sky-950/50 data-[active=true]:data-[hover=true]:bg-sky-950'
164
134
  })]
165
- },
166
- // --- ghost × color (light mode, non-action) ---
167
- {
168
- variant: 'ghost',
169
- color: 'danger',
170
- className: [Platform.select({
171
- default: 'data-[active=true]:bg-red-100',
172
- web: 'data-[hover=true]:bg-red-50 data-[active=true]:data-[hover=true]:bg-red-100'
173
- })]
174
- }, {
175
- variant: 'ghost',
176
- color: 'warning',
177
- className: [Platform.select({
178
- default: 'data-[active=true]:bg-amber-100',
179
- web: 'data-[hover=true]:bg-amber-50 data-[active=true]:data-[hover=true]:bg-amber-100'
180
- })]
181
- }, {
182
- variant: 'ghost',
183
- color: 'success',
184
- className: [Platform.select({
185
- default: 'data-[active=true]:bg-green-100',
186
- web: 'data-[hover=true]:bg-green-50 data-[active=true]:data-[hover=true]:bg-green-100'
187
- })]
188
- }, {
189
- variant: 'ghost',
190
- color: 'info',
191
- className: [Platform.select({
192
- default: 'data-[active=true]:bg-sky-100',
193
- web: 'data-[hover=true]:bg-sky-50 data-[active=true]:data-[hover=true]:bg-sky-100'
194
- })]
195
- },
196
- // --- ghost × action × mode: dark ---
197
- {
198
- variant: 'ghost',
199
- color: 'action',
200
- mode: 'dark',
201
- className: [Platform.select({
202
- default: 'data-[active=true]:bg-slate-700',
203
- web: 'data-[hover=true]:bg-slate-800 data-[active=true]:data-[hover=true]:bg-slate-700'
204
- })]
205
- },
206
- // --- ghost × semantic colors × mode: dark ---
207
- {
208
- variant: 'ghost',
209
- color: 'danger',
210
- mode: 'dark',
211
- className: [Platform.select({
212
- default: 'data-[active=true]:bg-red-950',
213
- web: 'data-[hover=true]:bg-red-950/50 data-[active=true]:data-[hover=true]:bg-red-950'
214
- })]
215
- }, {
216
- variant: 'ghost',
217
- color: 'warning',
218
- mode: 'dark',
219
- className: [Platform.select({
220
- default: 'data-[active=true]:bg-amber-950',
221
- web: 'data-[hover=true]:bg-amber-950/50 data-[active=true]:data-[hover=true]:bg-amber-950'
222
- })]
223
- }, {
224
- variant: 'ghost',
225
- color: 'success',
226
- mode: 'dark',
227
- className: [Platform.select({
228
- default: 'data-[active=true]:bg-green-950',
229
- web: 'data-[hover=true]:bg-green-950/50 data-[active=true]:data-[hover=true]:bg-green-950'
230
- })]
231
- }, {
232
- variant: 'ghost',
233
- color: 'info',
234
- mode: 'dark',
235
- className: [Platform.select({
236
- default: 'data-[active=true]:bg-sky-950',
237
- web: 'data-[hover=true]:bg-sky-950/50 data-[active=true]:data-[hover=true]:bg-sky-950'
238
- })]
239
- }],
135
+ }, ...buttonGhostSurfaceCompounds],
240
136
  defaultVariants: {
241
137
  variant: 'strong',
242
138
  color: 'action',
@@ -268,105 +164,7 @@ export const buttonTextVariants = cva(['font-medium', 'text-center'], {
268
164
  dark: []
269
165
  }
270
166
  },
271
- compoundVariants: [
272
- // --- strong × color (light mode) — always white text ---
273
- {
274
- variant: 'strong',
275
- color: 'action',
276
- className: 'text-white'
277
- }, {
278
- variant: 'strong',
279
- color: 'danger',
280
- className: 'text-white'
281
- }, {
282
- variant: 'strong',
283
- color: 'warning',
284
- className: 'text-white'
285
- }, {
286
- variant: 'strong',
287
- color: 'success',
288
- className: 'text-white'
289
- }, {
290
- variant: 'strong',
291
- color: 'info',
292
- className: 'text-white'
293
- },
294
- // --- strong × action × mode: dark ---
295
- {
296
- variant: 'strong',
297
- color: 'action',
298
- mode: 'dark',
299
- className: 'text-slate-900'
300
- },
301
- // --- outline/ghost × color (light mode text) ---
302
- {
303
- variant: ['outline', 'ghost'],
304
- color: 'action',
305
- className: ['text-slate-900', Platform.select({
306
- default: 'data-[active=true]:text-slate-700',
307
- web: 'data-[hover=true]:text-slate-800 data-[active=true]:data-[hover=true]:text-slate-700'
308
- })]
309
- }, {
310
- variant: ['outline', 'ghost'],
311
- color: 'danger',
312
- className: ['text-red-600', Platform.select({
313
- default: 'data-[active=true]:text-red-800',
314
- web: 'data-[hover=true]:text-red-700 data-[active=true]:data-[hover=true]:text-red-800'
315
- })]
316
- }, {
317
- variant: ['outline', 'ghost'],
318
- color: 'warning',
319
- className: ['text-amber-600', Platform.select({
320
- default: 'data-[active=true]:text-amber-800',
321
- web: 'data-[hover=true]:text-amber-700 data-[active=true]:data-[hover=true]:text-amber-800'
322
- })]
323
- }, {
324
- variant: ['outline', 'ghost'],
325
- color: 'success',
326
- className: ['text-green-600', Platform.select({
327
- default: 'data-[active=true]:text-green-800',
328
- web: 'data-[hover=true]:text-green-700 data-[active=true]:data-[hover=true]:text-green-800'
329
- })]
330
- }, {
331
- variant: ['outline', 'ghost'],
332
- color: 'info',
333
- className: ['text-sky-600', Platform.select({
334
- default: 'data-[active=true]:text-sky-800',
335
- web: 'data-[hover=true]:text-sky-700 data-[active=true]:data-[hover=true]:text-sky-800'
336
- })]
337
- },
338
- // --- outline/ghost × action × mode: dark ---
339
- {
340
- variant: ['outline', 'ghost'],
341
- color: 'action',
342
- mode: 'dark',
343
- className: ['text-white', Platform.select({
344
- default: 'data-[active=true]:text-white',
345
- web: 'data-[hover=true]:text-white data-[active=true]:data-[hover=true]:text-white'
346
- })]
347
- },
348
- // --- outline/ghost × semantic colors × mode: dark ---
349
- {
350
- variant: ['outline', 'ghost'],
351
- color: 'danger',
352
- mode: 'dark',
353
- className: 'text-red-400'
354
- }, {
355
- variant: ['outline', 'ghost'],
356
- color: 'warning',
357
- mode: 'dark',
358
- className: 'text-amber-400'
359
- }, {
360
- variant: ['outline', 'ghost'],
361
- color: 'success',
362
- mode: 'dark',
363
- className: 'text-green-400'
364
- }, {
365
- variant: ['outline', 'ghost'],
366
- color: 'info',
367
- mode: 'dark',
368
- className: 'text-sky-400'
369
- }],
167
+ compoundVariants: [...buttonStrongForegroundTextCompounds, ...buttonOutlineGhostForegroundTextCompounds],
370
168
  defaultVariants: {
371
169
  variant: 'strong',
372
170
  color: 'action',