@xhsreds/reds-rn-next 0.10.1-beta202511241537 → 0.10.1-beta202512022044

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 (111) hide show
  1. package/coverage/.tmp/coverage-0.json +1 -1
  2. package/coverage/.tmp/coverage-1.json +1 -1
  3. package/coverage/.tmp/coverage-10.json +1 -1
  4. package/coverage/.tmp/coverage-11.json +1 -1
  5. package/coverage/.tmp/coverage-12.json +1 -1
  6. package/coverage/.tmp/coverage-13.json +1 -1
  7. package/coverage/.tmp/coverage-14.json +1 -1
  8. package/coverage/.tmp/coverage-15.json +1 -1
  9. package/coverage/.tmp/coverage-16.json +1 -1
  10. package/coverage/.tmp/coverage-17.json +1 -1
  11. package/coverage/.tmp/coverage-18.json +1 -1
  12. package/coverage/.tmp/coverage-19.json +1 -1
  13. package/coverage/.tmp/coverage-2.json +1 -1
  14. package/coverage/.tmp/coverage-20.json +1 -1
  15. package/coverage/.tmp/coverage-21.json +1 -1
  16. package/coverage/.tmp/coverage-22.json +1 -1
  17. package/coverage/.tmp/coverage-24.json +1 -1
  18. package/coverage/.tmp/coverage-25.json +1 -1
  19. package/coverage/.tmp/coverage-27.json +1 -1
  20. package/coverage/.tmp/coverage-28.json +1 -1
  21. package/coverage/.tmp/coverage-29.json +1 -1
  22. package/coverage/.tmp/coverage-3.json +1 -1
  23. package/coverage/.tmp/coverage-30.json +1 -1
  24. package/coverage/.tmp/coverage-31.json +1 -1
  25. package/coverage/.tmp/coverage-32.json +1 -1
  26. package/coverage/.tmp/coverage-33.json +1 -1
  27. package/coverage/.tmp/coverage-34.json +1 -1
  28. package/coverage/.tmp/coverage-35.json +1 -1
  29. package/coverage/.tmp/coverage-36.json +1 -1
  30. package/coverage/.tmp/coverage-37.json +1 -1
  31. package/coverage/.tmp/coverage-38.json +1 -1
  32. package/coverage/.tmp/coverage-39.json +1 -1
  33. package/coverage/.tmp/coverage-4.json +1 -1
  34. package/coverage/.tmp/coverage-40.json +1 -1
  35. package/coverage/.tmp/coverage-41.json +1 -1
  36. package/coverage/.tmp/coverage-42.json +1 -1
  37. package/coverage/.tmp/coverage-5.json +1 -1
  38. package/coverage/.tmp/coverage-6.json +1 -1
  39. package/coverage/.tmp/coverage-7.json +1 -1
  40. package/coverage/.tmp/coverage-8.json +1 -1
  41. package/coverage/.tmp/coverage-9.json +1 -1
  42. package/lib/cjs/_chunks/hA3qoGpS.js.map +1 -1
  43. package/lib/cjs/components/ActionablePopover/ActionablePopover.js +2 -2
  44. package/lib/cjs/components/ActionablePopover/ActionablePopover.js.map +1 -1
  45. package/lib/cjs/components/Alert/hooks/alert.js +1 -1
  46. package/lib/cjs/components/Divider/Divider.js +33 -12
  47. package/lib/cjs/components/Divider/Divider.js.map +1 -1
  48. package/lib/cjs/components/Divider/index.js +3 -3
  49. package/lib/cjs/components/Divider/styles.js +36 -30
  50. package/lib/cjs/components/Divider/styles.js.map +1 -1
  51. package/lib/cjs/components/List/ListItem/ListItem.js +4 -2
  52. package/lib/cjs/components/List/ListItem/ListItem.js.map +1 -1
  53. package/lib/cjs/components/PickerView/Wheel.js +57 -16
  54. package/lib/cjs/components/PickerView/Wheel.js.map +1 -1
  55. package/lib/cjs/components/Portal/core/PortalHost.js +4 -1
  56. package/lib/cjs/components/Portal/core/PortalHost.js.map +1 -1
  57. package/lib/cjs/components/Portal/core/PortalProvider.js +1 -0
  58. package/lib/cjs/components/Portal/core/PortalProvider.js.map +1 -1
  59. package/lib/cjs/components/Portal/index.js +1 -0
  60. package/lib/cjs/components/Portal/index.js.map +1 -1
  61. package/lib/cjs/components/Stepper/Stepper.js +1 -1
  62. package/lib/cjs/components/Stepper/Stepper.js.map +1 -1
  63. package/lib/cjs/components/Stepper/styles.js +2 -2
  64. package/lib/cjs/components/Stepper/styles.js.map +1 -1
  65. package/lib/esm/_chunks/C0MWVrjO.js.map +1 -1
  66. package/lib/esm/components/ActionablePopover/ActionablePopover.js +1 -1
  67. package/lib/esm/components/ActionablePopover/ActionablePopover.js.map +1 -1
  68. package/lib/esm/components/Alert/hooks/alert.js +1 -1
  69. package/lib/esm/components/Divider/Divider.js +35 -14
  70. package/lib/esm/components/Divider/Divider.js.map +1 -1
  71. package/lib/esm/components/Divider/index.js +3 -3
  72. package/lib/esm/components/Divider/styles.js +36 -30
  73. package/lib/esm/components/Divider/styles.js.map +1 -1
  74. package/lib/esm/components/List/ListItem/ListItem.js +5 -3
  75. package/lib/esm/components/List/ListItem/ListItem.js.map +1 -1
  76. package/lib/esm/components/PickerView/Wheel.js +57 -16
  77. package/lib/esm/components/PickerView/Wheel.js.map +1 -1
  78. package/lib/esm/components/Portal/core/PortalHost.js +4 -1
  79. package/lib/esm/components/Portal/core/PortalHost.js.map +1 -1
  80. package/lib/esm/components/Portal/core/PortalProvider.js +1 -0
  81. package/lib/esm/components/Portal/core/PortalProvider.js.map +1 -1
  82. package/lib/esm/components/Portal/index.js +1 -0
  83. package/lib/esm/components/Portal/index.js.map +1 -1
  84. package/lib/esm/components/Stepper/Stepper.js +1 -1
  85. package/lib/esm/components/Stepper/Stepper.js.map +1 -1
  86. package/lib/esm/components/Stepper/styles.js +2 -2
  87. package/lib/esm/components/Stepper/styles.js.map +1 -1
  88. package/lib/src/components/Divider/styles.d.ts +3 -2
  89. package/lib/src/components/List/ListItem/ListItem.d.ts +2 -0
  90. package/lib/src/components/Stepper/interface/index.d.ts +1 -0
  91. package/lib/src/components/Stepper/styles.d.ts +2 -2
  92. package/lib/types/components/Divider/styles.d.ts +3 -2
  93. package/lib/types/components/List/ListItem/ListItem.d.ts +2 -0
  94. package/lib/types/components/Stepper/interface/index.d.ts +1 -0
  95. package/lib/types/components/Stepper/styles.d.ts +2 -2
  96. package/package.json +2 -2
  97. package/src/components/ActionablePopover/ActionablePopover.tsx +10 -1
  98. package/src/components/Divider/Divider.tsx +29 -9
  99. package/src/components/Divider/demo/index.tsx +12 -6
  100. package/src/components/Divider/styles.ts +33 -30
  101. package/src/components/List/ListItem/ListItem.tsx +12 -1
  102. package/src/components/List/demo/index.tsx +2 -0
  103. package/src/components/PickerView/Wheel.tsx +59 -12
  104. package/src/components/Portal/core/PortalHost.tsx +2 -1
  105. package/src/components/Stepper/Stepper.tsx +1 -1
  106. package/src/components/Stepper/demo/index.tsx +1 -1
  107. package/src/components/Stepper/doc/index.mdx +1 -0
  108. package/src/components/Stepper/interface/index.ts +1 -0
  109. package/src/components/Stepper/styles.ts +2 -2
  110. package/src/i18n/@types/resources.d.ts +27 -27
  111. package/src/i18n/index.json +31 -31
