@xhsreds/reds-rn-next 0.9.1-beta202510291556 → 0.9.1-test.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/coverage/.tmp/coverage-0.json +1 -1
  3. package/coverage/.tmp/coverage-1.json +1 -1
  4. package/coverage/.tmp/coverage-10.json +1 -1
  5. package/coverage/.tmp/coverage-11.json +1 -1
  6. package/coverage/.tmp/coverage-12.json +1 -1
  7. package/coverage/.tmp/coverage-13.json +1 -1
  8. package/coverage/.tmp/coverage-14.json +1 -1
  9. package/coverage/.tmp/coverage-15.json +1 -1
  10. package/coverage/.tmp/coverage-16.json +1 -1
  11. package/coverage/.tmp/coverage-17.json +1 -1
  12. package/coverage/.tmp/coverage-18.json +1 -1
  13. package/coverage/.tmp/coverage-19.json +1 -1
  14. package/coverage/.tmp/coverage-2.json +1 -1
  15. package/coverage/.tmp/coverage-20.json +1 -1
  16. package/coverage/.tmp/coverage-23.json +1 -1
  17. package/coverage/.tmp/coverage-24.json +1 -1
  18. package/coverage/.tmp/coverage-29.json +1 -1
  19. package/coverage/.tmp/coverage-3.json +1 -1
  20. package/coverage/.tmp/coverage-30.json +1 -1
  21. package/coverage/.tmp/coverage-31.json +1 -1
  22. package/coverage/.tmp/coverage-33.json +1 -1
  23. package/coverage/.tmp/coverage-34.json +1 -1
  24. package/coverage/.tmp/coverage-35.json +1 -1
  25. package/coverage/.tmp/coverage-36.json +1 -1
  26. package/coverage/.tmp/coverage-37.json +1 -1
  27. package/coverage/.tmp/coverage-38.json +1 -1
  28. package/coverage/.tmp/coverage-39.json +1 -1
  29. package/coverage/.tmp/coverage-40.json +1 -1
  30. package/coverage/.tmp/coverage-42.json +1 -1
  31. package/coverage/.tmp/coverage-43.json +1 -1
  32. package/coverage/.tmp/coverage-5.json +1 -1
  33. package/coverage/.tmp/coverage-7.json +1 -1
  34. package/coverage/.tmp/coverage-8.json +1 -1
  35. package/coverage/.tmp/coverage-9.json +1 -1
  36. package/lib/cjs/_chunks/CwkpVXDI.js.map +1 -1
  37. package/lib/cjs/components/Carousel/Carousel.js +2 -9
  38. package/lib/cjs/components/Carousel/Carousel.js.map +1 -1
  39. package/lib/cjs/components/Popover/Popover.js +3 -4
  40. package/lib/cjs/components/Popover/Popover.js.map +1 -1
  41. package/lib/cjs/components/Radio/Radio.js.map +1 -1
  42. package/lib/cjs/components/Sheets/styles.js +2 -2
  43. package/lib/cjs/components/Sheets/styles.js.map +1 -1
  44. package/lib/cjs/pvCount/pvData.js +1 -1
  45. package/lib/esm/_chunks/Da9cW8JG.js.map +1 -1
  46. package/lib/esm/components/Carousel/Carousel.js +2 -9
  47. package/lib/esm/components/Carousel/Carousel.js.map +1 -1
  48. package/lib/esm/components/Popover/Popover.js +3 -4
  49. package/lib/esm/components/Popover/Popover.js.map +1 -1
  50. package/lib/esm/components/Radio/Radio.js.map +1 -1
  51. package/lib/esm/components/Sheets/styles.js +2 -2
  52. package/lib/esm/components/Sheets/styles.js.map +1 -1
  53. package/lib/esm/pvCount/pvData.js +1 -1
  54. package/lib/src/components/Popover/Popover.d.ts +1 -1
  55. package/lib/src/components/Popover/interface/index.d.ts +0 -1
  56. package/lib/types/components/Popover/Popover.d.ts +1 -1
  57. package/lib/types/components/Popover/interface/index.d.ts +0 -1
  58. package/package.json +2 -2
  59. package/src/components/Carousel/Carousel.tsx +3 -15
  60. package/src/components/Carousel/demo/index.tsx +2 -14
  61. package/src/components/Popover/Popover.tsx +3 -4
  62. package/src/components/Popover/doc/index.mdx +21 -22
  63. package/src/components/Popover/interface/index.ts +0 -1
  64. package/src/components/Sheets/styles.ts +2 -2
  65. package/src/i18n/@types/resources.d.ts +27 -27
  66. package/src/i18n/index.json +31 -31
  67. package/src/index.ts +1 -0
