react-native-timer-picker 2.5.0 → 2.6.1
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 +22 -13
- package/dist/commonjs/components/DurationScroll/DurationScroll.js +39 -18
- package/dist/commonjs/components/DurationScroll/DurationScroll.js.map +1 -1
- package/dist/commonjs/components/DurationScroll/types.js.map +1 -1
- package/dist/commonjs/components/Modal/Modal.js +10 -10
- package/dist/commonjs/components/Modal/Modal.js.map +1 -1
- package/dist/commonjs/components/Modal/styles.js +5 -5
- package/dist/commonjs/components/Modal/styles.js.map +1 -1
- package/dist/commonjs/components/Modal/types.js.map +1 -1
- package/dist/commonjs/components/PickerItem/PickerItem.js +2 -1
- package/dist/commonjs/components/PickerItem/PickerItem.js.map +1 -1
- package/dist/commonjs/components/TimerPicker/TimerPicker.js +47 -21
- package/dist/commonjs/components/TimerPicker/TimerPicker.js.map +1 -1
- package/dist/commonjs/components/TimerPicker/index.js.map +1 -1
- package/dist/commonjs/components/TimerPicker/styles.js +79 -69
- package/dist/commonjs/components/TimerPicker/styles.js.map +1 -1
- package/dist/commonjs/components/TimerPicker/types.js.map +1 -1
- package/dist/commonjs/components/TimerPickerModal/TimerPickerModal.js +34 -14
- package/dist/commonjs/components/TimerPickerModal/TimerPickerModal.js.map +1 -1
- package/dist/commonjs/components/TimerPickerModal/styles.js +34 -28
- package/dist/commonjs/components/TimerPickerModal/styles.js.map +1 -1
- package/dist/commonjs/components/TimerPickerModal/types.js.map +1 -1
- package/dist/commonjs/index.js +3 -39
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/tests/DurationScroll.test.js +8 -8
- package/dist/commonjs/tests/DurationScroll.test.js.map +1 -1
- package/dist/commonjs/tests/Modal.test.js.map +1 -1
- package/dist/commonjs/tests/TimerPicker.test.js +1 -9
- package/dist/commonjs/tests/TimerPicker.test.js.map +1 -1
- package/dist/commonjs/tests/TimerPickerModal.test.js +3 -3
- package/dist/commonjs/tests/TimerPickerModal.test.js.map +1 -1
- package/dist/commonjs/tests/colorToRgba.test.js.map +1 -1
- package/dist/commonjs/tests/generateNumbers.test.js +63 -63
- package/dist/commonjs/tests/generateNumbers.test.js.map +1 -1
- package/dist/commonjs/tests/getAdjustedLimit.test.js +38 -38
- package/dist/commonjs/tests/getAdjustedLimit.test.js.map +1 -1
- package/dist/commonjs/tests/getDurationAndIndexFromScrollOffset.test.js.map +1 -1
- package/dist/commonjs/tests/getInitialScrollIndex.test.js.map +1 -1
- package/dist/commonjs/tests/getSafeInitialValue.test.js +2 -0
- package/dist/commonjs/tests/getSafeInitialValue.test.js.map +1 -1
- package/dist/commonjs/tests/padNumber.test.js.map +1 -1
- package/dist/commonjs/utils/colorToRgba.js +4 -4
- package/dist/commonjs/utils/colorToRgba.js.map +1 -1
- package/dist/commonjs/utils/generateNumbers.js.map +1 -1
- package/dist/commonjs/utils/getAdjustedLimit.js.map +1 -1
- package/dist/commonjs/utils/getDurationAndIndexFromScrollOffset.js.map +1 -1
- package/dist/commonjs/utils/getInitialScrollIndex.js +4 -4
- package/dist/commonjs/utils/getInitialScrollIndex.js.map +1 -1
- package/dist/commonjs/utils/getSafeInitialValue.js +5 -5
- package/dist/commonjs/utils/getSafeInitialValue.js.map +1 -1
- package/dist/commonjs/utils/padNumber.js.map +1 -1
- package/dist/module/components/DurationScroll/DurationScroll.js +39 -18
- package/dist/module/components/DurationScroll/DurationScroll.js.map +1 -1
- package/dist/module/components/DurationScroll/types.js.map +1 -1
- package/dist/module/components/Modal/Modal.js +10 -10
- package/dist/module/components/Modal/Modal.js.map +1 -1
- package/dist/module/components/Modal/styles.js +5 -5
- package/dist/module/components/Modal/styles.js.map +1 -1
- package/dist/module/components/Modal/types.js.map +1 -1
- package/dist/module/components/PickerItem/PickerItem.js +2 -1
- package/dist/module/components/PickerItem/PickerItem.js.map +1 -1
- package/dist/module/components/TimerPicker/TimerPicker.js +47 -21
- package/dist/module/components/TimerPicker/TimerPicker.js.map +1 -1
- package/dist/module/components/TimerPicker/index.js.map +1 -1
- package/dist/module/components/TimerPicker/styles.js +79 -69
- package/dist/module/components/TimerPicker/styles.js.map +1 -1
- package/dist/module/components/TimerPicker/types.js.map +1 -1
- package/dist/module/components/TimerPickerModal/TimerPickerModal.js +35 -15
- package/dist/module/components/TimerPickerModal/TimerPickerModal.js.map +1 -1
- package/dist/module/components/TimerPickerModal/styles.js +33 -27
- package/dist/module/components/TimerPickerModal/styles.js.map +1 -1
- package/dist/module/components/TimerPickerModal/types.js.map +1 -1
- package/dist/module/index.js +2 -2
- package/dist/module/index.js.map +1 -1
- package/dist/module/tests/DurationScroll.test.js +8 -8
- package/dist/module/tests/DurationScroll.test.js.map +1 -1
- package/dist/module/tests/Modal.test.js.map +1 -1
- package/dist/module/tests/TimerPicker.test.js +1 -8
- package/dist/module/tests/TimerPicker.test.js.map +1 -1
- package/dist/module/tests/TimerPickerModal.test.js +3 -3
- package/dist/module/tests/TimerPickerModal.test.js.map +1 -1
- package/dist/module/tests/colorToRgba.test.js.map +1 -1
- package/dist/module/tests/generateNumbers.test.js +63 -63
- package/dist/module/tests/generateNumbers.test.js.map +1 -1
- package/dist/module/tests/getAdjustedLimit.test.js +38 -38
- package/dist/module/tests/getAdjustedLimit.test.js.map +1 -1
- package/dist/module/tests/getDurationAndIndexFromScrollOffset.test.js.map +1 -1
- package/dist/module/tests/getInitialScrollIndex.test.js.map +1 -1
- package/dist/module/tests/getSafeInitialValue.test.js +1 -0
- package/dist/module/tests/getSafeInitialValue.test.js.map +1 -1
- package/dist/module/tests/padNumber.test.js.map +1 -1
- package/dist/module/utils/colorToRgba.js +4 -4
- package/dist/module/utils/colorToRgba.js.map +1 -1
- package/dist/module/utils/generateNumbers.js.map +1 -1
- package/dist/module/utils/getAdjustedLimit.js.map +1 -1
- package/dist/module/utils/getDurationAndIndexFromScrollOffset.js.map +1 -1
- package/dist/module/utils/getInitialScrollIndex.js +4 -4
- package/dist/module/utils/getInitialScrollIndex.js.map +1 -1
- package/dist/module/utils/getSafeInitialValue.js +5 -5
- package/dist/module/utils/getSafeInitialValue.js.map +1 -1
- package/dist/module/utils/padNumber.js.map +1 -1
- package/dist/typescript/components/DurationScroll/types.d.ts +9 -6
- package/dist/typescript/components/Modal/styles.d.ts +5 -5
- package/dist/typescript/components/Modal/types.d.ts +2 -1
- package/dist/typescript/components/PickerItem/PickerItem.d.ts +4 -0
- package/dist/typescript/components/TimerPicker/styles.d.ts +230 -225
- package/dist/typescript/components/TimerPicker/types.d.ts +9 -8
- package/dist/typescript/components/TimerPickerModal/styles.d.ts +158 -154
- package/dist/typescript/components/TimerPickerModal/types.d.ts +2 -1
- package/dist/typescript/index.d.ts +4 -2
- package/dist/typescript/tests/DurationScroll.test.d.ts +1 -0
- package/dist/typescript/tests/Modal.test.d.ts +1 -0
- package/dist/typescript/tests/TimerPicker.test.d.ts +1 -0
- package/dist/typescript/tests/TimerPickerModal.test.d.ts +1 -0
- package/dist/typescript/tests/colorToRgba.test.d.ts +1 -0
- package/dist/typescript/tests/generateNumbers.test.d.ts +1 -0
- package/dist/typescript/tests/getAdjustedLimit.test.d.ts +1 -0
- package/dist/typescript/tests/getDurationAndIndexFromScrollOffset.test.d.ts +1 -0
- package/dist/typescript/tests/getInitialScrollIndex.test.d.ts +1 -0
- package/dist/typescript/tests/getSafeInitialValue.test.d.ts +1 -0
- package/dist/typescript/tests/padNumber.test.d.ts +1 -0
- package/package.json +144 -126
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","e","__esModule","default","PickerItem","React","memo","adjustedLimitedMax","adjustedLimitedMin","allowFontScaling","amLabel","is12HourPicker","item","pmLabel","selectedValue","styles","stringItem","intItem","isAm","parseInt","includes","replace","isSelected","createElement","View","key","style","pickerItemContainer","testID","Text","pickerItem","selectedPickerItem","disabledPickerItem","pickerAmPmContainer","pickerAmPmLabel","_default","exports"],"sources":["PickerItem.tsx"],"sourcesContent":["
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","e","__esModule","default","PickerItem","React","memo","adjustedLimitedMax","adjustedLimitedMin","allowFontScaling","amLabel","is12HourPicker","item","pickerAmPmPositionStyle","pmLabel","selectedValue","styles","stringItem","intItem","isAm","parseInt","includes","replace","isSelected","createElement","View","key","style","pickerItemContainer","testID","Text","pickerItem","selectedPickerItem","disabledPickerItem","pickerAmPmContainer","pickerAmPmLabel","_default","exports"],"sources":["PickerItem.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { View, Text } from \"react-native\";\n\nimport type { generateStyles } from \"../TimerPicker/styles\";\n\ninterface PickerItemProps {\n adjustedLimitedMax: number;\n adjustedLimitedMin: number;\n allowFontScaling: boolean;\n amLabel?: string;\n is12HourPicker?: boolean;\n item: string;\n pickerAmPmPositionStyle?: { left: \"50%\"; marginLeft: number };\n pmLabel?: string;\n selectedValue?: number;\n styles: ReturnType<typeof generateStyles>;\n}\n\nconst PickerItem = React.memo<PickerItemProps>(\n ({\n adjustedLimitedMax,\n adjustedLimitedMin,\n allowFontScaling,\n amLabel,\n is12HourPicker,\n item,\n pickerAmPmPositionStyle,\n pmLabel,\n selectedValue,\n styles,\n }) => {\n let stringItem = item;\n let intItem: number;\n let isAm: boolean | undefined;\n\n if (!is12HourPicker) {\n intItem = parseInt(item);\n } else {\n isAm = item.includes(\"AM\");\n stringItem = item.replace(/\\s[AP]M/g, \"\");\n intItem = parseInt(stringItem);\n }\n\n const isSelected = intItem === selectedValue;\n\n return (\n <View key={item} style={styles.pickerItemContainer} testID=\"picker-item\">\n <Text\n allowFontScaling={allowFontScaling}\n style={[\n styles.pickerItem,\n isSelected && styles.selectedPickerItem,\n intItem > adjustedLimitedMax || intItem < adjustedLimitedMin\n ? styles.disabledPickerItem\n : {},\n ]}\n >\n {stringItem}\n </Text>\n {is12HourPicker && (\n <View style={[styles.pickerAmPmContainer, pickerAmPmPositionStyle]}>\n <Text allowFontScaling={allowFontScaling} style={styles.pickerAmPmLabel}>\n {isAm ? amLabel : pmLabel}\n </Text>\n </View>\n )}\n </View>\n );\n }\n);\n\nexport default PickerItem;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AAA0C,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAiB1C,MAAMG,UAAU,gBAAGC,cAAK,CAACC,IAAI,CAC3B,CAAC;EACCC,kBAAkB;EAClBC,kBAAkB;EAClBC,gBAAgB;EAChBC,OAAO;EACPC,cAAc;EACdC,IAAI;EACJC,uBAAuB;EACvBC,OAAO;EACPC,aAAa;EACbC;AACF,CAAC,KAAK;EACJ,IAAIC,UAAU,GAAGL,IAAI;EACrB,IAAIM,OAAe;EACnB,IAAIC,IAAyB;EAE7B,IAAI,CAACR,cAAc,EAAE;IACnBO,OAAO,GAAGE,QAAQ,CAACR,IAAI,CAAC;EAC1B,CAAC,MAAM;IACLO,IAAI,GAAGP,IAAI,CAACS,QAAQ,CAAC,IAAI,CAAC;IAC1BJ,UAAU,GAAGL,IAAI,CAACU,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;IACzCJ,OAAO,GAAGE,QAAQ,CAACH,UAAU,CAAC;EAChC;EAEA,MAAMM,UAAU,GAAGL,OAAO,KAAKH,aAAa;EAE5C,oBACElB,MAAA,CAAAM,OAAA,CAAAqB,aAAA,CAACxB,YAAA,CAAAyB,IAAI;IAACC,GAAG,EAAEd,IAAK;IAACe,KAAK,EAAEX,MAAM,CAACY,mBAAoB;IAACC,MAAM,EAAC;EAAa,gBACtEhC,MAAA,CAAAM,OAAA,CAAAqB,aAAA,CAACxB,YAAA,CAAA8B,IAAI;IACHrB,gBAAgB,EAAEA,gBAAiB;IACnCkB,KAAK,EAAE,CACLX,MAAM,CAACe,UAAU,EACjBR,UAAU,IAAIP,MAAM,CAACgB,kBAAkB,EACvCd,OAAO,GAAGX,kBAAkB,IAAIW,OAAO,GAAGV,kBAAkB,GACxDQ,MAAM,CAACiB,kBAAkB,GACzB,CAAC,CAAC;EACN,GAEDhB,UACG,CAAC,EACNN,cAAc,iBACbd,MAAA,CAAAM,OAAA,CAAAqB,aAAA,CAACxB,YAAA,CAAAyB,IAAI;IAACE,KAAK,EAAE,CAACX,MAAM,CAACkB,mBAAmB,EAAErB,uBAAuB;EAAE,gBACjEhB,MAAA,CAAAM,OAAA,CAAAqB,aAAA,CAACxB,YAAA,CAAA8B,IAAI;IAACrB,gBAAgB,EAAEA,gBAAiB;IAACkB,KAAK,EAAEX,MAAM,CAACmB;EAAgB,GACrEhB,IAAI,GAAGT,OAAO,GAAGI,OACd,CACF,CAEJ,CAAC;AAEX,CACF,CAAC;AAAC,IAAAsB,QAAA,GAAAC,OAAA,CAAAlC,OAAA,GAEaC,UAAU","ignoreList":[]}
|
|
@@ -12,6 +12,15 @@ var _styles = require("./styles");
|
|
|
12
12
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
13
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
14
14
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
15
|
+
const resolvePerColumn = (value, column) => {
|
|
16
|
+
if (value == null) {
|
|
17
|
+
return undefined;
|
|
18
|
+
}
|
|
19
|
+
if (typeof value === "number") {
|
|
20
|
+
return value;
|
|
21
|
+
}
|
|
22
|
+
return value[column];
|
|
23
|
+
};
|
|
15
24
|
const TimerPicker = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
|
|
16
25
|
const {
|
|
17
26
|
aggressivelyGetLatestDuration = false,
|
|
@@ -70,7 +79,14 @@ const TimerPicker = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
|
|
|
70
79
|
if (otherProps.clickSoundAsset) {
|
|
71
80
|
console.warn('The "clickSoundAsset" prop is deprecated and will be removed in a future version. Please use the "pickerFeedback" prop instead.');
|
|
72
81
|
}
|
|
73
|
-
|
|
82
|
+
if ((customStyles === null || customStyles === void 0 ? void 0 : customStyles.labelOffsetPercentage) != null) {
|
|
83
|
+
if ((customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerLabelGap) != null) {
|
|
84
|
+
console.warn("labelOffsetPercentage is ignored when pickerLabelGap is set. Please remove labelOffsetPercentage.");
|
|
85
|
+
} else {
|
|
86
|
+
console.warn('The "labelOffsetPercentage" style prop is deprecated and will be removed in a future version. Please use the "pickerLabelGap" style prop instead.');
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}, [otherProps.Audio, otherProps.Haptics, otherProps.clickSoundAsset, customStyles === null || customStyles === void 0 ? void 0 : customStyles.labelOffsetPercentage, customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerLabelGap]);
|
|
74
90
|
const safePadWithNItems = (0, _react.useMemo)(() => {
|
|
75
91
|
if (padWithNItems < 0 || isNaN(padWithNItems)) {
|
|
76
92
|
return 0;
|
|
@@ -87,6 +103,8 @@ const TimerPicker = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
|
|
|
87
103
|
minutes: initialValue === null || initialValue === void 0 ? void 0 : initialValue.minutes,
|
|
88
104
|
seconds: initialValue === null || initialValue === void 0 ? void 0 : initialValue.seconds
|
|
89
105
|
}), [initialValue === null || initialValue === void 0 ? void 0 : initialValue.days, initialValue === null || initialValue === void 0 ? void 0 : initialValue.hours, initialValue === null || initialValue === void 0 ? void 0 : initialValue.minutes, initialValue === null || initialValue === void 0 ? void 0 : initialValue.seconds]);
|
|
106
|
+
const pickerLabelGap = customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerLabelGap;
|
|
107
|
+
const pickerColumnWidth = customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerColumnWidth;
|
|
90
108
|
const styles = (0, _react.useMemo)(() => (0, _styles.generateStyles)(customStyles), [customStyles]);
|
|
91
109
|
const [selectedDays, setSelectedDays] = (0, _react.useState)(safeInitialValue.days);
|
|
92
110
|
const [selectedHours, setSelectedHours] = (0, _react.useState)(safeInitialValue.hours);
|
|
@@ -106,46 +124,46 @@ const TimerPicker = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
|
|
|
106
124
|
const minutesDurationScrollRef = (0, _react.useRef)(null);
|
|
107
125
|
const secondsDurationScrollRef = (0, _react.useRef)(null);
|
|
108
126
|
(0, _react.useImperativeHandle)(ref, () => {
|
|
109
|
-
var
|
|
127
|
+
var _daysDurationScrollRe, _hoursDurationScrollR, _minutesDurationScrol, _secondsDurationScrol;
|
|
110
128
|
return {
|
|
129
|
+
latestDuration: {
|
|
130
|
+
days: (_daysDurationScrollRe = daysDurationScrollRef.current) === null || _daysDurationScrollRe === void 0 ? void 0 : _daysDurationScrollRe.latestDuration,
|
|
131
|
+
hours: (_hoursDurationScrollR = hoursDurationScrollRef.current) === null || _hoursDurationScrollR === void 0 ? void 0 : _hoursDurationScrollR.latestDuration,
|
|
132
|
+
minutes: (_minutesDurationScrol = minutesDurationScrollRef.current) === null || _minutesDurationScrol === void 0 ? void 0 : _minutesDurationScrol.latestDuration,
|
|
133
|
+
seconds: (_secondsDurationScrol = secondsDurationScrollRef.current) === null || _secondsDurationScrol === void 0 ? void 0 : _secondsDurationScrol.latestDuration
|
|
134
|
+
},
|
|
111
135
|
reset: options => {
|
|
112
|
-
var
|
|
136
|
+
var _daysDurationScrollRe2, _hoursDurationScrollR2, _minutesDurationScrol2, _secondsDurationScrol2;
|
|
113
137
|
setSelectedDays(safeInitialValue.days);
|
|
114
138
|
setSelectedHours(safeInitialValue.hours);
|
|
115
139
|
setSelectedMinutes(safeInitialValue.minutes);
|
|
116
140
|
setSelectedSeconds(safeInitialValue.seconds);
|
|
117
|
-
(
|
|
118
|
-
(
|
|
119
|
-
(
|
|
120
|
-
(
|
|
141
|
+
(_daysDurationScrollRe2 = daysDurationScrollRef.current) === null || _daysDurationScrollRe2 === void 0 || _daysDurationScrollRe2.reset(options);
|
|
142
|
+
(_hoursDurationScrollR2 = hoursDurationScrollRef.current) === null || _hoursDurationScrollR2 === void 0 || _hoursDurationScrollR2.reset(options);
|
|
143
|
+
(_minutesDurationScrol2 = minutesDurationScrollRef.current) === null || _minutesDurationScrol2 === void 0 || _minutesDurationScrol2.reset(options);
|
|
144
|
+
(_secondsDurationScrol2 = secondsDurationScrollRef.current) === null || _secondsDurationScrol2 === void 0 || _secondsDurationScrol2.reset(options);
|
|
121
145
|
},
|
|
122
146
|
setValue: (value, options) => {
|
|
123
147
|
if (value.days !== undefined) {
|
|
124
|
-
var
|
|
148
|
+
var _daysDurationScrollRe3;
|
|
125
149
|
setSelectedDays(value.days);
|
|
126
|
-
(
|
|
150
|
+
(_daysDurationScrollRe3 = daysDurationScrollRef.current) === null || _daysDurationScrollRe3 === void 0 || _daysDurationScrollRe3.setValue(value.days, options);
|
|
127
151
|
}
|
|
128
152
|
if (value.hours !== undefined) {
|
|
129
|
-
var
|
|
153
|
+
var _hoursDurationScrollR3;
|
|
130
154
|
setSelectedHours(value.hours);
|
|
131
|
-
(
|
|
155
|
+
(_hoursDurationScrollR3 = hoursDurationScrollRef.current) === null || _hoursDurationScrollR3 === void 0 || _hoursDurationScrollR3.setValue(value.hours, options);
|
|
132
156
|
}
|
|
133
157
|
if (value.minutes !== undefined) {
|
|
134
|
-
var
|
|
158
|
+
var _minutesDurationScrol3;
|
|
135
159
|
setSelectedMinutes(value.minutes);
|
|
136
|
-
(
|
|
160
|
+
(_minutesDurationScrol3 = minutesDurationScrollRef.current) === null || _minutesDurationScrol3 === void 0 || _minutesDurationScrol3.setValue(value.minutes, options);
|
|
137
161
|
}
|
|
138
162
|
if (value.seconds !== undefined) {
|
|
139
|
-
var
|
|
163
|
+
var _secondsDurationScrol3;
|
|
140
164
|
setSelectedSeconds(value.seconds);
|
|
141
|
-
(
|
|
165
|
+
(_secondsDurationScrol3 = secondsDurationScrollRef.current) === null || _secondsDurationScrol3 === void 0 || _secondsDurationScrol3.setValue(value.seconds, options);
|
|
142
166
|
}
|
|
143
|
-
},
|
|
144
|
-
latestDuration: {
|
|
145
|
-
days: (_daysDurationScrollRe3 = daysDurationScrollRef.current) === null || _daysDurationScrollRe3 === void 0 ? void 0 : _daysDurationScrollRe3.latestDuration,
|
|
146
|
-
hours: (_hoursDurationScrollR3 = hoursDurationScrollRef.current) === null || _hoursDurationScrollR3 === void 0 ? void 0 : _hoursDurationScrollR3.latestDuration,
|
|
147
|
-
minutes: (_minutesDurationScrol3 = minutesDurationScrollRef.current) === null || _minutesDurationScrol3 === void 0 ? void 0 : _minutesDurationScrol3.latestDuration,
|
|
148
|
-
seconds: (_secondsDurationScrol3 = secondsDurationScrollRef.current) === null || _secondsDurationScrol3 === void 0 ? void 0 : _secondsDurationScrol3.latestDuration
|
|
149
167
|
}
|
|
150
168
|
};
|
|
151
169
|
});
|
|
@@ -166,6 +184,8 @@ const TimerPicker = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
|
|
|
166
184
|
onDurationChange: setSelectedDays,
|
|
167
185
|
padNumbersWithZero: padDaysWithZero,
|
|
168
186
|
padWithNItems: safePadWithNItems,
|
|
187
|
+
pickerColumnWidth: resolvePerColumn(pickerColumnWidth, "days"),
|
|
188
|
+
pickerLabelGap: resolvePerColumn(pickerLabelGap, "days"),
|
|
169
189
|
repeatNumbersNTimes: repeatDayNumbersNTimes,
|
|
170
190
|
repeatNumbersNTimesNotExplicitlySet: (props === null || props === void 0 ? void 0 : props.repeatDayNumbersNTimes) === undefined,
|
|
171
191
|
selectedValue: selectedDays,
|
|
@@ -188,6 +208,8 @@ const TimerPicker = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
|
|
|
188
208
|
onDurationChange: setSelectedHours,
|
|
189
209
|
padNumbersWithZero: padHoursWithZero,
|
|
190
210
|
padWithNItems: safePadWithNItems,
|
|
211
|
+
pickerColumnWidth: resolvePerColumn(pickerColumnWidth, "hours"),
|
|
212
|
+
pickerLabelGap: resolvePerColumn(pickerLabelGap, "hours"),
|
|
191
213
|
pmLabel: pmLabel,
|
|
192
214
|
repeatNumbersNTimes: repeatHourNumbersNTimes,
|
|
193
215
|
repeatNumbersNTimesNotExplicitlySet: (props === null || props === void 0 ? void 0 : props.repeatHourNumbersNTimes) === undefined,
|
|
@@ -209,6 +231,8 @@ const TimerPicker = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
|
|
|
209
231
|
onDurationChange: setSelectedMinutes,
|
|
210
232
|
padNumbersWithZero: padMinutesWithZero,
|
|
211
233
|
padWithNItems: safePadWithNItems,
|
|
234
|
+
pickerColumnWidth: resolvePerColumn(pickerColumnWidth, "minutes"),
|
|
235
|
+
pickerLabelGap: resolvePerColumn(pickerLabelGap, "minutes"),
|
|
212
236
|
repeatNumbersNTimes: repeatMinuteNumbersNTimes,
|
|
213
237
|
repeatNumbersNTimesNotExplicitlySet: (props === null || props === void 0 ? void 0 : props.repeatMinuteNumbersNTimes) === undefined,
|
|
214
238
|
selectedValue: selectedMinutes,
|
|
@@ -229,6 +253,8 @@ const TimerPicker = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
|
|
|
229
253
|
onDurationChange: setSelectedSeconds,
|
|
230
254
|
padNumbersWithZero: padSecondsWithZero,
|
|
231
255
|
padWithNItems: safePadWithNItems,
|
|
256
|
+
pickerColumnWidth: resolvePerColumn(pickerColumnWidth, "seconds"),
|
|
257
|
+
pickerLabelGap: resolvePerColumn(pickerLabelGap, "seconds"),
|
|
232
258
|
repeatNumbersNTimes: repeatSecondNumbersNTimes,
|
|
233
259
|
repeatNumbersNTimesNotExplicitlySet: (props === null || props === void 0 ? void 0 : props.repeatSecondNumbersNTimes) === undefined,
|
|
234
260
|
selectedValue: selectedSeconds,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_getSafeInitialValue","_DurationScroll","_interopRequireDefault","_styles","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","TimerPicker","forwardRef","props","ref","aggressivelyGetLatestDuration","allowFontScaling","amLabel","dayInterval","dayLabel","dayLimit","daysPickerIsDisabled","decelerationRate","disableInfiniteScroll","hideDays","hideHours","hideMinutes","hideSeconds","hourInterval","hourLabel","hourLimit","hoursPickerIsDisabled","initialValue","maximumDays","maximumHours","maximumMinutes","maximumSeconds","minuteInterval","minuteLabel","minuteLimit","minutesPickerIsDisabled","onDurationChange","padDaysWithZero","padHoursWithZero","padMinutesWithZero","padSecondsWithZero","padWithNItems","pickerContainerProps","pmLabel","repeatDayNumbersNTimes","repeatHourNumbersNTimes","repeatMinuteNumbersNTimes","repeatSecondNumbersNTimes","secondInterval","secondLabel","secondLimit","secondsPickerIsDisabled","styles","customStyles","use12HourPicker","otherProps","useEffect","Audio","console","warn","Haptics","clickSoundAsset","safePadWithNItems","useMemo","isNaN","maxPadWithNItems","Math","round","safeInitialValue","getSafeInitialValue","days","hours","minutes","seconds","generateStyles","selectedDays","setSelectedDays","useState","selectedHours","setSelectedHours","selectedMinutes","setSelectedMinutes","selectedSeconds","setSelectedSeconds","daysDurationScrollRef","useRef","hoursDurationScrollRef","minutesDurationScrollRef","secondsDurationScrollRef","useImperativeHandle","_daysDurationScrollRe3","_hoursDurationScrollR3","_minutesDurationScrol3","_secondsDurationScrol3","reset","options","_daysDurationScrollRe","_hoursDurationScrollR","_minutesDurationScrol","_secondsDurationScrol","current","setValue","value","undefined","_daysDurationScrollRe2","_hoursDurationScrollR2","_minutesDurationScrol2","_secondsDurationScrol2","latestDuration","createElement","View","style","pickerContainer","testID","interval","isDisabled","label","limit","maximumValue","padNumbersWithZero","repeatNumbersNTimes","repeatNumbersNTimesNotExplicitlySet","selectedValue","is12HourPicker","_default","exports","React","memo"],"sources":["TimerPicker.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from \"react\";\n\nimport { View } from \"react-native\";\n\nimport { getSafeInitialValue } from \"../../utils/getSafeInitialValue\";\nimport DurationScroll from \"../DurationScroll\";\nimport type { DurationScrollRef } from \"../DurationScroll\";\n\nimport { generateStyles } from \"./styles\";\nimport type { TimerPickerProps, TimerPickerRef } from \"./types\";\n\nconst TimerPicker = forwardRef<TimerPickerRef, TimerPickerProps>(\n (props, ref) => {\n const {\n aggressivelyGetLatestDuration = false,\n allowFontScaling = false,\n amLabel = \"am\",\n dayInterval = 1,\n dayLabel,\n dayLimit,\n daysPickerIsDisabled = false,\n decelerationRate = 0.88,\n disableInfiniteScroll = false,\n hideDays = true,\n hideHours = false,\n hideMinutes = false,\n hideSeconds = false,\n hourInterval = 1,\n hourLabel,\n hourLimit,\n hoursPickerIsDisabled = false,\n initialValue,\n maximumDays = 30,\n maximumHours = 23,\n maximumMinutes = 59,\n maximumSeconds = 59,\n minuteInterval = 1,\n minuteLabel,\n minuteLimit,\n minutesPickerIsDisabled = false,\n onDurationChange,\n padDaysWithZero = false,\n padHoursWithZero = false,\n padMinutesWithZero = true,\n padSecondsWithZero = true,\n padWithNItems = 1,\n pickerContainerProps,\n pmLabel = \"pm\",\n repeatDayNumbersNTimes = 3,\n repeatHourNumbersNTimes = 8,\n repeatMinuteNumbersNTimes = 3,\n repeatSecondNumbersNTimes = 3,\n secondInterval = 1,\n secondLabel,\n secondLimit,\n secondsPickerIsDisabled = false,\n styles: customStyles,\n use12HourPicker = false,\n ...otherProps\n } = props;\n\n useEffect(() => {\n if (otherProps.Audio) {\n console.warn(\n 'The \"Audio\" prop is deprecated and will be removed in a future version. Please use the \"pickerFeedback\" prop instead.'\n );\n }\n if (otherProps.Haptics) {\n console.warn(\n 'The \"Haptics\" prop is deprecated and will be removed in a future version. Please use the \"pickerFeedback\" prop instead.'\n );\n }\n if (otherProps.clickSoundAsset) {\n console.warn(\n 'The \"clickSoundAsset\" prop is deprecated and will be removed in a future version. Please use the \"pickerFeedback\" prop instead.'\n );\n }\n }, [otherProps.Audio, otherProps.Haptics, otherProps.clickSoundAsset]);\n\n const safePadWithNItems = useMemo(() => {\n if (padWithNItems < 0 || isNaN(padWithNItems)) {\n return 0;\n }\n\n const maxPadWithNItems = hideHours ? 15 : 6;\n\n if (padWithNItems > maxPadWithNItems) {\n return maxPadWithNItems;\n }\n\n return Math.round(padWithNItems);\n }, [hideHours, padWithNItems]);\n\n const safeInitialValue = useMemo(\n () =>\n getSafeInitialValue({\n days: initialValue?.days,\n hours: initialValue?.hours,\n minutes: initialValue?.minutes,\n seconds: initialValue?.seconds,\n }),\n [\n initialValue?.days,\n initialValue?.hours,\n initialValue?.minutes,\n initialValue?.seconds,\n ]\n );\n\n const styles = useMemo(\n () => generateStyles(customStyles),\n\n [customStyles]\n );\n\n const [selectedDays, setSelectedDays] = useState(safeInitialValue.days);\n const [selectedHours, setSelectedHours] = useState(\n safeInitialValue.hours\n );\n const [selectedMinutes, setSelectedMinutes] = useState(\n safeInitialValue.minutes\n );\n const [selectedSeconds, setSelectedSeconds] = useState(\n safeInitialValue.seconds\n );\n\n useEffect(() => {\n onDurationChange?.({\n days: selectedDays,\n hours: selectedHours,\n minutes: selectedMinutes,\n seconds: selectedSeconds,\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selectedDays, selectedHours, selectedMinutes, selectedSeconds]);\n\n const daysDurationScrollRef = useRef<DurationScrollRef>(null);\n const hoursDurationScrollRef = useRef<DurationScrollRef>(null);\n const minutesDurationScrollRef = useRef<DurationScrollRef>(null);\n const secondsDurationScrollRef = useRef<DurationScrollRef>(null);\n\n useImperativeHandle(ref, () => ({\n reset: (options) => {\n setSelectedDays(safeInitialValue.days);\n setSelectedHours(safeInitialValue.hours);\n setSelectedMinutes(safeInitialValue.minutes);\n setSelectedSeconds(safeInitialValue.seconds);\n daysDurationScrollRef.current?.reset(options);\n hoursDurationScrollRef.current?.reset(options);\n minutesDurationScrollRef.current?.reset(options);\n secondsDurationScrollRef.current?.reset(options);\n },\n setValue: (value, options) => {\n if (value.days !== undefined) {\n setSelectedDays(value.days);\n daysDurationScrollRef.current?.setValue(\n value.days,\n options\n );\n }\n if (value.hours !== undefined) {\n setSelectedHours(value.hours);\n hoursDurationScrollRef.current?.setValue(\n value.hours,\n options\n );\n }\n if (value.minutes !== undefined) {\n setSelectedMinutes(value.minutes);\n minutesDurationScrollRef.current?.setValue(\n value.minutes,\n options\n );\n }\n if (value.seconds !== undefined) {\n setSelectedSeconds(value.seconds);\n secondsDurationScrollRef.current?.setValue(\n value.seconds,\n options\n );\n }\n },\n latestDuration: {\n days: daysDurationScrollRef.current?.latestDuration,\n hours: hoursDurationScrollRef.current?.latestDuration,\n minutes: minutesDurationScrollRef.current?.latestDuration,\n seconds: secondsDurationScrollRef.current?.latestDuration,\n },\n }));\n\n return (\n <View\n {...pickerContainerProps}\n style={styles.pickerContainer}\n testID=\"timer-picker\">\n {!hideDays ? (\n <DurationScroll\n ref={daysDurationScrollRef}\n aggressivelyGetLatestDuration={\n aggressivelyGetLatestDuration\n }\n allowFontScaling={allowFontScaling}\n disableInfiniteScroll={disableInfiniteScroll}\n initialValue={safeInitialValue.days}\n interval={dayInterval}\n isDisabled={daysPickerIsDisabled}\n label={dayLabel ?? \"d\"}\n limit={dayLimit}\n maximumValue={maximumDays}\n onDurationChange={setSelectedDays}\n padNumbersWithZero={padDaysWithZero}\n padWithNItems={safePadWithNItems}\n repeatNumbersNTimes={repeatDayNumbersNTimes}\n repeatNumbersNTimesNotExplicitlySet={\n props?.repeatDayNumbersNTimes === undefined\n }\n selectedValue={selectedDays}\n styles={styles}\n testID=\"duration-scroll-day\"\n {...otherProps}\n />\n ) : null}\n {!hideHours ? (\n <DurationScroll\n ref={hoursDurationScrollRef}\n aggressivelyGetLatestDuration={\n aggressivelyGetLatestDuration\n }\n allowFontScaling={allowFontScaling}\n amLabel={amLabel}\n decelerationRate={decelerationRate}\n disableInfiniteScroll={disableInfiniteScroll}\n initialValue={safeInitialValue.hours}\n interval={hourInterval}\n is12HourPicker={use12HourPicker}\n isDisabled={hoursPickerIsDisabled}\n label={\n hourLabel ?? (!use12HourPicker ? \"h\" : undefined)\n }\n limit={hourLimit}\n maximumValue={maximumHours}\n onDurationChange={setSelectedHours}\n padNumbersWithZero={padHoursWithZero}\n padWithNItems={safePadWithNItems}\n pmLabel={pmLabel}\n repeatNumbersNTimes={repeatHourNumbersNTimes}\n repeatNumbersNTimesNotExplicitlySet={\n props?.repeatHourNumbersNTimes === undefined\n }\n selectedValue={selectedHours}\n styles={styles}\n testID=\"duration-scroll-hour\"\n {...otherProps}\n />\n ) : null}\n {!hideMinutes ? (\n <DurationScroll\n ref={minutesDurationScrollRef}\n aggressivelyGetLatestDuration={\n aggressivelyGetLatestDuration\n }\n allowFontScaling={allowFontScaling}\n decelerationRate={decelerationRate}\n disableInfiniteScroll={disableInfiniteScroll}\n initialValue={safeInitialValue.minutes}\n interval={minuteInterval}\n isDisabled={minutesPickerIsDisabled}\n label={minuteLabel ?? \"m\"}\n limit={minuteLimit}\n maximumValue={maximumMinutes}\n onDurationChange={setSelectedMinutes}\n padNumbersWithZero={padMinutesWithZero}\n padWithNItems={safePadWithNItems}\n repeatNumbersNTimes={repeatMinuteNumbersNTimes}\n repeatNumbersNTimesNotExplicitlySet={\n props?.repeatMinuteNumbersNTimes === undefined\n }\n selectedValue={selectedMinutes}\n styles={styles}\n testID=\"duration-scroll-minute\"\n {...otherProps}\n />\n ) : null}\n {!hideSeconds ? (\n <DurationScroll\n ref={secondsDurationScrollRef}\n aggressivelyGetLatestDuration={\n aggressivelyGetLatestDuration\n }\n allowFontScaling={allowFontScaling}\n decelerationRate={decelerationRate}\n disableInfiniteScroll={disableInfiniteScroll}\n initialValue={safeInitialValue.seconds}\n interval={secondInterval}\n isDisabled={secondsPickerIsDisabled}\n label={secondLabel ?? \"s\"}\n limit={secondLimit}\n maximumValue={maximumSeconds}\n onDurationChange={setSelectedSeconds}\n padNumbersWithZero={padSecondsWithZero}\n padWithNItems={safePadWithNItems}\n repeatNumbersNTimes={repeatSecondNumbersNTimes}\n repeatNumbersNTimesNotExplicitlySet={\n props?.repeatSecondNumbersNTimes === undefined\n }\n selectedValue={selectedSeconds}\n styles={styles}\n testID=\"duration-scroll-second\"\n {...otherProps}\n />\n ) : null}\n </View>\n );\n }\n);\n\nexport default React.memo(TimerPicker);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_getSafeInitialValue","_DurationScroll","_interopRequireDefault","_styles","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","resolvePerColumn","value","column","undefined","TimerPicker","forwardRef","props","ref","aggressivelyGetLatestDuration","allowFontScaling","amLabel","dayInterval","dayLabel","dayLimit","daysPickerIsDisabled","decelerationRate","disableInfiniteScroll","hideDays","hideHours","hideMinutes","hideSeconds","hourInterval","hourLabel","hourLimit","hoursPickerIsDisabled","initialValue","maximumDays","maximumHours","maximumMinutes","maximumSeconds","minuteInterval","minuteLabel","minuteLimit","minutesPickerIsDisabled","onDurationChange","padDaysWithZero","padHoursWithZero","padMinutesWithZero","padSecondsWithZero","padWithNItems","pickerContainerProps","pmLabel","repeatDayNumbersNTimes","repeatHourNumbersNTimes","repeatMinuteNumbersNTimes","repeatSecondNumbersNTimes","secondInterval","secondLabel","secondLimit","secondsPickerIsDisabled","styles","customStyles","use12HourPicker","otherProps","useEffect","Audio","console","warn","Haptics","clickSoundAsset","labelOffsetPercentage","pickerLabelGap","safePadWithNItems","useMemo","isNaN","maxPadWithNItems","Math","round","safeInitialValue","getSafeInitialValue","days","hours","minutes","seconds","pickerColumnWidth","generateStyles","selectedDays","setSelectedDays","useState","selectedHours","setSelectedHours","selectedMinutes","setSelectedMinutes","selectedSeconds","setSelectedSeconds","daysDurationScrollRef","useRef","hoursDurationScrollRef","minutesDurationScrollRef","secondsDurationScrollRef","useImperativeHandle","_daysDurationScrollRe","_hoursDurationScrollR","_minutesDurationScrol","_secondsDurationScrol","latestDuration","current","reset","options","_daysDurationScrollRe2","_hoursDurationScrollR2","_minutesDurationScrol2","_secondsDurationScrol2","setValue","_daysDurationScrollRe3","_hoursDurationScrollR3","_minutesDurationScrol3","_secondsDurationScrol3","createElement","View","style","pickerContainer","testID","interval","isDisabled","label","limit","maximumValue","padNumbersWithZero","repeatNumbersNTimes","repeatNumbersNTimesNotExplicitlySet","selectedValue","is12HourPicker","_default","exports","React","memo"],"sources":["TimerPicker.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from \"react\";\n\nimport { View } from \"react-native\";\n\nimport { getSafeInitialValue } from \"../../utils/getSafeInitialValue\";\nimport DurationScroll from \"../DurationScroll\";\nimport type { DurationScrollRef } from \"../DurationScroll\";\nimport { generateStyles } from \"./styles\";\nimport type { PerColumnValue, PickerColumn } from \"./styles\";\nimport type { TimerPickerProps, TimerPickerRef } from \"./types\";\n\nconst resolvePerColumn = (\n value: PerColumnValue | undefined,\n column: PickerColumn\n): number | undefined => {\n if (value == null) {\n return undefined;\n }\n\n if (typeof value === \"number\") {\n return value;\n }\n\n return value[column];\n};\n\nconst TimerPicker = forwardRef<TimerPickerRef, TimerPickerProps>((props, ref) => {\n const {\n aggressivelyGetLatestDuration = false,\n allowFontScaling = false,\n amLabel = \"am\",\n dayInterval = 1,\n dayLabel,\n dayLimit,\n daysPickerIsDisabled = false,\n decelerationRate = 0.88,\n disableInfiniteScroll = false,\n hideDays = true,\n hideHours = false,\n hideMinutes = false,\n hideSeconds = false,\n hourInterval = 1,\n hourLabel,\n hourLimit,\n hoursPickerIsDisabled = false,\n initialValue,\n maximumDays = 30,\n maximumHours = 23,\n maximumMinutes = 59,\n maximumSeconds = 59,\n minuteInterval = 1,\n minuteLabel,\n minuteLimit,\n minutesPickerIsDisabled = false,\n onDurationChange,\n padDaysWithZero = false,\n padHoursWithZero = false,\n padMinutesWithZero = true,\n padSecondsWithZero = true,\n padWithNItems = 1,\n pickerContainerProps,\n pmLabel = \"pm\",\n repeatDayNumbersNTimes = 3,\n repeatHourNumbersNTimes = 8,\n repeatMinuteNumbersNTimes = 3,\n repeatSecondNumbersNTimes = 3,\n secondInterval = 1,\n secondLabel,\n secondLimit,\n secondsPickerIsDisabled = false,\n styles: customStyles,\n use12HourPicker = false,\n ...otherProps\n } = props;\n\n useEffect(() => {\n if (otherProps.Audio) {\n console.warn(\n 'The \"Audio\" prop is deprecated and will be removed in a future version. Please use the \"pickerFeedback\" prop instead.'\n );\n }\n if (otherProps.Haptics) {\n console.warn(\n 'The \"Haptics\" prop is deprecated and will be removed in a future version. Please use the \"pickerFeedback\" prop instead.'\n );\n }\n if (otherProps.clickSoundAsset) {\n console.warn(\n 'The \"clickSoundAsset\" prop is deprecated and will be removed in a future version. Please use the \"pickerFeedback\" prop instead.'\n );\n }\n if (customStyles?.labelOffsetPercentage != null) {\n if (customStyles?.pickerLabelGap != null) {\n console.warn(\n \"labelOffsetPercentage is ignored when pickerLabelGap is set. Please remove labelOffsetPercentage.\"\n );\n } else {\n console.warn(\n 'The \"labelOffsetPercentage\" style prop is deprecated and will be removed in a future version. Please use the \"pickerLabelGap\" style prop instead.'\n );\n }\n }\n }, [\n otherProps.Audio,\n otherProps.Haptics,\n otherProps.clickSoundAsset,\n customStyles?.labelOffsetPercentage,\n customStyles?.pickerLabelGap,\n ]);\n\n const safePadWithNItems = useMemo(() => {\n if (padWithNItems < 0 || isNaN(padWithNItems)) {\n return 0;\n }\n\n const maxPadWithNItems = hideHours ? 15 : 6;\n\n if (padWithNItems > maxPadWithNItems) {\n return maxPadWithNItems;\n }\n\n return Math.round(padWithNItems);\n }, [hideHours, padWithNItems]);\n\n const safeInitialValue = useMemo(\n () =>\n getSafeInitialValue({\n days: initialValue?.days,\n hours: initialValue?.hours,\n minutes: initialValue?.minutes,\n seconds: initialValue?.seconds,\n }),\n [initialValue?.days, initialValue?.hours, initialValue?.minutes, initialValue?.seconds]\n );\n\n const pickerLabelGap = customStyles?.pickerLabelGap;\n const pickerColumnWidth = customStyles?.pickerColumnWidth;\n\n const styles = useMemo(\n () => generateStyles(customStyles),\n\n [customStyles]\n );\n\n const [selectedDays, setSelectedDays] = useState(safeInitialValue.days);\n const [selectedHours, setSelectedHours] = useState(safeInitialValue.hours);\n const [selectedMinutes, setSelectedMinutes] = useState(safeInitialValue.minutes);\n const [selectedSeconds, setSelectedSeconds] = useState(safeInitialValue.seconds);\n\n useEffect(() => {\n onDurationChange?.({\n days: selectedDays,\n hours: selectedHours,\n minutes: selectedMinutes,\n seconds: selectedSeconds,\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selectedDays, selectedHours, selectedMinutes, selectedSeconds]);\n\n const daysDurationScrollRef = useRef<DurationScrollRef>(null);\n const hoursDurationScrollRef = useRef<DurationScrollRef>(null);\n const minutesDurationScrollRef = useRef<DurationScrollRef>(null);\n const secondsDurationScrollRef = useRef<DurationScrollRef>(null);\n\n useImperativeHandle(ref, () => ({\n latestDuration: {\n days: daysDurationScrollRef.current?.latestDuration,\n hours: hoursDurationScrollRef.current?.latestDuration,\n minutes: minutesDurationScrollRef.current?.latestDuration,\n seconds: secondsDurationScrollRef.current?.latestDuration,\n },\n reset: (options) => {\n setSelectedDays(safeInitialValue.days);\n setSelectedHours(safeInitialValue.hours);\n setSelectedMinutes(safeInitialValue.minutes);\n setSelectedSeconds(safeInitialValue.seconds);\n daysDurationScrollRef.current?.reset(options);\n hoursDurationScrollRef.current?.reset(options);\n minutesDurationScrollRef.current?.reset(options);\n secondsDurationScrollRef.current?.reset(options);\n },\n setValue: (value, options) => {\n if (value.days !== undefined) {\n setSelectedDays(value.days);\n daysDurationScrollRef.current?.setValue(value.days, options);\n }\n if (value.hours !== undefined) {\n setSelectedHours(value.hours);\n hoursDurationScrollRef.current?.setValue(value.hours, options);\n }\n if (value.minutes !== undefined) {\n setSelectedMinutes(value.minutes);\n minutesDurationScrollRef.current?.setValue(value.minutes, options);\n }\n if (value.seconds !== undefined) {\n setSelectedSeconds(value.seconds);\n secondsDurationScrollRef.current?.setValue(value.seconds, options);\n }\n },\n }));\n\n return (\n <View {...pickerContainerProps} style={styles.pickerContainer} testID=\"timer-picker\">\n {!hideDays ? (\n <DurationScroll\n ref={daysDurationScrollRef}\n aggressivelyGetLatestDuration={aggressivelyGetLatestDuration}\n allowFontScaling={allowFontScaling}\n disableInfiniteScroll={disableInfiniteScroll}\n initialValue={safeInitialValue.days}\n interval={dayInterval}\n isDisabled={daysPickerIsDisabled}\n label={dayLabel ?? \"d\"}\n limit={dayLimit}\n maximumValue={maximumDays}\n onDurationChange={setSelectedDays}\n padNumbersWithZero={padDaysWithZero}\n padWithNItems={safePadWithNItems}\n pickerColumnWidth={resolvePerColumn(pickerColumnWidth, \"days\")}\n pickerLabelGap={resolvePerColumn(pickerLabelGap, \"days\")}\n repeatNumbersNTimes={repeatDayNumbersNTimes}\n repeatNumbersNTimesNotExplicitlySet={props?.repeatDayNumbersNTimes === undefined}\n selectedValue={selectedDays}\n styles={styles}\n testID=\"duration-scroll-day\"\n {...otherProps}\n />\n ) : null}\n {!hideHours ? (\n <DurationScroll\n ref={hoursDurationScrollRef}\n aggressivelyGetLatestDuration={aggressivelyGetLatestDuration}\n allowFontScaling={allowFontScaling}\n amLabel={amLabel}\n decelerationRate={decelerationRate}\n disableInfiniteScroll={disableInfiniteScroll}\n initialValue={safeInitialValue.hours}\n interval={hourInterval}\n is12HourPicker={use12HourPicker}\n isDisabled={hoursPickerIsDisabled}\n label={hourLabel ?? (!use12HourPicker ? \"h\" : undefined)}\n limit={hourLimit}\n maximumValue={maximumHours}\n onDurationChange={setSelectedHours}\n padNumbersWithZero={padHoursWithZero}\n padWithNItems={safePadWithNItems}\n pickerColumnWidth={resolvePerColumn(pickerColumnWidth, \"hours\")}\n pickerLabelGap={resolvePerColumn(pickerLabelGap, \"hours\")}\n pmLabel={pmLabel}\n repeatNumbersNTimes={repeatHourNumbersNTimes}\n repeatNumbersNTimesNotExplicitlySet={props?.repeatHourNumbersNTimes === undefined}\n selectedValue={selectedHours}\n styles={styles}\n testID=\"duration-scroll-hour\"\n {...otherProps}\n />\n ) : null}\n {!hideMinutes ? (\n <DurationScroll\n ref={minutesDurationScrollRef}\n aggressivelyGetLatestDuration={aggressivelyGetLatestDuration}\n allowFontScaling={allowFontScaling}\n decelerationRate={decelerationRate}\n disableInfiniteScroll={disableInfiniteScroll}\n initialValue={safeInitialValue.minutes}\n interval={minuteInterval}\n isDisabled={minutesPickerIsDisabled}\n label={minuteLabel ?? \"m\"}\n limit={minuteLimit}\n maximumValue={maximumMinutes}\n onDurationChange={setSelectedMinutes}\n padNumbersWithZero={padMinutesWithZero}\n padWithNItems={safePadWithNItems}\n pickerColumnWidth={resolvePerColumn(pickerColumnWidth, \"minutes\")}\n pickerLabelGap={resolvePerColumn(pickerLabelGap, \"minutes\")}\n repeatNumbersNTimes={repeatMinuteNumbersNTimes}\n repeatNumbersNTimesNotExplicitlySet={props?.repeatMinuteNumbersNTimes === undefined}\n selectedValue={selectedMinutes}\n styles={styles}\n testID=\"duration-scroll-minute\"\n {...otherProps}\n />\n ) : null}\n {!hideSeconds ? (\n <DurationScroll\n ref={secondsDurationScrollRef}\n aggressivelyGetLatestDuration={aggressivelyGetLatestDuration}\n allowFontScaling={allowFontScaling}\n decelerationRate={decelerationRate}\n disableInfiniteScroll={disableInfiniteScroll}\n initialValue={safeInitialValue.seconds}\n interval={secondInterval}\n isDisabled={secondsPickerIsDisabled}\n label={secondLabel ?? \"s\"}\n limit={secondLimit}\n maximumValue={maximumSeconds}\n onDurationChange={setSelectedSeconds}\n padNumbersWithZero={padSecondsWithZero}\n padWithNItems={safePadWithNItems}\n pickerColumnWidth={resolvePerColumn(pickerColumnWidth, \"seconds\")}\n pickerLabelGap={resolvePerColumn(pickerLabelGap, \"seconds\")}\n repeatNumbersNTimes={repeatSecondNumbersNTimes}\n repeatNumbersNTimesNotExplicitlySet={props?.repeatSecondNumbersNTimes === undefined}\n selectedValue={selectedSeconds}\n styles={styles}\n testID=\"duration-scroll-second\"\n {...otherProps}\n />\n ) : null}\n </View>\n );\n});\n\nexport default React.memo(TimerPicker);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_TimerPicker","_interopRequireDefault","require","_types","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_styles","e","__esModule","default"],"sources":["index.ts"],"sourcesContent":["export { default } from \"./TimerPicker\";\n\nexport * from \"./types\";\n\nexport * from \"./styles\";\n
|
|
1
|
+
{"version":3,"names":["_TimerPicker","_interopRequireDefault","require","_types","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_styles","e","__esModule","default"],"sources":["index.ts"],"sourcesContent":["export { default } from \"./TimerPicker\";\n\nexport * from \"./types\";\n\nexport * from \"./styles\";\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AAAAE,MAAA,CAAAC,IAAA,CAAAF,MAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,MAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,MAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AAEA,IAAAS,OAAA,GAAAd,OAAA;AAAAE,MAAA,CAAAC,IAAA,CAAAW,OAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAS,OAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,OAAA,CAAAT,GAAA;IAAA;EAAA;AAAA;AAAyB,SAAAN,uBAAAgB,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA","ignoreList":[]}
|
|
@@ -22,107 +22,117 @@ const generateStyles = customStyles => {
|
|
|
22
22
|
const pickerLabelVerticalOffset = pickerItemFontSize - pickerLabelFontSize - 1;
|
|
23
23
|
const pickerAmPmVerticalOffset = pickerItemFontSize - pickerAmPmFontSize - 1;
|
|
24
24
|
|
|
25
|
-
//
|
|
26
|
-
//
|
|
27
|
-
//
|
|
25
|
+
// Determine whether to use the legacy percentage-based label positioning.
|
|
26
|
+
// The new pixel-based system (pickerLabelGap) is the default.
|
|
27
|
+
// The old system is only used when labelOffsetPercentage is explicitly set
|
|
28
|
+
// without pickerLabelGap.
|
|
29
|
+
const useLegacyLabelPosition = (customStyles === null || customStyles === void 0 ? void 0 : customStyles.labelOffsetPercentage) != null && (customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerLabelGap) == null;
|
|
28
30
|
const extraLabelOffsetPercentage = (customStyles === null || customStyles === void 0 ? void 0 : customStyles.labelOffsetPercentage) ?? 8;
|
|
29
31
|
const baseLeftOffsetPercentage = 70;
|
|
30
32
|
const labelOffsetPercentage = baseLeftOffsetPercentage + extraLabelOffsetPercentage;
|
|
31
33
|
return _reactNative.StyleSheet.create({
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
width: "100%",
|
|
36
|
-
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerContainer)
|
|
34
|
+
disabledPickerContainer: {
|
|
35
|
+
opacity: 0.4,
|
|
36
|
+
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.disabledPickerContainer)
|
|
37
37
|
},
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
bottom: 0,
|
|
42
|
-
left: `${labelOffsetPercentage}%`,
|
|
43
|
-
justifyContent: "center",
|
|
44
|
-
marginTop: pickerLabelVerticalOffset,
|
|
45
|
-
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerLabelContainer)
|
|
38
|
+
disabledPickerItem: {
|
|
39
|
+
opacity: 0.2,
|
|
40
|
+
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.disabledPickerItem)
|
|
46
41
|
},
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.
|
|
42
|
+
durationScrollFlatList: {
|
|
43
|
+
marginRight: "-25%",
|
|
44
|
+
// These paddings allow the inner am/pm label to
|
|
45
|
+
// spill out of the flatlist
|
|
46
|
+
paddingRight: "25%",
|
|
47
|
+
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.durationScrollFlatList)
|
|
53
48
|
},
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
justifyContent: "center",
|
|
58
|
-
alignItems: "center",
|
|
59
|
-
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerItemContainer)
|
|
49
|
+
durationScrollFlatListContainer: {
|
|
50
|
+
flex: 1,
|
|
51
|
+
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.durationScrollFlatListContainer)
|
|
60
52
|
},
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
fontSize: 25,
|
|
64
|
-
overflow: "visible",
|
|
65
|
-
color: textColor,
|
|
66
|
-
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.text),
|
|
67
|
-
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerItem)
|
|
53
|
+
durationScrollFlatListContentContainer: {
|
|
54
|
+
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.durationScrollFlatListContentContainer)
|
|
68
55
|
},
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
fontSize: 25,
|
|
72
|
-
overflow: "visible",
|
|
73
|
-
color: textColor,
|
|
74
|
-
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.text),
|
|
75
|
-
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerItem),
|
|
76
|
-
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.selectedPickerItem)
|
|
56
|
+
maskedView: {
|
|
57
|
+
flex: 1
|
|
77
58
|
},
|
|
78
59
|
pickerAmPmContainer: {
|
|
79
|
-
position: "absolute",
|
|
80
|
-
top: 0,
|
|
81
60
|
bottom: 0,
|
|
82
|
-
left: `${labelOffsetPercentage}%`,
|
|
83
61
|
justifyContent: "center",
|
|
84
62
|
marginTop: pickerAmPmVerticalOffset,
|
|
63
|
+
position: "absolute",
|
|
64
|
+
top: 0,
|
|
65
|
+
// Only apply percentage-based left when using legacy positioning.
|
|
66
|
+
// The new pixel-based positioning is applied per-column in PickerItem.
|
|
67
|
+
...(useLegacyLabelPosition ? {
|
|
68
|
+
left: `${labelOffsetPercentage}%`
|
|
69
|
+
} : undefined),
|
|
85
70
|
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerLabelContainer),
|
|
86
71
|
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerAmPmContainer)
|
|
87
72
|
},
|
|
88
73
|
pickerAmPmLabel: {
|
|
74
|
+
color: textColor,
|
|
89
75
|
fontSize: 18,
|
|
90
76
|
fontWeight: "bold",
|
|
91
|
-
color: textColor,
|
|
92
77
|
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.text),
|
|
93
78
|
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerLabel),
|
|
94
79
|
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerAmPmLabel)
|
|
95
80
|
},
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
opacity: 0.2,
|
|
102
|
-
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.disabledPickerItem)
|
|
103
|
-
},
|
|
104
|
-
maskedView: {
|
|
105
|
-
flex: 1
|
|
81
|
+
pickerContainer: {
|
|
82
|
+
backgroundColor,
|
|
83
|
+
flexDirection: "row",
|
|
84
|
+
width: "100%",
|
|
85
|
+
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerContainer)
|
|
106
86
|
},
|
|
107
87
|
pickerGradientOverlay: {
|
|
88
|
+
height: "100%",
|
|
108
89
|
position: "absolute",
|
|
109
90
|
width: "100%",
|
|
110
|
-
height: "100%",
|
|
111
91
|
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerGradientOverlay)
|
|
112
92
|
},
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
93
|
+
pickerItem: {
|
|
94
|
+
color: textColor,
|
|
95
|
+
fontSize: 25,
|
|
96
|
+
overflow: "visible",
|
|
97
|
+
textAlignVertical: "center",
|
|
98
|
+
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.text),
|
|
99
|
+
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerItem)
|
|
116
100
|
},
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.
|
|
101
|
+
pickerItemContainer: {
|
|
102
|
+
alignItems: "center",
|
|
103
|
+
flexDirection: "row",
|
|
104
|
+
height: 50,
|
|
105
|
+
justifyContent: "center",
|
|
106
|
+
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerItemContainer)
|
|
123
107
|
},
|
|
124
|
-
|
|
125
|
-
|
|
108
|
+
pickerLabel: {
|
|
109
|
+
color: textColor,
|
|
110
|
+
fontSize: 18,
|
|
111
|
+
fontWeight: "bold",
|
|
112
|
+
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.text),
|
|
113
|
+
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerLabel)
|
|
114
|
+
},
|
|
115
|
+
pickerLabelContainer: {
|
|
116
|
+
bottom: 0,
|
|
117
|
+
justifyContent: "center",
|
|
118
|
+
marginTop: pickerLabelVerticalOffset,
|
|
119
|
+
position: "absolute",
|
|
120
|
+
top: 0,
|
|
121
|
+
// Only apply percentage-based left when using legacy positioning.
|
|
122
|
+
// The new pixel-based positioning is applied per-column in DurationScroll.
|
|
123
|
+
...(useLegacyLabelPosition ? {
|
|
124
|
+
left: `${labelOffsetPercentage}%`
|
|
125
|
+
} : undefined),
|
|
126
|
+
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerLabelContainer)
|
|
127
|
+
},
|
|
128
|
+
selectedPickerItem: {
|
|
129
|
+
color: textColor,
|
|
130
|
+
fontSize: 25,
|
|
131
|
+
overflow: "visible",
|
|
132
|
+
textAlignVertical: "center",
|
|
133
|
+
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.text),
|
|
134
|
+
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.pickerItem),
|
|
135
|
+
...(customStyles === null || customStyles === void 0 ? void 0 : customStyles.selectedPickerItem)
|
|
126
136
|
}
|
|
127
137
|
});
|
|
128
138
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","DARK_MODE_BACKGROUND_COLOR","DARK_MODE_TEXT_COLOR","LIGHT_MODE_BACKGROUND_COLOR","LIGHT_MODE_TEXT_COLOR","generateStyles","customStyles","_customStyles$pickerL","_customStyles$text","_customStyles$pickerA","_customStyles$pickerL2","_customStyles$text2","_customStyles$pickerI","_customStyles$text3","backgroundColor","theme","textColor","pickerLabelFontSize","pickerLabel","fontSize","text","pickerAmPmFontSize","pickerAmPmLabel","pickerItemFontSize","pickerItem","pickerLabelVerticalOffset","pickerAmPmVerticalOffset","extraLabelOffsetPercentage","labelOffsetPercentage","baseLeftOffsetPercentage","StyleSheet","create","pickerContainer","flexDirection","width","pickerLabelContainer","position","top","bottom","left","justifyContent","marginTop","fontWeight","color","pickerItemContainer","height","alignItems","textAlignVertical","overflow","selectedPickerItem","pickerAmPmContainer","disabledPickerContainer","opacity","disabledPickerItem","maskedView","flex","pickerGradientOverlay","durationScrollFlatListContainer","durationScrollFlatList","paddingRight","marginRight","durationScrollFlatListContentContainer","exports"],"sources":["styles.ts"],"sourcesContent":["\nimport { StyleSheet } from \"react-native\";\nimport type { TextStyle, ViewStyle } from \"react-native\";\n\nexport interface CustomTimerPickerStyles {\n backgroundColor?: string;\n disabledPickerContainer?: ViewStyle;\n disabledPickerItem?: TextStyle;\n durationScrollFlatList?: ViewStyle;\n durationScrollFlatListContainer?: ViewStyle;\n durationScrollFlatListContentContainer?: ViewStyle;\n labelOffsetPercentage?: number;\n pickerAmPmContainer?: ViewStyle;\n pickerAmPmLabel?: TextStyle;\n pickerContainer?: ViewStyle & { backgroundColor?: string };\n pickerGradientOverlay?: ViewStyle;\n pickerItem?: TextStyle;\n pickerItemContainer?: ViewStyle & { height?: number };\n pickerLabel?: TextStyle;\n pickerLabelContainer?: ViewStyle;\n selectedPickerItem?: TextStyle;\n text?: TextStyle;\n theme?: \"light\" | \"dark\";\n}\n\nconst DARK_MODE_BACKGROUND_COLOR = \"#232323\";\nconst DARK_MODE_TEXT_COLOR = \"#E9E9E9\";\nconst LIGHT_MODE_BACKGROUND_COLOR = \"#F1F1F1\";\nconst LIGHT_MODE_TEXT_COLOR = \"#1B1B1B\";\n\nexport const generateStyles = (\n customStyles: CustomTimerPickerStyles | undefined\n) => {\n const backgroundColor =\n customStyles?.backgroundColor ??\n (customStyles?.theme === \"dark\"\n ? DARK_MODE_BACKGROUND_COLOR\n : LIGHT_MODE_BACKGROUND_COLOR);\n\n const textColor =\n customStyles?.theme === \"dark\"\n ? DARK_MODE_TEXT_COLOR\n : LIGHT_MODE_TEXT_COLOR;\n\n const pickerLabelFontSize =\n customStyles?.pickerLabel?.fontSize ??\n customStyles?.text?.fontSize ??\n 18;\n const pickerAmPmFontSize =\n customStyles?.pickerAmPmLabel?.fontSize ??\n customStyles?.pickerLabel?.fontSize ??\n customStyles?.text?.fontSize ??\n 18;\n const pickerItemFontSize =\n customStyles?.pickerItem?.fontSize ??\n customStyles?.text?.fontSize ??\n 25;\n\n // This offset makes the picker label appear to be aligned with the picker item\n // despite them having different font sizes\n const pickerLabelVerticalOffset =\n pickerItemFontSize - pickerLabelFontSize - 1;\n const pickerAmPmVerticalOffset =\n pickerItemFontSize - pickerAmPmFontSize - 1;\n\n // The label is absolutely positioned, so we need to offset it for it to appear\n // in the correct position. We offset it to the left of the container so that\n // the width of the label doesn't impact its position.\n const extraLabelOffsetPercentage = customStyles?.labelOffsetPercentage ?? 8;\n const baseLeftOffsetPercentage = 70;\n const labelOffsetPercentage =\n baseLeftOffsetPercentage + extraLabelOffsetPercentage;\n\n return StyleSheet.create({\n pickerContainer: {\n flexDirection: \"row\",\n backgroundColor,\n width: \"100%\",\n ...customStyles?.pickerContainer,\n },\n pickerLabelContainer: {\n position: \"absolute\",\n top: 0,\n bottom: 0,\n left: `${labelOffsetPercentage}%`,\n justifyContent: \"center\",\n marginTop: pickerLabelVerticalOffset,\n ...customStyles?.pickerLabelContainer,\n },\n pickerLabel: {\n fontSize: 18,\n fontWeight: \"bold\",\n color: textColor,\n ...customStyles?.text,\n ...customStyles?.pickerLabel,\n },\n pickerItemContainer: {\n flexDirection: \"row\",\n height: 50,\n justifyContent: \"center\",\n alignItems: \"center\",\n ...customStyles?.pickerItemContainer,\n },\n pickerItem: {\n textAlignVertical: \"center\",\n fontSize: 25,\n overflow: \"visible\",\n color: textColor,\n ...customStyles?.text,\n ...customStyles?.pickerItem,\n },\n selectedPickerItem: {\n textAlignVertical: \"center\",\n fontSize: 25,\n overflow: \"visible\",\n color: textColor,\n ...customStyles?.text,\n ...customStyles?.pickerItem,\n ...customStyles?.selectedPickerItem,\n },\n pickerAmPmContainer: {\n position: \"absolute\",\n top: 0,\n bottom: 0,\n left: `${labelOffsetPercentage}%`,\n justifyContent: \"center\",\n marginTop: pickerAmPmVerticalOffset,\n ...customStyles?.pickerLabelContainer,\n ...customStyles?.pickerAmPmContainer,\n },\n pickerAmPmLabel: {\n fontSize: 18,\n fontWeight: \"bold\",\n color: textColor,\n ...customStyles?.text,\n ...customStyles?.pickerLabel,\n ...customStyles?.pickerAmPmLabel,\n },\n disabledPickerContainer: {\n opacity: 0.4,\n ...customStyles?.disabledPickerContainer,\n },\n disabledPickerItem: {\n opacity: 0.2,\n ...customStyles?.disabledPickerItem,\n },\n maskedView: {\n flex: 1,\n },\n pickerGradientOverlay: {\n position: \"absolute\",\n width: \"100%\",\n height: \"100%\",\n ...customStyles?.pickerGradientOverlay,\n },\n durationScrollFlatListContainer: {\n flex: 1,\n ...customStyles?.durationScrollFlatListContainer,\n },\n durationScrollFlatList: {\n // These paddings allow the inner am/pm label to\n // spill out of the flatlist\n paddingRight: \"25%\",\n marginRight: \"-25%\",\n ...customStyles?.durationScrollFlatList,\n },\n durationScrollFlatListContentContainer: {\n ...customStyles?.durationScrollFlatListContentContainer,\n },\n });\n};"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAwBA,MAAMC,0BAA0B,GAAG,SAAS;AAC5C,MAAMC,oBAAoB,GAAG,SAAS;AACtC,MAAMC,2BAA2B,GAAG,SAAS;AAC7C,MAAMC,qBAAqB,GAAG,SAAS;AAEhC,MAAMC,cAAc,GACvBC,YAAiD,IAChD;EAAA,IAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,sBAAA,EAAAC,mBAAA,EAAAC,qBAAA,EAAAC,mBAAA;EACD,MAAMC,eAAe,GACjB,CAAAR,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEQ,eAAe,MAC5B,CAAAR,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAES,KAAK,MAAK,MAAM,GACzBd,0BAA0B,GAC1BE,2BAA2B,CAAC;EAEtC,MAAMa,SAAS,GACX,CAAAV,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAES,KAAK,MAAK,MAAM,GACxBb,oBAAoB,GACpBE,qBAAqB;EAE/B,MAAMa,mBAAmB,GACrB,CAAAX,YAAY,aAAZA,YAAY,gBAAAC,qBAAA,GAAZD,YAAY,CAAEY,WAAW,cAAAX,qBAAA,uBAAzBA,qBAAA,CAA2BY,QAAQ,MACnCb,YAAY,aAAZA,YAAY,gBAAAE,kBAAA,GAAZF,YAAY,CAAEc,IAAI,cAAAZ,kBAAA,uBAAlBA,kBAAA,CAAoBW,QAAQ,KAC5B,EAAE;EACN,MAAME,kBAAkB,GACpB,CAAAf,YAAY,aAAZA,YAAY,gBAAAG,qBAAA,GAAZH,YAAY,CAAEgB,eAAe,cAAAb,qBAAA,uBAA7BA,qBAAA,CAA+BU,QAAQ,MACvCb,YAAY,aAAZA,YAAY,gBAAAI,sBAAA,GAAZJ,YAAY,CAAEY,WAAW,cAAAR,sBAAA,uBAAzBA,sBAAA,CAA2BS,QAAQ,MACnCb,YAAY,aAAZA,YAAY,gBAAAK,mBAAA,GAAZL,YAAY,CAAEc,IAAI,cAAAT,mBAAA,uBAAlBA,mBAAA,CAAoBQ,QAAQ,KAC5B,EAAE;EACN,MAAMI,kBAAkB,GACpB,CAAAjB,YAAY,aAAZA,YAAY,gBAAAM,qBAAA,GAAZN,YAAY,CAAEkB,UAAU,cAAAZ,qBAAA,uBAAxBA,qBAAA,CAA0BO,QAAQ,MAClCb,YAAY,aAAZA,YAAY,gBAAAO,mBAAA,GAAZP,YAAY,CAAEc,IAAI,cAAAP,mBAAA,uBAAlBA,mBAAA,CAAoBM,QAAQ,KAC5B,EAAE;;EAEN;EACA;EACA,MAAMM,yBAAyB,GAC3BF,kBAAkB,GAAGN,mBAAmB,GAAG,CAAC;EAChD,MAAMS,wBAAwB,GAC1BH,kBAAkB,GAAGF,kBAAkB,GAAG,CAAC;;EAE/C;EACA;EACA;EACA,MAAMM,0BAA0B,GAAG,CAAArB,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEsB,qBAAqB,KAAI,CAAC;EAC3E,MAAMC,wBAAwB,GAAG,EAAE;EACnC,MAAMD,qBAAqB,GACvBC,wBAAwB,GAAGF,0BAA0B;EAEzD,OAAOG,uBAAU,CAACC,MAAM,CAAC;IACrBC,eAAe,EAAE;MACbC,aAAa,EAAE,KAAK;MACpBnB,eAAe;MACfoB,KAAK,EAAE,MAAM;MACb,IAAG5B,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAE0B,eAAe;IACpC,CAAC;IACDG,oBAAoB,EAAE;MAClBC,QAAQ,EAAE,UAAU;MACpBC,GAAG,EAAE,CAAC;MACNC,MAAM,EAAE,CAAC;MACTC,IAAI,EAAE,GAAGX,qBAAqB,GAAG;MACjCY,cAAc,EAAE,QAAQ;MACxBC,SAAS,EAAEhB,yBAAyB;MACpC,IAAGnB,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAE6B,oBAAoB;IACzC,CAAC;IACDjB,WAAW,EAAE;MACTC,QAAQ,EAAE,EAAE;MACZuB,UAAU,EAAE,MAAM;MAClBC,KAAK,EAAE3B,SAAS;MAChB,IAAGV,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEc,IAAI;MACrB,IAAGd,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEY,WAAW;IAChC,CAAC;IACD0B,mBAAmB,EAAE;MACjBX,aAAa,EAAE,KAAK;MACpBY,MAAM,EAAE,EAAE;MACVL,cAAc,EAAE,QAAQ;MACxBM,UAAU,EAAE,QAAQ;MACpB,IAAGxC,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEsC,mBAAmB;IACxC,CAAC;IACDpB,UAAU,EAAE;MACRuB,iBAAiB,EAAE,QAAQ;MAC3B5B,QAAQ,EAAE,EAAE;MACZ6B,QAAQ,EAAE,SAAS;MACnBL,KAAK,EAAE3B,SAAS;MAChB,IAAGV,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEc,IAAI;MACrB,IAAGd,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEkB,UAAU;IAC/B,CAAC;IACDyB,kBAAkB,EAAE;MAChBF,iBAAiB,EAAE,QAAQ;MAC3B5B,QAAQ,EAAE,EAAE;MACZ6B,QAAQ,EAAE,SAAS;MACnBL,KAAK,EAAE3B,SAAS;MAChB,IAAGV,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEc,IAAI;MACrB,IAAGd,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEkB,UAAU;MAC3B,IAAGlB,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAE2C,kBAAkB;IACvC,CAAC;IACDC,mBAAmB,EAAE;MACjBd,QAAQ,EAAE,UAAU;MACpBC,GAAG,EAAE,CAAC;MACNC,MAAM,EAAE,CAAC;MACTC,IAAI,EAAE,GAAGX,qBAAqB,GAAG;MACjCY,cAAc,EAAE,QAAQ;MACxBC,SAAS,EAAEf,wBAAwB;MACnC,IAAGpB,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAE6B,oBAAoB;MACrC,IAAG7B,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAE4C,mBAAmB;IACxC,CAAC;IACD5B,eAAe,EAAE;MACbH,QAAQ,EAAE,EAAE;MACZuB,UAAU,EAAE,MAAM;MAClBC,KAAK,EAAE3B,SAAS;MAChB,IAAGV,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEc,IAAI;MACrB,IAAGd,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEY,WAAW;MAC5B,IAAGZ,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEgB,eAAe;IACpC,CAAC;IACD6B,uBAAuB,EAAE;MACrBC,OAAO,EAAE,GAAG;MACZ,IAAG9C,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAE6C,uBAAuB;IAC5C,CAAC;IACDE,kBAAkB,EAAE;MAChBD,OAAO,EAAE,GAAG;MACZ,IAAG9C,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAE+C,kBAAkB;IACvC,CAAC;IACDC,UAAU,EAAE;MACRC,IAAI,EAAE;IACV,CAAC;IACDC,qBAAqB,EAAE;MACnBpB,QAAQ,EAAE,UAAU;MACpBF,KAAK,EAAE,MAAM;MACbW,MAAM,EAAE,MAAM;MACd,IAAGvC,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEkD,qBAAqB;IAC1C,CAAC;IACDC,+BAA+B,EAAE;MAC7BF,IAAI,EAAE,CAAC;MACP,IAAGjD,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEmD,+BAA+B;IACpD,CAAC;IACDC,sBAAsB,EAAE;MACpB;MACA;MACAC,YAAY,EAAE,KAAK;MACnBC,WAAW,EAAE,MAAM;MACnB,IAAGtD,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEoD,sBAAsB;IAC3C,CAAC;IACDG,sCAAsC,EAAE;MACpC,IAAGvD,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEuD,sCAAsC;IAC3D;EACJ,CAAC,CAAC;AACN,CAAC;AAACC,OAAA,CAAAzD,cAAA,GAAAA,cAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_reactNative","require","DARK_MODE_BACKGROUND_COLOR","DARK_MODE_TEXT_COLOR","LIGHT_MODE_BACKGROUND_COLOR","LIGHT_MODE_TEXT_COLOR","generateStyles","customStyles","_customStyles$pickerL","_customStyles$text","_customStyles$pickerA","_customStyles$pickerL2","_customStyles$text2","_customStyles$pickerI","_customStyles$text3","backgroundColor","theme","textColor","pickerLabelFontSize","pickerLabel","fontSize","text","pickerAmPmFontSize","pickerAmPmLabel","pickerItemFontSize","pickerItem","pickerLabelVerticalOffset","pickerAmPmVerticalOffset","useLegacyLabelPosition","labelOffsetPercentage","pickerLabelGap","extraLabelOffsetPercentage","baseLeftOffsetPercentage","StyleSheet","create","disabledPickerContainer","opacity","disabledPickerItem","durationScrollFlatList","marginRight","paddingRight","durationScrollFlatListContainer","flex","durationScrollFlatListContentContainer","maskedView","pickerAmPmContainer","bottom","justifyContent","marginTop","position","top","left","undefined","pickerLabelContainer","color","fontWeight","pickerContainer","flexDirection","width","pickerGradientOverlay","height","overflow","textAlignVertical","pickerItemContainer","alignItems","selectedPickerItem","exports"],"sources":["styles.ts"],"sourcesContent":["import { StyleSheet } from \"react-native\";\nimport type { TextStyle, ViewStyle } from \"react-native\";\n\nexport type PickerColumn = \"days\" | \"hours\" | \"minutes\" | \"seconds\";\n\nexport type PerColumnValue = number | Partial<Record<PickerColumn, number>>;\n\nexport interface CustomTimerPickerStyles {\n backgroundColor?: string;\n disabledPickerContainer?: ViewStyle;\n disabledPickerItem?: TextStyle;\n durationScrollFlatList?: ViewStyle;\n durationScrollFlatListContainer?: ViewStyle;\n durationScrollFlatListContentContainer?: ViewStyle;\n /** @deprecated Use pickerLabelGap instead. Will be removed in a future version. */\n labelOffsetPercentage?: number;\n pickerAmPmContainer?: ViewStyle;\n pickerAmPmLabel?: TextStyle;\n pickerColumnWidth?: PerColumnValue;\n pickerContainer?: ViewStyle & { backgroundColor?: string };\n pickerGradientOverlay?: ViewStyle;\n pickerItem?: TextStyle;\n pickerItemContainer?: ViewStyle & { height?: number };\n pickerLabel?: TextStyle;\n pickerLabelContainer?: ViewStyle;\n pickerLabelGap?: PerColumnValue;\n selectedPickerItem?: TextStyle;\n text?: TextStyle;\n theme?: \"light\" | \"dark\";\n}\n\nconst DARK_MODE_BACKGROUND_COLOR = \"#232323\";\nconst DARK_MODE_TEXT_COLOR = \"#E9E9E9\";\nconst LIGHT_MODE_BACKGROUND_COLOR = \"#F1F1F1\";\nconst LIGHT_MODE_TEXT_COLOR = \"#1B1B1B\";\n\nexport const generateStyles = (customStyles: CustomTimerPickerStyles | undefined) => {\n const backgroundColor =\n customStyles?.backgroundColor ??\n (customStyles?.theme === \"dark\" ? DARK_MODE_BACKGROUND_COLOR : LIGHT_MODE_BACKGROUND_COLOR);\n\n const textColor = customStyles?.theme === \"dark\" ? DARK_MODE_TEXT_COLOR : LIGHT_MODE_TEXT_COLOR;\n\n const pickerLabelFontSize =\n customStyles?.pickerLabel?.fontSize ?? customStyles?.text?.fontSize ?? 18;\n const pickerAmPmFontSize =\n customStyles?.pickerAmPmLabel?.fontSize ??\n customStyles?.pickerLabel?.fontSize ??\n customStyles?.text?.fontSize ??\n 18;\n const pickerItemFontSize =\n customStyles?.pickerItem?.fontSize ?? customStyles?.text?.fontSize ?? 25;\n\n // This offset makes the picker label appear to be aligned with the picker item\n // despite them having different font sizes\n const pickerLabelVerticalOffset = pickerItemFontSize - pickerLabelFontSize - 1;\n const pickerAmPmVerticalOffset = pickerItemFontSize - pickerAmPmFontSize - 1;\n\n // Determine whether to use the legacy percentage-based label positioning.\n // The new pixel-based system (pickerLabelGap) is the default.\n // The old system is only used when labelOffsetPercentage is explicitly set\n // without pickerLabelGap.\n const useLegacyLabelPosition =\n customStyles?.labelOffsetPercentage != null && customStyles?.pickerLabelGap == null;\n\n const extraLabelOffsetPercentage = customStyles?.labelOffsetPercentage ?? 8;\n const baseLeftOffsetPercentage = 70;\n const labelOffsetPercentage = baseLeftOffsetPercentage + extraLabelOffsetPercentage;\n\n return StyleSheet.create({\n disabledPickerContainer: {\n opacity: 0.4,\n ...customStyles?.disabledPickerContainer,\n },\n disabledPickerItem: {\n opacity: 0.2,\n ...customStyles?.disabledPickerItem,\n },\n durationScrollFlatList: {\n marginRight: \"-25%\",\n // These paddings allow the inner am/pm label to\n // spill out of the flatlist\n paddingRight: \"25%\",\n ...customStyles?.durationScrollFlatList,\n },\n durationScrollFlatListContainer: {\n flex: 1,\n ...customStyles?.durationScrollFlatListContainer,\n },\n durationScrollFlatListContentContainer: {\n ...customStyles?.durationScrollFlatListContentContainer,\n },\n maskedView: {\n flex: 1,\n },\n pickerAmPmContainer: {\n bottom: 0,\n justifyContent: \"center\",\n marginTop: pickerAmPmVerticalOffset,\n position: \"absolute\",\n top: 0,\n // Only apply percentage-based left when using legacy positioning.\n // The new pixel-based positioning is applied per-column in PickerItem.\n ...(useLegacyLabelPosition ? { left: `${labelOffsetPercentage}%` } : undefined),\n ...customStyles?.pickerLabelContainer,\n ...customStyles?.pickerAmPmContainer,\n },\n pickerAmPmLabel: {\n color: textColor,\n fontSize: 18,\n fontWeight: \"bold\",\n ...customStyles?.text,\n ...customStyles?.pickerLabel,\n ...customStyles?.pickerAmPmLabel,\n },\n pickerContainer: {\n backgroundColor,\n flexDirection: \"row\",\n width: \"100%\",\n ...customStyles?.pickerContainer,\n },\n pickerGradientOverlay: {\n height: \"100%\",\n position: \"absolute\",\n width: \"100%\",\n ...customStyles?.pickerGradientOverlay,\n },\n pickerItem: {\n color: textColor,\n fontSize: 25,\n overflow: \"visible\",\n textAlignVertical: \"center\",\n ...customStyles?.text,\n ...customStyles?.pickerItem,\n },\n pickerItemContainer: {\n alignItems: \"center\",\n flexDirection: \"row\",\n height: 50,\n justifyContent: \"center\",\n ...customStyles?.pickerItemContainer,\n },\n pickerLabel: {\n color: textColor,\n fontSize: 18,\n fontWeight: \"bold\",\n ...customStyles?.text,\n ...customStyles?.pickerLabel,\n },\n pickerLabelContainer: {\n bottom: 0,\n justifyContent: \"center\",\n marginTop: pickerLabelVerticalOffset,\n position: \"absolute\",\n top: 0,\n // Only apply percentage-based left when using legacy positioning.\n // The new pixel-based positioning is applied per-column in DurationScroll.\n ...(useLegacyLabelPosition ? { left: `${labelOffsetPercentage}%` } : undefined),\n ...customStyles?.pickerLabelContainer,\n },\n selectedPickerItem: {\n color: textColor,\n fontSize: 25,\n overflow: \"visible\",\n textAlignVertical: \"center\",\n ...customStyles?.text,\n ...customStyles?.pickerItem,\n ...customStyles?.selectedPickerItem,\n },\n });\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import type { RefObject } from \"react\";\n\nimport type { View } from \"react-native\";\n\nimport type {
|
|
1
|
+
{"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import type React from \"react\";\nimport { type RefObject } from \"react\";\n\nimport type { View } from \"react-native\";\n\nimport type { LinearGradientProps, SoundAsset, Limit } from \"../DurationScroll/types\";\nimport type { CustomTimerPickerStyles } from \"./styles\";\n\nexport interface TimerPickerRef {\n latestDuration: {\n days: RefObject<number> | undefined;\n hours: RefObject<number> | undefined;\n minutes: RefObject<number> | undefined;\n seconds: RefObject<number> | undefined;\n };\n reset: (options?: { animated?: boolean }) => void;\n setValue: (\n value: {\n days?: number;\n hours?: number;\n minutes?: number;\n seconds?: number;\n },\n options?: { animated?: boolean }\n ) => void;\n}\n\nexport interface TimerPickerProps {\n aggressivelyGetLatestDuration?: boolean;\n allowFontScaling?: boolean;\n amLabel?: string;\n /** @deprecated Use pickerFeedback prop instead. Will be removed in a future version. */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n Audio?: any;\n /** @deprecated Use pickerFeedback prop instead. Will be removed in a future version. */\n clickSoundAsset?: SoundAsset;\n dayInterval?: number;\n dayLabel?: string | React.ReactElement;\n dayLimit?: Limit;\n daysPickerIsDisabled?: boolean;\n decelerationRate?: number | \"normal\" | \"fast\";\n disableInfiniteScroll?: boolean;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n FlatList?: any;\n /** @deprecated Use pickerFeedback prop instead. Will be removed in a future version. */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n Haptics?: any;\n hideDays?: boolean;\n hideHours?: boolean;\n hideMinutes?: boolean;\n hideSeconds?: boolean;\n hourInterval?: number;\n hourLabel?: string | React.ReactElement;\n hourLimit?: Limit;\n hoursPickerIsDisabled?: boolean;\n initialValue?: {\n days?: number;\n hours?: number;\n minutes?: number;\n seconds?: number;\n };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n LinearGradient?: any;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n MaskedView?: any;\n maximumDays?: number;\n maximumHours?: number;\n maximumMinutes?: number;\n maximumSeconds?: number;\n minuteInterval?: number;\n minuteLabel?: string | React.ReactElement;\n minuteLimit?: Limit;\n minutesPickerIsDisabled?: boolean;\n onDurationChange?: (duration: {\n days: number;\n hours: number;\n minutes: number;\n seconds: number;\n }) => void;\n padDaysWithZero?: boolean;\n padHoursWithZero?: boolean;\n padMinutesWithZero?: boolean;\n padSecondsWithZero?: boolean;\n padWithNItems?: number;\n pickerContainerProps?: React.ComponentProps<typeof View>;\n pickerFeedback?: () => void | Promise<void>;\n pickerGradientOverlayProps?: Partial<LinearGradientProps>;\n pmLabel?: string;\n repeatDayNumbersNTimes?: number;\n repeatHourNumbersNTimes?: number;\n repeatMinuteNumbersNTimes?: number;\n repeatSecondNumbersNTimes?: number;\n secondInterval?: number;\n secondLabel?: string | React.ReactElement;\n secondLimit?: Limit;\n secondsPickerIsDisabled?: boolean;\n styles?: CustomTimerPickerStyles;\n use12HourPicker?: boolean;\n}\n"],"mappings":"","ignoreList":[]}
|