@@ -1 +1 @@
1
- {"version":3,"file":"ActionablePopover.js","sources":["../../../../src/components/ActionablePopover/ActionablePopover.tsx"],"sourcesContent":["import React, { useState, useMemo, isValidElement, useEffect, useRef } from \"react\";\nimport { Text, View, TouchableWithoutFeedback, GestureResponderEvent, Animated, Image, Dimensions } from \"react-native\";\nimport { RedsActionablePopover, ActionablePopoverData } from \"./interface/index\";\nimport { ModalWrapper } from \"./component\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nimport { Portal } from \"../Portal\";\nimport { Icon } from \"../Icon\";\nimport { useThemeColor, useThemeTypography } from \"../ConfigProvider\";\nimport getStyles from \"./styles\";\n\nexport default ({\n mode = \"light\",\n opacity = 0,\n content = [],\n checked = [],\n children,\n isControl = false,\n placement = \"top\",\n closeOnClickAgain = true,\n trigger = \"click\",\n zIndex = 1000,\n visible,\n onClick = () => {},\n onVisibleChange,\n onClickMask: _onClickMask,\n popContainerStyle = {},\n arrowStyles: propsArrowStyles,\n offset,\n type,\n duration,\n hostName,\n arrowOffset,\n}: RedsActionablePopover) => {\n useMounted(\"ActionablePopover\");\n const needModal = useMemo(() => opacity !== 0, [opacity]);\n\n const [_visible, setVisible] = useState(false);\n\n const progress = useRef(new Animated.Value(0)).current;\n\n const childRef = useRef<any>(null);\n\n const themeColor = useThemeColor();\n\n const themeTypography = useThemeTypography();\n\n const styles = getStyles({ type, mode }, themeTypography, themeColor);\n\n const [layout, setLayout] = useState({\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n });\n\n const [floatingLayout, setFloatingLayout] = useState({\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n });\n\n const floatStyles = useMemo(() => {\n const start = [\"top-start\", \"bottom-start\"].includes(placement);\n const mid = [\"top\", \"bottom\"].includes(placement);\n const end = [\"top-end\", \"bottom-end\"].includes(placement);\n const diffX = floatingLayout.width - layout.width;\n // @ts-expect-error\n const isHarmony = Platform.OS === \"harmony\";\n return layout.height\n ? {\n position: \"absolute\",\n top:\n (placement.includes(\"top\") ? layout.y - floatingLayout.height - 12 : layout.y + layout.height + 12) -\n (offset?.y || 0),\n left:\n (start ? layout.x : mid ? layout.x - diffX / 2 : end ? layout.x - diffX : 0) +\n (offset?.x || 0) -\n (isHarmony ? Dimensions.get(\"screen\").width : 0),\n }\n : {};\n }, [placement, layout, floatingLayout]);\n\n const arrowStyles = useMemo(() => {\n const start = [\"top-start\", \"bottom-start\"].includes(placement);\n const mid = [\"top\", \"bottom\"].includes(placement);\n const end = [\"top-end\", \"bottom-end\"].includes(placement);\n const diffX = floatingLayout.width - layout.width;\n // @ts-expect-error\n const isHarmony = Platform.OS === \"harmony\";\n return layout.height\n ? {\n transform: [{ rotate: placement.includes(\"top\") ? `0deg` : `180deg` }],\n position: \"absolute\",\n top:\n (placement.includes(\"top\") ? layout.y - 12 : layout.y + layout.height + 6) +\n (offset?.y || 0) +\n (arrowOffset?.y || 0),\n left:\n (start\n ? layout.x + 8\n : mid\n ? layout.x - diffX / 2 + floatingLayout.width / 2 - 6\n : end\n ? layout.x - diffX + floatingLayout.width - 24\n : 0) +\n (offset?.x || 0) +\n (arrowOffset?.x || 0) -\n (isHarmony ? Dimensions.get(\"screen\").width : 0),\n }\n : {};\n }, [placement, layout, floatingLayout, offset]);\n\n useEffect(() => {\n let timer: any;\n if (duration) {\n timer = setTimeout(() => onMaskChange({} as GestureResponderEvent, false), duration);\n }\n return () => {\n timer && clearTimeout(timer);\n };\n }, [duration, _visible]);\n\n /**\n * 提供popover变化回调\n */\n useEffect(() => {\n onVisibleChange?.(!!_visible);\n if (_visible) {\n Animated.timing(progress, {\n toValue: 1,\n duration: 400,\n useNativeDriver: false,\n }).start();\n } else {\n Animated.timing(progress, {\n toValue: 0,\n duration: 400,\n useNativeDriver: false,\n }).start();\n }\n }, [_visible]);\n\n const onMaskChange = (event: GestureResponderEvent, value: boolean) => {\n if (isControl) return;\n if (value === undefined) return setVisible(!_visible);\n return setVisible(value);\n };\n\n const onClickMask = (e: GestureResponderEvent) => {\n onMaskChange(e, false);\n _onClickMask?.(e);\n };\n\n const popoverStyle = useMemo(() => {\n return {\n backgroundColor: mode === \"light\" ? themeColor.White : themeColor.Fill5,\n };\n }, [mode]);\n\n useEffect(() => {\n isControl && setVisible(!!visible);\n }, [visible]);\n\n const angle = useMemo(() => {\n if (mode === \"light\") {\n return \"https://picasso-static.xiaohongshu.com/fe-platform/907ae578dedd5f26b9c150ab910c7d16234cf219.png\";\n } else {\n return \"https://picasso-static.xiaohongshu.com/fe-platform/354f38172beb8e9f51725ec0bc9f5d546597e5ba.png\";\n }\n }, [mode]);\n\n useEffect(() => {\n childRef?.current?.measureInWindow?.((x: number, y: number, width: number, height: number) => {\n setLayout({\n x,\n y,\n width,\n height,\n });\n });\n }, [offset]);\n\n useEffect(() => {\n if (_visible) {\n childRef?.current?.measureInWindow?.((x: number, y: number, width: number, height: number) => {\n setLayout({\n x,\n y,\n width,\n height,\n });\n });\n }\n }, [_visible]);\n\n return (\n <>\n {React.Children.map(children, (child, index) => {\n if (index === 0 && isValidElement(child)) {\n return (\n <TouchableWithoutFeedback\n onPress={(e) => {\n if (trigger === \"click\") {\n if (closeOnClickAgain) {\n onMaskChange(e, !_visible);\n } else {\n onMaskChange(e, true);\n }\n }\n }}\n onPressIn={(e) => {\n trigger === \"touch\" && onMaskChange(e, true);\n }}\n onPressOut={(e) => {\n trigger === \"touch\" && onMaskChange(e, false);\n }}\n >\n <View\n collapsable={false}\n ref={(el) => (childRef.current = el)}\n style={child.props.style}\n onStartShouldSetResponderCapture={() => !isControl}\n >\n {child}\n </View>\n </TouchableWithoutFeedback>\n );\n }\n return child;\n })}\n <Portal hostName={hostName}>\n <ModalWrapper\n needModal={needModal}\n visible={_visible}\n onClickMask={onClickMask}\n opacity={opacity}\n progress={progress}\n zIndex={zIndex}\n >\n <Animated.View\n collapsable={false}\n onLayout={(e) => {\n setFloatingLayout(e.nativeEvent.layout);\n }}\n // @ts-expect-error\n style={{\n backgroundColor: popoverStyle.backgroundColor,\n borderRadius: 12,\n zIndex,\n shadowColor: \"#000000\",\n shadowOffset: { width: 0, height: 1 },\n shadowOpacity: 0.1,\n shadowRadius: 4,\n elevation: 2,\n ...floatStyles!,\n ...popContainerStyle!,\n opacity: progress,\n }}\n >\n {content.map((data: ActionablePopoverData) => {\n return (\n <TouchableWithoutFeedback onPress={() => onClick(data.value)}>\n <View style={[styles.spaceBetween]}>\n <View style={[styles.container, popoverStyle]}>\n {data.icon && (\n <View style={styles.icon}>\n <Icon\n icon={data.icon}\n size={20}\n fill={mode === \"dark\" ? themeColor.White : themeColor.Title}\n />\n </View>\n )}\n <Text style={[styles.label, !data.icon && styles.normalLabelLeft, styles.normalLabelRight]}>\n {data.label}\n </Text>\n </View>\n {type === \"check\" && (\n <View style={styles.check}>\n {checked.includes(data.value) ? (\n <Image\n source={{\n uri: \"https://fe-platform.xhscdn.com/platform/104101l031lekb59j5m0md5494g900000000001j6ahsv6\",\n }}\n style={styles.image}\n />\n ) : (\n <View style={styles.image}></View>\n )}\n </View>\n )}\n </View>\n </TouchableWithoutFeedback>\n );\n })}\n </Animated.View>\n </ModalWrapper>\n </Portal>\n </>\n );\n};\n"],"names":["_ref","_ref$mode","mode","_ref$opacity","opacity","_ref$content","content","_ref$checked","checked","children","_ref$isControl","isControl","_ref$placement","placement","_ref$closeOnClickAgai","closeOnClickAgain","_ref$trigger","trigger","_ref$zIndex","zIndex","visible","_ref$onClick","onClick","onVisibleChange","_onClickMask","onClickMask","_ref$popContainerStyl","popContainerStyle","arrowStyles","offset","type","duration","hostName","arrowOffset","useMounted","needModal","useMemo","_useState","useState","_useState2","_slicedToArray","_visible","setVisible","progress","useRef","Animated","Value","current","childRef","themeColor","useThemeColor","themeTypography","useThemeTypography","styles","getStyles","_useState3","x","y","width","height","_useState4","layout","setLayout","_useState5","_useState6","floatingLayout","setFloatingLayout","floatStyles","start","includes","mid","end","diffX","isHarmony","Platform","OS","position","top","left","Dimensions","get","transform","rotate","useEffect","timer","setTimeout","onMaskChange","clearTimeout","timing","toValue","useNativeDriver","event","value","e","popoverStyle","backgroundColor","White","Fill5","_childRef$current","_childRef$current$mea","measureInWindow","call","_childRef$current2","_childRef$current2$me","React","Children","map","child","index","isValidElement","createElement","TouchableWithoutFeedback","onPress","onPressIn","onPressOut","View","collapsable","ref","el","style","props","onStartShouldSetResponderCapture","Portal","ModalWrapper","onLayout","nativeEvent","_objectSpread","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","data","spaceBetween","container","icon","Icon","size","fill","Title","Text","label","normalLabelLeft","normalLabelRight","check","Image","source","uri","image"],"mappings":"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"}
1
+ {"version":3,"file":"ActionablePopover.js","sources":["../../../../src/components/ActionablePopover/ActionablePopover.tsx"],"sourcesContent":["import React, { useState, useMemo, isValidElement, useEffect, useRef } from \"react\";\nimport {\n Text,\n View,\n TouchableWithoutFeedback,\n GestureResponderEvent,\n Animated,\n Image,\n Dimensions,\n Platform,\n} from \"react-native\";\nimport { RedsActionablePopover, ActionablePopoverData } from \"./interface/index\";\nimport { ModalWrapper } from \"./component\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nimport { Portal } from \"../Portal\";\nimport { Icon } from \"../Icon\";\nimport { useThemeColor, useThemeTypography } from \"../ConfigProvider\";\nimport getStyles from \"./styles\";\n\nexport default ({\n mode = \"light\",\n opacity = 0,\n content = [],\n checked = [],\n children,\n isControl = false,\n placement = \"top\",\n closeOnClickAgain = true,\n trigger = \"click\",\n zIndex = 1000,\n visible,\n onClick = () => {},\n onVisibleChange,\n onClickMask: _onClickMask,\n popContainerStyle = {},\n arrowStyles: propsArrowStyles,\n offset,\n type,\n duration,\n hostName,\n arrowOffset,\n}: RedsActionablePopover) => {\n useMounted(\"ActionablePopover\");\n const needModal = useMemo(() => opacity !== 0, [opacity]);\n\n const [_visible, setVisible] = useState(false);\n\n const progress = useRef(new Animated.Value(0)).current;\n\n const childRef = useRef<any>(null);\n\n const themeColor = useThemeColor();\n\n const themeTypography = useThemeTypography();\n\n const styles = getStyles({ type, mode }, themeTypography, themeColor);\n\n const [layout, setLayout] = useState({\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n });\n\n const [floatingLayout, setFloatingLayout] = useState({\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n });\n\n const floatStyles = useMemo(() => {\n const start = [\"top-start\", \"bottom-start\"].includes(placement);\n const mid = [\"top\", \"bottom\"].includes(placement);\n const end = [\"top-end\", \"bottom-end\"].includes(placement);\n const diffX = floatingLayout.width - layout.width;\n // @ts-expect-error\n const isHarmony = Platform.OS === \"harmony\";\n return layout.height\n ? {\n position: \"absolute\",\n top:\n (placement.includes(\"top\") ? layout.y - floatingLayout.height - 12 : layout.y + layout.height + 12) -\n (offset?.y || 0),\n left:\n (start ? layout.x : mid ? layout.x - diffX / 2 : end ? layout.x - diffX : 0) +\n (offset?.x || 0) -\n (isHarmony ? Dimensions.get(\"screen\").width : 0),\n }\n : {};\n }, [placement, layout, floatingLayout]);\n\n const arrowStyles = useMemo(() => {\n const start = [\"top-start\", \"bottom-start\"].includes(placement);\n const mid = [\"top\", \"bottom\"].includes(placement);\n const end = [\"top-end\", \"bottom-end\"].includes(placement);\n const diffX = floatingLayout.width - layout.width;\n // @ts-expect-error\n const isHarmony = Platform.OS === \"harmony\";\n return layout.height\n ? {\n transform: [{ rotate: placement.includes(\"top\") ? `0deg` : `180deg` }],\n position: \"absolute\",\n top:\n (placement.includes(\"top\") ? layout.y - 12 : layout.y + layout.height + 6) +\n (offset?.y || 0) +\n (arrowOffset?.y || 0),\n left:\n (start\n ? layout.x + 8\n : mid\n ? layout.x - diffX / 2 + floatingLayout.width / 2 - 6\n : end\n ? layout.x - diffX + floatingLayout.width - 24\n : 0) +\n (offset?.x || 0) +\n (arrowOffset?.x || 0) -\n (isHarmony ? Dimensions.get(\"screen\").width : 0),\n }\n : {};\n }, [placement, layout, floatingLayout, offset]);\n\n useEffect(() => {\n let timer: any;\n if (duration) {\n timer = setTimeout(() => onMaskChange({} as GestureResponderEvent, false), duration);\n }\n return () => {\n timer && clearTimeout(timer);\n };\n }, [duration, _visible]);\n\n /**\n * 提供popover变化回调\n */\n useEffect(() => {\n onVisibleChange?.(!!_visible);\n if (_visible) {\n Animated.timing(progress, {\n toValue: 1,\n duration: 400,\n useNativeDriver: false,\n }).start();\n } else {\n Animated.timing(progress, {\n toValue: 0,\n duration: 400,\n useNativeDriver: false,\n }).start();\n }\n }, [_visible]);\n\n const onMaskChange = (event: GestureResponderEvent, value: boolean) => {\n if (isControl) return;\n if (value === undefined) return setVisible(!_visible);\n return setVisible(value);\n };\n\n const onClickMask = (e: GestureResponderEvent) => {\n onMaskChange(e, false);\n _onClickMask?.(e);\n };\n\n const popoverStyle = useMemo(() => {\n return {\n backgroundColor: mode === \"light\" ? themeColor.White : themeColor.Fill5,\n };\n }, [mode]);\n\n useEffect(() => {\n isControl && setVisible(!!visible);\n }, [visible]);\n\n const angle = useMemo(() => {\n if (mode === \"light\") {\n return \"https://picasso-static.xiaohongshu.com/fe-platform/907ae578dedd5f26b9c150ab910c7d16234cf219.png\";\n } else {\n return \"https://picasso-static.xiaohongshu.com/fe-platform/354f38172beb8e9f51725ec0bc9f5d546597e5ba.png\";\n }\n }, [mode]);\n\n useEffect(() => {\n childRef?.current?.measureInWindow?.((x: number, y: number, width: number, height: number) => {\n setLayout({\n x,\n y,\n width,\n height,\n });\n });\n }, [offset]);\n\n useEffect(() => {\n if (_visible) {\n childRef?.current?.measureInWindow?.((x: number, y: number, width: number, height: number) => {\n setLayout({\n x,\n y,\n width,\n height,\n });\n });\n }\n }, [_visible]);\n\n return (\n <>\n {React.Children.map(children, (child, index) => {\n if (index === 0 && isValidElement(child)) {\n return (\n <TouchableWithoutFeedback\n onPress={(e) => {\n if (trigger === \"click\") {\n if (closeOnClickAgain) {\n onMaskChange(e, !_visible);\n } else {\n onMaskChange(e, true);\n }\n }\n }}\n onPressIn={(e) => {\n trigger === \"touch\" && onMaskChange(e, true);\n }}\n onPressOut={(e) => {\n trigger === \"touch\" && onMaskChange(e, false);\n }}\n >\n <View\n collapsable={false}\n ref={(el) => (childRef.current = el)}\n style={child.props.style}\n onStartShouldSetResponderCapture={() => !isControl}\n >\n {child}\n </View>\n </TouchableWithoutFeedback>\n );\n }\n return child;\n })}\n <Portal hostName={hostName}>\n <ModalWrapper\n needModal={needModal}\n visible={_visible}\n onClickMask={onClickMask}\n opacity={opacity}\n progress={progress}\n zIndex={zIndex}\n >\n <Animated.View\n collapsable={false}\n onLayout={(e) => {\n setFloatingLayout(e.nativeEvent.layout);\n }}\n // @ts-expect-error\n style={{\n backgroundColor: popoverStyle.backgroundColor,\n borderRadius: 12,\n zIndex,\n shadowColor: \"#000000\",\n shadowOffset: { width: 0, height: 1 },\n shadowOpacity: 0.1,\n shadowRadius: 4,\n elevation: 2,\n ...floatStyles!,\n ...popContainerStyle!,\n opacity: progress,\n }}\n >\n {content.map((data: ActionablePopoverData) => {\n return (\n <TouchableWithoutFeedback onPress={() => onClick(data.value)}>\n <View style={[styles.spaceBetween]}>\n <View style={[styles.container, popoverStyle]}>\n {data.icon && (\n <View style={styles.icon}>\n <Icon\n icon={data.icon}\n size={20}\n fill={mode === \"dark\" ? themeColor.White : themeColor.Title}\n />\n </View>\n )}\n <Text style={[styles.label, !data.icon && styles.normalLabelLeft, styles.normalLabelRight]}>\n {data.label}\n </Text>\n </View>\n {type === \"check\" && (\n <View style={styles.check}>\n {checked.includes(data.value) ? (\n <Image\n source={{\n uri: \"https://fe-platform.xhscdn.com/platform/104101l031lekb59j5m0md5494g900000000001j6ahsv6\",\n }}\n style={styles.image}\n />\n ) : (\n <View style={styles.image}></View>\n )}\n </View>\n )}\n </View>\n </TouchableWithoutFeedback>\n );\n })}\n </Animated.View>\n </ModalWrapper>\n </Portal>\n </>\n );\n};\n"],"names":["_ref","_ref$mode","mode","_ref$opacity","opacity","_ref$content","content","_ref$checked","checked","children","_ref$isControl","isControl","_ref$placement","placement","_ref$closeOnClickAgai","closeOnClickAgain","_ref$trigger","trigger","_ref$zIndex","zIndex","visible","_ref$onClick","onClick","onVisibleChange","_onClickMask","onClickMask","_ref$popContainerStyl","popContainerStyle","arrowStyles","offset","type","duration","hostName","arrowOffset","useMounted","needModal","useMemo","_useState","useState","_useState2","_slicedToArray","_visible","setVisible","progress","useRef","Animated","Value","current","childRef","themeColor","useThemeColor","themeTypography","useThemeTypography","styles","getStyles","_useState3","x","y","width","height","_useState4","layout","setLayout","_useState5","_useState6","floatingLayout","setFloatingLayout","floatStyles","start","includes","mid","end","diffX","isHarmony","Platform","OS","position","top","left","Dimensions","get","transform","rotate","useEffect","timer","setTimeout","onMaskChange","clearTimeout","timing","toValue","useNativeDriver","event","value","e","popoverStyle","backgroundColor","White","Fill5","_childRef$current","_childRef$current$mea","measureInWindow","call","_childRef$current2","_childRef$current2$me","React","Children","map","child","index","isValidElement","createElement","TouchableWithoutFeedback","onPress","onPressIn","onPressOut","View","collapsable","ref","el","style","props","onStartShouldSetResponderCapture","Portal","ModalWrapper","onLayout","nativeEvent","_objectSpread","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","data","spaceBetween","container","icon","Icon","size","fill","Title","Text","label","normalLabelLeft","normalLabelRight","check","Image","source","uri","image"],"mappings":"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"}
@@ -15,8 +15,8 @@ require('../../Portal/core/PortalContext.js');
15
15
  require('../../../pvCount/useUnmountedProcess.js');
