@razorpay/blade 12.55.0 → 12.55.1
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/web/development/components/DatePicker/BaseDatePicker.web.js +1 -0
- package/build/lib/web/development/components/DatePicker/BaseDatePicker.web.js.map +1 -1
- package/build/lib/web/development/components/Dropdown/DropdownOverlay.web.js +8 -3
- package/build/lib/web/development/components/Dropdown/DropdownOverlay.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/BaseDatePicker.web.js +1 -0
- package/build/lib/web/production/components/DatePicker/BaseDatePicker.web.js.map +1 -1
- package/build/lib/web/production/components/Dropdown/DropdownOverlay.web.js +8 -3
- package/build/lib/web/production/components/Dropdown/DropdownOverlay.web.js.map +1 -1
- package/build/types/components/index.d.ts +1 -1
- package/package.json +1 -1
|
@@ -519,6 +519,7 @@ var BaseDatePicker = function BaseDatePicker(_ref) {
|
|
|
519
519
|
var presetValue = preset === null || preset === void 0 ? void 0 : preset(currentDate);
|
|
520
520
|
setControlledValue(presetValue);
|
|
521
521
|
setSelectedPreset(presetValue);
|
|
522
|
+
handleApply();
|
|
522
523
|
},
|
|
523
524
|
onOpenCalendar: function onOpenCalendar() {
|
|
524
525
|
controllableSetIsOpen(function () {
|
|
@@ -1 +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 { CalendarFooter } from './CalendarFooter.web';\nimport { DatePickerInput } from './DateInput.web';\nimport { DatePickerFilterChip } from './FilterChipDatePicker/DatePickerFilterChip.web';\nimport { renderPresetDropdown } from './QuickSelection/renderPresetDropdown.web';\nimport { PresetSideBar } from './QuickSelection/PresetSideBar.web';\nimport { usePresetState } from './QuickSelection/usePresetState';\nimport { shiftTimezone } from './shiftTimezone';\nimport { useDatesState } from './useDatesState';\nimport { usePopup } from './usePopup';\nimport { convertIntlToDayjsLocale, loadScript } from './utils';\nimport { DatePickerProvider } from './DatePickerContext';\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\n// Calendar dimensions for consistent layout\nconst CALENDAR_HEIGHTS = {\n // Height includes: Calendar grid (6 weeks * ~44px) + header (~48px) + footer actions (~64px) + padding\n // moved to auto since we are exposing footer slot\n DAY_PICKER_WITH_FOOTER: 'auto',\n} as const;\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 labelSuffix,\n labelTrailing,\n showFooterActions = true,\n footer,\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 // Sync selectedPreset with controlledValue for initial preset matching\n React.useEffect(() => {\n if (!isSingle && controlledValue) {\n setSelectedPreset(controlledValue as DatesRangeValue);\n }\n }, []);\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 setPicker(() => defaultPicker);\n },\n });\n\n const currentDate = shiftTimezone('add', new Date());\n\n // Use the hook to get the calculated preset values\n const { presetStates, selectedPresetLabel, effectiveSelectionType } = usePresetState({\n presets: presets || [],\n selectedPreset,\n currentDate,\n });\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 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') {\n handleCancel();\n }\n },\n referenceRef,\n crossAxisOffset: -28,\n });\n\n const shouldRenderPresets = !isSingle && !isMobile;\n\n // MOBILE: Blur input when bottom sheet opens to prevent keyboard + sheet overlap\n // Use setTimeout(0) instead of requestAnimationFrame: BottomSheet captures document.activeElement\n // on open for focus restoration. Deferring blur to next macrotask ensures BottomSheet first\n // snapshots the focused input, then we blur to hide keyboard. On close, focus auto-restores.\n React.useEffect(() => {\n if (isMobile && controllableIsOpen) {\n const refEl = (refs.reference?.current as unknown) as { blur?: () => void } | null;\n if (refEl?.blur) {\n setTimeout(() => {\n refEl.blur?.();\n }, 0);\n }\n }\n }, [isMobile, controllableIsOpen, refs.reference]);\n\n const content = (\n <>\n {shouldRenderPresets ? (\n <PresetSideBar\n onSelection={(preset: (date: Date) => DatesRangeValue) => {\n const presetValue = preset?.(currentDate);\n setControlledValue(presetValue);\n setSelectedPreset(presetValue);\n }}\n presetStates={presetStates}\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={\n _picker === 'day' && showFooterActions ? CALENDAR_HEIGHTS.DAY_PICKER_WITH_FOOTER : 'auto'\n }\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, 'day');\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, 'month');\n }}\n onYearSelect={(date) => {\n props?.onYearSelect?.(date);\n onDateChange(date, 'year');\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 {showFooterActions &&\n (isMobile ? null : (\n <CalendarFooter\n isButtonDisabled={applyButtonDisabled}\n onApply={handleApply}\n onCancel={handleCancel}\n footer={footer}\n selectionType={_selectionType}\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 <DatePickerProvider isDatePickerBodyOpen={controllableIsOpen}>\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 labelSuffix={labelSuffix}\n labelTrailing={labelTrailing}\n setControlledValue={setControlledValue}\n selectedPreset={selectedPreset}\n excludeDate={props.excludeDate}\n minDate={props.minDate}\n maxDate={props.maxDate}\n // Effective Selection type should only be use for selectionType 'range'\n effectiveSelectionType={isSingle ? selectionType : effectiveSelectionType}\n leadingDropdown={\n presets && !isSingle\n ? renderPresetDropdown({\n onSelection: (preset: (date: Date) => DatesRangeValue) => {\n const presetValue = preset?.(currentDate);\n setControlledValue(presetValue);\n setSelectedPreset(presetValue);\n },\n onOpenCalendar: () => {\n controllableSetIsOpen(() => true);\n },\n presetStates,\n selectedPresetLabel,\n })\n : undefined\n }\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 && presets && (\n <PresetSideBar\n isMobile\n presetStates={presetStates}\n onSelection={(preset: (date: Date) => DatesRangeValue) => {\n const presetValue = preset?.(currentDate);\n setControlledValue(presetValue);\n setSelectedPreset(presetValue);\n }}\n />\n )}\n </BottomSheetBody>\n {showFooterActions && (\n <BottomSheetFooter>\n <CalendarFooter\n onCancel={handleCancel}\n onApply={handleApply}\n footer={footer}\n selectionType={_selectionType}\n />\n </BottomSheetFooter>\n )}\n </BottomSheet>\n ) : (\n isMounted && (\n <FloatingPortal>\n <FloatingFocusManager\n initialFocus={-1}\n context={context}\n guards={true}\n order={['reference', 'content']}\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 </DatePickerProvider>\n </DatesProvider>\n </MantineProvider>\n );\n};\n\nexport { BaseDatePicker };\n"],"names":["CALENDAR_HEIGHTS","DAY_PICKER_WITH_FOOTER","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","labelSuffix","labelTrailing","_ref$showFooterAction","showFooterActions","footer","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","useEffect","_useControllableState3","_useControllableState4","controllableIsOpen","controllableSetIsOpen","currentDate","shiftTimezone","Date","_usePresetState","usePresetState","presetStates","selectedPresetLabel","effectiveSelectionType","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","isMobile","useIsMobile","titleId","useId","_usePopup","usePopup","enabled","placement","open","reason","crossAxisOffset","context","refs","isMounted","floatingStyles","animationStyles","getReferenceProps","getFloatingProps","shouldRenderPresets","_refs$reference","refEl","reference","current","blur","setTimeout","_refEl$blur","call","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","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","DatePickerProvider","isDatePickerBodyOpen","getStyledProps","metaAttribute","MetaConstants","DatePicker","DatePickerFilterChip","ref","inputRef","referenceProps","placeholder","onClearButtonChange","makeAnalyticsAttribute","DatePickerInput","excludeDate","minDate","maxDate","leadingDropdown","renderPresetDropdown","onOpenCalendar","undefined","BottomSheet","snapPoints","onDismiss","BottomSheetHeader","title","BottomSheetBody","BottomSheetFooter","FloatingPortal","FloatingFocusManager","initialFocus","guards","order","setFloating","style","makeAccessible","labelledBy","borderColor","borderWidth","borderStyle","borderRadius","overflow","minWidth","boxShadow","elevation","lowRaised"],"mappings":"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"}
|
|
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 { CalendarFooter } from './CalendarFooter.web';\nimport { DatePickerInput } from './DateInput.web';\nimport { DatePickerFilterChip } from './FilterChipDatePicker/DatePickerFilterChip.web';\nimport { renderPresetDropdown } from './QuickSelection/renderPresetDropdown.web';\nimport { PresetSideBar } from './QuickSelection/PresetSideBar.web';\nimport { usePresetState } from './QuickSelection/usePresetState';\nimport { shiftTimezone } from './shiftTimezone';\nimport { useDatesState } from './useDatesState';\nimport { usePopup } from './usePopup';\nimport { convertIntlToDayjsLocale, loadScript } from './utils';\nimport { DatePickerProvider } from './DatePickerContext';\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\n// Calendar dimensions for consistent layout\nconst CALENDAR_HEIGHTS = {\n // Height includes: Calendar grid (6 weeks * ~44px) + header (~48px) + footer actions (~64px) + padding\n // moved to auto since we are exposing footer slot\n DAY_PICKER_WITH_FOOTER: 'auto',\n} as const;\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 labelSuffix,\n labelTrailing,\n showFooterActions = true,\n footer,\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 // Sync selectedPreset with controlledValue for initial preset matching\n React.useEffect(() => {\n if (!isSingle && controlledValue) {\n setSelectedPreset(controlledValue as DatesRangeValue);\n }\n }, []);\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 setPicker(() => defaultPicker);\n },\n });\n\n const currentDate = shiftTimezone('add', new Date());\n\n // Use the hook to get the calculated preset values\n const { presetStates, selectedPresetLabel, effectiveSelectionType } = usePresetState({\n presets: presets || [],\n selectedPreset,\n currentDate,\n });\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 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') {\n handleCancel();\n }\n },\n referenceRef,\n crossAxisOffset: -28,\n });\n\n const shouldRenderPresets = !isSingle && !isMobile;\n\n // MOBILE: Blur input when bottom sheet opens to prevent keyboard + sheet overlap\n // Use setTimeout(0) instead of requestAnimationFrame: BottomSheet captures document.activeElement\n // on open for focus restoration. Deferring blur to next macrotask ensures BottomSheet first\n // snapshots the focused input, then we blur to hide keyboard. On close, focus auto-restores.\n React.useEffect(() => {\n if (isMobile && controllableIsOpen) {\n const refEl = (refs.reference?.current as unknown) as { blur?: () => void } | null;\n if (refEl?.blur) {\n setTimeout(() => {\n refEl.blur?.();\n }, 0);\n }\n }\n }, [isMobile, controllableIsOpen, refs.reference]);\n\n const content = (\n <>\n {shouldRenderPresets ? (\n <PresetSideBar\n onSelection={(preset: (date: Date) => DatesRangeValue) => {\n const presetValue = preset?.(currentDate);\n setControlledValue(presetValue);\n setSelectedPreset(presetValue);\n }}\n presetStates={presetStates}\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={\n _picker === 'day' && showFooterActions ? CALENDAR_HEIGHTS.DAY_PICKER_WITH_FOOTER : 'auto'\n }\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, 'day');\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, 'month');\n }}\n onYearSelect={(date) => {\n props?.onYearSelect?.(date);\n onDateChange(date, 'year');\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 {showFooterActions &&\n (isMobile ? null : (\n <CalendarFooter\n isButtonDisabled={applyButtonDisabled}\n onApply={handleApply}\n onCancel={handleCancel}\n footer={footer}\n selectionType={_selectionType}\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 <DatePickerProvider isDatePickerBodyOpen={controllableIsOpen}>\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 labelSuffix={labelSuffix}\n labelTrailing={labelTrailing}\n setControlledValue={setControlledValue}\n selectedPreset={selectedPreset}\n excludeDate={props.excludeDate}\n minDate={props.minDate}\n maxDate={props.maxDate}\n // Effective Selection type should only be use for selectionType 'range'\n effectiveSelectionType={isSingle ? selectionType : effectiveSelectionType}\n leadingDropdown={\n presets && !isSingle\n ? renderPresetDropdown({\n onSelection: (preset: (date: Date) => DatesRangeValue) => {\n const presetValue = preset?.(currentDate);\n setControlledValue(presetValue);\n setSelectedPreset(presetValue);\n handleApply();\n },\n onOpenCalendar: () => {\n controllableSetIsOpen(() => true);\n },\n presetStates,\n selectedPresetLabel,\n })\n : undefined\n }\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 && presets && (\n <PresetSideBar\n isMobile\n presetStates={presetStates}\n onSelection={(preset: (date: Date) => DatesRangeValue) => {\n const presetValue = preset?.(currentDate);\n setControlledValue(presetValue);\n setSelectedPreset(presetValue);\n }}\n />\n )}\n </BottomSheetBody>\n {showFooterActions && (\n <BottomSheetFooter>\n <CalendarFooter\n onCancel={handleCancel}\n onApply={handleApply}\n footer={footer}\n selectionType={_selectionType}\n />\n </BottomSheetFooter>\n )}\n </BottomSheet>\n ) : (\n isMounted && (\n <FloatingPortal>\n <FloatingFocusManager\n initialFocus={-1}\n context={context}\n guards={true}\n order={['reference', 'content']}\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 </DatePickerProvider>\n </DatesProvider>\n </MantineProvider>\n );\n};\n\nexport { BaseDatePicker };\n"],"names":["CALENDAR_HEIGHTS","DAY_PICKER_WITH_FOOTER","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","labelSuffix","labelTrailing","_ref$showFooterAction","showFooterActions","footer","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","useEffect","_useControllableState3","_useControllableState4","controllableIsOpen","controllableSetIsOpen","currentDate","shiftTimezone","Date","_usePresetState","usePresetState","presetStates","selectedPresetLabel","effectiveSelectionType","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","isMobile","useIsMobile","titleId","useId","_usePopup","usePopup","enabled","placement","open","reason","crossAxisOffset","context","refs","isMounted","floatingStyles","animationStyles","getReferenceProps","getFloatingProps","shouldRenderPresets","_refs$reference","refEl","reference","current","blur","setTimeout","_refEl$blur","call","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","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","DatePickerProvider","isDatePickerBodyOpen","getStyledProps","metaAttribute","MetaConstants","DatePicker","DatePickerFilterChip","ref","inputRef","referenceProps","placeholder","onClearButtonChange","makeAnalyticsAttribute","DatePickerInput","excludeDate","minDate","maxDate","leadingDropdown","renderPresetDropdown","onOpenCalendar","undefined","BottomSheet","snapPoints","onDismiss","BottomSheetHeader","title","BottomSheetBody","BottomSheetFooter","FloatingPortal","FloatingFocusManager","initialFocus","guards","order","setFloating","style","makeAccessible","labelledBy","borderColor","borderWidth","borderStyle","borderRadius","overflow","minWidth","boxShadow","elevation","lowRaised"],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
2
3
|
import React__default from 'react';
|
|
3
4
|
import { useFloating, offset, flip, size as size$1, autoUpdate, useDismiss, useInteractions, useTransitionStyles, FloatingPortal } from '@floating-ui/react';
|
|
4
5
|
import { useDropdown } from './useDropdown.js';
|
|
@@ -13,6 +14,7 @@ import { useBottomSheetAndDropdownGlue } from '../BottomSheet/BottomSheetContext
|
|
|
13
14
|
import '../Box/BaseBox/index.js';
|
|
14
15
|
import { componentZIndices } from '../../utils/componentZIndices.js';
|
|
15
16
|
import { OVERLAY_OFFSET, OVERLAY_TRANSITION_OFFSET } from '../BaseMenu/tokens.js';
|
|
17
|
+
import '../../utils/makeAnalyticsAttribute/index.js';
|
|
16
18
|
import { jsx } from 'react/jsx-runtime';
|
|
17
19
|
import { size } from '../../tokens/global/size.js';
|
|
18
20
|
import useTheme from '../BladeProvider/useTheme.js';
|
|
@@ -20,8 +22,10 @@ import { makeSize } from '../../utils/makeSize/makeSize.js';
|
|
|
20
22
|
import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
|
|
21
23
|
import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
|
|
22
24
|
import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
|
|
25
|
+
import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
|
|
23
26
|
import { assignWithoutSideEffects } from '../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
|
|
24
27
|
|
|
28
|
+
var _excluded = ["children", "testID", "zIndex", "width", "minWidth", "maxWidth", "referenceRef", "defaultPlacement", "_isNestedDropdown"];
|
|
25
29
|
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
30
|
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
31
|
var OVERLAY_PADDING = size['12']; // doesn't have to be exact. Just rough padding for floating ui to decide to show overlay on top or bottom
|
|
@@ -44,7 +48,8 @@ var _DropdownOverlay = function _DropdownOverlay(_ref) {
|
|
|
44
48
|
_ref$defaultPlacement = _ref.defaultPlacement,
|
|
45
49
|
defaultPlacement = _ref$defaultPlacement === void 0 ? 'bottom-start' : _ref$defaultPlacement,
|
|
46
50
|
_ref$_isNestedDropdow = _ref._isNestedDropdown,
|
|
47
|
-
_isNestedDropdown = _ref$_isNestedDropdow === void 0 ? false : _ref$_isNestedDropdow
|
|
51
|
+
_isNestedDropdown = _ref$_isNestedDropdow === void 0 ? false : _ref$_isNestedDropdow,
|
|
52
|
+
dataAnalyticsProps = _objectWithoutProperties(_ref, _excluded);
|
|
48
53
|
var _useDropdown = useDropdown(),
|
|
49
54
|
isOpen = _useDropdown.isOpen,
|
|
50
55
|
triggererRef = _useDropdown.triggererRef,
|
|
@@ -123,7 +128,7 @@ var _DropdownOverlay = function _DropdownOverlay(_ref) {
|
|
|
123
128
|
zIndex: zIndex,
|
|
124
129
|
display: isMounted ? 'flex' : 'none'
|
|
125
130
|
}, getFloatingProps()), {}, {
|
|
126
|
-
children: /*#__PURE__*/jsx(StyledDropdownOverlay, _objectSpread(_objectSpread({
|
|
131
|
+
children: /*#__PURE__*/jsx(StyledDropdownOverlay, _objectSpread(_objectSpread(_objectSpread({
|
|
127
132
|
isInBottomSheet: bottomSheetAndDropdownGlue === null || bottomSheetAndDropdownGlue === void 0 ? void 0 : bottomSheetAndDropdownGlue.dropdownHasBottomSheet,
|
|
128
133
|
elevation: bottomSheetAndDropdownGlue !== null && bottomSheetAndDropdownGlue !== void 0 && bottomSheetAndDropdownGlue.dropdownHasBottomSheet ? undefined : 'midRaised',
|
|
129
134
|
style: _objectSpread({}, styles),
|
|
@@ -133,7 +138,7 @@ var _DropdownOverlay = function _DropdownOverlay(_ref) {
|
|
|
133
138
|
}, metaAttribute({
|
|
134
139
|
name: MetaConstants.DropdownOverlay,
|
|
135
140
|
testID: testID
|
|
136
|
-
})), {}, {
|
|
141
|
+
})), makeAnalyticsAttribute(dataAnalyticsProps)), {}, {
|
|
137
142
|
children: children
|
|
138
143
|
}))
|
|
139
144
|
}))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropdownOverlay.web.js","sources":["../../../../../../src/components/Dropdown/DropdownOverlay.web.tsx"],"sourcesContent":["import React from 'react';\nimport {\n autoUpdate,\n offset,\n size as sizeMiddleware,\n useFloating,\n useTransitionStyles,\n flip,\n FloatingPortal,\n useDismiss,\n useInteractions,\n} from '@floating-ui/react';\nimport { useDropdown } from './useDropdown';\nimport { StyledDropdownOverlay } from './StyledDropdownOverlay';\nimport type { DropdownOverlayProps } from './types';\nimport { dropdownComponentIds } from './dropdownComponentIds';\nimport { useTheme } from '~components/BladeProvider';\n// Reading directly because its not possible to get theme object on top level to be used in keyframes\nimport { size } from '~tokens/global';\nimport { makeSize } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { useBottomSheetAndDropdownGlue } from '~components/BottomSheet/BottomSheetContext';\nimport BaseBox from '~components/Box/BaseBox';\nimport { componentZIndices } from '~utils/componentZIndices';\nimport { OVERLAY_OFFSET, OVERLAY_TRANSITION_OFFSET } from '~components/BaseMenu/tokens';\n\nconst OVERLAY_PADDING: number = size['12']; // doesn't have to be exact. Just rough padding for floating ui to decide to show overlay on top or bottom\n\n/**\n * Overlay of dropdown\n *\n * Wrap your ActionList within this component\n */\nconst _DropdownOverlay = ({\n children,\n testID,\n zIndex = componentZIndices.dropdownOverlay,\n width,\n minWidth,\n maxWidth,\n referenceRef,\n defaultPlacement = 'bottom-start',\n _isNestedDropdown = false,\n}: DropdownOverlayProps): React.ReactElement | null => {\n const { isOpen, triggererRef, triggererWrapperRef, dropdownTriggerer, setIsOpen } = useDropdown();\n const { theme } = useTheme();\n const bottomSheetAndDropdownGlue = useBottomSheetAndDropdownGlue();\n\n const isMenu =\n (dropdownTriggerer !== dropdownComponentIds.triggers.SelectInput &&\n dropdownTriggerer !== dropdownComponentIds.triggers.SearchInput &&\n dropdownTriggerer !== dropdownComponentIds.triggers.AutoComplete &&\n referenceRef == undefined) ||\n _isNestedDropdown;\n\n const { refs, floatingStyles, context } = useFloating({\n open: isOpen,\n onOpenChange: setIsOpen,\n strategy: 'fixed',\n placement: defaultPlacement,\n elements: {\n // Input triggers have their ref on internal input element but we want width height of overall visible input hence wrapperRef is needed\n // We fallback to use `triggererRef` for triggers like button and link where wrapper is not needed\n // Checkout: https://github.com/razorpay/blade/pull/1559#discussion_r1305438920\n reference: (referenceRef?.current ??\n triggererWrapperRef.current ??\n triggererRef.current) as Element,\n },\n middleware: [\n offset({\n mainAxis: OVERLAY_OFFSET,\n }),\n flip({\n // eslint-disable-next-line @typescript-eslint/restrict-plus-operands\n padding: OVERLAY_OFFSET + OVERLAY_PADDING,\n }),\n sizeMiddleware({\n apply({ rects, elements }) {\n const overlayWidth = isMenu ? undefined : makeSize(rects.reference.width);\n const overlayMinWidth = isMenu ? makeSize(size['240']) : undefined;\n const overlayMaxWidth = isMenu ? makeSize(size['400']) : undefined;\n\n Object.assign(elements.floating.style, {\n // in menu, we have flexible width between min and max\n // in input triggers, we just take width of trigger\n width: width ?? overlayWidth,\n minWidth: minWidth ?? overlayMinWidth,\n maxWidth: maxWidth ?? overlayMaxWidth,\n });\n },\n }),\n ],\n whileElementsMounted: autoUpdate,\n });\n\n const dismiss = useDismiss(context);\n const { getFloatingProps } = useInteractions([dismiss]);\n\n const { isMounted, styles } = useTransitionStyles(context, {\n duration: theme.motion.duration.quick,\n initial: () => ({\n transform: `translateY(-${makeSize(OVERLAY_TRANSITION_OFFSET)})`,\n opacity: 0,\n }),\n });\n\n React.useEffect(() => {\n if (isOpen) {\n // On Safari clicking on a non input element doesn't focuses it https://bugs.webkit.org/show_bug.cgi?id=22261\n triggererRef.current?.focus();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isOpen]);\n\n return (\n <FloatingPortal>\n <BaseBox\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ref={refs.setFloating as any}\n style={floatingStyles}\n zIndex={zIndex}\n display={isMounted ? 'flex' : 'none'}\n {...getFloatingProps()}\n >\n <StyledDropdownOverlay\n isInBottomSheet={bottomSheetAndDropdownGlue?.dropdownHasBottomSheet}\n elevation={bottomSheetAndDropdownGlue?.dropdownHasBottomSheet ? undefined : 'midRaised'}\n style={{ ...styles }}\n width={width ? width : '100%'}\n minWidth={minWidth}\n maxWidth={maxWidth}\n {...metaAttribute({ name: MetaConstants.DropdownOverlay, testID })}\n >\n {children}\n </StyledDropdownOverlay>\n </BaseBox>\n </FloatingPortal>\n );\n};\n\nconst DropdownOverlay = assignWithoutSideEffects(_DropdownOverlay, {\n componentId: dropdownComponentIds.DropdownOverlay,\n});\n\nexport { DropdownOverlay };\n"],"names":["OVERLAY_PADDING","size","_DropdownOverlay","_ref","_ref2","_referenceRef$current","children","testID","_ref$zIndex","zIndex","componentZIndices","dropdownOverlay","width","minWidth","maxWidth","referenceRef","_ref$defaultPlacement","defaultPlacement","_ref$_isNestedDropdow","_isNestedDropdown","_useDropdown","useDropdown","isOpen","triggererRef","triggererWrapperRef","dropdownTriggerer","setIsOpen","_useTheme","useTheme","theme","bottomSheetAndDropdownGlue","useBottomSheetAndDropdownGlue","isMenu","dropdownComponentIds","triggers","SelectInput","SearchInput","AutoComplete","undefined","_useFloating","useFloating","open","onOpenChange","strategy","placement","elements","reference","current","middleware","offset","mainAxis","OVERLAY_OFFSET","flip","padding","sizeMiddleware","apply","_ref3","rects","overlayWidth","makeSize","overlayMinWidth","overlayMaxWidth","Object","assign","floating","style","whileElementsMounted","autoUpdate","refs","floatingStyles","context","dismiss","useDismiss","_useInteractions","useInteractions","getFloatingProps","_useTransitionStyles","useTransitionStyles","duration","motion","quick","initial","transform","concat","OVERLAY_TRANSITION_OFFSET","opacity","isMounted","styles","React","useEffect","_triggererRef$current","focus","_jsx","FloatingPortal","BaseBox","_objectSpread","ref","setFloating","display","StyledDropdownOverlay","isInBottomSheet","dropdownHasBottomSheet","elevation","metaAttribute","name","MetaConstants","DropdownOverlay","assignWithoutSideEffects","componentId"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA,IAAMA,eAAuB,GAAGC,IAAI,CAAC,IAAI,CAAC,CAAC;;AAE3C;AACA;AACA;AACA;AACA;AACA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAC,IAAA,EAUiC;EAAA,IAAAC,KAAA,EAAAC,qBAAA,CAAA;AAAA,EAAA,IATrDC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IACRC,MAAM,GAAAJ,IAAA,CAANI,MAAM;IAAAC,WAAA,GAAAL,IAAA,CACNM,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAA,KAAA,CAAA,GAAGE,iBAAiB,CAACC,eAAe,GAAAH,WAAA;IAC1CI,KAAK,GAAAT,IAAA,CAALS,KAAK;IACLC,QAAQ,GAAAV,IAAA,CAARU,QAAQ;IACRC,QAAQ,GAAAX,IAAA,CAARW,QAAQ;IACRC,YAAY,GAAAZ,IAAA,CAAZY,YAAY;IAAAC,qBAAA,GAAAb,IAAA,CACZc,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,cAAc,GAAAA,qBAAA;IAAAE,qBAAA,GAAAf,IAAA,CACjCgB,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA,CAAA;AAEzB,EAAA,IAAAE,YAAA,GAAoFC,WAAW,EAAE;IAAzFC,MAAM,GAAAF,YAAA,CAANE,MAAM;IAAEC,YAAY,GAAAH,YAAA,CAAZG,YAAY;IAAEC,mBAAmB,GAAAJ,YAAA,CAAnBI,mBAAmB;IAAEC,iBAAiB,GAAAL,YAAA,CAAjBK,iBAAiB;IAAEC,SAAS,GAAAN,YAAA,CAATM,SAAS,CAAA;AAC/E,EAAA,IAAAC,SAAA,GAAkBC,QAAQ,EAAE;IAApBC,KAAK,GAAAF,SAAA,CAALE,KAAK,CAAA;AACb,EAAA,IAAMC,0BAA0B,GAAGC,6BAA6B,EAAE,CAAA;AAElE,EAAA,IAAMC,MAAM,GACTP,iBAAiB,KAAKQ,oBAAoB,CAACC,QAAQ,CAACC,WAAW,IAC9DV,iBAAiB,KAAKQ,oBAAoB,CAACC,QAAQ,CAACE,WAAW,IAC/DX,iBAAiB,KAAKQ,oBAAoB,CAACC,QAAQ,CAACG,YAAY,IAChEtB,YAAY,IAAIuB,SAAS,IAC3BnB,iBAAiB,CAAA;EAEnB,IAAAoB,YAAA,GAA0CC,WAAW,CAAC;AACpDC,MAAAA,IAAI,EAAEnB,MAAM;AACZoB,MAAAA,YAAY,EAAEhB,SAAS;AACvBiB,MAAAA,QAAQ,EAAE,OAAO;AACjBC,MAAAA,SAAS,EAAE3B,gBAAgB;AAC3B4B,MAAAA,QAAQ,EAAE;AACR;AACA;AACA;QACAC,SAAS,EAAA,CAAA1C,KAAA,GAAA,CAAAC,qBAAA,GAAGU,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAEgC,OAAO,MAAA,IAAA,IAAA1C,qBAAA,KAAAA,KAAAA,CAAAA,GAAAA,qBAAA,GAC/BmB,mBAAmB,CAACuB,OAAO,MAAA3C,IAAAA,IAAAA,KAAA,KAAAA,KAAAA,CAAAA,GAAAA,KAAA,GAC3BmB,YAAY,CAACwB,OAAAA;OAChB;MACDC,UAAU,EAAE,CACVC,MAAM,CAAC;AACLC,QAAAA,QAAQ,EAAEC,cAAAA;OACX,CAAC,EACFC,IAAI,CAAC;AACH;QACAC,OAAO,EAAEF,cAAc,GAAGnD,eAAAA;OAC3B,CAAC,EACFsD,MAAc,CAAC;AACbC,QAAAA,KAAK,EAALA,SAAAA,KAAKA,CAAAC,KAAA,EAAsB;AAAA,UAAA,IAAnBC,KAAK,GAAAD,KAAA,CAALC,KAAK;YAAEZ,QAAQ,GAAAW,KAAA,CAARX,QAAQ,CAAA;AACrB,UAAA,IAAMa,YAAY,GAAG1B,MAAM,GAAGM,SAAS,GAAGqB,QAAQ,CAACF,KAAK,CAACX,SAAS,CAAClC,KAAK,CAAC,CAAA;AACzE,UAAA,IAAMgD,eAAe,GAAG5B,MAAM,GAAG2B,QAAQ,CAAC1D,IAAI,CAAC,KAAK,CAAC,CAAC,GAAGqC,SAAS,CAAA;AAClE,UAAA,IAAMuB,eAAe,GAAG7B,MAAM,GAAG2B,QAAQ,CAAC1D,IAAI,CAAC,KAAK,CAAC,CAAC,GAAGqC,SAAS,CAAA;UAElEwB,MAAM,CAACC,MAAM,CAAClB,QAAQ,CAACmB,QAAQ,CAACC,KAAK,EAAE;AACrC;AACA;AACArD,YAAAA,KAAK,EAAEA,KAAK,KAAA,IAAA,IAALA,KAAK,KAALA,KAAAA,CAAAA,GAAAA,KAAK,GAAI8C,YAAY;AAC5B7C,YAAAA,QAAQ,EAAEA,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAARA,KAAAA,CAAAA,GAAAA,QAAQ,GAAI+C,eAAe;AACrC9C,YAAAA,QAAQ,EAAEA,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAAA,KAAA,CAAA,GAARA,QAAQ,GAAI+C,eAAAA;AACxB,WAAC,CAAC,CAAA;AACJ,SAAA;AACF,OAAC,CAAC,CACH;AACDK,MAAAA,oBAAoB,EAAEC,UAAAA;AACxB,KAAC,CAAC;IAtCMC,IAAI,GAAA7B,YAAA,CAAJ6B,IAAI;IAAEC,cAAc,GAAA9B,YAAA,CAAd8B,cAAc;IAAEC,OAAO,GAAA/B,YAAA,CAAP+B,OAAO,CAAA;AAwCrC,EAAA,IAAMC,OAAO,GAAGC,UAAU,CAACF,OAAO,CAAC,CAAA;AACnC,EAAA,IAAAG,gBAAA,GAA6BC,eAAe,CAAC,CAACH,OAAO,CAAC,CAAC;IAA/CI,gBAAgB,GAAAF,gBAAA,CAAhBE,gBAAgB,CAAA;AAExB,EAAA,IAAAC,oBAAA,GAA8BC,mBAAmB,CAACP,OAAO,EAAE;AACzDQ,MAAAA,QAAQ,EAAEjD,KAAK,CAACkD,MAAM,CAACD,QAAQ,CAACE,KAAK;MACrCC,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAS;AACdC,UAAAA,SAAS,iBAAAC,MAAA,CAAiBxB,QAAQ,CAACyB,yBAAyB,CAAC,EAAG,GAAA,CAAA;AAChEC,UAAAA,OAAO,EAAE,CAAA;SACV,CAAA;AAAA,OAAA;AACH,KAAC,CAAC;IANMC,SAAS,GAAAV,oBAAA,CAATU,SAAS;IAAEC,MAAM,GAAAX,oBAAA,CAANW,MAAM,CAAA;EAQzBC,cAAK,CAACC,SAAS,CAAC,YAAM;AACpB,IAAA,IAAInE,MAAM,EAAE;AAAA,MAAA,IAAAoE,qBAAA,CAAA;AACV;AACA,MAAA,CAAAA,qBAAA,GAAAnE,YAAY,CAACwB,OAAO,MAAA,IAAA,IAAA2C,qBAAA,KAAA,KAAA,CAAA,IAApBA,qBAAA,CAAsBC,KAAK,EAAE,CAAA;AAC/B,KAAA;AACA;AACF,GAAC,EAAE,CAACrE,MAAM,CAAC,CAAC,CAAA;EAEZ,oBACEsE,GAAA,CAACC,cAAc,EAAA;IAAAvF,QAAA,eACbsF,GAAA,CAACE,OAAAA;AACC;MAAAC,aAAA,CAAAA,aAAA,CAAA;MACAC,GAAG,EAAE5B,IAAI,CAAC6B,WAAmB;AAC7BhC,MAAAA,KAAK,EAAEI,cAAe;AACtB5D,MAAAA,MAAM,EAAEA,MAAO;AACfyF,MAAAA,OAAO,EAAEZ,SAAS,GAAG,MAAM,GAAG,MAAA;KAC1BX,EAAAA,gBAAgB,EAAE,CAAA,EAAA,EAAA,EAAA;AAAArE,MAAAA,QAAA,eAEtBsF,GAAA,CAACO,qBAAqB,EAAAJ,aAAA,CAAAA,aAAA,CAAA;AACpBK,QAAAA,eAAe,EAAEtE,0BAA0B,KAAA,IAAA,IAA1BA,0BAA0B,KAA1BA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,0BAA0B,CAAEuE,sBAAuB;QACpEC,SAAS,EAAExE,0BAA0B,KAAA,IAAA,IAA1BA,0BAA0B,KAAA,KAAA,CAAA,IAA1BA,0BAA0B,CAAEuE,sBAAsB,GAAG/D,SAAS,GAAG,WAAY;AACxF2B,QAAAA,KAAK,EAAA8B,aAAA,CAAOR,EAAAA,EAAAA,MAAM,CAAG;AACrB3E,QAAAA,KAAK,EAAEA,KAAK,GAAGA,KAAK,GAAG,MAAO;AAC9BC,QAAAA,QAAQ,EAAEA,QAAS;AACnBC,QAAAA,QAAQ,EAAEA,QAAAA;AAAS,OAAA,EACfyF,aAAa,CAAC;QAAEC,IAAI,EAAEC,aAAa,CAACC,eAAe;AAAEnG,QAAAA,MAAM,EAANA,MAAAA;AAAO,OAAC,CAAC,CAAA,EAAA,EAAA,EAAA;AAAAD,QAAAA,QAAA,EAEjEA,QAAAA;OACoB,CAAA,CAAA;KAChB,CAAA,CAAA;AAAC,GACI,CAAC,CAAA;AAErB,CAAC,CAAA;AAED,IAAMoG,eAAe,gBAAGC,wBAAwB,CAACzG,gBAAgB,EAAE;EACjE0G,WAAW,EAAE3E,oBAAoB,CAACyE,eAAAA;AACpC,CAAC;;;;"}
|
|
1
|
+
{"version":3,"file":"DropdownOverlay.web.js","sources":["../../../../../../src/components/Dropdown/DropdownOverlay.web.tsx"],"sourcesContent":["import React from 'react';\nimport {\n autoUpdate,\n offset,\n size as sizeMiddleware,\n useFloating,\n useTransitionStyles,\n flip,\n FloatingPortal,\n useDismiss,\n useInteractions,\n} from '@floating-ui/react';\nimport { useDropdown } from './useDropdown';\nimport { StyledDropdownOverlay } from './StyledDropdownOverlay';\nimport type { DropdownOverlayProps } from './types';\nimport { dropdownComponentIds } from './dropdownComponentIds';\nimport { useTheme } from '~components/BladeProvider';\n// Reading directly because its not possible to get theme object on top level to be used in keyframes\nimport { size } from '~tokens/global';\nimport { makeSize } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { useBottomSheetAndDropdownGlue } from '~components/BottomSheet/BottomSheetContext';\nimport BaseBox from '~components/Box/BaseBox';\nimport { componentZIndices } from '~utils/componentZIndices';\nimport { OVERLAY_OFFSET, OVERLAY_TRANSITION_OFFSET } from '~components/BaseMenu/tokens';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst OVERLAY_PADDING: number = size['12']; // doesn't have to be exact. Just rough padding for floating ui to decide to show overlay on top or bottom\n\n/**\n * Overlay of dropdown\n *\n * Wrap your ActionList within this component\n */\nconst _DropdownOverlay = ({\n children,\n testID,\n zIndex = componentZIndices.dropdownOverlay,\n width,\n minWidth,\n maxWidth,\n referenceRef,\n defaultPlacement = 'bottom-start',\n _isNestedDropdown = false,\n ...dataAnalyticsProps\n}: DropdownOverlayProps): React.ReactElement | null => {\n const { isOpen, triggererRef, triggererWrapperRef, dropdownTriggerer, setIsOpen } = useDropdown();\n const { theme } = useTheme();\n const bottomSheetAndDropdownGlue = useBottomSheetAndDropdownGlue();\n\n const isMenu =\n (dropdownTriggerer !== dropdownComponentIds.triggers.SelectInput &&\n dropdownTriggerer !== dropdownComponentIds.triggers.SearchInput &&\n dropdownTriggerer !== dropdownComponentIds.triggers.AutoComplete &&\n referenceRef == undefined) ||\n _isNestedDropdown;\n\n const { refs, floatingStyles, context } = useFloating({\n open: isOpen,\n onOpenChange: setIsOpen,\n strategy: 'fixed',\n placement: defaultPlacement,\n elements: {\n // Input triggers have their ref on internal input element but we want width height of overall visible input hence wrapperRef is needed\n // We fallback to use `triggererRef` for triggers like button and link where wrapper is not needed\n // Checkout: https://github.com/razorpay/blade/pull/1559#discussion_r1305438920\n reference: (referenceRef?.current ??\n triggererWrapperRef.current ??\n triggererRef.current) as Element,\n },\n middleware: [\n offset({\n mainAxis: OVERLAY_OFFSET,\n }),\n flip({\n // eslint-disable-next-line @typescript-eslint/restrict-plus-operands\n padding: OVERLAY_OFFSET + OVERLAY_PADDING,\n }),\n sizeMiddleware({\n apply({ rects, elements }) {\n const overlayWidth = isMenu ? undefined : makeSize(rects.reference.width);\n const overlayMinWidth = isMenu ? makeSize(size['240']) : undefined;\n const overlayMaxWidth = isMenu ? makeSize(size['400']) : undefined;\n\n Object.assign(elements.floating.style, {\n // in menu, we have flexible width between min and max\n // in input triggers, we just take width of trigger\n width: width ?? overlayWidth,\n minWidth: minWidth ?? overlayMinWidth,\n maxWidth: maxWidth ?? overlayMaxWidth,\n });\n },\n }),\n ],\n whileElementsMounted: autoUpdate,\n });\n\n const dismiss = useDismiss(context);\n const { getFloatingProps } = useInteractions([dismiss]);\n\n const { isMounted, styles } = useTransitionStyles(context, {\n duration: theme.motion.duration.quick,\n initial: () => ({\n transform: `translateY(-${makeSize(OVERLAY_TRANSITION_OFFSET)})`,\n opacity: 0,\n }),\n });\n\n React.useEffect(() => {\n if (isOpen) {\n // On Safari clicking on a non input element doesn't focuses it https://bugs.webkit.org/show_bug.cgi?id=22261\n triggererRef.current?.focus();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isOpen]);\n\n return (\n <FloatingPortal>\n <BaseBox\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ref={refs.setFloating as any}\n style={floatingStyles}\n zIndex={zIndex}\n display={isMounted ? 'flex' : 'none'}\n {...getFloatingProps()}\n >\n <StyledDropdownOverlay\n isInBottomSheet={bottomSheetAndDropdownGlue?.dropdownHasBottomSheet}\n elevation={bottomSheetAndDropdownGlue?.dropdownHasBottomSheet ? undefined : 'midRaised'}\n style={{ ...styles }}\n width={width ? width : '100%'}\n minWidth={minWidth}\n maxWidth={maxWidth}\n {...metaAttribute({ name: MetaConstants.DropdownOverlay, testID })}\n {...makeAnalyticsAttribute(dataAnalyticsProps)}\n >\n {children}\n </StyledDropdownOverlay>\n </BaseBox>\n </FloatingPortal>\n );\n};\n\nconst DropdownOverlay = assignWithoutSideEffects(_DropdownOverlay, {\n componentId: dropdownComponentIds.DropdownOverlay,\n});\n\nexport { DropdownOverlay };\n"],"names":["OVERLAY_PADDING","size","_DropdownOverlay","_ref","_ref2","_referenceRef$current","children","testID","_ref$zIndex","zIndex","componentZIndices","dropdownOverlay","width","minWidth","maxWidth","referenceRef","_ref$defaultPlacement","defaultPlacement","_ref$_isNestedDropdow","_isNestedDropdown","dataAnalyticsProps","_objectWithoutProperties","_excluded","_useDropdown","useDropdown","isOpen","triggererRef","triggererWrapperRef","dropdownTriggerer","setIsOpen","_useTheme","useTheme","theme","bottomSheetAndDropdownGlue","useBottomSheetAndDropdownGlue","isMenu","dropdownComponentIds","triggers","SelectInput","SearchInput","AutoComplete","undefined","_useFloating","useFloating","open","onOpenChange","strategy","placement","elements","reference","current","middleware","offset","mainAxis","OVERLAY_OFFSET","flip","padding","sizeMiddleware","apply","_ref3","rects","overlayWidth","makeSize","overlayMinWidth","overlayMaxWidth","Object","assign","floating","style","whileElementsMounted","autoUpdate","refs","floatingStyles","context","dismiss","useDismiss","_useInteractions","useInteractions","getFloatingProps","_useTransitionStyles","useTransitionStyles","duration","motion","quick","initial","transform","concat","OVERLAY_TRANSITION_OFFSET","opacity","isMounted","styles","React","useEffect","_triggererRef$current","focus","_jsx","FloatingPortal","BaseBox","_objectSpread","ref","setFloating","display","StyledDropdownOverlay","isInBottomSheet","dropdownHasBottomSheet","elevation","metaAttribute","name","MetaConstants","DropdownOverlay","makeAnalyticsAttribute","assignWithoutSideEffects","componentId"],"mappings":"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"}
|
|
@@ -519,6 +519,7 @@ var BaseDatePicker = function BaseDatePicker(_ref) {
|
|
|
519
519
|
var presetValue = preset === null || preset === void 0 ? void 0 : preset(currentDate);
|
|
520
520
|
setControlledValue(presetValue);
|
|
521
521
|
setSelectedPreset(presetValue);
|
|
522
|
+
handleApply();
|
|
522
523
|
},
|
|
523
524
|
onOpenCalendar: function onOpenCalendar() {
|
|
524
525
|
controllableSetIsOpen(function () {
|
|
@@ -1 +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 { CalendarFooter } from './CalendarFooter.web';\nimport { DatePickerInput } from './DateInput.web';\nimport { DatePickerFilterChip } from './FilterChipDatePicker/DatePickerFilterChip.web';\nimport { renderPresetDropdown } from './QuickSelection/renderPresetDropdown.web';\nimport { PresetSideBar } from './QuickSelection/PresetSideBar.web';\nimport { usePresetState } from './QuickSelection/usePresetState';\nimport { shiftTimezone } from './shiftTimezone';\nimport { useDatesState } from './useDatesState';\nimport { usePopup } from './usePopup';\nimport { convertIntlToDayjsLocale, loadScript } from './utils';\nimport { DatePickerProvider } from './DatePickerContext';\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\n// Calendar dimensions for consistent layout\nconst CALENDAR_HEIGHTS = {\n // Height includes: Calendar grid (6 weeks * ~44px) + header (~48px) + footer actions (~64px) + padding\n // moved to auto since we are exposing footer slot\n DAY_PICKER_WITH_FOOTER: 'auto',\n} as const;\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 labelSuffix,\n labelTrailing,\n showFooterActions = true,\n footer,\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 // Sync selectedPreset with controlledValue for initial preset matching\n React.useEffect(() => {\n if (!isSingle && controlledValue) {\n setSelectedPreset(controlledValue as DatesRangeValue);\n }\n }, []);\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 setPicker(() => defaultPicker);\n },\n });\n\n const currentDate = shiftTimezone('add', new Date());\n\n // Use the hook to get the calculated preset values\n const { presetStates, selectedPresetLabel, effectiveSelectionType } = usePresetState({\n presets: presets || [],\n selectedPreset,\n currentDate,\n });\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 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') {\n handleCancel();\n }\n },\n referenceRef,\n crossAxisOffset: -28,\n });\n\n const shouldRenderPresets = !isSingle && !isMobile;\n\n // MOBILE: Blur input when bottom sheet opens to prevent keyboard + sheet overlap\n // Use setTimeout(0) instead of requestAnimationFrame: BottomSheet captures document.activeElement\n // on open for focus restoration. Deferring blur to next macrotask ensures BottomSheet first\n // snapshots the focused input, then we blur to hide keyboard. On close, focus auto-restores.\n React.useEffect(() => {\n if (isMobile && controllableIsOpen) {\n const refEl = (refs.reference?.current as unknown) as { blur?: () => void } | null;\n if (refEl?.blur) {\n setTimeout(() => {\n refEl.blur?.();\n }, 0);\n }\n }\n }, [isMobile, controllableIsOpen, refs.reference]);\n\n const content = (\n <>\n {shouldRenderPresets ? (\n <PresetSideBar\n onSelection={(preset: (date: Date) => DatesRangeValue) => {\n const presetValue = preset?.(currentDate);\n setControlledValue(presetValue);\n setSelectedPreset(presetValue);\n }}\n presetStates={presetStates}\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={\n _picker === 'day' && showFooterActions ? CALENDAR_HEIGHTS.DAY_PICKER_WITH_FOOTER : 'auto'\n }\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, 'day');\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, 'month');\n }}\n onYearSelect={(date) => {\n props?.onYearSelect?.(date);\n onDateChange(date, 'year');\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 {showFooterActions &&\n (isMobile ? null : (\n <CalendarFooter\n isButtonDisabled={applyButtonDisabled}\n onApply={handleApply}\n onCancel={handleCancel}\n footer={footer}\n selectionType={_selectionType}\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 <DatePickerProvider isDatePickerBodyOpen={controllableIsOpen}>\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 labelSuffix={labelSuffix}\n labelTrailing={labelTrailing}\n setControlledValue={setControlledValue}\n selectedPreset={selectedPreset}\n excludeDate={props.excludeDate}\n minDate={props.minDate}\n maxDate={props.maxDate}\n // Effective Selection type should only be use for selectionType 'range'\n effectiveSelectionType={isSingle ? selectionType : effectiveSelectionType}\n leadingDropdown={\n presets && !isSingle\n ? renderPresetDropdown({\n onSelection: (preset: (date: Date) => DatesRangeValue) => {\n const presetValue = preset?.(currentDate);\n setControlledValue(presetValue);\n setSelectedPreset(presetValue);\n },\n onOpenCalendar: () => {\n controllableSetIsOpen(() => true);\n },\n presetStates,\n selectedPresetLabel,\n })\n : undefined\n }\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 && presets && (\n <PresetSideBar\n isMobile\n presetStates={presetStates}\n onSelection={(preset: (date: Date) => DatesRangeValue) => {\n const presetValue = preset?.(currentDate);\n setControlledValue(presetValue);\n setSelectedPreset(presetValue);\n }}\n />\n )}\n </BottomSheetBody>\n {showFooterActions && (\n <BottomSheetFooter>\n <CalendarFooter\n onCancel={handleCancel}\n onApply={handleApply}\n footer={footer}\n selectionType={_selectionType}\n />\n </BottomSheetFooter>\n )}\n </BottomSheet>\n ) : (\n isMounted && (\n <FloatingPortal>\n <FloatingFocusManager\n initialFocus={-1}\n context={context}\n guards={true}\n order={['reference', 'content']}\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 </DatePickerProvider>\n </DatesProvider>\n </MantineProvider>\n );\n};\n\nexport { BaseDatePicker };\n"],"names":["CALENDAR_HEIGHTS","DAY_PICKER_WITH_FOOTER","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","labelSuffix","labelTrailing","_ref$showFooterAction","showFooterActions","footer","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","useEffect","_useControllableState3","_useControllableState4","controllableIsOpen","controllableSetIsOpen","currentDate","shiftTimezone","Date","_usePresetState","usePresetState","presetStates","selectedPresetLabel","effectiveSelectionType","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","isMobile","useIsMobile","titleId","useId","_usePopup","usePopup","enabled","placement","open","reason","crossAxisOffset","context","refs","isMounted","floatingStyles","animationStyles","getReferenceProps","getFloatingProps","shouldRenderPresets","_refs$reference","refEl","reference","current","blur","setTimeout","_refEl$blur","call","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","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","DatePickerProvider","isDatePickerBodyOpen","getStyledProps","metaAttribute","MetaConstants","DatePicker","DatePickerFilterChip","ref","inputRef","referenceProps","placeholder","onClearButtonChange","makeAnalyticsAttribute","DatePickerInput","excludeDate","minDate","maxDate","leadingDropdown","renderPresetDropdown","onOpenCalendar","undefined","BottomSheet","snapPoints","onDismiss","BottomSheetHeader","title","BottomSheetBody","BottomSheetFooter","FloatingPortal","FloatingFocusManager","initialFocus","guards","order","setFloating","style","makeAccessible","labelledBy","borderColor","borderWidth","borderStyle","borderRadius","overflow","minWidth","boxShadow","elevation","lowRaised"],"mappings":"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"}
|
|
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 { CalendarFooter } from './CalendarFooter.web';\nimport { DatePickerInput } from './DateInput.web';\nimport { DatePickerFilterChip } from './FilterChipDatePicker/DatePickerFilterChip.web';\nimport { renderPresetDropdown } from './QuickSelection/renderPresetDropdown.web';\nimport { PresetSideBar } from './QuickSelection/PresetSideBar.web';\nimport { usePresetState } from './QuickSelection/usePresetState';\nimport { shiftTimezone } from './shiftTimezone';\nimport { useDatesState } from './useDatesState';\nimport { usePopup } from './usePopup';\nimport { convertIntlToDayjsLocale, loadScript } from './utils';\nimport { DatePickerProvider } from './DatePickerContext';\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\n// Calendar dimensions for consistent layout\nconst CALENDAR_HEIGHTS = {\n // Height includes: Calendar grid (6 weeks * ~44px) + header (~48px) + footer actions (~64px) + padding\n // moved to auto since we are exposing footer slot\n DAY_PICKER_WITH_FOOTER: 'auto',\n} as const;\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 labelSuffix,\n labelTrailing,\n showFooterActions = true,\n footer,\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 // Sync selectedPreset with controlledValue for initial preset matching\n React.useEffect(() => {\n if (!isSingle && controlledValue) {\n setSelectedPreset(controlledValue as DatesRangeValue);\n }\n }, []);\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 setPicker(() => defaultPicker);\n },\n });\n\n const currentDate = shiftTimezone('add', new Date());\n\n // Use the hook to get the calculated preset values\n const { presetStates, selectedPresetLabel, effectiveSelectionType } = usePresetState({\n presets: presets || [],\n selectedPreset,\n currentDate,\n });\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 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') {\n handleCancel();\n }\n },\n referenceRef,\n crossAxisOffset: -28,\n });\n\n const shouldRenderPresets = !isSingle && !isMobile;\n\n // MOBILE: Blur input when bottom sheet opens to prevent keyboard + sheet overlap\n // Use setTimeout(0) instead of requestAnimationFrame: BottomSheet captures document.activeElement\n // on open for focus restoration. Deferring blur to next macrotask ensures BottomSheet first\n // snapshots the focused input, then we blur to hide keyboard. On close, focus auto-restores.\n React.useEffect(() => {\n if (isMobile && controllableIsOpen) {\n const refEl = (refs.reference?.current as unknown) as { blur?: () => void } | null;\n if (refEl?.blur) {\n setTimeout(() => {\n refEl.blur?.();\n }, 0);\n }\n }\n }, [isMobile, controllableIsOpen, refs.reference]);\n\n const content = (\n <>\n {shouldRenderPresets ? (\n <PresetSideBar\n onSelection={(preset: (date: Date) => DatesRangeValue) => {\n const presetValue = preset?.(currentDate);\n setControlledValue(presetValue);\n setSelectedPreset(presetValue);\n }}\n presetStates={presetStates}\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={\n _picker === 'day' && showFooterActions ? CALENDAR_HEIGHTS.DAY_PICKER_WITH_FOOTER : 'auto'\n }\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, 'day');\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, 'month');\n }}\n onYearSelect={(date) => {\n props?.onYearSelect?.(date);\n onDateChange(date, 'year');\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 {showFooterActions &&\n (isMobile ? null : (\n <CalendarFooter\n isButtonDisabled={applyButtonDisabled}\n onApply={handleApply}\n onCancel={handleCancel}\n footer={footer}\n selectionType={_selectionType}\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 <DatePickerProvider isDatePickerBodyOpen={controllableIsOpen}>\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 labelSuffix={labelSuffix}\n labelTrailing={labelTrailing}\n setControlledValue={setControlledValue}\n selectedPreset={selectedPreset}\n excludeDate={props.excludeDate}\n minDate={props.minDate}\n maxDate={props.maxDate}\n // Effective Selection type should only be use for selectionType 'range'\n effectiveSelectionType={isSingle ? selectionType : effectiveSelectionType}\n leadingDropdown={\n presets && !isSingle\n ? renderPresetDropdown({\n onSelection: (preset: (date: Date) => DatesRangeValue) => {\n const presetValue = preset?.(currentDate);\n setControlledValue(presetValue);\n setSelectedPreset(presetValue);\n handleApply();\n },\n onOpenCalendar: () => {\n controllableSetIsOpen(() => true);\n },\n presetStates,\n selectedPresetLabel,\n })\n : undefined\n }\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 && presets && (\n <PresetSideBar\n isMobile\n presetStates={presetStates}\n onSelection={(preset: (date: Date) => DatesRangeValue) => {\n const presetValue = preset?.(currentDate);\n setControlledValue(presetValue);\n setSelectedPreset(presetValue);\n }}\n />\n )}\n </BottomSheetBody>\n {showFooterActions && (\n <BottomSheetFooter>\n <CalendarFooter\n onCancel={handleCancel}\n onApply={handleApply}\n footer={footer}\n selectionType={_selectionType}\n />\n </BottomSheetFooter>\n )}\n </BottomSheet>\n ) : (\n isMounted && (\n <FloatingPortal>\n <FloatingFocusManager\n initialFocus={-1}\n context={context}\n guards={true}\n order={['reference', 'content']}\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 </DatePickerProvider>\n </DatesProvider>\n </MantineProvider>\n );\n};\n\nexport { BaseDatePicker };\n"],"names":["CALENDAR_HEIGHTS","DAY_PICKER_WITH_FOOTER","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","labelSuffix","labelTrailing","_ref$showFooterAction","showFooterActions","footer","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","useEffect","_useControllableState3","_useControllableState4","controllableIsOpen","controllableSetIsOpen","currentDate","shiftTimezone","Date","_usePresetState","usePresetState","presetStates","selectedPresetLabel","effectiveSelectionType","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","isMobile","useIsMobile","titleId","useId","_usePopup","usePopup","enabled","placement","open","reason","crossAxisOffset","context","refs","isMounted","floatingStyles","animationStyles","getReferenceProps","getFloatingProps","shouldRenderPresets","_refs$reference","refEl","reference","current","blur","setTimeout","_refEl$blur","call","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","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","DatePickerProvider","isDatePickerBodyOpen","getStyledProps","metaAttribute","MetaConstants","DatePicker","DatePickerFilterChip","ref","inputRef","referenceProps","placeholder","onClearButtonChange","makeAnalyticsAttribute","DatePickerInput","excludeDate","minDate","maxDate","leadingDropdown","renderPresetDropdown","onOpenCalendar","undefined","BottomSheet","snapPoints","onDismiss","BottomSheetHeader","title","BottomSheetBody","BottomSheetFooter","FloatingPortal","FloatingFocusManager","initialFocus","guards","order","setFloating","style","makeAccessible","labelledBy","borderColor","borderWidth","borderStyle","borderRadius","overflow","minWidth","boxShadow","elevation","lowRaised"],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
2
3
|
import React__default from 'react';
|
|
3
4
|
import { useFloating, offset, flip, size as size$1, autoUpdate, useDismiss, useInteractions, useTransitionStyles, FloatingPortal } from '@floating-ui/react';
|
|
4
5
|
import { useDropdown } from './useDropdown.js';
|
|
@@ -13,6 +14,7 @@ import { useBottomSheetAndDropdownGlue } from '../BottomSheet/BottomSheetContext
|
|
|
13
14
|
import '../Box/BaseBox/index.js';
|
|
14
15
|
import { componentZIndices } from '../../utils/componentZIndices.js';
|
|
15
16
|
import { OVERLAY_OFFSET, OVERLAY_TRANSITION_OFFSET } from '../BaseMenu/tokens.js';
|
|
17
|
+
import '../../utils/makeAnalyticsAttribute/index.js';
|
|
16
18
|
import { jsx } from 'react/jsx-runtime';
|
|
17
19
|
import { size } from '../../tokens/global/size.js';
|
|
18
20
|
import useTheme from '../BladeProvider/useTheme.js';
|
|
@@ -20,8 +22,10 @@ import { makeSize } from '../../utils/makeSize/makeSize.js';
|
|
|
20
22
|
import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
|
|
21
23
|
import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
|
|
22
24
|
import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
|
|
25
|
+
import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
|
|
23
26
|
import { assignWithoutSideEffects } from '../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
|
|
24
27
|
|
|
28
|
+
var _excluded = ["children", "testID", "zIndex", "width", "minWidth", "maxWidth", "referenceRef", "defaultPlacement", "_isNestedDropdown"];
|
|
25
29
|
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
30
|
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
31
|
var OVERLAY_PADDING = size['12']; // doesn't have to be exact. Just rough padding for floating ui to decide to show overlay on top or bottom
|
|
@@ -44,7 +48,8 @@ var _DropdownOverlay = function _DropdownOverlay(_ref) {
|
|
|
44
48
|
_ref$defaultPlacement = _ref.defaultPlacement,
|
|
45
49
|
defaultPlacement = _ref$defaultPlacement === void 0 ? 'bottom-start' : _ref$defaultPlacement,
|
|
46
50
|
_ref$_isNestedDropdow = _ref._isNestedDropdown,
|
|
47
|
-
_isNestedDropdown = _ref$_isNestedDropdow === void 0 ? false : _ref$_isNestedDropdow
|
|
51
|
+
_isNestedDropdown = _ref$_isNestedDropdow === void 0 ? false : _ref$_isNestedDropdow,
|
|
52
|
+
dataAnalyticsProps = _objectWithoutProperties(_ref, _excluded);
|
|
48
53
|
var _useDropdown = useDropdown(),
|
|
49
54
|
isOpen = _useDropdown.isOpen,
|
|
50
55
|
triggererRef = _useDropdown.triggererRef,
|
|
@@ -123,7 +128,7 @@ var _DropdownOverlay = function _DropdownOverlay(_ref) {
|
|
|
123
128
|
zIndex: zIndex,
|
|
124
129
|
display: isMounted ? 'flex' : 'none'
|
|
125
130
|
}, getFloatingProps()), {}, {
|
|
126
|
-
children: /*#__PURE__*/jsx(StyledDropdownOverlay, _objectSpread(_objectSpread({
|
|
131
|
+
children: /*#__PURE__*/jsx(StyledDropdownOverlay, _objectSpread(_objectSpread(_objectSpread({
|
|
127
132
|
isInBottomSheet: bottomSheetAndDropdownGlue === null || bottomSheetAndDropdownGlue === void 0 ? void 0 : bottomSheetAndDropdownGlue.dropdownHasBottomSheet,
|
|
128
133
|
elevation: bottomSheetAndDropdownGlue !== null && bottomSheetAndDropdownGlue !== void 0 && bottomSheetAndDropdownGlue.dropdownHasBottomSheet ? undefined : 'midRaised',
|
|
129
134
|
style: _objectSpread({}, styles),
|
|
@@ -133,7 +138,7 @@ var _DropdownOverlay = function _DropdownOverlay(_ref) {
|
|
|
133
138
|
}, metaAttribute({
|
|
134
139
|
name: MetaConstants.DropdownOverlay,
|
|
135
140
|
testID: testID
|
|
136
|
-
})), {}, {
|
|
141
|
+
})), makeAnalyticsAttribute(dataAnalyticsProps)), {}, {
|
|
137
142
|
children: children
|
|
138
143
|
}))
|
|
139
144
|
}))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropdownOverlay.web.js","sources":["../../../../../../src/components/Dropdown/DropdownOverlay.web.tsx"],"sourcesContent":["import React from 'react';\nimport {\n autoUpdate,\n offset,\n size as sizeMiddleware,\n useFloating,\n useTransitionStyles,\n flip,\n FloatingPortal,\n useDismiss,\n useInteractions,\n} from '@floating-ui/react';\nimport { useDropdown } from './useDropdown';\nimport { StyledDropdownOverlay } from './StyledDropdownOverlay';\nimport type { DropdownOverlayProps } from './types';\nimport { dropdownComponentIds } from './dropdownComponentIds';\nimport { useTheme } from '~components/BladeProvider';\n// Reading directly because its not possible to get theme object on top level to be used in keyframes\nimport { size } from '~tokens/global';\nimport { makeSize } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { useBottomSheetAndDropdownGlue } from '~components/BottomSheet/BottomSheetContext';\nimport BaseBox from '~components/Box/BaseBox';\nimport { componentZIndices } from '~utils/componentZIndices';\nimport { OVERLAY_OFFSET, OVERLAY_TRANSITION_OFFSET } from '~components/BaseMenu/tokens';\n\nconst OVERLAY_PADDING: number = size['12']; // doesn't have to be exact. Just rough padding for floating ui to decide to show overlay on top or bottom\n\n/**\n * Overlay of dropdown\n *\n * Wrap your ActionList within this component\n */\nconst _DropdownOverlay = ({\n children,\n testID,\n zIndex = componentZIndices.dropdownOverlay,\n width,\n minWidth,\n maxWidth,\n referenceRef,\n defaultPlacement = 'bottom-start',\n _isNestedDropdown = false,\n}: DropdownOverlayProps): React.ReactElement | null => {\n const { isOpen, triggererRef, triggererWrapperRef, dropdownTriggerer, setIsOpen } = useDropdown();\n const { theme } = useTheme();\n const bottomSheetAndDropdownGlue = useBottomSheetAndDropdownGlue();\n\n const isMenu =\n (dropdownTriggerer !== dropdownComponentIds.triggers.SelectInput &&\n dropdownTriggerer !== dropdownComponentIds.triggers.SearchInput &&\n dropdownTriggerer !== dropdownComponentIds.triggers.AutoComplete &&\n referenceRef == undefined) ||\n _isNestedDropdown;\n\n const { refs, floatingStyles, context } = useFloating({\n open: isOpen,\n onOpenChange: setIsOpen,\n strategy: 'fixed',\n placement: defaultPlacement,\n elements: {\n // Input triggers have their ref on internal input element but we want width height of overall visible input hence wrapperRef is needed\n // We fallback to use `triggererRef` for triggers like button and link where wrapper is not needed\n // Checkout: https://github.com/razorpay/blade/pull/1559#discussion_r1305438920\n reference: (referenceRef?.current ??\n triggererWrapperRef.current ??\n triggererRef.current) as Element,\n },\n middleware: [\n offset({\n mainAxis: OVERLAY_OFFSET,\n }),\n flip({\n // eslint-disable-next-line @typescript-eslint/restrict-plus-operands\n padding: OVERLAY_OFFSET + OVERLAY_PADDING,\n }),\n sizeMiddleware({\n apply({ rects, elements }) {\n const overlayWidth = isMenu ? undefined : makeSize(rects.reference.width);\n const overlayMinWidth = isMenu ? makeSize(size['240']) : undefined;\n const overlayMaxWidth = isMenu ? makeSize(size['400']) : undefined;\n\n Object.assign(elements.floating.style, {\n // in menu, we have flexible width between min and max\n // in input triggers, we just take width of trigger\n width: width ?? overlayWidth,\n minWidth: minWidth ?? overlayMinWidth,\n maxWidth: maxWidth ?? overlayMaxWidth,\n });\n },\n }),\n ],\n whileElementsMounted: autoUpdate,\n });\n\n const dismiss = useDismiss(context);\n const { getFloatingProps } = useInteractions([dismiss]);\n\n const { isMounted, styles } = useTransitionStyles(context, {\n duration: theme.motion.duration.quick,\n initial: () => ({\n transform: `translateY(-${makeSize(OVERLAY_TRANSITION_OFFSET)})`,\n opacity: 0,\n }),\n });\n\n React.useEffect(() => {\n if (isOpen) {\n // On Safari clicking on a non input element doesn't focuses it https://bugs.webkit.org/show_bug.cgi?id=22261\n triggererRef.current?.focus();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isOpen]);\n\n return (\n <FloatingPortal>\n <BaseBox\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ref={refs.setFloating as any}\n style={floatingStyles}\n zIndex={zIndex}\n display={isMounted ? 'flex' : 'none'}\n {...getFloatingProps()}\n >\n <StyledDropdownOverlay\n isInBottomSheet={bottomSheetAndDropdownGlue?.dropdownHasBottomSheet}\n elevation={bottomSheetAndDropdownGlue?.dropdownHasBottomSheet ? undefined : 'midRaised'}\n style={{ ...styles }}\n width={width ? width : '100%'}\n minWidth={minWidth}\n maxWidth={maxWidth}\n {...metaAttribute({ name: MetaConstants.DropdownOverlay, testID })}\n >\n {children}\n </StyledDropdownOverlay>\n </BaseBox>\n </FloatingPortal>\n );\n};\n\nconst DropdownOverlay = assignWithoutSideEffects(_DropdownOverlay, {\n componentId: dropdownComponentIds.DropdownOverlay,\n});\n\nexport { DropdownOverlay };\n"],"names":["OVERLAY_PADDING","size","_DropdownOverlay","_ref","_ref2","_referenceRef$current","children","testID","_ref$zIndex","zIndex","componentZIndices","dropdownOverlay","width","minWidth","maxWidth","referenceRef","_ref$defaultPlacement","defaultPlacement","_ref$_isNestedDropdow","_isNestedDropdown","_useDropdown","useDropdown","isOpen","triggererRef","triggererWrapperRef","dropdownTriggerer","setIsOpen","_useTheme","useTheme","theme","bottomSheetAndDropdownGlue","useBottomSheetAndDropdownGlue","isMenu","dropdownComponentIds","triggers","SelectInput","SearchInput","AutoComplete","undefined","_useFloating","useFloating","open","onOpenChange","strategy","placement","elements","reference","current","middleware","offset","mainAxis","OVERLAY_OFFSET","flip","padding","sizeMiddleware","apply","_ref3","rects","overlayWidth","makeSize","overlayMinWidth","overlayMaxWidth","Object","assign","floating","style","whileElementsMounted","autoUpdate","refs","floatingStyles","context","dismiss","useDismiss","_useInteractions","useInteractions","getFloatingProps","_useTransitionStyles","useTransitionStyles","duration","motion","quick","initial","transform","concat","OVERLAY_TRANSITION_OFFSET","opacity","isMounted","styles","React","useEffect","_triggererRef$current","focus","_jsx","FloatingPortal","BaseBox","_objectSpread","ref","setFloating","display","StyledDropdownOverlay","isInBottomSheet","dropdownHasBottomSheet","elevation","metaAttribute","name","MetaConstants","DropdownOverlay","assignWithoutSideEffects","componentId"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DropdownOverlay.web.js","sources":["../../../../../../src/components/Dropdown/DropdownOverlay.web.tsx"],"sourcesContent":["import React from 'react';\nimport {\n autoUpdate,\n offset,\n size as sizeMiddleware,\n useFloating,\n useTransitionStyles,\n flip,\n FloatingPortal,\n useDismiss,\n useInteractions,\n} from '@floating-ui/react';\nimport { useDropdown } from './useDropdown';\nimport { StyledDropdownOverlay } from './StyledDropdownOverlay';\nimport type { DropdownOverlayProps } from './types';\nimport { dropdownComponentIds } from './dropdownComponentIds';\nimport { useTheme } from '~components/BladeProvider';\n// Reading directly because its not possible to get theme object on top level to be used in keyframes\nimport { size } from '~tokens/global';\nimport { makeSize } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { useBottomSheetAndDropdownGlue } from '~components/BottomSheet/BottomSheetContext';\nimport BaseBox from '~components/Box/BaseBox';\nimport { componentZIndices } from '~utils/componentZIndices';\nimport { OVERLAY_OFFSET, OVERLAY_TRANSITION_OFFSET } from '~components/BaseMenu/tokens';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst OVERLAY_PADDING: number = size['12']; // doesn't have to be exact. Just rough padding for floating ui to decide to show overlay on top or bottom\n\n/**\n * Overlay of dropdown\n *\n * Wrap your ActionList within this component\n */\nconst _DropdownOverlay = ({\n children,\n testID,\n zIndex = componentZIndices.dropdownOverlay,\n width,\n minWidth,\n maxWidth,\n referenceRef,\n defaultPlacement = 'bottom-start',\n _isNestedDropdown = false,\n ...dataAnalyticsProps\n}: DropdownOverlayProps): React.ReactElement | null => {\n const { isOpen, triggererRef, triggererWrapperRef, dropdownTriggerer, setIsOpen } = useDropdown();\n const { theme } = useTheme();\n const bottomSheetAndDropdownGlue = useBottomSheetAndDropdownGlue();\n\n const isMenu =\n (dropdownTriggerer !== dropdownComponentIds.triggers.SelectInput &&\n dropdownTriggerer !== dropdownComponentIds.triggers.SearchInput &&\n dropdownTriggerer !== dropdownComponentIds.triggers.AutoComplete &&\n referenceRef == undefined) ||\n _isNestedDropdown;\n\n const { refs, floatingStyles, context } = useFloating({\n open: isOpen,\n onOpenChange: setIsOpen,\n strategy: 'fixed',\n placement: defaultPlacement,\n elements: {\n // Input triggers have their ref on internal input element but we want width height of overall visible input hence wrapperRef is needed\n // We fallback to use `triggererRef` for triggers like button and link where wrapper is not needed\n // Checkout: https://github.com/razorpay/blade/pull/1559#discussion_r1305438920\n reference: (referenceRef?.current ??\n triggererWrapperRef.current ??\n triggererRef.current) as Element,\n },\n middleware: [\n offset({\n mainAxis: OVERLAY_OFFSET,\n }),\n flip({\n // eslint-disable-next-line @typescript-eslint/restrict-plus-operands\n padding: OVERLAY_OFFSET + OVERLAY_PADDING,\n }),\n sizeMiddleware({\n apply({ rects, elements }) {\n const overlayWidth = isMenu ? undefined : makeSize(rects.reference.width);\n const overlayMinWidth = isMenu ? makeSize(size['240']) : undefined;\n const overlayMaxWidth = isMenu ? makeSize(size['400']) : undefined;\n\n Object.assign(elements.floating.style, {\n // in menu, we have flexible width between min and max\n // in input triggers, we just take width of trigger\n width: width ?? overlayWidth,\n minWidth: minWidth ?? overlayMinWidth,\n maxWidth: maxWidth ?? overlayMaxWidth,\n });\n },\n }),\n ],\n whileElementsMounted: autoUpdate,\n });\n\n const dismiss = useDismiss(context);\n const { getFloatingProps } = useInteractions([dismiss]);\n\n const { isMounted, styles } = useTransitionStyles(context, {\n duration: theme.motion.duration.quick,\n initial: () => ({\n transform: `translateY(-${makeSize(OVERLAY_TRANSITION_OFFSET)})`,\n opacity: 0,\n }),\n });\n\n React.useEffect(() => {\n if (isOpen) {\n // On Safari clicking on a non input element doesn't focuses it https://bugs.webkit.org/show_bug.cgi?id=22261\n triggererRef.current?.focus();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isOpen]);\n\n return (\n <FloatingPortal>\n <BaseBox\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ref={refs.setFloating as any}\n style={floatingStyles}\n zIndex={zIndex}\n display={isMounted ? 'flex' : 'none'}\n {...getFloatingProps()}\n >\n <StyledDropdownOverlay\n isInBottomSheet={bottomSheetAndDropdownGlue?.dropdownHasBottomSheet}\n elevation={bottomSheetAndDropdownGlue?.dropdownHasBottomSheet ? undefined : 'midRaised'}\n style={{ ...styles }}\n width={width ? width : '100%'}\n minWidth={minWidth}\n maxWidth={maxWidth}\n {...metaAttribute({ name: MetaConstants.DropdownOverlay, testID })}\n {...makeAnalyticsAttribute(dataAnalyticsProps)}\n >\n {children}\n </StyledDropdownOverlay>\n </BaseBox>\n </FloatingPortal>\n );\n};\n\nconst DropdownOverlay = assignWithoutSideEffects(_DropdownOverlay, {\n componentId: dropdownComponentIds.DropdownOverlay,\n});\n\nexport { DropdownOverlay };\n"],"names":["OVERLAY_PADDING","size","_DropdownOverlay","_ref","_ref2","_referenceRef$current","children","testID","_ref$zIndex","zIndex","componentZIndices","dropdownOverlay","width","minWidth","maxWidth","referenceRef","_ref$defaultPlacement","defaultPlacement","_ref$_isNestedDropdow","_isNestedDropdown","dataAnalyticsProps","_objectWithoutProperties","_excluded","_useDropdown","useDropdown","isOpen","triggererRef","triggererWrapperRef","dropdownTriggerer","setIsOpen","_useTheme","useTheme","theme","bottomSheetAndDropdownGlue","useBottomSheetAndDropdownGlue","isMenu","dropdownComponentIds","triggers","SelectInput","SearchInput","AutoComplete","undefined","_useFloating","useFloating","open","onOpenChange","strategy","placement","elements","reference","current","middleware","offset","mainAxis","OVERLAY_OFFSET","flip","padding","sizeMiddleware","apply","_ref3","rects","overlayWidth","makeSize","overlayMinWidth","overlayMaxWidth","Object","assign","floating","style","whileElementsMounted","autoUpdate","refs","floatingStyles","context","dismiss","useDismiss","_useInteractions","useInteractions","getFloatingProps","_useTransitionStyles","useTransitionStyles","duration","motion","quick","initial","transform","concat","OVERLAY_TRANSITION_OFFSET","opacity","isMounted","styles","React","useEffect","_triggererRef$current","focus","_jsx","FloatingPortal","BaseBox","_objectSpread","ref","setFloating","display","StyledDropdownOverlay","isInBottomSheet","dropdownHasBottomSheet","elevation","metaAttribute","name","MetaConstants","DropdownOverlay","makeAnalyticsAttribute","assignWithoutSideEffects","componentId"],"mappings":"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"}
|
|
@@ -14803,7 +14803,7 @@ type FilterChipGroupContextType = {
|
|
|
14803
14803
|
setClearFilterCallbackTriggerer: React__default.Dispatch<React__default.SetStateAction<number>>;
|
|
14804
14804
|
};
|
|
14805
14805
|
|
|
14806
|
-
declare const DropdownOverlay: ({ children, testID, zIndex, width, minWidth, maxWidth, referenceRef, defaultPlacement, _isNestedDropdown, }: DropdownOverlayProps) => React__default.ReactElement | null;
|
|
14806
|
+
declare const DropdownOverlay: ({ children, testID, zIndex, width, minWidth, maxWidth, referenceRef, defaultPlacement, _isNestedDropdown, ...dataAnalyticsProps }: DropdownOverlayProps) => React__default.ReactElement | null;
|
|
14807
14807
|
|
|
14808
14808
|
type DropdownButtonProps = ButtonProps & {
|
|
14809
14809
|
onBlur?: BaseButtonProps['onBlur'];
|