@xhsreds/reds-rn-next 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. package/coverage/coverage-final.json +13 -13
  2. package/lib/cjs/components/Button/interface/index.js +0 -2
  3. package/lib/cjs/components/Button/interface/index.js.map +1 -1
  4. package/lib/cjs/components/ConfigProvider/hooks/themeToken/useThemeToken.js +9 -1
  5. package/lib/cjs/components/ConfigProvider/hooks/themeToken/useThemeToken.js.map +1 -1
  6. package/lib/cjs/components/ConfigProvider/interface/index.js +18 -0
  7. package/lib/cjs/components/ConfigProvider/interface/index.js.map +1 -1
  8. package/lib/cjs/components/{Bu → NN}/index.js +6 -6
  9. package/lib/cjs/components/{Bu → NN}/index.js.map +1 -1
  10. package/lib/cjs/components/{Bu → NN}/interface/index.js +0 -2
  11. package/lib/cjs/components/NN/interface/index.js.map +1 -0
  12. package/lib/cjs/components/NNNN/index.js +83 -0
  13. package/lib/cjs/components/NNNN/index.js.map +1 -0
  14. package/lib/cjs/components/NNNN/interface/index.js +13 -0
  15. package/lib/cjs/components/NNNN/interface/index.js.map +1 -0
  16. package/lib/cjs/components/PP/index.js +83 -0
  17. package/lib/cjs/components/PP/index.js.map +1 -0
  18. package/lib/cjs/components/PP/interface/index.js +14 -0
  19. package/lib/cjs/components/PP/interface/index.js.map +1 -0
  20. package/lib/cjs/components/Popover/interface/index.js +12 -0
  21. package/lib/cjs/components/Popover/interface/index.js.map +1 -1
  22. package/lib/cjs/components/Switch/index.js.map +1 -1
  23. package/lib/cjs/components/Switch/interface/index.js +1 -2
  24. package/lib/cjs/components/Switch/interface/index.js.map +1 -1
  25. package/lib/cjs/index.js +1 -4
  26. package/lib/cjs/index.js.map +1 -1
  27. package/lib/esm/_chunks/{Djn5ftvm.js → BHmvJnIm.js} +2 -2
  28. package/lib/esm/_chunks/{Djn5ftvm.js.map → BHmvJnIm.js.map} +1 -1
  29. package/lib/esm/_chunks/{npmn1D5V.js → Br6Ked0G.js} +2 -2
  30. package/lib/esm/_chunks/{npmn1D5V.js.map → Br6Ked0G.js.map} +1 -1
  31. package/lib/esm/components/Button/index.js +1 -1
  32. package/lib/esm/components/Button/interface/index.js +0 -2
  33. package/lib/esm/components/Button/interface/index.js.map +1 -1
  34. package/lib/esm/components/ConfigProvider/ConfigProvider.js +2 -2
  35. package/lib/esm/components/ConfigProvider/hooks/ConfigCache/ConfigCache.js +1 -1
  36. package/lib/esm/components/ConfigProvider/hooks/ConfigCache/index.js +1 -1
  37. package/lib/esm/components/ConfigProvider/hooks/themeToken/useThemeToken.js +10 -2
  38. package/lib/esm/components/ConfigProvider/hooks/themeToken/useThemeToken.js.map +1 -1
  39. package/lib/esm/components/ConfigProvider/index.js +2 -2
  40. package/lib/esm/components/ConfigProvider/interface/index.js +17 -0
  41. package/lib/esm/components/ConfigProvider/interface/index.js.map +1 -1
  42. package/lib/esm/components/{Bu → NN}/index.js +6 -6
  43. package/lib/esm/components/{Bu → NN}/index.js.map +1 -1
  44. package/lib/esm/components/{Bu → NN}/interface/index.js +0 -2
  45. package/lib/esm/components/NN/interface/index.js.map +1 -0
  46. package/lib/esm/components/NNNN/index.js +79 -0
  47. package/lib/esm/components/NNNN/index.js.map +1 -0
  48. package/lib/esm/components/NNNN/interface/index.js +11 -0
  49. package/lib/esm/components/NNNN/interface/index.js.map +1 -0
  50. package/lib/esm/components/PP/index.js +79 -0
  51. package/lib/esm/components/PP/index.js.map +1 -0
  52. package/lib/esm/components/PP/interface/index.js +12 -0
  53. package/lib/esm/components/PP/interface/index.js.map +1 -0
  54. package/lib/esm/components/Popover/component.js +1 -1
  55. package/lib/esm/components/Popover/hook.js +1 -1
  56. package/lib/esm/components/Popover/index.js +1 -1
  57. package/lib/esm/components/Popover/interface/index.js +11 -0
  58. package/lib/esm/components/Popover/interface/index.js.map +1 -1
  59. package/lib/esm/components/Switch/index.js +1 -1
  60. package/lib/esm/components/Switch/index.js.map +1 -1
  61. package/lib/esm/components/Switch/interface/index.js +1 -2
  62. package/lib/esm/components/Switch/interface/index.js.map +1 -1
  63. package/lib/esm/index.js +3 -5
  64. package/lib/esm/index.js.map +1 -1
  65. package/lib/types/src/components/Button/interface/index.d.ts +2 -3
  66. package/lib/types/src/components/ConfigProvider/hooks/themeToken/useThemeToken.d.ts +1 -1
  67. package/lib/types/src/components/ConfigProvider/interface/index.d.ts +11 -0
  68. package/lib/types/src/components/NN/index.d.ts +7 -0
  69. package/lib/types/src/components/NN/interface/index.d.ts +10 -0
  70. package/lib/types/src/components/NNNN/index.d.ts +7 -0
  71. package/lib/types/src/components/NNNN/interface/index.d.ts +10 -0
  72. package/lib/types/src/components/PP/index.d.ts +7 -0
  73. package/lib/types/src/components/{Bu → PP}/interface/index.d.ts +4 -4
  74. package/lib/types/src/components/Popover/interface/index.d.ts +7 -3
  75. package/lib/types/src/components/Switch/interface/index.d.ts +4 -2
  76. package/lib/types/src/index.d.ts +1 -2
  77. package/package.json +2 -2
  78. package/src/components/Button/doc/index.mdx +7 -7
  79. package/src/components/Button/interface/index.ts +2 -5
  80. package/src/components/ConfigProvider/doc/index.mdx +1 -1
  81. package/src/components/ConfigProvider/hooks/themeToken/useThemeToken.ts +10 -1
  82. package/src/components/ConfigProvider/interface/index.ts +26 -0
  83. package/src/components/Popover/doc/index.mdx +15 -14
  84. package/src/components/Popover/interface/index.ts +16 -4
  85. package/src/components/Switch/doc/index.mdx +11 -11
  86. package/src/components/Switch/index.tsx +0 -1
  87. package/src/components/Switch/interface/index.ts +5 -5
  88. package/src/index.ts +1 -2
  89. package/lib/cjs/components/Bu/interface/index.js.map +0 -1
  90. package/lib/esm/components/Bu/interface/index.js.map +0 -1
  91. package/lib/types/src/components/Bu/index.d.ts +0 -7
  92. package/src/components/Bu/demo/index.tsx +0 -50
  93. package/src/components/Bu/doc/index.mdx +0 -26
  94. package/src/components/Bu/index.tsx +0 -60
  95. package/src/components/Bu/interface/index.ts +0 -21
  96. package/src/components/Bu/test/index.bench.tsx +0 -12
  97. package/src/components/Bu/test/index.test.tsx +0 -18
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/NNNN/index.tsx"],"sourcesContent":["import React, { useState, useRef, useEffect, useMemo } from \"react\";\nimport { View, TouchableWithoutFeedback, StyleSheet, Animated, GestureResponderEvent } from \"react-native\";\nimport { RedsNNNN, defaultProps } from \"./interface/index\";\nimport { alwaysColor } from \"@xhs/reds-token-next\";\n\nconst NNNN = ({ value: cValue, defaultValue, onChange, onClick, trackOnColor, trackOffColor }: RedsNNNN) => {\n const isControlled = cValue !== undefined;\n const [value, setValue] = useState(defaultValue);\n\n const animatedValue = useRef(new Animated.Value(defaultValue ? 18 : 2)).current;\n\n const thumbTranslateX = useMemo(() => animatedValue.interpolate({ inputRange: [2, 18], outputRange: [2, 18] }), []);\n\n useEffect(() => {\n isControlled && setValue(cValue);\n onChange?.(!!value);\n Animated.timing(animatedValue, {\n toValue: value ? 18 : 2,\n duration: 200,\n useNativeDriver: true,\n }).start();\n }, [value, cValue]);\n\n const toggleNNNN = (e: GestureResponderEvent) => {\n onClick?.(e);\n !isControlled && setValue((v) => !v);\n };\n\n return (\n <TouchableWithoutFeedback onPress={(e) => toggleNNNN(e)}>\n <View style={[styles.container, { backgroundColor: value ? trackOnColor : trackOffColor }]}>\n <Animated.View style={[styles.thumb, { transform: [{ translateX: thumbTranslateX }] }]}></Animated.View>\n </View>\n </TouchableWithoutFeedback>\n );\n};\n\nNNNN.defaultProps = defaultProps;\n\nconst styles = StyleSheet.create({\n container: {\n width: 40,\n height: 24,\n borderRadius: 15,\n justifyContent: \"center\",\n alignItems: \"center\",\n },\n thumb: {\n width: 20,\n height: 20,\n borderRadius: 10,\n backgroundColor: alwaysColor.White,\n justifyContent: \"center\",\n alignItems: \"center\",\n position: \"absolute\",\n left: 0,\n },\n});\n\nexport default NNNN;\n"],"names":["NNNN","_ref","cValue","value","defaultValue","onChange","onClick","trackOnColor","trackOffColor","isControlled","_useState","useState","_useState2","_slicedToArray","setValue","animatedValue","useRef","Animated","Value","current","thumbTranslateX","useMemo","interpolate","inputRange","outputRange","useEffect","timing","toValue","duration","useNativeDriver","start","toggleNNNN","e","v","TouchableWithoutFeedback","onPress","React","createElement","View","style","styles","container","backgroundColor","thumb","transform","translateX","defaultProps","StyleSheet","create","width","height","borderRadius","justifyContent","alignItems","alwaysColor","White","position","left"],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { lightColor } from '@xhs/reds-token-next';
2
+
3
+ var defaultProps = {
4
+ defaultValue: false,
5
+ disabled: false,
6
+ trackOnColor: lightColor.Primary,
7
+ trackOffColor: lightColor.Fill2
8
+ };
9
+
10
+ export { defaultProps };
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/NNNN/interface/index.ts"],"sourcesContent":["import { GestureResponderEvent } from \"react-native\";\nimport { lightColor } from \"@xhs/reds-token-next\";\nexport interface RedsNNNN {\n value?: boolean;\n defaultValue?: boolean;\n disabled?: boolean;\n trackOnColor?: string;\n trackOffColor?: string;\n onChange?: (value: boolean) => void;\n onClick?: (value: Event) => void;\n}\n\nexport const defaultProps: RedsNNNN = {\n defaultValue: false,\n disabled: false,\n trackOnColor: lightColor.Primary,\n trackOffColor: lightColor.Fill2,\n};\n"],"names":["defaultProps","defaultValue","disabled","trackOnColor","lightColor","Primary","trackOffColor","Fill2"],"mappings":";;AAYO,IAAMA,YAAyB,GAAA;AACpCC,EAAAA,YAAc,EAAA,KAAA;AACdC,EAAAA,QAAU,EAAA,KAAA;EACVC,cAAcC,UAAW,CAAAC,OAAA;EACzBC,eAAeF,UAAW,CAAAG,KAAAA;AAC5B;;;;"}
@@ -0,0 +1,79 @@
1
+ import { a as _slicedToArray } from '../../_chunks/BHmvJnIm.js';
2
+ import React, { useState, useRef, useMemo, useEffect } from 'react';
3
+ import { StyleSheet, Animated, TouchableWithoutFeedback, View } from 'react-native';
4
+ import { defaultProps } from './interface/index.js';
5
+ import { alwaysColor } from '@xhs/reds-token-next';
6
+
7
+ var PP = function PP(_ref) {
8
+ var cValue = _ref.value,
9
+ defaultValue = _ref.defaultValue,
10
+ onChange = _ref.onChange,
11
+ onClick = _ref.onClick,
12
+ trackOnColor = _ref.trackOnColor,
13
+ trackOffColor = _ref.trackOffColor;
14
+ var isControlled = cValue !== void 0;
15
+ var _useState = useState(defaultValue),
16
+ _useState2 = _slicedToArray(_useState, 2),
17
+ value = _useState2[0],
18
+ setValue = _useState2[1];
19
+ var animatedValue = useRef(new Animated.Value(defaultValue ? 18 : 2)).current;
20
+ var thumbTranslateX = useMemo(function () {
21
+ return animatedValue.interpolate({
22
+ inputRange: [2, 18],
23
+ outputRange: [2, 18]
24
+ });
25
+ }, []);
26
+ useEffect(function () {
27
+ isControlled && setValue(cValue);
28
+ onChange === null || onChange === void 0 || onChange(!!value);
29
+ Animated.timing(animatedValue, {
30
+ toValue: value ? 18 : 2,
31
+ duration: 200,
32
+ useNativeDriver: true
33
+ }).start();
34
+ }, [value, cValue]);
35
+ var togglePP = function togglePP(e) {
36
+ onClick === null || onClick === void 0 || onClick(e);
37
+ !isControlled && setValue(function (v) {
38
+ return !v;
39
+ });
40
+ };
41
+ return /* @__PURE__ */React.createElement(TouchableWithoutFeedback, {
42
+ onPress: function onPress(e) {
43
+ return togglePP(e);
44
+ }
45
+ }, /* @__PURE__ */React.createElement(View, {
46
+ style: [styles.container, {
47
+ backgroundColor: value ? trackOnColor : trackOffColor
48
+ }]
49
+ }, /* @__PURE__ */React.createElement(Animated.View, {
50
+ style: [styles.thumb, {
51
+ transform: [{
52
+ translateX: thumbTranslateX
53
+ }]
54
+ }]
55
+ })));
56
+ };
57
+ PP.defaultProps = defaultProps;
58
+ var styles = StyleSheet.create({
59
+ container: {
60
+ width: 40,
61
+ height: 24,
62
+ borderRadius: 15,
63
+ justifyContent: "center",
64
+ alignItems: "center"
65
+ },
66
+ thumb: {
67
+ width: 20,
68
+ height: 20,
69
+ borderRadius: 10,
70
+ backgroundColor: alwaysColor.White,
71
+ justifyContent: "center",
72
+ alignItems: "center",
73
+ position: "absolute",
74
+ left: 0
75
+ }
76
+ });
77
+
78
+ export { PP as default };
79
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/PP/index.tsx"],"sourcesContent":["import React, { useState, useRef, useEffect, useMemo } from \"react\";\nimport { View, TouchableWithoutFeedback, StyleSheet, Animated, GestureResponderEvent } from \"react-native\";\nimport { RedsPP, defaultProps } from \"./interface/index\";\nimport { alwaysColor } from \"@xhs/reds-token-next\";\n\nconst PP = ({ value: cValue, defaultValue, onChange, onClick, trackOnColor, trackOffColor }: RedsPP) => {\n const isControlled = cValue !== undefined;\n const [value, setValue] = useState(defaultValue);\n\n const animatedValue = useRef(new Animated.Value(defaultValue ? 18 : 2)).current;\n\n const thumbTranslateX = useMemo(() => animatedValue.interpolate({ inputRange: [2, 18], outputRange: [2, 18] }), []);\n\n useEffect(() => {\n isControlled && setValue(cValue);\n onChange?.(!!value);\n Animated.timing(animatedValue, {\n toValue: value ? 18 : 2,\n duration: 200,\n useNativeDriver: true,\n }).start();\n }, [value, cValue]);\n\n const togglePP = (e: GestureResponderEvent) => {\n onClick?.(e);\n !isControlled && setValue((v) => !v);\n };\n\n return (\n <TouchableWithoutFeedback onPress={(e) => togglePP(e)}>\n <View style={[styles.container, { backgroundColor: value ? trackOnColor : trackOffColor }]}>\n <Animated.View style={[styles.thumb, { transform: [{ translateX: thumbTranslateX }] }]}></Animated.View>\n </View>\n </TouchableWithoutFeedback>\n );\n};\n\nPP.defaultProps = defaultProps;\n\nconst styles = StyleSheet.create({\n container: {\n width: 40,\n height: 24,\n borderRadius: 15,\n justifyContent: \"center\",\n alignItems: \"center\",\n },\n thumb: {\n width: 20,\n height: 20,\n borderRadius: 10,\n backgroundColor: alwaysColor.White,\n justifyContent: \"center\",\n alignItems: \"center\",\n position: \"absolute\",\n left: 0,\n },\n});\n\nexport default PP;\n"],"names":["PP","_ref","cValue","value","defaultValue","onChange","onClick","trackOnColor","trackOffColor","isControlled","_useState","useState","_useState2","_slicedToArray","setValue","animatedValue","useRef","Animated","Value","current","thumbTranslateX","useMemo","interpolate","inputRange","outputRange","useEffect","timing","toValue","duration","useNativeDriver","start","togglePP","e","v","TouchableWithoutFeedback","onPress","React","createElement","View","style","styles","container","backgroundColor","thumb","transform","translateX","defaultProps","StyleSheet","create","width","height","borderRadius","justifyContent","alignItems","alwaysColor","White","position","left"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { lightColor } from '@xhs/reds-token-next';
2
+
3
+ var defaultProps = {
4
+ value: void 0,
5
+ defaultValue: false,
6
+ disabled: false,
7
+ trackOnColor: lightColor.Primary,
8
+ trackOffColor: lightColor.Fill2
9
+ };
10
+
11
+ export { defaultProps };
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/PP/interface/index.ts"],"sourcesContent":["import { GestureResponderEvent } from \"react-native\";\nimport { lightColor } from \"@xhs/reds-token-next\";\nexport interface RedsPP {\n value?: boolean;\n defaultValue?: boolean;\n disabled?: boolean;\n trackOnColor?: string;\n trackOffColor?: string;\n onChange?: (value: boolean) => void;\n onClick?: (value: GestureResponderEvent) => void;\n}\n\nexport const defaultProps: RedsPP = {\n value: undefined,\n defaultValue: false,\n disabled: false,\n trackOnColor: lightColor.Primary,\n trackOffColor: lightColor.Fill2,\n};\n"],"names":["defaultProps","value","defaultValue","disabled","trackOnColor","lightColor","Primary","trackOffColor","Fill2"],"mappings":";;AAYO,IAAMA,YAAuB,GAAA;EAClCC,KAAO,EAAA,KAAA,CAAA;AACPC,EAAAA,YAAc,EAAA,KAAA;AACdC,EAAAA,QAAU,EAAA,KAAA;EACVC,cAAcC,UAAW,CAAAC,OAAA;EACzBC,eAAeF,UAAW,CAAAG,KAAAA;AAC5B;;;;"}
@@ -1,4 +1,4 @@
1
- import { a as _objectSpread2 } from '../../_chunks/Djn5ftvm.js';
1
+ import { _ as _objectSpread2 } from '../../_chunks/BHmvJnIm.js';
2
2
  import React, { forwardRef } from 'react';
