@medway-ui/native 1.7.2 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -1
- package/lib/commonjs/components/Badge.js +159 -36
- package/lib/commonjs/components/Badge.js.map +1 -1
- package/lib/commonjs/components/Choice.js +35 -37
- package/lib/commonjs/components/Choice.js.map +1 -1
- package/lib/commonjs/components/SegmentControl.js +197 -0
- package/lib/commonjs/components/SegmentControl.js.map +1 -0
- package/lib/commonjs/editor/editorHtml.generated.js +1 -1
- package/lib/commonjs/editor/editorHtml.generated.js.map +1 -1
- package/lib/commonjs/hooks/useThemeColor.js +42 -42
- package/lib/commonjs/hooks/useThemeColor.js.map +1 -1
- package/lib/commonjs/index.js +31 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/lib/raised-surface.js +24 -0
- package/lib/commonjs/lib/raised-surface.js.map +1 -0
- package/lib/module/components/Badge.js +159 -36
- package/lib/module/components/Badge.js.map +1 -1
- package/lib/module/components/Choice.js +35 -37
- package/lib/module/components/Choice.js.map +1 -1
- package/lib/module/components/SegmentControl.js +189 -0
- package/lib/module/components/SegmentControl.js.map +1 -0
- package/lib/module/editor/editorHtml.generated.js +1 -1
- package/lib/module/editor/editorHtml.generated.js.map +1 -1
- package/lib/module/hooks/useThemeColor.js +42 -42
- package/lib/module/hooks/useThemeColor.js.map +1 -1
- package/lib/module/index.js +2 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/lib/raised-surface.js +22 -0
- package/lib/module/lib/raised-surface.js.map +1 -0
- package/lib/typescript/components/Badge.d.ts +14 -4
- package/lib/typescript/components/Badge.d.ts.map +1 -1
- package/lib/typescript/components/Chip.d.ts +2 -2
- package/lib/typescript/components/Choice.d.ts.map +1 -1
- package/lib/typescript/components/SegmentControl.d.ts +37 -0
- package/lib/typescript/components/SegmentControl.d.ts.map +1 -0
- package/lib/typescript/components/Tag.d.ts +2 -2
- package/lib/typescript/editor/editorHtml.generated.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +3 -1
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/lib/raised-surface.d.ts +3 -0
- package/lib/typescript/lib/raised-surface.d.ts.map +1 -0
- package/package.json +1 -1
- package/setup/tokens.native.css +49 -22
- package/src/components/Badge.tsx +207 -61
- package/src/components/Choice.tsx +66 -45
- package/src/components/SegmentControl.tsx +265 -0
- package/src/editor/editorHtml.generated.ts +1 -1
- package/src/hooks/useThemeColor.ts +42 -42
- package/src/index.ts +21 -1
- package/src/lib/raised-surface.tsx +21 -0
package/README.md
CHANGED
|
@@ -25,6 +25,8 @@ npx expo install react-native-reanimated react-native-svg expo-linear-gradient @
|
|
|
25
25
|
npx expo install react-native-safe-area-context
|
|
26
26
|
```
|
|
27
27
|
|
|
28
|
+
A sombra do card selecionado do `Choice` e do `SegmentControl` (`boxShadow`) e o gradiente do `Badge` freemium (`experimental_backgroundImage`) precisam do React Native 0.76+ com a nova arquitetura. Abaixo disso, o card fica sem sombra e o freemium fica com o fundo navy sólido.
|
|
29
|
+
|
|
28
30
|
Apps brownfield que já usam `babel-plugin-module-resolver` com aliases `@/` apontando para o `src/` do app também precisam de:
|
|
29
31
|
|
|
30
32
|
```bash
|
|
@@ -341,7 +343,7 @@ import { Check, CloseMd } from "@medway-ui/icons/native";
|
|
|
341
343
|
| Button | ✅ | Variantes, loading, badge, ponto de alerta |
|
|
342
344
|
| Input | ✅ | text, email, password, numeric |
|
|
343
345
|
| Alert | ✅ | Subcomponentes, todas as variantes |
|
|
344
|
-
| Badge | ✅ |
|
|
346
|
+
| Badge | ✅ | Primary, secondary e grandes áreas, cheias ou `-soft`; freemium, só ícone e ponto |
|
|
345
347
|
| Loading | ✅ | Spin com Reanimated |
|
|
346
348
|
| LoadingOverlay | ✅ | Overlay de Card + Modal, ícone central customizável |
|
|
347
349
|
| Checkbox | ✅ | @rn-primitives/checkbox |
|
|
@@ -363,6 +365,7 @@ import { Check, CloseMd } from "@medway-ui/icons/native";
|
|
|
363
365
|
| CardNews | ✅ | Card composable (Content Hub) |
|
|
364
366
|
| IndexLevel | ✅ | Níveis p/h/m/l, variantes, anel com gradiente `animated` |
|
|
365
367
|
| Tabs | ✅ | Tabs, TabsList, TabsTrigger, TabsContent |
|
|
368
|
+
| SegmentControl | ✅ | SegmentControl, SegmentControlList, SegmentControlTrigger (ícone e badge), SegmentControlContent |
|
|
366
369
|
| Chip | ✅ | Tamanhos e variantes |
|
|
367
370
|
| Choice | ✅ | Pill selecionável com cores do tema |
|
|
368
371
|
| Filter | ✅ | Pill com critérios e indicador de dropdown |
|
|
@@ -13,58 +13,163 @@ var _classVarianceAuthority = require("class-variance-authority");
|
|
|
13
13
|
var _utils = require("@/lib/utils");
|
|
14
14
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
15
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
lg: "h-6 w-6 p-0",
|
|
20
|
-
xl: "h-7 w-7 p-0"
|
|
21
|
-
};
|
|
22
|
-
const CHAR_PADDING = {
|
|
23
|
-
sm: "px-1",
|
|
24
|
-
md: "px-1",
|
|
25
|
-
lg: "px-1",
|
|
26
|
-
xl: "px-1.5"
|
|
27
|
-
};
|
|
28
|
-
const badgeVariants = exports.badgeVariants = (0, _classVarianceAuthority.cva)("flex-row items-center justify-center rounded-full px-2", {
|
|
16
|
+
// A dot has no content, so the types flag what it would drop.
|
|
17
|
+
|
|
18
|
+
const badgeVariants = exports.badgeVariants = (0, _classVarianceAuthority.cva)("flex-row items-center justify-center rounded-pill", {
|
|
29
19
|
variants: {
|
|
30
20
|
variant: {
|
|
21
|
+
primary: "bg-primary-background-fill",
|
|
22
|
+
"primary-soft": "bg-surface-card",
|
|
23
|
+
secondary: "bg-secondary-background-fill",
|
|
24
|
+
"secondary-soft": "bg-surface-card",
|
|
31
25
|
regular: "bg-secondary-background-fill",
|
|
26
|
+
cm: "bg-cm-background-fill",
|
|
27
|
+
"cm-soft": "bg-surface-card",
|
|
28
|
+
go: "bg-go-background-fill",
|
|
29
|
+
"go-soft": "bg-surface-card",
|
|
30
|
+
cir: "bg-cir-background-fill",
|
|
31
|
+
"cir-soft": "bg-surface-card",
|
|
32
|
+
// The design paints pediatrics with the warning tokens, all but the filled label.
|
|
33
|
+
ped: "bg-yellow-background-fill",
|
|
34
|
+
"ped-soft": "bg-surface-card",
|
|
35
|
+
prev: "bg-prev-background-fill",
|
|
36
|
+
"prev-soft": "bg-surface-card",
|
|
37
|
+
freemium: "bg-primary",
|
|
32
38
|
error: "bg-red-background-soft",
|
|
33
39
|
warning: "bg-yellow-background-soft",
|
|
34
|
-
|
|
40
|
+
neutral: "bg-gray-background-soft"
|
|
35
41
|
},
|
|
36
42
|
size: {
|
|
37
|
-
sm: "min-h-4 min-w-4",
|
|
38
|
-
md: "min-h-5 min-w-5",
|
|
39
|
-
lg: "min-h-6 min-w-6",
|
|
40
|
-
xl: "min-h-7 min-w-7"
|
|
43
|
+
sm: "min-h-4 min-w-4 gap-1 px-1 py-0.5",
|
|
44
|
+
md: "min-h-5 min-w-5 gap-1 px-1 py-0.5",
|
|
45
|
+
lg: "min-h-6 min-w-6 gap-1.5 px-1.5 py-1",
|
|
46
|
+
xl: "min-h-7 min-w-7 gap-2 px-2 py-1"
|
|
41
47
|
}
|
|
42
48
|
},
|
|
49
|
+
compoundVariants: [{
|
|
50
|
+
variant: "freemium",
|
|
51
|
+
size: "md",
|
|
52
|
+
className: "px-1.5 py-1"
|
|
53
|
+
}, {
|
|
54
|
+
variant: "freemium",
|
|
55
|
+
size: "lg",
|
|
56
|
+
className: "px-2"
|
|
57
|
+
}, {
|
|
58
|
+
variant: "freemium",
|
|
59
|
+
size: "xl",
|
|
60
|
+
className: "px-2.5"
|
|
61
|
+
}],
|
|
43
62
|
defaultVariants: {
|
|
44
|
-
variant: "
|
|
63
|
+
variant: "secondary",
|
|
45
64
|
size: "md"
|
|
46
65
|
}
|
|
47
66
|
});
|
|
48
|
-
|
|
67
|
+
// Laid over `surface-card`, as in the design, so a soft badge stays opaque on any surface.
|
|
68
|
+
const SOFT_TINT = {
|
|
69
|
+
"primary-soft": "bg-primary-background-soft",
|
|
70
|
+
"secondary-soft": "bg-secondary-background-soft",
|
|
71
|
+
"cm-soft": "bg-cm-background-soft",
|
|
72
|
+
"go-soft": "bg-go-background-soft",
|
|
73
|
+
"cir-soft": "bg-cir-background-soft",
|
|
74
|
+
"ped-soft": "bg-yellow-background-soft",
|
|
75
|
+
"prev-soft": "bg-prev-background-soft"
|
|
76
|
+
};
|
|
77
|
+
const badgeTextVariants = (0, _classVarianceAuthority.cva)("font-bold", {
|
|
49
78
|
variants: {
|
|
50
79
|
variant: {
|
|
80
|
+
primary: "text-primary-foreground-onfill",
|
|
81
|
+
"primary-soft": "text-primary-foreground",
|
|
82
|
+
secondary: "text-secondary-foreground-onfill",
|
|
83
|
+
"secondary-soft": "text-secondary-foreground",
|
|
51
84
|
regular: "text-secondary-foreground-onfill",
|
|
85
|
+
cm: "text-cm-foreground-onfill",
|
|
86
|
+
"cm-soft": "text-cm-foreground",
|
|
87
|
+
go: "text-go-foreground-onfill",
|
|
88
|
+
"go-soft": "text-go-foreground",
|
|
89
|
+
cir: "text-cir-foreground-onfill",
|
|
90
|
+
"cir-soft": "text-cir-foreground",
|
|
91
|
+
ped: "text-ped-foreground-onfill",
|
|
92
|
+
"ped-soft": "text-yellow-foreground",
|
|
93
|
+
prev: "text-prev-foreground-onfill",
|
|
94
|
+
"prev-soft": "text-prev-foreground",
|
|
95
|
+
// White, not the design's onfill token: that one turns dark in dark mode, on a fill that stays navy.
|
|
96
|
+
freemium: "font-semibold text-white",
|
|
52
97
|
error: "text-red-stroke-emphasis",
|
|
53
98
|
warning: "text-yellow-foreground",
|
|
54
|
-
|
|
99
|
+
neutral: "text-primary-foreground"
|
|
55
100
|
},
|
|
56
101
|
size: {
|
|
57
|
-
sm: "text-
|
|
58
|
-
md: "text-xs",
|
|
59
|
-
lg: "text-xs",
|
|
60
|
-
xl: "text-sm"
|
|
102
|
+
sm: "text-xxs leading-xxs",
|
|
103
|
+
md: "text-xs leading-xs",
|
|
104
|
+
lg: "text-xs leading-xs",
|
|
105
|
+
xl: "text-sm leading-sm"
|
|
61
106
|
}
|
|
62
107
|
},
|
|
108
|
+
compoundVariants: [{
|
|
109
|
+
variant: "freemium",
|
|
110
|
+
size: "md",
|
|
111
|
+
className: "text-xxs leading-xxs"
|
|
112
|
+
}],
|
|
63
113
|
defaultVariants: {
|
|
64
|
-
variant: "
|
|
114
|
+
variant: "secondary",
|
|
65
115
|
size: "md"
|
|
66
116
|
}
|
|
67
117
|
});
|
|
118
|
+
const badgeDotVariants = (0, _classVarianceAuthority.cva)("rounded-circular", {
|
|
119
|
+
variants: {
|
|
120
|
+
variant: {
|
|
121
|
+
primary: "bg-primary-background-fill",
|
|
122
|
+
"primary-soft": "bg-primary-background-fill",
|
|
123
|
+
secondary: "bg-secondary-background-fill",
|
|
124
|
+
"secondary-soft": "bg-secondary-background-fill",
|
|
125
|
+
regular: "bg-secondary-background-fill",
|
|
126
|
+
cm: "bg-cm-background-fill",
|
|
127
|
+
"cm-soft": "bg-cm-background-fill",
|
|
128
|
+
go: "bg-go-background-fill",
|
|
129
|
+
"go-soft": "bg-go-background-fill",
|
|
130
|
+
cir: "bg-cir-background-fill",
|
|
131
|
+
"cir-soft": "bg-cir-background-fill",
|
|
132
|
+
ped: "bg-yellow-background-fill",
|
|
133
|
+
"ped-soft": "bg-yellow-background-fill",
|
|
134
|
+
prev: "bg-prev-background-fill",
|
|
135
|
+
"prev-soft": "bg-prev-background-fill",
|
|
136
|
+
freemium: "bg-primary",
|
|
137
|
+
error: "bg-red-background-fill",
|
|
138
|
+
warning: "bg-yellow-background-fill",
|
|
139
|
+
neutral: "bg-gray-background-fill"
|
|
140
|
+
},
|
|
141
|
+
size: {
|
|
142
|
+
sm: "size-1",
|
|
143
|
+
md: "size-2",
|
|
144
|
+
lg: "size-3",
|
|
145
|
+
xl: "size-4"
|
|
146
|
+
}
|
|
147
|
+
},
|
|
148
|
+
defaultVariants: {
|
|
149
|
+
variant: "secondary",
|
|
150
|
+
size: "md"
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
|
|
154
|
+
// The design's 10, 12, 16 and 20px as a minimum: a bigger icon grows the badge instead of
|
|
155
|
+
// spilling over its gap and padding.
|
|
156
|
+
const ICON_BOX = {
|
|
157
|
+
sm: "min-h-2.5 min-w-2.5",
|
|
158
|
+
md: "min-h-3 min-w-3",
|
|
159
|
+
lg: "min-h-4 min-w-4",
|
|
160
|
+
xl: "min-h-5 min-w-5"
|
|
161
|
+
};
|
|
162
|
+
const ICON_ONLY_PADDING = {
|
|
163
|
+
sm: "p-0.5",
|
|
164
|
+
md: "px-1 py-0.5",
|
|
165
|
+
lg: "p-1",
|
|
166
|
+
xl: "p-1"
|
|
167
|
+
};
|
|
168
|
+
|
|
169
|
+
// Corner to corner like the design's at any width, unlike the web's fixed 46deg.
|
|
170
|
+
const FREEMIUM_GRADIENT = {
|
|
171
|
+
experimental_backgroundImage: "radial-gradient(135.09% 111.8% at 0% 50%, rgba(24, 98, 188, 0.02) 0%, rgba(0, 32, 91, 0) 100%), linear-gradient(to top right, rgba(62, 218, 199, 0.56) 6.54%, rgba(24, 98, 188, 0.17) 85.21%)"
|
|
172
|
+
};
|
|
68
173
|
const SHINE_DURATION_MS = 2000;
|
|
69
174
|
function BadgeShine() {
|
|
70
175
|
const progress = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
@@ -89,7 +194,7 @@ function BadgeShine() {
|
|
|
89
194
|
}, [progress]);
|
|
90
195
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
91
196
|
pointerEvents: "none",
|
|
92
|
-
className: "absolute inset-0 overflow-hidden rounded-
|
|
197
|
+
className: "absolute inset-0 overflow-hidden rounded-pill",
|
|
93
198
|
onLayout: handleLayout,
|
|
94
199
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
|
|
95
200
|
className: "absolute bottom-0 top-0 bg-white-24",
|
|
@@ -103,28 +208,46 @@ function Badge({
|
|
|
103
208
|
size,
|
|
104
209
|
icon,
|
|
105
210
|
animation,
|
|
211
|
+
layout = "tag",
|
|
212
|
+
style,
|
|
106
213
|
children,
|
|
107
214
|
...props
|
|
108
215
|
}) {
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
216
|
+
if (layout === "dot") {
|
|
217
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
218
|
+
className: (0, _utils.cn)(badgeDotVariants({
|
|
219
|
+
variant,
|
|
220
|
+
size
|
|
221
|
+
}), className),
|
|
222
|
+
style: style,
|
|
223
|
+
...props
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
const resolvedSize = size ?? "md";
|
|
227
|
+
const tint = SOFT_TINT[variant ?? "secondary"];
|
|
228
|
+
const hasContent = children != null && typeof children !== "boolean" && children !== "";
|
|
229
|
+
const isIconOnly = !!icon && !hasContent;
|
|
115
230
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
116
231
|
className: (0, _utils.cn)(badgeVariants({
|
|
117
232
|
variant,
|
|
118
233
|
size
|
|
119
|
-
}),
|
|
234
|
+
}), isIconOnly && ICON_ONLY_PADDING[resolvedSize], className),
|
|
235
|
+
style: variant === "freemium" ? [FREEMIUM_GRADIENT, style] : style,
|
|
120
236
|
...props,
|
|
121
|
-
children: [
|
|
237
|
+
children: [tint ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
238
|
+
pointerEvents: "none",
|
|
239
|
+
className: (0, _utils.cn)("absolute inset-0 rounded-pill", tint)
|
|
240
|
+
}) : null, animation === "shine" ? /*#__PURE__*/(0, _jsxRuntime.jsx)(BadgeShine, {}) : null, icon ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
241
|
+
className: (0, _utils.cn)("items-center justify-center", ICON_BOX[resolvedSize]),
|
|
242
|
+
children: icon
|
|
243
|
+
}) : null, hasContent ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.Text, {
|
|
244
|
+
numberOfLines: 1,
|
|
122
245
|
className: (0, _utils.cn)(badgeTextVariants({
|
|
123
246
|
variant,
|
|
124
247
|
size
|
|
125
248
|
})),
|
|
126
249
|
children: children
|
|
127
|
-
})]
|
|
250
|
+
}) : null]
|
|
128
251
|
});
|
|
129
252
|
}
|
|
130
253
|
//# sourceMappingURL=Badge.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_interopRequireWildcard","_Text","_classVarianceAuthority","_utils","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_interopRequireWildcard","_Text","_classVarianceAuthority","_utils","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","badgeVariants","exports","cva","variants","variant","primary","secondary","regular","cm","go","cir","ped","prev","freemium","error","warning","neutral","size","sm","md","lg","xl","compoundVariants","className","defaultVariants","SOFT_TINT","badgeTextVariants","badgeDotVariants","ICON_BOX","ICON_ONLY_PADDING","FREEMIUM_GRADIENT","experimental_backgroundImage","SHINE_DURATION_MS","BadgeShine","progress","useSharedValue","width","handleLayout","event","value","nativeEvent","layout","bandStyle","useAnimatedStyle","transform","translateX","interpolate","skewX","useEffect","withRepeat","withTiming","duration","easing","Easing","linear","cancelAnimation","jsx","View","pointerEvents","onLayout","children","style","Badge","icon","animation","props","cn","resolvedSize","tint","hasContent","isIconOnly","jsxs","Text","numberOfLines"],"sourceRoot":"../../../src","sources":["components/Badge.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -8,24 +8,34 @@ var _reactNative = require("react-native");
|
|
|
8
8
|
var MedwayIcons = _interopRequireWildcard(require("@medway-ui/icons/native"));
|
|
9
9
|
var _Text = require("@/components/Text");
|
|
10
10
|
var _ThemedIcon = require("@/components/ThemedIcon");
|
|
11
|
-
var
|
|
11
|
+
var _raisedSurface = require("@/lib/raised-surface");
|
|
12
12
|
var _utils = require("@/lib/utils");
|
|
13
13
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
14
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
15
|
+
// The design's padding minus the 2px ring (`p-0.5`) around the inner card. The vertical hit slop
|
|
16
|
+
// takes the 32, 40 and 48pt chips to the package's 44pt touch target (`MIN_TOUCH_TARGET`).
|
|
15
17
|
const SIZE_MAP = {
|
|
16
18
|
sm: {
|
|
17
|
-
container: "gap-2 px-
|
|
18
|
-
text: "text-xs",
|
|
19
|
-
icon: 16
|
|
19
|
+
container: "gap-2 px-2.5 py-1.5",
|
|
20
|
+
text: "text-xs leading-xs",
|
|
21
|
+
icon: 16,
|
|
22
|
+
hitSlop: {
|
|
23
|
+
top: 6,
|
|
24
|
+
bottom: 6
|
|
25
|
+
}
|
|
20
26
|
},
|
|
21
27
|
md: {
|
|
22
|
-
container: "gap-2.5 px-3
|
|
23
|
-
text: "text-sm",
|
|
24
|
-
icon: 20
|
|
28
|
+
container: "gap-2.5 px-3 py-2",
|
|
29
|
+
text: "text-sm leading-sm",
|
|
30
|
+
icon: 20,
|
|
31
|
+
hitSlop: {
|
|
32
|
+
top: 2,
|
|
33
|
+
bottom: 2
|
|
34
|
+
}
|
|
25
35
|
},
|
|
26
36
|
lg: {
|
|
27
|
-
container: "gap-3 px-
|
|
28
|
-
text: "text-
|
|
37
|
+
container: "gap-3 px-3.5 py-2.5",
|
|
38
|
+
text: "text-md leading-md",
|
|
29
39
|
icon: 24
|
|
30
40
|
}
|
|
31
41
|
};
|
|
@@ -55,15 +65,6 @@ const THEME_CHECK_COLOR_TOKEN = {
|
|
|
55
65
|
ped: "ped-foreground",
|
|
56
66
|
prev: "prev-foreground"
|
|
57
67
|
};
|
|
58
|
-
const SHADOW_STYLE = {
|
|
59
|
-
shadowOffset: {
|
|
60
|
-
width: 0,
|
|
61
|
-
height: 2
|
|
62
|
-
},
|
|
63
|
-
shadowOpacity: 0.08,
|
|
64
|
-
shadowRadius: 4,
|
|
65
|
-
elevation: 2
|
|
66
|
-
};
|
|
67
68
|
function Choice({
|
|
68
69
|
label,
|
|
69
70
|
selected = false,
|
|
@@ -75,39 +76,36 @@ function Choice({
|
|
|
75
76
|
className
|
|
76
77
|
}) {
|
|
77
78
|
const sz = SIZE_MAP[size] ?? SIZE_MAP.md;
|
|
78
|
-
const
|
|
79
|
-
const outerBg = disabled ? "bg-gray-background-soft-muted" : selected ? THEME_SELECTED_OUTER_BG[theme] : "bg-gray-background-soft";
|
|
80
|
-
const textClass = disabled ? "font-medium text-gray-foreground-muted" : selected ? "font-semibold text-primary-foreground" : "font-medium text-gray-foreground";
|
|
79
|
+
const isRaised = selected && !disabled;
|
|
80
|
+
const outerBg = disabled ? "bg-gray-background-soft-muted" : selected ? THEME_SELECTED_OUTER_BG[theme] : "bg-gray-background-soft active:bg-gray-background-soft-emphasis";
|
|
81
81
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
|
|
82
82
|
onPress: disabled ? undefined : onPress,
|
|
83
83
|
disabled: disabled,
|
|
84
|
-
|
|
84
|
+
hitSlop: sz.hitSlop,
|
|
85
|
+
accessibilityRole: "togglebutton",
|
|
86
|
+
accessibilityLabel: label,
|
|
85
87
|
accessibilityState: {
|
|
86
|
-
selected,
|
|
88
|
+
checked: selected,
|
|
87
89
|
disabled
|
|
88
90
|
},
|
|
89
|
-
className: (0, _utils.cn)("rounded-md", outerBg, className),
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
},
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
style: selected ? {
|
|
96
|
-
...SHADOW_STYLE,
|
|
97
|
-
shadowColor
|
|
98
|
-
} : undefined,
|
|
99
|
-
children: [icon ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
91
|
+
className: (0, _utils.cn)("rounded-md p-0.5", outerBg, className),
|
|
92
|
+
children: ({
|
|
93
|
+
pressed
|
|
94
|
+
}) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
95
|
+
className: (0, _utils.cn)("flex-row items-center justify-center", sz.container),
|
|
96
|
+
children: [isRaised ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_raisedSurface.RaisedSurface, {}) : null, icon ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
100
97
|
className: "shrink-0",
|
|
101
98
|
children: icon
|
|
102
99
|
}) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.Text, {
|
|
103
|
-
|
|
100
|
+
numberOfLines: 1,
|
|
101
|
+
className: (0, _utils.cn)("shrink text-center", sz.text, disabled ? "font-medium text-gray-foreground-muted" : selected ? "font-semibold text-primary-foreground" : pressed ? "font-medium text-gray-foreground-emphasis" : "font-medium text-gray-foreground"),
|
|
104
102
|
children: label
|
|
105
103
|
}), selected ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
106
104
|
className: "shrink-0",
|
|
107
105
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ThemedIcon.ThemedIcon, {
|
|
108
|
-
icon: MedwayIcons.
|
|
106
|
+
icon: MedwayIcons.CheckMedium,
|
|
109
107
|
size: sz.icon,
|
|
110
|
-
colorToken: THEME_CHECK_COLOR_TOKEN[theme]
|
|
108
|
+
colorToken: disabled ? "gray-foreground-muted" : THEME_CHECK_COLOR_TOKEN[theme]
|
|
111
109
|
})
|
|
112
110
|
}) : null]
|
|
113
111
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","MedwayIcons","_interopRequireWildcard","_Text","_ThemedIcon","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","MedwayIcons","_interopRequireWildcard","_Text","_ThemedIcon","_raisedSurface","_utils","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","SIZE_MAP","sm","container","text","icon","hitSlop","top","bottom","md","lg","THEME_SELECTED_OUTER_BG","gray","primary","secondary","green","red","yellow","cm","go","cir","ped","prev","THEME_CHECK_COLOR_TOKEN","Choice","label","selected","disabled","size","theme","onPress","className","sz","isRaised","outerBg","jsx","Pressable","undefined","accessibilityRole","accessibilityLabel","accessibilityState","checked","cn","children","pressed","jsxs","View","RaisedSurface","Text","numberOfLines","ThemedIcon","CheckMedium","colorToken"],"sourceRoot":"../../../src","sources":["components/Choice.tsx"],"mappings":"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","ignoreList":[]}
|