16
16
  require('@xhs/reds-apm/src/index.native');
17
17
  require('../../../pvCount/pvData.js');
18
- require('../../Portal/core/hooks/usePortalState.js');
19
18
  require('react-native');
19
+ require('../../Portal/core/hooks/usePortalState.js');
20
20
  require('../../ConfigProvider/hooks/ConfigCache/ConfigCache.js');
21
21
  require('@xhsreds/reds-token-next');
22
22
  require('../../ConfigProvider/hooks/themeToken/useThemeToken.js');
@@ -9,29 +9,50 @@ var components_Divider_interface_index = require('../../_chunks/CY-sysEj.js');
9
9
  var components_Divider_styles = require('./styles.js');
10
10
  var pvCount_useUnmountedProcess = require('../../pvCount/useUnmountedProcess.js');
11
11
  require('../ConfigProvider/hooks/ConfigCache/ConfigCache.js');
12
- require('@xhsreds/reds-token-next');
12
+ var components_ConfigProvider_hooks_themeToken_useThemeToken = require('../ConfigProvider/hooks/themeToken/useThemeToken.js');
13
13
  require('@xhs/reds-apm/src/index.native');
14
- require('../ConfigProvider/hooks/themeToken/useThemeToken.js');
15
- require('../ConfigProvider/hooks/ConfigContext/ConfigContext.js');
16
14
  require('../../pvCount/pvData.js');
15
+ require('@xhsreds/reds-token-next');
16
+ require('../ConfigProvider/hooks/ConfigContext/ConfigContext.js');
17
17
 
18
18
  var Divider = function Divider(props) {
19
+ var _useState = React.useState(0),
20
+ _useState2 = _rollupPluginBabelHelpers._slicedToArray(_useState, 2),
21
+ textWidth = _useState2[0],
22
+ setTextWidth = _useState2[1];
23
+ var _useState3 = React.useState(0),
24
+ _useState4 = _rollupPluginBabelHelpers._slicedToArray(_useState3, 2),
25
+ containerWidth = _useState4[0],
26
+ setContainerWidth = _useState4[1];
27
+ var themeColor = components_ConfigProvider_hooks_themeToken_useThemeToken.useThemeColor("Divider");
28
+ var typography = components_ConfigProvider_hooks_themeToken_useThemeToken.useThemeTypography("Divider");
19
29
  pvCount_useUnmountedProcess.default("Divider");
20
30
  var finalProps = _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, components_Divider_interface_index.DividerDefaultProps), props), {}, {
21
- direction: props.direction,
22
- orientation: props.orientation
31
+ direction: props.direction || components_Divider_interface_index.DividerDefaultProps.direction,
32
+ orientation: props.orientation || components_Divider_interface_index.DividerDefaultProps.orientation
23
33
  });
