@skbkontur/react-ui 5.6.12 → 5.6.13-daterangepicker-hotel

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.
@@ -196,7 +196,7 @@ var DateRangePicker = exports.DateRangePicker = Object.assign(
196
196
  }
197
197
 
198
198
  // fix DateInput flushSync warning in React 18
199
- setTimeout(function () {var _currentFieldRef$curr4;
199
+ var timeoutId = setTimeout(function () {var _currentFieldRef$curr4;
200
200
  var isStart = focusInput === 'start';
201
201
  var currentFieldRef;
202
202
 
@@ -223,7 +223,9 @@ var DateRangePicker = exports.DateRangePicker = Object.assign(
223
223
  currentFieldRef = isStart ? startRef : endRef;
224
224
  (_currentFieldRef$curr4 = currentFieldRef.current) == null || _currentFieldRef$curr4.focus();
225
225
  });
226
- }, [focusInput]);
226
+
227
+ return function () {return clearTimeout(timeoutId);};
228
+ }, [focusInput, isMobile, props.useMobileNativeDatePicker]);
227
229
 
228
230
  var dateRangePickerContextProps = {
229
231
  startValue: startValue,
@@ -342,7 +344,7 @@ var DateRangePicker = exports.DateRangePicker = Object.assign(
342
344
  hasShadow: true,
343
345
  priority: _ZIndex.ZIndex.priorities.PopupMenu,
344
346
  positions: (0, _getMenuPositions.getMenuPositions)(props.menuPos, props.menuAlign),
345
- "data-tid": DateRangePickerDataTids.root,
347
+ "data-tid": DateRangePickerDataTids.popup,
346
348
  anchorElement: getAnchorElement(),
347
349
  margin: parseInt(theme.datePickerMenuOffsetY) }, /*#__PURE__*/
348
350
 
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_MobilePopup","_useLocaleForControl","_Emotion","_ThemeContext","_CommonWrapper","_Calendar","_Popup","_DateInput","_comparison","_ZIndex","_rootNode","_getMenuPositions","_Button","_ResponsiveLayout","_InternalDate","_InternalDateGetter","_ArrowAUp16Light","_NativeDateInput","_forwardRefAndName","_locale","_client","_DateRangePicker","_DateRangePickerSeparator","_DateRangePickerContext","_DateRangePickerInput","_DateRangePickerTheme","_locale2","_validateDateRangePicker","_getStateForValue","_templateObject","_templateObject2","DateRangePickerDataTids","exports","root","start","end","popup","calendar","todayButton","startOptionalButton","endOptionalButton","mobileStart","mobileEnd","rangeStart","rangeEnd","DayDateAttribute","DateRangePicker","Object","assign","Start","DateRangePickerStart","End","DateRangePickerEnd","Separator","DateRangePickerSeparator","validate","validateDateRangePicker","forwardRefAndName","props","ref","_useResponsiveLayout","useResponsiveLayout","isMobile","locale","useLocaleForControl","DateRangePickerLocaleHelper","_useState","useState","startValue","setStartValue","_useState2","startOptional","setStartOptional","_useState3","startDisabled","setStartDisabled","_useState4","endValue","setEndValue","_useState5","endOptional","setEndOptional","_useState6","endDisabled","setEndDisabled","_useState7","minDate","setMinDate","_useState8","maxDate","setMaxDate","_useState9","hoveredDay","setHoveredDay","_useState10","showCalendar","setShowCalendar","_useState11","focusInput","setFocusInput","dateRangePickerRef","useRef","calendarRef","startRef","endRef","mobileStartRef","mobileEndRef","mobileNativeStartRef","mobileNativeEndRef","isCalendarOpen","updateDateRangeValues","value","currentValues","currentStart","currentEnd","updatedState","getStateForValue","isOpen","focus","close","open","inputType","setEmpty","type","useImperativeHandle","scrollToMonth","month","year","_calendarRef$current","current","getRootNode","useLayoutEffect","setTimeout","_currentFieldRef$curr4","isStart","currentFieldRef","useMobileNativeDatePicker","isIOS","_currentFieldRef$curr","_currentFieldRef$curr2","click","_currentFieldRef$curr3","dateRangePickerContextProps","size","renderCalendar","theme","widthAuto","_cx","default","createElement","LocaleContext","Provider","Calendar","months","dayCellChooseDateAriaLabel","selectMonthAriaLabel","selectYearAriaLabel","selectChosenAriaLabel","renderDay","dayProps","renderCalendarRange","onValueChange","onMonthChange","className","cx","styles","calendarWidthAuto","renderMobileCalendar","_cx2","_cx3","MobilePopup","opened","headerChildComponent","inputWrapperWidthFull","DateInput","withIcon","width","inputVisuallyFocus","disabled","onFocus","onCloseRequest","footerChildComponent","renderButtons","ThemeContext","getMobileDateRangePickerTheme","getAnchorElement","menuAnchorElement","React","isValidElement","renderDesktopCalendar","Popup","hasShadow","priority","ZIndex","priorities","PopupMenu","positions","getMenuPositions","menuPos","menuAlign","anchorElement","margin","parseInt","datePickerMenuOffsetY","calendarWrapper","onMouseDown","e","preventDefault","onMouseMove","handleCalendarRangeMouseMove","today","InternalDate","setComponents","InternalDateGetter","getTodayComponents","toString","withPad","withSeparator","hasOptionalButtons","buttonWrap","Fragment","Button","onClick","startDateEmpty","endDateEmpty","enableTodayLink","icon","ArrowAUpIcon16Light","todayAriaLabel","renderMobileNativeDateInput","NativeDateInput","Consumer","getDateRangePickerTheme","DateRangePickerContext","CommonWrapper","inputWrapperWidth","css","_taggedTemplateLiteralLoose2","getFontSize","role","style","children","hoveredElement","target","hasAttribute","date","String","getAttribute","t","renderDayFn","_extends2","_cx4","day","isDayFirst","isDayLast","isDayInPeriod","Boolean","isBetween","hasHoveredDay","isDayInHoveredPeriod","hasLeftRoundings","hasRightRoundings","isDayBeforeFirstInPeriod","isLess","isDayAfterLastInPeriod","isGreater","isGreaterOrEqual","isLessOrEqual","isDayHovered","renderDayProps","_extends3","dataTid","rangeCalendarDay","rangeCalendarCellBg","calendarCellBorderRadius","rangeCalendarDayEnd","rangeCalendarDayHoverInPeriod","rangeCalendarDayInHoveredPeriod","CalendarDay"],"sources":["DateRangePicker.tsx"],"sourcesContent":["import React, { useImperativeHandle, useRef, useState, useLayoutEffect, type AriaAttributes } from 'react';\n\nimport { MobilePopup } from '../../internal/MobilePopup';\nimport { useLocaleForControl } from '../../lib/locale/useLocaleForControl';\nimport { css, cx } from '../../lib/theming/Emotion';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { CalendarDayProps } from '../Calendar';\nimport { Calendar, CalendarDay } from '../Calendar';\nimport { Popup } from '../../internal/Popup';\nimport { DateInput } from '../DateInput';\nimport { isBetween, isGreater, isGreaterOrEqual, isLess, isLessOrEqual } from '../../lib/date/comparison';\nimport type { DatePickerProps } from '../DatePicker';\nimport { ZIndex } from '../../internal/ZIndex';\nimport type { InstanceWithRootNode } from '../../lib/rootNode';\nimport { getRootNode } from '../../lib/rootNode';\nimport { getMenuPositions } from '../../lib/getMenuPositions';\nimport { Button } from '../Button';\nimport { useResponsiveLayout } from '../ResponsiveLayout';\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { InternalDateGetter } from '../../lib/date/InternalDateGetter';\nimport { ArrowAUpIcon16Light } from '../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light';\nimport { NativeDateInput } from '../../internal/NativeDateInput';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\nimport { LocaleContext } from '../../lib/locale';\nimport { isIOS } from '../../lib/client';\n\nimport { getFontSize, styles } from './DateRangePicker.styles';\nimport { DateRangePickerSeparator } from './DateRangePickerSeparator';\nimport type { DateRangePickerContextProps } from './DateRangePickerContext';\nimport { DateRangePickerContext } from './DateRangePickerContext';\nimport type { DateRangePickerInputType } from './DateRangePickerInput';\nimport { DateRangePickerEnd, DateRangePickerStart } from './DateRangePickerInput';\nimport { getDateRangePickerTheme, getMobileDateRangePickerTheme } from './DateRangePickerTheme';\nimport { DateRangePickerLocaleHelper } from './locale';\nimport { validateDateRangePicker } from './helpers/validateDateRangePicker';\nimport { getStateForValue } from './helpers/getStateForValue';\n\nexport const DateRangePickerDataTids = {\n root: 'DateRangePicker__root',\n start: 'DateRangePicker__start',\n end: 'DateRangePicker__end',\n popup: 'DateRangePicker__popup',\n calendar: 'DateRangePicker__calendar',\n todayButton: 'DateRangePicker__todayButton',\n startOptionalButton: 'DateRangePicker__startOptionalButton',\n endOptionalButton: 'DateRangePicker__endOptionalButton',\n mobileStart: 'DateRangePicker__mobileStart',\n mobileEnd: 'DateRangePicker__mobileEnd',\n rangeStart: 'DateRangePicker__rangeStart',\n rangeEnd: 'DateRangePicker__rangeEnd',\n} as const;\n\nconst DayDateAttribute = 'data-date-range-picker-day';\n\nexport interface DateRangePickerProps\n extends CommonProps,\n Pick<AriaAttributes, 'aria-describedby' | 'aria-label' | 'aria-labelledby'>,\n Pick<\n DatePickerProps,\n | 'size'\n | 'width'\n | 'renderDay'\n | 'menuPos'\n | 'menuAlign'\n | 'useMobileNativeDatePicker'\n | 'enableTodayLink'\n | 'onMonthChange'\n > {\n /**\n * Элемент относительно которого открывается календарь,\n * Если передать значение `focused` - меню будет открываться у зафокусированного элемента.\n * Если передать ссылку на DOM элемент или ref - меню откроется относительно переданного элемента.\n */\n menuAnchorElement?: 'focused' | Element | React.ReactNode | React.RefObject<any>;\n /**\n * Элементы DateRangePicker:\n * `<DateRangePicker.Start />`\n * `<DateRangePicker.Separator />`\n * `<DateRangePicker.End />`\n */\n children: React.ReactNode;\n}\n\nexport interface DateRangePickerRef extends InstanceWithRootNode {\n open: (inputType?: DateRangePickerInputType) => void;\n close: () => void;\n scrollToMonth: (month: number, year: number) => void;\n}\n\nexport type DateRangePicker = DateRangePickerRef;\n\nexport const DateRangePicker = Object.assign(\n {\n Start: DateRangePickerStart,\n End: DateRangePickerEnd,\n Separator: DateRangePickerSeparator,\n validate: validateDateRangePicker,\n },\n forwardRefAndName<DateRangePickerRef, DateRangePickerProps>('DateRangePicker', (props: DateRangePickerProps, ref) => {\n const { isMobile } = useResponsiveLayout();\n const locale = useLocaleForControl('DateRangePicker', DateRangePickerLocaleHelper);\n\n const [startValue, setStartValue] = useState<string>();\n const [startOptional, setStartOptional] = useState(false);\n const [startDisabled, setStartDisabled] = useState(false);\n\n const [endValue, setEndValue] = useState<string>();\n const [endOptional, setEndOptional] = useState(false);\n const [endDisabled, setEndDisabled] = useState(false);\n\n const [minDate, setMinDate] = useState('');\n const [maxDate, setMaxDate] = useState('');\n\n const [hoveredDay, setHoveredDay] = useState<string | null>(null);\n const [showCalendar, setShowCalendar] = useState<boolean>(false);\n const [focusInput, setFocusInput] = useState<DateRangePickerInputType | null>(null);\n\n const dateRangePickerRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<Calendar>(null);\n const startRef = useRef<DateInput>(null);\n const endRef = useRef<DateInput>(null);\n const mobileStartRef = useRef<DateInput>(null);\n const mobileEndRef = useRef<DateInput>(null);\n const mobileNativeStartRef = useRef<NativeDateInput>(null);\n const mobileNativeEndRef = useRef<NativeDateInput>(null);\n const isCalendarOpen = !startDisabled && !endDisabled && showCalendar;\n\n const updateDateRangeValues = (value = '') => {\n const currentValues = {\n currentStart: startValue,\n currentEnd: endValue,\n minDate,\n maxDate,\n };\n const updatedState = getStateForValue(focusInput, value, currentValues);\n\n setStartValue(updatedState.start);\n setEndValue(updatedState.end);\n\n if (updatedState.isOpen && updatedState.focus) {\n focus(updatedState.focus);\n }\n\n if (!updatedState.isOpen) {\n close();\n }\n };\n\n const open = (inputType: DateRangePickerInputType = 'start') => {\n setFocusInput(inputType);\n setShowCalendar(true);\n };\n\n const close = () => {\n setShowCalendar(false);\n setHoveredDay(null);\n };\n\n const focus = (inputType: DateRangePickerInputType = 'start') => {\n setFocusInput(inputType);\n };\n\n const setEmpty = (type: DateRangePickerInputType) => {\n switch (type) {\n case 'start':\n setStartValue('');\n focus('end');\n break;\n\n case 'end':\n setEndValue('');\n close();\n break;\n }\n };\n\n useImperativeHandle(\n ref,\n () => ({\n open,\n close,\n scrollToMonth: (month, year) => {\n calendarRef.current?.scrollToMonth?.(month, year);\n },\n getRootNode: () => dateRangePickerRef.current,\n }),\n [],\n );\n\n useLayoutEffect(() => {\n if (!focusInput) {\n return;\n }\n\n // fix DateInput flushSync warning in React 18\n setTimeout(() => {\n const isStart = focusInput === 'start';\n let currentFieldRef;\n\n // Mobile Native Picker\n if (isMobile && props.useMobileNativeDatePicker) {\n currentFieldRef = isStart ? mobileNativeStartRef : mobileNativeEndRef;\n if (isIOS) {\n currentFieldRef.current?.focus();\n } else {\n // Android open native datepicker only via click\n currentFieldRef.current?.click();\n }\n return;\n }\n\n // Mobile\n if (isMobile) {\n currentFieldRef = isStart ? mobileStartRef : mobileEndRef;\n currentFieldRef.current?.focus();\n return;\n }\n\n // Desktop\n currentFieldRef = isStart ? startRef : endRef;\n currentFieldRef.current?.focus();\n });\n }, [focusInput]);\n\n const dateRangePickerContextProps: DateRangePickerContextProps = {\n startValue,\n startOptional,\n startDisabled,\n endValue,\n endOptional,\n endDisabled,\n minDate,\n maxDate,\n size: props.size,\n setStartValue,\n setStartOptional,\n setStartDisabled,\n setEndValue,\n setEndOptional,\n setEndDisabled,\n setMinDate,\n setMaxDate,\n setFocusInput,\n open,\n close,\n dateRangePickerRef,\n startRef,\n endRef,\n };\n\n const renderCalendar = (theme: Theme, widthAuto = false) => (\n <LocaleContext.Provider\n value={{\n locale: {\n Calendar: {\n months: locale.months,\n dayCellChooseDateAriaLabel: locale.dayCellChooseDateAriaLabel,\n selectMonthAriaLabel: locale.selectMonthAriaLabel,\n selectYearAriaLabel: locale.selectYearAriaLabel,\n selectChosenAriaLabel: locale.selectChosenAriaLabel,\n },\n },\n }}\n >\n <Calendar\n value={focusInput === 'start' ? startValue : endValue}\n minDate={minDate}\n maxDate={maxDate}\n renderDay={(dayProps) => renderCalendarRange(dayProps, theme, props.renderDay)}\n onValueChange={(value) => updateDateRangeValues(value)}\n ref={calendarRef}\n onMonthChange={props.onMonthChange}\n className={cx({ [styles.calendarWidthAuto()]: widthAuto })}\n />\n </LocaleContext.Provider>\n );\n\n const renderMobileCalendar = (theme: Theme) => (\n <MobilePopup\n opened\n headerChildComponent={\n <div className={cx(styles.root(theme), styles.inputWrapperWidthFull())}>\n <DateInput\n withIcon\n value={startValue}\n width=\"auto\"\n size=\"medium\"\n className={cx({ [styles.inputVisuallyFocus(theme)]: focusInput === 'start' })}\n disabled={startDisabled}\n onValueChange={setStartValue}\n onFocus={() => setFocusInput('start')}\n ref={mobileStartRef}\n data-tid={DateRangePickerDataTids.mobileStart}\n />\n <DateRangePicker.Separator />\n <DateInput\n withIcon\n value={endValue}\n width=\"auto\"\n size=\"medium\"\n className={cx({ [styles.inputVisuallyFocus(theme)]: focusInput === 'end' })}\n disabled={endDisabled}\n onValueChange={setEndValue}\n onFocus={() => setFocusInput('end')}\n ref={mobileEndRef}\n data-tid={DateRangePickerDataTids.mobileEnd}\n />\n </div>\n }\n onCloseRequest={() => close()}\n footerChildComponent={renderButtons()}\n >\n <ThemeContext.Provider value={getMobileDateRangePickerTheme(theme)}>\n {renderCalendar(theme, true)}\n </ThemeContext.Provider>\n </MobilePopup>\n );\n\n const getAnchorElement = () => {\n const { menuAnchorElement } = props;\n if (menuAnchorElement === 'focused') {\n return getRootNode(focusInput === 'start' ? startRef.current : endRef.current);\n }\n\n if (React.isValidElement(menuAnchorElement)) {\n return menuAnchorElement;\n }\n\n if (menuAnchorElement && typeof menuAnchorElement === 'object' && 'current' in menuAnchorElement) {\n return getRootNode(menuAnchorElement.current);\n }\n\n return getRootNode(startRef.current) || getRootNode(endRef.current) || getRootNode(dateRangePickerRef.current);\n };\n\n const renderDesktopCalendar = (theme: Theme) => (\n <Popup\n opened\n hasShadow\n priority={ZIndex.priorities.PopupMenu}\n positions={getMenuPositions(props.menuPos, props.menuAlign)}\n data-tid={DateRangePickerDataTids.root}\n anchorElement={getAnchorElement()}\n margin={parseInt(theme.datePickerMenuOffsetY)}\n >\n <div\n className={styles.calendarWrapper(theme)}\n onMouseDown={(e) => e.preventDefault()}\n onMouseMove={handleCalendarRangeMouseMove}\n >\n {renderCalendar(theme)}\n {renderButtons()}\n </div>\n </Popup>\n );\n\n const renderButtons = () => {\n const today = new InternalDate(locale)\n .setComponents(InternalDateGetter.getTodayComponents())\n .toString({ withPad: true, withSeparator: true });\n\n const hasOptionalButtons = startOptional || endOptional;\n return (\n <div className={cx(styles.buttonWrap())}>\n {hasOptionalButtons && (\n <>\n {focusInput === 'start' && startOptional && (\n <Button\n width=\"100%\"\n data-tid={DateRangePickerDataTids.startOptionalButton}\n onClick={() => setEmpty('start')}\n >\n {locale.startDateEmpty}\n </Button>\n )}\n {focusInput === 'end' && endOptional && (\n <Button\n width=\"100%\"\n data-tid={DateRangePickerDataTids.endOptionalButton}\n onClick={() => setEmpty('end')}\n >\n {locale.endDateEmpty}\n </Button>\n )}\n </>\n )}\n\n {props.enableTodayLink && (\n <Button\n icon={<ArrowAUpIcon16Light />}\n aria-label={locale.todayAriaLabel}\n data-tid={DateRangePickerDataTids.todayButton}\n onClick={() => updateDateRangeValues(today)}\n >\n {!hasOptionalButtons && locale.today}\n </Button>\n )}\n </div>\n );\n };\n\n const renderMobileNativeDateInput = () => (\n <>\n <NativeDateInput\n value={startValue}\n minDate={minDate}\n maxDate={maxDate}\n onValueChange={setStartValue}\n disabled={startDisabled}\n ref={mobileNativeStartRef}\n />\n <NativeDateInput\n value={endValue}\n minDate={minDate}\n maxDate={maxDate}\n onValueChange={setEndValue}\n disabled={endDisabled}\n ref={mobileNativeEndRef}\n />\n </>\n );\n\n return (\n <ThemeContext.Consumer>\n {(theme) => (\n <ThemeContext.Provider value={getDateRangePickerTheme(theme)}>\n <DateRangePickerContext.Provider value={dateRangePickerContextProps}>\n <CommonWrapper {...props}>\n <div\n className={cx(\n styles.root(theme),\n styles.inputWrapperWidth(theme),\n css`\n font-size: ${getFontSize(theme, props.size)};\n `,\n )}\n role=\"group\"\n aria-describedby={props['aria-describedby']}\n aria-label={props['aria-label']}\n aria-labelledby={props['aria-labelledby']}\n data-tid={DateRangePickerDataTids.root}\n ref={dateRangePickerRef}\n style={{ width: props.width }}\n >\n {props.children}\n\n {props.useMobileNativeDatePicker && isMobile\n ? renderMobileNativeDateInput()\n : isCalendarOpen && (isMobile ? renderMobileCalendar(theme) : renderDesktopCalendar(theme))}\n </div>\n </CommonWrapper>\n </DateRangePickerContext.Provider>\n </ThemeContext.Provider>\n )}\n </ThemeContext.Consumer>\n );\n\n // Use parent mousemove event instead each CalendarDay's mouseenter / mouseover\n function handleCalendarRangeMouseMove(e: React.MouseEvent<HTMLDivElement, MouseEvent>) {\n if (!startValue && !endValue) {\n return;\n }\n\n const hoveredElement = e.target as HTMLElement;\n if (!hoveredElement.hasAttribute(DayDateAttribute) && hoveredDay === null) {\n return;\n }\n\n const date = String(hoveredElement?.getAttribute(DayDateAttribute)) || null;\n setHoveredDay(date);\n }\n\n function renderCalendarRange(\n props: CalendarDayProps,\n t: Theme,\n renderDayFn: ((props: CalendarDayProps) => React.ReactElement) | undefined,\n ) {\n const day = props.date;\n\n const isDayFirst = startValue === day;\n const isDayLast = endValue === day;\n const isDayInPeriod = Boolean(startValue && endValue && isBetween(day, startValue, endValue));\n\n const hasHoveredDay = hoveredDay !== null;\n const isDayInHoveredPeriod =\n hasHoveredDay &&\n Boolean(\n (focusInput === 'start' && endValue && isBetween(day, hoveredDay, endValue)) ||\n (focusInput === 'end' && startValue && isBetween(day, startValue, hoveredDay)),\n );\n\n let hasLeftRoundings;\n let hasRightRoundings;\n\n if (hasHoveredDay) {\n const isDayBeforeFirstInPeriod = startValue ? isLess(hoveredDay, startValue) : endValue;\n const isDayAfterLastInPeriod = endValue ? isGreater(hoveredDay, endValue) : startValue;\n\n if (isDayFirst && (isGreaterOrEqual(hoveredDay, startValue) || focusInput === 'end')) {\n hasLeftRoundings = true;\n }\n\n if (isDayLast && (isLessOrEqual(hoveredDay, endValue) || focusInput === 'start')) {\n hasRightRoundings = true;\n }\n\n const isDayHovered = hoveredDay === day;\n if (isDayHovered) {\n if (isDayBeforeFirstInPeriod) {\n hasLeftRoundings = true;\n }\n\n if (isDayAfterLastInPeriod) {\n hasRightRoundings = true;\n }\n }\n } else {\n if (isDayFirst) {\n hasLeftRoundings = true;\n }\n\n if (isDayLast) {\n hasRightRoundings = true;\n }\n }\n\n const renderDayProps = {\n ...props,\n [DayDateAttribute]: props.date,\n };\n\n let dataTid = null;\n if (isDayFirst) {\n dataTid = DateRangePickerDataTids.rangeStart;\n } else if (isDayLast) {\n dataTid = DateRangePickerDataTids.rangeEnd;\n }\n\n return (\n <div\n className={cx(\n styles.rangeCalendarDay(),\n css`\n background: ${isDayInPeriod && t.rangeCalendarCellBg};\n border-top-left-radius: ${hasLeftRoundings && t.calendarCellBorderRadius};\n border-bottom-left-radius: ${hasLeftRoundings && t.calendarCellBorderRadius};\n border-top-right-radius: ${hasRightRoundings && t.calendarCellBorderRadius};\n border-bottom-right-radius: ${hasRightRoundings && t.calendarCellBorderRadius};\n `,\n {\n [styles.rangeCalendarDayEnd(t)]: isDayFirst || isDayLast,\n [styles.rangeCalendarDayHoverInPeriod(t)]: isDayInPeriod,\n [styles.rangeCalendarDayInHoveredPeriod(t)]: isDayInHoveredPeriod,\n },\n )}\n data-tid={dataTid}\n >\n {renderDayFn ? renderDayFn(renderDayProps) : <CalendarDay {...renderDayProps} />}\n </div>\n );\n }\n }),\n);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_MobilePopup","_useLocaleForControl","_Emotion","_ThemeContext","_CommonWrapper","_Calendar","_Popup","_DateInput","_comparison","_ZIndex","_rootNode","_getMenuPositions","_Button","_ResponsiveLayout","_InternalDate","_InternalDateGetter","_ArrowAUp16Light","_NativeDateInput","_forwardRefAndName","_locale","_client","_DateRangePicker","_DateRangePickerSeparator","_DateRangePickerContext","_DateRangePickerInput","_DateRangePickerTheme","_locale2","_validateDateRangePicker","_getStateForValue","_templateObject","_templateObject2","DateRangePickerDataTids","exports","root","start","end","popup","calendar","todayButton","startOptionalButton","endOptionalButton","mobileStart","mobileEnd","rangeStart","rangeEnd","DayDateAttribute","DateRangePicker","Object","assign","Start","DateRangePickerStart","End","DateRangePickerEnd","Separator","DateRangePickerSeparator","validate","validateDateRangePicker","forwardRefAndName","props","ref","_useResponsiveLayout","useResponsiveLayout","isMobile","locale","useLocaleForControl","DateRangePickerLocaleHelper","_useState","useState","startValue","setStartValue","_useState2","startOptional","setStartOptional","_useState3","startDisabled","setStartDisabled","_useState4","endValue","setEndValue","_useState5","endOptional","setEndOptional","_useState6","endDisabled","setEndDisabled","_useState7","minDate","setMinDate","_useState8","maxDate","setMaxDate","_useState9","hoveredDay","setHoveredDay","_useState10","showCalendar","setShowCalendar","_useState11","focusInput","setFocusInput","dateRangePickerRef","useRef","calendarRef","startRef","endRef","mobileStartRef","mobileEndRef","mobileNativeStartRef","mobileNativeEndRef","isCalendarOpen","updateDateRangeValues","value","currentValues","currentStart","currentEnd","updatedState","getStateForValue","isOpen","focus","close","open","inputType","setEmpty","type","useImperativeHandle","scrollToMonth","month","year","_calendarRef$current","current","getRootNode","useLayoutEffect","timeoutId","setTimeout","_currentFieldRef$curr4","isStart","currentFieldRef","useMobileNativeDatePicker","isIOS","_currentFieldRef$curr","_currentFieldRef$curr2","click","_currentFieldRef$curr3","clearTimeout","dateRangePickerContextProps","size","renderCalendar","theme","widthAuto","_cx","default","createElement","LocaleContext","Provider","Calendar","months","dayCellChooseDateAriaLabel","selectMonthAriaLabel","selectYearAriaLabel","selectChosenAriaLabel","renderDay","dayProps","renderCalendarRange","onValueChange","onMonthChange","className","cx","styles","calendarWidthAuto","renderMobileCalendar","_cx2","_cx3","MobilePopup","opened","headerChildComponent","inputWrapperWidthFull","DateInput","withIcon","width","inputVisuallyFocus","disabled","onFocus","onCloseRequest","footerChildComponent","renderButtons","ThemeContext","getMobileDateRangePickerTheme","getAnchorElement","menuAnchorElement","React","isValidElement","renderDesktopCalendar","Popup","hasShadow","priority","ZIndex","priorities","PopupMenu","positions","getMenuPositions","menuPos","menuAlign","anchorElement","margin","parseInt","datePickerMenuOffsetY","calendarWrapper","onMouseDown","e","preventDefault","onMouseMove","handleCalendarRangeMouseMove","today","InternalDate","setComponents","InternalDateGetter","getTodayComponents","toString","withPad","withSeparator","hasOptionalButtons","buttonWrap","Fragment","Button","onClick","startDateEmpty","endDateEmpty","enableTodayLink","icon","ArrowAUpIcon16Light","todayAriaLabel","renderMobileNativeDateInput","NativeDateInput","Consumer","getDateRangePickerTheme","DateRangePickerContext","CommonWrapper","inputWrapperWidth","css","_taggedTemplateLiteralLoose2","getFontSize","role","style","children","hoveredElement","target","hasAttribute","date","String","getAttribute","t","renderDayFn","_extends2","_cx4","day","isDayFirst","isDayLast","isDayInPeriod","Boolean","isBetween","hasHoveredDay","isDayInHoveredPeriod","hasLeftRoundings","hasRightRoundings","isDayBeforeFirstInPeriod","isLess","isDayAfterLastInPeriod","isGreater","isGreaterOrEqual","isLessOrEqual","isDayHovered","renderDayProps","_extends3","dataTid","rangeCalendarDay","rangeCalendarCellBg","calendarCellBorderRadius","rangeCalendarDayEnd","rangeCalendarDayHoverInPeriod","rangeCalendarDayInHoveredPeriod","CalendarDay"],"sources":["DateRangePicker.tsx"],"sourcesContent":["import React, { useImperativeHandle, useRef, useState, useLayoutEffect, type AriaAttributes } from 'react';\n\nimport { MobilePopup } from '../../internal/MobilePopup';\nimport { useLocaleForControl } from '../../lib/locale/useLocaleForControl';\nimport { css, cx } from '../../lib/theming/Emotion';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { CalendarDayProps } from '../Calendar';\nimport { Calendar, CalendarDay } from '../Calendar';\nimport { Popup } from '../../internal/Popup';\nimport { DateInput } from '../DateInput';\nimport { isBetween, isGreater, isGreaterOrEqual, isLess, isLessOrEqual } from '../../lib/date/comparison';\nimport type { DatePickerProps } from '../DatePicker';\nimport { ZIndex } from '../../internal/ZIndex';\nimport type { InstanceWithRootNode } from '../../lib/rootNode';\nimport { getRootNode } from '../../lib/rootNode';\nimport { getMenuPositions } from '../../lib/getMenuPositions';\nimport { Button } from '../Button';\nimport { useResponsiveLayout } from '../ResponsiveLayout';\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { InternalDateGetter } from '../../lib/date/InternalDateGetter';\nimport { ArrowAUpIcon16Light } from '../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light';\nimport { NativeDateInput } from '../../internal/NativeDateInput';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\nimport { LocaleContext } from '../../lib/locale';\nimport { isIOS } from '../../lib/client';\n\nimport { getFontSize, styles } from './DateRangePicker.styles';\nimport { DateRangePickerSeparator } from './DateRangePickerSeparator';\nimport type { DateRangePickerContextProps } from './DateRangePickerContext';\nimport { DateRangePickerContext } from './DateRangePickerContext';\nimport type { DateRangePickerInputType } from './DateRangePickerInput';\nimport { DateRangePickerEnd, DateRangePickerStart } from './DateRangePickerInput';\nimport { getDateRangePickerTheme, getMobileDateRangePickerTheme } from './DateRangePickerTheme';\nimport { DateRangePickerLocaleHelper } from './locale';\nimport { validateDateRangePicker } from './helpers/validateDateRangePicker';\nimport { getStateForValue } from './helpers/getStateForValue';\n\nexport const DateRangePickerDataTids = {\n root: 'DateRangePicker__root',\n start: 'DateRangePicker__start',\n end: 'DateRangePicker__end',\n popup: 'DateRangePicker__popup',\n calendar: 'DateRangePicker__calendar',\n todayButton: 'DateRangePicker__todayButton',\n startOptionalButton: 'DateRangePicker__startOptionalButton',\n endOptionalButton: 'DateRangePicker__endOptionalButton',\n mobileStart: 'DateRangePicker__mobileStart',\n mobileEnd: 'DateRangePicker__mobileEnd',\n rangeStart: 'DateRangePicker__rangeStart',\n rangeEnd: 'DateRangePicker__rangeEnd',\n} as const;\n\nconst DayDateAttribute = 'data-date-range-picker-day';\n\nexport interface DateRangePickerProps\n extends CommonProps,\n Pick<AriaAttributes, 'aria-describedby' | 'aria-label' | 'aria-labelledby'>,\n Pick<\n DatePickerProps,\n | 'size'\n | 'width'\n | 'renderDay'\n | 'menuPos'\n | 'menuAlign'\n | 'useMobileNativeDatePicker'\n | 'enableTodayLink'\n | 'onMonthChange'\n > {\n /**\n * Элемент относительно которого открывается календарь,\n * Если передать значение `focused` - меню будет открываться у зафокусированного элемента.\n * Если передать ссылку на DOM элемент или ref - меню откроется относительно переданного элемента.\n */\n menuAnchorElement?: 'focused' | Element | React.ReactNode | React.RefObject<any>;\n /**\n * Элементы DateRangePicker:\n * `<DateRangePicker.Start />`\n * `<DateRangePicker.Separator />`\n * `<DateRangePicker.End />`\n */\n children: React.ReactNode;\n}\n\nexport interface DateRangePickerRef extends InstanceWithRootNode {\n open: (inputType?: DateRangePickerInputType) => void;\n close: () => void;\n scrollToMonth: (month: number, year: number) => void;\n}\n\nexport type DateRangePicker = DateRangePickerRef;\n\nexport const DateRangePicker = Object.assign(\n {\n Start: DateRangePickerStart,\n End: DateRangePickerEnd,\n Separator: DateRangePickerSeparator,\n validate: validateDateRangePicker,\n },\n forwardRefAndName<DateRangePickerRef, DateRangePickerProps>('DateRangePicker', (props: DateRangePickerProps, ref) => {\n const { isMobile } = useResponsiveLayout();\n const locale = useLocaleForControl('DateRangePicker', DateRangePickerLocaleHelper);\n\n const [startValue, setStartValue] = useState<string>();\n const [startOptional, setStartOptional] = useState(false);\n const [startDisabled, setStartDisabled] = useState(false);\n\n const [endValue, setEndValue] = useState<string>();\n const [endOptional, setEndOptional] = useState(false);\n const [endDisabled, setEndDisabled] = useState(false);\n\n const [minDate, setMinDate] = useState('');\n const [maxDate, setMaxDate] = useState('');\n\n const [hoveredDay, setHoveredDay] = useState<string | null>(null);\n const [showCalendar, setShowCalendar] = useState<boolean>(false);\n const [focusInput, setFocusInput] = useState<DateRangePickerInputType | null>(null);\n\n const dateRangePickerRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<Calendar>(null);\n const startRef = useRef<DateInput>(null);\n const endRef = useRef<DateInput>(null);\n const mobileStartRef = useRef<DateInput>(null);\n const mobileEndRef = useRef<DateInput>(null);\n const mobileNativeStartRef = useRef<NativeDateInput>(null);\n const mobileNativeEndRef = useRef<NativeDateInput>(null);\n const isCalendarOpen = !startDisabled && !endDisabled && showCalendar;\n\n const updateDateRangeValues = (value = '') => {\n const currentValues = {\n currentStart: startValue,\n currentEnd: endValue,\n minDate,\n maxDate,\n };\n const updatedState = getStateForValue(focusInput, value, currentValues);\n\n setStartValue(updatedState.start);\n setEndValue(updatedState.end);\n\n if (updatedState.isOpen && updatedState.focus) {\n focus(updatedState.focus);\n }\n\n if (!updatedState.isOpen) {\n close();\n }\n };\n\n const open = (inputType: DateRangePickerInputType = 'start') => {\n setFocusInput(inputType);\n setShowCalendar(true);\n };\n\n const close = () => {\n setShowCalendar(false);\n setHoveredDay(null);\n };\n\n const focus = (inputType: DateRangePickerInputType = 'start') => {\n setFocusInput(inputType);\n };\n\n const setEmpty = (type: DateRangePickerInputType) => {\n switch (type) {\n case 'start':\n setStartValue('');\n focus('end');\n break;\n\n case 'end':\n setEndValue('');\n close();\n break;\n }\n };\n\n useImperativeHandle(\n ref,\n () => ({\n open,\n close,\n scrollToMonth: (month, year) => {\n calendarRef.current?.scrollToMonth?.(month, year);\n },\n getRootNode: () => dateRangePickerRef.current,\n }),\n [],\n );\n \n useLayoutEffect(() => {\n if (!focusInput) {\n return;\n }\n\n // fix DateInput flushSync warning in React 18\n const timeoutId = setTimeout(() => {\n const isStart = focusInput === 'start';\n let currentFieldRef;\n\n // Mobile Native Picker\n if (isMobile && props.useMobileNativeDatePicker) {\n currentFieldRef = isStart ? mobileNativeStartRef : mobileNativeEndRef;\n if (isIOS) {\n currentFieldRef.current?.focus();\n } else {\n // Android open native datepicker only via click\n currentFieldRef.current?.click();\n }\n return;\n }\n\n // Mobile\n if (isMobile) {\n currentFieldRef = isStart ? mobileStartRef : mobileEndRef;\n currentFieldRef.current?.focus();\n return;\n }\n\n // Desktop\n currentFieldRef = isStart ? startRef : endRef;\n currentFieldRef.current?.focus();\n });\n\n return () => clearTimeout(timeoutId);\n }, [focusInput, isMobile, props.useMobileNativeDatePicker]);\n\n const dateRangePickerContextProps: DateRangePickerContextProps = {\n startValue,\n startOptional,\n startDisabled,\n endValue,\n endOptional,\n endDisabled,\n minDate,\n maxDate,\n size: props.size,\n setStartValue,\n setStartOptional,\n setStartDisabled,\n setEndValue,\n setEndOptional,\n setEndDisabled,\n setMinDate,\n setMaxDate,\n setFocusInput,\n open,\n close,\n dateRangePickerRef,\n startRef,\n endRef,\n };\n\n const renderCalendar = (theme: Theme, widthAuto = false) => (\n <LocaleContext.Provider\n value={{\n locale: {\n Calendar: {\n months: locale.months,\n dayCellChooseDateAriaLabel: locale.dayCellChooseDateAriaLabel,\n selectMonthAriaLabel: locale.selectMonthAriaLabel,\n selectYearAriaLabel: locale.selectYearAriaLabel,\n selectChosenAriaLabel: locale.selectChosenAriaLabel,\n },\n },\n }}\n >\n <Calendar\n value={focusInput === 'start' ? startValue : endValue}\n minDate={minDate}\n maxDate={maxDate}\n renderDay={(dayProps) => renderCalendarRange(dayProps, theme, props.renderDay)}\n onValueChange={(value) => updateDateRangeValues(value)}\n ref={calendarRef}\n onMonthChange={props.onMonthChange}\n className={cx({ [styles.calendarWidthAuto()]: widthAuto })}\n />\n </LocaleContext.Provider>\n );\n\n const renderMobileCalendar = (theme: Theme) => (\n <MobilePopup\n opened\n headerChildComponent={\n <div className={cx(styles.root(theme), styles.inputWrapperWidthFull())}>\n <DateInput\n withIcon\n value={startValue}\n width=\"auto\"\n size=\"medium\"\n className={cx({ [styles.inputVisuallyFocus(theme)]: focusInput === 'start' })}\n disabled={startDisabled}\n onValueChange={setStartValue}\n onFocus={() => setFocusInput('start')}\n ref={mobileStartRef}\n data-tid={DateRangePickerDataTids.mobileStart}\n />\n <DateRangePicker.Separator />\n <DateInput\n withIcon\n value={endValue}\n width=\"auto\"\n size=\"medium\"\n className={cx({ [styles.inputVisuallyFocus(theme)]: focusInput === 'end' })}\n disabled={endDisabled}\n onValueChange={setEndValue}\n onFocus={() => setFocusInput('end')}\n ref={mobileEndRef}\n data-tid={DateRangePickerDataTids.mobileEnd}\n />\n </div>\n }\n onCloseRequest={() => close()}\n footerChildComponent={renderButtons()}\n >\n <ThemeContext.Provider value={getMobileDateRangePickerTheme(theme)}>\n {renderCalendar(theme, true)}\n </ThemeContext.Provider>\n </MobilePopup>\n );\n\n const getAnchorElement = () => {\n const { menuAnchorElement } = props;\n if (menuAnchorElement === 'focused') {\n return getRootNode(focusInput === 'start' ? startRef.current : endRef.current);\n }\n\n if (React.isValidElement(menuAnchorElement)) {\n return menuAnchorElement;\n }\n\n if (menuAnchorElement && typeof menuAnchorElement === 'object' && 'current' in menuAnchorElement) {\n return getRootNode(menuAnchorElement.current);\n }\n\n return getRootNode(startRef.current) || getRootNode(endRef.current) || getRootNode(dateRangePickerRef.current);\n };\n\n const renderDesktopCalendar = (theme: Theme) => (\n <Popup\n opened\n hasShadow\n priority={ZIndex.priorities.PopupMenu}\n positions={getMenuPositions(props.menuPos, props.menuAlign)}\n data-tid={DateRangePickerDataTids.popup}\n anchorElement={getAnchorElement()}\n margin={parseInt(theme.datePickerMenuOffsetY)}\n >\n <div\n className={styles.calendarWrapper(theme)}\n onMouseDown={(e) => e.preventDefault()}\n onMouseMove={handleCalendarRangeMouseMove}\n >\n {renderCalendar(theme)}\n {renderButtons()}\n </div>\n </Popup>\n );\n\n const renderButtons = () => {\n const today = new InternalDate(locale)\n .setComponents(InternalDateGetter.getTodayComponents())\n .toString({ withPad: true, withSeparator: true });\n\n const hasOptionalButtons = startOptional || endOptional;\n return (\n <div className={cx(styles.buttonWrap())}>\n {hasOptionalButtons && (\n <>\n {focusInput === 'start' && startOptional && (\n <Button\n width=\"100%\"\n data-tid={DateRangePickerDataTids.startOptionalButton}\n onClick={() => setEmpty('start')}\n >\n {locale.startDateEmpty}\n </Button>\n )}\n {focusInput === 'end' && endOptional && (\n <Button\n width=\"100%\"\n data-tid={DateRangePickerDataTids.endOptionalButton}\n onClick={() => setEmpty('end')}\n >\n {locale.endDateEmpty}\n </Button>\n )}\n </>\n )}\n\n {props.enableTodayLink && (\n <Button\n icon={<ArrowAUpIcon16Light />}\n aria-label={locale.todayAriaLabel}\n data-tid={DateRangePickerDataTids.todayButton}\n onClick={() => updateDateRangeValues(today)}\n >\n {!hasOptionalButtons && locale.today}\n </Button>\n )}\n </div>\n );\n };\n\n const renderMobileNativeDateInput = () => (\n <>\n <NativeDateInput\n value={startValue}\n minDate={minDate}\n maxDate={maxDate}\n onValueChange={setStartValue}\n disabled={startDisabled}\n ref={mobileNativeStartRef}\n />\n <NativeDateInput\n value={endValue}\n minDate={minDate}\n maxDate={maxDate}\n onValueChange={setEndValue}\n disabled={endDisabled}\n ref={mobileNativeEndRef}\n />\n </>\n );\n\n return (\n <ThemeContext.Consumer>\n {(theme) => (\n <ThemeContext.Provider value={getDateRangePickerTheme(theme)}>\n <DateRangePickerContext.Provider value={dateRangePickerContextProps}>\n <CommonWrapper {...props}>\n <div\n className={cx(\n styles.root(theme),\n styles.inputWrapperWidth(theme),\n css`\n font-size: ${getFontSize(theme, props.size)};\n `,\n )}\n role=\"group\"\n aria-describedby={props['aria-describedby']}\n aria-label={props['aria-label']}\n aria-labelledby={props['aria-labelledby']}\n data-tid={DateRangePickerDataTids.root}\n ref={dateRangePickerRef}\n style={{ width: props.width }}\n >\n {props.children}\n\n {props.useMobileNativeDatePicker && isMobile\n ? renderMobileNativeDateInput()\n : isCalendarOpen && (isMobile ? renderMobileCalendar(theme) : renderDesktopCalendar(theme))}\n </div>\n </CommonWrapper>\n </DateRangePickerContext.Provider>\n </ThemeContext.Provider>\n )}\n </ThemeContext.Consumer>\n );\n\n // Use parent mousemove event instead each CalendarDay's mouseenter / mouseover\n function handleCalendarRangeMouseMove(e: React.MouseEvent<HTMLDivElement, MouseEvent>) {\n if (!startValue && !endValue) {\n return;\n }\n\n const hoveredElement = e.target as HTMLElement;\n if (!hoveredElement.hasAttribute(DayDateAttribute) && hoveredDay === null) {\n return;\n }\n\n const date = String(hoveredElement?.getAttribute(DayDateAttribute)) || null;\n setHoveredDay(date);\n }\n\n function renderCalendarRange(\n props: CalendarDayProps,\n t: Theme,\n renderDayFn: ((props: CalendarDayProps) => React.ReactElement) | undefined,\n ) {\n const day = props.date;\n\n const isDayFirst = startValue === day;\n const isDayLast = endValue === day;\n const isDayInPeriod = Boolean(startValue && endValue && isBetween(day, startValue, endValue));\n\n const hasHoveredDay = hoveredDay !== null;\n const isDayInHoveredPeriod =\n hasHoveredDay &&\n Boolean(\n (focusInput === 'start' && endValue && isBetween(day, hoveredDay, endValue)) ||\n (focusInput === 'end' && startValue && isBetween(day, startValue, hoveredDay)),\n );\n\n let hasLeftRoundings;\n let hasRightRoundings;\n\n if (hasHoveredDay) {\n const isDayBeforeFirstInPeriod = startValue ? isLess(hoveredDay, startValue) : endValue;\n const isDayAfterLastInPeriod = endValue ? isGreater(hoveredDay, endValue) : startValue;\n\n if (isDayFirst && (isGreaterOrEqual(hoveredDay, startValue) || focusInput === 'end')) {\n hasLeftRoundings = true;\n }\n\n if (isDayLast && (isLessOrEqual(hoveredDay, endValue) || focusInput === 'start')) {\n hasRightRoundings = true;\n }\n\n const isDayHovered = hoveredDay === day;\n if (isDayHovered) {\n if (isDayBeforeFirstInPeriod) {\n hasLeftRoundings = true;\n }\n\n if (isDayAfterLastInPeriod) {\n hasRightRoundings = true;\n }\n }\n } else {\n if (isDayFirst) {\n hasLeftRoundings = true;\n }\n\n if (isDayLast) {\n hasRightRoundings = true;\n }\n }\n\n const renderDayProps = {\n ...props,\n [DayDateAttribute]: props.date,\n };\n\n let dataTid = null;\n if (isDayFirst) {\n dataTid = DateRangePickerDataTids.rangeStart;\n } else if (isDayLast) {\n dataTid = DateRangePickerDataTids.rangeEnd;\n }\n\n return (\n <div\n className={cx(\n styles.rangeCalendarDay(),\n css`\n background: ${isDayInPeriod && t.rangeCalendarCellBg};\n border-top-left-radius: ${hasLeftRoundings && t.calendarCellBorderRadius};\n border-bottom-left-radius: ${hasLeftRoundings && t.calendarCellBorderRadius};\n border-top-right-radius: ${hasRightRoundings && t.calendarCellBorderRadius};\n border-bottom-right-radius: ${hasRightRoundings && t.calendarCellBorderRadius};\n `,\n {\n [styles.rangeCalendarDayEnd(t)]: isDayFirst || isDayLast,\n [styles.rangeCalendarDayHoverInPeriod(t)]: isDayInPeriod,\n [styles.rangeCalendarDayInHoveredPeriod(t)]: isDayInHoveredPeriod,\n },\n )}\n data-tid={dataTid}\n >\n {renderDayFn ? renderDayFn(renderDayProps) : <CalendarDay {...renderDayProps} />}\n </div>\n );\n }\n }),\n);\n"],"mappings":"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","ignoreList":[]}
@@ -7,6 +7,7 @@ var _DateInput = require("../DateInput");
7
7
  var _ResponsiveLayout = require("../ResponsiveLayout");
8
8
  var _forwardRefAndName = require("../../lib/forwardRefAndName");
9
9
  var _utils = require("../../lib/utils");
10
+ var _constants = require("../../lib/date/constants");
10
11
 
11
12
  var _DateRangePickerContext = require("./DateRangePickerContext");
12
13
  var _DateRangePicker = require("./DateRangePicker");
@@ -42,8 +43,7 @@ var DateRangePickerInput = /*#__PURE__*/(0, _react.forwardRef)(function (props,
42
43
 
43
44
 
44
45
 
45
-
46
- (0, _react.useContext)(_DateRangePickerContext.DateRangePickerContext),minDate = _useContext.minDate,maxDate = _useContext.maxDate,startValue = _useContext.startValue,endValue = _useContext.endValue,size = _useContext.size,setStartValue = _useContext.setStartValue,setStartOptional = _useContext.setStartOptional,setStartDisabled = _useContext.setStartDisabled,setEndValue = _useContext.setEndValue,setEndOptional = _useContext.setEndOptional,setEndDisabled = _useContext.setEndDisabled,setMinDate = _useContext.setMinDate,setMaxDate = _useContext.setMaxDate,setFocusInput = _useContext.setFocusInput,open = _useContext.open,close = _useContext.close,dateRangePickerRef = _useContext.dateRangePickerRef,startRef = _useContext.startRef,endRef = _useContext.endRef;
46
+ (0, _react.useContext)(_DateRangePickerContext.DateRangePickerContext),minDate = _useContext.minDate,maxDate = _useContext.maxDate,startValue = _useContext.startValue,endValue = _useContext.endValue,size = _useContext.size,setStartValue = _useContext.setStartValue,setStartOptional = _useContext.setStartOptional,setStartDisabled = _useContext.setStartDisabled,setEndValue = _useContext.setEndValue,setEndOptional = _useContext.setEndOptional,setEndDisabled = _useContext.setEndDisabled,setMinDate = _useContext.setMinDate,setMaxDate = _useContext.setMaxDate,setFocusInput = _useContext.setFocusInput,open = _useContext.open,close = _useContext.close,startRef = _useContext.startRef,endRef = _useContext.endRef;
47
47
  var isStart = props.type === 'start';
48
48
  var isEnd = props.type === 'end';
49
49
  var locale = (0, _useLocaleForControl.useLocaleForControl)('DateRangePicker', _locale.DateRangePickerLocaleHelper);
@@ -64,11 +64,11 @@ var DateRangePickerInput = /*#__PURE__*/(0, _react.forwardRef)(function (props,
64
64
  if (isStart) {
65
65
  setStartOptional(props.optional || false);
66
66
  setStartDisabled(props.disabled || false);
67
- setMinDate(props.minDate || '');
67
+ setMinDate(props.minDate || _constants.MIN_FULLDATE);
68
68
  } else if (isEnd) {
69
69
  setEndOptional(props.optional || false);
70
70
  setEndDisabled(props.disabled || false);
71
- setMaxDate(props.maxDate || '');
71
+ setMaxDate(props.maxDate || _constants.MAX_FULLDATE);
72
72
  }
73
73
  }, [props.optional, props.disabled, props.minDate, props.maxDate]);
74
74
 
@@ -108,17 +108,21 @@ var DateRangePickerInput = /*#__PURE__*/(0, _react.forwardRef)(function (props,
108
108
  open(props.type);
109
109
  props.onFocus == null || props.onFocus(e);
110
110
  },
111
- onBlur: function onBlur(e) {var _dateRangePickerRef$c;
111
+ onBlur: function onBlur(e) {var _startRef$current, _endRef$current;
112
112
  props.onBlur == null || props.onBlur(e);
113
113
 
114
114
  if (isMobile) {
115
115
  return;
116
116
  }
117
+
117
118
  var nextFocusedElement = e.relatedTarget;
118
- if (!((_dateRangePickerRef$c = dateRangePickerRef.current) != null && _dateRangePickerRef$c.contains(nextFocusedElement))) {
119
+ var isFocusStart = (_startRef$current = startRef.current) == null || (_startRef$current = _startRef$current.getRootNode()) == null ? void 0 : _startRef$current.contains(nextFocusedElement);
120
+ var isFocusEnd = (_endRef$current = endRef.current) == null || (_endRef$current = _endRef$current.getRootNode()) == null ? void 0 : _endRef$current.contains(nextFocusedElement);
121
+
122
+ if (!isFocusStart && !isFocusEnd) {
119
123
  close();
124
+ setFocusInput(null);
120
125
  }
121
- setFocusInput(null);
122
126
  } });
123
127
 
124
128
 
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_useLocaleForControl","_DateInput","_ResponsiveLayout","_forwardRefAndName","_utils","_DateRangePickerContext","_DateRangePicker","_locale","DateRangePickerInput","forwardRef","props","ref","_useContext","useContext","DateRangePickerContext","minDate","maxDate","startValue","endValue","size","setStartValue","setStartOptional","setStartDisabled","setEndValue","setEndOptional","setEndDisabled","setMinDate","setMaxDate","setFocusInput","open","close","dateRangePickerRef","startRef","endRef","isStart","type","isEnd","locale","useLocaleForControl","DateRangePickerLocaleHelper","_useResponsiveLayout","useResponsiveLayout","isMobile","useImperativeHandle","current","useEffect","value","optional","disabled","isNonNullable","onValueChange","commonProps","_extends2","default","withIcon","onClick","e","onFocus","onBlur","_dateRangePickerRef$c","nextFocusedElement","relatedTarget","contains","createElement","DateInput","DateRangePickerDataTids","start","startDateLabel","end","endDateLabel","DateRangePickerStart","exports","forwardRefAndName","DateRangePickerEnd"],"sources":["DateRangePickerInput.tsx"],"sourcesContent":["import type { Ref } from 'react';\nimport React, { forwardRef, useContext, useEffect, useImperativeHandle } from 'react';\n\nimport { useLocaleForControl } from '../../lib/locale/useLocaleForControl';\nimport type { DateInputProps } from '../DateInput';\nimport { DateInput } from '../DateInput';\nimport { useResponsiveLayout } from '../ResponsiveLayout';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\nimport { isNonNullable } from '../../lib/utils';\n\nimport { DateRangePickerContext } from './DateRangePickerContext';\nimport { DateRangePickerDataTids } from './DateRangePicker';\nimport { DateRangePickerLocaleHelper } from './locale';\n\nexport type DateRangePickerInputType = 'start' | 'end';\n\nexport interface DateRangePickerInputProps extends Omit<DateInputProps, 'value'> {\n type: DateRangePickerInputType;\n value?: string | null;\n optional?: boolean;\n}\n\ntype DateRangePickerInputWithoutType = Omit<DateRangePickerInputProps, 'type'>;\n\nconst DateRangePickerInput = forwardRef((props: DateRangePickerInputProps, ref: Ref<DateInput | null>) => {\n const {\n minDate,\n maxDate,\n startValue,\n endValue,\n size,\n setStartValue,\n setStartOptional,\n setStartDisabled,\n setEndValue,\n setEndOptional,\n setEndDisabled,\n setMinDate,\n setMaxDate,\n setFocusInput,\n open,\n close,\n dateRangePickerRef,\n startRef,\n endRef,\n } = useContext(DateRangePickerContext);\n const isStart = props.type === 'start';\n const isEnd = props.type === 'end';\n const locale = useLocaleForControl('DateRangePicker', DateRangePickerLocaleHelper);\n\n const { isMobile } = useResponsiveLayout();\n\n useImperativeHandle(ref, () => (isStart ? startRef.current : endRef.current), []);\n\n useEffect(() => {\n if (isStart && startValue !== props.value) {\n setStartValue(props.value || '');\n } else if (isEnd && endValue !== props.value) {\n setEndValue(props.value || '');\n }\n }, [props.value]);\n\n useEffect(() => {\n if (isStart) {\n setStartOptional(props.optional || false);\n setStartDisabled(props.disabled || false);\n setMinDate(props.minDate || '');\n } else if (isEnd) {\n setEndOptional(props.optional || false);\n setEndDisabled(props.disabled || false);\n setMaxDate(props.maxDate || '');\n }\n }, [props.optional, props.disabled, props.minDate, props.maxDate]);\n\n useEffect(() => {\n if (isStart && startValue !== props.value && isNonNullable(startValue)) {\n props.onValueChange?.(startValue);\n }\n }, [startValue]);\n\n useEffect(() => {\n if (isEnd && endValue !== props.value && isNonNullable(endValue)) {\n props.onValueChange?.(endValue);\n }\n }, [endValue]);\n\n const commonProps: DateRangePickerInputProps = {\n withIcon: true,\n size,\n minDate,\n maxDate,\n ...props,\n onValueChange: (value) => {\n if (isStart) {\n setStartValue(value || '');\n } else if (isEnd) {\n setEndValue(value || '');\n }\n },\n onClick: (e) => {\n if (props.disabled) {\n return;\n }\n open(props.type);\n props.onClick?.(e);\n },\n onFocus: (e) => {\n open(props.type);\n props.onFocus?.(e);\n },\n onBlur: (e) => {\n props.onBlur?.(e);\n\n if (isMobile) {\n return;\n }\n const nextFocusedElement = e.relatedTarget;\n if (!dateRangePickerRef.current?.contains(nextFocusedElement)) {\n close();\n }\n setFocusInput(null);\n },\n };\n\n switch (props.type) {\n case 'start':\n return (\n <DateInput\n {...commonProps}\n value={props.value || ''}\n data-tid={props['data-tid'] || DateRangePickerDataTids.start}\n aria-label={props['aria-label'] || locale.startDateLabel}\n ref={startRef}\n />\n );\n case 'end':\n return (\n <DateInput\n {...commonProps}\n value={props.value || ''}\n data-tid={props['data-tid'] || DateRangePickerDataTids.end}\n aria-label={props['aria-label'] || locale.endDateLabel}\n ref={endRef}\n />\n );\n }\n});\n\nexport const DateRangePickerStart = forwardRefAndName(\n 'DateRangePickerStart',\n (props: DateRangePickerInputWithoutType, ref: Ref<DateInput>) => (\n <DateRangePickerInput type=\"start\" {...props} ref={ref} />\n ),\n);\n\nexport const DateRangePickerEnd = forwardRefAndName(\n 'DateRangePickerEnd',\n (props: DateRangePickerInputWithoutType, ref: Ref<DateInput>) => (\n <DateRangePickerInput type=\"end\" {...props} ref={ref} />\n ),\n);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_useLocaleForControl","_DateInput","_ResponsiveLayout","_forwardRefAndName","_utils","_constants","_DateRangePickerContext","_DateRangePicker","_locale","DateRangePickerInput","forwardRef","props","ref","_useContext","useContext","DateRangePickerContext","minDate","maxDate","startValue","endValue","size","setStartValue","setStartOptional","setStartDisabled","setEndValue","setEndOptional","setEndDisabled","setMinDate","setMaxDate","setFocusInput","open","close","startRef","endRef","isStart","type","isEnd","locale","useLocaleForControl","DateRangePickerLocaleHelper","_useResponsiveLayout","useResponsiveLayout","isMobile","useImperativeHandle","current","useEffect","value","optional","disabled","MIN_FULLDATE","MAX_FULLDATE","isNonNullable","onValueChange","commonProps","_extends2","default","withIcon","onClick","e","onFocus","onBlur","_startRef$current","_endRef$current","nextFocusedElement","relatedTarget","isFocusStart","getRootNode","contains","isFocusEnd","createElement","DateInput","DateRangePickerDataTids","start","startDateLabel","end","endDateLabel","DateRangePickerStart","exports","forwardRefAndName","DateRangePickerEnd"],"sources":["DateRangePickerInput.tsx"],"sourcesContent":["import type { Ref } from 'react';\nimport React, { forwardRef, useContext, useEffect, useImperativeHandle } from 'react';\n\nimport { useLocaleForControl } from '../../lib/locale/useLocaleForControl';\nimport type { DateInputProps } from '../DateInput';\nimport { DateInput } from '../DateInput';\nimport { useResponsiveLayout } from '../ResponsiveLayout';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\nimport { isNonNullable } from '../../lib/utils';\nimport { MIN_FULLDATE, MAX_FULLDATE } from '../../lib/date/constants';\n\nimport { DateRangePickerContext } from './DateRangePickerContext';\nimport { DateRangePickerDataTids } from './DateRangePicker';\nimport { DateRangePickerLocaleHelper } from './locale';\n\nexport type DateRangePickerInputType = 'start' | 'end';\n\nexport interface DateRangePickerInputProps extends Omit<DateInputProps, 'value'> {\n type: DateRangePickerInputType;\n value?: string | null;\n optional?: boolean;\n}\n\ntype DateRangePickerInputWithoutType = Omit<DateRangePickerInputProps, 'type'>;\n\nconst DateRangePickerInput = forwardRef((props: DateRangePickerInputProps, ref: Ref<DateInput | null>) => {\n const {\n minDate,\n maxDate,\n startValue,\n endValue,\n size,\n setStartValue,\n setStartOptional,\n setStartDisabled,\n setEndValue,\n setEndOptional,\n setEndDisabled,\n setMinDate,\n setMaxDate,\n setFocusInput,\n open,\n close,\n startRef,\n endRef,\n } = useContext(DateRangePickerContext);\n const isStart = props.type === 'start';\n const isEnd = props.type === 'end';\n const locale = useLocaleForControl('DateRangePicker', DateRangePickerLocaleHelper);\n\n const { isMobile } = useResponsiveLayout();\n\n useImperativeHandle(ref, () => (isStart ? startRef.current : endRef.current), []);\n\n useEffect(() => {\n if (isStart && startValue !== props.value) {\n setStartValue(props.value || '');\n } else if (isEnd && endValue !== props.value) {\n setEndValue(props.value || '');\n }\n }, [props.value]);\n\n useEffect(() => {\n if (isStart) {\n setStartOptional(props.optional || false);\n setStartDisabled(props.disabled || false);\n setMinDate(props.minDate || MIN_FULLDATE);\n } else if (isEnd) {\n setEndOptional(props.optional || false);\n setEndDisabled(props.disabled || false);\n setMaxDate(props.maxDate || MAX_FULLDATE);\n }\n }, [props.optional, props.disabled, props.minDate, props.maxDate]);\n\n useEffect(() => {\n if (isStart && startValue !== props.value && isNonNullable(startValue)) {\n props.onValueChange?.(startValue);\n }\n }, [startValue]);\n\n useEffect(() => {\n if (isEnd && endValue !== props.value && isNonNullable(endValue)) {\n props.onValueChange?.(endValue);\n }\n }, [endValue]);\n\n const commonProps: DateRangePickerInputProps = {\n withIcon: true,\n size,\n minDate,\n maxDate,\n ...props,\n onValueChange: (value) => {\n if (isStart) {\n setStartValue(value || '');\n } else if (isEnd) {\n setEndValue(value || '');\n }\n },\n onClick: (e) => {\n if (props.disabled) {\n return;\n }\n open(props.type);\n props.onClick?.(e);\n },\n onFocus: (e) => {\n open(props.type);\n props.onFocus?.(e);\n },\n onBlur: (e) => {\n props.onBlur?.(e);\n\n if (isMobile) {\n return;\n }\n\n const nextFocusedElement = e.relatedTarget;\n const isFocusStart = startRef.current?.getRootNode()?.contains(nextFocusedElement);\n const isFocusEnd = endRef.current?.getRootNode()?.contains(nextFocusedElement);\n\n if (!isFocusStart && !isFocusEnd) {\n close();\n setFocusInput(null);\n }\n },\n };\n\n switch (props.type) {\n case 'start':\n return (\n <DateInput\n {...commonProps}\n value={props.value || ''}\n data-tid={props['data-tid'] || DateRangePickerDataTids.start}\n aria-label={props['aria-label'] || locale.startDateLabel}\n ref={startRef}\n />\n );\n case 'end':\n return (\n <DateInput\n {...commonProps}\n value={props.value || ''}\n data-tid={props['data-tid'] || DateRangePickerDataTids.end}\n aria-label={props['aria-label'] || locale.endDateLabel}\n ref={endRef}\n />\n );\n }\n});\n\nexport const DateRangePickerStart = forwardRefAndName(\n 'DateRangePickerStart',\n (props: DateRangePickerInputWithoutType, ref: Ref<DateInput>) => (\n <DateRangePickerInput type=\"start\" {...props} ref={ref} />\n ),\n);\n\nexport const DateRangePickerEnd = forwardRefAndName(\n 'DateRangePickerEnd',\n (props: DateRangePickerInputWithoutType, ref: Ref<DateInput>) => (\n <DateRangePickerInput type=\"end\" {...props} ref={ref} />\n ),\n);\n"],"mappings":"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","ignoreList":[]}
@@ -165,7 +165,7 @@ export var DateRangePicker = Object.assign({
165
165
  }
166
166
 
167
167
  // fix DateInput flushSync warning in React 18
168
- setTimeout(function () {
168
+ var timeoutId = setTimeout(function () {
169
169
  var _currentFieldRef$curr4;
170
170
  var isStart = focusInput === 'start';
171
171
  var currentFieldRef;
@@ -196,7 +196,10 @@ export var DateRangePicker = Object.assign({
196
196
  currentFieldRef = isStart ? startRef : endRef;
197
197
  (_currentFieldRef$curr4 = currentFieldRef.current) == null || _currentFieldRef$curr4.focus();
198
198
  });
199
- }, [focusInput]);
199
+ return function () {
200
+ return clearTimeout(timeoutId);
201
+ };
202
+ }, [focusInput, isMobile, props.useMobileNativeDatePicker]);
200
203
  var dateRangePickerContextProps = {
201
204
  startValue: startValue,
202
205
  startOptional: startOptional,
@@ -327,7 +330,7 @@ export var DateRangePicker = Object.assign({
327
330
  hasShadow: true,
328
331
  priority: ZIndex.priorities.PopupMenu,
329
332
  positions: getMenuPositions(props.menuPos, props.menuAlign),
330
- "data-tid": DateRangePickerDataTids.root,
333
+ "data-tid": DateRangePickerDataTids.popup,
331
334
  anchorElement: getAnchorElement(),
332
335
  margin: parseInt(theme.datePickerMenuOffsetY)
333
336
  }, /*#__PURE__*/
@@ -1 +1 @@
1
- {"version":3,"names":["React","useImperativeHandle","useRef","useState","useLayoutEffect","MobilePopup","useLocaleForControl","css","cx","ThemeContext","CommonWrapper","Calendar","CalendarDay","Popup","DateInput","isBetween","isGreater","isGreaterOrEqual","isLess","isLessOrEqual","ZIndex","getRootNode","getMenuPositions","Button","useResponsiveLayout","InternalDate","InternalDateGetter","ArrowAUpIcon16Light","NativeDateInput","forwardRefAndName","LocaleContext","isIOS","getFontSize","styles","DateRangePickerSeparator","DateRangePickerContext","DateRangePickerEnd","DateRangePickerStart","getDateRangePickerTheme","getMobileDateRangePickerTheme","DateRangePickerLocaleHelper","validateDateRangePicker","getStateForValue","DateRangePickerDataTids","root","start","end","popup","calendar","todayButton","startOptionalButton","endOptionalButton","mobileStart","mobileEnd","rangeStart","rangeEnd","DayDateAttribute","DateRangePicker","Object","assign","Start","End","Separator","validate","props","ref","_useResponsiveLayout","isMobile","locale","_useState","startValue","setStartValue","_useState2","startOptional","setStartOptional","_useState3","startDisabled","setStartDisabled","_useState4","endValue","setEndValue","_useState5","endOptional","setEndOptional","_useState6","endDisabled","setEndDisabled","_useState7","minDate","setMinDate","_useState8","maxDate","setMaxDate","_useState9","hoveredDay","setHoveredDay","_useState10","showCalendar","setShowCalendar","_useState11","focusInput","setFocusInput","dateRangePickerRef","calendarRef","startRef","endRef","mobileStartRef","mobileEndRef","mobileNativeStartRef","mobileNativeEndRef","isCalendarOpen","updateDateRangeValues","value","currentValues","currentStart","currentEnd","updatedState","isOpen","focus","close","open","inputType","setEmpty","type","scrollToMonth","month","year","_calendarRef$current","current","setTimeout","_currentFieldRef$curr4","isStart","currentFieldRef","useMobileNativeDatePicker","_currentFieldRef$curr","_currentFieldRef$curr2","click","_currentFieldRef$curr3","dateRangePickerContextProps","size","renderCalendar","theme","widthAuto","_cx","createElement","Provider","months","dayCellChooseDateAriaLabel","selectMonthAriaLabel","selectYearAriaLabel","selectChosenAriaLabel","renderDay","dayProps","renderCalendarRange","onValueChange","onMonthChange","className","calendarWidthAuto","renderMobileCalendar","_cx2","_cx3","opened","headerChildComponent","inputWrapperWidthFull","withIcon","width","inputVisuallyFocus","disabled","onFocus","onCloseRequest","footerChildComponent","renderButtons","getAnchorElement","menuAnchorElement","isValidElement","renderDesktopCalendar","hasShadow","priority","priorities","PopupMenu","positions","menuPos","menuAlign","anchorElement","margin","parseInt","datePickerMenuOffsetY","calendarWrapper","onMouseDown","e","preventDefault","onMouseMove","handleCalendarRangeMouseMove","today","setComponents","getTodayComponents","toString","withPad","withSeparator","hasOptionalButtons","buttonWrap","Fragment","onClick","startDateEmpty","endDateEmpty","enableTodayLink","icon","todayAriaLabel","renderMobileNativeDateInput","Consumer","inputWrapperWidth","_templateObject","_taggedTemplateLiteralLoose","role","style","children","hoveredElement","target","hasAttribute","date","String","getAttribute","t","renderDayFn","_extends2","_cx4","day","isDayFirst","isDayLast","isDayInPeriod","Boolean","hasHoveredDay","isDayInHoveredPeriod","hasLeftRoundings","hasRightRoundings","isDayBeforeFirstInPeriod","isDayAfterLastInPeriod","isDayHovered","renderDayProps","_extends","dataTid","rangeCalendarDay","_templateObject2","rangeCalendarCellBg","calendarCellBorderRadius","rangeCalendarDayEnd","rangeCalendarDayHoverInPeriod","rangeCalendarDayInHoveredPeriod"],"sources":["DateRangePicker.tsx"],"sourcesContent":["import React, { useImperativeHandle, useRef, useState, useLayoutEffect, type AriaAttributes } from 'react';\n\nimport { MobilePopup } from '../../internal/MobilePopup';\nimport { useLocaleForControl } from '../../lib/locale/useLocaleForControl';\nimport { css, cx } from '../../lib/theming/Emotion';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { CalendarDayProps } from '../Calendar';\nimport { Calendar, CalendarDay } from '../Calendar';\nimport { Popup } from '../../internal/Popup';\nimport { DateInput } from '../DateInput';\nimport { isBetween, isGreater, isGreaterOrEqual, isLess, isLessOrEqual } from '../../lib/date/comparison';\nimport type { DatePickerProps } from '../DatePicker';\nimport { ZIndex } from '../../internal/ZIndex';\nimport type { InstanceWithRootNode } from '../../lib/rootNode';\nimport { getRootNode } from '../../lib/rootNode';\nimport { getMenuPositions } from '../../lib/getMenuPositions';\nimport { Button } from '../Button';\nimport { useResponsiveLayout } from '../ResponsiveLayout';\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { InternalDateGetter } from '../../lib/date/InternalDateGetter';\nimport { ArrowAUpIcon16Light } from '../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light';\nimport { NativeDateInput } from '../../internal/NativeDateInput';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\nimport { LocaleContext } from '../../lib/locale';\nimport { isIOS } from '../../lib/client';\n\nimport { getFontSize, styles } from './DateRangePicker.styles';\nimport { DateRangePickerSeparator } from './DateRangePickerSeparator';\nimport type { DateRangePickerContextProps } from './DateRangePickerContext';\nimport { DateRangePickerContext } from './DateRangePickerContext';\nimport type { DateRangePickerInputType } from './DateRangePickerInput';\nimport { DateRangePickerEnd, DateRangePickerStart } from './DateRangePickerInput';\nimport { getDateRangePickerTheme, getMobileDateRangePickerTheme } from './DateRangePickerTheme';\nimport { DateRangePickerLocaleHelper } from './locale';\nimport { validateDateRangePicker } from './helpers/validateDateRangePicker';\nimport { getStateForValue } from './helpers/getStateForValue';\n\nexport const DateRangePickerDataTids = {\n root: 'DateRangePicker__root',\n start: 'DateRangePicker__start',\n end: 'DateRangePicker__end',\n popup: 'DateRangePicker__popup',\n calendar: 'DateRangePicker__calendar',\n todayButton: 'DateRangePicker__todayButton',\n startOptionalButton: 'DateRangePicker__startOptionalButton',\n endOptionalButton: 'DateRangePicker__endOptionalButton',\n mobileStart: 'DateRangePicker__mobileStart',\n mobileEnd: 'DateRangePicker__mobileEnd',\n rangeStart: 'DateRangePicker__rangeStart',\n rangeEnd: 'DateRangePicker__rangeEnd',\n} as const;\n\nconst DayDateAttribute = 'data-date-range-picker-day';\n\nexport interface DateRangePickerProps\n extends CommonProps,\n Pick<AriaAttributes, 'aria-describedby' | 'aria-label' | 'aria-labelledby'>,\n Pick<\n DatePickerProps,\n | 'size'\n | 'width'\n | 'renderDay'\n | 'menuPos'\n | 'menuAlign'\n | 'useMobileNativeDatePicker'\n | 'enableTodayLink'\n | 'onMonthChange'\n > {\n /**\n * Элемент относительно которого открывается календарь,\n * Если передать значение `focused` - меню будет открываться у зафокусированного элемента.\n * Если передать ссылку на DOM элемент или ref - меню откроется относительно переданного элемента.\n */\n menuAnchorElement?: 'focused' | Element | React.ReactNode | React.RefObject<any>;\n /**\n * Элементы DateRangePicker:\n * `<DateRangePicker.Start />`\n * `<DateRangePicker.Separator />`\n * `<DateRangePicker.End />`\n */\n children: React.ReactNode;\n}\n\nexport interface DateRangePickerRef extends InstanceWithRootNode {\n open: (inputType?: DateRangePickerInputType) => void;\n close: () => void;\n scrollToMonth: (month: number, year: number) => void;\n}\n\nexport type DateRangePicker = DateRangePickerRef;\n\nexport const DateRangePicker = Object.assign(\n {\n Start: DateRangePickerStart,\n End: DateRangePickerEnd,\n Separator: DateRangePickerSeparator,\n validate: validateDateRangePicker,\n },\n forwardRefAndName<DateRangePickerRef, DateRangePickerProps>('DateRangePicker', (props: DateRangePickerProps, ref) => {\n const { isMobile } = useResponsiveLayout();\n const locale = useLocaleForControl('DateRangePicker', DateRangePickerLocaleHelper);\n\n const [startValue, setStartValue] = useState<string>();\n const [startOptional, setStartOptional] = useState(false);\n const [startDisabled, setStartDisabled] = useState(false);\n\n const [endValue, setEndValue] = useState<string>();\n const [endOptional, setEndOptional] = useState(false);\n const [endDisabled, setEndDisabled] = useState(false);\n\n const [minDate, setMinDate] = useState('');\n const [maxDate, setMaxDate] = useState('');\n\n const [hoveredDay, setHoveredDay] = useState<string | null>(null);\n const [showCalendar, setShowCalendar] = useState<boolean>(false);\n const [focusInput, setFocusInput] = useState<DateRangePickerInputType | null>(null);\n\n const dateRangePickerRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<Calendar>(null);\n const startRef = useRef<DateInput>(null);\n const endRef = useRef<DateInput>(null);\n const mobileStartRef = useRef<DateInput>(null);\n const mobileEndRef = useRef<DateInput>(null);\n const mobileNativeStartRef = useRef<NativeDateInput>(null);\n const mobileNativeEndRef = useRef<NativeDateInput>(null);\n const isCalendarOpen = !startDisabled && !endDisabled && showCalendar;\n\n const updateDateRangeValues = (value = '') => {\n const currentValues = {\n currentStart: startValue,\n currentEnd: endValue,\n minDate,\n maxDate,\n };\n const updatedState = getStateForValue(focusInput, value, currentValues);\n\n setStartValue(updatedState.start);\n setEndValue(updatedState.end);\n\n if (updatedState.isOpen && updatedState.focus) {\n focus(updatedState.focus);\n }\n\n if (!updatedState.isOpen) {\n close();\n }\n };\n\n const open = (inputType: DateRangePickerInputType = 'start') => {\n setFocusInput(inputType);\n setShowCalendar(true);\n };\n\n const close = () => {\n setShowCalendar(false);\n setHoveredDay(null);\n };\n\n const focus = (inputType: DateRangePickerInputType = 'start') => {\n setFocusInput(inputType);\n };\n\n const setEmpty = (type: DateRangePickerInputType) => {\n switch (type) {\n case 'start':\n setStartValue('');\n focus('end');\n break;\n\n case 'end':\n setEndValue('');\n close();\n break;\n }\n };\n\n useImperativeHandle(\n ref,\n () => ({\n open,\n close,\n scrollToMonth: (month, year) => {\n calendarRef.current?.scrollToMonth?.(month, year);\n },\n getRootNode: () => dateRangePickerRef.current,\n }),\n [],\n );\n\n useLayoutEffect(() => {\n if (!focusInput) {\n return;\n }\n\n // fix DateInput flushSync warning in React 18\n setTimeout(() => {\n const isStart = focusInput === 'start';\n let currentFieldRef;\n\n // Mobile Native Picker\n if (isMobile && props.useMobileNativeDatePicker) {\n currentFieldRef = isStart ? mobileNativeStartRef : mobileNativeEndRef;\n if (isIOS) {\n currentFieldRef.current?.focus();\n } else {\n // Android open native datepicker only via click\n currentFieldRef.current?.click();\n }\n return;\n }\n\n // Mobile\n if (isMobile) {\n currentFieldRef = isStart ? mobileStartRef : mobileEndRef;\n currentFieldRef.current?.focus();\n return;\n }\n\n // Desktop\n currentFieldRef = isStart ? startRef : endRef;\n currentFieldRef.current?.focus();\n });\n }, [focusInput]);\n\n const dateRangePickerContextProps: DateRangePickerContextProps = {\n startValue,\n startOptional,\n startDisabled,\n endValue,\n endOptional,\n endDisabled,\n minDate,\n maxDate,\n size: props.size,\n setStartValue,\n setStartOptional,\n setStartDisabled,\n setEndValue,\n setEndOptional,\n setEndDisabled,\n setMinDate,\n setMaxDate,\n setFocusInput,\n open,\n close,\n dateRangePickerRef,\n startRef,\n endRef,\n };\n\n const renderCalendar = (theme: Theme, widthAuto = false) => (\n <LocaleContext.Provider\n value={{\n locale: {\n Calendar: {\n months: locale.months,\n dayCellChooseDateAriaLabel: locale.dayCellChooseDateAriaLabel,\n selectMonthAriaLabel: locale.selectMonthAriaLabel,\n selectYearAriaLabel: locale.selectYearAriaLabel,\n selectChosenAriaLabel: locale.selectChosenAriaLabel,\n },\n },\n }}\n >\n <Calendar\n value={focusInput === 'start' ? startValue : endValue}\n minDate={minDate}\n maxDate={maxDate}\n renderDay={(dayProps) => renderCalendarRange(dayProps, theme, props.renderDay)}\n onValueChange={(value) => updateDateRangeValues(value)}\n ref={calendarRef}\n onMonthChange={props.onMonthChange}\n className={cx({ [styles.calendarWidthAuto()]: widthAuto })}\n />\n </LocaleContext.Provider>\n );\n\n const renderMobileCalendar = (theme: Theme) => (\n <MobilePopup\n opened\n headerChildComponent={\n <div className={cx(styles.root(theme), styles.inputWrapperWidthFull())}>\n <DateInput\n withIcon\n value={startValue}\n width=\"auto\"\n size=\"medium\"\n className={cx({ [styles.inputVisuallyFocus(theme)]: focusInput === 'start' })}\n disabled={startDisabled}\n onValueChange={setStartValue}\n onFocus={() => setFocusInput('start')}\n ref={mobileStartRef}\n data-tid={DateRangePickerDataTids.mobileStart}\n />\n <DateRangePicker.Separator />\n <DateInput\n withIcon\n value={endValue}\n width=\"auto\"\n size=\"medium\"\n className={cx({ [styles.inputVisuallyFocus(theme)]: focusInput === 'end' })}\n disabled={endDisabled}\n onValueChange={setEndValue}\n onFocus={() => setFocusInput('end')}\n ref={mobileEndRef}\n data-tid={DateRangePickerDataTids.mobileEnd}\n />\n </div>\n }\n onCloseRequest={() => close()}\n footerChildComponent={renderButtons()}\n >\n <ThemeContext.Provider value={getMobileDateRangePickerTheme(theme)}>\n {renderCalendar(theme, true)}\n </ThemeContext.Provider>\n </MobilePopup>\n );\n\n const getAnchorElement = () => {\n const { menuAnchorElement } = props;\n if (menuAnchorElement === 'focused') {\n return getRootNode(focusInput === 'start' ? startRef.current : endRef.current);\n }\n\n if (React.isValidElement(menuAnchorElement)) {\n return menuAnchorElement;\n }\n\n if (menuAnchorElement && typeof menuAnchorElement === 'object' && 'current' in menuAnchorElement) {\n return getRootNode(menuAnchorElement.current);\n }\n\n return getRootNode(startRef.current) || getRootNode(endRef.current) || getRootNode(dateRangePickerRef.current);\n };\n\n const renderDesktopCalendar = (theme: Theme) => (\n <Popup\n opened\n hasShadow\n priority={ZIndex.priorities.PopupMenu}\n positions={getMenuPositions(props.menuPos, props.menuAlign)}\n data-tid={DateRangePickerDataTids.root}\n anchorElement={getAnchorElement()}\n margin={parseInt(theme.datePickerMenuOffsetY)}\n >\n <div\n className={styles.calendarWrapper(theme)}\n onMouseDown={(e) => e.preventDefault()}\n onMouseMove={handleCalendarRangeMouseMove}\n >\n {renderCalendar(theme)}\n {renderButtons()}\n </div>\n </Popup>\n );\n\n const renderButtons = () => {\n const today = new InternalDate(locale)\n .setComponents(InternalDateGetter.getTodayComponents())\n .toString({ withPad: true, withSeparator: true });\n\n const hasOptionalButtons = startOptional || endOptional;\n return (\n <div className={cx(styles.buttonWrap())}>\n {hasOptionalButtons && (\n <>\n {focusInput === 'start' && startOptional && (\n <Button\n width=\"100%\"\n data-tid={DateRangePickerDataTids.startOptionalButton}\n onClick={() => setEmpty('start')}\n >\n {locale.startDateEmpty}\n </Button>\n )}\n {focusInput === 'end' && endOptional && (\n <Button\n width=\"100%\"\n data-tid={DateRangePickerDataTids.endOptionalButton}\n onClick={() => setEmpty('end')}\n >\n {locale.endDateEmpty}\n </Button>\n )}\n </>\n )}\n\n {props.enableTodayLink && (\n <Button\n icon={<ArrowAUpIcon16Light />}\n aria-label={locale.todayAriaLabel}\n data-tid={DateRangePickerDataTids.todayButton}\n onClick={() => updateDateRangeValues(today)}\n >\n {!hasOptionalButtons && locale.today}\n </Button>\n )}\n </div>\n );\n };\n\n const renderMobileNativeDateInput = () => (\n <>\n <NativeDateInput\n value={startValue}\n minDate={minDate}\n maxDate={maxDate}\n onValueChange={setStartValue}\n disabled={startDisabled}\n ref={mobileNativeStartRef}\n />\n <NativeDateInput\n value={endValue}\n minDate={minDate}\n maxDate={maxDate}\n onValueChange={setEndValue}\n disabled={endDisabled}\n ref={mobileNativeEndRef}\n />\n </>\n );\n\n return (\n <ThemeContext.Consumer>\n {(theme) => (\n <ThemeContext.Provider value={getDateRangePickerTheme(theme)}>\n <DateRangePickerContext.Provider value={dateRangePickerContextProps}>\n <CommonWrapper {...props}>\n <div\n className={cx(\n styles.root(theme),\n styles.inputWrapperWidth(theme),\n css`\n font-size: ${getFontSize(theme, props.size)};\n `,\n )}\n role=\"group\"\n aria-describedby={props['aria-describedby']}\n aria-label={props['aria-label']}\n aria-labelledby={props['aria-labelledby']}\n data-tid={DateRangePickerDataTids.root}\n ref={dateRangePickerRef}\n style={{ width: props.width }}\n >\n {props.children}\n\n {props.useMobileNativeDatePicker && isMobile\n ? renderMobileNativeDateInput()\n : isCalendarOpen && (isMobile ? renderMobileCalendar(theme) : renderDesktopCalendar(theme))}\n </div>\n </CommonWrapper>\n </DateRangePickerContext.Provider>\n </ThemeContext.Provider>\n )}\n </ThemeContext.Consumer>\n );\n\n // Use parent mousemove event instead each CalendarDay's mouseenter / mouseover\n function handleCalendarRangeMouseMove(e: React.MouseEvent<HTMLDivElement, MouseEvent>) {\n if (!startValue && !endValue) {\n return;\n }\n\n const hoveredElement = e.target as HTMLElement;\n if (!hoveredElement.hasAttribute(DayDateAttribute) && hoveredDay === null) {\n return;\n }\n\n const date = String(hoveredElement?.getAttribute(DayDateAttribute)) || null;\n setHoveredDay(date);\n }\n\n function renderCalendarRange(\n props: CalendarDayProps,\n t: Theme,\n renderDayFn: ((props: CalendarDayProps) => React.ReactElement) | undefined,\n ) {\n const day = props.date;\n\n const isDayFirst = startValue === day;\n const isDayLast = endValue === day;\n const isDayInPeriod = Boolean(startValue && endValue && isBetween(day, startValue, endValue));\n\n const hasHoveredDay = hoveredDay !== null;\n const isDayInHoveredPeriod =\n hasHoveredDay &&\n Boolean(\n (focusInput === 'start' && endValue && isBetween(day, hoveredDay, endValue)) ||\n (focusInput === 'end' && startValue && isBetween(day, startValue, hoveredDay)),\n );\n\n let hasLeftRoundings;\n let hasRightRoundings;\n\n if (hasHoveredDay) {\n const isDayBeforeFirstInPeriod = startValue ? isLess(hoveredDay, startValue) : endValue;\n const isDayAfterLastInPeriod = endValue ? isGreater(hoveredDay, endValue) : startValue;\n\n if (isDayFirst && (isGreaterOrEqual(hoveredDay, startValue) || focusInput === 'end')) {\n hasLeftRoundings = true;\n }\n\n if (isDayLast && (isLessOrEqual(hoveredDay, endValue) || focusInput === 'start')) {\n hasRightRoundings = true;\n }\n\n const isDayHovered = hoveredDay === day;\n if (isDayHovered) {\n if (isDayBeforeFirstInPeriod) {\n hasLeftRoundings = true;\n }\n\n if (isDayAfterLastInPeriod) {\n hasRightRoundings = true;\n }\n }\n } else {\n if (isDayFirst) {\n hasLeftRoundings = true;\n }\n\n if (isDayLast) {\n hasRightRoundings = true;\n }\n }\n\n const renderDayProps = {\n ...props,\n [DayDateAttribute]: props.date,\n };\n\n let dataTid = null;\n if (isDayFirst) {\n dataTid = DateRangePickerDataTids.rangeStart;\n } else if (isDayLast) {\n dataTid = DateRangePickerDataTids.rangeEnd;\n }\n\n return (\n <div\n className={cx(\n styles.rangeCalendarDay(),\n css`\n background: ${isDayInPeriod && t.rangeCalendarCellBg};\n border-top-left-radius: ${hasLeftRoundings && t.calendarCellBorderRadius};\n border-bottom-left-radius: ${hasLeftRoundings && t.calendarCellBorderRadius};\n border-top-right-radius: ${hasRightRoundings && t.calendarCellBorderRadius};\n border-bottom-right-radius: ${hasRightRoundings && t.calendarCellBorderRadius};\n `,\n {\n [styles.rangeCalendarDayEnd(t)]: isDayFirst || isDayLast,\n [styles.rangeCalendarDayHoverInPeriod(t)]: isDayInPeriod,\n [styles.rangeCalendarDayInHoveredPeriod(t)]: isDayInHoveredPeriod,\n },\n )}\n data-tid={dataTid}\n >\n {renderDayFn ? renderDayFn(renderDayProps) : <CalendarDay {...renderDayProps} />}\n </div>\n );\n }\n }),\n);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useImperativeHandle","useRef","useState","useLayoutEffect","MobilePopup","useLocaleForControl","css","cx","ThemeContext","CommonWrapper","Calendar","CalendarDay","Popup","DateInput","isBetween","isGreater","isGreaterOrEqual","isLess","isLessOrEqual","ZIndex","getRootNode","getMenuPositions","Button","useResponsiveLayout","InternalDate","InternalDateGetter","ArrowAUpIcon16Light","NativeDateInput","forwardRefAndName","LocaleContext","isIOS","getFontSize","styles","DateRangePickerSeparator","DateRangePickerContext","DateRangePickerEnd","DateRangePickerStart","getDateRangePickerTheme","getMobileDateRangePickerTheme","DateRangePickerLocaleHelper","validateDateRangePicker","getStateForValue","DateRangePickerDataTids","root","start","end","popup","calendar","todayButton","startOptionalButton","endOptionalButton","mobileStart","mobileEnd","rangeStart","rangeEnd","DayDateAttribute","DateRangePicker","Object","assign","Start","End","Separator","validate","props","ref","_useResponsiveLayout","isMobile","locale","_useState","startValue","setStartValue","_useState2","startOptional","setStartOptional","_useState3","startDisabled","setStartDisabled","_useState4","endValue","setEndValue","_useState5","endOptional","setEndOptional","_useState6","endDisabled","setEndDisabled","_useState7","minDate","setMinDate","_useState8","maxDate","setMaxDate","_useState9","hoveredDay","setHoveredDay","_useState10","showCalendar","setShowCalendar","_useState11","focusInput","setFocusInput","dateRangePickerRef","calendarRef","startRef","endRef","mobileStartRef","mobileEndRef","mobileNativeStartRef","mobileNativeEndRef","isCalendarOpen","updateDateRangeValues","value","currentValues","currentStart","currentEnd","updatedState","isOpen","focus","close","open","inputType","setEmpty","type","scrollToMonth","month","year","_calendarRef$current","current","timeoutId","setTimeout","_currentFieldRef$curr4","isStart","currentFieldRef","useMobileNativeDatePicker","_currentFieldRef$curr","_currentFieldRef$curr2","click","_currentFieldRef$curr3","clearTimeout","dateRangePickerContextProps","size","renderCalendar","theme","widthAuto","_cx","createElement","Provider","months","dayCellChooseDateAriaLabel","selectMonthAriaLabel","selectYearAriaLabel","selectChosenAriaLabel","renderDay","dayProps","renderCalendarRange","onValueChange","onMonthChange","className","calendarWidthAuto","renderMobileCalendar","_cx2","_cx3","opened","headerChildComponent","inputWrapperWidthFull","withIcon","width","inputVisuallyFocus","disabled","onFocus","onCloseRequest","footerChildComponent","renderButtons","getAnchorElement","menuAnchorElement","isValidElement","renderDesktopCalendar","hasShadow","priority","priorities","PopupMenu","positions","menuPos","menuAlign","anchorElement","margin","parseInt","datePickerMenuOffsetY","calendarWrapper","onMouseDown","e","preventDefault","onMouseMove","handleCalendarRangeMouseMove","today","setComponents","getTodayComponents","toString","withPad","withSeparator","hasOptionalButtons","buttonWrap","Fragment","onClick","startDateEmpty","endDateEmpty","enableTodayLink","icon","todayAriaLabel","renderMobileNativeDateInput","Consumer","inputWrapperWidth","_templateObject","_taggedTemplateLiteralLoose","role","style","children","hoveredElement","target","hasAttribute","date","String","getAttribute","t","renderDayFn","_extends2","_cx4","day","isDayFirst","isDayLast","isDayInPeriod","Boolean","hasHoveredDay","isDayInHoveredPeriod","hasLeftRoundings","hasRightRoundings","isDayBeforeFirstInPeriod","isDayAfterLastInPeriod","isDayHovered","renderDayProps","_extends","dataTid","rangeCalendarDay","_templateObject2","rangeCalendarCellBg","calendarCellBorderRadius","rangeCalendarDayEnd","rangeCalendarDayHoverInPeriod","rangeCalendarDayInHoveredPeriod"],"sources":["DateRangePicker.tsx"],"sourcesContent":["import React, { useImperativeHandle, useRef, useState, useLayoutEffect, type AriaAttributes } from 'react';\n\nimport { MobilePopup } from '../../internal/MobilePopup';\nimport { useLocaleForControl } from '../../lib/locale/useLocaleForControl';\nimport { css, cx } from '../../lib/theming/Emotion';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { CalendarDayProps } from '../Calendar';\nimport { Calendar, CalendarDay } from '../Calendar';\nimport { Popup } from '../../internal/Popup';\nimport { DateInput } from '../DateInput';\nimport { isBetween, isGreater, isGreaterOrEqual, isLess, isLessOrEqual } from '../../lib/date/comparison';\nimport type { DatePickerProps } from '../DatePicker';\nimport { ZIndex } from '../../internal/ZIndex';\nimport type { InstanceWithRootNode } from '../../lib/rootNode';\nimport { getRootNode } from '../../lib/rootNode';\nimport { getMenuPositions } from '../../lib/getMenuPositions';\nimport { Button } from '../Button';\nimport { useResponsiveLayout } from '../ResponsiveLayout';\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { InternalDateGetter } from '../../lib/date/InternalDateGetter';\nimport { ArrowAUpIcon16Light } from '../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light';\nimport { NativeDateInput } from '../../internal/NativeDateInput';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\nimport { LocaleContext } from '../../lib/locale';\nimport { isIOS } from '../../lib/client';\n\nimport { getFontSize, styles } from './DateRangePicker.styles';\nimport { DateRangePickerSeparator } from './DateRangePickerSeparator';\nimport type { DateRangePickerContextProps } from './DateRangePickerContext';\nimport { DateRangePickerContext } from './DateRangePickerContext';\nimport type { DateRangePickerInputType } from './DateRangePickerInput';\nimport { DateRangePickerEnd, DateRangePickerStart } from './DateRangePickerInput';\nimport { getDateRangePickerTheme, getMobileDateRangePickerTheme } from './DateRangePickerTheme';\nimport { DateRangePickerLocaleHelper } from './locale';\nimport { validateDateRangePicker } from './helpers/validateDateRangePicker';\nimport { getStateForValue } from './helpers/getStateForValue';\n\nexport const DateRangePickerDataTids = {\n root: 'DateRangePicker__root',\n start: 'DateRangePicker__start',\n end: 'DateRangePicker__end',\n popup: 'DateRangePicker__popup',\n calendar: 'DateRangePicker__calendar',\n todayButton: 'DateRangePicker__todayButton',\n startOptionalButton: 'DateRangePicker__startOptionalButton',\n endOptionalButton: 'DateRangePicker__endOptionalButton',\n mobileStart: 'DateRangePicker__mobileStart',\n mobileEnd: 'DateRangePicker__mobileEnd',\n rangeStart: 'DateRangePicker__rangeStart',\n rangeEnd: 'DateRangePicker__rangeEnd',\n} as const;\n\nconst DayDateAttribute = 'data-date-range-picker-day';\n\nexport interface DateRangePickerProps\n extends CommonProps,\n Pick<AriaAttributes, 'aria-describedby' | 'aria-label' | 'aria-labelledby'>,\n Pick<\n DatePickerProps,\n | 'size'\n | 'width'\n | 'renderDay'\n | 'menuPos'\n | 'menuAlign'\n | 'useMobileNativeDatePicker'\n | 'enableTodayLink'\n | 'onMonthChange'\n > {\n /**\n * Элемент относительно которого открывается календарь,\n * Если передать значение `focused` - меню будет открываться у зафокусированного элемента.\n * Если передать ссылку на DOM элемент или ref - меню откроется относительно переданного элемента.\n */\n menuAnchorElement?: 'focused' | Element | React.ReactNode | React.RefObject<any>;\n /**\n * Элементы DateRangePicker:\n * `<DateRangePicker.Start />`\n * `<DateRangePicker.Separator />`\n * `<DateRangePicker.End />`\n */\n children: React.ReactNode;\n}\n\nexport interface DateRangePickerRef extends InstanceWithRootNode {\n open: (inputType?: DateRangePickerInputType) => void;\n close: () => void;\n scrollToMonth: (month: number, year: number) => void;\n}\n\nexport type DateRangePicker = DateRangePickerRef;\n\nexport const DateRangePicker = Object.assign(\n {\n Start: DateRangePickerStart,\n End: DateRangePickerEnd,\n Separator: DateRangePickerSeparator,\n validate: validateDateRangePicker,\n },\n forwardRefAndName<DateRangePickerRef, DateRangePickerProps>('DateRangePicker', (props: DateRangePickerProps, ref) => {\n const { isMobile } = useResponsiveLayout();\n const locale = useLocaleForControl('DateRangePicker', DateRangePickerLocaleHelper);\n\n const [startValue, setStartValue] = useState<string>();\n const [startOptional, setStartOptional] = useState(false);\n const [startDisabled, setStartDisabled] = useState(false);\n\n const [endValue, setEndValue] = useState<string>();\n const [endOptional, setEndOptional] = useState(false);\n const [endDisabled, setEndDisabled] = useState(false);\n\n const [minDate, setMinDate] = useState('');\n const [maxDate, setMaxDate] = useState('');\n\n const [hoveredDay, setHoveredDay] = useState<string | null>(null);\n const [showCalendar, setShowCalendar] = useState<boolean>(false);\n const [focusInput, setFocusInput] = useState<DateRangePickerInputType | null>(null);\n\n const dateRangePickerRef = useRef<HTMLDivElement>(null);\n const calendarRef = useRef<Calendar>(null);\n const startRef = useRef<DateInput>(null);\n const endRef = useRef<DateInput>(null);\n const mobileStartRef = useRef<DateInput>(null);\n const mobileEndRef = useRef<DateInput>(null);\n const mobileNativeStartRef = useRef<NativeDateInput>(null);\n const mobileNativeEndRef = useRef<NativeDateInput>(null);\n const isCalendarOpen = !startDisabled && !endDisabled && showCalendar;\n\n const updateDateRangeValues = (value = '') => {\n const currentValues = {\n currentStart: startValue,\n currentEnd: endValue,\n minDate,\n maxDate,\n };\n const updatedState = getStateForValue(focusInput, value, currentValues);\n\n setStartValue(updatedState.start);\n setEndValue(updatedState.end);\n\n if (updatedState.isOpen && updatedState.focus) {\n focus(updatedState.focus);\n }\n\n if (!updatedState.isOpen) {\n close();\n }\n };\n\n const open = (inputType: DateRangePickerInputType = 'start') => {\n setFocusInput(inputType);\n setShowCalendar(true);\n };\n\n const close = () => {\n setShowCalendar(false);\n setHoveredDay(null);\n };\n\n const focus = (inputType: DateRangePickerInputType = 'start') => {\n setFocusInput(inputType);\n };\n\n const setEmpty = (type: DateRangePickerInputType) => {\n switch (type) {\n case 'start':\n setStartValue('');\n focus('end');\n break;\n\n case 'end':\n setEndValue('');\n close();\n break;\n }\n };\n\n useImperativeHandle(\n ref,\n () => ({\n open,\n close,\n scrollToMonth: (month, year) => {\n calendarRef.current?.scrollToMonth?.(month, year);\n },\n getRootNode: () => dateRangePickerRef.current,\n }),\n [],\n );\n \n useLayoutEffect(() => {\n if (!focusInput) {\n return;\n }\n\n // fix DateInput flushSync warning in React 18\n const timeoutId = setTimeout(() => {\n const isStart = focusInput === 'start';\n let currentFieldRef;\n\n // Mobile Native Picker\n if (isMobile && props.useMobileNativeDatePicker) {\n currentFieldRef = isStart ? mobileNativeStartRef : mobileNativeEndRef;\n if (isIOS) {\n currentFieldRef.current?.focus();\n } else {\n // Android open native datepicker only via click\n currentFieldRef.current?.click();\n }\n return;\n }\n\n // Mobile\n if (isMobile) {\n currentFieldRef = isStart ? mobileStartRef : mobileEndRef;\n currentFieldRef.current?.focus();\n return;\n }\n\n // Desktop\n currentFieldRef = isStart ? startRef : endRef;\n currentFieldRef.current?.focus();\n });\n\n return () => clearTimeout(timeoutId);\n }, [focusInput, isMobile, props.useMobileNativeDatePicker]);\n\n const dateRangePickerContextProps: DateRangePickerContextProps = {\n startValue,\n startOptional,\n startDisabled,\n endValue,\n endOptional,\n endDisabled,\n minDate,\n maxDate,\n size: props.size,\n setStartValue,\n setStartOptional,\n setStartDisabled,\n setEndValue,\n setEndOptional,\n setEndDisabled,\n setMinDate,\n setMaxDate,\n setFocusInput,\n open,\n close,\n dateRangePickerRef,\n startRef,\n endRef,\n };\n\n const renderCalendar = (theme: Theme, widthAuto = false) => (\n <LocaleContext.Provider\n value={{\n locale: {\n Calendar: {\n months: locale.months,\n dayCellChooseDateAriaLabel: locale.dayCellChooseDateAriaLabel,\n selectMonthAriaLabel: locale.selectMonthAriaLabel,\n selectYearAriaLabel: locale.selectYearAriaLabel,\n selectChosenAriaLabel: locale.selectChosenAriaLabel,\n },\n },\n }}\n >\n <Calendar\n value={focusInput === 'start' ? startValue : endValue}\n minDate={minDate}\n maxDate={maxDate}\n renderDay={(dayProps) => renderCalendarRange(dayProps, theme, props.renderDay)}\n onValueChange={(value) => updateDateRangeValues(value)}\n ref={calendarRef}\n onMonthChange={props.onMonthChange}\n className={cx({ [styles.calendarWidthAuto()]: widthAuto })}\n />\n </LocaleContext.Provider>\n );\n\n const renderMobileCalendar = (theme: Theme) => (\n <MobilePopup\n opened\n headerChildComponent={\n <div className={cx(styles.root(theme), styles.inputWrapperWidthFull())}>\n <DateInput\n withIcon\n value={startValue}\n width=\"auto\"\n size=\"medium\"\n className={cx({ [styles.inputVisuallyFocus(theme)]: focusInput === 'start' })}\n disabled={startDisabled}\n onValueChange={setStartValue}\n onFocus={() => setFocusInput('start')}\n ref={mobileStartRef}\n data-tid={DateRangePickerDataTids.mobileStart}\n />\n <DateRangePicker.Separator />\n <DateInput\n withIcon\n value={endValue}\n width=\"auto\"\n size=\"medium\"\n className={cx({ [styles.inputVisuallyFocus(theme)]: focusInput === 'end' })}\n disabled={endDisabled}\n onValueChange={setEndValue}\n onFocus={() => setFocusInput('end')}\n ref={mobileEndRef}\n data-tid={DateRangePickerDataTids.mobileEnd}\n />\n </div>\n }\n onCloseRequest={() => close()}\n footerChildComponent={renderButtons()}\n >\n <ThemeContext.Provider value={getMobileDateRangePickerTheme(theme)}>\n {renderCalendar(theme, true)}\n </ThemeContext.Provider>\n </MobilePopup>\n );\n\n const getAnchorElement = () => {\n const { menuAnchorElement } = props;\n if (menuAnchorElement === 'focused') {\n return getRootNode(focusInput === 'start' ? startRef.current : endRef.current);\n }\n\n if (React.isValidElement(menuAnchorElement)) {\n return menuAnchorElement;\n }\n\n if (menuAnchorElement && typeof menuAnchorElement === 'object' && 'current' in menuAnchorElement) {\n return getRootNode(menuAnchorElement.current);\n }\n\n return getRootNode(startRef.current) || getRootNode(endRef.current) || getRootNode(dateRangePickerRef.current);\n };\n\n const renderDesktopCalendar = (theme: Theme) => (\n <Popup\n opened\n hasShadow\n priority={ZIndex.priorities.PopupMenu}\n positions={getMenuPositions(props.menuPos, props.menuAlign)}\n data-tid={DateRangePickerDataTids.popup}\n anchorElement={getAnchorElement()}\n margin={parseInt(theme.datePickerMenuOffsetY)}\n >\n <div\n className={styles.calendarWrapper(theme)}\n onMouseDown={(e) => e.preventDefault()}\n onMouseMove={handleCalendarRangeMouseMove}\n >\n {renderCalendar(theme)}\n {renderButtons()}\n </div>\n </Popup>\n );\n\n const renderButtons = () => {\n const today = new InternalDate(locale)\n .setComponents(InternalDateGetter.getTodayComponents())\n .toString({ withPad: true, withSeparator: true });\n\n const hasOptionalButtons = startOptional || endOptional;\n return (\n <div className={cx(styles.buttonWrap())}>\n {hasOptionalButtons && (\n <>\n {focusInput === 'start' && startOptional && (\n <Button\n width=\"100%\"\n data-tid={DateRangePickerDataTids.startOptionalButton}\n onClick={() => setEmpty('start')}\n >\n {locale.startDateEmpty}\n </Button>\n )}\n {focusInput === 'end' && endOptional && (\n <Button\n width=\"100%\"\n data-tid={DateRangePickerDataTids.endOptionalButton}\n onClick={() => setEmpty('end')}\n >\n {locale.endDateEmpty}\n </Button>\n )}\n </>\n )}\n\n {props.enableTodayLink && (\n <Button\n icon={<ArrowAUpIcon16Light />}\n aria-label={locale.todayAriaLabel}\n data-tid={DateRangePickerDataTids.todayButton}\n onClick={() => updateDateRangeValues(today)}\n >\n {!hasOptionalButtons && locale.today}\n </Button>\n )}\n </div>\n );\n };\n\n const renderMobileNativeDateInput = () => (\n <>\n <NativeDateInput\n value={startValue}\n minDate={minDate}\n maxDate={maxDate}\n onValueChange={setStartValue}\n disabled={startDisabled}\n ref={mobileNativeStartRef}\n />\n <NativeDateInput\n value={endValue}\n minDate={minDate}\n maxDate={maxDate}\n onValueChange={setEndValue}\n disabled={endDisabled}\n ref={mobileNativeEndRef}\n />\n </>\n );\n\n return (\n <ThemeContext.Consumer>\n {(theme) => (\n <ThemeContext.Provider value={getDateRangePickerTheme(theme)}>\n <DateRangePickerContext.Provider value={dateRangePickerContextProps}>\n <CommonWrapper {...props}>\n <div\n className={cx(\n styles.root(theme),\n styles.inputWrapperWidth(theme),\n css`\n font-size: ${getFontSize(theme, props.size)};\n `,\n )}\n role=\"group\"\n aria-describedby={props['aria-describedby']}\n aria-label={props['aria-label']}\n aria-labelledby={props['aria-labelledby']}\n data-tid={DateRangePickerDataTids.root}\n ref={dateRangePickerRef}\n style={{ width: props.width }}\n >\n {props.children}\n\n {props.useMobileNativeDatePicker && isMobile\n ? renderMobileNativeDateInput()\n : isCalendarOpen && (isMobile ? renderMobileCalendar(theme) : renderDesktopCalendar(theme))}\n </div>\n </CommonWrapper>\n </DateRangePickerContext.Provider>\n </ThemeContext.Provider>\n )}\n </ThemeContext.Consumer>\n );\n\n // Use parent mousemove event instead each CalendarDay's mouseenter / mouseover\n function handleCalendarRangeMouseMove(e: React.MouseEvent<HTMLDivElement, MouseEvent>) {\n if (!startValue && !endValue) {\n return;\n }\n\n const hoveredElement = e.target as HTMLElement;\n if (!hoveredElement.hasAttribute(DayDateAttribute) && hoveredDay === null) {\n return;\n }\n\n const date = String(hoveredElement?.getAttribute(DayDateAttribute)) || null;\n setHoveredDay(date);\n }\n\n function renderCalendarRange(\n props: CalendarDayProps,\n t: Theme,\n renderDayFn: ((props: CalendarDayProps) => React.ReactElement) | undefined,\n ) {\n const day = props.date;\n\n const isDayFirst = startValue === day;\n const isDayLast = endValue === day;\n const isDayInPeriod = Boolean(startValue && endValue && isBetween(day, startValue, endValue));\n\n const hasHoveredDay = hoveredDay !== null;\n const isDayInHoveredPeriod =\n hasHoveredDay &&\n Boolean(\n (focusInput === 'start' && endValue && isBetween(day, hoveredDay, endValue)) ||\n (focusInput === 'end' && startValue && isBetween(day, startValue, hoveredDay)),\n );\n\n let hasLeftRoundings;\n let hasRightRoundings;\n\n if (hasHoveredDay) {\n const isDayBeforeFirstInPeriod = startValue ? isLess(hoveredDay, startValue) : endValue;\n const isDayAfterLastInPeriod = endValue ? isGreater(hoveredDay, endValue) : startValue;\n\n if (isDayFirst && (isGreaterOrEqual(hoveredDay, startValue) || focusInput === 'end')) {\n hasLeftRoundings = true;\n }\n\n if (isDayLast && (isLessOrEqual(hoveredDay, endValue) || focusInput === 'start')) {\n hasRightRoundings = true;\n }\n\n const isDayHovered = hoveredDay === day;\n if (isDayHovered) {\n if (isDayBeforeFirstInPeriod) {\n hasLeftRoundings = true;\n }\n\n if (isDayAfterLastInPeriod) {\n hasRightRoundings = true;\n }\n }\n } else {\n if (isDayFirst) {\n hasLeftRoundings = true;\n }\n\n if (isDayLast) {\n hasRightRoundings = true;\n }\n }\n\n const renderDayProps = {\n ...props,\n [DayDateAttribute]: props.date,\n };\n\n let dataTid = null;\n if (isDayFirst) {\n dataTid = DateRangePickerDataTids.rangeStart;\n } else if (isDayLast) {\n dataTid = DateRangePickerDataTids.rangeEnd;\n }\n\n return (\n <div\n className={cx(\n styles.rangeCalendarDay(),\n css`\n background: ${isDayInPeriod && t.rangeCalendarCellBg};\n border-top-left-radius: ${hasLeftRoundings && t.calendarCellBorderRadius};\n border-bottom-left-radius: ${hasLeftRoundings && t.calendarCellBorderRadius};\n border-top-right-radius: ${hasRightRoundings && t.calendarCellBorderRadius};\n border-bottom-right-radius: ${hasRightRoundings && t.calendarCellBorderRadius};\n `,\n {\n [styles.rangeCalendarDayEnd(t)]: isDayFirst || isDayLast,\n [styles.rangeCalendarDayHoverInPeriod(t)]: isDayInPeriod,\n [styles.rangeCalendarDayInHoveredPeriod(t)]: isDayInHoveredPeriod,\n },\n )}\n data-tid={dataTid}\n >\n {renderDayFn ? renderDayFn(renderDayProps) : <CalendarDay {...renderDayProps} />}\n </div>\n );\n }\n }),\n);\n"],"mappings":"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","ignoreList":[]}
@@ -5,6 +5,7 @@ import { DateInput } from "../../DateInput";
5
5
  import { useResponsiveLayout } from "../../ResponsiveLayout";
6
6
  import { forwardRefAndName } from "../../../lib/forwardRefAndName";
7
7
  import { isNonNullable } from "../../../lib/utils";
8
+ import { MIN_FULLDATE, MAX_FULLDATE } from "../../../lib/date/constants";
8
9
  import { DateRangePickerContext } from "../DateRangePickerContext";
9
10
  import { DateRangePickerDataTids } from "../DateRangePicker";
10
11
  import { DateRangePickerLocaleHelper } from "../locale";
@@ -26,7 +27,6 @@ var DateRangePickerInput = /*#__PURE__*/forwardRef(function (props, ref) {
26
27
  setFocusInput = _useContext.setFocusInput,
27
28
  open = _useContext.open,
28
29
  close = _useContext.close,
29
- dateRangePickerRef = _useContext.dateRangePickerRef,
30
30
  startRef = _useContext.startRef,
31
31
  endRef = _useContext.endRef;
32
32
  var isStart = props.type === 'start';
@@ -48,11 +48,11 @@ var DateRangePickerInput = /*#__PURE__*/forwardRef(function (props, ref) {
48
48
  if (isStart) {
49
49
  setStartOptional(props.optional || false);
50
50
  setStartDisabled(props.disabled || false);
51
- setMinDate(props.minDate || '');
51
+ setMinDate(props.minDate || MIN_FULLDATE);
52
52
  } else if (isEnd) {
53
53
  setEndOptional(props.optional || false);
54
54
  setEndDisabled(props.disabled || false);
55
- setMaxDate(props.maxDate || '');
55
+ setMaxDate(props.maxDate || MAX_FULLDATE);
56
56
  }
57
57
  }, [props.optional, props.disabled, props.minDate, props.maxDate]);
58
58
  useEffect(function () {
@@ -90,16 +90,18 @@ var DateRangePickerInput = /*#__PURE__*/forwardRef(function (props, ref) {
90
90
  props.onFocus == null || props.onFocus(e);
91
91
  },
92
92
  onBlur: function onBlur(e) {
93
- var _dateRangePickerRef$c;
93
+ var _startRef$current, _endRef$current;
94
94
  props.onBlur == null || props.onBlur(e);
95
95
  if (isMobile) {
96
96
  return;
97
97
  }
98
98
  var nextFocusedElement = e.relatedTarget;
99
- if (!((_dateRangePickerRef$c = dateRangePickerRef.current) != null && _dateRangePickerRef$c.contains(nextFocusedElement))) {
99
+ var isFocusStart = (_startRef$current = startRef.current) == null || (_startRef$current = _startRef$current.getRootNode()) == null ? void 0 : _startRef$current.contains(nextFocusedElement);
100
+ var isFocusEnd = (_endRef$current = endRef.current) == null || (_endRef$current = _endRef$current.getRootNode()) == null ? void 0 : _endRef$current.contains(nextFocusedElement);
101
+ if (!isFocusStart && !isFocusEnd) {
100
102
  close();
103
+ setFocusInput(null);
101
104
  }
102
- setFocusInput(null);
103
105
  }
104
106
  });
105
107
  switch (props.type) {
@@ -1 +1 @@
1
- {"version":3,"names":["React","forwardRef","useContext","useEffect","useImperativeHandle","useLocaleForControl","DateInput","useResponsiveLayout","forwardRefAndName","isNonNullable","DateRangePickerContext","DateRangePickerDataTids","DateRangePickerLocaleHelper","DateRangePickerInput","props","ref","_useContext","minDate","maxDate","startValue","endValue","size","setStartValue","setStartOptional","setStartDisabled","setEndValue","setEndOptional","setEndDisabled","setMinDate","setMaxDate","setFocusInput","open","close","dateRangePickerRef","startRef","endRef","isStart","type","isEnd","locale","_useResponsiveLayout","isMobile","current","value","optional","disabled","onValueChange","commonProps","_extends","withIcon","onClick","e","onFocus","onBlur","_dateRangePickerRef$c","nextFocusedElement","relatedTarget","contains","createElement","start","startDateLabel","end","endDateLabel","DateRangePickerStart","DateRangePickerEnd"],"sources":["DateRangePickerInput.tsx"],"sourcesContent":["import type { Ref } from 'react';\nimport React, { forwardRef, useContext, useEffect, useImperativeHandle } from 'react';\n\nimport { useLocaleForControl } from '../../lib/locale/useLocaleForControl';\nimport type { DateInputProps } from '../DateInput';\nimport { DateInput } from '../DateInput';\nimport { useResponsiveLayout } from '../ResponsiveLayout';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\nimport { isNonNullable } from '../../lib/utils';\n\nimport { DateRangePickerContext } from './DateRangePickerContext';\nimport { DateRangePickerDataTids } from './DateRangePicker';\nimport { DateRangePickerLocaleHelper } from './locale';\n\nexport type DateRangePickerInputType = 'start' | 'end';\n\nexport interface DateRangePickerInputProps extends Omit<DateInputProps, 'value'> {\n type: DateRangePickerInputType;\n value?: string | null;\n optional?: boolean;\n}\n\ntype DateRangePickerInputWithoutType = Omit<DateRangePickerInputProps, 'type'>;\n\nconst DateRangePickerInput = forwardRef((props: DateRangePickerInputProps, ref: Ref<DateInput | null>) => {\n const {\n minDate,\n maxDate,\n startValue,\n endValue,\n size,\n setStartValue,\n setStartOptional,\n setStartDisabled,\n setEndValue,\n setEndOptional,\n setEndDisabled,\n setMinDate,\n setMaxDate,\n setFocusInput,\n open,\n close,\n dateRangePickerRef,\n startRef,\n endRef,\n } = useContext(DateRangePickerContext);\n const isStart = props.type === 'start';\n const isEnd = props.type === 'end';\n const locale = useLocaleForControl('DateRangePicker', DateRangePickerLocaleHelper);\n\n const { isMobile } = useResponsiveLayout();\n\n useImperativeHandle(ref, () => (isStart ? startRef.current : endRef.current), []);\n\n useEffect(() => {\n if (isStart && startValue !== props.value) {\n setStartValue(props.value || '');\n } else if (isEnd && endValue !== props.value) {\n setEndValue(props.value || '');\n }\n }, [props.value]);\n\n useEffect(() => {\n if (isStart) {\n setStartOptional(props.optional || false);\n setStartDisabled(props.disabled || false);\n setMinDate(props.minDate || '');\n } else if (isEnd) {\n setEndOptional(props.optional || false);\n setEndDisabled(props.disabled || false);\n setMaxDate(props.maxDate || '');\n }\n }, [props.optional, props.disabled, props.minDate, props.maxDate]);\n\n useEffect(() => {\n if (isStart && startValue !== props.value && isNonNullable(startValue)) {\n props.onValueChange?.(startValue);\n }\n }, [startValue]);\n\n useEffect(() => {\n if (isEnd && endValue !== props.value && isNonNullable(endValue)) {\n props.onValueChange?.(endValue);\n }\n }, [endValue]);\n\n const commonProps: DateRangePickerInputProps = {\n withIcon: true,\n size,\n minDate,\n maxDate,\n ...props,\n onValueChange: (value) => {\n if (isStart) {\n setStartValue(value || '');\n } else if (isEnd) {\n setEndValue(value || '');\n }\n },\n onClick: (e) => {\n if (props.disabled) {\n return;\n }\n open(props.type);\n props.onClick?.(e);\n },\n onFocus: (e) => {\n open(props.type);\n props.onFocus?.(e);\n },\n onBlur: (e) => {\n props.onBlur?.(e);\n\n if (isMobile) {\n return;\n }\n const nextFocusedElement = e.relatedTarget;\n if (!dateRangePickerRef.current?.contains(nextFocusedElement)) {\n close();\n }\n setFocusInput(null);\n },\n };\n\n switch (props.type) {\n case 'start':\n return (\n <DateInput\n {...commonProps}\n value={props.value || ''}\n data-tid={props['data-tid'] || DateRangePickerDataTids.start}\n aria-label={props['aria-label'] || locale.startDateLabel}\n ref={startRef}\n />\n );\n case 'end':\n return (\n <DateInput\n {...commonProps}\n value={props.value || ''}\n data-tid={props['data-tid'] || DateRangePickerDataTids.end}\n aria-label={props['aria-label'] || locale.endDateLabel}\n ref={endRef}\n />\n );\n }\n});\n\nexport const DateRangePickerStart = forwardRefAndName(\n 'DateRangePickerStart',\n (props: DateRangePickerInputWithoutType, ref: Ref<DateInput>) => (\n <DateRangePickerInput type=\"start\" {...props} ref={ref} />\n ),\n);\n\nexport const DateRangePickerEnd = forwardRefAndName(\n 'DateRangePickerEnd',\n (props: DateRangePickerInputWithoutType, ref: Ref<DateInput>) => (\n <DateRangePickerInput type=\"end\" {...props} ref={ref} />\n ),\n);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","forwardRef","useContext","useEffect","useImperativeHandle","useLocaleForControl","DateInput","useResponsiveLayout","forwardRefAndName","isNonNullable","MIN_FULLDATE","MAX_FULLDATE","DateRangePickerContext","DateRangePickerDataTids","DateRangePickerLocaleHelper","DateRangePickerInput","props","ref","_useContext","minDate","maxDate","startValue","endValue","size","setStartValue","setStartOptional","setStartDisabled","setEndValue","setEndOptional","setEndDisabled","setMinDate","setMaxDate","setFocusInput","open","close","startRef","endRef","isStart","type","isEnd","locale","_useResponsiveLayout","isMobile","current","value","optional","disabled","onValueChange","commonProps","_extends","withIcon","onClick","e","onFocus","onBlur","_startRef$current","_endRef$current","nextFocusedElement","relatedTarget","isFocusStart","getRootNode","contains","isFocusEnd","createElement","start","startDateLabel","end","endDateLabel","DateRangePickerStart","DateRangePickerEnd"],"sources":["DateRangePickerInput.tsx"],"sourcesContent":["import type { Ref } from 'react';\nimport React, { forwardRef, useContext, useEffect, useImperativeHandle } from 'react';\n\nimport { useLocaleForControl } from '../../lib/locale/useLocaleForControl';\nimport type { DateInputProps } from '../DateInput';\nimport { DateInput } from '../DateInput';\nimport { useResponsiveLayout } from '../ResponsiveLayout';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\nimport { isNonNullable } from '../../lib/utils';\nimport { MIN_FULLDATE, MAX_FULLDATE } from '../../lib/date/constants';\n\nimport { DateRangePickerContext } from './DateRangePickerContext';\nimport { DateRangePickerDataTids } from './DateRangePicker';\nimport { DateRangePickerLocaleHelper } from './locale';\n\nexport type DateRangePickerInputType = 'start' | 'end';\n\nexport interface DateRangePickerInputProps extends Omit<DateInputProps, 'value'> {\n type: DateRangePickerInputType;\n value?: string | null;\n optional?: boolean;\n}\n\ntype DateRangePickerInputWithoutType = Omit<DateRangePickerInputProps, 'type'>;\n\nconst DateRangePickerInput = forwardRef((props: DateRangePickerInputProps, ref: Ref<DateInput | null>) => {\n const {\n minDate,\n maxDate,\n startValue,\n endValue,\n size,\n setStartValue,\n setStartOptional,\n setStartDisabled,\n setEndValue,\n setEndOptional,\n setEndDisabled,\n setMinDate,\n setMaxDate,\n setFocusInput,\n open,\n close,\n startRef,\n endRef,\n } = useContext(DateRangePickerContext);\n const isStart = props.type === 'start';\n const isEnd = props.type === 'end';\n const locale = useLocaleForControl('DateRangePicker', DateRangePickerLocaleHelper);\n\n const { isMobile } = useResponsiveLayout();\n\n useImperativeHandle(ref, () => (isStart ? startRef.current : endRef.current), []);\n\n useEffect(() => {\n if (isStart && startValue !== props.value) {\n setStartValue(props.value || '');\n } else if (isEnd && endValue !== props.value) {\n setEndValue(props.value || '');\n }\n }, [props.value]);\n\n useEffect(() => {\n if (isStart) {\n setStartOptional(props.optional || false);\n setStartDisabled(props.disabled || false);\n setMinDate(props.minDate || MIN_FULLDATE);\n } else if (isEnd) {\n setEndOptional(props.optional || false);\n setEndDisabled(props.disabled || false);\n setMaxDate(props.maxDate || MAX_FULLDATE);\n }\n }, [props.optional, props.disabled, props.minDate, props.maxDate]);\n\n useEffect(() => {\n if (isStart && startValue !== props.value && isNonNullable(startValue)) {\n props.onValueChange?.(startValue);\n }\n }, [startValue]);\n\n useEffect(() => {\n if (isEnd && endValue !== props.value && isNonNullable(endValue)) {\n props.onValueChange?.(endValue);\n }\n }, [endValue]);\n\n const commonProps: DateRangePickerInputProps = {\n withIcon: true,\n size,\n minDate,\n maxDate,\n ...props,\n onValueChange: (value) => {\n if (isStart) {\n setStartValue(value || '');\n } else if (isEnd) {\n setEndValue(value || '');\n }\n },\n onClick: (e) => {\n if (props.disabled) {\n return;\n }\n open(props.type);\n props.onClick?.(e);\n },\n onFocus: (e) => {\n open(props.type);\n props.onFocus?.(e);\n },\n onBlur: (e) => {\n props.onBlur?.(e);\n\n if (isMobile) {\n return;\n }\n\n const nextFocusedElement = e.relatedTarget;\n const isFocusStart = startRef.current?.getRootNode()?.contains(nextFocusedElement);\n const isFocusEnd = endRef.current?.getRootNode()?.contains(nextFocusedElement);\n\n if (!isFocusStart && !isFocusEnd) {\n close();\n setFocusInput(null);\n }\n },\n };\n\n switch (props.type) {\n case 'start':\n return (\n <DateInput\n {...commonProps}\n value={props.value || ''}\n data-tid={props['data-tid'] || DateRangePickerDataTids.start}\n aria-label={props['aria-label'] || locale.startDateLabel}\n ref={startRef}\n />\n );\n case 'end':\n return (\n <DateInput\n {...commonProps}\n value={props.value || ''}\n data-tid={props['data-tid'] || DateRangePickerDataTids.end}\n aria-label={props['aria-label'] || locale.endDateLabel}\n ref={endRef}\n />\n );\n }\n});\n\nexport const DateRangePickerStart = forwardRefAndName(\n 'DateRangePickerStart',\n (props: DateRangePickerInputWithoutType, ref: Ref<DateInput>) => (\n <DateRangePickerInput type=\"start\" {...props} ref={ref} />\n ),\n);\n\nexport const DateRangePickerEnd = forwardRefAndName(\n 'DateRangePickerEnd',\n (props: DateRangePickerInputWithoutType, ref: Ref<DateInput>) => (\n <DateRangePickerInput type=\"end\" {...props} ref={ref} />\n ),\n);\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skbkontur/react-ui",
3
- "version": "5.6.12",
3
+ "version": "5.6.13-daterangepicker-hotel",
4
4
  "description": "UI Components",
5
5
  "main": "cjs/index.js",
6
6
  "module": "index.js",