@xhsreds/reds-rn-next 0.11.1-premode-test.1 → 0.11.1-web202512221520

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 (174) 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-21.json +1 -1
  12. package/coverage/.tmp/coverage-22.json +1 -1
  13. package/coverage/.tmp/coverage-23.json +1 -1
  14. package/coverage/.tmp/coverage-24.json +1 -1
  15. package/coverage/.tmp/coverage-25.json +1 -1
  16. package/coverage/.tmp/coverage-26.json +1 -1
  17. package/coverage/.tmp/coverage-27.json +1 -1
  18. package/coverage/.tmp/coverage-3.json +1 -1
  19. package/coverage/.tmp/coverage-34.json +1 -1
  20. package/coverage/.tmp/coverage-35.json +1 -1
  21. package/coverage/.tmp/coverage-37.json +1 -1
  22. package/coverage/.tmp/coverage-38.json +1 -1
  23. package/coverage/.tmp/coverage-39.json +1 -1
  24. package/coverage/.tmp/coverage-4.json +1 -1
  25. package/coverage/.tmp/coverage-40.json +1 -1
  26. package/coverage/.tmp/coverage-41.json +1 -1
  27. package/coverage/.tmp/coverage-5.json +1 -1
  28. package/coverage/.tmp/coverage-6.json +1 -1
  29. package/coverage/.tmp/coverage-7.json +1 -1
  30. package/coverage/.tmp/coverage-8.json +1 -1
  31. package/coverage/.tmp/coverage-9.json +1 -1
  32. package/lib/cjs/_chunks/BiKD1VTc.js.map +1 -1
  33. package/lib/cjs/components/ActionSheets/ActionSheets.js.map +1 -1
  34. package/lib/cjs/components/ActionablePopover/ActionablePopover.js +3 -0
  35. package/lib/cjs/components/ActionablePopover/ActionablePopover.js.map +1 -1
  36. package/lib/cjs/components/Alert/Alert.js +12 -9
  37. package/lib/cjs/components/Alert/Alert.js.map +1 -1
  38. package/lib/cjs/components/Alert/hooks/alert.js +1 -0
  39. package/lib/cjs/components/Alert/hooks/alert.js.map +1 -1
  40. package/lib/cjs/components/Alert/index.js +1 -0
  41. package/lib/cjs/components/Alert/index.js.map +1 -1
  42. package/lib/cjs/components/Button/Viewable.web.js +47 -0
  43. package/lib/cjs/components/Button/Viewable.web.js.map +1 -0
  44. package/lib/cjs/components/Collapse/Item/Item.web.js +164 -0
  45. package/lib/cjs/components/Collapse/Item/Item.web.js.map +1 -0
  46. package/lib/cjs/components/Image/index.js +1 -1
  47. package/lib/cjs/components/Image/index.js.map +1 -1
  48. package/lib/cjs/components/NoticeBar/NoticeBar.js +12 -6
  49. package/lib/cjs/components/NoticeBar/NoticeBar.js.map +1 -1
  50. package/lib/cjs/components/PickerView/PickerView.js +2 -1
  51. package/lib/cjs/components/PickerView/PickerView.js.map +1 -1
  52. package/lib/cjs/components/PickerView/Wheel.js +22 -2
  53. package/lib/cjs/components/PickerView/Wheel.js.map +1 -1
  54. package/lib/cjs/components/Popover/Popover.js +24 -28
  55. package/lib/cjs/components/Popover/Popover.js.map +1 -1
  56. package/lib/cjs/components/ProgressIndicator/ProgressIndicator.js +3 -3
  57. package/lib/cjs/components/ProgressIndicator/ProgressIndicator.js.map +1 -1
  58. package/lib/cjs/components/Radio/Radio.js +1 -0
  59. package/lib/cjs/components/Radio/Radio.js.map +1 -1
  60. package/lib/cjs/components/Radio/index.js +1 -0
  61. package/lib/cjs/components/Radio/index.js.map +1 -1
  62. package/lib/cjs/components/Sheets/AnimatedSheets.js +13 -2
  63. package/lib/cjs/components/Sheets/AnimatedSheets.js.map +1 -1
  64. package/lib/cjs/components/SlimAlert/Alert.js +12 -8
  65. package/lib/cjs/components/SlimAlert/Alert.js.map +1 -1
  66. package/lib/cjs/components/SlimAlert/PortalHost.js +28 -0
  67. package/lib/cjs/components/SlimAlert/PortalHost.js.map +1 -0
  68. package/lib/cjs/components/SlimAlert/PortalHost.web.js +12171 -0
  69. package/lib/cjs/components/SlimAlert/PortalHost.web.js.map +1 -0
  70. package/lib/cjs/components/SlimAlert/index.js +1 -0
  71. package/lib/cjs/components/SlimAlert/index.js.map +1 -1
  72. package/lib/cjs/components/Tag/Tag.js +10 -3
  73. package/lib/cjs/components/Tag/Tag.js.map +1 -1
  74. package/lib/cjs/components/TextField/TextField.js +22 -12
  75. package/lib/cjs/components/TextField/TextField.js.map +1 -1
  76. package/lib/cjs/components/TextView/TextView.js +4 -2
  77. package/lib/cjs/components/TextView/TextView.js.map +1 -1
  78. package/lib/cjs/components/Toast/Toast.js +1 -1
  79. package/lib/cjs/components/Toast/Toast.js.map +1 -1
  80. package/lib/cjs/index.js +1 -0
  81. package/lib/cjs/index.js.map +1 -1
  82. package/lib/cjs/pvCount/pvData.js +11 -6
  83. package/lib/cjs/pvCount/pvData.js.map +1 -1
  84. package/lib/esm/_chunks/Dr5vetot.js.map +1 -1
  85. package/lib/esm/components/ActionSheets/ActionSheets.js.map +1 -1
  86. package/lib/esm/components/ActionablePopover/ActionablePopover.js +3 -0
  87. package/lib/esm/components/ActionablePopover/ActionablePopover.js.map +1 -1
  88. package/lib/esm/components/Alert/Alert.js +12 -9
  89. package/lib/esm/components/Alert/Alert.js.map +1 -1
  90. package/lib/esm/components/Alert/hooks/alert.js +1 -0
  91. package/lib/esm/components/Alert/hooks/alert.js.map +1 -1
  92. package/lib/esm/components/Alert/index.js +1 -0
  93. package/lib/esm/components/Alert/index.js.map +1 -1
  94. package/lib/esm/components/Button/Viewable.web.js +43 -0
  95. package/lib/esm/components/Button/Viewable.web.js.map +1 -0
  96. package/lib/esm/components/Collapse/Item/Item.web.js +160 -0
  97. package/lib/esm/components/Collapse/Item/Item.web.js.map +1 -0
  98. package/lib/esm/components/Image/index.js +1 -1
  99. package/lib/esm/components/Image/index.js.map +1 -1
  100. package/lib/esm/components/NoticeBar/NoticeBar.js +13 -7
  101. package/lib/esm/components/NoticeBar/NoticeBar.js.map +1 -1
  102. package/lib/esm/components/PickerView/PickerView.js +2 -1
  103. package/lib/esm/components/PickerView/PickerView.js.map +1 -1
  104. package/lib/esm/components/PickerView/Wheel.js +23 -3
  105. package/lib/esm/components/PickerView/Wheel.js.map +1 -1
  106. package/lib/esm/components/Popover/Popover.js +24 -28
  107. package/lib/esm/components/Popover/Popover.js.map +1 -1
  108. package/lib/esm/components/ProgressIndicator/ProgressIndicator.js +4 -4
  109. package/lib/esm/components/ProgressIndicator/ProgressIndicator.js.map +1 -1
  110. package/lib/esm/components/Radio/Radio.js +1 -0
  111. package/lib/esm/components/Radio/Radio.js.map +1 -1
  112. package/lib/esm/components/Radio/index.js +1 -0
  113. package/lib/esm/components/Radio/index.js.map +1 -1
  114. package/lib/esm/components/Sheets/AnimatedSheets.js +13 -2
  115. package/lib/esm/components/Sheets/AnimatedSheets.js.map +1 -1
  116. package/lib/esm/components/SlimAlert/Alert.js +12 -8
  117. package/lib/esm/components/SlimAlert/Alert.js.map +1 -1
  118. package/lib/esm/components/SlimAlert/PortalHost.js +24 -0
  119. package/lib/esm/components/SlimAlert/PortalHost.js.map +1 -0
  120. package/lib/esm/components/SlimAlert/PortalHost.web.js +12167 -0
  121. package/lib/esm/components/SlimAlert/PortalHost.web.js.map +1 -0
  122. package/lib/esm/components/SlimAlert/index.js +1 -0
  123. package/lib/esm/components/SlimAlert/index.js.map +1 -1
  124. package/lib/esm/components/Tag/Tag.js +12 -5
  125. package/lib/esm/components/Tag/Tag.js.map +1 -1
  126. package/lib/esm/components/TextField/TextField.js +22 -12
  127. package/lib/esm/components/TextField/TextField.js.map +1 -1
  128. package/lib/esm/components/TextView/TextView.js +4 -2
  129. package/lib/esm/components/TextView/TextView.js.map +1 -1
  130. package/lib/esm/components/Toast/Toast.js +2 -2
  131. package/lib/esm/components/Toast/Toast.js.map +1 -1
  132. package/lib/esm/index.js +1 -0
  133. package/lib/esm/index.js.map +1 -1
  134. package/lib/esm/pvCount/pvData.js +11 -6
  135. package/lib/esm/pvCount/pvData.js.map +1 -1
  136. package/lib/src/components/Button/Viewable.web.d.ts +3 -0
  137. package/lib/src/components/Collapse/Item/Item.web.d.ts +7 -0
  138. package/lib/src/components/Form/interface/index.d.ts +0 -1
  139. package/lib/src/components/Image/interface/index.d.ts +0 -2
  140. package/lib/src/components/Search/interface/index.d.ts +0 -2
  141. package/lib/src/components/Slider/interface/index.d.ts +0 -2
  142. package/lib/src/components/SlimAlert/Alert.d.ts +1 -1
  143. package/lib/src/components/SlimAlert/PortalHost.d.ts +6 -0
  144. package/lib/src/components/SlimAlert/PortalHost.web.d.ts +6 -0
  145. package/lib/src/components/Video/interface/index.d.ts +0 -2
  146. package/lib/types/components/Button/Viewable.web.d.ts +3 -0
  147. package/lib/types/components/Collapse/Item/Item.web.d.ts +7 -0
  148. package/lib/types/components/SlimAlert/Alert.d.ts +1 -1
  149. package/lib/types/components/SlimAlert/PortalHost.d.ts +6 -0
  150. package/lib/types/components/SlimAlert/PortalHost.web.d.ts +6 -0
  151. package/package.json +9 -5
  152. package/src/components/ActionSheets/ActionSheets.tsx +0 -1
  153. package/src/components/ActionablePopover/ActionablePopover.tsx +3 -0
  154. package/src/components/Alert/Alert.tsx +5 -5
  155. package/src/components/Button/Viewable.web.tsx +44 -0
  156. package/src/components/Collapse/Item/Item.web.tsx +150 -0
  157. package/src/components/DatePicker/interface/index.ts +1 -0
  158. package/src/components/Image/index.ts +1 -1
  159. package/src/components/NoticeBar/NoticeBar.tsx +29 -5
  160. package/src/components/PickerView/PickerView.tsx +1 -1
  161. package/src/components/PickerView/Wheel.tsx +32 -3
  162. package/src/components/Popover/Popover.tsx +24 -26
  163. package/src/components/ProgressIndicator/ProgressIndicator.tsx +4 -12
  164. package/src/components/Sheets/AnimatedSheets.tsx +7 -3
  165. package/src/components/SlimAlert/Alert.tsx +9 -7
  166. package/src/components/SlimAlert/PortalHost.tsx +7 -0
  167. package/src/components/SlimAlert/PortalHost.web.tsx +11 -0
  168. package/src/components/Tag/Tag.tsx +7 -3
  169. package/src/components/TextField/TextField.tsx +19 -8
  170. package/src/components/TextView/TextView.tsx +15 -3
  171. package/src/components/Toast/Toast.tsx +2 -2
  172. package/src/i18n/@types/resources.d.ts +27 -27
  173. package/src/i18n/index.json +31 -31
  174. package/tsconfig.dts.json +1 -1