3
3
  import { Modal, Pressable, View } from 'react-native';
4
4
 
@@ -1,4 +1,4 @@
1
- import { b as _objectWithoutProperties, a as _objectSpread2 } from '../../_chunks/Djn5ftvm.js';
1
+ import { b as _objectWithoutProperties, _ as _objectSpread2 } from '../../_chunks/BHmvJnIm.js';
2
2
  import { useRef } from 'react';
3
3
  import { Platform } from 'react-native';
4
4
  import { useFloating as useFloating$1, shift, limitShift, flip, offset, arrow } from '@floating-ui/react-native';
@@ -1,4 +1,4 @@
1
- import { _ as _slicedToArray, a as _objectSpread2 } from '../../_chunks/Djn5ftvm.js';
1
+ import { a as _slicedToArray, _ as _objectSpread2 } from '../../_chunks/BHmvJnIm.js';
2
2
  import React, { useState, useMemo, useEffect, isValidElement, cloneElement } from 'react';
3
3
  import { TouchableWithoutFeedback, View, Text } from 'react-native';
4
4
  import { ModalWrapper, Arrow } from './component.js';
@@ -1,2 +1,13 @@
1
+ var defaultProps = {
2
+ visible: void 0,
3
+ placement: "top",
4
+ content: "",
5
+ opacity: 0,
6
+ mode: "light",
7
+ trigger: "click",
8
+ zIndex: 1e3,
9
+ closeOnClickAgain: true
10
+ };
1
11
 