24
- var styles = components_Divider_styles.getStyles(finalProps);
25
- var isPrimary = finalProps.direction === "primary" || finalProps.direction === "secondary";
34
+ var styles = React.useMemo(function () {
35
+ return components_Divider_styles.getStyles(finalProps, textWidth, containerWidth, themeColor, typography);
36
+ }, [textWidth, containerWidth, themeColor, typography]);
37
+ var handleLayout = function handleLayout(e) {
38
+ setTextWidth(e.nativeEvent.layout.width);
39
+ };
40
+ var handlerContainerWidth = function handlerContainerWidth(e) {
41
+ setContainerWidth(e.nativeEvent.layout.width);
42
+ };
26
43
  return /* @__PURE__ */React.createElement(reactNative.View, {
27
- style: [styles.divider, styles[finalProps.direction]]
44
+ style: [styles.divider, styles[finalProps.direction]],
45
+ onLayout: handlerContainerWidth
28
46
  }, finalProps.orientation && finalProps.direction !== "vertical" && /* @__PURE__ */React.createElement(reactNative.View, {
29
47
  style: styles.textContainer
30
- }, isPrimary && /* @__PURE__ */React.createElement(reactNative.View, {
48
+ }, /* @__PURE__ */React.createElement(reactNative.View, {
31
49
  style: styles.before
32
- }), props.children && /* @__PURE__ */React.createElement(reactNative.Text, {
33
- style: styles.text
34
- }, props.children), isPrimary && /* @__PURE__ */React.createElement(reactNative.View, {
50
+ }), props.children ? /* @__PURE__ */React.createElement(reactNative.Text, {
51
+ style: styles.text,
52
+ onLayout: handleLayout
53
+ }, props.children) : /* @__PURE__ */React.createElement(reactNative.Text, {
54
+ style: styles.noTextBorderStyle
55
+ }), /* @__PURE__ */React.createElement(reactNative.View, {
35
56
  style: styles.after
36
57
  })));
37
58
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Divider.js","sources":["../../../../src/components/Divider/Divider.tsx"],"sourcesContent":["import React from \"react\";\nimport { View, Text } from \"react-native\";\nimport { RedsDivider, DividerDefaultProps } from \"./interface\";\nimport { getStyles } from \"./styles\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\n\nconst Divider = (props: RedsDivider) => {\n useMounted(\"Divider\");\n const finalProps: RedsDivider = {\n ...DividerDefaultProps,\n ...props,\n direction: props.direction as RedsDivider[\"direction\"],\n orientation: props.orientation as RedsDivider[\"orientation\"],\n };\n\n const styles = getStyles(finalProps);\n const isPrimary = finalProps.direction === \"primary\" || finalProps.direction === \"secondary\";\n\n return (\n <View style={[styles.divider, styles[finalProps.direction!]]}>\n {finalProps.orientation && finalProps.direction !== \"vertical\" && (\n <View style={styles.textContainer}>\n {isPrimary && <View style={styles.before} />}\n {props.children && <Text style={styles.text}>{props.children}</Text>}\n {isPrimary && <View style={styles.after} />}\n </View>\n )}\n </View>\n );\n};\n\nexport default React.memo(Divider);\n"],"names":["Divider","props","useMounted","finalProps","_objectSpread","DividerDefaultProps","direction","orientation","styles","getStyles","isPrimary","React","createElement","View","style","divider","textContainer","before","children","Text","text","after","memo"],"mappings":";;;;;;;;;;;;;;;;;AAMA,IAAMA,OAAA,GAAU,SAAVA,OAAAA,CAAWC,KAAuB,EAAA;EACtCC,mCAAA,CAAW,SAAS,CAAA,CAAA;EACpB,IAAMC,UAA0B,GAAAC,wCAAA,CAAAA,wCAAA,CAAAA,wCAAA,CAAA,EAAA,EAC3BC,sDAAA,CAAA,EACAJ,KAAA,CAAA,EAAA,EAAA,EAAA;IACHK,WAAWL,KAAM,CAAAK,SAAA;IACjBC,aAAaN,KAAM,CAAAM,WAAAA;GACrB,CAAA,CAAA;AAEM,EAAA,IAAAC,MAAA,GAASC,oCAAUN,UAAU,CAAA,CAAA;AACnC,EAAA,IAAMO,SAAY,GAAAP,UAAA,CAAWG,SAAc,KAAA,SAAA,IAAaH,WAAWG,SAAc,KAAA,WAAA,CAAA;AAG/E,EAAA,sBAAAK,KAAA,CAAAC,aAAA,CAACC;IAAKC,KAAO,EAAA,CAACN,OAAOO,OAAS,EAAAP,MAAA,CAAOL,WAAWG,SAAU,CAAC,CAAA;KACxDH,UAAW,CAAAI,WAAA,IAAeJ,WAAWG,SAAc,KAAA,UAAA,uCACjDO,gBAAK,EAAA;IAAAC,KAAA,EAAON,OAAOQ,aAAAA;GACjB,EAAAN,SAAA,uCAAcG,gBAAK,EAAA;IAAAC,KAAA,EAAON,OAAOS,MAAAA;AAAQ,GAAA,CAAA,EACzChB,MAAMiB,QAAY,mBAAAP,KAAA,CAAAC,aAAA,CAACO;IAAKL,KAAO,EAAAN,MAAA,CAAOY,IAAAA;KAAOnB,KAAM,CAAAiB,QAAS,GAC5DR,SAAa,mBAAAC,KAAA,CAAAC,aAAA,CAACC;IAAKC,KAAO,EAAAN,MAAA,CAAOa,KAAAA;GAAO,CAC3C,CAEJ,CAAA,CAAA;AAEJ,CAAA,CAAA;AAEA,gBAAA,aAAeV,KAAA,CAAMW,KAAKtB,OAAO,CAAA;;;;"}
1
+ {"version":3,"file":"Divider.js","sources":["../../../../src/components/Divider/Divider.tsx"],"sourcesContent":["import React, { useState, useMemo } from \"react\";\nimport { View, Text } from \"react-native\";\nimport { RedsDivider, DividerDefaultProps } from \"./interface\";\nimport { getStyles } from \"./styles\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nimport { useThemeColor, useThemeTypography } from \"../ConfigProvider\";\n\nconst Divider = (props: RedsDivider) => {\n const [textWidth, setTextWidth] = useState(0);\n const [containerWidth, setContainerWidth] = useState(0);\n const themeColor = useThemeColor(\"Divider\");\n const typography = useThemeTypography(\"Divider\");\n useMounted(\"Divider\");\n const finalProps: RedsDivider = {\n ...DividerDefaultProps,\n ...props,\n direction: (props.direction || DividerDefaultProps.direction) as RedsDivider[\"direction\"],\n orientation: (props.orientation || DividerDefaultProps.orientation) as RedsDivider[\"orientation\"],\n };\n\n const styles = useMemo(() => {\n return getStyles(finalProps, textWidth, containerWidth, themeColor, typography);\n }, [textWidth, containerWidth, themeColor, typography]);\n\n const handleLayout = (e: any) => {\n setTextWidth(e.nativeEvent.layout.width);\n };\n\n const handlerContainerWidth = (e: any) => {\n setContainerWidth(e.nativeEvent.layout.width);\n };\n\n return (\n <View style={[styles.divider, styles[finalProps.direction!]]} onLayout={handlerContainerWidth}>\n {finalProps.orientation && finalProps.direction !== \"vertical\" && (\n <View style={styles.textContainer}>\n <View style={styles.before} />\n {props.children ? (\n <Text style={styles.text} onLayout={handleLayout}>\n {props.children}\n </Text>\n ) : (\n <Text style={styles.noTextBorderStyle}></Text>\n )}\n <View style={styles.after} />\n </View>\n )}\n </View>\n );\n};\n\nexport default React.memo(Divider);\n"],"names":["Divider","props","_useState","useState","_useState2","_slicedToArray","textWidth","setTextWidth","_useState3","_useState4","containerWidth","setContainerWidth","themeColor","useThemeColor","typography","useThemeTypography","useMounted","finalProps","_objectSpread","DividerDefaultProps","direction","orientation","styles","useMemo","getStyles","handleLayout","e","nativeEvent","layout","width","handlerContainerWidth","React","createElement","View","style","divider","onLayout","textContainer","before","children","Text","text","noTextBorderStyle","after","memo"],"mappings":"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"}
@@ -8,13 +8,13 @@ require('../../_chunks/C9tZEm0t.js');
8
8
  require('react');
9
9
  require('react-native');
10
10
  require('./styles.js');
11
+ require('../../pvCount/useUnmountedProcess.js');
12
+ require('@xhs/reds-apm/src/index.native');
13
+ require('../../pvCount/pvData.js');
11
14
  require('../ConfigProvider/hooks/ConfigCache/ConfigCache.js');
12
15
  require('@xhsreds/reds-token-next');
13
- require('@xhs/reds-apm/src/index.native');
14
16
  require('../ConfigProvider/hooks/themeToken/useThemeToken.js');
15
17
  require('../ConfigProvider/hooks/ConfigContext/ConfigContext.js');
16
- require('../../pvCount/useUnmountedProcess.js');
17
- require('../../pvCount/pvData.js');
18
18
 
19
19
 
20
20
 
@@ -3,33 +3,26 @@
3
3
  var _rollupPluginBabelHelpers = require('../../_chunks/C9tZEm0t.js');
4
4
  var reactNative = require('react-native');
5
5
  var components_Divider_interface_index = require('../../_chunks/CY-sysEj.js');
6
- require('../ConfigProvider/hooks/ConfigCache/ConfigCache.js');
7
- require('react');
8
- require('@xhs/reds-apm/src/index.native');
9
- var components_ConfigProvider_hooks_themeToken_useThemeToken = require('../ConfigProvider/hooks/themeToken/useThemeToken.js');
10
- require('@xhsreds/reds-token-next');
11
- require('../ConfigProvider/hooks/ConfigContext/ConfigContext.js');
12
6
 
13
7
  var baseDivider = {
14
8
  position: "relative"
15
9
  };
16
- var getStyles = function getStyles(p) {
10
+ var getStyles = function getStyles(p, textWidth, containerWidth, themeColor, typography) {
17
11
  var props = _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, components_Divider_interface_index.DividerDefaultProps), p);
18
- var themeColor = components_ConfigProvider_hooks_themeToken_useThemeToken.useThemeColor("Divider");
19
- var typography = components_ConfigProvider_hooks_themeToken_useThemeToken.useThemeTypography("Divider");
20
12
  var isHorizontal = props.direction === "horizontal";
