@jamadd/react-native-template-ui 0.7.6 → 0.7.7

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.
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+
3
+ import { useMappingHelper } from '@shopify/flash-list';
4
+ import { memo, useLayoutEffect, useState } from 'react';
5
+ import { Gesture, GestureDetector } from 'react-native-gesture-handler';
6
+ import { useAnimatedStyle, useSharedValue, withTiming } from 'react-native-reanimated';
7
+ import { scheduleOnRN } from 'react-native-worklets';
8
+ import { useViewRef } from "../../hooks/view.js";
9
+ import { sliderStepIndicatorDefaultWidth, sliderThumbDefaultSize, SliderTrackSize } from "../../utils/slider/const.js";
10
+ import AnimatedThemedView from "../view/AnimatedThemedView.js";
11
+ import ThemedView from "../view/ThemedView.js";
12
+ import ThemedSliderStepIndicator from "./ThemedSliderStepIndicator.js";
13
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
14
+ const Slider = ({
15
+ range,
16
+ steps = 1,
17
+ stepIndicator,
18
+ stepIndicatorProps,
19
+ snapToStepAnimated = true,
20
+ onValueChange,
21
+ sliderWrapProps,
22
+ trackSize = SliderTrackSize.M,
23
+ trackActiveColor = 'themePri',
24
+ trackActiveProps,
25
+ trackInactiveColor = 'separator',
26
+ trackInactiveProps,
27
+ thumbSize = sliderThumbDefaultSize,
28
+ thumbColor = 'themePri',
29
+ thumbProps,
30
+ gestureActivateDuration = 40,
31
+ setSelectedVal,
32
+ selectedValSharedVal
33
+ }) => {
34
+ const isNumRange = typeof range[0] === 'number';
35
+ const processedRange = isNumRange ? range.sort() : range;
36
+ const totalSteps = isNumRange ? Math.abs(processedRange[1] - processedRange[0]) / steps : processedRange.length - 1;
37
+ const thumbSizeHalf = thumbSize / 2;
38
+ const {
39
+ getMappingKey
40
+ } = useMappingHelper();
41
+ const trackViewRef = useViewRef();
42
+ const [sliderWidth, setSliderWidth] = useState();
43
+ const [trackWidth, setTrackWidth] = useState();
44
+ const [stepWidth, setStepWidth] = useState();
45
+ const xSharedVal = useSharedValue(-(trackWidth ?? 0));
46
+ const trackAnimatedStyle = useAnimatedStyle(() => ({
47
+ transform: [{
48
+ translateX: xSharedVal.get()
49
+ }]
50
+ }), [trackWidth]);
51
+ const thumbAnimatedStyle = useAnimatedStyle(() => ({
52
+ transform: [{
53
+ translateX: xSharedVal.get() - thumbSizeHalf
54
+ }]
55
+ }), [thumbSizeHalf]);
56
+ useLayoutEffect(() => {
57
+ trackViewRef.current?.measure((_x, _y, w) => {
58
+ const tempWidth = w - thumbSize;
59
+ const tempStepWidth = tempWidth / totalSteps;
60
+ setSliderWidth(w + thumbSize + thumbSizeHalf);
61
+ setTrackWidth(tempWidth);
62
+ setStepWidth(tempStepWidth);
63
+ let index = 0;
64
+ if (isNumRange) {
65
+ const numRange = processedRange;
66
+ const numCurrentValue = selectedValSharedVal?.get();
67
+ index = numCurrentValue ? (numCurrentValue - numRange[0]) / steps : 0;
68
+ } else {
69
+ const strRange = processedRange;
70
+ const strCurrentValue = selectedValSharedVal?.get();
71
+ index = strCurrentValue ? strRange.indexOf(strCurrentValue) : 0;
72
+ }
73
+ xSharedVal.set(-(totalSteps - index) * tempStepWidth);
74
+ });
75
+ }, [thumbSize, isNumRange, processedRange, totalSteps]);
76
+ const updateSelectedVal = x => {
77
+ if (!stepWidth) {
78
+ return;
79
+ }
80
+ if (isNumRange) {
81
+ const numRange = processedRange;
82
+ const numIndex = Math.round(x / stepWidth);
83
+ const tempSelectedVal = numRange[1] - numIndex * steps;
84
+ setSelectedVal?.(tempSelectedVal);
85
+ onValueChange(tempSelectedVal);
86
+ } else {
87
+ const strRange = processedRange;
88
+ const strIndex = Math.round(x / stepWidth);
89
+ const tempSelectedVal = strRange[totalSteps - strIndex];
90
+ setSelectedVal?.(tempSelectedVal);
91
+ onValueChange(tempSelectedVal);
92
+ }
93
+ };
94
+ const updateXSharedVal = (x, animated = false) => {
95
+ 'worklet';
96
+
97
+ const tempX = Math.min(0, Math.max(x, -(trackWidth ?? 0)));
98
+ xSharedVal.set(animated ? withTiming(tempX) : tempX);
99
+ scheduleOnRN(updateSelectedVal, Math.abs(tempX));
100
+ };
101
+ const touchStart = useSharedValue(0);
102
+ const gesture = Gesture.Simultaneous(Gesture.LongPress().minDuration(gestureActivateDuration).onStart(({
103
+ x
104
+ }) => {
105
+ if (sliderWidth) {
106
+ updateXSharedVal(-(sliderWidth - (x + thumbSize + thumbSizeHalf)));
107
+ }
108
+ }).onTouchesUp(({
109
+ allTouches
110
+ }) => {
111
+ const touch = allTouches[0];
112
+ if (touch && sliderWidth && stepWidth) {
113
+ const nearestStep = Math.round(-(sliderWidth - (touch.x + thumbSize + thumbSizeHalf)) / stepWidth);
114
+ updateXSharedVal(nearestStep * stepWidth, snapToStepAnimated);
115
+ }
116
+ }), Gesture.Pan().manualActivation(true).onBegin(() => {
117
+ touchStart.set(Date.now());
118
+ }).onTouchesMove(({}, state) => {
119
+ const timeToCheck = Date.now() - touchStart.get();
120
+ if (timeToCheck >= gestureActivateDuration) {
121
+ state.activate();
122
+ } else {
123
+ state.fail();
124
+ }
125
+ }).onChange(({
126
+ changeX
127
+ }) => {
128
+ updateXSharedVal(xSharedVal.get() + changeX);
129
+ }).onEnd(() => {
130
+ if (stepWidth) {
131
+ const nearestStep = Math.round(xSharedVal.get() / stepWidth);
132
+ updateXSharedVal(nearestStep * stepWidth, snapToStepAnimated);
133
+ }
134
+ }));
135
+ return /*#__PURE__*/_jsx(GestureDetector, {
136
+ gesture: gesture,
137
+ children: /*#__PURE__*/_jsxs(ThemedView, {
138
+ ref: trackViewRef,
139
+ alignItems: 'center',
140
+ justifyContent: 'center',
141
+ alignSelf: 'stretch',
142
+ height: thumbSize,
143
+ ...sliderWrapProps,
144
+ children: [/*#__PURE__*/_jsx(ThemedView, {
145
+ position: 'absolute',
146
+ width: trackWidth,
147
+ height: trackSize,
148
+ overflow: 'hidden',
149
+ backgroundColor: trackInactiveColor,
150
+ ...trackActiveProps,
151
+ children: /*#__PURE__*/_jsx(AnimatedThemedView, {
152
+ height: trackSize,
153
+ backgroundColor: trackActiveColor,
154
+ style: trackAnimatedStyle,
155
+ ...trackInactiveProps
156
+ })
157
+ }), !!stepIndicator && processedRange.map((value, index) => /*#__PURE__*/_jsx(ThemedSliderStepIndicator, {
158
+ left: index * (stepWidth ?? 0) + thumbSizeHalf - sliderStepIndicatorDefaultWidth / 2,
159
+ height: thumbSize,
160
+ ...stepIndicatorProps
161
+ }, getMappingKey(value, index))), /*#__PURE__*/_jsx(AnimatedThemedView, {
162
+ position: 'absolute',
163
+ right: -thumbSizeHalf,
164
+ width: thumbSize,
165
+ aspectRatio: 1,
166
+ opacity: 0.8,
167
+ backgroundColor: thumbColor,
168
+ style: thumbAnimatedStyle,
169
+ ...thumbProps
170
+ })]
171
+ })
172
+ });
173
+ };
174
+ export default /*#__PURE__*/memo(Slider);
175
+ //# sourceMappingURL=Slider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useMappingHelper","memo","useLayoutEffect","useState","Gesture","GestureDetector","useAnimatedStyle","useSharedValue","withTiming","scheduleOnRN","useViewRef","sliderStepIndicatorDefaultWidth","sliderThumbDefaultSize","SliderTrackSize","AnimatedThemedView","ThemedView","ThemedSliderStepIndicator","jsx","_jsx","jsxs","_jsxs","Slider","range","steps","stepIndicator","stepIndicatorProps","snapToStepAnimated","onValueChange","sliderWrapProps","trackSize","M","trackActiveColor","trackActiveProps","trackInactiveColor","trackInactiveProps","thumbSize","thumbColor","thumbProps","gestureActivateDuration","setSelectedVal","selectedValSharedVal","isNumRange","processedRange","sort","totalSteps","Math","abs","length","thumbSizeHalf","getMappingKey","trackViewRef","sliderWidth","setSliderWidth","trackWidth","setTrackWidth","stepWidth","setStepWidth","xSharedVal","trackAnimatedStyle","transform","translateX","get","thumbAnimatedStyle","current","measure","_x","_y","w","tempWidth","tempStepWidth","index","numRange","numCurrentValue","strRange","strCurrentValue","indexOf","set","updateSelectedVal","x","numIndex","round","tempSelectedVal","strIndex","updateXSharedVal","animated","tempX","min","max","touchStart","gesture","Simultaneous","LongPress","minDuration","onStart","onTouchesUp","allTouches","touch","nearestStep","Pan","manualActivation","onBegin","Date","now","onTouchesMove","state","timeToCheck","activate","fail","onChange","changeX","onEnd","children","ref","alignItems","justifyContent","alignSelf","height","position","width","overflow","backgroundColor","style","map","value","left","right","aspectRatio","opacity"],"sourceRoot":"../../../../src","sources":["components/slider/Slider.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,142 +1,46 @@
1
1
  "use strict";