12
+ export { defaultProps };
2
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/Popover/interface/index.ts"],"sourcesContent":["import { ReactNode } from \"react\";\nexport interface RedsPopover {\n visible?: boolean;\n placement?: \"top\" | \"bottom\";\n content?: string;\n opacity?: number;\n mode?: \"light\" | \"dark\";\n trigger?: \"click\" | \"touch\";\n zIndex?: number;\n closeOnClickAgain?: boolean;\n children?: ReactNode;\n onClickMask?: (evnet: Event) => void;\n onVisibleChange?: (value: boolean) => void;\n}\n\nexport interface RedsPopoverEvent {}\nexport const defaultProps: RedsPopover = {\n visible: undefined,\n placement: \"top\",\n content: \"\",\n opacity: 0,\n mode: \"light\",\n trigger: \"click\",\n zIndex: 1000,\n closeOnClickAgain: true,\n};\n"],"names":["defaultProps","visible","placement","content","opacity","mode","trigger","zIndex","closeOnClickAgain"],"mappings":"AAgBO,IAAMA,YAA4B,GAAA;EACvCC,OAAS,EAAA,KAAA,CAAA;AACTC,EAAAA,SAAW,EAAA,KAAA;AACXC,EAAAA,OAAS,EAAA,EAAA;AACTC,EAAAA,OAAS,EAAA,CAAA;AACTC,EAAAA,IAAM,EAAA,OAAA;AACNC,EAAAA,OAAS,EAAA,OAAA;AACTC,EAAAA,MAAQ,EAAA,GAAA;AACRC,EAAAA,iBAAmB,EAAA,IAAA;AACrB;;;;"}
@@ -1,4 +1,4 @@
1
- import { _ as _slicedToArray } from '../../_chunks/Djn5ftvm.js';
1
+ import { a as _slicedToArray } from '../../_chunks/BHmvJnIm.js';
2
2
  import React, { useState, useRef, useMemo, useEffect } from 'react';
