@hh.ru/magritte-ui-date-picker 3.2.9 → 3.2.11

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.
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { DateType } from './types';
2
+ import { DateType } from '@hh.ru/magritte-ui-date-picker/types';
3
3
  export interface AsyncDataContextProps {
4
4
  disabledDates: DateType[];
5
5
  hasData: (startDate: DateType, endDate: DateType) => boolean;
@@ -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-b575e5f0.js';
7
+ import { s as styles } from './date-picker-BGo0IxsS.js';
8
8
 
9
9
  /**
10
10
  * Отображает лоадер поверх контента во время загрузки асинхронных данных.
@@ -1,5 +1,5 @@
1
1
  import { FC, PropsWithChildren } from 'react';
2
- import { DateType } from './types';
2
+ import { DateType } from '@hh.ru/magritte-ui-date-picker/types';
3
3
  interface AsyncDataStoreProps {
4
4
  disabledDatesFunc?: (startDate: DateType, endDate: DateType) => Promise<DateType[]>;
5
5
  parallelLoadersLimit?: number | null;
package/DatePicker.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  import { FC } from 'react';
2
- import { DatePickerProps } from './types';
2
+ import { DatePickerProps } from '@hh.ru/magritte-ui-date-picker/types';
3
3
  export declare const DatePicker: import("react").ComponentType<DatePickerProps & import("react").RefAttributes<HTMLDivElement>>;
4
4
  export declare const UncontrolledDatePicker: FC<DatePickerProps>;
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-b575e5f0.js';
15
+ import { s as styles } from './date-picker-BGo0IxsS.js';
16
16
  import 'classnames';
17
17
  import './AsyncDataContext.js';
18
18
  import '@hh.ru/magritte-ui-loader';
package/DayPicker.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { DayPickerProps, IntervalDayPickerProps, InfoDayPickerProps } from './types';
2
+ import { DayPickerProps, IntervalDayPickerProps, InfoDayPickerProps } from '@hh.ru/magritte-ui-date-picker/types';
3
3
  export declare const DayPicker: FC<DayPickerProps>;
4
4
  export declare const IntervalDayPicker: FC<IntervalDayPickerProps>;
5
5
  export declare const InfoDayPicker: FC<InfoDayPickerProps>;
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-b575e5f0.js';
17
+ import { s as styles } from './date-picker-BGo0IxsS.js';
18
18
  import './AsyncDataContext.js';
19
19
 
20
20
  const DayPicker = ({ disabledDates, minDate, maxDate, displayDate, selectedDate, showAdjacentDays, onDateSelect, }) => {
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\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 >\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\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.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { DateType, Calendar, BaseDatePickerProps } from './types';
2
+ import { DateType, Calendar, BaseDatePickerProps } from '@hh.ru/magritte-ui-date-picker/types';
3
3
  export declare const Header: FC<Pick<BaseDatePickerProps, 'activeHeader' | 'alignHeader' | 'headerMonthFormat' | 'locale' | 'showControls' | 'showHeaderDate'> & {
4
4
  calendar: Calendar;
5
5
  displayDate: DateType;
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-b575e5f0.js';
10
+ import { s as styles } from './date-picker-BGo0IxsS.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-inertial-scroll';
5
5
  import { AsyncDataContext } from './AsyncDataContext.js';
6
- import { s as styles } from './date-picker-b575e5f0.js';
6
+ import { s as styles } from './date-picker-BGo0IxsS.js';
7
7
 
8
8
  const InfiniteScroll = ({ initialRenderedItems, invisibleThreshold, visibleThreshold, makeItemFunc, renderItemFunc, onVisibleItemChange, }) => {
9
9
  const stateRef = useRef({
@@ -1,4 +1,4 @@
1
1
  import { FC } from 'react';
2
- import { InfoDatePickerProps } from './types';
2
+ import { InfoDatePickerProps } from '@hh.ru/magritte-ui-date-picker/types';
3
3
  export declare const InfoDatePicker: FC<InfoDatePickerProps>;
4
4
  export declare const UncontrolledInfoDatePicker: FC<InfoDatePickerProps>;
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-b575e5f0.js';
12
+ import { s as styles } from './date-picker-BGo0IxsS.js';
13
13
  import 'classnames';
14
14
  import 'date-fns';
15
15
  import 'date-fns/constants';
@@ -1,4 +1,4 @@
1
1
  import { FC } from 'react';
2
- import { IntervalDatePickerProps } from './types';
2
+ import { IntervalDatePickerProps } from '@hh.ru/magritte-ui-date-picker/types';
3
3
  export declare const IntervalDatePicker: FC<IntervalDatePickerProps>;
4
4
  export declare const UncontrolledIntervalDatePicker: FC<IntervalDatePickerProps>;
@@ -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-b575e5f0.js';
18
+ import { s as styles } from './date-picker-BGo0IxsS.js';
19
19
  import 'classnames';
20
20
  import './AsyncDataContext.js';
21
21
  import '@hh.ru/magritte-ui-loader';
package/MonthPicker.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  import { FC } from 'react';
2
- import { MonthPickerProps, IntervalMonthPickerProps } from './types';
2
+ import { MonthPickerProps, IntervalMonthPickerProps } from '@hh.ru/magritte-ui-date-picker/types';
3
3
  export declare const MonthPicker: FC<MonthPickerProps>;
4
4
  export declare const IntervalMonthPicker: FC<IntervalMonthPickerProps>;
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-b575e5f0.js';
7
+ import { s as styles } from './date-picker-BGo0IxsS.js';
8
8
  import 'react';
9
9
 
10
10
  const MONTHS_IN_ROW = 3;
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-b575e5f0.js';
3
+ import { s as styles } from './date-picker-BGo0IxsS.js';
4
4
 
5
5
  const DAYS = [1, 2, 3, 4, 5, 6, 0];
6
6
  const Weekdays = ({ locale }) => {
package/YearPicker.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  import { FC } from 'react';
2
- import { YearPickerProps, IntervalYearPickerProps } from './types';
2
+ import { YearPickerProps, IntervalYearPickerProps } from '@hh.ru/magritte-ui-date-picker/types';
3
3
  export declare const YearPicker: FC<YearPickerProps>;
4
4
  export declare const IntervalYearPicker: FC<IntervalYearPickerProps>;
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-b575e5f0.js';
8
+ import { s as styles } from './date-picker-BGo0IxsS.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-11","layout-horizontal":"magritte-layout-horizontal___RHMqN_3-2-11","layoutHorizontal":"magritte-layout-horizontal___RHMqN_3-2-11","layout-vertical":"magritte-layout-vertical___Q4III_3-2-11","layoutVertical":"magritte-layout-vertical___Q4III_3-2-11","date-picker":"magritte-date-picker___osO3k_3-2-11","datePicker":"magritte-date-picker___osO3k_3-2-11","date-picker_loading":"magritte-date-picker_loading___oEckY_3-2-11","datePickerLoading":"magritte-date-picker_loading___oEckY_3-2-11","loader":"magritte-loader___npAoS_3-2-11","loading":"magritte-loading___Q08Ci_3-2-11","sticky-wrapper":"magritte-sticky-wrapper___-cscS_3-2-11","stickyWrapper":"magritte-sticky-wrapper___-cscS_3-2-11","infinite-scroll-wrapper":"magritte-infinite-scroll-wrapper___4BFJP_3-2-11","infiniteScrollWrapper":"magritte-infinite-scroll-wrapper___4BFJP_3-2-11","header-wrapper":"magritte-header-wrapper___w3fTl_3-2-11","headerWrapper":"magritte-header-wrapper___w3fTl_3-2-11","header":"magritte-header___SYp35_3-2-11","header-date-wrapper_center":"magritte-header-date-wrapper_center___6X5Q4_3-2-11","headerDateWrapperCenter":"magritte-header-date-wrapper_center___6X5Q4_3-2-11","header-date-wrapper_left":"magritte-header-date-wrapper_left___hxe8I_3-2-11","headerDateWrapperLeft":"magritte-header-date-wrapper_left___hxe8I_3-2-11","header-date":"magritte-header-date___C28N0_3-2-11","headerDate":"magritte-header-date___C28N0_3-2-11","header-date_active":"magritte-header-date_active___FDSSp_3-2-11","headerDateActive":"magritte-header-date_active___FDSSp_3-2-11","control":"magritte-control___1JqcP_3-2-11","weekdays":"magritte-weekdays___zl5JK_3-2-11","weekday":"magritte-weekday___pDlOC_3-2-11","calendar":"magritte-calendar___X0u7X_3-2-11","calendar_days":"magritte-calendar_days___i0cpU_3-2-11","calendarDays":"magritte-calendar_days___i0cpU_3-2-11","calendar_months":"magritte-calendar_months___t0Vai_3-2-11","calendarMonths":"magritte-calendar_months___t0Vai_3-2-11","calendar_years":"magritte-calendar_years___XUL8j_3-2-11","calendarYears":"magritte-calendar_years___XUL8j_3-2-11","item":"magritte-item___U0-5-_3-2-11","text":"magritte-text___pG0UY_3-2-11","substrate":"magritte-substrate___EC-Ay_3-2-11","text_unselected":"magritte-text_unselected___gjuAU_3-2-11","textUnselected":"magritte-text_unselected___gjuAU_3-2-11","text_selected":"magritte-text_selected___a69MP_3-2-11","textSelected":"magritte-text_selected___a69MP_3-2-11","text_disabled":"magritte-text_disabled___I1IYo_3-2-11","textDisabled":"magritte-text_disabled___I1IYo_3-2-11","text_draggable":"magritte-text_draggable___ebUW6_3-2-11","textDraggable":"magritte-text_draggable___ebUW6_3-2-11","text_drag-source":"magritte-text_drag-source___-krSg_3-2-11","textDragSource":"magritte-text_drag-source___-krSg_3-2-11","text_drop-target":"magritte-text_drop-target___mwmCv_3-2-11","textDropTarget":"magritte-text_drop-target___mwmCv_3-2-11","text_today":"magritte-text_today___c3RHg_3-2-11","textToday":"magritte-text_today___c3RHg_3-2-11","disabled":"magritte-disabled___IsN76_3-2-11","item_interval":"magritte-item_interval___RbZXk_3-2-11","itemInterval":"magritte-item_interval___RbZXk_3-2-11","item_interval-start":"magritte-item_interval-start___4AC3w_3-2-11","itemIntervalStart":"magritte-item_interval-start___4AC3w_3-2-11","item_interval-end":"magritte-item_interval-end___X-E9S_3-2-11","itemIntervalEnd":"magritte-item_interval-end___X-E9S_3-2-11","item_interval-row-start":"magritte-item_interval-row-start___8AftH_3-2-11","itemIntervalRowStart":"magritte-item_interval-row-start___8AftH_3-2-11","item_interval-row-end":"magritte-item_interval-row-end___-AIXc_3-2-11","itemIntervalRowEnd":"magritte-item_interval-row-end___-AIXc_3-2-11","text_holiday":"magritte-text_holiday___532-b_3-2-11","textHoliday":"magritte-text_holiday___532-b_3-2-11","text_short-workday":"magritte-text_short-workday___lZl3F_3-2-11","textShortWorkday":"magritte-text_short-workday___lZl3F_3-2-11","text_workday":"magritte-text_workday___2Ok-d_3-2-11","textWorkday":"magritte-text_workday___2Ok-d_3-2-11"};
3
+
4
+ export { styles as s };
5
+ //# sourceMappingURL=date-picker-BGo0IxsS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date-picker-BGo0IxsS.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}