@@ -5,6 +5,7 @@ export { i as SlimAlertType } from '../../_chunks/CEVHUUrL.js';
5
5
  import '../../_chunks/ZEfofTDH.js';
6
6
  import 'react';
7
7
  import 'react-native';
8
+ import './PortalHost.js';
8
9
  import '../Portal/core/Portal.js';
9
10
  import '../Portal/core/hooks/usePortal.js';
10
11
  import '../../_chunks/CDM4vPRi.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,6 +1,6 @@
1
- import { _ as _slicedToArray } from '../../_chunks/ZEfofTDH.js';
1
+ import { _ as _slicedToArray, f as _defineProperty } from '../../_chunks/ZEfofTDH.js';
2
2
  import React, { memo, forwardRef, useState, useImperativeHandle, useMemo } from 'react';
3
- import { StyleSheet, View, TouchableNativeFeedback, Text } from 'react-native';
3
+ import { Platform, StyleSheet, View, TouchableNativeFeedback, Text } from 'react-native';
4
4
  import { T as TagDefaultProps } from '../../_chunks/rg8iK2hL.js';
5
5
  import { typography, lightColor, alwaysColor } from '@xhsreds/reds-token-next';
6
6
  import '../ConfigProvider/hooks/ConfigCache/ConfigCache.js';
@@ -90,6 +90,9 @@ var getSizeStyles = function getSizeStyles(icon, afterIcon, size) {
90
90
  };
91
91
  return sizeStyles[size || "medium"];
92
92
  };
93
+ var TouchableStyles = Platform.OS === "web" ? {
94
+ border: "none"
95
+ } : {};
93
96
  var getTextSizeStyles = function getTextSizeStyles(icon, afterIcon, size) {
94
97
  var sizeStyles = {
95
98
  mini: {
@@ -198,7 +201,8 @@ var Tag = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(function (props, ref) {
198
201
  style: [styles.tag, tagStyle, props.style]
199
202
  }, /* @__PURE__ */React.createElement(TouchableNativeFeedback, {
200
203
  disabled: disabled,
201
- onPress: onClick
204
+ onPress: onClick,
205
+ style: TouchableStyles
202
206
  }, /* @__PURE__ */React.createElement(View, {
203
207
  style: {
204
208
  flexDirection: "row",
@@ -222,12 +226,15 @@ var Tag = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(function (props, ref) {
222
226
  alignItems: "center",
223
227
  height: "100%"
224
228
  }
225
- }, afterIcon))), closeabled && /* @__PURE__ */React.createElement(TouchableNativeFeedback, {
229
+ }, afterIcon))), closeabled &&
230
+ // @ts-expect-error
231
+ /* @__PURE__ */
232
+ React.createElement(TouchableNativeFeedback, _defineProperty({
226
233
  onPress: handleClose,
227
234
  style: {
228
235
  marginLeft: 3
229
236
  }
230
- }, closeIcon));
237
+ }, "style", TouchableStyles), closeIcon));
231
238
  }));
