react-native-paper-dates 0.4.6 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +79 -22
- package/lib/commonjs/Date/AnimatedCrossView.js +9 -8
- package/lib/commonjs/Date/AnimatedCrossView.js.map +1 -1
- package/lib/commonjs/Date/AutoSizer.js +6 -5
- package/lib/commonjs/Date/AutoSizer.js.map +1 -1
- package/lib/commonjs/Date/Calendar.js +46 -39
- package/lib/commonjs/Date/Calendar.js.map +1 -1
- package/lib/commonjs/Date/CalendarEdit.js +32 -111
- package/lib/commonjs/Date/CalendarEdit.js.map +1 -1
- package/lib/commonjs/Date/CalendarHeader.js +23 -12
- package/lib/commonjs/Date/CalendarHeader.js.map +1 -1
- package/lib/commonjs/Date/DatePickerInput.js +93 -20
- package/lib/commonjs/Date/DatePickerInput.js.map +1 -1
- package/lib/commonjs/Date/DatePickerModal.js +2 -2
- package/lib/commonjs/Date/DatePickerModalContent.js +7 -4
- package/lib/commonjs/Date/DatePickerModalContent.js.map +1 -1
- package/lib/commonjs/Date/DatePickerModalContentHeader.js +43 -34
- package/lib/commonjs/Date/DatePickerModalContentHeader.js.map +1 -1
- package/lib/commonjs/Date/DatePickerModalHeader.js +12 -5
- package/lib/commonjs/Date/DatePickerModalHeader.js.map +1 -1
- package/lib/commonjs/Date/DatePickerModalHeaderBackground.js +6 -5
- package/lib/commonjs/Date/DatePickerModalHeaderBackground.js.map +1 -1
- package/lib/commonjs/Date/DateRangeInput.js +23 -24
- package/lib/commonjs/Date/DateRangeInput.js.map +1 -1
- package/lib/commonjs/Date/Day.js +7 -3
- package/lib/commonjs/Date/Day.js.map +1 -1
- package/lib/commonjs/Date/DayName.js +6 -5
- package/lib/commonjs/Date/DayName.js.map +1 -1
- package/lib/commonjs/Date/DayNames.js +7 -6
- package/lib/commonjs/Date/DayNames.js.map +1 -1
- package/lib/commonjs/Date/DayRange.js +9 -8
- package/lib/commonjs/Date/DayRange.js.map +1 -1
- package/lib/commonjs/Date/Month.js +59 -49
- package/lib/commonjs/Date/Month.js.map +1 -1
- package/lib/commonjs/Date/Swiper.js +35 -29
- package/lib/commonjs/Date/Swiper.js.map +1 -1
- package/lib/commonjs/Date/Swiper.native.js +29 -23
- package/lib/commonjs/Date/Swiper.native.js.map +1 -1
- package/lib/commonjs/Date/SwiperUtils.js +7 -6
- package/lib/commonjs/Date/SwiperUtils.js.map +1 -1
- package/lib/commonjs/Date/YearPicker.js +30 -20
- package/lib/commonjs/Date/YearPicker.js.map +1 -1
- package/lib/commonjs/Date/dateUtils.js +106 -37
- package/lib/commonjs/Date/dateUtils.js.map +1 -1
- package/lib/commonjs/Date/inputUtils.js +84 -0
- package/lib/commonjs/Date/inputUtils.js.map +1 -0
- package/lib/commonjs/TextInputMask.js +11 -10
- package/lib/commonjs/TextInputMask.js.map +1 -1
- package/lib/commonjs/Time/AmPmSwitcher.js +37 -19
- package/lib/commonjs/Time/AmPmSwitcher.js.map +1 -1
- package/lib/commonjs/Time/AnalogClock.js +25 -15
- package/lib/commonjs/Time/AnalogClock.js.map +1 -1
- package/lib/commonjs/Time/AnalogClockHours.js +17 -11
- package/lib/commonjs/Time/AnalogClockHours.js.map +1 -1
- package/lib/commonjs/Time/AnalogClockMinutes.js +7 -6
- package/lib/commonjs/Time/AnalogClockMinutes.js.map +1 -1
- package/lib/commonjs/Time/AnimatedClockSwitcher.js +8 -7
- package/lib/commonjs/Time/AnimatedClockSwitcher.js.map +1 -1
- package/lib/commonjs/Time/TimeInput.js +16 -12
- package/lib/commonjs/Time/TimeInput.js.map +1 -1
- package/lib/commonjs/Time/TimeInputs.js +12 -11
- package/lib/commonjs/Time/TimeInputs.js.map +1 -1
- package/lib/commonjs/Time/TimePicker.js +37 -15
- package/lib/commonjs/Time/TimePicker.js.map +1 -1
- package/lib/commonjs/Time/TimePickerModal.js +19 -15
- package/lib/commonjs/Time/TimePickerModal.js.map +1 -1
- package/lib/commonjs/Time/timeUtils.js +14 -9
- package/lib/commonjs/Time/timeUtils.js.map +1 -1
- package/lib/commonjs/index.js +66 -5
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/translations/en.js +25 -0
- package/lib/commonjs/translations/en.js.map +1 -0
- package/lib/commonjs/translations/enGB.js +25 -0
- package/lib/commonjs/translations/enGB.js.map +1 -0
- package/lib/commonjs/translations/nl.js +25 -0
- package/lib/commonjs/translations/nl.js.map +1 -0
- package/lib/commonjs/translations/pl.js +25 -0
- package/lib/commonjs/translations/pl.js.map +1 -0
- package/lib/commonjs/translations/utils.js +31 -0
- package/lib/commonjs/translations/utils.js.map +1 -0
- package/lib/commonjs/utils.js +19 -9
- package/lib/commonjs/utils.js.map +1 -1
- package/lib/module/Date/AnimatedCrossView.js +7 -6
- package/lib/module/Date/AnimatedCrossView.js.map +1 -1
- package/lib/module/Date/AutoSizer.js +4 -3
- package/lib/module/Date/AutoSizer.js.map +1 -1
- package/lib/module/Date/Calendar.js +46 -39
- package/lib/module/Date/Calendar.js.map +1 -1
- package/lib/module/Date/CalendarEdit.js +28 -104
- package/lib/module/Date/CalendarEdit.js.map +1 -1
- package/lib/module/Date/CalendarHeader.js +19 -9
- package/lib/module/Date/CalendarHeader.js.map +1 -1
- package/lib/module/Date/DatePickerInput.js +88 -18
- package/lib/module/Date/DatePickerInput.js.map +1 -1
- package/lib/module/Date/DatePickerModalContent.js +5 -2
- package/lib/module/Date/DatePickerModalContent.js.map +1 -1
- package/lib/module/Date/DatePickerModalContentHeader.js +38 -30
- package/lib/module/Date/DatePickerModalContentHeader.js.map +1 -1
- package/lib/module/Date/DatePickerModalHeader.js +9 -3
- package/lib/module/Date/DatePickerModalHeader.js.map +1 -1
- package/lib/module/Date/DatePickerModalHeaderBackground.js +4 -3
- package/lib/module/Date/DatePickerModalHeaderBackground.js.map +1 -1
- package/lib/module/Date/DateRangeInput.js +22 -22
- package/lib/module/Date/DateRangeInput.js.map +1 -1
- package/lib/module/Date/Day.js +5 -1
- package/lib/module/Date/Day.js.map +1 -1
- package/lib/module/Date/DayName.js +4 -3
- package/lib/module/Date/DayName.js.map +1 -1
- package/lib/module/Date/DayNames.js +5 -4
- package/lib/module/Date/DayNames.js.map +1 -1
- package/lib/module/Date/DayRange.js +7 -6
- package/lib/module/Date/DayRange.js.map +1 -1
- package/lib/module/Date/Month.js +54 -45
- package/lib/module/Date/Month.js.map +1 -1
- package/lib/module/Date/Swiper.js +32 -26
- package/lib/module/Date/Swiper.js.map +1 -1
- package/lib/module/Date/Swiper.native.js +27 -21
- package/lib/module/Date/Swiper.native.js.map +1 -1
- package/lib/module/Date/SwiperUtils.js +5 -4
- package/lib/module/Date/SwiperUtils.js.map +1 -1
- package/lib/module/Date/YearPicker.js +28 -18
- package/lib/module/Date/YearPicker.js.map +1 -1
- package/lib/module/Date/dateUtils.js +78 -29
- package/lib/module/Date/dateUtils.js.map +1 -1
- package/lib/module/Date/inputUtils.js +70 -0
- package/lib/module/Date/inputUtils.js.map +1 -0
- package/lib/module/TextInputMask.js +9 -8
- package/lib/module/TextInputMask.js.map +1 -1
- package/lib/module/Time/AmPmSwitcher.js +35 -18
- package/lib/module/Time/AmPmSwitcher.js.map +1 -1
- package/lib/module/Time/AnalogClock.js +23 -14
- package/lib/module/Time/AnalogClock.js.map +1 -1
- package/lib/module/Time/AnalogClockHours.js +14 -9
- package/lib/module/Time/AnalogClockHours.js.map +1 -1
- package/lib/module/Time/AnalogClockMinutes.js +5 -4
- package/lib/module/Time/AnalogClockMinutes.js.map +1 -1
- package/lib/module/Time/AnimatedClockSwitcher.js +6 -5
- package/lib/module/Time/AnimatedClockSwitcher.js.map +1 -1
- package/lib/module/Time/TimeInput.js +14 -10
- package/lib/module/Time/TimeInput.js.map +1 -1
- package/lib/module/Time/TimeInputs.js +10 -9
- package/lib/module/Time/TimeInputs.js.map +1 -1
- package/lib/module/Time/TimePicker.js +32 -12
- package/lib/module/Time/TimePicker.js.map +1 -1
- package/lib/module/Time/TimePickerModal.js +17 -13
- package/lib/module/Time/TimePickerModal.js.map +1 -1
- package/lib/module/Time/timeUtils.js +5 -1
- package/lib/module/Time/timeUtils.js.map +1 -1
- package/lib/module/index.js +6 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/translations/en.js +18 -0
- package/lib/module/translations/en.js.map +1 -0
- package/lib/module/translations/enGB.js +18 -0
- package/lib/module/translations/enGB.js.map +1 -0
- package/lib/module/translations/nl.js +18 -0
- package/lib/module/translations/nl.js.map +1 -0
- package/lib/module/translations/pl.js +18 -0
- package/lib/module/translations/pl.js.map +1 -0
- package/lib/module/translations/utils.js +22 -0
- package/lib/module/translations/utils.js.map +1 -0
- package/lib/module/utils.js +11 -5
- package/lib/module/utils.js.map +1 -1
- package/lib/typescript/{src/Date → Date}/AnimatedCrossView.d.ts +0 -0
- package/lib/typescript/{src/Date → Date}/AutoSizer.d.ts +0 -0
- package/lib/typescript/{src/Date → Date}/Calendar.d.ts +5 -3
- package/lib/typescript/{src/Date → Date}/CalendarEdit.d.ts +3 -3
- package/lib/typescript/{src/Date → Date}/CalendarHeader.d.ts +1 -1
- package/lib/typescript/Date/DatePickerInput.d.ts +18 -0
- package/lib/typescript/{src/Date → Date}/DatePickerModal.d.ts +0 -0
- package/lib/typescript/{src/Date → Date}/DatePickerModalContent.d.ts +2 -1
- package/lib/typescript/{src/Date → Date}/DatePickerModalContentHeader.d.ts +4 -4
- package/lib/typescript/{src/Date → Date}/DatePickerModalHeader.d.ts +1 -0
- package/lib/typescript/{src/Date → Date}/DatePickerModalHeaderBackground.d.ts +0 -0
- package/lib/typescript/Date/DateRangeInput.d.ts +3 -0
- package/lib/typescript/{src/Date → Date}/Day.d.ts +0 -0
- package/lib/typescript/{src/Date → Date}/DayName.d.ts +0 -0
- package/lib/typescript/{src/Date → Date}/DayNames.d.ts +0 -0
- package/lib/typescript/{src/Date → Date}/DayRange.d.ts +0 -0
- package/lib/typescript/{src/Date → Date}/Month.d.ts +0 -0
- package/lib/typescript/{src/Date → Date}/Swiper.d.ts +0 -0
- package/lib/typescript/{src/Date → Date}/Swiper.native.d.ts +0 -0
- package/lib/typescript/{src/Date → Date}/SwiperUtils.d.ts +1 -1
- package/lib/typescript/{src/Date → Date}/Week.d.ts +0 -0
- package/lib/typescript/{src/Date → Date}/YearPicker.d.ts +0 -0
- package/lib/typescript/{src/Date → Date}/dateUtils.d.ts +15 -0
- package/lib/typescript/{src/Date → Date}/dateUtils.test.d.ts +0 -0
- package/lib/typescript/Date/inputUtils.d.ts +14 -0
- package/lib/typescript/TextInputMask.d.ts +11 -0
- package/lib/typescript/Time/AmPmSwitcher.d.ts +4 -0
- package/lib/typescript/{src/Time → Time}/AnalogClock.d.ts +1 -1
- package/lib/typescript/{src/Time → Time}/AnalogClockHours.d.ts +0 -0
- package/lib/typescript/{src/Time → Time}/AnalogClockMinutes.d.ts +0 -0
- package/lib/typescript/{src/Time → Time}/AnimatedClockSwitcher.d.ts +0 -0
- package/lib/typescript/{src/Time → Time}/TimeInput.d.ts +0 -0
- package/lib/typescript/{src/Time → Time}/TimeInputs.d.ts +1 -1
- package/lib/typescript/{src/Time → Time}/TimePicker.d.ts +4 -0
- package/lib/typescript/{src/Time → Time}/TimePickerModal.d.ts +1 -1
- package/lib/typescript/{src/Time → Time}/timeUtils.d.ts +0 -0
- package/lib/typescript/index.d.ts +13 -0
- package/lib/typescript/translations/en.d.ts +3 -0
- package/lib/typescript/translations/enGB.d.ts +3 -0
- package/lib/typescript/translations/nl.d.ts +3 -0
- package/lib/typescript/translations/pl.d.ts +3 -0
- package/lib/typescript/translations/utils.d.ts +18 -0
- package/lib/typescript/utils.d.ts +58 -0
- package/package.json +39 -38
- package/src/.DS_Store +0 -0
- package/src/Date/Calendar.tsx +14 -13
- package/src/Date/CalendarEdit.tsx +17 -121
- package/src/Date/CalendarHeader.tsx +18 -3
- package/src/Date/DatePickerInput.tsx +103 -25
- package/src/Date/DatePickerModalContent.tsx +5 -1
- package/src/Date/DatePickerModalContentHeader.tsx +26 -12
- package/src/Date/DatePickerModalHeader.tsx +8 -1
- package/src/Date/DateRangeInput.tsx +26 -17
- package/src/Date/Day.tsx +4 -0
- package/src/Date/Month.tsx +20 -44
- package/src/Date/Swiper.tsx +1 -0
- package/src/Date/SwiperUtils.ts +1 -1
- package/src/Date/YearPicker.tsx +6 -1
- package/src/Date/dateUtils.tsx +70 -9
- package/src/Date/inputUtils.ts +94 -0
- package/src/TextInputMask.tsx +10 -3
- package/src/Time/AmPmSwitcher.tsx +20 -11
- package/src/Time/AnalogClock.tsx +12 -14
- package/src/Time/AnalogClockHours.tsx +14 -5
- package/src/Time/AnalogClockMinutes.tsx +4 -1
- package/src/Time/TimeInput.tsx +3 -0
- package/src/Time/TimeInputs.tsx +1 -5
- package/src/Time/TimePicker.tsx +44 -22
- package/src/Time/TimePickerModal.tsx +4 -1
- package/src/Time/timeUtils.ts +4 -1
- package/src/index.tsx +7 -0
- package/src/translations/en.ts +20 -0
- package/src/translations/enGB.ts +20 -0
- package/src/translations/nl.ts +20 -0
- package/src/translations/pl.ts +21 -0
- package/src/translations/utils.ts +47 -0
- package/src/utils.ts +13 -5
- package/lib/typescript/src/Date/DatePickerInput.d.ts +0 -1
- package/lib/typescript/src/Date/DateRangeInput.d.ts +0 -1
- package/lib/typescript/src/TextInputMask.d.ts +0 -3
- package/lib/typescript/src/Time/AmPmSwitcher.d.ts +0 -4
- package/lib/typescript/src/index.d.ts +0 -6
- package/lib/typescript/src/utils.d.ts +0 -7
|
@@ -9,29 +9,26 @@ var React = _interopRequireWildcard(require("react"));
|
|
|
9
9
|
|
|
10
10
|
var _reactNative = require("react-native");
|
|
11
11
|
|
|
12
|
-
var
|
|
13
|
-
|
|
14
|
-
var _reactNativePaper = require("react-native-paper");
|
|
15
|
-
|
|
16
|
-
var _dateUtils = require("./dateUtils");
|
|
12
|
+
var _DatePickerInput = _interopRequireDefault(require("./DatePickerInput"));
|
|
17
13
|
|
|
18
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
15
|
|
|
20
|
-
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var
|
|
21
|
-
|
|
22
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
23
|
-
|
|
24
|
-
function CalendarEdit({
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
16
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
17
|
+
|
|
18
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
19
|
+
|
|
20
|
+
function CalendarEdit(_ref) {
|
|
21
|
+
let {
|
|
22
|
+
mode,
|
|
23
|
+
state,
|
|
24
|
+
label = '',
|
|
25
|
+
startLabel = 'Start',
|
|
26
|
+
endLabel = 'End',
|
|
27
|
+
collapsed,
|
|
28
|
+
onChange,
|
|
29
|
+
validRange,
|
|
30
|
+
locale
|
|
31
|
+
} = _ref;
|
|
35
32
|
const dateInput = React.useRef(null);
|
|
36
33
|
const startInput = React.useRef(null);
|
|
37
34
|
const endInput = React.useRef(null); // when switching views focus, or un-focus text input
|
|
@@ -64,7 +61,8 @@ function CalendarEdit({
|
|
|
64
61
|
style: styles.root
|
|
65
62
|
}, /*#__PURE__*/React.createElement(_reactNative.View, {
|
|
66
63
|
style: styles.inner
|
|
67
|
-
}, mode === 'single' ? /*#__PURE__*/React.createElement(
|
|
64
|
+
}, mode === 'single' ? /*#__PURE__*/React.createElement(_DatePickerInput.default, {
|
|
65
|
+
inputMode: "start",
|
|
68
66
|
ref: dateInput,
|
|
69
67
|
label: label,
|
|
70
68
|
value: state.date,
|
|
@@ -73,8 +71,11 @@ function CalendarEdit({
|
|
|
73
71
|
}),
|
|
74
72
|
onSubmitEditing: onSubmitInput,
|
|
75
73
|
validRange: validRange,
|
|
76
|
-
locale: locale
|
|
77
|
-
|
|
74
|
+
locale: locale,
|
|
75
|
+
withModal: false,
|
|
76
|
+
autoCompleteType: 'off'
|
|
77
|
+
}) : null, mode === 'range' ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_DatePickerInput.default, {
|
|
78
|
+
inputMode: "start",
|
|
78
79
|
ref: startInput,
|
|
79
80
|
label: startLabel,
|
|
80
81
|
value: state.startDate,
|
|
@@ -84,107 +85,27 @@ function CalendarEdit({
|
|
|
84
85
|
returnKeyType: 'next',
|
|
85
86
|
onSubmitEditing: onSubmitStartInput,
|
|
86
87
|
validRange: validRange,
|
|
87
|
-
locale: locale
|
|
88
|
+
locale: locale,
|
|
89
|
+
withModal: false,
|
|
90
|
+
autoCompleteType: 'off'
|
|
88
91
|
}), /*#__PURE__*/React.createElement(_reactNative.View, {
|
|
89
92
|
style: styles.separator
|
|
90
|
-
}), /*#__PURE__*/React.createElement(
|
|
93
|
+
}), /*#__PURE__*/React.createElement(_DatePickerInput.default, {
|
|
94
|
+
inputMode: "end",
|
|
91
95
|
ref: endInput,
|
|
92
96
|
label: endLabel,
|
|
93
97
|
value: state.endDate,
|
|
94
98
|
onChange: endDate => onChange({ ...state,
|
|
95
99
|
endDate
|
|
96
100
|
}),
|
|
97
|
-
isEndDate: true,
|
|
98
101
|
onSubmitEditing: onSubmitEndInput,
|
|
99
102
|
validRange: validRange,
|
|
100
|
-
locale: locale
|
|
103
|
+
locale: locale,
|
|
104
|
+
withModal: false,
|
|
105
|
+
autoCompleteType: 'off'
|
|
101
106
|
})) : null));
|
|
102
107
|
}
|
|
103
108
|
|
|
104
|
-
function CalendarInputPure({
|
|
105
|
-
label,
|
|
106
|
-
value,
|
|
107
|
-
onChange,
|
|
108
|
-
isEndDate,
|
|
109
|
-
returnKeyType,
|
|
110
|
-
onSubmitEditing,
|
|
111
|
-
locale,
|
|
112
|
-
validRange
|
|
113
|
-
}, ref) {
|
|
114
|
-
const theme = (0, _reactNativePaper.useTheme)();
|
|
115
|
-
const [error, setError] = React.useState(null);
|
|
116
|
-
const formatter = React.useMemo(() => {
|
|
117
|
-
return new Intl.DateTimeFormat(locale, {
|
|
118
|
-
month: '2-digit',
|
|
119
|
-
day: '2-digit',
|
|
120
|
-
year: 'numeric'
|
|
121
|
-
});
|
|
122
|
-
}, [locale]);
|
|
123
|
-
const inputFormat = React.useMemo(() => {
|
|
124
|
-
// TODO: something cleaner and more universal?
|
|
125
|
-
const inputDate = formatter.format(new Date(2020, 10 - 1, 1));
|
|
126
|
-
return inputDate.replace('2020', 'YYYY').replace('10', 'MM').replace('01', 'DD');
|
|
127
|
-
}, [formatter]);
|
|
128
|
-
const formattedValue = formatter.format(value);
|
|
129
|
-
|
|
130
|
-
const onChangeText = date => {
|
|
131
|
-
const dayIndex = inputFormat.indexOf('DD');
|
|
132
|
-
const monthIndex = inputFormat.indexOf('MM');
|
|
133
|
-
const yearIndex = inputFormat.indexOf('YYYY');
|
|
134
|
-
const day = Number(date.slice(dayIndex, dayIndex + 2));
|
|
135
|
-
const year = Number(date.slice(yearIndex, yearIndex + 4));
|
|
136
|
-
const month = Number(date.slice(monthIndex, monthIndex + 2));
|
|
137
|
-
|
|
138
|
-
if (Number.isNaN(day) || Number.isNaN(year) || Number.isNaN(month)) {
|
|
139
|
-
setError(inputFormat);
|
|
140
|
-
return;
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
const finalDate = isEndDate ? new Date(year, month - 1, day, 23, 59, 59) : new Date(year, month - 1, day);
|
|
144
|
-
const validStart = validRange === null || validRange === void 0 ? void 0 : validRange.startDate;
|
|
145
|
-
const validEnd = validRange === null || validRange === void 0 ? void 0 : validRange.endDate;
|
|
146
|
-
|
|
147
|
-
if (!(0, _dateUtils.isDateWithinOptionalRange)(finalDate, {
|
|
148
|
-
startUnix: validStart ? (0, _dateUtils.dateToUnix)(validStart) : undefined,
|
|
149
|
-
endUnix: validEnd ? (0, _dateUtils.dateToUnix)(validEnd) : undefined
|
|
150
|
-
})) {
|
|
151
|
-
let errors = validStart && validEnd ? [`${formatter.format(validStart)} - ${formatter.format(validEnd)}`] : [validStart ? `> ${formatter.format(validStart)}` : '', validEnd ? `< ${formatter.format(validEnd)}` : ''];
|
|
152
|
-
setError(errors.filter(n => n).join(' '));
|
|
153
|
-
return;
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
setError(null);
|
|
157
|
-
|
|
158
|
-
if (isEndDate) {
|
|
159
|
-
onChange(finalDate);
|
|
160
|
-
} else {
|
|
161
|
-
onChange(finalDate);
|
|
162
|
-
}
|
|
163
|
-
};
|
|
164
|
-
|
|
165
|
-
return /*#__PURE__*/React.createElement(_reactNative.View, {
|
|
166
|
-
style: styles.inputContainer
|
|
167
|
-
}, /*#__PURE__*/React.createElement(_TextInputMask.default, {
|
|
168
|
-
ref: ref,
|
|
169
|
-
value: formattedValue,
|
|
170
|
-
style: styles.input,
|
|
171
|
-
label: `${label} (${inputFormat})`,
|
|
172
|
-
keyboardType: 'number-pad',
|
|
173
|
-
placeholder: inputFormat,
|
|
174
|
-
mask: inputFormat,
|
|
175
|
-
onChangeText: onChangeText,
|
|
176
|
-
returnKeyType: returnKeyType,
|
|
177
|
-
onSubmitEditing: onSubmitEditing,
|
|
178
|
-
keyboardAppearance: theme.dark ? 'dark' : 'default',
|
|
179
|
-
error: !!error
|
|
180
|
-
}), /*#__PURE__*/React.createElement(_reactNativePaper.HelperText, {
|
|
181
|
-
type: "error",
|
|
182
|
-
visible: !!error
|
|
183
|
-
}, error));
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
const CalendarInput = /*#__PURE__*/React.forwardRef(CalendarInputPure);
|
|
187
|
-
|
|
188
109
|
const styles = _reactNative.StyleSheet.create({
|
|
189
110
|
root: {
|
|
190
111
|
padding: 12
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["CalendarEdit.tsx"],"names":["CalendarEdit","mode","state","label","startLabel","endLabel","collapsed","onChange","validRange","locale","dateInput","React","useRef","startInput","endInput","useEffect","Keyboard","dismiss","inputsToFocus","current","filter","n","inputsToBlur","forEach","ip","blur","focus","onSubmitStartInput","useCallback","onSubmitEndInput","onSubmitInput","styles","root","inner","date","startDate","separator","endDate","CalendarInputPure","value","isEndDate","returnKeyType","onSubmitEditing","ref","theme","error","setError","useState","formatter","useMemo","Intl","DateTimeFormat","month","day","year","inputFormat","inputDate","format","Date","replace","formattedValue","onChangeText","dayIndex","indexOf","monthIndex","yearIndex","Number","slice","isNaN","finalDate","validStart","validEnd","startUnix","undefined","endUnix","errors","join","inputContainer","input","dark","CalendarInput","forwardRef","StyleSheet","create","padding","flexDirection","flex","width","memo"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport {\n View,\n StyleSheet,\n TextInput as TextInputNative,\n Keyboard,\n} from 'react-native'\n\nimport { CalendarDate, ModeType, ValidRangeType } from './Calendar'\nimport { LocalState } from './DatePickerModalContent'\nimport TextInputWithMask from '../TextInputMask'\nimport { HelperText, useTheme } from 'react-native-paper'\nimport { dateToUnix, isDateWithinOptionalRange } from './dateUtils'\n\nfunction CalendarEdit({\n mode,\n state,\n label = '',\n startLabel = 'Start',\n endLabel = 'End',\n collapsed,\n onChange,\n validRange,\n locale,\n}: {\n mode: ModeType\n label?: string\n startLabel?: string\n endLabel?: string\n state: LocalState\n collapsed: boolean\n onChange: (s: LocalState) => any\n validRange: ValidRangeType | undefined\n locale?: undefined | string\n}) {\n const dateInput = React.useRef<TextInputNative | null>(null)\n const startInput = React.useRef<TextInputNative | null>(null)\n const endInput = React.useRef<TextInputNative | null>(null)\n\n // when switching views focus, or un-focus text input\n React.useEffect(() => {\n // hide open keyboard\n if (collapsed) {\n Keyboard.dismiss()\n }\n\n const inputsToFocus = [dateInput.current, startInput.current].filter(\n (n) => n\n ) as TextInputNative[]\n\n const inputsToBlur = [\n dateInput.current,\n startInput.current,\n endInput.current,\n ].filter((n) => n) as TextInputNative[]\n\n if (collapsed) {\n inputsToBlur.forEach((ip) => ip.blur())\n } else {\n inputsToFocus.forEach((ip) => ip.focus())\n }\n }, [mode, startInput, endInput, dateInput, collapsed])\n\n const onSubmitStartInput = React.useCallback(() => {\n if (endInput.current) {\n endInput.current.focus()\n }\n }, [endInput])\n\n const onSubmitEndInput = React.useCallback(() => {\n // TODO: close modal and persist range\n }, [])\n\n const onSubmitInput = React.useCallback(() => {\n // TODO: close modal and persist range\n }, [])\n\n return (\n <View style={styles.root}>\n <View style={styles.inner}>\n {mode === 'single' ? (\n <CalendarInput\n ref={dateInput}\n label={label}\n value={state.date}\n onChange={(date) => onChange({ ...state, date })}\n onSubmitEditing={onSubmitInput}\n validRange={validRange}\n locale={locale}\n />\n ) : null}\n {mode === 'range' ? (\n <>\n <CalendarInput\n ref={startInput}\n label={startLabel}\n value={state.startDate}\n onChange={(startDate) => onChange({ ...state, startDate })}\n returnKeyType={'next'}\n onSubmitEditing={onSubmitStartInput}\n validRange={validRange}\n locale={locale}\n />\n <View style={styles.separator} />\n <CalendarInput\n ref={endInput}\n label={endLabel}\n value={state.endDate}\n onChange={(endDate) => onChange({ ...state, endDate })}\n isEndDate\n onSubmitEditing={onSubmitEndInput}\n validRange={validRange}\n locale={locale}\n />\n </>\n ) : null}\n </View>\n </View>\n )\n}\n\nfunction CalendarInputPure(\n {\n label,\n value,\n onChange,\n isEndDate,\n returnKeyType,\n onSubmitEditing,\n locale,\n validRange,\n }: {\n locale?: undefined | string\n label: string\n value: CalendarDate\n onChange: (d: Date | undefined) => any\n isEndDate?: boolean\n returnKeyType?: string\n onSubmitEditing?: () => any\n validRange: ValidRangeType | undefined\n },\n ref: any\n) {\n const theme = useTheme()\n const [error, setError] = React.useState<null | string>(null)\n const formatter = React.useMemo(() => {\n return new Intl.DateTimeFormat(locale, {\n month: '2-digit',\n day: '2-digit',\n year: 'numeric',\n })\n }, [locale])\n\n const inputFormat = React.useMemo(() => {\n // TODO: something cleaner and more universal?\n const inputDate = formatter.format(new Date(2020, 10 - 1, 1))\n return inputDate\n .replace('2020', 'YYYY')\n .replace('10', 'MM')\n .replace('01', 'DD')\n }, [formatter])\n\n const formattedValue = formatter.format(value)\n const onChangeText = (date: string) => {\n const dayIndex = inputFormat.indexOf('DD')\n const monthIndex = inputFormat.indexOf('MM')\n const yearIndex = inputFormat.indexOf('YYYY')\n\n const day = Number(date.slice(dayIndex, dayIndex + 2))\n const year = Number(date.slice(yearIndex, yearIndex + 4))\n const month = Number(date.slice(monthIndex, monthIndex + 2))\n\n if (Number.isNaN(day) || Number.isNaN(year) || Number.isNaN(month)) {\n setError(inputFormat)\n return\n }\n\n const finalDate = isEndDate\n ? new Date(year, month - 1, day, 23, 59, 59)\n : new Date(year, month - 1, day)\n\n const validStart = validRange?.startDate\n const validEnd = validRange?.endDate\n if (\n !isDateWithinOptionalRange(finalDate, {\n startUnix: validStart ? dateToUnix(validStart) : undefined,\n endUnix: validEnd ? dateToUnix(validEnd) : undefined,\n })\n ) {\n let errors =\n validStart && validEnd\n ? [`${formatter.format(validStart)} - ${formatter.format(validEnd)}`]\n : [\n validStart ? `> ${formatter.format(validStart)}` : '',\n validEnd ? `< ${formatter.format(validEnd)}` : '',\n ]\n setError(errors.filter((n) => n).join(' '))\n return\n }\n\n setError(null)\n if (isEndDate) {\n onChange(finalDate)\n } else {\n onChange(finalDate)\n }\n }\n return (\n <View style={styles.inputContainer}>\n <TextInputWithMask\n ref={ref}\n value={formattedValue}\n style={styles.input}\n label={`${label} (${inputFormat})`}\n keyboardType={'number-pad'}\n placeholder={inputFormat}\n mask={inputFormat}\n onChangeText={onChangeText}\n returnKeyType={returnKeyType}\n onSubmitEditing={onSubmitEditing}\n keyboardAppearance={theme.dark ? 'dark' : 'default'}\n error={!!error}\n />\n <HelperText type=\"error\" visible={!!error}>\n {error}\n </HelperText>\n </View>\n )\n}\n\nconst CalendarInput = React.forwardRef(CalendarInputPure)\n\nconst styles = StyleSheet.create({\n root: { padding: 12 },\n inner: { flexDirection: 'row' },\n inputContainer: { flex: 1 },\n input: { flex: 1 },\n separator: { width: 12 },\n})\n\nexport default React.memo(CalendarEdit)\n"]}
|
|
1
|
+
{"version":3,"sources":["CalendarEdit.tsx"],"names":["CalendarEdit","mode","state","label","startLabel","endLabel","collapsed","onChange","validRange","locale","dateInput","React","useRef","startInput","endInput","useEffect","Keyboard","dismiss","inputsToFocus","current","filter","n","inputsToBlur","forEach","ip","blur","focus","onSubmitStartInput","useCallback","onSubmitEndInput","onSubmitInput","styles","root","inner","date","startDate","separator","endDate","StyleSheet","create","padding","flexDirection","inputContainer","flex","input","width","memo"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport {\n View,\n StyleSheet,\n TextInput as TextInputNative,\n Keyboard,\n} from 'react-native'\n\nimport type { ModeType, ValidRangeType } from './Calendar'\nimport type { LocalState } from './DatePickerModalContent'\n\nimport DatePickerInput from './DatePickerInput'\n\nfunction CalendarEdit({\n mode,\n state,\n label = '',\n startLabel = 'Start',\n endLabel = 'End',\n collapsed,\n onChange,\n validRange,\n locale,\n}: {\n mode: ModeType\n label?: string\n startLabel?: string\n endLabel?: string\n state: LocalState\n collapsed: boolean\n onChange: (s: LocalState) => any\n validRange: ValidRangeType | undefined\n locale: string\n}) {\n const dateInput = React.useRef<TextInputNative | null>(null)\n const startInput = React.useRef<TextInputNative | null>(null)\n const endInput = React.useRef<TextInputNative | null>(null)\n\n // when switching views focus, or un-focus text input\n React.useEffect(() => {\n // hide open keyboard\n if (collapsed) {\n Keyboard.dismiss()\n }\n\n const inputsToFocus = [dateInput.current, startInput.current].filter(\n (n) => n\n ) as TextInputNative[]\n\n const inputsToBlur = [\n dateInput.current,\n startInput.current,\n endInput.current,\n ].filter((n) => n) as TextInputNative[]\n\n if (collapsed) {\n inputsToBlur.forEach((ip) => ip.blur())\n } else {\n inputsToFocus.forEach((ip) => ip.focus())\n }\n }, [mode, startInput, endInput, dateInput, collapsed])\n\n const onSubmitStartInput = React.useCallback(() => {\n if (endInput.current) {\n endInput.current.focus()\n }\n }, [endInput])\n\n const onSubmitEndInput = React.useCallback(() => {\n // TODO: close modal and persist range\n }, [])\n\n const onSubmitInput = React.useCallback(() => {\n // TODO: close modal and persist range\n }, [])\n\n return (\n <View style={styles.root}>\n <View style={styles.inner}>\n {mode === 'single' ? (\n <DatePickerInput\n inputMode=\"start\"\n ref={dateInput}\n label={label}\n value={state.date}\n onChange={(date) => onChange({ ...state, date })}\n onSubmitEditing={onSubmitInput}\n validRange={validRange}\n locale={locale}\n withModal={false}\n autoCompleteType={'off'}\n />\n ) : null}\n {mode === 'range' ? (\n <>\n <DatePickerInput\n inputMode=\"start\"\n ref={startInput}\n label={startLabel}\n value={state.startDate}\n onChange={(startDate) => onChange({ ...state, startDate })}\n returnKeyType={'next'}\n onSubmitEditing={onSubmitStartInput}\n validRange={validRange}\n locale={locale}\n withModal={false}\n autoCompleteType={'off'}\n />\n <View style={styles.separator} />\n <DatePickerInput\n inputMode=\"end\"\n ref={endInput}\n label={endLabel}\n value={state.endDate}\n onChange={(endDate) => onChange({ ...state, endDate })}\n onSubmitEditing={onSubmitEndInput}\n validRange={validRange}\n locale={locale}\n withModal={false}\n autoCompleteType={'off'}\n />\n </>\n ) : null}\n </View>\n </View>\n )\n}\n\nconst styles = StyleSheet.create({\n root: { padding: 12 },\n inner: { flexDirection: 'row' },\n inputContainer: { flex: 1 },\n input: { flex: 1 },\n separator: { width: 12 },\n})\n\nexport default React.memo(CalendarEdit)\n"]}
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.getCalendarHeaderHeight = getCalendarHeaderHeight;
|
|
7
6
|
exports.default = void 0;
|
|
7
|
+
exports.getCalendarHeaderHeight = getCalendarHeaderHeight;
|
|
8
8
|
|
|
9
9
|
var React = _interopRequireWildcard(require("react"));
|
|
10
10
|
|
|
@@ -14,9 +14,11 @@ var _reactNativePaper = require("react-native-paper");
|
|
|
14
14
|
|
|
15
15
|
var _DayNames = _interopRequireWildcard(require("./DayNames"));
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
var _utils = require("../translations/utils");
|
|
18
|
+
|
|
19
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
18
20
|
|
|
19
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
21
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
20
22
|
|
|
21
23
|
const buttonContainerHeight = 56;
|
|
22
24
|
const buttonContainerMarginTop = 4;
|
|
@@ -30,13 +32,14 @@ function getCalendarHeaderHeight(scrollMode) {
|
|
|
30
32
|
return _DayNames.dayNamesHeight;
|
|
31
33
|
}
|
|
32
34
|
|
|
33
|
-
function CalendarHeader({
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
35
|
+
function CalendarHeader(_ref) {
|
|
36
|
+
let {
|
|
37
|
+
scrollMode,
|
|
38
|
+
onPrev,
|
|
39
|
+
onNext,
|
|
40
|
+
disableWeekDays,
|
|
41
|
+
locale
|
|
42
|
+
} = _ref;
|
|
40
43
|
const theme = (0, _reactNativePaper.useTheme)();
|
|
41
44
|
const isHorizontal = scrollMode === 'horizontal';
|
|
42
45
|
return /*#__PURE__*/React.createElement(_reactNative.View, {
|
|
@@ -54,14 +57,22 @@ function CalendarHeader({
|
|
|
54
57
|
}]
|
|
55
58
|
}, /*#__PURE__*/React.createElement(_reactNativePaper.IconButton, {
|
|
56
59
|
icon: "chevron-left",
|
|
57
|
-
|
|
60
|
+
accessibilityLabel: (0, _utils.getTranslation)(locale, 'previous'),
|
|
61
|
+
onPress: onPrev // RN types bug
|
|
62
|
+
,
|
|
63
|
+
hasTVPreferredFocus: undefined,
|
|
64
|
+
tvParallaxProperties: undefined
|
|
58
65
|
})), /*#__PURE__*/React.createElement(_reactNative.View, {
|
|
59
66
|
style: [styles.buttonWrapper, {
|
|
60
67
|
backgroundColor: theme.colors.surface
|
|
61
68
|
}]
|
|
62
69
|
}, /*#__PURE__*/React.createElement(_reactNativePaper.IconButton, {
|
|
63
70
|
icon: "chevron-right",
|
|
64
|
-
|
|
71
|
+
accessibilityLabel: (0, _utils.getTranslation)(locale, 'next'),
|
|
72
|
+
onPress: onNext // RN types bug
|
|
73
|
+
,
|
|
74
|
+
hasTVPreferredFocus: undefined,
|
|
75
|
+
tvParallaxProperties: undefined
|
|
65
76
|
}))) : null, /*#__PURE__*/React.createElement(_DayNames.default, {
|
|
66
77
|
disableWeekDays: disableWeekDays,
|
|
67
78
|
locale: locale
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["CalendarHeader.tsx"],"names":["buttonContainerHeight","buttonContainerMarginTop","buttonContainerMarginBottom","getCalendarHeaderHeight","scrollMode","dayNamesHeight","CalendarHeader","onPrev","onNext","disableWeekDays","locale","theme","isHorizontal","styles","datePickerHeader","buttonContainer","spacer","buttonWrapper","backgroundColor","colors","surface","StyleSheet","create","position","top","right","left","zIndex","height","marginTop","marginBottom","flexDirection","alignItems","flex","React","memo"],"mappings":";;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;
|
|
1
|
+
{"version":3,"sources":["CalendarHeader.tsx"],"names":["buttonContainerHeight","buttonContainerMarginTop","buttonContainerMarginBottom","getCalendarHeaderHeight","scrollMode","dayNamesHeight","CalendarHeader","onPrev","onNext","disableWeekDays","locale","theme","isHorizontal","styles","datePickerHeader","buttonContainer","spacer","buttonWrapper","backgroundColor","colors","surface","undefined","StyleSheet","create","position","top","right","left","zIndex","height","marginTop","marginBottom","flexDirection","alignItems","flex","React","memo"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { IconButton, useTheme } from 'react-native-paper'\nimport DayNames, { dayNamesHeight } from './DayNames'\nimport type { DisableWeekDaysType } from './dateUtils'\nimport { getTranslation } from '../translations/utils'\n\nconst buttonContainerHeight = 56\nconst buttonContainerMarginTop = 4\nconst buttonContainerMarginBottom = 8\n\nexport function getCalendarHeaderHeight(scrollMode: 'horizontal' | 'vertical') {\n if (scrollMode === 'horizontal') {\n return (\n buttonContainerHeight +\n buttonContainerMarginTop +\n buttonContainerMarginBottom +\n dayNamesHeight\n )\n }\n return dayNamesHeight\n}\n\nfunction CalendarHeader({\n scrollMode,\n onPrev,\n onNext,\n disableWeekDays,\n locale,\n}: {\n locale: undefined | string\n scrollMode: 'horizontal' | 'vertical'\n onPrev: () => any\n onNext: () => any\n disableWeekDays?: DisableWeekDaysType\n}) {\n const theme = useTheme()\n const isHorizontal = scrollMode === 'horizontal'\n return (\n <View style={styles.datePickerHeader} pointerEvents={'box-none'}>\n {isHorizontal ? (\n <View style={styles.buttonContainer} pointerEvents={'box-none'}>\n <View style={styles.spacer} pointerEvents={'box-none'} />\n <View\n style={[\n styles.buttonWrapper,\n { backgroundColor: theme.colors.surface },\n ]}\n >\n <IconButton\n icon=\"chevron-left\"\n accessibilityLabel={getTranslation(locale, 'previous')}\n onPress={onPrev}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n </View>\n\n <View\n style={[\n styles.buttonWrapper,\n { backgroundColor: theme.colors.surface },\n ]}\n >\n <IconButton\n icon=\"chevron-right\"\n accessibilityLabel={getTranslation(locale, 'next')}\n onPress={onNext}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n </View>\n </View>\n ) : null}\n <DayNames disableWeekDays={disableWeekDays} locale={locale} />\n </View>\n )\n}\n\nconst styles = StyleSheet.create({\n datePickerHeader: {\n position: 'absolute',\n top: 0,\n right: 0,\n left: 0,\n zIndex: 10,\n },\n buttonContainer: {\n height: buttonContainerHeight,\n marginTop: buttonContainerMarginTop,\n marginBottom: buttonContainerMarginBottom,\n flexDirection: 'row',\n alignItems: 'center',\n },\n buttonWrapper: {},\n spacer: { flex: 1 },\n})\n\nexport default React.memo(CalendarHeader)\n"]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default =
|
|
6
|
+
exports.default = void 0;
|
|
7
7
|
|
|
8
8
|
var React = _interopRequireWildcard(require("react"));
|
|
9
9
|
|
|
@@ -15,55 +15,128 @@ var _reactNative = require("react-native");
|
|
|
15
15
|
|
|
16
16
|
var _DatePickerModal = _interopRequireDefault(require("./DatePickerModal"));
|
|
17
17
|
|
|
18
|
+
var _inputUtils = _interopRequireDefault(require("./inputUtils"));
|
|
19
|
+
|
|
20
|
+
var _utils = require("../utils");
|
|
21
|
+
|
|
18
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
23
|
|
|
20
|
-
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var
|
|
24
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
25
|
+
|
|
26
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
21
27
|
|
|
22
|
-
function
|
|
28
|
+
function _extends() { _extends = Object.assign || 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); }
|
|
23
29
|
|
|
24
|
-
function DatePickerInput() {
|
|
30
|
+
function DatePickerInput(_ref, ref) {
|
|
31
|
+
let {
|
|
32
|
+
label,
|
|
33
|
+
value,
|
|
34
|
+
onChange,
|
|
35
|
+
style,
|
|
36
|
+
locale,
|
|
37
|
+
validRange,
|
|
38
|
+
inputMode,
|
|
39
|
+
withModal = true,
|
|
40
|
+
withDateFormatInLabel = true,
|
|
41
|
+
...rest
|
|
42
|
+
} = _ref;
|
|
43
|
+
const theme = (0, _reactNativePaper.useTheme)();
|
|
44
|
+
const {
|
|
45
|
+
formattedValue,
|
|
46
|
+
inputFormat,
|
|
47
|
+
onChangeText,
|
|
48
|
+
error
|
|
49
|
+
} = (0, _inputUtils.default)({
|
|
50
|
+
locale,
|
|
51
|
+
value,
|
|
52
|
+
validRange,
|
|
53
|
+
inputMode,
|
|
54
|
+
onChange
|
|
55
|
+
});
|
|
25
56
|
const [visible, setVisible] = React.useState(false);
|
|
26
57
|
const onDismiss = React.useCallback(() => {
|
|
27
58
|
setVisible(false);
|
|
28
59
|
}, [setVisible]);
|
|
29
|
-
const
|
|
60
|
+
const onChangeRef = (0, _utils.useLatest)(onChange);
|
|
61
|
+
const onInnerConfirm = React.useCallback(_ref2 => {
|
|
62
|
+
let {
|
|
63
|
+
date
|
|
64
|
+
} = _ref2;
|
|
30
65
|
setVisible(false);
|
|
31
|
-
|
|
66
|
+
onChangeRef.current(date);
|
|
67
|
+
}, [setVisible, onChangeRef]);
|
|
32
68
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_reactNative.View, {
|
|
33
69
|
style: styles.root
|
|
34
|
-
}, /*#__PURE__*/React.createElement(_TextInputMask.default, {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
70
|
+
}, /*#__PURE__*/React.createElement(_TextInputMask.default, _extends({}, rest, {
|
|
71
|
+
ref: ref,
|
|
72
|
+
label: getLabel({
|
|
73
|
+
label,
|
|
74
|
+
inputFormat,
|
|
75
|
+
withDateFormatInLabel
|
|
76
|
+
}),
|
|
77
|
+
value: formattedValue,
|
|
78
|
+
keyboardType: 'number-pad',
|
|
79
|
+
placeholder: inputFormat,
|
|
80
|
+
mask: inputFormat,
|
|
81
|
+
onChangeText: onChangeText,
|
|
82
|
+
keyboardAppearance: theme.dark ? 'dark' : 'default',
|
|
83
|
+
error: !!error,
|
|
84
|
+
style: [styles.input, style]
|
|
85
|
+
})), withModal ? /*#__PURE__*/React.createElement(_reactNativePaper.IconButton, {
|
|
42
86
|
size: 24,
|
|
43
87
|
style: styles.calendarButton,
|
|
44
88
|
icon: "calendar",
|
|
45
|
-
onPress: () => setVisible(true)
|
|
46
|
-
|
|
89
|
+
onPress: () => setVisible(true) // RN types bug
|
|
90
|
+
,
|
|
91
|
+
hasTVPreferredFocus: undefined,
|
|
92
|
+
tvParallaxProperties: undefined
|
|
93
|
+
}) : null), /*#__PURE__*/React.createElement(_reactNativePaper.HelperText, {
|
|
94
|
+
type: "error",
|
|
95
|
+
visible: !!error
|
|
96
|
+
}, error), withModal ? /*#__PURE__*/React.createElement(_DatePickerModal.default, {
|
|
97
|
+
date: value,
|
|
47
98
|
mode: "single",
|
|
48
99
|
visible: visible,
|
|
49
100
|
onDismiss: onDismiss,
|
|
50
|
-
onConfirm:
|
|
51
|
-
|
|
101
|
+
onConfirm: onInnerConfirm,
|
|
102
|
+
locale: locale,
|
|
103
|
+
dateMode: inputMode
|
|
104
|
+
}) : null);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
function getLabel(_ref3) {
|
|
108
|
+
let {
|
|
109
|
+
withDateFormatInLabel,
|
|
110
|
+
inputFormat,
|
|
111
|
+
label
|
|
112
|
+
} = _ref3;
|
|
113
|
+
|
|
114
|
+
if (withDateFormatInLabel) {
|
|
115
|
+
return label ? `${label} (${inputFormat})` : inputFormat;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
return label || '';
|
|
52
119
|
}
|
|
53
120
|
|
|
54
121
|
const styles = _reactNative.StyleSheet.create({
|
|
55
122
|
root: {
|
|
123
|
+
minWidth: 150,
|
|
56
124
|
flexDirection: 'row',
|
|
57
125
|
position: 'relative',
|
|
58
126
|
alignItems: 'center',
|
|
59
|
-
|
|
127
|
+
flexGrow: 1,
|
|
128
|
+
alignSelf: 'flex-start'
|
|
60
129
|
},
|
|
61
130
|
input: {
|
|
62
|
-
|
|
131
|
+
flexGrow: 1
|
|
63
132
|
},
|
|
64
133
|
calendarButton: {
|
|
65
134
|
position: 'absolute',
|
|
66
135
|
right: 0
|
|
67
136
|
}
|
|
68
137
|
});
|
|
138
|
+
|
|
139
|
+
var _default = /*#__PURE__*/React.forwardRef(DatePickerInput);
|
|
140
|
+
|
|
141
|
+
exports.default = _default;
|
|
69
142
|
//# sourceMappingURL=DatePickerInput.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DatePickerInput.tsx"],"names":["DatePickerInput","visible","setVisible","React","useState","onDismiss","useCallback","
|
|
1
|
+
{"version":3,"sources":["DatePickerInput.tsx"],"names":["DatePickerInput","ref","label","value","onChange","style","locale","validRange","inputMode","withModal","withDateFormatInLabel","rest","theme","formattedValue","inputFormat","onChangeText","error","visible","setVisible","React","useState","onDismiss","useCallback","onChangeRef","onInnerConfirm","date","current","styles","root","getLabel","dark","input","calendarButton","undefined","StyleSheet","create","minWidth","flexDirection","position","alignItems","flexGrow","alignSelf","right","forwardRef"],"mappings":"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","sourcesContent":["import * as React from 'react'\n\nimport TextInputWithMask from '../TextInputMask'\nimport { HelperText, IconButton, TextInput, useTheme } from 'react-native-paper'\nimport { View, StyleSheet } from 'react-native'\nimport DatePickerModal from './DatePickerModal'\nimport useDateInput from './inputUtils'\nimport type { ValidRangeType } from './Calendar'\nimport { useLatest } from '../utils'\n\nfunction DatePickerInput(\n {\n label,\n value,\n onChange,\n style,\n locale,\n validRange,\n inputMode,\n withModal = true,\n withDateFormatInLabel = true,\n ...rest\n }: Omit<React.ComponentProps<typeof TextInput>, 'value' | 'onChange'> & {\n inputMode: 'start' | 'end'\n locale: string\n onChange: (date: Date | undefined) => void\n value: Date | undefined\n validRange?: ValidRangeType | undefined\n withModal?: boolean\n withDateFormatInLabel?: boolean\n },\n ref: any\n) {\n const theme = useTheme()\n const { formattedValue, inputFormat, onChangeText, error } = useDateInput({\n locale,\n value,\n validRange,\n inputMode,\n onChange,\n })\n\n const [visible, setVisible] = React.useState<boolean>(false)\n const onDismiss = React.useCallback(() => {\n setVisible(false)\n }, [setVisible])\n const onChangeRef = useLatest(onChange)\n const onInnerConfirm = React.useCallback(\n ({ date }) => {\n setVisible(false)\n onChangeRef.current(date)\n },\n [setVisible, onChangeRef]\n )\n\n return (\n <>\n <View style={styles.root}>\n <TextInputWithMask\n {...rest}\n ref={ref}\n label={getLabel({ label, inputFormat, withDateFormatInLabel })}\n value={formattedValue}\n keyboardType={'number-pad'}\n placeholder={inputFormat}\n mask={inputFormat}\n onChangeText={onChangeText}\n keyboardAppearance={theme.dark ? 'dark' : 'default'}\n error={!!error}\n style={[styles.input, style]}\n />\n {withModal ? (\n <IconButton\n size={24}\n style={styles.calendarButton}\n icon=\"calendar\"\n onPress={() => setVisible(true)}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n ) : null}\n </View>\n <HelperText type=\"error\" visible={!!error}>\n {error}\n </HelperText>\n\n {withModal ? (\n <DatePickerModal\n date={value}\n mode=\"single\"\n visible={visible}\n onDismiss={onDismiss}\n onConfirm={onInnerConfirm}\n locale={locale}\n dateMode={inputMode}\n />\n ) : null}\n </>\n )\n}\n\nfunction getLabel({\n withDateFormatInLabel,\n inputFormat,\n label,\n}: {\n withDateFormatInLabel: boolean\n inputFormat: string\n label: string | undefined\n}) {\n if (withDateFormatInLabel) {\n return label ? `${label} (${inputFormat})` : inputFormat\n }\n return label || ''\n}\n\nconst styles = StyleSheet.create({\n root: {\n minWidth: 150,\n flexDirection: 'row',\n position: 'relative',\n alignItems: 'center',\n flexGrow: 1,\n alignSelf: 'flex-start',\n },\n input: {\n flexGrow: 1,\n },\n calendarButton: { position: 'absolute', right: 0 },\n})\nexport default React.forwardRef(DatePickerInput)\n"]}
|
|
@@ -18,9 +18,9 @@ var _utils = require("../utils");
|
|
|
18
18
|
|
|
19
19
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
20
20
|
|
|
21
|
-
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var
|
|
21
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
22
22
|
|
|
23
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
23
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
24
24
|
|
|
25
25
|
function _extends() { _extends = Object.assign || 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); }
|
|
26
26
|
|
|
@@ -22,9 +22,9 @@ var _DatePickerModalHeaderBackground = _interopRequireDefault(require("./DatePic
|
|
|
22
22
|
|
|
23
23
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
24
24
|
|
|
25
|
-
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var
|
|
25
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
26
26
|
|
|
27
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
27
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
28
28
|
|
|
29
29
|
function DatePickerModalContent(props) {
|
|
30
30
|
const {
|
|
@@ -35,7 +35,8 @@ function DatePickerModalContent(props) {
|
|
|
35
35
|
disableSafeTop,
|
|
36
36
|
disableWeekDays,
|
|
37
37
|
locale,
|
|
38
|
-
validRange
|
|
38
|
+
validRange,
|
|
39
|
+
dateMode
|
|
39
40
|
} = props;
|
|
40
41
|
const anyProps = props; // use local state to add only onConfirm state changes
|
|
41
42
|
|
|
@@ -84,6 +85,7 @@ function DatePickerModalContent(props) {
|
|
|
84
85
|
setCollapsed(prev => !prev);
|
|
85
86
|
}, [setCollapsed]);
|
|
86
87
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_DatePickerModalHeaderBackground.default, null, /*#__PURE__*/React.createElement(_DatePickerModalHeader.default, {
|
|
88
|
+
locale: locale,
|
|
87
89
|
onSave: onInnerConfirm,
|
|
88
90
|
onDismiss: onDismiss,
|
|
89
91
|
saveLabel: props.saveLabel,
|
|
@@ -111,7 +113,8 @@ function DatePickerModalContent(props) {
|
|
|
111
113
|
onChange: onInnerChange,
|
|
112
114
|
disableWeekDays: disableWeekDays,
|
|
113
115
|
dates: state.dates,
|
|
114
|
-
validRange: validRange
|
|
116
|
+
validRange: validRange,
|
|
117
|
+
dateMode: dateMode
|
|
115
118
|
}),
|
|
116
119
|
calendarEdit: /*#__PURE__*/React.createElement(_CalendarEdit.default, {
|
|
117
120
|
mode: mode,
|