2
2
 
3
- import { useMappingHelper } from '@shopify/flash-list';
4
- import { useDeferredValue, useLayoutEffect, useState } from 'react';
5
- import { Gesture, GestureDetector } from 'react-native-gesture-handler';
6
- import { useAnimatedStyle, useSharedValue, withTiming } from 'react-native-reanimated';
7
- import { scheduleOnRN } from 'react-native-worklets';
8
- import { useViewRef } from "../../hooks/view.js";
9
- import { sliderStepIndicatorDefaultWidth, SliderThumbSize, SliderTrackSize, SliderValueDisplayMode } from "../../utils/slider/const.js";
10
- import AnimatedThemedView from "../view/AnimatedThemedView.js";
3
+ import { memo, useLayoutEffect } from 'react';
4
+ import { useSharedValue } from 'react-native-reanimated';
5
+ import { useDeferredState } from "../../hooks/react.js";
6
+ import { useThemeSpacing } from "../../hooks/theme.js";
7
+ import { sliderThumbDefaultSize, SliderValueDisplayMode } from "../../utils/slider/const.js";
11
8
  import ThemedView from "../view/ThemedView.js";
9
+ import Slider from "./Slider.js";
12
10
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
11
  const ThemedText = require('../text/ThemedText').default;
14
- const ThemedSliderStepIndicator = require('./ThemedSliderStepIndicator').default;
12
+ const MemoThemedText = /*#__PURE__*/memo(ThemedText);
15
13
  const ThemedSlider = ({
16
- range,
17
- steps = 1,
18
14
  defaultValue,
19
- stepIndicator,
20
- stepIndicatorProps,
21
- snapToStepAnimated = true,
22
- onValueChange,
23
- trackSize = SliderTrackSize.M,
24
- trackActiveColor = 'themePri',
25
- trackActiveProps,
26
- trackInactiveColor = 'separator',
27
- trackInactiveProps,
28
- thumbSize = SliderThumbSize.M,
29
- thumbColor = 'themePri',
30
- thumbProps,
15
+ wrapProps: {
16
+ paddingHorizontal,
17
+ px,
18
+ ...wrapProps
19
+ } = {},
31
20
  valueDisplayMode = SliderValueDisplayMode.None,
32
21
  valueDisplayWrapProps,
33
22
  valueTextProps,
34
23
  valueDescription,
35
24
  valueDescriptionTextProps,
36
- wrapProps
25
+ ...props
37
26
  }) => {
38
- const isNumRange = typeof range[0] === 'number';
39
- const processedRange = isNumRange ? range.sort() : range;
40
- const totalSteps = isNumRange ? Math.abs(processedRange[1] - processedRange[0]) / steps : processedRange.length - 1;
41
- const thumbSizeHalf = thumbSize / 2;
42
27
  const {
43
- getMappingKey
44
- } = useMappingHelper();
45
- const sliderViewRef = useViewRef();
46
- const trackViewRef = useViewRef();
47
- const [sliderWidth, setSliderWidth] = useState();
48
- const [trackWidth, setTrackWidth] = useState();
49
- const [stepWidth, setStepWidth] = useState();
50
- const [selectedVal, setSelectedVal] = useState(defaultValue);
51
- const deferredSelectedValue = useDeferredValue(selectedVal);
52
- const xSharedVal = useSharedValue(-(trackWidth ?? 0));
53
- const trackAnimatedStyle = useAnimatedStyle(() => ({
54
- transform: [{
55
- translateX: xSharedVal.get()
56
- }]
57
- }), [trackWidth]);
58
- const thumbAnimatedStyle = useAnimatedStyle(() => ({
59
- transform: [{
60
- translateX: xSharedVal.get() - thumbSizeHalf
61
- }]
62
- }), [thumbSizeHalf]);
63
- useLayoutEffect(() => {
64
- sliderViewRef.current?.measure((_x, _y, w) => {
65
- setSliderWidth(w);
66
- });
67
- }, []);
28
+ thumbSize
29
+ } = props;
30
+ const themeSpacing = useThemeSpacing();
31
+ const {
32
+ state: selectedVal,
33
+ setState: setSelectedVal,
34
+ deferredState: deferredSelectedValue
35
+ } = useDeferredState(defaultValue);
36
+ const selectedValSharedVal = useSharedValue(selectedVal);
68
37
  useLayoutEffect(() => {
69
- trackViewRef.current?.measure((_x, _y, w) => {
70
- const tempWidth = w - thumbSize;
71
- const tempStepWidth = tempWidth / totalSteps;
72
- setTrackWidth(tempWidth);
73
- setStepWidth(tempStepWidth);
74
- let index = 0;
75
- if (isNumRange) {
76
- const numRange = processedRange;
77
- const numCurrentValue = selectedVal;
78
- index = numCurrentValue ? (numCurrentValue - numRange[0]) / steps : 0;
79
- } else {
80
- const strRange = processedRange;
81
- const strCurrentValue = selectedVal;
82
- index = strCurrentValue ? strRange.indexOf(strCurrentValue) : 0;
83
- }
84
- xSharedVal.set(-(totalSteps - index) * tempStepWidth);
85
- });
86
- }, [thumbSize, isNumRange, processedRange, totalSteps]);
38
+ selectedValSharedVal.set(selectedVal);
39
+ }, [selectedVal]);
40
+ const thumbSizeHalf = (thumbSize ?? sliderThumbDefaultSize) / 2;
87
41
  const wrapStyle = {
88
- marginHorizontal: thumbSizeHalf
42
+ marginHorizontal: typeof paddingHorizontal === 'string' ? themeSpacing[paddingHorizontal] : typeof px === 'string' ? themeSpacing[px] : thumbSizeHalf
89
43
  };
