@hh.ru/magritte-ui-date-picker 3.2.20 → 3.2.21

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.
@@ -4,7 +4,7 @@ import { useContext, useState, useMemo } from 'react';
4
4
  import classnames from 'classnames';
5
5
  import { AsyncDataContext } from './AsyncDataContext.js';
6
6
  import { Loader } from '@hh.ru/magritte-ui-loader';
7
- import { s as styles } from './date-picker-wHLX-fV3.js';
7
+ import { s as styles } from './date-picker-CrwJJiCQ.js';
8
8
 
9
9
  /**
10
10
  * Отображает лоадер поверх контента во время загрузки асинхронных данных.
@@ -33,7 +33,7 @@ const AsyncDataLoader = ({ children }) => {
33
33
  },
34
34
  };
35
35
  }, [asyncDataContext, setLoading]);
36
- return (jsxs("div", { className: classnames(styles.datePicker, { [styles.datePickerLoading]: isLoading }), children: [isLoading && (jsx("div", { className: styles.loader, children: jsx(Loader, {}) })), jsx("div", { className: classnames({ [styles.loading]: isLoading }), children: jsx(AsyncDataContext.Provider, { value: value, children: children }) })] }));
36
+ return (jsxs("div", { className: classnames(styles.datePicker, { [styles.datePickerLoading]: isLoading }), "data-qa": "date-picker", children: [isLoading && (jsx("div", { className: styles.loader, children: jsx(Loader, {}) })), jsx("div", { className: classnames({ [styles.loading]: isLoading }), children: jsx(AsyncDataContext.Provider, { value: value, children: children }) })] }));
37
37
  };
38
38
 
39
39
  export { AsyncDataLoader };
@@ -1 +1 @@
1
- {"version":3,"file":"AsyncDataLoader.js","sources":["../src/AsyncDataLoader.tsx"],"sourcesContent":["import { FC, PropsWithChildren, useContext, useMemo, useState } from 'react';\nimport classnames from 'classnames';\n\nimport { AsyncDataContext, AsyncDataContextProps } from '@hh.ru/magritte-ui-date-picker/AsyncDataContext';\nimport { DateType } from '@hh.ru/magritte-ui-date-picker/types';\nimport { Loader } from '@hh.ru/magritte-ui-loader';\n\nimport styles from './date-picker.less';\n\n/**\n * Отображает лоадер поверх контента во время загрузки асинхронных данных.\n * В multi-лейауте каждый календарь должен быть обернут в свой лоадер,\n * чтобы календари с уже загруженными данными рендерили их, а не анимацию лоадера\n */\nexport const AsyncDataLoader: FC<PropsWithChildren> = ({ children }) => {\n const asyncDataContext = useContext(AsyncDataContext);\n const [isLoading, setLoading] = useState(false);\n\n const value = useMemo<AsyncDataContextProps | null>(() => {\n if (!asyncDataContext) {\n return null;\n }\n\n return {\n ...asyncDataContext,\n startAsyncLoading: (startDate: DateType, endDate: DateType) => {\n setLoading(true);\n\n void (async () => {\n try {\n await asyncDataContext.awaitAsyncLoading(startDate, endDate);\n } finally {\n setLoading(false);\n }\n })();\n },\n };\n }, [asyncDataContext, setLoading]);\n\n return (\n <div className={classnames(styles.datePicker, { [styles.datePickerLoading]: isLoading })}>\n {isLoading && (\n <div className={styles.loader}>\n <Loader />\n </div>\n )}\n <div className={classnames({ [styles.loading]: isLoading })}>\n <AsyncDataContext.Provider value={value}>{children}</AsyncDataContext.Provider>\n </div>\n </div>\n );\n};\n"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;AASA;;;;AAIG;MACU,eAAe,GAA0B,CAAC,EAAE,QAAQ,EAAE,KAAI;AACnE,IAAA,MAAM,gBAAgB,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACtD,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AAEhD,IAAA,MAAM,KAAK,GAAG,OAAO,CAA+B,MAAK;QACrD,IAAI,CAAC,gBAAgB,EAAE;AACnB,YAAA,OAAO,IAAI,CAAC;AACf,SAAA;QAED,OAAO;AACH,YAAA,GAAG,gBAAgB;AACnB,YAAA,iBAAiB,EAAE,CAAC,SAAmB,EAAE,OAAiB,KAAI;gBAC1D,UAAU,CAAC,IAAI,CAAC,CAAC;gBAEjB,KAAK,CAAC,YAAW;oBACb,IAAI;wBACA,MAAM,gBAAgB,CAAC,iBAAiB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AAChE,qBAAA;AAAS,4BAAA;wBACN,UAAU,CAAC,KAAK,CAAC,CAAC;AACrB,qBAAA;iBACJ,GAAG,CAAC;aACR;SACJ,CAAC;AACN,KAAC,EAAE,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC,CAAC;AAEnC,IAAA,QACIA,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC,iBAAiB,GAAG,SAAS,EAAE,CAAC,EAAA,QAAA,EAAA,CACnF,SAAS,KACNC,GAAK,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,MAAM,CAAC,MAAM,YACzBA,GAAC,CAAA,MAAM,EAAG,EAAA,CAAA,EAAA,CACR,CACT,EACDA,GAAK,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,GAAG,SAAS,EAAE,CAAC,EAAA,QAAA,EACvDA,GAAC,CAAA,gBAAgB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,EAAA,QAAA,EAAG,QAAQ,EAAA,CAA6B,EAC7E,CAAA,CAAA,EAAA,CACJ,EACR;AACN;;;;"}
1
+ {"version":3,"file":"AsyncDataLoader.js","sources":["../src/AsyncDataLoader.tsx"],"sourcesContent":["import { FC, PropsWithChildren, useContext, useMemo, useState } from 'react';\nimport classnames from 'classnames';\n\nimport { AsyncDataContext, AsyncDataContextProps } from '@hh.ru/magritte-ui-date-picker/AsyncDataContext';\nimport { DateType } from '@hh.ru/magritte-ui-date-picker/types';\nimport { Loader } from '@hh.ru/magritte-ui-loader';\n\nimport styles from './date-picker.less';\n\n/**\n * Отображает лоадер поверх контента во время загрузки асинхронных данных.\n * В multi-лейауте каждый календарь должен быть обернут в свой лоадер,\n * чтобы календари с уже загруженными данными рендерили их, а не анимацию лоадера\n */\nexport const AsyncDataLoader: FC<PropsWithChildren> = ({ children }) => {\n const asyncDataContext = useContext(AsyncDataContext);\n const [isLoading, setLoading] = useState(false);\n\n const value = useMemo<AsyncDataContextProps | null>(() => {\n if (!asyncDataContext) {\n return null;\n }\n\n return {\n ...asyncDataContext,\n startAsyncLoading: (startDate: DateType, endDate: DateType) => {\n setLoading(true);\n\n void (async () => {\n try {\n await asyncDataContext.awaitAsyncLoading(startDate, endDate);\n } finally {\n setLoading(false);\n }\n })();\n },\n };\n }, [asyncDataContext, setLoading]);\n\n return (\n <div className={classnames(styles.datePicker, { [styles.datePickerLoading]: isLoading })} data-qa=\"date-picker\">\n {isLoading && (\n <div className={styles.loader}>\n <Loader />\n </div>\n )}\n <div className={classnames({ [styles.loading]: isLoading })}>\n <AsyncDataContext.Provider value={value}>{children}</AsyncDataContext.Provider>\n </div>\n </div>\n );\n};\n"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;AASA;;;;AAIG;MACU,eAAe,GAA0B,CAAC,EAAE,QAAQ,EAAE,KAAI;AACnE,IAAA,MAAM,gBAAgB,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACtD,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AAEhD,IAAA,MAAM,KAAK,GAAG,OAAO,CAA+B,MAAK;QACrD,IAAI,CAAC,gBAAgB,EAAE;AACnB,YAAA,OAAO,IAAI,CAAC;AACf,SAAA;QAED,OAAO;AACH,YAAA,GAAG,gBAAgB;AACnB,YAAA,iBAAiB,EAAE,CAAC,SAAmB,EAAE,OAAiB,KAAI;gBAC1D,UAAU,CAAC,IAAI,CAAC,CAAC;gBAEjB,KAAK,CAAC,YAAW;oBACb,IAAI;wBACA,MAAM,gBAAgB,CAAC,iBAAiB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AAChE,qBAAA;AAAS,4BAAA;wBACN,UAAU,CAAC,KAAK,CAAC,CAAC;AACrB,qBAAA;iBACJ,GAAG,CAAC;aACR;SACJ,CAAC;AACN,KAAC,EAAE,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC,CAAC;AAEnC,IAAA,QACIA,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC,iBAAiB,GAAG,SAAS,EAAE,CAAC,EAAU,SAAA,EAAA,aAAa,aAC1G,SAAS,KACNC,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,MAAM,CAAC,MAAM,EACzB,QAAA,EAAAA,GAAA,CAAC,MAAM,EAAA,EAAA,CAAG,EACR,CAAA,CACT,EACDA,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,GAAG,SAAS,EAAE,CAAC,EACvD,QAAA,EAAAA,GAAA,CAAC,gBAAgB,CAAC,QAAQ,EAAC,EAAA,KAAK,EAAE,KAAK,YAAG,QAAQ,EAAA,CAA6B,EAC7E,CAAA,CAAA,EAAA,CACJ,EACR;AACN;;;;"}
package/DatePicker.js CHANGED
@@ -12,7 +12,7 @@ import { YearPicker } from './YearPicker.js';
12
12
  import { useDatePickerControls } from './useDatePickerControls.js';
13
13
  import { useDisplayDate } from './utils.js';
14
14
  import { Divider } from '@hh.ru/magritte-ui-divider';
15
- import { s as styles } from './date-picker-wHLX-fV3.js';
15
+ import { s as styles } from './date-picker-CrwJJiCQ.js';
16
16
  import 'classnames';
17
17
  import './AsyncDataContext.js';
18
18
  import '@hh.ru/magritte-ui-loader';
package/DayPicker.js CHANGED
@@ -14,7 +14,7 @@ import { NavigationBar } from '@hh.ru/magritte-ui-navigation-bar';
14
14
  import { VSpacing } from '@hh.ru/magritte-ui-spacing';
15
15
  import { TooltipHover } from '@hh.ru/magritte-ui-tooltip';
16
16
  import { Text } from '@hh.ru/magritte-ui-typography';
17
- import { s as styles } from './date-picker-wHLX-fV3.js';
17
+ import { s as styles } from './date-picker-CrwJJiCQ.js';
18
18
  import './AsyncDataContext.js';
19
19
 
20
20
  const DayPicker = ({ disabledDates, minDate, maxDate, displayDate, selectedDate, showAdjacentDays, onDateSelect, }) => {
@@ -36,7 +36,11 @@ const DayPicker = ({ disabledDates, minDate, maxDate, displayDate, selectedDate,
36
36
  [styles.textSelected]: isSelected,
37
37
  [styles.textToday]: isToday(date),
38
38
  [styles.textUnselected]: !isDisabled && !isSelected,
39
- }), disabled: isDisabled || isSelected, onClick: onClickHandlers[index], children: format(date, 'dd') })) }, `${date}`));
39
+ }), disabled: isDisabled || isSelected, onClick: onClickHandlers[index], "data-date": format(date, 'yyyy-MM-dd'), "data-qa": classnames('date-picker-day', {
40
+ 'date-picker-day-disabled': isDisabled,
41
+ 'date-picker-day-selected': isSelected,
42
+ 'date-picker-day-today': isToday(date),
43
+ }), children: format(date, 'dd') })) }, `${date}`));
40
44
  }) }));
41
45
  };
42
46
  const IntervalDayPicker = ({ disabledDates, minDate, maxDate, displayDate, selectionStart, selectionEnd, hoveredDate, dragState, onStartSelect, onEndSelect, onDateHover, onDateDrag, showAdjacentDays, }) => {
@@ -80,7 +84,11 @@ const IntervalDayPicker = ({ disabledDates, minDate, maxDate, displayDate, selec
80
84
  [styles.textDropTarget]: isDropTarget,
81
85
  [styles.textToday]: isToday(date),
82
86
  [styles.textUnselected]: !isDisabled && !isSelected && !isDragSource && !isDropTarget,
83
- }), disabled: isDisabled || isSelected || isDragSource, draggable: !isDisabled && isDraggable, children: format(date, 'dd') }), isWithinInterval && jsx("div", { className: styles.substrate })] })) }, `${date}`));
87
+ }), disabled: isDisabled || isSelected || isDragSource, draggable: !isDisabled && isDraggable, "data-date": format(date, 'yyyy-MM-dd'), "data-qa": classnames('date-picker-day', {
88
+ 'date-picker-day-disabled': isDisabled,
89
+ 'date-picker-day-selected': isSelected,
90
+ 'date-picker-day-today': isToday(date),
91
+ }), children: format(date, 'dd') }), isWithinInterval && jsx("div", { className: styles.substrate })] })) }, `${date}`));
84
92
  }) }));
85
93
  };
86
94
  const InfoDayTooltipWrapper = ({ children, tooltip }) => {
@@ -108,7 +116,12 @@ const InfoDayPicker = ({ displayDate, holidays: _holidays, shortWorkdays: _short
108
116
  if (info) {
109
117
  setBottomSheetState({ show: true, ...info });
110
118
  }
111
- }, disabled: !info, children: format(date, 'dd') }), jsx("div", { className: styles.substrate })] })) }, `${date}`));
119
+ }, disabled: !info, "data-date": format(date, 'yyyy-MM-dd'), "data-qa": classnames('date-picker-day', {
120
+ 'date-picker-day-workday': isWorkDay,
121
+ 'date-picker-day-short-workday': shortWorkday,
122
+ 'date-picker-day-holyday': holiday,
123
+ 'date-picker-day-today': isToday(date),
124
+ }), children: format(date, 'dd') }), jsx("div", { className: styles.substrate })] })) }, `${date}`));
112
125
  }), jsxs(BottomSheet, { visible: bottomSheetState.show, header: jsx(NavigationBar, { title: bottomSheetState.header, right: { icon: CrossOutlinedSize24, onClick: onCloseBottomSheet }, showDivider: "always" }), onClose: onCloseBottomSheet, children: [jsx(Text, { Element: "span", typography: "label-2-regular", children: bottomSheetState.text }), jsx(VSpacing, { default: 48 })] })] }));
113
126
  };
114
127
 
