@masumdev/rn-ui 0.1.6 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +47 -1752
- package/lib/commonjs/components/Accordion.js +28 -13
- package/lib/commonjs/components/Accordion.js.map +1 -1
- package/lib/commonjs/components/Alert.js +229 -73
- package/lib/commonjs/components/Alert.js.map +1 -1
- package/lib/commonjs/components/AlertDialog.js +143 -87
- package/lib/commonjs/components/AlertDialog.js.map +1 -1
- package/lib/commonjs/components/AspectRatio.js.map +1 -1
- package/lib/commonjs/components/Avatar.js +31 -28
- package/lib/commonjs/components/Avatar.js.map +1 -1
- package/lib/commonjs/components/Badge.js +25 -9
- package/lib/commonjs/components/Badge.js.map +1 -1
- package/lib/commonjs/components/BottomSheet.js +63 -8
- package/lib/commonjs/components/BottomSheet.js.map +1 -1
- package/lib/commonjs/components/Breadcrumb.js +31 -9
- package/lib/commonjs/components/Breadcrumb.js.map +1 -1
- package/lib/commonjs/components/Button.js +22 -6
- package/lib/commonjs/components/Button.js.map +1 -1
- package/lib/commonjs/components/ButtonGroup.js +2 -4
- package/lib/commonjs/components/ButtonGroup.js.map +1 -1
- package/lib/commonjs/components/Calendar.js +113 -31
- package/lib/commonjs/components/Calendar.js.map +1 -1
- package/lib/commonjs/components/Card.js +8 -3
- package/lib/commonjs/components/Card.js.map +1 -1
- package/lib/commonjs/components/Carousel.js +67 -21
- package/lib/commonjs/components/Carousel.js.map +1 -1
- package/lib/commonjs/components/Checkbox.js +12 -7
- package/lib/commonjs/components/Checkbox.js.map +1 -1
- package/lib/commonjs/components/Collapsible.js +47 -36
- package/lib/commonjs/components/Collapsible.js.map +1 -1
- package/lib/commonjs/components/Combobox.js +110 -48
- package/lib/commonjs/components/Combobox.js.map +1 -1
- package/lib/commonjs/components/Command.js +121 -77
- package/lib/commonjs/components/Command.js.map +1 -1
- package/lib/commonjs/components/DropdownMenu.js +78 -25
- package/lib/commonjs/components/DropdownMenu.js.map +1 -1
- package/lib/commonjs/components/Empty.js +24 -10
- package/lib/commonjs/components/Empty.js.map +1 -1
- package/lib/commonjs/components/FloatingActionButton.js.map +1 -1
- package/lib/commonjs/components/FormField.js +63 -13
- package/lib/commonjs/components/FormField.js.map +1 -1
- package/lib/commonjs/components/IconButton.js +22 -6
- package/lib/commonjs/components/IconButton.js.map +1 -1
- package/lib/commonjs/components/Input.js +11 -13
- package/lib/commonjs/components/Input.js.map +1 -1
- package/lib/commonjs/components/InputGroup.js +19 -10
- package/lib/commonjs/components/InputGroup.js.map +1 -1
- package/lib/commonjs/components/InputOTP.js +46 -15
- package/lib/commonjs/components/InputOTP.js.map +1 -1
- package/lib/commonjs/components/Popover.js +90 -23
- package/lib/commonjs/components/Popover.js.map +1 -1
- package/lib/commonjs/components/Progress.js +108 -7
- package/lib/commonjs/components/Progress.js.map +1 -1
- package/lib/commonjs/components/RadioGroup.js +109 -51
- package/lib/commonjs/components/RadioGroup.js.map +1 -1
- package/lib/commonjs/components/Rating.js +109 -95
- package/lib/commonjs/components/Rating.js.map +1 -1
- package/lib/commonjs/components/Select.js +109 -43
- package/lib/commonjs/components/Select.js.map +1 -1
- package/lib/commonjs/components/Sheet.js +217 -29
- package/lib/commonjs/components/Sheet.js.map +1 -1
- package/lib/commonjs/components/Stepper.js +119 -24
- package/lib/commonjs/components/Stepper.js.map +1 -1
- package/lib/commonjs/components/Switch.js +21 -11
- package/lib/commonjs/components/Switch.js.map +1 -1
- package/lib/commonjs/components/Tabs.js +159 -28
- package/lib/commonjs/components/Tabs.js.map +1 -1
- package/lib/commonjs/components/Timeline.js +35 -12
- package/lib/commonjs/components/Timeline.js.map +1 -1
- package/lib/commonjs/components/Toast.js +163 -38
- package/lib/commonjs/components/Toast.js.map +1 -1
- package/lib/commonjs/components/index.js +19 -0
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/components/types.js +53 -0
- package/lib/commonjs/components/types.js.map +1 -1
- package/lib/commonjs/theme/tokens.js +7 -7
- package/lib/commonjs/theme/tokens.js.map +1 -1
- package/lib/commonjs/utils/haptics.js +42 -0
- package/lib/commonjs/utils/haptics.js.map +1 -0
- package/lib/commonjs/utils/index.js +7 -0
- package/lib/commonjs/utils/index.js.map +1 -1
- package/lib/module/components/Accordion.js +28 -13
- package/lib/module/components/Accordion.js.map +1 -1
- package/lib/module/components/Alert.js +229 -73
- package/lib/module/components/Alert.js.map +1 -1
- package/lib/module/components/AlertDialog.js +144 -88
- package/lib/module/components/AlertDialog.js.map +1 -1
- package/lib/module/components/AspectRatio.js.map +1 -1
- package/lib/module/components/Avatar.js +31 -28
- package/lib/module/components/Avatar.js.map +1 -1
- package/lib/module/components/Badge.js +25 -9
- package/lib/module/components/Badge.js.map +1 -1
- package/lib/module/components/BottomSheet.js +64 -4
- package/lib/module/components/BottomSheet.js.map +1 -1
- package/lib/module/components/Breadcrumb.js +31 -9
- package/lib/module/components/Breadcrumb.js.map +1 -1
- package/lib/module/components/Button.js +22 -6
- package/lib/module/components/Button.js.map +1 -1
- package/lib/module/components/ButtonGroup.js +3 -5
- package/lib/module/components/ButtonGroup.js.map +1 -1
- package/lib/module/components/Calendar.js +114 -32
- package/lib/module/components/Calendar.js.map +1 -1
- package/lib/module/components/Card.js +8 -3
- package/lib/module/components/Card.js.map +1 -1
- package/lib/module/components/Carousel.js +67 -21
- package/lib/module/components/Carousel.js.map +1 -1
- package/lib/module/components/Checkbox.js +12 -7
- package/lib/module/components/Checkbox.js.map +1 -1
- package/lib/module/components/Collapsible.js +49 -38
- package/lib/module/components/Collapsible.js.map +1 -1
- package/lib/module/components/Combobox.js +110 -48
- package/lib/module/components/Combobox.js.map +1 -1
- package/lib/module/components/Command.js +121 -77
- package/lib/module/components/Command.js.map +1 -1
- package/lib/module/components/DropdownMenu.js +79 -26
- package/lib/module/components/DropdownMenu.js.map +1 -1
- package/lib/module/components/Empty.js +24 -10
- package/lib/module/components/Empty.js.map +1 -1
- package/lib/module/components/FloatingActionButton.js.map +1 -1
- package/lib/module/components/FormField.js +63 -14
- package/lib/module/components/FormField.js.map +1 -1
- package/lib/module/components/IconButton.js +22 -6
- package/lib/module/components/IconButton.js.map +1 -1
- package/lib/module/components/Input.js +12 -14
- package/lib/module/components/Input.js.map +1 -1
- package/lib/module/components/InputGroup.js +19 -10
- package/lib/module/components/InputGroup.js.map +1 -1
- package/lib/module/components/InputOTP.js +46 -15
- package/lib/module/components/InputOTP.js.map +1 -1
- package/lib/module/components/Popover.js +90 -24
- package/lib/module/components/Popover.js.map +1 -1
- package/lib/module/components/Progress.js +109 -9
- package/lib/module/components/Progress.js.map +1 -1
- package/lib/module/components/RadioGroup.js +108 -51
- package/lib/module/components/RadioGroup.js.map +1 -1
- package/lib/module/components/Rating.js +109 -95
- package/lib/module/components/Rating.js.map +1 -1
- package/lib/module/components/Select.js +111 -45
- package/lib/module/components/Select.js.map +1 -1
- package/lib/module/components/Sheet.js +216 -24
- package/lib/module/components/Sheet.js.map +1 -1
- package/lib/module/components/Stepper.js +120 -25
- package/lib/module/components/Stepper.js.map +1 -1
- package/lib/module/components/Switch.js +21 -11
- package/lib/module/components/Switch.js.map +1 -1
- package/lib/module/components/Tabs.js +158 -29
- package/lib/module/components/Tabs.js.map +1 -1
- package/lib/module/components/Timeline.js +35 -12
- package/lib/module/components/Timeline.js.map +1 -1
- package/lib/module/components/Toast.js +164 -38
- package/lib/module/components/Toast.js.map +1 -1
- package/lib/module/components/index.js +3 -2
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/components/types.js +53 -0
- package/lib/module/components/types.js.map +1 -1
- package/lib/module/theme/tokens.js +7 -7
- package/lib/module/theme/tokens.js.map +1 -1
- package/lib/module/utils/haptics.js +38 -0
- package/lib/module/utils/haptics.js.map +1 -0
- package/lib/module/utils/index.js +1 -0
- package/lib/module/utils/index.js.map +1 -1
- package/lib/typescript/commonjs/components/Accordion.d.ts +6 -3
- package/lib/typescript/commonjs/components/Accordion.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Alert.d.ts +4 -4
- package/lib/typescript/commonjs/components/Alert.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/AlertDialog.d.ts +5 -4
- package/lib/typescript/commonjs/components/AlertDialog.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/AspectRatio.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Avatar.d.ts +9 -4
- package/lib/typescript/commonjs/components/Avatar.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Badge.d.ts +5 -8
- package/lib/typescript/commonjs/components/Badge.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/BottomSheet.d.ts +13 -4
- package/lib/typescript/commonjs/components/BottomSheet.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Breadcrumb.d.ts +6 -5
- package/lib/typescript/commonjs/components/Breadcrumb.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Button.d.ts +6 -12
- package/lib/typescript/commonjs/components/Button.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/ButtonGroup.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Calendar.d.ts +9 -1
- package/lib/typescript/commonjs/components/Calendar.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Card.d.ts +3 -2
- package/lib/typescript/commonjs/components/Card.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Carousel.d.ts +4 -1
- package/lib/typescript/commonjs/components/Carousel.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Checkbox.d.ts +3 -3
- package/lib/typescript/commonjs/components/Checkbox.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Collapsible.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Combobox.d.ts +11 -6
- package/lib/typescript/commonjs/components/Combobox.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Command.d.ts +3 -0
- package/lib/typescript/commonjs/components/Command.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/DropdownMenu.d.ts +4 -2
- package/lib/typescript/commonjs/components/DropdownMenu.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Empty.d.ts +7 -4
- package/lib/typescript/commonjs/components/Empty.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/FloatingActionButton.d.ts +2 -5
- package/lib/typescript/commonjs/components/FloatingActionButton.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/FormField.d.ts +12 -4
- package/lib/typescript/commonjs/components/FormField.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/IconButton.d.ts +4 -7
- package/lib/typescript/commonjs/components/IconButton.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Input.d.ts +2 -1
- package/lib/typescript/commonjs/components/Input.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/InputGroup.d.ts +3 -2
- package/lib/typescript/commonjs/components/InputGroup.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/InputOTP.d.ts +9 -4
- package/lib/typescript/commonjs/components/InputOTP.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Popover.d.ts +1 -1
- package/lib/typescript/commonjs/components/Popover.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Progress.d.ts +15 -2
- package/lib/typescript/commonjs/components/Progress.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/RadioGroup.d.ts +3 -2
- package/lib/typescript/commonjs/components/RadioGroup.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Rating.d.ts +3 -23
- package/lib/typescript/commonjs/components/Rating.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Select.d.ts +5 -4
- package/lib/typescript/commonjs/components/Select.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Sheet.d.ts +25 -6
- package/lib/typescript/commonjs/components/Sheet.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Stepper.d.ts +5 -3
- package/lib/typescript/commonjs/components/Stepper.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Switch.d.ts +3 -3
- package/lib/typescript/commonjs/components/Switch.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Tabs.d.ts +21 -4
- package/lib/typescript/commonjs/components/Tabs.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Timeline.d.ts +9 -3
- package/lib/typescript/commonjs/components/Timeline.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Toast.d.ts +3 -0
- package/lib/typescript/commonjs/components/Toast.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/index.d.ts +7 -6
- package/lib/typescript/commonjs/components/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/types.d.ts +110 -0
- package/lib/typescript/commonjs/components/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/utils/haptics.d.ts +6 -0
- package/lib/typescript/commonjs/utils/haptics.d.ts.map +1 -0
- package/lib/typescript/commonjs/utils/index.d.ts +1 -0
- package/lib/typescript/commonjs/utils/index.d.ts.map +1 -1
- package/lib/typescript/module/components/Accordion.d.ts +6 -3
- package/lib/typescript/module/components/Accordion.d.ts.map +1 -1
- package/lib/typescript/module/components/Alert.d.ts +4 -4
- package/lib/typescript/module/components/Alert.d.ts.map +1 -1
- package/lib/typescript/module/components/AlertDialog.d.ts +5 -4
- package/lib/typescript/module/components/AlertDialog.d.ts.map +1 -1
- package/lib/typescript/module/components/AspectRatio.d.ts.map +1 -1
- package/lib/typescript/module/components/Avatar.d.ts +9 -4
- package/lib/typescript/module/components/Avatar.d.ts.map +1 -1
- package/lib/typescript/module/components/Badge.d.ts +5 -8
- package/lib/typescript/module/components/Badge.d.ts.map +1 -1
- package/lib/typescript/module/components/BottomSheet.d.ts +13 -4
- package/lib/typescript/module/components/BottomSheet.d.ts.map +1 -1
- package/lib/typescript/module/components/Breadcrumb.d.ts +6 -5
- package/lib/typescript/module/components/Breadcrumb.d.ts.map +1 -1
- package/lib/typescript/module/components/Button.d.ts +6 -12
- package/lib/typescript/module/components/Button.d.ts.map +1 -1
- package/lib/typescript/module/components/ButtonGroup.d.ts.map +1 -1
- package/lib/typescript/module/components/Calendar.d.ts +9 -1
- package/lib/typescript/module/components/Calendar.d.ts.map +1 -1
- package/lib/typescript/module/components/Card.d.ts +3 -2
- package/lib/typescript/module/components/Card.d.ts.map +1 -1
- package/lib/typescript/module/components/Carousel.d.ts +4 -1
- package/lib/typescript/module/components/Carousel.d.ts.map +1 -1
- package/lib/typescript/module/components/Checkbox.d.ts +3 -3
- package/lib/typescript/module/components/Checkbox.d.ts.map +1 -1
- package/lib/typescript/module/components/Collapsible.d.ts.map +1 -1
- package/lib/typescript/module/components/Combobox.d.ts +11 -6
- package/lib/typescript/module/components/Combobox.d.ts.map +1 -1
- package/lib/typescript/module/components/Command.d.ts +3 -0
- package/lib/typescript/module/components/Command.d.ts.map +1 -1
- package/lib/typescript/module/components/DropdownMenu.d.ts +4 -2
- package/lib/typescript/module/components/DropdownMenu.d.ts.map +1 -1
- package/lib/typescript/module/components/Empty.d.ts +7 -4
- package/lib/typescript/module/components/Empty.d.ts.map +1 -1
- package/lib/typescript/module/components/FloatingActionButton.d.ts +2 -5
- package/lib/typescript/module/components/FloatingActionButton.d.ts.map +1 -1
- package/lib/typescript/module/components/FormField.d.ts +12 -4
- package/lib/typescript/module/components/FormField.d.ts.map +1 -1
- package/lib/typescript/module/components/IconButton.d.ts +4 -7
- package/lib/typescript/module/components/IconButton.d.ts.map +1 -1
- package/lib/typescript/module/components/Input.d.ts +2 -1
- package/lib/typescript/module/components/Input.d.ts.map +1 -1
- package/lib/typescript/module/components/InputGroup.d.ts +3 -2
- package/lib/typescript/module/components/InputGroup.d.ts.map +1 -1
- package/lib/typescript/module/components/InputOTP.d.ts +9 -4
- package/lib/typescript/module/components/InputOTP.d.ts.map +1 -1
- package/lib/typescript/module/components/Popover.d.ts +1 -1
- package/lib/typescript/module/components/Popover.d.ts.map +1 -1
- package/lib/typescript/module/components/Progress.d.ts +15 -2
- package/lib/typescript/module/components/Progress.d.ts.map +1 -1
- package/lib/typescript/module/components/RadioGroup.d.ts +3 -2
- package/lib/typescript/module/components/RadioGroup.d.ts.map +1 -1
- package/lib/typescript/module/components/Rating.d.ts +3 -23
- package/lib/typescript/module/components/Rating.d.ts.map +1 -1
- package/lib/typescript/module/components/Select.d.ts +5 -4
- package/lib/typescript/module/components/Select.d.ts.map +1 -1
- package/lib/typescript/module/components/Sheet.d.ts +25 -6
- package/lib/typescript/module/components/Sheet.d.ts.map +1 -1
- package/lib/typescript/module/components/Stepper.d.ts +5 -3
- package/lib/typescript/module/components/Stepper.d.ts.map +1 -1
- package/lib/typescript/module/components/Switch.d.ts +3 -3
- package/lib/typescript/module/components/Switch.d.ts.map +1 -1
- package/lib/typescript/module/components/Tabs.d.ts +21 -4
- package/lib/typescript/module/components/Tabs.d.ts.map +1 -1
- package/lib/typescript/module/components/Timeline.d.ts +9 -3
- package/lib/typescript/module/components/Timeline.d.ts.map +1 -1
- package/lib/typescript/module/components/Toast.d.ts +3 -0
- package/lib/typescript/module/components/Toast.d.ts.map +1 -1
- package/lib/typescript/module/components/index.d.ts +7 -6
- package/lib/typescript/module/components/index.d.ts.map +1 -1
- package/lib/typescript/module/components/types.d.ts +110 -0
- package/lib/typescript/module/components/types.d.ts.map +1 -1
- package/lib/typescript/module/utils/haptics.d.ts +6 -0
- package/lib/typescript/module/utils/haptics.d.ts.map +1 -0
- package/lib/typescript/module/utils/index.d.ts +1 -0
- package/lib/typescript/module/utils/index.d.ts.map +1 -1
- package/package.json +10 -1
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
import React from "react";
|
|
4
4
|
import { Pressable, View } from "react-native";
|
|
5
|
+
import Animated, { interpolateColor, useAnimatedStyle, useSharedValue, withSpring, withTiming } from "react-native-reanimated";
|
|
5
6
|
import { useTheme } from "../theme/index.js";
|
|
7
|
+
import { triggerHaptic } from "../utils/haptics.js";
|
|
6
8
|
import { Text } from "./Text.js";
|
|
7
9
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
10
|
const RadioGroupContext = /*#__PURE__*/React.createContext(null);
|
|
@@ -45,7 +47,11 @@ export function RadioGroupItem({
|
|
|
45
47
|
label,
|
|
46
48
|
description,
|
|
47
49
|
disabled = false,
|
|
50
|
+
glass = false,
|
|
51
|
+
haptic = true,
|
|
52
|
+
animated = true,
|
|
48
53
|
style,
|
|
54
|
+
onPress,
|
|
49
55
|
...props
|
|
50
56
|
}) {
|
|
51
57
|
const context = React.useContext(RadioGroupContext);
|
|
@@ -54,68 +60,119 @@ export function RadioGroupItem({
|
|
|
54
60
|
components,
|
|
55
61
|
radii,
|
|
56
62
|
spacing,
|
|
57
|
-
typography
|
|
63
|
+
typography,
|
|
64
|
+
isDark
|
|
58
65
|
} = useTheme();
|
|
59
66
|
const checked = context?.value === value;
|
|
60
67
|
const isDisabled = disabled || Boolean(context?.disabled);
|
|
61
|
-
|
|
68
|
+
const checkedProgress = useSharedValue(checked ? 1 : 0);
|
|
69
|
+
const pressedProgress = useSharedValue(0);
|
|
70
|
+
React.useEffect(() => {
|
|
71
|
+
checkedProgress.value = withSpring(checked ? 1 : 0, {
|
|
72
|
+
damping: 15,
|
|
73
|
+
stiffness: 220,
|
|
74
|
+
mass: 0.7
|
|
75
|
+
});
|
|
76
|
+
}, [checked, checkedProgress]);
|
|
77
|
+
const glassBg = isDark ? "rgba(15, 27, 45, 0.60)" : "rgba(255, 255, 255, 0.75)";
|
|
78
|
+
const inactiveBg = glass ? glassBg : colors.surface;
|
|
79
|
+
const activeBg = colors.primarySoft;
|
|
80
|
+
const inactiveBorder = glass ? isDark ? "rgba(248, 250, 252, 0.20)" : "rgba(15, 23, 42, 0.14)" : colors.border;
|
|
81
|
+
const activeBorder = colors.primary;
|
|
82
|
+
const containerAnimatedStyle = useAnimatedStyle(() => ({
|
|
83
|
+
backgroundColor: interpolateColor(checkedProgress.value, [0, 1], [inactiveBg, activeBg]),
|
|
84
|
+
borderColor: interpolateColor(checkedProgress.value, [0, 1], [inactiveBorder, activeBorder]),
|
|
85
|
+
transform: [{
|
|
86
|
+
scale: animated ? 1 - pressedProgress.value * 0.02 : 1
|
|
87
|
+
}]
|
|
88
|
+
}));
|
|
89
|
+
const dotAnimatedStyle = useAnimatedStyle(() => ({
|
|
90
|
+
transform: [{
|
|
91
|
+
scale: checkedProgress.value
|
|
92
|
+
}],
|
|
93
|
+
opacity: checkedProgress.value
|
|
94
|
+
}));
|
|
95
|
+
const radioCircleAnimatedStyle = useAnimatedStyle(() => ({
|
|
96
|
+
borderColor: interpolateColor(checkedProgress.value, [0, 1], [colors.border, colors.primary])
|
|
97
|
+
}));
|
|
98
|
+
const handlePress = e => {
|
|
99
|
+
if (isDisabled) return;
|
|
100
|
+
if (haptic) triggerHaptic("selection");
|
|
101
|
+
context?.onValueChange?.(value);
|
|
102
|
+
onPress?.(e);
|
|
103
|
+
};
|
|
104
|
+
return /*#__PURE__*/_jsx(Pressable, {
|
|
62
105
|
accessibilityRole: "radio",
|
|
63
106
|
accessibilityState: {
|
|
64
107
|
checked,
|
|
65
108
|
disabled: isDisabled
|
|
66
109
|
},
|
|
67
110
|
disabled: isDisabled,
|
|
68
|
-
onPress:
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
},
|
|
111
|
+
onPress: handlePress,
|
|
112
|
+
onPressIn: () => {
|
|
113
|
+
if (!isDisabled && animated) {
|
|
114
|
+
pressedProgress.value = withTiming(1, {
|
|
115
|
+
duration: 100
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
},
|
|
119
|
+
onPressOut: () => {
|
|
120
|
+
if (!isDisabled && animated) {
|
|
121
|
+
pressedProgress.value = withTiming(0, {
|
|
122
|
+
duration: 120
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
},
|
|
126
|
+
style: {
|
|
127
|
+
width: "100%"
|
|
128
|
+
},
|
|
83
129
|
...props,
|
|
84
|
-
children:
|
|
85
|
-
style: {
|
|
86
|
-
width:
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
},
|
|
95
|
-
children:
|
|
130
|
+
children: /*#__PURE__*/_jsxs(Animated.View, {
|
|
131
|
+
style: [{
|
|
132
|
+
width: "100%",
|
|
133
|
+
flexDirection: "row",
|
|
134
|
+
alignItems: "flex-start",
|
|
135
|
+
gap: spacing.md,
|
|
136
|
+
padding: spacing.md,
|
|
137
|
+
borderWidth: components.borderWidth.strong,
|
|
138
|
+
borderRadius: radii.xl,
|
|
139
|
+
opacity: isDisabled ? 0.5 : 1
|
|
140
|
+
}, containerAnimatedStyle, style],
|
|
141
|
+
children: [/*#__PURE__*/_jsx(Animated.View, {
|
|
142
|
+
style: [{
|
|
143
|
+
width: 20,
|
|
144
|
+
height: 20,
|
|
145
|
+
borderRadius: 10,
|
|
146
|
+
borderWidth: components.borderWidth.focus,
|
|
147
|
+
alignItems: "center",
|
|
148
|
+
justifyContent: "center",
|
|
149
|
+
marginTop: 2
|
|
150
|
+
}, radioCircleAnimatedStyle],
|
|
151
|
+
children: /*#__PURE__*/_jsx(Animated.View, {
|
|
152
|
+
style: [{
|
|
153
|
+
width: 10,
|
|
154
|
+
height: 10,
|
|
155
|
+
borderRadius: 5,
|
|
156
|
+
backgroundColor: colors.primary
|
|
157
|
+
}, dotAnimatedStyle]
|
|
158
|
+
})
|
|
159
|
+
}), /*#__PURE__*/_jsxs(View, {
|
|
96
160
|
style: {
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
}) : label, typeof description === "string" ? /*#__PURE__*/_jsx(Text, {
|
|
113
|
-
style: [typography.bodySmall, {
|
|
114
|
-
color: colors.textMuted
|
|
115
|
-
}],
|
|
116
|
-
children: description
|
|
117
|
-
}) : description]
|
|
118
|
-
})]
|
|
161
|
+
flex: 1,
|
|
162
|
+
gap: spacing.xs
|
|
163
|
+
},
|
|
164
|
+
children: [typeof label === "string" ? /*#__PURE__*/_jsx(Text, {
|
|
165
|
+
variant: "label",
|
|
166
|
+
color: "text",
|
|
167
|
+
children: label
|
|
168
|
+
}) : label, typeof description === "string" ? /*#__PURE__*/_jsx(Text, {
|
|
169
|
+
style: [typography.bodySmall, {
|
|
170
|
+
color: colors.textMuted
|
|
171
|
+
}],
|
|
172
|
+
children: description
|
|
173
|
+
}) : description]
|
|
174
|
+
})]
|
|
175
|
+
})
|
|
119
176
|
});
|
|
120
177
|
}
|
|
121
178
|
//# sourceMappingURL=RadioGroup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Pressable","View","useTheme","Text","jsx","_jsx","jsxs","_jsxs","RadioGroupContext","createContext","RadioGroup","value","defaultValue","disabled","onValueChange","style","props","spacing","internalValue","setInternalValue","useState","currentValue","handleValueChange","useCallback","next","undefined","context","useMemo","Provider","children","accessibilityRole","gap","sm","width","RadioGroupItem","label","description","useContext","colors","components","radii","typography","checked","isDisabled","Boolean","
|
|
1
|
+
{"version":3,"names":["React","Pressable","View","Animated","interpolateColor","useAnimatedStyle","useSharedValue","withSpring","withTiming","useTheme","triggerHaptic","Text","jsx","_jsx","jsxs","_jsxs","RadioGroupContext","createContext","RadioGroup","value","defaultValue","disabled","onValueChange","style","props","spacing","internalValue","setInternalValue","useState","currentValue","handleValueChange","useCallback","next","undefined","context","useMemo","Provider","children","accessibilityRole","gap","sm","width","RadioGroupItem","label","description","glass","haptic","animated","onPress","useContext","colors","components","radii","typography","isDark","checked","isDisabled","Boolean","checkedProgress","pressedProgress","useEffect","damping","stiffness","mass","glassBg","inactiveBg","surface","activeBg","primarySoft","inactiveBorder","border","activeBorder","primary","containerAnimatedStyle","backgroundColor","borderColor","transform","scale","dotAnimatedStyle","opacity","radioCircleAnimatedStyle","handlePress","e","accessibilityState","onPressIn","duration","onPressOut","flexDirection","alignItems","md","padding","borderWidth","strong","borderRadius","xl","height","focus","justifyContent","marginTop","flex","xs","variant","color","bodySmall","textMuted"],"sourceRoot":"../../../src","sources":["components/RadioGroup.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,24 +6,10 @@ import { Gesture, GestureDetector } from "react-native-gesture-handler";
|
|
|
6
6
|
import Animated, { runOnJS, useAnimatedStyle, useSharedValue, withSequence, withSpring } from "react-native-reanimated";
|
|
7
7
|
import Svg, { Path } from "react-native-svg";
|
|
8
8
|
import { useTheme } from "../theme/index.js";
|
|
9
|
+
import { triggerHaptic } from "../utils/haptics.js";
|
|
9
10
|
import { Text } from "./Text.js";
|
|
10
11
|
import { renderIcon } from "./types.js";
|
|
11
12
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
12
|
-
function getNumericSize(size) {
|
|
13
|
-
if (typeof size === "number") return size;
|
|
14
|
-
switch (size) {
|
|
15
|
-
case "sm":
|
|
16
|
-
return 16;
|
|
17
|
-
case "md":
|
|
18
|
-
return 24;
|
|
19
|
-
case "lg":
|
|
20
|
-
return 32;
|
|
21
|
-
case "xl":
|
|
22
|
-
return 40;
|
|
23
|
-
default:
|
|
24
|
-
return 24;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
13
|
function getDefaultTone(shape) {
|
|
28
14
|
switch (shape) {
|
|
29
15
|
case "heart":
|
|
@@ -138,6 +124,76 @@ function ShapeSvg({
|
|
|
138
124
|
});
|
|
139
125
|
}
|
|
140
126
|
}
|
|
127
|
+
function RatingItemWrapper({
|
|
128
|
+
index,
|
|
129
|
+
itemSize,
|
|
130
|
+
ratingShared,
|
|
131
|
+
activeColor,
|
|
132
|
+
activeEmptyColor,
|
|
133
|
+
shape,
|
|
134
|
+
icon,
|
|
135
|
+
renderItem
|
|
136
|
+
}) {
|
|
137
|
+
const itemValue = index + 1;
|
|
138
|
+
const fillOverlayStyle = useAnimatedStyle(() => {
|
|
139
|
+
const currentVal = ratingShared.value;
|
|
140
|
+
let fillFraction = 0;
|
|
141
|
+
if (currentVal >= itemValue) {
|
|
142
|
+
fillFraction = 1;
|
|
143
|
+
} else if (currentVal > index) {
|
|
144
|
+
fillFraction = currentVal - index;
|
|
145
|
+
}
|
|
146
|
+
return {
|
|
147
|
+
width: `${fillFraction * 100}%`
|
|
148
|
+
};
|
|
149
|
+
});
|
|
150
|
+
if (renderItem) {
|
|
151
|
+
const currentVal = ratingShared.value;
|
|
152
|
+
let fillFraction = 0;
|
|
153
|
+
if (currentVal >= itemValue) fillFraction = 1;else if (currentVal > index) fillFraction = currentVal - index;
|
|
154
|
+
return /*#__PURE__*/_jsx(View, {
|
|
155
|
+
style: {
|
|
156
|
+
width: itemSize,
|
|
157
|
+
height: itemSize
|
|
158
|
+
},
|
|
159
|
+
children: renderItem({
|
|
160
|
+
index,
|
|
161
|
+
value: itemValue,
|
|
162
|
+
fillFraction,
|
|
163
|
+
isFilled: fillFraction > 0,
|
|
164
|
+
color: activeColor,
|
|
165
|
+
emptyColor: activeEmptyColor,
|
|
166
|
+
size: itemSize
|
|
167
|
+
})
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
171
|
+
style: styles.iconCenter,
|
|
172
|
+
children: [/*#__PURE__*/_jsx(View, {
|
|
173
|
+
style: StyleSheet.absoluteFill,
|
|
174
|
+
children: icon ? renderIcon(icon, activeEmptyColor, itemSize) : /*#__PURE__*/_jsx(ShapeSvg, {
|
|
175
|
+
shape: shape,
|
|
176
|
+
color: activeEmptyColor,
|
|
177
|
+
size: itemSize
|
|
178
|
+
})
|
|
179
|
+
}), /*#__PURE__*/_jsx(Animated.View, {
|
|
180
|
+
style: [StyleSheet.absoluteFill, {
|
|
181
|
+
overflow: "hidden"
|
|
182
|
+
}, fillOverlayStyle],
|
|
183
|
+
children: /*#__PURE__*/_jsx(View, {
|
|
184
|
+
style: {
|
|
185
|
+
width: itemSize,
|
|
186
|
+
height: itemSize
|
|
187
|
+
},
|
|
188
|
+
children: icon ? renderIcon(icon, activeColor, itemSize) : /*#__PURE__*/_jsx(ShapeSvg, {
|
|
189
|
+
shape: shape,
|
|
190
|
+
color: activeColor,
|
|
191
|
+
size: itemSize
|
|
192
|
+
})
|
|
193
|
+
})
|
|
194
|
+
})]
|
|
195
|
+
});
|
|
196
|
+
}
|
|
141
197
|
export function Rating({
|
|
142
198
|
value,
|
|
143
199
|
defaultValue = 0,
|
|
@@ -153,6 +209,7 @@ export function Rating({
|
|
|
153
209
|
disabled = false,
|
|
154
210
|
allowClear = true,
|
|
155
211
|
showValue = false,
|
|
212
|
+
haptic = true,
|
|
156
213
|
valueFormat,
|
|
157
214
|
renderItem,
|
|
158
215
|
icon,
|
|
@@ -180,11 +237,13 @@ export function Rating({
|
|
|
180
237
|
const isInteracting = useSharedValue(false);
|
|
181
238
|
const containerWidth = useSharedValue(max * itemSize + (max - 1) * gap);
|
|
182
239
|
const scaleAnim = useSharedValue(1);
|
|
240
|
+
const [displayVal, setDisplayVal] = React.useState(currentValue);
|
|
183
241
|
React.useEffect(() => {
|
|
184
242
|
if (!isInteracting.value) {
|
|
185
243
|
ratingShared.value = currentValue;
|
|
244
|
+
setDisplayVal(currentValue);
|
|
186
245
|
}
|
|
187
|
-
}, [currentValue, isInteracting]);
|
|
246
|
+
}, [currentValue, isInteracting, ratingShared]);
|
|
188
247
|
const updateRatingFromX = React.useCallback((xPos, isFinal = false) => {
|
|
189
248
|
"worklet";
|
|
190
249
|
|
|
@@ -192,24 +251,32 @@ export function Rating({
|
|
|
192
251
|
if (totalW <= 0) return;
|
|
193
252
|
const rawVal = xPos / totalW * max;
|
|
194
253
|
let nextVal = roundToStep(rawVal, step, max, allowClear);
|
|
195
|
-
|
|
196
|
-
// Handle tap on current value to toggle zero clear
|
|
197
254
|
if (isFinal && allowClear && nextVal === ratingShared.value && xPos < itemSize) {
|
|
198
255
|
nextVal = 0;
|
|
199
256
|
}
|
|
200
257
|
ratingShared.value = nextVal;
|
|
258
|
+
runOnJS(setDisplayVal)(nextVal);
|
|
201
259
|
if (onValueChange) {
|
|
202
260
|
runOnJS(onValueChange)(nextVal);
|
|
203
261
|
}
|
|
204
|
-
if (!isControlled) {
|
|
262
|
+
if (isFinal && !isControlled) {
|
|
205
263
|
runOnJS(setInternalValue)(nextVal);
|
|
206
264
|
}
|
|
207
|
-
}, [
|
|
208
|
-
const
|
|
265
|
+
}, [allowClear, containerWidth, isControlled, itemSize, max, onValueChange, ratingShared, step]);
|
|
266
|
+
const triggerHapticFeedback = React.useCallback(() => {
|
|
267
|
+
if (haptic) triggerHaptic("selection");
|
|
268
|
+
}, [haptic]);
|
|
269
|
+
const tapGesture = Gesture.Tap().enabled(!disabled && !readOnly).onEnd(e => {
|
|
270
|
+
"worklet";
|
|
271
|
+
|
|
272
|
+
updateRatingFromX(e.x, true);
|
|
273
|
+
runOnJS(triggerHapticFeedback)();
|
|
274
|
+
});
|
|
275
|
+
const panGesture = Gesture.Pan().enabled(!disabled && !readOnly).minDistance(2).onBegin(e => {
|
|
209
276
|
"worklet";
|
|
210
277
|
|
|
211
278
|
isInteracting.value = true;
|
|
212
|
-
scaleAnim.value = withSpring(1.
|
|
279
|
+
scaleAnim.value = withSpring(1.05, {
|
|
213
280
|
damping: 15,
|
|
214
281
|
stiffness: 200
|
|
215
282
|
});
|
|
@@ -226,7 +293,7 @@ export function Rating({
|
|
|
226
293
|
|
|
227
294
|
updateRatingFromX(e.x, true);
|
|
228
295
|
const finalVal = ratingShared.value;
|
|
229
|
-
scaleAnim.value = withSequence(withSpring(1.
|
|
296
|
+
scaleAnim.value = withSequence(withSpring(1.08, {
|
|
230
297
|
damping: 10
|
|
231
298
|
}), withSpring(1, {
|
|
232
299
|
damping: 15
|
|
@@ -234,6 +301,7 @@ export function Rating({
|
|
|
234
301
|
if (onSlidingComplete) {
|
|
235
302
|
runOnJS(onSlidingComplete)(finalVal);
|
|
236
303
|
}
|
|
304
|
+
runOnJS(triggerHapticFeedback)();
|
|
237
305
|
isInteracting.value = false;
|
|
238
306
|
}).onFinalize(() => {
|
|
239
307
|
"worklet";
|
|
@@ -241,7 +309,7 @@ export function Rating({
|
|
|
241
309
|
isInteracting.value = false;
|
|
242
310
|
scaleAnim.value = withSpring(1);
|
|
243
311
|
});
|
|
244
|
-
const composedGesture = panGesture;
|
|
312
|
+
const composedGesture = Gesture.Race(tapGesture, panGesture);
|
|
245
313
|
const containerAnimatedStyle = useAnimatedStyle(() => ({
|
|
246
314
|
transform: [{
|
|
247
315
|
scale: scaleAnim.value
|
|
@@ -252,7 +320,7 @@ export function Rating({
|
|
|
252
320
|
containerWidth.value = e.nativeEvent.layout.width;
|
|
253
321
|
if (onLayout) onLayout(e);
|
|
254
322
|
};
|
|
255
|
-
const defaultFormattedValue = valueFormat ? valueFormat(
|
|
323
|
+
const defaultFormattedValue = valueFormat ? valueFormat(displayVal, max) : `${displayVal.toFixed(step < 0.5 ? 1 : step === 0.5 ? 1 : 0)} / ${max}`;
|
|
256
324
|
return /*#__PURE__*/_jsxs(View, {
|
|
257
325
|
style: [styles.root, style],
|
|
258
326
|
...props,
|
|
@@ -265,76 +333,22 @@ export function Rating({
|
|
|
265
333
|
}, containerAnimatedStyle],
|
|
266
334
|
children: Array.from({
|
|
267
335
|
length: max
|
|
268
|
-
}).map((_, index) => {
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
size: itemSize
|
|
285
|
-
};
|
|
286
|
-
return /*#__PURE__*/_jsx(View, {
|
|
287
|
-
style: [styles.itemWrapper, {
|
|
288
|
-
width: itemSize,
|
|
289
|
-
height: itemSize
|
|
290
|
-
}, itemStyle],
|
|
291
|
-
children: renderItem ? renderItem(itemInfo) : icon ? /*#__PURE__*/_jsxs(View, {
|
|
292
|
-
style: styles.iconCenter,
|
|
293
|
-
children: [/*#__PURE__*/_jsx(View, {
|
|
294
|
-
style: StyleSheet.absoluteFill,
|
|
295
|
-
children: renderIcon(icon, activeEmptyColor, itemSize)
|
|
296
|
-
}), /*#__PURE__*/_jsx(View, {
|
|
297
|
-
style: [StyleSheet.absoluteFill, {
|
|
298
|
-
width: `${fillFraction * 100}%`,
|
|
299
|
-
overflow: "hidden"
|
|
300
|
-
}],
|
|
301
|
-
children: /*#__PURE__*/_jsx(View, {
|
|
302
|
-
style: {
|
|
303
|
-
width: itemSize,
|
|
304
|
-
height: itemSize
|
|
305
|
-
},
|
|
306
|
-
children: renderIcon(icon, activeColor, itemSize)
|
|
307
|
-
})
|
|
308
|
-
})]
|
|
309
|
-
}) : /*#__PURE__*/_jsxs(View, {
|
|
310
|
-
style: styles.iconCenter,
|
|
311
|
-
children: [/*#__PURE__*/_jsx(View, {
|
|
312
|
-
style: StyleSheet.absoluteFill,
|
|
313
|
-
children: /*#__PURE__*/_jsx(ShapeSvg, {
|
|
314
|
-
shape: shape,
|
|
315
|
-
color: activeEmptyColor,
|
|
316
|
-
size: itemSize
|
|
317
|
-
})
|
|
318
|
-
}), /*#__PURE__*/_jsx(View, {
|
|
319
|
-
style: [StyleSheet.absoluteFill, {
|
|
320
|
-
width: `${fillFraction * 100}%`,
|
|
321
|
-
overflow: "hidden"
|
|
322
|
-
}],
|
|
323
|
-
children: /*#__PURE__*/_jsx(View, {
|
|
324
|
-
style: {
|
|
325
|
-
width: itemSize,
|
|
326
|
-
height: itemSize
|
|
327
|
-
},
|
|
328
|
-
children: /*#__PURE__*/_jsx(ShapeSvg, {
|
|
329
|
-
shape: shape,
|
|
330
|
-
color: activeColor,
|
|
331
|
-
size: itemSize
|
|
332
|
-
})
|
|
333
|
-
})
|
|
334
|
-
})]
|
|
335
|
-
})
|
|
336
|
-
}, index);
|
|
337
|
-
})
|
|
336
|
+
}).map((_, index) => /*#__PURE__*/_jsx(View, {
|
|
337
|
+
style: [styles.itemWrapper, {
|
|
338
|
+
width: itemSize,
|
|
339
|
+
height: itemSize
|
|
340
|
+
}, itemStyle],
|
|
341
|
+
children: /*#__PURE__*/_jsx(RatingItemWrapper, {
|
|
342
|
+
index: index,
|
|
343
|
+
itemSize: itemSize,
|
|
344
|
+
ratingShared: ratingShared,
|
|
345
|
+
activeColor: activeColor,
|
|
346
|
+
activeEmptyColor: activeEmptyColor,
|
|
347
|
+
shape: shape,
|
|
348
|
+
icon: icon,
|
|
349
|
+
renderItem: renderItem
|
|
350
|
+
})
|
|
351
|
+
}, index))
|
|
338
352
|
})
|
|
339
353
|
}), showValue && /*#__PURE__*/_jsx(Text, {
|
|
340
354
|
variant: "labelSmall",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","StyleSheet","View","Gesture","GestureDetector","Animated","runOnJS","useAnimatedStyle","useSharedValue","withSequence","withSpring","Svg","Path","useTheme","Text","renderIcon","jsx","_jsx","jsxs","_jsxs","getNumericSize","size","getDefaultTone","shape","parsePrecisionStep","precision","Math","max","clamp","val","min","roundToStep","rawVal","step","allowZero","snapped","round","decimals","toString","split","length","Number","toFixed","ShapeSvg","color","viewBox","width","height","children","d","fill","Rating","value","defaultValue","gap","tone","emptyColor","readOnly","disabled","allowClear","showValue","valueFormat","renderItem","icon","onValueChange","onSlidingStart","onSlidingComplete","style","itemStyle","onLayout","props","colors","components","activeTone","activeColor","activeEmptyColor","textMuted","itemSize","rating","internalValue","setInternalValue","useState","isControlled","undefined","currentValue","ratingShared","isInteracting","containerWidth","scaleAnim","useEffect","updateRatingFromX","useCallback","xPos","isFinal","totalW","nextVal","panGesture","Pan","enabled","minDistance","onBegin","e","damping","stiffness","x","onUpdate","onEnd","finalVal","onFinalize","composedGesture","containerAnimatedStyle","transform","scale","opacity","handleLayout","nativeEvent","layout","defaultFormattedValue","styles","root","gesture","container","Array","from","map","_","index","itemValue","fillFraction","isFilled","itemInfo","itemWrapper","iconCenter","absoluteFill","overflow","variant","valueText","create","flexDirection","alignItems","justifyContent","marginLeft"],"sourceRoot":"../../../src","sources":["components/Rating.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","StyleSheet","View","Gesture","GestureDetector","Animated","runOnJS","useAnimatedStyle","useSharedValue","withSequence","withSpring","Svg","Path","useTheme","triggerHaptic","Text","renderIcon","jsx","_jsx","jsxs","_jsxs","getDefaultTone","shape","parsePrecisionStep","precision","Math","max","clamp","val","min","roundToStep","rawVal","step","allowZero","snapped","round","decimals","toString","split","length","Number","toFixed","ShapeSvg","color","size","viewBox","width","height","children","d","fill","RatingItemWrapper","index","itemSize","ratingShared","activeColor","activeEmptyColor","icon","renderItem","itemValue","fillOverlayStyle","currentVal","value","fillFraction","style","isFilled","emptyColor","styles","iconCenter","absoluteFill","overflow","Rating","defaultValue","gap","tone","readOnly","disabled","allowClear","showValue","haptic","valueFormat","onValueChange","onSlidingStart","onSlidingComplete","itemStyle","onLayout","props","colors","components","activeTone","textMuted","rating","internalValue","setInternalValue","useState","isControlled","undefined","currentValue","isInteracting","containerWidth","scaleAnim","displayVal","setDisplayVal","useEffect","updateRatingFromX","useCallback","xPos","isFinal","totalW","nextVal","triggerHapticFeedback","tapGesture","Tap","enabled","onEnd","e","x","panGesture","Pan","minDistance","onBegin","damping","stiffness","onUpdate","finalVal","onFinalize","composedGesture","Race","containerAnimatedStyle","transform","scale","opacity","handleLayout","nativeEvent","layout","defaultFormattedValue","root","gesture","container","Array","from","map","_","itemWrapper","variant","valueText","create","flexDirection","alignItems","justifyContent","marginLeft"],"sourceRoot":"../../../src","sources":["components/Rating.tsx"],"mappings":"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","ignoreList":[]}
|