@razorpay/blade 12.47.0 → 12.48.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/build/lib/native/components/Input/TextInput/TextInput.js +1 -1
- package/build/lib/native/components/Input/TextInput/TextInput.js.map +1 -1
- package/build/lib/native/components/Input/TextInput/useFormattedInput.js +1 -1
- package/build/lib/native/components/Input/TextInput/useFormattedInput.js.map +1 -1
- package/build/lib/web/development/components/BottomSheet/BottomSheet.web.js +2 -1
- package/build/lib/web/development/components/BottomSheet/BottomSheet.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/BaseDatePicker.web.js +162 -113
- package/build/lib/web/development/components/DatePicker/BaseDatePicker.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/CalendarFooter.web.js +1 -1
- package/build/lib/web/development/components/DatePicker/CalendarFooter.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/DateInput.web.js +202 -147
- package/build/lib/web/development/components/DatePicker/DateInput.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/QuickSelection/PresetContext.js +122 -0
- package/build/lib/web/development/components/DatePicker/QuickSelection/PresetContext.js.map +1 -0
- package/build/lib/web/development/components/DatePicker/QuickSelection/PresetDropdown.web.js +46 -0
- package/build/lib/web/development/components/DatePicker/QuickSelection/PresetDropdown.web.js.map +1 -0
- package/build/lib/web/development/components/DatePicker/QuickSelection/PresetSideBar.web.js +19 -19
- package/build/lib/web/development/components/DatePicker/QuickSelection/PresetSideBar.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/QuickSelection/utils.js +9 -0
- package/build/lib/web/development/components/DatePicker/QuickSelection/utils.js.map +1 -0
- package/build/lib/web/development/components/DatePicker/usePopup.js +10 -2
- package/build/lib/web/development/components/DatePicker/usePopup.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/utils.js +419 -1
- package/build/lib/web/development/components/DatePicker/utils.js.map +1 -1
- package/build/lib/web/development/components/Input/TextInput/TextInput.js +3 -1
- package/build/lib/web/development/components/Input/TextInput/TextInput.js.map +1 -1
- package/build/lib/web/development/components/Input/TextInput/useFormattedInput.js +21 -0
- package/build/lib/web/development/components/Input/TextInput/useFormattedInput.js.map +1 -1
- package/build/lib/web/production/components/BottomSheet/BottomSheet.web.js +2 -1
- package/build/lib/web/production/components/BottomSheet/BottomSheet.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/BaseDatePicker.web.js +162 -113
- package/build/lib/web/production/components/DatePicker/BaseDatePicker.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/CalendarFooter.web.js +1 -1
- package/build/lib/web/production/components/DatePicker/CalendarFooter.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/DateInput.web.js +202 -147
- package/build/lib/web/production/components/DatePicker/DateInput.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/QuickSelection/PresetContext.js +122 -0
- package/build/lib/web/production/components/DatePicker/QuickSelection/PresetContext.js.map +1 -0
- package/build/lib/web/production/components/DatePicker/QuickSelection/PresetDropdown.web.js +46 -0
- package/build/lib/web/production/components/DatePicker/QuickSelection/PresetDropdown.web.js.map +1 -0
- package/build/lib/web/production/components/DatePicker/QuickSelection/PresetSideBar.web.js +19 -19
- package/build/lib/web/production/components/DatePicker/QuickSelection/PresetSideBar.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/QuickSelection/utils.js +9 -0
- package/build/lib/web/production/components/DatePicker/QuickSelection/utils.js.map +1 -0
- package/build/lib/web/production/components/DatePicker/usePopup.js +10 -2
- package/build/lib/web/production/components/DatePicker/usePopup.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/utils.js +419 -1
- package/build/lib/web/production/components/DatePicker/utils.js.map +1 -1
- package/build/lib/web/production/components/Input/TextInput/TextInput.js +3 -1
- package/build/lib/web/production/components/Input/TextInput/TextInput.js.map +1 -1
- package/build/lib/web/production/components/Input/TextInput/useFormattedInput.js +21 -0
- package/build/lib/web/production/components/Input/TextInput/useFormattedInput.js.map +1 -1
- package/build/types/components/index.d.ts +10 -5
- package/build/types/components/index.native.d.ts +10 -5
- package/package.json +1 -1
|
@@ -1,60 +1,155 @@
|
|
|
1
|
-
import
|
|
1
|
+
import _typeof from '@babel/runtime/helpers/typeof';
|
|
2
2
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
3
|
+
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
4
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
3
5
|
import React__default from 'react';
|
|
4
6
|
import { useDatesContext } from '@mantine/dates';
|
|
5
|
-
import { getFormattedDate } from './utils.js';
|
|
7
|
+
import { stripDelimiters, validateAndParseDateInput, rangeFormattedValue, getTextInputFormat, finalInputFormat, getFormattedDate, rangeInputPlaceHolder } from './utils.js';
|
|
8
|
+
import { usePresetContext } from './QuickSelection/PresetContext.js';
|
|
6
9
|
import '../Box/BaseBox/index.js';
|
|
7
|
-
import '../
|
|
8
|
-
import '../Input/BaseInput/index.js';
|
|
9
|
-
import '../../tokens/global/index.js';
|
|
10
|
+
import '../Input/TextInput/index.js';
|
|
10
11
|
import '../../utils/index.js';
|
|
11
|
-
import
|
|
12
|
+
import '../Icons/index.js';
|
|
12
13
|
import '../../utils/makeAnalyticsAttribute/index.js';
|
|
13
14
|
import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
|
|
14
|
-
import {
|
|
15
|
+
import { TextInput } from '../Input/TextInput/TextInput.js';
|
|
16
|
+
import CalendarIcon from '../Icons/CalendarIcon/CalendarIcon.js';
|
|
15
17
|
import { isReactNative } from '../../utils/platform/isReactNative.js';
|
|
16
18
|
import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
|
|
17
|
-
import { size } from '../../tokens/global/size.js';
|
|
18
19
|
import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
|
|
19
|
-
import CalendarIcon from '../Icons/CalendarIcon/CalendarIcon.js';
|
|
20
|
-
import ArrowRightIcon from '../Icons/ArrowRightIcon/ArrowRightIcon.js';
|
|
21
|
-
import { makeSize } from '../../utils/makeSize/makeSize.js';
|
|
22
20
|
|
|
23
|
-
var _excluded = ["
|
|
24
|
-
_excluded2 = ["
|
|
21
|
+
var _excluded = ["format", "date", "setControlledValue", "leadingDropdown", "tags", "id"],
|
|
22
|
+
_excluded2 = ["value", "name", "isRequired", "isDisabled"],
|
|
23
|
+
_excluded3 = ["selectionType", "referenceProps", "inputRef", "date", "label", "labelPosition", "labelSuffix", "labelTrailing", "autoFocus", "name", "size", "necessityIndicator", "successText", "errorText", "helpText", "format", "placeholder", "setControlledValue", "leadingDropdown", "selectedPreset", "excludeDate", "minDate", "maxDate"];
|
|
25
24
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
26
25
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
27
26
|
var _DateInput = function _DateInput(props, ref) {
|
|
28
|
-
var
|
|
29
|
-
|
|
27
|
+
var _textInputProps$error;
|
|
28
|
+
var format = props.format,
|
|
29
|
+
date = props.date,
|
|
30
|
+
setControlledValue = props.setControlledValue,
|
|
31
|
+
leadingDropdown = props.leadingDropdown,
|
|
32
|
+
tags = props.tags,
|
|
33
|
+
id = props.id,
|
|
34
|
+
textInputProps = _objectWithoutProperties(props, _excluded);
|
|
35
|
+
var _React$useState = React__default.useState(['']),
|
|
36
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
37
|
+
inputValue = _React$useState2[0],
|
|
38
|
+
setInputValue = _React$useState2[1];
|
|
39
|
+
var _React$useState3 = React__default.useState(undefined),
|
|
40
|
+
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
41
|
+
validationError = _React$useState4[0],
|
|
42
|
+
setValidationError = _React$useState4[1];
|
|
43
|
+
var presetContext = usePresetContext();
|
|
44
|
+
|
|
45
|
+
// Determine selection type: prefer preset context calculation over props
|
|
46
|
+
// This handles "Today" presets that should display as single even though data is range
|
|
47
|
+
var isRange = (presetContext === null || presetContext === void 0 ? void 0 : presetContext.effectiveSelectionType) === 'single' ? false : (presetContext === null || presetContext === void 0 ? void 0 : presetContext.effectiveSelectionType) === 'range' || props.selectionType === 'range';
|
|
48
|
+
|
|
49
|
+
// Sync internal input state with external formatted values from parent component
|
|
50
|
+
// textInputProps.value comes from DatePickerInput as formatted strings: ["25/12/2024", "31/12/2024"]
|
|
51
|
+
// We strip delimiters for internal processing: ["25122024", "31122024"]
|
|
52
|
+
// This prevents double formatting and helps to validate the input easier during user typing
|
|
53
|
+
React__default.useEffect(function () {
|
|
54
|
+
if (textInputProps.value) {
|
|
55
|
+
setInputValue(isRange ? [stripDelimiters(textInputProps.value[0]), stripDelimiters(textInputProps.value[1])] : [stripDelimiters(textInputProps.value[0])]);
|
|
56
|
+
}
|
|
57
|
+
}, [textInputProps.value, isRange, format]);
|
|
58
|
+
|
|
59
|
+
// Clear validation error only when the actual selected date changes
|
|
60
|
+
// (e.g., user selected a valid date from the calendar). This avoids
|
|
61
|
+
// clearing errors during typing/blur unless the value truly updated.
|
|
62
|
+
React__default.useEffect(function () {
|
|
63
|
+
setValidationError(undefined);
|
|
64
|
+
}, [date]);
|
|
65
|
+
var applyDateValue = React__default.useCallback(function (inputValue) {
|
|
66
|
+
var shouldClearWhenEmpty = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
67
|
+
if (inputValue !== null && inputValue !== void 0 && inputValue.trim()) {
|
|
68
|
+
// Validate input and get parsed dates in one atomic operation (includes all constraints)
|
|
69
|
+
var validation = validateAndParseDateInput(inputValue, isRange, format, {
|
|
70
|
+
excludeDate: props.excludeDate,
|
|
71
|
+
minDate: props.minDate,
|
|
72
|
+
maxDate: props.maxDate
|
|
73
|
+
});
|
|
74
|
+
if (validation.shouldBlock) {
|
|
75
|
+
return; // Block invalid input to prevent data corruption
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
// Apply the pre-parsed date values to controlled state (no redundant parsing)
|
|
79
|
+
if (validation.parsedValue !== undefined) {
|
|
80
|
+
var finalValue = validation.parsedValue;
|
|
81
|
+
|
|
82
|
+
// Special handling: if preset context shows single but props expect range
|
|
83
|
+
// (like "Today" preset), convert single date back to same-day range
|
|
84
|
+
if ((presetContext === null || presetContext === void 0 ? void 0 : presetContext.effectiveSelectionType) === 'single' && props.selectionType === 'range' && validation.parsedValue instanceof Date) {
|
|
85
|
+
finalValue = [validation.parsedValue, validation.parsedValue];
|
|
86
|
+
}
|
|
87
|
+
setControlledValue === null || setControlledValue === void 0 ? void 0 : setControlledValue(finalValue);
|
|
88
|
+
}
|
|
89
|
+
} else if (shouldClearWhenEmpty) {
|
|
90
|
+
// Clear controlled value when input is emptied (onChange only, not onBlur)
|
|
91
|
+
setControlledValue === null || setControlledValue === void 0 ? void 0 : setControlledValue(isRange ? [null, null] : null);
|
|
92
|
+
}
|
|
93
|
+
}, [isRange, setControlledValue, presetContext === null || presetContext === void 0 ? void 0 : presetContext.effectiveSelectionType, props.selectionType, format, props.excludeDate, props.minDate, props.maxDate]);
|
|
94
|
+
var handleInputChange = function handleInputChange(_ref) {
|
|
95
|
+
var value = _ref.value;
|
|
96
|
+
setValidationError(undefined);
|
|
97
|
+
// Apply changes immediately during typing (with empty clearing enabled)
|
|
98
|
+
applyDateValue(value !== null && value !== void 0 ? value : '', true);
|
|
99
|
+
};
|
|
100
|
+
var handleBlur = React__default.useCallback(function (params) {
|
|
101
|
+
var _ref2, _params$event$target$, _params$event;
|
|
102
|
+
var currentInputValue = (_ref2 = (_params$event$target$ = (_params$event = params.event) === null || _params$event === void 0 ? void 0 : _params$event.target.value) !== null && _params$event$target$ !== void 0 ? _params$event$target$ : params.value) !== null && _ref2 !== void 0 ? _ref2 : '';
|
|
103
|
+
setValidationError(undefined);
|
|
104
|
+
if (currentInputValue !== null && currentInputValue !== void 0 && currentInputValue.trim()) {
|
|
105
|
+
// Validate complete input and show errors to user on blur (includes all constraints)
|
|
106
|
+
var validation = validateAndParseDateInput(currentInputValue, isRange, format, {
|
|
107
|
+
excludeDate: props.excludeDate,
|
|
108
|
+
minDate: props.minDate,
|
|
109
|
+
maxDate: props.maxDate
|
|
110
|
+
});
|
|
111
|
+
if (validation.shouldBlock && validation.error) {
|
|
112
|
+
setValidationError(validation.error);
|
|
113
|
+
return; // Don't apply invalid values
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
// Apply final value on blur (without empty clearing to preserve existing dates)
|
|
118
|
+
applyDateValue(currentInputValue, false);
|
|
119
|
+
}, [applyDateValue, isRange]);
|
|
120
|
+
return /*#__PURE__*/jsx(TextInput, _objectSpread(_objectSpread({}, textInputProps), {}, {
|
|
30
121
|
ref: ref,
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
122
|
+
type: "number",
|
|
123
|
+
value: isRange ? rangeFormattedValue(inputValue[0], inputValue[1]) : inputValue[0],
|
|
124
|
+
leadingIcon: CalendarIcon,
|
|
125
|
+
leading: leadingDropdown,
|
|
126
|
+
format: isRange ? getTextInputFormat(finalInputFormat(inputValue[0], inputValue[1], format), true) : getTextInputFormat(format, false),
|
|
127
|
+
validationState: validationError ? 'error' : textInputProps.validationState,
|
|
128
|
+
errorText: (_textInputProps$error = textInputProps.errorText) !== null && _textInputProps$error !== void 0 ? _textInputProps$error : validationError,
|
|
129
|
+
onChange: handleInputChange,
|
|
130
|
+
onBlur: handleBlur,
|
|
36
131
|
onClick: function onClick(e) {
|
|
37
|
-
var
|
|
38
|
-
if (
|
|
132
|
+
var _textInputProps$onCli;
|
|
133
|
+
if (textInputProps.isDisabled) {
|
|
39
134
|
return;
|
|
40
135
|
}
|
|
41
|
-
(
|
|
136
|
+
(_textInputProps$onCli = textInputProps.onClick) === null || _textInputProps$onCli === void 0 ? void 0 : _textInputProps$onCli.call(textInputProps, e);
|
|
42
137
|
},
|
|
43
|
-
onKeyDown: function onKeyDown(
|
|
44
|
-
var
|
|
45
|
-
var event =
|
|
138
|
+
onKeyDown: function onKeyDown(_ref3) {
|
|
139
|
+
var _textInputProps$onKey;
|
|
140
|
+
var event = _ref3.event;
|
|
46
141
|
// @ts-expect-error
|
|
47
|
-
(
|
|
142
|
+
(_textInputProps$onKey = textInputProps.onKeyDown) === null || _textInputProps$onKey === void 0 ? void 0 : _textInputProps$onKey.call(textInputProps, event);
|
|
48
143
|
}
|
|
49
144
|
}));
|
|
50
145
|
};
|
|
51
146
|
var DateInput = /*#__PURE__*/React__default.forwardRef(_DateInput);
|
|
52
|
-
var HiddenInput = function HiddenInput(
|
|
53
|
-
var value =
|
|
54
|
-
name =
|
|
55
|
-
isRequired =
|
|
56
|
-
isDisabled =
|
|
57
|
-
rest = _objectWithoutProperties(
|
|
147
|
+
var HiddenInput = function HiddenInput(_ref4) {
|
|
148
|
+
var value = _ref4.value,
|
|
149
|
+
name = _ref4.name,
|
|
150
|
+
isRequired = _ref4.isRequired,
|
|
151
|
+
isDisabled = _ref4.isDisabled,
|
|
152
|
+
rest = _objectWithoutProperties(_ref4, _excluded2);
|
|
58
153
|
if (isReactNative()) return /*#__PURE__*/jsx(Fragment, {});
|
|
59
154
|
return /*#__PURE__*/jsx("input", _objectSpread({
|
|
60
155
|
hidden: true,
|
|
@@ -65,37 +160,32 @@ var HiddenInput = function HiddenInput(_ref2) {
|
|
|
65
160
|
readOnly: true
|
|
66
161
|
}, makeAnalyticsAttribute(rest)));
|
|
67
162
|
};
|
|
68
|
-
var
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
var isLarge = size$1 === 'large';
|
|
95
|
-
var hasLabel = typeof label === 'string' ? Boolean(label) : Boolean((label === null || label === void 0 ? void 0 : label.start) || (label === null || label === void 0 ? void 0 : label.end));
|
|
96
|
-
var isLabelPositionLeft = labelPosition === 'left';
|
|
97
|
-
var isLabelPositionTop = labelPosition === 'top';
|
|
98
|
-
var isLabelPositionVisuallyTop = hasLabel && (isLabelPositionTop || isMobile);
|
|
163
|
+
var _DatePickerInput = function _DatePickerInput(_ref5, ref) {
|
|
164
|
+
var selectionType = _ref5.selectionType,
|
|
165
|
+
referenceProps = _ref5.referenceProps,
|
|
166
|
+
inputRef = _ref5.inputRef,
|
|
167
|
+
date = _ref5.date,
|
|
168
|
+
label = _ref5.label,
|
|
169
|
+
labelPosition = _ref5.labelPosition,
|
|
170
|
+
labelSuffix = _ref5.labelSuffix,
|
|
171
|
+
labelTrailing = _ref5.labelTrailing,
|
|
172
|
+
autoFocus = _ref5.autoFocus,
|
|
173
|
+
name = _ref5.name,
|
|
174
|
+
_ref5$size = _ref5.size,
|
|
175
|
+
size = _ref5$size === void 0 ? 'medium' : _ref5$size,
|
|
176
|
+
necessityIndicator = _ref5.necessityIndicator,
|
|
177
|
+
successText = _ref5.successText,
|
|
178
|
+
errorText = _ref5.errorText,
|
|
179
|
+
helpText = _ref5.helpText,
|
|
180
|
+
format = _ref5.format,
|
|
181
|
+
placeholder = _ref5.placeholder,
|
|
182
|
+
setControlledValue = _ref5.setControlledValue,
|
|
183
|
+
leadingDropdown = _ref5.leadingDropdown,
|
|
184
|
+
selectedPreset = _ref5.selectedPreset,
|
|
185
|
+
excludeDate = _ref5.excludeDate,
|
|
186
|
+
minDate = _ref5.minDate,
|
|
187
|
+
maxDate = _ref5.maxDate,
|
|
188
|
+
props = _objectWithoutProperties(_ref5, _excluded3);
|
|
99
189
|
var _useDatesContext = useDatesContext(),
|
|
100
190
|
locale = _useDatesContext.locale;
|
|
101
191
|
if (selectionType == 'single') {
|
|
@@ -121,33 +211,28 @@ var _DatePickerInput = function _DatePickerInput(_ref3, ref) {
|
|
|
121
211
|
placeholder: placeholder || format,
|
|
122
212
|
popupId: referenceProps['aria-controls'],
|
|
123
213
|
isPopupExpanded: referenceProps['aria-expanded'],
|
|
124
|
-
size: size
|
|
214
|
+
size: size,
|
|
125
215
|
autoFocus: autoFocus,
|
|
126
|
-
value: dateValue,
|
|
216
|
+
value: [dateValue],
|
|
127
217
|
componentName: "DatePickerInput",
|
|
128
218
|
necessityIndicator: necessityIndicator,
|
|
129
219
|
successText: successText,
|
|
130
220
|
errorText: errorText,
|
|
131
221
|
helpText: helpText,
|
|
132
222
|
labelSuffix: labelSuffix,
|
|
133
|
-
labelTrailing: labelTrailing
|
|
223
|
+
labelTrailing: labelTrailing,
|
|
224
|
+
leadingDropdown: leadingDropdown,
|
|
225
|
+
date: date,
|
|
226
|
+
setControlledValue: setControlledValue,
|
|
227
|
+
format: format,
|
|
228
|
+
selectionType: selectionType,
|
|
229
|
+
excludeDate: excludeDate,
|
|
230
|
+
minDate: minDate,
|
|
231
|
+
maxDate: maxDate
|
|
134
232
|
}, props), referenceProps))]
|
|
135
233
|
});
|
|
136
234
|
}
|
|
137
235
|
if (selectionType == 'range') {
|
|
138
|
-
var shouldRenderEndLabel = function shouldRenderEndLabel() {
|
|
139
|
-
var finalLabel = '';
|
|
140
|
-
var labelEnd = isLabelPositionLeft ? undefined : label === null || label === void 0 ? void 0 : label.end;
|
|
141
|
-
if (isLabelPositionVisuallyTop && labelEnd === undefined) {
|
|
142
|
-
// Empty space, nbsp;
|
|
143
|
-
finalLabel = "\xA0";
|
|
144
|
-
} else if (isLabelPositionLeft) {
|
|
145
|
-
finalLabel = undefined;
|
|
146
|
-
} else {
|
|
147
|
-
finalLabel = label === null || label === void 0 ? void 0 : label.end;
|
|
148
|
-
}
|
|
149
|
-
return finalLabel;
|
|
150
|
-
};
|
|
151
236
|
var startValue = getFormattedDate({
|
|
152
237
|
type: 'default',
|
|
153
238
|
date: date[0],
|
|
@@ -164,73 +249,43 @@ var _DatePickerInput = function _DatePickerInput(_ref3, ref) {
|
|
|
164
249
|
});
|
|
165
250
|
return /*#__PURE__*/jsxs(BaseBox, {
|
|
166
251
|
width: "100%",
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
children: /*#__PURE__*/jsx(ArrowRightIcon, {
|
|
205
|
-
size: "medium",
|
|
206
|
-
marginTop:
|
|
207
|
-
// Hacky layouting because the we cannot put this inside the internal layout of BaseInput.
|
|
208
|
-
hasLabel && (!isLabelPositionLeft || isMobile) ? "calc(".concat(makeSize(iconVerticalMargin[size$1]), " + ").concat(makeSize(isLarge ? size[20] : size[15]), ")") : makeSize(iconVerticalMargin[size$1])
|
|
209
|
-
})
|
|
210
|
-
}), /*#__PURE__*/jsxs(BaseBox, {
|
|
211
|
-
flex: 1,
|
|
212
|
-
children: [/*#__PURE__*/jsx(HiddenInput, _objectSpread({
|
|
213
|
-
value: endValue,
|
|
214
|
-
name: name === null || name === void 0 ? void 0 : name.end,
|
|
215
|
-
isRequired: props.isRequired,
|
|
216
|
-
isDisabled: props.isDisabled
|
|
217
|
-
}, makeAnalyticsAttribute(props))), /*#__PURE__*/jsx(DateInput, _objectSpread(_objectSpread({
|
|
218
|
-
id: "end-date",
|
|
219
|
-
placeholder: placeholder,
|
|
220
|
-
leadingIcon: CalendarIcon,
|
|
221
|
-
label: shouldRenderEndLabel(),
|
|
222
|
-
labelPosition: isLabelPositionLeft ? undefined : labelPosition,
|
|
223
|
-
popupId: referenceProps['aria-controls'],
|
|
224
|
-
isPopupExpanded: referenceProps['aria-expanded'],
|
|
225
|
-
size: size$1,
|
|
226
|
-
value: endValue,
|
|
227
|
-
componentName: "DatePickerInputEnd",
|
|
228
|
-
successText: successText === null || successText === void 0 ? void 0 : successText.end,
|
|
229
|
-
errorText: errorText === null || errorText === void 0 ? void 0 : errorText.end,
|
|
230
|
-
helpText: helpText === null || helpText === void 0 ? void 0 : helpText.end,
|
|
231
|
-
labelTrailing: labelTrailing
|
|
232
|
-
}, props), referenceProps))]
|
|
233
|
-
})]
|
|
252
|
+
children: [/*#__PURE__*/jsx(HiddenInput, {
|
|
253
|
+
value: "".concat(startValue),
|
|
254
|
+
name: name === null || name === void 0 ? void 0 : name.start,
|
|
255
|
+
isRequired: props.isRequired,
|
|
256
|
+
isDisabled: props.isDisabled
|
|
257
|
+
}), /*#__PURE__*/jsx(HiddenInput, _objectSpread({
|
|
258
|
+
value: endValue,
|
|
259
|
+
name: name === null || name === void 0 ? void 0 : name.end,
|
|
260
|
+
isRequired: props.isRequired,
|
|
261
|
+
isDisabled: props.isDisabled
|
|
262
|
+
}, makeAnalyticsAttribute(props))), /*#__PURE__*/jsx(DateInput, _objectSpread(_objectSpread({
|
|
263
|
+
ref: ref,
|
|
264
|
+
id: "range-date",
|
|
265
|
+
labelPosition: labelPosition,
|
|
266
|
+
label: _typeof(label) === 'object' ? label === null || label === void 0 ? void 0 : label.start : label,
|
|
267
|
+
placeholder: rangeInputPlaceHolder(placeholder, format),
|
|
268
|
+
popupId: referenceProps['aria-controls'],
|
|
269
|
+
isPopupExpanded: referenceProps['aria-expanded'],
|
|
270
|
+
size: size,
|
|
271
|
+
autoFocus: autoFocus,
|
|
272
|
+
value: [startValue, endValue],
|
|
273
|
+
componentName: "DatePickerInputRange",
|
|
274
|
+
necessityIndicator: necessityIndicator,
|
|
275
|
+
successText: _typeof(successText) === 'object' ? successText === null || successText === void 0 ? void 0 : successText.start : successText,
|
|
276
|
+
errorText: _typeof(errorText) === 'object' ? errorText === null || errorText === void 0 ? void 0 : errorText.start : errorText,
|
|
277
|
+
helpText: _typeof(helpText) === 'object' ? helpText === null || helpText === void 0 ? void 0 : helpText.start : helpText,
|
|
278
|
+
labelSuffix: labelSuffix,
|
|
279
|
+
labelTrailing: labelTrailing,
|
|
280
|
+
format: format,
|
|
281
|
+
leadingDropdown: leadingDropdown,
|
|
282
|
+
date: date,
|
|
283
|
+
setControlledValue: setControlledValue,
|
|
284
|
+
selectionType: selectionType,
|
|
285
|
+
excludeDate: excludeDate,
|
|
286
|
+
minDate: minDate,
|
|
287
|
+
maxDate: maxDate
|
|
288
|
+
}, props), referenceProps))]
|
|
234
289
|
});
|
|
235
290
|
}
|
|
236
291
|
return /*#__PURE__*/jsx(Fragment, {});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateInput.web.js","sources":["../../../../../../src/components/DatePicker/DateInput.web.tsx"],"sourcesContent":["/* eslint-disable jsx-a11y/no-autofocus */\n/* eslint-disable @typescript-eslint/no-unnecessary-type-assertion */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from 'react';\nimport { useDatesContext } from '@mantine/dates';\nimport type { DatePickerInputProps } from './types';\nimport { getFormattedDate } from './utils';\nimport BaseBox from '~components/Box/BaseBox';\nimport { ArrowRightIcon, CalendarIcon } from '~components/Icons';\nimport type { BaseInputProps } from '~components/Input/BaseInput';\nimport { BaseInput } from '~components/Input/BaseInput';\nimport { size as sizeTokens } from '~tokens/global';\nimport { isReactNative, makeSize } from '~utils';\nimport type { BladeElementRef, DataAnalyticsAttribute } from '~utils/types';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst _DateInput = (\n props: BaseInputProps,\n ref: React.ForwardedRef<BladeElementRef>,\n): React.ReactElement => {\n return (\n <BaseInput\n {...props}\n ref={ref}\n as=\"button\"\n textAlign=\"left\"\n hideLabelText={props.label?.length === 0}\n autoCompleteSuggestionType=\"none\"\n hasPopup=\"dialog\"\n onClick={(e) => {\n if (props.isDisabled) {\n return;\n }\n props.onClick?.(e);\n }}\n onKeyDown={({ event }) => {\n // @ts-expect-error\n props.onKeyDown?.(event);\n }}\n />\n );\n};\n\nconst DateInput = React.forwardRef(_DateInput);\n\nconst HiddenInput = ({\n value,\n name,\n isRequired,\n isDisabled,\n ...rest\n}: {\n value: string;\n name?: string;\n isRequired?: boolean;\n isDisabled?: boolean;\n} & DataAnalyticsAttribute): React.ReactElement => {\n if (isReactNative()) return <></>;\n\n return (\n <input\n hidden={true}\n name={name}\n value={value}\n required={isRequired}\n disabled={isDisabled}\n readOnly\n {...makeAnalyticsAttribute(rest)}\n />\n );\n};\n\nconst iconVerticalMargin = {\n medium: sizeTokens[14],\n large: sizeTokens[24],\n} as const;\nconst LEFT_LABEL_WIDTH = 132;\n\nconst _DatePickerInput = (\n {\n selectionType,\n referenceProps,\n inputRef,\n date,\n label,\n labelPosition,\n labelSuffix,\n labelTrailing,\n autoFocus,\n name,\n size = 'medium',\n necessityIndicator,\n successText,\n errorText,\n helpText,\n format,\n placeholder,\n ...props\n }: DatePickerInputProps,\n ref: React.ForwardedRef<any>,\n): React.ReactElement => {\n const isMobile = useIsMobile();\n const isLarge = size === 'large';\n const hasLabel = typeof label === 'string' ? Boolean(label) : Boolean(label?.start || label?.end);\n const isLabelPositionLeft = labelPosition === 'left';\n const isLabelPositionTop = labelPosition === 'top';\n const isLabelPositionVisuallyTop = hasLabel && (isLabelPositionTop || isMobile);\n\n const { locale } = useDatesContext();\n\n if (selectionType == 'single') {\n const dateValue = getFormattedDate({\n date,\n format,\n labelSeparator: '-',\n locale,\n type: 'default',\n });\n return (\n <BaseBox width=\"100%\">\n <HiddenInput\n value={dateValue}\n name={name}\n isRequired={props.isRequired}\n isDisabled={props.isDisabled}\n />\n <DateInput\n ref={ref as never}\n id=\"start-date\"\n labelPosition={labelPosition}\n label={label}\n placeholder={placeholder || format}\n popupId={referenceProps['aria-controls']}\n isPopupExpanded={referenceProps['aria-expanded']}\n size={size}\n autoFocus={autoFocus}\n value={dateValue}\n componentName=\"DatePickerInput\"\n necessityIndicator={necessityIndicator}\n successText={successText}\n errorText={errorText}\n helpText={helpText}\n labelSuffix={labelSuffix}\n labelTrailing={labelTrailing}\n {...props}\n {...referenceProps}\n />\n </BaseBox>\n );\n }\n\n if (selectionType == 'range') {\n const shouldRenderEndLabel = (): string | undefined => {\n let finalLabel: string | undefined = '';\n\n const labelEnd = isLabelPositionLeft ? undefined : label?.end;\n if (isLabelPositionVisuallyTop && labelEnd === undefined) {\n // Empty space, nbsp;\n finalLabel = '\\u00A0';\n } else if (isLabelPositionLeft) {\n finalLabel = undefined;\n } else {\n finalLabel = label?.end;\n }\n return finalLabel;\n };\n\n const startValue = getFormattedDate({\n type: 'default',\n date: date[0],\n format,\n labelSeparator: '-',\n locale,\n });\n const endValue = getFormattedDate({\n type: 'default',\n date: date[1],\n format,\n labelSeparator: '-',\n locale,\n });\n return (\n <BaseBox\n width=\"100%\"\n display=\"flex\"\n flexDirection=\"row\"\n gap=\"spacing.4\"\n alignItems=\"flex-start\"\n ref={ref as never}\n >\n <BaseBox flex={1} flexBasis={isLabelPositionLeft ? LEFT_LABEL_WIDTH : '0px'}>\n <HiddenInput\n value={startValue}\n name={name?.start}\n isRequired={props.isRequired}\n isDisabled={props.isDisabled}\n />\n <DateInput\n setInputWrapperRef={(node) => ((inputRef as any)!.current = node)}\n id=\"start-date\"\n leadingIcon={CalendarIcon}\n label={label?.start}\n labelPosition={labelPosition}\n placeholder={placeholder}\n popupId={referenceProps['aria-controls']}\n isPopupExpanded={referenceProps['aria-expanded']}\n size={size}\n autoFocus={autoFocus}\n value={startValue}\n componentName=\"DatePickerInputStart\"\n necessityIndicator={necessityIndicator}\n successText={successText?.start}\n errorText={errorText?.start}\n helpText={helpText?.start}\n labelSuffix={labelSuffix}\n {...props}\n {...referenceProps}\n />\n </BaseBox>\n <BaseBox flexShrink={0} alignSelf=\"start\">\n <ArrowRightIcon\n size=\"medium\"\n marginTop={\n // Hacky layouting because the we cannot put this inside the internal layout of BaseInput.\n hasLabel && (!isLabelPositionLeft || isMobile)\n ? `calc(${makeSize(iconVerticalMargin[size])} + ${makeSize(\n isLarge ? sizeTokens[20] : sizeTokens[15],\n )})`\n : makeSize(iconVerticalMargin[size])\n }\n />\n </BaseBox>\n <BaseBox flex={1}>\n <HiddenInput\n value={endValue}\n name={name?.end}\n isRequired={props.isRequired}\n isDisabled={props.isDisabled}\n {...makeAnalyticsAttribute(props)}\n />\n <DateInput\n id=\"end-date\"\n placeholder={placeholder}\n leadingIcon={CalendarIcon}\n label={shouldRenderEndLabel()}\n labelPosition={isLabelPositionLeft ? undefined : labelPosition}\n popupId={referenceProps['aria-controls']}\n isPopupExpanded={referenceProps['aria-expanded']}\n size={size}\n value={endValue}\n componentName=\"DatePickerInputEnd\"\n successText={successText?.end}\n errorText={errorText?.end}\n helpText={helpText?.end}\n labelTrailing={labelTrailing}\n {...props}\n {...referenceProps}\n />\n </BaseBox>\n </BaseBox>\n );\n }\n\n return <></>;\n};\n\nconst DatePickerInput = React.forwardRef(_DatePickerInput);\nexport { DatePickerInput };\n"],"names":["_DateInput","props","ref","_props$label","_jsx","BaseInput","_objectSpread","as","textAlign","hideLabelText","label","length","autoCompleteSuggestionType","hasPopup","onClick","e","_props$onClick","isDisabled","call","onKeyDown","_ref","_props$onKeyDown","event","DateInput","React","forwardRef","HiddenInput","_ref2","value","name","isRequired","rest","_objectWithoutProperties","_excluded","isReactNative","_Fragment","hidden","required","disabled","readOnly","makeAnalyticsAttribute","iconVerticalMargin","medium","sizeTokens","large","LEFT_LABEL_WIDTH","_DatePickerInput","_ref3","selectionType","referenceProps","inputRef","date","labelPosition","labelSuffix","labelTrailing","autoFocus","_ref3$size","size","necessityIndicator","successText","errorText","helpText","format","placeholder","_excluded2","isMobile","useIsMobile","isLarge","hasLabel","Boolean","start","end","isLabelPositionLeft","isLabelPositionTop","isLabelPositionVisuallyTop","_useDatesContext","useDatesContext","locale","dateValue","getFormattedDate","labelSeparator","type","_jsxs","BaseBox","width","children","id","popupId","isPopupExpanded","componentName","shouldRenderEndLabel","finalLabel","labelEnd","undefined","startValue","endValue","display","flexDirection","gap","alignItems","flex","flexBasis","setInputWrapperRef","node","current","leadingIcon","CalendarIcon","flexShrink","alignSelf","ArrowRightIcon","marginTop","concat","makeSize","DatePickerInput"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DateInput.web.js","sources":["../../../../../../src/components/DatePicker/DateInput.web.tsx"],"sourcesContent":["/* eslint-disable jsx-a11y/no-autofocus */\n/* eslint-disable @typescript-eslint/no-unnecessary-type-assertion */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from 'react';\nimport { useDatesContext } from '@mantine/dates';\nimport type { DatePickerInputProps, DateInputProps } from './types';\nimport {\n getFormattedDate,\n rangeFormattedValue,\n rangeInputPlaceHolder,\n finalInputFormat,\n getTextInputFormat,\n validateAndParseDateInput,\n stripDelimiters,\n} from './utils';\nimport { usePresetContext } from './QuickSelection/PresetContext';\nimport BaseBox from '~components/Box/BaseBox';\nimport { TextInput } from '~components/Input/TextInput';\nimport { isReactNative } from '~utils';\nimport type { BladeElementRef, DataAnalyticsAttribute } from '~utils/types';\nimport { CalendarIcon } from '~components/Icons';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\n/**\n * CRITICAL BEHAVIOR CASES - Verify when making changes:\n *\n * 1. VALUE PROP: Already formatted by getFormattedDate() - avoid double formatting\n * 2. USER TYPING: Should format input AND sync with calendar selection\n * 3. CALENDAR SELECTION: Should apply formatted value to input without re-formatting\n * 4. SUBMIT (no footer): Blur/Enter should select current value\n */\nconst _DateInput = (\n props: DateInputProps,\n ref: React.ForwardedRef<BladeElementRef>,\n): React.ReactElement => {\n const { format, date, setControlledValue, leadingDropdown, tags, id, ...textInputProps } = props;\n const [inputValue, setInputValue] = React.useState(['']);\n const [validationError, setValidationError] = React.useState<string | undefined>(undefined);\n\n const presetContext = usePresetContext();\n\n // Determine selection type: prefer preset context calculation over props\n // This handles \"Today\" presets that should display as single even though data is range\n const isRange =\n presetContext?.effectiveSelectionType === 'single'\n ? false\n : presetContext?.effectiveSelectionType === 'range' || props.selectionType === 'range';\n\n // Sync internal input state with external formatted values from parent component\n // textInputProps.value comes from DatePickerInput as formatted strings: [\"25/12/2024\", \"31/12/2024\"]\n // We strip delimiters for internal processing: [\"25122024\", \"31122024\"]\n // This prevents double formatting and helps to validate the input easier during user typing\n React.useEffect(() => {\n if (textInputProps.value) {\n setInputValue(\n isRange\n ? [stripDelimiters(textInputProps.value[0]), stripDelimiters(textInputProps.value[1])]\n : [stripDelimiters(textInputProps.value[0])],\n );\n }\n }, [textInputProps.value, isRange, format]);\n\n // Clear validation error only when the actual selected date changes\n // (e.g., user selected a valid date from the calendar). This avoids\n // clearing errors during typing/blur unless the value truly updated.\n React.useEffect(() => {\n setValidationError(undefined);\n }, [date]);\n\n const applyDateValue = React.useCallback(\n (inputValue: string, shouldClearWhenEmpty = false): void => {\n if (inputValue?.trim()) {\n // Validate input and get parsed dates in one atomic operation (includes all constraints)\n const validation = validateAndParseDateInput(inputValue, isRange, format, {\n excludeDate: props.excludeDate,\n minDate: props.minDate,\n maxDate: props.maxDate,\n });\n if (validation.shouldBlock) {\n return; // Block invalid input to prevent data corruption\n }\n\n // Apply the pre-parsed date values to controlled state (no redundant parsing)\n if (validation.parsedValue !== undefined) {\n let finalValue = validation.parsedValue;\n\n // Special handling: if preset context shows single but props expect range\n // (like \"Today\" preset), convert single date back to same-day range\n if (\n presetContext?.effectiveSelectionType === 'single' &&\n props.selectionType === 'range' &&\n validation.parsedValue instanceof Date\n ) {\n finalValue = [validation.parsedValue, validation.parsedValue] as [Date, Date];\n }\n\n setControlledValue?.(finalValue);\n }\n } else if (shouldClearWhenEmpty) {\n // Clear controlled value when input is emptied (onChange only, not onBlur)\n setControlledValue?.(isRange ? ([null, null] as [Date | null, Date | null]) : null);\n }\n },\n [\n isRange,\n setControlledValue,\n presetContext?.effectiveSelectionType,\n props.selectionType,\n format,\n props.excludeDate,\n props.minDate,\n props.maxDate,\n ],\n );\n\n const handleInputChange = ({ value }: { value?: string }): void => {\n setValidationError(undefined);\n // Apply changes immediately during typing (with empty clearing enabled)\n applyDateValue(value ?? '', true);\n };\n\n const handleBlur = React.useCallback(\n (params: { name?: string; value?: string; event?: React.FocusEvent<HTMLInputElement> }) => {\n const currentInputValue = params.event?.target.value ?? params.value ?? '';\n setValidationError(undefined);\n\n if (currentInputValue?.trim()) {\n // Validate complete input and show errors to user on blur (includes all constraints)\n const validation = validateAndParseDateInput(currentInputValue, isRange, format, {\n excludeDate: props.excludeDate,\n minDate: props.minDate,\n maxDate: props.maxDate,\n });\n\n if (validation.shouldBlock && validation.error) {\n setValidationError(validation.error);\n return; // Don't apply invalid values\n }\n }\n\n // Apply final value on blur (without empty clearing to preserve existing dates)\n applyDateValue(currentInputValue, false);\n },\n [applyDateValue, isRange],\n );\n\n return (\n <TextInput\n {...textInputProps}\n ref={ref}\n type=\"number\"\n value={isRange ? rangeFormattedValue(inputValue[0], inputValue[1]) : inputValue[0]}\n leadingIcon={CalendarIcon}\n leading={leadingDropdown}\n format={\n isRange\n ? getTextInputFormat(finalInputFormat(inputValue[0], inputValue[1], format), true)\n : getTextInputFormat(format, false)\n }\n validationState={validationError ? 'error' : textInputProps.validationState}\n errorText={textInputProps.errorText ?? validationError}\n onChange={handleInputChange}\n onBlur={handleBlur}\n onClick={(e) => {\n if (textInputProps.isDisabled) {\n return;\n }\n textInputProps.onClick?.(e);\n }}\n onKeyDown={({ event }) => {\n // @ts-expect-error\n textInputProps.onKeyDown?.(event);\n }}\n />\n );\n};\n\nconst DateInput = React.forwardRef(_DateInput);\n\nconst HiddenInput = ({\n value,\n name,\n isRequired,\n isDisabled,\n ...rest\n}: {\n value: string;\n name?: string;\n isRequired?: boolean;\n isDisabled?: boolean;\n} & DataAnalyticsAttribute): React.ReactElement => {\n if (isReactNative()) return <></>;\n\n return (\n <input\n hidden={true}\n name={name}\n value={value}\n required={isRequired}\n disabled={isDisabled}\n readOnly\n {...makeAnalyticsAttribute(rest)}\n />\n );\n};\n\nconst _DatePickerInput = (\n {\n selectionType,\n referenceProps,\n inputRef,\n date,\n label,\n labelPosition,\n labelSuffix,\n labelTrailing,\n autoFocus,\n name,\n size = 'medium',\n necessityIndicator,\n successText,\n errorText,\n helpText,\n format,\n placeholder,\n setControlledValue,\n leadingDropdown,\n selectedPreset,\n excludeDate,\n minDate,\n maxDate,\n ...props\n }: DatePickerInputProps,\n ref: React.ForwardedRef<any>,\n): React.ReactElement => {\n const { locale } = useDatesContext();\n\n if (selectionType == 'single') {\n const dateValue = getFormattedDate({\n date,\n format,\n labelSeparator: '-',\n locale,\n type: 'default',\n });\n return (\n <BaseBox width=\"100%\">\n <HiddenInput\n value={dateValue}\n name={name}\n isRequired={props.isRequired}\n isDisabled={props.isDisabled}\n />\n <DateInput\n ref={ref as never}\n id=\"start-date\"\n labelPosition={labelPosition}\n label={label}\n placeholder={placeholder || format}\n popupId={referenceProps['aria-controls']}\n isPopupExpanded={referenceProps['aria-expanded']}\n size={size}\n autoFocus={autoFocus}\n value={[dateValue]}\n componentName=\"DatePickerInput\"\n necessityIndicator={necessityIndicator}\n successText={successText}\n errorText={errorText}\n helpText={helpText}\n labelSuffix={labelSuffix}\n labelTrailing={labelTrailing}\n leadingDropdown={leadingDropdown}\n date={date as Date | null}\n setControlledValue={setControlledValue}\n format={format}\n selectionType={selectionType}\n excludeDate={excludeDate}\n minDate={minDate}\n maxDate={maxDate}\n {...props}\n {...referenceProps}\n />\n </BaseBox>\n );\n }\n\n if (selectionType == 'range') {\n const startValue = getFormattedDate({\n type: 'default',\n date: date[0],\n format,\n labelSeparator: '-',\n locale,\n });\n const endValue = getFormattedDate({\n type: 'default',\n date: date[1],\n format,\n labelSeparator: '-',\n locale,\n });\n\n return (\n <BaseBox width=\"100%\">\n <HiddenInput\n value={`${startValue}`}\n name={name?.start}\n isRequired={props.isRequired}\n isDisabled={props.isDisabled}\n />\n\n <HiddenInput\n value={endValue}\n name={name?.end}\n isRequired={props.isRequired}\n isDisabled={props.isDisabled}\n {...makeAnalyticsAttribute(props)}\n />\n\n <DateInput\n ref={ref as never}\n id=\"range-date\"\n labelPosition={labelPosition}\n label={typeof label === 'object' ? label?.start : label}\n placeholder={rangeInputPlaceHolder(placeholder, format)}\n popupId={referenceProps['aria-controls']}\n isPopupExpanded={referenceProps['aria-expanded']}\n size={size}\n autoFocus={autoFocus}\n value={[startValue, endValue]}\n componentName=\"DatePickerInputRange\"\n necessityIndicator={necessityIndicator}\n successText={\n typeof successText === 'object'\n ? (successText as { start: string })?.start\n : successText\n }\n errorText={\n typeof errorText === 'object' ? (errorText as { start: string })?.start : errorText\n }\n helpText={\n typeof helpText === 'object' ? (helpText as { start: string })?.start : helpText\n }\n labelSuffix={labelSuffix}\n labelTrailing={labelTrailing}\n format={format}\n leadingDropdown={leadingDropdown}\n date={date as [Date | null, Date | null]}\n setControlledValue={setControlledValue}\n selectionType={selectionType}\n excludeDate={excludeDate}\n minDate={minDate}\n maxDate={maxDate}\n {...props}\n {...referenceProps}\n />\n </BaseBox>\n );\n }\n\n return <></>;\n};\n\nconst DatePickerInput = React.forwardRef(_DatePickerInput);\nexport { DatePickerInput };\n"],"names":["_DateInput","props","ref","_textInputProps$error","format","date","setControlledValue","leadingDropdown","tags","id","textInputProps","_objectWithoutProperties","_excluded","_React$useState","React","useState","_React$useState2","_slicedToArray","inputValue","setInputValue","_React$useState3","undefined","_React$useState4","validationError","setValidationError","presetContext","usePresetContext","isRange","effectiveSelectionType","selectionType","useEffect","value","stripDelimiters","applyDateValue","useCallback","shouldClearWhenEmpty","arguments","length","trim","validation","validateAndParseDateInput","excludeDate","minDate","maxDate","shouldBlock","parsedValue","finalValue","Date","handleInputChange","_ref","handleBlur","params","_ref2","_params$event$target$","_params$event","currentInputValue","event","target","error","_jsx","TextInput","_objectSpread","type","rangeFormattedValue","leadingIcon","CalendarIcon","leading","getTextInputFormat","finalInputFormat","validationState","errorText","onChange","onBlur","onClick","e","_textInputProps$onCli","isDisabled","call","onKeyDown","_ref3","_textInputProps$onKey","DateInput","forwardRef","HiddenInput","_ref4","name","isRequired","rest","_excluded2","isReactNative","_Fragment","hidden","required","disabled","readOnly","makeAnalyticsAttribute","_DatePickerInput","_ref5","referenceProps","inputRef","label","labelPosition","labelSuffix","labelTrailing","autoFocus","_ref5$size","size","necessityIndicator","successText","helpText","placeholder","selectedPreset","_excluded3","_useDatesContext","useDatesContext","locale","dateValue","getFormattedDate","labelSeparator","_jsxs","BaseBox","width","children","popupId","isPopupExpanded","componentName","startValue","endValue","concat","start","end","_typeof","rangeInputPlaceHolder","DatePickerInput"],"mappings":"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"}
|