90
- const updateSelectedVal = x => {
91
- if (!stepWidth) {
92
- return;
93
- }
94
- if (isNumRange) {
95
- const numRange = processedRange;
96
- const numIndex = Math.round(x / stepWidth);
97
- const tempSelectedVal = numRange[1] - numIndex * steps;
98
- setSelectedVal(tempSelectedVal);
99
- onValueChange(tempSelectedVal);
100
- } else {
101
- const strRange = processedRange;
102
- const strIndex = Math.round(x / stepWidth);
103
- const tempSelectedVal = strRange[totalSteps - strIndex];
104
- setSelectedVal(tempSelectedVal);
105
- onValueChange(tempSelectedVal);
106
- }
107
- };
108
- const updateXSharedVal = (x, animated = false) => {
109
- 'worklet';
110
-
111
- const tempX = Math.min(0, Math.max(x, -(trackWidth ?? 0)));
112
- xSharedVal.set(animated ? withTiming(tempX) : tempX);
113
- scheduleOnRN(updateSelectedVal, Math.abs(tempX));
114
- };
115
- const gesture = Gesture.Simultaneous(Gesture.Tap().onTouchesDown(({
116
- allTouches
117
- }) => {
118
- const touch = allTouches[0];
119
- if (touch && sliderWidth) {
120
- updateXSharedVal(-(sliderWidth - (touch.x + thumbSize + thumbSizeHalf)));
121
- }
122
- }).onTouchesUp(({
123
- allTouches
124
- }) => {
125
- const touch = allTouches[0];
126
- if (touch && sliderWidth && stepWidth) {
127
- const nearestStep = Math.round(-(sliderWidth - (touch.x + thumbSize + thumbSizeHalf)) / stepWidth);
128
- updateXSharedVal(nearestStep * stepWidth, snapToStepAnimated);
129
- }
130
- }), Gesture.Pan().onChange(({
131
- changeX
132
- }) => {
133
- updateXSharedVal(xSharedVal.get() + changeX);
134
- }).onEnd(() => {
135
- if (stepWidth) {
136
- const nearestStep = Math.round(xSharedVal.get() / stepWidth);
137
- updateXSharedVal(nearestStep * stepWidth, snapToStepAnimated);
138
- }
139
- }));
140
44
  const isValueDisplayModeNone = valueDisplayMode === SliderValueDisplayMode.None;
