@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.
- package/coverage/.tmp/coverage-0.json +1 -1
- package/coverage/.tmp/coverage-1.json +1 -1
- package/coverage/.tmp/coverage-10.json +1 -1
- package/coverage/.tmp/coverage-11.json +1 -1
- package/coverage/.tmp/coverage-12.json +1 -1
- package/coverage/.tmp/coverage-13.json +1 -1
- package/coverage/.tmp/coverage-14.json +1 -1
- package/coverage/.tmp/coverage-15.json +1 -1
- package/coverage/.tmp/coverage-16.json +1 -1
- package/coverage/.tmp/coverage-17.json +1 -1
- package/coverage/.tmp/coverage-21.json +1 -1
- package/coverage/.tmp/coverage-22.json +1 -1
- package/coverage/.tmp/coverage-23.json +1 -1
- package/coverage/.tmp/coverage-24.json +1 -1
- package/coverage/.tmp/coverage-25.json +1 -1
- package/coverage/.tmp/coverage-26.json +1 -1
- package/coverage/.tmp/coverage-27.json +1 -1
- package/coverage/.tmp/coverage-3.json +1 -1
- package/coverage/.tmp/coverage-34.json +1 -1
- package/coverage/.tmp/coverage-35.json +1 -1
- package/coverage/.tmp/coverage-37.json +1 -1
- package/coverage/.tmp/coverage-38.json +1 -1
- package/coverage/.tmp/coverage-39.json +1 -1
- package/coverage/.tmp/coverage-4.json +1 -1
- package/coverage/.tmp/coverage-40.json +1 -1
- package/coverage/.tmp/coverage-41.json +1 -1
- package/coverage/.tmp/coverage-5.json +1 -1
- package/coverage/.tmp/coverage-6.json +1 -1
- package/coverage/.tmp/coverage-7.json +1 -1
- package/coverage/.tmp/coverage-8.json +1 -1
- package/coverage/.tmp/coverage-9.json +1 -1
- package/lib/cjs/_chunks/BiKD1VTc.js.map +1 -1
- package/lib/cjs/components/ActionSheets/ActionSheets.js.map +1 -1
- package/lib/cjs/components/ActionablePopover/ActionablePopover.js +3 -0
- package/lib/cjs/components/ActionablePopover/ActionablePopover.js.map +1 -1
- package/lib/cjs/components/Alert/Alert.js +12 -9
- package/lib/cjs/components/Alert/Alert.js.map +1 -1
- package/lib/cjs/components/Alert/hooks/alert.js +1 -0
- package/lib/cjs/components/Alert/hooks/alert.js.map +1 -1
- package/lib/cjs/components/Alert/index.js +1 -0
- package/lib/cjs/components/Alert/index.js.map +1 -1
- package/lib/cjs/components/Button/Viewable.web.js +47 -0
- package/lib/cjs/components/Button/Viewable.web.js.map +1 -0
- package/lib/cjs/components/Collapse/Item/Item.web.js +164 -0
- package/lib/cjs/components/Collapse/Item/Item.web.js.map +1 -0
- package/lib/cjs/components/Image/index.js +1 -1
- package/lib/cjs/components/Image/index.js.map +1 -1
- package/lib/cjs/components/NoticeBar/NoticeBar.js +12 -6
- package/lib/cjs/components/NoticeBar/NoticeBar.js.map +1 -1
- package/lib/cjs/components/PickerView/PickerView.js +2 -1
- package/lib/cjs/components/PickerView/PickerView.js.map +1 -1
- package/lib/cjs/components/PickerView/Wheel.js +22 -2
- package/lib/cjs/components/PickerView/Wheel.js.map +1 -1
- package/lib/cjs/components/Popover/Popover.js +24 -28
- package/lib/cjs/components/Popover/Popover.js.map +1 -1
- package/lib/cjs/components/ProgressIndicator/ProgressIndicator.js +3 -3
- package/lib/cjs/components/ProgressIndicator/ProgressIndicator.js.map +1 -1
- package/lib/cjs/components/Radio/Radio.js +1 -0
- package/lib/cjs/components/Radio/Radio.js.map +1 -1
- package/lib/cjs/components/Radio/index.js +1 -0
- package/lib/cjs/components/Radio/index.js.map +1 -1
- package/lib/cjs/components/Sheets/AnimatedSheets.js +13 -2
- package/lib/cjs/components/Sheets/AnimatedSheets.js.map +1 -1
- package/lib/cjs/components/SlimAlert/Alert.js +12 -8
- package/lib/cjs/components/SlimAlert/Alert.js.map +1 -1
- package/lib/cjs/components/SlimAlert/PortalHost.js +28 -0
- package/lib/cjs/components/SlimAlert/PortalHost.js.map +1 -0
- package/lib/cjs/components/SlimAlert/PortalHost.web.js +12171 -0
- package/lib/cjs/components/SlimAlert/PortalHost.web.js.map +1 -0
- package/lib/cjs/components/SlimAlert/index.js +1 -0
- package/lib/cjs/components/SlimAlert/index.js.map +1 -1
- package/lib/cjs/components/Tag/Tag.js +10 -3
- package/lib/cjs/components/Tag/Tag.js.map +1 -1
- package/lib/cjs/components/TextField/TextField.js +22 -12
- package/lib/cjs/components/TextField/TextField.js.map +1 -1
- package/lib/cjs/components/TextView/TextView.js +4 -2
- package/lib/cjs/components/TextView/TextView.js.map +1 -1
- package/lib/cjs/components/Toast/Toast.js +1 -1
- package/lib/cjs/components/Toast/Toast.js.map +1 -1
- package/lib/cjs/index.js +1 -0
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/pvCount/pvData.js +11 -6
- package/lib/cjs/pvCount/pvData.js.map +1 -1
- package/lib/esm/_chunks/Dr5vetot.js.map +1 -1
- package/lib/esm/components/ActionSheets/ActionSheets.js.map +1 -1
- package/lib/esm/components/ActionablePopover/ActionablePopover.js +3 -0
- package/lib/esm/components/ActionablePopover/ActionablePopover.js.map +1 -1
- package/lib/esm/components/Alert/Alert.js +12 -9
- package/lib/esm/components/Alert/Alert.js.map +1 -1
- package/lib/esm/components/Alert/hooks/alert.js +1 -0
- package/lib/esm/components/Alert/hooks/alert.js.map +1 -1
- package/lib/esm/components/Alert/index.js +1 -0
- package/lib/esm/components/Alert/index.js.map +1 -1
- package/lib/esm/components/Button/Viewable.web.js +43 -0
- package/lib/esm/components/Button/Viewable.web.js.map +1 -0
- package/lib/esm/components/Collapse/Item/Item.web.js +160 -0
- package/lib/esm/components/Collapse/Item/Item.web.js.map +1 -0
- package/lib/esm/components/Image/index.js +1 -1
- package/lib/esm/components/Image/index.js.map +1 -1
- package/lib/esm/components/NoticeBar/NoticeBar.js +13 -7
- package/lib/esm/components/NoticeBar/NoticeBar.js.map +1 -1
- package/lib/esm/components/PickerView/PickerView.js +2 -1
- package/lib/esm/components/PickerView/PickerView.js.map +1 -1
- package/lib/esm/components/PickerView/Wheel.js +23 -3
- package/lib/esm/components/PickerView/Wheel.js.map +1 -1
- package/lib/esm/components/Popover/Popover.js +24 -28
- package/lib/esm/components/Popover/Popover.js.map +1 -1
- package/lib/esm/components/ProgressIndicator/ProgressIndicator.js +4 -4
- package/lib/esm/components/ProgressIndicator/ProgressIndicator.js.map +1 -1
- package/lib/esm/components/Radio/Radio.js +1 -0
- package/lib/esm/components/Radio/Radio.js.map +1 -1
- package/lib/esm/components/Radio/index.js +1 -0
- package/lib/esm/components/Radio/index.js.map +1 -1
- package/lib/esm/components/Sheets/AnimatedSheets.js +13 -2
- package/lib/esm/components/Sheets/AnimatedSheets.js.map +1 -1
- package/lib/esm/components/SlimAlert/Alert.js +12 -8
- package/lib/esm/components/SlimAlert/Alert.js.map +1 -1
- package/lib/esm/components/SlimAlert/PortalHost.js +24 -0
- package/lib/esm/components/SlimAlert/PortalHost.js.map +1 -0
- package/lib/esm/components/SlimAlert/PortalHost.web.js +12167 -0
- package/lib/esm/components/SlimAlert/PortalHost.web.js.map +1 -0
- package/lib/esm/components/SlimAlert/index.js +1 -0
- package/lib/esm/components/SlimAlert/index.js.map +1 -1
- package/lib/esm/components/Tag/Tag.js +12 -5
- package/lib/esm/components/Tag/Tag.js.map +1 -1
- package/lib/esm/components/TextField/TextField.js +22 -12
- package/lib/esm/components/TextField/TextField.js.map +1 -1
- package/lib/esm/components/TextView/TextView.js +4 -2
- package/lib/esm/components/TextView/TextView.js.map +1 -1
- package/lib/esm/components/Toast/Toast.js +2 -2
- package/lib/esm/components/Toast/Toast.js.map +1 -1
- package/lib/esm/index.js +1 -0
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/pvCount/pvData.js +11 -6
- package/lib/esm/pvCount/pvData.js.map +1 -1
- package/lib/src/components/Button/Viewable.web.d.ts +3 -0
- package/lib/src/components/Collapse/Item/Item.web.d.ts +7 -0
- package/lib/src/components/Form/interface/index.d.ts +0 -1
- package/lib/src/components/Image/interface/index.d.ts +0 -2
- package/lib/src/components/Search/interface/index.d.ts +0 -2
- package/lib/src/components/Slider/interface/index.d.ts +0 -2
- package/lib/src/components/SlimAlert/Alert.d.ts +1 -1
- package/lib/src/components/SlimAlert/PortalHost.d.ts +6 -0
- package/lib/src/components/SlimAlert/PortalHost.web.d.ts +6 -0
- package/lib/src/components/Video/interface/index.d.ts +0 -2
- package/lib/types/components/Button/Viewable.web.d.ts +3 -0
- package/lib/types/components/Collapse/Item/Item.web.d.ts +7 -0
- package/lib/types/components/SlimAlert/Alert.d.ts +1 -1
- package/lib/types/components/SlimAlert/PortalHost.d.ts +6 -0
- package/lib/types/components/SlimAlert/PortalHost.web.d.ts +6 -0
- package/package.json +9 -5
- package/src/components/ActionSheets/ActionSheets.tsx +0 -1
- package/src/components/ActionablePopover/ActionablePopover.tsx +3 -0
- package/src/components/Alert/Alert.tsx +5 -5
- package/src/components/Button/Viewable.web.tsx +44 -0
- package/src/components/Collapse/Item/Item.web.tsx +150 -0
- package/src/components/DatePicker/interface/index.ts +1 -0
- package/src/components/Image/index.ts +1 -1
- package/src/components/NoticeBar/NoticeBar.tsx +29 -5
- package/src/components/PickerView/PickerView.tsx +1 -1
- package/src/components/PickerView/Wheel.tsx +32 -3
- package/src/components/Popover/Popover.tsx +24 -26
- package/src/components/ProgressIndicator/ProgressIndicator.tsx +4 -12
- package/src/components/Sheets/AnimatedSheets.tsx +7 -3
- package/src/components/SlimAlert/Alert.tsx +9 -7
- package/src/components/SlimAlert/PortalHost.tsx +7 -0
- package/src/components/SlimAlert/PortalHost.web.tsx +11 -0
- package/src/components/Tag/Tag.tsx +7 -3
- package/src/components/TextField/TextField.tsx +19 -8
- package/src/components/TextView/TextView.tsx +15 -3
- package/src/components/Toast/Toast.tsx +2 -2
- package/src/i18n/@types/resources.d.ts +27 -27
- package/src/i18n/index.json +31 -31
- package/tsconfig.dts.json +1 -1
|
@@ -9,6 +9,7 @@ var components_SlimAlert_interface_index = require('../../_chunks/CBZ_1DUU.js');
|
|
|
9
9
|
require('../../_chunks/nlVjgQi5.js');
|
|
10
10
|
require('react');
|
|
11
11
|
require('react-native');
|
|
12
|
+
require('./PortalHost.js');
|
|
12
13
|
require('../Portal/core/Portal.js');
|
|
13
14
|
require('../Portal/core/hooks/usePortal.js');
|
|
14
15
|
require('../../_chunks/D1Q6Re0a.js');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -94,6 +94,9 @@ var getSizeStyles = function getSizeStyles(icon, afterIcon, size) {
|
|
|
94
94
|
};
|
|
95
95
|
return sizeStyles[size || "medium"];
|
|
96
96
|
};
|
|
97
|
+
var TouchableStyles = reactNative.Platform.OS === "web" ? {
|
|
98
|
+
border: "none"
|
|
99
|
+
} : {};
|
|
97
100
|
var getTextSizeStyles = function getTextSizeStyles(icon, afterIcon, size) {
|
|
98
101
|
var sizeStyles = {
|
|
99
102
|
mini: {
|
|
@@ -202,7 +205,8 @@ var Tag = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (props,
|
|
|
202
205
|
style: [styles.tag, tagStyle, props.style]
|
|
203
206
|
}, /* @__PURE__ */React.createElement(reactNative.TouchableNativeFeedback, {
|
|
204
207
|
disabled: disabled,
|
|
205
|
-
onPress: onClick
|
|
208
|
+
onPress: onClick,
|
|
209
|
+
style: TouchableStyles
|
|
206
210
|
}, /* @__PURE__ */React.createElement(reactNative.View, {
|
|
207
211
|
style: {
|
|
208
212
|
flexDirection: "row",
|
|
@@ -226,12 +230,15 @@ var Tag = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (props,
|
|
|
226
230
|
alignItems: "center",
|
|
227
231
|
height: "100%"
|
|
228
232
|
}
|
|
229
|
-
}, afterIcon))), closeabled &&
|
|
233
|
+
}, afterIcon))), closeabled &&
|
|
234
|
+
// @ts-expect-error
|
|
235
|
+
/* @__PURE__ */
|
|
236
|
+
React.createElement(reactNative.TouchableNativeFeedback, _rollupPluginBabelHelpers._defineProperty({
|
|
230
237
|
onPress: handleClose,
|
|
231
238
|
style: {
|
|
232
239
|
marginLeft: 3
|
|
233
240
|
}
|
|
234
|
-
}, closeIcon));
|
|
241
|
+
}, "style", TouchableStyles), closeIcon));
|
|
235
242
|
}));
|
|
236
243
|
var styles = reactNative.StyleSheet.create({
|
|
237
244
|
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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"}
|
|
@@ -20,7 +20,6 @@ require('../ConfigProvider/hooks/ConfigContext/ConfigContext.js');
|
|
|
20
20
|
require('../../pvCount/pvData.js');
|
|
21
21
|
|
|
22
22
|
var TextField = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
23
|
-
var _IconType$iconType;
|
|
24
23
|
var type = _ref.type,
|
|
25
24
|
_ref$modelValue = _ref.modelValue,
|
|
26
25
|
modelValue = _ref$modelValue === void 0 ? "" : _ref$modelValue,
|
|
@@ -132,7 +131,10 @@ var TextField = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
132
131
|
}
|
|
133
132
|
}, [modelValue, isControl]);
|
|
134
133
|
React.useEffect(function () {
|
|
135
|
-
|
|
134
|
+
var newShowClear = clearable && focused && value.length > 0;
|
|
135
|
+
if (newShowClear !== showClear) {
|
|
136
|
+
setShowClear(newShowClear);
|
|
137
|
+
}
|
|
136
138
|
}, [clearable, focused, value]);
|
|
137
139
|
var CloseClear = React.useMemo(function () {
|
|
138
140
|
if (colorMode === "light") {
|
|
@@ -146,6 +148,20 @@ var TextField = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
146
148
|
textInputRef: inputRef
|
|
147
149
|
};
|
|
148
150
|
});
|
|
151
|
+
var ClearIcon = React.useMemo(function () {
|
|
152
|
+
var _IconType$iconType;
|
|
153
|
+
return /* @__PURE__ */React.createElement(reactNative.View, _rollupPluginBabelHelpers._objectSpread2({
|
|
154
|
+
style: [styles.rightItem, {
|
|
155
|
+
display: showClear ? "flex" : "none"
|
|
156
|
+
}],
|
|
157
|
+
testID: "clear-icon"
|
|
158
|
+
}, clearAccessibility), /* @__PURE__ */React.createElement(components_Icon_Icon.default, {
|
|
159
|
+
icon: CloseClear,
|
|
160
|
+
onClick: handleClear,
|
|
161
|
+
size: 20,
|
|
162
|
+
type: (_IconType$iconType = components_Icon_interface_index.iconType) === null || _IconType$iconType === void 0 ? void 0 : _IconType$iconType.image
|
|
163
|
+
}));
|
|
164
|
+
}, [showClear, handleClear, clearAccessibility]);
|
|
149
165
|
return /* @__PURE__ */React.createElement(reactNative.View, {
|
|
150
166
|
style: [isFormItem ? {} : styles.wrapper, style]
|
|
151
167
|
}, /* @__PURE__ */React.createElement(reactNative.View, {
|
|
@@ -155,7 +171,9 @@ var TextField = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
155
171
|
}, /* @__PURE__ */React.createElement(reactNative.TextInput, _rollupPluginBabelHelpers._objectSpread2({
|
|
156
172
|
testID: "text-input",
|
|
157
173
|
ref: inputRef,
|
|
158
|
-
style: [styles.input, inputStyle
|
|
174
|
+
style: [styles.input, inputStyle, {
|
|
175
|
+
outline: "none"
|
|
176
|
+
}],
|
|
159
177
|
value: value,
|
|
160
178
|
autoFocus: autofocus,
|
|
161
179
|
onChangeText: updateValue,
|
|
@@ -176,15 +194,7 @@ var TextField = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
176
194
|
inputRef === null || inputRef === void 0 || (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 || _inputRef$current2.focus();
|
|
177
195
|
setFocused(true);
|
|
178
196
|
}
|
|
179
|
-
}, placeholder)),
|
|
180
|
-
style: styles.rightItem,
|
|
181
|
-
testID: "clear-icon"
|
|
182
|
-
}, clearAccessibility), /* @__PURE__ */React.createElement(components_Icon_Icon.default, {
|
|
183
|
-
icon: CloseClear,
|
|
184
|
-
onClick: handleClear,
|
|
185
|
-
size: 20,
|
|
186
|
-
type: (_IconType$iconType = components_Icon_interface_index.iconType) === null || _IconType$iconType === void 0 ? void 0 : _IconType$iconType.image
|
|
187
|
-
})), showCount && maxLength && /* @__PURE__ */React.createElement(reactNative.View, {
|
|
197
|
+
}, placeholder)), ClearIcon, showCount && maxLength && /* @__PURE__ */React.createElement(reactNative.View, {
|
|
188
198
|
style: styles.rightItem
|
|
189
199
|
}, /* @__PURE__ */React.createElement(reactNative.Text, {
|
|
190
200
|
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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"}
|
|
@@ -163,7 +163,8 @@ var TextField = /*#__PURE__*/React$1.forwardRef(function (props, ref) {
|
|
|
163
163
|
ref: inputRef,
|
|
164
164
|
style: [styles.input, {
|
|
165
165
|
minHeight: rows * 24,
|
|
166
|
-
height: "auto"
|
|
166
|
+
height: "auto",
|
|
167
|
+
outline: "none"
|
|
167
168
|
}, style],
|
|
168
169
|
value: value,
|
|
169
170
|
onChangeText: handleChangeText,
|
|
@@ -190,7 +191,8 @@ var TextField = /*#__PURE__*/React$1.forwardRef(function (props, ref) {
|
|
|
190
191
|
}, "".concat(Math.min(modelValueStringLength, maxLength), "/").concat(maxLength))), showClear && modelValueStringLength && focused && /* @__PURE__ */React.createElement(reactNative.View, {
|
|
191
192
|
style: styles.rightItem
|
|
192
193
|
}, /* @__PURE__ */React.createElement(reactNative.TouchableWithoutFeedback, {
|
|
193
|
-
onPress: handleClear
|
|
194
|
+
onPress: handleClear,
|
|
195
|
+
onPressOut: reactNative.Platform.OS === "web" ? handleClear : void 0
|
|
194
196
|
}, /* @__PURE__ */React.createElement(reactNative.View, {
|
|
195
197
|
style: styles.clearIconContainer
|
|
196
198
|
}, /* @__PURE__ */React.createElement(reactNative.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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"}
|
|
@@ -114,7 +114,7 @@ var ToastContainer = function ToastContainer(p) {
|
|
|
114
114
|
style: [styles.ToastContainer, {
|
|
115
115
|
opacity: fadeAnim.current
|
|
116
116
|
}],
|
|
117
|
-
pointerEvents: mask ? void 0 : "none"
|
|
117
|
+
pointerEvents: mask || reactNative.Platform.OS === "web" ? void 0 : "none"
|
|
118
118
|
}, /* @__PURE__ */React.createElement(reactNative.View, {
|
|
119
119
|
style: [components_Toast_styles.getContainerStyle(props), {
|
|
120
120
|
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/cjs/index.js
CHANGED
|
@@ -207,6 +207,7 @@ require('./components/Sheets/styles.js');
|
|
|
207
207
|
require('@xhs/reder-icon-svg-ReDs_icon');
|
|
208
208
|
require('./components/Radio/styles.js');
|
|
209
209
|
require('./components/ActionSheets/styles.js');
|
|
210
|
+
require('./components/SlimAlert/PortalHost.js');
|
|
210
211
|
require('./components/Alert/styles.js');
|
|
211
212
|
require('./components/FAB/styles.js');
|
|
212
213
|
require('./components/Toast/Toast.js');
|
package/lib/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -12,8 +12,8 @@ var dependencies = {
|
|
|
12
12
|
"@xhs/reds-apm": ">=0.0.1",
|
|
13
13
|
"async-validator": "~4.2.5",
|
|
14
14
|
dayjs: "*",
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
"react-native-url-polyfill": "*",
|
|
16
|
+
runes: "~0.4.3"
|
|
17
17
|
};
|
|
18
18
|
var publishConfig = {
|
|
19
19
|
access: "public"
|
|
@@ -22,15 +22,15 @@ var peerDependencies = {
|
|
|
22
22
|
"@xhs/lottie-react-native": "*",
|
|
23
23
|
"@xhs/ozone-schema": "*",
|
|
24
24
|
"@xhs/ozone-schema-web": "*",
|
|
25
|
+
"@xhs/react-native-harmony": "*",
|
|
25
26
|
"@xhs/reder-icon-svg-ReDs_icon": "*",
|
|
27
|
+
"@xhs/reds-components": "*",
|
|
26
28
|
"@xhsreds/reds-token-next": "workspace:*",
|
|
27
29
|
"lottie-react-native": "7.1.0",
|
|
28
30
|
react: "*",
|
|
29
31
|
"react-native": "*",
|
|
30
32
|
"react-native-fs": "2.20.0",
|
|
31
|
-
"react-native-svg": "13.14.0"
|
|
32
|
-
"@xhs/react-native-harmony": "*",
|
|
33
|
-
"@xhs/reds-components": "*"
|
|
33
|
+
"react-native-svg": "13.14.0"
|
|
34
34
|
};
|
|
35
35
|
var peerDependenciesMeta = {
|
|
36
36
|
"ozone-schema-web": {
|
|
@@ -58,6 +58,10 @@ var scripts = {
|
|
|
58
58
|
publish: "echo publish",
|
|
59
59
|
i18n: "npx i18n-fetch"
|
|
60
60
|
};
|
|
61
|
+
var devDependencies = {
|
|
62
|
+
"@types/react-dom": "18.2.0",
|
|
63
|
+
"react-dom": "18.2.0"
|
|
64
|
+
};
|
|
61
65
|
var pack = {
|
|
62
66
|
name: name,
|
|
63
67
|
version: version,
|
|
@@ -70,7 +74,8 @@ var pack = {
|
|
|
70
74
|
overrides: overrides,
|
|
71
75
|
module: module$1,
|
|
72
76
|
types: types,
|
|
73
|
-
scripts: scripts
|
|
77
|
+
scripts: scripts,
|
|
78
|
+
devDependencies: devDependencies
|
|
74
79
|
};
|
|
75
80
|
|
|
76
81
|
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":"
|
|
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,iBAAA,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,sCAAA,CAA0BtB,cAAc,CAAA,CAAA;AAC1C;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dr5vetot.js","sources":["../../../src/components/DatePicker/interface/index.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"Dr5vetot.js","sources":["../../../src/components/DatePicker/interface/index.ts"],"sourcesContent":["import { Platform } from \"react-native\";\nexport enum DatePickerMode {\n YearMonthDay = \"yearmonthday\",\n YearMonth = \"yearmonth\",\n Year = \"year\",\n Hour = \"hour\",\n HourMinute = \"hourminute\",\n HourMinuteSecond = \"hourminutesecond\",\n YearMonthDayHourMinute = \"yearmonthdayhourminute\",\n YearMonthDayHour = \"yearmonthdayhour\",\n}\nexport interface RedsDatePicker {\n visible: boolean;\n value: string;\n cancelText?: string;\n mode?: DatePickerMode;\n startYear?: number;\n endYear?: number;\n startTime?: string;\n endTime?: string;\n label: string;\n formatter?: (value: string) => any;\n onChange?: (value: string) => void;\n onCancel?: () => void;\n onConfirm?: (value: string) => void;\n isDatePattern?: boolean;\n closeText?: string;\n mask?: boolean;\n hostName?: string;\n}\n\nexport interface RedsDatePickerEvent {}\nexport const DatePickerDefaultProps = {\n visible: false,\n mode: DatePickerMode.YearMonthDay,\n formatter: (value: string) => value,\n onChange: (value: string) => {},\n onCancel: () => {},\n onConfirm: (value: string) => {},\n isDatePattern: false,\n hostName: \"root\",\n};\n"],"names":["DatePickerMode","DatePickerDefaultProps","visible","mode","formatter","value","onChange","onCancel","onConfirm","isDatePattern","hostName"],"mappings":"IACYA,cAAA,4BAAAA,eAAL,EAAA;AACLA,EAAAA,gBAAA,cAAe,CAAA,GAAA,cAAA,CAAA;AACfA,EAAAA,gBAAA,WAAY,CAAA,GAAA,WAAA,CAAA;AACZA,EAAAA,gBAAA,MAAO,CAAA,GAAA,MAAA,CAAA;AACPA,EAAAA,gBAAA,MAAO,CAAA,GAAA,MAAA,CAAA;AACPA,EAAAA,gBAAA,YAAa,CAAA,GAAA,YAAA,CAAA;AACbA,EAAAA,gBAAA,kBAAmB,CAAA,GAAA,kBAAA,CAAA;AACnBA,EAAAA,gBAAA,wBAAyB,CAAA,GAAA,wBAAA,CAAA;AACzBA,EAAAA,gBAAA,kBAAmB,CAAA,GAAA,kBAAA,CAAA;AARTA,EAAAA,OAAAA,eAAAA,CAAAA;AAAA,CAAA,CAAAA,cAAA,IAAA,EAAA,EAAA;AA+BL,IAAMC,sBAAyB,GAAA;AACpCC,EAAAA,OAAS,EAAA,KAAA;EACTC,IAAM,EAAA,cAAA;AACNC,EAAAA,SAAA,EAAW,SAAXA,SAAAA,CAAYC,KAAkB,EAAA;AAAA,IAAA,OAAAA,KAAA,CAAA;AAAA,GAAA;AAC9BC,EAAAA,QAAA,EAAU,SAAVA,QAAAA,CAAWD,KAAkB,EAAA,EAAC;AAC9BE,EAAAA,UAAU,SAAVA,WAAgB,EAAC;AACjBC,EAAAA,SAAA,EAAW,SAAXA,SAAAA,CAAYH,KAAkB,EAAA,EAAC;AAC/BI,EAAAA,aAAe,EAAA,KAAA;AACfC,EAAAA,QAAU,EAAA,MAAA;AACZ;;;;;;;;;;"}
|