@salutejs/plasma-new-hope 0.322.0-canary.1933.14596920222.0 → 0.322.0-canary.1939.14616445713.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/cjs/components/Calendar/Calendar.types.js.map +1 -1
- package/cjs/components/Calendar/CalendarBase/CalendarBase.js +3 -6
- package/cjs/components/Calendar/CalendarBase/CalendarBase.js.map +1 -1
- package/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +3 -6
- package/cjs/components/Calendar/CalendarDouble/CalendarDouble.js.map +1 -1
- package/cjs/components/Calendar/hoc/withRange.js.map +1 -1
- package/cjs/components/Calendar/store/reducer.js.map +1 -1
- package/cjs/components/Calendar/utils/calendarGridHelper.js.map +1 -1
- package/cjs/components/Calendar/utils/calendarRangeHelper.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.tokens.js +2 -1
- package/cjs/components/DatePicker/DatePicker.tokens.js.map +1 -1
- package/cjs/components/DatePicker/DatePickerBase.styles.js +1 -1
- package/cjs/components/DatePicker/DatePickerBase.styles.js.map +1 -1
- package/cjs/components/DatePicker/DatePickerBase.styles_1a5ddg3.css +2 -0
- package/cjs/components/DatePicker/RangeDate/RangeDate.css +4 -4
- package/cjs/components/DatePicker/RangeDate/RangeDate.js +160 -84
- package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDate.styles.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +2 -2
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_1fhuiqs.css +2 -0
- package/cjs/components/DatePicker/SingleDate/SingleDate.css +2 -2
- package/cjs/components/DatePicker/SingleDate/SingleDate.js +66 -33
- package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
- package/cjs/components/DatePicker/SingleDate/SingleDate.styles.js.map +1 -1
- package/cjs/components/DatePicker/hooks/useDatePicker.js +133 -76
- package/cjs/components/DatePicker/hooks/useDatePicker.js.map +1 -1
- package/cjs/components/DatePicker/hooks/useKeyboardNavigation.js +7 -0
- package/cjs/components/DatePicker/hooks/useKeyboardNavigation.js.map +1 -1
- package/cjs/components/DatePicker/utils/dateHelper.js +0 -109
- package/cjs/components/DatePicker/utils/dateHelper.js.map +1 -1
- package/cjs/components/DatePicker/utils/getFormattedDates.js +45 -0
- package/cjs/components/DatePicker/utils/getFormattedDates.js.map +1 -0
- package/cjs/components/DatePicker/utils/getMaskedDateOnInput.js +27 -0
- package/cjs/components/DatePicker/utils/getMaskedDateOnInput.js.map +1 -0
- package/cjs/components/DatePicker/utils/getOriginalDates.js +49 -0
- package/cjs/components/DatePicker/utils/getOriginalDates.js.map +1 -0
- package/cjs/components/DatePicker/utils/normalizeDates.js +33 -0
- package/cjs/components/DatePicker/utils/normalizeDates.js.map +1 -0
- package/cjs/index.css +4 -4
- package/emotion/cjs/components/Calendar/CalendarBase/CalendarBase.js +3 -6
- package/emotion/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +3 -6
- package/emotion/cjs/components/DatePicker/DatePicker.tokens.js +2 -1
- package/emotion/cjs/components/DatePicker/DatePickerBase.styles.js +4 -4
- package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +160 -84
- package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.styles.js +4 -4
- package/emotion/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +3 -3
- package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +66 -33
- package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.styles.js +4 -4
- package/emotion/cjs/components/DatePicker/hooks/useDatePicker.js +132 -76
- package/emotion/cjs/components/DatePicker/hooks/useKeyboardNavigation.js +7 -0
- package/emotion/cjs/components/DatePicker/utils/dateHelper.js +1 -104
- package/emotion/cjs/components/DatePicker/utils/getFormattedDates.js +43 -0
- package/emotion/cjs/components/DatePicker/utils/getMaskedDateOnInput.js +26 -0
- package/emotion/cjs/components/DatePicker/utils/getOriginalDates.js +47 -0
- package/emotion/cjs/components/DatePicker/utils/index.js +33 -0
- package/emotion/cjs/components/DatePicker/utils/normalizeDates.js +31 -0
- package/emotion/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.config.js +7 -7
- package/emotion/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +20 -19
- package/emotion/cjs/examples/plasma_web/components/DatePicker/DatePicker.config.js +7 -7
- package/emotion/cjs/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +17 -12
- package/emotion/es/components/Calendar/CalendarBase/CalendarBase.js +3 -6
- package/emotion/es/components/Calendar/CalendarDouble/CalendarDouble.js +3 -6
- package/emotion/es/components/DatePicker/DatePicker.tokens.js +2 -1
- package/emotion/es/components/DatePicker/DatePickerBase.styles.js +4 -4
- package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +161 -85
- package/emotion/es/components/DatePicker/RangeDate/RangeDate.styles.js +4 -4
- package/emotion/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +3 -3
- package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +67 -34
- package/emotion/es/components/DatePicker/SingleDate/SingleDate.styles.js +4 -4
- package/emotion/es/components/DatePicker/hooks/useDatePicker.js +131 -75
- package/emotion/es/components/DatePicker/hooks/useKeyboardNavigation.js +7 -0
- package/emotion/es/components/DatePicker/utils/dateHelper.js +0 -103
- package/emotion/es/components/DatePicker/utils/getFormattedDates.js +37 -0
- package/emotion/es/components/DatePicker/utils/getMaskedDateOnInput.js +20 -0
- package/emotion/es/components/DatePicker/utils/getOriginalDates.js +41 -0
- package/emotion/es/components/DatePicker/utils/index.js +4 -0
- package/emotion/es/components/DatePicker/utils/normalizeDates.js +25 -0
- package/emotion/es/examples/plasma_b2c/components/DatePicker/DatePicker.config.js +7 -7
- package/emotion/es/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +20 -19
- package/emotion/es/examples/plasma_web/components/DatePicker/DatePicker.config.js +7 -7
- package/emotion/es/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +17 -12
- package/es/components/Calendar/Calendar.types.js.map +1 -1
- package/es/components/Calendar/CalendarBase/CalendarBase.js +3 -6
- package/es/components/Calendar/CalendarBase/CalendarBase.js.map +1 -1
- package/es/components/Calendar/CalendarDouble/CalendarDouble.js +3 -6
- package/es/components/Calendar/CalendarDouble/CalendarDouble.js.map +1 -1
- package/es/components/Calendar/hoc/withRange.js.map +1 -1
- package/es/components/Calendar/store/reducer.js.map +1 -1
- package/es/components/Calendar/utils/calendarGridHelper.js.map +1 -1
- package/es/components/Calendar/utils/calendarRangeHelper.js.map +1 -1
- package/es/components/DatePicker/DatePicker.tokens.js +2 -1
- package/es/components/DatePicker/DatePicker.tokens.js.map +1 -1
- package/es/components/DatePicker/DatePickerBase.styles.js +1 -1
- package/es/components/DatePicker/DatePickerBase.styles.js.map +1 -1
- package/es/components/DatePicker/DatePickerBase.styles_1a5ddg3.css +2 -0
- package/es/components/DatePicker/RangeDate/RangeDate.css +4 -4
- package/es/components/DatePicker/RangeDate/RangeDate.js +162 -86
- package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
- package/es/components/DatePicker/RangeDate/RangeDate.styles.js.map +1 -1
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +2 -2
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +1 -1
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js.map +1 -1
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_1fhuiqs.css +2 -0
- package/es/components/DatePicker/SingleDate/SingleDate.css +2 -2
- package/es/components/DatePicker/SingleDate/SingleDate.js +68 -35
- package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
- package/es/components/DatePicker/SingleDate/SingleDate.styles.js.map +1 -1
- package/es/components/DatePicker/hooks/useDatePicker.js +132 -75
- package/es/components/DatePicker/hooks/useDatePicker.js.map +1 -1
- package/es/components/DatePicker/hooks/useKeyboardNavigation.js +7 -0
- package/es/components/DatePicker/hooks/useKeyboardNavigation.js.map +1 -1
- package/es/components/DatePicker/utils/dateHelper.js +1 -105
- package/es/components/DatePicker/utils/dateHelper.js.map +1 -1
- package/es/components/DatePicker/utils/getFormattedDates.js +41 -0
- package/es/components/DatePicker/utils/getFormattedDates.js.map +1 -0
- package/es/components/DatePicker/utils/getMaskedDateOnInput.js +23 -0
- package/es/components/DatePicker/utils/getMaskedDateOnInput.js.map +1 -0
- package/es/components/DatePicker/utils/getOriginalDates.js +45 -0
- package/es/components/DatePicker/utils/getOriginalDates.js.map +1 -0
- package/es/components/DatePicker/utils/normalizeDates.js +29 -0
- package/es/components/DatePicker/utils/normalizeDates.js.map +1 -0
- package/es/index.css +4 -4
- package/package.json +4 -4
- package/styled-components/cjs/components/Calendar/CalendarBase/CalendarBase.js +3 -6
- package/styled-components/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +3 -6
- package/styled-components/cjs/components/DatePicker/DatePicker.tokens.js +2 -1
- package/styled-components/cjs/components/DatePicker/DatePickerBase.styles.js +2 -2
- package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +160 -84
- package/styled-components/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +1 -1
- package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +66 -33
- package/styled-components/cjs/components/DatePicker/hooks/useDatePicker.js +132 -76
- package/styled-components/cjs/components/DatePicker/hooks/useKeyboardNavigation.js +7 -0
- package/styled-components/cjs/components/DatePicker/utils/dateHelper.js +1 -104
- package/styled-components/cjs/components/DatePicker/utils/getFormattedDates.js +43 -0
- package/styled-components/cjs/components/DatePicker/utils/getMaskedDateOnInput.js +26 -0
- package/styled-components/cjs/components/DatePicker/utils/getOriginalDates.js +47 -0
- package/styled-components/cjs/components/DatePicker/utils/index.js +33 -0
- package/styled-components/cjs/components/DatePicker/utils/normalizeDates.js +31 -0
- package/styled-components/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.config.js +1 -1
- package/styled-components/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +20 -19
- package/styled-components/cjs/examples/plasma_web/components/DatePicker/DatePicker.config.js +1 -1
- package/styled-components/cjs/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +17 -12
- package/styled-components/es/components/Calendar/CalendarBase/CalendarBase.js +3 -6
- package/styled-components/es/components/Calendar/CalendarDouble/CalendarDouble.js +3 -6
- package/styled-components/es/components/DatePicker/DatePicker.tokens.js +2 -1
- package/styled-components/es/components/DatePicker/DatePickerBase.styles.js +2 -2
- package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +161 -85
- package/styled-components/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +1 -1
- package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +67 -34
- package/styled-components/es/components/DatePicker/hooks/useDatePicker.js +131 -75
- package/styled-components/es/components/DatePicker/hooks/useKeyboardNavigation.js +7 -0
- package/styled-components/es/components/DatePicker/utils/dateHelper.js +0 -103
- package/styled-components/es/components/DatePicker/utils/getFormattedDates.js +37 -0
- package/styled-components/es/components/DatePicker/utils/getMaskedDateOnInput.js +20 -0
- package/styled-components/es/components/DatePicker/utils/getOriginalDates.js +41 -0
- package/styled-components/es/components/DatePicker/utils/index.js +4 -0
- package/styled-components/es/components/DatePicker/utils/normalizeDates.js +25 -0
- package/styled-components/es/examples/plasma_b2c/components/DatePicker/DatePicker.config.js +1 -1
- package/styled-components/es/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +20 -19
- package/styled-components/es/examples/plasma_web/components/DatePicker/DatePicker.config.js +1 -1
- package/styled-components/es/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +17 -12
- package/types/components/Calendar/Calendar.types.d.ts +4 -3
- package/types/components/Calendar/Calendar.types.d.ts.map +1 -1
- package/types/components/Calendar/CalendarBase/CalendarBase.d.ts.map +1 -1
- package/types/components/Calendar/CalendarDouble/CalendarDouble.d.ts.map +1 -1
- package/types/components/Calendar/hoc/withRange.d.ts.map +1 -1
- package/types/components/Calendar/store/reducer.d.ts +2 -1
- package/types/components/Calendar/store/reducer.d.ts.map +1 -1
- package/types/components/Calendar/utils/calendarGridHelper.d.ts +4 -4
- package/types/components/Calendar/utils/calendarGridHelper.d.ts.map +1 -1
- package/types/components/Calendar/utils/calendarRangeHelper.d.ts +4 -4
- package/types/components/Calendar/utils/calendarRangeHelper.d.ts.map +1 -1
- package/types/components/DatePicker/DatePicker.tokens.d.ts +1 -0
- package/types/components/DatePicker/DatePicker.tokens.d.ts.map +1 -1
- package/types/components/DatePicker/DatePickerBase.styles.d.ts.map +1 -1
- package/types/components/DatePicker/DatePickerBase.types.d.ts +16 -6
- package/types/components/DatePicker/DatePickerBase.types.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDate.d.ts +3 -2
- package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts +2 -2
- package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.d.ts +1 -1
- package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.types.d.ts +3 -3
- package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.types.d.ts.map +1 -1
- package/types/components/DatePicker/SingleDate/SingleDate.d.ts +10 -6
- package/types/components/DatePicker/SingleDate/SingleDate.d.ts.map +1 -1
- package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts +8 -6
- package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts.map +1 -1
- package/types/components/DatePicker/hooks/useDatePicker.d.ts +5 -4
- package/types/components/DatePicker/hooks/useDatePicker.d.ts.map +1 -1
- package/types/components/DatePicker/hooks/useKeyboardNavigation.d.ts +4 -1
- package/types/components/DatePicker/hooks/useKeyboardNavigation.d.ts.map +1 -1
- package/types/components/DatePicker/utils/dateHelper.d.ts +0 -27
- package/types/components/DatePicker/utils/dateHelper.d.ts.map +1 -1
- package/types/components/DatePicker/utils/getFormattedDates.d.ts +21 -0
- package/types/components/DatePicker/utils/getFormattedDates.d.ts.map +1 -0
- package/types/components/DatePicker/utils/getMaskedDateOnInput.d.ts +2 -0
- package/types/components/DatePicker/utils/getMaskedDateOnInput.d.ts.map +1 -0
- package/types/components/DatePicker/utils/getOriginalDates.d.ts +10 -0
- package/types/components/DatePicker/utils/getOriginalDates.d.ts.map +1 -0
- package/types/components/DatePicker/utils/index.d.ts +5 -0
- package/types/components/DatePicker/utils/index.d.ts.map +1 -0
- package/types/components/DatePicker/utils/normalizeDates.d.ts +15 -0
- package/types/components/DatePicker/utils/normalizeDates.d.ts.map +1 -0
- package/cjs/components/DatePicker/DatePickerBase.styles_1jm7rc0.css +0 -2
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_r5ataz.css +0 -2
- package/es/components/DatePicker/DatePickerBase.styles_1jm7rc0.css +0 -2
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_r5ataz.css +0 -2
@@ -16,6 +16,7 @@ var base$2 = require('./variations/_disabled/base.js');
|
|
16
16
|
var base$3 = require('./variations/_readonly/base.js');
|
17
17
|
var RangeDate_styles = require('./RangeDate.styles.js');
|
18
18
|
var RangeDatePopover = require('./RangeDatePopover/RangeDatePopover.js');
|
19
|
+
var getFormattedDates = require('../utils/getFormattedDates.js');
|
19
20
|
var noop = require('../../../utils/noop.js');
|
20
21
|
var calendarRangeHelper = require('../../Calendar/utils/calendarRangeHelper.js');
|
21
22
|
|
@@ -115,14 +116,13 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
115
116
|
_onBlurFirstTextfield = _ref.onBlurFirstTextfield,
|
116
117
|
_onBlurSecondTextfield = _ref.onBlurSecondTextfield,
|
117
118
|
rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
|
119
|
+
if (externalValue !== null && externalValue !== void 0 && externalValue.length && (defaultFirstDate || defaultSecondDate)) {
|
120
|
+
console.error("Controlled DatePicker can't have `default{First|Second}Date`, use `value` instead");
|
121
|
+
}
|
118
122
|
var rangeRef = ref && 'current' in ref ? ref : /*#__PURE__*/React.createRef();
|
119
123
|
var rootRef = React.useRef(null);
|
120
124
|
var innerRefFirst = React.useRef(null);
|
121
125
|
var innerRefSecond = React.useRef(null);
|
122
|
-
var _ref2 = externalValue || [],
|
123
|
-
_ref3 = _rollupPluginBabelHelpers.slicedToArray(_ref2, 2),
|
124
|
-
startExternalValue = _ref3[0],
|
125
|
-
endExternalValue = _ref3[1];
|
126
126
|
var _useState = React.useState(rangeRef === null || rangeRef === void 0 || (_rangeRef$current = rangeRef.current) === null || _rangeRef$current === void 0 ? void 0 : _rangeRef$current.firstTextField()),
|
127
127
|
_useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
|
128
128
|
firstInputRef = _useState2[0],
|
@@ -135,38 +135,69 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
135
135
|
_useState6 = _rollupPluginBabelHelpers.slicedToArray(_useState5, 2),
|
136
136
|
isInnerOpen = _useState6[0],
|
137
137
|
setIsInnerOpen = _useState6[1];
|
138
|
-
var
|
138
|
+
var dateFormatDelimiter = React.useCallback(function () {
|
139
|
+
return dateHelper.getDateFormatDelimiter(format);
|
140
|
+
}, [format]);
|
141
|
+
var _ref2 = externalValue || [],
|
142
|
+
_ref3 = _rollupPluginBabelHelpers.slicedToArray(_ref2, 2),
|
143
|
+
startExternalValue = _ref3[0],
|
144
|
+
endExternalValue = _ref3[1];
|
145
|
+
var startInitialValues = getFormattedDates.getFormattedDates({
|
146
|
+
value: startExternalValue || defaultFirstDate,
|
147
|
+
delimiter: dateFormatDelimiter(),
|
148
|
+
lang: lang,
|
149
|
+
format: format,
|
150
|
+
includeEdgeDates: includeEdgeDates,
|
151
|
+
min: min,
|
152
|
+
max: max
|
153
|
+
});
|
154
|
+
var endInitialValues = getFormattedDates.getFormattedDates({
|
155
|
+
value: endExternalValue || defaultSecondDate,
|
156
|
+
delimiter: dateFormatDelimiter(),
|
157
|
+
lang: lang,
|
158
|
+
format: format,
|
159
|
+
includeEdgeDates: includeEdgeDates,
|
160
|
+
min: min,
|
161
|
+
max: max
|
162
|
+
});
|
163
|
+
var _useState7 = React.useState({
|
164
|
+
calendar: startInitialValues.originalDate,
|
165
|
+
input: startInitialValues.formattedDate
|
166
|
+
}),
|
139
167
|
_useState8 = _rollupPluginBabelHelpers.slicedToArray(_useState7, 2),
|
140
|
-
|
141
|
-
|
142
|
-
var _useState9 = React.useState(
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
})),
|
168
|
+
correctStartDates = _useState8[0],
|
169
|
+
setCorrectStartDates = _useState8[1];
|
170
|
+
var _useState9 = React.useState({
|
171
|
+
calendar: endInitialValues.originalDate,
|
172
|
+
input: endInitialValues.formattedDate
|
173
|
+
}),
|
147
174
|
_useState10 = _rollupPluginBabelHelpers.slicedToArray(_useState9, 2),
|
148
|
-
|
149
|
-
|
150
|
-
var _useState11 = React.useState(
|
175
|
+
correctEndDates = _useState10[0],
|
176
|
+
setCorrectEndDates = _useState10[1];
|
177
|
+
var _useState11 = React.useState(startInitialValues.originalDate),
|
151
178
|
_useState12 = _rollupPluginBabelHelpers.slicedToArray(_useState11, 2),
|
152
|
-
|
153
|
-
|
154
|
-
var _useState13 = React.useState(
|
155
|
-
value: endExternalValue || defaultSecondDate,
|
156
|
-
format: format,
|
157
|
-
lang: lang
|
158
|
-
})),
|
179
|
+
calendarFirstValue = _useState12[0],
|
180
|
+
setCalendarFirstValue = _useState12[1];
|
181
|
+
var _useState13 = React.useState(startInitialValues.formattedDate),
|
159
182
|
_useState14 = _rollupPluginBabelHelpers.slicedToArray(_useState13, 2),
|
160
|
-
|
161
|
-
|
162
|
-
var _useState15 = React.useState(
|
183
|
+
inputFirstValue = _useState14[0],
|
184
|
+
setInputFirstValue = _useState14[1];
|
185
|
+
var _useState15 = React.useState(endInitialValues.originalDate),
|
163
186
|
_useState16 = _rollupPluginBabelHelpers.slicedToArray(_useState15, 2),
|
164
|
-
|
165
|
-
|
166
|
-
var _useState17 = React.useState(
|
187
|
+
calendarSecondValue = _useState16[0],
|
188
|
+
setCalendarSecondValue = _useState16[1];
|
189
|
+
var _useState17 = React.useState(endInitialValues.formattedDate),
|
167
190
|
_useState18 = _rollupPluginBabelHelpers.slicedToArray(_useState17, 2),
|
168
|
-
|
169
|
-
|
191
|
+
inputSecondValue = _useState18[0],
|
192
|
+
setInputSecondValue = _useState18[1];
|
193
|
+
var _useState19 = React.useState(Boolean(calendarFirstValue && calendarSecondValue)),
|
194
|
+
_useState20 = _rollupPluginBabelHelpers.slicedToArray(_useState19, 2),
|
195
|
+
fullDateEntered = _useState20[0],
|
196
|
+
setFullDateEntered = _useState20[1];
|
197
|
+
var _useState21 = React.useState(false),
|
198
|
+
_useState22 = _rollupPluginBabelHelpers.slicedToArray(_useState21, 2),
|
199
|
+
secondTextFieldClicked = _useState22[0],
|
200
|
+
setSecondTextFieldClicked = _useState22[1];
|
170
201
|
var rangeErrorClass = firstValueError || secondValueError ? DatePicker_tokens.classes.datePickerError : undefined;
|
171
202
|
var rangeSuccessClass = firstValueSuccess || secondValueSuccess ? DatePicker_tokens.classes.datePickerSuccess : undefined;
|
172
203
|
var setFirstInputValue = function setFirstInputValue(value) {
|
@@ -191,45 +222,55 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
191
222
|
});
|
192
223
|
}
|
193
224
|
};
|
194
|
-
var dateFormatDelimiter = React.useCallback(function () {
|
195
|
-
return dateHelper.getDateFormatDelimiter(format);
|
196
|
-
}, [format]);
|
197
225
|
var _useDatePicker = useDatePicker.useDatePicker({
|
198
226
|
currentValue: inputFirstValue,
|
199
|
-
setInputValue: setFirstInputValue,
|
200
|
-
setCalendarValue: setCalendarFirstValue,
|
201
|
-
dateFormatDelimiter: dateFormatDelimiter,
|
202
227
|
format: format,
|
203
228
|
lang: lang,
|
204
229
|
disabled: disabled,
|
205
230
|
readOnly: readOnly,
|
206
231
|
maskWithFormat: maskWithFormat,
|
207
232
|
valueError: firstValueError,
|
208
|
-
valueSuccess:
|
233
|
+
valueSuccess: firstValueError,
|
209
234
|
name: name,
|
235
|
+
type: type,
|
236
|
+
min: min,
|
237
|
+
max: max,
|
238
|
+
includeEdgeDates: includeEdgeDates,
|
239
|
+
setCorrectDates: setCorrectStartDates,
|
240
|
+
setInputValue: setFirstInputValue,
|
241
|
+
setCalendarValue: setCalendarFirstValue,
|
210
242
|
onChangeValue: onChangeFirstValue,
|
211
|
-
onCommitDate: onCommitFirstDate
|
243
|
+
onCommitDate: onCommitFirstDate,
|
244
|
+
dateFormatDelimiter: dateFormatDelimiter
|
212
245
|
}),
|
213
246
|
handleChangeFirstValue = _useDatePicker.handleChangeValue,
|
214
|
-
|
247
|
+
handleFirstCalendarPick = _useDatePicker.handleCalendarPick,
|
248
|
+
handleSearchFirst = _useDatePicker.handleSearch,
|
215
249
|
updateExternalFirstDate = _useDatePicker.updateExternalDate;
|
216
250
|
var _useDatePicker2 = useDatePicker.useDatePicker({
|
217
251
|
currentValue: inputSecondValue,
|
218
|
-
setInputValue: setSecondInputValue,
|
219
|
-
setCalendarValue: setCalendarSecondValue,
|
220
|
-
dateFormatDelimiter: dateFormatDelimiter,
|
221
252
|
format: format,
|
222
253
|
lang: lang,
|
223
254
|
disabled: disabled,
|
224
255
|
readOnly: readOnly,
|
225
256
|
maskWithFormat: maskWithFormat,
|
226
257
|
valueError: secondValueError,
|
227
|
-
valueSuccess:
|
258
|
+
valueSuccess: secondValueError,
|
259
|
+
name: name,
|
260
|
+
type: type,
|
261
|
+
min: min,
|
262
|
+
max: max,
|
263
|
+
includeEdgeDates: includeEdgeDates,
|
264
|
+
setCorrectDates: setCorrectEndDates,
|
265
|
+
setInputValue: setSecondInputValue,
|
266
|
+
setCalendarValue: setCalendarSecondValue,
|
228
267
|
onChangeValue: onChangeSecondValue,
|
229
|
-
onCommitDate: onCommitSecondDate
|
268
|
+
onCommitDate: onCommitSecondDate,
|
269
|
+
dateFormatDelimiter: dateFormatDelimiter
|
230
270
|
}),
|
231
271
|
handleChangeSecondValue = _useDatePicker2.handleChangeValue,
|
232
|
-
|
272
|
+
handleSecondCalendarPick = _useDatePicker2.handleCalendarPick,
|
273
|
+
handleSearchSecond = _useDatePicker2.handleSearch,
|
233
274
|
updateExternalSecondDate = _useDatePicker2.updateExternalDate;
|
234
275
|
var handleToggle = function handleToggle(currentOpened, event) {
|
235
276
|
var _firstInputRef$curren, _secondInputRef$curre;
|
@@ -242,7 +283,7 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
242
283
|
var _secondInputRef$curre2;
|
243
284
|
secondInputRef === null || secondInputRef === void 0 || (_secondInputRef$curre2 = secondInputRef.current) === null || _secondInputRef$curre2 === void 0 || _secondInputRef$curre2.focus();
|
244
285
|
}
|
245
|
-
if (calendarSecondValue
|
286
|
+
if (calendarSecondValue && !calendarFirstValue) {
|
246
287
|
var _firstInputRef$curren2;
|
247
288
|
firstInputRef === null || firstInputRef === void 0 || (_firstInputRef$curren2 = firstInputRef.current) === null || _firstInputRef$curren2 === void 0 || _firstInputRef$curren2.focus();
|
248
289
|
}
|
@@ -268,44 +309,75 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
268
309
|
outerHandler === null || outerHandler === void 0 || outerHandler(event);
|
269
310
|
return;
|
270
311
|
}
|
271
|
-
var
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
312
|
+
var _getFormattedDates = getFormattedDates.getFormattedDates({
|
313
|
+
value: inputFirstValue,
|
314
|
+
delimiter: dateFormatDelimiter(),
|
315
|
+
lang: lang,
|
316
|
+
format: format,
|
317
|
+
includeEdgeDates: includeEdgeDates,
|
318
|
+
min: min,
|
319
|
+
max: max
|
320
|
+
}),
|
321
|
+
startOriginalDate = _getFormattedDates.originalDate;
|
322
|
+
var _getFormattedDates2 = getFormattedDates.getFormattedDates({
|
323
|
+
value: inputSecondValue,
|
324
|
+
delimiter: dateFormatDelimiter(),
|
325
|
+
lang: lang,
|
326
|
+
format: format,
|
327
|
+
includeEdgeDates: includeEdgeDates,
|
328
|
+
min: min,
|
329
|
+
max: max
|
330
|
+
}),
|
331
|
+
endOriginalDate = _getFormattedDates2.originalDate;
|
332
|
+
if (!calendarFirstValue && correctStartDates.calendar) {
|
333
|
+
startOriginalDate = new Date(correctStartDates.calendar);
|
280
334
|
}
|
281
|
-
|
335
|
+
if (!calendarSecondValue && correctEndDates.calendar) {
|
336
|
+
endOriginalDate = new Date(correctEndDates.calendar);
|
337
|
+
}
|
338
|
+
var _getSortedValues = calendarRangeHelper.getSortedValues([startOriginalDate, endOriginalDate]),
|
282
339
|
_getSortedValues2 = _rollupPluginBabelHelpers.slicedToArray(_getSortedValues, 2),
|
283
340
|
startValue = _getSortedValues2[0],
|
284
341
|
endValue = _getSortedValues2[1];
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
342
|
+
var _getFormattedDates3 = getFormattedDates.getFormattedDates({
|
343
|
+
value: startValue || null,
|
344
|
+
delimiter: dateFormatDelimiter(),
|
345
|
+
lang: lang,
|
346
|
+
format: format,
|
347
|
+
includeEdgeDates: includeEdgeDates,
|
348
|
+
min: min,
|
349
|
+
max: max
|
350
|
+
}),
|
351
|
+
startFormattedDate = _getFormattedDates3.formattedDate;
|
352
|
+
var _getFormattedDates4 = getFormattedDates.getFormattedDates({
|
353
|
+
value: endValue || null,
|
354
|
+
delimiter: dateFormatDelimiter(),
|
355
|
+
lang: lang,
|
356
|
+
format: format,
|
357
|
+
includeEdgeDates: includeEdgeDates,
|
358
|
+
min: min,
|
359
|
+
max: max
|
360
|
+
}),
|
361
|
+
endFormattedDate = _getFormattedDates4.formattedDate;
|
362
|
+
setFirstInputValue(startFormattedDate);
|
363
|
+
setSecondInputValue(endFormattedDate);
|
364
|
+
setCalendarFirstValue(startOriginalDate);
|
365
|
+
setCalendarSecondValue(endOriginalDate);
|
297
366
|
outerHandler === null || outerHandler === void 0 || outerHandler(event);
|
298
367
|
};
|
299
368
|
var _useKeyNavigation = useKeyboardNavigation.useKeyNavigation({
|
300
369
|
isCalendarOpen: isInnerOpen,
|
301
|
-
|
302
|
-
|
370
|
+
format: format,
|
371
|
+
maskWithFormat: maskWithFormat,
|
372
|
+
delimiter: dateFormatDelimiter(),
|
373
|
+
closeOnEsc: closeOnEsc,
|
374
|
+
onToggle: handleToggle
|
303
375
|
}),
|
304
376
|
onKeyDown = _useKeyNavigation.onKeyDown;
|
305
377
|
var handleChangeStartOfRange = function handleChangeStartOfRange(chosenDate, dateInfo) {
|
306
378
|
if (!fullDateEntered) {
|
307
|
-
|
308
|
-
|
379
|
+
handleFirstCalendarPick(chosenDate, dateInfo);
|
380
|
+
handleSecondCalendarPick(undefined);
|
309
381
|
return;
|
310
382
|
}
|
311
383
|
var prevValue = secondTextFieldClicked ? calendarFirstValue : calendarSecondValue;
|
@@ -313,8 +385,8 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
313
385
|
_getSortedValues4 = _rollupPluginBabelHelpers.slicedToArray(_getSortedValues3, 2),
|
314
386
|
first = _getSortedValues4[0],
|
315
387
|
second = _getSortedValues4[1];
|
316
|
-
|
317
|
-
|
388
|
+
handleFirstCalendarPick(first, dateInfo);
|
389
|
+
handleSecondCalendarPick(second, dateInfo);
|
318
390
|
if (!firstValueError && !secondValueError && closeAfterDateSelect) {
|
319
391
|
handleToggle(false);
|
320
392
|
}
|
@@ -324,10 +396,10 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
324
396
|
firstDate = _ref5[0],
|
325
397
|
secondDate = _ref5[1];
|
326
398
|
if (firstDate) {
|
327
|
-
|
399
|
+
handleFirstCalendarPick(firstDate, dateInfo);
|
328
400
|
}
|
329
401
|
if (secondDate) {
|
330
|
-
|
402
|
+
handleSecondCalendarPick(secondDate, dateInfo);
|
331
403
|
}
|
332
404
|
if (firstDate && secondDate && !firstValueError && !secondValueError && closeAfterDateSelect) {
|
333
405
|
handleToggle(false);
|
@@ -366,14 +438,14 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
366
438
|
onChangeSecondValue: handleChangeSecondValue,
|
367
439
|
name: name,
|
368
440
|
onSearchFirstValue: function onSearchFirstValue(_, date) {
|
369
|
-
|
441
|
+
handleSearchFirst(String(date));
|
370
442
|
if (!calendarSecondValue || secondValueError) {
|
371
443
|
var _rangeRef$current3;
|
372
444
|
rangeRef === null || rangeRef === void 0 || (_rangeRef$current3 = rangeRef.current) === null || _rangeRef$current3 === void 0 || (_rangeRef$current3 = _rangeRef$current3.secondTextField()) === null || _rangeRef$current3 === void 0 || (_rangeRef$current3 = _rangeRef$current3.current) === null || _rangeRef$current3 === void 0 || _rangeRef$current3.focus();
|
373
445
|
}
|
374
446
|
},
|
375
447
|
onSearchSecondValue: function onSearchSecondValue(_, date) {
|
376
|
-
|
448
|
+
handleSearchSecond(String(date));
|
377
449
|
if (!calendarFirstValue || firstValueError) {
|
378
450
|
var _rangeRef$current4;
|
379
451
|
rangeRef === null || rangeRef === void 0 || (_rangeRef$current4 = rangeRef.current) === null || _rangeRef$current4 === void 0 || (_rangeRef$current4 = _rangeRef$current4.firstTextField()) === null || _rangeRef$current4 === void 0 || (_rangeRef$current4 = _rangeRef$current4.current) === null || _rangeRef$current4 === void 0 || _rangeRef$current4.focus();
|
@@ -405,13 +477,17 @@ var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
405
477
|
}
|
406
478
|
}, [calendarFirstValue, calendarSecondValue]);
|
407
479
|
React.useLayoutEffect(function () {
|
408
|
-
|
409
|
-
|
410
|
-
|
480
|
+
updateExternalFirstDate(startExternalValue || undefined);
|
481
|
+
}, [startExternalValue, format, lang]);
|
482
|
+
React.useLayoutEffect(function () {
|
483
|
+
updateExternalSecondDate(endExternalValue || undefined);
|
484
|
+
}, [endExternalValue, format, lang]);
|
485
|
+
React.useLayoutEffect(function () {
|
486
|
+
!startExternalValue && updateExternalFirstDate(defaultFirstDate);
|
487
|
+
}, [defaultFirstDate, format, lang]);
|
411
488
|
React.useLayoutEffect(function () {
|
412
|
-
|
413
|
-
|
414
|
-
}, [endExternalValue, defaultSecondDate, format, lang]);
|
489
|
+
!endExternalValue && updateExternalSecondDate(defaultSecondDate);
|
490
|
+
}, [defaultSecondDate, format, lang]);
|
415
491
|
var RootWrapper = React.useCallback(function (_ref6) {
|
416
492
|
var children = _ref6.children;
|
417
493
|
return /*#__PURE__*/React__default.default.createElement(Root, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"RangeDate.js","sources":["../../../../src/components/DatePicker/RangeDate/RangeDate.tsx"],"sourcesContent":["import React, { createRef, forwardRef, useCallback, useEffect, useLayoutEffect, useRef, useState } from 'react';\nimport type {\n KeyboardEvent,\n FocusEvent,\n FocusEventHandler,\n MutableRefObject,\n SyntheticEvent,\n PropsWithChildren,\n FC,\n} from 'react';\n\nimport type { RootProps } from '../../../engines';\nimport { cx, noop } from '../../../utils';\nimport { formatCalendarValue, formatInputValue, getDateFormatDelimiter, getDateFromFormat } from '../utils/dateHelper';\nimport { useDatePicker } from '../hooks/useDatePicker';\nimport type { RangeInputRefs } from '../../Range/Range.types';\nimport { classes } from '../DatePicker.tokens';\nimport { keys, useKeyNavigation } from '../hooks/useKeyboardNavigation';\nimport { InputHidden } from '../DatePickerBase.styles';\nimport { getSortedValues } from '../../Calendar/utils';\nimport type { DateInfo } from '../../Calendar/Calendar.types';\n\nimport type { DatePickerRangeProps } from './RangeDate.types';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as readOnlyCSS } from './variations/_readonly/base';\nimport { LeftHelper, StyledRange, base } from './RangeDate.styles';\nimport { RangeDatePopover } from './RangeDatePopover/RangeDatePopover';\n\nexport const datePickerRangeRoot = (\n Root: RootProps<HTMLDivElement, Omit<DatePickerRangeProps, 'opened' | 'defaultValue' | 'onChangeValue'>>,\n) =>\n forwardRef<RangeInputRefs, DatePickerRangeProps>(\n (\n {\n className,\n autoComplete,\n\n isDoubleCalendar = false,\n opened = false,\n value: externalValue,\n\n label,\n leftHelper,\n contentLeft,\n contentRight,\n view,\n size,\n readOnly = false,\n disabled = false,\n name,\n\n dividerVariant = 'dash',\n dividerIcon,\n\n defaultFirstDate = '',\n defaultSecondDate = '',\n firstValueError,\n secondValueError,\n firstValueSuccess,\n secondValueSuccess,\n firstPlaceholder,\n secondPlaceholder,\n firstTextfieldContentLeft,\n firstTextfieldContentRight,\n secondTextfieldContentLeft,\n secondTextfieldContentRight,\n firstTextfieldTextBefore,\n secondTextfieldTextBefore,\n firstTextfieldTextAfter,\n secondTextfieldTextAfter,\n\n required,\n requiredPlacement = 'right',\n hasRequiredIndicator = true,\n\n format = 'DD.MM.YYYY',\n lang = 'ru',\n maskWithFormat,\n min,\n max,\n renderFromDate,\n includeEdgeDates = false,\n eventList,\n disabledList,\n eventMonthList,\n disabledMonthList,\n eventQuarterList,\n disabledQuarterList,\n eventYearList,\n disabledYearList,\n type = 'Days',\n\n frame = 'document',\n usePortal = false,\n placement = ['top', 'bottom'],\n closeOnOverlayClick = true,\n closeOnEsc = true,\n closeAfterDateSelect = true,\n offset,\n\n onToggle,\n\n onChange,\n onChangeFirstValue,\n onChangeSecondValue,\n\n onCommitFirstDate,\n onCommitSecondDate,\n\n onFocusFirstTextfield,\n onFocusSecondTextfield,\n onBlurFirstTextfield,\n onBlurSecondTextfield,\n\n ...rest\n },\n ref,\n ) => {\n const rangeRef = ref && 'current' in ref ? ref : createRef<RangeInputRefs>();\n const rootRef = useRef<HTMLDivElement | null>(null);\n\n const innerRefFirst = useRef<HTMLInputElement>(null);\n const innerRefSecond = useRef<HTMLInputElement>(null);\n\n const [startExternalValue, endExternalValue] = externalValue || [];\n\n const [firstInputRef, setFirstInputRef] = useState<MutableRefObject<HTMLInputElement | null> | undefined>(\n rangeRef?.current?.firstTextField(),\n );\n const [secondInputRef, setSecondInputRef] = useState<MutableRefObject<HTMLInputElement | null> | undefined>(\n rangeRef?.current?.secondTextField(),\n );\n const [isInnerOpen, setIsInnerOpen] = useState(opened);\n\n const [calendarFirstValue, setCalendarFirstValue] = useState(\n formatCalendarValue(startExternalValue || defaultFirstDate, format, lang),\n );\n const [inputFirstValue, setInputFirstValue] = useState(\n formatInputValue({ value: startExternalValue || defaultFirstDate, format, lang }),\n );\n\n const [calendarSecondValue, setCalendarSecondValue] = useState(\n formatCalendarValue(endExternalValue || defaultSecondDate, format, lang),\n );\n const [inputSecondValue, setInputSecondValue] = useState(\n formatInputValue({ value: endExternalValue || defaultSecondDate, format, lang }),\n );\n\n const [fullDateEntered, setFullDateEntered] = useState(Boolean(calendarFirstValue && calendarSecondValue));\n\n const [secondTextFieldClicked, setSecondTextFieldClicked] = useState(false);\n\n const rangeErrorClass = firstValueError || secondValueError ? classes.datePickerError : undefined;\n const rangeSuccessClass = firstValueSuccess || secondValueSuccess ? classes.datePickerSuccess : undefined;\n\n const setFirstInputValue = (value: React.SetStateAction<string>) => {\n setInputFirstValue(value);\n\n if (onChange) {\n onChange({\n target: {\n value: `${value} - ${inputSecondValue}`,\n name,\n },\n });\n }\n };\n\n const setSecondInputValue = (value: React.SetStateAction<string>) => {\n setInputSecondValue(value);\n\n if (onChange) {\n onChange({\n target: {\n value: `${inputFirstValue} - ${value}`,\n name,\n },\n });\n }\n };\n\n const dateFormatDelimiter = useCallback(() => getDateFormatDelimiter(format), [format]);\n\n const {\n handleChangeValue: handleChangeFirstValue,\n handleCommitDate: handleCommitFirstDate,\n updateExternalDate: updateExternalFirstDate,\n } = useDatePicker({\n currentValue: inputFirstValue,\n setInputValue: setFirstInputValue,\n setCalendarValue: setCalendarFirstValue,\n dateFormatDelimiter,\n format,\n lang,\n disabled,\n readOnly,\n maskWithFormat,\n valueError: firstValueError,\n valueSuccess: firstValueSuccess,\n name,\n onChangeValue: onChangeFirstValue,\n onCommitDate: onCommitFirstDate,\n });\n\n const {\n handleChangeValue: handleChangeSecondValue,\n handleCommitDate: handleCommitSecondDate,\n updateExternalDate: updateExternalSecondDate,\n } = useDatePicker({\n currentValue: inputSecondValue,\n setInputValue: setSecondInputValue,\n setCalendarValue: setCalendarSecondValue,\n dateFormatDelimiter,\n format,\n lang,\n disabled,\n readOnly,\n maskWithFormat,\n valueError: secondValueError,\n valueSuccess: secondValueSuccess,\n onChangeValue: onChangeSecondValue,\n onCommitDate: onCommitSecondDate,\n });\n\n const handleToggle = (currentOpened: boolean, event?: SyntheticEvent | Event) => {\n if (disabled || readOnly) {\n return;\n }\n\n const isCalendarOpen =\n (firstInputRef?.current?.contains((event?.target as Node) || null) ||\n secondInputRef?.current?.contains((event?.target as Node) || null)) &&\n (event as KeyboardEvent<HTMLInputElement>)?.code !== keys.Escape\n ? true\n : currentOpened;\n\n if (!isCalendarOpen) {\n if (calendarFirstValue && !calendarSecondValue) {\n secondInputRef?.current?.focus();\n }\n if (calendarSecondValue || !calendarFirstValue) {\n firstInputRef?.current?.focus();\n }\n }\n\n if (!isCalendarOpen) {\n setSecondTextFieldClicked(false);\n }\n\n if (onToggle) {\n return onToggle(isCalendarOpen, event);\n }\n\n setIsInnerOpen(isCalendarOpen);\n };\n\n const handleFocusFirstTextField = (event: FocusEvent<HTMLInputElement>) => {\n onFocusFirstTextfield?.(event);\n setSecondTextFieldClicked(false);\n };\n\n const handleFocusSecondTextField = (event: FocusEvent<HTMLInputElement>) => {\n onFocusSecondTextfield?.(event);\n setSecondTextFieldClicked(true);\n };\n\n const handleBlur = (\n event: FocusEvent<HTMLInputElement>,\n outerHandler?: FocusEventHandler<HTMLInputElement>,\n ) => {\n if (!inputFirstValue || !inputSecondValue) {\n outerHandler?.(event);\n return;\n }\n\n const { value: firstDate, isSuccess: firstIsSuccess } = getDateFromFormat(\n inputFirstValue,\n format,\n lang,\n );\n\n const { value: secondDate, isSuccess: secondIsSuccess } = getDateFromFormat(\n inputSecondValue,\n format,\n lang,\n );\n\n if (!firstIsSuccess || !secondIsSuccess) {\n outerHandler?.(event);\n return;\n }\n\n const [startValue, endValue] = getSortedValues([new Date(firstDate), new Date(secondDate)]);\n\n setFirstInputValue(formatInputValue({ value: startValue, format, lang }));\n setSecondInputValue(formatInputValue({ value: endValue, format, lang }));\n\n setCalendarFirstValue(formatCalendarValue(startValue, format, lang));\n setCalendarSecondValue(formatCalendarValue(endValue, format, lang));\n\n outerHandler?.(event);\n };\n\n const { onKeyDown } = useKeyNavigation({\n isCalendarOpen: isInnerOpen,\n onToggle: handleToggle,\n closeOnEsc,\n });\n\n const handleChangeStartOfRange = (chosenDate: Date, dateInfo?: DateInfo) => {\n if (!fullDateEntered) {\n handleCommitFirstDate(chosenDate, false, true, dateInfo);\n handleCommitSecondDate('');\n\n return;\n }\n\n const prevValue = secondTextFieldClicked ? calendarFirstValue : calendarSecondValue;\n\n const [first, second] = getSortedValues([prevValue, chosenDate]);\n\n handleCommitFirstDate(first, false, true, dateInfo);\n handleCommitSecondDate(second, false, true, dateInfo);\n\n if (!firstValueError && !secondValueError && closeAfterDateSelect) {\n handleToggle(false);\n }\n };\n\n const handleChangeCalendarValue = ([firstDate, secondDate]: [Date, Date?], dateInfo?: DateInfo) => {\n if (firstDate) {\n handleCommitFirstDate(firstDate, false, true, dateInfo);\n }\n\n if (secondDate) {\n handleCommitSecondDate(secondDate, false, true, dateInfo);\n }\n\n if (firstDate && secondDate && !firstValueError && !secondValueError && closeAfterDateSelect) {\n handleToggle(false);\n }\n };\n\n const RangeComponent = (\n <>\n {/* TODO https://github.com/salute-developers/plasma/issues/1227\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n //@ts-ignore */}\n <StyledRange\n ref={rangeRef}\n autoComplete={autoComplete}\n dividerIcon={dividerIcon}\n dividerVariant={dividerVariant}\n label={label}\n required={required}\n requiredPlacement={requiredPlacement}\n hasRequiredIndicator={hasRequiredIndicator}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n firstPlaceholder={firstPlaceholder}\n secondPlaceholder={secondPlaceholder}\n contentLeft={contentLeft}\n contentRight={contentRight}\n firstTextfieldTextBefore={firstTextfieldTextBefore}\n secondTextfieldTextBefore={secondTextfieldTextBefore}\n firstTextfieldTextAfter={firstTextfieldTextAfter}\n secondTextfieldTextAfter={secondTextfieldTextAfter}\n firstTextfieldContentLeft={firstTextfieldContentLeft}\n firstTextfieldContentRight={firstTextfieldContentRight}\n secondTextfieldContentLeft={secondTextfieldContentLeft}\n secondTextfieldContentRight={secondTextfieldContentRight}\n firstValue={inputFirstValue}\n secondValue={inputSecondValue}\n firstValueError={firstValueError}\n secondValueError={secondValueError}\n firstValueSuccess={firstValueSuccess}\n secondValueSuccess={secondValueSuccess}\n onChangeFirstValue={handleChangeFirstValue}\n onChangeSecondValue={handleChangeSecondValue}\n name={name}\n onSearchFirstValue={(_, date) => {\n handleCommitFirstDate(String(date), true, false);\n if (!calendarSecondValue || secondValueError) {\n rangeRef?.current?.secondTextField()?.current?.focus();\n }\n }}\n onSearchSecondValue={(_, date) => {\n handleCommitSecondDate(String(date), true, false);\n if (!calendarFirstValue || firstValueError) {\n rangeRef?.current?.firstTextField()?.current?.focus();\n }\n }}\n onFocusFirstTextfield={handleFocusFirstTextField}\n onFocusSecondTextfield={handleFocusSecondTextField}\n onBlurFirstTextfield={(event) => handleBlur(event, onBlurFirstTextfield)}\n onBlurSecondTextfield={(event) => handleBlur(event, onBlurSecondTextfield)}\n onKeyDown={onKeyDown}\n />\n </>\n );\n\n useEffect(() => {\n setFirstInputRef(rangeRef.current?.firstTextField());\n setSecondInputRef(rangeRef.current?.secondTextField());\n }, [rangeRef.current]);\n\n useEffect(() => {\n setIsInnerOpen((prevOpen) => prevOpen !== opened && opened);\n }, [opened]);\n\n useEffect(() => {\n if (calendarFirstValue && calendarSecondValue) {\n setFullDateEntered(true);\n }\n }, [calendarFirstValue, calendarSecondValue]);\n\n useLayoutEffect(() => {\n const externalDate = startExternalValue || defaultFirstDate;\n updateExternalFirstDate(externalDate, setFirstInputValue, setCalendarFirstValue);\n }, [startExternalValue, defaultFirstDate, format, lang]);\n\n useLayoutEffect(() => {\n const externalDate = endExternalValue || defaultSecondDate;\n updateExternalSecondDate(externalDate, setSecondInputValue, setCalendarSecondValue);\n }, [endExternalValue, defaultSecondDate, format, lang]);\n\n const RootWrapper = useCallback<FC<PropsWithChildren>>(\n ({ children }) => (\n <Root\n view={view}\n size={size}\n className={cx(classes.datePickerRoot, className)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n >\n {children}\n </Root>\n ),\n [view, size, disabled, readOnly],\n );\n\n return (\n <Root\n ref={rootRef}\n view={view}\n size={size}\n className={cx(classes.datePickerRoot, className)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n {...rest}\n >\n <RangeDatePopover\n calendarValue={[calendarFirstValue, calendarSecondValue]}\n target={RangeComponent}\n opened={isInnerOpen}\n includeEdgeDates={includeEdgeDates}\n eventList={eventList}\n disabledList={disabledList}\n eventMonthList={eventMonthList}\n disabledMonthList={disabledMonthList}\n eventQuarterList={eventQuarterList}\n disabledQuarterList={disabledQuarterList}\n eventYearList={eventYearList}\n disabledYearList={disabledYearList}\n min={min}\n max={max}\n renderFromDate={renderFromDate}\n frame={frame}\n usePortal={usePortal}\n placement={placement}\n closeOnOverlayClick={closeOnOverlayClick}\n closeOnEsc={closeOnEsc}\n offset={offset}\n type={type}\n onToggle={handleToggle}\n lang={lang}\n isDoubleCalendar={isDoubleCalendar}\n rootWrapper={RootWrapper}\n onChangeStartOfRange={handleChangeStartOfRange}\n onChangeValue={handleChangeCalendarValue}\n />\n {leftHelper && (\n <LeftHelper className={cx(rangeErrorClass, rangeSuccessClass)}>{leftHelper}</LeftHelper>\n )}\n <InputHidden\n name={name}\n type=\"hidden\"\n datatype=\"datepicker-double\"\n data-datepicker=\"from\"\n value={inputFirstValue}\n ref={innerRefFirst}\n {...noop}\n />\n <InputHidden\n name={name}\n type=\"hidden\"\n datatype=\"datepicker-double\"\n data-datepicker=\"to\"\n value={inputSecondValue}\n ref={innerRefSecond}\n {...noop}\n />\n </Root>\n );\n },\n );\n\nexport const datePickerRangeConfig = {\n name: 'DatePickerRange',\n tag: 'div',\n layout: datePickerRangeRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n css: readOnlyCSS,\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["datePickerRangeRoot","Root","forwardRef","_ref","ref","_rangeRef$current","_rangeRef$current2","className","autoComplete","_ref$isDoubleCalendar","isDoubleCalendar","_ref$opened","opened","externalValue","value","label","leftHelper","contentLeft","contentRight","view","size","_ref$readOnly","readOnly","_ref$disabled","disabled","name","_ref$dividerVariant","dividerVariant","dividerIcon","_ref$defaultFirstDate","defaultFirstDate","_ref$defaultSecondDat","defaultSecondDate","firstValueError","secondValueError","firstValueSuccess","secondValueSuccess","firstPlaceholder","secondPlaceholder","firstTextfieldContentLeft","firstTextfieldContentRight","secondTextfieldContentLeft","secondTextfieldContentRight","firstTextfieldTextBefore","secondTextfieldTextBefore","firstTextfieldTextAfter","secondTextfieldTextAfter","required","_ref$requiredPlacemen","requiredPlacement","_ref$hasRequiredIndic","hasRequiredIndicator","_ref$format","format","_ref$lang","lang","maskWithFormat","min","max","renderFromDate","_ref$includeEdgeDates","includeEdgeDates","eventList","disabledList","eventMonthList","disabledMonthList","eventQuarterList","disabledQuarterList","eventYearList","disabledYearList","_ref$type","type","_ref$frame","frame","_ref$usePortal","usePortal","_ref$placement","placement","_ref$closeOnOverlayCl","closeOnOverlayClick","_ref$closeOnEsc","closeOnEsc","_ref$closeAfterDateSe","closeAfterDateSelect","offset","onToggle","onChange","onChangeFirstValue","onChangeSecondValue","onCommitFirstDate","onCommitSecondDate","onFocusFirstTextfield","onFocusSecondTextfield","onBlurFirstTextfield","onBlurSecondTextfield","rest","_objectWithoutProperties","_excluded","rangeRef","createRef","rootRef","useRef","innerRefFirst","innerRefSecond","_ref2","_ref3","_slicedToArray","startExternalValue","endExternalValue","_useState","useState","current","firstTextField","_useState2","firstInputRef","setFirstInputRef","_useState3","secondTextField","_useState4","secondInputRef","setSecondInputRef","_useState5","_useState6","isInnerOpen","setIsInnerOpen","_useState7","formatCalendarValue","_useState8","calendarFirstValue","setCalendarFirstValue","_useState9","formatInputValue","_useState10","inputFirstValue","setInputFirstValue","_useState11","_useState12","calendarSecondValue","setCalendarSecondValue","_useState13","_useState14","inputSecondValue","setInputSecondValue","_useState15","Boolean","_useState16","fullDateEntered","setFullDateEntered","_useState17","_useState18","secondTextFieldClicked","setSecondTextFieldClicked","rangeErrorClass","classes","datePickerError","undefined","rangeSuccessClass","datePickerSuccess","setFirstInputValue","target","concat","setSecondInputValue","dateFormatDelimiter","useCallback","getDateFormatDelimiter","_useDatePicker","useDatePicker","currentValue","setInputValue","setCalendarValue","valueError","valueSuccess","onChangeValue","onCommitDate","handleChangeFirstValue","handleChangeValue","handleCommitFirstDate","handleCommitDate","updateExternalFirstDate","updateExternalDate","_useDatePicker2","handleChangeSecondValue","handleCommitSecondDate","updateExternalSecondDate","handleToggle","currentOpened","event","_firstInputRef$curren","_secondInputRef$curre","isCalendarOpen","contains","code","keys","Escape","_secondInputRef$curre2","focus","_firstInputRef$curren2","handleFocusFirstTextField","handleFocusSecondTextField","handleBlur","outerHandler","_getDateFromFormat","getDateFromFormat","firstDate","firstIsSuccess","isSuccess","_getDateFromFormat2","secondDate","secondIsSuccess","_getSortedValues","getSortedValues","Date","_getSortedValues2","startValue","endValue","_useKeyNavigation","useKeyNavigation","onKeyDown","handleChangeStartOfRange","chosenDate","dateInfo","prevValue","_getSortedValues3","_getSortedValues4","first","second","handleChangeCalendarValue","_ref4","_ref5","RangeComponent","React","createElement","Fragment","StyledRange","firstValue","secondValue","onSearchFirstValue","_","date","String","_rangeRef$current3","onSearchSecondValue","_rangeRef$current4","useEffect","_rangeRef$current5","_rangeRef$current6","prevOpen","useLayoutEffect","externalDate","RootWrapper","_ref6","children","cx","datePickerRoot","_extends","RangeDatePopover","calendarValue","rootWrapper","onChangeStartOfRange","LeftHelper","InputHidden","datatype","noop","datePickerRangeConfig","tag","layout","base","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","readOnlyCSS","defaults"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"RangeDate.js","sources":["../../../../src/components/DatePicker/RangeDate/RangeDate.tsx"],"sourcesContent":["import React, { createRef, forwardRef, useCallback, useEffect, useLayoutEffect, useRef, useState } from 'react';\nimport type {\n KeyboardEvent,\n FocusEvent,\n FocusEventHandler,\n MutableRefObject,\n SyntheticEvent,\n PropsWithChildren,\n FC,\n} from 'react';\n\nimport type { RootProps } from '../../../engines';\nimport { cx, noop } from '../../../utils';\nimport { getDateFormatDelimiter } from '../utils/dateHelper';\nimport { useDatePicker } from '../hooks/useDatePicker';\nimport type { RangeInputRefs } from '../../Range/Range.types';\nimport { classes } from '../DatePicker.tokens';\nimport { keys, useKeyNavigation } from '../hooks/useKeyboardNavigation';\nimport { InputHidden } from '../DatePickerBase.styles';\nimport { getSortedValues } from '../../Calendar/utils';\nimport type { DateInfo, DateType } from '../../Calendar/Calendar.types';\nimport { getFormattedDates } from '../utils';\n\nimport type { DatePickerRangeProps } from './RangeDate.types';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as readOnlyCSS } from './variations/_readonly/base';\nimport { LeftHelper, StyledRange, base } from './RangeDate.styles';\nimport { RangeDatePopover } from './RangeDatePopover/RangeDatePopover';\n\nexport const datePickerRangeRoot = (\n Root: RootProps<HTMLDivElement, Omit<DatePickerRangeProps, 'opened' | 'defaultValue' | 'onChangeValue'>>,\n) =>\n forwardRef<RangeInputRefs, DatePickerRangeProps>(\n (\n {\n className,\n autoComplete,\n\n isDoubleCalendar = false,\n opened = false,\n value: externalValue,\n\n label,\n leftHelper,\n contentLeft,\n contentRight,\n view,\n size,\n readOnly = false,\n disabled = false,\n name,\n\n dividerVariant = 'dash',\n dividerIcon,\n\n defaultFirstDate = '',\n defaultSecondDate = '',\n firstValueError,\n secondValueError,\n firstValueSuccess,\n secondValueSuccess,\n firstPlaceholder,\n secondPlaceholder,\n firstTextfieldContentLeft,\n firstTextfieldContentRight,\n secondTextfieldContentLeft,\n secondTextfieldContentRight,\n firstTextfieldTextBefore,\n secondTextfieldTextBefore,\n firstTextfieldTextAfter,\n secondTextfieldTextAfter,\n\n required,\n requiredPlacement = 'right',\n hasRequiredIndicator = true,\n\n format = 'DD.MM.YYYY',\n lang = 'ru',\n maskWithFormat,\n min,\n max,\n renderFromDate,\n includeEdgeDates = false,\n eventList,\n disabledList,\n eventMonthList,\n disabledMonthList,\n eventQuarterList,\n disabledQuarterList,\n eventYearList,\n disabledYearList,\n type = 'Days',\n\n frame = 'document',\n usePortal = false,\n placement = ['top', 'bottom'],\n closeOnOverlayClick = true,\n closeOnEsc = true,\n closeAfterDateSelect = true,\n offset,\n\n onToggle,\n\n onChange,\n onChangeFirstValue,\n onChangeSecondValue,\n\n onCommitFirstDate,\n onCommitSecondDate,\n\n onFocusFirstTextfield,\n onFocusSecondTextfield,\n onBlurFirstTextfield,\n onBlurSecondTextfield,\n\n ...rest\n },\n ref,\n ) => {\n if (externalValue?.length && (defaultFirstDate || defaultSecondDate)) {\n console.error(\"Controlled DatePicker can't have `default{First|Second}Date`, use `value` instead\");\n }\n\n const rangeRef = ref && 'current' in ref ? ref : createRef<RangeInputRefs>();\n const rootRef = useRef<HTMLDivElement | null>(null);\n\n const innerRefFirst = useRef<HTMLInputElement>(null);\n const innerRefSecond = useRef<HTMLInputElement>(null);\n\n const [firstInputRef, setFirstInputRef] = useState<MutableRefObject<HTMLInputElement | null> | undefined>(\n rangeRef?.current?.firstTextField(),\n );\n const [secondInputRef, setSecondInputRef] = useState<MutableRefObject<HTMLInputElement | null> | undefined>(\n rangeRef?.current?.secondTextField(),\n );\n\n const [isInnerOpen, setIsInnerOpen] = useState(opened);\n const dateFormatDelimiter = useCallback(() => getDateFormatDelimiter(format), [format]);\n\n const [startExternalValue, endExternalValue] = externalValue || [];\n const startInitialValues = getFormattedDates({\n value: startExternalValue || defaultFirstDate,\n delimiter: dateFormatDelimiter(),\n lang,\n format,\n includeEdgeDates,\n min,\n max,\n });\n const endInitialValues = getFormattedDates({\n value: endExternalValue || defaultSecondDate,\n delimiter: dateFormatDelimiter(),\n lang,\n format,\n includeEdgeDates,\n min,\n max,\n });\n\n const [correctStartDates, setCorrectStartDates] = useState({\n calendar: startInitialValues.originalDate,\n input: startInitialValues.formattedDate,\n });\n const [correctEndDates, setCorrectEndDates] = useState({\n calendar: endInitialValues.originalDate,\n input: endInitialValues.formattedDate,\n });\n\n const [calendarFirstValue, setCalendarFirstValue] = useState<DateType>(startInitialValues.originalDate);\n const [inputFirstValue, setInputFirstValue] = useState(startInitialValues.formattedDate);\n\n const [calendarSecondValue, setCalendarSecondValue] = useState<DateType>(endInitialValues.originalDate);\n const [inputSecondValue, setInputSecondValue] = useState(endInitialValues.formattedDate);\n\n const [fullDateEntered, setFullDateEntered] = useState(Boolean(calendarFirstValue && calendarSecondValue));\n\n const [secondTextFieldClicked, setSecondTextFieldClicked] = useState(false);\n\n const rangeErrorClass = firstValueError || secondValueError ? classes.datePickerError : undefined;\n const rangeSuccessClass = firstValueSuccess || secondValueSuccess ? classes.datePickerSuccess : undefined;\n\n const setFirstInputValue = (value: React.SetStateAction<string>) => {\n setInputFirstValue(value);\n\n if (onChange) {\n onChange({\n target: {\n value: `${value} - ${inputSecondValue}`,\n name,\n },\n });\n }\n };\n\n const setSecondInputValue = (value: React.SetStateAction<string>) => {\n setInputSecondValue(value);\n\n if (onChange) {\n onChange({\n target: {\n value: `${inputFirstValue} - ${value}`,\n name,\n },\n });\n }\n };\n\n const {\n handleChangeValue: handleChangeFirstValue,\n handleCalendarPick: handleFirstCalendarPick,\n handleSearch: handleSearchFirst,\n updateExternalDate: updateExternalFirstDate,\n } = useDatePicker({\n currentValue: inputFirstValue,\n format,\n lang,\n disabled,\n readOnly,\n maskWithFormat,\n valueError: firstValueError,\n valueSuccess: firstValueError,\n name,\n type,\n min,\n max,\n includeEdgeDates,\n setCorrectDates: setCorrectStartDates,\n setInputValue: setFirstInputValue,\n setCalendarValue: setCalendarFirstValue,\n onChangeValue: onChangeFirstValue,\n onCommitDate: onCommitFirstDate,\n dateFormatDelimiter,\n });\n\n const {\n handleChangeValue: handleChangeSecondValue,\n handleCalendarPick: handleSecondCalendarPick,\n handleSearch: handleSearchSecond,\n updateExternalDate: updateExternalSecondDate,\n } = useDatePicker({\n currentValue: inputSecondValue,\n format,\n lang,\n disabled,\n readOnly,\n maskWithFormat,\n valueError: secondValueError,\n valueSuccess: secondValueError,\n name,\n type,\n min,\n max,\n includeEdgeDates,\n setCorrectDates: setCorrectEndDates,\n setInputValue: setSecondInputValue,\n setCalendarValue: setCalendarSecondValue,\n onChangeValue: onChangeSecondValue,\n onCommitDate: onCommitSecondDate,\n dateFormatDelimiter,\n });\n\n const handleToggle = (currentOpened: boolean, event?: SyntheticEvent | Event) => {\n if (disabled || readOnly) {\n return;\n }\n\n const isCalendarOpen =\n (firstInputRef?.current?.contains((event?.target as Node) || null) ||\n secondInputRef?.current?.contains((event?.target as Node) || null)) &&\n (event as KeyboardEvent<HTMLInputElement>)?.code !== keys.Escape\n ? true\n : currentOpened;\n\n if (!isCalendarOpen) {\n if (calendarFirstValue && !calendarSecondValue) {\n secondInputRef?.current?.focus();\n }\n if (calendarSecondValue && !calendarFirstValue) {\n firstInputRef?.current?.focus();\n }\n }\n\n if (!isCalendarOpen) {\n setSecondTextFieldClicked(false);\n }\n\n if (onToggle) {\n return onToggle(isCalendarOpen, event);\n }\n\n setIsInnerOpen(isCalendarOpen);\n };\n\n const handleFocusFirstTextField = (event: FocusEvent<HTMLInputElement>) => {\n onFocusFirstTextfield?.(event);\n setSecondTextFieldClicked(false);\n };\n\n const handleFocusSecondTextField = (event: FocusEvent<HTMLInputElement>) => {\n onFocusSecondTextfield?.(event);\n setSecondTextFieldClicked(true);\n };\n\n const handleBlur = (\n event: FocusEvent<HTMLInputElement>,\n outerHandler?: FocusEventHandler<HTMLInputElement>,\n ) => {\n if (!inputFirstValue || !inputSecondValue) {\n outerHandler?.(event);\n return;\n }\n\n let { originalDate: startOriginalDate } = getFormattedDates({\n value: inputFirstValue,\n delimiter: dateFormatDelimiter(),\n lang,\n format,\n includeEdgeDates,\n min,\n max,\n });\n\n let { originalDate: endOriginalDate } = getFormattedDates({\n value: inputSecondValue,\n delimiter: dateFormatDelimiter(),\n lang,\n format,\n includeEdgeDates,\n min,\n max,\n });\n\n if (!calendarFirstValue && correctStartDates.calendar) {\n startOriginalDate = new Date(correctStartDates.calendar);\n }\n\n if (!calendarSecondValue && correctEndDates.calendar) {\n endOriginalDate = new Date(correctEndDates.calendar);\n }\n\n const [startValue, endValue] = getSortedValues([startOriginalDate, endOriginalDate]);\n\n const { formattedDate: startFormattedDate } = getFormattedDates({\n value: startValue || null,\n delimiter: dateFormatDelimiter(),\n lang,\n format,\n includeEdgeDates,\n min,\n max,\n });\n\n const { formattedDate: endFormattedDate } = getFormattedDates({\n value: endValue || null,\n delimiter: dateFormatDelimiter(),\n lang,\n format,\n includeEdgeDates,\n min,\n max,\n });\n\n setFirstInputValue(startFormattedDate);\n setSecondInputValue(endFormattedDate);\n\n setCalendarFirstValue(startOriginalDate);\n setCalendarSecondValue(endOriginalDate);\n\n outerHandler?.(event);\n };\n\n const { onKeyDown } = useKeyNavigation({\n isCalendarOpen: isInnerOpen,\n format,\n maskWithFormat,\n delimiter: dateFormatDelimiter(),\n closeOnEsc,\n onToggle: handleToggle,\n });\n\n const handleChangeStartOfRange = (chosenDate: Date, dateInfo?: DateInfo) => {\n if (!fullDateEntered) {\n handleFirstCalendarPick(chosenDate, dateInfo);\n handleSecondCalendarPick(undefined);\n\n return;\n }\n\n const prevValue = secondTextFieldClicked ? calendarFirstValue : calendarSecondValue;\n\n const [first, second] = getSortedValues([prevValue, chosenDate]);\n\n handleFirstCalendarPick(first, dateInfo);\n handleSecondCalendarPick(second, dateInfo);\n\n if (!firstValueError && !secondValueError && closeAfterDateSelect) {\n handleToggle(false);\n }\n };\n\n const handleChangeCalendarValue = ([firstDate, secondDate]: [DateType, DateType], dateInfo?: DateInfo) => {\n if (firstDate) {\n handleFirstCalendarPick(firstDate, dateInfo);\n }\n\n if (secondDate) {\n handleSecondCalendarPick(secondDate, dateInfo);\n }\n\n if (firstDate && secondDate && !firstValueError && !secondValueError && closeAfterDateSelect) {\n handleToggle(false);\n }\n };\n\n const RangeComponent = (\n <>\n {/* TODO https://github.com/salute-developers/plasma/issues/1227\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n //@ts-ignore */}\n <StyledRange\n ref={rangeRef}\n autoComplete={autoComplete}\n dividerIcon={dividerIcon}\n dividerVariant={dividerVariant}\n label={label}\n required={required}\n requiredPlacement={requiredPlacement}\n hasRequiredIndicator={hasRequiredIndicator}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n firstPlaceholder={firstPlaceholder}\n secondPlaceholder={secondPlaceholder}\n contentLeft={contentLeft}\n contentRight={contentRight}\n firstTextfieldTextBefore={firstTextfieldTextBefore}\n secondTextfieldTextBefore={secondTextfieldTextBefore}\n firstTextfieldTextAfter={firstTextfieldTextAfter}\n secondTextfieldTextAfter={secondTextfieldTextAfter}\n firstTextfieldContentLeft={firstTextfieldContentLeft}\n firstTextfieldContentRight={firstTextfieldContentRight}\n secondTextfieldContentLeft={secondTextfieldContentLeft}\n secondTextfieldContentRight={secondTextfieldContentRight}\n firstValue={inputFirstValue}\n secondValue={inputSecondValue}\n firstValueError={firstValueError}\n secondValueError={secondValueError}\n firstValueSuccess={firstValueSuccess}\n secondValueSuccess={secondValueSuccess}\n onChangeFirstValue={handleChangeFirstValue}\n onChangeSecondValue={handleChangeSecondValue}\n name={name}\n onSearchFirstValue={(_, date) => {\n handleSearchFirst(String(date));\n if (!calendarSecondValue || secondValueError) {\n rangeRef?.current?.secondTextField()?.current?.focus();\n }\n }}\n onSearchSecondValue={(_, date) => {\n handleSearchSecond(String(date));\n if (!calendarFirstValue || firstValueError) {\n rangeRef?.current?.firstTextField()?.current?.focus();\n }\n }}\n onFocusFirstTextfield={handleFocusFirstTextField}\n onFocusSecondTextfield={handleFocusSecondTextField}\n onBlurFirstTextfield={(event) => handleBlur(event, onBlurFirstTextfield)}\n onBlurSecondTextfield={(event) => handleBlur(event, onBlurSecondTextfield)}\n onKeyDown={onKeyDown}\n />\n </>\n );\n\n useEffect(() => {\n setFirstInputRef(rangeRef.current?.firstTextField());\n setSecondInputRef(rangeRef.current?.secondTextField());\n }, [rangeRef.current]);\n\n useEffect(() => {\n setIsInnerOpen((prevOpen) => prevOpen !== opened && opened);\n }, [opened]);\n\n useEffect(() => {\n if (calendarFirstValue && calendarSecondValue) {\n setFullDateEntered(true);\n }\n }, [calendarFirstValue, calendarSecondValue]);\n\n useLayoutEffect(() => {\n updateExternalFirstDate(startExternalValue || undefined);\n }, [startExternalValue, format, lang]);\n\n useLayoutEffect(() => {\n updateExternalSecondDate(endExternalValue || undefined);\n }, [endExternalValue, format, lang]);\n\n useLayoutEffect(() => {\n !startExternalValue && updateExternalFirstDate(defaultFirstDate);\n }, [defaultFirstDate, format, lang]);\n\n useLayoutEffect(() => {\n !endExternalValue && updateExternalSecondDate(defaultSecondDate);\n }, [defaultSecondDate, format, lang]);\n\n const RootWrapper = useCallback<FC<PropsWithChildren>>(\n ({ children }) => (\n <Root\n view={view}\n size={size}\n className={cx(classes.datePickerRoot, className)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n >\n {children}\n </Root>\n ),\n [view, size, disabled, readOnly],\n );\n\n return (\n <Root\n ref={rootRef}\n view={view}\n size={size}\n className={cx(classes.datePickerRoot, className)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n {...rest}\n >\n <RangeDatePopover\n calendarValue={[calendarFirstValue, calendarSecondValue]}\n target={RangeComponent}\n opened={isInnerOpen}\n includeEdgeDates={includeEdgeDates}\n eventList={eventList}\n disabledList={disabledList}\n eventMonthList={eventMonthList}\n disabledMonthList={disabledMonthList}\n eventQuarterList={eventQuarterList}\n disabledQuarterList={disabledQuarterList}\n eventYearList={eventYearList}\n disabledYearList={disabledYearList}\n min={min}\n max={max}\n renderFromDate={renderFromDate}\n frame={frame}\n usePortal={usePortal}\n placement={placement}\n closeOnOverlayClick={closeOnOverlayClick}\n closeOnEsc={closeOnEsc}\n offset={offset}\n type={type}\n onToggle={handleToggle}\n lang={lang}\n isDoubleCalendar={isDoubleCalendar}\n rootWrapper={RootWrapper}\n onChangeStartOfRange={handleChangeStartOfRange}\n onChangeValue={handleChangeCalendarValue}\n />\n {leftHelper && (\n <LeftHelper className={cx(rangeErrorClass, rangeSuccessClass)}>{leftHelper}</LeftHelper>\n )}\n <InputHidden\n name={name}\n type=\"hidden\"\n datatype=\"datepicker-double\"\n data-datepicker=\"from\"\n value={inputFirstValue}\n ref={innerRefFirst}\n {...noop}\n />\n <InputHidden\n name={name}\n type=\"hidden\"\n datatype=\"datepicker-double\"\n data-datepicker=\"to\"\n value={inputSecondValue}\n ref={innerRefSecond}\n {...noop}\n />\n </Root>\n );\n },\n );\n\nexport const datePickerRangeConfig = {\n name: 'DatePickerRange',\n tag: 'div',\n layout: datePickerRangeRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n css: readOnlyCSS,\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["datePickerRangeRoot","Root","forwardRef","_ref","ref","_rangeRef$current","_rangeRef$current2","className","autoComplete","_ref$isDoubleCalendar","isDoubleCalendar","_ref$opened","opened","externalValue","value","label","leftHelper","contentLeft","contentRight","view","size","_ref$readOnly","readOnly","_ref$disabled","disabled","name","_ref$dividerVariant","dividerVariant","dividerIcon","_ref$defaultFirstDate","defaultFirstDate","_ref$defaultSecondDat","defaultSecondDate","firstValueError","secondValueError","firstValueSuccess","secondValueSuccess","firstPlaceholder","secondPlaceholder","firstTextfieldContentLeft","firstTextfieldContentRight","secondTextfieldContentLeft","secondTextfieldContentRight","firstTextfieldTextBefore","secondTextfieldTextBefore","firstTextfieldTextAfter","secondTextfieldTextAfter","required","_ref$requiredPlacemen","requiredPlacement","_ref$hasRequiredIndic","hasRequiredIndicator","_ref$format","format","_ref$lang","lang","maskWithFormat","min","max","renderFromDate","_ref$includeEdgeDates","includeEdgeDates","eventList","disabledList","eventMonthList","disabledMonthList","eventQuarterList","disabledQuarterList","eventYearList","disabledYearList","_ref$type","type","_ref$frame","frame","_ref$usePortal","usePortal","_ref$placement","placement","_ref$closeOnOverlayCl","closeOnOverlayClick","_ref$closeOnEsc","closeOnEsc","_ref$closeAfterDateSe","closeAfterDateSelect","offset","onToggle","onChange","onChangeFirstValue","onChangeSecondValue","onCommitFirstDate","onCommitSecondDate","onFocusFirstTextfield","onFocusSecondTextfield","onBlurFirstTextfield","onBlurSecondTextfield","rest","_objectWithoutProperties","_excluded","length","console","error","rangeRef","createRef","rootRef","useRef","innerRefFirst","innerRefSecond","_useState","useState","current","firstTextField","_useState2","_slicedToArray","firstInputRef","setFirstInputRef","_useState3","secondTextField","_useState4","secondInputRef","setSecondInputRef","_useState5","_useState6","isInnerOpen","setIsInnerOpen","dateFormatDelimiter","useCallback","getDateFormatDelimiter","_ref2","_ref3","startExternalValue","endExternalValue","startInitialValues","getFormattedDates","delimiter","endInitialValues","_useState7","calendar","originalDate","input","formattedDate","_useState8","correctStartDates","setCorrectStartDates","_useState9","_useState10","correctEndDates","setCorrectEndDates","_useState11","_useState12","calendarFirstValue","setCalendarFirstValue","_useState13","_useState14","inputFirstValue","setInputFirstValue","_useState15","_useState16","calendarSecondValue","setCalendarSecondValue","_useState17","_useState18","inputSecondValue","setInputSecondValue","_useState19","Boolean","_useState20","fullDateEntered","setFullDateEntered","_useState21","_useState22","secondTextFieldClicked","setSecondTextFieldClicked","rangeErrorClass","classes","datePickerError","undefined","rangeSuccessClass","datePickerSuccess","setFirstInputValue","target","concat","setSecondInputValue","_useDatePicker","useDatePicker","currentValue","valueError","valueSuccess","setCorrectDates","setInputValue","setCalendarValue","onChangeValue","onCommitDate","handleChangeFirstValue","handleChangeValue","handleFirstCalendarPick","handleCalendarPick","handleSearchFirst","handleSearch","updateExternalFirstDate","updateExternalDate","_useDatePicker2","handleChangeSecondValue","handleSecondCalendarPick","handleSearchSecond","updateExternalSecondDate","handleToggle","currentOpened","event","_firstInputRef$curren","_secondInputRef$curre","isCalendarOpen","contains","code","keys","Escape","_secondInputRef$curre2","focus","_firstInputRef$curren2","handleFocusFirstTextField","handleFocusSecondTextField","handleBlur","outerHandler","_getFormattedDates","startOriginalDate","_getFormattedDates2","endOriginalDate","Date","_getSortedValues","getSortedValues","_getSortedValues2","startValue","endValue","_getFormattedDates3","startFormattedDate","_getFormattedDates4","endFormattedDate","_useKeyNavigation","useKeyNavigation","onKeyDown","handleChangeStartOfRange","chosenDate","dateInfo","prevValue","_getSortedValues3","_getSortedValues4","first","second","handleChangeCalendarValue","_ref4","_ref5","firstDate","secondDate","RangeComponent","React","createElement","Fragment","StyledRange","firstValue","secondValue","onSearchFirstValue","_","date","String","_rangeRef$current3","onSearchSecondValue","_rangeRef$current4","useEffect","_rangeRef$current5","_rangeRef$current6","prevOpen","useLayoutEffect","RootWrapper","_ref6","children","cx","datePickerRoot","_extends","RangeDatePopover","calendarValue","rootWrapper","onChangeStartOfRange","LeftHelper","InputHidden","datatype","noop","datePickerRangeConfig","tag","layout","base","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","readOnlyCSS","defaults"],"mappings":"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"}
|