232
239
  var styles = StyleSheet.create({
233
240
  tag: {
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.js","sources":["../../../../src/components/Tag/Tag.tsx"],"sourcesContent":["import React, { useState, useMemo, useImperativeHandle, forwardRef, memo, FunctionComponent } from \"react\";\nimport { View, Text, StyleSheet, GestureResponderEvent, TouchableNativeFeedback } from \"react-native\";\nimport { RedsTag, TagDefaultProps } from \"./interface\";\nimport { lightColor, typography, alwaysColor } from \"@xhsreds/reds-token-next\";\nimport { useThemeColor } from \"../ConfigProvider\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\n\nconst getTypeStyles = (themeColor: any) => ({\n primary: {\n backgroundColor: lightColor.Primary2,\n color: lightColor.Primary,\n borderColor: lightColor.Primary,\n },\n default: {\n backgroundColor: themeColor.Fill1,\n color: themeColor.Paragraph,\n borderColor: themeColor.Separator2,\n },\n warning: {\n backgroundColor: lightColor.Warning2,\n color: lightColor.Warning,\n borderColor: lightColor.Warning,\n },\n success: {\n backgroundColor: lightColor.Success2,\n color: lightColor.Success,\n borderColor: lightColor.Success,\n },\n info: {\n backgroundColor: lightColor.Info2,\n color: lightColor.Info,\n borderColor: lightColor.Info,\n },\n ghost: {\n color: alwaysColor.White,\n borderColor: alwaysColor.LightParagraph,\n borderWidth: 0.5,\n borderStyle: \"solid\",\n backgroundColor: alwaysColor.LightFill3,\n },\n});\n\nconst shapeStyles: { [key: string]: any } = {\n square: {},\n round: { borderRadius: 999 },\n mark: { borderRadius: 999, borderTopLeftRadius: 0, borderBottomLeftRadius: 0 },\n};\n\nconst getSizeStyles = (icon: any, afterIcon: any, size: string) => {\n const sizeStyles = {\n mini: {\n fontSize: typography.C3FontSize,\n paddingVertical: 2,\n paddingLeft: icon ? 2 : 4,\n paddingRight: afterIcon ? 2 : 4,\n borderRadius: 4,\n },\n small: {\n fontSize: typography.C3FontSize,\n paddingVertical: 3,\n paddingLeft: icon ? 4 : 6,\n paddingRight: afterIcon ? 4 : 6,\n borderRadius: 4,\n },\n medium: {\n fontSize: typography.C2FontSize,\n paddingVertical: 5,\n paddingLeft: icon ? 8 : 10,\n paddingRight: afterIcon ? 8 : 10,\n borderRadius: 6,\n },\n large: {\n fontSize: typography.B2FontSize,\n paddingVertical: 8,\n paddingLeft: icon ? 6 : 8,\n paddingRight: afterIcon ? 6 : 8,\n borderRadius: 6,\n },\n };\n // @ts-ignore\n return sizeStyles[size || \"medium\"];\n};\n\nconst getTextSizeStyles = (icon: any, afterIcon: any, size: string) => {\n const sizeStyles = {\n mini: {\n fontSize: typography.C3FontSize,\n },\n small: {\n fontSize: typography.C3FontSize,\n },\n medium: {\n fontSize: typography.C2FontSize,\n },\n large: {\n fontSize: typography.B2FontSize,\n },\n };\n // @ts-ignore\n return sizeStyles[size || \"medium\"];\n};\n\nconst Tag: FunctionComponent<RedsTag> = memo(\n forwardRef((props: RedsTag, ref) => {\n const {\n content,\n type = TagDefaultProps.type,\n size = TagDefaultProps.size,\n plain = TagDefaultProps.plain,\n borderRadius,\n disabled = TagDefaultProps.disabled,\n shape = TagDefaultProps.shape,\n closeabled = TagDefaultProps.closeabled,\n icon,\n afterIcon,\n closeIcon,\n onClose,\n children,\n onClick,\n } = props;\n useMounted(\"Tag\");\n const [visible, setVisible] = useState<boolean>(true);\n\n const themeColor = useThemeColor(\"Tag\");\n\n useImperativeHandle(ref, () => ({\n setVisible,\n }));\n\n const typeStyles = getTypeStyles(themeColor);\n\n const tagStyle = useMemo(() => {\n const style: any = {\n fontWeight: typography.C3FontWeight,\n alignItems: \"center\",\n justifyContent: \"center\",\n borderWidth: 0.5,\n borderColor: \"transparent\",\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n userSelect: \"none\",\n opacity: disabled ? 0.5 : 1,\n alignSelf: \"flex-start\",\n flexShrink: 0,\n flexDirection: \"row\",\n paddingVertical: 0,\n includeFontPadding: false,\n };\n if (type) {\n const currentType = type as keyof typeof typeStyles;\n Object.assign(\n style,\n plain\n ? {\n backgroundColor: \"transparent\",\n borderColor: typeStyles[currentType].borderColor,\n color: typeStyles[currentType].color,\n }\n : {\n backgroundColor: typeStyles[currentType].backgroundColor,\n borderColor: \"transparent\",\n color: typeStyles[currentType].color,\n },\n );\n }\n\n if (size) {\n Object.assign(style, getSizeStyles(icon, afterIcon, size));\n }\n\n if (borderRadius) {\n style.borderRadius = borderRadius;\n } else if (shape) {\n Object.assign(style, shapeStyles[shape]);\n }\n\n return style;\n }, [type, size, plain, borderRadius, shape, disabled]);\n\n const textStyle = useMemo(() => {\n return {\n color: type ? typeStyles[type as keyof typeof typeStyles].color : undefined,\n includeFontPadding: false,\n paddingLeft: icon && (props.size === \"large\" || props.size === \"medium\") ? 2 : 0,\n paddingRight: (afterIcon || closeIcon) && (props.size === \"large\" || props.size === \"medium\") ? 2 : 0,\n textAlignVertical: \"center\" as \"center\",\n };\n }, [type, size]);\n\n const handleClose = (event: GestureResponderEvent) => {\n if (!disabled) {\n setVisible(false);\n onClose && onClose(event);\n }\n };\n\n if (!visible) return null;\n\n return (\n <View style={[styles.tag, tagStyle, props.style]}>\n <TouchableNativeFeedback disabled={disabled} onPress={onClick}>\n <View style={{ flexDirection: \"row\", alignItems: \"center\" }}>\n {icon && (\n <View style={{ marginRight: 3, flexDirection: \"row\", alignItems: \"center\", height: \"100%\" }}>{icon}</View>\n )}\n {!content ? (\n <Text style={[textStyle, getTextSizeStyles(icon, afterIcon, size), props.textStyle]}>{children}</Text>\n ) : (\n <Text style={[textStyle, getTextSizeStyles(icon, afterIcon, size), props.textStyle]}>\n {typeof content === \"function\" ? content({}) : content}\n </Text>\n )}\n {afterIcon && (\n <View style={{ marginLeft: 3, flexDirection: \"row\", alignItems: \"center\", height: \"100%\" }}>\n {afterIcon}\n </View>\n )}\n </View>\n </TouchableNativeFeedback>\n {closeabled && (\n <TouchableNativeFeedback onPress={handleClose} style={{ marginLeft: 3 }}>\n {closeIcon}\n </TouchableNativeFeedback>\n )}\n </View>\n );\n }),\n);\n\nconst styles = StyleSheet.create({\n tag: {\n alignItems: \"center\",\n justifyContent: \"center\",\n borderWidth: 0.5,\n borderColor: \"transparent\",\n paddingHorizontal: 10,\n flexDirection: \"row\",\n },\n});\n\nexport default Tag;\n"],"names":["getTypeStyles","themeColor","primary","backgroundColor","lightColor","Primary2","color","Primary","borderColor","Fill1","Paragraph","Separator2","warning","Warning2","Warning","success","Success2","Success","info","Info2","Info","ghost","alwaysColor","White","LightParagraph","borderWidth","borderStyle","LightFill3","shapeStyles","square","round","borderRadius","mark","borderTopLeftRadius","borderBottomLeftRadius","getSizeStyles","icon","afterIcon","size","sizeStyles","mini","fontSize","typography","C3FontSize","paddingVertical","paddingLeft","paddingRight","small","medium","C2FontSize","large","B2FontSize","getTextSizeStyles","Tag","memo","forwardRef","props","ref","content","_props$type","type","TagDefaultProps","_props$size","_props$plain","plain","_props$disabled","disabled","_props$shape","shape","_props$closeabled","closeabled","closeIcon","onClose","children","onClick","useMounted","_useState","useState","_useState2","_slicedToArray","visible","setVisible","useThemeColor","useImperativeHandle","typeStyles","tagStyle","useMemo","style","fontWeight","C3FontWeight","alignItems","justifyContent","cursor","userSelect","opacity","alignSelf","flexShrink","flexDirection","includeFontPadding","currentType","Object","assign","textStyle","textAlignVertical","handleClose","event","React","createElement","View","styles","tag","TouchableNativeFeedback","onPress","marginRight","height","Text","marginLeft","StyleSheet","create","paddingHorizontal"],"mappings":"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"}
1
+ {"version":3,"file":"Tag.js","sources":["../../../../src/components/Tag/Tag.tsx"],"sourcesContent":["import React, { useState, useMemo, useImperativeHandle, forwardRef, memo, FunctionComponent } from \"react\";\nimport { View, Text, StyleSheet, GestureResponderEvent, TouchableNativeFeedback, Platform } from \"react-native\";\nimport { RedsTag, TagDefaultProps } from \"./interface\";\nimport { lightColor, typography, alwaysColor } from \"@xhsreds/reds-token-next\";\nimport { useThemeColor } from \"../ConfigProvider\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\n\nconst getTypeStyles = (themeColor: any) => ({\n primary: {\n backgroundColor: lightColor.Primary2,\n color: lightColor.Primary,\n borderColor: lightColor.Primary,\n },\n default: {\n backgroundColor: themeColor.Fill1,\n color: themeColor.Paragraph,\n borderColor: themeColor.Separator2,\n },\n warning: {\n backgroundColor: lightColor.Warning2,\n color: lightColor.Warning,\n borderColor: lightColor.Warning,\n },\n success: {\n backgroundColor: lightColor.Success2,\n color: lightColor.Success,\n borderColor: lightColor.Success,\n },\n info: {\n backgroundColor: lightColor.Info2,\n color: lightColor.Info,\n borderColor: lightColor.Info,\n },\n ghost: {\n color: alwaysColor.White,\n borderColor: alwaysColor.LightParagraph,\n borderWidth: 0.5,\n borderStyle: \"solid\",\n backgroundColor: alwaysColor.LightFill3,\n },\n});\n\nconst shapeStyles: { [key: string]: any } = {\n square: {},\n round: { borderRadius: 999 },\n mark: { borderRadius: 999, borderTopLeftRadius: 0, borderBottomLeftRadius: 0 },\n};\n\nconst getSizeStyles = (icon: any, afterIcon: any, size: string) => {\n const sizeStyles = {\n mini: {\n fontSize: typography.C3FontSize,\n paddingVertical: 2,\n paddingLeft: icon ? 2 : 4,\n paddingRight: afterIcon ? 2 : 4,\n borderRadius: 4,\n },\n small: {\n fontSize: typography.C3FontSize,\n paddingVertical: 3,\n paddingLeft: icon ? 4 : 6,\n paddingRight: afterIcon ? 4 : 6,\n borderRadius: 4,\n },\n medium: {\n fontSize: typography.C2FontSize,\n paddingVertical: 5,\n paddingLeft: icon ? 8 : 10,\n paddingRight: afterIcon ? 8 : 10,\n borderRadius: 6,\n },\n large: {\n fontSize: typography.B2FontSize,\n paddingVertical: 8,\n paddingLeft: icon ? 6 : 8,\n paddingRight: afterIcon ? 6 : 8,\n borderRadius: 6,\n },\n };\n // @ts-ignore\n return sizeStyles[size || \"medium\"];\n};\n\nconst TouchableStyles = Platform.OS === \"web\" ? { border: \"none\" } : {};\n\nconst getTextSizeStyles = (icon: any, afterIcon: any, size: string) => {\n const sizeStyles = {\n mini: {\n fontSize: typography.C3FontSize,\n },\n small: {\n fontSize: typography.C3FontSize,\n },\n medium: {\n fontSize: typography.C2FontSize,\n },\n large: {\n fontSize: typography.B2FontSize,\n },\n };\n // @ts-ignore\n return sizeStyles[size || \"medium\"];\n};\n\nconst Tag: FunctionComponent<RedsTag> = memo(\n forwardRef((props: RedsTag, ref) => {\n const {\n content,\n type = TagDefaultProps.type,\n size = TagDefaultProps.size,\n plain = TagDefaultProps.plain,\n borderRadius,\n disabled = TagDefaultProps.disabled,\n shape = TagDefaultProps.shape,\n closeabled = TagDefaultProps.closeabled,\n icon,\n afterIcon,\n closeIcon,\n onClose,\n children,\n onClick,\n } = props;\n useMounted(\"Tag\");\n const [visible, setVisible] = useState<boolean>(true);\n\n const themeColor = useThemeColor(\"Tag\");\n\n useImperativeHandle(ref, () => ({\n setVisible,\n }));\n\n const typeStyles = getTypeStyles(themeColor);\n\n const tagStyle = useMemo(() => {\n const style: any = {\n fontWeight: typography.C3FontWeight,\n alignItems: \"center\",\n justifyContent: \"center\",\n borderWidth: 0.5,\n borderColor: \"transparent\",\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n userSelect: \"none\",\n opacity: disabled ? 0.5 : 1,\n alignSelf: \"flex-start\",\n flexShrink: 0,\n flexDirection: \"row\",\n paddingVertical: 0,\n includeFontPadding: false,\n };\n if (type) {\n const currentType = type as keyof typeof typeStyles;\n Object.assign(\n style,\n plain\n ? {\n backgroundColor: \"transparent\",\n borderColor: typeStyles[currentType].borderColor,\n color: typeStyles[currentType].color,\n }\n : {\n backgroundColor: typeStyles[currentType].backgroundColor,\n borderColor: \"transparent\",\n color: typeStyles[currentType].color,\n },\n );\n }\n\n if (size) {\n Object.assign(style, getSizeStyles(icon, afterIcon, size));\n }\n\n if (borderRadius) {\n style.borderRadius = borderRadius;\n } else if (shape) {\n Object.assign(style, shapeStyles[shape]);\n }\n\n return style;\n }, [type, size, plain, borderRadius, shape, disabled]);\n\n const textStyle = useMemo(() => {\n return {\n color: type ? typeStyles[type as keyof typeof typeStyles].color : undefined,\n includeFontPadding: false,\n paddingLeft: icon && (props.size === \"large\" || props.size === \"medium\") ? 2 : 0,\n paddingRight: (afterIcon || closeIcon) && (props.size === \"large\" || props.size === \"medium\") ? 2 : 0,\n textAlignVertical: \"center\" as \"center\",\n };\n }, [type, size]);\n\n const handleClose = (event: GestureResponderEvent) => {\n if (!disabled) {\n setVisible(false);\n onClose && onClose(event);\n }\n };\n\n if (!visible) return null;\n\n return (\n <View style={[styles.tag, tagStyle, props.style]}>\n {/* @ts-expect-error */}\n <TouchableNativeFeedback disabled={disabled} onPress={onClick} style={TouchableStyles}>\n <View style={{ flexDirection: \"row\", alignItems: \"center\" }}>\n {icon && (\n <View style={{ marginRight: 3, flexDirection: \"row\", alignItems: \"center\", height: \"100%\" }}>{icon}</View>\n )}\n {!content ? (\n <Text style={[textStyle, getTextSizeStyles(icon, afterIcon, size), props.textStyle]}>{children}</Text>\n ) : (\n <Text style={[textStyle, getTextSizeStyles(icon, afterIcon, size), props.textStyle]}>\n {typeof content === \"function\" ? content({}) : content}\n </Text>\n )}\n {afterIcon && (\n <View style={{ marginLeft: 3, flexDirection: \"row\", alignItems: \"center\", height: \"100%\" }}>\n {afterIcon}\n </View>\n )}\n </View>\n </TouchableNativeFeedback>\n {closeabled && (\n // @ts-expect-error\n <TouchableNativeFeedback onPress={handleClose} style={{ marginLeft: 3 }} style={TouchableStyles}>\n {closeIcon}\n </TouchableNativeFeedback>\n )}\n </View>\n );\n }),\n);\n\nconst styles = StyleSheet.create({\n tag: {\n alignItems: \"center\",\n justifyContent: \"center\",\n borderWidth: 0.5,\n borderColor: \"transparent\",\n paddingHorizontal: 10,\n flexDirection: \"row\",\n },\n});\n\nexport default Tag;\n"],"names":["getTypeStyles","themeColor","primary","backgroundColor","lightColor","Primary2","color","Primary","borderColor","Fill1","Paragraph","Separator2","warning","Warning2","Warning","success","Success2","Success","info","Info2","Info","ghost","alwaysColor","White","LightParagraph","borderWidth","borderStyle","LightFill3","shapeStyles","square","round","borderRadius","mark","borderTopLeftRadius","borderBottomLeftRadius","getSizeStyles","icon","afterIcon","size","sizeStyles","mini","fontSize","typography","C3FontSize","paddingVertical","paddingLeft","paddingRight","small","medium","C2FontSize","large","B2FontSize","TouchableStyles","Platform","OS","border","getTextSizeStyles","Tag","memo","forwardRef","props","ref","content","_props$type","type","TagDefaultProps","_props$size","_props$plain","plain","_props$disabled","disabled","_props$shape","shape","_props$closeabled","closeabled","closeIcon","onClose","children","onClick","useMounted","_useState","useState","_useState2","_slicedToArray","visible","setVisible","useThemeColor","useImperativeHandle","typeStyles","tagStyle","useMemo","style","fontWeight","C3FontWeight","alignItems","justifyContent","cursor","userSelect","opacity","alignSelf","flexShrink","flexDirection","includeFontPadding","currentType","Object","assign","textStyle","textAlignVertical","handleClose","event","React","createElement","View","styles","tag","TouchableNativeFeedback","onPress","marginRight","height","Text","marginLeft","_defineProperty","StyleSheet","create","paddingHorizontal"],"mappings":"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"}
@@ -16,7 +16,6 @@ import '../ConfigProvider/hooks/ConfigContext/ConfigContext.js';
16
16
  import '../../pvCount/pvData.js';
17
17
 
18
18
  var TextField = /*#__PURE__*/forwardRef(function (_ref, ref) {
19
- var _IconType$iconType;
20
19
  var type = _ref.type,
21
20
  _ref$modelValue = _ref.modelValue,
22
21
  modelValue = _ref$modelValue === void 0 ? "" : _ref$modelValue,
@@ -128,7 +127,10 @@ var TextField = /*#__PURE__*/forwardRef(function (_ref, ref) {
128
127
  }
129
128
  }, [modelValue, isControl]);
130
129
  useEffect(function () {
131
- setShowClear(clearable && focused && value.length > 0);
130
+ var newShowClear = clearable && focused && value.length > 0;
131
+ if (newShowClear !== showClear) {
132
+ setShowClear(newShowClear);
133
+ }
132
134
  }, [clearable, focused, value]);
133
135
  var CloseClear = useMemo(function () {
134
136
  if (colorMode === "light") {
@@ -142,6 +144,20 @@ var TextField = /*#__PURE__*/forwardRef(function (_ref, ref) {
142
144
  textInputRef: inputRef
143
145
  };
144
146
  });
147
+ var ClearIcon = useMemo(function () {
148
+ var _IconType$iconType;
149
+ return /* @__PURE__ */React.createElement(View, _objectSpread2({
150
+ style: [styles.rightItem, {
151
+ display: showClear ? "flex" : "none"
152
+ }],
153
+ testID: "clear-icon"
154
+ }, clearAccessibility), /* @__PURE__ */React.createElement(Icon, {
155
+ icon: CloseClear,
156
+ onClick: handleClear,
157
+ size: 20,
158
+ type: (_IconType$iconType = iconType) === null || _IconType$iconType === void 0 ? void 0 : _IconType$iconType.image
159
+ }));
160
+ }, [showClear, handleClear, clearAccessibility]);
145
161
  return /* @__PURE__ */React.createElement(View, {
146
162
  style: [isFormItem ? {} : styles.wrapper, style]
147
163
  }, /* @__PURE__ */React.createElement(View, {
@@ -151,7 +167,9 @@ var TextField = /*#__PURE__*/forwardRef(function (_ref, ref) {
151
167
  }, /* @__PURE__ */React.createElement(TextInput, _objectSpread2({
152
168
  testID: "text-input",
153
169
  ref: inputRef,
154
- style: [styles.input, inputStyle],
170
+ style: [styles.input, inputStyle, {
171
+ outline: "none"
172
+ }],
155
173
  value: value,
156
174
  autoFocus: autofocus,
157
175
  onChangeText: updateValue,
@@ -172,15 +190,7 @@ var TextField = /*#__PURE__*/forwardRef(function (_ref, ref) {
172
190
  inputRef === null || inputRef === void 0 || (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 || _inputRef$current2.focus();
173
191
  setFocused(true);
174
192
  }
175
- }, placeholder)), showClear && /* @__PURE__ */React.createElement(View, _objectSpread2({
176
- style: styles.rightItem,
177
- testID: "clear-icon"
178
- }, clearAccessibility), /* @__PURE__ */React.createElement(Icon, {
179
- icon: CloseClear,
180
- onClick: handleClear,
181
- size: 20,
182
- type: (_IconType$iconType = iconType) === null || _IconType$iconType === void 0 ? void 0 : _IconType$iconType.image
183
- })), showCount && maxLength && /* @__PURE__ */React.createElement(View, {
193
+ }, placeholder)), ClearIcon, showCount && maxLength && /* @__PURE__ */React.createElement(View, {
184
194
  style: styles.rightItem
185
195
  }, /* @__PURE__ */React.createElement(Text, {
186
196
  style: [styles.count, maxLengthStyle]
@@ -1 +1 @@
1
- {"version":3,"file":"TextField.js","sources":["../../../../src/components/TextField/TextField.tsx"],"sourcesContent":["import React, { useState, useRef, useMemo, useEffect, useCallback, forwardRef, useImperativeHandle } from \"react\";\nimport { View, TextInput, Text, ColorValue } from \"react-native\";\nimport { RedsTextField, TextFieldDefaultProps } from \"./interface\";\nimport createStyles from \"./styles\";\nimport runes from \"runes\";\nimport { Icon, IconType } from \"../Icon\";\nimport { useColorMode } from \"../ConfigProvider\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\n\nconst TextField = forwardRef(\n (\n {\n type,\n modelValue = \"\",\n clearable = false,\n maxLength,\n disabled = false,\n readonly,\n autofocus = false,\n showCount,\n placeholder,\n formatter,\n formatterTrigger,\n suffix,\n prefix,\n onFocus,\n onBlur,\n onChange,\n onClear,\n isFormItem,\n inputAlign,\n maxLengthStyle,\n inputStyle,\n style,\n placeholderStyle,\n onSubmitEditing,\n isControl = false, // 新增 prop,控制是否使用受控模式\n accessibility = {},\n clearAccessibility = {},\n placeholderTextColor,\n }: RedsTextField,\n ref,\n ) => {\n useMounted(\"TextField\");\n const styles = createStyles(disabled, inputAlign);\n const [focused, setFocused] = useState(autofocus);\n const [internalValue, setInternalValue] = useState(modelValue); // 用于不受控模式\n const [showClear, setShowClear] = useState(false);\n const inputRef = useRef<TextInput>(null);\n const colorMode = useColorMode();\n const [isComposing, setIsComposing] = useState(false);\n\n // 当前显示的值:受控模式下使用propsValue,不受控模式下使用internalValue\n const value = useMemo(() => {\n return isControl ? modelValue : internalValue;\n }, [modelValue, internalValue]);\n\n const updateValue = useCallback(\n (upValue: string, trigger: string = \"onChange\") => {\n let newValue = upValue;\n\n if (maxLength && runes(upValue).length > maxLength && !isComposing) {\n newValue = runes.substr(upValue, 0, maxLength);\n }\n\n if (formatter && formatterTrigger === trigger) {\n newValue = formatter(newValue);\n }\n\n if (onChange && newValue !== value) {\n onChange(newValue);\n }\n\n // 只有在不受控模式下才更新内部状态\n if (!isControl) {\n setInternalValue(newValue);\n }\n },\n [formatter, formatterTrigger, onChange, value, isControl, isComposing],\n );\n\n const handleClear = useCallback(() => {\n const newValue = \"\";\n if (onChange) {\n onChange(newValue);\n }\n if (!isControl) {\n setInternalValue(newValue);\n }\n onClear && onClear(value);\n }, [onChange, onClear, value, isControl]);\n\n const handleFocus = useCallback(() => {\n if (readonly) {\n inputRef.current?.blur();\n }\n setFocused(true);\n onFocus && onFocus(value);\n }, [onFocus, readonly, value]);\n\n const handleBlur = useCallback(() => {\n setFocused(false);\n setIsComposing(false);\n if (!readonly) {\n onBlur && onBlur(value);\n }\n }, [readonly, onBlur, value]);\n\n const handleCompositionStart = useCallback(() => {\n setIsComposing(true);\n }, []);\n\n const handleCompositionEnd = () => {\n setIsComposing(false);\n };\n\n // 当propsValue变化时,同步更新内部状态(仅不受控模式)\n useEffect(() => {\n if (!isControl) {\n setInternalValue(modelValue);\n }\n }, [modelValue, isControl]);\n\n useEffect(() => {\n setShowClear(clearable && focused && value.length > 0);\n }, [clearable, focused, value]);\n\n const CloseClear = useMemo(() => {\n if (colorMode === \"light\") {\n return \"https://picasso-static.xiaohongshu.com/fe-platform/451af80f830413a14a1fc5cdcb9b2e1401ca6f72.png\";\n } else {\n return \"https://picasso-static.xiaohongshu.com/fe-platform/c2d85533ba1c3496194d81cca563544bb7fd1d32.png\";\n }\n }, [colorMode]);\n\n useImperativeHandle(ref, () => ({\n textInputRef: inputRef,\n }));\n\n return (\n <View style={[isFormItem ? {} : styles.wrapper, style]}>\n <View style={[styles.container, styles.centerItem]}>\n {prefix}\n <View style={styles.inputWrapper}>\n <TextInput\n testID=\"text-input\"\n ref={inputRef}\n style={[styles.input, inputStyle]}\n value={value}\n autoFocus={autofocus}\n onChangeText={updateValue}\n onFocus={handleFocus}\n onBlur={handleBlur}\n editable={!readonly && !disabled}\n keyboardType={type}\n // placeholder={placeholder}\n selectionColor={styles.inputSelectionColor.color}\n placeholderTextColor={(placeholderTextColor || styles.inputPlaceHolder.color) as ColorValue}\n onSubmitEditing={onSubmitEditing}\n // @ts-ignore\n onCompositionStart={handleCompositionStart}\n onCompositionEnd={handleCompositionEnd}\n {...accessibility}\n />\n {/* 模拟 placeholder */}\n {!value && (\n <Text\n style={[styles.placeholder, placeholderStyle]}\n numberOfLines={1}\n onPress={() => {\n inputRef?.current?.focus();\n setFocused(true);\n }}\n >\n {placeholder}\n </Text>\n )}\n </View>\n {showClear && (\n <View style={styles.rightItem} testID=\"clear-icon\" {...clearAccessibility}>\n <Icon icon={CloseClear} onClick={handleClear} size={20} type={IconType.iconType?.image} />\n </View>\n )}\n {showCount && maxLength && (\n <View style={styles.rightItem}>\n <Text style={[styles.count, maxLengthStyle]}>{`${runes(value).length}/${maxLength}`}</Text>\n </View>\n )}\n {suffix}\n </View>\n </View>\n );\n },\n);\n\nTextField.defaultProps = TextFieldDefaultProps;\n\nexport default TextField;\n"],"names":["TextField","forwardRef","_ref","ref","_IconType$iconType","type","_ref$modelValue","modelValue","_ref$clearable","clearable","maxLength","_ref$disabled","disabled","readonly","_ref$autofocus","autofocus","showCount","placeholder","formatter","formatterTrigger","suffix","prefix","onFocus","onBlur","onChange","onClear","isFormItem","inputAlign","maxLengthStyle","inputStyle","style","placeholderStyle","onSubmitEditing","_ref$isControl","isControl","_ref$accessibility","accessibility","_ref$clearAccessibili","clearAccessibility","placeholderTextColor","useMounted","styles","createStyles","_useState","useState","_useState2","_slicedToArray","focused","setFocused","_useState3","_useState4","internalValue","setInternalValue","_useState5","_useState6","showClear","setShowClear","inputRef","useRef","colorMode","useColorMode","_useState7","_useState8","isComposing","setIsComposing","value","useMemo","updateValue","useCallback","upValue","trigger","arguments","length","undefined","newValue","runes","substr","handleClear","handleFocus","_inputRef$current","current","blur","handleBlur","handleCompositionStart","handleCompositionEnd","useEffect","CloseClear","useImperativeHandle","textInputRef","React","createElement","View","wrapper","container","centerItem","inputWrapper","TextInput","_objectSpread","testID","input","autoFocus","onChangeText","editable","keyboardType","selectionColor","inputSelectionColor","color","inputPlaceHolder","onCompositionStart","onCompositionEnd","Text","numberOfLines","onPress","_inputRef$current2","focus","rightItem","Icon","icon","onClick","size","IconType","image","count","concat","defaultProps","TextFieldDefaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"TextField.js","sources":["../../../../src/components/TextField/TextField.tsx"],"sourcesContent":["import React, { useState, useRef, useMemo, useEffect, useCallback, forwardRef, useImperativeHandle } from \"react\";\nimport { View, TextInput, Text, ColorValue, TextStyle } from \"react-native\";\nimport { RedsTextField, TextFieldDefaultProps } from \"./interface\";\nimport createStyles from \"./styles\";\nimport runes from \"runes\";\nimport { Icon, IconType } from \"../Icon\";\nimport { useColorMode } from \"../ConfigProvider\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\n\nconst TextField = forwardRef(\n (\n {\n type,\n modelValue = \"\",\n clearable = false,\n maxLength,\n disabled = false,\n readonly,\n autofocus = false,\n showCount,\n placeholder,\n formatter,\n formatterTrigger,\n suffix,\n prefix,\n onFocus,\n onBlur,\n onChange,\n onClear,\n isFormItem,\n inputAlign,\n maxLengthStyle,\n inputStyle,\n style,\n placeholderStyle,\n onSubmitEditing,\n isControl = false, // 新增 prop,控制是否使用受控模式\n accessibility = {},\n clearAccessibility = {},\n placeholderTextColor,\n }: RedsTextField,\n ref,\n ) => {\n useMounted(\"TextField\");\n const styles = createStyles(disabled, inputAlign);\n const [focused, setFocused] = useState(autofocus);\n const [internalValue, setInternalValue] = useState(modelValue); // 用于不受控模式\n const [showClear, setShowClear] = useState(false);\n const inputRef = useRef<TextInput>(null);\n const colorMode = useColorMode();\n const [isComposing, setIsComposing] = useState(false);\n\n // 当前显示的值:受控模式下使用propsValue,不受控模式下使用internalValue\n const value = useMemo(() => {\n return isControl ? modelValue : internalValue;\n }, [modelValue, internalValue]);\n\n const updateValue = useCallback(\n (upValue: string, trigger: string = \"onChange\") => {\n let newValue = upValue;\n\n if (maxLength && runes(upValue).length > maxLength && !isComposing) {\n newValue = runes.substr(upValue, 0, maxLength);\n }\n\n if (formatter && formatterTrigger === trigger) {\n newValue = formatter(newValue);\n }\n\n if (onChange && newValue !== value) {\n onChange(newValue);\n }\n\n // 只有在不受控模式下才更新内部状态\n if (!isControl) {\n setInternalValue(newValue);\n }\n },\n [formatter, formatterTrigger, onChange, value, isControl, isComposing],\n );\n\n const handleClear = useCallback(() => {\n const newValue = \"\";\n if (onChange) {\n onChange(newValue);\n }\n if (!isControl) {\n setInternalValue(newValue);\n }\n onClear && onClear(value);\n }, [onChange, onClear, value, isControl]);\n\n const handleFocus = useCallback(() => {\n if (readonly) {\n inputRef.current?.blur();\n }\n setFocused(true);\n onFocus && onFocus(value);\n }, [onFocus, readonly, value]);\n\n const handleBlur = useCallback(() => {\n setFocused(false);\n setIsComposing(false);\n if (!readonly) {\n onBlur && onBlur(value);\n }\n }, [readonly, onBlur, value]);\n\n const handleCompositionStart = useCallback(() => {\n setIsComposing(true);\n }, []);\n\n const handleCompositionEnd = () => {\n setIsComposing(false);\n };\n\n // 当propsValue变化时,同步更新内部状态(仅不受控模式)\n useEffect(() => {\n if (!isControl) {\n setInternalValue(modelValue);\n }\n }, [modelValue, isControl]);\n\n useEffect(() => {\n const newShowClear = clearable && focused && value.length > 0;\n if (newShowClear !== showClear) {\n setShowClear(newShowClear);\n }\n }, [clearable, focused, value]);\n\n const CloseClear = useMemo(() => {\n if (colorMode === \"light\") {\n return \"https://picasso-static.xiaohongshu.com/fe-platform/451af80f830413a14a1fc5cdcb9b2e1401ca6f72.png\";\n } else {\n return \"https://picasso-static.xiaohongshu.com/fe-platform/c2d85533ba1c3496194d81cca563544bb7fd1d32.png\";\n }\n }, [colorMode]);\n\n useImperativeHandle(ref, () => ({\n textInputRef: inputRef,\n }));\n\n const ClearIcon = useMemo(() => {\n return (\n <View\n style={[styles.rightItem, { display: showClear ? \"flex\" : \"none\" }]}\n testID=\"clear-icon\"\n {...clearAccessibility}\n >\n <Icon icon={CloseClear} onClick={handleClear} size={20} type={IconType.iconType?.image} />\n </View>\n );\n }, [showClear, handleClear, clearAccessibility]);\n\n return (\n <View style={[isFormItem ? {} : styles.wrapper, style]}>\n <View style={[styles.container, styles.centerItem]}>\n {prefix}\n <View style={styles.inputWrapper}>\n <TextInput\n testID=\"text-input\"\n ref={inputRef}\n style={[styles.input, inputStyle, { outline: \"none\" } as TextStyle]}\n value={value}\n autoFocus={autofocus}\n onChangeText={updateValue}\n onFocus={handleFocus}\n onBlur={handleBlur}\n editable={!readonly && !disabled}\n keyboardType={type}\n // placeholder={placeholder}\n selectionColor={styles.inputSelectionColor.color}\n placeholderTextColor={(placeholderTextColor || styles.inputPlaceHolder.color) as ColorValue}\n onSubmitEditing={onSubmitEditing}\n // @ts-ignore\n onCompositionStart={handleCompositionStart}\n onCompositionEnd={handleCompositionEnd}\n {...accessibility}\n />\n {/* 模拟 placeholder */}\n {!value && (\n <Text\n style={[styles.placeholder, placeholderStyle]}\n numberOfLines={1}\n onPress={() => {\n inputRef?.current?.focus();\n setFocused(true);\n }}\n >\n {placeholder}\n </Text>\n )}\n </View>\n {ClearIcon}\n {showCount && maxLength && (\n <View style={styles.rightItem}>\n <Text style={[styles.count, maxLengthStyle]}>{`${runes(value).length}/${maxLength}`}</Text>\n </View>\n )}\n {suffix}\n </View>\n </View>\n );\n },\n);\n\nTextField.defaultProps = TextFieldDefaultProps;\n\nexport default TextField;\n"],"names":["TextField","forwardRef","_ref","ref","type","_ref$modelValue","modelValue","_ref$clearable","clearable","maxLength","_ref$disabled","disabled","readonly","_ref$autofocus","autofocus","showCount","placeholder","formatter","formatterTrigger","suffix","prefix","onFocus","onBlur","onChange","onClear","isFormItem","inputAlign","maxLengthStyle","inputStyle","style","placeholderStyle","onSubmitEditing","_ref$isControl","isControl","_ref$accessibility","accessibility","_ref$clearAccessibili","clearAccessibility","placeholderTextColor","useMounted","styles","createStyles","_useState","useState","_useState2","_slicedToArray","focused","setFocused","_useState3","_useState4","internalValue","setInternalValue","_useState5","_useState6","showClear","setShowClear","inputRef","useRef","colorMode","useColorMode","_useState7","_useState8","isComposing","setIsComposing","value","useMemo","updateValue","useCallback","upValue","trigger","arguments","length","undefined","newValue","runes","substr","handleClear","handleFocus","_inputRef$current","current","blur","handleBlur","handleCompositionStart","handleCompositionEnd","useEffect","newShowClear","CloseClear","useImperativeHandle","textInputRef","ClearIcon","_IconType$iconType","React","createElement","View","_objectSpread","rightItem","display","testID","Icon","icon","onClick","size","IconType","image","wrapper","container","centerItem","inputWrapper","TextInput","input","outline","autoFocus","onChangeText","editable","keyboardType","selectionColor","inputSelectionColor","color","inputPlaceHolder","onCompositionStart","onCompositionEnd","Text","numberOfLines","onPress","_inputRef$current2","focus","count","concat","defaultProps","TextFieldDefaultProps"],"mappings":"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"}
@@ -159,7 +159,8 @@ var TextField = /*#__PURE__*/forwardRef(function (props, ref) {
159
159
  ref: inputRef,
160
160
  style: [styles.input, {
161
161
  minHeight: rows * 24,
162
- height: "auto"
162
+ height: "auto",
163
+ outline: "none"
163
164
  }, style],
164
165
  value: value,
165
166
  onChangeText: handleChangeText,
@@ -186,7 +187,8 @@ var TextField = /*#__PURE__*/forwardRef(function (props, ref) {
186
187
  }, "".concat(Math.min(modelValueStringLength, maxLength), "/").concat(maxLength))), showClear && modelValueStringLength && focused && /* @__PURE__ */React.createElement(View, {
187
188
  style: styles.rightItem
188
189
  }, /* @__PURE__ */React.createElement(TouchableWithoutFeedback, {
189
- onPress: handleClear
190
+ onPress: handleClear,
191
+ onPressOut: Platform.OS === "web" ? handleClear : void 0
190
192
  }, /* @__PURE__ */React.createElement(View, {
191
193
  style: styles.clearIconContainer
192
194
  }, /* @__PURE__ */React.createElement(Text, {
@@ -1 +1 @@
1
- {"version":3,"file":"TextView.js","sources":["../../../../src/components/TextView/TextView.tsx"],"sourcesContent":["import { useState, useRef, useEffect, useCallback, useMemo, forwardRef, useImperativeHandle } from \"react\";\nimport { TextInput, View, Text, TouchableWithoutFeedback, ColorValue, Keyboard, Platform } from \"react-native\";\nimport { TextViewDefaultProps, RedsTextView } from \"./interface\";\nimport createStyles from \"./styles\";\nimport runes from \"runes\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nimport { useThemeColor } from \"../ConfigProvider\";\n\nconst TextField = forwardRef((props: RedsTextView, ref) => {\n const {\n type,\n modelValue,\n clearable = false,\n maxLength,\n disabled = false,\n readonly,\n autofocus = false,\n showCount = false,\n placeholder,\n rows = 3,\n onFocus,\n onBlur,\n onChange,\n onClear,\n style = {},\n containerStyle = {},\n layout,\n actionLayout,\n placeholderTextColor,\n } = props || {};\n useMounted(\"TextView\");\n const styles = createStyles(disabled, actionLayout || \"vertical\");\n const [focused, setFocused] = useState(autofocus);\n const [value, setValue] = useState(modelValue || \"\");\n const [modelValueStringLength, setModelValueStringLength] = useState(0);\n const [showClear, setShowClear] = useState(false);\n const [showActionArea, setShowActionArea] = useState(false);\n const inputRef = useRef<TextInput>(null);\n const themeColor = useThemeColor();\n\n const limitValueLength = useCallback(\n (value: string) => {\n const valueLength = runes(value || \"\").length;\n if (typeof maxLength === \"number\" && valueLength > maxLength) {\n const mValue = value;\n if (mValue && modelValueStringLength === +maxLength) {\n return mValue;\n }\n return runes.substr(value, 0, +maxLength);\n }\n return value;\n },\n [maxLength],\n );\n\n useImperativeHandle(ref, () => ({\n textInputRef: inputRef,\n }));\n\n const updateValue = useCallback(\n (upValue: string) => {\n // let value = limitValueLength(upValue);\n onChange && onChange(upValue);\n setValue(upValue);\n },\n [onChange],\n );\n\n const handleChangeText = useCallback(\n (value: string) => {\n const filteredValue = props.returnKeyType !== \"next\" ? value.replace(/\\n/g, \"\") : value;\n updateValue(filteredValue);\n // Only apply cursor fix on iOS when text equals maxLength (indicating truncation)\n if (Platform.OS === \"ios\" && maxLength && value.length >= maxLength && inputRef.current) {\n // Use requestAnimationFrame instead of setTimeout\n requestAnimationFrame(() => {\n inputRef.current?.setNativeProps({\n selection: { start: maxLength, end: maxLength },\n });\n });\n }\n },\n [maxLength, updateValue],\n );\n\n const handleClear = useCallback(() => {\n setValue(\"\");\n updateValue(\"\");\n onClear && onClear(value);\n }, [onClear]);\n\n const handleFocus = useCallback(() => {\n if (readonly) {\n inputRef.current?.blur();\n }\n setFocused(true);\n onFocus && onFocus(value);\n }, [onFocus, readonly]);\n\n const handleBlur = useCallback(() => {\n setFocused(false);\n if (!readonly) {\n onBlur && onBlur(value);\n }\n }, [readonly, onBlur]);\n\n useEffect(() => {\n setValue(modelValue || \"\");\n }, [modelValue]);\n\n useEffect(() => {\n setShowClear(clearable && value.length > 0);\n }, [clearable, value]);\n\n useEffect(() => {\n setFocused(autofocus);\n }, [autofocus]);\n\n useEffect(() => {\n // setModelValueStringLength(runes(value).length);\n setModelValueStringLength(value.length);\n }, [value]);\n\n useEffect(() => {\n setShowActionArea(showClear || showCount);\n }, [showClear, showCount]);\n\n const textFieldColor = useMemo(() => {\n const ColorMap = {\n primary: themeColor.Primary2,\n normal: themeColor.Fill1,\n basic: themeColor.Bg,\n };\n return ColorMap[layout!];\n }, [layout]);\n\n const handleKeyPress = ({ nativeEvent }: any) => {\n if (nativeEvent.key === \"Enter\") {\n if (props.returnKeyType !== \"next\") {\n Keyboard.dismiss();\n }\n }\n };\n\n return (\n <View testID=\"wrapper\" style={[styles.wrapper, { backgroundColor: textFieldColor }, containerStyle]}>\n <TextInput\n testID=\"text-input\"\n ref={inputRef}\n style={[styles.input, { minHeight: rows * 24, height: \"auto\" }, style]}\n value={value}\n onChangeText={handleChangeText}\n onFocus={handleFocus}\n onBlur={handleBlur}\n editable={!readonly && !disabled}\n keyboardType={type}\n placeholder={placeholder}\n multiline\n returnKeyType={props.returnKeyType as any}\n autoFocus={focused}\n maxLength={maxLength}\n onKeyPress={handleKeyPress}\n onSubmitEditing={props.onSubmitEditing}\n selectionColor={styles.inputSelectionColor.color}\n placeholderTextColor={(placeholderTextColor || styles.inputPlaceHolder.color) as ColorValue}\n />\n {showActionArea && (\n <View style={[styles.ButtomActionArea]} testID=\"action-area\">\n {showCount && maxLength && (\n <View style={styles.rightItem}>\n <Text style={styles.count}>{`${Math.min(modelValueStringLength, maxLength)}/${maxLength}`}</Text>\n </View>\n )}\n {showClear && modelValueStringLength && focused && (\n <View style={styles.rightItem}>\n <TouchableWithoutFeedback onPress={handleClear}>\n <View style={styles.clearIconContainer}>\n <Text style={styles.clearIcon}>清空</Text>\n </View>\n </TouchableWithoutFeedback>\n </View>\n )}\n </View>\n )}\n </View>\n );\n});\n\n// @ts-ignore\nTextField.defaultProps = TextViewDefaultProps;\n\nexport default TextField;\n"],"names":["TextField","forwardRef","props","ref","_ref","type","modelValue","_ref$clearable","clearable","maxLength","_ref$disabled","disabled","readonly","_ref$autofocus","autofocus","_ref$showCount","showCount","placeholder","_ref$rows","rows","onFocus","onBlur","onChange","onClear","_ref$style","style","_ref$containerStyle","containerStyle","layout","actionLayout","placeholderTextColor","useMounted","styles","createStyles","_useState","useState","_useState2","_slicedToArray","focused","setFocused","_useState3","_useState4","value","setValue","_useState5","_useState6","modelValueStringLength","setModelValueStringLength","_useState7","_useState8","showClear","setShowClear","_useState9","_useState0","showActionArea","setShowActionArea","inputRef","useRef","themeColor","useThemeColor","useCallback","valueLength","runes","length","mValue","substr","useImperativeHandle","textInputRef","updateValue","upValue","handleChangeText","filteredValue","returnKeyType","replace","Platform","OS","current","requestAnimationFrame","_inputRef$current","setNativeProps","selection","start","end","handleClear","handleFocus","_inputRef$current2","blur","handleBlur","useEffect","textFieldColor","useMemo","ColorMap","primary","Primary2","normal","Fill1","basic","Bg","handleKeyPress","_ref2","nativeEvent","key","Keyboard","dismiss","React","createElement","View","testID","wrapper","backgroundColor","TextInput","input","minHeight","height","onChangeText","editable","keyboardType","multiline","autoFocus","onKeyPress","onSubmitEditing","selectionColor","inputSelectionColor","color","inputPlaceHolder","ButtomActionArea","rightItem","Text","count","concat","Math","min","TouchableWithoutFeedback","onPress","clearIconContainer","clearIcon","defaultProps","TextViewDefaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"TextView.js","sources":["../../../../src/components/TextView/TextView.tsx"],"sourcesContent":["import { useState, useRef, useEffect, useCallback, useMemo, forwardRef, useImperativeHandle } from \"react\";\nimport {\n TextInput,\n View,\n Text,\n TouchableWithoutFeedback,\n ColorValue,\n Keyboard,\n Platform,\n TextStyle,\n} from \"react-native\";\nimport { TextViewDefaultProps, RedsTextView } from \"./interface\";\nimport createStyles from \"./styles\";\nimport runes from \"runes\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nimport { useThemeColor } from \"../ConfigProvider\";\n\nconst TextField = forwardRef((props: RedsTextView, ref) => {\n const {\n type,\n modelValue,\n clearable = false,\n maxLength,\n disabled = false,\n readonly,\n autofocus = false,\n showCount = false,\n placeholder,\n rows = 3,\n onFocus,\n onBlur,\n onChange,\n onClear,\n style = {},\n containerStyle = {},\n layout,\n actionLayout,\n placeholderTextColor,\n } = props || {};\n useMounted(\"TextView\");\n const styles = createStyles(disabled, actionLayout || \"vertical\");\n const [focused, setFocused] = useState(autofocus);\n const [value, setValue] = useState(modelValue || \"\");\n const [modelValueStringLength, setModelValueStringLength] = useState(0);\n const [showClear, setShowClear] = useState(false);\n const [showActionArea, setShowActionArea] = useState(false);\n const inputRef = useRef<TextInput>(null);\n const themeColor = useThemeColor();\n\n const limitValueLength = useCallback(\n (value: string) => {\n const valueLength = runes(value || \"\").length;\n if (typeof maxLength === \"number\" && valueLength > maxLength) {\n const mValue = value;\n if (mValue && modelValueStringLength === +maxLength) {\n return mValue;\n }\n return runes.substr(value, 0, +maxLength);\n }\n return value;\n },\n [maxLength],\n );\n\n useImperativeHandle(ref, () => ({\n textInputRef: inputRef,\n }));\n\n const updateValue = useCallback(\n (upValue: string) => {\n // let value = limitValueLength(upValue);\n onChange && onChange(upValue);\n setValue(upValue);\n },\n [onChange],\n );\n\n const handleChangeText = useCallback(\n (value: string) => {\n const filteredValue = props.returnKeyType !== \"next\" ? value.replace(/\\n/g, \"\") : value;\n updateValue(filteredValue);\n // Only apply cursor fix on iOS when text equals maxLength (indicating truncation)\n if (Platform.OS === \"ios\" && maxLength && value.length >= maxLength && inputRef.current) {\n // Use requestAnimationFrame instead of setTimeout\n requestAnimationFrame(() => {\n inputRef.current?.setNativeProps({\n selection: { start: maxLength, end: maxLength },\n });\n });\n }\n },\n [maxLength, updateValue],\n );\n\n const handleClear = useCallback(() => {\n setValue(\"\");\n updateValue(\"\");\n onClear && onClear(value);\n }, [onClear]);\n\n const handleFocus = useCallback(() => {\n if (readonly) {\n inputRef.current?.blur();\n }\n setFocused(true);\n onFocus && onFocus(value);\n }, [onFocus, readonly]);\n\n const handleBlur = useCallback(() => {\n setFocused(false);\n if (!readonly) {\n onBlur && onBlur(value);\n }\n }, [readonly, onBlur]);\n\n useEffect(() => {\n setValue(modelValue || \"\");\n }, [modelValue]);\n\n useEffect(() => {\n setShowClear(clearable && value.length > 0);\n }, [clearable, value]);\n\n useEffect(() => {\n setFocused(autofocus);\n }, [autofocus]);\n\n useEffect(() => {\n // setModelValueStringLength(runes(value).length);\n setModelValueStringLength(value.length);\n }, [value]);\n\n useEffect(() => {\n setShowActionArea(showClear || showCount);\n }, [showClear, showCount]);\n\n const textFieldColor = useMemo(() => {\n const ColorMap = {\n primary: themeColor.Primary2,\n normal: themeColor.Fill1,\n basic: themeColor.Bg,\n };\n return ColorMap[layout!];\n }, [layout]);\n\n const handleKeyPress = ({ nativeEvent }: any) => {\n if (nativeEvent.key === \"Enter\") {\n if (props.returnKeyType !== \"next\") {\n Keyboard.dismiss();\n }\n }\n };\n\n return (\n <View testID=\"wrapper\" style={[styles.wrapper, { backgroundColor: textFieldColor }, containerStyle]}>\n <TextInput\n testID=\"text-input\"\n ref={inputRef}\n style={[styles.input, { minHeight: rows * 24, height: \"auto\", outline: \"none\" } as TextStyle, style]}\n value={value}\n onChangeText={handleChangeText}\n onFocus={handleFocus}\n onBlur={handleBlur}\n editable={!readonly && !disabled}\n keyboardType={type}\n placeholder={placeholder}\n multiline\n returnKeyType={props.returnKeyType as any}\n autoFocus={focused}\n maxLength={maxLength}\n onKeyPress={handleKeyPress}\n onSubmitEditing={props.onSubmitEditing}\n selectionColor={styles.inputSelectionColor.color}\n placeholderTextColor={(placeholderTextColor || styles.inputPlaceHolder.color) as ColorValue}\n />\n {showActionArea && (\n <View style={[styles.ButtomActionArea]} testID=\"action-area\">\n {showCount && maxLength && (\n <View style={styles.rightItem}>\n <Text style={styles.count}>{`${Math.min(modelValueStringLength, maxLength)}/${maxLength}`}</Text>\n </View>\n )}\n {showClear && modelValueStringLength && focused && (\n <View style={styles.rightItem}>\n <TouchableWithoutFeedback\n onPress={handleClear}\n onPressOut={Platform.OS === \"web\" ? handleClear : undefined}\n >\n <View style={styles.clearIconContainer}>\n <Text style={styles.clearIcon}>清空</Text>\n </View>\n </TouchableWithoutFeedback>\n </View>\n )}\n </View>\n )}\n </View>\n );\n});\n\n// @ts-ignore\nTextField.defaultProps = TextViewDefaultProps;\n\nexport default TextField;\n"],"names":["TextField","forwardRef","props","ref","_ref","type","modelValue","_ref$clearable","clearable","maxLength","_ref$disabled","disabled","readonly","_ref$autofocus","autofocus","_ref$showCount","showCount","placeholder","_ref$rows","rows","onFocus","onBlur","onChange","onClear","_ref$style","style","_ref$containerStyle","containerStyle","layout","actionLayout","placeholderTextColor","useMounted","styles","createStyles","_useState","useState","_useState2","_slicedToArray","focused","setFocused","_useState3","_useState4","value","setValue","_useState5","_useState6","modelValueStringLength","setModelValueStringLength","_useState7","_useState8","showClear","setShowClear","_useState9","_useState0","showActionArea","setShowActionArea","inputRef","useRef","themeColor","useThemeColor","useCallback","valueLength","runes","length","mValue","substr","useImperativeHandle","textInputRef","updateValue","upValue","handleChangeText","filteredValue","returnKeyType","replace","Platform","OS","current","requestAnimationFrame","_inputRef$current","setNativeProps","selection","start","end","handleClear","handleFocus","_inputRef$current2","blur","handleBlur","useEffect","textFieldColor","useMemo","ColorMap","primary","Primary2","normal","Fill1","basic","Bg","handleKeyPress","_ref2","nativeEvent","key","Keyboard","dismiss","React","createElement","View","testID","wrapper","backgroundColor","TextInput","input","minHeight","height","outline","onChangeText","editable","keyboardType","multiline","autoFocus","onKeyPress","onSubmitEditing","selectionColor","inputSelectionColor","color","inputPlaceHolder","ButtomActionArea","rightItem","Text","count","Math","min","concat","TouchableWithoutFeedback","onPress","onPressOut","clearIconContainer","clearIcon","defaultProps","TextViewDefaultProps"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { a as _objectSpread2 } from '../../_chunks/ZEfofTDH.js';
2
2
  import React, { useEffect, useMemo } from 'react';
3
- import { Animated, View, Text } from 'react-native';
3
+ import { Animated, Platform, View, Text } from 'react-native';
4
4
  import Icon from '../Icon/Icon.js';
5
5
  import { i as iconType } from '../../_chunks/xi-gXLIR.js';
6
6
  import Button from '../Button/Button.js';
@@ -110,7 +110,7 @@ var ToastContainer = function ToastContainer(p) {
110
110
  style: [styles.ToastContainer, {
111
111
  opacity: fadeAnim.current
112
112
  }],
113
- pointerEvents: mask ? void 0 : "none"
113
+ pointerEvents: mask || Platform.OS === "web" ? void 0 : "none"
114
114
  }, /* @__PURE__ */React.createElement(View, {
115
115
  style: [getContainerStyle(props), {
116
116
  backgroundColor: themeColor.Fill5
@@ -1 +1 @@
1
- {"version":3,"file":"Toast.js","sources":["../../../../src/components/Toast/Toast.tsx"],"sourcesContent":["import React, { useEffect, useMemo } from \"react\";\nimport { Animated, View, Text } from \"react-native\";\nimport { Icon, IconType } from \"../Icon/index\";\nimport Button from \"../Button/index\";\nimport ProgressIndicator from \"../ProgressIndicator/index\";\nimport { useThemeColor, useColorMode } from \"../ConfigProvider/index\";\nimport { ToastBuiltInType, RedsToast, ToastDefaultProps } from \"./interface/index\";\nimport getStyle, { getContainerStyle } from \"./styles\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nimport { useLanguage } from \"../LanguageProvider/index\";\n\nconst ToastContainer = (p: RedsToast) => {\n useMounted(\"Toast\");\n const props = { ...ToastDefaultProps, ...p };\n const { icon, type, mask, duration, progressValue, message, onCancel, onClose, onClick } = props;\n\n const themeColor = useThemeColor(\"Toast\");\n\n const colorMode = props.strokeColor || useColorMode();\n\n const cancelKey = useLanguage(\"componentKey\", \"cancelKey\");\n const sureKey = useLanguage(\"componentKey\", \"sureKey\");\n\n const anim = React.useRef<Animated.CompositeAnimation | null>();\n const fadeAnim = React.useRef(new Animated.Value(0));\n\n const styles = getStyle(themeColor);\n\n useEffect(() => {\n if (anim.current) {\n anim.current = null;\n }\n const animArr = [\n Animated.timing(fadeAnim.current, {\n toValue: 1,\n duration: 400,\n useNativeDriver: true,\n }),\n Animated.delay(duration * 2),\n ];\n if (duration > 0) {\n animArr.push(\n Animated.timing(fadeAnim.current, {\n toValue: 0,\n duration: 400,\n useNativeDriver: true,\n }),\n );\n }\n anim.current = Animated.sequence(animArr);\n anim.current.start(() => {\n if (duration > 0) {\n anim.current = null;\n }\n });\n\n return () => {\n if (anim.current) {\n anim.current.stop();\n anim.current = null;\n }\n\n if (onClose) {\n onClose?.();\n }\n };\n }, []);\n\n const Close = useMemo(() => {\n if (colorMode === \"dark\") {\n return \"https://fe-platform.xhscdn.com/platform/104101l031jv184h0j406d5494g900000000001j3s43s2.png\";\n } else {\n return \"https://picasso-static.xiaohongshu.com/fe-platform/c0ddb1ec3641b24cd7c22c021b46e72b16807017.png\";\n }\n }, [colorMode]);\n\n const Check = useMemo(() => {\n if (colorMode === \"dark\") {\n return \"https://fe-platform.xhscdn.com/platform/104101l031jv1868bj406d5494g900000000001ihnvoa2.png\";\n } else {\n return \"https://picasso-static.xiaohongshu.com/fe-platform/5dfb28256b75e7f4bb60755ab189632c3c08799a.png\";\n }\n }, [colorMode]);\n\n return (\n <Animated.View\n style={[styles.ToastContainer, { opacity: fadeAnim.current }]}\n pointerEvents={mask ? undefined : \"none\"}\n >\n {/** @ts-ignore */}\n <View style={[getContainerStyle(props), { backgroundColor: themeColor.Fill5 }]}>\n {type === ToastBuiltInType.TEXT && !icon ? (\n <Text style={[styles.message]}>{message}</Text>\n ) : (\n <View style={styles.center}>\n {icon ? (\n icon\n ) : type === ToastBuiltInType.LOADING ? (\n <ProgressIndicator type=\"default\" strokeColor={colorMode === \"light\" ? \"dark\" : \"light\"} size={30} />\n ) : type === ToastBuiltInType.ERROR ? (\n <Icon icon={Close} size={48} type={IconType.iconType?.image} />\n ) : type === ToastBuiltInType.PROGRESS ? (\n <View style={{ marginBottom: 12 }}>\n <ProgressIndicator\n percent={progressValue}\n type={type}\n strokeColor={colorMode === \"light\" ? \"dark\" : \"light\"}\n textStyle={{ color: \"#fff\" }}\n size={56}\n />\n </View>\n ) : (\n <Icon icon={Check} type={IconType.iconType?.image} size={36} />\n )}\n {message ? (\n <Text style={[styles.iconMessage, { marginTop: type === ToastBuiltInType.PROGRESS ? 0 : 16 }]}>\n {message}\n </Text>\n ) : (\n <></>\n )}\n\n {onCancel ? (\n <View style={styles.btn}>\n <Button onClick={onCancel} size=\"micro\" variant=\"text\">\n <Text style={[styles.btnText, { color: themeColor.White }]}>{props.cancelText || cancelKey}</Text>\n </Button>\n </View>\n ) : (\n <></>\n )}\n\n {onClick ? (\n <View style={styles.btn}>\n <Button onClick={onClick} size=\"micro\" variant=\"text\">\n <Text style={[styles.btnText, { color: themeColor.White }]}>{props.confirmText || sureKey}</Text>\n </Button>\n </View>\n ) : (\n <></>\n )}\n </View>\n )}\n </View>\n </Animated.View>\n );\n};\n\nexport default ToastContainer;\n"],"names":["ToastContainer","p","_IconType$iconType","_IconType$iconType2","useMounted","props","_objectSpread","ToastDefaultProps","icon","type","mask","duration","progressValue","message","onCancel","onClose","onClick","themeColor","useThemeColor","colorMode","strokeColor","useColorMode","cancelKey","useLanguage","sureKey","anim","React","useRef","fadeAnim","Animated","Value","styles","getStyle","useEffect","current","animArr","timing","toValue","useNativeDriver","delay","push","sequence","start","stop","Close","useMemo","Check","createElement","View","style","opacity","pointerEvents","getContainerStyle","backgroundColor","Fill5","ToastBuiltInType","TEXT","Text","center","LOADING","ProgressIndicator","size","ERROR","Icon","IconType","image","PROGRESS","marginBottom","percent","textStyle","color","iconMessage","marginTop","Fragment","btn","Button","variant","btnText","White","cancelText","confirmText"],"mappings":"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"}
1
+ {"version":3,"file":"Toast.js","sources":["../../../../src/components/Toast/Toast.tsx"],"sourcesContent":["import React, { useEffect, useMemo } from \"react\";\nimport { Animated, View, Text, Platform } from \"react-native\";\nimport { Icon, IconType } from \"../Icon/index\";\nimport Button from \"../Button/index\";\nimport ProgressIndicator from \"../ProgressIndicator/index\";\nimport { useThemeColor, useColorMode } from \"../ConfigProvider/index\";\nimport { ToastBuiltInType, RedsToast, ToastDefaultProps } from \"./interface/index\";\nimport getStyle, { getContainerStyle } from \"./styles\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nimport { useLanguage } from \"../LanguageProvider/index\";\n\nconst ToastContainer = (p: RedsToast) => {\n useMounted(\"Toast\");\n const props = { ...ToastDefaultProps, ...p };\n const { icon, type, mask, duration, progressValue, message, onCancel, onClose, onClick } = props;\n\n const themeColor = useThemeColor(\"Toast\");\n\n const colorMode = props.strokeColor || useColorMode();\n\n const cancelKey = useLanguage(\"componentKey\", \"cancelKey\");\n const sureKey = useLanguage(\"componentKey\", \"sureKey\");\n\n const anim = React.useRef<Animated.CompositeAnimation | null>();\n const fadeAnim = React.useRef(new Animated.Value(0));\n\n const styles = getStyle(themeColor);\n\n useEffect(() => {\n if (anim.current) {\n anim.current = null;\n }\n const animArr = [\n Animated.timing(fadeAnim.current, {\n toValue: 1,\n duration: 400,\n useNativeDriver: true,\n }),\n Animated.delay(duration * 2),\n ];\n if (duration > 0) {\n animArr.push(\n Animated.timing(fadeAnim.current, {\n toValue: 0,\n duration: 400,\n useNativeDriver: true,\n }),\n );\n }\n anim.current = Animated.sequence(animArr);\n anim.current.start(() => {\n if (duration > 0) {\n anim.current = null;\n }\n });\n\n return () => {\n if (anim.current) {\n anim.current.stop();\n anim.current = null;\n }\n\n if (onClose) {\n onClose?.();\n }\n };\n }, []);\n\n const Close = useMemo(() => {\n if (colorMode === \"dark\") {\n return \"https://fe-platform.xhscdn.com/platform/104101l031jv184h0j406d5494g900000000001j3s43s2.png\";\n } else {\n return \"https://picasso-static.xiaohongshu.com/fe-platform/c0ddb1ec3641b24cd7c22c021b46e72b16807017.png\";\n }\n }, [colorMode]);\n\n const Check = useMemo(() => {\n if (colorMode === \"dark\") {\n return \"https://fe-platform.xhscdn.com/platform/104101l031jv1868bj406d5494g900000000001ihnvoa2.png\";\n } else {\n return \"https://picasso-static.xiaohongshu.com/fe-platform/5dfb28256b75e7f4bb60755ab189632c3c08799a.png\";\n }\n }, [colorMode]);\n\n return (\n <Animated.View\n style={[styles.ToastContainer, { opacity: fadeAnim.current }]}\n pointerEvents={mask || Platform.OS === \"web\" ? undefined : \"none\"}\n >\n {/** @ts-ignore */}\n <View style={[getContainerStyle(props), { backgroundColor: themeColor.Fill5 }]}>\n {type === ToastBuiltInType.TEXT && !icon ? (\n <Text style={[styles.message]}>{message}</Text>\n ) : (\n <View style={styles.center}>\n {icon ? (\n icon\n ) : type === ToastBuiltInType.LOADING ? (\n <ProgressIndicator type=\"default\" strokeColor={colorMode === \"light\" ? \"dark\" : \"light\"} size={30} />\n ) : type === ToastBuiltInType.ERROR ? (\n <Icon icon={Close} size={48} type={IconType.iconType?.image} />\n ) : type === ToastBuiltInType.PROGRESS ? (\n <View style={{ marginBottom: 12 }}>\n <ProgressIndicator\n percent={progressValue}\n type={type}\n strokeColor={colorMode === \"light\" ? \"dark\" : \"light\"}\n textStyle={{ color: \"#fff\" }}\n size={56}\n />\n </View>\n ) : (\n <Icon icon={Check} type={IconType.iconType?.image} size={36} />\n )}\n {message ? (\n <Text style={[styles.iconMessage, { marginTop: type === ToastBuiltInType.PROGRESS ? 0 : 16 }]}>\n {message}\n </Text>\n ) : (\n <></>\n )}\n\n {onCancel ? (\n <View style={styles.btn}>\n <Button onClick={onCancel} size=\"micro\" variant=\"text\">\n <Text style={[styles.btnText, { color: themeColor.White }]}>{props.cancelText || cancelKey}</Text>\n </Button>\n </View>\n ) : (\n <></>\n )}\n\n {onClick ? (\n <View style={styles.btn}>\n <Button onClick={onClick} size=\"micro\" variant=\"text\">\n <Text style={[styles.btnText, { color: themeColor.White }]}>{props.confirmText || sureKey}</Text>\n </Button>\n </View>\n ) : (\n <></>\n )}\n </View>\n )}\n </View>\n </Animated.View>\n );\n};\n\nexport default ToastContainer;\n"],"names":["ToastContainer","p","_IconType$iconType","_IconType$iconType2","useMounted","props","_objectSpread","ToastDefaultProps","icon","type","mask","duration","progressValue","message","onCancel","onClose","onClick","themeColor","useThemeColor","colorMode","strokeColor","useColorMode","cancelKey","useLanguage","sureKey","anim","React","useRef","fadeAnim","Animated","Value","styles","getStyle","useEffect","current","animArr","timing","toValue","useNativeDriver","delay","push","sequence","start","stop","Close","useMemo","Check","createElement","View","style","opacity","pointerEvents","Platform","OS","getContainerStyle","backgroundColor","Fill5","ToastBuiltInType","TEXT","Text","center","LOADING","ProgressIndicator","size","ERROR","Icon","IconType","image","PROGRESS","marginBottom","percent","textStyle","color","iconMessage","marginTop","Fragment","btn","Button","variant","btnText","White","cancelText","confirmText"],"mappings":"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"}
package/lib/esm/index.js CHANGED
@@ -205,6 +205,7 @@ import './components/Sheets/styles.js';
205
205
  import '@xhs/reder-icon-svg-ReDs_icon';
206
206
  import './components/Radio/styles.js';
207
207
  import './components/ActionSheets/styles.js';
208
+ import './components/SlimAlert/PortalHost.js';
208
209
  import './components/Alert/styles.js';
209
210
  import './components/FAB/styles.js';
210
211
  import './components/Toast/Toast.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -10,8 +10,8 @@ var dependencies = {
10
10
  "@xhs/reds-apm": ">=0.0.1",
11
11
  "async-validator": "~4.2.5",
12
12
  dayjs: "*",
13
- runes: "~0.4.3",
14
- "react-native-url-polyfill": "*"
13
+ "react-native-url-polyfill": "*",
14
+ runes: "~0.4.3"
15
15
  };
16
16
  var publishConfig = {
17
17
  access: "public"
@@ -20,15 +20,15 @@ var peerDependencies = {
20
20
  "@xhs/lottie-react-native": "*",
21
21
  "@xhs/ozone-schema": "*",
22
22
  "@xhs/ozone-schema-web": "*",
23
+ "@xhs/react-native-harmony": "*",
23
24
  "@xhs/reder-icon-svg-ReDs_icon": "*",
25
+ "@xhs/reds-components": "*",
24
26
  "@xhsreds/reds-token-next": "workspace:*",
25
27
  "lottie-react-native": "7.1.0",
26
28
  react: "*",
27
29
  "react-native": "*",
28
30
  "react-native-fs": "2.20.0",
29
- "react-native-svg": "13.14.0",
30
- "@xhs/react-native-harmony": "*",
31
- "@xhs/reds-components": "*"
31
+ "react-native-svg": "13.14.0"
32
32
  };
33
33
  var peerDependenciesMeta = {
34
34
  "ozone-schema-web": {
@@ -56,6 +56,10 @@ var scripts = {
56
56
  publish: "echo publish",
57
57
  i18n: "npx i18n-fetch"
58
58
  };
59
+ var devDependencies = {
60
+ "@types/react-dom": "18.2.0",
61
+ "react-dom": "18.2.0"
62
+ };
59
63
  var pack = {
60
64
  name: name,
61
65
  version: version,
@@ -68,7 +72,8 @@ var pack = {
68
72
  overrides: overrides,
69
73
  module: module,
70
74
  types: types,
71
- scripts: scripts
75
+ scripts: scripts,
76
+ devDependencies: devDependencies
72
77
  };
73
78
 
74
79
  var globalPvData = {};
@@ -1 +1 @@
1
- {"version":3,"file":"pvData.js","sources":["../../../src/pvCount/pvData.ts"],"sourcesContent":["import pack from \"../../package.json\";\nimport { push } from \"@xhs/reds-apm/src/index.native\";\nimport { pushByrequestIdleCallback } from \"@xhs/reds-apm/src/index.native\";\n\nlet globalPvData: Record<string, number> = {};\nexport const pushGlobalData = () => {\n if (Object.keys(globalPvData).length) {\n push({\n context_artifactName: \"reds-rn-next\",\n context_aritfactVersion: pack.version,\n measurement_name: \"reds_component_usage_pv\",\n measurement_data: {\n packageName: process.env.APP_NAME,\n packageVersion: process.env.APP_VERSION,\n pvData: JSON.stringify(globalPvData),\n },\n });\n // 上报完数据后清空数据\n globalPvData = {};\n }\n};\n\nexport const pvCount = (componentName: string) => {\n if (!globalPvData[componentName]) {\n globalPvData[componentName] = 1;\n } else {\n globalPvData[componentName]++;\n }\n pushByrequestIdleCallback(pushGlobalData);\n};\n"],"names":["globalPvData","pushGlobalData","Object","keys","length","push","context_artifactName","context_aritfactVersion","pack","version","measurement_name","measurement_data","packageName","process","env","APP_NAME","packageVersion","APP_VERSION","pvData","JSON","stringify","pvCount","componentName","pushByrequestIdleCallback"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,IAAIA,eAAuC,EAAC,CAAA;IAC/BC,iBAAiB,SAAjBA,iBAAuB;EAClC,IAAIC,MAAO,CAAAC,IAAA,CAAKH,YAAY,CAAA,CAAEI,MAAQ,EAAA;AAC/BC,IAAAA,IAAA,CAAA;AACHC,MAAAA,oBAAsB,EAAA,cAAA;MACtBC,yBAAyBC,IAAK,CAAAC,OAAA;AAC9BC,MAAAA,gBAAkB,EAAA,yBAAA;AAClBC,MAAAA,gBAAkB,EAAA;AAChBC,QAAAA,WAAA,EAAaC,QAAQC,GAAI,CAAAC,QAAA;AACzBC,QAAAA,cAAA,EAAgBH,QAAQC,GAAI,CAAAG,WAAA;AAC5BC,QAAAA,MAAA,EAAQC,IAAK,CAAAC,SAAA,CAAUpB,YAAY,CAAA;AACrC,OAAA;AACF,KAAC,CAAA,CAAA;IAEDA,YAAA,GAAe,EAAC,CAAA;AAClB,GAAA;AACF,EAAA;IAEaqB,OAAA,GAAU,SAAVA,OAAAA,CAAWC,aAA0B,EAAA;AAC5C,EAAA,IAAA,CAACtB,YAAa,CAAAsB,aAAa,CAAG,EAAA;AAChCtB,IAAAA,YAAA,CAAasB,aAAa,CAAI,GAAA,CAAA,CAAA;AAChC,GAAO,MAAA;IACLtB,YAAA,CAAasB,aAAa,CAAA,EAAA,CAAA;AAC5B,GAAA;EACAC,yBAAA,CAA0BtB,cAAc,CAAA,CAAA;AAC1C;;;;"}
1
+ {"version":3,"file":"pvData.js","sources":["../../../src/pvCount/pvData.ts"],"sourcesContent":["import pack from \"../../package.json\";\nimport { push } from \"@xhs/reds-apm/src/index.native\";\nimport { pushByrequestIdleCallback } from \"@xhs/reds-apm/src/index.native\";\n\nlet globalPvData: Record<string, number> = {};\nexport const pushGlobalData = () => {\n if (Object.keys(globalPvData).length) {\n push({\n context_artifactName: \"reds-rn-next\",\n context_aritfactVersion: pack.version,\n measurement_name: \"reds_component_usage_pv\",\n measurement_data: {\n packageName: process.env.APP_NAME,\n packageVersion: process.env.APP_VERSION,\n pvData: JSON.stringify(globalPvData),\n },\n });\n // 上报完数据后清空数据\n globalPvData = {};\n }\n};\n\nexport const pvCount = (componentName: string) => {\n if (!globalPvData[componentName]) {\n globalPvData[componentName] = 1;\n } else {\n globalPvData[componentName]++;\n }\n pushByrequestIdleCallback(pushGlobalData);\n};\n"],"names":["globalPvData","pushGlobalData","Object","keys","length","push","context_artifactName","context_aritfactVersion","pack","version","measurement_name","measurement_data","packageName","process","env","APP_NAME","packageVersion","APP_VERSION","pvData","JSON","stringify","pvCount","componentName","pushByrequestIdleCallback"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,IAAIA,eAAuC,EAAC,CAAA;IAC/BC,iBAAiB,SAAjBA,iBAAuB;EAClC,IAAIC,MAAO,CAAAC,IAAA,CAAKH,YAAY,CAAA,CAAEI,MAAQ,EAAA;AAC/BC,IAAAA,IAAA,CAAA;AACHC,MAAAA,oBAAsB,EAAA,cAAA;MACtBC,yBAAyBC,IAAK,CAAAC,OAAA;AAC9BC,MAAAA,gBAAkB,EAAA,yBAAA;AAClBC,MAAAA,gBAAkB,EAAA;AAChBC,QAAAA,WAAA,EAAaC,QAAQC,GAAI,CAAAC,QAAA;AACzBC,QAAAA,cAAA,EAAgBH,QAAQC,GAAI,CAAAG,WAAA;AAC5BC,QAAAA,MAAA,EAAQC,IAAK,CAAAC,SAAA,CAAUpB,YAAY,CAAA;AACrC,OAAA;AACF,KAAC,CAAA,CAAA;IAEDA,YAAA,GAAe,EAAC,CAAA;AAClB,GAAA;AACF,EAAA;IAEaqB,OAAA,GAAU,SAAVA,OAAAA,CAAWC,aAA0B,EAAA;AAC5C,EAAA,IAAA,CAACtB,YAAa,CAAAsB,aAAa,CAAG,EAAA;AAChCtB,IAAAA,YAAA,CAAasB,aAAa,CAAI,GAAA,CAAA,CAAA;AAChC,GAAO,MAAA;IACLtB,YAAA,CAAasB,aAAa,CAAA,EAAA,CAAA;AAC5B,GAAA;EACAC,yBAAA,CAA0BtB,cAAc,CAAA,CAAA;AAC1C;;;;"}
@@ -0,0 +1,3 @@
1
+ import React from "react";
2
+ declare const Viewable: (props: any) => React.JSX.Element;
3
+ export default Viewable;
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ import { IItem } from "./interface/index";
3
+ declare const Item: {
4
+ ({ value, title, lazyRender, children, onClick }: IItem): React.JSX.Element;
5
+ defaultProps: IItem;
6
+ };
7
+ export default Item;
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { ReactNode } from "react";
3
2
  import { ViewStyle, TextStyle } from "react-native";
4
3
  export declare const enum ALIGN {
@@ -1,5 +1,3 @@
1
- /// <reference types="react" />
2
- /// <reference types="node" />
3
1
  import { AnimatableNumericValue, DimensionValue, GestureResponderEvent, ImageSourcePropType, ViewStyle } from "react-native";
4
2
  export declare enum TLoadStyle {
5
3
  LOADING = "loading",
@@ -1,5 +1,3 @@
1
- /// <reference types="react" />
2
- /// <reference types="node" />
3
1
  import { ViewStyle } from "react-native";
4
2
  import { IconType } from "../../Icon";
5
3
  export type IconFunction = (props: {
@@ -1,5 +1,3 @@
1
- /// <reference types="react" />
2
- /// <reference types="node" />
3
1
  import { ViewStyle } from "react-native";
4
2
  export interface RedsSlider {
5
3
  value?: number;