3
3
  import { StyleSheet, Animated, TouchableWithoutFeedback, View } from 'react-native';
4
4
  import { defaultProps } from './interface/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/Switch/index.tsx"],"sourcesContent":["import React, { useState, useRef, useEffect, useMemo } from \"react\";\nimport { View, TouchableWithoutFeedback, StyleSheet, Animated, GestureResponderEvent } from \"react-native\";\nimport { RedsSwitch, defaultProps } from \"./interface/index\";\nimport { alwaysColor } from \"@xhs/reds-token-next\";\n\nconst Switch = ({ value: isOn, defaultValue, onChange, onClick, trackOnColor, trackOffColor }: RedsSwitch) => {\n const isControlled = isOn !== undefined;\n const [value, setValue] = useState(defaultValue);\n\n const animatedValue = useRef(new Animated.Value(defaultValue ? 18 : 2)).current;\n\n const thumbTranslateX = useMemo(() => animatedValue.interpolate({ inputRange: [2, 18], outputRange: [2, 18] }), []);\n\n useEffect(() => {\n onChange?.(!!value);\n Animated.timing(animatedValue, {\n toValue: value ? 18 : 2,\n duration: 200,\n useNativeDriver: true,\n }).start();\n }, [value]);\n\n useEffect(() => {\n isControlled && setValue(isOn);\n }, [isOn]);\n\n const toggleSwitch = (e: GestureResponderEvent) => {\n onClick?.(e);\n !isControlled && setValue((v) => !v);\n };\n\n return (\n <TouchableWithoutFeedback onPress={(e) => toggleSwitch(e)}>\n <View style={[styles.switchContainer, { backgroundColor: value ? trackOnColor : trackOffColor }]}>\n <Animated.View style={[styles.thumb, { transform: [{ translateX: thumbTranslateX }] }]}></Animated.View>\n </View>\n </TouchableWithoutFeedback>\n );\n};\n\nSwitch.defaultProps = defaultProps;\n\nconst styles = StyleSheet.create({\n switchContainer: {\n width: 40,\n height: 24,\n borderRadius: 15,\n justifyContent: \"center\",\n alignItems: \"center\",\n },\n thumb: {\n width: 20,\n height: 20,\n borderRadius: 10,\n backgroundColor: alwaysColor.White,\n justifyContent: \"center\",\n alignItems: \"center\",\n position: \"absolute\",\n left: 0,\n },\n});\n\nexport default Switch;\n"],"names":["Switch","_ref","isOn","value","defaultValue","onChange","onClick","trackOnColor","trackOffColor","isControlled","_useState","useState","_useState2","_slicedToArray","setValue","animatedValue","useRef","Animated","Value","current","thumbTranslateX","useMemo","interpolate","inputRange","outputRange","useEffect","timing","toValue","duration","useNativeDriver","start","toggleSwitch","e","v","TouchableWithoutFeedback","onPress","React","createElement","View","style","styles","switchContainer","backgroundColor","thumb","transform","translateX","defaultProps","StyleSheet","create","width","height","borderRadius","justifyContent","alignItems","alwaysColor","White","position","left"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/Switch/index.tsx"],"sourcesContent":["import React, { useState, useRef, useEffect, useMemo } from \"react\";\nimport { View, TouchableWithoutFeedback, StyleSheet, Animated, GestureResponderEvent } from \"react-native\";\nimport { RedsSwitch, defaultProps } from \"./interface/index\";\nimport { alwaysColor } from \"@xhs/reds-token-next\";\n\nconst Switch = ({ value: isOn, defaultValue, onChange, onClick, trackOnColor, trackOffColor }: RedsSwitch) => {\n const isControlled = isOn !== undefined;\n const [value, setValue] = useState(defaultValue);\n\n const animatedValue = useRef(new Animated.Value(defaultValue ? 18 : 2)).current;\n\n const thumbTranslateX = useMemo(() => animatedValue.interpolate({ inputRange: [2, 18], outputRange: [2, 18] }), []);\n\n useEffect(() => {\n onChange?.(!!value);\n Animated.timing(animatedValue, {\n toValue: value ? 18 : 2,\n duration: 200,\n useNativeDriver: true,\n }).start();\n }, [value]);\n useEffect(() => {\n isControlled && setValue(isOn);\n }, [isOn]);\n\n const toggleSwitch = (e: GestureResponderEvent) => {\n onClick?.(e);\n !isControlled && setValue((v) => !v);\n };\n\n return (\n <TouchableWithoutFeedback onPress={(e) => toggleSwitch(e)}>\n <View style={[styles.switchContainer, { backgroundColor: value ? trackOnColor : trackOffColor }]}>\n <Animated.View style={[styles.thumb, { transform: [{ translateX: thumbTranslateX }] }]}></Animated.View>\n </View>\n </TouchableWithoutFeedback>\n );\n};\n\nSwitch.defaultProps = defaultProps;\n\nconst styles = StyleSheet.create({\n switchContainer: {\n width: 40,\n height: 24,\n borderRadius: 15,\n justifyContent: \"center\",\n alignItems: \"center\",\n },\n thumb: {\n width: 20,\n height: 20,\n borderRadius: 10,\n backgroundColor: alwaysColor.White,\n justifyContent: \"center\",\n alignItems: \"center\",\n position: \"absolute\",\n left: 0,\n },\n});\n\nexport default Switch;\n"],"names":["Switch","_ref","isOn","value","defaultValue","onChange","onClick","trackOnColor","trackOffColor","isControlled","_useState","useState","_useState2","_slicedToArray","setValue","animatedValue","useRef","Animated","Value","current","thumbTranslateX","useMemo","interpolate","inputRange","outputRange","useEffect","timing","toValue","duration","useNativeDriver","start","toggleSwitch","e","v","TouchableWithoutFeedback","onPress","React","createElement","View","style","styles","switchContainer","backgroundColor","thumb","transform","translateX","defaultProps","StyleSheet","create","width","height","borderRadius","justifyContent","alignItems","alwaysColor","White","position","left"],"mappings":"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"}