package/DayPicker.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"DayPicker.js","sources":["../src/DayPicker.tsx"],"sourcesContent":["import { Fragment, FC, useMemo, useState, useRef, ReactNode } from 'react';\nimport classnames from 'classnames';\nimport { format, isFirstDayOfMonth, isLastDayOfMonth, isSameDay, isSameMonth, isToday } from 'date-fns';\nimport { daysInWeek as DAYS_IN_WEEK } from 'date-fns/constants';\n\nimport { useDisabled } from '@hh.ru/magritte-common-use-disabled';\nimport { BottomSheet } from '@hh.ru/magritte-ui-bottom-sheet';\nimport { DayPickerProps, IntervalDayPickerProps, InfoDayPickerProps } from '@hh.ru/magritte-ui-date-picker/types';\nimport { useDisabledDatesFunc } from '@hh.ru/magritte-ui-date-picker/useDisabledDatesFunc';\nimport { useIntervalPicker } from '@hh.ru/magritte-ui-date-picker/useIntervalPicker';\nimport { flatten, useDayPickerDates, InfoDay, getInfoByDateType } from '@hh.ru/magritte-ui-date-picker/utils';\nimport { CrossOutlinedSize24 } from '@hh.ru/magritte-ui-icon/icon';\nimport { NavigationBar } from '@hh.ru/magritte-ui-navigation-bar';\nimport { VSpacing } from '@hh.ru/magritte-ui-spacing';\nimport { TooltipHover } from '@hh.ru/magritte-ui-tooltip';\nimport { Text } from '@hh.ru/magritte-ui-typography';\n\nimport styles from './date-picker.less';\n\nexport const DayPicker: FC<DayPickerProps> = ({\n disabledDates,\n minDate,\n maxDate,\n displayDate,\n selectedDate,\n showAdjacentDays,\n onDateSelect,\n}) => {\n const dates = useDayPickerDates(displayDate);\n const disabledDatesFunc = useDisabledDatesFunc(dates[0], dates[dates.length - 1], disabledDates, minDate, maxDate);\n const forceDisabled = useDisabled();\n\n const onClickHandlers = useMemo(() => {\n return dates.map((date) => {\n return () => onDateSelect?.(date);\n });\n }, [dates, onDateSelect]);\n\n return (\n <div className={classnames(styles.calendar, styles.calendarDays)} data-qa=\"date-picker-days\">\n {dates.map((date, index) => {\n const isAdjacent = !isSameMonth(date, displayDate);\n const isDisabled = isAdjacent || forceDisabled || disabledDatesFunc(date);\n const isSelected = !!selectedDate && isSameDay(date, selectedDate);\n const display = !isAdjacent || showAdjacentDays;\n\n return (\n <div className={styles.item} key={`${date}`}>\n {display && (\n <button\n className={classnames(styles.text, {\n [styles.textDisabled]: isDisabled,\n [styles.textSelected]: isSelected,\n [styles.textToday]: isToday(date),\n [styles.textUnselected]: !isDisabled && !isSelected,\n })}\n disabled={isDisabled || isSelected}\n onClick={onClickHandlers[index]}\n >\n {format(date, 'dd')}\n </button>\n )}\n </div>\n );\n })}\n </div>\n );\n};\n\nexport const IntervalDayPicker: FC<IntervalDayPickerProps> = ({\n disabledDates,\n minDate,\n maxDate,\n displayDate,\n selectionStart,\n selectionEnd,\n hoveredDate,\n dragState,\n onStartSelect,\n onEndSelect,\n onDateHover,\n onDateDrag,\n showAdjacentDays,\n}) => {\n const dates = useDayPickerDates(displayDate);\n const disabledDatesFunc = useDisabledDatesFunc(dates[0], dates[dates.length - 1], disabledDates, minDate, maxDate);\n\n const datesProps = useIntervalPicker({\n dates,\n disabledDatesFunc,\n selectionStart,\n selectionEnd,\n hoveredDate,\n dragState,\n onStartSelect,\n onEndSelect,\n onDateHover,\n onDateDrag,\n isEqual: isSameDay,\n });\n\n return (\n <div className={classnames(styles.calendar, styles.calendarDays)} data-qa=\"date-picker-days\">\n {dates.map((date, index) => {\n const isAdjacent = !isSameMonth(date, displayDate);\n const {\n isDisabled: _isDisabled,\n isIntervalStart,\n isIntervalEnd,\n isSelected,\n isDraggable,\n isDragSource,\n isDropTarget,\n isWithinInterval,\n mouseHandlers,\n dragSourceHandlers,\n dropTargetHandlers,\n } = datesProps[index];\n const isDisabled = isAdjacent || _isDisabled;\n const isIntervalRowStart =\n isWithinInterval &&\n !isIntervalStart &&\n (index % DAYS_IN_WEEK === 0 || (!showAdjacentDays && isFirstDayOfMonth(date)));\n const isIntervalRowEnd =\n isWithinInterval &&\n !isIntervalEnd &&\n (index % DAYS_IN_WEEK === DAYS_IN_WEEK - 1 || (!showAdjacentDays && isLastDayOfMonth(date)));\n const display = !isAdjacent || showAdjacentDays;\n\n return (\n <div\n className={classnames(styles.item, {\n [styles.itemInterval]: isWithinInterval,\n [styles.itemIntervalStart]: isIntervalStart,\n [styles.itemIntervalEnd]: isIntervalEnd,\n [styles.itemIntervalRowStart]: isIntervalRowStart,\n [styles.itemIntervalRowEnd]: isIntervalRowEnd,\n })}\n key={`${date}`}\n >\n {display && (\n <Fragment>\n <button\n {...mouseHandlers}\n {...(!isDisabled ? dragSourceHandlers : {})}\n {...(!isDisabled ? dropTargetHandlers : {})}\n className={classnames(styles.text, {\n [styles.textDisabled]: isDisabled,\n [styles.textSelected]: isSelected,\n [styles.textDraggable]: !isDisabled && isDraggable,\n [styles.textDragSource]: isDragSource,\n [styles.textDropTarget]: isDropTarget,\n [styles.textToday]: isToday(date),\n [styles.textUnselected]:\n !isDisabled && !isSelected && !isDragSource && !isDropTarget,\n })}\n disabled={isDisabled || isSelected || isDragSource}\n draggable={!isDisabled && isDraggable}\n >\n {format(date, 'dd')}\n </button>\n {isWithinInterval && <div className={styles.substrate} />}\n </Fragment>\n )}\n </div>\n );\n })}\n </div>\n );\n};\n\ninterface BottomSheetState extends InfoDay {\n show: boolean;\n}\n\nconst InfoDayTooltipWrapper: FC<{ children: ReactNode; tooltip: ReactNode }> = ({ children, tooltip }) => {\n const activatorRef = useRef<HTMLDivElement | null>(null);\n\n return (\n <>\n <div className={styles.item} ref={activatorRef}>\n {children}\n </div>\n {tooltip && (\n <TooltipHover alignment=\"center\" direction=\"top\" activatorRef={activatorRef}>\n {tooltip}\n </TooltipHover>\n )}\n </>\n );\n};\n\nexport const InfoDayPicker: FC<InfoDayPickerProps> = ({\n displayDate,\n holidays: _holidays,\n shortWorkdays: _shortWorkdays,\n}) => {\n const dates = useDayPickerDates(displayDate);\n const [bottomSheetState, setBottomSheetState] = useState<BottomSheetState>({ show: false, text: '', header: '' });\n const onCloseBottomSheet = () => setBottomSheetState({ show: false, text: '', header: '' });\n\n const holidays = useMemo(() => _holidays && flatten(_holidays), [_holidays]);\n const shortWorkdays = useMemo(() => _shortWorkdays && flatten(_shortWorkdays), [_shortWorkdays]);\n\n return (\n <div className={classnames(styles.calendar, styles.calendarDays)} data-qa=\"date-picker-days\">\n {dates.map((date) => {\n const isAdjacent = !isSameMonth(date, displayDate);\n const holiday = holidays?.find((holiday) => isSameDay(date, holiday.date));\n const shortWorkday = shortWorkdays?.find((shortWorkday) => isSameDay(date, shortWorkday.date));\n const isWorkDay = !holiday && !shortWorkday;\n const info = getInfoByDateType(holiday, shortWorkday);\n const display = !isAdjacent;\n\n return (\n <InfoDayTooltipWrapper key={`${date}`} tooltip={info?.text}>\n {display && (\n <Fragment>\n <button\n className={classnames(styles.text, {\n [styles.textHoliday]: holiday,\n [styles.textShortWorkday]: shortWorkday,\n [styles.textWorkday]: isWorkDay,\n })}\n onClick={() => {\n if (info) {\n setBottomSheetState({ show: true, ...info });\n }\n }}\n disabled={!info}\n >\n {format(date, 'dd')}\n </button>\n <div className={styles.substrate} />\n </Fragment>\n )}\n </InfoDayTooltipWrapper>\n );\n })}\n\n <BottomSheet\n visible={bottomSheetState.show}\n header={\n <NavigationBar\n title={bottomSheetState.header}\n right={{ icon: CrossOutlinedSize24, onClick: onCloseBottomSheet }}\n showDivider=\"always\"\n />\n }\n onClose={onCloseBottomSheet}\n >\n <Text Element=\"span\" typography=\"label-2-regular\">\n {bottomSheetState.text}\n </Text>\n <VSpacing default={48} />\n </BottomSheet>\n </div>\n );\n};\n"],"names":["_jsx","DAYS_IN_WEEK","_jsxs","_Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"DayPicker.js","sources":["../src/DayPicker.tsx"],"sourcesContent":["import { Fragment, FC, useMemo, useState, useRef, ReactNode } from 'react';\nimport classnames from 'classnames';\nimport { format, isFirstDayOfMonth, isLastDayOfMonth, isSameDay, isSameMonth, isToday } from 'date-fns';\nimport { daysInWeek as DAYS_IN_WEEK } from 'date-fns/constants';\n\nimport { useDisabled } from '@hh.ru/magritte-common-use-disabled';\nimport { BottomSheet } from '@hh.ru/magritte-ui-bottom-sheet';\nimport { DayPickerProps, IntervalDayPickerProps, InfoDayPickerProps } from '@hh.ru/magritte-ui-date-picker/types';\nimport { useDisabledDatesFunc } from '@hh.ru/magritte-ui-date-picker/useDisabledDatesFunc';\nimport { useIntervalPicker } from '@hh.ru/magritte-ui-date-picker/useIntervalPicker';\nimport { flatten, useDayPickerDates, InfoDay, getInfoByDateType } from '@hh.ru/magritte-ui-date-picker/utils';\nimport { CrossOutlinedSize24 } from '@hh.ru/magritte-ui-icon/icon';\nimport { NavigationBar } from '@hh.ru/magritte-ui-navigation-bar';\nimport { VSpacing } from '@hh.ru/magritte-ui-spacing';\nimport { TooltipHover } from '@hh.ru/magritte-ui-tooltip';\nimport { Text } from '@hh.ru/magritte-ui-typography';\n\nimport styles from './date-picker.less';\n\nexport const DayPicker: FC<DayPickerProps> = ({\n disabledDates,\n minDate,\n maxDate,\n displayDate,\n selectedDate,\n showAdjacentDays,\n onDateSelect,\n}) => {\n const dates = useDayPickerDates(displayDate);\n const disabledDatesFunc = useDisabledDatesFunc(dates[0], dates[dates.length - 1], disabledDates, minDate, maxDate);\n const forceDisabled = useDisabled();\n\n const onClickHandlers = useMemo(() => {\n return dates.map((date) => {\n return () => onDateSelect?.(date);\n });\n }, [dates, onDateSelect]);\n\n return (\n <div className={classnames(styles.calendar, styles.calendarDays)} data-qa=\"date-picker-days\">\n {dates.map((date, index) => {\n const isAdjacent = !isSameMonth(date, displayDate);\n const isDisabled = isAdjacent || forceDisabled || disabledDatesFunc(date);\n const isSelected = !!selectedDate && isSameDay(date, selectedDate);\n const display = !isAdjacent || showAdjacentDays;\n\n return (\n <div className={styles.item} key={`${date}`}>\n {display && (\n <button\n className={classnames(styles.text, {\n [styles.textDisabled]: isDisabled,\n [styles.textSelected]: isSelected,\n [styles.textToday]: isToday(date),\n [styles.textUnselected]: !isDisabled && !isSelected,\n })}\n disabled={isDisabled || isSelected}\n onClick={onClickHandlers[index]}\n data-date={format(date, 'yyyy-MM-dd')}\n data-qa={classnames('date-picker-day', {\n 'date-picker-day-disabled': isDisabled,\n 'date-picker-day-selected': isSelected,\n 'date-picker-day-today': isToday(date),\n })}\n >\n {format(date, 'dd')}\n </button>\n )}\n </div>\n );\n })}\n </div>\n );\n};\n\nexport const IntervalDayPicker: FC<IntervalDayPickerProps> = ({\n disabledDates,\n minDate,\n maxDate,\n displayDate,\n selectionStart,\n selectionEnd,\n hoveredDate,\n dragState,\n onStartSelect,\n onEndSelect,\n onDateHover,\n onDateDrag,\n showAdjacentDays,\n}) => {\n const dates = useDayPickerDates(displayDate);\n const disabledDatesFunc = useDisabledDatesFunc(dates[0], dates[dates.length - 1], disabledDates, minDate, maxDate);\n\n const datesProps = useIntervalPicker({\n dates,\n disabledDatesFunc,\n selectionStart,\n selectionEnd,\n hoveredDate,\n dragState,\n onStartSelect,\n onEndSelect,\n onDateHover,\n onDateDrag,\n isEqual: isSameDay,\n });\n\n return (\n <div className={classnames(styles.calendar, styles.calendarDays)} data-qa=\"date-picker-days\">\n {dates.map((date, index) => {\n const isAdjacent = !isSameMonth(date, displayDate);\n const {\n isDisabled: _isDisabled,\n isIntervalStart,\n isIntervalEnd,\n isSelected,\n isDraggable,\n isDragSource,\n isDropTarget,\n isWithinInterval,\n mouseHandlers,\n dragSourceHandlers,\n dropTargetHandlers,\n } = datesProps[index];\n const isDisabled = isAdjacent || _isDisabled;\n const isIntervalRowStart =\n isWithinInterval &&\n !isIntervalStart &&\n (index % DAYS_IN_WEEK === 0 || (!showAdjacentDays && isFirstDayOfMonth(date)));\n const isIntervalRowEnd =\n isWithinInterval &&\n !isIntervalEnd &&\n (index % DAYS_IN_WEEK === DAYS_IN_WEEK - 1 || (!showAdjacentDays && isLastDayOfMonth(date)));\n const display = !isAdjacent || showAdjacentDays;\n\n return (\n <div\n className={classnames(styles.item, {\n [styles.itemInterval]: isWithinInterval,\n [styles.itemIntervalStart]: isIntervalStart,\n [styles.itemIntervalEnd]: isIntervalEnd,\n [styles.itemIntervalRowStart]: isIntervalRowStart,\n [styles.itemIntervalRowEnd]: isIntervalRowEnd,\n })}\n key={`${date}`}\n >\n {display && (\n <Fragment>\n <button\n {...mouseHandlers}\n {...(!isDisabled ? dragSourceHandlers : {})}\n {...(!isDisabled ? dropTargetHandlers : {})}\n className={classnames(styles.text, {\n [styles.textDisabled]: isDisabled,\n [styles.textSelected]: isSelected,\n [styles.textDraggable]: !isDisabled && isDraggable,\n [styles.textDragSource]: isDragSource,\n [styles.textDropTarget]: isDropTarget,\n [styles.textToday]: isToday(date),\n [styles.textUnselected]:\n !isDisabled && !isSelected && !isDragSource && !isDropTarget,\n })}\n disabled={isDisabled || isSelected || isDragSource}\n draggable={!isDisabled && isDraggable}\n data-date={format(date, 'yyyy-MM-dd')}\n data-qa={classnames('date-picker-day', {\n 'date-picker-day-disabled': isDisabled,\n 'date-picker-day-selected': isSelected,\n 'date-picker-day-today': isToday(date),\n })}\n >\n {format(date, 'dd')}\n </button>\n {isWithinInterval && <div className={styles.substrate} />}\n </Fragment>\n )}\n </div>\n );\n })}\n </div>\n );\n};\n\ninterface BottomSheetState extends InfoDay {\n show: boolean;\n}\n\nconst InfoDayTooltipWrapper: FC<{ children: ReactNode; tooltip: ReactNode }> = ({ children, tooltip }) => {\n const activatorRef = useRef<HTMLDivElement | null>(null);\n\n return (\n <>\n <div className={styles.item} ref={activatorRef}>\n {children}\n </div>\n {tooltip && (\n <TooltipHover alignment=\"center\" direction=\"top\" activatorRef={activatorRef}>\n {tooltip}\n </TooltipHover>\n )}\n </>\n );\n};\n\nexport const InfoDayPicker: FC<InfoDayPickerProps> = ({\n displayDate,\n holidays: _holidays,\n shortWorkdays: _shortWorkdays,\n}) => {\n const dates = useDayPickerDates(displayDate);\n const [bottomSheetState, setBottomSheetState] = useState<BottomSheetState>({ show: false, text: '', header: '' });\n const onCloseBottomSheet = () => setBottomSheetState({ show: false, text: '', header: '' });\n\n const holidays = useMemo(() => _holidays && flatten(_holidays), [_holidays]);\n const shortWorkdays = useMemo(() => _shortWorkdays && flatten(_shortWorkdays), [_shortWorkdays]);\n\n return (\n <div className={classnames(styles.calendar, styles.calendarDays)} data-qa=\"date-picker-days\">\n {dates.map((date) => {\n const isAdjacent = !isSameMonth(date, displayDate);\n const holiday = holidays?.find((holiday) => isSameDay(date, holiday.date));\n const shortWorkday = shortWorkdays?.find((shortWorkday) => isSameDay(date, shortWorkday.date));\n const isWorkDay = !holiday && !shortWorkday;\n const info = getInfoByDateType(holiday, shortWorkday);\n const display = !isAdjacent;\n\n return (\n <InfoDayTooltipWrapper key={`${date}`} tooltip={info?.text}>\n {display && (\n <Fragment>\n <button\n className={classnames(styles.text, {\n [styles.textHoliday]: holiday,\n [styles.textShortWorkday]: shortWorkday,\n [styles.textWorkday]: isWorkDay,\n })}\n onClick={() => {\n if (info) {\n setBottomSheetState({ show: true, ...info });\n }\n }}\n disabled={!info}\n data-date={format(date, 'yyyy-MM-dd')}\n data-qa={classnames('date-picker-day', {\n 'date-picker-day-workday': isWorkDay,\n 'date-picker-day-short-workday': shortWorkday,\n 'date-picker-day-holyday': holiday,\n 'date-picker-day-today': isToday(date),\n })}\n >\n {format(date, 'dd')}\n </button>\n <div className={styles.substrate} />\n </Fragment>\n )}\n </InfoDayTooltipWrapper>\n );\n })}\n\n <BottomSheet\n visible={bottomSheetState.show}\n header={\n <NavigationBar\n title={bottomSheetState.header}\n right={{ icon: CrossOutlinedSize24, onClick: onCloseBottomSheet }}\n showDivider=\"always\"\n />\n }\n onClose={onCloseBottomSheet}\n >\n <Text Element=\"span\" typography=\"label-2-regular\">\n {bottomSheetState.text}\n </Text>\n <VSpacing default={48} />\n </BottomSheet>\n </div>\n );\n};\n"],"names":["_jsx","DAYS_IN_WEEK","_jsxs","_Fragment"],"mappings":"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"}
package/Header.js CHANGED
@@ -7,7 +7,7 @@ import { useDisabled } from '@hh.ru/magritte-common-use-disabled';
7
7
  import { Action } from '@hh.ru/magritte-ui-action';
8
8
  import { makeYearsInterval } from './utils.js';
9
9
  import { ChevronLeftOutlinedSize24, ChevronDownOutlinedSize16, ChevronRightOutlinedSize24 } from '@hh.ru/magritte-ui-icon/icon';
10
- import { s as styles } from './date-picker-wHLX-fV3.js';
10
+ import { s as styles } from './date-picker-CrwJJiCQ.js';
11
11
  import 'date-fns/constants';
12
12
 
13
13
  const Header = ({ calendar, displayDate, activeHeader: _activeHeader = true, alignHeader = 'center', goToNextPeriod, goToPrevPeriod, headerMonthFormat = 'mm', locale, showControls = true, showHeaderDate = true, showNextControl = true, showPrevControl = true, switchCalendar, }) => {
package/InfiniteScroll.js CHANGED
@@ -3,7 +3,7 @@ import { jsx } from 'react/jsx-runtime';
3
3
  import { useRef, useState, useContext, useMemo, useCallback, useEffect, useLayoutEffect, Fragment } from 'react';
4
4
  import { initTouchHandlers } from '@hh.ru/magritte-internal-custom-scroll';
5
5
  import { AsyncDataContext } from './AsyncDataContext.js';
6
- import { s as styles } from './date-picker-wHLX-fV3.js';
6
+ import { s as styles } from './date-picker-CrwJJiCQ.js';
7
7
 
8
8
  const InfiniteScroll = ({ initialRenderedItems, invisibleThreshold, visibleThreshold, makeItemFunc, renderItemFunc, onVisibleItemChange, }) => {
9
9
  const stateRef = useRef({
package/InfoDatePicker.js CHANGED
@@ -9,7 +9,7 @@ import { YearPicker } from './YearPicker.js';
9
9
  import { useDatePickerControls } from './useDatePickerControls.js';
10
10
  import { useDisplayDate } from './utils.js';
11
11
  import { Divider } from '@hh.ru/magritte-ui-divider';
12
- import { s as styles } from './date-picker-wHLX-fV3.js';
12
+ import { s as styles } from './date-picker-CrwJJiCQ.js';
13
13
  import 'classnames';
14
14
  import 'date-fns';
15
15
  import 'date-fns/constants';
@@ -34,7 +34,7 @@ onDisplayDateChange,
34
34
  activeHeader, alignHeader, headerMonthFormat, locale, showControls, showDivider = true, showHeader = true, showHeaderDate, showWeekdays = true, }) => {
35
35
  const displayDate = useDisplayDate(_displayDate);
36
36
  const { calendar, switchCalendar, zoomIntoMonth, zoomIntoYear, goToNextPeriod, goToPrevPeriod } = useDatePickerControls(enabledCalendars, displayDate, onDisplayDateChange);
37
- return (jsx("div", { className: styles.layout, children: jsxs("div", { className: styles.datePicker, children: [showHeader && (jsx(Header, { calendar: calendar, displayDate: displayDate, activeHeader: activeHeader, alignHeader: alignHeader, goToNextPeriod: goToNextPeriod, goToPrevPeriod: goToPrevPeriod, headerMonthFormat: headerMonthFormat, locale: locale, showControls: showControls, showHeaderDate: showHeaderDate, switchCalendar: switchCalendar })), showWeekdays && calendar === 'day' && jsx(Weekdays, { locale: locale }), showDivider && (showHeader || showWeekdays) && jsx(Divider, {}), calendar === 'day' && (jsx(InfoDayPicker, { displayDate: displayDate, holidays: holidays, shortWorkdays: shortWorkdays })), calendar === 'month' && (jsx(MonthPicker, { locale: locale, displayDate: displayDate, onDateSelect: zoomIntoMonth })), calendar === 'year' && jsx(YearPicker, { displayDate: displayDate, onDateSelect: zoomIntoYear })] }) }));
37
+ return (jsx("div", { className: styles.layout, children: jsxs("div", { className: styles.datePicker, "data-qa": "date-picker", children: [showHeader && (jsx(Header, { calendar: calendar, displayDate: displayDate, activeHeader: activeHeader, alignHeader: alignHeader, goToNextPeriod: goToNextPeriod, goToPrevPeriod: goToPrevPeriod, headerMonthFormat: headerMonthFormat, locale: locale, showControls: showControls, showHeaderDate: showHeaderDate, switchCalendar: switchCalendar })), showWeekdays && calendar === 'day' && jsx(Weekdays, { locale: locale }), showDivider && (showHeader || showWeekdays) && jsx(Divider, {}), calendar === 'day' && (jsx(InfoDayPicker, { displayDate: displayDate, holidays: holidays, shortWorkdays: shortWorkdays })), calendar === 'month' && (jsx(MonthPicker, { locale: locale, displayDate: displayDate, onDateSelect: zoomIntoMonth })), calendar === 'year' && jsx(YearPicker, { displayDate: displayDate, onDateSelect: zoomIntoYear })] }) }));
38
38
  };
39
39
  const UncontrolledInfoDatePicker = ({ displayDate: initialDisplayDate, onDisplayDateChange, ...props }) => {
40
40
  const [displayDate, setDisplayDate] = useState(useDisplayDate(initialDisplayDate));
@@ -1 +1 @@
1
- {"version":3,"file":"InfoDatePicker.js","sources":["../src/InfoDatePicker.tsx"],"sourcesContent":["import { FC, useCallback, useState } from 'react';\n\nimport { InfoDayPicker } from '@hh.ru/magritte-ui-date-picker/DayPicker';\nimport { Header } from '@hh.ru/magritte-ui-date-picker/Header';\nimport { MonthPicker } from '@hh.ru/magritte-ui-date-picker/MonthPicker';\nimport { Weekdays } from '@hh.ru/magritte-ui-date-picker/Weekdays';\nimport { YearPicker } from '@hh.ru/magritte-ui-date-picker/YearPicker';\nimport { DateType, InfoDatePickerProps } from '@hh.ru/magritte-ui-date-picker/types';\nimport { useDatePickerControls } from '@hh.ru/magritte-ui-date-picker/useDatePickerControls';\nimport { useDisplayDate } from '@hh.ru/magritte-ui-date-picker/utils';\nimport { Divider } from '@hh.ru/magritte-ui-divider';\n\nimport styles from './date-picker.less';\n\nexport const InfoDatePicker: FC<InfoDatePickerProps> = ({\n // настройки функциональности\n displayDate: _displayDate,\n enabledCalendars,\n holidays,\n shortWorkdays,\n // колбеки\n onDisplayDateChange,\n // настройки внешнего вида\n activeHeader,\n alignHeader,\n headerMonthFormat,\n locale,\n showControls,\n showDivider = true,\n showHeader = true,\n showHeaderDate,\n showWeekdays = true,\n}) => {\n const displayDate = useDisplayDate(_displayDate);\n const { calendar, switchCalendar, zoomIntoMonth, zoomIntoYear, goToNextPeriod, goToPrevPeriod } =\n useDatePickerControls(enabledCalendars, displayDate, onDisplayDateChange);\n\n return (\n <div className={styles.layout}>\n <div className={styles.datePicker}>\n {showHeader && (\n <Header\n calendar={calendar}\n displayDate={displayDate}\n activeHeader={activeHeader}\n alignHeader={alignHeader}\n goToNextPeriod={goToNextPeriod}\n goToPrevPeriod={goToPrevPeriod}\n headerMonthFormat={headerMonthFormat}\n locale={locale}\n showControls={showControls}\n showHeaderDate={showHeaderDate}\n switchCalendar={switchCalendar}\n />\n )}\n {showWeekdays && calendar === 'day' && <Weekdays locale={locale} />}\n {showDivider && (showHeader || showWeekdays) && <Divider />}\n {calendar === 'day' && (\n <InfoDayPicker displayDate={displayDate} holidays={holidays} shortWorkdays={shortWorkdays} />\n )}\n {calendar === 'month' && (\n <MonthPicker locale={locale} displayDate={displayDate} onDateSelect={zoomIntoMonth} />\n )}\n {calendar === 'year' && <YearPicker displayDate={displayDate} onDateSelect={zoomIntoYear} />}\n </div>\n </div>\n );\n};\n\nexport const UncontrolledInfoDatePicker: FC<InfoDatePickerProps> = ({\n displayDate: initialDisplayDate,\n onDisplayDateChange,\n ...props\n}) => {\n const [displayDate, setDisplayDate] = useState<DateType>(useDisplayDate(initialDisplayDate));\n\n const handleDisplayDateChange = useCallback(\n (value: DateType) => {\n onDisplayDateChange?.(value);\n setDisplayDate(value);\n },\n [onDisplayDateChange, setDisplayDate]\n );\n\n return <InfoDatePicker {...props} displayDate={displayDate} onDisplayDateChange={handleDisplayDateChange} />;\n};\n"],"names":["_jsx","_jsxs"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAcO,MAAM,cAAc,GAA4B,CAAC;AACpD;AACA,WAAW,EAAE,YAAY,EACzB,gBAAgB,EAChB,QAAQ,EACR,aAAa;AACb;AACA,mBAAmB;AACnB;AACA,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,MAAM,EACN,YAAY,EACZ,WAAW,GAAG,IAAI,EAClB,UAAU,GAAG,IAAI,EACjB,cAAc,EACd,YAAY,GAAG,IAAI,GACtB,KAAI;AACD,IAAA,MAAM,WAAW,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;IACjD,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,GAC3F,qBAAqB,CAAC,gBAAgB,EAAE,WAAW,EAAE,mBAAmB,CAAC,CAAC;AAE9E,IAAA,QACIA,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,MAAM,CAAC,MAAM,EACzB,QAAA,EAAAC,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,MAAM,CAAC,UAAU,aAC5B,UAAU,KACPD,GAAA,CAAC,MAAM,EACH,EAAA,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,cAAc,EAC9B,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,EAC1B,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,cAAc,GAChC,CACL,EACA,YAAY,IAAI,QAAQ,KAAK,KAAK,IAAIA,GAAA,CAAC,QAAQ,EAAC,EAAA,MAAM,EAAE,MAAM,GAAI,EAClE,WAAW,KAAK,UAAU,IAAI,YAAY,CAAC,IAAIA,IAAC,OAAO,EAAA,EAAA,CAAG,EAC1D,QAAQ,KAAK,KAAK,KACfA,GAAA,CAAC,aAAa,EAAC,EAAA,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAI,CAAA,CAChG,EACA,QAAQ,KAAK,OAAO,KACjBA,GAAC,CAAA,WAAW,EAAC,EAAA,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,GAAI,CACzF,EACA,QAAQ,KAAK,MAAM,IAAIA,GAAA,CAAC,UAAU,EAAA,EAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAA,CAAI,CAC1F,EAAA,CAAA,EAAA,CACJ,EACR;AACN,EAAE;AAEW,MAAA,0BAA0B,GAA4B,CAAC,EAChE,WAAW,EAAE,kBAAkB,EAC/B,mBAAmB,EACnB,GAAG,KAAK,EACX,KAAI;AACD,IAAA,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAW,cAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC;AAE7F,IAAA,MAAM,uBAAuB,GAAG,WAAW,CACvC,CAAC,KAAe,KAAI;AAChB,QAAA,mBAAmB,GAAG,KAAK,CAAC,CAAC;QAC7B,cAAc,CAAC,KAAK,CAAC,CAAC;AAC1B,KAAC,EACD,CAAC,mBAAmB,EAAE,cAAc,CAAC,CACxC,CAAC;AAEF,IAAA,OAAOA,GAAC,CAAA,cAAc,EAAK,EAAA,GAAA,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,mBAAmB,EAAE,uBAAuB,GAAI,CAAC;AACjH;;;;"}
1
+ {"version":3,"file":"InfoDatePicker.js","sources":["../src/InfoDatePicker.tsx"],"sourcesContent":["import { FC, useCallback, useState } from 'react';\n\nimport { InfoDayPicker } from '@hh.ru/magritte-ui-date-picker/DayPicker';\nimport { Header } from '@hh.ru/magritte-ui-date-picker/Header';\nimport { MonthPicker } from '@hh.ru/magritte-ui-date-picker/MonthPicker';\nimport { Weekdays } from '@hh.ru/magritte-ui-date-picker/Weekdays';\nimport { YearPicker } from '@hh.ru/magritte-ui-date-picker/YearPicker';\nimport { DateType, InfoDatePickerProps } from '@hh.ru/magritte-ui-date-picker/types';\nimport { useDatePickerControls } from '@hh.ru/magritte-ui-date-picker/useDatePickerControls';\nimport { useDisplayDate } from '@hh.ru/magritte-ui-date-picker/utils';\nimport { Divider } from '@hh.ru/magritte-ui-divider';\n\nimport styles from './date-picker.less';\n\nexport const InfoDatePicker: FC<InfoDatePickerProps> = ({\n // настройки функциональности\n displayDate: _displayDate,\n enabledCalendars,\n holidays,\n shortWorkdays,\n // колбеки\n onDisplayDateChange,\n // настройки внешнего вида\n activeHeader,\n alignHeader,\n headerMonthFormat,\n locale,\n showControls,\n showDivider = true,\n showHeader = true,\n showHeaderDate,\n showWeekdays = true,\n}) => {\n const displayDate = useDisplayDate(_displayDate);\n const { calendar, switchCalendar, zoomIntoMonth, zoomIntoYear, goToNextPeriod, goToPrevPeriod } =\n useDatePickerControls(enabledCalendars, displayDate, onDisplayDateChange);\n\n return (\n <div className={styles.layout}>\n <div className={styles.datePicker} data-qa=\"date-picker\">\n {showHeader && (\n <Header\n calendar={calendar}\n displayDate={displayDate}\n activeHeader={activeHeader}\n alignHeader={alignHeader}\n goToNextPeriod={goToNextPeriod}\n goToPrevPeriod={goToPrevPeriod}\n headerMonthFormat={headerMonthFormat}\n locale={locale}\n showControls={showControls}\n showHeaderDate={showHeaderDate}\n switchCalendar={switchCalendar}\n />\n )}\n {showWeekdays && calendar === 'day' && <Weekdays locale={locale} />}\n {showDivider && (showHeader || showWeekdays) && <Divider />}\n {calendar === 'day' && (\n <InfoDayPicker displayDate={displayDate} holidays={holidays} shortWorkdays={shortWorkdays} />\n )}\n {calendar === 'month' && (\n <MonthPicker locale={locale} displayDate={displayDate} onDateSelect={zoomIntoMonth} />\n )}\n {calendar === 'year' && <YearPicker displayDate={displayDate} onDateSelect={zoomIntoYear} />}\n </div>\n </div>\n );\n};\n\nexport const UncontrolledInfoDatePicker: FC<InfoDatePickerProps> = ({\n displayDate: initialDisplayDate,\n onDisplayDateChange,\n ...props\n}) => {\n const [displayDate, setDisplayDate] = useState<DateType>(useDisplayDate(initialDisplayDate));\n\n const handleDisplayDateChange = useCallback(\n (value: DateType) => {\n onDisplayDateChange?.(value);\n setDisplayDate(value);\n },\n [onDisplayDateChange, setDisplayDate]\n );\n\n return <InfoDatePicker {...props} displayDate={displayDate} onDisplayDateChange={handleDisplayDateChange} />;\n};\n"],"names":["_jsx","_jsxs"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAcO,MAAM,cAAc,GAA4B,CAAC;AACpD;AACA,WAAW,EAAE,YAAY,EACzB,gBAAgB,EAChB,QAAQ,EACR,aAAa;AACb;AACA,mBAAmB;AACnB;AACA,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,MAAM,EACN,YAAY,EACZ,WAAW,GAAG,IAAI,EAClB,UAAU,GAAG,IAAI,EACjB,cAAc,EACd,YAAY,GAAG,IAAI,GACtB,KAAI;AACD,IAAA,MAAM,WAAW,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;IACjD,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,GAC3F,qBAAqB,CAAC,gBAAgB,EAAE,WAAW,EAAE,mBAAmB,CAAC,CAAC;AAE9E,IAAA,QACIA,GAAK,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,MAAM,CAAC,MAAM,EAAA,QAAA,EACzBC,IAAK,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,MAAM,CAAC,UAAU,EAAA,SAAA,EAAU,aAAa,EACnD,QAAA,EAAA,CAAA,UAAU,KACPD,IAAC,MAAM,EAAA,EACH,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,cAAc,EAC9B,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,EAC1B,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,cAAc,EAChC,CAAA,CACL,EACA,YAAY,IAAI,QAAQ,KAAK,KAAK,IAAIA,IAAC,QAAQ,EAAA,EAAC,MAAM,EAAE,MAAM,EAAI,CAAA,EAClE,WAAW,KAAK,UAAU,IAAI,YAAY,CAAC,IAAIA,GAAC,CAAA,OAAO,EAAG,EAAA,CAAA,EAC1D,QAAQ,KAAK,KAAK,KACfA,IAAC,aAAa,EAAA,EAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAA,CAAI,CAChG,EACA,QAAQ,KAAK,OAAO,KACjBA,GAAA,CAAC,WAAW,EAAA,EAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAI,CAAA,CACzF,EACA,QAAQ,KAAK,MAAM,IAAIA,GAAC,CAAA,UAAU,IAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,GAAI,CAC1F,EAAA,CAAA,EAAA,CACJ,EACR;AACN,EAAE;AAEW,MAAA,0BAA0B,GAA4B,CAAC,EAChE,WAAW,EAAE,kBAAkB,EAC/B,mBAAmB,EACnB,GAAG,KAAK,EACX,KAAI;AACD,IAAA,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAW,cAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC;AAE7F,IAAA,MAAM,uBAAuB,GAAG,WAAW,CACvC,CAAC,KAAe,KAAI;AAChB,QAAA,mBAAmB,GAAG,KAAK,CAAC,CAAC;QAC7B,cAAc,CAAC,KAAK,CAAC,CAAC;AAC1B,KAAC,EACD,CAAC,mBAAmB,EAAE,cAAc,CAAC,CACxC,CAAC;AAEF,IAAA,OAAOA,GAAC,CAAA,cAAc,EAAK,EAAA,GAAA,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,mBAAmB,EAAE,uBAAuB,GAAI,CAAC;AACjH;;;;"}
@@ -15,7 +15,7 @@ import { IntervalYearPicker } from './YearPicker.js';
15
15
  import { useDatePickerControls } from './useDatePickerControls.js';
16
16
  import { useDisplayDate } from './utils.js';
17
17
  import { Divider } from '@hh.ru/magritte-ui-divider';
18
- import { s as styles } from './date-picker-wHLX-fV3.js';
18
+ import { s as styles } from './date-picker-CrwJJiCQ.js';
19
19
  import 'classnames';
20
20
  import './AsyncDataContext.js';
21
21
  import '@hh.ru/magritte-ui-loader';
package/MonthPicker.js CHANGED
@@ -4,7 +4,7 @@ import classnames from 'classnames';
4
4
  import { eachMonthOfInterval, startOfYear, endOfYear, isSameMonth, format, startOfMonth, endOfMonth } from 'date-fns';
5
5
  import { useDisabled } from '@hh.ru/magritte-common-use-disabled';
6
6
  import { useIntervalPicker } from './useIntervalPicker.js';
7
- import { s as styles } from './date-picker-wHLX-fV3.js';
7
+ import { s as styles } from './date-picker-CrwJJiCQ.js';
8
8
  import 'react';
9
9
 
10
10
  const MONTHS_IN_ROW = 3;
@@ -13,12 +13,17 @@ const MonthPicker = ({ displayDate, selectedDate, onDateSelect, locale }) => {
13
13
  const forceDisabled = useDisabled();
14
14
  return (jsx("div", { className: classnames(styles.calendar, styles.calendarMonths), "data-qa": "date-picker-months", children: dates.map((date) => {
15
15
  const isSelected = !!selectedDate && isSameMonth(date, selectedDate);
16
+ const isCurrentMonth = isSameMonth(date, Date.now());
16
17
  return (jsx("div", { className: styles.item, children: jsx("button", { className: classnames(styles.text, {
17
18
  [styles.textDisabled]: forceDisabled,
18
19
  [styles.textSelected]: isSelected,
19
- [styles.textToday]: isSameMonth(date, Date.now()),
20
+ [styles.textToday]: isCurrentMonth,
20
21
  [styles.textUnselected]: !forceDisabled && !isSelected,
21
- }), onClick: () => onDateSelect?.(date), children: format(date, 'LLLL', { locale }) }) }, `${date}`));
22
+ }), onClick: () => onDateSelect?.(date), "data-month": format(date, 'yyyy-MM'), "data-qa": classnames('date-picker-month', {
23
+ 'date-picker-month-disabled': forceDisabled,
24
+ 'date-picker-month-selected': isSelected,
25
+ 'date-picker-month-current': isCurrentMonth,
26
+ }), children: format(date, 'LLLL', { locale }) }) }, `${date}`));
22
27
  }) }));
23
28
  };
24
29
  const IntervalMonthPicker = ({ displayDate, selectionStart, selectionEnd, onStartSelect, onEndSelect, locale, }) => {
@@ -35,6 +40,7 @@ const IntervalMonthPicker = ({ displayDate, selectionStart, selectionEnd, onStar
35
40
  const { isDisabled, isIntervalStart, isIntervalEnd, isSelected, isWithinInterval, mouseHandlers } = datesProps[index];
36
41
  const isIntervalRowStart = isWithinInterval && !isIntervalStart && index % MONTHS_IN_ROW === 0;
37
42
  const isIntervalRowEnd = isWithinInterval && !isIntervalEnd && index % MONTHS_IN_ROW === MONTHS_IN_ROW - 1;
43
+ const isCurrentMonth = isSameMonth(date, Date.now());
38
44
  return (jsxs("div", { className: classnames(styles.item, {
39
45
  [styles.itemInterval]: isWithinInterval,
40
46
  [styles.itemIntervalStart]: isIntervalStart,
@@ -44,8 +50,12 @@ const IntervalMonthPicker = ({ displayDate, selectionStart, selectionEnd, onStar
44
50
  }), children: [jsx("button", { ...mouseHandlers, className: classnames(styles.text, {
45
51
  [styles.textDisabled]: isDisabled,
46
52
  [styles.textSelected]: isSelected,
47
- [styles.textToday]: isSameMonth(date, Date.now()),
53
+ [styles.textToday]: isCurrentMonth,
48
54
  [styles.textUnselected]: !isDisabled && !isSelected,
55
+ }), "data-month": format(date, 'yyyy-MM'), "data-qa": classnames('date-picker-month', {
56
+ 'date-picker-month-disabled': isDisabled,
57
+ 'date-picker-month-selected': isSelected,
58
+ 'date-picker-month-current': isCurrentMonth,
49
59
  }), children: format(date, 'LLLL', { locale }) }), isWithinInterval && jsx("div", { className: styles.substrate })] }, `${date}`));
50
60
  }) }));
51
61
  };
