Skip to content

Commit 49e23a0

Browse files
committed
Merge branch 'develop'
2 parents c64d3e4 + d53eaa9 commit 49e23a0

File tree

1 file changed

+27
-26
lines changed

1 file changed

+27
-26
lines changed

src/components/calendar/calendar.js

Lines changed: 27 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,23 @@ function Calendar(
5656
)
5757
numberOfMonths = 1;
5858

59+
if (multiple || range || Array.isArray(value)) {
60+
if (!range && !multiple) multiple = true;
61+
62+
timePicker = false;
63+
onlyTimePicker = false;
64+
}
65+
66+
format = getFormat(
67+
timePicker,
68+
onlyTimePicker,
69+
onlyMonthPicker,
70+
onlyYearPicker,
71+
format,
72+
range,
73+
multiple
74+
);
75+
5976
let [state, setState] = useState({ date: currentDate }),
6077
listeners = {},
6178
ref = useRef({ mustCallOnReady: true });
@@ -68,31 +85,19 @@ function Calendar(
6885
if (!date) return;
6986
if (date.calendar !== calendar) date.setCalendar(calendar);
7087
if (date.locale !== locale) date.setLocale(locale);
71-
if (date._format !== $format) date.setFormat($format);
88+
if (date._format !== format) date.setFormat(format);
7289

7390
date.digits = digits;
7491

7592
return date;
7693
}
7794

78-
let $timePicker = timePicker,
79-
$onlyTimePicker = onlyTimePicker,
80-
$multiple = multiple,
81-
$format = getFormat(
82-
timePicker,
83-
onlyTimePicker,
84-
onlyMonthPicker,
85-
onlyYearPicker,
86-
format,
87-
range,
88-
multiple
89-
);
90-
9195
if (!value) {
92-
if (!date) date = new DateObject({ calendar, locale, format: $format });
96+
if (!date)
97+
date = new DateObject({ calendar, locale, format }).set({ digits });
9398
if (initialValue) selectedDate = undefined;
9499
} else {
95-
selectedDate = getSelectedDate(value, calendar, locale, $format);
100+
selectedDate = getSelectedDate(value, calendar, locale, format);
96101

97102
if (Array.isArray(selectedDate)) {
98103
if (!date) date = checkDate(new DateObject(selectedDate[0]));
@@ -114,10 +119,9 @@ function Calendar(
114119

115120
[].concat(selectedDate).forEach(checkDate);
116121

117-
if ($multiple || range || Array.isArray(value)) {
122+
if (multiple || range || Array.isArray(value)) {
118123
if (!selectedDate) selectedDate = [];
119124
if (!Array.isArray(selectedDate)) selectedDate = [selectedDate];
120-
if (!range && !$multiple) $multiple = true;
121125

122126
if (range && selectedDate.length > 2) {
123127
let lastItem = selectedDate[selectedDate.length - 1];
@@ -126,15 +130,12 @@ function Calendar(
126130
focused = lastItem;
127131
}
128132

129-
if ($multiple && sort && !mustSortDates) {
133+
if (multiple && sort && !mustSortDates) {
130134
mustSortDates = true;
131135
selectedDate.sort((a, b) => a - b);
132136
} else if (range) {
133137
selectedDate.sort((a, b) => a - b);
134138
}
135-
136-
$timePicker = false;
137-
$onlyTimePicker = false;
138139
} else if (Array.isArray(selectedDate)) {
139140
selectedDate = selectedDate[selectedDate.length - 1];
140141
}
@@ -143,18 +144,18 @@ function Calendar(
143144
...state,
144145
date,
145146
selectedDate,
146-
multiple: $multiple,
147+
multiple,
147148
range,
148-
timePicker: $timePicker,
149-
onlyTimePicker: $onlyTimePicker,
149+
timePicker,
150+
onlyTimePicker,
150151
onlyMonthPicker,
151152
onlyYearPicker,
152153
initialValue: state.initialValue || value,
153154
value,
154155
focused,
155156
calendar,
156157
locale,
157-
format: $format,
158+
format,
158159
mustSortDates,
159160
year: state.year || date.year,
160161
today: state.today || new DateObject({ calendar }),

0 commit comments

Comments
 (0)