@@ -1,10 +1,9 @@
1
1
  import { lightColor } from '@xhs/reds-token-next';
2
2
 
3
3
  var defaultProps = {
4
+ value: void 0,
4
5
  defaultValue: false,
5
6
  disabled: false,
6
- onClick: function onClick(event) {},
7
- onChange: function onChange(value) {},
8
7
  trackOnColor: lightColor.Primary,
9
8
  trackOffColor: lightColor.Fill2
10
9
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/components/Switch/interface/index.ts"],"sourcesContent":["import { GestureResponderEvent } from \"react-native\";\nimport { lightColor } from \"@xhs/reds-token-next\";\n\nexport interface RedsSwitch {\n value?: boolean;\n defaultValue?: boolean;\n disabled?: boolean;\n onClick?: (event: GestureResponderEvent) => void;\n onChange?: (value: boolean) => void;\n trackOnColor?: string;\n trackOffColor?: string;\n}\n\nexport const defaultProps: RedsSwitch = {\n defaultValue: false,\n disabled: false,\n onClick: (event: GestureResponderEvent) => {},\n onChange: (value: boolean) => {},\n trackOnColor: lightColor.Primary,\n trackOffColor: lightColor.Fill2,\n};\n"],"names":["defaultProps","defaultValue","disabled","onClick","event","onChange","value","trackOnColor","lightColor","Primary","trackOffColor","Fill2"],"mappings":";;AAaO,IAAMA,YAA2B,GAAA;AACtCC,EAAAA,YAAc,EAAA,KAAA;AACdC,EAAAA,QAAU,EAAA,KAAA;AACVC,EAAAA,OAAA,EAAS,SAAAA,OAAAA,CAACC,KAAiC,EAAA,EAAC;AAC5CC,EAAAA,QAAA,EAAU,SAAAA,QAAAA,CAACC,KAAmB,EAAA,EAAC;EAC/BC,cAAcC,UAAW,CAAAC,OAAA;EACzBC,eAAeF,UAAW,CAAAG,KAAAA;AAC5B;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/Switch/interface/index.ts"],"sourcesContent":["import { GestureResponderEvent } from \"react-native\";\nimport { lightColor } from \"@xhs/reds-token-next\";\nexport interface RedsSwitch {\n value?: boolean;\n defaultValue?: boolean;\n disabled?: boolean;\n trackOnColor?: string;\n trackOffColor?: string;\n onChange?: (value: boolean) => void;\n onClick?: (value: GestureResponderEvent) => void;\n}\n\nexport const defaultProps: RedsSwitch = {\n value: undefined,\n defaultValue: false,\n disabled: false,\n trackOnColor: lightColor.Primary,\n trackOffColor: lightColor.Fill2,\n};\n\nexport interface RedsSwitchEvent {}\n"],"names":["defaultProps","value","defaultValue","disabled","trackOnColor","lightColor","Primary","trackOffColor","Fill2"],"mappings":";;AAYO,IAAMA,YAA2B,GAAA;EACtCC,KAAO,EAAA,KAAA,CAAA;AACPC,EAAAA,YAAc,EAAA,KAAA;AACdC,EAAAA,QAAU,EAAA,KAAA;EACVC,cAAcC,UAAW,CAAAC,OAAA;EACzBC,eAAeF,UAAW,CAAAG,KAAAA;AAC5B;;;;"}
package/lib/esm/index.js CHANGED
@@ -1,17 +1,15 @@
1
- export { default as Bu } from './components/Bu/index.js';
2
1
  export { default as Button } from './components/Button/index.js';
