@xhsreds/reds-rn-next 0.10.1-beta202512112152 → 0.10.1-beta202512171921
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-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-18.json +1 -1
- package/coverage/.tmp/coverage-19.json +1 -1
- package/coverage/.tmp/coverage-2.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-26.json +1 -1
- package/coverage/.tmp/coverage-27.json +1 -1
- package/coverage/.tmp/coverage-28.json +1 -1
- package/coverage/.tmp/coverage-29.json +1 -1
- package/coverage/.tmp/coverage-30.json +1 -1
- package/coverage/.tmp/coverage-31.json +1 -1
- package/coverage/.tmp/coverage-32.json +1 -1
- package/coverage/.tmp/coverage-33.json +1 -1
- package/coverage/.tmp/coverage-34.json +1 -1
- package/coverage/.tmp/coverage-35.json +1 -1
- package/coverage/.tmp/coverage-36.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-42.json +1 -1
- package/coverage/.tmp/coverage-5.json +1 -1
- package/coverage/.tmp/coverage-6.json +1 -1
- package/coverage/.tmp/coverage-8.json +1 -1
- package/coverage/.tmp/coverage-9.json +1 -1
- package/lib/cjs/components/Icon/Icon.72.js +1 -1
- package/lib/cjs/components/Icon/Icon.72.js.map +1 -1
- package/lib/cjs/components/Image/CircularProgress.js +1 -1
- package/lib/cjs/components/Image/CircularProgress.js.map +1 -1
- package/lib/cjs/components/Image/Image.js +1 -1
- package/lib/cjs/components/Image/index.js +1 -1
- package/lib/cjs/components/List/ListItem/ArrowRight.js +1 -1
- package/lib/cjs/components/List/ListItem/ArrowRight.js.map +1 -1
- package/lib/cjs/components/PullRefresh/PullRefresh.js +77 -17
- package/lib/cjs/components/PullRefresh/PullRefresh.js.map +1 -1
- package/lib/cjs/components/PullRefresh/Refresh.js +1 -1
- package/lib/cjs/components/PullRefresh/Refresh.js.map +1 -1
- package/lib/cjs/components/PullRefresh/component.js +1 -1
- package/lib/cjs/components/PullRefresh/index.js +1 -1
- package/lib/cjs/components/Radio/Radio.js +1 -1
- package/lib/cjs/components/Radio/index.js +1 -1
- package/lib/cjs/components/Skeleton/Item/SkeletonItem.js +1 -1
- package/lib/cjs/components/Skeleton/Item/SkeletonItem.js.map +1 -1
- package/lib/cjs/components/Skeleton/Skeleton.js +1 -1
- package/lib/cjs/components/Skeleton/index.js +1 -1
- package/lib/cjs/index.js +1 -1
- package/lib/cjs/pvCount/pvData.js +1 -2
- package/lib/cjs/pvCount/pvData.js.map +1 -1
- package/lib/esm/components/Icon/Icon.72.js +1 -1
- package/lib/esm/components/Icon/Icon.72.js.map +1 -1
- package/lib/esm/components/Image/CircularProgress.js +1 -1
- package/lib/esm/components/Image/CircularProgress.js.map +1 -1
- package/lib/esm/components/Image/Image.js +1 -1
- package/lib/esm/components/Image/index.js +1 -1
- package/lib/esm/components/List/ListItem/ArrowRight.js +1 -1
- package/lib/esm/components/List/ListItem/ArrowRight.js.map +1 -1
- package/lib/esm/components/PullRefresh/PullRefresh.js +77 -17
- package/lib/esm/components/PullRefresh/PullRefresh.js.map +1 -1
- package/lib/esm/components/PullRefresh/Refresh.js +1 -1
- package/lib/esm/components/PullRefresh/Refresh.js.map +1 -1
- package/lib/esm/components/PullRefresh/component.js +1 -1
- package/lib/esm/components/PullRefresh/index.js +1 -1
- package/lib/esm/components/Radio/Radio.js +1 -1
- package/lib/esm/components/Radio/index.js +1 -1
- package/lib/esm/components/Skeleton/Item/SkeletonItem.js +1 -1
- package/lib/esm/components/Skeleton/Item/SkeletonItem.js.map +1 -1
- package/lib/esm/components/Skeleton/Skeleton.js +1 -1
- package/lib/esm/components/Skeleton/index.js +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/esm/pvCount/pvData.js +1 -2
- package/lib/esm/pvCount/pvData.js.map +1 -1
- package/package.json +2 -3
- package/src/components/Icon/Icon.72.tsx +1 -1
- package/src/components/Icon/test/index.test.tsx +2 -2
- package/src/components/Image/CircularProgress.tsx +1 -1
- package/src/components/List/ListItem/ArrowRight.tsx +1 -1
- package/src/components/PullRefresh/PullRefresh.tsx +113 -39
- package/src/components/PullRefresh/Refresh.tsx +1 -1
- package/src/components/Skeleton/Item/SkeletonItem.tsx +1 -1
- package/src/i18n/@types/resources.d.ts +27 -27
- package/src/i18n/index.json +31 -31
|
@@ -37,7 +37,7 @@ require('@xhs/lottie-react-native');
|
|
|
37
37
|
require('../../_chunks/DoNqsT5m.js');
|
|
38
38
|
require('../LanguageProvider/hooks/LanguageContext.js');
|
|
39
39
|
require('../../i18n/index.js');
|
|
40
|
-
require('
|
|
40
|
+
require('react-native-svg');
|
|
41
41
|
|
|
42
42
|
var DefaultRefreshControl = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
43
43
|
var PullDownToRefreshKey = props.pullDownToRefreshText || components_LanguageProvider_hooks_useLanguage.useLanguage("componentKey", "PullDownToRefreshKey");
|
|
@@ -39,7 +39,7 @@ require('../LanguageProvider/hooks/LanguageContext.js');
|
|
|
39
39
|
require('../LanguageProvider/hooks/useLanguage.js');
|
|
40
40
|
require('../../i18n/index.js');
|
|
41
41
|
require('./Refresh.js');
|
|
42
|
-
require('
|
|
42
|
+
require('react-native-svg');
|
|
43
43
|
|
|
44
44
|
|
|
45
45
|
|
|
@@ -224,7 +224,7 @@ require('../List/styles.js');
|
|
|
224
224
|
require('../Skeleton/Skeleton.js');
|
|
225
225
|
require('../Skeleton/Item/SkeletonItem.js');
|
|
226
226
|
require('../Skeleton/Item/styles.js');
|
|
227
|
-
require('
|
|
227
|
+
require('react-native-svg');
|
|
228
228
|
require('../Skeleton/styles.js');
|
|
229
229
|
require('../Skeleton/Skeleton69.js');
|
|
230
230
|
require('../Skeleton/Item/SkeletonItem69.js');
|
|
@@ -176,7 +176,7 @@ require('../../_chunks/DC7LGH1r.js');
|
|
|
176
176
|
require('../Skeleton/Item/SkeletonItem.js');
|
|
177
177
|
require('../../_chunks/EQWxZmIF.js');
|
|
178
178
|
require('../Skeleton/Item/styles.js');
|
|
179
|
-
require('
|
|
179
|
+
require('react-native-svg');
|
|
180
180
|
require('../Skeleton/styles.js');
|
|
181
181
|
require('../Skeleton/Skeleton69.js');
|
|
182
182
|
require('../Skeleton/Item/SkeletonItem69.js');
|
|
@@ -10,7 +10,7 @@ var components_Skeleton_Item_styles = require('./styles.js');
|
|
|
10
10
|
require('../../ConfigProvider/hooks/ConfigCache/ConfigCache.js');
|
|
11
11
|
require('@xhs/reds-apm/src/index.native');
|
|
12
12
|
var components_ConfigProvider_hooks_themeToken_useThemeToken = require('../../ConfigProvider/hooks/themeToken/useThemeToken.js');
|
|
13
|
-
var Svg = require('
|
|
13
|
+
var Svg = require('react-native-svg');
|
|
14
14
|
require('@xhsreds/reds-token-next');
|
|
15
15
|
require('../../ConfigProvider/hooks/ConfigContext/ConfigContext.js');
|
|
16
16
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkeletonItem.js","sources":["../../../../../src/components/Skeleton/Item/SkeletonItem.tsx"],"sourcesContent":["import React, { useState, useRef, useEffect, useMemo, useCallback } from \"react\";\nimport { View, Easing, Animated, Text } from \"react-native\";\nimport { RedsSkeletonItem, SkeletonItemDefaultProps } from \"./interface/index\";\nimport createStyles from \"./styles\";\nimport { useThemeColor } from \"../../ConfigProvider\";\nimport Svg, { Defs, LinearGradient, Stop, Rect, ClipPath } from \"
|
|
1
|
+
{"version":3,"file":"SkeletonItem.js","sources":["../../../../../src/components/Skeleton/Item/SkeletonItem.tsx"],"sourcesContent":["import React, { useState, useRef, useEffect, useMemo, useCallback } from \"react\";\nimport { View, Easing, Animated, Text } from \"react-native\";\nimport { RedsSkeletonItem, SkeletonItemDefaultProps } from \"./interface/index\";\nimport createStyles from \"./styles\";\nimport { useThemeColor } from \"../../ConfigProvider\";\nimport Svg, { Defs, LinearGradient, Stop, Rect, ClipPath } from \"react-native-svg\";\n\nconst RectAnimation = Animated.createAnimatedComponent(Rect);\n\nconst SkeletonItem = (props: RedsSkeletonItem) => {\n const {\n loading,\n type,\n animation,\n containerStyle,\n borderRadius, // 解构新属性\n } = { ...SkeletonItemDefaultProps, ...props };\n\n const animValue = useRef(new Animated.Value(0)).current;\n const themeColor = useThemeColor();\n const styles = createStyles(type);\n\n useEffect(() => {\n if (animation) {\n Animated.loop(\n Animated.timing(animValue, {\n toValue: 1,\n duration: 2000,\n easing: Easing.linear,\n useNativeDriver: false,\n }),\n ).start();\n }\n }, [animation]);\n\n const interpolatedValue = animValue.interpolate({\n inputRange: [0, 1],\n outputRange: [\"-148%\", \"-8%\"],\n });\n\n return (\n loading && (\n <Animated.View\n style={[\n styles,\n {\n borderRadius: borderRadius, // 应用 borderRadius\n overflow: \"hidden\", // 确保内容不会超出圆角边界\n },\n containerStyle,\n ]}\n >\n <Svg height=\"100%\" width=\"100%\">\n <Defs>\n <LinearGradient id=\"gradient\" x1=\"0\" y1=\"0\" x2=\"100%\" y2=\"0%\">\n <Stop offset=\"25%\" stopColor={props.color || themeColor.Fill1} stopOpacity={0.2} />\n <Stop offset=\"28%\" stopColor={props.color || themeColor.Fill1} stopOpacity={0.15} />\n <Stop offset=\"35%\" stopColor={props.color || themeColor.Fill1} stopOpacity={0.2} />\n </LinearGradient>\n {/* 如果需要 SVG 内容也遵循圆角,添加 ClipPath */}\n {borderRadius > 0 && (\n <ClipPath id=\"clip\">\n <Rect\n x=\"0\"\n y=\"0\"\n width=\"100%\"\n height=\"100%\"\n rx={type === \"avatar\" ? 100 : borderRadius}\n ry={type === \"avatar\" ? 100 : borderRadius}\n />\n </ClipPath>\n )}\n </Defs>\n <RectAnimation\n x={interpolatedValue}\n y=\"0%\"\n width=\"400%\"\n height=\"100%\"\n fill=\"url(#gradient)\"\n opacity={0.3}\n clipPath={borderRadius > 0 ? \"url(#clip)\" : undefined} // 应用裁剪路径\n />\n </Svg>\n </Animated.View>\n )\n );\n};\n\nSkeletonItem.defaultProps = SkeletonItemDefaultProps;\n\nexport default SkeletonItem;\n"],"names":["RectAnimation","Animated","createAnimatedComponent","Rect","SkeletonItem","props","_SkeletonItemDefaultP","_objectSpread","SkeletonItemDefaultProps","loading","type","animation","containerStyle","borderRadius","animValue","useRef","Value","current","themeColor","useThemeColor","styles","createStyles","useEffect","loop","timing","toValue","duration","easing","Easing","linear","useNativeDriver","start","interpolatedValue","interpolate","inputRange","outputRange","React","createElement","View","style","overflow","Svg","height","width","Defs","LinearGradient","id","x1","y1","x2","y2","Stop","offset","stopColor","color","Fill1","stopOpacity","ClipPath","x","y","rx","ry","fill","opacity","clipPath","defaultProps"],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@ require('@xhsreds/reds-token-next');
|
|
|
16
16
|
require('@xhs/reds-apm/src/index.native');
|
|
17
17
|
require('../ConfigProvider/hooks/themeToken/useThemeToken.js');
|
|
18
18
|
require('../ConfigProvider/hooks/ConfigContext/ConfigContext.js');
|
|
19
|
-
require('
|
|
19
|
+
require('react-native-svg');
|
|
20
20
|
require('../../pvCount/pvData.js');
|
|
21
21
|
|
|
22
22
|
var Skeleton = function Skeleton(props) {
|
|
@@ -20,7 +20,7 @@ require('../ConfigProvider/hooks/ConfigCache/ConfigCache.js');
|
|
|
20
20
|
require('@xhsreds/reds-token-next');
|
|
21
21
|
require('../ConfigProvider/hooks/themeToken/useThemeToken.js');
|
|
22
22
|
require('../ConfigProvider/hooks/ConfigContext/ConfigContext.js');
|
|
23
|
-
require('
|
|
23
|
+
require('react-native-svg');
|
|
24
24
|
|
|
25
25
|
var _Platform$constants, _Platform$constants2;
|
|
26
26
|
var SkeletonComponent = ((_Platform$constants = reactNative.Platform.constants) === null || _Platform$constants === void 0 || (_Platform$constants = _Platform$constants.reactNativeVersion) === null || _Platform$constants === void 0 ? void 0 : _Platform$constants.minor) === 72 ? components_Skeleton_Skeleton.default : components_Skeleton_Skeleton69.default;
|
package/lib/cjs/index.js
CHANGED
|
@@ -223,7 +223,7 @@ require('./components/List/styles.js');
|
|
|
223
223
|
require('./components/Skeleton/Skeleton.js');
|
|
224
224
|
require('./components/Skeleton/Item/SkeletonItem.js');
|
|
225
225
|
require('./components/Skeleton/Item/styles.js');
|
|
226
|
-
require('
|
|
226
|
+
require('react-native-svg');
|
|
227
227
|
require('./components/Skeleton/styles.js');
|
|
228
228
|
require('./components/Skeleton/Skeleton69.js');
|
|
229
229
|
require('./components/Skeleton/Item/SkeletonItem69.js');
|
|
@@ -29,8 +29,7 @@ var peerDependencies = {
|
|
|
29
29
|
"react-native": "*",
|
|
30
30
|
"react-native-fs": "2.20.0",
|
|
31
31
|
"react-native-svg": "13.14.0",
|
|
32
|
-
"@xhs/react-native-harmony": "*"
|
|
33
|
-
"@xhs/reds-components": "*"
|
|
32
|
+
"@xhs/react-native-harmony": "*"
|
|
34
33
|
};
|
|
35
34
|
var peerDependenciesMeta = {
|
|
36
35
|
"ozone-schema-web": {
|
|
@@ -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,6 +1,6 @@
|
|
|
1
1
|
import React, { useCallback, useMemo } from 'react';
|
|
2
2
|
import { Image, TouchableOpacity } from 'react-native';
|
|
3
|
-
import { SvgXml } from '
|
|
3
|
+
import { SvgXml } from 'react-native-svg';
|
|
4
4
|
import { i as iconType, I as IconDefaultProps } from '../../_chunks/xi-gXLIR.js';
|
|
5
5
|
|
|
6
6
|
var Icon = function Icon(props) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Icon.72.js","sources":["../../../../src/components/Icon/Icon.72.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from \"react\";\nimport { GestureResponderEvent, Image, TouchableOpacity } from \"react-native\";\nimport { SvgXml } from \"
|
|
1
|
+
{"version":3,"file":"Icon.72.js","sources":["../../../../src/components/Icon/Icon.72.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from \"react\";\nimport { GestureResponderEvent, Image, TouchableOpacity } from \"react-native\";\nimport { SvgXml } from \"react-native-svg\";\nimport { RedsIcon, IconDefaultProps, iconType } from \"./interface/index\";\nconst Icon: React.FC<RedsIcon> = (props) => {\n const { size, fill, onClick, icon } = props || {};\n\n /** icon点击事件 */\n const toggleIcon = useCallback(\n (e: GestureResponderEvent) => {\n onClick?.(e);\n },\n [onClick],\n );\n\n /** icon svg 数据 */\n const iconSvg = useMemo(() => {\n if (props?.type === iconType.svg) {\n if (typeof icon === \"function\") {\n return size ? (fill ? icon({ size: size, fill: fill }) : icon({ size: size })) : icon({ size: 24 });\n } else {\n return icon ?? \"\";\n }\n } else {\n return \"\";\n }\n }, [icon, size, fill]);\n\n const isImage = useMemo(() => {\n return (\n props.type === iconType.image ||\n (typeof icon === \"string\" && icon.includes(\"http\") && icon.indexOf(\"<svg\") === -1)\n );\n }, [props.type, icon]);\n\n const Wrapper = (props: any) => {\n return onClick ? (\n <TouchableOpacity\n testID=\"touchable-element\"\n onPress={toggleIcon}\n activeOpacity={1}\n hitSlop={{ top: 20, bottom: 20, left: 20, right: 20 }}\n >\n {props.children}\n </TouchableOpacity>\n ) : (\n props.children\n );\n };\n\n return (\n <Wrapper>\n {isImage && icon ? (\n <Image\n source={{ uri: icon as string }}\n style={[props.size ? { height: props.size, width: props.size } : {}, props.styles ? props.styles : {}]}\n />\n ) : (\n iconSvg && <SvgXml testID=\"svg-element\" xml={iconSvg || \"\"} />\n )}\n </Wrapper>\n );\n};\n\nexport default Icon;\n\nIcon.defaultProps = IconDefaultProps;\n"],"names":["Icon","props","_ref","size","fill","onClick","icon","toggleIcon","useCallback","e","iconSvg","useMemo","type","iconType","svg","isImage","image","includes","indexOf","Wrapper","React","createElement","TouchableOpacity","testID","onPress","activeOpacity","hitSlop","top","bottom","left","right","children","Image","source","uri","style","height","width","styles","SvgXml","xml","defaultProps","IconDefaultProps"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { lightColor } from '@xhsreds/reds-token-next';
|
|
2
2
|
import React, { useRef, useEffect } from 'react';
|
|
3
3
|
import { Animated, StyleSheet, View } from 'react-native';
|
|
4
|
-
import Svg, { Circle, G } from '
|
|
4
|
+
import Svg, { Circle, G } from 'react-native-svg';
|
|
5
5
|
|
|
6
6
|
var AnimatedCircle = Animated.createAnimatedComponent(Circle);
|
|
7
7
|
var CircularProgress = function CircularProgress(_ref) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CircularProgress.js","sources":["../../../../src/components/Image/CircularProgress.tsx"],"sourcesContent":["import { lightColor } from \"@xhsreds/reds-token-next\";\nimport React, { useEffect, useRef } from \"react\";\nimport { View, Animated, StyleSheet } from \"react-native\";\nimport Svg, { Circle, G } from \"
|
|
1
|
+
{"version":3,"file":"CircularProgress.js","sources":["../../../../src/components/Image/CircularProgress.tsx"],"sourcesContent":["import { lightColor } from \"@xhsreds/reds-token-next\";\nimport React, { useEffect, useRef } from \"react\";\nimport { View, Animated, StyleSheet } from \"react-native\";\nimport Svg, { Circle, G } from \"react-native-svg\";\n\nconst AnimatedCircle = Animated.createAnimatedComponent(Circle);\n\nconst CircularProgress = ({ size = 40, strokeWidth = 3, progress = 75 }) => {\n const animatedValue = useRef(new Animated.Value(0)).current;\n\n useEffect(() => {\n Animated.timing(animatedValue, {\n toValue: progress,\n duration: 0,\n useNativeDriver: true,\n }).start();\n }, [progress]);\n\n const radius = (size - strokeWidth) / 2;\n const circumference = 2 * Math.PI * radius;\n const strokeDashoffset = animatedValue.interpolate({\n inputRange: [0, 100],\n outputRange: [circumference, 0],\n });\n\n return (\n <View style={styles.container}>\n <Svg width={size} height={size} viewBox={`0 0 ${size} ${size}`}>\n <G rotation=\"-90\" origin={`${size / 2}, ${size / 2}`}>\n <Circle cx=\"50%\" cy=\"50%\" r={radius} stroke={lightColor.Fill2} strokeWidth={strokeWidth} fill=\"none\" />\n <AnimatedCircle\n cx=\"50%\"\n cy=\"50%\"\n r={radius}\n stroke={lightColor.Fill4}\n strokeWidth={strokeWidth}\n fill=\"none\"\n strokeDasharray={`${circumference}, ${circumference}`}\n strokeDashoffset={strokeDashoffset}\n strokeLinecap=\"round\"\n />\n </G>\n </Svg>\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n justifyContent: \"center\",\n alignItems: \"center\",\n flex: 1,\n },\n});\n\nexport default CircularProgress;\n"],"names":["AnimatedCircle","Animated","createAnimatedComponent","Circle","CircularProgress","_ref","_ref$size","size","strokeWidth","_ref$strokeWidth","_ref$progress","progress","animatedValue","useRef","Value","current","useEffect","timing","toValue","duration","useNativeDriver","start","radius","circumference","Math","PI","strokeDashoffset","interpolate","inputRange","outputRange","View","style","styles","container","React","createElement","Svg","width","height","viewBox","concat","G","rotation","origin","cx","cy","r","stroke","lightColor","Fill2","fill","Fill4","strokeDasharray","strokeLinecap","StyleSheet","create","justifyContent","alignItems","flex"],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ import { useColorMode } from '../ConfigProvider/hooks/themeToken/useColorMode.js
|
|
|
12
12
|
import { isLocalFile, isDataUri, convertKeysToSnakeCase } from './utils.js';
|
|
13
13
|
import { apmPush } from './apm.js';
|
|
14
14
|
import { queryCacheBatched } from './queryCacheBatcher.js';
|
|
15
|
-
import '
|
|
15
|
+
import 'react-native-svg';
|
|
16
16
|
import '../ConfigProvider/hooks/ConfigContext/ConfigContext.js';
|
|
17
17
|
|
|
18
18
|
var _excluded = ["src", "source", "width", "height", "borderRadius", "errorStyle", "loadStyle", "style", "abortApmCollection", "fadeDuration", "onFirstDrawFinished"];
|
|
@@ -8,7 +8,7 @@ import './styles.js';
|
|
|
8
8
|
import '@xhsreds/reds-token-next';
|
|
9
9
|
import './hook/index.js';
|
|
10
10
|
import './CircularProgress.js';
|
|
11
|
-
import '
|
|
11
|
+
import 'react-native-svg';
|
|
12
12
|
import '../ConfigProvider/hooks/ConfigCache/ConfigCache.js';
|
|
13
13
|
import '@xhs/reds-apm/src/index.native';
|
|
14
14
|
import '../ConfigProvider/hooks/themeToken/useColorMode.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ArrowRight.js","sources":["../../../../../src/components/List/ListItem/ArrowRight.tsx"],"sourcesContent":["import React from \"react\";\nimport Svg, { Path } from \"
|
|
1
|
+
{"version":3,"file":"ArrowRight.js","sources":["../../../../../src/components/List/ListItem/ArrowRight.tsx"],"sourcesContent":["import React from \"react\";\nimport Svg, { Path } from \"react-native-svg\";\n\nconst ArrowRight: React.FC = () => {\n return (\n <Svg width=\"7\" height=\"12\" viewBox=\"0 0 7 12\" fill=\"none\">\n <Path\n d=\"M5.00001 5.82306L0.880508 1.81204C0.616137 1.55578 0.609566 1.13372 0.865831 0.869345C1.1221 0.604974 1.54415 0.598403 1.80853 0.854668L6.35571 5.28111C6.76108 5.67405 6.77116 6.32121 6.37822 6.72658C6.36708 6.73795 6.36708 6.73795 6.35571 6.74908L1.79718 11.1439C1.53281 11.4002 1.11075 11.3936 0.854485 11.1292C0.59822 10.8649 0.604791 10.4428 0.869162 10.1865L4.99904 6.20613C5.10508 6.10393 5.10819 5.93511 5.00599 5.82907C5.00403 5.82704 5.00204 5.82503 5.00001 5.82306Z\"\n fill=\"#333333\"\n fillOpacity=\"0.3\"\n />\n </Svg>\n );\n};\n\nexport default ArrowRight;\n"],"names":["ArrowRight","React","createElement","Svg","width","height","viewBox","fill","Path","d","fillOpacity"],"mappings":";;;AAGA,IAAMA,aAAuB,SAAvBA,aAA6B;AAE/B,EAAA,sBAAAC,KAAA,CAAAC,aAAA,CAACC;AAAIC,IAAAA,KAAM,EAAA,GAAA;AAAIC,IAAAA,QAAO,IAAK;AAAAC,IAAAA,OAAA,EAAQ,UAAW;AAAAC,IAAAA,IAAA,EAAK,MAAA;AACjD,GAAA,iBAAAN,KAAA,CAAAC,aAAA,CAACM,IAAA,EAAA;AACCC,IAAAA,CAAE,EAAA,6dAAA;AACFF,IAAAA,IAAK,EAAA,SAAA;AACLG,IAAAA,WAAY,EAAA,KAAA;AAAA,GACd,CACF,CAAA,CAAA;AAEJ;;;;"}
|
|
@@ -34,7 +34,7 @@ import '../LanguageProvider/hooks/LanguageContext.js';
|
|
|
34
34
|
import '../LanguageProvider/hooks/useLanguage.js';
|
|
35
35
|
import '../../i18n/index.js';
|
|
36
36
|
import './Refresh.js';
|
|
37
|
-
import '
|
|
37
|
+
import 'react-native-svg';
|
|
38
38
|
|
|
39
39
|
var CustomRefreshControl = DefaultRefreshControl;
|
|
40
40
|
function PullRefresh(props) {
|
|
@@ -139,13 +139,21 @@ function PullRefresh(props) {
|
|
|
139
139
|
});
|
|
140
140
|
} else if (panValue > 0) {
|
|
141
141
|
updatePullState(PullState.FINISH);
|
|
142
|
+
setMoveHeight(0);
|
|
143
|
+
setMovePercent(0);
|
|
142
144
|
animatedTo(0, function () {
|
|
143
145
|
setIsPulling(false);
|
|
144
146
|
updatePullState(PullState.INIT);
|
|
147
|
+
pan.setValue(0);
|
|
148
|
+
pan.flattenOffset();
|
|
145
149
|
});
|
|
146
150
|
} else {
|
|
147
151
|
updatePullState(PullState.INIT);
|
|
148
152
|
setIsPulling(false);
|
|
153
|
+
setMoveHeight(0);
|
|
154
|
+
setMovePercent(0);
|
|
155
|
+
pan.setValue(0);
|
|
156
|
+
pan.flattenOffset();
|
|
149
157
|
}
|
|
150
158
|
};
|
|
151
159
|
var updatePullState = function updatePullState(state) {
|
|
@@ -203,7 +211,16 @@ function PullRefresh(props) {
|
|
|
203
211
|
if (props.initRefresh && !hasInitRefreshed) {
|
|
204
212
|
return false;
|
|
205
213
|
}
|
|
206
|
-
|
|
214
|
+
if (isRefreshing || pullState === PullState.LOADING || pullState === PullState.HOLDING) {
|
|
215
|
+
return false;
|
|
216
|
+
}
|
|
217
|
+
if (isPulling) {
|
|
218
|
+
return false;
|
|
219
|
+
}
|
|
220
|
+
if (gestureState.vy < 0) {
|
|
221
|
+
return false;
|
|
222
|
+
}
|
|
223
|
+
return scrollY <= 0 && gestureState.vy > 0 && gestureState.vy > Math.abs(gestureState.vx);
|
|
207
224
|
};
|
|
208
225
|
var panResponder = useMemo(function () {
|
|
209
226
|
if (Platform.OS !== "ios" && props.nativeAndroidPullRefresh) {
|
|
@@ -220,12 +237,17 @@ function PullRefresh(props) {
|
|
|
220
237
|
});
|
|
221
238
|
}
|
|
222
239
|
return PanResponder.create({
|
|
223
|
-
onStartShouldSetPanResponder:
|
|
224
|
-
|
|
240
|
+
onStartShouldSetPanResponder: function onStartShouldSetPanResponder() {
|
|
241
|
+
return false;
|
|
242
|
+
},
|
|
243
|
+
onStartShouldSetPanResponderCapture: function onStartShouldSetPanResponderCapture() {
|
|
244
|
+
return false;
|
|
245
|
+
},
|
|
225
246
|
onMoveShouldSetPanResponder: canMove,
|
|
226
247
|
onMoveShouldSetPanResponderCapture: canMove,
|
|
227
248
|
onPanResponderGrant: function onPanResponderGrant() {
|
|
228
249
|
animation && animation.stop();
|
|
250
|
+
pan.flattenOffset();
|
|
229
251
|
pan.setOffset(pan._value);
|
|
230
252
|
updatePullState(PullState.PULLING);
|
|
231
253
|
pullTimeout && clearTimeout(pullTimeout);
|
|
@@ -245,14 +267,17 @@ function PullRefresh(props) {
|
|
|
245
267
|
},
|
|
246
268
|
onPanResponderRelease: onRelease,
|
|
247
269
|
onPanResponderTerminationRequest: function onPanResponderTerminationRequest() {
|
|
248
|
-
|
|
270
|
+
if (isPulling || pullState === PullState.PULLING) {
|
|
271
|
+
return false;
|
|
272
|
+
}
|
|
273
|
+
return true;
|
|
249
274
|
},
|
|
250
275
|
onPanResponderTerminate: onRelease,
|
|
251
276
|
onShouldBlockNativeResponder: function onShouldBlockNativeResponder() {
|
|
252
|
-
return
|
|
277
|
+
return isPulling || pullState === PullState.PULLING;
|
|
253
278
|
}
|
|
254
279
|
});
|
|
255
|
-
}, [isPulling, scrollY, props.initRefresh, hasInitRefreshed, pullAnimHeight, props.nativeAndroidPullRefresh]);
|
|
280
|
+
}, [isPulling, scrollY, props.initRefresh, hasInitRefreshed, pullAnimHeight, props.nativeAndroidPullRefresh, isRefreshing, pullState]);
|
|
256
281
|
useEffect(function () {
|
|
257
282
|
if (Platform.OS !== "ios" && props.nativeAndroidPullRefresh) return;
|
|
258
283
|
if (pullState === PullState.PULLING && !props.initRefresh) {
|
|
@@ -271,9 +296,14 @@ function PullRefresh(props) {
|
|
|
271
296
|
setPullTimeout(
|
|
272
297
|
//@ts-ignore
|
|
273
298
|
setTimeout(function () {
|
|
299
|
+
pan.flattenOffset();
|
|
300
|
+
setMoveHeight(0);
|
|
301
|
+
setMovePercent(0);
|
|
274
302
|
animatedTo(0, function () {
|
|
275
303
|
setIsPulling(false);
|
|
276
304
|
updatePullState(PullState.INIT);
|
|
305
|
+
pan.setValue(0);
|
|
306
|
+
pan.flattenOffset();
|
|
277
307
|
});
|
|
278
308
|
updatePullState(PullState.FINISH);
|
|
279
309
|
}, (_props$msHoldingTime2 = props === null || props === void 0 ? void 0 : props.msHoldingTime) !== null && _props$msHoldingTime2 !== void 0 ? _props$msHoldingTime2 : 1e3));
|
|
@@ -288,11 +318,10 @@ function PullRefresh(props) {
|
|
|
288
318
|
};
|
|
289
319
|
var scrollContent = useMemo(function () {
|
|
290
320
|
return React.Children.map(props.children, function (child) {
|
|
291
|
-
var _props$androidRefresh, _props$androidRefresh2;
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
}, Platform.OS === "android" && props.nativeAndroidPullRefresh ? {
|
|
321
|
+
var _originalOnScroll$_an, _props$androidRefresh, _props$androidRefresh2;
|
|
322
|
+
var originalOnScroll = child.props.onScroll;
|
|
323
|
+
var hasNativeDriver = originalOnScroll && (originalOnScroll["__isNative"] === true || (originalOnScroll === null || originalOnScroll === void 0 || (_originalOnScroll$_an = originalOnScroll._animation) === null || _originalOnScroll$_an === void 0 ? void 0 : _originalOnScroll$_an.useNativeDriver) === true);
|
|
324
|
+
var injectedProps = Platform.OS === "android" && props.nativeAndroidPullRefresh ? {
|
|
296
325
|
refreshControl: /* @__PURE__ */React.createElement(RefreshControl, _objectSpread2(_objectSpread2({}, props.androidRefreshProps || {}), {}, {
|
|
297
326
|
colors: (_props$androidRefresh = (_props$androidRefresh2 = props.androidRefreshProps) === null || _props$androidRefresh2 === void 0 ? void 0 : _props$androidRefresh2.colors) !== null && _props$androidRefresh !== void 0 ? _props$androidRefresh : props.androidColors,
|
|
298
327
|
refreshing: !!props.isRefreshing || internalRefreshing,
|
|
@@ -313,9 +342,37 @@ function PullRefresh(props) {
|
|
|
313
342
|
}
|
|
314
343
|
})),
|
|
315
344
|
onScroll: function onScroll(evt) {
|
|
316
|
-
if (
|
|
317
|
-
|
|
345
|
+
if (originalOnScroll && typeof originalOnScroll === "function") {
|
|
346
|
+
originalOnScroll(evt);
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
} : hasNativeDriver ? {
|
|
350
|
+
// When the child uses native-driver Animated.event, keep it intact to avoid crashes
|
|
351
|
+
onScroll: originalOnScroll,
|
|
352
|
+
onMomentumScrollEnd: function onMomentumScrollEnd(evt) {
|
|
353
|
+
setScrollY(evt.nativeEvent.contentOffset.y);
|
|
354
|
+
child.props.onMomentumScrollEnd && child.props.onMomentumScrollEnd(evt);
|
|
355
|
+
},
|
|
356
|
+
onScrollEndDrag: function onScrollEndDrag(evt) {
|
|
357
|
+
setScrollY(evt.nativeEvent.contentOffset.y);
|
|
358
|
+
if (pullState === PullState.LOADING && evt.nativeEvent.contentOffset.y > 0) {
|
|
359
|
+
var y = Math.max(0, pullAnimHeight - evt.nativeEvent.contentOffset.y);
|
|
360
|
+
viewRef.current && viewRef.current.setNativeProps({
|
|
361
|
+
style: {
|
|
362
|
+
transform: [{
|
|
363
|
+
translateY: y
|
|
364
|
+
}]
|
|
365
|
+
}
|
|
366
|
+
});
|
|
367
|
+
animatedViewRef.current && animatedViewRef.current.setNativeProps({
|
|
368
|
+
style: {
|
|
369
|
+
transform: [{
|
|
370
|
+
translateY: y
|
|
371
|
+
}]
|
|
372
|
+
}
|
|
373
|
+
});
|
|
318
374
|
}
|
|
375
|
+
child.props.onScrollEndDrag && child.props.onScrollEndDrag(evt);
|
|
319
376
|
}
|
|
320
377
|
} : {
|
|
321
378
|
onScroll: function onScroll(evt) {
|
|
@@ -337,11 +394,14 @@ function PullRefresh(props) {
|
|
|
337
394
|
}
|
|
338
395
|
});
|
|
339
396
|
}
|
|
340
|
-
if (
|
|
341
|
-
|
|
397
|
+
if (originalOnScroll && typeof originalOnScroll === "function") {
|
|
398
|
+
originalOnScroll(evt);
|
|
342
399
|
}
|
|
343
400
|
}
|
|
344
|
-
}
|
|
401
|
+
};
|
|
402
|
+
return /*#__PURE__*/React.cloneElement(child, _objectSpread2({
|
|
403
|
+
scrollEventThrottle: 1
|
|
404
|
+
}, injectedProps));
|
|
345
405
|
});
|
|
346
406
|
}, [pullState, props.children, pullAnimHeight, internalRefreshing, props.isRefreshing, props.nativeAndroidPullRefresh]);
|
|
347
407
|
var content = useMemo(function () {
|