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
|
@@ -5,35 +5,36 @@ import { View, StyleSheet } from 'react-native';
|
|
|
5
5
|
import { IconButton, Text } from 'react-native-paper';
|
|
6
6
|
import { useHeaderTextColor } from '../utils';
|
|
7
7
|
import Color from 'color';
|
|
8
|
+
import { getTranslation } from '../translations/utils';
|
|
8
9
|
|
|
9
|
-
function getLabel(mode, configuredLabel) {
|
|
10
|
+
function getLabel(locale, mode, configuredLabel) {
|
|
10
11
|
if (configuredLabel) {
|
|
11
12
|
return configuredLabel;
|
|
12
13
|
}
|
|
13
14
|
|
|
14
15
|
if (mode === 'range') {
|
|
15
|
-
return
|
|
16
|
+
return getTranslation(locale, 'selectRange');
|
|
16
17
|
}
|
|
17
18
|
|
|
18
|
-
if (mode === '
|
|
19
|
-
return
|
|
19
|
+
if (mode === 'multiple') {
|
|
20
|
+
return getTranslation(locale, 'selectMultiple');
|
|
20
21
|
}
|
|
21
22
|
|
|
22
|
-
if (mode === '
|
|
23
|
-
return
|
|
23
|
+
if (mode === 'single') {
|
|
24
|
+
return getTranslation(locale, 'selectSingle');
|
|
24
25
|
}
|
|
25
26
|
|
|
26
27
|
return '...?';
|
|
27
28
|
}
|
|
28
29
|
|
|
29
|
-
export default function
|
|
30
|
+
export default function DatePickerModalContentHeader(props) {
|
|
30
31
|
const {
|
|
31
32
|
onToggle,
|
|
32
33
|
collapsed,
|
|
33
34
|
mode,
|
|
34
35
|
moreLabel
|
|
35
36
|
} = props;
|
|
36
|
-
const label = getLabel(props.mode, props.label);
|
|
37
|
+
const label = getLabel(props.locale, props.mode, props.label);
|
|
37
38
|
const color = useHeaderTextColor();
|
|
38
39
|
const allowEditing = mode !== 'multiple';
|
|
39
40
|
return /*#__PURE__*/React.createElement(View, {
|
|
@@ -55,16 +56,21 @@ export default function DatePickerModalHeader(props) {
|
|
|
55
56
|
style: styles.fill
|
|
56
57
|
}), allowEditing ? /*#__PURE__*/React.createElement(IconButton, {
|
|
57
58
|
icon: collapsed ? 'pencil' : 'calendar',
|
|
59
|
+
accessibilityLabel: collapsed ? getTranslation(props.locale, 'typeInDate') : getTranslation(props.locale, 'pickDateFromCalendar'),
|
|
58
60
|
color: color,
|
|
59
|
-
onPress: onToggle
|
|
61
|
+
onPress: onToggle // RN types bug
|
|
62
|
+
,
|
|
63
|
+
hasTVPreferredFocus: undefined,
|
|
64
|
+
tvParallaxProperties: undefined
|
|
60
65
|
}) : null);
|
|
61
66
|
}
|
|
62
|
-
export function HeaderContentSingle({
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
67
|
+
export function HeaderContentSingle(_ref) {
|
|
68
|
+
let {
|
|
69
|
+
state,
|
|
70
|
+
emptyLabel = ' ',
|
|
71
|
+
color,
|
|
72
|
+
locale
|
|
73
|
+
} = _ref;
|
|
68
74
|
const lighterColor = Color(color).fade(0.5).rgb().toString();
|
|
69
75
|
const dateColor = state.date ? color : lighterColor;
|
|
70
76
|
const formatter = React.useMemo(() => {
|
|
@@ -79,15 +85,16 @@ export function HeaderContentSingle({
|
|
|
79
85
|
}]
|
|
80
86
|
}, state.date ? formatter.format(state.date) : emptyLabel);
|
|
81
87
|
}
|
|
82
|
-
export function HeaderContentMulti({
|
|
83
|
-
state,
|
|
84
|
-
emptyLabel = ' ',
|
|
85
|
-
moreLabel = 'more',
|
|
86
|
-
color,
|
|
87
|
-
locale
|
|
88
|
-
}) {
|
|
88
|
+
export function HeaderContentMulti(_ref2) {
|
|
89
89
|
var _state$dates;
|
|
90
90
|
|
|
91
|
+
let {
|
|
92
|
+
state,
|
|
93
|
+
emptyLabel = ' ',
|
|
94
|
+
moreLabel = 'more',
|
|
95
|
+
color,
|
|
96
|
+
locale
|
|
97
|
+
} = _ref2;
|
|
91
98
|
const dateCount = ((_state$dates = state.dates) === null || _state$dates === void 0 ? void 0 : _state$dates.length) || 0;
|
|
92
99
|
const lighterColor = Color(color).fade(0.5).rgb().toString();
|
|
93
100
|
const dateColor = dateCount ? color : lighterColor;
|
|
@@ -113,14 +120,15 @@ export function HeaderContentMulti({
|
|
|
113
120
|
}]
|
|
114
121
|
}, label);
|
|
115
122
|
}
|
|
116
|
-
export function HeaderContentRange({
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
123
|
+
export function HeaderContentRange(_ref3) {
|
|
124
|
+
let {
|
|
125
|
+
locale,
|
|
126
|
+
state,
|
|
127
|
+
headerSeparator = '-',
|
|
128
|
+
startLabel = 'Start',
|
|
129
|
+
endLabel = 'End',
|
|
130
|
+
color
|
|
131
|
+
} = _ref3;
|
|
124
132
|
const formatter = React.useMemo(() => {
|
|
125
133
|
return new Intl.DateTimeFormat(locale, {
|
|
126
134
|
month: 'short',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DatePickerModalContentHeader.tsx"],"names":["React","View","StyleSheet","IconButton","Text","useHeaderTextColor","Color","getLabel","mode","configuredLabel","DatePickerModalHeader","props","onToggle","collapsed","moreLabel","label","color","allowEditing","styles","header","toUpperCase","headerContentContainer","fill","HeaderContentSingle","state","emptyLabel","locale","lighterColor","fade","rgb","toString","dateColor","date","formatter","useMemo","Intl","DateTimeFormat","month","day","singleHeaderText","format","HeaderContentMulti","dateCount","dates","length","map","join","HeaderContentRange","headerSeparator","startLabel","endLabel","startColor","startDate","endColor","endDate","rangeHeaderText","create","flex","animated","paddingBottom","elevation","safeContent","height","alignItems","flexDirection","paddingLeft","paddingRight","marginTop","letterSpacing","fontSize","excludeInRangeHeaderText","excludeInRangeHeaderTextSmall","marginLeft","appbarHeader","column","row"],"mappings":";;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,IAAT,EAAeC,UAAf,QAAiC,cAAjC;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,oBAAjC;AAGA,SAASC,kBAAT,QAAmC,UAAnC;AACA,OAAOC,KAAP,MAAkB,OAAlB;;AAoBA,SAASC,QAAT,CAAkBC,IAAlB,EAAkCC,eAAlC,EAA4D;AAC1D,MAAIA,eAAJ,EAAqB;AACnB,WAAOA,eAAP;AACD;;AACD,MAAID,IAAI,KAAK,OAAb,EAAsB;AACpB,WAAO,eAAP;AACD;;AACD,MAAIA,IAAI,KAAK,QAAb,EAAuB;AACrB,WAAO,aAAP;AACD;;AAED,MAAIA,IAAI,KAAK,UAAb,EAAyB;AACvB,WAAO,cAAP;AACD;;AACD,SAAO,MAAP;AACD;;AAED,eAAe,SAASE,qBAAT,CAA+BC,KAA/B,EAA0D;AACvE,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,SAAZ;AAAuBL,IAAAA,IAAvB;AAA6BM,IAAAA;AAA7B,MAA2CH,KAAjD;AAEA,QAAMI,KAAK,GAAGR,QAAQ,CAACI,KAAK,CAACH,IAAP,EAAaG,KAAK,CAACI,KAAnB,CAAtB;AAEA,QAAMC,KAAK,GAAGX,kBAAkB,EAAhC;AACA,QAAMY,YAAY,GAAGT,IAAI,KAAK,UAA9B;AACA,sBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE,CAACU,MAAM,CAACC,MAAR;AAAb,kBACE,oBAAC,IAAD,qBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE,CAACD,MAAM,CAACH,KAAR,EAAe;AAAEC,MAAAA;AAAF,KAAf;AAAb,KAAyCD,KAAK,CAACK,WAAN,EAAzC,CADF,eAGE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAEF,MAAM,CAACG;AAApB,KACGb,IAAI,KAAK,OAAT,gBACC,oBAAC,kBAAD,eAAwBG,KAAxB;AAA+B,IAAA,KAAK,EAAEK;AAAtC,KADD,GAEG,IAHN,EAIGR,IAAI,KAAK,QAAT,gBACC,oBAAC,mBAAD,eAAyBG,KAAzB;AAAgC,IAAA,KAAK,EAAEK;AAAvC,KADD,GAEG,IANN,EAOGR,IAAI,KAAK,UAAT,gBACC,oBAAC,kBAAD,eACMG,KADN;AAEE,IAAA,KAAK,EAAEK,KAFT;AAGE,IAAA,SAAS,EAAEF;AAHb,KADD,GAMG,IAbN,CAHF,CADF,eAoBE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAEI,MAAM,CAACI;AAApB,IApBF,EAqBGL,YAAY,gBACX,oBAAC,UAAD;AACE,IAAA,IAAI,EAAEJ,SAAS,GAAG,QAAH,GAAc,UAD/B;AAEE,IAAA,KAAK,EAAEG,KAFT;AAGE,IAAA,OAAO,EAAEJ;AAHX,IADW,GAMT,IA3BN,CADF;AA+BD;AAED,OAAO,SAASW,mBAAT,CAA6B;AAClCC,EAAAA,KADkC;AAElCC,EAAAA,UAAU,GAAG,GAFqB;AAGlCT,EAAAA,KAHkC;AAIlCU,EAAAA;AAJkC,CAA7B,EAKoC;AACzC,QAAMC,YAAY,GAAGrB,KAAK,CAACU,KAAD,CAAL,CAAaY,IAAb,CAAkB,GAAlB,EAAuBC,GAAvB,GAA6BC,QAA7B,EAArB;AACA,QAAMC,SAAS,GAAGP,KAAK,CAACQ,IAAN,GAAahB,KAAb,GAAqBW,YAAvC;AAEA,QAAMM,SAAS,GAAGjC,KAAK,CAACkC,OAAN,CAAc,MAAM;AACpC,WAAO,IAAIC,IAAI,CAACC,cAAT,CAAwBV,MAAxB,EAAgC;AACrCW,MAAAA,KAAK,EAAE,OAD8B;AAErCC,MAAAA,GAAG,EAAE;AAFgC,KAAhC,CAAP;AAID,GALiB,EAKf,CAACZ,MAAD,CALe,CAAlB;AAOA,sBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE,CAACR,MAAM,CAACqB,gBAAR,EAA0B;AAAEvB,MAAAA,KAAK,EAAEe;AAAT,KAA1B;AAAb,KACGP,KAAK,CAACQ,IAAN,GAAaC,SAAS,CAACO,MAAV,CAAiBhB,KAAK,CAACQ,IAAvB,CAAb,GAA4CP,UAD/C,CADF;AAKD;AAED,OAAO,SAASgB,kBAAT,CAA4B;AACjCjB,EAAAA,KADiC;AAEjCC,EAAAA,UAAU,GAAG,GAFoB;AAGjCX,EAAAA,SAAS,GAAG,MAHqB;AAIjCE,EAAAA,KAJiC;AAKjCU,EAAAA;AALiC,CAA5B,EAMmE;AAAA;;AACxE,QAAMgB,SAAS,GAAG,iBAAAlB,KAAK,CAACmB,KAAN,8DAAaC,MAAb,KAAuB,CAAzC;AACA,QAAMjB,YAAY,GAAGrB,KAAK,CAACU,KAAD,CAAL,CAAaY,IAAb,CAAkB,GAAlB,EAAuBC,GAAvB,GAA6BC,QAA7B,EAArB;AACA,QAAMC,SAAS,GAAGW,SAAS,GAAG1B,KAAH,GAAWW,YAAtC;AAEA,QAAMM,SAAS,GAAGjC,KAAK,CAACkC,OAAN,CAAc,MAAM;AACpC,WAAO,IAAIC,IAAI,CAACC,cAAT,CAAwBV,MAAxB,EAAgC;AACrCW,MAAAA,KAAK,EAAE,OAD8B;AAErCC,MAAAA,GAAG,EAAE;AAFgC,KAAhC,CAAP;AAID,GALiB,EAKf,CAACZ,MAAD,CALe,CAAlB;AAOA,MAAIX,KAAK,GAAGU,UAAZ;;AACA,MAAIiB,SAAJ,EAAe;AACb,QAAIA,SAAS,IAAI,CAAjB,EAAoB;AAClB3B,MAAAA,KAAK,GAAGS,KAAK,CAACmB,KAAN,CAAaE,GAAb,CAAkBb,IAAD,IAAUC,SAAS,CAACO,MAAV,CAAiBR,IAAjB,CAA3B,EAAmDc,IAAnD,CAAwD,IAAxD,CAAR;AACD,KAFD,MAEO;AACL/B,MAAAA,KAAK,GACHkB,SAAS,CAACO,MAAV,CAAiBhB,KAAK,CAACmB,KAAN,CAAa,CAAb,CAAjB,IAAqC,OAAMD,SAAS,GAAG,CAAE,IAAG5B,SAAU,GADxE;AAED;AACF;;AAED,sBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE,CAACI,MAAM,CAACqB,gBAAR,EAA0B;AAAEvB,MAAAA,KAAK,EAAEe;AAAT,KAA1B;AAAb,KAA+DhB,KAA/D,CADF;AAGD;AAED,OAAO,SAASgC,kBAAT,CAA4B;AACjCrB,EAAAA,MADiC;AAEjCF,EAAAA,KAFiC;AAGjCwB,EAAAA,eAAe,GAAG,GAHe;AAIjCC,EAAAA,UAAU,GAAG,OAJoB;AAKjCC,EAAAA,QAAQ,GAAG,KALsB;AAMjClC,EAAAA;AANiC,CAA5B,EAOoC;AACzC,QAAMiB,SAAS,GAAGjC,KAAK,CAACkC,OAAN,CAAc,MAAM;AACpC,WAAO,IAAIC,IAAI,CAACC,cAAT,CAAwBV,MAAxB,EAAgC;AACrCW,MAAAA,KAAK,EAAE,OAD8B;AAErCC,MAAAA,GAAG,EAAE;AAFgC,KAAhC,CAAP;AAID,GALiB,EAKf,CAACZ,MAAD,CALe,CAAlB;AAOA,QAAMC,YAAY,GAAGrB,KAAK,CAACU,KAAD,CAAL,CAAaY,IAAb,CAAkB,GAAlB,EAAuBC,GAAvB,GAA6BC,QAA7B,EAArB;AACA,QAAMqB,UAAU,GAAG3B,KAAK,CAAC4B,SAAN,GAAkBpC,KAAlB,GAA0BW,YAA7C;AACA,QAAM0B,QAAQ,GAAG7B,KAAK,CAAC8B,OAAN,GAAgBtC,KAAhB,GAAwBW,YAAzC;AAEA,sBACE,uDACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE,CAACT,MAAM,CAACqC,eAAR,EAAyB;AAAEvC,MAAAA,KAAK,EAAEmC;AAAT,KAAzB;AAAb,KACG3B,KAAK,CAAC4B,SAAN,GAAkBnB,SAAS,CAACO,MAAV,CAAiBhB,KAAK,CAAC4B,SAAvB,CAAlB,GAAsDH,UADzD,CADF,eAIE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE,CAAC/B,MAAM,CAAC8B,eAAR,EAAyB;AAAEhC,MAAAA;AAAF,KAAzB;AAAb,KAAmDgC,eAAnD,CAJF,eAKE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE,CAAC9B,MAAM,CAACqC,eAAR,EAAyB;AAAEvC,MAAAA,KAAK,EAAEqC;AAAT,KAAzB;AAAb,KACG7B,KAAK,CAAC8B,OAAN,GAAgBrB,SAAS,CAACO,MAAV,CAAiBhB,KAAK,CAAC8B,OAAvB,CAAhB,GAAkDJ,QADrD,CALF,CADF;AAWD;AAED,MAAMhC,MAAM,GAAGhB,UAAU,CAACsD,MAAX,CAAkB;AAC/BlC,EAAAA,IAAI,EAAE;AACJmC,IAAAA,IAAI,EAAE;AADF,GADyB;AAI/BC,EAAAA,QAAQ,EAAE;AACRC,IAAAA,aAAa,EAAE,CADP;AAERC,IAAAA,SAAS,EAAE;AAFH,GAJqB;AAQ/BC,EAAAA,WAAW,EAAE;AACXF,IAAAA,aAAa,EAAE;AADJ,GARkB;AAW/BxC,EAAAA,MAAM,EAAE;AACN2C,IAAAA,MAAM,EAAE,EADF;AAENC,IAAAA,UAAU,EAAE,QAFN;AAGNC,IAAAA,aAAa,EAAE,KAHT;AAINC,IAAAA,WAAW,EAAE,EAJP;AAKNC,IAAAA,YAAY,EAAE;AALR,GAXuB;AAkB/B7C,EAAAA,sBAAsB,EAAE;AAAE8C,IAAAA,SAAS,EAAE,CAAb;AAAgBH,IAAAA,aAAa,EAAE;AAA/B,GAlBO;AAmB/BjD,EAAAA,KAAK,EAAE;AAAEC,IAAAA,KAAK,EAAE,MAAT;AAAiBoD,IAAAA,aAAa,EAAE,CAAhC;AAAmCC,IAAAA,QAAQ,EAAE;AAA7C,GAnBwB;AAoB/B9B,EAAAA,gBAAgB,EAAE;AAAEvB,IAAAA,KAAK,EAAE,MAAT;AAAiBqD,IAAAA,QAAQ,EAAE;AAA3B,GApBa;AAqB/Bd,EAAAA,eAAe,EAAE;AAAEvC,IAAAA,KAAK,EAAE,MAAT;AAAiBqD,IAAAA,QAAQ,EAAE;AAA3B,GArBc;AAsB/BC,EAAAA,wBAAwB,EAAE;AAAED,IAAAA,QAAQ,EAAE;AAAZ,GAtBK;AAuB/BE,EAAAA,6BAA6B,EAAE;AAC7BF,IAAAA,QAAQ,EAAE,EADmB;AAE7BF,IAAAA,SAAS,EAAE,CAAC,CAFiB;AAG7BK,IAAAA,UAAU,EAAE;AAHiB,GAvBA;AA6B/BxB,EAAAA,eAAe,EAAE;AACfhC,IAAAA,KAAK,EAAE,qBADQ;AAEfqD,IAAAA,QAAQ,EAAE,EAFK;AAGfJ,IAAAA,WAAW,EAAE,CAHE;AAIfC,IAAAA,YAAY,EAAE;AAJC,GA7Bc;AAmC/BO,EAAAA,YAAY,EAAE;AACZb,IAAAA,SAAS,EAAE;AADC,GAnCiB;AAsC/Bc,EAAAA,MAAM,EAAE;AAAEV,IAAAA,aAAa,EAAE;AAAjB,GAtCuB;AAuC/BW,EAAAA,GAAG,EAAE;AAAEX,IAAAA,aAAa,EAAE;AAAjB;AAvC0B,CAAlB,CAAf","sourcesContent":["import * as React from 'react'\nimport { View, StyleSheet } from 'react-native'\nimport { IconButton, Text } from 'react-native-paper'\nimport { ModeType } from './Calendar'\nimport { LocalState } from './DatePickerModalContent'\nimport { useHeaderTextColor } from '../utils'\nimport Color from 'color'\n\nexport interface HeaderPickProps {\n moreLabel?: string\n label?: string\n emptyLabel?: string\n saveLabel?: string\n headerSeparator?: string\n startLabel?: string\n endLabel?: string\n}\n\nexport interface HeaderContentProps extends HeaderPickProps {\n state: LocalState\n mode: ModeType\n collapsed: boolean\n onToggle: () => any\n locale: undefined | string\n}\n\nfunction getLabel(mode: ModeType, configuredLabel?: string) {\n if (configuredLabel) {\n return configuredLabel\n }\n if (mode === 'range') {\n return 'Select period'\n }\n if (mode === 'single') {\n return 'Select date'\n }\n\n if (mode === 'multiple') {\n return 'Select dates'\n }\n return '...?'\n}\n\nexport default function DatePickerModalHeader(props: HeaderContentProps) {\n const { onToggle, collapsed, mode, moreLabel } = props\n\n const label = getLabel(props.mode, props.label)\n\n const color = useHeaderTextColor()\n const allowEditing = mode !== 'multiple'\n return (\n <View style={[styles.header]}>\n <View>\n <Text style={[styles.label, { color }]}>{label.toUpperCase()}</Text>\n\n <View style={styles.headerContentContainer}>\n {mode === 'range' ? (\n <HeaderContentRange {...props} color={color} />\n ) : null}\n {mode === 'single' ? (\n <HeaderContentSingle {...props} color={color} />\n ) : null}\n {mode === 'multiple' ? (\n <HeaderContentMulti\n {...props}\n color={color}\n moreLabel={moreLabel}\n />\n ) : null}\n </View>\n </View>\n <View style={styles.fill} />\n {allowEditing ? (\n <IconButton\n icon={collapsed ? 'pencil' : 'calendar'}\n color={color}\n onPress={onToggle}\n />\n ) : null}\n </View>\n )\n}\n\nexport function HeaderContentSingle({\n state,\n emptyLabel = ' ',\n color,\n locale,\n}: HeaderContentProps & { color: string }) {\n const lighterColor = Color(color).fade(0.5).rgb().toString()\n const dateColor = state.date ? color : lighterColor\n\n const formatter = React.useMemo(() => {\n return new Intl.DateTimeFormat(locale, {\n month: 'short',\n day: 'numeric',\n })\n }, [locale])\n\n return (\n <Text style={[styles.singleHeaderText, { color: dateColor }]}>\n {state.date ? formatter.format(state.date) : emptyLabel}\n </Text>\n )\n}\n\nexport function HeaderContentMulti({\n state,\n emptyLabel = ' ',\n moreLabel = 'more',\n color,\n locale,\n}: HeaderContentProps & { color: string; moreLabel: string | undefined }) {\n const dateCount = state.dates?.length || 0\n const lighterColor = Color(color).fade(0.5).rgb().toString()\n const dateColor = dateCount ? color : lighterColor\n\n const formatter = React.useMemo(() => {\n return new Intl.DateTimeFormat(locale, {\n month: 'short',\n day: 'numeric',\n })\n }, [locale])\n\n let label = emptyLabel\n if (dateCount) {\n if (dateCount <= 2) {\n label = state.dates!.map((date) => formatter.format(date)).join(', ')\n } else {\n label =\n formatter.format(state.dates![0]) + ` (+ ${dateCount - 1} ${moreLabel})`\n }\n }\n\n return (\n <Text style={[styles.singleHeaderText, { color: dateColor }]}>{label}</Text>\n )\n}\n\nexport function HeaderContentRange({\n locale,\n state,\n headerSeparator = '-',\n startLabel = 'Start',\n endLabel = 'End',\n color,\n}: HeaderContentProps & { color: string }) {\n const formatter = React.useMemo(() => {\n return new Intl.DateTimeFormat(locale, {\n month: 'short',\n day: 'numeric',\n })\n }, [locale])\n\n const lighterColor = Color(color).fade(0.5).rgb().toString()\n const startColor = state.startDate ? color : lighterColor\n const endColor = state.endDate ? color : lighterColor\n\n return (\n <>\n <Text style={[styles.rangeHeaderText, { color: startColor }]}>\n {state.startDate ? formatter.format(state.startDate) : startLabel}\n </Text>\n <Text style={[styles.headerSeparator, { color }]}>{headerSeparator}</Text>\n <Text style={[styles.rangeHeaderText, { color: endColor }]}>\n {state.endDate ? formatter.format(state.endDate) : endLabel}\n </Text>\n </>\n )\n}\n\nconst styles = StyleSheet.create({\n fill: {\n flex: 1,\n },\n animated: {\n paddingBottom: 0,\n elevation: 4,\n },\n safeContent: {\n paddingBottom: 0,\n },\n header: {\n height: 75,\n alignItems: 'center',\n flexDirection: 'row',\n paddingLeft: 24,\n paddingRight: 12,\n },\n headerContentContainer: { marginTop: 5, flexDirection: 'row' },\n label: { color: '#fff', letterSpacing: 1, fontSize: 13 },\n singleHeaderText: { color: '#fff', fontSize: 25 },\n rangeHeaderText: { color: '#fff', fontSize: 25 },\n excludeInRangeHeaderText: { fontSize: 25 },\n excludeInRangeHeaderTextSmall: {\n fontSize: 14,\n marginTop: -3,\n marginLeft: 3,\n },\n\n headerSeparator: {\n color: 'rgba(255,255,255,1)',\n fontSize: 25,\n paddingLeft: 6,\n paddingRight: 6,\n },\n appbarHeader: {\n elevation: 0,\n },\n column: { flexDirection: 'column' },\n row: { flexDirection: 'row' },\n})\n"]}
|
|
1
|
+
{"version":3,"sources":["DatePickerModalContentHeader.tsx"],"names":["React","View","StyleSheet","IconButton","Text","useHeaderTextColor","Color","getTranslation","getLabel","locale","mode","configuredLabel","DatePickerModalContentHeader","props","onToggle","collapsed","moreLabel","label","color","allowEditing","styles","header","toUpperCase","headerContentContainer","fill","undefined","HeaderContentSingle","state","emptyLabel","lighterColor","fade","rgb","toString","dateColor","date","formatter","useMemo","Intl","DateTimeFormat","month","day","singleHeaderText","format","HeaderContentMulti","dateCount","dates","length","map","join","HeaderContentRange","headerSeparator","startLabel","endLabel","startColor","startDate","endColor","endDate","rangeHeaderText","create","flex","animated","paddingBottom","elevation","safeContent","height","alignItems","flexDirection","paddingLeft","paddingRight","marginTop","letterSpacing","fontSize","excludeInRangeHeaderText","excludeInRangeHeaderTextSmall","marginLeft","appbarHeader","column","row"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { View, StyleSheet } from 'react-native'\nimport { IconButton, Text } from 'react-native-paper'\nimport type { ModeType } from './Calendar'\nimport type { LocalState } from './DatePickerModalContent'\nimport { useHeaderTextColor } from '../utils'\nimport Color from 'color'\nimport { getTranslation } from '../translations/utils'\n\nexport interface HeaderPickProps {\n moreLabel?: string\n label?: string\n emptyLabel?: string\n saveLabel?: string\n headerSeparator?: string\n startLabel?: string\n endLabel?: string\n}\n\nexport interface HeaderContentProps extends HeaderPickProps {\n state: LocalState\n mode: ModeType\n collapsed: boolean\n onToggle: () => any\n locale: string | undefined\n}\n\nfunction getLabel(\n locale: string | undefined,\n mode: ModeType,\n configuredLabel?: string\n) {\n if (configuredLabel) {\n return configuredLabel\n }\n if (mode === 'range') {\n return getTranslation(locale, 'selectRange')\n }\n if (mode === 'multiple') {\n return getTranslation(locale, 'selectMultiple')\n }\n if (mode === 'single') {\n return getTranslation(locale, 'selectSingle')\n }\n return '...?'\n}\n\nexport default function DatePickerModalContentHeader(\n props: HeaderContentProps\n) {\n const { onToggle, collapsed, mode, moreLabel } = props\n\n const label = getLabel(props.locale, props.mode, props.label)\n\n const color = useHeaderTextColor()\n const allowEditing = mode !== 'multiple'\n return (\n <View style={[styles.header]}>\n <View>\n <Text style={[styles.label, { color }]}>{label.toUpperCase()}</Text>\n\n <View style={styles.headerContentContainer}>\n {mode === 'range' ? (\n <HeaderContentRange {...props} color={color} />\n ) : null}\n {mode === 'single' ? (\n <HeaderContentSingle {...props} color={color} />\n ) : null}\n {mode === 'multiple' ? (\n <HeaderContentMulti\n {...props}\n color={color}\n moreLabel={moreLabel}\n />\n ) : null}\n </View>\n </View>\n <View style={styles.fill} />\n {allowEditing ? (\n <IconButton\n icon={collapsed ? 'pencil' : 'calendar'}\n accessibilityLabel={\n collapsed\n ? getTranslation(props.locale, 'typeInDate')\n : getTranslation(props.locale, 'pickDateFromCalendar')\n }\n color={color}\n onPress={onToggle}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n ) : null}\n </View>\n )\n}\n\nexport function HeaderContentSingle({\n state,\n emptyLabel = ' ',\n color,\n locale,\n}: HeaderContentProps & { color: string }) {\n const lighterColor = Color(color).fade(0.5).rgb().toString()\n const dateColor = state.date ? color : lighterColor\n\n const formatter = React.useMemo(() => {\n return new Intl.DateTimeFormat(locale, {\n month: 'short',\n day: 'numeric',\n })\n }, [locale])\n\n return (\n <Text style={[styles.singleHeaderText, { color: dateColor }]}>\n {state.date ? formatter.format(state.date) : emptyLabel}\n </Text>\n )\n}\n\nexport function HeaderContentMulti({\n state,\n emptyLabel = ' ',\n moreLabel = 'more',\n color,\n locale,\n}: HeaderContentProps & { color: string; moreLabel: string | undefined }) {\n const dateCount = state.dates?.length || 0\n const lighterColor = Color(color).fade(0.5).rgb().toString()\n const dateColor = dateCount ? color : lighterColor\n\n const formatter = React.useMemo(() => {\n return new Intl.DateTimeFormat(locale, {\n month: 'short',\n day: 'numeric',\n })\n }, [locale])\n\n let label = emptyLabel\n if (dateCount) {\n if (dateCount <= 2) {\n label = state.dates!.map((date) => formatter.format(date)).join(', ')\n } else {\n label =\n formatter.format(state.dates![0]) + ` (+ ${dateCount - 1} ${moreLabel})`\n }\n }\n\n return (\n <Text style={[styles.singleHeaderText, { color: dateColor }]}>{label}</Text>\n )\n}\n\nexport function HeaderContentRange({\n locale,\n state,\n headerSeparator = '-',\n startLabel = 'Start',\n endLabel = 'End',\n color,\n}: HeaderContentProps & { color: string }) {\n const formatter = React.useMemo(() => {\n return new Intl.DateTimeFormat(locale, {\n month: 'short',\n day: 'numeric',\n })\n }, [locale])\n\n const lighterColor = Color(color).fade(0.5).rgb().toString()\n const startColor = state.startDate ? color : lighterColor\n const endColor = state.endDate ? color : lighterColor\n\n return (\n <>\n <Text style={[styles.rangeHeaderText, { color: startColor }]}>\n {state.startDate ? formatter.format(state.startDate) : startLabel}\n </Text>\n <Text style={[styles.headerSeparator, { color }]}>{headerSeparator}</Text>\n <Text style={[styles.rangeHeaderText, { color: endColor }]}>\n {state.endDate ? formatter.format(state.endDate) : endLabel}\n </Text>\n </>\n )\n}\n\nconst styles = StyleSheet.create({\n fill: {\n flex: 1,\n },\n animated: {\n paddingBottom: 0,\n elevation: 4,\n },\n safeContent: {\n paddingBottom: 0,\n },\n header: {\n height: 75,\n alignItems: 'center',\n flexDirection: 'row',\n paddingLeft: 24,\n paddingRight: 12,\n },\n headerContentContainer: { marginTop: 5, flexDirection: 'row' },\n label: { color: '#fff', letterSpacing: 1, fontSize: 13 },\n singleHeaderText: { color: '#fff', fontSize: 25 },\n rangeHeaderText: { color: '#fff', fontSize: 25 },\n excludeInRangeHeaderText: { fontSize: 25 },\n excludeInRangeHeaderTextSmall: {\n fontSize: 14,\n marginTop: -3,\n marginLeft: 3,\n },\n\n headerSeparator: {\n color: 'rgba(255,255,255,1)',\n fontSize: 25,\n paddingLeft: 6,\n paddingRight: 6,\n },\n appbarHeader: {\n elevation: 0,\n },\n column: { flexDirection: 'column' },\n row: { flexDirection: 'row' },\n})\n"]}
|
|
@@ -2,11 +2,13 @@ import * as React from 'react';
|
|
|
2
2
|
import { Animated, StyleSheet, SafeAreaView } from 'react-native';
|
|
3
3
|
import { Appbar, Button } from 'react-native-paper';
|
|
4
4
|
import { useHeaderTextColor } from '../utils';
|
|
5
|
+
import { getTranslation } from '../translations/utils';
|
|
5
6
|
export default function DatePickerModalHeader(props) {
|
|
6
7
|
const {
|
|
7
|
-
|
|
8
|
-
|
|
8
|
+
disableSafeTop,
|
|
9
|
+
locale
|
|
9
10
|
} = props;
|
|
11
|
+
const saveLabel = props.saveLabel || getTranslation(locale, 'save');
|
|
10
12
|
const color = useHeaderTextColor();
|
|
11
13
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Animated.View, {
|
|
12
14
|
style: styles.animated
|
|
@@ -16,9 +18,13 @@ export default function DatePickerModalHeader(props) {
|
|
|
16
18
|
style: styles.appbarHeader
|
|
17
19
|
}, /*#__PURE__*/React.createElement(Appbar.Action, {
|
|
18
20
|
icon: "close",
|
|
21
|
+
accessibilityLabel: getTranslation(locale, 'close'),
|
|
19
22
|
onPress: props.onDismiss,
|
|
20
23
|
color: color,
|
|
21
|
-
testID: "react-native-paper-dates-close"
|
|
24
|
+
testID: "react-native-paper-dates-close" // RN types bug
|
|
25
|
+
,
|
|
26
|
+
hasTVPreferredFocus: undefined,
|
|
27
|
+
tvParallaxProperties: undefined
|
|
22
28
|
}), /*#__PURE__*/React.createElement(Appbar.Content, {
|
|
23
29
|
title: ''
|
|
24
30
|
}), /*#__PURE__*/React.createElement(Button, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DatePickerModalHeader.tsx"],"names":["React","Animated","StyleSheet","SafeAreaView","Appbar","Button","useHeaderTextColor","DatePickerModalHeader","props","
|
|
1
|
+
{"version":3,"sources":["DatePickerModalHeader.tsx"],"names":["React","Animated","StyleSheet","SafeAreaView","Appbar","Button","useHeaderTextColor","getTranslation","DatePickerModalHeader","props","disableSafeTop","locale","saveLabel","color","styles","animated","safeContent","safeContentNoTop","appbarHeader","onDismiss","undefined","onSave","create","fill","flex","paddingBottom","elevation","paddingTop","header","height","alignItems","flexDirection","paddingLeft","paddingRight","headerContentContainer","marginTop","label","letterSpacing","fontSize","singleHeaderText","rangeHeaderText","headerTextFilled","headerTextEmpty","headerSeparator","backgroundColor"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,QAAT,EAAmBC,UAAnB,EAA+BC,YAA/B,QAAmD,cAAnD;AACA,SAASC,MAAT,EAAiBC,MAAjB,QAA+B,oBAA/B;AAEA,SAASC,kBAAT,QAAmC,UAAnC;AACA,SAASC,cAAT,QAA+B,uBAA/B;AAUA,eAAe,SAASC,qBAAT,CACbC,KADa,EAEb;AACA,QAAM;AAAEC,IAAAA,cAAF;AAAkBC,IAAAA;AAAlB,MAA6BF,KAAnC;AACA,QAAMG,SAAS,GAAGH,KAAK,CAACG,SAAN,IAAmBL,cAAc,CAACI,MAAD,EAAS,MAAT,CAAnD;AACA,QAAME,KAAK,GAAGP,kBAAkB,EAAhC;AACA,sBACE,uDACE,oBAAC,QAAD,CAAU,IAAV;AAAe,IAAA,KAAK,EAAEQ,MAAM,CAACC;AAA7B,kBACE,oBAAC,YAAD;AACE,IAAA,KAAK,EAAE,CACLD,MAAM,CAACE,WADF,EAELN,cAAc,IAAII,MAAM,CAACG,gBAFpB;AADT,kBAME,oBAAC,MAAD;AAAQ,IAAA,KAAK,EAAEH,MAAM,CAACI;AAAtB,kBACE,oBAAC,MAAD,CAAQ,MAAR;AACE,IAAA,IAAI,EAAC,OADP;AAEE,IAAA,kBAAkB,EAAEX,cAAc,CAACI,MAAD,EAAS,OAAT,CAFpC;AAGE,IAAA,OAAO,EAAEF,KAAK,CAACU,SAHjB;AAIE,IAAA,KAAK,EAAEN,KAJT;AAKE,IAAA,MAAM,EAAC,gCALT,CAME;AANF;AAOE,IAAA,mBAAmB,EAAEO,SAPvB;AAQE,IAAA,oBAAoB,EAAEA;AARxB,IADF,eAWE,oBAAC,MAAD,CAAQ,OAAR;AAAgB,IAAA,KAAK,EAAE;AAAvB,IAXF,eAYE,oBAAC,MAAD;AACE,IAAA,KAAK,EAAEP,KADT;AAEE,IAAA,OAAO,EAAEJ,KAAK,CAACY,MAFjB;AAGE,IAAA,MAAM,EAAC;AAHT,KAKGT,SALH,CAZF,CANF,CADF,CADF,CADF;AAiCD;AAED,MAAME,MAAM,GAAGZ,UAAU,CAACoB,MAAX,CAAkB;AAC/BC,EAAAA,IAAI,EAAE;AACJC,IAAAA,IAAI,EAAE;AADF,GADyB;AAI/BT,EAAAA,QAAQ,EAAE;AACRU,IAAAA,aAAa,EAAE,CADP;AAERC,IAAAA,SAAS,EAAE;AAFH,GAJqB;AAQ/BV,EAAAA,WAAW,EAAE;AACXS,IAAAA,aAAa,EAAE;AADJ,GARkB;AAW/BR,EAAAA,gBAAgB,EAAE;AAChBU,IAAAA,UAAU,EAAE;AADI,GAXa;AAc/BC,EAAAA,MAAM,EAAE;AACNC,IAAAA,MAAM,EAAE,EADF;AAENC,IAAAA,UAAU,EAAE,QAFN;AAGNC,IAAAA,aAAa,EAAE,KAHT;AAINC,IAAAA,WAAW,EAAE,EAJP;AAKNC,IAAAA,YAAY,EAAE;AALR,GAduB;AAqB/BC,EAAAA,sBAAsB,EAAE;AAAEC,IAAAA,SAAS,EAAE,CAAb;AAAgBJ,IAAAA,aAAa,EAAE;AAA/B,GArBO;AAsB/BK,EAAAA,KAAK,EAAE;AAAEvB,IAAAA,KAAK,EAAE,MAAT;AAAiBwB,IAAAA,aAAa,EAAE,CAAhC;AAAmCC,IAAAA,QAAQ,EAAE;AAA7C,GAtBwB;AAuB/BC,EAAAA,gBAAgB,EAAE;AAAE1B,IAAAA,KAAK,EAAE,MAAT;AAAiByB,IAAAA,QAAQ,EAAE;AAA3B,GAvBa;AAwB/BE,EAAAA,eAAe,EAAE;AAAE3B,IAAAA,KAAK,EAAE,MAAT;AAAiByB,IAAAA,QAAQ,EAAE;AAA3B,GAxBc;AAyB/BG,EAAAA,gBAAgB,EAAE;AAAE5B,IAAAA,KAAK,EAAE;AAAT,GAzBa;AA0B/B6B,EAAAA,eAAe,EAAE;AAAE7B,IAAAA,KAAK,EAAE;AAAT,GA1Bc;AA2B/B8B,EAAAA,eAAe,EAAE;AACf9B,IAAAA,KAAK,EAAE,qBADQ;AAEfyB,IAAAA,QAAQ,EAAE,EAFK;AAGfN,IAAAA,WAAW,EAAE,CAHE;AAIfC,IAAAA,YAAY,EAAE;AAJC,GA3Bc;AAiC/Bf,EAAAA,YAAY,EAAE;AACZQ,IAAAA,SAAS,EAAE,CADC;AAEZkB,IAAAA,eAAe,EAAE,aAFL,CAGZ;;AAHY;AAjCiB,CAAlB,CAAf","sourcesContent":["import * as React from 'react'\nimport { Animated, StyleSheet, SafeAreaView } from 'react-native'\nimport { Appbar, Button } from 'react-native-paper'\n\nimport { useHeaderTextColor } from '../utils'\nimport { getTranslation } from '../translations/utils'\n\nexport interface DatePickerModalHeaderProps {\n disableSafeTop?: boolean\n saveLabel?: string\n onDismiss: () => void\n onSave: () => void\n locale: string | undefined\n}\n\nexport default function DatePickerModalHeader(\n props: DatePickerModalHeaderProps\n) {\n const { disableSafeTop, locale } = props\n const saveLabel = props.saveLabel || getTranslation(locale, 'save')\n const color = useHeaderTextColor()\n return (\n <>\n <Animated.View style={styles.animated}>\n <SafeAreaView\n style={[\n styles.safeContent,\n disableSafeTop && styles.safeContentNoTop,\n ]}\n >\n <Appbar style={styles.appbarHeader}>\n <Appbar.Action\n icon=\"close\"\n accessibilityLabel={getTranslation(locale, 'close')}\n onPress={props.onDismiss}\n color={color}\n testID=\"react-native-paper-dates-close\"\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n <Appbar.Content title={''} />\n <Button\n color={color}\n onPress={props.onSave}\n testID=\"react-native-paper-dates-save\"\n >\n {saveLabel}\n </Button>\n </Appbar>\n </SafeAreaView>\n </Animated.View>\n </>\n )\n}\n\nconst styles = StyleSheet.create({\n fill: {\n flex: 1,\n },\n animated: {\n paddingBottom: 0,\n elevation: 4,\n },\n safeContent: {\n paddingBottom: 0,\n },\n safeContentNoTop: {\n paddingTop: 0,\n },\n header: {\n height: 75,\n alignItems: 'center',\n flexDirection: 'row',\n paddingLeft: 24,\n paddingRight: 12,\n },\n headerContentContainer: { marginTop: 5, flexDirection: 'row' },\n label: { color: '#fff', letterSpacing: 1, fontSize: 13 },\n singleHeaderText: { color: '#fff', fontSize: 25 },\n rangeHeaderText: { color: '#fff', fontSize: 25 },\n headerTextFilled: { color: 'rgba(255,255,255,1)' },\n headerTextEmpty: { color: 'rgba(255,255,255,0.5)' },\n headerSeparator: {\n color: 'rgba(255,255,255,1)',\n fontSize: 25,\n paddingLeft: 6,\n paddingRight: 6,\n },\n appbarHeader: {\n elevation: 0,\n backgroundColor: 'transparent',\n // alignItems:'center'\n },\n})\n"]}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { Animated, SafeAreaView, StyleSheet } from 'react-native';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import { useHeaderBackgroundColor } from '../utils';
|
|
4
|
-
export default function DatePickerModalHeaderBackground({
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
export default function DatePickerModalHeaderBackground(_ref) {
|
|
5
|
+
let {
|
|
6
|
+
children
|
|
7
|
+
} = _ref;
|
|
7
8
|
const backgroundColor = useHeaderBackgroundColor();
|
|
8
9
|
return /*#__PURE__*/React.createElement(Animated.View, {
|
|
9
10
|
style: [styles.animated, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DatePickerModalHeaderBackground.tsx"],"names":["Animated","SafeAreaView","StyleSheet","React","useHeaderBackgroundColor","DatePickerModalHeaderBackground","children","backgroundColor","styles","animated","safeContent","create","paddingBottom","elevation"],"mappings":"AAAA,SAASA,QAAT,EAAmBC,YAAnB,EAAiCC,UAAjC,QAAmD,cAAnD;AACA,OAAO,KAAKC,KAAZ,MAAuB,OAAvB;AACA,SAASC,wBAAT,QAAyC,UAAzC;AAEA,eAAe,SAASC,+BAAT,
|
|
1
|
+
{"version":3,"sources":["DatePickerModalHeaderBackground.tsx"],"names":["Animated","SafeAreaView","StyleSheet","React","useHeaderBackgroundColor","DatePickerModalHeaderBackground","children","backgroundColor","styles","animated","safeContent","create","paddingBottom","elevation"],"mappings":"AAAA,SAASA,QAAT,EAAmBC,YAAnB,EAAiCC,UAAjC,QAAmD,cAAnD;AACA,OAAO,KAAKC,KAAZ,MAAuB,OAAvB;AACA,SAASC,wBAAT,QAAyC,UAAzC;AAEA,eAAe,SAASC,+BAAT,OAIZ;AAAA,MAJqD;AACtDC,IAAAA;AADsD,GAIrD;AACD,QAAMC,eAAe,GAAGH,wBAAwB,EAAhD;AAEA,sBACE,oBAAC,QAAD,CAAU,IAAV;AACE,IAAA,KAAK,EAAE,CACLI,MAAM,CAACC,QADF,EAEL;AACEF,MAAAA;AADF,KAFK;AADT,kBAQE,oBAAC,YAAD;AAAc,IAAA,KAAK,EAAEC,MAAM,CAACE;AAA5B,KAA0CJ,QAA1C,CARF,CADF;AAYD;AAED,MAAME,MAAM,GAAGN,UAAU,CAACS,MAAX,CAAkB;AAC/BF,EAAAA,QAAQ,EAAE;AACRG,IAAAA,aAAa,EAAE,CADP;AAERC,IAAAA,SAAS,EAAE;AAFH,GADqB;AAK/BH,EAAAA,WAAW,EAAE;AACXE,IAAAA,aAAa,EAAE;AADJ;AALkB,CAAlB,CAAf","sourcesContent":["import { Animated, SafeAreaView, StyleSheet } from 'react-native'\nimport * as React from 'react'\nimport { useHeaderBackgroundColor } from '../utils'\n\nexport default function DatePickerModalHeaderBackground({\n children,\n}: {\n children: any\n}) {\n const backgroundColor = useHeaderBackgroundColor()\n\n return (\n <Animated.View\n style={[\n styles.animated,\n {\n backgroundColor,\n },\n ]}\n >\n <SafeAreaView style={styles.safeContent}>{children}</SafeAreaView>\n </Animated.View>\n )\n}\n\nconst styles = StyleSheet.create({\n animated: {\n paddingBottom: 0,\n elevation: 4,\n },\n safeContent: {\n paddingBottom: 0,\n },\n})\n"]}
|
|
@@ -1,19 +1,27 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { View } from 'react-native';
|
|
3
3
|
import { Text, IconButton } from 'react-native-paper';
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
export default function DateRangeInput() {
|
|
4
|
+
import DatePickerModal from './DatePickerModal'; // WORK IN PROGRESS
|
|
5
|
+
|
|
6
|
+
export default function DateRangeInput(_ref) {
|
|
7
|
+
let {
|
|
8
|
+
locale
|
|
9
|
+
} = _ref;
|
|
7
10
|
const [visible, setVisible] = React.useState(false);
|
|
8
11
|
const onDismiss = React.useCallback(() => {
|
|
9
12
|
setVisible(false);
|
|
10
13
|
}, [setVisible]);
|
|
11
14
|
const onConfirm = React.useCallback( // eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
_ref2 => {
|
|
16
|
+
let {
|
|
17
|
+
startDate,
|
|
18
|
+
endDate
|
|
19
|
+
} = _ref2;
|
|
16
20
|
setVisible(false);
|
|
21
|
+
console.log({
|
|
22
|
+
startDate,
|
|
23
|
+
endDate
|
|
24
|
+
});
|
|
17
25
|
}, [setVisible]);
|
|
18
26
|
return /*#__PURE__*/React.createElement(View, {
|
|
19
27
|
style: {
|
|
@@ -24,13 +32,7 @@ export default function DateRangeInput() {
|
|
|
24
32
|
style: {
|
|
25
33
|
flex: 1
|
|
26
34
|
}
|
|
27
|
-
}, /*#__PURE__*/React.createElement(
|
|
28
|
-
value: '',
|
|
29
|
-
keyboardType: 'numeric',
|
|
30
|
-
placeholder: 'DD-MM-YYY',
|
|
31
|
-
mask: 'DD-MM-YYY',
|
|
32
|
-
onChangeText: () => {}
|
|
33
|
-
}), /*#__PURE__*/React.createElement(Text, null, "Van")), /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(Text, {
|
|
35
|
+
}, /*#__PURE__*/React.createElement(Text, null, "Van")), /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(Text, {
|
|
34
36
|
style: {
|
|
35
37
|
fontSize: 16,
|
|
36
38
|
marginLeft: 12,
|
|
@@ -45,21 +47,19 @@ export default function DateRangeInput() {
|
|
|
45
47
|
style: {
|
|
46
48
|
flex: 1
|
|
47
49
|
}
|
|
48
|
-
}, /*#__PURE__*/React.createElement(
|
|
49
|
-
value: '',
|
|
50
|
-
keyboardType: 'numeric',
|
|
51
|
-
placeholder: 'DD-MM-YYY',
|
|
52
|
-
mask: 'DD-MM-YYY',
|
|
53
|
-
onChangeText: () => {}
|
|
54
|
-
}), /*#__PURE__*/React.createElement(Text, null, "Tot")), /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(IconButton, {
|
|
50
|
+
}, /*#__PURE__*/React.createElement(Text, null, "Tot")), /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(IconButton, {
|
|
55
51
|
icon: "calendar",
|
|
56
|
-
onPress: () => setVisible(true)
|
|
52
|
+
onPress: () => setVisible(true) // RN types bug
|
|
53
|
+
,
|
|
54
|
+
hasTVPreferredFocus: undefined,
|
|
55
|
+
tvParallaxProperties: undefined
|
|
57
56
|
}), /*#__PURE__*/React.createElement(Text, {
|
|
58
57
|
style: {
|
|
59
58
|
opacity: 0
|
|
60
59
|
},
|
|
61
60
|
accessible: false
|
|
62
61
|
}, "tot")), /*#__PURE__*/React.createElement(DatePickerModal, {
|
|
62
|
+
locale: locale,
|
|
63
63
|
mode: "range",
|
|
64
64
|
visible: visible,
|
|
65
65
|
onDismiss: onDismiss,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DateRangeInput.tsx"],"names":["React","View","Text","IconButton","
|
|
1
|
+
{"version":3,"sources":["DateRangeInput.tsx"],"names":["React","View","Text","IconButton","DatePickerModal","DateRangeInput","locale","visible","setVisible","useState","onDismiss","useCallback","onConfirm","startDate","endDate","console","log","flexDirection","alignItems","flex","fontSize","marginLeft","marginRight","opacity","undefined"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,IAAT,QAAqB,cAArB;AACA,SAASC,IAAT,EAAeC,UAAf,QAAiC,oBAAjC;AAEA,OAAOC,eAAP,MAA4B,mBAA5B,C,CAEA;;AACA,eAAe,SAASC,cAAT,OAAwD;AAAA,MAAhC;AAAEC,IAAAA;AAAF,GAAgC;AACrE,QAAM,CAACC,OAAD,EAAUC,UAAV,IAAwBR,KAAK,CAACS,QAAN,CAAwB,KAAxB,CAA9B;AACA,QAAMC,SAAS,GAAGV,KAAK,CAACW,WAAN,CAAkB,MAAM;AACxCH,IAAAA,UAAU,CAAC,KAAD,CAAV;AACD,GAFiB,EAEf,CAACA,UAAD,CAFe,CAAlB;AAGA,QAAMI,SAAS,GAAGZ,KAAK,CAACW,WAAN,EAChB;AACA,WAA8D;AAAA,QAA7D;AAAEE,MAAAA,SAAF;AAAaC,MAAAA;AAAb,KAA6D;AAC5DN,IAAAA,UAAU,CAAC,KAAD,CAAV;AACAO,IAAAA,OAAO,CAACC,GAAR,CAAY;AAAEH,MAAAA,SAAF;AAAaC,MAAAA;AAAb,KAAZ;AACD,GALe,EAMhB,CAACN,UAAD,CANgB,CAAlB;AASA,sBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAES,MAAAA,aAAa,EAAE,KAAjB;AAAwBC,MAAAA,UAAU,EAAE;AAApC;AAAb,kBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAEC,MAAAA,IAAI,EAAE;AAAR;AAAb,kBAQE,oBAAC,IAAD,cARF,CADF,eAWE,oBAAC,IAAD,qBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAEC,MAAAA,QAAQ,EAAE,EAAZ;AAAgBC,MAAAA,UAAU,EAAE,EAA5B;AAAgCC,MAAAA,WAAW,EAAE;AAA7C;AAAb,UADF,eAIE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE;AAAX,KAAb;AAA6B,IAAA,UAAU,EAAE;AAAzC,WAJF,CAXF,eAmBE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAEJ,MAAAA,IAAI,EAAE;AAAR;AAAb,kBAQE,oBAAC,IAAD,cARF,CAnBF,eA6BE,oBAAC,IAAD,qBACE,oBAAC,UAAD;AACE,IAAA,IAAI,EAAC,UADP;AAEE,IAAA,OAAO,EAAE,MAAMX,UAAU,CAAC,IAAD,CAF3B,CAGE;AAHF;AAIE,IAAA,mBAAmB,EAAEgB,SAJvB;AAKE,IAAA,oBAAoB,EAAEA;AALxB,IADF,eAQE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE;AAAED,MAAAA,OAAO,EAAE;AAAX,KAAb;AAA6B,IAAA,UAAU,EAAE;AAAzC,WARF,CA7BF,eAyCE,oBAAC,eAAD;AACE,IAAA,MAAM,EAAEjB,MADV;AAEE,IAAA,IAAI,EAAC,OAFP;AAGE,IAAA,OAAO,EAAEC,OAHX;AAIE,IAAA,SAAS,EAAEG,SAJb;AAKE,IAAA,SAAS,EAAEE,SALb;AAME,IAAA,SAAS,EAAEY,SANb;AAOE,IAAA,OAAO,EAAEA;AAPX,IAzCF,CADF;AAqDD","sourcesContent":["import * as React from 'react'\nimport { View } from 'react-native'\nimport { Text, IconButton } from 'react-native-paper'\n\nimport DatePickerModal from './DatePickerModal'\n\n// WORK IN PROGRESS\nexport default function DateRangeInput({ locale }: { locale: string }) {\n const [visible, setVisible] = React.useState<boolean>(false)\n const onDismiss = React.useCallback(() => {\n setVisible(false)\n }, [setVisible])\n const onConfirm = React.useCallback(\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n ({ startDate, endDate }: { startDate: any; endDate: any }) => {\n setVisible(false)\n console.log({ startDate, endDate })\n },\n [setVisible]\n )\n\n return (\n <View style={{ flexDirection: 'row', alignItems: 'center' }}>\n <View style={{ flex: 1 }}>\n {/*<DatePickerInput*/}\n {/* value={''}*/}\n {/* keyboardType={'numeric'}*/}\n {/* placeholder={'DD-MM-YYY'}*/}\n {/* mask={'DD-MM-YYY'}*/}\n {/* onChangeText={() => {}}*/}\n {/*/>*/}\n <Text>Van</Text>\n </View>\n <View>\n <Text style={{ fontSize: 16, marginLeft: 12, marginRight: 12 }}>\n to\n </Text>\n <Text style={{ opacity: 0 }} accessible={false}>\n tot\n </Text>\n </View>\n <View style={{ flex: 1 }}>\n {/*<DatePickerInput*/}\n {/* // value={''}*/}\n {/* // keyboardType={'numeric'}*/}\n {/* // placeholder={'DD-MM-YYY'}*/}\n {/* // mask={'DD-MM-YYY'}*/}\n {/* // onChangeText={() => {}}*/}\n {/*/>*/}\n <Text>Tot</Text>\n </View>\n <View>\n <IconButton\n icon=\"calendar\"\n onPress={() => setVisible(true)}\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n />\n <Text style={{ opacity: 0 }} accessible={false}>\n tot\n </Text>\n </View>\n <DatePickerModal\n locale={locale}\n mode=\"range\"\n visible={visible}\n onDismiss={onDismiss}\n onConfirm={onConfirm}\n startDate={undefined}\n endDate={undefined}\n />\n </View>\n )\n}\n"]}
|
package/lib/module/Date/Day.js
CHANGED
|
@@ -49,7 +49,11 @@ function Day(props) {
|
|
|
49
49
|
onPress: disabled ? undefined : onPress,
|
|
50
50
|
style: [styles.button, {
|
|
51
51
|
backgroundColor: inRange ? selectColor : undefined
|
|
52
|
-
}]
|
|
52
|
+
}],
|
|
53
|
+
accessibilityRole: "button" // RN types bug
|
|
54
|
+
,
|
|
55
|
+
hasTVPreferredFocus: undefined,
|
|
56
|
+
tvParallaxProperties: undefined
|
|
53
57
|
}, /*#__PURE__*/React.createElement(View, {
|
|
54
58
|
style: [styles.day, isToday ? {
|
|
55
59
|
borderColor: borderColor
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Day.tsx"],"names":["React","Text","TouchableRipple","StyleSheet","View","DayRange","daySize","EmptyDayPure","styles","empty","EmptyDay","memo","Day","props","day","month","year","selected","inRange","leftCrop","rightCrop","onPressDate","primaryColor","selectColor","isToday","disabled","textColorOnPrimary","theme","onPress","useCallback","Date","borderColor","dark","textColor","undefined","root","button","backgroundColor","color","create","flex","flexBasis","opacity","justifyContent","alignItems","position","width","height","overflow","borderRadius","borderWidth","flex1"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAAoBC,IAApB,EAA0BC,eAA1B,QAAiD,oBAAjD;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AACA,OAAOC,QAAP,MAAqB,YAArB;AACA,SAASC,OAAT,QAAwB,aAAxB;;AAEA,SAASC,YAAT,GAAwB;AACtB,sBAAO,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAEC,MAAM,CAACC;AAApB,IAAP;AACD;;AACD,OAAO,MAAMC,QAAQ,gBAAGV,KAAK,CAACW,IAAN,CAAWJ,YAAX,CAAjB;;AAEP,SAASK,GAAT,CAAaC,KAAb,EAeG;AACD,QAAM;AACJC,IAAAA,GADI;AAEJC,IAAAA,KAFI;AAGJC,IAAAA,IAHI;AAIJC,IAAAA,QAJI;AAKJC,IAAAA,OALI;AAMJC,IAAAA,QANI;AAOJC,IAAAA,SAPI;AAQJC,IAAAA,WARI;AASJC,IAAAA,YATI;AAUJC,IAAAA,WAVI;AAWJC,IAAAA,OAXI;AAYJC,IAAAA,QAZI;AAaJC,IAAAA,kBAbI;AAcJC,IAAAA;AAdI,MAeFd,KAfJ,CADC,CAiBD;;AACA,QAAMe,OAAO,GAAG5B,KAAK,CAAC6B,WAAN,CAAkB,MAAM;AACtCR,IAAAA,WAAW,CAAC,IAAIS,IAAJ,CAASd,IAAT,EAAeD,KAAf,EAAsBD,GAAtB,CAAD,CAAX;AACD,GAFe,EAEb,CAACO,WAAD,EAAcL,IAAd,EAAoBD,KAApB,EAA2BD,GAA3B,CAFa,CAAhB;AAIA,QAAMiB,WAAW,GACfd,QAAQ,IAAKC,OAAO,IAAIS,KAAK,CAACK,IAA9B,GACIN,kBADJ,GAEIC,KAAK,CAACK,IAAN,GACA,MADA,GAEA,MALN;AAMA,QAAMC,SAAS,GACbhB,QAAQ,IAAKC,OAAO,IAAIS,KAAK,CAACK,IAA9B,GAAsCN,kBAAtC,GAA2DQ,SAD7D;AAGA,sBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAE,CAAC1B,MAAM,CAAC2B,IAAR,EAAcV,QAAQ,IAAIjB,MAAM,CAACiB,QAAjC;AAAb,kBACE,oBAAC,QAAD;AACE,IAAA,OAAO,EAAEP,OADX;AAEE,IAAA,QAAQ,EAAEC,QAFZ;AAGE,IAAA,SAAS,EAAEC,SAHb;AAIE,IAAA,WAAW,EAAEG;AAJf,IADF,eAQE,oBAAC,eAAD;AACE,IAAA,MAAM,EAAG,gCAA+BP,IAAK,IAAGD,KAAM,IAAGD,GAAI,EAD/D;AAEE,IAAA,QAAQ,EAAEW,QAFZ;AAGE,IAAA,UAAU,EAAE,IAHd;AAIE,IAAA,OAAO,EAAEA,QAAQ,GAAGS,SAAH,GAAeN,OAJlC;AAKE,IAAA,KAAK,EAAE,CACLpB,MAAM,CAAC4B,MADF,EAEL;AAAEC,MAAAA,eAAe,EAAEnB,OAAO,GAAGK,WAAH,GAAiBW;AAA3C,KAFK;
|
|
1
|
+
{"version":3,"sources":["Day.tsx"],"names":["React","Text","TouchableRipple","StyleSheet","View","DayRange","daySize","EmptyDayPure","styles","empty","EmptyDay","memo","Day","props","day","month","year","selected","inRange","leftCrop","rightCrop","onPressDate","primaryColor","selectColor","isToday","disabled","textColorOnPrimary","theme","onPress","useCallback","Date","borderColor","dark","textColor","undefined","root","button","backgroundColor","color","create","flex","flexBasis","opacity","justifyContent","alignItems","position","width","height","overflow","borderRadius","borderWidth","flex1"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport { DarkTheme, Text, TouchableRipple } from 'react-native-paper'\nimport { StyleSheet, View } from 'react-native'\nimport DayRange from './DayRange'\nimport { daySize } from './dateUtils'\n\nfunction EmptyDayPure() {\n return <View style={styles.empty} />\n}\nexport const EmptyDay = React.memo(EmptyDayPure)\n\nfunction Day(props: {\n theme: typeof DarkTheme\n textColorOnPrimary: string\n day: number\n month: number\n year: number\n selected: boolean\n inRange: boolean\n leftCrop: boolean\n rightCrop: boolean\n primaryColor: string\n selectColor: string\n isToday: boolean\n disabled: boolean\n onPressDate: (date: Date) => any\n}) {\n const {\n day,\n month,\n year,\n selected,\n inRange,\n leftCrop,\n rightCrop,\n onPressDate,\n primaryColor,\n selectColor,\n isToday,\n disabled,\n textColorOnPrimary,\n theme,\n } = props\n // console.log(month, { day })\n const onPress = React.useCallback(() => {\n onPressDate(new Date(year, month, day))\n }, [onPressDate, year, month, day])\n\n const borderColor =\n selected || (inRange && theme.dark)\n ? textColorOnPrimary\n : theme.dark\n ? '#fff'\n : '#000'\n const textColor =\n selected || (inRange && theme.dark) ? textColorOnPrimary : undefined\n\n return (\n <View style={[styles.root, disabled && styles.disabled]}>\n <DayRange\n inRange={inRange}\n leftCrop={leftCrop}\n rightCrop={rightCrop}\n selectColor={selectColor}\n />\n\n <TouchableRipple\n testID={`react-native-paper-dates-day-${year}-${month}-${day}`}\n disabled={disabled}\n borderless={true}\n onPress={disabled ? undefined : onPress}\n style={[\n styles.button,\n { backgroundColor: inRange ? selectColor : undefined },\n ]}\n accessibilityRole=\"button\"\n // RN types bug\n hasTVPreferredFocus={undefined}\n tvParallaxProperties={undefined}\n >\n <View\n style={[\n styles.day,\n isToday ? { borderColor: borderColor } : null,\n selected ? { backgroundColor: primaryColor } : null,\n ]}\n >\n <Text\n style={textColor ? { color: textColor } : undefined}\n selectable={false}\n >\n {day}\n </Text>\n </View>\n </TouchableRipple>\n </View>\n )\n}\n\nconst styles = StyleSheet.create({\n empty: {\n flex: 1,\n flexBasis: 0,\n },\n disabled: {\n opacity: 0.3,\n },\n root: {\n flexBasis: 0,\n flex: 1,\n justifyContent: 'center',\n alignItems: 'center',\n position: 'relative',\n },\n button: {\n width: daySize,\n height: daySize,\n overflow: 'hidden',\n borderRadius: daySize / 2,\n },\n day: {\n flexBasis: 0,\n flex: 1,\n borderRadius: daySize / 2,\n width: daySize,\n height: daySize,\n justifyContent: 'center',\n alignItems: 'center',\n borderWidth: 1,\n borderColor: 'transparent',\n },\n flex1: {\n flex: 1,\n },\n})\n\nexport default React.memo(Day)\n"]}
|
|
@@ -2,9 +2,10 @@ import * as React from 'react';
|
|
|
2
2
|
import { StyleSheet, View } from 'react-native';
|
|
3
3
|
import { Text, useTheme } from 'react-native-paper';
|
|
4
4
|
|
|
5
|
-
function DayName({
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
function DayName(_ref) {
|
|
6
|
+
let {
|
|
7
|
+
label
|
|
8
|
+
} = _ref;
|
|
8
9
|
const theme = useTheme();
|
|
9
10
|
return /*#__PURE__*/React.createElement(View, {
|
|
10
11
|
style: styles.dayName
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DayName.tsx"],"names":["React","StyleSheet","View","Text","useTheme","DayName","label","theme","styles","dayName","dayNameLabel","fonts","medium","create","flex","alignItems","fontSize","opacity","memo"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AACA,SAASC,IAAT,EAAeC,QAAf,QAA+B,oBAA/B;;AAEA,SAASC,OAAT,
|
|
1
|
+
{"version":3,"sources":["DayName.tsx"],"names":["React","StyleSheet","View","Text","useTheme","DayName","label","theme","styles","dayName","dayNameLabel","fonts","medium","create","flex","alignItems","fontSize","opacity","memo"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AACA,SAASC,IAAT,EAAeC,QAAf,QAA+B,oBAA/B;;AAEA,SAASC,OAAT,OAA+C;AAAA,MAA9B;AAAEC,IAAAA;AAAF,GAA8B;AAC7C,QAAMC,KAAK,GAAGH,QAAQ,EAAtB;AACA,sBACE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAEI,MAAM,CAACC;AAApB,kBACE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAE,CAACD,MAAM,CAACE,YAAR,EAAsBH,KAAK,CAACI,KAAN,CAAYC,MAAlC,CADT;AAEE,IAAA,UAAU,EAAE;AAFd,KAIGN,KAJH,CADF,CADF;AAUD;;AACD,MAAME,MAAM,GAAGP,UAAU,CAACY,MAAX,CAAkB;AAC/BJ,EAAAA,OAAO,EAAE;AAAEK,IAAAA,IAAI,EAAE,CAAR;AAAWC,IAAAA,UAAU,EAAE;AAAvB,GADsB;AAE/BL,EAAAA,YAAY,EAAE;AAAEM,IAAAA,QAAQ,EAAE,EAAZ;AAAgBC,IAAAA,OAAO,EAAE;AAAzB;AAFiB,CAAlB,CAAf;AAIA,4BAAejB,KAAK,CAACkB,IAAN,CAAWb,OAAX,CAAf","sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { Text, useTheme } from 'react-native-paper'\n\nfunction DayName({ label }: { label: string }) {\n const theme = useTheme()\n return (\n <View style={styles.dayName}>\n <Text\n style={[styles.dayNameLabel, theme.fonts.medium]}\n selectable={false}\n >\n {label}\n </Text>\n </View>\n )\n}\nconst styles = StyleSheet.create({\n dayName: { flex: 1, alignItems: 'center' },\n dayNameLabel: { fontSize: 14, opacity: 0.7 },\n})\nexport default React.memo(DayName)\n"]}
|
|
@@ -7,10 +7,11 @@ export const dayNamesHeight = 44; // TODO: wait for a better Intl api ;-)
|
|
|
7
7
|
|
|
8
8
|
const weekdays = [new Date(2020, 7, 2), new Date(2020, 7, 3), new Date(2020, 7, 4), new Date(2020, 7, 5), new Date(2020, 7, 6), new Date(2020, 7, 7), new Date(2020, 7, 8)];
|
|
9
9
|
|
|
10
|
-
function DayNames({
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
function DayNames(_ref) {
|
|
11
|
+
let {
|
|
12
|
+
disableWeekDays,
|
|
13
|
+
locale
|
|
14
|
+
} = _ref;
|
|
14
15
|
const theme = useTheme();
|
|
15
16
|
const shortDayNames = React.useMemo(() => {
|
|
16
17
|
const formatter = new Intl.DateTimeFormat(locale, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DayNames.tsx"],"names":["React","StyleSheet","View","DayName","useTheme","showWeekDay","dayNamesHeight","weekdays","Date","DayNames","disableWeekDays","locale","theme","shortDayNames","useMemo","formatter","Intl","DateTimeFormat","weekday","map","date","format","styles","dayNames","backgroundColor","colors","surface","filter","_","dayIndex","dayName","i","create","height","flexDirection","alignItems","memo"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AACA,OAAOC,OAAP,MAAoB,WAApB;AACA,SAASC,QAAT,QAAyB,oBAAzB;AACA,SAA8BC,WAA9B,QAAiD,aAAjD;AAEA,OAAO,MAAMC,cAAc,GAAG,EAAvB,C,CAEP;;AACA,MAAMC,QAAQ,GAAG,CACf,IAAIC,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CADe,EAEf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAFe,EAGf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAHe,EAIf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAJe,EAKf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CALe,EAMf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CANe,EAOf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAPe,CAAjB;;AAUA,SAASC,QAAT,
|
|
1
|
+
{"version":3,"sources":["DayNames.tsx"],"names":["React","StyleSheet","View","DayName","useTheme","showWeekDay","dayNamesHeight","weekdays","Date","DayNames","disableWeekDays","locale","theme","shortDayNames","useMemo","formatter","Intl","DateTimeFormat","weekday","map","date","format","styles","dayNames","backgroundColor","colors","surface","filter","_","dayIndex","dayName","i","create","height","flexDirection","alignItems","memo"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AACA,OAAOC,OAAP,MAAoB,WAApB;AACA,SAASC,QAAT,QAAyB,oBAAzB;AACA,SAA8BC,WAA9B,QAAiD,aAAjD;AAEA,OAAO,MAAMC,cAAc,GAAG,EAAvB,C,CAEP;;AACA,MAAMC,QAAQ,GAAG,CACf,IAAIC,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CADe,EAEf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAFe,EAGf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAHe,EAIf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAJe,EAKf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CALe,EAMf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CANe,EAOf,IAAIA,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAPe,CAAjB;;AAUA,SAASC,QAAT,OAMG;AAAA,MANe;AAChBC,IAAAA,eADgB;AAEhBC,IAAAA;AAFgB,GAMf;AACD,QAAMC,KAAK,GAAGR,QAAQ,EAAtB;AACA,QAAMS,aAAa,GAAGb,KAAK,CAACc,OAAN,CAAwB,MAAM;AAClD,UAAMC,SAAS,GAAG,IAAIC,IAAI,CAACC,cAAT,CAAwBN,MAAxB,EAAgC;AAChDO,MAAAA,OAAO,EAAE;AADuC,KAAhC,CAAlB;AAGA,WAAOX,QAAQ,CAACY,GAAT,CAAcC,IAAD,IAAUL,SAAS,CAACM,MAAV,CAAiBD,IAAjB,CAAvB,CAAP;AACD,GALqB,EAKnB,CAACT,MAAD,CALmB,CAAtB;AAOA,sBACE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAE,CAACW,MAAM,CAACC,QAAR,EAAkB;AAAEC,MAAAA,eAAe,EAAEZ,KAAK,CAACa,MAAN,CAAaC;AAAhC,KAAlB,CADT;AAEE,IAAA,aAAa,EAAE;AAFjB,KAIGb,aAAa,CACXc,MADF,CACS,CAACC,CAAD,EAAIC,QAAJ,KAAiBxB,WAAW,CAACwB,QAAD,EAAWnB,eAAX,CADrC,EAEES,GAFF,CAEM,CAACW,OAAD,EAAUC,CAAV,kBACH,oBAAC,OAAD;AAAS,IAAA,GAAG,EAAG,GAAED,OAAQ,IAAGC,CAAE,EAA9B;AAAiC,IAAA,KAAK,EAAED;AAAxC,IAHH,CAJH,CADF;AAYD;;AACD,MAAMR,MAAM,GAAGrB,UAAU,CAAC+B,MAAX,CAAkB;AAC/BT,EAAAA,QAAQ,EAAE;AACRU,IAAAA,MAAM,EAAE3B,cADA;AAER4B,IAAAA,aAAa,EAAE,KAFP;AAGRC,IAAAA,UAAU,EAAE,QAHJ;AAIRX,IAAAA,eAAe,EAAE;AAJT;AADqB,CAAlB,CAAf;AAQA,4BAAexB,KAAK,CAACoC,IAAN,CAAW3B,QAAX,CAAf","sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport DayName from './DayName'\nimport { useTheme } from 'react-native-paper'\nimport { DisableWeekDaysType, showWeekDay } from './dateUtils'\n\nexport const dayNamesHeight = 44\n\n// TODO: wait for a better Intl api ;-)\nconst weekdays = [\n new Date(2020, 7, 2),\n new Date(2020, 7, 3),\n new Date(2020, 7, 4),\n new Date(2020, 7, 5),\n new Date(2020, 7, 6),\n new Date(2020, 7, 7),\n new Date(2020, 7, 8),\n]\n\nfunction DayNames({\n disableWeekDays,\n locale,\n}: {\n locale: undefined | string\n disableWeekDays?: DisableWeekDaysType\n}) {\n const theme = useTheme()\n const shortDayNames = React.useMemo<string[]>(() => {\n const formatter = new Intl.DateTimeFormat(locale, {\n weekday: 'narrow',\n })\n return weekdays.map((date) => formatter.format(date))\n }, [locale])\n\n return (\n <View\n style={[styles.dayNames, { backgroundColor: theme.colors.surface }]}\n pointerEvents={'none'}\n >\n {shortDayNames\n .filter((_, dayIndex) => showWeekDay(dayIndex, disableWeekDays))\n .map((dayName, i) => (\n <DayName key={`${dayName}_${i}`} label={dayName} />\n ))}\n </View>\n )\n}\nconst styles = StyleSheet.create({\n dayNames: {\n height: dayNamesHeight,\n flexDirection: 'row',\n alignItems: 'center',\n backgroundColor: '#fff',\n },\n})\nexport default React.memo(DayNames)\n"]}
|
|
@@ -2,12 +2,13 @@ import * as React from 'react';
|
|
|
2
2
|
import { StyleSheet, View } from 'react-native';
|
|
3
3
|
import { daySize } from './dateUtils';
|
|
4
4
|
|
|
5
|
-
function DayRange({
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
5
|
+
function DayRange(_ref) {
|
|
6
|
+
let {
|
|
7
|
+
leftCrop,
|
|
8
|
+
rightCrop,
|
|
9
|
+
inRange,
|
|
10
|
+
selectColor
|
|
11
|
+
} = _ref;
|
|
11
12
|
const bothWays = inRange && leftCrop && rightCrop;
|
|
12
13
|
const isCrop = inRange && (leftCrop || rightCrop) && !(leftCrop && rightCrop);
|
|
13
14
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DayRange.tsx"],"names":["React","StyleSheet","View","daySize","DayRange","leftCrop","rightCrop","inRange","selectColor","bothWays","isCrop","absoluteFill","styles","rangeRoot","rangeRootBoth","backgroundColor","flex1","minWidth","minHeight","leftRadius","rightRadius","create","borderBottomLeftRadius","borderTopLeftRadius","borderBottomRightRadius","borderTopRightRadius","borderRadius","flex","flexDirection","memo"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AACA,SAASC,OAAT,QAAwB,aAAxB;;AAEA,SAASC,QAAT,
|
|
1
|
+
{"version":3,"sources":["DayRange.tsx"],"names":["React","StyleSheet","View","daySize","DayRange","leftCrop","rightCrop","inRange","selectColor","bothWays","isCrop","absoluteFill","styles","rangeRoot","rangeRootBoth","backgroundColor","flex1","minWidth","minHeight","leftRadius","rightRadius","create","borderBottomLeftRadius","borderTopLeftRadius","borderBottomRightRadius","borderTopRightRadius","borderRadius","flex","flexDirection","memo"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AACA,SAASC,OAAT,QAAwB,aAAxB;;AAEA,SAASC,QAAT,OAUG;AAAA,MAVe;AAChBC,IAAAA,QADgB;AAEhBC,IAAAA,SAFgB;AAGhBC,IAAAA,OAHgB;AAIhBC,IAAAA;AAJgB,GAUf;AACD,QAAMC,QAAQ,GAAGF,OAAO,IAAIF,QAAX,IAAuBC,SAAxC;AACA,QAAMI,MAAM,GAAGH,OAAO,KAAKF,QAAQ,IAAIC,SAAjB,CAAP,IAAsC,EAAED,QAAQ,IAAIC,SAAd,CAArD;;AAEA,MAAIC,OAAO,IAAIG,MAAf,EAAuB;AACrB,wBACE,oBAAC,IAAD;AACE,MAAA,aAAa,EAAC,MADhB;AAEE,MAAA,KAAK,EAAE,CACLT,UAAU,CAACU,YADN,EAELC,MAAM,CAACC,SAFF,EAGLJ,QAAQ,IAAIG,MAAM,CAACE,aAHd,EAILP,OAAO,IAAI,CAACG,MAAZ,GACI;AACEK,QAAAA,eAAe,EAAEP;AADnB,OADJ,GAII,IARC;AAFT,OAaGE,MAAM,iBACL,uDACE,oBAAC,IAAD;AACE,MAAA,KAAK,EAAE,CACLE,MAAM,CAACI,KADF,EAELV,SAAS,GACL;AACES,QAAAA,eAAe,EAAEP;AADnB,OADK,GAIL,IANC;AADT,MADF,eAWE,oBAAC,IAAD;AACE,MAAA,KAAK,EAAE,CACL;AACEO,QAAAA,eAAe,EAAEP,WADnB;AAEES,QAAAA,QAAQ,EAAEd,OAFZ;AAGEe,QAAAA,SAAS,EAAEf;AAHb,OADK,EAMLE,QAAQ,GAAGO,MAAM,CAACO,UAAV,GAAuB,IAN1B,EAOLb,SAAS,GAAGM,MAAM,CAACQ,WAAV,GAAwB,IAP5B;AADT,MAXF,eAsBE,oBAAC,IAAD;AACE,MAAA,KAAK,EAAE,CACLR,MAAM,CAACI,KADF,EAELX,QAAQ,GACJ;AACEU,QAAAA,eAAe,EAAEP;AADnB,OADI,GAIJ,IANC;AADT,MAtBF,CAdJ,CADF;AAmDD;;AACD,SAAO,IAAP;AACD;;AAED,MAAMI,MAAM,GAAGX,UAAU,CAACoB,MAAX,CAAkB;AAC/BF,EAAAA,UAAU,EAAE;AACVG,IAAAA,sBAAsB,EAAEnB,OAAO,GAAG,CADxB;AAEVoB,IAAAA,mBAAmB,EAAEpB,OAAO,GAAG;AAFrB,GADmB;AAK/BiB,EAAAA,WAAW,EAAE;AACXI,IAAAA,uBAAuB,EAAErB,OAAO,GAAG,CADxB;AAEXsB,IAAAA,oBAAoB,EAAEtB,OAAO,GAAG;AAFrB,GALkB;AAS/BW,EAAAA,aAAa,EAAE;AACbY,IAAAA,YAAY,EAAEvB,OAAO,GAAG;AADX,GATgB;AAY/Ba,EAAAA,KAAK,EAAE;AACLW,IAAAA,IAAI,EAAE;AADD,GAZwB;AAe/Bd,EAAAA,SAAS,EAAE;AACTe,IAAAA,aAAa,EAAE;AADN;AAfoB,CAAlB,CAAf;AAoBA,4BAAe5B,KAAK,CAAC6B,IAAN,CAAWzB,QAAX,CAAf","sourcesContent":["import * as React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { daySize } from './dateUtils'\n\nfunction DayRange({\n leftCrop,\n rightCrop,\n inRange,\n selectColor,\n}: {\n leftCrop: boolean\n rightCrop: boolean\n inRange: boolean\n selectColor: string\n}) {\n const bothWays = inRange && leftCrop && rightCrop\n const isCrop = inRange && (leftCrop || rightCrop) && !(leftCrop && rightCrop)\n\n if (inRange || isCrop) {\n return (\n <View\n pointerEvents=\"none\"\n style={[\n StyleSheet.absoluteFill,\n styles.rangeRoot,\n bothWays && styles.rangeRootBoth,\n inRange && !isCrop\n ? {\n backgroundColor: selectColor,\n }\n : null,\n ]}\n >\n {isCrop && (\n <>\n <View\n style={[\n styles.flex1,\n rightCrop\n ? {\n backgroundColor: selectColor,\n }\n : null,\n ]}\n />\n <View\n style={[\n {\n backgroundColor: selectColor,\n minWidth: daySize,\n minHeight: daySize,\n },\n leftCrop ? styles.leftRadius : null,\n rightCrop ? styles.rightRadius : null,\n ]}\n />\n <View\n style={[\n styles.flex1,\n leftCrop\n ? {\n backgroundColor: selectColor,\n }\n : null,\n ]}\n />\n </>\n )}\n </View>\n )\n }\n return null\n}\n\nconst styles = StyleSheet.create({\n leftRadius: {\n borderBottomLeftRadius: daySize / 2,\n borderTopLeftRadius: daySize / 2,\n },\n rightRadius: {\n borderBottomRightRadius: daySize / 2,\n borderTopRightRadius: daySize / 2,\n },\n rangeRootBoth: {\n borderRadius: daySize / 2,\n },\n flex1: {\n flex: 1,\n },\n rangeRoot: {\n flexDirection: 'row',\n },\n})\n\nexport default React.memo(DayRange)\n"]}
|