zkit-ui 2.0.6 → 2.0.7
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.
|
@@ -61,7 +61,7 @@ export type ButtonColors = {
|
|
|
61
61
|
loading?: string;
|
|
62
62
|
pressedOverlay?: string;
|
|
63
63
|
};
|
|
64
|
-
type NativePressableProps = Omit<React.ComponentPropsWithoutRef<typeof Pressable>, 'accessibilityRole' | 'accessibilityState' | 'children' | 'disabled' | 'style'>;
|
|
64
|
+
type NativePressableProps = Omit<React.ComponentPropsWithoutRef<typeof Pressable>, 'accessibilityRole' | 'accessibilityState' | 'children' | 'disabled' | 'role' | 'style'>;
|
|
65
65
|
export type ButtonRef = React.ComponentRef<typeof Pressable>;
|
|
66
66
|
export interface ButtonProps extends NativePressableProps {
|
|
67
67
|
variant?: ButtonVariant;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/Button/index.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/Button/index.tsx"],"names":[],"mappings":"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"}
|
package/dist/ui/Button/index.js
CHANGED
|
@@ -539,6 +539,15 @@ function resolveWebCursorStyle(disabled) {
|
|
|
539
539
|
return undefined;
|
|
540
540
|
return { cursor: disabled ? 'not-allowed' : 'pointer' };
|
|
541
541
|
}
|
|
542
|
+
function resolveRootAccessibilityRole() {
|
|
543
|
+
return react_native_1.Platform.OS === 'web' ? undefined : 'button';
|
|
544
|
+
}
|
|
545
|
+
function resolveRootPressableProps(props) {
|
|
546
|
+
if (react_native_1.Platform.OS !== 'web')
|
|
547
|
+
return props;
|
|
548
|
+
const { accessibilityRole: _accessibilityRole, role: _role, ...rest } = props;
|
|
549
|
+
return rest;
|
|
550
|
+
}
|
|
542
551
|
function requiresAnimatedPressEffect(effect) {
|
|
543
552
|
return (effect === 'scale' ||
|
|
544
553
|
effect === 'scale-opacity' ||
|
|
@@ -707,6 +716,8 @@ function ButtonStaticImpl({ variant = 'solid', tone = 'primary', size = 'md', sh
|
|
|
707
716
|
return;
|
|
708
717
|
onPress === null || onPress === void 0 ? void 0 : onPress(event);
|
|
709
718
|
}, [interactionDisabled, onPress]);
|
|
719
|
+
const rootAccessibilityRole = resolveRootAccessibilityRole();
|
|
720
|
+
const rootPressableProps = resolveRootPressableProps(pressableProps);
|
|
710
721
|
const pressOpacityEnabled = !interactionDisabled && (pressEffect === 'auto' || pressEffect === 'opacity');
|
|
711
722
|
const rootStyle = React.useCallback(({ pressed }) => [
|
|
712
723
|
styles.root,
|
|
@@ -726,7 +737,7 @@ function ButtonStaticImpl({ variant = 'solid', tone = 'primary', size = 'md', sh
|
|
|
726
737
|
visualDisabled,
|
|
727
738
|
webCursorStyle,
|
|
728
739
|
]);
|
|
729
|
-
return ((0, jsx_runtime_1.jsx)(react_native_1.Pressable, { ...
|
|
740
|
+
return ((0, jsx_runtime_1.jsx)(react_native_1.Pressable, { ...rootPressableProps, ref: ref, accessibilityLabel: resolvedAccessibilityLabel, accessibilityRole: rootAccessibilityRole, accessibilityState: {
|
|
730
741
|
...accessibilityState,
|
|
731
742
|
busy: Boolean(loading || (accessibilityState === null || accessibilityState === void 0 ? void 0 : accessibilityState.busy)),
|
|
732
743
|
disabled: Boolean(interactionDisabled || (accessibilityState === null || accessibilityState === void 0 ? void 0 : accessibilityState.disabled)),
|
|
@@ -816,7 +827,9 @@ function ButtonPressAnimatedImpl({ variant = 'solid', tone = 'primary', size = '
|
|
|
816
827
|
}
|
|
817
828
|
onPressOut === null || onPressOut === void 0 ? void 0 : onPressOut(event);
|
|
818
829
|
}, [interactionDisabled, onPressOut, pressSv, resolvedPressEffect]);
|
|
819
|
-
|
|
830
|
+
const rootAccessibilityRole = resolveRootAccessibilityRole();
|
|
831
|
+
const rootPressableProps = resolveRootPressableProps(pressableProps);
|
|
832
|
+
return ((0, jsx_runtime_1.jsx)(AnimatedPressable, { ...rootPressableProps, ref: ref, accessibilityLabel: resolvedAccessibilityLabel, accessibilityRole: rootAccessibilityRole, accessibilityState: {
|
|
820
833
|
...accessibilityState,
|
|
821
834
|
busy: Boolean(loading || (accessibilityState === null || accessibilityState === void 0 ? void 0 : accessibilityState.busy)),
|
|
822
835
|
disabled: Boolean(interactionDisabled || (accessibilityState === null || accessibilityState === void 0 ? void 0 : accessibilityState.disabled)),
|
|
@@ -997,7 +1010,9 @@ function ButtonAnimatedImpl({ variant = 'solid', tone = 'primary', size = 'md',
|
|
|
997
1010
|
}
|
|
998
1011
|
onPressOut === null || onPressOut === void 0 ? void 0 : onPressOut(event);
|
|
999
1012
|
}, [interactionDisabled, onPressOut, pressSv, resolvedPressEffect]);
|
|
1000
|
-
|
|
1013
|
+
const rootAccessibilityRole = resolveRootAccessibilityRole();
|
|
1014
|
+
const rootPressableProps = resolveRootPressableProps(pressableProps);
|
|
1015
|
+
return ((0, jsx_runtime_1.jsx)(AnimatedPressable, { ...rootPressableProps, ref: ref, accessibilityLabel: resolvedAccessibilityLabel, accessibilityRole: rootAccessibilityRole, accessibilityState: {
|
|
1001
1016
|
...accessibilityState,
|
|
1002
1017
|
busy: Boolean(loading || (accessibilityState === null || accessibilityState === void 0 ? void 0 : accessibilityState.busy)),
|
|
1003
1018
|
disabled: Boolean(interactionDisabled || (accessibilityState === null || accessibilityState === void 0 ? void 0 : accessibilityState.disabled)),
|
package/package.json
CHANGED
package/src/ui/Button/README.md
CHANGED
|
@@ -186,5 +186,5 @@ export function Demo() {
|
|
|
186
186
|
|
|
187
187
|
- `disabled` 会禁用交互并进入禁用视觉;`loading` 只禁用交互,不强制置灰
|
|
188
188
|
- 显式传入 `hitSlop` 时以调用侧为准;否则小尺寸和 `link` 会自动补足触控热区
|
|
189
|
-
- `accessibilityRole` 固定为 `button`
|
|
189
|
+
- Native 端 `accessibilityRole` 固定为 `button`;Web 端根节点不设置 `button` role,避免 RN Web 将 Button 渲染为真实 `<button>` 后产生嵌套按钮问题
|
|
190
190
|
- `iconOnly` 必须提供可读的 `accessibilityLabel`,除非 children 是可作为标签的文本
|
package/src/ui/Button/index.tsx
CHANGED
|
@@ -108,7 +108,7 @@ export type ButtonColors = {
|
|
|
108
108
|
|
|
109
109
|
type NativePressableProps = Omit<
|
|
110
110
|
React.ComponentPropsWithoutRef<typeof Pressable>,
|
|
111
|
-
'accessibilityRole' | 'accessibilityState' | 'children' | 'disabled' | 'style'
|
|
111
|
+
'accessibilityRole' | 'accessibilityState' | 'children' | 'disabled' | 'role' | 'style'
|
|
112
112
|
>;
|
|
113
113
|
|
|
114
114
|
export type ButtonRef = React.ComponentRef<typeof Pressable>;
|
|
@@ -839,6 +839,20 @@ function resolveWebCursorStyle(disabled: boolean): ViewStyle | undefined {
|
|
|
839
839
|
return { cursor: disabled ? 'not-allowed' : 'pointer' } as ViewStyle;
|
|
840
840
|
}
|
|
841
841
|
|
|
842
|
+
function resolveRootAccessibilityRole() {
|
|
843
|
+
return Platform.OS === 'web' ? undefined : 'button';
|
|
844
|
+
}
|
|
845
|
+
|
|
846
|
+
function resolveRootPressableProps<T extends object>(props: T): T {
|
|
847
|
+
if (Platform.OS !== 'web') return props;
|
|
848
|
+
|
|
849
|
+
const { accessibilityRole: _accessibilityRole, role: _role, ...rest } = props as T & {
|
|
850
|
+
accessibilityRole?: unknown;
|
|
851
|
+
role?: unknown;
|
|
852
|
+
};
|
|
853
|
+
return rest as T;
|
|
854
|
+
}
|
|
855
|
+
|
|
842
856
|
function requiresAnimatedPressEffect(effect: ButtonPressEffect | undefined) {
|
|
843
857
|
return (
|
|
844
858
|
effect === 'scale' ||
|
|
@@ -1161,6 +1175,8 @@ function ButtonStaticImpl(
|
|
|
1161
1175
|
},
|
|
1162
1176
|
[interactionDisabled, onPress]
|
|
1163
1177
|
);
|
|
1178
|
+
const rootAccessibilityRole = resolveRootAccessibilityRole();
|
|
1179
|
+
const rootPressableProps = resolveRootPressableProps(pressableProps);
|
|
1164
1180
|
const pressOpacityEnabled = !interactionDisabled && (pressEffect === 'auto' || pressEffect === 'opacity');
|
|
1165
1181
|
const rootStyle = React.useCallback(
|
|
1166
1182
|
({ pressed }: PressableStateCallbackType) => [
|
|
@@ -1186,10 +1202,10 @@ function ButtonStaticImpl(
|
|
|
1186
1202
|
|
|
1187
1203
|
return (
|
|
1188
1204
|
<Pressable
|
|
1189
|
-
{...
|
|
1205
|
+
{...rootPressableProps}
|
|
1190
1206
|
ref={ref}
|
|
1191
1207
|
accessibilityLabel={resolvedAccessibilityLabel}
|
|
1192
|
-
accessibilityRole=
|
|
1208
|
+
accessibilityRole={rootAccessibilityRole}
|
|
1193
1209
|
accessibilityState={{
|
|
1194
1210
|
...accessibilityState,
|
|
1195
1211
|
busy: Boolean(loading || accessibilityState?.busy),
|
|
@@ -1398,13 +1414,15 @@ function ButtonPressAnimatedImpl(
|
|
|
1398
1414
|
},
|
|
1399
1415
|
[interactionDisabled, onPressOut, pressSv, resolvedPressEffect]
|
|
1400
1416
|
);
|
|
1417
|
+
const rootAccessibilityRole = resolveRootAccessibilityRole();
|
|
1418
|
+
const rootPressableProps = resolveRootPressableProps(pressableProps);
|
|
1401
1419
|
|
|
1402
1420
|
return (
|
|
1403
1421
|
<AnimatedPressable
|
|
1404
|
-
{...
|
|
1422
|
+
{...rootPressableProps}
|
|
1405
1423
|
ref={ref}
|
|
1406
1424
|
accessibilityLabel={resolvedAccessibilityLabel}
|
|
1407
|
-
accessibilityRole=
|
|
1425
|
+
accessibilityRole={rootAccessibilityRole}
|
|
1408
1426
|
accessibilityState={{
|
|
1409
1427
|
...accessibilityState,
|
|
1410
1428
|
busy: Boolean(loading || accessibilityState?.busy),
|
|
@@ -1736,13 +1754,15 @@ function ButtonAnimatedImpl(
|
|
|
1736
1754
|
},
|
|
1737
1755
|
[interactionDisabled, onPressOut, pressSv, resolvedPressEffect]
|
|
1738
1756
|
);
|
|
1757
|
+
const rootAccessibilityRole = resolveRootAccessibilityRole();
|
|
1758
|
+
const rootPressableProps = resolveRootPressableProps(pressableProps);
|
|
1739
1759
|
|
|
1740
1760
|
return (
|
|
1741
1761
|
<AnimatedPressable
|
|
1742
|
-
{...
|
|
1762
|
+
{...rootPressableProps}
|
|
1743
1763
|
ref={ref}
|
|
1744
1764
|
accessibilityLabel={resolvedAccessibilityLabel}
|
|
1745
|
-
accessibilityRole=
|
|
1765
|
+
accessibilityRole={rootAccessibilityRole}
|
|
1746
1766
|
accessibilityState={{
|
|
1747
1767
|
...accessibilityState,
|
|
1748
1768
|
busy: Boolean(loading || accessibilityState?.busy),
|