@razorpay/blade 12.19.0 → 12.20.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/ActionList/ActionListItem.js +1 -1
- package/build/lib/native/components/ActionList/ActionListItem.js.map +1 -1
- package/build/lib/native/components/DatePicker/FilterChipDatePicker/FilterChipDatePicker.native.js +7 -0
- package/build/lib/native/components/DatePicker/FilterChipDatePicker/FilterChipDatePicker.native.js.map +1 -0
- package/build/lib/native/components/Dropdown/Dropdown.js +1 -1
- package/build/lib/native/components/Dropdown/Dropdown.js.map +1 -1
- package/build/lib/native/components/Dropdown/FilterChipGroup.native.js +7 -0
- package/build/lib/native/components/Dropdown/FilterChipGroup.native.js.map +1 -0
- package/build/lib/native/components/Dropdown/FilterChipSelectInput.native.js +7 -0
- package/build/lib/native/components/Dropdown/FilterChipSelectInput.native.js.map +1 -0
- package/build/lib/native/components/Dropdown/dropdownComponentIds.js +1 -1
- package/build/lib/native/components/Dropdown/dropdownComponentIds.js.map +1 -1
- package/build/lib/native/components/Dropdown/useDropdown.js +1 -1
- package/build/lib/native/components/Dropdown/useDropdown.js.map +1 -1
- package/build/lib/native/components/ListView/ListView.native.js +12 -0
- package/build/lib/native/components/ListView/ListView.native.js.map +1 -0
- package/build/lib/native/components/ListView/ListViewFilters.native.js +12 -0
- package/build/lib/native/components/ListView/ListViewFilters.native.js.map +1 -0
- package/build/lib/native/components/index.js +5 -0
- package/build/lib/native/components/index.js.map +1 -1
- package/build/lib/native/utils/metaAttribute/metaConstants.js +1 -1
- package/build/lib/native/utils/metaAttribute/metaConstants.js.map +1 -1
- package/build/lib/web/development/components/ActionList/ActionListItem.js +32 -17
- package/build/lib/web/development/components/ActionList/ActionListItem.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/BaseDatePicker.web.js +516 -0
- package/build/lib/web/development/components/DatePicker/BaseDatePicker.web.js.map +1 -0
- package/build/lib/web/development/components/DatePicker/DatePicker.web.js +7 -421
- package/build/lib/web/development/components/DatePicker/DatePicker.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/FilterChipDatePicker/DatePickerFilterChip.web.js +67 -0
- package/build/lib/web/development/components/DatePicker/FilterChipDatePicker/DatePickerFilterChip.web.js.map +1 -0
- package/build/lib/web/development/components/DatePicker/FilterChipDatePicker/FilterChipDatePicker.web.js +14 -0
- package/build/lib/web/development/components/DatePicker/FilterChipDatePicker/FilterChipDatePicker.web.js.map +1 -0
- package/build/lib/web/development/components/DatePicker/FilterChipDatePicker/index.js +2 -0
- package/build/lib/web/development/components/DatePicker/FilterChipDatePicker/index.js.map +1 -0
- package/build/lib/web/development/components/DatePicker/index.js +1 -0
- package/build/lib/web/development/components/DatePicker/index.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/useDatesState.js +7 -1
- package/build/lib/web/development/components/DatePicker/useDatesState.js.map +1 -1
- package/build/lib/web/development/components/Dropdown/Dropdown.js +21 -12
- package/build/lib/web/development/components/Dropdown/Dropdown.js.map +1 -1
- package/build/lib/web/development/components/Dropdown/FilterChipGroup.web.js +74 -0
- package/build/lib/web/development/components/Dropdown/FilterChipGroup.web.js.map +1 -0
- package/build/lib/web/development/components/Dropdown/FilterChipGroupContext.web.js +18 -0
- package/build/lib/web/development/components/Dropdown/FilterChipGroupContext.web.js.map +1 -0
- package/build/lib/web/development/components/Dropdown/FilterChipSelectInput.web.js +217 -0
- package/build/lib/web/development/components/Dropdown/FilterChipSelectInput.web.js.map +1 -0
- package/build/lib/web/development/components/Dropdown/dropdownComponentIds.js +2 -1
- package/build/lib/web/development/components/Dropdown/dropdownComponentIds.js.map +1 -1
- package/build/lib/web/development/components/Dropdown/index.js +2 -0
- package/build/lib/web/development/components/Dropdown/index.js.map +1 -1
- package/build/lib/web/development/components/Dropdown/useDropdown.js +2 -0
- package/build/lib/web/development/components/Dropdown/useDropdown.js.map +1 -1
- package/build/lib/web/development/components/FilterChip/BaseFilterChip.web.js +218 -0
- package/build/lib/web/development/components/FilterChip/BaseFilterChip.web.js.map +1 -0
- package/build/lib/web/development/components/FilterChip/tokens.js +9 -0
- package/build/lib/web/development/components/FilterChip/tokens.js.map +1 -0
- package/build/lib/web/development/components/ListView/ListView.web.js +28 -0
- package/build/lib/web/development/components/ListView/ListView.web.js.map +1 -0
- package/build/lib/web/development/components/ListView/ListViewFilters.web.js +240 -0
- package/build/lib/web/development/components/ListView/ListViewFilters.web.js.map +1 -0
- package/build/lib/web/development/components/ListView/ListViewFiltersContext.web.js +16 -0
- package/build/lib/web/development/components/ListView/ListViewFiltersContext.web.js.map +1 -0
- package/build/lib/web/development/components/ListView/index.js +3 -0
- package/build/lib/web/development/components/ListView/index.js.map +1 -0
- package/build/lib/web/development/components/index.js +6 -0
- package/build/lib/web/development/components/index.js.map +1 -1
- package/build/lib/web/development/utils/metaAttribute/metaConstants.js +4 -0
- package/build/lib/web/development/utils/metaAttribute/metaConstants.js.map +1 -1
- package/build/lib/web/production/components/ActionList/ActionListItem.js +32 -17
- package/build/lib/web/production/components/ActionList/ActionListItem.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/BaseDatePicker.web.js +516 -0
- package/build/lib/web/production/components/DatePicker/BaseDatePicker.web.js.map +1 -0
- package/build/lib/web/production/components/DatePicker/DatePicker.web.js +7 -421
- package/build/lib/web/production/components/DatePicker/DatePicker.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/FilterChipDatePicker/DatePickerFilterChip.web.js +67 -0
- package/build/lib/web/production/components/DatePicker/FilterChipDatePicker/DatePickerFilterChip.web.js.map +1 -0
- package/build/lib/web/production/components/DatePicker/FilterChipDatePicker/FilterChipDatePicker.web.js +14 -0
- package/build/lib/web/production/components/DatePicker/FilterChipDatePicker/FilterChipDatePicker.web.js.map +1 -0
- package/build/lib/web/production/components/DatePicker/FilterChipDatePicker/index.js +2 -0
- package/build/lib/web/production/components/DatePicker/FilterChipDatePicker/index.js.map +1 -0
- package/build/lib/web/production/components/DatePicker/index.js +1 -0
- package/build/lib/web/production/components/DatePicker/index.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/useDatesState.js +7 -1
- package/build/lib/web/production/components/DatePicker/useDatesState.js.map +1 -1
- package/build/lib/web/production/components/Dropdown/Dropdown.js +21 -12
- package/build/lib/web/production/components/Dropdown/Dropdown.js.map +1 -1
- package/build/lib/web/production/components/Dropdown/FilterChipGroup.web.js +74 -0
- package/build/lib/web/production/components/Dropdown/FilterChipGroup.web.js.map +1 -0
- package/build/lib/web/production/components/Dropdown/FilterChipGroupContext.web.js +18 -0
- package/build/lib/web/production/components/Dropdown/FilterChipGroupContext.web.js.map +1 -0
- package/build/lib/web/production/components/Dropdown/FilterChipSelectInput.web.js +217 -0
- package/build/lib/web/production/components/Dropdown/FilterChipSelectInput.web.js.map +1 -0
- package/build/lib/web/production/components/Dropdown/dropdownComponentIds.js +2 -1
- package/build/lib/web/production/components/Dropdown/dropdownComponentIds.js.map +1 -1
- package/build/lib/web/production/components/Dropdown/index.js +2 -0
- package/build/lib/web/production/components/Dropdown/index.js.map +1 -1
- package/build/lib/web/production/components/Dropdown/useDropdown.js +2 -0
- package/build/lib/web/production/components/Dropdown/useDropdown.js.map +1 -1
- package/build/lib/web/production/components/FilterChip/BaseFilterChip.web.js +218 -0
- package/build/lib/web/production/components/FilterChip/BaseFilterChip.web.js.map +1 -0
- package/build/lib/web/production/components/FilterChip/tokens.js +9 -0
- package/build/lib/web/production/components/FilterChip/tokens.js.map +1 -0
- package/build/lib/web/production/components/ListView/ListView.web.js +28 -0
- package/build/lib/web/production/components/ListView/ListView.web.js.map +1 -0
- package/build/lib/web/production/components/ListView/ListViewFilters.web.js +240 -0
- package/build/lib/web/production/components/ListView/ListViewFilters.web.js.map +1 -0
- package/build/lib/web/production/components/ListView/ListViewFiltersContext.web.js +16 -0
- package/build/lib/web/production/components/ListView/ListViewFiltersContext.web.js.map +1 -0
- package/build/lib/web/production/components/ListView/index.js +3 -0
- package/build/lib/web/production/components/ListView/index.js.map +1 -0
- package/build/lib/web/production/components/index.js +6 -0
- package/build/lib/web/production/components/index.js.map +1 -1
- package/build/lib/web/production/utils/metaAttribute/metaConstants.js +4 -0
- package/build/lib/web/production/utils/metaAttribute/metaConstants.js.map +1 -1
- package/build/types/components/index.d.ts +143 -589
- package/build/types/components/index.native.d.ts +82 -1
- package/package.json +1 -1
|
@@ -0,0 +1,516 @@
|
|
|
1
|
+
import _typeof from '@babel/runtime/helpers/typeof';
|
|
2
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
3
|
+
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
|
4
|
+
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
5
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
6
|
+
import { DatesProvider } from '@mantine/dates';
|
|
7
|
+
import React__default from 'react';
|
|
8
|
+
import { FloatingPortal, FloatingFocusManager } from '@floating-ui/react';
|
|
9
|
+
import { useI18nContext } from '@razorpay/i18nify-react';
|
|
10
|
+
import { MantineProvider } from '@mantine/core';
|
|
11
|
+
import dayjs from 'dayjs';
|
|
12
|
+
import { Calendar } from './Calendar.web.js';
|
|
13
|
+
import { PresetSideBar } from './QuickSelection/PresetSideBar.web.js';
|
|
14
|
+
import { useDatesState } from './useDatesState.js';
|
|
15
|
+
import { usePopup } from './usePopup.js';
|
|
16
|
+
import { CalendarFooter } from './CalendarFooter.web.js';
|
|
17
|
+
import { convertIntlToDayjsLocale, loadScript } from './utils.js';
|
|
18
|
+
import { shiftTimezone } from './shiftTimezone.js';
|
|
19
|
+
import { DatePickerInput } from './DateInput.web.js';
|
|
20
|
+
import { DatePickerFilterChip } from './FilterChipDatePicker/DatePickerFilterChip.web.js';
|
|
21
|
+
import '../Box/BaseBox/index.js';
|
|
22
|
+
import { useControllableState } from '../../utils/useControllable.js';
|
|
23
|
+
import '../../utils/index.js';
|
|
24
|
+
import { useId } from '../../utils/useId.js';
|
|
25
|
+
import '../../utils/makeAccessible/index.js';
|
|
26
|
+
import { useIsMobile } from '../../utils/useIsMobile.js';
|
|
27
|
+
import '../BottomSheet/index.js';
|
|
28
|
+
import '../../utils/logger/index.js';
|
|
29
|
+
import '../Box/styledProps/index.js';
|
|
30
|
+
import '../../utils/metaAttribute/index.js';
|
|
31
|
+
import { componentZIndices } from '../../utils/componentZIndices.js';
|
|
32
|
+
import '../../utils/makeAnalyticsAttribute/index.js';
|
|
33
|
+
import '../../utils/fireNativeEvent/index.js';
|
|
34
|
+
import { useListViewFilterContext } from '../ListView/ListViewFiltersContext.web.js';
|
|
35
|
+
import { useFilterChipGroupContext } from '../Dropdown/FilterChipGroupContext.web.js';
|
|
36
|
+
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
37
|
+
import useTheme from '../BladeProvider/useTheme.js';
|
|
38
|
+
import { fireNativeEvent } from '../../utils/fireNativeEvent/fireNativeEvent.web.js';
|
|
39
|
+
import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
|
|
40
|
+
import { logger } from '../../utils/logger/logger.js';
|
|
41
|
+
import { getStyledProps } from '../Box/styledProps/getStyledProps.js';
|
|
42
|
+
import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
|
|
43
|
+
import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
|
|
44
|
+
import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
|
|
45
|
+
import { BottomSheet } from '../BottomSheet/BottomSheet.web.js';
|
|
46
|
+
import { BottomSheetHeader } from '../BottomSheet/BottomSheetHeader.web.js';
|
|
47
|
+
import { BottomSheetBody } from '../BottomSheet/BottomSheetBody.web.js';
|
|
48
|
+
import { BottomSheetFooter } from '../BottomSheet/BottomSheetFooter.web.js';
|
|
49
|
+
import { makeAccessible } from '../../utils/makeAccessible/makeAccessible.web.js';
|
|
50
|
+
|
|
51
|
+
var _excluded = ["selectionType", "allowSingleDateInRange", "value", "defaultValue", "onChange", "onApply", "presets", "isOpen", "defaultIsOpen", "onOpenChange", "label", "labelPosition", "accessibilityLabel", "errorText", "helpText", "isDisabled", "isRequired", "successText", "validationState", "size", "autoFocus", "necessityIndicator", "name", "defaultPicker", "picker", "onPickerChange", "zIndex", "format", "inputPlaceHolder", "inputElementType", "onClearButtonClick"];
|
|
52
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
53
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
54
|
+
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; }
|
|
55
|
+
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; }
|
|
56
|
+
var BaseDatePicker = function BaseDatePicker(_ref) {
|
|
57
|
+
var selectionType = _ref.selectionType,
|
|
58
|
+
allowSingleDateInRange = _ref.allowSingleDateInRange,
|
|
59
|
+
value = _ref.value,
|
|
60
|
+
defaultValue = _ref.defaultValue,
|
|
61
|
+
_onChange = _ref.onChange,
|
|
62
|
+
onApply = _ref.onApply,
|
|
63
|
+
presets = _ref.presets,
|
|
64
|
+
isOpen = _ref.isOpen,
|
|
65
|
+
defaultIsOpen = _ref.defaultIsOpen,
|
|
66
|
+
onOpenChange = _ref.onOpenChange,
|
|
67
|
+
label = _ref.label,
|
|
68
|
+
_ref$labelPosition = _ref.labelPosition,
|
|
69
|
+
labelPosition = _ref$labelPosition === void 0 ? 'top' : _ref$labelPosition,
|
|
70
|
+
accessibilityLabel = _ref.accessibilityLabel,
|
|
71
|
+
errorText = _ref.errorText,
|
|
72
|
+
helpText = _ref.helpText,
|
|
73
|
+
isDisabled = _ref.isDisabled,
|
|
74
|
+
isRequired = _ref.isRequired,
|
|
75
|
+
successText = _ref.successText,
|
|
76
|
+
validationState = _ref.validationState,
|
|
77
|
+
size = _ref.size,
|
|
78
|
+
autoFocus = _ref.autoFocus,
|
|
79
|
+
necessityIndicator = _ref.necessityIndicator,
|
|
80
|
+
name = _ref.name,
|
|
81
|
+
_ref$defaultPicker = _ref.defaultPicker,
|
|
82
|
+
defaultPicker = _ref$defaultPicker === void 0 ? 'day' : _ref$defaultPicker,
|
|
83
|
+
picker = _ref.picker,
|
|
84
|
+
onPickerChange = _ref.onPickerChange,
|
|
85
|
+
_ref$zIndex = _ref.zIndex,
|
|
86
|
+
zIndex = _ref$zIndex === void 0 ? componentZIndices.popover : _ref$zIndex,
|
|
87
|
+
_ref$format = _ref.format,
|
|
88
|
+
format = _ref$format === void 0 ? 'DD/MM/YYYY' : _ref$format,
|
|
89
|
+
inputPlaceHolder = _ref.inputPlaceHolder,
|
|
90
|
+
_ref$inputElementType = _ref.inputElementType,
|
|
91
|
+
inputElementType = _ref$inputElementType === void 0 ? 'datePickerInput' : _ref$inputElementType,
|
|
92
|
+
onClearButtonClick = _ref.onClearButtonClick,
|
|
93
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
94
|
+
var _useI18nContext = useI18nContext(),
|
|
95
|
+
i18nState = _useI18nContext.i18nState;
|
|
96
|
+
var _selectionType = selectionType !== null && selectionType !== void 0 ? selectionType : 'single';
|
|
97
|
+
var _useTheme = useTheme(),
|
|
98
|
+
theme = _useTheme.theme;
|
|
99
|
+
var isSingle = _selectionType === 'single';
|
|
100
|
+
var _React$useReducer = React__default.useReducer(function (x) {
|
|
101
|
+
return x + 1;
|
|
102
|
+
}, 0),
|
|
103
|
+
_React$useReducer2 = _slicedToArray(_React$useReducer, 2),
|
|
104
|
+
_ = _React$useReducer2[0],
|
|
105
|
+
forceRerender = _React$useReducer2[1];
|
|
106
|
+
var _React$useState = React__default.useState(null),
|
|
107
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
108
|
+
selectedPreset = _React$useState2[0],
|
|
109
|
+
setSelectedPreset = _React$useState2[1];
|
|
110
|
+
var referenceRef = React__default.useRef(null);
|
|
111
|
+
var _useControllableState = useControllableState({
|
|
112
|
+
defaultValue: defaultPicker,
|
|
113
|
+
value: picker,
|
|
114
|
+
onChange: function onChange(picker) {
|
|
115
|
+
onPickerChange === null || onPickerChange === void 0 ? void 0 : onPickerChange(picker);
|
|
116
|
+
}
|
|
117
|
+
}),
|
|
118
|
+
_useControllableState2 = _slicedToArray(_useControllableState, 2),
|
|
119
|
+
_picker = _useControllableState2[0],
|
|
120
|
+
setPicker = _useControllableState2[1];
|
|
121
|
+
var finalFormat = React__default.useMemo(function () {
|
|
122
|
+
if (format) {
|
|
123
|
+
return format;
|
|
124
|
+
}
|
|
125
|
+
if (picker === 'month') {
|
|
126
|
+
return 'MMMM';
|
|
127
|
+
}
|
|
128
|
+
if (picker === 'year') {
|
|
129
|
+
return 'YYYY';
|
|
130
|
+
}
|
|
131
|
+
return 'DD/MM/YYYY';
|
|
132
|
+
}, [format, picker]);
|
|
133
|
+
var finalInputPlaceHolder = React__default.useMemo(function () {
|
|
134
|
+
if (inputPlaceHolder) {
|
|
135
|
+
return inputPlaceHolder;
|
|
136
|
+
}
|
|
137
|
+
if (picker === 'month') {
|
|
138
|
+
return 'Month';
|
|
139
|
+
}
|
|
140
|
+
if (picker === 'year') {
|
|
141
|
+
return 'Year';
|
|
142
|
+
}
|
|
143
|
+
return 'DD/MM/YYYY';
|
|
144
|
+
}, [inputPlaceHolder, picker]);
|
|
145
|
+
var _useDatesState = useDatesState({
|
|
146
|
+
level: _picker,
|
|
147
|
+
type: isSingle ? 'default' : 'range',
|
|
148
|
+
allowDeselect: false,
|
|
149
|
+
allowSingleDateInRange: allowSingleDateInRange,
|
|
150
|
+
value: value,
|
|
151
|
+
defaultValue: defaultValue,
|
|
152
|
+
onChange: function onChange(date) {
|
|
153
|
+
_onChange === null || _onChange === void 0 ? void 0 : _onChange(date);
|
|
154
|
+
fireNativeEvent(referenceRef, ['input']);
|
|
155
|
+
if (isSingle) return;
|
|
156
|
+
// sync selected preset with value
|
|
157
|
+
setSelectedPreset(date);
|
|
158
|
+
}
|
|
159
|
+
}),
|
|
160
|
+
onDateChange = _useDatesState.onDateChange,
|
|
161
|
+
onRootMouseLeave = _useDatesState.onRootMouseLeave,
|
|
162
|
+
onHoveredDateChange = _useDatesState.onHoveredDateChange,
|
|
163
|
+
getControlProps = _useDatesState.getControlProps,
|
|
164
|
+
setPickedDate = _useDatesState.setPickedDate,
|
|
165
|
+
controlledValue = _useDatesState.controlledValue,
|
|
166
|
+
setControlledValue = _useDatesState.setControlledValue,
|
|
167
|
+
handleReset = _useDatesState.handleReset;
|
|
168
|
+
var _React$useState3 = React__default.useState(controlledValue),
|
|
169
|
+
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
170
|
+
oldValue = _React$useState4[0],
|
|
171
|
+
setOldValue = _React$useState4[1];
|
|
172
|
+
var _useControllableState3 = useControllableState({
|
|
173
|
+
value: isOpen,
|
|
174
|
+
defaultValue: defaultIsOpen,
|
|
175
|
+
onChange: function onChange(isOpen) {
|
|
176
|
+
onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange({
|
|
177
|
+
isOpen: isOpen
|
|
178
|
+
});
|
|
179
|
+
// we need to update old value everytime datepicker is opened or closed
|
|
180
|
+
setOldValue(controlledValue);
|
|
181
|
+
}
|
|
182
|
+
}),
|
|
183
|
+
_useControllableState4 = _slicedToArray(_useControllableState3, 2),
|
|
184
|
+
controllableIsOpen = _useControllableState4[0],
|
|
185
|
+
controllableSetIsOpen = _useControllableState4[1];
|
|
186
|
+
var currentDate = shiftTimezone('add', new Date());
|
|
187
|
+
var hasBothDatesSelected = (controlledValue === null || controlledValue === void 0 ? void 0 : controlledValue[0]) && (controlledValue === null || controlledValue === void 0 ? void 0 : controlledValue[1]);
|
|
188
|
+
var _useListViewFilterCon = useListViewFilterContext(),
|
|
189
|
+
listViewSelectedFilters = _useListViewFilterCon.listViewSelectedFilters,
|
|
190
|
+
setListViewSelectedFilters = _useListViewFilterCon.setListViewSelectedFilters;
|
|
191
|
+
var _useFilterChipGroupCo = useFilterChipGroupContext(),
|
|
192
|
+
clearFilterCallbackTriggerer = _useFilterChipGroupCo.clearFilterCallbackTriggerer,
|
|
193
|
+
setFilterChipGroupSelectedFilters = _useFilterChipGroupCo.setFilterChipGroupSelectedFilters;
|
|
194
|
+
var applyButtonDisabled = !hasBothDatesSelected;
|
|
195
|
+
if (isSingle) {
|
|
196
|
+
applyButtonDisabled = !Boolean(controlledValue);
|
|
197
|
+
}
|
|
198
|
+
var close = React__default.useCallback(function () {
|
|
199
|
+
controllableSetIsOpen(function () {
|
|
200
|
+
return false;
|
|
201
|
+
});
|
|
202
|
+
}, [controllableSetIsOpen]);
|
|
203
|
+
var handleApply = function handleApply() {
|
|
204
|
+
var updateSelectedFilters = function updateSelectedFilters() {
|
|
205
|
+
setFilterChipGroupSelectedFilters(function (prev) {
|
|
206
|
+
return [].concat(_toConsumableArray(prev), [label]);
|
|
207
|
+
});
|
|
208
|
+
};
|
|
209
|
+
var storeSelectedFiltersAndValueInListViewContext = function storeSelectedFiltersAndValueInListViewContext() {
|
|
210
|
+
setListViewSelectedFilters(function (prev) {
|
|
211
|
+
if (isSingle) {
|
|
212
|
+
return _objectSpread(_objectSpread({}, prev), {}, _defineProperty({}, label, [controlledValue]));
|
|
213
|
+
}
|
|
214
|
+
return _objectSpread(_objectSpread({}, prev), {}, _defineProperty({}, label, controlledValue));
|
|
215
|
+
});
|
|
216
|
+
};
|
|
217
|
+
if (isSingle) {
|
|
218
|
+
_onChange === null || _onChange === void 0 ? void 0 : _onChange(controlledValue);
|
|
219
|
+
fireNativeEvent(referenceRef, ['change']);
|
|
220
|
+
setOldValue(controlledValue);
|
|
221
|
+
onApply === null || onApply === void 0 ? void 0 : onApply(controlledValue);
|
|
222
|
+
close();
|
|
223
|
+
storeSelectedFiltersAndValueInListViewContext();
|
|
224
|
+
updateSelectedFilters();
|
|
225
|
+
return;
|
|
226
|
+
}
|
|
227
|
+
// only apply if both dates are selected
|
|
228
|
+
if (hasBothDatesSelected) {
|
|
229
|
+
_onChange === null || _onChange === void 0 ? void 0 : _onChange(controlledValue);
|
|
230
|
+
fireNativeEvent(referenceRef, ['change']);
|
|
231
|
+
setOldValue(controlledValue);
|
|
232
|
+
onApply === null || onApply === void 0 ? void 0 : onApply(controlledValue);
|
|
233
|
+
close();
|
|
234
|
+
}
|
|
235
|
+
storeSelectedFiltersAndValueInListViewContext();
|
|
236
|
+
updateSelectedFilters();
|
|
237
|
+
};
|
|
238
|
+
var handleCancel = function handleCancel() {
|
|
239
|
+
setControlledValue(oldValue);
|
|
240
|
+
fireNativeEvent(referenceRef, ['change']);
|
|
241
|
+
setPickedDate(null);
|
|
242
|
+
close();
|
|
243
|
+
};
|
|
244
|
+
var handleClear = function handleClear() {
|
|
245
|
+
fireNativeEvent(referenceRef, ['change']);
|
|
246
|
+
handleReset();
|
|
247
|
+
close();
|
|
248
|
+
setFilterChipGroupSelectedFilters(function (prev) {
|
|
249
|
+
return prev.filter(function (filter) {
|
|
250
|
+
return filter !== label;
|
|
251
|
+
});
|
|
252
|
+
});
|
|
253
|
+
setListViewSelectedFilters(function (prev) {
|
|
254
|
+
var _ref2 = label,
|
|
255
|
+
_ = prev[_ref2],
|
|
256
|
+
rest = _objectWithoutProperties(prev, [_ref2].map(_toPropertyKey));
|
|
257
|
+
return rest;
|
|
258
|
+
});
|
|
259
|
+
onClearButtonClick === null || onClearButtonClick === void 0 ? void 0 : onClearButtonClick();
|
|
260
|
+
};
|
|
261
|
+
React__default.useEffect(function () {
|
|
262
|
+
if (listViewSelectedFilters[label]) {
|
|
263
|
+
setControlledValue(listViewSelectedFilters[label]);
|
|
264
|
+
}
|
|
265
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
266
|
+
}, []);
|
|
267
|
+
React__default.useEffect(function () {
|
|
268
|
+
if (clearFilterCallbackTriggerer) {
|
|
269
|
+
handleClear();
|
|
270
|
+
}
|
|
271
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
272
|
+
}, [clearFilterCallbackTriggerer]);
|
|
273
|
+
var isMobile = useIsMobile();
|
|
274
|
+
var defaultInitialFocusRef = React__default.useRef(null);
|
|
275
|
+
var titleId = useId('datepicker-title');
|
|
276
|
+
var _usePopup = usePopup({
|
|
277
|
+
enabled: !isMobile,
|
|
278
|
+
placement: 'bottom-start',
|
|
279
|
+
open: controllableIsOpen,
|
|
280
|
+
onOpenChange: function onOpenChange(isOpen, _, reason) {
|
|
281
|
+
controllableSetIsOpen(function () {
|
|
282
|
+
return isOpen;
|
|
283
|
+
});
|
|
284
|
+
if (reason === 'escape-key' || reason === 'outside-press') {
|
|
285
|
+
handleCancel();
|
|
286
|
+
}
|
|
287
|
+
},
|
|
288
|
+
referenceRef: referenceRef
|
|
289
|
+
}),
|
|
290
|
+
context = _usePopup.context,
|
|
291
|
+
refs = _usePopup.refs,
|
|
292
|
+
isMounted = _usePopup.isMounted,
|
|
293
|
+
floatingStyles = _usePopup.floatingStyles,
|
|
294
|
+
animationStyles = _usePopup.animationStyles,
|
|
295
|
+
getReferenceProps = _usePopup.getReferenceProps,
|
|
296
|
+
getFloatingProps = _usePopup.getFloatingProps;
|
|
297
|
+
var shouldRenderPresets = !isSingle && !isMobile;
|
|
298
|
+
var content = /*#__PURE__*/jsxs(Fragment, {
|
|
299
|
+
children: [shouldRenderPresets ? /*#__PURE__*/jsx(PresetSideBar, {
|
|
300
|
+
presets: presets,
|
|
301
|
+
date: currentDate,
|
|
302
|
+
selectedPreset: selectedPreset,
|
|
303
|
+
onSelection: function onSelection(preset) {
|
|
304
|
+
var presetValue = preset === null || preset === void 0 ? void 0 : preset(currentDate);
|
|
305
|
+
setControlledValue(presetValue);
|
|
306
|
+
setSelectedPreset(presetValue);
|
|
307
|
+
}
|
|
308
|
+
}) : null, /*#__PURE__*/jsxs(BaseBox, {
|
|
309
|
+
width: "100%",
|
|
310
|
+
display: "flex",
|
|
311
|
+
flexDirection: "column",
|
|
312
|
+
gap: "spacing.5",
|
|
313
|
+
padding: {
|
|
314
|
+
m: 'spacing.6',
|
|
315
|
+
s: 'spacing.0'
|
|
316
|
+
}
|
|
317
|
+
/* We only need to set height for day picker, for year picker
|
|
318
|
+
or month it should be auto. */,
|
|
319
|
+
height: _picker === 'day' ? '447px' : 'auto',
|
|
320
|
+
backgroundColor: "surface.background.gray.intense",
|
|
321
|
+
justifyContent: "space-between",
|
|
322
|
+
children: [/*#__PURE__*/jsx(Calendar, _objectSpread(_objectSpread({}, props), {}, {
|
|
323
|
+
selectionType: _selectionType,
|
|
324
|
+
defaultValue: defaultValue,
|
|
325
|
+
onMouseLeave: onRootMouseLeave,
|
|
326
|
+
__onDayMouseEnter: function __onDayMouseEnter(_event, date) {
|
|
327
|
+
onHoveredDateChange(date);
|
|
328
|
+
},
|
|
329
|
+
__onDayClick: function __onDayClick(_event, date) {
|
|
330
|
+
onDateChange(date);
|
|
331
|
+
},
|
|
332
|
+
getMonthControlProps: function getMonthControlProps(date) {
|
|
333
|
+
return getControlProps(date);
|
|
334
|
+
},
|
|
335
|
+
getYearControlProps: function getYearControlProps(date) {
|
|
336
|
+
return getControlProps(date);
|
|
337
|
+
},
|
|
338
|
+
getDayProps: function getDayProps(date) {
|
|
339
|
+
return getControlProps(date);
|
|
340
|
+
},
|
|
341
|
+
onMonthSelect: function onMonthSelect(date) {
|
|
342
|
+
var _props$onMonthSelect;
|
|
343
|
+
props === null || props === void 0 ? void 0 : (_props$onMonthSelect = props.onMonthSelect) === null || _props$onMonthSelect === void 0 ? void 0 : _props$onMonthSelect.call(props, date);
|
|
344
|
+
onDateChange(date);
|
|
345
|
+
},
|
|
346
|
+
onYearSelect: function onYearSelect(date) {
|
|
347
|
+
var _props$onYearSelect;
|
|
348
|
+
props === null || props === void 0 ? void 0 : (_props$onYearSelect = props.onYearSelect) === null || _props$onYearSelect === void 0 ? void 0 : _props$onYearSelect.call(props, date);
|
|
349
|
+
onDateChange(date);
|
|
350
|
+
},
|
|
351
|
+
onNext: function onNext(data) {
|
|
352
|
+
var _props$onNext;
|
|
353
|
+
props === null || props === void 0 ? void 0 : (_props$onNext = props.onNext) === null || _props$onNext === void 0 ? void 0 : _props$onNext.call(props, data);
|
|
354
|
+
forceRerender();
|
|
355
|
+
},
|
|
356
|
+
onPrevious: function onPrevious(data) {
|
|
357
|
+
var _props$onPrevious;
|
|
358
|
+
props === null || props === void 0 ? void 0 : (_props$onPrevious = props.onPrevious) === null || _props$onPrevious === void 0 ? void 0 : _props$onPrevious.call(props, data);
|
|
359
|
+
forceRerender();
|
|
360
|
+
},
|
|
361
|
+
picker: _picker,
|
|
362
|
+
showLevelChangeLink: !picker,
|
|
363
|
+
onPickerChange: function onPickerChange(picker) {
|
|
364
|
+
setPicker(function () {
|
|
365
|
+
return picker;
|
|
366
|
+
});
|
|
367
|
+
forceRerender();
|
|
368
|
+
},
|
|
369
|
+
selectedValue: controlledValue
|
|
370
|
+
})), isMobile ? null : /*#__PURE__*/jsx(CalendarFooter, {
|
|
371
|
+
isButtonDisabled: applyButtonDisabled,
|
|
372
|
+
onApply: handleApply,
|
|
373
|
+
onCancel: handleCancel
|
|
374
|
+
})]
|
|
375
|
+
})]
|
|
376
|
+
});
|
|
377
|
+
var dateProviderValue = React__default.useMemo(function () {
|
|
378
|
+
var _i18nState$locale;
|
|
379
|
+
var locale = convertIntlToDayjsLocale((_i18nState$locale = i18nState === null || i18nState === void 0 ? void 0 : i18nState.locale) !== null && _i18nState$locale !== void 0 ? _i18nState$locale : 'en-IN');
|
|
380
|
+
return {
|
|
381
|
+
locale: locale
|
|
382
|
+
};
|
|
383
|
+
}, [i18nState === null || i18nState === void 0 ? void 0 : i18nState.locale]);
|
|
384
|
+
|
|
385
|
+
// Dynamically load dayjs locales
|
|
386
|
+
React__default.useLayoutEffect(function () {
|
|
387
|
+
try {
|
|
388
|
+
var _i18nState$locale2;
|
|
389
|
+
var locale = convertIntlToDayjsLocale((_i18nState$locale2 = i18nState === null || i18nState === void 0 ? void 0 : i18nState.locale) !== null && _i18nState$locale2 !== void 0 ? _i18nState$locale2 : 'en-IN');
|
|
390
|
+
// dayjs needs to be loaded into window so that once the locale is loaded it can be parsed
|
|
391
|
+
if (!window.dayjs) {
|
|
392
|
+
window.dayjs = dayjs;
|
|
393
|
+
}
|
|
394
|
+
loadScript("https://cdn.jsdelivr.net/npm/dayjs@1/locale/".concat(locale, ".js"), function () {
|
|
395
|
+
forceRerender();
|
|
396
|
+
});
|
|
397
|
+
} catch (e) {
|
|
398
|
+
logger({
|
|
399
|
+
type: 'warn',
|
|
400
|
+
message: 'Failed to load dayjs locale'
|
|
401
|
+
});
|
|
402
|
+
}
|
|
403
|
+
}, [i18nState === null || i18nState === void 0 ? void 0 : i18nState.locale]);
|
|
404
|
+
return /*#__PURE__*/jsx(MantineProvider, {
|
|
405
|
+
children: /*#__PURE__*/jsx(DatesProvider, {
|
|
406
|
+
settings: dateProviderValue,
|
|
407
|
+
children: /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread(_objectSpread({
|
|
408
|
+
width: inputElementType === 'chip' ? 'fit-content' : '100%'
|
|
409
|
+
}, getStyledProps(props)), metaAttribute({
|
|
410
|
+
name: MetaConstants.DatePicker
|
|
411
|
+
})), {}, {
|
|
412
|
+
children: [inputElementType === 'chip' ? /*#__PURE__*/jsx(DatePickerFilterChip, _objectSpread({
|
|
413
|
+
selectionType: _selectionType,
|
|
414
|
+
date: controlledValue,
|
|
415
|
+
ref: referenceRef,
|
|
416
|
+
inputRef: refs.reference,
|
|
417
|
+
referenceProps: getReferenceProps(),
|
|
418
|
+
name: name,
|
|
419
|
+
label: label,
|
|
420
|
+
labelPosition: labelPosition,
|
|
421
|
+
accessibilityLabel: accessibilityLabel,
|
|
422
|
+
size: size,
|
|
423
|
+
errorText: errorText,
|
|
424
|
+
helpText: helpText,
|
|
425
|
+
successText: successText,
|
|
426
|
+
isDisabled: isDisabled,
|
|
427
|
+
isRequired: isRequired,
|
|
428
|
+
validationState: validationState,
|
|
429
|
+
autoFocus: autoFocus,
|
|
430
|
+
necessityIndicator: necessityIndicator,
|
|
431
|
+
format: finalFormat,
|
|
432
|
+
placeholder: finalInputPlaceHolder,
|
|
433
|
+
onClearButtonChange: handleClear
|
|
434
|
+
}, makeAnalyticsAttribute(props))) : /*#__PURE__*/jsx(DatePickerInput, _objectSpread({
|
|
435
|
+
selectionType: _selectionType,
|
|
436
|
+
date: controlledValue,
|
|
437
|
+
ref: referenceRef,
|
|
438
|
+
inputRef: refs.reference,
|
|
439
|
+
referenceProps: getReferenceProps(),
|
|
440
|
+
name: name,
|
|
441
|
+
label: label,
|
|
442
|
+
labelPosition: labelPosition,
|
|
443
|
+
accessibilityLabel: accessibilityLabel,
|
|
444
|
+
size: size,
|
|
445
|
+
errorText: errorText,
|
|
446
|
+
helpText: helpText,
|
|
447
|
+
successText: successText,
|
|
448
|
+
isDisabled: isDisabled,
|
|
449
|
+
isRequired: isRequired,
|
|
450
|
+
validationState: validationState,
|
|
451
|
+
autoFocus: autoFocus,
|
|
452
|
+
necessityIndicator: necessityIndicator,
|
|
453
|
+
format: finalFormat,
|
|
454
|
+
placeholder: finalInputPlaceHolder
|
|
455
|
+
}, makeAnalyticsAttribute(props))), isMobile ? /*#__PURE__*/jsxs(BottomSheet, {
|
|
456
|
+
snapPoints: [0.9, 0.9, 1],
|
|
457
|
+
isOpen: controllableIsOpen,
|
|
458
|
+
onDismiss: function onDismiss() {
|
|
459
|
+
handleCancel();
|
|
460
|
+
},
|
|
461
|
+
children: [/*#__PURE__*/jsx(BottomSheetHeader, {
|
|
462
|
+
title: isSingle ? 'Select Date' : 'Select Date Range'
|
|
463
|
+
}), /*#__PURE__*/jsxs(BottomSheetBody, {
|
|
464
|
+
children: [content, !isSingle && /*#__PURE__*/jsx(PresetSideBar, {
|
|
465
|
+
isMobile: true,
|
|
466
|
+
presets: presets,
|
|
467
|
+
date: currentDate,
|
|
468
|
+
selectedPreset: selectedPreset,
|
|
469
|
+
onSelection: function onSelection(preset) {
|
|
470
|
+
var presetValue = preset === null || preset === void 0 ? void 0 : preset(currentDate);
|
|
471
|
+
setControlledValue(presetValue);
|
|
472
|
+
setSelectedPreset(presetValue);
|
|
473
|
+
}
|
|
474
|
+
})]
|
|
475
|
+
}), /*#__PURE__*/jsx(BottomSheetFooter, {
|
|
476
|
+
children: /*#__PURE__*/jsx(CalendarFooter, {
|
|
477
|
+
onCancel: handleCancel,
|
|
478
|
+
onApply: handleApply
|
|
479
|
+
})
|
|
480
|
+
})]
|
|
481
|
+
}) : isMounted && /*#__PURE__*/jsx(FloatingPortal, {
|
|
482
|
+
children: /*#__PURE__*/jsx(FloatingFocusManager, {
|
|
483
|
+
initialFocus: defaultInitialFocusRef,
|
|
484
|
+
context: context,
|
|
485
|
+
guards: true,
|
|
486
|
+
children: /*#__PURE__*/jsx(BaseBox, _objectSpread(_objectSpread(_objectSpread({
|
|
487
|
+
ref: refs.setFloating,
|
|
488
|
+
style: floatingStyles,
|
|
489
|
+
zIndex: zIndex
|
|
490
|
+
}, getFloatingProps()), makeAccessible({
|
|
491
|
+
labelledBy: titleId
|
|
492
|
+
})), {}, {
|
|
493
|
+
children: /*#__PURE__*/jsx(BaseBox, {
|
|
494
|
+
display: "flex",
|
|
495
|
+
flexDirection: "row",
|
|
496
|
+
borderColor: "surface.border.gray.subtle",
|
|
497
|
+
borderWidth: "thin",
|
|
498
|
+
borderStyle: "solid",
|
|
499
|
+
borderRadius: "medium",
|
|
500
|
+
overflow: "hidden",
|
|
501
|
+
minWidth: "320px",
|
|
502
|
+
style: _objectSpread(_objectSpread({}, animationStyles), {}, {
|
|
503
|
+
boxShadow: "".concat(theme.elevation.lowRaised)
|
|
504
|
+
}),
|
|
505
|
+
children: content
|
|
506
|
+
})
|
|
507
|
+
}))
|
|
508
|
+
})
|
|
509
|
+
})]
|
|
510
|
+
}))
|
|
511
|
+
})
|
|
512
|
+
});
|
|
513
|
+
};
|
|
514
|
+
|
|
515
|
+
export { BaseDatePicker };
|
|
516
|
+
//# sourceMappingURL=BaseDatePicker.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseDatePicker.web.js","sources":["../../../../../../src/components/DatePicker/BaseDatePicker.web.tsx"],"sourcesContent":["/* eslint-disable jsx-a11y/no-autofocus */\n/* eslint-disable @typescript-eslint/no-unused-vars */\n/* eslint-disable @typescript-eslint/explicit-function-return-type */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { DatesProvider } from '@mantine/dates';\nimport React from 'react';\nimport { FloatingFocusManager, FloatingPortal } from '@floating-ui/react';\nimport { useI18nContext } from '@razorpay/i18nify-react';\nimport { MantineProvider } from '@mantine/core';\nimport dayjs from 'dayjs';\nimport type { DatesRangeValue, DatePickerProps, DateSelectionType, PickerType } from './types';\nimport { Calendar } from './Calendar.web';\nimport { PresetSideBar } from './QuickSelection/PresetSideBar.web';\nimport { useDatesState } from './useDatesState';\nimport { usePopup } from './usePopup';\nimport { CalendarFooter } from './CalendarFooter.web';\nimport { convertIntlToDayjsLocale, loadScript } from './utils';\nimport { shiftTimezone } from './shiftTimezone';\nimport { DatePickerInput } from './DateInput.web';\nimport { DatePickerFilterChip } from './FilterChipDatePicker/DatePickerFilterChip.web';\nimport BaseBox from '~components/Box/BaseBox';\nimport { useControllableState } from '~utils/useControllable';\nimport { useTheme } from '~utils';\nimport { useId } from '~utils/useId';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport {\n BottomSheet,\n BottomSheetBody,\n BottomSheetFooter,\n BottomSheetHeader,\n} from '~components/BottomSheet';\nimport { logger } from '~utils/logger';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { componentZIndices } from '~utils/componentZIndices';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport type { DataAnalyticsAttribute } from '~utils/types';\nimport { fireNativeEvent } from '~utils/fireNativeEvent';\nimport { useListViewFilterContext } from '~components/ListView/ListViewFiltersContext.web';\nimport { useFilterChipGroupContext } from '~components/Dropdown/FilterChipGroupContext.web';\n\nconst BaseDatePicker = <Type extends DateSelectionType = 'single'>({\n selectionType,\n allowSingleDateInRange,\n value,\n defaultValue,\n onChange,\n onApply,\n presets,\n isOpen,\n defaultIsOpen,\n onOpenChange,\n label,\n labelPosition = 'top',\n accessibilityLabel,\n errorText,\n helpText,\n isDisabled,\n isRequired,\n successText,\n validationState,\n size,\n autoFocus,\n necessityIndicator,\n name,\n defaultPicker = 'day',\n picker,\n onPickerChange,\n zIndex = componentZIndices.popover,\n format = 'DD/MM/YYYY',\n inputPlaceHolder,\n inputElementType = 'datePickerInput',\n onClearButtonClick,\n ...props\n}: DatePickerProps<Type> &\n StyledPropsBlade &\n DataAnalyticsAttribute & {\n inputElementType: 'chip' | 'datePickerInput';\n onClearButtonClick?: () => void;\n }): React.ReactElement => {\n const { i18nState } = useI18nContext();\n const _selectionType = selectionType ?? 'single';\n const { theme } = useTheme();\n const isSingle = _selectionType === 'single';\n const [_, forceRerender] = React.useReducer((x: number) => x + 1, 0);\n const [selectedPreset, setSelectedPreset] = React.useState<DatesRangeValue | null>(null);\n const referenceRef = React.useRef<HTMLButtonElement>(null);\n\n const [_picker, setPicker] = useControllableState<PickerType>({\n defaultValue: defaultPicker,\n value: picker,\n onChange: (picker) => {\n onPickerChange?.(picker);\n },\n });\n const finalFormat = React.useMemo(() => {\n if (format) {\n return format;\n }\n if (picker === 'month') {\n return 'MMMM';\n }\n if (picker === 'year') {\n return 'YYYY';\n }\n return 'DD/MM/YYYY';\n }, [format, picker]);\n\n const finalInputPlaceHolder = React.useMemo(() => {\n if (inputPlaceHolder) {\n return inputPlaceHolder;\n }\n if (picker === 'month') {\n return 'Month';\n }\n if (picker === 'year') {\n return 'Year';\n }\n return 'DD/MM/YYYY';\n }, [inputPlaceHolder, picker]);\n\n const {\n onDateChange,\n onRootMouseLeave,\n onHoveredDateChange,\n getControlProps,\n setPickedDate,\n controlledValue,\n setControlledValue,\n handleReset,\n } = useDatesState({\n level: _picker,\n type: isSingle ? 'default' : 'range',\n allowDeselect: false,\n allowSingleDateInRange,\n value,\n defaultValue,\n onChange: (date) => {\n onChange?.(date as never);\n fireNativeEvent(referenceRef, ['input']);\n if (isSingle) return;\n // sync selected preset with value\n setSelectedPreset(date as DatesRangeValue);\n },\n });\n const [oldValue, setOldValue] = React.useState<DatesRangeValue | null>(controlledValue);\n\n const [controllableIsOpen, controllableSetIsOpen] = useControllableState({\n value: isOpen,\n defaultValue: defaultIsOpen,\n onChange: (isOpen) => {\n onOpenChange?.({ isOpen });\n // we need to update old value everytime datepicker is opened or closed\n setOldValue(controlledValue);\n },\n });\n\n const currentDate = shiftTimezone('add', new Date());\n const hasBothDatesSelected = controlledValue?.[0] && controlledValue?.[1];\n const { listViewSelectedFilters, setListViewSelectedFilters } = useListViewFilterContext();\n const {\n clearFilterCallbackTriggerer,\n setFilterChipGroupSelectedFilters,\n } = useFilterChipGroupContext();\n let applyButtonDisabled = !hasBothDatesSelected;\n if (isSingle) {\n applyButtonDisabled = !Boolean(controlledValue);\n }\n\n const close = React.useCallback(() => {\n controllableSetIsOpen(() => false);\n }, [controllableSetIsOpen]);\n\n const handleApply = (): void => {\n const updateSelectedFilters = () => {\n setFilterChipGroupSelectedFilters((prev: string[]) => [...prev, label as string]);\n };\n const storeSelectedFiltersAndValueInListViewContext = () => {\n setListViewSelectedFilters((prev) => {\n if (isSingle) {\n return { ...prev, [label as string]: [controlledValue as string] };\n }\n return { ...prev, [label as string]: controlledValue as string[] };\n });\n };\n if (isSingle) {\n onChange?.(controlledValue);\n fireNativeEvent(referenceRef, ['change']);\n setOldValue(controlledValue);\n onApply?.(controlledValue);\n close();\n storeSelectedFiltersAndValueInListViewContext();\n updateSelectedFilters();\n return;\n }\n // only apply if both dates are selected\n if (hasBothDatesSelected) {\n onChange?.(controlledValue);\n fireNativeEvent(referenceRef, ['change']);\n setOldValue(controlledValue);\n onApply?.(controlledValue);\n close();\n }\n\n storeSelectedFiltersAndValueInListViewContext();\n updateSelectedFilters();\n };\n\n const handleCancel = (): void => {\n setControlledValue(oldValue);\n fireNativeEvent(referenceRef, ['change']);\n setPickedDate(null);\n close();\n };\n\n const handleClear = (): void => {\n fireNativeEvent(referenceRef, ['change']);\n handleReset();\n close();\n setFilterChipGroupSelectedFilters((prev: string[]) =>\n prev.filter((filter) => filter !== label),\n );\n\n setListViewSelectedFilters((prev) => {\n const { [label as string]: _, ...rest } = prev;\n return rest;\n });\n onClearButtonClick?.();\n };\n\n React.useEffect(() => {\n if (listViewSelectedFilters[label as string]) {\n setControlledValue(\n (listViewSelectedFilters[\n label as keyof typeof listViewSelectedFilters\n ] as unknown) as DatesRangeValue,\n );\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n React.useEffect(() => {\n if (clearFilterCallbackTriggerer) {\n handleClear();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [clearFilterCallbackTriggerer]);\n\n const isMobile = useIsMobile();\n const defaultInitialFocusRef = React.useRef<HTMLButtonElement>(null);\n const titleId = useId('datepicker-title');\n const {\n context,\n refs,\n isMounted,\n floatingStyles,\n animationStyles,\n getReferenceProps,\n getFloatingProps,\n } = usePopup({\n enabled: !isMobile,\n placement: 'bottom-start',\n open: controllableIsOpen,\n onOpenChange: (isOpen, _, reason) => {\n controllableSetIsOpen(() => isOpen);\n if (reason === 'escape-key' || reason === 'outside-press') {\n handleCancel();\n }\n },\n referenceRef,\n });\n\n const shouldRenderPresets = !isSingle && !isMobile;\n\n const content = (\n <>\n {shouldRenderPresets ? (\n <PresetSideBar\n presets={presets}\n date={currentDate}\n selectedPreset={selectedPreset}\n onSelection={(preset) => {\n const presetValue = preset?.(currentDate);\n setControlledValue(presetValue);\n setSelectedPreset(presetValue);\n }}\n />\n ) : null}\n <BaseBox\n width=\"100%\"\n display=\"flex\"\n flexDirection=\"column\"\n gap=\"spacing.5\"\n padding={{ m: 'spacing.6', s: 'spacing.0' }}\n /* We only need to set height for day picker, for year picker\n or month it should be auto. */\n height={_picker === 'day' ? '447px' : 'auto'}\n backgroundColor=\"surface.background.gray.intense\"\n justifyContent=\"space-between\"\n >\n <Calendar\n {...props}\n selectionType={_selectionType}\n defaultValue={defaultValue}\n onMouseLeave={onRootMouseLeave}\n __onDayMouseEnter={(_event, date) => {\n onHoveredDateChange(date);\n }}\n __onDayClick={(_event, date) => {\n onDateChange(date);\n }}\n getMonthControlProps={(date) => {\n return getControlProps(date);\n }}\n getYearControlProps={(date) => {\n return getControlProps(date);\n }}\n getDayProps={(date) => {\n return getControlProps(date);\n }}\n onMonthSelect={(date) => {\n props?.onMonthSelect?.(date);\n onDateChange(date);\n }}\n onYearSelect={(date) => {\n props?.onYearSelect?.(date);\n onDateChange(date);\n }}\n onNext={(data) => {\n props?.onNext?.(data);\n forceRerender();\n }}\n onPrevious={(data) => {\n props?.onPrevious?.(data);\n forceRerender();\n }}\n picker={_picker}\n showLevelChangeLink={!picker}\n onPickerChange={(picker) => {\n setPicker(() => picker);\n forceRerender();\n }}\n selectedValue={controlledValue}\n />\n {isMobile ? null : (\n <CalendarFooter\n isButtonDisabled={applyButtonDisabled}\n onApply={handleApply}\n onCancel={handleCancel}\n />\n )}\n </BaseBox>\n </>\n );\n\n const dateProviderValue = React.useMemo(() => {\n const locale = convertIntlToDayjsLocale(i18nState?.locale ?? 'en-IN');\n return {\n locale,\n };\n }, [i18nState?.locale]);\n\n // Dynamically load dayjs locales\n React.useLayoutEffect(() => {\n try {\n const locale = convertIntlToDayjsLocale(i18nState?.locale ?? 'en-IN');\n // dayjs needs to be loaded into window so that once the locale is loaded it can be parsed\n if (!(window as any).dayjs) {\n (window as any).dayjs = dayjs;\n }\n loadScript(`https://cdn.jsdelivr.net/npm/dayjs@1/locale/${locale}.js`, () => {\n forceRerender();\n });\n } catch (e: unknown) {\n logger({ type: 'warn', message: 'Failed to load dayjs locale' });\n }\n }, [i18nState?.locale]);\n\n return (\n <MantineProvider>\n <DatesProvider settings={dateProviderValue}>\n <BaseBox\n width={inputElementType === 'chip' ? 'fit-content' : '100%'}\n {...getStyledProps(props)}\n {...metaAttribute({ name: MetaConstants.DatePicker })}\n >\n {inputElementType === 'chip' ? (\n <DatePickerFilterChip\n selectionType={_selectionType}\n date={controlledValue}\n ref={referenceRef}\n inputRef={refs.reference}\n referenceProps={getReferenceProps()}\n name={name as never}\n label={label as never}\n labelPosition={labelPosition}\n accessibilityLabel={accessibilityLabel}\n size={size}\n errorText={errorText as never}\n helpText={helpText as never}\n successText={successText as never}\n isDisabled={isDisabled}\n isRequired={isRequired}\n validationState={validationState}\n autoFocus={autoFocus}\n necessityIndicator={necessityIndicator}\n format={finalFormat}\n placeholder={finalInputPlaceHolder}\n onClearButtonChange={handleClear}\n {...makeAnalyticsAttribute(props)}\n />\n ) : (\n <DatePickerInput\n selectionType={_selectionType}\n date={controlledValue}\n ref={referenceRef}\n inputRef={refs.reference}\n referenceProps={getReferenceProps()}\n name={name as never}\n label={label as never}\n labelPosition={labelPosition}\n accessibilityLabel={accessibilityLabel}\n size={size}\n errorText={errorText as never}\n helpText={helpText as never}\n successText={successText as never}\n isDisabled={isDisabled}\n isRequired={isRequired}\n validationState={validationState}\n autoFocus={autoFocus}\n necessityIndicator={necessityIndicator}\n format={finalFormat}\n placeholder={finalInputPlaceHolder}\n {...makeAnalyticsAttribute(props)}\n />\n )}\n {isMobile ? (\n <BottomSheet\n snapPoints={[0.9, 0.9, 1]}\n isOpen={controllableIsOpen}\n onDismiss={() => {\n handleCancel();\n }}\n >\n <BottomSheetHeader title={isSingle ? 'Select Date' : 'Select Date Range'} />\n <BottomSheetBody>\n {content}\n {!isSingle && (\n <PresetSideBar\n isMobile\n presets={presets}\n date={currentDate}\n selectedPreset={selectedPreset}\n onSelection={(preset) => {\n const presetValue = preset?.(currentDate);\n setControlledValue(presetValue);\n setSelectedPreset(presetValue);\n }}\n />\n )}\n </BottomSheetBody>\n <BottomSheetFooter>\n <CalendarFooter onCancel={handleCancel} onApply={handleApply} />\n </BottomSheetFooter>\n </BottomSheet>\n ) : (\n isMounted && (\n <FloatingPortal>\n <FloatingFocusManager\n initialFocus={defaultInitialFocusRef}\n context={context}\n guards={true}\n >\n <BaseBox\n ref={refs.setFloating}\n style={floatingStyles}\n zIndex={zIndex}\n {...getFloatingProps()}\n {...makeAccessible({ labelledBy: titleId })}\n >\n <BaseBox\n display=\"flex\"\n flexDirection=\"row\"\n borderColor=\"surface.border.gray.subtle\"\n borderWidth=\"thin\"\n borderStyle=\"solid\"\n borderRadius=\"medium\"\n overflow=\"hidden\"\n minWidth=\"320px\"\n style={{ ...animationStyles, boxShadow: `${theme.elevation.lowRaised}` }}\n >\n {content}\n </BaseBox>\n </BaseBox>\n </FloatingFocusManager>\n </FloatingPortal>\n )\n )}\n </BaseBox>\n </DatesProvider>\n </MantineProvider>\n );\n};\n\nexport { BaseDatePicker };\n"],"names":["BaseDatePicker","_ref","selectionType","allowSingleDateInRange","value","defaultValue","onChange","onApply","presets","isOpen","defaultIsOpen","onOpenChange","label","_ref$labelPosition","labelPosition","accessibilityLabel","errorText","helpText","isDisabled","isRequired","successText","validationState","size","autoFocus","necessityIndicator","name","_ref$defaultPicker","defaultPicker","picker","onPickerChange","_ref$zIndex","zIndex","componentZIndices","popover","_ref$format","format","inputPlaceHolder","_ref$inputElementType","inputElementType","onClearButtonClick","props","_objectWithoutProperties","_excluded","_useI18nContext","useI18nContext","i18nState","_selectionType","_useTheme","useTheme","theme","isSingle","_React$useReducer","React","useReducer","x","_React$useReducer2","_slicedToArray","_","forceRerender","_React$useState","useState","_React$useState2","selectedPreset","setSelectedPreset","referenceRef","useRef","_useControllableState","useControllableState","_useControllableState2","_picker","setPicker","finalFormat","useMemo","finalInputPlaceHolder","_useDatesState","useDatesState","level","type","allowDeselect","date","fireNativeEvent","onDateChange","onRootMouseLeave","onHoveredDateChange","getControlProps","setPickedDate","controlledValue","setControlledValue","handleReset","_React$useState3","_React$useState4","oldValue","setOldValue","_useControllableState3","_useControllableState4","controllableIsOpen","controllableSetIsOpen","currentDate","shiftTimezone","Date","hasBothDatesSelected","_useListViewFilterCon","useListViewFilterContext","listViewSelectedFilters","setListViewSelectedFilters","_useFilterChipGroupCo","useFilterChipGroupContext","clearFilterCallbackTriggerer","setFilterChipGroupSelectedFilters","applyButtonDisabled","Boolean","close","useCallback","handleApply","updateSelectedFilters","prev","concat","_toConsumableArray","storeSelectedFiltersAndValueInListViewContext","_objectSpread","_defineProperty","handleCancel","handleClear","filter","_ref2","rest","map","_toPropertyKey","useEffect","isMobile","useIsMobile","defaultInitialFocusRef","titleId","useId","_usePopup","usePopup","enabled","placement","open","reason","context","refs","isMounted","floatingStyles","animationStyles","getReferenceProps","getFloatingProps","shouldRenderPresets","content","_jsxs","_Fragment","children","_jsx","PresetSideBar","onSelection","preset","presetValue","BaseBox","width","display","flexDirection","gap","padding","m","s","height","backgroundColor","justifyContent","Calendar","onMouseLeave","__onDayMouseEnter","_event","__onDayClick","getMonthControlProps","getYearControlProps","getDayProps","onMonthSelect","_props$onMonthSelect","call","onYearSelect","_props$onYearSelect","onNext","data","_props$onNext","onPrevious","_props$onPrevious","showLevelChangeLink","selectedValue","CalendarFooter","isButtonDisabled","onCancel","dateProviderValue","_i18nState$locale","locale","convertIntlToDayjsLocale","useLayoutEffect","_i18nState$locale2","window","dayjs","loadScript","e","logger","message","MantineProvider","DatesProvider","settings","getStyledProps","metaAttribute","MetaConstants","DatePicker","DatePickerFilterChip","ref","inputRef","reference","referenceProps","placeholder","onClearButtonChange","makeAnalyticsAttribute","DatePickerInput","BottomSheet","snapPoints","onDismiss","BottomSheetHeader","title","BottomSheetBody","BottomSheetFooter","FloatingPortal","FloatingFocusManager","initialFocus","guards","setFloating","style","makeAccessible","labelledBy","borderColor","borderWidth","borderStyle","borderRadius","overflow","minWidth","boxShadow","elevation","lowRaised"],"mappings":"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"}
|