@@ -1 +1 @@
1
- {"version":3,"file":"MonthPicker.js","sources":["../src/MonthPicker.tsx"],"sourcesContent":["import { FC } from 'react';\nimport classnames from 'classnames';\nimport { format, eachMonthOfInterval, isSameMonth, startOfMonth, endOfMonth, startOfYear, endOfYear } from 'date-fns';\n\nimport { useDisabled } from '@hh.ru/magritte-common-use-disabled';\nimport { MonthPickerProps, IntervalMonthPickerProps } from '@hh.ru/magritte-ui-date-picker/types';\nimport { useIntervalPicker } from '@hh.ru/magritte-ui-date-picker/useIntervalPicker';\n\nimport styles from './date-picker.less';\n\nconst MONTHS_IN_ROW = 3;\n\nexport const MonthPicker: FC<MonthPickerProps> = ({ displayDate, selectedDate, onDateSelect, locale }) => {\n const dates = eachMonthOfInterval({ start: startOfYear(displayDate), end: endOfYear(displayDate) });\n const forceDisabled = useDisabled();\n\n return (\n <div className={classnames(styles.calendar, styles.calendarMonths)} data-qa=\"date-picker-months\">\n {dates.map((date) => {\n const isSelected = !!selectedDate && isSameMonth(date, selectedDate);\n\n return (\n <div className={styles.item} key={`${date}`}>\n <button\n className={classnames(styles.text, {\n [styles.textDisabled]: forceDisabled,\n [styles.textSelected]: isSelected,\n [styles.textToday]: isSameMonth(date, Date.now()),\n [styles.textUnselected]: !forceDisabled && !isSelected,\n })}\n onClick={() => onDateSelect?.(date)}\n >\n {format(date, 'LLLL', { locale })}\n </button>\n </div>\n );\n })}\n </div>\n );\n};\n\nexport const IntervalMonthPicker: FC<IntervalMonthPickerProps> = ({\n displayDate,\n selectionStart,\n selectionEnd,\n onStartSelect,\n onEndSelect,\n locale,\n}) => {\n const dates = eachMonthOfInterval({ start: startOfYear(displayDate), end: endOfYear(displayDate) });\n\n const datesProps = useIntervalPicker({\n dates,\n selectionStart: selectionStart && startOfMonth(selectionStart),\n selectionEnd: selectionEnd && endOfMonth(selectionEnd),\n onStartSelect,\n onEndSelect,\n isEqual: isSameMonth,\n });\n\n return (\n <div className={classnames(styles.calendar, styles.calendarMonths)} data-qa=\"date-picker-months\">\n {dates.map((date, index) => {\n const { isDisabled, isIntervalStart, isIntervalEnd, isSelected, isWithinInterval, mouseHandlers } =\n datesProps[index];\n const isIntervalRowStart = isWithinInterval && !isIntervalStart && index % MONTHS_IN_ROW === 0;\n const isIntervalRowEnd =\n isWithinInterval && !isIntervalEnd && index % MONTHS_IN_ROW === MONTHS_IN_ROW - 1;\n\n return (\n <div\n className={classnames(styles.item, {\n [styles.itemInterval]: isWithinInterval,\n [styles.itemIntervalStart]: isIntervalStart,\n [styles.itemIntervalEnd]: isIntervalEnd,\n [styles.itemIntervalRowStart]: isIntervalRowStart,\n [styles.itemIntervalRowEnd]: isIntervalRowEnd,\n })}\n key={`${date}`}\n >\n <button\n {...mouseHandlers}\n className={classnames(styles.text, {\n [styles.textDisabled]: isDisabled,\n [styles.textSelected]: isSelected,\n [styles.textToday]: isSameMonth(date, Date.now()),\n [styles.textUnselected]: !isDisabled && !isSelected,\n })}\n >\n {format(date, 'LLLL', { locale })}\n </button>\n {isWithinInterval && <div className={styles.substrate} />}\n </div>\n );\n })}\n </div>\n );\n};\n"],"names":["_jsx","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"MonthPicker.js","sources":["../src/MonthPicker.tsx"],"sourcesContent":["import { FC } from 'react';\nimport classnames from 'classnames';\nimport { format, eachMonthOfInterval, isSameMonth, startOfMonth, endOfMonth, startOfYear, endOfYear } from 'date-fns';\n\nimport { useDisabled } from '@hh.ru/magritte-common-use-disabled';\nimport { MonthPickerProps, IntervalMonthPickerProps } from '@hh.ru/magritte-ui-date-picker/types';\nimport { useIntervalPicker } from '@hh.ru/magritte-ui-date-picker/useIntervalPicker';\n\nimport styles from './date-picker.less';\n\nconst MONTHS_IN_ROW = 3;\n\nexport const MonthPicker: FC<MonthPickerProps> = ({ displayDate, selectedDate, onDateSelect, locale }) => {\n const dates = eachMonthOfInterval({ start: startOfYear(displayDate), end: endOfYear(displayDate) });\n const forceDisabled = useDisabled();\n\n return (\n <div className={classnames(styles.calendar, styles.calendarMonths)} data-qa=\"date-picker-months\">\n {dates.map((date) => {\n const isSelected = !!selectedDate && isSameMonth(date, selectedDate);\n const isCurrentMonth = isSameMonth(date, Date.now());\n\n return (\n <div className={styles.item} key={`${date}`}>\n <button\n className={classnames(styles.text, {\n [styles.textDisabled]: forceDisabled,\n [styles.textSelected]: isSelected,\n [styles.textToday]: isCurrentMonth,\n [styles.textUnselected]: !forceDisabled && !isSelected,\n })}\n onClick={() => onDateSelect?.(date)}\n data-month={format(date, 'yyyy-MM')}\n data-qa={classnames('date-picker-month', {\n 'date-picker-month-disabled': forceDisabled,\n 'date-picker-month-selected': isSelected,\n 'date-picker-month-current': isCurrentMonth,\n })}\n >\n {format(date, 'LLLL', { locale })}\n </button>\n </div>\n );\n })}\n </div>\n );\n};\n\nexport const IntervalMonthPicker: FC<IntervalMonthPickerProps> = ({\n displayDate,\n selectionStart,\n selectionEnd,\n onStartSelect,\n onEndSelect,\n locale,\n}) => {\n const dates = eachMonthOfInterval({ start: startOfYear(displayDate), end: endOfYear(displayDate) });\n\n const datesProps = useIntervalPicker({\n dates,\n selectionStart: selectionStart && startOfMonth(selectionStart),\n selectionEnd: selectionEnd && endOfMonth(selectionEnd),\n onStartSelect,\n onEndSelect,\n isEqual: isSameMonth,\n });\n\n return (\n <div className={classnames(styles.calendar, styles.calendarMonths)} data-qa=\"date-picker-months\">\n {dates.map((date, index) => {\n const { isDisabled, isIntervalStart, isIntervalEnd, isSelected, isWithinInterval, mouseHandlers } =\n datesProps[index];\n const isIntervalRowStart = isWithinInterval && !isIntervalStart && index % MONTHS_IN_ROW === 0;\n const isIntervalRowEnd =\n isWithinInterval && !isIntervalEnd && index % MONTHS_IN_ROW === MONTHS_IN_ROW - 1;\n const isCurrentMonth = isSameMonth(date, Date.now());\n\n return (\n <div\n className={classnames(styles.item, {\n [styles.itemInterval]: isWithinInterval,\n [styles.itemIntervalStart]: isIntervalStart,\n [styles.itemIntervalEnd]: isIntervalEnd,\n [styles.itemIntervalRowStart]: isIntervalRowStart,\n [styles.itemIntervalRowEnd]: isIntervalRowEnd,\n })}\n key={`${date}`}\n >\n <button\n {...mouseHandlers}\n className={classnames(styles.text, {\n [styles.textDisabled]: isDisabled,\n [styles.textSelected]: isSelected,\n [styles.textToday]: isCurrentMonth,\n [styles.textUnselected]: !isDisabled && !isSelected,\n })}\n data-month={format(date, 'yyyy-MM')}\n data-qa={classnames('date-picker-month', {\n 'date-picker-month-disabled': isDisabled,\n 'date-picker-month-selected': isSelected,\n 'date-picker-month-current': isCurrentMonth,\n })}\n >\n {format(date, 'LLLL', { locale })}\n </button>\n {isWithinInterval && <div className={styles.substrate} />}\n </div>\n );\n })}\n </div>\n );\n};\n"],"names":["_jsx","_jsxs"],"mappings":";;;;;;;;AAUA,MAAM,aAAa,GAAG,CAAC,CAAC;AAEjB,MAAM,WAAW,GAAyB,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,KAAI;IACrG,MAAM,KAAK,GAAG,mBAAmB,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;AACpG,IAAA,MAAM,aAAa,GAAG,WAAW,EAAE,CAAC;IAEpC,QACIA,GAAK,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,cAAc,CAAC,EAAA,SAAA,EAAU,oBAAoB,EAAA,QAAA,EAC3F,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAI;AAChB,YAAA,MAAM,UAAU,GAAG,CAAC,CAAC,YAAY,IAAI,WAAW,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;YACrE,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;AAErD,YAAA,QACIA,GAAK,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,MAAM,CAAC,IAAI,EAAA,QAAA,EACvBA,GACI,CAAA,QAAA,EAAA,EAAA,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE;AAC/B,wBAAA,CAAC,MAAM,CAAC,YAAY,GAAG,aAAa;AACpC,wBAAA,CAAC,MAAM,CAAC,YAAY,GAAG,UAAU;AACjC,wBAAA,CAAC,MAAM,CAAC,SAAS,GAAG,cAAc;wBAClC,CAAC,MAAM,CAAC,cAAc,GAAG,CAAC,aAAa,IAAI,CAAC,UAAU;qBACzD,CAAC,EACF,OAAO,EAAE,MAAM,YAAY,GAAG,IAAI,CAAC,gBACvB,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,EAC1B,SAAA,EAAA,UAAU,CAAC,mBAAmB,EAAE;AACrC,wBAAA,4BAA4B,EAAE,aAAa;AAC3C,wBAAA,4BAA4B,EAAE,UAAU;AACxC,wBAAA,2BAA2B,EAAE,cAAc;AAC9C,qBAAA,CAAC,YAED,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAC5B,EAjBqB,EAAA,CAAA,EAAG,IAAI,CAAE,CAAA,CAkBrC,EACR;SACL,CAAC,EACA,CAAA,EACR;AACN,EAAE;AAEW,MAAA,mBAAmB,GAAiC,CAAC,EAC9D,WAAW,EACX,cAAc,EACd,YAAY,EACZ,aAAa,EACb,WAAW,EACX,MAAM,GACT,KAAI;IACD,MAAM,KAAK,GAAG,mBAAmB,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAEpG,MAAM,UAAU,GAAG,iBAAiB,CAAC;QACjC,KAAK;AACL,QAAA,cAAc,EAAE,cAAc,IAAI,YAAY,CAAC,cAAc,CAAC;AAC9D,QAAA,YAAY,EAAE,YAAY,IAAI,UAAU,CAAC,YAAY,CAAC;QACtD,aAAa;QACb,WAAW;AACX,QAAA,OAAO,EAAE,WAAW;AACvB,KAAA,CAAC,CAAC;IAEH,QACIA,GAAK,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,cAAc,CAAC,EAAU,SAAA,EAAA,oBAAoB,EAC3F,QAAA,EAAA,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,KAAI;AACvB,YAAA,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE,aAAa,EAAE,GAC7F,UAAU,CAAC,KAAK,CAAC,CAAC;AACtB,YAAA,MAAM,kBAAkB,GAAG,gBAAgB,IAAI,CAAC,eAAe,IAAI,KAAK,GAAG,aAAa,KAAK,CAAC,CAAC;AAC/F,YAAA,MAAM,gBAAgB,GAClB,gBAAgB,IAAI,CAAC,aAAa,IAAI,KAAK,GAAG,aAAa,KAAK,aAAa,GAAG,CAAC,CAAC;YACtF,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAErD,QACIC,cACI,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE;AAC/B,oBAAA,CAAC,MAAM,CAAC,YAAY,GAAG,gBAAgB;AACvC,oBAAA,CAAC,MAAM,CAAC,iBAAiB,GAAG,eAAe;AAC3C,oBAAA,CAAC,MAAM,CAAC,eAAe,GAAG,aAAa;AACvC,oBAAA,CAAC,MAAM,CAAC,oBAAoB,GAAG,kBAAkB;AACjD,oBAAA,CAAC,MAAM,CAAC,kBAAkB,GAAG,gBAAgB;iBAChD,CAAC,EAAA,QAAA,EAAA,CAGFD,GACQ,CAAA,QAAA,EAAA,EAAA,GAAA,aAAa,EACjB,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE;AAC/B,4BAAA,CAAC,MAAM,CAAC,YAAY,GAAG,UAAU;AACjC,4BAAA,CAAC,MAAM,CAAC,YAAY,GAAG,UAAU;AACjC,4BAAA,CAAC,MAAM,CAAC,SAAS,GAAG,cAAc;4BAClC,CAAC,MAAM,CAAC,cAAc,GAAG,CAAC,UAAU,IAAI,CAAC,UAAU;yBACtD,CAAC,EAAA,YAAA,EACU,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,EAC1B,SAAA,EAAA,UAAU,CAAC,mBAAmB,EAAE;AACrC,4BAAA,4BAA4B,EAAE,UAAU;AACxC,4BAAA,4BAA4B,EAAE,UAAU;AACxC,4BAAA,2BAA2B,EAAE,cAAc;AAC9C,yBAAA,CAAC,EAED,QAAA,EAAA,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,EAAA,CAC5B,EACR,gBAAgB,IAAIA,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,MAAM,CAAC,SAAS,EAAA,CAAI,CAnBpD,EAAA,EAAA,CAAA,EAAG,IAAI,CAAA,CAAE,CAoBZ,EACR;SACL,CAAC,EACA,CAAA,EACR;AACN;;;;"}
package/Weekdays.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import './index.css';
2
2
  import { jsx } from 'react/jsx-runtime';
3
- import { s as styles } from './date-picker-wHLX-fV3.js';
3
+ import { s as styles } from './date-picker-CrwJJiCQ.js';
4
4
 
5
5
  const DAYS = [1, 2, 3, 4, 5, 6, 0];
6
6
  const Weekdays = ({ locale }) => {
package/YearPicker.js CHANGED
@@ -5,7 +5,7 @@ import { eachYearOfInterval, isSameYear, format, startOfYear, endOfYear } from '
5
5
  import { useDisabled } from '@hh.ru/magritte-common-use-disabled';
6
6
  import { useIntervalPicker } from './useIntervalPicker.js';
7
7
  import { makeYearsInterval } from './utils.js';
8
- import { s as styles } from './date-picker-wHLX-fV3.js';
8
+ import { s as styles } from './date-picker-CrwJJiCQ.js';
9
9
  import 'react';
10
10
  import 'date-fns/constants';
11
11
 
@@ -0,0 +1,5 @@
1
+ import './index.css';
2
+ var styles = {"layout":"magritte-layout___WQLZL_3-2-21","layout-horizontal":"magritte-layout-horizontal___RHMqN_3-2-21","layoutHorizontal":"magritte-layout-horizontal___RHMqN_3-2-21","layout-vertical":"magritte-layout-vertical___Q4III_3-2-21","layoutVertical":"magritte-layout-vertical___Q4III_3-2-21","date-picker":"magritte-date-picker___osO3k_3-2-21","datePicker":"magritte-date-picker___osO3k_3-2-21","date-picker_loading":"magritte-date-picker_loading___oEckY_3-2-21","datePickerLoading":"magritte-date-picker_loading___oEckY_3-2-21","loader":"magritte-loader___npAoS_3-2-21","loading":"magritte-loading___Q08Ci_3-2-21","sticky-wrapper":"magritte-sticky-wrapper___-cscS_3-2-21","stickyWrapper":"magritte-sticky-wrapper___-cscS_3-2-21","infinite-scroll-wrapper":"magritte-infinite-scroll-wrapper___4BFJP_3-2-21","infiniteScrollWrapper":"magritte-infinite-scroll-wrapper___4BFJP_3-2-21","header-wrapper":"magritte-header-wrapper___w3fTl_3-2-21","headerWrapper":"magritte-header-wrapper___w3fTl_3-2-21","header":"magritte-header___SYp35_3-2-21","header-date-wrapper_center":"magritte-header-date-wrapper_center___6X5Q4_3-2-21","headerDateWrapperCenter":"magritte-header-date-wrapper_center___6X5Q4_3-2-21","header-date-wrapper_left":"magritte-header-date-wrapper_left___hxe8I_3-2-21","headerDateWrapperLeft":"magritte-header-date-wrapper_left___hxe8I_3-2-21","header-date":"magritte-header-date___C28N0_3-2-21","headerDate":"magritte-header-date___C28N0_3-2-21","header-date_active":"magritte-header-date_active___FDSSp_3-2-21","headerDateActive":"magritte-header-date_active___FDSSp_3-2-21","control":"magritte-control___1JqcP_3-2-21","weekdays":"magritte-weekdays___zl5JK_3-2-21","weekday":"magritte-weekday___pDlOC_3-2-21","calendar":"magritte-calendar___X0u7X_3-2-21","calendar_days":"magritte-calendar_days___i0cpU_3-2-21","calendarDays":"magritte-calendar_days___i0cpU_3-2-21","calendar_months":"magritte-calendar_months___t0Vai_3-2-21","calendarMonths":"magritte-calendar_months___t0Vai_3-2-21","calendar_years":"magritte-calendar_years___XUL8j_3-2-21","calendarYears":"magritte-calendar_years___XUL8j_3-2-21","item":"magritte-item___U0-5-_3-2-21","text":"magritte-text___pG0UY_3-2-21","substrate":"magritte-substrate___EC-Ay_3-2-21","text_unselected":"magritte-text_unselected___gjuAU_3-2-21","textUnselected":"magritte-text_unselected___gjuAU_3-2-21","text_selected":"magritte-text_selected___a69MP_3-2-21","textSelected":"magritte-text_selected___a69MP_3-2-21","text_disabled":"magritte-text_disabled___I1IYo_3-2-21","textDisabled":"magritte-text_disabled___I1IYo_3-2-21","text_draggable":"magritte-text_draggable___ebUW6_3-2-21","textDraggable":"magritte-text_draggable___ebUW6_3-2-21","text_drag-source":"magritte-text_drag-source___-krSg_3-2-21","textDragSource":"magritte-text_drag-source___-krSg_3-2-21","text_drop-target":"magritte-text_drop-target___mwmCv_3-2-21","textDropTarget":"magritte-text_drop-target___mwmCv_3-2-21","text_today":"magritte-text_today___c3RHg_3-2-21","textToday":"magritte-text_today___c3RHg_3-2-21","disabled":"magritte-disabled___IsN76_3-2-21","item_interval":"magritte-item_interval___RbZXk_3-2-21","itemInterval":"magritte-item_interval___RbZXk_3-2-21","item_interval-start":"magritte-item_interval-start___4AC3w_3-2-21","itemIntervalStart":"magritte-item_interval-start___4AC3w_3-2-21","item_interval-end":"magritte-item_interval-end___X-E9S_3-2-21","itemIntervalEnd":"magritte-item_interval-end___X-E9S_3-2-21","item_interval-row-start":"magritte-item_interval-row-start___8AftH_3-2-21","itemIntervalRowStart":"magritte-item_interval-row-start___8AftH_3-2-21","item_interval-row-end":"magritte-item_interval-row-end___-AIXc_3-2-21","itemIntervalRowEnd":"magritte-item_interval-row-end___-AIXc_3-2-21","text_holiday":"magritte-text_holiday___532-b_3-2-21","textHoliday":"magritte-text_holiday___532-b_3-2-21","text_short-workday":"magritte-text_short-workday___lZl3F_3-2-21","textShortWorkday":"magritte-text_short-workday___lZl3F_3-2-21","text_workday":"magritte-text_workday___2Ok-d_3-2-21","textWorkday":"magritte-text_workday___2Ok-d_3-2-21"};
3
+
4
+ export { styles as s };
5
+ //# sourceMappingURL=date-picker-CrwJJiCQ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date-picker-CrwJJiCQ.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
package/index.css CHANGED
@@ -108,36 +108,36 @@
108
108
  --magritte-color-component-date-picker-header-icon-state-content-hovered-v18-2-1:#ffffff;
109
109
  --magritte-color-component-date-picker-header-icon-state-content-pressed-v18-2-1:#ffffff;
110
110
  }
111
- .magritte-layout___WQLZL_3-2-20{
111
+ .magritte-layout___WQLZL_3-2-21{
112
112
  display:inline-flex;
113
113
  }
114
- .magritte-layout-horizontal___RHMqN_3-2-20{
114
+ .magritte-layout-horizontal___RHMqN_3-2-21{
115
115
  display:inline-flex;
116
116
  }
117
- .magritte-layout-vertical___Q4III_3-2-20{
117
+ .magritte-layout-vertical___Q4III_3-2-21{
118
118
  display:block;
119
119
  }
120
- .magritte-date-picker___osO3k_3-2-20{
120
+ .magritte-date-picker___osO3k_3-2-21{
121
121
  position:relative;
122
122
  overflow:hidden;
123
123
  }
124
- .magritte-layout-horizontal___RHMqN_3-2-20 .magritte-date-picker_loading___oEckY_3-2-20{
124
+ .magritte-layout-horizontal___RHMqN_3-2-21 .magritte-date-picker_loading___oEckY_3-2-21{
125
125
  flex:1 0;
126
126
  }
127
- .magritte-layout-horizontal___RHMqN_3-2-20 .magritte-date-picker_loading___oEckY_3-2-20 + .magritte-date-picker_loading___oEckY_3-2-20{
127
+ .magritte-layout-horizontal___RHMqN_3-2-21 .magritte-date-picker_loading___oEckY_3-2-21 + .magritte-date-picker_loading___oEckY_3-2-21{
128
128
  flex:0 1;
129
129
  }
130
- .magritte-loader___npAoS_3-2-20{
130
+ .magritte-loader___npAoS_3-2-21{
131
131
  position:absolute;
132
132
  inset:0;
133
133
  display:flex;
134
134
  align-items:center;
135
135
  justify-content:center;
136
136
  }
137
- .magritte-loading___Q08Ci_3-2-20{
137
+ .magritte-loading___Q08Ci_3-2-21{
138
138
  visibility:hidden;
139
139
  }
140
- .magritte-sticky-wrapper___-cscS_3-2-20{
140
+ .magritte-sticky-wrapper___-cscS_3-2-21{
141
141
  display:flex;
142
142
  flex-direction:column;
143
143
  position:sticky;
@@ -145,39 +145,39 @@
145
145
  background:var(--magritte-color-component-date-picker-background-overflow-v18-2-1);
146
146
  z-index:2;
147
147
  }
148
- .magritte-infinite-scroll-wrapper___4BFJP_3-2-20{
148
+ .magritte-infinite-scroll-wrapper___4BFJP_3-2-21{
149
149
  will-change:transform;
150
150
  }
151
- .magritte-header-wrapper___w3fTl_3-2-20{
151
+ .magritte-header-wrapper___w3fTl_3-2-21{
152
152
  box-sizing:border-box;
153
153
  margin:0 auto;
154
154
  padding:var(--magritte-static-space-400-v18-2-1) var(--magritte-static-space-400-v18-2-1) var(--magritte-static-space-200-v18-2-1);
155
155
  width:min(100vw, 640px);
156
156
  }
157
157
  @media (min-width: 1020px){
158
- body.magritte-old-layout .magritte-header-wrapper___w3fTl_3-2-20{
158
+ body.magritte-old-layout .magritte-header-wrapper___w3fTl_3-2-21{
159
159
  margin:0;
160
160
  width:375px;
161
161
  }
162
162
  }
163
163
  @media (min-width: 1024px){
164
- body:not(.magritte-old-layout) .magritte-header-wrapper___w3fTl_3-2-20{
164
+ body:not(.magritte-old-layout) .magritte-header-wrapper___w3fTl_3-2-21{
165
165
  margin:0;
166
166
  width:375px;
167
167
  }
168
168
  }
169
- .magritte-header___SYp35_3-2-20{
169
+ .magritte-header___SYp35_3-2-21{
170
170
  display:flex;
171
171
  margin:0 -8px;
172
172
  }
173
- .magritte-header-date-wrapper_center___6X5Q4_3-2-20{
173
+ .magritte-header-date-wrapper_center___6X5Q4_3-2-21{
174
174
  margin:0 auto;
175
175
  }
176
- .magritte-header-date-wrapper_left___hxe8I_3-2-20{
176
+ .magritte-header-date-wrapper_left___hxe8I_3-2-21{
177
177
  margin:0 auto 0 8px;
178
178
  order:-1;
179
179
  }
180
- .magritte-header-date___C28N0_3-2-20{
180
+ .magritte-header-date___C28N0_3-2-21{
181
181
  font-family:var(--magritte-typography-subtitle-1-semibold-font-family-v18-2-1);
182
182
  font-weight:var(--magritte-typography-subtitle-1-semibold-font-weight-v18-2-1);
183
183
  line-height:var(--magritte-typography-subtitle-1-semibold-line-height-v18-2-1);
@@ -196,32 +196,32 @@
196
196
  border-radius:var(--magritte-static-border-radius-100-v18-2-1);
197
197
  --magritte-ui-icon-color-override:var(--magritte-color-component-date-picker-header-icon-content-v18-2-1);
198
198
  }
199
- .magritte-header-date___C28N0_3-2-20:active{
199
+ .magritte-header-date___C28N0_3-2-21:active{
200
200
  color:var(--magritte-color-component-date-picker-header-text-state-content-pressed-v18-2-1);
201
201
  --magritte-ui-icon-color-override:var(--magritte-color-component-date-picker-header-icon-state-content-pressed-v18-2-1);
202
202
  }
203
203
  @media (min-width: 1020px){
204
- body.magritte-old-layout .magritte-header-date___C28N0_3-2-20:hover:not(:active){
204
+ body.magritte-old-layout .magritte-header-date___C28N0_3-2-21:hover:not(:active){
205
205
  color:var(--magritte-color-component-date-picker-header-text-state-content-hovered-v18-2-1);
206
206
  --magritte-ui-icon-color-override:var(--magritte-color-component-date-picker-header-icon-state-content-hovered-v18-2-1);
207
207
  }
208
208
  }
209
209
  @media (min-width: 1024px){
210
- body:not(.magritte-old-layout) .magritte-header-date___C28N0_3-2-20:hover:not(:active){
210
+ body:not(.magritte-old-layout) .magritte-header-date___C28N0_3-2-21:hover:not(:active){
211
211
  color:var(--magritte-color-component-date-picker-header-text-state-content-hovered-v18-2-1);
212
212
  --magritte-ui-icon-color-override:var(--magritte-color-component-date-picker-header-icon-state-content-hovered-v18-2-1);
213
213
  }
214
214
  }
215
- .magritte-header-date___C28N0_3-2-20.focus-visible{
215
+ .magritte-header-date___C28N0_3-2-21.focus-visible{
216
216
  outline:4px solid var(--magritte-color-component-date-picker-stroke-state-focused-accessible-v18-2-1);
217
217
  }
218
- .magritte-header-date_active___FDSSp_3-2-20{
218
+ .magritte-header-date_active___FDSSp_3-2-21{
219
219
  cursor:pointer;
220
220
  }
221
- .magritte-control___1JqcP_3-2-20{
221
+ .magritte-control___1JqcP_3-2-21{
222
222
  width:40px;
223
223
  }
224
- .magritte-weekdays___zl5JK_3-2-20{
224
+ .magritte-weekdays___zl5JK_3-2-21{
225
225
  box-sizing:border-box;
226
226
  margin:0 auto;
227
227
  padding:0 var(--magritte-static-space-400-v18-2-1) 0;
@@ -230,18 +230,18 @@
230
230
  justify-content:space-around;
231
231
  }
232
232
  @media (min-width: 1020px){
233
- body.magritte-old-layout .magritte-weekdays___zl5JK_3-2-20{
233
+ body.magritte-old-layout .magritte-weekdays___zl5JK_3-2-21{
234
234
  margin:0;
235
235
  width:375px;
236
236
  }
237
237
  }
238
238
  @media (min-width: 1024px){
239
- body:not(.magritte-old-layout) .magritte-weekdays___zl5JK_3-2-20{
239
+ body:not(.magritte-old-layout) .magritte-weekdays___zl5JK_3-2-21{
240
240
  margin:0;
241
241
  width:375px;
242
242
  }
243
243
  }
244
- .magritte-weekday___pDlOC_3-2-20{
244
+ .magritte-weekday___pDlOC_3-2-21{
245
245
  font-family:var(--magritte-typography-label-3-regular-font-family-v18-2-1);
246
246
  font-weight:var(--magritte-typography-label-3-regular-font-weight-v18-2-1);
247
247
  line-height:var(--magritte-typography-label-3-regular-line-height-v18-2-1);
@@ -255,7 +255,7 @@
255
255
  display:flex;
256
256
  align-items:center;
257
257
  }
258
- .magritte-calendar___X0u7X_3-2-20{
258
+ .magritte-calendar___X0u7X_3-2-21{
259
259
  box-sizing:border-box;
260
260
  margin:0 auto;
261
261
  padding:var(--magritte-static-space-200-v18-2-1) var(--magritte-static-space-400-v18-2-1) var(--magritte-static-space-200-v18-2-1);
@@ -264,31 +264,31 @@
264
264
  justify-content:space-around;
265
265
  }
266
266
  @media (min-width: 1020px){
267
- body.magritte-old-layout .magritte-calendar___X0u7X_3-2-20{
267
+ body.magritte-old-layout .magritte-calendar___X0u7X_3-2-21{
268
268
  margin:0;
269
269
  width:375px;
270
270
  }
271
271
  }
272
272
  @media (min-width: 1024px){
273
- body:not(.magritte-old-layout) .magritte-calendar___X0u7X_3-2-20{
273
+ body:not(.magritte-old-layout) .magritte-calendar___X0u7X_3-2-21{
274
274
  margin:0;
275
275
  width:375px;
276
276
  }
277
277
  }
278
- .magritte-calendar_days___i0cpU_3-2-20{
278
+ .magritte-calendar_days___i0cpU_3-2-21{
279
279
  gap:var(--magritte-static-space-200-v18-2-1) 0;
280
280
  grid-template-columns:repeat(7, 1fr);
281
281
  }
282
- .magritte-calendar_months___t0Vai_3-2-20,
283
- .magritte-calendar_years___XUL8j_3-2-20{
282
+ .magritte-calendar_months___t0Vai_3-2-21,
283
+ .magritte-calendar_years___XUL8j_3-2-21{
284
284
  gap:var(--magritte-static-space-200-v18-2-1);
285
285
  grid-template-columns:repeat(3, 1fr);
286
286
  }
287
- .magritte-item___U0-5-_3-2-20{
287
+ .magritte-item___U0-5-_3-2-21{
288
288
  text-align:center;
289
289
  position:relative;
290
290
  }
291
- .magritte-text___pG0UY_3-2-20{
291
+ .magritte-text___pG0UY_3-2-21{
292
292
  font-family:var(--magritte-typography-label-2-regular-font-family-v18-2-1);
293
293
  font-weight:var(--magritte-typography-label-2-regular-font-weight-v18-2-1);
294
294
  line-height:var(--magritte-typography-label-2-regular-line-height-v18-2-1);
@@ -304,52 +304,52 @@
304
304
  border-radius:20px;
305
305
  z-index:1;
306
306
  }
307
- .magritte-text___pG0UY_3-2-20.focus-visible::after{
307
+ .magritte-text___pG0UY_3-2-21.focus-visible::after{
308
308
  content:'';
309
309
  position:absolute;
310
310
  display:block;
311
311
  inset:0;
312
312
  outline:4px solid var(--magritte-color-component-date-picker-stroke-state-focused-accessible-v18-2-1);
313
313
  }
314
- .magritte-substrate___EC-Ay_3-2-20{
314
+ .magritte-substrate___EC-Ay_3-2-21{
315
315
  position:absolute;
316
316
  inset:0;
317
317
  }
318
- .magritte-calendar_days___i0cpU_3-2-20 .magritte-text___pG0UY_3-2-20{
318
+ .magritte-calendar_days___i0cpU_3-2-21 .magritte-text___pG0UY_3-2-21{
319
319
  width:40px;
320
320
  }
321
- .magritte-calendar_months___t0Vai_3-2-20 .magritte-text___pG0UY_3-2-20{
321
+ .magritte-calendar_months___t0Vai_3-2-21 .magritte-text___pG0UY_3-2-21{
322
322
  text-transform:capitalize;
323
323
  width:100%;
324
324
  }
325
- .magritte-calendar_years___XUL8j_3-2-20 .magritte-text___pG0UY_3-2-20{
325
+ .magritte-calendar_years___XUL8j_3-2-21 .magritte-text___pG0UY_3-2-21{
326
326
  width:100%;
327
327
  }
328
- .magritte-text_unselected___gjuAU_3-2-20{
328
+ .magritte-text_unselected___gjuAU_3-2-21{
329
329
  color:var(--magritte-color-component-date-picker-item-text-unselected-v18-2-1);
330
330
  background-color:var(--magritte-color-component-date-picker-item-background-unselected-v18-2-1);
331
331
  }
332
332
  @media (min-width: 1020px){
333
- body.magritte-old-layout .magritte-text_unselected___gjuAU_3-2-20:active{
333
+ body.magritte-old-layout .magritte-text_unselected___gjuAU_3-2-21:active{
334
334
  color:var(--magritte-color-component-date-picker-item-text-state-unselected-pressed-v18-2-1);
335
335
  background-color:var(--magritte-color-component-date-picker-item-background-state-unselected-pressed-v18-2-1);
336
336
  }
337
- body.magritte-old-layout .magritte-text_unselected___gjuAU_3-2-20:hover:not(:active){
337
+ body.magritte-old-layout .magritte-text_unselected___gjuAU_3-2-21:hover:not(:active){
338
338
  color:var(--magritte-color-component-date-picker-item-text-state-unselected-hovered-v18-2-1);
339
339
  background-color:var(--magritte-color-component-date-picker-item-background-state-unselected-hovered-v18-2-1);
340
340
  }
341
341
  }
342
342
  @media (min-width: 1024px){
343
- body:not(.magritte-old-layout) .magritte-text_unselected___gjuAU_3-2-20:active{
343
+ body:not(.magritte-old-layout) .magritte-text_unselected___gjuAU_3-2-21:active{
344
344
  color:var(--magritte-color-component-date-picker-item-text-state-unselected-pressed-v18-2-1);
345
345
  background-color:var(--magritte-color-component-date-picker-item-background-state-unselected-pressed-v18-2-1);
346
346
  }
347
- body:not(.magritte-old-layout) .magritte-text_unselected___gjuAU_3-2-20:hover:not(:active){
347
+ body:not(.magritte-old-layout) .magritte-text_unselected___gjuAU_3-2-21:hover:not(:active){
348
348
  color:var(--magritte-color-component-date-picker-item-text-state-unselected-hovered-v18-2-1);
349
349
  background-color:var(--magritte-color-component-date-picker-item-background-state-unselected-hovered-v18-2-1);
350
350
  }
351
351
  }
352
- .magritte-text_selected___a69MP_3-2-20{
352
+ .magritte-text_selected___a69MP_3-2-21{
353
353
  font-family:var(--magritte-typography-subtitle-1-semibold-font-family-v18-2-1);
354
354
  font-weight:var(--magritte-typography-subtitle-1-semibold-font-weight-v18-2-1);
355
355
  line-height:var(--magritte-typography-subtitle-1-semibold-line-height-v18-2-1);
@@ -363,113 +363,113 @@
363
363
  background-color:var(--magritte-color-component-date-picker-item-background-selected-v18-2-1);
364
364
  }
365
365
  @media (min-width: 1020px){
366
- body.magritte-old-layout .magritte-text_selected___a69MP_3-2-20:active{
366
+ body.magritte-old-layout .magritte-text_selected___a69MP_3-2-21:active{
367
367
  color:var(--magritte-color-component-date-picker-item-text-state-selected-pressed-v18-2-1);
368
368
  background-color:var(--magritte-color-component-date-picker-item-background-state-selected-pressed-v18-2-1);
369
369
  }
370
- body.magritte-old-layout .magritte-text_selected___a69MP_3-2-20:hover:not(:active){
370
+ body.magritte-old-layout .magritte-text_selected___a69MP_3-2-21:hover:not(:active){
371
371
  color:var(--magritte-color-component-date-picker-item-text-state-selected-hovered-v18-2-1);
372
372
  background-color:var(--magritte-color-component-date-picker-item-background-state-selected-hovered-v18-2-1);
373
373
  }
374
374
  }
375
375
  @media (min-width: 1024px){
376
- body:not(.magritte-old-layout) .magritte-text_selected___a69MP_3-2-20:active{
376
+ body:not(.magritte-old-layout) .magritte-text_selected___a69MP_3-2-21:active{
377
377
  color:var(--magritte-color-component-date-picker-item-text-state-selected-pressed-v18-2-1);
378
378
  background-color:var(--magritte-color-component-date-picker-item-background-state-selected-pressed-v18-2-1);
379
379
  }
380
- body:not(.magritte-old-layout) .magritte-text_selected___a69MP_3-2-20:hover:not(:active){
380
+ body:not(.magritte-old-layout) .magritte-text_selected___a69MP_3-2-21:hover:not(:active){
381
381
  color:var(--magritte-color-component-date-picker-item-text-state-selected-hovered-v18-2-1);
382
382
  background-color:var(--magritte-color-component-date-picker-item-background-state-selected-hovered-v18-2-1);
383
383
  }
384
384
  }
385
- .magritte-text_disabled___I1IYo_3-2-20{
385
+ .magritte-text_disabled___I1IYo_3-2-21{
386
386
  cursor:default;
387
387
  color:var(--magritte-color-component-date-picker-item-text-state-unselected-disabled-v18-2-1);
388
388
  background-color:var(--magritte-color-component-date-picker-item-background-state-unselected-disabled-v18-2-1);
389
389
  }
390
- .magritte-text_selected___a69MP_3-2-20.magritte-text_disabled___I1IYo_3-2-20{
390
+ .magritte-text_selected___a69MP_3-2-21.magritte-text_disabled___I1IYo_3-2-21{
391
391
  color:var(--magritte-color-component-date-picker-item-text-state-selected-disabled-v18-2-1);
392
392
  background-color:var(--magritte-color-component-date-picker-item-background-state-selected-disabled-v18-2-1);
393
393
  }
394
394
  @media (min-width: 1020px){
395
- body.magritte-old-layout .magritte-text_selected___a69MP_3-2-20.magritte-text_disabled___I1IYo_3-2-20:active{
395
+ body.magritte-old-layout .magritte-text_selected___a69MP_3-2-21.magritte-text_disabled___I1IYo_3-2-21:active{
396
396
  color:var(--magritte-color-component-date-picker-item-text-state-selected-disabled-v18-2-1);
397
397
  background-color:var(--magritte-color-component-date-picker-item-background-state-selected-disabled-v18-2-1);
398
398
  }
399
- body.magritte-old-layout .magritte-text_selected___a69MP_3-2-20.magritte-text_disabled___I1IYo_3-2-20:hover:not(:active){
399
+ body.magritte-old-layout .magritte-text_selected___a69MP_3-2-21.magritte-text_disabled___I1IYo_3-2-21:hover:not(:active){
400
400
  color:var(--magritte-color-component-date-picker-item-text-state-selected-disabled-v18-2-1);
401
401
  background-color:var(--magritte-color-component-date-picker-item-background-state-selected-disabled-v18-2-1);
402
402
  }
403
403
  }
404
404
  @media (min-width: 1024px){
405
- body:not(.magritte-old-layout) .magritte-text_selected___a69MP_3-2-20.magritte-text_disabled___I1IYo_3-2-20:active{
405
+ body:not(.magritte-old-layout) .magritte-text_selected___a69MP_3-2-21.magritte-text_disabled___I1IYo_3-2-21:active{
406
406
  color:var(--magritte-color-component-date-picker-item-text-state-selected-disabled-v18-2-1);
407
407
  background-color:var(--magritte-color-component-date-picker-item-background-state-selected-disabled-v18-2-1);
408
408
  }
409
- body:not(.magritte-old-layout) .magritte-text_selected___a69MP_3-2-20.magritte-text_disabled___I1IYo_3-2-20:hover:not(:active){
409
+ body:not(.magritte-old-layout) .magritte-text_selected___a69MP_3-2-21.magritte-text_disabled___I1IYo_3-2-21:hover:not(:active){
410
410
  color:var(--magritte-color-component-date-picker-item-text-state-selected-disabled-v18-2-1);
411
411
  background-color:var(--magritte-color-component-date-picker-item-background-state-selected-disabled-v18-2-1);
412
412
  }
413
413
  }
414
- .magritte-text_draggable___ebUW6_3-2-20{
414
+ .magritte-text_draggable___ebUW6_3-2-21{
415
415
  cursor:grab;
416
416
  }
417
- .magritte-text_draggable___ebUW6_3-2-20:active{
417
+ .magritte-text_draggable___ebUW6_3-2-21:active{
418
418
  cursor:grabbing;
419
419
  }
420
- .magritte-text_drag-source___-krSg_3-2-20{
420
+ .magritte-text_drag-source___-krSg_3-2-21{
421
421
  color:var(--magritte-color-component-date-picker-item-text-unselected-v18-2-1);
422
422
  background-color:var(--magritte-color-component-date-picker-item-background-unselected-v18-2-1);
423
423
  }
424
- .magritte-text_drag-source___-krSg_3-2-20:active{
424
+ .magritte-text_drag-source___-krSg_3-2-21:active{
425
425
  color:var(--magritte-color-component-date-picker-item-text-unselected-v18-2-1);
426
426
  background-color:var(--magritte-color-component-date-picker-item-background-unselected-v18-2-1);
427
427
  }
428
- .magritte-text_drop-target___mwmCv_3-2-20{
428
+ .magritte-text_drop-target___mwmCv_3-2-21{
429
429
  color:var(--magritte-color-component-date-picker-item-text-selected-v18-2-1);
430
430
  background-color:var(--magritte-color-component-date-picker-item-background-selected-preview-v18-2-1);
431
431
  }
432
- .magritte-text_drop-target___mwmCv_3-2-20:active{
432
+ .magritte-text_drop-target___mwmCv_3-2-21:active{
433
433
  color:var(--magritte-color-component-date-picker-item-text-selected-v18-2-1);
434
434
  background-color:var(--magritte-color-component-date-picker-item-background-selected-preview-v18-2-1);
435
435
  }
436
- .magritte-text_today___c3RHg_3-2-20{
436
+ .magritte-text_today___c3RHg_3-2-21{
437
437
  border:1px solid var(--magritte-color-component-date-picker-item-stroke-today-v18-2-1);
438
438
  }
439
- .magritte-text_selected___a69MP_3-2-20.magritte-text_today___c3RHg_3-2-20{
439
+ .magritte-text_selected___a69MP_3-2-21.magritte-text_today___c3RHg_3-2-21{
440
440
  border:0;
441
441
  }
442
- .magritte-text_today___c3RHg_3-2-20:not(.magritte-disabled___IsN76_3-2-20):active{
442
+ .magritte-text_today___c3RHg_3-2-21:not(.magritte-disabled___IsN76_3-2-21):active{
443
443
  border:0;
444
444
  }
445
- .magritte-item_interval___RbZXk_3-2-20 .magritte-substrate___EC-Ay_3-2-20{
445
+ .magritte-item_interval___RbZXk_3-2-21 .magritte-substrate___EC-Ay_3-2-21{
446
446
  color:var(--magritte-color-component-date-picker-item-text-state-selected-range-v18-2-1);
447
447
  background-color:var(--magritte-color-component-date-picker-item-background-state-selected-range-v18-2-1);
448
448
  }
449
- .magritte-item_interval-start___4AC3w_3-2-20 .magritte-substrate___EC-Ay_3-2-20{
449
+ .magritte-item_interval-start___4AC3w_3-2-21 .magritte-substrate___EC-Ay_3-2-21{
450
450
  border-top-left-radius:20px;
451
451
  border-bottom-left-radius:20px;
452
452
  }
453
- .magritte-calendar_days___i0cpU_3-2-20 .magritte-item_interval-start___4AC3w_3-2-20 .magritte-substrate___EC-Ay_3-2-20{
453
+ .magritte-calendar_days___i0cpU_3-2-21 .magritte-item_interval-start___4AC3w_3-2-21 .magritte-substrate___EC-Ay_3-2-21{
454
454
  left:calc(50% - 40px / 2);
455
455
  }
456
- .magritte-item_interval-end___X-E9S_3-2-20 .magritte-substrate___EC-Ay_3-2-20{
456
+ .magritte-item_interval-end___X-E9S_3-2-21 .magritte-substrate___EC-Ay_3-2-21{
457
457
  border-top-right-radius:20px;
458
458
  border-bottom-right-radius:20px;
459
459
  }
460
- .magritte-calendar_days___i0cpU_3-2-20 .magritte-item_interval-end___X-E9S_3-2-20 .magritte-substrate___EC-Ay_3-2-20{
460
+ .magritte-calendar_days___i0cpU_3-2-21 .magritte-item_interval-end___X-E9S_3-2-21 .magritte-substrate___EC-Ay_3-2-21{
461
461
  right:calc(50% - 40px / 2);
462
462
  }
463
- .magritte-item_interval-row-start___8AftH_3-2-20 .magritte-substrate___EC-Ay_3-2-20{
463
+ .magritte-item_interval-row-start___8AftH_3-2-21 .magritte-substrate___EC-Ay_3-2-21{
464
464
  border-top-left-radius:var(--magritte-static-border-radius-100-v18-2-1);
465
465
  border-bottom-left-radius:var(--magritte-static-border-radius-100-v18-2-1);
466
466
  }
467
- .magritte-item_interval-row-end___-AIXc_3-2-20 .magritte-substrate___EC-Ay_3-2-20{
467
+ .magritte-item_interval-row-end___-AIXc_3-2-21 .magritte-substrate___EC-Ay_3-2-21{
468
468
  border-top-right-radius:var(--magritte-static-border-radius-100-v18-2-1);
469
469
  border-bottom-right-radius:var(--magritte-static-border-radius-100-v18-2-1);
470
470
  }
471
- .magritte-text_holiday___532-b_3-2-20,
472
- .magritte-text_short-workday___lZl3F_3-2-20{
471
+ .magritte-text_holiday___532-b_3-2-21,
472
+ .magritte-text_short-workday___lZl3F_3-2-21{
473
473
  font-family:var(--magritte-typography-subtitle-1-semibold-font-family-v18-2-1);
474
474
  font-weight:var(--magritte-typography-subtitle-1-semibold-font-weight-v18-2-1);
475
475
  line-height:var(--magritte-typography-subtitle-1-semibold-line-height-v18-2-1);
@@ -479,63 +479,63 @@
479
479
  text-transform:var(--magritte-typography-subtitle-1-semibold-text-transform-v18-2-1);
480
480
  text-decoration:var(--magritte-typography-subtitle-1-semibold-text-decoration-v18-2-1);
481
481
  }
482
- .magritte-text_holiday___532-b_3-2-20{
482
+ .magritte-text_holiday___532-b_3-2-21{
483
483
  color:var(--magritte-color-component-date-picker-item-text-contrast-v18-2-1);
484
484
  background-color:var(--magritte-color-component-date-picker-item-background-info-primary-v18-2-1);
485
485
  border-radius:var(--magritte-static-border-radius-100-v18-2-1);
486
486
  }
487
- .magritte-text_holiday___532-b_3-2-20:active{
487
+ .magritte-text_holiday___532-b_3-2-21:active{
488
488
  background-color:var(--magritte-color-component-date-picker-item-background-state-info-primary-pressed-v18-2-1);
489
489
  }
490
490
  @media (min-width: 1020px){
491
- body.magritte-old-layout .magritte-text_holiday___532-b_3-2-20:active{
491
+ body.magritte-old-layout .magritte-text_holiday___532-b_3-2-21:active{
492
492
  background-color:var(--magritte-color-component-date-picker-item-background-info-primary-v18-2-1);
493
493
  }
494
494
  }
495
495
  @media (min-width: 1024px){
496
- body:not(.magritte-old-layout) .magritte-text_holiday___532-b_3-2-20:active{
496
+ body:not(.magritte-old-layout) .magritte-text_holiday___532-b_3-2-21:active{
497
497
  background-color:var(--magritte-color-component-date-picker-item-background-info-primary-v18-2-1);
498
498
  }
499
499
  }
500
500
  @media (min-width: 1020px){
501
- body.magritte-old-layout .magritte-text_holiday___532-b_3-2-20:hover:not(:active){
501
+ body.magritte-old-layout .magritte-text_holiday___532-b_3-2-21:hover:not(:active){
502
502
  background-color:var(--magritte-color-component-date-picker-item-background-state-info-primary-hovered-v18-2-1);
503
503
  }
504
504
  }
505
505
  @media (min-width: 1024px){
506
- body:not(.magritte-old-layout) .magritte-text_holiday___532-b_3-2-20:hover:not(:active){
506
+ body:not(.magritte-old-layout) .magritte-text_holiday___532-b_3-2-21:hover:not(:active){
507
507
  background-color:var(--magritte-color-component-date-picker-item-background-state-info-primary-hovered-v18-2-1);
508
508
  }
509
509
  }
510
- .magritte-text_short-workday___lZl3F_3-2-20{
510
+ .magritte-text_short-workday___lZl3F_3-2-21{
511
511
  color:var(--magritte-color-component-date-picker-item-text-contrast-v18-2-1);
512
512
  background-color:var(--magritte-color-component-date-picker-item-background-info-secondary-v18-2-1);
513
513
  border-radius:var(--magritte-static-border-radius-100-v18-2-1);
514
514
  }
515
- .magritte-text_short-workday___lZl3F_3-2-20:active{
515
+ .magritte-text_short-workday___lZl3F_3-2-21:active{
516
516
  background-color:var(--magritte-color-component-date-picker-item-background-state-info-secondary-pressed-v18-2-1);
517
517
  }
518
518
  @media (min-width: 1020px){
519
- body.magritte-old-layout .magritte-text_short-workday___lZl3F_3-2-20:active{
519
+ body.magritte-old-layout .magritte-text_short-workday___lZl3F_3-2-21:active{
520
520
  background-color:var(--magritte-color-component-date-picker-item-background-info-secondary-v18-2-1);
521
521
  }
522
522
  }
523
523
  @media (min-width: 1024px){
524
- body:not(.magritte-old-layout) .magritte-text_short-workday___lZl3F_3-2-20:active{
524
+ body:not(.magritte-old-layout) .magritte-text_short-workday___lZl3F_3-2-21:active{
525
525
  background-color:var(--magritte-color-component-date-picker-item-background-info-secondary-v18-2-1);
526
526
  }
527
527
  }
528
528
  @media (min-width: 1020px){
529
- body.magritte-old-layout .magritte-text_short-workday___lZl3F_3-2-20:hover:not(:active){
529
+ body.magritte-old-layout .magritte-text_short-workday___lZl3F_3-2-21:hover:not(:active){
530
530
  background-color:var(--magritte-color-component-date-picker-item-background-state-info-secondary-hovered-v18-2-1);
531
531
  }
532
532
  }
533
533
  @media (min-width: 1024px){
534
- body:not(.magritte-old-layout) .magritte-text_short-workday___lZl3F_3-2-20:hover:not(:active){
534
+ body:not(.magritte-old-layout) .magritte-text_short-workday___lZl3F_3-2-21:hover:not(:active){
535
535
  background-color:var(--magritte-color-component-date-picker-item-background-state-info-secondary-hovered-v18-2-1);
536
536
  }
537
537
  }
538
- .magritte-text_workday___2Ok-d_3-2-20{
538
+ .magritte-text_workday___2Ok-d_3-2-21{
539
539
  cursor:default;
540
540
  color:var(--magritte-color-component-date-picker-item-text-neutral-v18-2-1);
541
541
  background-color:var(--magritte-color-component-date-picker-item-background-neutral-v18-2-1);
package/index.js CHANGED
@@ -9,7 +9,7 @@ import './AsyncDataLoader.js';
9
9
  import 'classnames';
10
10
  import './AsyncDataContext.js';
11
11
  import '@hh.ru/magritte-ui-loader';
12
- import './date-picker-wHLX-fV3.js';
12
+ import './date-picker-CrwJJiCQ.js';
13
13
  import './AsyncDataStore.js';
14
14
  import './DayPicker.js';
15
15
  import 'date-fns';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hh.ru/magritte-ui-date-picker",
3
- "version": "3.2.20",
3
+ "version": "3.2.21",
4
4
  "main": "index.js",
5
5
  "types": "index.d.ts",
6
6
  "sideEffects": [
@@ -47,5 +47,5 @@
47
47
  "publishConfig": {
48
48
  "access": "public"
49
49
  },
50
- "gitHead": "a78323f0ff30303e752a81b2e875935cb71b1ca2"
50
+ "gitHead": "f59a0e2f41d85bb707d62dd889091e6d41f0b9aa"
51
51
  }
package/types.d.ts CHANGED
@@ -12,11 +12,14 @@ export interface DragState {
12
12
  }
13
13
  export type Layout = 'single' | 'multi';
14
14
  export type Calendar = 'day' | 'month' | 'year';
15
+ export interface DisabledDatesFunc {
16
+ (startDate: DateType, endDate: DateType): Promise<DateType[]>;
17
+ }
15
18
  interface DateLimits {
16
19
  /** Список недоступных дат */
17
20
  disabledDates?: DateType[];
18
21
  /** Асинхронная функция, возвращающая список недоступных дат в интервале */
19
- disabledDatesFunc?: (startDate: DateType, endDate: DateType) => Promise<DateType[]>;
22
+ disabledDatesFunc?: DisabledDatesFunc;
20
23
  /** Минимальная доступная дата */
21
24
  minDate?: DateType;
22
25
  /** Максимальная доступная дата */
@@ -1,5 +0,0 @@
1
- import './index.css';
2
- var styles = {"layout":"magritte-layout___WQLZL_3-2-20","layout-horizontal":"magritte-layout-horizontal___RHMqN_3-2-20","layoutHorizontal":"magritte-layout-horizontal___RHMqN_3-2-20","layout-vertical":"magritte-layout-vertical___Q4III_3-2-20","layoutVertical":"magritte-layout-vertical___Q4III_3-2-20","date-picker":"magritte-date-picker___osO3k_3-2-20","datePicker":"magritte-date-picker___osO3k_3-2-20","date-picker_loading":"magritte-date-picker_loading___oEckY_3-2-20","datePickerLoading":"magritte-date-picker_loading___oEckY_3-2-20","loader":"magritte-loader___npAoS_3-2-20","loading":"magritte-loading___Q08Ci_3-2-20","sticky-wrapper":"magritte-sticky-wrapper___-cscS_3-2-20","stickyWrapper":"magritte-sticky-wrapper___-cscS_3-2-20","infinite-scroll-wrapper":"magritte-infinite-scroll-wrapper___4BFJP_3-2-20","infiniteScrollWrapper":"magritte-infinite-scroll-wrapper___4BFJP_3-2-20","header-wrapper":"magritte-header-wrapper___w3fTl_3-2-20","headerWrapper":"magritte-header-wrapper___w3fTl_3-2-20","header":"magritte-header___SYp35_3-2-20","header-date-wrapper_center":"magritte-header-date-wrapper_center___6X5Q4_3-2-20","headerDateWrapperCenter":"magritte-header-date-wrapper_center___6X5Q4_3-2-20","header-date-wrapper_left":"magritte-header-date-wrapper_left___hxe8I_3-2-20","headerDateWrapperLeft":"magritte-header-date-wrapper_left___hxe8I_3-2-20","header-date":"magritte-header-date___C28N0_3-2-20","headerDate":"magritte-header-date___C28N0_3-2-20","header-date_active":"magritte-header-date_active___FDSSp_3-2-20","headerDateActive":"magritte-header-date_active___FDSSp_3-2-20","control":"magritte-control___1JqcP_3-2-20","weekdays":"magritte-weekdays___zl5JK_3-2-20","weekday":"magritte-weekday___pDlOC_3-2-20","calendar":"magritte-calendar___X0u7X_3-2-20","calendar_days":"magritte-calendar_days___i0cpU_3-2-20","calendarDays":"magritte-calendar_days___i0cpU_3-2-20","calendar_months":"magritte-calendar_months___t0Vai_3-2-20","calendarMonths":"magritte-calendar_months___t0Vai_3-2-20","calendar_years":"magritte-calendar_years___XUL8j_3-2-20","calendarYears":"magritte-calendar_years___XUL8j_3-2-20","item":"magritte-item___U0-5-_3-2-20","text":"magritte-text___pG0UY_3-2-20","substrate":"magritte-substrate___EC-Ay_3-2-20","text_unselected":"magritte-text_unselected___gjuAU_3-2-20","textUnselected":"magritte-text_unselected___gjuAU_3-2-20","text_selected":"magritte-text_selected___a69MP_3-2-20","textSelected":"magritte-text_selected___a69MP_3-2-20","text_disabled":"magritte-text_disabled___I1IYo_3-2-20","textDisabled":"magritte-text_disabled___I1IYo_3-2-20","text_draggable":"magritte-text_draggable___ebUW6_3-2-20","textDraggable":"magritte-text_draggable___ebUW6_3-2-20","text_drag-source":"magritte-text_drag-source___-krSg_3-2-20","textDragSource":"magritte-text_drag-source___-krSg_3-2-20","text_drop-target":"magritte-text_drop-target___mwmCv_3-2-20","textDropTarget":"magritte-text_drop-target___mwmCv_3-2-20","text_today":"magritte-text_today___c3RHg_3-2-20","textToday":"magritte-text_today___c3RHg_3-2-20","disabled":"magritte-disabled___IsN76_3-2-20","item_interval":"magritte-item_interval___RbZXk_3-2-20","itemInterval":"magritte-item_interval___RbZXk_3-2-20","item_interval-start":"magritte-item_interval-start___4AC3w_3-2-20","itemIntervalStart":"magritte-item_interval-start___4AC3w_3-2-20","item_interval-end":"magritte-item_interval-end___X-E9S_3-2-20","itemIntervalEnd":"magritte-item_interval-end___X-E9S_3-2-20","item_interval-row-start":"magritte-item_interval-row-start___8AftH_3-2-20","itemIntervalRowStart":"magritte-item_interval-row-start___8AftH_3-2-20","item_interval-row-end":"magritte-item_interval-row-end___-AIXc_3-2-20","itemIntervalRowEnd":"magritte-item_interval-row-end___-AIXc_3-2-20","text_holiday":"magritte-text_holiday___532-b_3-2-20","textHoliday":"magritte-text_holiday___532-b_3-2-20","text_short-workday":"magritte-text_short-workday___lZl3F_3-2-20","textShortWorkday":"magritte-text_short-workday___lZl3F_3-2-20","text_workday":"magritte-text_workday___2Ok-d_3-2-20","textWorkday":"magritte-text_workday___2Ok-d_3-2-20"};
3
-
4
- export { styles as s };
5
- //# sourceMappingURL=date-picker-wHLX-fV3.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"date-picker-wHLX-fV3.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}