3
2
  export { default as Popover } from './components/Popover/index.js';
4
3
  export { default as Switch } from './components/Switch/index.js';
5
- export { C as ConfigProvider } from './_chunks/npmn1D5V.js';
4
+ export { C as ConfigProvider } from './_chunks/Br6Ked0G.js';
6
5
  export { useThemeColor } from './components/ConfigProvider/hooks/themeToken/useThemeToken.js';
7
- import './_chunks/Djn5ftvm.js';
6
+ import './_chunks/BHmvJnIm.js';
8
7
  import 'react';
9
8
  import 'react-native';
10
- import './components/Bu/interface/index.js';
11
- import '@xhs/reds-token-next';
12
9
  import './components/Popover/component.js';
13
10
  import './components/Popover/hook.js';
14
11
  import '@floating-ui/react-native';
12
+ import '@xhs/reds-token-next';
15
13
  import './components/Switch/interface/index.js';
16
14
  import './components/ConfigProvider/hooks/ConfigCache/ConfigCache.js';
17
15
  import './components/ConfigProvider/hooks/ConfigContext/ConfigContext.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;"}
@@ -1,11 +1,10 @@
1
- import { GestureResponderEvent } from "react-native";
2
1
  export interface RedsButton {
3
2
  value?: boolean;
4
3
  defaultValue?: boolean;
5
4
  disabled?: boolean;
6
- onClick?: (event: GestureResponderEvent) => void;
7
- onChange?: (value: boolean) => void;
8
5
  trackOnColor?: string;
9
6
  trackOffColor?: string;
7
+ onChange?: (value: boolean) => void;
8
+ onClick?: (value: Event) => void;
10
9
  }
11
10
  export declare const defaultProps: RedsButton;