141
45
  const isValueDisplayModeTop = valueDisplayMode === SliderValueDisplayMode.Top;
142
46
  const isValueDisplayModeBottom = valueDisplayMode === SliderValueDisplayMode.Bottom;
@@ -144,16 +48,14 @@ const ThemedSlider = ({
144
48
  flexDirection: 'row',
145
49
  alignItems: 'center',
146
50
  alignSelf: 'stretch',
147
- marginTop: isValueDisplayModeBottom ? 's' : undefined,
148
- marginBottom: isValueDisplayModeTop ? 's' : undefined,
149
51
  ...valueDisplayWrapProps,
150
- children: [!!valueDescription && /*#__PURE__*/_jsx(ThemedText, {
52
+ children: [!!valueDescription && /*#__PURE__*/_jsx(MemoThemedText, {
151
53
  variant: 'textS',
152
54
  flex: 1,
153
55
  textAlign: 'center',
154
56
  ...valueDescriptionTextProps,
155
57
  children: valueDescription
156
- }), /*#__PURE__*/_jsx(ThemedText, {
58
+ }), /*#__PURE__*/_jsx(MemoThemedText, {
157
59
  variant: 'textSBold',
158
60
  flex: 1,
159
61
  textAlign: 'center',
@@ -161,47 +63,18 @@ const ThemedSlider = ({
161
63
  children: deferredSelectedValue
162
64
  })]
163
65
  });
66
+ const sliderProps = {
67
+ ...props,
68
+ setSelectedVal,
69
+ selectedValSharedVal
70
+ };
164
71
  return /*#__PURE__*/_jsxs(ThemedView, {
165
- ref: sliderViewRef,
166
- alignItems: 'center',
167
- children: [isValueDisplayModeTop && valueDisplayComponent, /*#__PURE__*/_jsx(GestureDetector, {
168
- gesture: gesture,
169
- children: /*#__PURE__*/_jsxs(ThemedView, {
170
- ref: trackViewRef,
171
- alignItems: 'center',
172
- justifyContent: 'center',
173
- alignSelf: 'stretch',
174
- height: thumbSize,
175
- style: wrapStyle,
176
- ...wrapProps,
177
- children: [/*#__PURE__*/_jsx(ThemedView, {
178
- position: 'absolute',
179
- width: trackWidth,
180
- height: trackSize,
181
- overflow: 'hidden',
182
- backgroundColor: trackInactiveColor,
183
- ...trackActiveProps,
184
- children: /*#__PURE__*/_jsx(AnimatedThemedView, {
185
- height: trackSize,
186
- backgroundColor: trackActiveColor,
187
- style: trackAnimatedStyle,
188
- ...trackInactiveProps
189
- })
190
- }), !!stepIndicator && processedRange.map((value, index) => /*#__PURE__*/_jsx(ThemedSliderStepIndicator, {
191
- left: index * (stepWidth ?? 0) + thumbSizeHalf - sliderStepIndicatorDefaultWidth / 2,
192
- height: thumbSize,
193
- ...stepIndicatorProps
194
- }, getMappingKey(value, index))), /*#__PURE__*/_jsx(AnimatedThemedView, {
195
- position: 'absolute',
196
- right: -thumbSizeHalf,
197
- width: thumbSize,
198
- aspectRatio: 1,
199
- opacity: 0.8,
200
- backgroundColor: thumbColor,
201
- style: thumbAnimatedStyle,
202
- ...thumbProps
203
- })]
204
- })
72
+ paddingVertical: 's',
73
+ gap: 'xs',
74
+ style: wrapStyle,
75
+ ...wrapProps,
76
+ children: [isValueDisplayModeTop && valueDisplayComponent, /*#__PURE__*/_jsx(Slider, {
77
+ ...sliderProps
205
78
  }), isValueDisplayModeBottom && valueDisplayComponent]
206
79
  });
207
80
  };
@@ -1 +1 @@
1
- {"version":3,"names":["useMappingHelper","useDeferredValue","useLayoutEffect","useState","Gesture","GestureDetector","useAnimatedStyle","useSharedValue","withTiming","scheduleOnRN","useViewRef","sliderStepIndicatorDefaultWidth","SliderThumbSize","SliderTrackSize","SliderValueDisplayMode","AnimatedThemedView","ThemedView","jsx","_jsx","jsxs","_jsxs","ThemedText","require","default","ThemedSliderStepIndicator","ThemedSlider","range","steps","defaultValue","stepIndicator","stepIndicatorProps","snapToStepAnimated","onValueChange","trackSize","M","trackActiveColor","trackActiveProps","trackInactiveColor","trackInactiveProps","thumbSize","thumbColor","thumbProps","valueDisplayMode","None","valueDisplayWrapProps","valueTextProps","valueDescription","valueDescriptionTextProps","wrapProps","isNumRange","processedRange","sort","totalSteps","Math","abs","length","thumbSizeHalf","getMappingKey","sliderViewRef","trackViewRef","sliderWidth","setSliderWidth","trackWidth","setTrackWidth","stepWidth","setStepWidth","selectedVal","setSelectedVal","deferredSelectedValue","xSharedVal","trackAnimatedStyle","transform","translateX","get","thumbAnimatedStyle","current","measure","_x","_y","w","tempWidth","tempStepWidth","index","numRange","numCurrentValue","strRange","strCurrentValue","indexOf","set","wrapStyle","marginHorizontal","updateSelectedVal","x","numIndex","round","tempSelectedVal","strIndex","updateXSharedVal","animated","tempX","min","max","gesture","Simultaneous","Tap","onTouchesDown","allTouches","touch","onTouchesUp","nearestStep","Pan","onChange","changeX","onEnd","isValueDisplayModeNone","isValueDisplayModeTop","Top","isValueDisplayModeBottom","Bottom","valueDisplayComponent","flexDirection","alignItems","alignSelf","marginTop","undefined","marginBottom","children","variant","flex","textAlign","ref","justifyContent","height","style","position","width","overflow","backgroundColor","map","value","left","right","aspectRatio","opacity"],"sourceRoot":"../../../../src","sources":["components/slider/ThemedSlider.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["memo","useLayoutEffect","useSharedValue","useDeferredState","useThemeSpacing","sliderThumbDefaultSize","SliderValueDisplayMode","ThemedView","Slider","jsx","_jsx","jsxs","_jsxs","ThemedText","require","default","MemoThemedText","ThemedSlider","defaultValue","wrapProps","paddingHorizontal","px","valueDisplayMode","None","valueDisplayWrapProps","valueTextProps","valueDescription","valueDescriptionTextProps","props","thumbSize","themeSpacing","state","selectedVal","setState","setSelectedVal","deferredState","deferredSelectedValue","selectedValSharedVal","set","thumbSizeHalf","wrapStyle","marginHorizontal","isValueDisplayModeNone","isValueDisplayModeTop","Top","isValueDisplayModeBottom","Bottom","valueDisplayComponent","flexDirection","alignItems","alignSelf","children","variant","flex","textAlign","sliderProps","paddingVertical","gap","style"],"sourceRoot":"../../../../src","sources":["components/slider/ThemedSlider.tsx"],"mappings":"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","ignoreList":[]}
@@ -2,6 +2,7 @@
2
2
 
3
3
  /** @internal */
4
4
 
5
+ import { memo } from 'react';
5
6
  import { sliderStepIndicatorDefaultWidth } from "../../utils/slider/const.js";
6
7
  import ThemedView from "../view/ThemedView.js";
7
8
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -18,5 +19,5 @@ const ThemedSliderStepIndicator = ({
18
19
  ...props
19
20
  });
20
21
  };
21
- export default ThemedSliderStepIndicator;
22
+ export default /*#__PURE__*/memo(ThemedSliderStepIndicator);
22
23
  //# sourceMappingURL=ThemedSliderStepIndicator.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["sliderStepIndicatorDefaultWidth","ThemedView","jsx","_jsx","ThemedSliderStepIndicator","width","height","props","position","backgroundColor"],"sourceRoot":"../../../../src","sources":["components/slider/ThemedSliderStepIndicator.tsx"],"mappings":";;AAAA;;AAGA,SAASA,+BAA+B,QAAQ,6BAA0B;AAC1E,OAAOC,UAAU,MAAM,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE5C,MAAMC,yBAA6D,GAAGA,CAAC;EACrEC,KAAK,GAAGL,+BAA+B;EACvCM,MAAM;EACN,GAAGC;AACL,CAAC,KAAK;EACJ,oBACEJ,IAAA,CAACF,UAAU;IACTO,QAAQ,EAAE,UAAW;IACrBH,KAAK,EAAEA,KAAM;IACbC,MAAM,EAAEA,MAAO;IACfG,eAAe,EAAE,UAAW;IAAA,GACxBF;EAAK,CACV,CAAC;AAEN,CAAC;AAED,eAAeH,yBAAyB","ignoreList":[]}
1
+ {"version":3,"names":["memo","sliderStepIndicatorDefaultWidth","ThemedView","jsx","_jsx","ThemedSliderStepIndicator","width","height","props","position","backgroundColor"],"sourceRoot":"../../../../src","sources":["components/slider/ThemedSliderStepIndicator.tsx"],"mappings":";;AAAA;;AAEA,SAASA,IAAI,QAAQ,OAAO;AAE5B,SAASC,+BAA+B,QAAQ,6BAA0B;AAC1E,OAAOC,UAAU,MAAM,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE5C,MAAMC,yBAA6D,GAAGA,CAAC;EACrEC,KAAK,GAAGL,+BAA+B;EACvCM,MAAM;EACN,GAAGC;AACL,CAAC,KAAK;EACJ,oBACEJ,IAAA,CAACF,UAAU;IACTO,QAAQ,EAAE,UAAW;IACrBH,KAAK,EAAEA,KAAM;IACbC,MAAM,EAAEA,MAAO;IACfG,eAAe,EAAE,UAAW;IAAA,GACxBF;EAAK,CACV,CAAC;AAEN,CAAC;AAED,4BAAeR,IAAI,CAACK,yBAAyB,CAAC","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- import { useEffect, useRef } from 'react';
3
+ import { useDeferredValue, useEffect, useRef, useState } from 'react';
4
4
  export function useTimeout() {
5
5
  const timeoutRef = useRef(null);
6
6
  const clearTimeoutRef = () => {
@@ -29,4 +29,13 @@ export function useInterval() {
29
29
  clearIntervalRef
30
30
  };
31
31
  }
32
+ export function useDeferredState(initialState) {
33
+ const [state, setState] = useState(initialState);
34
+ const deferredState = useDeferredValue(state);
35
+ return {
36
+ state,
37
+ setState,
38
+ deferredState
39
+ };
40
+ }
32
41
  //# sourceMappingURL=react.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useRef","useTimeout","timeoutRef","clearTimeoutRef","current","clearTimeout","useInterval","intervalRef","clearIntervalRef","clearInterval"],"sourceRoot":"../../../src","sources":["hooks/react.ts"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,MAAM,QAAQ,OAAO;AAEzC,OAAO,SAASC,UAAUA,CAAA,EAAG;EAC3B,MAAMC,UAAU,GAAGF,MAAM,CAAS,IAAI,CAAC;EACvC,MAAMG,eAAe,GAAGA,CAAA,KAAM;IAC5B,IAAID,UAAU,CAACE,OAAO,EAAE;MACtBC,YAAY,CAACH,UAAU,CAACE,OAAO,CAAC;MAChCF,UAAU,CAACE,OAAO,GAAG,IAAI;IAC3B;EACF,CAAC;EACDL,SAAS,CAAC,MAAMI,eAAe,EAAE,EAAE,CAAC;EAEpC,OAAO;IAAED,UAAU;IAAEC;EAAgB,CAAC;AACxC;AAEA,OAAO,SAASG,WAAWA,CAAA,EAAG;EAC5B,MAAMC,WAAW,GAAGP,MAAM,CAAS,IAAI,CAAC;EACxC,MAAMQ,gBAAgB,GAAGA,CAAA,KAAM;IAC7B,IAAID,WAAW,CAACH,OAAO,EAAE;MACvBK,aAAa,CAACF,WAAW,CAACH,OAAO,CAAC;MAClCG,WAAW,CAACH,OAAO,GAAG,IAAI;IAC5B;EACF,CAAC;EACDL,SAAS,CAAC,MAAMS,gBAAgB,EAAE,EAAE,CAAC;EAErC,OAAO;IAAED,WAAW;IAAEC;EAAiB,CAAC;AAC1C","ignoreList":[]}
1
+ {"version":3,"names":["useDeferredValue","useEffect","useRef","useState","useTimeout","timeoutRef","clearTimeoutRef","current","clearTimeout","useInterval","intervalRef","clearIntervalRef","clearInterval","useDeferredState","initialState","state","setState","deferredState"],"sourceRoot":"../../../src","sources":["hooks/react.ts"],"mappings":";;AAAA,SAASA,gBAAgB,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAErE,OAAO,SAASC,UAAUA,CAAA,EAAG;EAC3B,MAAMC,UAAU,GAAGH,MAAM,CAAS,IAAI,CAAC;EACvC,MAAMI,eAAe,GAAGA,CAAA,KAAM;IAC5B,IAAID,UAAU,CAACE,OAAO,EAAE;MACtBC,YAAY,CAACH,UAAU,CAACE,OAAO,CAAC;MAChCF,UAAU,CAACE,OAAO,GAAG,IAAI;IAC3B;EACF,CAAC;EACDN,SAAS,CAAC,MAAMK,eAAe,EAAE,EAAE,CAAC;EAEpC,OAAO;IAAED,UAAU;IAAEC;EAAgB,CAAC;AACxC;AAEA,OAAO,SAASG,WAAWA,CAAA,EAAG;EAC5B,MAAMC,WAAW,GAAGR,MAAM,CAAS,IAAI,CAAC;EACxC,MAAMS,gBAAgB,GAAGA,CAAA,KAAM;IAC7B,IAAID,WAAW,CAACH,OAAO,EAAE;MACvBK,aAAa,CAACF,WAAW,CAACH,OAAO,CAAC;MAClCG,WAAW,CAACH,OAAO,GAAG,IAAI;IAC5B;EACF,CAAC;EACDN,SAAS,CAAC,MAAMU,gBAAgB,EAAE,EAAE,CAAC;EAErC,OAAO;IAAED,WAAW;IAAEC;EAAiB,CAAC;AAC1C;AAEA,OAAO,SAASE,gBAAgBA,CAAIC,YAAgB,EAAE;EACpD,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGb,QAAQ,CAAgBW,YAAY,CAAC;EAC/D,MAAMG,aAAa,GAAGjB,gBAAgB,CAACe,KAAK,CAAC;EAE7C,OAAO;IAAEA,KAAK;IAAEC,QAAQ;IAAEC;EAAc,CAAC;AAC3C","ignoreList":[]}
@@ -19,5 +19,6 @@ export let SliderThumbSize = /*#__PURE__*/function (SliderThumbSize) {
19
19
  SliderThumbSize[SliderThumbSize["L"] = 28] = "L";
20
20
  return SliderThumbSize;
21
21
  }({});
22
+ export const sliderThumbDefaultSize = SliderThumbSize.M;
22
23
  export const sliderStepIndicatorDefaultWidth = BorderSize.M;
23
24
  //# sourceMappingURL=const.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BorderSize","SliderValueDisplayMode","SliderTrackSize","SliderThumbSize","sliderStepIndicatorDefaultWidth","M"],"sourceRoot":"../../../../src","sources":["utils/slider/const.ts"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,mBAAgB;AAE3C,WAAYC,sBAAsB,0BAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAA,OAAtBA,sBAAsB;AAAA;AAMlC,WAAYC,eAAe,0BAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAM3B,WAAYC,eAAe,0BAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAM3B,OAAO,MAAMC,+BAA+B,GAAGJ,UAAU,CAACK,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["BorderSize","SliderValueDisplayMode","SliderTrackSize","SliderThumbSize","sliderThumbDefaultSize","M","sliderStepIndicatorDefaultWidth"],"sourceRoot":"../../../../src","sources":["utils/slider/const.ts"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,mBAAgB;AAE3C,WAAYC,sBAAsB,0BAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAA,OAAtBA,sBAAsB;AAAA;AAMlC,WAAYC,eAAe,0BAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAM3B,WAAYC,eAAe,0BAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAM3B,OAAO,MAAMC,sBAAsB,GAAGD,eAAe,CAACE,CAAC;AAEvD,OAAO,MAAMC,+BAA+B,GAAGN,UAAU,CAACK,CAAC","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ import type { SliderProps } from '../../types/slider';
2
+ declare const _default: import("react").NamedExoticComponent<SliderProps>;
3
+ export default _default;
4
+ //# sourceMappingURL=Slider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Slider.d.ts","sourceRoot":"","sources":["../../../../../src/components/slider/Slider.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAEV,WAAW,EAEZ,MAAM,oBAAoB,CAAC;;AAoM5B,wBAA4B"}
@@ -1 +1 @@
1
- {"version":3,"file":"ThemedSlider.d.ts","sourceRoot":"","sources":["../../../../../src/components/slider/ThemedSlider.tsx"],"names":[],"mappings":"AACA,OAAO,EAA+C,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAS7E,OAAO,KAAK,EAGV,iBAAiB,EAElB,MAAM,oBAAoB,CAAC;AAgB5B,QAAA,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAkOvC,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"ThemedSlider.d.ts","sourceRoot":"","sources":["../../../../../src/components/slider/ThemedSlider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAIvD,OAAO,KAAK,EAAe,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAczE,QAAA,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAkFvC,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -1,4 +1,3 @@
1
- import type { ThemedSliderStepIndicatorProps } from '../../types/slider';
2
- declare const ThemedSliderStepIndicator: FC<ThemedSliderStepIndicatorProps>;
3
- export default ThemedSliderStepIndicator;
1
+ declare const _default: import("react").NamedExoticComponent<import("../..").ThemedViewProps>;
2
+ export default _default;
4
3
  //# sourceMappingURL=ThemedSliderStepIndicator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ThemedSliderStepIndicator.d.ts","sourceRoot":"","sources":["../../../../../src/components/slider/ThemedSliderStepIndicator.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,oBAAoB,CAAC;AAIzE,QAAA,MAAM,yBAAyB,EAAE,EAAE,CAAC,8BAA8B,CAcjE,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
1
+ {"version":3,"file":"ThemedSliderStepIndicator.d.ts","sourceRoot":"","sources":["../../../../../src/components/slider/ThemedSliderStepIndicator.tsx"],"names":[],"mappings":";AAuBA,wBAA+C"}
@@ -6,4 +6,9 @@ export declare function useInterval(): {
6
6
  intervalRef: import("react").RefObject<number | null>;
7
7
  clearIntervalRef: () => void;
8
8
  };
9
+ export declare function useDeferredState<T>(initialState?: T): {
10
+ state: T | undefined;
11
+ setState: import("react").Dispatch<import("react").SetStateAction<T | undefined>>;
12
+ deferredState: T | undefined;
13
+ };
9
14
  //# sourceMappingURL=react.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../../../src/hooks/react.ts"],"names":[],"mappings":"AAEA,wBAAgB,UAAU;;;EAWzB;AAED,wBAAgB,WAAW;;;EAW1B"}
1
+ {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../../../src/hooks/react.ts"],"names":[],"mappings":"AAEA,wBAAgB,UAAU;;;EAWzB;AAED,wBAAgB,WAAW;;;EAW1B;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,CAAC;;;;EAKnD"}
@@ -1,4 +1,6 @@
1
+ import type { SharedValue } from 'react-native-reanimated';
1
2
  import type { SliderThumbSize, SliderTrackSize, SliderValueDisplayMode } from '../utils/slider/const';
3
+ import type { SetState } from './react';
2
4
  import type { ThemedTextProps } from './text';
3
5
  import type { ThemeColors } from './theme';
4
6
  import type { AnimatedThemedViewProps, ThemedViewProps } from './view';
@@ -16,9 +18,10 @@ export type StringSlider = {
16
18
  stepIndicator?: boolean;
17
19
  stepIndicatorProps?: ThemedSliderStepIndicatorProps;
18
20
  };
19
- export type ThemedSliderProps = (NumberSlider | StringSlider) & {
21
+ export type SliderProps = (NumberSlider | StringSlider) & {
20
22
  snapToStepAnimated?: boolean;
21
23
  onValueChange: (value: number | string) => void;
24
+ sliderWrapProps?: ThemedViewProps;
22
25
  trackSize?: SliderTrackSize | number;
23
26
  trackActiveColor?: ThemeColors;
24
27
  trackActiveProps?: ThemedViewProps;
@@ -32,6 +35,13 @@ export type ThemedSliderProps = (NumberSlider | StringSlider) & {
32
35
  valueTextProps?: Omit<ThemedTextProps, 'children'>;
33
36
  valueDescription?: string;
34
37
  valueDescriptionTextProps?: Omit<ThemedTextProps, 'children'>;
38
+ gestureActivateDuration?: number;
39
+ setSelectedVal: SetState<number | string | undefined>;
40
+ selectedValSharedVal: SharedValue<number | string | undefined>;
41
+ };
42
+ export type ThemedSliderProps = Omit<SliderProps, 'setSelectedVal' | 'selectedValSharedVal'> & {
43
+ snapToStepAnimated?: boolean;
44
+ onValueChange: (value: number | string) => void;
35
45
  wrapProps?: ThemedViewProps;
36
46
  };
37
47
  export type ThemedSliderStepIndicatorProps = ThemedViewProps;
@@ -1 +1 @@
1
- {"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../../../../src/types/slider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,KAAK,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAEvE,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB,kBAAkB,CAAC,EAAE,KAAK,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,kBAAkB,CAAC,EAAE,8BAA8B,CAAC;CACrD,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,YAAY,GAAG,YAAY,CAAC,GAAG;IAC9D,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAChD,SAAS,CAAC,EAAE,eAAe,GAAG,MAAM,CAAC;IACrC,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAC/B,gBAAgB,CAAC,EAAE,eAAe,CAAC;IACnC,kBAAkB,CAAC,EAAE,WAAW,CAAC;IACjC,kBAAkB,CAAC,EAAE,uBAAuB,CAAC;IAC7C,SAAS,CAAC,EAAE,eAAe,GAAG,MAAM,CAAC;IACrC,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACrC,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAC1C,qBAAqB,CAAC,EAAE,eAAe,CAAC;IACxC,cAAc,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IACnD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,yBAAyB,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAC9D,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG,eAAe,CAAC"}
1
+ {"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../../../../src/types/slider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,KAAK,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAEvE,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB,kBAAkB,CAAC,EAAE,KAAK,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,kBAAkB,CAAC,EAAE,8BAA8B,CAAC;CACrD,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,YAAY,GAAG,YAAY,CAAC,GAAG;IACxD,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAChD,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,SAAS,CAAC,EAAE,eAAe,GAAG,MAAM,CAAC;IACrC,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAC/B,gBAAgB,CAAC,EAAE,eAAe,CAAC;IACnC,kBAAkB,CAAC,EAAE,WAAW,CAAC;IACjC,kBAAkB,CAAC,EAAE,uBAAuB,CAAC;IAC7C,SAAS,CAAC,EAAE,eAAe,GAAG,MAAM,CAAC;IACrC,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACrC,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAC1C,qBAAqB,CAAC,EAAE,eAAe,CAAC;IACxC,cAAc,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IACnD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,yBAAyB,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAC9D,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,cAAc,EAAE,QAAQ,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;IACtD,oBAAoB,EAAE,WAAW,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;CAChE,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAClC,WAAW,EACX,gBAAgB,GAAG,sBAAsB,CAC1C,GAAG;IACF,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAChD,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG,eAAe,CAAC"}
@@ -14,5 +14,6 @@ export declare enum SliderThumbSize {
14
14
  M = 24,
15
15
  L = 28
16
16
  }
17
+ export declare const sliderThumbDefaultSize = SliderThumbSize.M;
17
18
  export declare const sliderStepIndicatorDefaultWidth = BorderSize.M;
18
19
  //# sourceMappingURL=const.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../../../../src/utils/slider/const.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,oBAAY,sBAAsB;IAChC,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,MAAM,WAAW;CAClB;AAED,oBAAY,eAAe;IACzB,CAAC,IAAI;IACL,CAAC,KAAK;IACN,CAAC,KAAK;CACP;AAED,oBAAY,eAAe;IACzB,CAAC,KAAK;IACN,CAAC,KAAK;IACN,CAAC,KAAK;CACP;AAED,eAAO,MAAM,+BAA+B,eAAe,CAAC"}
1
+ {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../../../../src/utils/slider/const.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,oBAAY,sBAAsB;IAChC,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,MAAM,WAAW;CAClB;AAED,oBAAY,eAAe;IACzB,CAAC,IAAI;IACL,CAAC,KAAK;IACN,CAAC,KAAK;CACP;AAED,oBAAY,eAAe;IACzB,CAAC,KAAK;IACN,CAAC,KAAK;IACN,CAAC,KAAK;CACP;AAED,eAAO,MAAM,sBAAsB,oBAAoB,CAAC;AAExD,eAAO,MAAM,+BAA+B,eAAe,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jamadd/react-native-template-ui",
3
- "version": "0.7.6",
3
+ "version": "0.7.7",
4
4
  "description": "React Native Template UI is a collection of UI components designed by JaMa D&D.",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",