13
+ p.children;
14
+ var remainingWidth = containerWidth - textWidth;
21
15
  var beforeAfterCommon = {
22
16
  borderStyle: "solid",
23
- borderTopWidth: 0.5,
24
- borderColor: props.color || themeColor.Separator2,
25
- width: 8
17
+ borderTopWidth: props.stroke || 0.5,
18
+ borderColor: props.color || themeColor.Separator2
26
19
  };
27
20
  var dividerStyle = _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, baseDivider), {}, {
28
- borderBottomWidth: isHorizontal ? props.stroke ? props.stroke : reactNative.StyleSheet.hairlineWidth : 0,
29
- borderLeftWidth: isHorizontal ? 0 : props.stroke ? props.stroke : reactNative.StyleSheet.hairlineWidth,
30
- borderBottomColor: isHorizontal ? props.color || themeColor.Separator2 : void 0,
31
- borderLeftColor: isHorizontal ? void 0 : props.color || themeColor.Separator2,
32
- borderStyle: "solid",
21
+ // borderBottomWidth: isHorizontal && hasTextContent ? 0 : (isHorizontal ? (props.stroke ? props.stroke : StyleSheet.hairlineWidth) : 0),
22
+ // borderLeftWidth: isHorizontal ? 0 : props.stroke ? props.stroke : StyleSheet.hairlineWidth,
23
+ // borderBottomColor: isHorizontal && !hasTextContent ? props.color || themeColor.Separator2 : undefined,
24
+ // borderLeftColor: isHorizontal ? undefined : props.color || themeColor.Separator2,
25
+ // borderStyle: "solid",
33
26
  marginVertical: props.margin && props.margin[0] && Number(props.margin[0]) || (isHorizontal ? 20 : 0),
34
27
  marginHorizontal: props.margin && props.margin[1] && Number(props.margin[1]) || (isHorizontal ? 0 : 12),
35
28
  marginLeft: props.margin && props.margin[1] && (props.orientation === "center" || props.orientation === "left") && Number(props.margin[1]) || (isHorizontal ? 0 : 12),
@@ -37,16 +30,10 @@ var getStyles = function getStyles(p) {
37
30
  width: isHorizontal ? props.size : "auto"
38
31
  });
39
32
  var textContainer = {
40
- paddingVertical: 0,
41
- paddingHorizontal: 16,
42
- position: "absolute",
43
- lineHeight: 18,
44
- left: props.orientation === "left" ? 24 : void 0,
45
- right: props.orientation === "right" ? 24 : void 0,
46
- alignSelf: props.orientation === "center" ? "center" : void 0,
47
33
  flexDirection: "row",
48
34
  alignItems: "center",
49
- top: isHorizontal && -9 || 0
35
+ width: "100%"
36
+ // 移除 position absolute,改为正常布局
50
37
  };
51
38
  var textStyle = {
52
39
  fontSize: typography.C2FontSize,
@@ -59,12 +46,30 @@ var getStyles = function getStyles(p) {
59
46
  var secondaryStyle = _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, textStyle), {}, {
60
47
  color: "rgba(51, 51, 51, .3)"
61
48
  });
62
- var beforeStyle = _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, beforeAfterCommon), {}, {
63
- marginRight: 8,
49
+ var beforeStyle = _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, beforeAfterCommon), {}, {
50
+ marginRight: props.children ? 8 : 0
51
+ }, isHorizontal ? props.orientation === "center" ? {
52
+ flex: 1
53
+ } : {
54
+ width: props.orientation === "left" ? remainingWidth * 0.15 : remainingWidth * 0.85
55
+ } : {
56
+ width: 8
57
+ }), {}, {
58
+ borderColor: props.direction === "secondary" ? "rgba(51, 51, 51, .3)" : props.color || themeColor.Separator2
59
+ });
60
+ var afterStyle = _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, beforeAfterCommon), {}, {
61
+ marginLeft: props.children ? 8 : 0
62
+ }, isHorizontal ? props.orientation === "center" ? {
63
+ flex: 1
64
+ } : {
65
+ width: props.orientation === "right" ? remainingWidth * 0.15 : remainingWidth * 0.85
66
+ } : {
67
+ width: 8
68
+ }), {}, {
64
69
  borderColor: props.direction === "secondary" ? "rgba(51, 51, 51, .3)" : props.color || themeColor.Separator2
65
70
  });
66
- var afterStyle = _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, beforeAfterCommon), {}, {
67
- marginLeft: 8,
71
+ var noTextBorderStyle = _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, beforeAfterCommon), {}, {
72
+ width: "auto",
68
73
  borderColor: props.direction === "secondary" ? "rgba(51, 51, 51, .3)" : props.color || themeColor.Separator2
69
74
  });
70
75
  var verticalStyle = _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, dividerStyle), {}, {
@@ -80,7 +85,8 @@ var getStyles = function getStyles(p) {
80
85
  textContainer: textContainer,
81
86
  text: textStyle,
82
87
  before: beforeStyle,
83
- after: afterStyle
88
+ after: afterStyle,
89
+ noTextBorderStyle: noTextBorderStyle
84
90
  });
85
91
  };