@@ -5,4 +5,4 @@ export interface IThemeInstance {
5
5
  export interface MyProxyConstructor {
6
6
  new <T, H extends Record<string, unknown>>(target: T, handler: ProxyHandler<H>): H;
7
7
  }
8
- export declare const useThemeColor: (component?: Component) => ThemeColor;
8
+ export declare const useThemeColor: (component?: Component, staticColorType?: "lightColor" | "darkColor") => ThemeColor;
@@ -24,4 +24,15 @@ export interface ConfigProviderProps {
24
24
  theme?: IThemeConfig;
25
25
  parentId?: string;
26
26
  }
27
+ export interface RedsConfigProvider {
28
+ id?: string;
29
+ parentId?: string;
30
+ theme?: IThemeConfig;
31
+ colorMode?: string;
32
+ inherit?: boolean;
33
+ token: Object;
34
+ }
35
+ export interface RedsConfigProviderEvent {
36
+ }
37
+ export declare const defaultProps: RedsConfigProvider;
27
38
  export {};
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ import { RedsNN } from "./interface/index";
3
+ declare const NN: {
4
+ ({ value: cValue, defaultValue, onChange, onClick, trackOnColor, trackOffColor }: RedsNN): React.JSX.Element;
5
+ defaultProps: RedsNN;
6
+ };
7
+ export default NN;
@@ -0,0 +1,10 @@
1
+ export interface RedsNN {
2
+ value?: boolean;
3
+ defaultValue?: boolean;
4
+ disabled?: boolean;
5
+ trackOnColor?: string;
6
+ trackOffColor?: string;
7
+ onChange?: (value: boolean) => void;
8
+ onClick?: (value: Event) => void;
9
+ }
10
+ export declare const defaultProps: RedsNN;
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ import { RedsNNNN } from "./interface/index";
3
+ declare const NNNN: {
4
+ ({ value: cValue, defaultValue, onChange, onClick, trackOnColor, trackOffColor }: RedsNNNN): React.JSX.Element;
5
+ defaultProps: RedsNNNN;
6
+ };
7
+ export default NNNN;
@@ -0,0 +1,10 @@
1
+ export interface RedsNNNN {
2
+ value?: boolean;
3
+ defaultValue?: boolean;
4
+ disabled?: boolean;
5
+ trackOnColor?: string;
6
+ trackOffColor?: string;
7
+ onChange?: (value: boolean) => void;
8
+ onClick?: (value: Event) => void;
9
+ }
10
+ export declare const defaultProps: RedsNNNN;
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ import { RedsPP } from "./interface/index";
3
+ declare const PP: {
4
+ ({ value: cValue, defaultValue, onChange, onClick, trackOnColor, trackOffColor }: RedsPP): React.JSX.Element;
5
+ defaultProps: RedsPP;
6
+ };
7
+ export default PP;
@@ -1,11 +1,11 @@
1
1
  import { GestureResponderEvent } from "react-native";
2
- export interface RedsBu {
2
+ export interface RedsPP {
3
3
  value?: boolean;
4
4
  defaultValue?: boolean;
5
5
  disabled?: boolean;
6
- onClick?: (event: GestureResponderEvent) => void;
7
- onChange?: (value: boolean) => void;
8
6
  trackOnColor?: string;
9
7
  trackOffColor?: string;
8
+ onChange?: (value: boolean) => void;
9
+ onClick?: (value: GestureResponderEvent) => void;
10
10
  }
11
- export declare const defaultProps: RedsBu;
11
+ export declare const defaultProps: RedsPP;
@@ -5,9 +5,13 @@ export interface RedsPopover {
5
5
  content?: string;
6
6
  opacity?: number;
7
7
  mode?: "light" | "dark";
8
- children?: ReactNode;
9
- closeOnClickAgain?: boolean;
10
8
  trigger?: "click" | "touch";
11
9
  zIndex?: number;
12
- onVisibleChange?: (v: boolean) => void;
10
+ closeOnClickAgain?: boolean;
11
+ children?: ReactNode;
12
+ onClickMask?: (evnet: Event) => void;
13
+ onVisibleChange?: (value: boolean) => void;
14
+ }
15
+ export interface RedsPopoverEvent {
13
16
  }
17
+ export declare const defaultProps: RedsPopover;
@@ -3,9 +3,11 @@ export interface RedsSwitch {
3
3
  value?: boolean;
4
4
  defaultValue?: boolean;
5
5
  disabled?: boolean;
6
- onClick?: (event: GestureResponderEvent) => void;
7
- onChange?: (value: boolean) => void;
8
6
  trackOnColor?: string;
9
7
  trackOffColor?: string;
8
+ onChange?: (value: boolean) => void;
9
+ onClick?: (value: GestureResponderEvent) => void;
10
10
  }
11
11
  export declare const defaultProps: RedsSwitch;
12
+ export interface RedsSwitchEvent {
13
+ }
@@ -1,6 +1,5 @@
1
- import Bu from "./components/Bu";
2
1
  import Button from "./components/Button";
3
2
  import Popover from "./components/Popover";
4
3
  import Switch from "./components/Switch";
5
4
  import ConfigProvider, { useThemeColor } from "./components/ConfigProvider";
6
- export { Button, Popover, Switch, ConfigProvider, useThemeColor, Bu };
5
+ export { Button, Popover, Switch, ConfigProvider, useThemeColor };
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@xhsreds/reds-rn-next",
3
- "version": "0.0.3",
3
+ "version": "0.0.4",
4
4
  "author": "贾斌(呀哈) <jiabin@xiaohongshu.com>",
5
5
  "license": "ISC",
6
6
  "dependencies": {
7
7
  "@floating-ui/react-native": "~0.10.6",
8
8
  "dayjs": "^1.10.7",
9
- "@xhs/reds-token-next": "0.0.2"
9
+ "@xhs/reds-token-next": "npm:@xhsreds/reds-token-next@0.0.5"
10
10
  },
11
11
  "peerDependencies": {
12
12
  "react": "~18.2.0",
@@ -2,13 +2,13 @@
2
2
 
3
3
  ### Props
4
4
 
5
- | 属性 | 描述 | 类型 | 默认值 |
6
- | --------------- | ---------------- | ------- | --------------------- |
7
- | value | 当前的状态 | boolean | |
8
- | default-value | 默认状态 | boolean | false |
9
- | disabled | 是否显示气泡 | boolean | false |
10
- | track-on-color | 开关开启时的颜色 | string | rgba(255, 36, 66, 1) |
11
- | track-off-color | 开关关闭时的颜色 | string | rgba(48, 48, 52, 0.1) |
5
+ | 属性 | 描述 | 类型 | 默认值 |
6
+ | --------------- | ---------------- | ------- | ------------------ |
7
+ | value | 当前的状态 | boolean | |
8
+ | default-value | 默认状态 | boolean | false |
9
+ | disabled | 是否显示气泡 | boolean | false |
10
+ | track-on-color | 开关开启时的颜色 | string | lightColor.Primary |
11
+ | track-off-color | 开关关闭时的颜色 | string | lightColor.Fill2 |
12
12
 
13
13
  ### Events
14
14
 
@@ -1,21 +1,18 @@
1
1
  import { GestureResponderEvent } from "react-native";
2
2
  import { lightColor } from "@xhs/reds-token-next";
3
-
4
3
  export interface RedsButton {
5
4
  value?: boolean;
6
5
  defaultValue?: boolean;
7
6
  disabled?: boolean;
8
- onClick?: (event: GestureResponderEvent) => void;
9
- onChange?: (value: boolean) => void;
10
7
  trackOnColor?: string;
11
8
  trackOffColor?: string;
9
+ onChange?: (value: boolean) => void;
10
+ onClick?: (value: Event) => void;
12
11
  }
13
12
 
14
13
  export const defaultProps: RedsButton = {
15
14
  defaultValue: false,
16
15
  disabled: false,
17
- onClick: (event: GestureResponderEvent) => {},
18
- onChange: (value: boolean) => {},
19
16
  trackOnColor: lightColor.Primary,
20
17
  trackOffColor: lightColor.Fill2,
21
18
  };
@@ -14,7 +14,7 @@ import BaseDemo from "!!raw-loader!../demo/base.jsx";
14
14
  | ---------- | ------------------------------- | ------------ | ------------------------------------------------------------------------------------------------ |
15
15
  | id | 主题 ID | string | root |
16
16
  | parent-id | 父级主题 ID | string | root |
17
- | theme | 主题定制 | IThemeConfig | `{"colorMode":"light","inherit":true,"token":{"lightToken":{},"darkToken":{},"alwaysToken":{}}}` |
17
+ | theme | 主题定制 | IThemeConfig | `{"colorMode":"light","inherit":true,"token":{"lightColor":{},"darkColor":{},"alwaysColor":{}}}` |
18
18
  | color-mode | IThemeConfig colorMode 主题模式 | string | light |
19
19
  | inherit | IThemeConfig inherit Token 继承 | boolean | true |
20
20
  | token | IThemeConfig token Token 定制 | Object | `{}` |
@@ -1,8 +1,14 @@
1
1
  import { useContext } from "react";
2
+ import { lightColor, darkColor } from "@xhs/reds-token-next";
2
3
  import { configCache } from "../ConfigCache";
3
4
  import { ConfigProviderContext } from "../ConfigContext/ConfigContext";
4
5
  import { ThemeColor, ColorMode, LightToken, DarkToken, Component } from "../ConfigCache/interface";
5
6
 
7
+ const staticColor = {
8
+ lightColor,
9
+ darkColor,
10
+ };
11
+
6
12
  export interface IThemeInstance {
7
13
  colorMode: ColorMode;
8
14
  }
@@ -10,12 +16,15 @@ export interface MyProxyConstructor {
10
16
  new <T, H extends Record<string, unknown>>(target: T, handler: ProxyHandler<H>): H;
11
17
  }
12
18
 
13
- export const useThemeColor = (component?: Component) => {
19
+ export const useThemeColor = (component?: Component, staticColorType: "lightColor" | "darkColor" = "lightColor") => {
14
20
  const id = useContext(ConfigProviderContext).id;
15
21
  const themeColor: ThemeColor = new (Proxy as MyProxyConstructor)(
16
22
  {},
17
23
  {
18
24
  get(this: IThemeInstance, _, key: LightToken | DarkToken) {
25
+ if (!id) {
26
+ return staticColor[staticColorType][key];
27
+ }
19
28
  if (configCache.getColorModeById(id) === "dark") {
20
29
  return component
21
30
  ? configCache.getDarkTokenByIdAndComponent(id, component)
@@ -26,3 +26,29 @@ export interface ConfigProviderProps {
26
26
  theme?: IThemeConfig;
27
27
  parentId?: string;
28
28
  }
29
+ export interface RedsConfigProvider {
30
+ id?: string;
31
+ parentId?: string;
32
+ theme?: IThemeConfig;
33
+ colorMode?: string;
34
+ inherit?: boolean;
35
+ token: Object;
36
+ }
37
+
38
+ export interface RedsConfigProviderEvent {}
39
+ export const defaultProps: RedsConfigProvider = {
40
+ id: "root",
41
+ parentId: "root",
42
+ theme: {
43
+ colorMode: "light",
44
+ inherit: true,
45
+ token: {
46
+ lightColor: {},
47
+ darkColor: {},
48
+ alwaysColor: {},
49
+ },
50
+ },
51
+ colorMode: "light",
52
+ inherit: true,
53
+ token: {},
54
+ };
@@ -12,20 +12,21 @@ import BaseDemo from "!!raw-loader!../demo/index.tsx";
12
12
 
13
13
  ### Props
14
14
 
15
- | 属性 | 描述 | 类型 | 默认值 |
16
- | -------------------- | ---------------------- | ---------------------- | ------ |
17
- | visible | 是否显示气泡 | boolean | false |
18
- | placement | 气泡方向 | "top" &#124; "bottom" | top |
19
- | content | 弹出内容 | string | |
20
- | opacity | 遮罩透明度 | number | 0 |
21
- | mode | 主题色 | "light" &#124; "dark" | light |
22
- | trigger | 触发方式 | "click" &#124; "touch" | click |
23
- | z-index | 层级 | number | 1000 |
24
- | close-on-click-again | 再次点击关闭 | boolean | true |
25
- | children | popover 作用的目标节点 | ReactNode | |
15
+ | 属性 | 描述 | 类型 | 默认值 |
16
+ | -------------------- | ---------------------- | ---------------------- | --------- |
17
+ | visible | 是否显示气泡 | boolean | undefined |
18
+ | placement | 气泡方向 | "top" &#124; "bottom" | top |
19
+ | content | 弹出内容 | string | |
20
+ | opacity | 遮罩透明度 | number | 0 |
21
+ | mode | 主题色 | "light" &#124; "dark" | light |
22
+ | trigger | 触发方式 | "click" &#124; "touch" | click |
23
+ | z-index | 层级 | number | 1000 |
24
+ | close-on-click-again | 再次点击关闭 | boolean | true |
25
+ | children | popover 作用的目标节点 | ReactNode | |
26
26
 
27
27
  ### Events
28
28
 
29
- | 事件 | 描述 | 类型 | 默认值 |
30
- | ---------- | ---------------- | ---------------------- | ------ |
31
- | click-mask | 点击遮罩层时触发 | (value: Event) => void | |
29
+ | 事件 | 描述 | 类型 | 默认值 |
30
+ | -------------- | ---------------- | ------------------------ | ------ |
31
+ | click-mask | 点击遮罩层时触发 | (evnet: Event) => void | |
32
+ | visible-change | 点击遮罩层时触发 | (value: boolean) => void | |