@@ -53,11 +53,11 @@ var styles = reactNative.StyleSheet.create({
53
53
  borderTopRightRadius: 12
54
54
  },
55
55
  cancel: {
56
- fontSize: redsTokenNext.typography.B2LooseSwitchFontSize,
56
+ fontSize: redsTokenNext.typography.B1LooseFontSize,
57
57
  fontWeight: redsTokenNext.typography.B1LooseFontWeight
58
58
  },
59
59
  confirm: {
60
- fontSize: redsTokenNext.typography.B2LooseSwitchFontSize,
60
+ fontSize: redsTokenNext.typography.B1LooseFontSize,
61
61
  fontWeight: redsTokenNext.typography.T3FontWeight
62
62
  },
63
63
  label: {
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sources":["../../../../src/components/Sheets/styles.ts"],"sourcesContent":["import { StyleSheet } from \"react-native\";\nimport { typography } from \"@xhsreds/reds-token-next\";\n\nconst styles = StyleSheet.create({\n wrapper: {\n position: \"absolute\",\n bottom: 0,\n left: 0,\n right: 0,\n top: 0,\n },\n mask: {\n width: \"100%\",\n height: \"100%\",\n position: \"absolute\",\n bottom: 0,\n left: 0,\n right: 0,\n top: 0,\n },\n picker: {\n borderTopLeftRadius: 12,\n borderTopRightRadius: 12,\n position: \"absolute\",\n bottom: 0,\n left: 0,\n right: 0,\n },\n labelContainer: {\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n flexDirection: \"row\",\n height: 44,\n paddingLeft: 16,\n paddingRight: 16,\n borderTopLeftRadius: 12,\n borderTopRightRadius: 12,\n },\n leftLabelContainer: {\n display: \"flex\",\n justifyContent: \"flex-start\",\n alignItems: \"center\",\n flexDirection: \"row\",\n height: 44,\n paddingLeft: 16,\n paddingRight: 16,\n borderTopLeftRadius: 12,\n borderTopRightRadius: 12,\n },\n cancel: {\n fontSize: typography.B2LooseSwitchFontSize,\n fontWeight: typography.B1LooseFontWeight,\n },\n confirm: {\n fontSize: typography.B2LooseSwitchFontSize,\n fontWeight: typography.T3FontWeight,\n },\n label: {\n fontSize: typography.B1LooseFontSize,\n fontWeight: typography.T3FontWeight,\n },\n iconBg: {\n width: 28,\n height: 28,\n borderRadius: 28,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n },\n dragableContainer: {\n width: \"100%\",\n height: 20,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n },\n dragable: {\n width: 33,\n height: 4,\n borderRadius: 10,\n },\n block: {\n width: 28,\n height: 28,\n },\n actionContainer: {\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n flexDirection: \"row\",\n width: \"100%\",\n paddingHorizontal: 56,\n },\n action: {\n flex: 1,\n marginHorizontal: 12,\n },\n});\n\nexport default styles;\n"],"names":["styles","StyleSheet","create","wrapper","position","bottom","left","right","top","mask","width","height","picker","borderTopLeftRadius","borderTopRightRadius","labelContainer","display","justifyContent","alignItems","flexDirection","paddingLeft","paddingRight","leftLabelContainer","cancel","fontSize","typography","B2LooseSwitchFontSize","fontWeight","B1LooseFontWeight","confirm","T3FontWeight","label","B1LooseFontSize","iconBg","borderRadius","dragableContainer","dragable","block","actionContainer","paddingHorizontal","action","flex","marginHorizontal"],"mappings":"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"}
1
+ {"version":3,"file":"styles.js","sources":["../../../../src/components/Sheets/styles.ts"],"sourcesContent":["import { StyleSheet } from \"react-native\";\nimport { typography } from \"@xhsreds/reds-token-next\";\n\nconst styles = StyleSheet.create({\n wrapper: {\n position: \"absolute\",\n bottom: 0,\n left: 0,\n right: 0,\n top: 0,\n },\n mask: {\n width: \"100%\",\n height: \"100%\",\n position: \"absolute\",\n bottom: 0,\n left: 0,\n right: 0,\n top: 0,\n },\n picker: {\n borderTopLeftRadius: 12,\n borderTopRightRadius: 12,\n position: \"absolute\",\n bottom: 0,\n left: 0,\n right: 0,\n },\n labelContainer: {\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n flexDirection: \"row\",\n height: 44,\n paddingLeft: 16,\n paddingRight: 16,\n borderTopLeftRadius: 12,\n borderTopRightRadius: 12,\n },\n leftLabelContainer: {\n display: \"flex\",\n justifyContent: \"flex-start\",\n alignItems: \"center\",\n flexDirection: \"row\",\n height: 44,\n paddingLeft: 16,\n paddingRight: 16,\n borderTopLeftRadius: 12,\n borderTopRightRadius: 12,\n },\n cancel: {\n fontSize: typography.B1LooseFontSize,\n fontWeight: typography.B1LooseFontWeight,\n },\n confirm: {\n fontSize: typography.B1LooseFontSize,\n fontWeight: typography.T3FontWeight,\n },\n label: {\n fontSize: typography.B1LooseFontSize,\n fontWeight: typography.T3FontWeight,\n },\n iconBg: {\n width: 28,\n height: 28,\n borderRadius: 28,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n },\n dragableContainer: {\n width: \"100%\",\n height: 20,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n },\n dragable: {\n width: 33,\n height: 4,\n borderRadius: 10,\n },\n block: {\n width: 28,\n height: 28,\n },\n actionContainer: {\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n flexDirection: \"row\",\n width: \"100%\",\n paddingHorizontal: 56,\n },\n action: {\n flex: 1,\n marginHorizontal: 12,\n },\n});\n\nexport default styles;\n"],"names":["styles","StyleSheet","create","wrapper","position","bottom","left","right","top","mask","width","height","picker","borderTopLeftRadius","borderTopRightRadius","labelContainer","display","justifyContent","alignItems","flexDirection","paddingLeft","paddingRight","leftLabelContainer","cancel","fontSize","typography","B1LooseFontSize","fontWeight","B1LooseFontWeight","confirm","T3FontWeight","label","iconBg","borderRadius","dragableContainer","dragable","block","actionContainer","paddingHorizontal","action","flex","marginHorizontal"],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  var index_native = require('@xhs/reds-apm/src/index.native');
4
4
 
5
5
  var name = "@xhs/reds-rn-next";
6
- var version = "0.9.0";
6
+ var version = "0.9.1-test.0";
7
7
  var author = "贾斌(呀哈) <jiabin@xiaohongshu.com>";
8
8
  var license = "ISC";
9
9
  var dependencies = {
@@ -1 +1 @@
1
- {"version":3,"file":"Da9cW8JG.js","sources":["../../../src/components/Popover/interface/index.ts"],"sourcesContent":["import { ReactNode } from \"react\";\nimport { GestureResponderEvent, ImageStyle, ViewStyle } from \"react-native\";\ninterface Offset {\n x: number;\n y: number;\n}\nexport interface RedsPopover {\n visible?: boolean;\n placement?: \"top-start\" | \"top\" | \"top-end\" | \"bottom-start\" | \"bottom\" | \"bottom-end\";\n content?: ReactNode | (() => ReactNode);\n opacity?: number;\n mode?: \"light\" | \"dark\" | \"alwaysLight\" | \"alwaysDark\";\n trigger?: \"click\" | \"touch\";\n duration?: number;\n animation_duration?: number;\n zIndex?: number;\n popContainerStyle?: ViewStyle;\n closeOnClickAgain?: boolean;\n children?: ReactNode;\n onClickMask?: (evnet: GestureResponderEvent) => void;\n onVisibleChange?: (value: boolean) => void;\n floatingStyles?: ViewStyle;\n arrowStyles?: ImageStyle;\n isControl?: boolean;\n offset?: Offset;\n arrowOffset?: Offset;\n hostName?: string;\n maxWidth?: number;\n layoutChange?: any;\n}\n\nexport interface RedsPopoverEvent {}\nexport const PopoverDefaultProps = {\n visible: undefined,\n placement: \"top\",\n content: \"\",\n opacity: 0,\n mode: \"light\",\n trigger: \"click\",\n zIndex: 1000,\n popContainerStyle: {},\n closeOnClickAgain: true,\n floatingStyles: {},\n arrowStyles: {},\n isControl: false,\n offset: { x: 0, y: 0 },\n arrowOffset: { x: 0, y: 0 },\n hostName: \"root\",\n maxWidth: 280,\n layoutChange: {},\n};\n"],"names":["PopoverDefaultProps","visible","placement","content","opacity","mode","trigger","zIndex","popContainerStyle","closeOnClickAgain","floatingStyles","arrowStyles","isControl","offset","x","y","arrowOffset","hostName","maxWidth","layoutChange"],"mappings":"AAgCO,IAAMA,mBAAsB,GAAA;EACjCC,OAAS,EAAA,KAAA,CAAA;AACTC,EAAAA,SAAW,EAAA,KAAA;AACXC,EAAAA,OAAS,EAAA,EAAA;AACTC,EAAAA,OAAS,EAAA,CAAA;AACTC,EAAAA,IAAM,EAAA,OAAA;AACNC,EAAAA,OAAS,EAAA,OAAA;AACTC,EAAAA,MAAQ,EAAA,GAAA;EACRC,mBAAmB,EAAC;AACpBC,EAAAA,iBAAmB,EAAA,IAAA;EACnBC,gBAAgB,EAAC;EACjBC,aAAa,EAAC;AACdC,EAAAA,SAAW,EAAA,KAAA;AACXC,EAAAA,MAAQ,EAAA;AAAEC,IAAAA,CAAG,EAAA,CAAA;AAAGC,IAAAA,GAAG,CAAA;GAAE;AACrBC,EAAAA,WAAa,EAAA;AAAEF,IAAAA,CAAG,EAAA,CAAA;AAAGC,IAAAA,GAAG,CAAA;GAAE;AAC1BE,EAAAA,QAAU,EAAA,MAAA;AACVC,EAAAA,QAAU,EAAA,GAAA;AACVC,EAAAA,cAAc,EAAC;AACjB;;;;;;;;;"}
1
+ {"version":3,"file":"Da9cW8JG.js","sources":["../../../src/components/Popover/interface/index.ts"],"sourcesContent":["import { ReactNode } from \"react\";\nimport { GestureResponderEvent, ImageStyle, ViewStyle } from \"react-native\";\ninterface Offset {\n x: number;\n y: number;\n}\nexport interface RedsPopover {\n visible?: boolean;\n placement?: \"top-start\" | \"top\" | \"top-end\" | \"bottom-start\" | \"bottom\" | \"bottom-end\";\n content?: ReactNode | (() => ReactNode);\n opacity?: number;\n mode?: \"light\" | \"dark\" | \"alwaysLight\" | \"alwaysDark\";\n trigger?: \"click\" | \"touch\";\n duration?: number;\n zIndex?: number;\n popContainerStyle?: ViewStyle;\n closeOnClickAgain?: boolean;\n children?: ReactNode;\n onClickMask?: (evnet: GestureResponderEvent) => void;\n onVisibleChange?: (value: boolean) => void;\n floatingStyles?: ViewStyle;\n arrowStyles?: ImageStyle;\n isControl?: boolean;\n offset?: Offset;\n arrowOffset?: Offset;\n hostName?: string;\n maxWidth?: number;\n layoutChange?: any;\n}\n\nexport interface RedsPopoverEvent {}\nexport const PopoverDefaultProps = {\n visible: undefined,\n placement: \"top\",\n content: \"\",\n opacity: 0,\n mode: \"light\",\n trigger: \"click\",\n zIndex: 1000,\n popContainerStyle: {},\n closeOnClickAgain: true,\n floatingStyles: {},\n arrowStyles: {},\n isControl: false,\n offset: { x: 0, y: 0 },\n arrowOffset: { x: 0, y: 0 },\n hostName: \"root\",\n maxWidth: 280,\n layoutChange: {},\n};\n"],"names":["PopoverDefaultProps","visible","placement","content","opacity","mode","trigger","zIndex","popContainerStyle","closeOnClickAgain","floatingStyles","arrowStyles","isControl","offset","x","y","arrowOffset","hostName","maxWidth","layoutChange"],"mappings":"AA+BO,IAAMA,mBAAsB,GAAA;EACjCC,OAAS,EAAA,KAAA,CAAA;AACTC,EAAAA,SAAW,EAAA,KAAA;AACXC,EAAAA,OAAS,EAAA,EAAA;AACTC,EAAAA,OAAS,EAAA,CAAA;AACTC,EAAAA,IAAM,EAAA,OAAA;AACNC,EAAAA,OAAS,EAAA,OAAA;AACTC,EAAAA,MAAQ,EAAA,GAAA;EACRC,mBAAmB,EAAC;AACpBC,EAAAA,iBAAmB,EAAA,IAAA;EACnBC,gBAAgB,EAAC;EACjBC,aAAa,EAAC;AACdC,EAAAA,SAAW,EAAA,KAAA;AACXC,EAAAA,MAAQ,EAAA;AAAEC,IAAAA,CAAG,EAAA,CAAA;AAAGC,IAAAA,GAAG,CAAA;GAAE;AACrBC,EAAAA,WAAa,EAAA;AAAEF,IAAAA,CAAG,EAAA,CAAA;AAAGC,IAAAA,GAAG,CAAA;GAAE;AAC1BE,EAAAA,QAAU,EAAA,MAAA;AACVC,EAAAA,QAAU,EAAA,GAAA;AACVC,EAAAA,cAAc,EAAC;AACjB;;;;;;;;;"}
@@ -254,7 +254,7 @@ var Carousel = function Carousel(props) {
254
254
  requestAnimationFrame(function () {
255
255
  var _scrollViewRef$curren;
256
256
  var scrollOffset = index * offsetPerItem;
257
- if (props.playingMode !== "normal" && props.infinite) {
257
+ if (props.playingMode !== "normal") {
258
258
  scrollOffset -= containerPadding;
259
259
  }
260
260
  (_scrollViewRef$curren = scrollViewRef.current) === null || _scrollViewRef$curren === void 0 || _scrollViewRef$curren.scrollTo(_objectSpread2(_objectSpread2({}, props.direction === "horizontal" ? {
@@ -298,11 +298,7 @@ var Carousel = function Carousel(props) {
298
298
  if (props.playingMode === "normal") {
299
299
  index = Math.round(offset / offsetPerItem);
300
300
  } else {
301
- if (!props.infinite) {
302
- index = Math.round(offset / offsetPerItem);
303
- } else {
304
- index = Math.round((offset + containerPadding) / offsetPerItem);
305
- }
301
+ index = Math.round((offset + containerPadding) / offsetPerItem);
306
302
  }
307
303
  index = Math.max(0, Math.min(index, extendedData.length - 1));
308
304
  if (props.infinite) {
@@ -319,9 +315,6 @@ var Carousel = function Carousel(props) {
319
315
  var clampedIndex = Math.max(0, Math.min(index, length - 1));
320
316
  setCurrentIndex(clampedIndex);
321
317
  setRealIndex(clampedIndex);
322
- if (props.playingMode !== "normal") {
323
- scrollToIndex(clampedIndex, true);
324
- }
325
318
  }
326
319
  setIsScrolling(false);
327
320
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Carousel.js","sources":["../../../../src/components/Carousel/Carousel.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState, useMemo, ReactElement } from \"react\";\nimport { View, ScrollView, Dimensions, NativeSyntheticEvent, NativeScrollEvent, Image, Text } from \"react-native\";\nimport getStyle from \"./styles\";\nimport { useThemeColor } from \"../ConfigProvider\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nimport { RedsCarousel, DOTTYPE, DOTPLACEMENT, NUMBERPLACEMENT, CarouselDefaultProps } from \"./interface\";\n\nexport const Carousel: React.FC<RedsCarousel> = (props) => {\n useMounted(\"Carousel\");\n const scrollViewRef = useRef<ScrollView>(null);\n const [currentIndex, setCurrentIndex] = useState(1);\n const [isScrolling, setIsScrolling] = useState(false);\n const autoPlayTimer = useRef<any>(null);\n const [normalSize, setNormalSize] = useState({\n x: 0,\n y: 0,\n });\n const [offsetPerItem, setOffsetPerItem] = useState(0);\n const [containerPadding, setContainerPadding] = useState(0);\n const [spacing, setSpacing] = useState(0);\n const [distance, setDistance] = useState(0);\n const [realIndex, setRealIndex] = useState(0);\n\n // 新增:存储children的实际尺寸\n const [childrenSize, setChildrenSize] = useState({\n width: 0,\n height: 0,\n });\n const [isChildrenSizeMeasured, setIsChildrenSizeMeasured] = useState(false);\n\n const themeColor = useThemeColor();\n const styles = getStyle(themeColor);\n\n // 修改:根据children实际尺寸计算容器尺寸\n const containerSize = useMemo(() => {\n let width = (props.style?.width as number) || Dimensions.get(\"window\").width;\n let height = (props.style?.height as number) || 300;\n\n // 如果使用children且已测量出尺寸,则使用children的实际尺寸\n if (props.children && isChildrenSizeMeasured && childrenSize.width > 0 && childrenSize.height > 0) {\n if (!props.style?.width) {\n width = childrenSize.width;\n }\n if (!props.style?.height) {\n height = childrenSize.height;\n }\n }\n\n return { width, height };\n }, [props.style?.width, props.style?.height, props.children, isChildrenSizeMeasured, childrenSize]);\n\n // 修改:处理children的onLayout事件\n const handleChildLayout = (event: any) => {\n const { width, height } = event.nativeEvent.layout;\n\n // 只在尺寸发生变化时更新\n if (width !== childrenSize.width || height !== childrenSize.height) {\n setChildrenSize({ width, height });\n setIsChildrenSizeMeasured(true);\n }\n };\n\n const extendedData = useMemo(() => {\n if (props.data?.length) {\n // 如果不是无限循环,直接返回原数据\n if (!props.infinite) {\n return props.data;\n }\n return [props.data[props.data.length - 1], ...(props.data || []), props.data[0]];\n } else if (props.children?.length) {\n // 如果不是无限循环,直接返回原children\n if (!props.infinite) {\n return React.Children.map(props.children, (child: any, index: number) => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child as any, {\n onLayout: (e: any) => {\n if (index === 0) {\n handleChildLayout(e);\n }\n if (!props.style?.height && index === 0) {\n setNormalSize((prev) => ({\n x: containerSize.width,\n y: e.nativeEvent?.layout.height,\n }));\n }\n // @ts-ignore\n if (child.props?.onLayout) {\n // @ts-ignore\n child.props.onLayout?.(e);\n }\n },\n ...((child.props || {}) as object),\n });\n }\n });\n }\n\n const cloneChild = [props.children[props.children.length - 1], ...(props.children || []), props.children[0]];\n return React.Children.map(cloneChild, (child: any, index: number) => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child as any, {\n onLayout: (e: any) => {\n if (index === 1) {\n handleChildLayout(e);\n }\n if (!props.style?.height && index === 1) {\n setNormalSize((prev) => ({\n x: containerSize.width,\n y: e.nativeEvent?.layout.height,\n }));\n }\n // @ts-ignore\n if (child.props?.onLayout) {\n // @ts-ignore\n child.props.onLayout?.(e);\n }\n },\n ...((child.props || {}) as object),\n });\n }\n });\n } else {\n return [];\n }\n }, [props.data, props.children, containerSize.width, props.style?.height, props.infinite]);\n\n // 初始化 normalSize\n useEffect(() => {\n setNormalSize({\n x: containerSize.width,\n y: containerSize.height,\n });\n }, [containerSize]);\n\n /**\n * 长度\n */\n const length = useMemo(() => {\n return props.data?.length || props.children?.length || 0;\n }, [props.data, props.children]);\n\n /**\n * 渲染dot list\n */\n const dotList = useMemo(() => {\n return new Array(props.dotType === DOTTYPE.INDEFINITE ? props.initDotNumber : length).fill(0);\n }, [props.dotType, props.initDotNumber, length]);\n\n // Calculate dimensions based on mode\n const getItemDimensions = () => {\n const distance = props.direction === \"horizontal\" ? normalSize.x : normalSize.y;\n switch (props.playingMode) {\n case \"normal\":\n return {\n distance,\n spacing: 0,\n containerPadding: 0,\n };\n case \"card\":\n return {\n distance: distance * 0.6,\n spacing: props.distance || 0,\n containerPadding: distance * 0.2,\n };\n case \"compact\":\n return {\n distance: distance * 0.6,\n spacing: props.distance || 0,\n containerPadding: distance * 0.2,\n };\n default:\n return {\n distance,\n spacing: 0,\n containerPadding: 0,\n };\n }\n };\n\n useEffect(() => {\n if (normalSize.x > 0 && normalSize.y > 0) {\n const { distance: DISTANCE, spacing: SPACING, containerPadding: CONTAINER_PADDING } = getItemDimensions();\n setOffsetPerItem(DISTANCE + SPACING);\n setContainerPadding(CONTAINER_PADDING);\n setDistance(DISTANCE);\n setSpacing(SPACING);\n }\n }, [normalSize, props.playingMode, props.distance, props.direction]);\n\n // 重置自动播放计时器\n const resetAutoPlayTimer = () => {\n if (autoPlayTimer.current) {\n clearInterval(autoPlayTimer.current);\n autoPlayTimer.current = null;\n }\n\n if (props.autoPlay && length > 1) {\n const timer = setInterval(() => {\n if (!isScrolling) {\n const nextIndex = currentIndex + 1;\n\n // 如果不是无限循环且已到最后一页,则停止自动播放\n if (!props.infinite && nextIndex >= length) {\n if (autoPlayTimer.current) {\n clearInterval(autoPlayTimer.current);\n autoPlayTimer.current = null;\n }\n return;\n }\n\n scrollToIndex(nextIndex);\n }\n }, props.duration);\n autoPlayTimer.current = timer;\n }\n };\n\n // 初始化自动播放\n useEffect(() => {\n if (props.autoPlay && !isScrolling && offsetPerItem > 0) {\n resetAutoPlayTimer();\n }\n return () => {\n if (autoPlayTimer.current) {\n clearInterval(autoPlayTimer.current);\n }\n };\n }, [currentIndex, isScrolling, props.autoPlay, offsetPerItem, length]);\n\n // 优化滚动方法\n const scrollToIndex = (index: number, animated: boolean = true) => {\n if (offsetPerItem <= 0) return;\n\n // 如果不是无限循环模式,限制索引范围\n if (!props.infinite) {\n index = Math.max(0, Math.min(index, length - 1));\n }\n\n requestAnimationFrame(() => {\n let scrollOffset = index * offsetPerItem;\n // 修复:只有在无限循环模式下才需要减去containerPadding\n if (props.playingMode !== \"normal\" && props.infinite) {\n scrollOffset -= containerPadding;\n }\n\n scrollViewRef.current?.scrollTo({\n ...(props.direction === \"horizontal\" ? { x: scrollOffset } : { y: scrollOffset }),\n animated,\n });\n });\n\n setCurrentIndex(index);\n\n // 计算真实索引\n let newRealIndex: number;\n if (props.infinite) {\n newRealIndex = index === 0 ? length - 1 : index === length + 1 ? 0 : index - 1;\n } else {\n newRealIndex = index;\n }\n setRealIndex(newRealIndex);\n };\n\n useEffect(() => {\n if (realIndex >= 0 && realIndex < length) {\n props.onChange?.(props.data?.[realIndex] || props.children?.[realIndex], realIndex);\n }\n }, [realIndex, props.data, props.children, length]);\n\n const handleScrollBegin = () => {\n if (!props.handlable) return;\n setIsScrolling(true);\n // 手动滚动开始时清除自动播放计时器\n if (autoPlayTimer.current) {\n clearInterval(autoPlayTimer.current);\n autoPlayTimer.current = null;\n }\n };\n\n const handleScrollEnd = (event: NativeSyntheticEvent<NativeScrollEvent>) => {\n if (offsetPerItem <= 0) {\n setIsScrolling(false);\n return;\n }\n\n const offset =\n props.direction === \"horizontal\" ? event.nativeEvent.contentOffset.x : event.nativeEvent.contentOffset.y;\n\n let index: number;\n // 修复:对于非无限循环的compact模式,需要调整偏移量计算\n if (props.playingMode === \"normal\") {\n index = Math.round(offset / offsetPerItem);\n } else {\n // 对于compact和card模式\n if (!props.infinite) {\n // 非无限循环模式:不需要加containerPadding,因为滚动时已经考虑了padding\n index = Math.round(offset / offsetPerItem);\n } else {\n // 无限循环模式:需要加containerPadding\n index = Math.round((offset + containerPadding) / offsetPerItem);\n }\n }\n\n index = Math.max(0, Math.min(index, extendedData.length - 1));\n\n // 处理边界情况\n if (props.infinite) {\n // 无限循环模式的边界处理\n if (index <= 0) {\n scrollToIndex(length, false);\n } else if (index >= extendedData.length - 1) {\n scrollToIndex(1, false);\n } else {\n setCurrentIndex(index);\n const newRealIndex = index === 0 ? length - 1 : index === length + 1 ? 0 : index - 1;\n setRealIndex(newRealIndex);\n }\n } else {\n // 非无限循环模式\n const clampedIndex = Math.max(0, Math.min(index, length - 1));\n setCurrentIndex(clampedIndex);\n setRealIndex(clampedIndex);\n // 修复:确保滚动到正确位置\n if (props.playingMode !== \"normal\") {\n scrollToIndex(clampedIndex, true);\n }\n }\n\n setIsScrolling(false);\n };\n\n /**\n * dot 样式\n */\n const getDotStyle = (index: number) => {\n const isActive =\n props.dotType === DOTTYPE.DEFINITE\n ? realIndex === index\n : props.initDotNumber && realIndex % props.initDotNumber === index;\n\n return isActive\n ? props.dotPlacement === DOTPLACEMENT.INSIDE\n ? [styles.activeDot, props.activeDotStyle]\n : [styles.outSideActiveDot, props.activeDotStyle]\n : props.dotPlacement === DOTPLACEMENT.INSIDE\n ? [styles.dot, props.dotStyle]\n : [styles.outSideDot, props.dotStyle];\n };\n\n // 初始化执行一次\n useEffect(() => {\n if (offsetPerItem > 0 && extendedData.length > 0) {\n let initialIndex = props.currentIndex || 0;\n\n // 如果是无限循环模式,需要加1\n if (props.infinite) {\n initialIndex += 1;\n }\n\n scrollToIndex(initialIndex, false);\n }\n }, [offsetPerItem, extendedData.length, props.infinite]);\n\n useEffect(() => {\n // 如果是无限循环模式,初始索引为1;否则为0\n const initialCurrentIndex = props.infinite ? 1 : 0;\n setCurrentIndex(initialCurrentIndex);\n }, [props.infinite]);\n\n // 优化 handleLoad 函数\n const handleLoad = ({ nativeEvent }: any) => {\n // 只有在没有设置固定高度时才更新\n if (!props.style?.height) {\n setNormalSize((prev) => ({\n ...prev,\n y: nativeEvent.source.height,\n }));\n }\n };\n\n return (\n <View\n style={[\n styles.container,\n {\n overflow: \"hidden\",\n height: containerSize.height,\n width: containerSize.width,\n },\n props.style,\n ]}\n >\n <ScrollView\n ref={scrollViewRef}\n horizontal={props.direction === \"horizontal\"}\n pagingEnabled={props.playingMode === \"normal\"}\n showsHorizontalScrollIndicator={false}\n showsVerticalScrollIndicator={false}\n onScrollBeginDrag={handleScrollBegin}\n onScrollEndDrag={handleScrollEnd}\n onMomentumScrollEnd={handleScrollEnd}\n scrollEventThrottle={16}\n decelerationRate=\"fast\"\n scrollEnabled={props.handlable}\n // 修改:根据infinite参数设置是否可以滚动到边界外\n bounces={props.infinite}\n contentContainerStyle={[\n styles.scrollContent,\n props.direction === \"horizontal\"\n ? { paddingHorizontal: containerPadding }\n : { paddingVertical: containerPadding },\n ]}\n >\n {extendedData.map((item: any, index: number) => (\n <View\n key={`${String(item)}_${index}`}\n style={[\n styles.itemContainer,\n {\n ...(props.direction === \"horizontal\"\n ? {\n marginHorizontal: spacing / 2,\n width: distance,\n height: normalSize.y,\n }\n : {\n marginVertical: spacing / 2,\n width: normalSize.x,\n height: distance,\n }),\n transform: [\n {\n scale:\n props.playingMode !== \"normal\" && currentIndex === index\n ? 1\n : props.playingMode === \"normal\"\n ? 1\n : 0.9,\n },\n ],\n },\n ]}\n shouldRasterizeIOS={true}\n renderToHardwareTextureAndroid={true}\n >\n {props.data?.length ? (\n <Image\n source={{ uri: item as string }}\n style={{\n borderRadius: props.playingMode === \"normal\" ? 0 : 12,\n width: props.direction === \"horizontal\" ? distance : normalSize.x,\n height: props.direction === \"horizontal\" ? normalSize.y : distance,\n }}\n resizeMode=\"contain\"\n onLoad={handleLoad}\n resizeMethod=\"resize\"\n />\n ) : (\n extendedData?.[index]\n )}\n </View>\n ))}\n </ScrollView>\n\n {/* 其余的 Dots 和 Numbers 组件保持不变 */}\n {props.displayDots && dotList.length > 0 && (\n <View style={[props.dotPlacement === DOTPLACEMENT.INSIDE ? styles.dotContainer : styles.dotOutsideContainer]}>\n {props.dotType === DOTTYPE.INDEFINITE && (\n <View\n style={[\n props.dotPlacement === DOTPLACEMENT.INSIDE ? styles.smallDot : styles.smallOutsideDot,\n props.dotStyle,\n ]}\n />\n )}\n {dotList.map((_, index) => (\n <View key={index} style={getDotStyle(index)} />\n ))}\n {props.dotType === DOTTYPE.INDEFINITE && (\n <View\n style={[\n props.dotPlacement === DOTPLACEMENT.INSIDE ? styles.smallDot : styles.smallOutsideDot,\n props.dotStyle,\n ]}\n />\n )}\n </View>\n )}\n\n {props.displayNumbers && (\n <View\n style={[\n styles.numberContainer,\n props.numberPlacement === NUMBERPLACEMENT.TOP ? styles.numberTop : styles.numberBottom,\n ]}\n >\n <Text style={styles.number}>{realIndex + 1}</Text>\n <Text style={styles.number}>/</Text>\n <Text style={styles.number}>{length}</Text>\n </View>\n )}\n </View>\n );\n};\n\nCarousel.defaultProps = CarouselDefaultProps;\n"],"names":["Carousel","props","_props$style5","_props$style6","_props$style9","useMounted","scrollViewRef","useRef","_useState","useState","_useState2","_slicedToArray","currentIndex","setCurrentIndex","_useState3","_useState4","isScrolling","setIsScrolling","autoPlayTimer","_useState5","x","y","_useState6","normalSize","setNormalSize","_useState7","_useState8","offsetPerItem","setOffsetPerItem","_useState9","_useState0","containerPadding","setContainerPadding","_useState1","_useState10","spacing","setSpacing","_useState11","_useState12","distance","setDistance","_useState13","_useState14","realIndex","setRealIndex","_useState15","width","height","_useState16","childrenSize","setChildrenSize","_useState17","_useState18","isChildrenSizeMeasured","setIsChildrenSizeMeasured","themeColor","useThemeColor","styles","getStyle","containerSize","useMemo","_props$style","_props$style2","style","Dimensions","get","children","_props$style3","_props$style4","handleChildLayout","event","_event$nativeEvent$la","nativeEvent","layout","extendedData","_props$data","_props$children","data","length","infinite","concat","_toConsumableArray","React","Children","map","child","index","isValidElement","cloneElement","_objectSpread","onLayout","e","_props$style7","_child$props","prev","_e$nativeEvent","_child$props$onLayout","_child$props2","call","cloneChild","_props$style8","_child$props3","_e$nativeEvent2","_child$props$onLayout2","_child$props4","useEffect","_props$data2","_props$children2","dotList","Array","dotType","DOTTYPE","INDEFINITE","initDotNumber","fill","getItemDimensions","direction","playingMode","_getItemDimensions","DISTANCE","SPACING","CONTAINER_PADDING","resetAutoPlayTimer","current","clearInterval","autoPlay","timer","setInterval","nextIndex","scrollToIndex","duration","animated","arguments","undefined","Math","max","min","requestAnimationFrame","_scrollViewRef$curren","scrollOffset","scrollTo","newRealIndex","_props$onChange","_props$data3","_props$children3","onChange","handleScrollBegin","handlable","handleScrollEnd","offset","contentOffset","round","clampedIndex","getDotStyle","isActive","DEFINITE","dotPlacement","DOTPLACEMENT","INSIDE","activeDot","activeDotStyle","outSideActiveDot","dot","dotStyle","outSideDot","initialIndex","initialCurrentIndex","handleLoad","_ref","_props$style0","source","createElement","View","container","overflow","ScrollView","ref","horizontal","pagingEnabled","showsHorizontalScrollIndicator","showsVerticalScrollIndicator","onScrollBeginDrag","onScrollEndDrag","onMomentumScrollEnd","scrollEventThrottle","decelerationRate","scrollEnabled","bounces","contentContainerStyle","scrollContent","paddingHorizontal","paddingVertical","item","_props$data4","key","String","itemContainer","marginHorizontal","marginVertical","transform","scale","shouldRasterizeIOS","renderToHardwareTextureAndroid","Image","uri","borderRadius","resizeMode","onLoad","resizeMethod","displayDots","dotContainer","dotOutsideContainer","smallDot","smallOutsideDot","_","displayNumbers","numberContainer","numberPlacement","NUMBERPLACEMENT","TOP","numberTop","numberBottom","Text","number","defaultProps","CarouselDefaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"Carousel.js","sources":["../../../../src/components/Carousel/Carousel.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState, useMemo, ReactElement } from \"react\";\nimport { View, ScrollView, Dimensions, NativeSyntheticEvent, NativeScrollEvent, Image, Text } from \"react-native\";\nimport getStyle from \"./styles\";\nimport { useThemeColor } from \"../ConfigProvider\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nimport { RedsCarousel, DOTTYPE, DOTPLACEMENT, NUMBERPLACEMENT, CarouselDefaultProps } from \"./interface\";\n\nexport const Carousel: React.FC<RedsCarousel> = (props) => {\n useMounted(\"Carousel\");\n const scrollViewRef = useRef<ScrollView>(null);\n const [currentIndex, setCurrentIndex] = useState(1);\n const [isScrolling, setIsScrolling] = useState(false);\n const autoPlayTimer = useRef<any>(null);\n const [normalSize, setNormalSize] = useState({\n x: 0,\n y: 0,\n });\n const [offsetPerItem, setOffsetPerItem] = useState(0);\n const [containerPadding, setContainerPadding] = useState(0);\n const [spacing, setSpacing] = useState(0);\n const [distance, setDistance] = useState(0);\n const [realIndex, setRealIndex] = useState(0);\n\n // 新增:存储children的实际尺寸\n const [childrenSize, setChildrenSize] = useState({\n width: 0,\n height: 0,\n });\n const [isChildrenSizeMeasured, setIsChildrenSizeMeasured] = useState(false);\n\n const themeColor = useThemeColor();\n const styles = getStyle(themeColor);\n\n // 修改:根据children实际尺寸计算容器尺寸\n const containerSize = useMemo(() => {\n let width = (props.style?.width as number) || Dimensions.get(\"window\").width;\n let height = (props.style?.height as number) || 300;\n\n // 如果使用children且已测量出尺寸,则使用children的实际尺寸\n if (props.children && isChildrenSizeMeasured && childrenSize.width > 0 && childrenSize.height > 0) {\n if (!props.style?.width) {\n width = childrenSize.width;\n }\n if (!props.style?.height) {\n height = childrenSize.height;\n }\n }\n\n return { width, height };\n }, [props.style?.width, props.style?.height, props.children, isChildrenSizeMeasured, childrenSize]);\n\n // 修改:处理children的onLayout事件\n const handleChildLayout = (event: any) => {\n const { width, height } = event.nativeEvent.layout;\n\n // 只在尺寸发生变化时更新\n if (width !== childrenSize.width || height !== childrenSize.height) {\n setChildrenSize({ width, height });\n setIsChildrenSizeMeasured(true);\n }\n };\n\n const extendedData = useMemo(() => {\n if (props.data?.length) {\n // 如果不是无限循环,直接返回原数据\n if (!props.infinite) {\n return props.data;\n }\n return [props.data[props.data.length - 1], ...(props.data || []), props.data[0]];\n } else if (props.children?.length) {\n // 如果不是无限循环,直接返回原children\n if (!props.infinite) {\n return React.Children.map(props.children, (child: any, index: number) => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child as any, {\n onLayout: (e: any) => {\n if (index === 0) {\n handleChildLayout(e);\n }\n if (!props.style?.height && index === 0) {\n setNormalSize((prev) => ({\n x: containerSize.width,\n y: e.nativeEvent?.layout.height,\n }));\n }\n // @ts-ignore\n if (child.props?.onLayout) {\n // @ts-ignore\n child.props.onLayout?.(e);\n }\n },\n ...((child.props || {}) as object),\n });\n }\n });\n }\n\n const cloneChild = [props.children[props.children.length - 1], ...(props.children || []), props.children[0]];\n return React.Children.map(cloneChild, (child: any, index: number) => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child as any, {\n onLayout: (e: any) => {\n if (index === 1) {\n handleChildLayout(e);\n }\n if (!props.style?.height && index === 1) {\n setNormalSize((prev) => ({\n x: containerSize.width,\n y: e.nativeEvent?.layout.height,\n }));\n }\n // @ts-ignore\n if (child.props?.onLayout) {\n // @ts-ignore\n child.props.onLayout?.(e);\n }\n },\n ...((child.props || {}) as object),\n });\n }\n });\n } else {\n return [];\n }\n }, [props.data, props.children, containerSize.width, props.style?.height, props.infinite]);\n\n // 初始化 normalSize\n useEffect(() => {\n setNormalSize({\n x: containerSize.width,\n y: containerSize.height,\n });\n }, [containerSize]);\n\n /**\n * 长度\n */\n const length = useMemo(() => {\n return props.data?.length || props.children?.length || 0;\n }, [props.data, props.children]);\n\n /**\n * 渲染dot list\n */\n const dotList = useMemo(() => {\n return new Array(props.dotType === DOTTYPE.INDEFINITE ? props.initDotNumber : length).fill(0);\n }, [props.dotType, props.initDotNumber, length]);\n\n // Calculate dimensions based on mode\n const getItemDimensions = () => {\n const distance = props.direction === \"horizontal\" ? normalSize.x : normalSize.y;\n switch (props.playingMode) {\n case \"normal\":\n return {\n distance,\n spacing: 0,\n containerPadding: 0,\n };\n case \"card\":\n return {\n distance: distance * 0.6,\n spacing: props.distance || 0,\n containerPadding: distance * 0.2,\n };\n case \"compact\":\n return {\n distance: distance * 0.6,\n spacing: props.distance || 0,\n containerPadding: distance * 0.2,\n };\n default:\n return {\n distance,\n spacing: 0,\n containerPadding: 0,\n };\n }\n };\n\n useEffect(() => {\n if (normalSize.x > 0 && normalSize.y > 0) {\n const { distance: DISTANCE, spacing: SPACING, containerPadding: CONTAINER_PADDING } = getItemDimensions();\n setOffsetPerItem(DISTANCE + SPACING);\n setContainerPadding(CONTAINER_PADDING);\n setDistance(DISTANCE);\n setSpacing(SPACING);\n }\n }, [normalSize, props.playingMode, props.distance, props.direction]);\n\n // 重置自动播放计时器\n const resetAutoPlayTimer = () => {\n if (autoPlayTimer.current) {\n clearInterval(autoPlayTimer.current);\n autoPlayTimer.current = null;\n }\n\n if (props.autoPlay && length > 1) {\n const timer = setInterval(() => {\n if (!isScrolling) {\n const nextIndex = currentIndex + 1;\n\n // 如果不是无限循环且已到最后一页,则停止自动播放\n if (!props.infinite && nextIndex >= length) {\n if (autoPlayTimer.current) {\n clearInterval(autoPlayTimer.current);\n autoPlayTimer.current = null;\n }\n return;\n }\n\n scrollToIndex(nextIndex);\n }\n }, props.duration);\n autoPlayTimer.current = timer;\n }\n };\n\n // 初始化自动播放\n useEffect(() => {\n if (props.autoPlay && !isScrolling && offsetPerItem > 0) {\n resetAutoPlayTimer();\n }\n return () => {\n if (autoPlayTimer.current) {\n clearInterval(autoPlayTimer.current);\n }\n };\n }, [currentIndex, isScrolling, props.autoPlay, offsetPerItem, length]);\n\n // 优化滚动方法\n const scrollToIndex = (index: number, animated: boolean = true) => {\n if (offsetPerItem <= 0) return;\n\n // 如果不是无限循环模式,限制索引范围\n if (!props.infinite) {\n index = Math.max(0, Math.min(index, length - 1));\n }\n\n requestAnimationFrame(() => {\n let scrollOffset = index * offsetPerItem;\n\n if (props.playingMode !== \"normal\") {\n scrollOffset -= containerPadding;\n }\n\n scrollViewRef.current?.scrollTo({\n ...(props.direction === \"horizontal\" ? { x: scrollOffset } : { y: scrollOffset }),\n animated,\n });\n });\n\n setCurrentIndex(index);\n\n // 计算真实索引\n let newRealIndex: number;\n if (props.infinite) {\n newRealIndex = index === 0 ? length - 1 : index === length + 1 ? 0 : index - 1;\n } else {\n newRealIndex = index;\n }\n setRealIndex(newRealIndex);\n };\n\n useEffect(() => {\n if (realIndex >= 0 && realIndex < length) {\n props.onChange?.(props.data?.[realIndex] || props.children?.[realIndex], realIndex);\n }\n }, [realIndex, props.data, props.children, length]);\n\n const handleScrollBegin = () => {\n if (!props.handlable) return;\n setIsScrolling(true);\n // 手动滚动开始时清除自动播放计时器\n if (autoPlayTimer.current) {\n clearInterval(autoPlayTimer.current);\n autoPlayTimer.current = null;\n }\n };\n\n const handleScrollEnd = (event: NativeSyntheticEvent<NativeScrollEvent>) => {\n if (offsetPerItem <= 0) {\n setIsScrolling(false);\n return;\n }\n\n const offset =\n props.direction === \"horizontal\" ? event.nativeEvent.contentOffset.x : event.nativeEvent.contentOffset.y;\n\n let index: number;\n if (props.playingMode === \"normal\") {\n index = Math.round(offset / offsetPerItem);\n } else {\n index = Math.round((offset + containerPadding) / offsetPerItem);\n }\n\n index = Math.max(0, Math.min(index, extendedData.length - 1));\n\n // 处理边界情况\n if (props.infinite) {\n // 无限循环模式的边界处理\n if (index <= 0) {\n scrollToIndex(length, false);\n } else if (index >= extendedData.length - 1) {\n scrollToIndex(1, false);\n } else {\n setCurrentIndex(index);\n const newRealIndex = index === 0 ? length - 1 : index === length + 1 ? 0 : index - 1;\n setRealIndex(newRealIndex);\n }\n } else {\n // 非无限循环模式\n const clampedIndex = Math.max(0, Math.min(index, length - 1));\n setCurrentIndex(clampedIndex);\n setRealIndex(clampedIndex);\n }\n\n setIsScrolling(false);\n };\n\n /**\n * dot 样式\n */\n const getDotStyle = (index: number) => {\n const isActive =\n props.dotType === DOTTYPE.DEFINITE\n ? realIndex === index\n : props.initDotNumber && realIndex % props.initDotNumber === index;\n\n return isActive\n ? props.dotPlacement === DOTPLACEMENT.INSIDE\n ? [styles.activeDot, props.activeDotStyle]\n : [styles.outSideActiveDot, props.activeDotStyle]\n : props.dotPlacement === DOTPLACEMENT.INSIDE\n ? [styles.dot, props.dotStyle]\n : [styles.outSideDot, props.dotStyle];\n };\n\n // 初始化执行一次\n useEffect(() => {\n if (offsetPerItem > 0 && extendedData.length > 0) {\n let initialIndex = props.currentIndex || 0;\n\n // 如果是无限循环模式,需要加1\n if (props.infinite) {\n initialIndex += 1;\n }\n\n scrollToIndex(initialIndex, false);\n }\n }, [offsetPerItem, extendedData.length, props.infinite]);\n\n useEffect(() => {\n // 如果是无限循环模式,初始索引为1;否则为0\n const initialCurrentIndex = props.infinite ? 1 : 0;\n setCurrentIndex(initialCurrentIndex);\n }, [props.infinite]);\n\n // 优化 handleLoad 函数\n const handleLoad = ({ nativeEvent }: any) => {\n // 只有在没有设置固定高度时才更新\n if (!props.style?.height) {\n setNormalSize((prev) => ({\n ...prev,\n y: nativeEvent.source.height,\n }));\n }\n };\n\n return (\n <View\n style={[\n styles.container,\n {\n overflow: \"hidden\",\n height: containerSize.height,\n width: containerSize.width,\n },\n props.style,\n ]}\n >\n <ScrollView\n ref={scrollViewRef}\n horizontal={props.direction === \"horizontal\"}\n pagingEnabled={props.playingMode === \"normal\"}\n showsHorizontalScrollIndicator={false}\n showsVerticalScrollIndicator={false}\n onScrollBeginDrag={handleScrollBegin}\n onScrollEndDrag={handleScrollEnd}\n onMomentumScrollEnd={handleScrollEnd}\n scrollEventThrottle={16}\n decelerationRate=\"fast\"\n scrollEnabled={props.handlable}\n // 修改:根据infinite参数设置是否可以滚动到边界外\n bounces={props.infinite}\n contentContainerStyle={[\n styles.scrollContent,\n props.direction === \"horizontal\"\n ? { paddingHorizontal: containerPadding }\n : { paddingVertical: containerPadding },\n ]}\n >\n {extendedData.map((item: any, index: number) => (\n <View\n key={`${String(item)}_${index}`}\n style={[\n styles.itemContainer,\n {\n ...(props.direction === \"horizontal\"\n ? {\n marginHorizontal: spacing / 2,\n width: distance,\n height: normalSize.y,\n }\n : {\n marginVertical: spacing / 2,\n width: normalSize.x,\n height: distance,\n }),\n transform: [\n {\n scale:\n props.playingMode !== \"normal\" && currentIndex === index\n ? 1\n : props.playingMode === \"normal\"\n ? 1\n : 0.9,\n },\n ],\n },\n ]}\n shouldRasterizeIOS={true}\n renderToHardwareTextureAndroid={true}\n >\n {props.data?.length ? (\n <Image\n source={{ uri: item as string }}\n style={{\n borderRadius: props.playingMode === \"normal\" ? 0 : 12,\n width: props.direction === \"horizontal\" ? distance : normalSize.x,\n height: props.direction === \"horizontal\" ? normalSize.y : distance,\n }}\n resizeMode=\"contain\"\n onLoad={handleLoad}\n resizeMethod=\"resize\"\n />\n ) : (\n extendedData?.[index]\n )}\n </View>\n ))}\n </ScrollView>\n\n {/* 其余的 Dots 和 Numbers 组件保持不变 */}\n {props.displayDots && dotList.length > 0 && (\n <View style={[props.dotPlacement === DOTPLACEMENT.INSIDE ? styles.dotContainer : styles.dotOutsideContainer]}>\n {props.dotType === DOTTYPE.INDEFINITE && (\n <View\n style={[\n props.dotPlacement === DOTPLACEMENT.INSIDE ? styles.smallDot : styles.smallOutsideDot,\n props.dotStyle,\n ]}\n />\n )}\n {dotList.map((_, index) => (\n <View key={index} style={getDotStyle(index)} />\n ))}\n {props.dotType === DOTTYPE.INDEFINITE && (\n <View\n style={[\n props.dotPlacement === DOTPLACEMENT.INSIDE ? styles.smallDot : styles.smallOutsideDot,\n props.dotStyle,\n ]}\n />\n )}\n </View>\n )}\n\n {props.displayNumbers && (\n <View\n style={[\n styles.numberContainer,\n props.numberPlacement === NUMBERPLACEMENT.TOP ? styles.numberTop : styles.numberBottom,\n ]}\n >\n <Text style={styles.number}>{realIndex + 1}</Text>\n <Text style={styles.number}>/</Text>\n <Text style={styles.number}>{length}</Text>\n </View>\n )}\n </View>\n );\n};\n\nCarousel.defaultProps = CarouselDefaultProps;\n"],"names":["Carousel","props","_props$style5","_props$style6","_props$style9","useMounted","scrollViewRef","useRef","_useState","useState","_useState2","_slicedToArray","currentIndex","setCurrentIndex","_useState3","_useState4","isScrolling","setIsScrolling","autoPlayTimer","_useState5","x","y","_useState6","normalSize","setNormalSize","_useState7","_useState8","offsetPerItem","setOffsetPerItem","_useState9","_useState0","containerPadding","setContainerPadding","_useState1","_useState10","spacing","setSpacing","_useState11","_useState12","distance","setDistance","_useState13","_useState14","realIndex","setRealIndex","_useState15","width","height","_useState16","childrenSize","setChildrenSize","_useState17","_useState18","isChildrenSizeMeasured","setIsChildrenSizeMeasured","themeColor","useThemeColor","styles","getStyle","containerSize","useMemo","_props$style","_props$style2","style","Dimensions","get","children","_props$style3","_props$style4","handleChildLayout","event","_event$nativeEvent$la","nativeEvent","layout","extendedData","_props$data","_props$children","data","length","infinite","concat","_toConsumableArray","React","Children","map","child","index","isValidElement","cloneElement","_objectSpread","onLayout","e","_props$style7","_child$props","prev","_e$nativeEvent","_child$props$onLayout","_child$props2","call","cloneChild","_props$style8","_child$props3","_e$nativeEvent2","_child$props$onLayout2","_child$props4","useEffect","_props$data2","_props$children2","dotList","Array","dotType","DOTTYPE","INDEFINITE","initDotNumber","fill","getItemDimensions","direction","playingMode","_getItemDimensions","DISTANCE","SPACING","CONTAINER_PADDING","resetAutoPlayTimer","current","clearInterval","autoPlay","timer","setInterval","nextIndex","scrollToIndex","duration","animated","arguments","undefined","Math","max","min","requestAnimationFrame","_scrollViewRef$curren","scrollOffset","scrollTo","newRealIndex","_props$onChange","_props$data3","_props$children3","onChange","handleScrollBegin","handlable","handleScrollEnd","offset","contentOffset","round","clampedIndex","getDotStyle","isActive","DEFINITE","dotPlacement","DOTPLACEMENT","INSIDE","activeDot","activeDotStyle","outSideActiveDot","dot","dotStyle","outSideDot","initialIndex","initialCurrentIndex","handleLoad","_ref","_props$style0","source","createElement","View","container","overflow","ScrollView","ref","horizontal","pagingEnabled","showsHorizontalScrollIndicator","showsVerticalScrollIndicator","onScrollBeginDrag","onScrollEndDrag","onMomentumScrollEnd","scrollEventThrottle","decelerationRate","scrollEnabled","bounces","contentContainerStyle","scrollContent","paddingHorizontal","paddingVertical","item","_props$data4","key","String","itemContainer","marginHorizontal","marginVertical","transform","scale","shouldRasterizeIOS","renderToHardwareTextureAndroid","Image","uri","borderRadius","resizeMode","onLoad","resizeMethod","displayDots","dotContainer","dotOutsideContainer","smallDot","smallOutsideDot","_","displayNumbers","numberContainer","numberPlacement","NUMBERPLACEMENT","TOP","numberTop","numberBottom","Text","number","defaultProps","CarouselDefaultProps"],"mappings":"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"}
@@ -40,7 +40,6 @@ var Popover = (function (_ref) {
40
40
  propsArrowStyles = _ref.arrowStyles,
41
41
  offset = _ref.offset,
42
42
  duration = _ref.duration,
43
- animation_duration = _ref.animation_duration,
44
43
  hostName = _ref.hostName,
45
44
  maxWidth = _ref.maxWidth,
46
45
  arrowOffset = _ref.arrowOffset;
@@ -116,18 +115,18 @@ var Popover = (function (_ref) {
116
115
  if (layout.x !== defaultValue) {
117
116
  Animated.timing(progress, {
118
117
  toValue: 1,
119
- duration: animation_duration !== null && animation_duration !== void 0 ? animation_duration : 400,
118
+ duration: duration !== null && duration !== void 0 ? duration : 400,
120
119
  useNativeDriver: false
121
120
  }).start();
122
121
  }
123
122
  } else {
124
123
  Animated.timing(progress, {
125
124
  toValue: 0,
126
- duration: animation_duration !== null && animation_duration !== void 0 ? animation_duration : 400,
125
+ duration: duration !== null && duration !== void 0 ? duration : 400,
127
126
  useNativeDriver: false
128
127
  }).start();
129
128
  }
130
- }, [_visible, layout, animation_duration]);
129
+ }, [_visible, layout]);
131
130
  var onMaskChange = function onMaskChange(event, value) {
132
131
  if (isControl) return;
133
132
  if (value === void 0) return setVisible(!_visible);
@@ -1 +1 @@
1
- {"version":3,"file":"Popover.js","sources":["../../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import React, { useState, useMemo, isValidElement, useEffect, useRef } from \"react\";\nimport { Text, View, TouchableWithoutFeedback, GestureResponderEvent, Animated, Image, Dimensions } from \"react-native\";\nimport { RedsPopover } from \"./interface/index\";\nimport { ModalWrapper } from \"./component\";\nimport { darkColor, lightColor, typography } from \"@xhsreds/reds-token-next\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nimport { Portal } from \"../Portal\";\nconst defaultValue = -9999;\n\nexport default ({\n mode = \"light\",\n opacity = 0,\n content,\n children,\n isControl = false,\n placement = \"top\",\n closeOnClickAgain = true,\n trigger = \"click\",\n zIndex = 1000,\n visible,\n onVisibleChange,\n onClickMask: _onClickMask,\n popContainerStyle = {},\n arrowStyles: propsArrowStyles,\n offset,\n duration,\n animation_duration,\n hostName,\n maxWidth,\n arrowOffset,\n}: RedsPopover) => {\n useMounted(\"Popover\");\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 [layout, setLayout] = useState({\n x: defaultValue,\n y: defaultValue,\n width: 0,\n height: 0,\n });\n\n const [floatingLayout, setFloatingLayout] = useState({\n x: defaultValue,\n y: defaultValue,\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 if (layout.x !== defaultValue) {\n Animated.timing(progress, {\n toValue: 1,\n duration: animation_duration ?? 400,\n useNativeDriver: false,\n }).start();\n }\n } else {\n Animated.timing(progress, {\n toValue: 0,\n duration: animation_duration ?? 400,\n useNativeDriver: false,\n }).start();\n }\n }, [_visible, layout, animation_duration]);\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 let color: typeof lightColor | typeof darkColor = lightColor;\n if (mode === \"light\") color = lightColor;\n if (mode === \"dark\") color = darkColor;\n return {\n backgroundColor: color.Fill5,\n color: color.White,\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 {_visible && layout.x !== defaultValue ? (\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 <>\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 paddingHorizontal: 12,\n paddingVertical: 7,\n maxWidth: maxWidth || 280,\n minHeight: 30,\n borderRadius: 8,\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 {typeof content === \"function\" ? (\n (content as any)()\n ) : (\n <Text\n style={{\n fontWeight: typography.B2LooseFontWeight,\n fontSize: typography.B2LooseFontSize,\n lineHeight: typography.B2LooseLineHeight,\n color: popoverStyle.color,\n }}\n >\n {content}\n </Text>\n )}\n </Animated.View>\n <Image\n source={{ uri: angle }}\n // @ts-expect-error\n style={{\n width: 14,\n height: 6,\n zIndex: zIndex + 9,\n ...arrowStyles,\n ...propsArrowStyles,\n }}\n />\n </>\n </ModalWrapper>\n </Portal>\n ) : (\n <></>\n )}\n </>\n );\n};\n"],"names":["defaultValue","_ref","_ref$mode","mode","_ref$opacity","opacity","content","children","_ref$isControl","isControl","_ref$placement","placement","_ref$closeOnClickAgai","closeOnClickAgain","_ref$trigger","trigger","_ref$zIndex","zIndex","visible","onVisibleChange","_onClickMask","onClickMask","_ref$popContainerStyl","popContainerStyle","propsArrowStyles","arrowStyles","offset","duration","animation_duration","hostName","maxWidth","arrowOffset","useMounted","needModal","useMemo","_useState","useState","_useState2","_slicedToArray","_visible","setVisible","progress","useRef","Animated","Value","current","childRef","_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","color","lightColor","darkColor","backgroundColor","Fill5","White","angle","_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","Fragment","onLayout","nativeEvent","_objectSpread","paddingHorizontal","paddingVertical","minHeight","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","Text","fontWeight","typography","B2LooseFontWeight","fontSize","B2LooseFontSize","lineHeight","B2LooseLineHeight","Image","source","uri"],"mappings":";;;;;;;;;;;;;;;;AAOA,IAAMA,YAAe,GAAA,CAAA,IAAA,CAAA;AAErB,cAAe,CAAA,UAAAC,IAAA,EAqBI;AAAA,EAAA,IAAAC,SAAA,GAAAD,IAAA,CApBjBE,IAAO;AAAPA,IAAAA,IAAO,GAAAD,SAAA,KAAA,KAAA,CAAA,GAAA,OAAA,GAAAA,SAAA;IAAAE,YAAA,GAAAH,IAAA,CACPI,OAAU;AAAVA,IAAAA,OAAU,GAAAD,YAAA,KAAA,KAAA,CAAA,GAAA,CAAA,GAAAA,YAAA;IACVE,OAAA,GAAAL,IAAA,CAAAK,OAAA;IACAC,QAAA,GAAAN,IAAA,CAAAM,QAAA;IAAAC,cAAA,GAAAP,IAAA,CACAQ,SAAY;AAAZA,IAAAA,SAAY,GAAAD,cAAA,KAAA,KAAA,CAAA,GAAA,KAAA,GAAAA,cAAA;IAAAE,cAAA,GAAAT,IAAA,CACZU,SAAY;AAAZA,IAAAA,SAAY,GAAAD,cAAA,KAAA,KAAA,CAAA,GAAA,KAAA,GAAAA,cAAA;IAAAE,qBAAA,GAAAX,IAAA,CACZY,iBAAoB;AAApBA,IAAAA,iBAAoB,GAAAD,qBAAA,KAAA,KAAA,CAAA,GAAA,IAAA,GAAAA,qBAAA;IAAAE,YAAA,GAAAb,IAAA,CACpBc,OAAU;AAAVA,IAAAA,OAAU,GAAAD,YAAA,KAAA,KAAA,CAAA,GAAA,OAAA,GAAAA,YAAA;IAAAE,WAAA,GAAAf,IAAA,CACVgB,MAAS;AAATA,IAAAA,MAAS,GAAAD,WAAA,KAAA,KAAA,CAAA,GAAA,GAAA,GAAAA,WAAA;IACTE,OAAA,GAAAjB,IAAA,CAAAiB,OAAA;IACAC,eAAA,GAAAlB,IAAA,CAAAkB,eAAA;IACaC,YAAA,GAAAnB,IAAA,CAAboB,WAAa;IAAAC,qBAAA,GAAArB,IAAA,CACbsB;AAAAA,IAAAA,uDAAoB,EAAC,GAAAD,qBAAA;IACRE,gBAAA,GAAAvB,IAAA,CAAbwB,WAAa;IACbC,MAAA,GAAAzB,IAAA,CAAAyB,MAAA;IACAC,QAAA,GAAA1B,IAAA,CAAA0B,QAAA;IACAC,kBAAA,GAAA3B,IAAA,CAAA2B,kBAAA;IACAC,QAAA,GAAA5B,IAAA,CAAA4B,QAAA;IACAC,QAAA,GAAA7B,IAAA,CAAA6B,QAAA;IACAC,WAAA,GAAA9B,IAAA,CAAA8B,WAAA,CAAA;EAEAC,UAAA,CAAW,SAAS,CAAA,CAAA;EACpB,IAAMC,YAAYC,OAAQ,CAAA,YAAA;IAAA,OAAM7B,YAAY,CAAG,CAAA;GAAA,EAAA,CAACA,OAAO,CAAC,CAAA,CAAA;AAExD,EAAA,IAAA8B,SAAA,GAA+BC,SAAS,KAAK,CAAA;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAtCI,IAAAA,QAAA,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAUG,IAAAA,UAAU,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAE3B,EAAA,IAAMI,WAAWC,MAAO,CAAA,IAAIC,SAASC,KAAM,CAAA,CAAC,CAAC,CAAE,CAAAC,OAAA,CAAA;AAEzC,EAAA,IAAAC,QAAA,GAAWJ,OAAY,IAAI,CAAA,CAAA;EAEjC,IAAAK,UAAA,GAA4BX,QAAS,CAAA;AACnCY,MAAAA,CAAG,EAAAhD,YAAA;AACHiD,MAAAA,CAAG,EAAAjD,YAAA;AACHkD,MAAAA,KAAO,EAAA,CAAA;AACPC,MAAAA,MAAQ,EAAA,CAAA;AACV,KAAC,CAAA;IAAAC,UAAA,GAAAd,cAAA,CAAAS,UAAA,EAAA,CAAA,CAAA;AALMM,IAAAA,MAAA,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAQE,IAAAA,SAAS,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;EAOxB,IAAAG,UAAA,GAA4CnB,QAAS,CAAA;AACnDY,MAAAA,CAAG,EAAAhD,YAAA;AACHiD,MAAAA,CAAG,EAAAjD,YAAA;AACHkD,MAAAA,KAAO,EAAA,CAAA;AACPC,MAAAA,MAAQ,EAAA,CAAA;AACV,KAAC,CAAA;IAAAK,UAAA,GAAAlB,cAAA,CAAAiB,UAAA,EAAA,CAAA,CAAA;AALME,IAAAA,cAAA,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAgBE,IAAAA,iBAAiB,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAOlC,EAAA,IAAAG,WAAA,GAAczB,QAAQ,YAAM;IAChC,IAAM0B,QAAQ,CAAC,WAAA,EAAa,cAAc,CAAA,CAAEC,SAASlD,SAAS,CAAA,CAAA;IAC9D,IAAMmD,MAAM,CAAC,KAAA,EAAO,QAAQ,CAAA,CAAED,SAASlD,SAAS,CAAA,CAAA;IAChD,IAAMoD,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,CAAEF,SAASlD,SAAS,CAAA,CAAA;IAClD,IAAAqD,KAAA,GAAQP,cAAe,CAAAP,KAAA,GAAQG,MAAO,CAAAH,KAAA,CAAA;AAEtC,IAAA,IAAAe,SAAA,GAAYC,SAASC,EAAO,KAAA,SAAA,CAAA;IAClC,OAAOd,OAAOF,MACV,GAAA;AACEiB,MAAAA,QAAU,EAAA,UAAA;AACVC,MAAAA,MACG1D,SAAU,CAAAkD,QAAA,CAAS,KAAK,CAAA,GAAIR,OAAOJ,CAAI,GAAAQ,cAAA,CAAeN,MAAS,GAAA,EAAA,GAAKE,OAAOJ,CAAI,GAAAI,MAAA,CAAOF,MAAS,GAAA,EAAA,KAC/F,CAAAzB,mBAAAA,WAAAA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAQuB,CAAK,KAAA,CAAA,CAAA;MAChBqB,IAAA,EAAA,CACGV,QAAQP,MAAO,CAAAL,CAAA,GAAIc,MAAMT,MAAO,CAAAL,CAAA,GAAIgB,KAAQ,GAAA,CAAA,GAAID,GAAM,GAAAV,MAAA,CAAOL,IAAIgB,KAAQ,GAAA,CAAA,KACzE,CAAAtC,WAAAA,IAAAA,IAAAA,6BAAAA,OAAQsB,CAAK,KAAA,CAAA,CAAA,IACbiB,YAAYM,UAAW,CAAAC,GAAA,CAAI,QAAQ,CAAA,CAAEtB,KAAQ,GAAA,CAAA,CAAA;QAElD,EAAC,CAAA;GACJ,EAAA,CAACvC,SAAW,EAAA0C,MAAA,EAAQI,cAAc,CAAC,CAAA,CAAA;AAEhC,EAAA,IAAAhC,WAAA,GAAcS,QAAQ,YAAM;IAChC,IAAM0B,QAAQ,CAAC,WAAA,EAAa,cAAc,CAAA,CAAEC,SAASlD,SAAS,CAAA,CAAA;IAC9D,IAAMmD,MAAM,CAAC,KAAA,EAAO,QAAQ,CAAA,CAAED,SAASlD,SAAS,CAAA,CAAA;IAChD,IAAMoD,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,CAAEF,SAASlD,SAAS,CAAA,CAAA;IAClD,IAAAqD,KAAA,GAAQP,cAAe,CAAAP,KAAA,GAAQG,MAAO,CAAAH,KAAA,CAAA;AAEtC,IAAA,IAAAe,SAAA,GAAYC,SAASC,EAAO,KAAA,SAAA,CAAA;IAClC,OAAOd,OAAOF,MACV,GAAA;AACEsB,MAAAA,SAAA,EAAW,CAAC;AAAEC,QAAAA,MAAQ,EAAA/D,SAAA,CAAUkD,SAAS,KAAK,CAAA,GAAA,MAAA,GAAA,QAAA;AAAsB,OAAC,CAAA;AACrEO,MAAAA,QAAU,EAAA,UAAA;MACVC,MACG1D,SAAU,CAAAkD,QAAA,CAAS,KAAK,CAAA,GAAIR,OAAOJ,CAAI,GAAA,EAAA,GAAKI,MAAO,CAAAJ,CAAA,GAAII,OAAOF,MAAS,GAAA,CAAA,KACvE,CAAAzB,WAAAA,IAAAA,IAAAA,6BAAAA,OAAQuB,CAAK,KAAA,CAAA,CAAA,IACb,CAAAlB,wBAAAA,kCAAAA,YAAakB,CAAK,KAAA,CAAA,CAAA;AACrBqB,MAAAA,IACG,EAAA,CAAAV,KAAA,GACGP,MAAO,CAAAL,CAAA,GAAI,IACXc,GACE,GAAAT,MAAA,CAAOL,CAAI,GAAAgB,KAAA,GAAQ,CAAI,GAAAP,cAAA,CAAeP,KAAQ,GAAA,CAAA,GAAI,IAClDa,GACE,GAAAV,MAAA,CAAOL,CAAI,GAAAgB,KAAA,GAAQP,cAAe,CAAAP,KAAA,GAAQ,EAC1C,GAAA,CAAA,KACP,CAAAxB,mBAAAA,6BAAAA,OAAQsB,CAAK,KAAA,CAAA,CAAA,IACb,CAAAjB,WAAa,KAAbA,IAAAA,IAAAA,WAAa,KAAbA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,WAAa,CAAAiB,CAAA,KAAK,MAClBiB,SAAY,GAAAM,UAAA,CAAWC,GAAI,CAAA,QAAQ,EAAEtB,KAAQ,GAAA,CAAA,CAAA;QAElD,EAAC,CAAA;KACJ,CAACvC,SAAA,EAAW0C,MAAQ,EAAAI,cAAA,EAAgB/B,MAAM,CAAC,CAAA,CAAA;AAE9CiD,EAAAA,SAAA,CAAU,YAAM;AACV,IAAA,IAAAC,KAAA,CAAA;AACJ,IAAA,IAAIjD,QAAU,EAAA;MACZiD,KAAA,GAAQC,WAAW,YAAA;AAAA,QAAA,OAAMC,YAAA,CAAa,EAA6B,EAAA,KAAK;SAAGnD,QAAQ,CAAA,CAAA;AACrF,KAAA;AACA,IAAA,OAAO,YAAM;AACXiD,MAAAA,KAAA,IAASG,aAAaH,KAAK,CAAA,CAAA;KAC7B,CAAA;AACF,GAAG,EAAA,CAACjD,QAAU,EAAAY,QAAQ,CAAC,CAAA,CAAA;AAKvBoC,EAAAA,SAAA,CAAU,YAAM;IACIxD,eAAA,KAAA,IAAA,IAAAA,eAAA,KAAAA,KAAAA,CAAAA,IAAAA,eAAA,CAAA,CAAC,CAACoB,QAAQ,CAAA,CAAA;AAC5B,IAAA,IAAIA,QAAU,EAAA;AACR,MAAA,IAAAc,MAAA,CAAOL,MAAMhD,YAAc,EAAA;AAC7B2C,QAAAA,QAAA,CAASqC,OAAOvC,QAAU,EAAA;AACxBwC,UAAAA,OAAS,EAAA,CAAA;AACTtD,UAAAA,UAAUC,kBAAsB,KAAA,IAAA,IAAtBA,kBAAsB,KAAtBA,KAAAA,CAAAA,GAAAA,kBAAsB,GAAA,GAAA;AAChCsD,UAAAA,eAAiB,EAAA,KAAA;AACnB,SAAC,EAAEtB,KAAM,EAAA,CAAA;AACX,OAAA;AACF,KAAO,MAAA;AACLjB,MAAAA,QAAA,CAASqC,OAAOvC,QAAU,EAAA;AACxBwC,QAAAA,OAAS,EAAA,CAAA;AACTtD,QAAAA,UAAUC,kBAAsB,KAAA,IAAA,IAAtBA,kBAAsB,KAAtBA,KAAAA,CAAAA,GAAAA,kBAAsB,GAAA,GAAA;AAChCsD,QAAAA,eAAiB,EAAA,KAAA;AACnB,OAAC,EAAEtB,KAAM,EAAA,CAAA;AACX,KAAA;GACC,EAAA,CAACrB,QAAU,EAAAc,MAAA,EAAQzB,kBAAkB,CAAC,CAAA,CAAA;EAEnC,IAAAkD,YAAA,GAAe,SAAfA,YAAAA,CAAgBK,KAAA,EAA8BC,KAAmB,EAAA;AACrE,IAAA,IAAI3E,SAAW,EAAA,OAAA;IACf,IAAI2E,KAAU,KAAA,KAAA,CAAA,EAAkB,OAAA5C,UAAA,CAAW,CAACD,QAAQ,CAAA,CAAA;IACpD,OAAOC,WAAW4C,KAAK,CAAA,CAAA;GACzB,CAAA;AAEM,EAAA,IAAA/D,WAAA,GAAc,SAAdA,WAAAA,CAAegE,CAA6B,EAAA;AAChDP,IAAAA,YAAA,CAAaO,GAAG,KAAK,CAAA,CAAA;AACrBjE,IAAAA,YAAA,aAAAA,YAAA,KAAA,KAAA,CAAA,IAAAA,YAAA,CAAeiE,CAAC,CAAA,CAAA;GAClB,CAAA;AAEM,EAAA,IAAAC,YAAA,GAAepD,QAAQ,YAAM;IACjC,IAAIqD,KAA8C,GAAAC,UAAA,CAAA;AAC9C,IAAA,IAAArF,IAAA,KAAS,SAAiBoF,KAAA,GAAAC,UAAA,CAAA;AAC1B,IAAA,IAAArF,IAAA,KAAS,QAAgBoF,KAAA,GAAAE,SAAA,CAAA;IACtB,OAAA;MACLC,iBAAiBH,KAAM,CAAAI,KAAA;MACvBJ,OAAOA,KAAM,CAAAK,KAAAA;KACf,CAAA;AACF,GAAA,EAAG,CAACzF,IAAI,CAAC,CAAA,CAAA;AAETwE,EAAAA,SAAA,CAAU,YAAM;AACDlE,IAAAA,SAAA,IAAA+B,UAAA,CAAW,CAAC,CAACtB,OAAO,CAAA,CAAA;AACnC,GAAA,EAAG,CAACA,OAAO,CAAC,CAAA,CAAA;AAEN,EAAA,IAAA2E,KAAA,GAAQ3D,QAAQ,YAAM;IAC1B,IAAI/B,SAAS,OAAS,EAAA;AACb,MAAA,OAAA,iGAAA,CAAA;AACT,KAAO,MAAA;AACE,MAAA,OAAA,iGAAA,CAAA;AACT,KAAA;AACF,GAAA,EAAG,CAACA,IAAI,CAAC,CAAA,CAAA;AAETwE,EAAAA,SAAA,CAAU,YAAM;IAAA,IAAAmB,iBAAA,EAAAC,qBAAA,CAAA;AACdjD,IAAAA,QAAA,KAAAA,IAAAA,IAAAA,QAAA,KAAAgD,KAAAA,CAAAA,IAAAA,CAAAA,iBAAA,GAAAhD,QAAA,CAAUD,8EAAViD,iBAAA,CAAmBE,eAAkB,MAAAD,IAAAA,IAAAA,qBAAA,KAArCA,KAAAA,CAAAA,IAAAA,qBAAA,CAAAE,IAAA,CAAAH,iBAAA,EAAqC,UAAC9C,CAAW,EAAAC,CAAA,EAAWC,OAAeC,MAAmB,EAAA;AAClFG,MAAAA,SAAA,CAAA;AACRN,QAAAA,CAAA,EAAAA,CAAA;AACAC,QAAAA,CAAA,EAAAA,CAAA;AACAC,QAAAA,KAAA,EAAAA,KAAA;AACAC,QAAAA,MAAA,EAAAA,MAAAA;AACF,OAAC,CAAA,CAAA;AACH,KAAC,CAAA,CAAA;AACH,GAAA,EAAG,CAACzB,MAAM,CAAC,CAAA,CAAA;AAEXiD,EAAAA,SAAA,CAAU,YAAM;AACd,IAAA,IAAIpC,QAAU,EAAA;MAAA,IAAA2D,kBAAA,EAAAC,qBAAA,CAAA;AACZrD,MAAAA,QAAA,KAAAA,IAAAA,IAAAA,QAAA,KAAAoD,KAAAA,CAAAA,IAAAA,CAAAA,kBAAA,GAAApD,QAAA,CAAUD,+EAAVqD,kBAAA,CAAmBF,eAAkB,MAAAG,IAAAA,IAAAA,qBAAA,KAArCA,KAAAA,CAAAA,IAAAA,qBAAA,CAAAF,IAAA,CAAAC,kBAAA,EAAqC,UAAClD,CAAW,EAAAC,CAAA,EAAWC,OAAeC,MAAmB,EAAA;AAClFG,QAAAA,SAAA,CAAA;AACRN,UAAAA,CAAA,EAAAA,CAAA;AACAC,UAAAA,CAAA,EAAAA,CAAA;AACAC,UAAAA,KAAA,EAAAA,KAAA;AACAC,UAAAA,MAAA,EAAAA,MAAAA;AACF,SAAC,CAAA,CAAA;AACH,OAAC,CAAA,CAAA;AACH,KAAA;AACF,GAAA,EAAG,CAACZ,QAAQ,CAAC,CAAA,CAAA;EAEb,gEAEK6D,KAAM,CAAAC,QAAA,CAASC,IAAI/F,QAAU,EAAA,UAACgG,OAAOC,KAAU,EAAA;IAC9C,IAAIA,KAAU,KAAA,CAAA,iBAAKC,cAAe,CAAAF,KAAK,CAAG,EAAA;AAEtC,MAAA,sBAAAH,KAAA,CAAAM,aAAA,CAACC,wBAAA,EAAA;AACCC,QAAAA,OAAA,EAAS,SAATA,OAAAA,CAAUvB,CAAM,EAAA;UACd,IAAItE,YAAY,OAAS,EAAA;AACvB,YAAA,IAAIF,iBAAmB,EAAA;AACRiE,cAAAA,YAAA,CAAAO,CAAA,EAAG,CAAC9C,QAAQ,CAAA,CAAA;AAC3B,aAAO,MAAA;AACLuC,cAAAA,YAAA,CAAaO,GAAG,IAAI,CAAA,CAAA;AACtB,aAAA;AACF,WAAA;SACF;AACAwB,QAAAA,SAAA,EAAW,SAAXA,SAAAA,CAAYxB,CAAM,EAAA;UACJtE,OAAA,KAAA,OAAA,IAAW+D,YAAa,CAAAO,CAAA,EAAG,IAAI,CAAA,CAAA;SAC7C;AACAyB,QAAAA,UAAA,EAAY,SAAZA,UAAAA,CAAazB,CAAM,EAAA;UACLtE,OAAA,KAAA,OAAA,IAAW+D,YAAa,CAAAO,CAAA,EAAG,KAAK,CAAA,CAAA;AAC9C,SAAA;AAAA,OAAA,iBAEAe,KAAA,CAAAM,aAAA,CAACK,IAAA,EAAA;AACCC,QAAAA,WAAa,EAAA,KAAA;AACbC,QAAAA,GAAK,EAAA,SAALA,GAAKA,CAACC,EAAQ,EAAA;AAAA,UAAA,OAAApE,QAAA,CAASD,OAAU,GAAAqE,EAAA,CAAA;AAAA,SAAA;AACjCC,QAAAA,KAAA,EAAOZ,MAAMa,KAAM,CAAAD,KAAA;QACnBE,gCAAA,EAAkC,SAAlCA,gCAAAA,GAAA;AAAA,UAAA,OAAwC,CAAC5G,SAAA,CAAA;AAAA,SAAA;OAAA,EAExC8F,KACH,CACF,CAAA,CAAA;AAEJ,KAAA;AACO,IAAA,OAAAA,KAAA,CAAA;AACT,GAAC,GACAhE,QAAY,IAAAc,MAAA,CAAOL,MAAMhD,YACxB,kBAAAoG,KAAA,CAAAM,aAAA,CAACY;AAAOzF,IAAAA,QACN,EADMA,QAAAA;AACN,GAAA,iBAAAuE,KAAA,CAAAM,aAAA,CAACa,YAAA,EAAA;AACCtF,IAAAA,SAAA,EAAAA,SAAA;AACAf,IAAAA,OAAS,EAAAqB,QAAA;AACTlB,IAAAA,WAAA,EAAAA,WAAA;AACAhB,IAAAA,OAAA,EAAAA,OAAA;AACAoC,IAAAA,QAAA,EAAAA,QAAA;AACAxB,IAAAA,MAAA,EAAAA,MAAAA;GAAA,iBAGEmF,KAAA,CAAAM,aAAA,CAAAN,KAAA,CAAAoB,QAAA,EAAA,IAAA,iBAAApB,KAAA,CAAAM,aAAA,CAAC/D,QAAS,CAAAoE,IAAA,EAAT;AACCC,IAAAA,WAAa,EAAA,KAAA;AACbS,IAAAA,QAAA,EAAU,SAAVA,QAAAA,CAAWpC,CAAM,EAAA;AACG3B,MAAAA,iBAAA,CAAA2B,CAAA,CAAEqC,YAAYrE,MAAM,CAAA,CAAA;KACxC;AAEA8D,IAAAA,KAAO,EAAAQ,cAAA,CAAAA,cAAA,CAAAA,cAAA,CAAA;MACLjC,iBAAiBJ,YAAa,CAAAI,eAAA;AAC9BkC,MAAAA,iBAAmB,EAAA,EAAA;AACnBC,MAAAA,eAAiB,EAAA,CAAA;MACjB/F,UAAUA,QAAY,IAAA,GAAA;AACtBgG,MAAAA,SAAW,EAAA,EAAA;AACXC,MAAAA,YAAc,EAAA,CAAA;AACd9G,MAAAA,MAAA,EAAAA,MAAA;AACA+G,MAAAA,WAAa,EAAA,SAAA;AACbC,MAAAA,YAAc,EAAA;AAAE/E,QAAAA,KAAO,EAAA,CAAA;AAAGC,QAAAA,QAAQ,CAAA;OAAE;AACpC+E,MAAAA,aAAe,EAAA,GAAA;AACfC,MAAAA,YAAc,EAAA,CAAA;AACdC,MAAAA,SAAW,EAAA,CAAA;KACRzE,EAAAA,WAAA,GACApC,iBAAA,CAAA,EAAA,EAAA,EAAA;AACHlB,MAAAA,OAAS,EAAAoC,QAAAA;AAAA,KAAA,CAAA;AACX,GAAA,EAEC,OAAOnC,OAAA,KAAY,UACjB,GAAAA,OAAA,EAED,kBAAA8F,KAAA,CAAAM,aAAA,CAAC2B,IAAA,EAAA;AACClB,IAAAA,KAAO,EAAA;MACLmB,YAAYC,UAAW,CAAAC,iBAAA;MACvBC,UAAUF,UAAW,CAAAG,eAAA;MACrBC,YAAYJ,UAAW,CAAAK,iBAAA;MACvBrD,OAAOD,YAAa,CAAAC,KAAAA;AACtB,KAAA;GAAA,EAECjF,OACH,CAEJ,CACA,iBAAA8F,KAAA,CAAAM,aAAA,CAACmC,KAAA,EAAA;AACCC,IAAAA,MAAA,EAAQ;AAAEC,MAAAA,GAAA,EAAKlD,KAAAA;KAAM;IAErBsB,KAAO,EAAAQ,cAAA,CAAAA,cAAA,CAAA;AACLzE,MAAAA,KAAO,EAAA,EAAA;AACPC,MAAAA,MAAQ,EAAA,CAAA;MACRlC,QAAQA,MAAS,GAAA,CAAA;KACdQ,EAAAA,WAAA,GACAD,gBAAA,CAAA;AACL,GACF,CACF,CACF,CACF,CAEA,kBAAA4E,KAAA,CAAAM,aAAA,CAAAN,KAAA,CAAAoB,QAAA,EAAA,IAAE,CAEN,CAAA,CAAA;AAEJ,CAAA;;;;"}
1
+ {"version":3,"file":"Popover.js","sources":["../../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import React, { useState, useMemo, isValidElement, useEffect, useRef } from \"react\";\nimport { Text, View, TouchableWithoutFeedback, GestureResponderEvent, Animated, Image, Dimensions } from \"react-native\";\nimport { RedsPopover } from \"./interface/index\";\nimport { ModalWrapper } from \"./component\";\nimport { darkColor, lightColor, typography } from \"@xhsreds/reds-token-next\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nimport { Portal } from \"../Portal\";\nconst defaultValue = -9999;\n\nexport default ({\n mode = \"light\",\n opacity = 0,\n content,\n children,\n isControl = false,\n placement = \"top\",\n closeOnClickAgain = true,\n trigger = \"click\",\n zIndex = 1000,\n visible,\n onVisibleChange,\n onClickMask: _onClickMask,\n popContainerStyle = {},\n arrowStyles: propsArrowStyles,\n offset,\n duration,\n hostName,\n maxWidth,\n arrowOffset,\n}: RedsPopover) => {\n useMounted(\"Popover\");\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 [layout, setLayout] = useState({\n x: defaultValue,\n y: defaultValue,\n width: 0,\n height: 0,\n });\n\n const [floatingLayout, setFloatingLayout] = useState({\n x: defaultValue,\n y: defaultValue,\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 if (layout.x !== defaultValue) {\n Animated.timing(progress, {\n toValue: 1,\n duration: duration ?? 400,\n useNativeDriver: false,\n }).start();\n }\n } else {\n Animated.timing(progress, {\n toValue: 0,\n duration: duration ?? 400,\n useNativeDriver: false,\n }).start();\n }\n }, [_visible, layout]);\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 let color: typeof lightColor | typeof darkColor = lightColor;\n if (mode === \"light\") color = lightColor;\n if (mode === \"dark\") color = darkColor;\n return {\n backgroundColor: color.Fill5,\n color: color.White,\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 {_visible && layout.x !== defaultValue ? (\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 <>\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 paddingHorizontal: 12,\n paddingVertical: 7,\n maxWidth: maxWidth || 280,\n minHeight: 30,\n borderRadius: 8,\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 {typeof content === \"function\" ? (\n (content as any)()\n ) : (\n <Text\n style={{\n fontWeight: typography.B2LooseFontWeight,\n fontSize: typography.B2LooseFontSize,\n lineHeight: typography.B2LooseLineHeight,\n color: popoverStyle.color,\n }}\n >\n {content}\n </Text>\n )}\n </Animated.View>\n <Image\n source={{ uri: angle }}\n // @ts-expect-error\n style={{\n width: 14,\n height: 6,\n zIndex: zIndex + 9,\n ...arrowStyles,\n ...propsArrowStyles,\n }}\n />\n </>\n </ModalWrapper>\n </Portal>\n ) : (\n <></>\n )}\n </>\n );\n};\n"],"names":["defaultValue","_ref","_ref$mode","mode","_ref$opacity","opacity","content","children","_ref$isControl","isControl","_ref$placement","placement","_ref$closeOnClickAgai","closeOnClickAgain","_ref$trigger","trigger","_ref$zIndex","zIndex","visible","onVisibleChange","_onClickMask","onClickMask","_ref$popContainerStyl","popContainerStyle","propsArrowStyles","arrowStyles","offset","duration","hostName","maxWidth","arrowOffset","useMounted","needModal","useMemo","_useState","useState","_useState2","_slicedToArray","_visible","setVisible","progress","useRef","Animated","Value","current","childRef","_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","color","lightColor","darkColor","backgroundColor","Fill5","White","angle","_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","Fragment","onLayout","nativeEvent","_objectSpread","paddingHorizontal","paddingVertical","minHeight","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","Text","fontWeight","typography","B2LooseFontWeight","fontSize","B2LooseFontSize","lineHeight","B2LooseLineHeight","Image","source","uri"],"mappings":"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"}