react-native-dates-picker 0.0.9 → 0.1.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/lib/commonjs/CalendarContext.js.map +1 -1
- package/lib/commonjs/DateTimePicker.js +11 -4
- package/lib/commonjs/DateTimePicker.js.map +1 -1
- package/lib/commonjs/components/Calendar.js +12 -10
- package/lib/commonjs/components/Calendar.js.map +1 -1
- package/lib/commonjs/components/DatePicker.js +43 -37
- package/lib/commonjs/components/DatePicker.js.map +1 -1
- package/lib/commonjs/components/Day.js +16 -14
- package/lib/commonjs/components/Day.js.map +1 -1
- package/lib/commonjs/components/DaySelector.js +10 -10
- package/lib/commonjs/components/DaySelector.js.map +1 -1
- package/lib/commonjs/components/Header.js +25 -23
- package/lib/commonjs/components/Header.js.map +1 -1
- package/lib/commonjs/components/MonthSelector.js +7 -5
- package/lib/commonjs/components/MonthSelector.js.map +1 -1
- package/lib/commonjs/components/TimeSelector.js +19 -14
- package/lib/commonjs/components/TimeSelector.js.map +1 -1
- package/lib/commonjs/components/WheelPicker/Wheel.js +9 -4
- package/lib/commonjs/components/WheelPicker/Wheel.js.map +1 -1
- package/lib/commonjs/components/WheelPicker/WheelNative.js +16 -37
- package/lib/commonjs/components/WheelPicker/WheelNative.js.map +1 -1
- package/lib/commonjs/components/WheelPicker/WheelNativePicker/index.js +10 -0
- package/lib/commonjs/components/WheelPicker/WheelNativePicker/index.js.map +1 -0
- package/lib/commonjs/components/WheelPicker/WheelNativePicker/wheel-picker-item.js +124 -0
- package/lib/commonjs/components/WheelPicker/WheelNativePicker/wheel-picker-item.js.map +1 -0
- package/lib/commonjs/components/WheelPicker/WheelNativePicker/wheel-picker.js +169 -0
- package/lib/commonjs/components/WheelPicker/WheelNativePicker/wheel-picker.js.map +1 -0
- package/lib/commonjs/components/WheelPicker/WheelWeb.js +47 -40
- package/lib/commonjs/components/WheelPicker/WheelWeb.js.map +1 -1
- package/lib/commonjs/components/WheelPicker/animated-math.js +26 -0
- package/lib/commonjs/components/WheelPicker/animated-math.js.map +1 -0
- package/lib/commonjs/components/WheelPicker/period-native.js +36 -0
- package/lib/commonjs/components/WheelPicker/period-native.js.map +1 -0
- package/lib/commonjs/components/WheelPicker/period-picker.js +19 -0
- package/lib/commonjs/components/WheelPicker/period-picker.js.map +1 -0
- package/lib/commonjs/components/WheelPicker/period-web.js +34 -0
- package/lib/commonjs/components/WheelPicker/period-web.js.map +1 -0
- package/lib/commonjs/components/YearSelector.js +8 -6
- package/lib/commonjs/components/YearSelector.js.map +1 -1
- package/lib/commonjs/enums.js +5 -4
- package/lib/commonjs/enums.js.map +1 -1
- package/lib/commonjs/utils.js +4 -1
- package/lib/commonjs/utils.js.map +1 -1
- package/lib/module/CalendarContext.js.map +1 -1
- package/lib/module/DateTimePicker.js +7 -2
- package/lib/module/DateTimePicker.js.map +1 -1
- package/lib/module/components/Calendar.js +3 -3
- package/lib/module/components/Calendar.js.map +1 -1
- package/lib/module/components/DatePicker.js +33 -29
- package/lib/module/components/DatePicker.js.map +1 -1
- package/lib/module/components/Day.js +7 -7
- package/lib/module/components/Day.js.map +1 -1
- package/lib/module/components/DaySelector.js +2 -2
- package/lib/module/components/DaySelector.js.map +1 -1
- package/lib/module/components/Header.js +1 -1
- package/lib/module/components/Header.js.map +1 -1
- package/lib/module/components/MonthSelector.js +1 -0
- package/lib/module/components/MonthSelector.js.map +1 -1
- package/lib/module/components/TimeSelector.js +8 -5
- package/lib/module/components/TimeSelector.js.map +1 -1
- package/lib/module/components/WheelPicker/Wheel.js +6 -3
- package/lib/module/components/WheelPicker/Wheel.js.map +1 -1
- package/lib/module/components/WheelPicker/WheelNative.js +12 -35
- package/lib/module/components/WheelPicker/WheelNative.js.map +1 -1
- package/lib/module/components/WheelPicker/WheelNativePicker/index.js +3 -0
- package/lib/module/components/WheelPicker/WheelNativePicker/index.js.map +1 -0
- package/lib/module/components/WheelPicker/WheelNativePicker/wheel-picker-item.js +116 -0
- package/lib/module/components/WheelPicker/WheelNativePicker/wheel-picker-item.js.map +1 -0
- package/lib/module/components/WheelPicker/WheelNativePicker/wheel-picker.js +160 -0
- package/lib/module/components/WheelPicker/WheelNativePicker/wheel-picker.js.map +1 -0
- package/lib/module/components/WheelPicker/WheelWeb.js +45 -40
- package/lib/module/components/WheelPicker/WheelWeb.js.map +1 -1
- package/lib/module/components/WheelPicker/animated-math.js +20 -0
- package/lib/module/components/WheelPicker/animated-math.js.map +1 -0
- package/lib/module/components/WheelPicker/period-native.js +27 -0
- package/lib/module/components/WheelPicker/period-native.js.map +1 -0
- package/lib/module/components/WheelPicker/period-picker.js +10 -0
- package/lib/module/components/WheelPicker/period-picker.js.map +1 -0
- package/lib/module/components/WheelPicker/period-web.js +26 -0
- package/lib/module/components/WheelPicker/period-web.js.map +1 -0
- package/lib/module/components/YearSelector.js +1 -1
- package/lib/module/components/YearSelector.js.map +1 -1
- package/lib/module/enums.js +4 -3
- package/lib/module/enums.js.map +1 -1
- package/lib/module/utils.js +4 -1
- package/lib/module/utils.js.map +1 -1
- package/lib/typescript/CalendarContext.d.ts.map +1 -1
- package/lib/typescript/DateTimePicker.d.ts +2 -2
- package/lib/typescript/DateTimePicker.d.ts.map +1 -1
- package/lib/typescript/components/Calendar.d.ts +2 -2
- package/lib/typescript/components/Calendar.d.ts.map +1 -1
- package/lib/typescript/components/DatePicker.d.ts +2 -2
- package/lib/typescript/components/DatePicker.d.ts.map +1 -1
- package/lib/typescript/components/Day.d.ts +3 -4
- package/lib/typescript/components/Day.d.ts.map +1 -1
- package/lib/typescript/components/DaySelector.d.ts +2 -2
- package/lib/typescript/components/DaySelector.d.ts.map +1 -1
- package/lib/typescript/components/Header.d.ts +2 -2
- package/lib/typescript/components/Header.d.ts.map +1 -1
- package/lib/typescript/components/MonthSelector.d.ts +2 -2
- package/lib/typescript/components/MonthSelector.d.ts.map +1 -1
- package/lib/typescript/components/TimeSelector.d.ts +2 -2
- package/lib/typescript/components/TimeSelector.d.ts.map +1 -1
- package/lib/typescript/components/WheelPicker/Wheel.d.ts +5 -4
- package/lib/typescript/components/WheelPicker/Wheel.d.ts.map +1 -1
- package/lib/typescript/components/WheelPicker/WheelNative.d.ts +7 -8
- package/lib/typescript/components/WheelPicker/WheelNative.d.ts.map +1 -1
- package/lib/typescript/components/WheelPicker/WheelNativePicker/index.d.ts +3 -0
- package/lib/typescript/components/WheelPicker/WheelNativePicker/index.d.ts.map +1 -0
- package/lib/typescript/components/WheelPicker/WheelNativePicker/wheel-picker-item.d.ts +16 -0
- package/lib/typescript/components/WheelPicker/WheelNativePicker/wheel-picker-item.d.ts.map +1 -0
- package/lib/typescript/components/WheelPicker/WheelNativePicker/wheel-picker.d.ts +20 -0
- package/lib/typescript/components/WheelPicker/WheelNativePicker/wheel-picker.d.ts.map +1 -0
- package/lib/typescript/components/WheelPicker/WheelWeb.d.ts +6 -5
- package/lib/typescript/components/WheelPicker/WheelWeb.d.ts.map +1 -1
- package/lib/typescript/components/WheelPicker/animated-math.d.ts +5 -0
- package/lib/typescript/components/WheelPicker/animated-math.d.ts.map +1 -0
- package/lib/typescript/components/WheelPicker/period-native.d.ts +8 -0
- package/lib/typescript/components/WheelPicker/period-native.d.ts.map +1 -0
- package/lib/typescript/components/WheelPicker/period-picker.d.ts +8 -0
- package/lib/typescript/components/WheelPicker/period-picker.d.ts.map +1 -0
- package/lib/typescript/components/WheelPicker/period-web.d.ts +8 -0
- package/lib/typescript/components/WheelPicker/period-web.d.ts.map +1 -0
- package/lib/typescript/components/YearSelector.d.ts +2 -2
- package/lib/typescript/components/YearSelector.d.ts.map +1 -1
- package/lib/typescript/enums.d.ts +2 -1
- package/lib/typescript/enums.d.ts.map +1 -1
- package/lib/typescript/types.d.ts +4 -0
- package/lib/typescript/types.d.ts.map +1 -1
- package/lib/typescript/utils.d.ts +2 -2
- package/lib/typescript/utils.d.ts.map +1 -1
- package/package.json +7 -6
- package/src/DateTimePicker.tsx +14 -9
- package/src/components/Calendar.tsx +5 -5
- package/src/components/DatePicker.tsx +34 -43
- package/src/components/Day.tsx +7 -7
- package/src/components/DaySelector.tsx +3 -3
- package/src/components/Header.tsx +2 -2
- package/src/components/MonthSelector.tsx +2 -1
- package/src/components/TimeSelector.tsx +9 -10
- package/src/components/WheelPicker/Wheel.tsx +9 -8
- package/src/components/WheelPicker/WheelNative.tsx +17 -38
- package/src/components/WheelPicker/WheelNativePicker/index.ts +3 -0
- package/src/components/WheelPicker/WheelNativePicker/wheel-picker-item.tsx +137 -0
- package/src/components/WheelPicker/WheelNativePicker/wheel-picker.tsx +214 -0
- package/src/components/WheelPicker/WheelWeb.tsx +84 -65
- package/src/components/WheelPicker/animated-math.ts +33 -0
- package/src/components/WheelPicker/period-native.tsx +39 -0
- package/src/components/WheelPicker/period-picker.tsx +16 -0
- package/src/components/WheelPicker/period-web.tsx +37 -0
- package/src/components/YearSelector.tsx +2 -2
- package/src/enums.ts +4 -3
- package/src/types.ts +5 -0
- package/src/utils.ts +3 -3
- /package/src/{CalendarContext.tsx → CalendarContext.ts} +0 -0
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
10
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
|
+
const WheelPickerItem = ({
|
|
12
|
+
height,
|
|
13
|
+
option,
|
|
14
|
+
index,
|
|
15
|
+
visibleRest,
|
|
16
|
+
currentScrollIndex,
|
|
17
|
+
opacityFunction,
|
|
18
|
+
rotationFunction,
|
|
19
|
+
scaleFunction
|
|
20
|
+
}) => {
|
|
21
|
+
const relativeScrollIndex = _reactNative.Animated.subtract(index, currentScrollIndex);
|
|
22
|
+
const translateY = relativeScrollIndex.interpolate({
|
|
23
|
+
inputRange: (() => {
|
|
24
|
+
const range = [0];
|
|
25
|
+
for (let i = 1; i <= visibleRest + 1; i++) {
|
|
26
|
+
range.unshift(-i);
|
|
27
|
+
range.push(i);
|
|
28
|
+
}
|
|
29
|
+
return range;
|
|
30
|
+
})(),
|
|
31
|
+
outputRange: (() => {
|
|
32
|
+
const range = [0];
|
|
33
|
+
for (let i = 1; i <= visibleRest + 1; i++) {
|
|
34
|
+
let y = height / 2 * (1 - Math.sin(Math.PI / 2 - rotationFunction(i)));
|
|
35
|
+
for (let j = 1; j < i; j++) {
|
|
36
|
+
y += height * (1 - Math.sin(Math.PI / 2 - rotationFunction(j)));
|
|
37
|
+
}
|
|
38
|
+
range.unshift(y);
|
|
39
|
+
range.push(-y);
|
|
40
|
+
}
|
|
41
|
+
return range;
|
|
42
|
+
})()
|
|
43
|
+
});
|
|
44
|
+
const opacity = relativeScrollIndex.interpolate({
|
|
45
|
+
inputRange: (() => {
|
|
46
|
+
const range = [0];
|
|
47
|
+
for (let i = 1; i <= visibleRest + 1; i++) {
|
|
48
|
+
range.unshift(-i);
|
|
49
|
+
range.push(i);
|
|
50
|
+
}
|
|
51
|
+
return range;
|
|
52
|
+
})(),
|
|
53
|
+
outputRange: (() => {
|
|
54
|
+
const range = [1];
|
|
55
|
+
for (let x = 1; x <= visibleRest + 1; x++) {
|
|
56
|
+
const y = opacityFunction(x);
|
|
57
|
+
range.unshift(y);
|
|
58
|
+
range.push(y);
|
|
59
|
+
}
|
|
60
|
+
return range;
|
|
61
|
+
})()
|
|
62
|
+
});
|
|
63
|
+
const scale = relativeScrollIndex.interpolate({
|
|
64
|
+
inputRange: (() => {
|
|
65
|
+
const range = [0];
|
|
66
|
+
for (let i = 1; i <= visibleRest + 1; i++) {
|
|
67
|
+
range.unshift(-i);
|
|
68
|
+
range.push(i);
|
|
69
|
+
}
|
|
70
|
+
return range;
|
|
71
|
+
})(),
|
|
72
|
+
outputRange: (() => {
|
|
73
|
+
const range = [1.0];
|
|
74
|
+
for (let x = 1; x <= visibleRest + 1; x++) {
|
|
75
|
+
const y = scaleFunction(x);
|
|
76
|
+
range.unshift(y);
|
|
77
|
+
range.push(y);
|
|
78
|
+
}
|
|
79
|
+
return range;
|
|
80
|
+
})()
|
|
81
|
+
});
|
|
82
|
+
const rotateX = relativeScrollIndex.interpolate({
|
|
83
|
+
inputRange: (() => {
|
|
84
|
+
const range = [0];
|
|
85
|
+
for (let i = 1; i <= visibleRest + 1; i++) {
|
|
86
|
+
range.unshift(-i);
|
|
87
|
+
range.push(i);
|
|
88
|
+
}
|
|
89
|
+
return range;
|
|
90
|
+
})(),
|
|
91
|
+
outputRange: (() => {
|
|
92
|
+
const range = ['0deg'];
|
|
93
|
+
for (let x = 1; x <= visibleRest + 1; x++) {
|
|
94
|
+
const y = rotationFunction(x);
|
|
95
|
+
range.unshift(`${y}deg`);
|
|
96
|
+
range.push(`${y}deg`);
|
|
97
|
+
}
|
|
98
|
+
return range;
|
|
99
|
+
})()
|
|
100
|
+
});
|
|
101
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
|
|
102
|
+
style: [styles.option, {
|
|
103
|
+
height,
|
|
104
|
+
opacity,
|
|
105
|
+
transform: [{
|
|
106
|
+
translateY
|
|
107
|
+
}, {
|
|
108
|
+
rotateX
|
|
109
|
+
}, {
|
|
110
|
+
scale
|
|
111
|
+
}]
|
|
112
|
+
}]
|
|
113
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, null, option === null || option === void 0 ? void 0 : option.text));
|
|
114
|
+
};
|
|
115
|
+
const styles = _reactNative.StyleSheet.create({
|
|
116
|
+
option: {
|
|
117
|
+
alignItems: 'center',
|
|
118
|
+
justifyContent: 'center',
|
|
119
|
+
paddingHorizontal: 10,
|
|
120
|
+
zIndex: 100
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
var _default = exports.default = /*#__PURE__*/(0, _react.memo)(WheelPickerItem);
|
|
124
|
+
//# sourceMappingURL=wheel-picker-item.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","WheelPickerItem","height","option","index","visibleRest","currentScrollIndex","opacityFunction","rotationFunction","scaleFunction","relativeScrollIndex","Animated","subtract","translateY","interpolate","inputRange","range","unshift","push","outputRange","y","Math","sin","PI","j","opacity","x","scale","rotateX","createElement","View","style","styles","transform","Text","text","StyleSheet","create","alignItems","justifyContent","paddingHorizontal","zIndex","_default","exports","memo"],"sourceRoot":"../../../../../src","sources":["components/WheelPicker/WheelNativePicker/wheel-picker-item.tsx"],"mappings":"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"}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _wheelPickerItem = _interopRequireDefault(require("./wheel-picker-item"));
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
12
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
13
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
14
|
+
const WheelPicker = ({
|
|
15
|
+
value,
|
|
16
|
+
options,
|
|
17
|
+
onChange,
|
|
18
|
+
itemHeight = 40,
|
|
19
|
+
scaleFunction = x => 1.0 ** x,
|
|
20
|
+
rotationFunction = x => 1 - Math.pow(1 / 2, x),
|
|
21
|
+
opacityFunction = x => Math.pow(1 / 3, x),
|
|
22
|
+
visibleRest = 2,
|
|
23
|
+
decelerationRate = 'normal',
|
|
24
|
+
containerProps = {},
|
|
25
|
+
flatListProps = {}
|
|
26
|
+
}) => {
|
|
27
|
+
const momentumStarted = (0, _react.useRef)(false);
|
|
28
|
+
const selectedIndex = options.findIndex(item => item.value === value);
|
|
29
|
+
const flatListRef = (0, _react.useRef)(null);
|
|
30
|
+
const [scrollY] = (0, _react.useState)(new _reactNative.Animated.Value(selectedIndex * itemHeight));
|
|
31
|
+
const containerHeight = (1 + visibleRest * 2) * itemHeight;
|
|
32
|
+
const paddedOptions = (0, _react.useMemo)(() => {
|
|
33
|
+
const array = [...options];
|
|
34
|
+
for (let i = 0; i < visibleRest; i++) {
|
|
35
|
+
array.unshift(null);
|
|
36
|
+
array.push(null);
|
|
37
|
+
}
|
|
38
|
+
return array;
|
|
39
|
+
}, [options, visibleRest]);
|
|
40
|
+
const offsets = (0, _react.useMemo)(() => [...Array(paddedOptions.length)].map((_, i) => i * itemHeight), [paddedOptions, itemHeight]);
|
|
41
|
+
const currentScrollIndex = (0, _react.useMemo)(() => _reactNative.Animated.add(_reactNative.Animated.divide(scrollY, itemHeight), visibleRest), [visibleRest, scrollY, itemHeight]);
|
|
42
|
+
const handleScrollEnd = event => {
|
|
43
|
+
const offsetY = Math.min(itemHeight * (options.length - 1), Math.max(event.nativeEvent.contentOffset.y, 0));
|
|
44
|
+
let index = Math.floor(offsetY / itemHeight);
|
|
45
|
+
const remainder = offsetY % itemHeight;
|
|
46
|
+
if (remainder > itemHeight / 2) {
|
|
47
|
+
index++;
|
|
48
|
+
}
|
|
49
|
+
if (index !== selectedIndex) {
|
|
50
|
+
var _options$index;
|
|
51
|
+
onChange(((_options$index = options[index]) === null || _options$index === void 0 ? void 0 : _options$index.value) || 0);
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
const handleMomentumScrollBegin = () => {
|
|
55
|
+
momentumStarted.current = true;
|
|
56
|
+
};
|
|
57
|
+
const handleMomentumScrollEnd = event => {
|
|
58
|
+
momentumStarted.current = false;
|
|
59
|
+
handleScrollEnd(event);
|
|
60
|
+
};
|
|
61
|
+
const handleScrollEndDrag = event => {
|
|
62
|
+
var _event$nativeEvent$co;
|
|
63
|
+
// Capture the offset value immediately
|
|
64
|
+
const offsetY = (_event$nativeEvent$co = event.nativeEvent.contentOffset) === null || _event$nativeEvent$co === void 0 ? void 0 : _event$nativeEvent$co.y;
|
|
65
|
+
|
|
66
|
+
// We'll start a short timer to see if momentum scroll begins
|
|
67
|
+
setTimeout(() => {
|
|
68
|
+
// If momentum scroll hasn't started within the timeout,
|
|
69
|
+
// then it was a slow scroll that won't trigger momentum
|
|
70
|
+
if (!momentumStarted.current && offsetY !== undefined) {
|
|
71
|
+
// Create a synthetic event with just the data we need
|
|
72
|
+
const syntheticEvent = {
|
|
73
|
+
nativeEvent: {
|
|
74
|
+
contentOffset: {
|
|
75
|
+
y: offsetY
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
handleScrollEnd(syntheticEvent);
|
|
80
|
+
}
|
|
81
|
+
}, 50);
|
|
82
|
+
};
|
|
83
|
+
(0, _react.useEffect)(() => {
|
|
84
|
+
if (selectedIndex < 0 || selectedIndex >= options.length) {
|
|
85
|
+
throw new Error(`Selected index ${selectedIndex} is out of bounds [0, ${options.length - 1}]`);
|
|
86
|
+
}
|
|
87
|
+
}, [selectedIndex, options]);
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* If selectedIndex is changed from outside (not via onChange) we need to scroll to the specified index.
|
|
91
|
+
* This ensures that what the user sees as selected in the picker always corresponds to the value state.
|
|
92
|
+
*/
|
|
93
|
+
(0, _react.useEffect)(() => {
|
|
94
|
+
var _flatListRef$current;
|
|
95
|
+
(_flatListRef$current = flatListRef.current) === null || _flatListRef$current === void 0 || _flatListRef$current.scrollToIndex({
|
|
96
|
+
index: selectedIndex,
|
|
97
|
+
animated: _reactNative.Platform.OS === 'ios'
|
|
98
|
+
});
|
|
99
|
+
}, [selectedIndex, itemHeight]);
|
|
100
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, _extends({
|
|
101
|
+
style: [styles.container, {
|
|
102
|
+
height: containerHeight
|
|
103
|
+
}]
|
|
104
|
+
}, containerProps), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
105
|
+
style: [styles.selectedIndicator, {
|
|
106
|
+
transform: [{
|
|
107
|
+
translateY: -itemHeight / 2
|
|
108
|
+
}],
|
|
109
|
+
height: itemHeight
|
|
110
|
+
}]
|
|
111
|
+
}), /*#__PURE__*/_react.default.createElement(_reactNative.Animated.FlatList, _extends({}, flatListProps, {
|
|
112
|
+
ref: flatListRef,
|
|
113
|
+
nestedScrollEnabled: true,
|
|
114
|
+
style: styles.scrollView,
|
|
115
|
+
showsVerticalScrollIndicator: false,
|
|
116
|
+
onScroll: _reactNative.Animated.event([{
|
|
117
|
+
nativeEvent: {
|
|
118
|
+
contentOffset: {
|
|
119
|
+
y: scrollY
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}], {
|
|
123
|
+
useNativeDriver: true
|
|
124
|
+
}),
|
|
125
|
+
onScrollEndDrag: handleScrollEndDrag,
|
|
126
|
+
onMomentumScrollBegin: handleMomentumScrollBegin,
|
|
127
|
+
onMomentumScrollEnd: handleMomentumScrollEnd,
|
|
128
|
+
snapToOffsets: offsets,
|
|
129
|
+
decelerationRate: decelerationRate,
|
|
130
|
+
initialScrollIndex: selectedIndex,
|
|
131
|
+
getItemLayout: (_, index) => ({
|
|
132
|
+
length: itemHeight,
|
|
133
|
+
offset: itemHeight * index,
|
|
134
|
+
index
|
|
135
|
+
}),
|
|
136
|
+
data: paddedOptions,
|
|
137
|
+
keyExtractor: (item, index) => item ? `${item.value}-${item.text}-${index}` : `null-${index}`,
|
|
138
|
+
renderItem: ({
|
|
139
|
+
item: option,
|
|
140
|
+
index
|
|
141
|
+
}) => /*#__PURE__*/_react.default.createElement(_wheelPickerItem.default, {
|
|
142
|
+
key: `option-${index}`,
|
|
143
|
+
index: index,
|
|
144
|
+
option: option,
|
|
145
|
+
height: itemHeight,
|
|
146
|
+
currentScrollIndex: currentScrollIndex,
|
|
147
|
+
scaleFunction: scaleFunction,
|
|
148
|
+
rotationFunction: rotationFunction,
|
|
149
|
+
opacityFunction: opacityFunction,
|
|
150
|
+
visibleRest: visibleRest
|
|
151
|
+
})
|
|
152
|
+
})));
|
|
153
|
+
};
|
|
154
|
+
const styles = _reactNative.StyleSheet.create({
|
|
155
|
+
container: {
|
|
156
|
+
position: 'relative'
|
|
157
|
+
},
|
|
158
|
+
selectedIndicator: {
|
|
159
|
+
position: 'absolute',
|
|
160
|
+
width: '100%',
|
|
161
|
+
top: '50%'
|
|
162
|
+
},
|
|
163
|
+
scrollView: {
|
|
164
|
+
overflow: 'hidden',
|
|
165
|
+
flex: 1
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
var _default = exports.default = /*#__PURE__*/(0, _react.memo)(WheelPicker);
|
|
169
|
+
//# sourceMappingURL=wheel-picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_wheelPickerItem","_interopRequireDefault","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","WheelPicker","value","options","onChange","itemHeight","scaleFunction","x","rotationFunction","Math","pow","opacityFunction","visibleRest","decelerationRate","containerProps","flatListProps","momentumStarted","useRef","selectedIndex","findIndex","item","flatListRef","scrollY","useState","Animated","Value","containerHeight","paddedOptions","useMemo","array","unshift","push","offsets","Array","map","_","currentScrollIndex","add","divide","handleScrollEnd","event","offsetY","min","max","nativeEvent","contentOffset","y","index","floor","remainder","_options$index","handleMomentumScrollBegin","current","handleMomentumScrollEnd","handleScrollEndDrag","_event$nativeEvent$co","setTimeout","undefined","syntheticEvent","useEffect","Error","_flatListRef$current","scrollToIndex","animated","Platform","OS","createElement","View","style","styles","container","height","selectedIndicator","transform","translateY","FlatList","ref","nestedScrollEnabled","scrollView","showsVerticalScrollIndicator","onScroll","useNativeDriver","onScrollEndDrag","onMomentumScrollBegin","onMomentumScrollEnd","snapToOffsets","initialScrollIndex","getItemLayout","offset","data","keyExtractor","text","renderItem","option","StyleSheet","create","position","width","top","overflow","flex","_default","exports","memo"],"sourceRoot":"../../../../../src","sources":["components/WheelPicker/WheelNativePicker/wheel-picker.tsx"],"mappings":"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"}
|
|
@@ -4,27 +4,29 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var _react = require("react");
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _reactNative = require("react-native");
|
|
9
|
-
var
|
|
10
|
-
var _AnimatedMath = require("./AnimatedMath");
|
|
9
|
+
var _animatedMath = require("./animated-math");
|
|
11
10
|
var _enums = require("../../enums");
|
|
11
|
+
var _lodash = require("lodash");
|
|
12
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
13
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
12
14
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
15
|
+
const ITEM_HEIGHT = 44;
|
|
13
16
|
const WheelWeb = ({
|
|
14
17
|
value,
|
|
15
18
|
setValue = () => {},
|
|
16
19
|
items
|
|
17
20
|
}) => {
|
|
18
|
-
const {
|
|
19
|
-
theme
|
|
20
|
-
} = (0, _CalendarContext.useCalendarContext)();
|
|
21
21
|
const displayCount = 5;
|
|
22
22
|
const translateY = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
|
|
23
23
|
const renderCount = displayCount * 2 < items.length ? displayCount * 8 : displayCount * 2 - 1;
|
|
24
24
|
const circular = items.length >= displayCount;
|
|
25
|
-
const height =
|
|
25
|
+
const height = 140;
|
|
26
26
|
const radius = height / 2;
|
|
27
|
-
const valueIndex = (0, _react.useMemo)(() =>
|
|
27
|
+
const valueIndex = (0, _react.useMemo)(() => {
|
|
28
|
+
return items.findIndex(item => item.value === value) || 0;
|
|
29
|
+
}, [items, value]);
|
|
28
30
|
const panResponder = (0, _react.useMemo)(() => {
|
|
29
31
|
return _reactNative.PanResponder.create({
|
|
30
32
|
onMoveShouldSetPanResponder: () => true,
|
|
@@ -37,14 +39,15 @@ const WheelWeb = ({
|
|
|
37
39
|
evt.stopPropagation();
|
|
38
40
|
},
|
|
39
41
|
onPanResponderRelease: (_, gestureState) => {
|
|
42
|
+
var _items$;
|
|
40
43
|
translateY.extractOffset();
|
|
41
44
|
let newValueIndex = valueIndex - Math.round(gestureState.dy / (radius * 2 / displayCount));
|
|
42
45
|
if (circular) newValueIndex = (newValueIndex + items.length) % items.length;else if (newValueIndex < 0) newValueIndex = 0;else if (newValueIndex >= items.length) newValueIndex = items.length - 1;
|
|
43
|
-
const newValue = items[newValueIndex]
|
|
44
|
-
if (newValue ===
|
|
46
|
+
const newValue = items[newValueIndex];
|
|
47
|
+
if ((newValue === null || newValue === void 0 ? void 0 : newValue.value) === value) {
|
|
45
48
|
translateY.setOffset(0);
|
|
46
49
|
translateY.setValue(0);
|
|
47
|
-
} else setValue(
|
|
50
|
+
} else if (newValue !== null && newValue !== void 0 && newValue.value) setValue(newValue.value);else if ((_items$ = items[0]) !== null && _items$ !== void 0 && _items$.value) setValue(items[0].value);
|
|
48
51
|
}
|
|
49
52
|
});
|
|
50
53
|
}, [circular, displayCount, radius, setValue, value, valueIndex, items, translateY]);
|
|
@@ -54,17 +57,14 @@ const WheelWeb = ({
|
|
|
54
57
|
length: renderCount
|
|
55
58
|
}, (_, index) => {
|
|
56
59
|
let targetIndex = valueIndex + index - centerIndex;
|
|
57
|
-
if (targetIndex
|
|
58
|
-
|
|
59
|
-
targetIndex = (targetIndex + items.length) % items.length;
|
|
60
|
-
}
|
|
61
|
-
return items[targetIndex] || 0;
|
|
60
|
+
if (circular) targetIndex = (targetIndex % items.length + items.length) % items.length;else targetIndex = Math.max(0, Math.min(targetIndex, items.length - 1));
|
|
61
|
+
return items[targetIndex] || items[0];
|
|
62
62
|
});
|
|
63
63
|
}, [renderCount, valueIndex, items, circular]);
|
|
64
64
|
const animatedAngles = (0, _react.useMemo)(() => {
|
|
65
65
|
//translateY.setValue(0);
|
|
66
66
|
translateY.setOffset(0);
|
|
67
|
-
const currentIndex = displayValues.
|
|
67
|
+
const currentIndex = displayValues.findIndex(item => (item === null || item === void 0 ? void 0 : item.value) === value);
|
|
68
68
|
return displayValues && displayValues.length > 0 ? displayValues.map((_, index) => translateY.interpolate({
|
|
69
69
|
inputRange: [-radius, radius],
|
|
70
70
|
outputRange: [-radius + radius * 2 / displayCount * (index - currentIndex), radius + radius * 2 / displayCount * (index - currentIndex)],
|
|
@@ -75,22 +75,26 @@ const WheelWeb = ({
|
|
|
75
75
|
extrapolate: 'clamp'
|
|
76
76
|
})) : [];
|
|
77
77
|
}, [displayValues, radius, value, displayCount, translateY]);
|
|
78
|
-
return /*#__PURE__*/
|
|
79
|
-
style: [
|
|
80
|
-
}, panResponder.panHandlers),
|
|
78
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, _extends({
|
|
79
|
+
style: [defaultStyles.container]
|
|
80
|
+
}, panResponder.panHandlers), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
81
|
+
style: [defaultStyles.selectedIndicator, {
|
|
82
|
+
transform: [{
|
|
83
|
+
translateY: -ITEM_HEIGHT / 2
|
|
84
|
+
}],
|
|
85
|
+
height: ITEM_HEIGHT
|
|
86
|
+
}]
|
|
87
|
+
}), displayValues === null || displayValues === void 0 ? void 0 : displayValues.map((displayValue, index) => {
|
|
81
88
|
const animatedAngle = animatedAngles[index];
|
|
82
|
-
return /*#__PURE__*/
|
|
83
|
-
key: `${displayValue}-${index}
|
|
84
|
-
style: [{
|
|
85
|
-
...styles.wheelPickerText,
|
|
86
|
-
...(theme === null || theme === void 0 ? void 0 : theme.wheelPickerTextStyle)
|
|
87
|
-
},
|
|
89
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
|
|
90
|
+
key: `${displayValue === null || displayValue === void 0 ? void 0 : displayValue.text}-${index}`
|
|
88
91
|
// eslint-disable-next-line react-native/no-inline-styles
|
|
89
|
-
|
|
92
|
+
,
|
|
93
|
+
style: {
|
|
90
94
|
position: 'absolute',
|
|
91
|
-
height:
|
|
95
|
+
height: ITEM_HEIGHT - 10,
|
|
92
96
|
transform: animatedAngle ? [{
|
|
93
|
-
translateY: _reactNative.Animated.multiply(radius, (0,
|
|
97
|
+
translateY: _reactNative.Animated.multiply(radius, (0, _animatedMath.sin)(animatedAngle))
|
|
94
98
|
}, {
|
|
95
99
|
rotateX: animatedAngle.interpolate({
|
|
96
100
|
inputRange: [-Math.PI / 2, Math.PI / 2],
|
|
@@ -98,18 +102,18 @@ const WheelWeb = ({
|
|
|
98
102
|
extrapolate: 'clamp'
|
|
99
103
|
})
|
|
100
104
|
}] : [],
|
|
101
|
-
opacity: displayValue
|
|
102
|
-
}
|
|
103
|
-
}, displayValue);
|
|
105
|
+
opacity: (displayValue === null || displayValue === void 0 ? void 0 : displayValue.value) !== value ? 0.3 : 1
|
|
106
|
+
}
|
|
107
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, null, displayValue === null || displayValue === void 0 ? void 0 : displayValue.text));
|
|
104
108
|
}));
|
|
105
109
|
};
|
|
106
|
-
const
|
|
110
|
+
const defaultStyles = _reactNative.StyleSheet.create({
|
|
107
111
|
container: {
|
|
108
112
|
minWidth: 30,
|
|
109
113
|
overflow: 'hidden',
|
|
110
114
|
alignItems: 'center',
|
|
111
115
|
justifyContent: 'center',
|
|
112
|
-
height: _enums.
|
|
116
|
+
height: _enums.CONTAINER_HEIGHT / 2,
|
|
113
117
|
..._reactNative.Platform.select({
|
|
114
118
|
web: {
|
|
115
119
|
cursor: 'pointer',
|
|
@@ -121,12 +125,15 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
121
125
|
justifyContent: 'space-between',
|
|
122
126
|
alignItems: 'center'
|
|
123
127
|
},
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
128
|
+
selectedIndicator: {
|
|
129
|
+
position: 'absolute',
|
|
130
|
+
width: '100%',
|
|
131
|
+
top: '50%'
|
|
127
132
|
}
|
|
128
133
|
});
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
134
|
+
const customComparator = (prev, next) => {
|
|
135
|
+
const areEqual = prev.value === next.value && prev.setValue === next.setValue && (0, _lodash.isEqual)(prev.items, next.items);
|
|
136
|
+
return areEqual;
|
|
137
|
+
};
|
|
138
|
+
var _default = exports.default = /*#__PURE__*/(0, _react.memo)(WheelWeb, customComparator);
|
|
132
139
|
//# sourceMappingURL=WheelWeb.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_animatedMath","_enums","_lodash","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","ITEM_HEIGHT","WheelWeb","value","setValue","items","displayCount","translateY","useRef","Animated","Value","current","renderCount","circular","height","radius","valueIndex","useMemo","findIndex","item","panResponder","PanResponder","create","onMoveShouldSetPanResponder","onStartShouldSetPanResponderCapture","onPanResponderGrant","onPanResponderMove","evt","gestureState","dy","stopPropagation","onPanResponderRelease","_","_items$","extractOffset","newValueIndex","Math","round","newValue","setOffset","displayValues","centerIndex","floor","Array","from","index","targetIndex","max","min","animatedAngles","currentIndex","map","interpolate","inputRange","outputRange","extrapolate","PI","createElement","View","style","defaultStyles","container","panHandlers","selectedIndicator","transform","displayValue","animatedAngle","text","position","multiply","sin","rotateX","opacity","Text","StyleSheet","minWidth","overflow","alignItems","justifyContent","CONTAINER_HEIGHT","Platform","select","web","cursor","userSelect","contentContainer","width","top","customComparator","prev","next","areEqual","isEqual","_default","exports","memo"],"sourceRoot":"../../../../src","sources":["components/WheelPicker/WheelWeb.tsx"],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.normalize = normalize;
|
|
7
|
+
exports.sin = sin;
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
const FACTORIAL_3 = 3 * 2;
|
|
10
|
+
const FACTORIAL_5 = 5 * 4 * FACTORIAL_3;
|
|
11
|
+
const FACTORIAL_7 = 7 * 6 * FACTORIAL_5;
|
|
12
|
+
function sin(animated) {
|
|
13
|
+
const normalized = normalize(animated);
|
|
14
|
+
const square = _reactNative.Animated.multiply(normalized, normalized);
|
|
15
|
+
const pow3 = _reactNative.Animated.multiply(normalized, square);
|
|
16
|
+
const pow5 = _reactNative.Animated.multiply(pow3, square);
|
|
17
|
+
const pow7 = _reactNative.Animated.multiply(pow5, square);
|
|
18
|
+
return _reactNative.Animated.add(_reactNative.Animated.add(normalized, _reactNative.Animated.multiply(pow3, -1 / FACTORIAL_3)), _reactNative.Animated.add(_reactNative.Animated.multiply(pow5, 1 / FACTORIAL_5), _reactNative.Animated.multiply(pow7, -1 / FACTORIAL_7)));
|
|
19
|
+
}
|
|
20
|
+
function normalize(animated) {
|
|
21
|
+
return _reactNative.Animated.add(_reactNative.Animated.modulo(_reactNative.Animated.add(animated, Math.PI), Math.PI * 2), -Math.PI).interpolate({
|
|
22
|
+
inputRange: [-Math.PI, -Math.PI / 2, Math.PI / 2, Math.PI],
|
|
23
|
+
outputRange: [0, -Math.PI / 2, Math.PI / 2, 0]
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=animated-math.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","FACTORIAL_3","FACTORIAL_5","FACTORIAL_7","sin","animated","normalized","normalize","square","Animated","multiply","pow3","pow5","pow7","add","modulo","Math","PI","interpolate","inputRange","outputRange"],"sourceRoot":"../../../../src","sources":["components/WheelPicker/animated-math.ts"],"mappings":";;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,MAAMC,WAAW,GAAG,CAAC,GAAG,CAAC;AACzB,MAAMC,WAAW,GAAG,CAAC,GAAG,CAAC,GAAGD,WAAW;AACvC,MAAME,WAAW,GAAG,CAAC,GAAG,CAAC,GAAGD,WAAW;AAEvC,SAASE,GAAGA,CAACC,QAA2B,EAAE;EACxC,MAAMC,UAAU,GAAGC,SAAS,CAACF,QAAQ,CAAC;EACtC,MAAMG,MAAM,GAAGC,qBAAQ,CAACC,QAAQ,CAACJ,UAAU,EAAEA,UAAU,CAAC;EACxD,MAAMK,IAAI,GAAGF,qBAAQ,CAACC,QAAQ,CAACJ,UAAU,EAAEE,MAAM,CAAC;EAClD,MAAMI,IAAI,GAAGH,qBAAQ,CAACC,QAAQ,CAACC,IAAI,EAAEH,MAAM,CAAC;EAC5C,MAAMK,IAAI,GAAGJ,qBAAQ,CAACC,QAAQ,CAACE,IAAI,EAAEJ,MAAM,CAAC;EAE5C,OAAOC,qBAAQ,CAACK,GAAG,CACjBL,qBAAQ,CAACK,GAAG,CAACR,UAAU,EAAEG,qBAAQ,CAACC,QAAQ,CAACC,IAAI,EAAE,CAAC,CAAC,GAAGV,WAAW,CAAC,CAAC,EACnEQ,qBAAQ,CAACK,GAAG,CACVL,qBAAQ,CAACC,QAAQ,CAACE,IAAI,EAAE,CAAC,GAAGV,WAAW,CAAC,EACxCO,qBAAQ,CAACC,QAAQ,CAACG,IAAI,EAAE,CAAC,CAAC,GAAGV,WAAW,CAC1C,CACF,CAAC;AACH;AAEA,SAASI,SAASA,CAACF,QAA2B,EAAqB;EACjE,OAAOI,qBAAQ,CAACK,GAAG,CACjBL,qBAAQ,CAACM,MAAM,CAACN,qBAAQ,CAACK,GAAG,CAACT,QAAQ,EAAEW,IAAI,CAACC,EAAE,CAAC,EAAED,IAAI,CAACC,EAAE,GAAG,CAAC,CAAC,EAC7D,CAACD,IAAI,CAACC,EACR,CAAC,CAACC,WAAW,CAAC;IACZC,UAAU,EAAE,CAAC,CAACH,IAAI,CAACC,EAAE,EAAE,CAACD,IAAI,CAACC,EAAE,GAAG,CAAC,EAAED,IAAI,CAACC,EAAE,GAAG,CAAC,EAAED,IAAI,CAACC,EAAE,CAAC;IAC1DG,WAAW,EAAE,CAAC,CAAC,EAAE,CAACJ,IAAI,CAACC,EAAE,GAAG,CAAC,EAAED,IAAI,CAACC,EAAE,GAAG,CAAC,EAAE,CAAC;EAC/C,CAAC,CAAC;AACJ"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _WheelNativePicker = _interopRequireDefault(require("./WheelNativePicker"));
|
|
9
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
11
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
12
|
+
const options = [{
|
|
13
|
+
value: 'AM',
|
|
14
|
+
text: 'AM'
|
|
15
|
+
}, {
|
|
16
|
+
value: 'PM',
|
|
17
|
+
text: 'PM'
|
|
18
|
+
}];
|
|
19
|
+
const PeriodNative = ({
|
|
20
|
+
value,
|
|
21
|
+
setValue = () => {}
|
|
22
|
+
}) => {
|
|
23
|
+
return /*#__PURE__*/_react.default.createElement(_WheelNativePicker.default, {
|
|
24
|
+
value: value,
|
|
25
|
+
options: options,
|
|
26
|
+
onChange: setValue,
|
|
27
|
+
itemHeight: 44,
|
|
28
|
+
decelerationRate: "fast"
|
|
29
|
+
});
|
|
30
|
+
};
|
|
31
|
+
const customComparator = (prev, next) => {
|
|
32
|
+
const areEqual = prev.value === next.value && prev.setValue === next.setValue;
|
|
33
|
+
return areEqual;
|
|
34
|
+
};
|
|
35
|
+
var _default = exports.default = /*#__PURE__*/(0, _react.memo)(PeriodNative, customComparator);
|
|
36
|
+
//# sourceMappingURL=period-native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_WheelNativePicker","_interopRequireDefault","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","options","value","text","PeriodNative","setValue","createElement","onChange","itemHeight","decelerationRate","customComparator","prev","next","areEqual","_default","exports","memo"],"sourceRoot":"../../../../src","sources":["components/WheelPicker/period-native.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,kBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAA8C,SAAAE,uBAAAC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAR,wBAAAQ,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAH,UAAA,SAAAG,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAF,OAAA,EAAAE,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAJ,CAAA,UAAAG,CAAA,CAAAE,GAAA,CAAAL,CAAA,OAAAM,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAZ,CAAA,oBAAAY,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAY,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAX,CAAA,EAAAY,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAZ,CAAA,CAAAY,CAAA,YAAAN,CAAA,CAAAR,OAAA,GAAAE,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAc,GAAA,CAAAjB,CAAA,EAAAM,CAAA,GAAAA,CAAA;AAQ9C,MAAMY,OAAuB,GAAG,CAC9B;EAAEC,KAAK,EAAE,IAAI;EAAEC,IAAI,EAAE;AAAK,CAAC,EAC3B;EAAED,KAAK,EAAE,IAAI;EAAEC,IAAI,EAAE;AAAK,CAAC,CAC5B;AAED,MAAMC,YAAmC,GAAGA,CAAC;EAC3CF,KAAK;EACLG,QAAQ,GAAGA,CAAA,KAAM,CAAC;AACpB,CAAC,KAAK;EACJ,oBACE/B,MAAA,CAAAO,OAAA,CAAAyB,aAAA,CAAC7B,kBAAA,CAAAI,OAAW;IACVqB,KAAK,EAAEA,KAAM;IACbD,OAAO,EAAEA,OAAQ;IACjBM,QAAQ,EAAEF,QAAS;IACnBG,UAAU,EAAE,EAAG;IACfC,gBAAgB,EAAC;EAAM,CACxB,CAAC;AAEN,CAAC;AAED,MAAMC,gBAAgB,GAAGA,CACvBC,IAA2B,EAC3BC,IAA2B,KACxB;EACH,MAAMC,QAAQ,GAAGF,IAAI,CAACT,KAAK,KAAKU,IAAI,CAACV,KAAK,IAAIS,IAAI,CAACN,QAAQ,KAAKO,IAAI,CAACP,QAAQ;EAE7E,OAAOQ,QAAQ;AACjB,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAlC,OAAA,gBAEa,IAAAmC,WAAI,EAACZ,YAAY,EAAEM,gBAAgB,CAAC"}
|