zkit-ui 2.0.7 → 2.0.9

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.
@@ -1 +1 @@
1
- {"version":3,"file":"ActionDialog.d.ts","sourceRoot":"","sources":["../../../src/services/ActionDialogService/ActionDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAwC/B,OAAO,KAAK,EAIV,iBAAiB,EACjB,eAAe,EAGhB,MAAM,SAAS,CAAC;AAuoBjB,eAAO,MAAM,YAAY,sFAA+B,CAAC"}
1
+ {"version":3,"file":"ActionDialog.d.ts","sourceRoot":"","sources":["../../../src/services/ActionDialogService/ActionDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAyC/B,OAAO,KAAK,EAIV,iBAAiB,EACjB,eAAe,EAGhB,MAAM,SAAS,CAAC;AAuoBjB,eAAO,MAAM,YAAY,sFAA+B,CAAC"}
@@ -45,6 +45,7 @@ const useI18n_1 = require("../../i18n/useI18n");
45
45
  const useTheme_1 = require("../../theme/useTheme");
46
46
  const index_1 = require("../../ui/Button/index");
47
47
  const Text_1 = require("../../ui/Text");
48
+ const shadow_1 = require("../../utils/shadow");
48
49
  const shared_1 = require("./shared");
49
50
  const ENTER_BACKDROP_TIMING = {
50
51
  duration: 190,
@@ -487,11 +488,13 @@ const styles = react_native_1.StyleSheet.create({
487
488
  paddingHorizontal: (0, zkit_tools_1.wp)(16),
488
489
  },
489
490
  dialog: {
490
- shadowColor: '#000000',
491
- shadowOffset: { width: 0, height: (0, zkit_tools_1.wp)(14) },
492
- shadowOpacity: 0.18,
493
- shadowRadius: (0, zkit_tools_1.wp)(28),
494
- elevation: (0, zkit_tools_1.wp)(10),
491
+ ...(0, shadow_1.createShadowStyle)({
492
+ color: '#000000',
493
+ elevation: (0, zkit_tools_1.wp)(10),
494
+ offsetY: (0, zkit_tools_1.wp)(14),
495
+ opacity: 0.18,
496
+ radius: (0, zkit_tools_1.wp)(28),
497
+ }),
495
498
  },
496
499
  surface: {
497
500
  overflow: 'hidden',
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/CardToastService/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/CardToastService/index.tsx"],"names":[],"mappings":"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"}
@@ -50,6 +50,7 @@ const react_native_worklets_1 = require("react-native-worklets");
50
50
  const zkit_tools_1 = require("zkit-tools");
51
51
  const useTheme_1 = require("../../theme/useTheme");
52
52
  const Text_1 = require("../../ui/Text");
53
+ const shadow_1 = require("../../utils/shadow");
53
54
  // ============================================================================
54
55
  // Defaults
55
56
  // ============================================================================
@@ -823,20 +824,25 @@ const styles = react_native_1.StyleSheet.create({
823
824
  width: (0, zkit_tools_1.wp)(320),
824
825
  maxWidth: '92%',
825
826
  alignSelf: 'center',
826
- shadowColor: '#000000',
827
- shadowOffset: { width: (0, zkit_tools_1.wp)(0), height: (0, zkit_tools_1.wp)(2) },
828
- shadowOpacity: 0.1,
829
- shadowRadius: (0, zkit_tools_1.wp)(8),
830
- elevation: (0, zkit_tools_1.wp)(3),
827
+ ...(0, shadow_1.createShadowStyle)({
828
+ color: '#000000',
829
+ elevation: (0, zkit_tools_1.wp)(3),
830
+ offsetY: (0, zkit_tools_1.wp)(2),
831
+ opacity: 0.1,
832
+ radius: (0, zkit_tools_1.wp)(8),
833
+ }),
831
834
  },
832
835
  toastSurface: {
833
836
  borderRadius: (0, zkit_tools_1.wp)(10),
834
837
  },
835
838
  toastIOS: {
836
839
  borderRadius: (0, zkit_tools_1.wp)(10),
837
- shadowOffset: { width: (0, zkit_tools_1.wp)(0), height: (0, zkit_tools_1.wp)(10) },
838
- shadowOpacity: 0.16,
839
- shadowRadius: (0, zkit_tools_1.wp)(20),
840
+ ...(0, shadow_1.createShadowStyle)({
841
+ color: '#000000',
842
+ offsetY: (0, zkit_tools_1.wp)(10),
843
+ opacity: 0.16,
844
+ radius: (0, zkit_tools_1.wp)(20),
845
+ }),
840
846
  },
841
847
  toastContent: {
842
848
  borderRadius: (0, zkit_tools_1.wp)(10),
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/PermissionPurposeDialogService/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,kBAAkB;AAClB,MAAM,MAAM,iBAAiB,GACzB,UAAU,GACV,QAAQ,GACR,YAAY,GACZ,QAAQ,GACR,cAAc,GACd,UAAU,GACV,UAAU,GACV,WAAW,GACX,QAAQ,GACR,QAAQ,CAAC;AAEb,WAAW;AACX,MAAM,MAAM,8BAA8B,GAAG;IAC3C,oBAAoB;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wBAAwB;IACxB,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,qBAAqB;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qBAAqB;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,oCAAoC;AACpC,MAAM,MAAM,6BAA6B,GAAG;IAC1C,iBAAiB;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,mCAAmC;IACnC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,wBAAwB;IACxB,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,8BAA8B,CAAC,KAAK,IAAI,CAAC;CAClE,CAAC;AASF,KAAK,sCAAsC,GAAG;IAC5C,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,4BAA4B,GAAG;IAClC,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,sCAAsC,CAAC;CACjD,CAAC;AA2FF;;;GAGG;AACH,cAAM,mCAAmC;IACvC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,aAAa,CAA+C;IACpE,OAAO,CAAC,SAAS,CAA8C;IAC/D,OAAO,CAAC,QAAQ,CAAmF;IAEnG,gBAAgB;IAChB,UAAU,CAAC,OAAO,EAAE,OAAO;IAS3B,gBAAgB;IAChB,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,4BAA4B,CAAC,CAAC,GAAG,IAAI;IAIlG,eAAe;IACf,IAAI,CAAC,OAAO,GAAE,8BAAmC,GAAG,6BAA6B;IAYjF,WAAW;IACX,IAAI;IAIJ,oBAAoB;IACpB,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM;IAM7B,wBAAwB;IACxB,cAAc;IAId,OAAO,CAAC,eAAe;IAgBvB,OAAO,CAAC,YAAY;IAiBpB,+BAA+B;IAC/B,OAAO,CAAC,QAAQ;IAKhB,oBAAoB;IACpB,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,cAAc;CAMvB;AAED,mBAAmB;AACnB,eAAO,MAAM,uBAAuB,qCAA4C,CAAC;AAwFjF;;;GAGG;AACH,wBAAgB,+BAA+B,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,2CAmB1F"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/PermissionPurposeDialogService/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,kBAAkB;AAClB,MAAM,MAAM,iBAAiB,GACzB,UAAU,GACV,QAAQ,GACR,YAAY,GACZ,QAAQ,GACR,cAAc,GACd,UAAU,GACV,UAAU,GACV,WAAW,GACX,QAAQ,GACR,QAAQ,CAAC;AAEb,WAAW;AACX,MAAM,MAAM,8BAA8B,GAAG;IAC3C,oBAAoB;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wBAAwB;IACxB,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,qBAAqB;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qBAAqB;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,oCAAoC;AACpC,MAAM,MAAM,6BAA6B,GAAG;IAC1C,iBAAiB;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,mCAAmC;IACnC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,wBAAwB;IACxB,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,8BAA8B,CAAC,KAAK,IAAI,CAAC;CAClE,CAAC;AASF,KAAK,sCAAsC,GAAG;IAC5C,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,4BAA4B,GAAG;IAClC,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,sCAAsC,CAAC;CACjD,CAAC;AA2FF;;;GAGG;AACH,cAAM,mCAAmC;IACvC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,aAAa,CAA+C;IACpE,OAAO,CAAC,SAAS,CAA8C;IAC/D,OAAO,CAAC,QAAQ,CAAmF;IAEnG,gBAAgB;IAChB,UAAU,CAAC,OAAO,EAAE,OAAO;IAS3B,gBAAgB;IAChB,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,4BAA4B,CAAC,CAAC,GAAG,IAAI;IAIlG,eAAe;IACf,IAAI,CAAC,OAAO,GAAE,8BAAmC,GAAG,6BAA6B;IAYjF,WAAW;IACX,IAAI;IAIJ,oBAAoB;IACpB,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM;IAM7B,wBAAwB;IACxB,cAAc;IAId,OAAO,CAAC,eAAe;IAgBvB,OAAO,CAAC,YAAY;IAiBpB,+BAA+B;IAC/B,OAAO,CAAC,QAAQ;IAKhB,oBAAoB;IACpB,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,cAAc;CAMvB;AAED,mBAAmB;AACnB,eAAO,MAAM,uBAAuB,qCAA4C,CAAC;AAwFjF;;;GAGG;AACH,wBAAgB,+BAA+B,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,2CAmB1F"}
@@ -57,6 +57,7 @@ const react_native_1 = require("react-native");
57
57
  const react_native_safe_area_context_1 = require("react-native-safe-area-context");
58
58
  const zkit_tools_1 = require("zkit-tools");
59
59
  const Text_1 = require("../../ui/Text");
60
+ const shadow_1 = require("../../utils/shadow");
60
61
  /** 各权限类型的默认文案 */
61
62
  const DEFAULT_PURPOSE_TEXT = {
62
63
  location: {
@@ -335,11 +336,13 @@ const styles = react_native_1.StyleSheet.create({
335
336
  maxWidth: '94%',
336
337
  borderRadius: (0, zkit_tools_1.wp)(12),
337
338
  backgroundColor: '#FFFFFF',
338
- shadowColor: '#000000',
339
- shadowOpacity: 0.12,
340
- shadowOffset: { width: (0, zkit_tools_1.wp)(0), height: (0, zkit_tools_1.wp)(4) },
341
- shadowRadius: (0, zkit_tools_1.wp)(12),
342
- elevation: 8,
339
+ ...(0, shadow_1.createShadowStyle)({
340
+ color: '#000000',
341
+ elevation: 8,
342
+ offsetY: (0, zkit_tools_1.wp)(4),
343
+ opacity: 0.12,
344
+ radius: (0, zkit_tools_1.wp)(12),
345
+ }),
343
346
  },
344
347
  content: {
345
348
  paddingHorizontal: (0, zkit_tools_1.wp)(16),
@@ -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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"}
@@ -189,6 +189,10 @@ function colorToRgba(color, alpha) {
189
189
  const a = Math.max(0, Math.min(1, alpha));
190
190
  return `rgba(${r},${g},${b},${a})`;
191
191
  }
192
+ function resolveBoxShadowColor(color, opacity) {
193
+ var _a;
194
+ return (_a = colorToRgba(color, opacity)) !== null && _a !== void 0 ? _a : color;
195
+ }
192
196
  function resolveColorToken(input, fallback, theme) {
193
197
  var _a;
194
198
  if (input == null)
@@ -305,13 +309,22 @@ function resolveShadowStyle(shadow, scheme, variant) {
305
309
  return undefined;
306
310
  if (typeof shadow === 'object') {
307
311
  const radius = Math.max(0, (_a = shadow.radius) !== null && _a !== void 0 ? _a : (0, zkit_tools_1.wp)(10));
312
+ const color = (_b = shadow.color) !== null && _b !== void 0 ? _b : '#000000';
313
+ const offsetX = (_c = shadow.offsetX) !== null && _c !== void 0 ? _c : 0;
314
+ const offsetY = (_d = shadow.offsetY) !== null && _d !== void 0 ? _d : (0, zkit_tools_1.wp)(3);
315
+ const opacity = (_e = shadow.opacity) !== null && _e !== void 0 ? _e : (scheme === 'dark' ? 0.28 : 0.14);
316
+ if (react_native_1.Platform.OS === 'web') {
317
+ return {
318
+ boxShadow: `${offsetX}px ${offsetY}px ${radius}px ${resolveBoxShadowColor(color, opacity)}`,
319
+ };
320
+ }
308
321
  return {
309
- shadowColor: (_b = shadow.color) !== null && _b !== void 0 ? _b : '#000000',
322
+ shadowColor: color,
310
323
  shadowOffset: {
311
- width: (_c = shadow.offsetX) !== null && _c !== void 0 ? _c : 0,
312
- height: (_d = shadow.offsetY) !== null && _d !== void 0 ? _d : (0, zkit_tools_1.wp)(3),
324
+ width: offsetX,
325
+ height: offsetY,
313
326
  },
314
- shadowOpacity: (_e = shadow.opacity) !== null && _e !== void 0 ? _e : (scheme === 'dark' ? 0.28 : 0.14),
327
+ shadowOpacity: opacity,
315
328
  shadowRadius: radius,
316
329
  elevation: (_f = shadow.elevation) !== null && _f !== void 0 ? _f : Math.max(0, Math.round(radius * 0.55)),
317
330
  };
@@ -320,10 +333,17 @@ function resolveShadowStyle(shadow, scheme, variant) {
320
333
  if (level <= 0)
321
334
  return undefined;
322
335
  const radius = (0, zkit_tools_1.wp)(level * 5 + 3);
336
+ const offsetY = (0, zkit_tools_1.wp)(level + 1);
337
+ const opacity = scheme === 'dark' ? 0.26 : 0.14;
338
+ if (react_native_1.Platform.OS === 'web') {
339
+ return {
340
+ boxShadow: `0px ${offsetY}px ${radius}px ${resolveBoxShadowColor('#000000', opacity)}`,
341
+ };
342
+ }
323
343
  return {
324
344
  shadowColor: '#000000',
325
- shadowOffset: { width: 0, height: (0, zkit_tools_1.wp)(level + 1) },
326
- shadowOpacity: scheme === 'dark' ? 0.26 : 0.14,
345
+ shadowOffset: { width: 0, height: offsetY },
346
+ shadowOpacity: opacity,
327
347
  shadowRadius: radius,
328
348
  elevation: Math.max(0, Math.round(radius * 0.55)),
329
349
  };
@@ -539,6 +559,8 @@ function resolveWebCursorStyle(disabled) {
539
559
  return undefined;
540
560
  return { cursor: disabled ? 'not-allowed' : 'pointer' };
541
561
  }
562
+ const nativeNonePointerEvents = react_native_1.Platform.OS === 'web' ? undefined : 'none';
563
+ const webNonePointerEventsStyle = react_native_1.Platform.OS === 'web' ? { pointerEvents: 'none' } : undefined;
542
564
  function resolveRootAccessibilityRole() {
543
565
  return react_native_1.Platform.OS === 'web' ? undefined : 'button';
544
566
  }
@@ -741,15 +763,16 @@ function ButtonStaticImpl({ variant = 'solid', tone = 'primary', size = 'md', sh
741
763
  ...accessibilityState,
742
764
  busy: Boolean(loading || (accessibilityState === null || accessibilityState === void 0 ? void 0 : accessibilityState.busy)),
743
765
  disabled: Boolean(interactionDisabled || (accessibilityState === null || accessibilityState === void 0 ? void 0 : accessibilityState.disabled)),
744
- }, disabled: interactionDisabled, hitSlop: hitSlop !== null && hitSlop !== void 0 ? hitSlop : defaultHitSlop, onPress: handlePress, style: rootStyle, testID: testID, children: (0, jsx_runtime_1.jsxs)(react_native_1.View, { pointerEvents: "none", style: [
766
+ }, disabled: interactionDisabled, hitSlop: hitSlop !== null && hitSlop !== void 0 ? hitSlop : defaultHitSlop, onPress: handlePress, style: rootStyle, testID: testID, children: (0, jsx_runtime_1.jsxs)(react_native_1.View, { pointerEvents: nativeNonePointerEvents, style: [
745
767
  styles.content,
768
+ webNonePointerEventsStyle,
746
769
  contentSizeStyle,
747
770
  paddingStyle,
748
771
  radiusStyle,
749
772
  borderStyle,
750
773
  { backgroundColor: visualColors.backgroundColor },
751
774
  contentStyle,
752
- ], children: [LinearGradientComponent && gradientCfg ? ((0, jsx_runtime_1.jsx)(LinearGradientComponent, { pointerEvents: "none", colors: gradientCfg.colors, start: gradientCfg.start, end: gradientCfg.end, style: [react_native_1.StyleSheet.absoluteFillObject, radiusStyle] })) : null, iconOnly ? ((icon !== null && icon !== void 0 ? icon : resolvedText)) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [icon && iconPlacement === 'start' ? ((0, jsx_runtime_1.jsx)(react_native_1.View, { style: [iconBaseBoxStyle, iconPlacedBoxStyle], children: icon })) : null, resolvedText, icon && iconPlacement === 'end' ? ((0, jsx_runtime_1.jsx)(react_native_1.View, { style: [iconBaseBoxStyle, iconPlacedBoxStyle], children: icon })) : null] }))] }) }));
775
+ ], children: [LinearGradientComponent && gradientCfg ? ((0, jsx_runtime_1.jsx)(LinearGradientComponent, { pointerEvents: nativeNonePointerEvents, colors: gradientCfg.colors, start: gradientCfg.start, end: gradientCfg.end, style: [react_native_1.StyleSheet.absoluteFillObject, webNonePointerEventsStyle, radiusStyle] })) : null, iconOnly ? ((icon !== null && icon !== void 0 ? icon : resolvedText)) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [icon && iconPlacement === 'start' ? ((0, jsx_runtime_1.jsx)(react_native_1.View, { style: [iconBaseBoxStyle, iconPlacedBoxStyle], children: icon })) : null, resolvedText, icon && iconPlacement === 'end' ? ((0, jsx_runtime_1.jsx)(react_native_1.View, { style: [iconBaseBoxStyle, iconPlacedBoxStyle], children: icon })) : null] }))] }) }));
753
776
  }
754
777
  function ButtonPressAnimatedImpl({ variant = 'solid', tone = 'primary', size = 'md', shape = 'rounded', block = false, disabled = false, loading = false, loadingMode: _loadingMode = 'inline', pressEffect = 'auto', icon, iconPlacement = 'start', iconOnly = false, color, colors, border, layout, gradient, shadow = 'none', children, style, contentStyle, textStyle, accessibilityLabel, accessibilityState, hitSlop, onPress, onPressIn, onPressOut, testID, ...pressableProps }, ref) {
755
778
  const frame = useButtonFrame({
@@ -833,16 +856,18 @@ function ButtonPressAnimatedImpl({ variant = 'solid', tone = 'primary', size = '
833
856
  ...accessibilityState,
834
857
  busy: Boolean(loading || (accessibilityState === null || accessibilityState === void 0 ? void 0 : accessibilityState.busy)),
835
858
  disabled: Boolean(interactionDisabled || (accessibilityState === null || accessibilityState === void 0 ? void 0 : accessibilityState.disabled)),
836
- }, disabled: interactionDisabled, hitSlop: hitSlop !== null && hitSlop !== void 0 ? hitSlop : defaultHitSlop, onPress: handlePress, onPressIn: handlePressIn, onPressOut: handlePressOut, style: [styles.root, rootSizeStyle, radiusStyle, shadowStyle, rootAnimatedStyle, webCursorStyle, style], testID: testID, children: (0, jsx_runtime_1.jsxs)(react_native_1.View, { pointerEvents: "none", style: [
859
+ }, disabled: interactionDisabled, hitSlop: hitSlop !== null && hitSlop !== void 0 ? hitSlop : defaultHitSlop, onPress: handlePress, onPressIn: handlePressIn, onPressOut: handlePressOut, style: [styles.root, rootSizeStyle, radiusStyle, shadowStyle, rootAnimatedStyle, webCursorStyle, style], testID: testID, children: (0, jsx_runtime_1.jsxs)(react_native_1.View, { pointerEvents: nativeNonePointerEvents, style: [
837
860
  styles.content,
861
+ webNonePointerEventsStyle,
838
862
  contentSizeStyle,
839
863
  paddingStyle,
840
864
  radiusStyle,
841
865
  borderStyle,
842
866
  { backgroundColor: visualColors.backgroundColor },
843
867
  contentStyle,
844
- ], children: [LinearGradientComponent && gradientCfg ? ((0, jsx_runtime_1.jsx)(LinearGradientComponent, { pointerEvents: "none", colors: gradientCfg.colors, start: gradientCfg.start, end: gradientCfg.end, style: [react_native_1.StyleSheet.absoluteFillObject, radiusStyle] })) : null, pressHighlightEnabled ? ((0, jsx_runtime_1.jsx)(react_native_reanimated_1.default.View, { pointerEvents: "none", style: [
868
+ ], children: [LinearGradientComponent && gradientCfg ? ((0, jsx_runtime_1.jsx)(LinearGradientComponent, { pointerEvents: nativeNonePointerEvents, colors: gradientCfg.colors, start: gradientCfg.start, end: gradientCfg.end, style: [react_native_1.StyleSheet.absoluteFillObject, webNonePointerEventsStyle, radiusStyle] })) : null, pressHighlightEnabled ? ((0, jsx_runtime_1.jsx)(react_native_reanimated_1.default.View, { pointerEvents: nativeNonePointerEvents, style: [
845
869
  react_native_1.StyleSheet.absoluteFillObject,
870
+ webNonePointerEventsStyle,
846
871
  radiusStyle,
847
872
  { backgroundColor: pressOverlay.color },
848
873
  overlayAnimatedStyle,
@@ -1016,16 +1041,18 @@ function ButtonAnimatedImpl({ variant = 'solid', tone = 'primary', size = 'md',
1016
1041
  ...accessibilityState,
1017
1042
  busy: Boolean(loading || (accessibilityState === null || accessibilityState === void 0 ? void 0 : accessibilityState.busy)),
1018
1043
  disabled: Boolean(interactionDisabled || (accessibilityState === null || accessibilityState === void 0 ? void 0 : accessibilityState.disabled)),
1019
- }, disabled: interactionDisabled, hitSlop: hitSlop !== null && hitSlop !== void 0 ? hitSlop : defaultHitSlop, onPress: handlePress, onPressIn: handlePressIn, onPressOut: handlePressOut, style: [styles.root, rootSizeStyle, radiusStyle, shadowStyle, rootAnimatedStyle, webCursorStyle, style], testID: testID, children: (0, jsx_runtime_1.jsxs)(react_native_1.View, { pointerEvents: "none", style: [
1044
+ }, disabled: interactionDisabled, hitSlop: hitSlop !== null && hitSlop !== void 0 ? hitSlop : defaultHitSlop, onPress: handlePress, onPressIn: handlePressIn, onPressOut: handlePressOut, style: [styles.root, rootSizeStyle, radiusStyle, shadowStyle, rootAnimatedStyle, webCursorStyle, style], testID: testID, children: (0, jsx_runtime_1.jsxs)(react_native_1.View, { pointerEvents: nativeNonePointerEvents, style: [
1020
1045
  styles.content,
1046
+ webNonePointerEventsStyle,
1021
1047
  contentSizeStyle,
1022
1048
  paddingStyle,
1023
1049
  radiusStyle,
1024
1050
  borderStyle,
1025
1051
  { backgroundColor: visualColors.backgroundColor },
1026
1052
  contentStyle,
1027
- ], children: [LinearGradientComponent && gradientCfg ? ((0, jsx_runtime_1.jsx)(LinearGradientComponent, { pointerEvents: "none", colors: gradientCfg.colors, start: gradientCfg.start, end: gradientCfg.end, style: [react_native_1.StyleSheet.absoluteFillObject, radiusStyle] })) : null, (0, jsx_runtime_1.jsx)(react_native_reanimated_1.default.View, { pointerEvents: "none", style: [
1053
+ ], children: [LinearGradientComponent && gradientCfg ? ((0, jsx_runtime_1.jsx)(LinearGradientComponent, { pointerEvents: nativeNonePointerEvents, colors: gradientCfg.colors, start: gradientCfg.start, end: gradientCfg.end, style: [react_native_1.StyleSheet.absoluteFillObject, webNonePointerEventsStyle, radiusStyle] })) : null, (0, jsx_runtime_1.jsx)(react_native_reanimated_1.default.View, { pointerEvents: nativeNonePointerEvents, style: [
1028
1054
  react_native_1.StyleSheet.absoluteFillObject,
1055
+ webNonePointerEventsStyle,
1029
1056
  radiusStyle,
1030
1057
  { backgroundColor: pressOverlay.color },
1031
1058
  overlayAnimatedStyle,
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/SliderCaptcha/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAOL,SAAS,EAGT,SAAS,EAEV,MAAM,cAAc,CAAC;AA8BtB,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,CAAC;AACzF,MAAM,MAAM,uBAAuB,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;AACnE,MAAM,MAAM,uBAAuB,GAAG,MAAM,GAAG,QAAQ,CAAC;AAExD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,0BAA0B,CACpC,UAAU,SAAS,sBAAsB,GAAG,sBAAsB,IAChE;IACF,SAAS,EAAE,UAAU,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,yBAAyB,GACjC,OAAO,GACP,IAAI,GACJ;IACE,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEN,MAAM,MAAM,sBAAsB,CAChC,UAAU,SAAS,sBAAsB,GAAG,sBAAsB,IAChE;IACF,KAAK,EAAE,uBAAuB,CAAC;IAC/B,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,SAAS,CAAC,EAAE,UAAU,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAC5B,UAAU,SAAS,sBAAsB,GAAG,sBAAsB,IAChE;IACF,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,gBAAgB,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IACrC,aAAa,EACT,CAAC,CAAC,OAAO,EAAE;QAAE,MAAM,EAAE,uBAAuB,CAAA;KAAE,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC,GACvE,CAAC,CAAC,OAAO,EAAE;QAAE,MAAM,EAAE,uBAAuB,CAAA;KAAE,KAAK,UAAU,CAAC,CAAC;IACnE,eAAe,EACX,CAAC,CACC,OAAO,EAAE,0BAA0B,CAAC,UAAU,CAAC,KAC5C,OAAO,CAAC,yBAAyB,CAAC,CAAC,GACxC,CAAC,CAAC,OAAO,EAAE,0BAA0B,CAAC,UAAU,CAAC,KAAK,yBAAyB,CAAC,CAAC;IACrF,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,0BAA0B,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;IACvE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,sBAAsB,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;IAC7E,KAAK,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACpC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAClC,CAAC;AAoKF,wBAAgB,aAAa,CAAC,UAAU,SAAS,sBAAsB,GAAG,sBAAsB,EAAE,EAChG,OAAO,EACP,OAAO,EACP,gBAAuB,EACvB,aAAa,EACb,eAAe,EACf,UAAU,EACV,OAAO,EACP,KAAK,EACL,sBAA6B,EAC7B,YAAmB,EACnB,uBAAkD,EAClD,qBAA8C,EAC9C,YAAqC,EACrC,SAAS,GACV,EAAE,kBAAkB,CAAC,UAAU,CAAC,kDA0gBhC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/SliderCaptcha/index.tsx"],"names":[],"mappings":"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"}
@@ -43,6 +43,7 @@ const react_native_worklets_1 = require("react-native-worklets");
43
43
  const zkit_tools_1 = require("zkit-tools");
44
44
  const useI18n_1 = require("../../i18n/useI18n");
45
45
  const useTheme_1 = require("../../theme/useTheme");
46
+ const shadow_1 = require("../../utils/shadow");
46
47
  const Text_1 = require("../Text");
47
48
  const DEFAULT_CHALLENGE_WIDTH = 320;
48
49
  const DEFAULT_CHALLENGE_HEIGHT = 220;
@@ -114,10 +115,6 @@ const styles = react_native_1.StyleSheet.create({
114
115
  paddingHorizontal: CARD_HORIZONTAL_PADDING,
115
116
  paddingTop: (0, zkit_tools_1.wp)(18),
116
117
  paddingBottom: (0, zkit_tools_1.wp)(20),
117
- shadowOffset: { width: 0, height: (0, zkit_tools_1.wp)(10) },
118
- shadowOpacity: 0.1,
119
- shadowRadius: (0, zkit_tools_1.wp)(20),
120
- elevation: 10,
121
118
  },
122
119
  titleRow: {
123
120
  flexDirection: 'row',
@@ -139,10 +136,6 @@ const styles = react_native_1.StyleSheet.create({
139
136
  borderRadius: (0, zkit_tools_1.wp)(14),
140
137
  alignItems: 'center',
141
138
  justifyContent: 'center',
142
- shadowOffset: { width: 0, height: (0, zkit_tools_1.wp)(2) },
143
- shadowOpacity: 0.08,
144
- shadowRadius: (0, zkit_tools_1.wp)(4),
145
- elevation: 3,
146
139
  },
147
140
  headerActionSpacing: {
148
141
  marginLeft: (0, zkit_tools_1.wp)(8),
@@ -205,10 +198,6 @@ const styles = react_native_1.StyleSheet.create({
205
198
  borderRadius: SLIDER_THUMB_SIZE / 2,
206
199
  alignItems: 'center',
207
200
  justifyContent: 'center',
208
- shadowOffset: { width: 0, height: (0, zkit_tools_1.wp)(2) },
209
- shadowOpacity: 0.15,
210
- shadowRadius: (0, zkit_tools_1.wp)(4),
211
- elevation: 3,
212
201
  borderWidth: (0, zkit_tools_1.wp)(0.5),
213
202
  },
214
203
  });
@@ -282,6 +271,27 @@ function SliderCaptcha({ visible, onClose, initialChallenge = null, loadChalleng
282
271
  const canSlide = visible && Boolean(challenge) && !isBusy;
283
272
  const backgroundImageUri = normalizeImageUri((_b = challenge === null || challenge === void 0 ? void 0 : challenge.backgroundImage) !== null && _b !== void 0 ? _b : '');
284
273
  const blockImageUri = normalizeImageUri((_c = challenge === null || challenge === void 0 ? void 0 : challenge.blockImage) !== null && _c !== void 0 ? _c : '');
274
+ const cardShadowStyle = React.useMemo(() => (0, shadow_1.createShadowStyle)({
275
+ color: theme.colors.onSurface,
276
+ elevation: 10,
277
+ offsetY: (0, zkit_tools_1.wp)(10),
278
+ opacity: 0.1,
279
+ radius: (0, zkit_tools_1.wp)(20),
280
+ }), [theme.colors.onSurface]);
281
+ const headerActionShadowStyle = React.useMemo(() => (0, shadow_1.createShadowStyle)({
282
+ color: theme.colors.onSurface,
283
+ elevation: 3,
284
+ offsetY: (0, zkit_tools_1.wp)(2),
285
+ opacity: 0.08,
286
+ radius: (0, zkit_tools_1.wp)(4),
287
+ }), [theme.colors.onSurface]);
288
+ const sliderThumbShadowStyle = React.useMemo(() => (0, shadow_1.createShadowStyle)({
289
+ color: theme.colors.onSurface,
290
+ elevation: 3,
291
+ offsetY: (0, zkit_tools_1.wp)(2),
292
+ opacity: 0.15,
293
+ radius: (0, zkit_tools_1.wp)(4),
294
+ }), [theme.colors.onSurface]);
285
295
  const requestChallenge = React.useCallback(async (reason) => {
286
296
  if (!visibleRef.current)
287
297
  return;
@@ -535,8 +545,8 @@ function SliderCaptcha({ visible, onClose, initialChallenge = null, loadChalleng
535
545
  {
536
546
  maxWidth: maxCardWidth,
537
547
  backgroundColor: theme.colors.surface,
538
- shadowColor: theme.colors.onSurface,
539
548
  },
549
+ cardShadowStyle,
540
550
  cardStyle,
541
551
  ], onPress: () => { }, collapsable: false, renderToHardwareTextureAndroid: react_native_1.Platform.OS === 'android', shouldRasterizeIOS: react_native_1.Platform.OS === 'ios', needsOffscreenAlphaCompositing: react_native_1.Platform.OS === 'android', children: [(0, jsx_runtime_1.jsxs)(react_native_1.View, { style: styles.titleRow, children: [(0, jsx_runtime_1.jsx)(Text_1.Text, { style: [styles.title, { color: theme.colors.onSurface }], children: resolvedTexts.title }), (0, jsx_runtime_1.jsxs)(react_native_1.View, { style: styles.headerActions, children: [(0, jsx_runtime_1.jsx)(react_native_1.Pressable, { style: [
542
552
  styles.headerActionButton,
@@ -544,15 +554,15 @@ function SliderCaptcha({ visible, onClose, initialChallenge = null, loadChalleng
544
554
  backgroundColor: theme.colors.surface,
545
555
  borderColor: theme.colors.border,
546
556
  borderWidth: (0, zkit_tools_1.wp)(0.5),
547
- shadowColor: theme.colors.onSurface,
548
557
  },
558
+ headerActionShadowStyle,
549
559
  ], onPress: handleRefresh, disabled: !visible || isBusy, hitSlop: 10, children: isBusy ? ((0, jsx_runtime_1.jsx)(react_native_1.ActivityIndicator, { size: "small", color: theme.colors.muted })) : ((0, jsx_runtime_1.jsx)(vector_icons_1.Feather, { name: "refresh-cw", size: (0, zkit_tools_1.wp)(16), color: theme.colors.muted })) }), (0, jsx_runtime_1.jsx)(react_native_1.Pressable, { style: [
550
560
  styles.headerActionButton,
551
561
  styles.headerActionSpacing,
552
562
  {
553
563
  backgroundColor: theme.colors.secondary,
554
- shadowColor: theme.colors.onSurface,
555
564
  },
565
+ headerActionShadowStyle,
556
566
  ], onPress: handleRequestClose, disabled: !visible, hitSlop: 10, children: (0, jsx_runtime_1.jsx)(vector_icons_1.Feather, { name: "x", size: (0, zkit_tools_1.wp)(18), color: theme.colors.muted }) })] })] }), (0, jsx_runtime_1.jsxs)(react_native_1.View, { style: [
557
567
  styles.canvasWrapper,
558
568
  {
@@ -580,7 +590,7 @@ function SliderCaptcha({ visible, onClose, initialChallenge = null, loadChalleng
580
590
  {
581
591
  backgroundColor: theme.colors.primary,
582
592
  borderColor: 'rgba(0,0,0,0.04)',
583
- shadowColor: theme.colors.onSurface,
584
593
  },
594
+ sliderThumbShadowStyle,
585
595
  ], children: isBusy ? ((0, jsx_runtime_1.jsx)(react_native_1.ActivityIndicator, { size: "small", color: theme.colors.onPrimary })) : ((0, jsx_runtime_1.jsx)(vector_icons_1.Feather, { name: "arrow-right", size: (0, zkit_tools_1.wp)(20), color: theme.colors.onPrimary })) }) })] }) }) })] }));
586
596
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/Switch/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/Switch/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAIV,SAAS,EACT,SAAS,EACT,SAAS,EACV,MAAM,cAAc,CAAC;AACtB,OAAO,EAGL,SAAS,EAKT,IAAI,EACL,MAAM,cAAc,CAAC;AAiBtB,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC5C,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;AAC3F,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,KAAK,CAAC;AAEnD,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB,CAAC;AAqBF,KAAK,oBAAoB,GAAG,IAAI,CAC9B,KAAK,CAAC,wBAAwB,CAAC,OAAO,SAAS,CAAC,EAChD,mBAAmB,GAAG,oBAAoB,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,GAAG,UAAU,CAC5F,CAAC;AASF,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,SAAS,CAAC,CAAC;AAE7D,MAAM,WAAW,WAAY,SAAQ,oBAAoB;IACvD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAE7C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gBAAgB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAEnC,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,SAAS,CAAC,EAAE,eAAe,CAAC;IAE5B,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE,eAAe,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAE1E,KAAK,CAAC,EAAE,KAAK,CAAC,wBAAwB,CAAC,OAAO,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;IAClE,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAClC,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAClC,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAClC,gBAAgB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACxC,cAAc,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACtC,kBAAkB,CAAC,EAAE,KAAK,CAAC,wBAAwB,CAAC,OAAO,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;CAC7F;AAq4BD,eAAO,MAAM,MAAM,qEAA4B,CAAC"}
@@ -40,6 +40,7 @@ const react_native_1 = require("react-native");
40
40
  const react_native_reanimated_1 = __importStar(require("react-native-reanimated"));
41
41
  const zkit_tools_1 = require("zkit-tools");
42
42
  const useTheme_1 = require("../../theme/useTheme");
43
+ const shadow_1 = require("../../utils/shadow");
43
44
  const LoadingSpinner_1 = require("../LoadingSpinner");
44
45
  const Text_1 = require("../Text");
45
46
  const SEMANTIC_COLORS = {
@@ -388,12 +389,12 @@ function SwitchImpl({ checked: checkedProp, defaultChecked = false, onCheckedCha
388
389
  const trackRadius = Math.max(0, (_a = layout === null || layout === void 0 ? void 0 : layout.radius) !== null && _a !== void 0 ? _a : trackHeight / 2);
389
390
  const thumbRadius = thumbSize / 2;
390
391
  const defaultHitSlop = React.useMemo(() => resolveHitSlop(trackWidth, trackHeight, metrics.minTouchTarget), [metrics.minTouchTarget, trackHeight, trackWidth]);
391
- const thumbShadowStyle = React.useMemo(() => ({
392
- shadowColor: '#000000',
393
- shadowOffset: { width: 0, height: (0, zkit_tools_1.wp)(1) },
394
- shadowOpacity: disabled ? 0 : scheme === 'dark' ? 0.28 : 0.14,
395
- shadowRadius: disabled ? 0 : (0, zkit_tools_1.wp)(4),
392
+ const thumbShadowStyle = React.useMemo(() => (0, shadow_1.createShadowStyle)({
393
+ color: '#000000',
396
394
  elevation: disabled ? 0 : (0, zkit_tools_1.wp)(1),
395
+ offsetY: (0, zkit_tools_1.wp)(1),
396
+ opacity: disabled ? 0 : scheme === 'dark' ? 0.28 : 0.14,
397
+ radius: disabled ? 0 : (0, zkit_tools_1.wp)(4),
397
398
  }), [disabled, scheme]);
398
399
  const webCursorStyle = React.useMemo(() => resolveWebCursorStyle(interactionDisabled), [interactionDisabled]);
399
400
  const resolvedDuration = resolveDuration(duration);
@@ -0,0 +1,11 @@
1
+ import { type ViewStyle } from 'react-native';
2
+ export type ShadowStyleOptions = {
3
+ color?: string;
4
+ elevation?: number;
5
+ offsetX?: number;
6
+ offsetY?: number;
7
+ opacity?: number;
8
+ radius?: number;
9
+ };
10
+ export declare function createShadowStyle({ color, elevation, offsetX, offsetY, opacity, radius, }: ShadowStyleOptions): ViewStyle;
11
+ //# sourceMappingURL=shadow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shadow.d.ts","sourceRoot":"","sources":["../../src/utils/shadow.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAEtE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAsBF,wBAAgB,iBAAiB,CAAC,EAChC,KAAiB,EACjB,SAAS,EACT,OAAW,EACX,OAAW,EACX,OAAc,EACd,MAAU,GACX,EAAE,kBAAkB,GAAG,SAAS,CAmBhC"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createShadowStyle = createShadowStyle;
4
+ const react_native_1 = require("react-native");
5
+ function normalizeOpacity(opacity) {
6
+ if (!Number.isFinite(opacity))
7
+ return 1;
8
+ return Math.max(0, Math.min(1, opacity));
9
+ }
10
+ function colorToRgba(color, opacity) {
11
+ const processed = (0, react_native_1.processColor)(color);
12
+ if (typeof processed !== 'number')
13
+ return undefined;
14
+ const normalized = processed >>> 0;
15
+ const r = (normalized >> 16) & 255;
16
+ const g = (normalized >> 8) & 255;
17
+ const b = normalized & 255;
18
+ return `rgba(${r},${g},${b},${normalizeOpacity(opacity)})`;
19
+ }
20
+ function resolveWebShadowColor(color, opacity) {
21
+ var _a;
22
+ return (_a = colorToRgba(color, opacity)) !== null && _a !== void 0 ? _a : color;
23
+ }
24
+ function createShadowStyle({ color = '#000000', elevation, offsetX = 0, offsetY = 0, opacity = 0.14, radius = 0, }) {
25
+ if (react_native_1.Platform.OS === 'web') {
26
+ return {
27
+ boxShadow: `${offsetX}px ${offsetY}px ${radius}px ${resolveWebShadowColor(color, opacity)}`,
28
+ };
29
+ }
30
+ const style = {
31
+ shadowColor: color,
32
+ shadowOffset: { width: offsetX, height: offsetY },
33
+ shadowOpacity: opacity,
34
+ shadowRadius: radius,
35
+ };
36
+ if (elevation !== undefined) {
37
+ style.elevation = elevation;
38
+ }
39
+ return style;
40
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zkit-ui",
3
- "version": "2.0.7",
3
+ "version": "2.0.9",
4
4
  "private": false,
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -28,6 +28,7 @@ import { useI18n } from '../../i18n/useI18n';
28
28
  import { useTheme } from '../../theme/useTheme';
29
29
  import { Button } from '../../ui/Button/index';
30
30
  import { Text } from '../../ui/Text';
31
+ import { createShadowStyle } from '../../utils/shadow';
31
32
  import {
32
33
  ACTION_DIALOG_DEFAULT_COLORS,
33
34
  ACTION_DIALOG_DEFAULT_Z_INDEX,
@@ -712,11 +713,13 @@ const styles = StyleSheet.create({
712
713
  paddingHorizontal: wp(16),
713
714
  },
714
715
  dialog: {
715
- shadowColor: '#000000',
716
- shadowOffset: { width: 0, height: wp(14) },
717
- shadowOpacity: 0.18,
718
- shadowRadius: wp(28),
719
- elevation: wp(10),
716
+ ...createShadowStyle({
717
+ color: '#000000',
718
+ elevation: wp(10),
719
+ offsetY: wp(14),
720
+ opacity: 0.18,
721
+ radius: wp(28),
722
+ }),
720
723
  },
721
724
  surface: {
722
725
  overflow: 'hidden',
@@ -30,6 +30,7 @@ import { scheduleOnRN } from 'react-native-worklets';
30
30
  import { wp } from 'zkit-tools';
31
31
  import { useTheme } from '../../theme/useTheme';
32
32
  import { Text } from '../../ui/Text';
33
+ import { createShadowStyle } from '../../utils/shadow';
33
34
 
34
35
  // ============================================================================
35
36
  // Public Types
@@ -1208,20 +1209,25 @@ const styles = StyleSheet.create({
1208
1209
  width: wp(320),
1209
1210
  maxWidth: '92%',
1210
1211
  alignSelf: 'center',
1211
- shadowColor: '#000000',
1212
- shadowOffset: { width: wp(0), height: wp(2) },
1213
- shadowOpacity: 0.1,
1214
- shadowRadius: wp(8),
1215
- elevation: wp(3),
1212
+ ...createShadowStyle({
1213
+ color: '#000000',
1214
+ elevation: wp(3),
1215
+ offsetY: wp(2),
1216
+ opacity: 0.1,
1217
+ radius: wp(8),
1218
+ }),
1216
1219
  },
1217
1220
  toastSurface: {
1218
1221
  borderRadius: wp(10),
1219
1222
  },
1220
1223
  toastIOS: {
1221
1224
  borderRadius: wp(10),
1222
- shadowOffset: { width: wp(0), height: wp(10) },
1223
- shadowOpacity: 0.16,
1224
- shadowRadius: wp(20),
1225
+ ...createShadowStyle({
1226
+ color: '#000000',
1227
+ offsetY: wp(10),
1228
+ opacity: 0.16,
1229
+ radius: wp(20),
1230
+ }),
1225
1231
  },
1226
1232
  toastContent: {
1227
1233
  borderRadius: wp(10),
@@ -20,6 +20,7 @@ import { Animated, Easing, Platform, StyleSheet, View } from 'react-native';
20
20
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
21
21
  import { wp } from 'zkit-tools';
22
22
  import { Text } from '../../ui/Text';
23
+ import { createShadowStyle } from '../../utils/shadow';
23
24
 
24
25
  /** 内置支持的权限用途类型 */
25
26
  export type PermissionPurpose =
@@ -424,11 +425,13 @@ const styles = StyleSheet.create({
424
425
  maxWidth: '94%',
425
426
  borderRadius: wp(12),
426
427
  backgroundColor: '#FFFFFF',
427
- shadowColor: '#000000',
428
- shadowOpacity: 0.12,
429
- shadowOffset: { width: wp(0), height: wp(4) },
430
- shadowRadius: wp(12),
431
- elevation: 8,
428
+ ...createShadowStyle({
429
+ color: '#000000',
430
+ elevation: 8,
431
+ offsetY: wp(4),
432
+ opacity: 0.12,
433
+ radius: wp(12),
434
+ }),
432
435
  },
433
436
  content: {
434
437
  paddingHorizontal: wp(16),
@@ -352,6 +352,10 @@ function colorToRgba(color: string, alpha: number) {
352
352
  return `rgba(${r},${g},${b},${a})`;
353
353
  }
354
354
 
355
+ function resolveBoxShadowColor(color: string, opacity: number) {
356
+ return colorToRgba(color, opacity) ?? color;
357
+ }
358
+
355
359
  function resolveColorToken(input: string | undefined, fallback: string, theme: Theme) {
356
360
  if (input == null) return fallback;
357
361
 
@@ -484,13 +488,24 @@ function resolveShadowStyle(
484
488
 
485
489
  if (typeof shadow === 'object') {
486
490
  const radius = Math.max(0, shadow.radius ?? wp(10));
491
+ const color = shadow.color ?? '#000000';
492
+ const offsetX = shadow.offsetX ?? 0;
493
+ const offsetY = shadow.offsetY ?? wp(3);
494
+ const opacity = shadow.opacity ?? (scheme === 'dark' ? 0.28 : 0.14);
495
+
496
+ if (Platform.OS === 'web') {
497
+ return {
498
+ boxShadow: `${offsetX}px ${offsetY}px ${radius}px ${resolveBoxShadowColor(color, opacity)}`,
499
+ } as ViewStyle;
500
+ }
501
+
487
502
  return {
488
- shadowColor: shadow.color ?? '#000000',
503
+ shadowColor: color,
489
504
  shadowOffset: {
490
- width: shadow.offsetX ?? 0,
491
- height: shadow.offsetY ?? wp(3),
505
+ width: offsetX,
506
+ height: offsetY,
492
507
  },
493
- shadowOpacity: shadow.opacity ?? (scheme === 'dark' ? 0.28 : 0.14),
508
+ shadowOpacity: opacity,
494
509
  shadowRadius: radius,
495
510
  elevation: shadow.elevation ?? Math.max(0, Math.round(radius * 0.55)),
496
511
  };
@@ -500,10 +515,19 @@ function resolveShadowStyle(
500
515
  if (level <= 0) return undefined;
501
516
 
502
517
  const radius = wp(level * 5 + 3);
518
+ const offsetY = wp(level + 1);
519
+ const opacity = scheme === 'dark' ? 0.26 : 0.14;
520
+
521
+ if (Platform.OS === 'web') {
522
+ return {
523
+ boxShadow: `0px ${offsetY}px ${radius}px ${resolveBoxShadowColor('#000000', opacity)}`,
524
+ } as ViewStyle;
525
+ }
526
+
503
527
  return {
504
528
  shadowColor: '#000000',
505
- shadowOffset: { width: 0, height: wp(level + 1) },
506
- shadowOpacity: scheme === 'dark' ? 0.26 : 0.14,
529
+ shadowOffset: { width: 0, height: offsetY },
530
+ shadowOpacity: opacity,
507
531
  shadowRadius: radius,
508
532
  elevation: Math.max(0, Math.round(radius * 0.55)),
509
533
  };
@@ -839,6 +863,10 @@ function resolveWebCursorStyle(disabled: boolean): ViewStyle | undefined {
839
863
  return { cursor: disabled ? 'not-allowed' : 'pointer' } as ViewStyle;
840
864
  }
841
865
 
866
+ const nativeNonePointerEvents = Platform.OS === 'web' ? undefined : 'none';
867
+ const webNonePointerEventsStyle =
868
+ Platform.OS === 'web' ? ({ pointerEvents: 'none' } as ViewStyle) : undefined;
869
+
842
870
  function resolveRootAccessibilityRole() {
843
871
  return Platform.OS === 'web' ? undefined : 'button';
844
872
  }
@@ -1218,9 +1246,10 @@ function ButtonStaticImpl(
1218
1246
  testID={testID}
1219
1247
  >
1220
1248
  <View
1221
- pointerEvents="none"
1249
+ pointerEvents={nativeNonePointerEvents}
1222
1250
  style={[
1223
1251
  styles.content,
1252
+ webNonePointerEventsStyle,
1224
1253
  contentSizeStyle,
1225
1254
  paddingStyle,
1226
1255
  radiusStyle,
@@ -1231,11 +1260,11 @@ function ButtonStaticImpl(
1231
1260
  >
1232
1261
  {LinearGradientComponent && gradientCfg ? (
1233
1262
  <LinearGradientComponent
1234
- pointerEvents="none"
1263
+ pointerEvents={nativeNonePointerEvents}
1235
1264
  colors={gradientCfg.colors}
1236
1265
  start={gradientCfg.start}
1237
1266
  end={gradientCfg.end}
1238
- style={[StyleSheet.absoluteFillObject, radiusStyle]}
1267
+ style={[StyleSheet.absoluteFillObject, webNonePointerEventsStyle, radiusStyle]}
1239
1268
  />
1240
1269
  ) : null}
1241
1270
 
@@ -1437,9 +1466,10 @@ function ButtonPressAnimatedImpl(
1437
1466
  testID={testID}
1438
1467
  >
1439
1468
  <View
1440
- pointerEvents="none"
1469
+ pointerEvents={nativeNonePointerEvents}
1441
1470
  style={[
1442
1471
  styles.content,
1472
+ webNonePointerEventsStyle,
1443
1473
  contentSizeStyle,
1444
1474
  paddingStyle,
1445
1475
  radiusStyle,
@@ -1450,19 +1480,20 @@ function ButtonPressAnimatedImpl(
1450
1480
  >
1451
1481
  {LinearGradientComponent && gradientCfg ? (
1452
1482
  <LinearGradientComponent
1453
- pointerEvents="none"
1483
+ pointerEvents={nativeNonePointerEvents}
1454
1484
  colors={gradientCfg.colors}
1455
1485
  start={gradientCfg.start}
1456
1486
  end={gradientCfg.end}
1457
- style={[StyleSheet.absoluteFillObject, radiusStyle]}
1487
+ style={[StyleSheet.absoluteFillObject, webNonePointerEventsStyle, radiusStyle]}
1458
1488
  />
1459
1489
  ) : null}
1460
1490
 
1461
1491
  {pressHighlightEnabled ? (
1462
1492
  <Animated.View
1463
- pointerEvents="none"
1493
+ pointerEvents={nativeNonePointerEvents}
1464
1494
  style={[
1465
1495
  StyleSheet.absoluteFillObject,
1496
+ webNonePointerEventsStyle,
1466
1497
  radiusStyle,
1467
1498
  { backgroundColor: pressOverlay.color },
1468
1499
  overlayAnimatedStyle,
@@ -1777,9 +1808,10 @@ function ButtonAnimatedImpl(
1777
1808
  testID={testID}
1778
1809
  >
1779
1810
  <View
1780
- pointerEvents="none"
1811
+ pointerEvents={nativeNonePointerEvents}
1781
1812
  style={[
1782
1813
  styles.content,
1814
+ webNonePointerEventsStyle,
1783
1815
  contentSizeStyle,
1784
1816
  paddingStyle,
1785
1817
  radiusStyle,
@@ -1790,18 +1822,19 @@ function ButtonAnimatedImpl(
1790
1822
  >
1791
1823
  {LinearGradientComponent && gradientCfg ? (
1792
1824
  <LinearGradientComponent
1793
- pointerEvents="none"
1825
+ pointerEvents={nativeNonePointerEvents}
1794
1826
  colors={gradientCfg.colors}
1795
1827
  start={gradientCfg.start}
1796
1828
  end={gradientCfg.end}
1797
- style={[StyleSheet.absoluteFillObject, radiusStyle]}
1829
+ style={[StyleSheet.absoluteFillObject, webNonePointerEventsStyle, radiusStyle]}
1798
1830
  />
1799
1831
  ) : null}
1800
1832
 
1801
1833
  <Animated.View
1802
- pointerEvents="none"
1834
+ pointerEvents={nativeNonePointerEvents}
1803
1835
  style={[
1804
1836
  StyleSheet.absoluteFillObject,
1837
+ webNonePointerEventsStyle,
1805
1838
  radiusStyle,
1806
1839
  { backgroundColor: pressOverlay.color },
1807
1840
  overlayAnimatedStyle,
@@ -24,6 +24,7 @@ import { scheduleOnRN } from 'react-native-worklets';
24
24
  import { wp } from 'zkit-tools';
25
25
  import { useI18n } from '../../i18n/useI18n';
26
26
  import { useTheme } from '../../theme/useTheme';
27
+ import { createShadowStyle } from '../../utils/shadow';
27
28
  import { Text } from '../Text';
28
29
 
29
30
  const DEFAULT_CHALLENGE_WIDTH = 320;
@@ -177,10 +178,6 @@ const styles = StyleSheet.create({
177
178
  paddingHorizontal: CARD_HORIZONTAL_PADDING,
178
179
  paddingTop: wp(18),
179
180
  paddingBottom: wp(20),
180
- shadowOffset: { width: 0, height: wp(10) },
181
- shadowOpacity: 0.1,
182
- shadowRadius: wp(20),
183
- elevation: 10,
184
181
  },
185
182
  titleRow: {
186
183
  flexDirection: 'row',
@@ -202,10 +199,6 @@ const styles = StyleSheet.create({
202
199
  borderRadius: wp(14),
203
200
  alignItems: 'center',
204
201
  justifyContent: 'center',
205
- shadowOffset: { width: 0, height: wp(2) },
206
- shadowOpacity: 0.08,
207
- shadowRadius: wp(4),
208
- elevation: 3,
209
202
  },
210
203
  headerActionSpacing: {
211
204
  marginLeft: wp(8),
@@ -268,10 +261,6 @@ const styles = StyleSheet.create({
268
261
  borderRadius: SLIDER_THUMB_SIZE / 2,
269
262
  alignItems: 'center',
270
263
  justifyContent: 'center',
271
- shadowOffset: { width: 0, height: wp(2) },
272
- shadowOpacity: 0.15,
273
- shadowRadius: wp(4),
274
- elevation: 3,
275
264
  borderWidth: wp(0.5),
276
265
  },
277
266
  });
@@ -370,6 +359,39 @@ export function SliderCaptcha<TChallenge extends SliderCaptchaChallenge = Slider
370
359
 
371
360
  const backgroundImageUri = normalizeImageUri(challenge?.backgroundImage ?? '');
372
361
  const blockImageUri = normalizeImageUri(challenge?.blockImage ?? '');
362
+ const cardShadowStyle = React.useMemo(
363
+ () =>
364
+ createShadowStyle({
365
+ color: theme.colors.onSurface,
366
+ elevation: 10,
367
+ offsetY: wp(10),
368
+ opacity: 0.1,
369
+ radius: wp(20),
370
+ }),
371
+ [theme.colors.onSurface]
372
+ );
373
+ const headerActionShadowStyle = React.useMemo(
374
+ () =>
375
+ createShadowStyle({
376
+ color: theme.colors.onSurface,
377
+ elevation: 3,
378
+ offsetY: wp(2),
379
+ opacity: 0.08,
380
+ radius: wp(4),
381
+ }),
382
+ [theme.colors.onSurface]
383
+ );
384
+ const sliderThumbShadowStyle = React.useMemo(
385
+ () =>
386
+ createShadowStyle({
387
+ color: theme.colors.onSurface,
388
+ elevation: 3,
389
+ offsetY: wp(2),
390
+ opacity: 0.15,
391
+ radius: wp(4),
392
+ }),
393
+ [theme.colors.onSurface]
394
+ );
373
395
 
374
396
  const requestChallenge = React.useCallback(
375
397
  async (reason: SliderCaptchaLoadReason) => {
@@ -674,8 +696,8 @@ export function SliderCaptcha<TChallenge extends SliderCaptchaChallenge = Slider
674
696
  {
675
697
  maxWidth: maxCardWidth,
676
698
  backgroundColor: theme.colors.surface,
677
- shadowColor: theme.colors.onSurface,
678
699
  },
700
+ cardShadowStyle,
679
701
  cardStyle,
680
702
  ]}
681
703
  onPress={() => {}}
@@ -696,8 +718,8 @@ export function SliderCaptcha<TChallenge extends SliderCaptchaChallenge = Slider
696
718
  backgroundColor: theme.colors.surface,
697
719
  borderColor: theme.colors.border,
698
720
  borderWidth: wp(0.5),
699
- shadowColor: theme.colors.onSurface,
700
721
  },
722
+ headerActionShadowStyle,
701
723
  ]}
702
724
  onPress={handleRefresh}
703
725
  disabled={!visible || isBusy}
@@ -715,8 +737,8 @@ export function SliderCaptcha<TChallenge extends SliderCaptchaChallenge = Slider
715
737
  styles.headerActionSpacing,
716
738
  {
717
739
  backgroundColor: theme.colors.secondary,
718
- shadowColor: theme.colors.onSurface,
719
740
  },
741
+ headerActionShadowStyle,
720
742
  ]}
721
743
  onPress={handleRequestClose}
722
744
  disabled={!visible}
@@ -797,8 +819,8 @@ export function SliderCaptcha<TChallenge extends SliderCaptchaChallenge = Slider
797
819
  {
798
820
  backgroundColor: theme.colors.primary,
799
821
  borderColor: 'rgba(0,0,0,0.04)',
800
- shadowColor: theme.colors.onSurface,
801
822
  },
823
+ sliderThumbShadowStyle,
802
824
  ]}
803
825
  >
804
826
  {isBusy ? (
@@ -29,6 +29,7 @@ import Animated, {
29
29
  import { wp } from 'zkit-tools';
30
30
  import type { Theme } from '../../theme/types';
31
31
  import { useTheme } from '../../theme/useTheme';
32
+ import { createShadowStyle } from '../../utils/shadow';
32
33
  import { LoadingSpinner } from '../LoadingSpinner';
33
34
  import { Text } from '../Text';
34
35
 
@@ -619,13 +620,14 @@ function SwitchImpl(
619
620
  [metrics.minTouchTarget, trackHeight, trackWidth]
620
621
  );
621
622
  const thumbShadowStyle = React.useMemo<ViewStyle>(
622
- () => ({
623
- shadowColor: '#000000',
624
- shadowOffset: { width: 0, height: wp(1) },
625
- shadowOpacity: disabled ? 0 : scheme === 'dark' ? 0.28 : 0.14,
626
- shadowRadius: disabled ? 0 : wp(4),
627
- elevation: disabled ? 0 : wp(1),
628
- }),
623
+ () =>
624
+ createShadowStyle({
625
+ color: '#000000',
626
+ elevation: disabled ? 0 : wp(1),
627
+ offsetY: wp(1),
628
+ opacity: disabled ? 0 : scheme === 'dark' ? 0.28 : 0.14,
629
+ radius: disabled ? 0 : wp(4),
630
+ }),
629
631
  [disabled, scheme]
630
632
  );
631
633
  const webCursorStyle = React.useMemo(
@@ -0,0 +1,58 @@
1
+ import { Platform, processColor, type ViewStyle } from 'react-native';
2
+
3
+ export type ShadowStyleOptions = {
4
+ color?: string;
5
+ elevation?: number;
6
+ offsetX?: number;
7
+ offsetY?: number;
8
+ opacity?: number;
9
+ radius?: number;
10
+ };
11
+
12
+ function normalizeOpacity(opacity: number) {
13
+ if (!Number.isFinite(opacity)) return 1;
14
+ return Math.max(0, Math.min(1, opacity));
15
+ }
16
+
17
+ function colorToRgba(color: string, opacity: number) {
18
+ const processed = processColor(color);
19
+ if (typeof processed !== 'number') return undefined;
20
+
21
+ const normalized = processed >>> 0;
22
+ const r = (normalized >> 16) & 255;
23
+ const g = (normalized >> 8) & 255;
24
+ const b = normalized & 255;
25
+ return `rgba(${r},${g},${b},${normalizeOpacity(opacity)})`;
26
+ }
27
+
28
+ function resolveWebShadowColor(color: string, opacity: number) {
29
+ return colorToRgba(color, opacity) ?? color;
30
+ }
31
+
32
+ export function createShadowStyle({
33
+ color = '#000000',
34
+ elevation,
35
+ offsetX = 0,
36
+ offsetY = 0,
37
+ opacity = 0.14,
38
+ radius = 0,
39
+ }: ShadowStyleOptions): ViewStyle {
40
+ if (Platform.OS === 'web') {
41
+ return {
42
+ boxShadow: `${offsetX}px ${offsetY}px ${radius}px ${resolveWebShadowColor(color, opacity)}`,
43
+ } as ViewStyle;
44
+ }
45
+
46
+ const style: ViewStyle = {
47
+ shadowColor: color,
48
+ shadowOffset: { width: offsetX, height: offsetY },
49
+ shadowOpacity: opacity,
50
+ shadowRadius: radius,
51
+ };
52
+
53
+ if (elevation !== undefined) {
54
+ style.elevation = elevation;
55
+ }
56
+
57
+ return style;
58
+ }