86
92
 
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sources":["../../../../src/components/Divider/styles.ts"],"sourcesContent":["import { StyleSheet, ViewStyle, TextStyle, DimensionValue } from \"react-native\";\nimport { RedsDivider, DividerDefaultProps } from \"./interface\";\nimport { useThemeColor, useThemeTypography } from \"../ConfigProvider\";\n\nconst baseDivider: ViewStyle = {\n position: \"relative\",\n};\n\nconst baseText: TextStyle = {\n paddingVertical: 0,\n paddingHorizontal: 16,\n position: \"absolute\",\n backgroundColor: \"#fff\",\n lineHeight: 18,\n};\n\nconst getStyles = (p: RedsDivider) => {\n const props = { ...DividerDefaultProps, ...p };\n const themeColor = useThemeColor(\"Divider\");\n const typography = useThemeTypography(\"Divider\");\n const isHorizontal = props.direction === \"horizontal\";\n const beforeAfterCommon: ViewStyle = {\n borderStyle: \"solid\",\n borderTopWidth: 0.5,\n borderColor: props.color || themeColor.Separator2,\n width: 8,\n };\n\n const dividerStyle: ViewStyle = {\n ...baseDivider,\n borderBottomWidth: isHorizontal ? (props.stroke ? props.stroke : StyleSheet.hairlineWidth) : 0,\n borderLeftWidth: isHorizontal ? 0 : props.stroke ? props.stroke : StyleSheet.hairlineWidth,\n borderBottomColor: isHorizontal ? props.color || themeColor.Separator2 : undefined,\n borderLeftColor: isHorizontal ? undefined : props.color || themeColor.Separator2,\n borderStyle: \"solid\",\n marginVertical: (props.margin && props.margin[0] && Number(props.margin[0])) || (isHorizontal ? 20 : 0),\n marginHorizontal: (props.margin && props.margin[1] && Number(props.margin[1])) || (isHorizontal ? 0 : 12),\n marginLeft:\n (props.margin &&\n props.margin[1] &&\n (props.orientation === \"center\" || props.orientation === \"left\") &&\n Number(props.margin[1])) ||\n (isHorizontal ? 0 : 12),\n marginRight:\n (props.margin && props.margin[1] && props.orientation === \"center\" ? Number(props.margin[1]) : 0) ||\n (isHorizontal ? 0 : 12),\n width: (isHorizontal ? props.size : \"auto\") as DimensionValue,\n };\n\n const textContainer: TextStyle = {\n paddingVertical: 0,\n paddingHorizontal: 16,\n position: \"absolute\",\n lineHeight: 18,\n left: props.orientation === \"left\" ? 24 : undefined,\n right: props.orientation === \"right\" ? 24 : undefined,\n alignSelf: props.orientation === \"center\" ? \"center\" : undefined,\n flexDirection: \"row\",\n alignItems: \"center\",\n top: (isHorizontal && -9) || 0,\n };\n\n const textStyle: TextStyle = {\n fontSize: typography.C2FontSize,\n fontWeight: \"400\" as TextStyle[\"fontWeight\"],\n color: props.direction === \"secondary\" ? \"rgba(51, 51, 51, .3)\" : themeColor.Description,\n };\n\n const primaryStyle: TextStyle = {\n ...textStyle,\n color: themeColor.Description,\n };\n\n const secondaryStyle: TextStyle = {\n ...textStyle,\n color: \"rgba(51, 51, 51, .3)\",\n };\n\n const beforeStyle: ViewStyle = {\n ...beforeAfterCommon,\n marginRight: 8,\n borderColor: props.direction === \"secondary\" ? \"rgba(51, 51, 51, .3)\" : props.color || themeColor.Separator2,\n };\n\n const afterStyle: ViewStyle = {\n ...beforeAfterCommon,\n marginLeft: 8,\n borderColor: props.direction === \"secondary\" ? \"rgba(51, 51, 51, .3)\" : props.color || themeColor.Separator2,\n };\n\n const verticalStyle: ViewStyle = {\n ...dividerStyle,\n height: (props.size || 18) as DimensionValue,\n marginVertical: 0,\n };\n\n return StyleSheet.create({\n divider: baseDivider,\n horizontal: dividerStyle,\n vertical: verticalStyle,\n primary: primaryStyle,\n secondary: secondaryStyle,\n textContainer: textContainer,\n text: textStyle,\n before: beforeStyle,\n after: afterStyle,\n });\n};\n\nexport { getStyles };\n"],"names":["baseDivider","position","getStyles","p","props","_objectSpread","DividerDefaultProps","themeColor","useThemeColor","typography","useThemeTypography","isHorizontal","direction","beforeAfterCommon","borderStyle","borderTopWidth","borderColor","color","Separator2","width","dividerStyle","borderBottomWidth","stroke","StyleSheet","hairlineWidth","borderLeftWidth","borderBottomColor","borderLeftColor","marginVertical","margin","Number","marginHorizontal","marginLeft","orientation","marginRight","size","textContainer","paddingVertical","paddingHorizontal","lineHeight","left","right","alignSelf","flexDirection","alignItems","top","textStyle","fontSize","C2FontSize","fontWeight","Description","primaryStyle","secondaryStyle","beforeStyle","afterStyle","verticalStyle","height","create","divider","horizontal","vertical","primary","secondary","text","before","after"],"mappings":"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"}
1
+ {"version":3,"file":"styles.js","sources":["../../../../src/components/Divider/styles.ts"],"sourcesContent":["import { StyleSheet, ViewStyle, TextStyle, DimensionValue } from \"react-native\";\nimport { RedsDivider, DividerDefaultProps } from \"./interface\";\n\nconst baseDivider: ViewStyle = {\n position: \"relative\",\n};\n\nconst getStyles = (p: RedsDivider, textWidth: number, containerWidth: number, themeColor: any, typography: any) => {\n const props = { ...DividerDefaultProps, ...p };\n const isHorizontal = props.direction === \"horizontal\";\n const hasTextContent = p.children;\n\n const remainingWidth = containerWidth - textWidth;\n\n const beforeAfterCommon: ViewStyle = {\n borderStyle: \"solid\",\n borderTopWidth: props.stroke || 0.5,\n borderColor: props.color || themeColor.Separator2,\n };\n\n const dividerStyle: ViewStyle = {\n ...baseDivider,\n // borderBottomWidth: isHorizontal && hasTextContent ? 0 : (isHorizontal ? (props.stroke ? props.stroke : StyleSheet.hairlineWidth) : 0),\n // borderLeftWidth: isHorizontal ? 0 : props.stroke ? props.stroke : StyleSheet.hairlineWidth,\n // borderBottomColor: isHorizontal && !hasTextContent ? props.color || themeColor.Separator2 : undefined,\n // borderLeftColor: isHorizontal ? undefined : props.color || themeColor.Separator2,\n // borderStyle: \"solid\",\n marginVertical: (props.margin && props.margin[0] && Number(props.margin[0])) || (isHorizontal ? 20 : 0),\n marginHorizontal: (props.margin && props.margin[1] && Number(props.margin[1])) || (isHorizontal ? 0 : 12),\n marginLeft:\n (props.margin &&\n props.margin[1] &&\n (props.orientation === \"center\" || props.orientation === \"left\") &&\n Number(props.margin[1])) ||\n (isHorizontal ? 0 : 12),\n marginRight:\n (props.margin && props.margin[1] && props.orientation === \"center\" ? Number(props.margin[1]) : 0) ||\n (isHorizontal ? 0 : 12),\n width: (isHorizontal ? props.size : \"auto\") as DimensionValue,\n };\n\n const textContainer: ViewStyle = {\n flexDirection: \"row\",\n alignItems: \"center\",\n width: \"100%\",\n // 移除 position absolute,改为正常布局\n };\n\n const textStyle: TextStyle = {\n fontSize: typography.C2FontSize,\n fontWeight: \"400\" as TextStyle[\"fontWeight\"],\n color: props.direction === \"secondary\" ? \"rgba(51, 51, 51, .3)\" : themeColor.Description,\n };\n\n const primaryStyle: TextStyle = {\n ...textStyle,\n color: themeColor.Description,\n };\n\n const secondaryStyle: TextStyle = {\n ...textStyle,\n color: \"rgba(51, 51, 51, .3)\",\n };\n\n const beforeStyle: ViewStyle = {\n ...beforeAfterCommon,\n marginRight: props.children ? 8 : 0,\n ...(isHorizontal\n ? props.orientation === \"center\"\n ? { flex: 1 }\n : { width: props.orientation === \"left\" ? remainingWidth * 0.15 : remainingWidth * 0.85 }\n : { width: 8 }),\n borderColor: props.direction === \"secondary\" ? \"rgba(51, 51, 51, .3)\" : props.color || themeColor.Separator2,\n };\n\n const afterStyle: ViewStyle = {\n ...beforeAfterCommon,\n marginLeft: props.children ? 8 : 0,\n ...(isHorizontal\n ? props.orientation === \"center\"\n ? { flex: 1 }\n : { width: props.orientation === \"right\" ? remainingWidth * 0.15 : remainingWidth * 0.85 }\n : { width: 8 }),\n borderColor: props.direction === \"secondary\" ? \"rgba(51, 51, 51, .3)\" : props.color || themeColor.Separator2,\n };\n\n const noTextBorderStyle: ViewStyle = {\n ...beforeAfterCommon,\n width: \"auto\",\n borderColor: props.direction === \"secondary\" ? \"rgba(51, 51, 51, .3)\" : props.color || themeColor.Separator2,\n };\n\n const verticalStyle: ViewStyle = {\n ...dividerStyle,\n height: (props.size || 18) as DimensionValue,\n marginVertical: 0,\n };\n\n return StyleSheet.create({\n divider: baseDivider,\n horizontal: dividerStyle,\n vertical: verticalStyle,\n primary: primaryStyle,\n secondary: secondaryStyle,\n textContainer: textContainer,\n text: textStyle,\n before: beforeStyle,\n after: afterStyle,\n noTextBorderStyle: noTextBorderStyle,\n });\n};\n\nexport { getStyles };\n"],"names":["baseDivider","position","getStyles","p","textWidth","containerWidth","themeColor","typography","props","_objectSpread","DividerDefaultProps","isHorizontal","direction","children","remainingWidth","beforeAfterCommon","borderStyle","borderTopWidth","stroke","borderColor","color","Separator2","dividerStyle","marginVertical","margin","Number","marginHorizontal","marginLeft","orientation","marginRight","width","size","textContainer","flexDirection","alignItems","textStyle","fontSize","C2FontSize","fontWeight","Description","primaryStyle","secondaryStyle","beforeStyle","flex","afterStyle","noTextBorderStyle","verticalStyle","height","StyleSheet","create","divider","horizontal","vertical","primary","secondary","text","before","after"],"mappings":"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"}
@@ -40,6 +40,8 @@ var ListItem = function ListItem(_ref) {
40
40
  children = _ref.children,
41
41
  badgeActionContent = _ref.badgeActionContent;
42
42
  _ref.badgeTitleContent;
43
+ var style = _ref.style,
44
+ lineStyle = _ref.lineStyle;
43
45
  pvCount_useUnmountedProcess.default("ListItem");
44
46
  var styles = components_List_styles.default();
45
47
  var _useListContext = components_List_ListItem_ListContext.useListContext(),
@@ -72,7 +74,7 @@ var ListItem = function ListItem(_ref) {
72
74
  }, /* @__PURE__ */React.createElement(reactNative.View, {
73
75
  style: [styles.listItem, children ? {} : {
74
76
  height: listItemSizeToHeight[size]
75
- }, size === "expand" && styles.expand]
77
+ }, size === "expand" && styles.expand, style]
76
78
  }, children ? children : /* @__PURE__ */React.createElement(reactNative.View, {
77
79
  style: [styles.content, contentStyle]
78
80
  }, prefix && /* @__PURE__ */React.createElement(reactNative.View, {
@@ -80,7 +82,7 @@ var ListItem = function ListItem(_ref) {
80
82
  height: listItemSizeToHeight[size]
81
83
  }, prefixStyle]
82
84
  }, prefix), /* @__PURE__ */React.createElement(reactNative.View, {
83
- style: [styles.contentBox, lineItem ? styles.hr : {}, {
85
+ style: [styles.contentBox, lineItem ? _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, styles.hr), lineStyle) : {}, {
84
86
  height: listItemSizeToHeight[size]
85
87
  }]
86
88
  }, /* @__PURE__ */React.createElement(reactNative.View, {
@@ -1 +1 @@
1
- {"version":3,"file":"ListItem.js","sources":["../../../../../src/components/List/ListItem/ListItem.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState, ReactNode } from \"react\";\nimport { View, Text, Image, TouchableWithoutFeedback, TextStyle, ViewStyle } from \"react-native\";\nimport { useListContext } from \"./ListContext\";\nimport { useColorMode } from \"../../ConfigProvider\";\nimport createStyles from \"../styles\";\nimport useMounted from \"../../../pvCount/useUnmountedProcess\";\nimport { Badge } from \"../../Badge\";\n\nexport interface RedsListItem {\n title: string;\n subtitle?: string;\n actionText?: string;\n size?: \"regular\" | \"expand\";\n arrow?: boolean;\n prefix?: ReactNode;\n action?: ReactNode;\n onClick?: () => void;\n actionTextStyle?: TextStyle;\n prefixStyle?: ViewStyle;\n children?: ReactNode;\n contentStyle?: ViewStyle;\n badgeActionContent?: string;\n badgeTitleContent?: string;\n}\n\nconst ListItem: React.FC<RedsListItem> = ({\n title,\n subtitle,\n actionText,\n size = \"regular\",\n arrow = false,\n prefix,\n action,\n onClick = () => {},\n actionTextStyle = {},\n prefixStyle = {},\n contentStyle = {},\n children,\n badgeActionContent,\n badgeTitleContent,\n}) => {\n useMounted(\"ListItem\");\n const styles = createStyles();\n const { registerChild, unregisterChild } = useListContext();\n const [lineItem, setLineItem] = useState(false);\n const colorMode = useColorMode();\n\n const childInfo = {\n setLine: (value: boolean) => setLineItem(value),\n };\n\n useEffect(() => {\n registerChild(childInfo);\n return () => unregisterChild(childInfo);\n }, []);\n\n const listItemSizeToHeight = {\n regular: 48,\n expand: 72,\n };\n\n return (\n <TouchableWithoutFeedback onPress={() => onClick()}>\n <View\n style={[\n styles.listItem,\n children ? {} : { height: listItemSizeToHeight[size] },\n size === \"expand\" && styles.expand,\n ]}\n >\n {children ? (\n children\n ) : (\n <View style={[styles.content, contentStyle]}>\n {prefix && (\n <View style={[styles.prefix, { height: listItemSizeToHeight[size] }, prefixStyle]}>{prefix}</View>\n )}\n <View style={[styles.contentBox, lineItem ? styles.hr : {}, { height: listItemSizeToHeight[size] }]}>\n <View\n style={[styles.contentContainer, { marginBottom: 12, marginTop: 12 }, prefix ? { height: 48 } : {}]}\n >\n <View style={styles.textContainer}>\n <Text style={styles.title}>{title}</Text>\n {size === \"expand\" && subtitle && <Text style={styles.subtitle}>{subtitle}</Text>}\n </View>\n <View style={styles.tailContainer}>\n {action ? (\n <View style={styles.tail}>{action}</View>\n ) : (\n <View style={styles.tail}>\n <Text style={[styles.tailText, actionTextStyle]}>{actionText}</Text>\n {badgeActionContent && (\n <Badge content={badgeActionContent} position=\"centerLeft\" offset={[-15, 7]}>\n <View></View>\n </Badge>\n )}\n {arrow && (\n <View style={{ height: 16, width: 16 }}>\n <Image\n width={16}\n height={16}\n source={{\n uri:\n colorMode === \"dark\"\n ? \"https://picasso-static.xiaohongshu.com/fe-platform/ca9c472d2e00bd9ff171736db37844a1020a7bee.png\"\n : \"https://picasso-static.xiaohongshu.com/fe-platform/2aa7929e87409d49353f7ad8c05fcc1752eea2f0.png\",\n }}\n ></Image>\n </View>\n )}\n </View>\n )}\n </View>\n </View>\n </View>\n </View>\n )}\n </View>\n </TouchableWithoutFeedback>\n );\n};\n\nexport default ListItem;\n"],"names":["ListItem","title","_ref","subtitle","actionText","_ref$size","size","_ref$arrow","arrow","prefix","action","_ref$onClick","onClick","_ref$actionTextStyle","actionTextStyle","_ref$prefixStyle","prefixStyle","_ref$contentStyle","contentStyle","children","badgeActionContent","badgeTitleContent","useMounted","styles","createStyles","_useListContext","useListContext","registerChild","unregisterChild","_useState","useState","_useState2","_slicedToArray","lineItem","setLineItem","colorMode","useColorMode","childInfo","setLine","value","useEffect","listItemSizeToHeight","regular","expand","React","createElement","TouchableWithoutFeedback","onPress","View","style","listItem","height","content","contentBox","hr","contentContainer","marginBottom","marginTop","textContainer","Text","tailContainer","tail","tailText","Badge","position","offset","width","Image","source","uri"],"mappings":"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"}
1
+ {"version":3,"file":"ListItem.js","sources":["../../../../../src/components/List/ListItem/ListItem.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState, ReactNode } from \"react\";\nimport { View, Text, Image, TouchableWithoutFeedback, TextStyle, ViewStyle } from \"react-native\";\nimport { useListContext } from \"./ListContext\";\nimport { useColorMode } from \"../../ConfigProvider\";\nimport createStyles from \"../styles\";\nimport useMounted from \"../../../pvCount/useUnmountedProcess\";\nimport { Badge } from \"../../Badge\";\n\nexport interface RedsListItem {\n title: string;\n subtitle?: string;\n actionText?: string;\n size?: \"regular\" | \"expand\";\n arrow?: boolean;\n prefix?: ReactNode;\n action?: ReactNode;\n onClick?: () => void;\n actionTextStyle?: TextStyle;\n prefixStyle?: ViewStyle;\n children?: ReactNode;\n contentStyle?: ViewStyle;\n badgeActionContent?: string;\n badgeTitleContent?: string;\n style?: any;\n lineStyle?: any;\n}\n\nconst ListItem: React.FC<RedsListItem> = ({\n title,\n subtitle,\n actionText,\n size = \"regular\",\n arrow = false,\n prefix,\n action,\n onClick = () => {},\n actionTextStyle = {},\n prefixStyle = {},\n contentStyle = {},\n children,\n badgeActionContent,\n badgeTitleContent,\n style,\n lineStyle,\n}) => {\n useMounted(\"ListItem\");\n const styles = createStyles();\n const { registerChild, unregisterChild } = useListContext();\n const [lineItem, setLineItem] = useState(false);\n const colorMode = useColorMode();\n\n const childInfo = {\n setLine: (value: boolean) => setLineItem(value),\n };\n\n useEffect(() => {\n registerChild(childInfo);\n return () => unregisterChild(childInfo);\n }, []);\n\n const listItemSizeToHeight = {\n regular: 48,\n expand: 72,\n };\n\n return (\n <TouchableWithoutFeedback onPress={() => onClick()}>\n <View\n style={[\n styles.listItem,\n children ? {} : { height: listItemSizeToHeight[size] },\n size === \"expand\" && styles.expand,\n style,\n ]}\n >\n {children ? (\n children\n ) : (\n <View style={[styles.content, contentStyle]}>\n {prefix && (\n <View style={[styles.prefix, { height: listItemSizeToHeight[size] }, prefixStyle]}>{prefix}</View>\n )}\n <View\n style={[\n styles.contentBox,\n lineItem ? { ...styles.hr, ...lineStyle } : {},\n { height: listItemSizeToHeight[size] },\n ]}\n >\n <View\n style={[styles.contentContainer, { marginBottom: 12, marginTop: 12 }, prefix ? { height: 48 } : {}]}\n >\n <View style={styles.textContainer}>\n <Text style={styles.title}>{title}</Text>\n {size === \"expand\" && subtitle && <Text style={styles.subtitle}>{subtitle}</Text>}\n </View>\n <View style={styles.tailContainer}>\n {action ? (\n <View style={styles.tail}>{action}</View>\n ) : (\n <View style={styles.tail}>\n <Text style={[styles.tailText, actionTextStyle]}>{actionText}</Text>\n {badgeActionContent && (\n <Badge content={badgeActionContent} position=\"centerLeft\" offset={[-15, 7]}>\n <View></View>\n </Badge>\n )}\n {arrow && (\n <View style={{ height: 16, width: 16 }}>\n <Image\n width={16}\n height={16}\n source={{\n uri:\n colorMode === \"dark\"\n ? \"https://picasso-static.xiaohongshu.com/fe-platform/ca9c472d2e00bd9ff171736db37844a1020a7bee.png\"\n : \"https://picasso-static.xiaohongshu.com/fe-platform/2aa7929e87409d49353f7ad8c05fcc1752eea2f0.png\",\n }}\n ></Image>\n </View>\n )}\n </View>\n )}\n </View>\n </View>\n </View>\n </View>\n )}\n </View>\n </TouchableWithoutFeedback>\n );\n};\n\nexport default ListItem;\n"],"names":["ListItem","title","_ref","subtitle","actionText","_ref$size","size","_ref$arrow","arrow","prefix","action","_ref$onClick","onClick","_ref$actionTextStyle","actionTextStyle","_ref$prefixStyle","prefixStyle","_ref$contentStyle","contentStyle","children","badgeActionContent","badgeTitleContent","style","lineStyle","useMounted","styles","createStyles","_useListContext","useListContext","registerChild","unregisterChild","_useState","useState","_useState2","_slicedToArray","lineItem","setLineItem","colorMode","useColorMode","childInfo","setLine","value","useEffect","listItemSizeToHeight","regular","expand","React","createElement","TouchableWithoutFeedback","onPress","View","listItem","height","content","contentBox","_objectSpread","hr","contentContainer","marginBottom","marginTop","textContainer","Text","tailContainer","tail","tailText","Badge","position","offset","width","Image","source","uri"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA2BA,IAAMA,WAAmC,SAAnCA,eAiBA;AAAA,EAAA,IAhBJC,KAAA,GAAAC,IAAA,CAAAD,KAAA,CAAA;IACAE,QAAA,GAAAD,IAAA,CAAAC,QAAA,CAAA;IACAC,UAAA,GAAAF,IAAA,CAAAE,UAAA,CAAA;IAAAC,SAAA,GAAAH,IAAA,CACAI,IAAO,CAAA;AAAPA,IAAAA,IAAO,GAAAD,SAAA,KAAA,KAAA,CAAA,GAAA,SAAA,GAAAA,SAAA,CAAA;IAAAE,UAAA,GAAAL,IAAA,CACPM,KAAQ,CAAA;AAARA,IAAAA,KAAQ,GAAAD,UAAA,KAAA,KAAA,CAAA,GAAA,KAAA,GAAAA,UAAA,CAAA;IACRE,MAAA,GAAAP,IAAA,CAAAO,MAAA,CAAA;IACAC,MAAA,GAAAR,IAAA,CAAAQ,MAAA,CAAA;IAAAC,YAAA,GAAAT,IAAA,CACAU;AAAAA,IAAAA,oCAAU,YAAM,EAAC,GAAAD,YAAA,CAAA;IAAAE,oBAAA,GAAAX,IAAA,CACjBY;AAAAA,IAAAA,oDAAkB,EAAC,GAAAD,oBAAA,CAAA;IAAAE,gBAAA,GAAAb,IAAA,CACnBc;AAAAA,IAAAA,4CAAc,EAAC,GAAAD,gBAAA,CAAA;IAAAE,iBAAA,GAAAf,IAAA,CACfgB;AAAAA,IAAAA,8CAAe,EAAC,GAAAD,iBAAA,CAAA;IAChBE,QAAA,GAAAjB,IAAA,CAAAiB,QAAA,CAAA;IACAC,kBAAA,GAAAlB,IAAA,CAAAkB,kBAAA,CAAA;IACAlB,IAAA,CAAAmB,iBAAA,CAAA;QACAC,KAAA,GAAApB,IAAA,CAAAoB,KAAA,CAAA;IACAC,SAAA,GAAArB,IAAA,CAAAqB,UAAA;EAEAC,mCAAA,CAAW,UAAU,CAAA,CAAA;AACrB,EAAA,IAAMC,SAASC,8BAAa,EAAA,CAAA;AAC5B,EAAA,IAAAC,eAAA,GAA2CC,mDAAe,EAAA;IAAlDC,aAAA,GAAAF,eAAA,CAAAE,aAAA;IAAeC,eAAgB,GAAAH,eAAA,CAAhBG,eAAgB,CAAA;AACvC,EAAA,IAAAC,SAAA,GAAgCC,eAAS,KAAK,CAAA;IAAAC,UAAA,GAAAC,wCAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAvCI,IAAAA,QAAA,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAUG,IAAAA,WAAW,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAC5B,EAAA,IAAMI,YAAYC,oEAAa,EAAA,CAAA;AAE/B,EAAA,IAAMC,SAAY,GAAA;AAChBC,IAAAA,OAAS,EAAA,SAATA,OAASA,CAACC,KAAmB,EAAA;MAAA,OAAAL,WAAA,CAAYK,KAAK,CAAA,CAAA;AAAA,KAAA;GAChD,CAAA;AAEAC,EAAAA,eAAA,CAAU,YAAM;IACdb,aAAA,CAAcU,SAAS,CAAA,CAAA;IAChB,OAAA,YAAA;MAAA,OAAMT,gBAAgBS,SAAS,CAAA,CAAA;AAAA,KAAA,CAAA;GACxC,EAAG,EAAE,CAAA,CAAA;AAEL,EAAA,IAAMI,oBAAuB,GAAA;AAC3BC,IAAAA,OAAS,EAAA,EAAA;AACTC,IAAAA,MAAQ,EAAA,EAAA;GACV,CAAA;AAEA,EAAA,sBACGC,KAAA,CAAAC,aAAA,CAAAC,oCAAA,EAAA;IAAyBC,OAAS,EAAA,SAATA,OAASA,GAAA;MAAA,OAAMrC,SACvC,CAAA;AAAA,KAAA;AAAA,GAAA,iBAAAkC,KAAA,CAAAC,aAAA,CAACG,gBAAA,EAAA;IACC5B,KAAO,EAAA,CACLG,MAAO,CAAA0B,QAAA,EACPhC,WAAW,EAAC,GAAI;MAAEiC,MAAQ,EAAAT,oBAAA,CAAqBrC,IAAI,CAAA;KAAE,EACrDA,IAAA,KAAS,YAAYmB,MAAO,CAAAoB,MAAA,EAC5BvB,KAAA,CAAA;GACF,EAECH,QAAA,GACCA,QAEA,kBAAA2B,KAAA,CAAAC,aAAA,CAACG,gBAAK,EAAA;AAAA5B,IAAAA,KAAA,EAAO,CAACG,MAAA,CAAO4B,OAAS,EAAAnC,YAAY,CAAA;GACvC,EAAAT,MAAA,mBACEqC,KAAA,CAAAC,aAAA,CAAAG,gBAAA,EAAA;AAAK5B,IAAAA,OAAO,CAACG,MAAA,CAAOhB,MAAQ,EAAA;MAAE2C,MAAQ,EAAAT,oBAAA,CAAqBrC,IAAI,CAAA;AAAE,KAAG,EAAAU,WAAW,CAAA;GAAI,EAAAP,MAAO,CAE7F,iBAAAqC,KAAA,CAAAC,aAAA,CAACG,gBAAA,EAAA;IACC5B,KAAO,EAAA,CACLG,MAAO,CAAA6B,UAAA,EACPnB,QAAA,GAAAoB,wCAAA,CAAAA,wCAAA,CAAgB9B,EAAAA,EAAAA,MAAA,CAAO+B,KAAOjC,SAAA,CAAc,GAAA,EAAC,EAC7C;MAAE6B,MAAA,EAAQT,oBAAqB,CAAArC,IAAI,CAAA;KAAE,CAAA;AACvC,GAAA,iBAEAwC,KAAA,CAAAC,aAAA,CAACG,gBAAA,EAAA;AACC5B,IAAAA,OAAO,CAACG,MAAA,CAAOgC,gBAAkB,EAAA;AAAEC,MAAAA,cAAc,EAAI;AAAAC,MAAAA,SAAA,EAAW,EAAA;KAAG,EAAGlD,SAAS;AAAE2C,MAAAA,MAAA,EAAQ,EAAA;KAAG,GAAI,EAAE,CAAA;AAAA,GAAA,iBAElGN,KAAA,CAAAC,aAAA,CAACG;IAAK5B,KAAO,EAAAG,MAAA,CAAOmC,aAAAA;oBACjBd,KAAA,CAAAC,aAAA,CAAAc,gBAAA,EAAA;IAAKvC,OAAOG,MAAO,CAAAxB,KAAAA;AAAA,GAAA,EAAQA,KAAM,CACjC,EAAAK,IAAA,KAAS,YAAYH,QAAY,mBAAA2C,KAAA,CAAAC,aAAA,CAACc;IAAKvC,KAAO,EAAAG,MAAA,CAAOtB,QAAAA;GAAW,EAAAA,QAAS,CAC5E,CAAA,iBACA2C,KAAA,CAAAC,aAAA,CAACG,gBAAK,EAAA;IAAA5B,KAAA,EAAOG,MAAO,CAAAqC,aAAAA;GAAA,EACjBpD,wBACEoC,KAAA,CAAAC,aAAA,CAAAG,gBAAA,EAAA;IAAK5B,KAAO,EAAAG,MAAA,CAAOsC,IAAAA;GAAO,EAAArD,MAAO,mBAEjCoC,KAAA,CAAAC,aAAA,CAAAG,gBAAA,EAAA;IAAK5B,KAAO,EAAAG,MAAA,CAAOsC,IAAAA;AAClB,GAAA,iBAAAjB,KAAA,CAAAC,aAAA,CAACc;AAAKvC,IAAAA,KAAO,EAAA,CAACG,MAAO,CAAAuC,QAAA,EAAUlD,eAAe,CAAA;AAAA,GAAA,EAAIV,UAAW,CAC5D,EAAAgB,kBAAA,mBACE0B,KAAA,CAAAC,aAAA,CAAAkB,8BAAA,EAAA;AAAMZ,IAAAA,OAAS,EAAAjC,kBAAA;AAAoB8C,IAAAA,UAAS,YAAa;AAAAC,IAAAA,MAAA,EAAQ,CAAC,CAAA,EAAA,EAAK,CAAC,CAAA;GAAA,qCACtEjB,gBAAK,EAAA,IAAA,CACR,CAED,EAAA1C,KAAA,mBACEsC,KAAA,CAAAC,aAAA,CAAAG,gBAAA,EAAA;AAAK5B,IAAAA,KAAO,EAAA;AAAE8B,MAAAA,MAAQ,EAAA,EAAA;AAAIgB,MAAAA,KAAO,EAAA,EAAA;AAAG,KAAA;AACnC,GAAA,iBAAAtB,KAAA,CAAAC,aAAA,CAACsB,iBAAA,EAAA;AACCD,IAAAA,KAAO,EAAA,EAAA;AACPhB,IAAAA,MAAQ,EAAA,EAAA;AACRkB,IAAAA,MAAQ,EAAA;AACNC,MAAAA,GAAA,EACElC,SAAc,KAAA,MAAA,GACV,iGACA,GAAA,iGAAA;AACR,KAAA;GACD,CACH,CAEJ,CAEJ,CACF,CACF,CACF,CAEJ,CACF,CAAA,CAAA;AAEJ;;;;"}
@@ -22,26 +22,61 @@ var Wheel = function Wheel(props) {
22
22
  _props$accessibility = props.accessibility,
23
23
  accessibility = _props$accessibility === void 0 ? {} : _props$accessibility;
24
24
  var scrollerRef = React.useRef();
25
- var themeColor = components_ConfigProvider_hooks_themeToken_useThemeToken.useThemeColor();
26
- var _useState = React.useState(value),
25
+ var _useState = React.useState(false),
27
26
  _useState2 = _rollupPluginBabelHelpers._slicedToArray(_useState, 2),
28
- lastValue = _useState2[0],
29
- setLastValue = _useState2[1];
27
+ scrollEnded = _useState2[0],
28
+ setScrollEnded = _useState2[1];
29
+ var _useState3 = React.useState(0),
30
+ _useState4 = _rollupPluginBabelHelpers._slicedToArray(_useState3, 2),
31
+ scrollHeight = _useState4[0],
32
+ setScrollHeight = _useState4[1];
33
+ var _useState5 = React.useState(value),
34
+ _useState6 = _rollupPluginBabelHelpers._slicedToArray(_useState5, 2),
35
+ lastValue = _useState6[0],
36
+ setLastValue = _useState6[1];
37
+ var onScrollEndDrag = function onScrollEndDrag() {
38
+ setScrollEnded(true);
39
+ };
30
40
  React.useEffect(function () {
31
41
  if (value !== lastValue) {
32
42
  var idx = getSelectIndex(column, value);
33
- handleScroll(idx);
43
+ setIndex(idx);
34
44
  }
35
45
  }, [column, value]);
36
- var handleScroll = function handleScroll(idx) {
37
- var _column$idx;
38
- var newVal = column === null || column === void 0 || (_column$idx = column[idx]) === null || _column$idx === void 0 ? void 0 : _column$idx.value;
39
- scrollTo(idx * itemHeight);
46
+ var themeColor = components_ConfigProvider_hooks_themeToken_useThemeToken.useThemeColor();
47
+ var _useState7 = React.useState(),
48
+ _useState8 = _rollupPluginBabelHelpers._slicedToArray(_useState7, 2),
49
+ index = _useState8[0],
50
+ setIndex = _useState8[1];
51
+ var timer = React.useRef();
52
+ React.useEffect(function () {
53
+ value && setIndex(getSelectIndex(column, value));
54
+ }, [column, value]);
55
+ React.useEffect(function () {
56
+ var _column$index;
57
+ var newVal = column === null || column === void 0 || (_column$index = column[index]) === null || _column$index === void 0 ? void 0 : _column$index.value;
58
+ scrollTo(index * itemHeight);
40
59
  if (newVal) {
41
- setLastValue(newVal);
42
60
  onSelect(newVal, props.index);
61
+ setLastValue(newVal);
43
62
  }
44
- };
63
+ }, [index, props.index]);
64
+ React.useEffect(function () {
65
+ if (scrollEnded) {
66
+ if (scrollHeight != null) {
67
+ timer.current = setTimeout(function () {
68
+ var selectIndex = Math.round(scrollHeight / itemHeight);
69
+ if (selectIndex >= 0 && selectIndex < column.length) {
70
+ setIndex(selectIndex);
71
+ }
72
+ }, 0);
73
+ }
74
+ setScrollEnded(false);
75
+ }
76
+ return function () {
77
+ timer.current && clearTimeout(timer.current);
78
+ };
79
+ }, [scrollEnded]);
45
80
  var scrollTo = function scrollTo(y) {
46
81
  setTimeout(function () {
47
82
  var _scrollerRef$current, _scrollerRef$current$;
@@ -65,18 +100,21 @@ var Wheel = function Wheel(props) {
65
100
  (_e$persist = e.persist) === null || _e$persist === void 0 || _e$persist.call(e);
66
101
  var contentOffset = e.nativeEvent.contentOffset;
67
102
  var selectIndex = Math.round(contentOffset.y / itemHeight);
103
+ setIndex(selectIndex);
68
104
  var newVal = column === null || column === void 0 || (_column$selectIndex = column[selectIndex]) === null || _column$selectIndex === void 0 ? void 0 : _column$selectIndex.value;
69
105
  setLastValue(newVal);
70
- onSelect(newVal, props.index);
71
106
  };
72
- var handleClick = function handleClick(index) {
73
- handleScroll(index);
107
+ var onScroll = function onScroll(e) {
108
+ setScrollHeight(e.nativeEvent.contentOffset.y);
109
+ };
110
+ var handleClick = function handleClick(index2) {
111
+ setIndex(index2);
74
112
  };
75
113
  var renderItems = function renderItems() {
76
- return column.map(function (item, index) {
114
+ return column.map(function (item, index2) {
77
115
  return /* @__PURE__ */React.createElement(reactNative.TouchableNativeFeedback, {
78
116
  onPress: function onPress() {
79
- return handleClick(index);
117
+ return handleClick(index2);
80
118
  },
81
119
  key: item.value
82
120
  }, /* @__PURE__ */React.createElement(reactNative.View, _rollupPluginBabelHelpers._objectSpread2({
@@ -110,6 +148,9 @@ var Wheel = function Wheel(props) {
110
148
  decelerationRate: "fast",
111
149
  snapToInterval: itemHeight,
112
150
  onMomentumScrollEnd: onMomentumScrollEnd,
151
+ onScrollEndDrag: onScrollEndDrag,
152
+ onScroll: onScroll,
153
+ scrollEventThrottle: 16,
113
154
  testID: "wheel".concat(props.index)
114
155
  }, accessibility), /* @__PURE__ */React.createElement(reactNative.View, {
115
156
  style: {