@salutejs/plasma-new-hope 0.322.0-canary.1933.14614537450.0 → 0.322.0-canary.1939.14642328722.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/components/Calendar/Calendar.types.js.map +1 -1
- package/cjs/components/Calendar/CalendarBase/CalendarBase.js +3 -6
- package/cjs/components/Calendar/CalendarBase/CalendarBase.js.map +1 -1
- package/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +3 -6
- package/cjs/components/Calendar/CalendarDouble/CalendarDouble.js.map +1 -1
- package/cjs/components/Calendar/hoc/withRange.js.map +1 -1
- package/cjs/components/Calendar/store/reducer.js.map +1 -1
- package/cjs/components/Calendar/utils/calendarGridHelper.js.map +1 -1
- package/cjs/components/Calendar/utils/calendarRangeHelper.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.tokens.js +2 -1
- package/cjs/components/DatePicker/DatePicker.tokens.js.map +1 -1
- package/cjs/components/DatePicker/DatePickerBase.styles.js +1 -1
- package/cjs/components/DatePicker/DatePickerBase.styles.js.map +1 -1
- package/cjs/components/DatePicker/DatePickerBase.styles_1a5ddg3.css +2 -0
- package/cjs/components/DatePicker/RangeDate/RangeDate.css +4 -4
- package/cjs/components/DatePicker/RangeDate/RangeDate.js +158 -82
- package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDate.styles.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +2 -2
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_1fhuiqs.css +2 -0
- package/cjs/components/DatePicker/SingleDate/SingleDate.css +2 -2
- package/cjs/components/DatePicker/SingleDate/SingleDate.js +68 -33
- package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
- package/cjs/components/DatePicker/SingleDate/SingleDate.styles.js.map +1 -1
- package/cjs/components/DatePicker/hooks/useDatePicker.js +133 -76
- package/cjs/components/DatePicker/hooks/useDatePicker.js.map +1 -1
- package/cjs/components/DatePicker/hooks/useKeyboardNavigation.js +9 -0
- package/cjs/components/DatePicker/hooks/useKeyboardNavigation.js.map +1 -1
- package/cjs/components/DatePicker/utils/dateHelper.js +3 -108
- package/cjs/components/DatePicker/utils/dateHelper.js.map +1 -1
- package/cjs/components/DatePicker/utils/getFormattedDates.js +46 -0
- package/cjs/components/DatePicker/utils/getFormattedDates.js.map +1 -0
- package/cjs/components/DatePicker/utils/getMaskedDateOnInput.js +29 -0
- package/cjs/components/DatePicker/utils/getMaskedDateOnInput.js.map +1 -0
- package/cjs/components/DatePicker/utils/getOriginalDates.js +38 -0
- package/cjs/components/DatePicker/utils/getOriginalDates.js.map +1 -0
- package/cjs/components/DatePicker/utils/normalizeDates.js +36 -0
- package/cjs/components/DatePicker/utils/normalizeDates.js.map +1 -0
- package/cjs/index.css +4 -4
- package/emotion/cjs/components/Calendar/CalendarBase/CalendarBase.js +3 -6
- package/emotion/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +3 -6
- package/emotion/cjs/components/DatePicker/DatePicker.tokens.js +2 -1
- package/emotion/cjs/components/DatePicker/DatePickerBase.styles.js +4 -4
- package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +158 -82
- package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.styles.js +4 -4
- package/emotion/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +3 -3
- package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +68 -33
- package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.styles.js +4 -4
- package/emotion/cjs/components/DatePicker/hooks/useDatePicker.js +132 -76
- package/emotion/cjs/components/DatePicker/hooks/useKeyboardNavigation.js +8 -0
- package/emotion/cjs/components/DatePicker/utils/dateHelper.js +3 -103
- package/emotion/cjs/components/DatePicker/utils/getFormattedDates.js +44 -0
- package/emotion/cjs/components/DatePicker/utils/getMaskedDateOnInput.js +27 -0
- package/emotion/cjs/components/DatePicker/utils/getOriginalDates.js +36 -0
- package/emotion/cjs/components/DatePicker/utils/index.js +33 -0
- package/emotion/cjs/components/DatePicker/utils/normalizeDates.js +34 -0
- package/emotion/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.config.js +7 -7
- package/emotion/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +20 -19
- package/emotion/cjs/examples/plasma_web/components/DatePicker/DatePicker.config.js +7 -7
- package/emotion/cjs/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +17 -12
- package/emotion/es/components/Calendar/CalendarBase/CalendarBase.js +3 -6
- package/emotion/es/components/Calendar/CalendarDouble/CalendarDouble.js +3 -6
- package/emotion/es/components/DatePicker/DatePicker.tokens.js +2 -1
- package/emotion/es/components/DatePicker/DatePickerBase.styles.js +4 -4
- package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +159 -83
- package/emotion/es/components/DatePicker/RangeDate/RangeDate.styles.js +4 -4
- package/emotion/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +3 -3
- package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +69 -34
- package/emotion/es/components/DatePicker/SingleDate/SingleDate.styles.js +4 -4
- package/emotion/es/components/DatePicker/hooks/useDatePicker.js +131 -75
- package/emotion/es/components/DatePicker/hooks/useKeyboardNavigation.js +8 -0
- package/emotion/es/components/DatePicker/utils/dateHelper.js +2 -102
- package/emotion/es/components/DatePicker/utils/getFormattedDates.js +38 -0
- package/emotion/es/components/DatePicker/utils/getMaskedDateOnInput.js +21 -0
- package/emotion/es/components/DatePicker/utils/getOriginalDates.js +30 -0
- package/emotion/es/components/DatePicker/utils/index.js +4 -0
- package/emotion/es/components/DatePicker/utils/normalizeDates.js +28 -0
- package/emotion/es/examples/plasma_b2c/components/DatePicker/DatePicker.config.js +7 -7
- package/emotion/es/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +20 -19
- package/emotion/es/examples/plasma_web/components/DatePicker/DatePicker.config.js +7 -7
- package/emotion/es/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +17 -12
- package/es/components/Calendar/Calendar.types.js.map +1 -1
- package/es/components/Calendar/CalendarBase/CalendarBase.js +3 -6
- package/es/components/Calendar/CalendarBase/CalendarBase.js.map +1 -1
- package/es/components/Calendar/CalendarDouble/CalendarDouble.js +3 -6
- package/es/components/Calendar/CalendarDouble/CalendarDouble.js.map +1 -1
- package/es/components/Calendar/hoc/withRange.js.map +1 -1
- package/es/components/Calendar/store/reducer.js.map +1 -1
- package/es/components/Calendar/utils/calendarGridHelper.js.map +1 -1
- package/es/components/Calendar/utils/calendarRangeHelper.js.map +1 -1
- package/es/components/DatePicker/DatePicker.tokens.js +2 -1
- package/es/components/DatePicker/DatePicker.tokens.js.map +1 -1
- package/es/components/DatePicker/DatePickerBase.styles.js +1 -1
- package/es/components/DatePicker/DatePickerBase.styles.js.map +1 -1
- package/es/components/DatePicker/DatePickerBase.styles_1a5ddg3.css +2 -0
- package/es/components/DatePicker/RangeDate/RangeDate.css +4 -4
- package/es/components/DatePicker/RangeDate/RangeDate.js +160 -84
- package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
- package/es/components/DatePicker/RangeDate/RangeDate.styles.js.map +1 -1
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +2 -2
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +1 -1
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js.map +1 -1
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_1fhuiqs.css +2 -0
- package/es/components/DatePicker/SingleDate/SingleDate.css +2 -2
- package/es/components/DatePicker/SingleDate/SingleDate.js +70 -35
- package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
- package/es/components/DatePicker/SingleDate/SingleDate.styles.js.map +1 -1
- package/es/components/DatePicker/hooks/useDatePicker.js +132 -75
- package/es/components/DatePicker/hooks/useDatePicker.js.map +1 -1
- package/es/components/DatePicker/hooks/useKeyboardNavigation.js +9 -0
- package/es/components/DatePicker/hooks/useKeyboardNavigation.js.map +1 -1
- package/es/components/DatePicker/utils/dateHelper.js +3 -104
- package/es/components/DatePicker/utils/dateHelper.js.map +1 -1
- package/es/components/DatePicker/utils/getFormattedDates.js +42 -0
- package/es/components/DatePicker/utils/getFormattedDates.js.map +1 -0
- package/es/components/DatePicker/utils/getMaskedDateOnInput.js +25 -0
- package/es/components/DatePicker/utils/getMaskedDateOnInput.js.map +1 -0
- package/es/components/DatePicker/utils/getOriginalDates.js +34 -0
- package/es/components/DatePicker/utils/getOriginalDates.js.map +1 -0
- package/es/components/DatePicker/utils/normalizeDates.js +32 -0
- package/es/components/DatePicker/utils/normalizeDates.js.map +1 -0
- package/es/index.css +4 -4
- package/package.json +4 -4
- package/styled-components/cjs/components/Calendar/CalendarBase/CalendarBase.js +3 -6
- package/styled-components/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +3 -6
- package/styled-components/cjs/components/DatePicker/DatePicker.tokens.js +2 -1
- package/styled-components/cjs/components/DatePicker/DatePickerBase.styles.js +2 -2
- package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +158 -82
- package/styled-components/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +1 -1
- package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +68 -33
- package/styled-components/cjs/components/DatePicker/hooks/useDatePicker.js +132 -76
- package/styled-components/cjs/components/DatePicker/hooks/useKeyboardNavigation.js +8 -0
- package/styled-components/cjs/components/DatePicker/utils/dateHelper.js +3 -103
- package/styled-components/cjs/components/DatePicker/utils/getFormattedDates.js +44 -0
- package/styled-components/cjs/components/DatePicker/utils/getMaskedDateOnInput.js +27 -0
- package/styled-components/cjs/components/DatePicker/utils/getOriginalDates.js +36 -0
- package/styled-components/cjs/components/DatePicker/utils/index.js +33 -0
- package/styled-components/cjs/components/DatePicker/utils/normalizeDates.js +34 -0
- package/styled-components/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.config.js +1 -1
- package/styled-components/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +20 -19
- package/styled-components/cjs/examples/plasma_web/components/DatePicker/DatePicker.config.js +1 -1
- package/styled-components/cjs/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +17 -12
- package/styled-components/es/components/Calendar/CalendarBase/CalendarBase.js +3 -6
- package/styled-components/es/components/Calendar/CalendarDouble/CalendarDouble.js +3 -6
- package/styled-components/es/components/DatePicker/DatePicker.tokens.js +2 -1
- package/styled-components/es/components/DatePicker/DatePickerBase.styles.js +2 -2
- package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +159 -83
- package/styled-components/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +1 -1
- package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +69 -34
- package/styled-components/es/components/DatePicker/hooks/useDatePicker.js +131 -75
- package/styled-components/es/components/DatePicker/hooks/useKeyboardNavigation.js +8 -0
- package/styled-components/es/components/DatePicker/utils/dateHelper.js +2 -102
- package/styled-components/es/components/DatePicker/utils/getFormattedDates.js +38 -0
- package/styled-components/es/components/DatePicker/utils/getMaskedDateOnInput.js +21 -0
- package/styled-components/es/components/DatePicker/utils/getOriginalDates.js +30 -0
- package/styled-components/es/components/DatePicker/utils/index.js +4 -0
- package/styled-components/es/components/DatePicker/utils/normalizeDates.js +28 -0
- package/styled-components/es/examples/plasma_b2c/components/DatePicker/DatePicker.config.js +1 -1
- package/styled-components/es/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +20 -19
- package/styled-components/es/examples/plasma_web/components/DatePicker/DatePicker.config.js +1 -1
- package/styled-components/es/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +17 -12
- package/types/components/Calendar/Calendar.types.d.ts +4 -3
- package/types/components/Calendar/Calendar.types.d.ts.map +1 -1
- package/types/components/Calendar/CalendarBase/CalendarBase.d.ts.map +1 -1
- package/types/components/Calendar/CalendarDouble/CalendarDouble.d.ts.map +1 -1
- package/types/components/Calendar/hoc/withRange.d.ts.map +1 -1
- package/types/components/Calendar/store/reducer.d.ts +2 -1
- package/types/components/Calendar/store/reducer.d.ts.map +1 -1
- package/types/components/Calendar/utils/calendarGridHelper.d.ts +4 -4
- package/types/components/Calendar/utils/calendarGridHelper.d.ts.map +1 -1
- package/types/components/Calendar/utils/calendarRangeHelper.d.ts +4 -4
- package/types/components/Calendar/utils/calendarRangeHelper.d.ts.map +1 -1
- package/types/components/DatePicker/DatePicker.tokens.d.ts +1 -0
- package/types/components/DatePicker/DatePicker.tokens.d.ts.map +1 -1
- package/types/components/DatePicker/DatePickerBase.styles.d.ts.map +1 -1
- package/types/components/DatePicker/DatePickerBase.types.d.ts +16 -6
- package/types/components/DatePicker/DatePickerBase.types.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDate.d.ts +3 -2
- package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts +4 -4
- package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.d.ts +1 -1
- package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.types.d.ts +3 -3
- package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.types.d.ts.map +1 -1
- package/types/components/DatePicker/SingleDate/SingleDate.d.ts +11 -6
- package/types/components/DatePicker/SingleDate/SingleDate.d.ts.map +1 -1
- package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts +9 -7
- package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts.map +1 -1
- package/types/components/DatePicker/hooks/useDatePicker.d.ts +5 -4
- package/types/components/DatePicker/hooks/useDatePicker.d.ts.map +1 -1
- package/types/components/DatePicker/hooks/useKeyboardNavigation.d.ts +4 -1
- package/types/components/DatePicker/hooks/useKeyboardNavigation.d.ts.map +1 -1
- package/types/components/DatePicker/utils/dateHelper.d.ts +1 -27
- package/types/components/DatePicker/utils/dateHelper.d.ts.map +1 -1
- package/types/components/DatePicker/utils/getFormattedDates.d.ts +21 -0
- package/types/components/DatePicker/utils/getFormattedDates.d.ts.map +1 -0
- package/types/components/DatePicker/utils/getMaskedDateOnInput.d.ts +2 -0
- package/types/components/DatePicker/utils/getMaskedDateOnInput.d.ts.map +1 -0
- package/types/components/DatePicker/utils/getOriginalDates.d.ts +10 -0
- package/types/components/DatePicker/utils/getOriginalDates.d.ts.map +1 -0
- package/types/components/DatePicker/utils/index.d.ts +5 -0
- package/types/components/DatePicker/utils/index.d.ts.map +1 -0
- package/types/components/DatePicker/utils/normalizeDates.d.ts +15 -0
- package/types/components/DatePicker/utils/normalizeDates.d.ts.map +1 -0
- package/cjs/components/DatePicker/DatePickerBase.styles_1jm7rc0.css +0 -2
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_r5ataz.css +0 -2
- package/es/components/DatePicker/DatePickerBase.styles_1jm7rc0.css +0 -2
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_r5ataz.css +0 -2
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"SingleDate.js","sources":["../../../../src/components/DatePicker/SingleDate/SingleDate.tsx"],"sourcesContent":["import React, { forwardRef, SyntheticEvent, useCallback, useEffect, useLayoutEffect, useRef, useState } from 'react';\nimport type { KeyboardEvent } from 'react';\n\nimport type { RootProps } from '../../../engines';\nimport { cx, getPlacements, noop } from '../../../utils';\nimport { formatCalendarValue, formatInputValue, getDateFormatDelimiter } from '../utils/dateHelper';\nimport { useDatePicker } from '../hooks/useDatePicker';\nimport { classes } from '../DatePicker.tokens';\nimport { InputHidden, StyledCalendar } from '../DatePickerBase.styles';\nimport { keys, useKeyNavigation } from '../hooks/useKeyboardNavigation';\n\nimport type { DatePickerProps } from './SingleDate.types';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as readOnlyCSS } from './variations/_readonly/base';\nimport { LeftHelper, StyledInput, StyledPopover, base } from './SingleDate.styles';\n\nexport const datePickerRoot = (\n Root: RootProps<HTMLDivElement, Omit<DatePickerProps, 'opened' | 'defaultValue' | 'onChangeValue'>>,\n) =>\n forwardRef<HTMLInputElement, DatePickerProps>(\n (\n {\n className,\n opened = false,\n value,\n\n label,\n labelPlacement = 'outer',\n keepPlaceholder,\n required = false,\n requiredPlacement = 'right',\n hasRequiredIndicator = true,\n placeholder,\n leftHelper,\n contentLeft,\n contentRight,\n textBefore,\n textAfter,\n view,\n size,\n readOnly = false,\n disabled = false,\n name,\n\n defaultDate = '',\n valueError,\n valueSuccess,\n format = 'DD.MM.YYYY',\n lang = 'ru',\n maskWithFormat,\n min,\n max,\n renderFromDate,\n includeEdgeDates = false,\n eventList,\n disabledList,\n eventMonthList,\n disabledMonthList,\n eventQuarterList,\n disabledQuarterList,\n eventYearList,\n disabledYearList,\n type = 'Days',\n\n frame = 'document',\n usePortal = false,\n placement = ['top', 'bottom'],\n closeOnOverlayClick = true,\n closeOnEsc = true,\n offset,\n\n onChangeValue,\n onCommitDate,\n onToggle,\n onFocus,\n onBlur,\n onChange,\n\n autoComplete,\n ...rest\n },\n ref,\n ) => {\n const inputRef = useRef<HTMLInputElement | null>(null);\n const innerRef = useRef<HTMLInputElement | null>(null);\n const [isInnerOpen, setIsInnerOpen] = useState(opened);\n\n const [calendarValue, setCalendarValue] = useState(formatCalendarValue(value || defaultDate, format, lang));\n const [inputValue, setInputValue] = useState(\n formatInputValue({ value: value || defaultDate, format, lang }),\n );\n\n const dateFormatDelimiter = useCallback(() => getDateFormatDelimiter(format), [format]);\n\n const {\n datePickerErrorClass,\n datePickerSuccessClass,\n handleChangeValue,\n handleCommitDate,\n updateExternalDate,\n } = useDatePicker({\n currentValue: inputValue,\n setInputValue,\n setCalendarValue,\n dateFormatDelimiter,\n format,\n lang,\n disabled,\n readOnly,\n maskWithFormat,\n valueError,\n valueSuccess,\n name,\n onChangeValue,\n onCommitDate,\n onChange,\n });\n\n const handleToggle = (opened: boolean, event: SyntheticEvent | Event) => {\n if (disabled || readOnly) {\n return;\n }\n\n const isCalendarOpen =\n event.target === inputRef?.current &&\n (event as KeyboardEvent<HTMLInputElement>).code !== keys.Escape\n ? true\n : opened;\n\n if (!isCalendarOpen && inputValue) {\n inputRef?.current?.focus();\n }\n\n if (onToggle) {\n onToggle(isCalendarOpen, event);\n\n return;\n }\n\n setIsInnerOpen(isCalendarOpen);\n };\n\n const { onKeyDown } = useKeyNavigation({\n isCalendarOpen: isInnerOpen,\n onToggle: handleToggle,\n closeOnEsc,\n });\n\n const DatePickerInput = (\n <StyledInput\n ref={inputRef}\n className={cx(datePickerErrorClass, datePickerSuccessClass)}\n value={inputValue}\n size={size}\n readOnly={readOnly}\n disabled={disabled}\n placeholder={placeholder}\n contentLeft={contentLeft}\n contentRight={contentRight}\n textBefore={textBefore}\n textAfter={textAfter}\n onChange={handleChangeValue}\n onSearch={(date) => handleCommitDate(date, true, false)}\n onFocus={onFocus}\n onBlur={onBlur}\n onKeyDown={onKeyDown}\n required={required}\n requiredPlacement={requiredPlacement}\n hasRequiredIndicator={hasRequiredIndicator}\n label={label}\n labelPlacement={labelPlacement}\n keepPlaceholder={keepPlaceholder}\n autoComplete={autoComplete}\n />\n );\n\n useEffect(() => {\n setIsInnerOpen((prevOpen) => prevOpen !== opened && opened);\n }, [opened]);\n\n useLayoutEffect(() => {\n const externalDate = value || defaultDate;\n updateExternalDate(externalDate, setInputValue, setCalendarValue);\n }, [value, defaultDate, format, lang]);\n\n return (\n <Root\n view={view}\n size={size}\n className={cx(classes.datePickerRoot, className)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n ref={ref}\n {...rest}\n >\n <StyledPopover\n opened={isInnerOpen}\n usePortal={usePortal}\n frame={frame}\n onToggle={handleToggle}\n offset={offset}\n placement={getPlacements(placement, false)}\n trigger=\"click\"\n closeOnOverlayClick={closeOnOverlayClick}\n isFocusTrapped={false}\n target={DatePickerInput}\n preventOverflow={false}\n >\n <Root\n view={view}\n size={size}\n className={cx(classes.datePickerRoot, className)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n >\n <StyledCalendar\n size={size}\n value={calendarValue}\n type={type}\n eventList={eventList}\n disabledList={disabledList}\n eventMonthList={eventMonthList}\n disabledMonthList={disabledMonthList}\n eventQuarterList={eventQuarterList}\n disabledQuarterList={disabledQuarterList}\n eventYearList={eventYearList}\n disabledYearList={disabledYearList}\n min={min}\n max={max}\n renderFromDate={renderFromDate}\n includeEdgeDates={includeEdgeDates}\n isRange={false}\n locale={lang}\n onChangeValue={(date, dateInfo) => handleCommitDate(date, false, true, dateInfo)}\n />\n </Root>\n </StyledPopover>\n {leftHelper && (\n <LeftHelper className={cx(datePickerErrorClass, datePickerSuccessClass)}>\n {leftHelper}\n </LeftHelper>\n )}\n <InputHidden\n type=\"hidden\"\n datatype=\"datepicker-single\"\n name={name}\n value={inputValue}\n ref={innerRef}\n {...noop}\n />\n </Root>\n );\n },\n );\n\nexport const datePickerConfig = {\n name: 'DatePicker',\n tag: 'div',\n layout: datePickerRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n css: readOnlyCSS,\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["datePickerRoot","Root","forwardRef","_ref","ref","className","_ref$opened","opened","value","label","_ref$labelPlacement","labelPlacement","keepPlaceholder","_ref$required","required","_ref$requiredPlacemen","requiredPlacement","_ref$hasRequiredIndic","hasRequiredIndicator","placeholder","leftHelper","contentLeft","contentRight","textBefore","textAfter","view","size","_ref$readOnly","readOnly","_ref$disabled","disabled","name","_ref$defaultDate","defaultDate","valueError","valueSuccess","_ref$format","format","_ref$lang","lang","maskWithFormat","min","max","renderFromDate","_ref$includeEdgeDates","includeEdgeDates","eventList","disabledList","eventMonthList","disabledMonthList","eventQuarterList","disabledQuarterList","eventYearList","disabledYearList","_ref$type","type","_ref$frame","frame","_ref$usePortal","usePortal","_ref$placement","placement","_ref$closeOnOverlayCl","closeOnOverlayClick","_ref$closeOnEsc","closeOnEsc","offset","onChangeValue","onCommitDate","onToggle","onFocus","onBlur","onChange","autoComplete","rest","_objectWithoutProperties","_excluded","inputRef","useRef","innerRef","_useState","useState","_useState2","_slicedToArray","isInnerOpen","setIsInnerOpen","_useState3","formatCalendarValue","_useState4","calendarValue","setCalendarValue","_useState5","formatInputValue","_useState6","inputValue","setInputValue","dateFormatDelimiter","useCallback","getDateFormatDelimiter","_useDatePicker","useDatePicker","currentValue","datePickerErrorClass","datePickerSuccessClass","handleChangeValue","handleCommitDate","updateExternalDate","handleToggle","event","isCalendarOpen","target","current","code","keys","Escape","_inputRef$current","focus","_useKeyNavigation","useKeyNavigation","onKeyDown","DatePickerInput","React","createElement","StyledInput","cx","onSearch","date","useEffect","prevOpen","useLayoutEffect","externalDate","_extends","classes","StyledPopover","getPlacements","trigger","isFocusTrapped","preventOverflow","StyledCalendar","isRange","locale","dateInfo","LeftHelper","InputHidden","datatype","noop","datePickerConfig","tag","layout","base","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","readOnlyCSS","defaults"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"SingleDate.js","sources":["../../../../src/components/DatePicker/SingleDate/SingleDate.tsx"],"sourcesContent":["import React, { forwardRef, SyntheticEvent, useCallback, useEffect, useLayoutEffect, useRef, useState } from 'react';\nimport type { KeyboardEvent, FocusEvent } from 'react';\nimport type { DateType } from 'src/components/Calendar/Calendar.types';\n\nimport type { RootProps } from '../../../engines';\nimport { cx, getPlacements, noop } from '../../../utils';\nimport { getDateFormatDelimiter } from '../utils/dateHelper';\nimport { useDatePicker } from '../hooks/useDatePicker';\nimport { classes } from '../DatePicker.tokens';\nimport { InputHidden, StyledCalendar } from '../DatePickerBase.styles';\nimport { keys, useKeyNavigation } from '../hooks/useKeyboardNavigation';\nimport { getFormattedDates } from '../utils';\n\nimport type { DatePickerProps } from './SingleDate.types';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as readOnlyCSS } from './variations/_readonly/base';\nimport { LeftHelper, StyledInput, StyledPopover, base } from './SingleDate.styles';\n\nexport const datePickerRoot = (\n Root: RootProps<HTMLDivElement, Omit<DatePickerProps, 'opened' | 'defaultValue' | 'onChangeValue'>>,\n) =>\n forwardRef<HTMLInputElement, DatePickerProps>(\n (\n {\n className,\n opened = false,\n value,\n\n label,\n labelPlacement = 'outer',\n keepPlaceholder,\n required = false,\n requiredPlacement = 'right',\n hasRequiredIndicator = true,\n placeholder,\n leftHelper,\n contentLeft,\n contentRight,\n textBefore,\n textAfter,\n view,\n size,\n readOnly = false,\n disabled = false,\n name,\n\n defaultDate = '',\n valueError,\n valueSuccess,\n format = 'DD.MM.YYYY',\n lang = 'ru',\n maskWithFormat,\n min,\n max,\n renderFromDate,\n includeEdgeDates = false,\n eventList,\n disabledList,\n eventMonthList,\n disabledMonthList,\n eventQuarterList,\n disabledQuarterList,\n eventYearList,\n disabledYearList,\n type = 'Days',\n\n frame = 'document',\n usePortal = false,\n placement = ['top', 'bottom'],\n closeOnOverlayClick = true,\n closeOnEsc = true,\n offset,\n\n onChangeValue,\n onCommitDate,\n onToggle,\n onFocus,\n onBlur,\n onChange,\n\n autoComplete,\n ...rest\n },\n ref,\n ) => {\n if (value && defaultDate) {\n console.error(\"Controlled DatePicker can't have `defaultDate`, use `value` instead\");\n }\n\n const inputRef = useRef<HTMLInputElement | null>(null);\n const innerRef = useRef<HTMLInputElement | null>(null);\n const [isInnerOpen, setIsInnerOpen] = useState(opened);\n\n const dateFormatDelimiter = useCallback(() => getDateFormatDelimiter(format), [format]);\n\n const initialValues = getFormattedDates({\n value: value || defaultDate,\n delimiter: dateFormatDelimiter(),\n lang,\n format,\n includeEdgeDates,\n min,\n max,\n });\n\n const [correctDates, setCorrectDates] = useState({\n calendar: initialValues.originalDate,\n input: initialValues.formattedDate,\n });\n const [calendarValue, setCalendarValue] = useState<DateType>(correctDates.calendar);\n const [inputValue, setInputValue] = useState(correctDates.input);\n\n const {\n datePickerErrorClass,\n datePickerSuccessClass,\n handleChangeValue,\n handleCalendarPick,\n handleSearch,\n updateExternalDate,\n } = useDatePicker({\n currentValue: inputValue,\n format,\n lang,\n disabled,\n readOnly,\n maskWithFormat,\n valueError,\n valueSuccess,\n name,\n type,\n min,\n max,\n includeEdgeDates,\n setCorrectDates,\n setInputValue,\n setCalendarValue,\n dateFormatDelimiter,\n onChangeValue,\n onCommitDate,\n onChange,\n });\n\n const handleToggle = (innerOpened: boolean, event: SyntheticEvent | Event) => {\n if (disabled || readOnly) {\n return;\n }\n\n const isCalendarOpen =\n event.target === inputRef?.current &&\n (event as KeyboardEvent<HTMLInputElement>).code !== keys.Escape\n ? true\n : innerOpened;\n\n if (!innerOpened && !calendarValue) {\n setCalendarValue((prevValue) => (prevValue === undefined ? null : undefined));\n }\n\n if (onToggle) {\n onToggle(isCalendarOpen, event);\n\n return;\n }\n\n setIsInnerOpen(isCalendarOpen);\n };\n\n const { onKeyDown } = useKeyNavigation({\n isCalendarOpen: isInnerOpen,\n format,\n maskWithFormat,\n delimiter: dateFormatDelimiter(),\n closeOnEsc,\n onToggle: handleToggle,\n });\n\n const handleBlur = (event: FocusEvent<HTMLInputElement>) => {\n if (!calendarValue && correctDates.calendar) {\n setCalendarValue(new Date(correctDates.calendar));\n setInputValue(correctDates.input);\n }\n\n if (onBlur) {\n onBlur(event);\n }\n };\n\n const DatePickerInput = (\n <StyledInput\n ref={inputRef}\n className={cx(datePickerErrorClass, datePickerSuccessClass)}\n value={inputValue}\n size={size}\n readOnly={readOnly}\n disabled={disabled}\n placeholder={placeholder}\n contentLeft={contentLeft}\n contentRight={contentRight}\n textBefore={textBefore}\n textAfter={textAfter}\n onChange={handleChangeValue}\n onSearch={handleSearch}\n onFocus={onFocus}\n onBlur={handleBlur}\n onKeyDown={onKeyDown}\n required={required}\n requiredPlacement={requiredPlacement}\n hasRequiredIndicator={hasRequiredIndicator}\n label={label}\n labelPlacement={labelPlacement}\n keepPlaceholder={keepPlaceholder}\n autoComplete={autoComplete}\n />\n );\n\n useEffect(() => {\n setIsInnerOpen((prevOpen) => prevOpen !== opened && opened);\n }, [opened]);\n\n useLayoutEffect(() => {\n updateExternalDate(value);\n }, [value, format, lang]);\n\n useLayoutEffect(() => {\n if (!value) {\n updateExternalDate(defaultDate);\n }\n }, [defaultDate, format, lang]);\n\n return (\n <Root\n view={view}\n size={size}\n className={cx(classes.datePickerRoot, className)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n ref={ref}\n {...rest}\n >\n <StyledPopover\n opened={isInnerOpen}\n usePortal={usePortal}\n frame={frame}\n onToggle={handleToggle}\n offset={offset}\n placement={getPlacements(placement, false)}\n trigger=\"click\"\n closeOnOverlayClick={closeOnOverlayClick}\n isFocusTrapped={false}\n target={DatePickerInput}\n preventOverflow={false}\n >\n <Root\n view={view}\n size={size}\n className={cx(classes.datePickerRoot, className)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n >\n <StyledCalendar\n size={size}\n value={calendarValue}\n type={type}\n eventList={eventList}\n disabledList={disabledList}\n eventMonthList={eventMonthList}\n disabledMonthList={disabledMonthList}\n eventQuarterList={eventQuarterList}\n disabledQuarterList={disabledQuarterList}\n eventYearList={eventYearList}\n disabledYearList={disabledYearList}\n min={min}\n max={max}\n renderFromDate={renderFromDate}\n includeEdgeDates={includeEdgeDates}\n isRange={false}\n locale={lang}\n onChangeValue={handleCalendarPick}\n />\n </Root>\n </StyledPopover>\n {leftHelper && (\n <LeftHelper className={cx(datePickerErrorClass, datePickerSuccessClass)}>\n {leftHelper}\n </LeftHelper>\n )}\n <InputHidden\n type=\"hidden\"\n datatype=\"datepicker-single\"\n name={name}\n value={inputValue}\n ref={innerRef}\n {...noop}\n />\n </Root>\n );\n },\n );\n\nexport const datePickerConfig = {\n name: 'DatePicker',\n tag: 'div',\n layout: datePickerRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n css: readOnlyCSS,\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["datePickerRoot","Root","forwardRef","_ref","ref","className","_ref$opened","opened","value","label","_ref$labelPlacement","labelPlacement","keepPlaceholder","_ref$required","required","_ref$requiredPlacemen","requiredPlacement","_ref$hasRequiredIndic","hasRequiredIndicator","placeholder","leftHelper","contentLeft","contentRight","textBefore","textAfter","view","size","_ref$readOnly","readOnly","_ref$disabled","disabled","name","_ref$defaultDate","defaultDate","valueError","valueSuccess","_ref$format","format","_ref$lang","lang","maskWithFormat","min","max","renderFromDate","_ref$includeEdgeDates","includeEdgeDates","eventList","disabledList","eventMonthList","disabledMonthList","eventQuarterList","disabledQuarterList","eventYearList","disabledYearList","_ref$type","type","_ref$frame","frame","_ref$usePortal","usePortal","_ref$placement","placement","_ref$closeOnOverlayCl","closeOnOverlayClick","_ref$closeOnEsc","closeOnEsc","offset","onChangeValue","onCommitDate","onToggle","onFocus","onBlur","onChange","autoComplete","rest","_objectWithoutProperties","_excluded","console","error","inputRef","useRef","innerRef","_useState","useState","_useState2","_slicedToArray","isInnerOpen","setIsInnerOpen","dateFormatDelimiter","useCallback","getDateFormatDelimiter","initialValues","getFormattedDates","delimiter","_useState3","calendar","originalDate","input","formattedDate","_useState4","correctDates","setCorrectDates","_useState5","_useState6","calendarValue","setCalendarValue","_useState7","_useState8","inputValue","setInputValue","_useDatePicker","useDatePicker","currentValue","datePickerErrorClass","datePickerSuccessClass","handleChangeValue","handleCalendarPick","handleSearch","updateExternalDate","handleToggle","innerOpened","event","isCalendarOpen","target","current","code","keys","Escape","prevValue","undefined","_useKeyNavigation","useKeyNavigation","onKeyDown","handleBlur","Date","DatePickerInput","React","createElement","StyledInput","cx","onSearch","useEffect","prevOpen","useLayoutEffect","_extends","classes","StyledPopover","getPlacements","trigger","isFocusTrapped","preventOverflow","StyledCalendar","isRange","locale","LeftHelper","InputHidden","datatype","noop","datePickerConfig","tag","layout","base","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","readOnlyCSS","defaults"],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"SingleDate.styles.js","sources":["../../../../src/components/DatePicker/SingleDate/SingleDate.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\nimport { css } from '@linaria/core';\
|
1
|
+
{"version":3,"file":"SingleDate.styles.js","sources":["../../../../src/components/DatePicker/SingleDate/SingleDate.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\nimport { css } from '@linaria/core';\nimport { component, mergeConfig } from 'src/engines';\n\nimport { textFieldConfig, textFieldTokens } from '../../TextField';\nimport { classes, tokens } from '../DatePicker.tokens';\nimport { popoverClasses, popoverConfig } from '../../Popover';\n\nconst mergedTextFieldConfig = mergeConfig(textFieldConfig);\nconst TextField = component(mergedTextFieldConfig);\n\nconst mergedPopoverConfig = mergeConfig(popoverConfig);\nconst Popover = component(mergedPopoverConfig);\n\nexport const StyledPopover = styled(Popover)``;\n\n// NOTE: переопределение токенов TextField\nexport const StyledInput = styled(TextField)`\n width: 100%;\n\n ${textFieldTokens.color}: var(${tokens.textFieldColor});\n ${textFieldTokens.placeholderColor}: var(${tokens.textFieldPlaceholderColor});\n ${textFieldTokens.placeholderColorFocus}: var(${tokens.textFieldPlaceholderColorFocus});\n ${textFieldTokens.caretColor}: var(${tokens.textFieldCaretColor});\n ${textFieldTokens.focusColor}: var(${tokens.textFieldFocusColor});\n\n ${textFieldTokens.backgroundColor}: var(${tokens.textFieldBackgroundColor});\n ${textFieldTokens.backgroundColorHover}: var(${tokens.textFieldBackgroundColorHover});\n ${textFieldTokens.backgroundColorFocus}: var(${tokens.textFieldBackgroundColorFocus});\n \n ${textFieldTokens.borderColor}: var(${tokens.borderColor});\n ${textFieldTokens.borderColorHover}: var(${tokens.borderColorHover});\n ${textFieldTokens.borderColorFocus}: var(${tokens.borderColorFocus});\n\n ${textFieldTokens.colorReadOnly}: var(${tokens.textFieldColorReadOnly});\n ${textFieldTokens.backgroundColorReadOnly}: var(${tokens.textFieldBackgroundColorReadOnly});\n ${textFieldTokens.borderColorReadOnly}: var(${tokens.textFieldBorderColorReadOnly});\n ${textFieldTokens.placeholderColorReadOnly}: var(${tokens.textFieldPlaceholderColorReadOnly});\n\n ${textFieldTokens.height}: var(${tokens.textFieldHeight});\n ${textFieldTokens.borderWidth}: var(${tokens.textFieldBorderWidth});\n ${textFieldTokens.borderRadius}: var(${tokens.textFieldBorderRadius});\n\n ${textFieldTokens.padding}: var(${tokens.textFieldPadding});\n ${textFieldTokens.labelInnerPadding}: var(${tokens.labelInnerPadding});\n ${textFieldTokens.contentLabelInnerPadding}: var(${tokens.contentLabelInnerPadding});\n\n ${textFieldTokens.labelOffset}: var(${tokens.labelOffset});\n\n ${textFieldTokens.labelFontFamily}: var(${tokens.labelFontFamily});\n ${textFieldTokens.labelFontStyle}: var(${tokens.labelFontStyle});\n ${textFieldTokens.labelFontSize}: var(${tokens.labelFontSize});\n ${textFieldTokens.labelFontWeight}: var(${tokens.labelFontWeight});\n ${textFieldTokens.labelLetterSpacing}: var(${tokens.labelLetterSpacing});\n ${textFieldTokens.labelLineHeight}: var(${tokens.labelLineHeight});\n\n ${textFieldTokens.labelInnerFontFamily}: var(${tokens.labelInnerFontFamily});\n ${textFieldTokens.labelInnerFontSize}: var(${tokens.labelInnerFontSize});\n ${textFieldTokens.labelInnerFontStyle}: var(${tokens.labelInnerFontStyle});\n ${textFieldTokens.labelInnerFontWeight}: var(${tokens.labelInnerFontWeight});\n ${textFieldTokens.labelInnerLetterSpacing}: var(${tokens.labelInnerLetterSpacing});\n ${textFieldTokens.labelInnerLineHeight}: var(${tokens.labelInnerLineHeight});\n ${textFieldTokens.labelColorReadOnly}: var(${tokens.labelColorReadOnly});\n\n ${textFieldTokens.indicatorColor}: var(${tokens.indicatorColor});\n ${textFieldTokens.indicatorSizeInner}: var(${tokens.indicatorSize});\n ${textFieldTokens.indicatorSizeOuter}: var(${tokens.indicatorSizeOuter});\n ${textFieldTokens.indicatorLabelPlacementInner}: var(${tokens.indicatorPlacement});\n ${textFieldTokens.indicatorLabelPlacementOuter}: var(${tokens.indicatorOuterPlacement});\n ${textFieldTokens.indicatorLabelPlacementInnerRight}: var(${tokens.indicatorPlacementRight});\n ${textFieldTokens.indicatorLabelPlacementOuterRight}: var(${tokens.indicatorOuterPlacementRight});\n\n ${textFieldTokens.leftContentMargin}: var(${tokens.textFieldLeftContentMargin});\n ${textFieldTokens.rightContentMargin}: var(${tokens.textFieldRightContentMargin});\n\n ${textFieldTokens.fontFamily}: var(${tokens.textFieldFontFamily});\n ${textFieldTokens.fontSize}: var(${tokens.textFieldFontSize});\n ${textFieldTokens.fontStyle}: var(${tokens.textFieldFontStyle});\n ${textFieldTokens.fontWeight}: var(${tokens.textFieldFontWeight});\n ${textFieldTokens.letterSpacing}: var(${tokens.textFieldLetterSpacing});\n ${textFieldTokens.lineHeight}: var(${tokens.textFieldLineHeight});\n\n ${textFieldTokens.disabledOpacity}: var(${tokens.disabledOpacity});\n \n ${textFieldTokens.textBeforeColor}: var(${tokens.textFieldTextBeforeColor});\n ${textFieldTokens.textAfterColor}: var(${tokens.textFieldTextAfterColor});\n ${textFieldTokens.textBeforeMargin}: var(${tokens.textFieldTextBeforeMargin});\n ${textFieldTokens.textAfterMargin}: var(${tokens.textFieldTextAfterMargin});\n ${textFieldTokens.contentSlotColor}: var(${tokens.textFieldContentSlotColor}, var(${tokens.textFieldColor}));\n ${textFieldTokens.contentSlotRightColor}: var(${tokens.textFieldContentRightSlotColor}, var(${textFieldTokens.contentSlotColor}));\n ${textFieldTokens.contentSlotRightColorHover}: var(${tokens.textFieldContentRightSlotColorHover}, var(${textFieldTokens.contentSlotRightColor}));\n\n &.${classes.datePickerError} {\n ${textFieldTokens.backgroundColor}: var(${tokens.textFieldBackgroundErrorColor});\n ${textFieldTokens.backgroundColorHover}: var(${tokens.textFieldBackgroundErrorColorHover});\n ${textFieldTokens.backgroundColorFocus}: var(${tokens.textFieldBackgroundErrorColorFocus});\n \n ${textFieldTokens.borderColor}: var(${tokens.textFieldBorderColorError});\n ${textFieldTokens.borderColorHover}: var(${tokens.textFieldBorderColorErrorHover});\n ${textFieldTokens.borderColorFocus}: var(${tokens.textFieldBorderColorErrorFocus});\n }\n\n &.${classes.datePickerSuccess} {\n ${textFieldTokens.backgroundColor}: var(${tokens.textFieldBackgroundSuccessColor});\n ${textFieldTokens.backgroundColorHover}: var(${tokens.textFieldBackgroundSuccessColorHover});\n ${textFieldTokens.backgroundColorFocus}: var(${tokens.textFieldBackgroundSuccessColorFocus});\n \n ${textFieldTokens.borderColor}: var(${tokens.textFieldBorderColorSuccess});\n ${textFieldTokens.borderColorHover}: var(${tokens.textFieldBorderColorSuccessHover});\n ${textFieldTokens.borderColorFocus}: var(${tokens.textFieldBorderColorSuccessFocus});\n }\n`;\n\nexport const base = css`\n display: inline-block;\n\n .${String(popoverClasses.wrapper)}, .${String(popoverClasses.target)} {\n width: inherit;\n }\n`;\n\nexport const LeftHelper = styled.div`\n color: var(${tokens.leftHelperColor});\n\n &.${classes.datePickerError} {\n color: var(${tokens.leftHelperColorError});\n }\n\n &.${classes.datePickerSuccess} {\n color: var(${tokens.leftHelperColorSuccess});\n }\n`;\n"],"names":["mergedTextFieldConfig","mergeConfig","textFieldConfig","TextField","component","mergedPopoverConfig","popoverConfig","Popover","_exp","StyledPopover","styled","name","class","propsAsIs","_exp2","StyledInput","base","LeftHelper"],"mappings":";;;;;AAQA,IAAMA,qBAAqB,gBAAGC,WAAW,CAACC,eAAe,CAAC,CAAA;AAC1D,IAAMC,SAAS,gBAAGC,SAAS,CAACJ,qBAAqB,CAAC,CAAA;AAElD,IAAMK,mBAAmB,gBAAGJ,WAAW,CAACK,aAAa,CAAC,CAAA;AACtD,IAAMC,OAAO,gBAAGH,SAAS,CAACC,mBAAmB,CAAC,CAAA;AAAC,IAAAG,IAAA,GAX7BA,SAW6BA,IAAAA,GAAA;AAAA,EAAA,OAEXD,OAAO,CAAA;AAAA,CAAA,CAAA;AAApC,IAAME,aAAa,gBAAGC,MAAM,CAAAF,IAAA,EAAA,CAAA,CAAA;AAAAG,EAAAA,IAAA,EAAA,eAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,IAAA;AAAA,CAAW,EAAA;;AAE9C;AAAA,IAAAC,KAAA,GAfkBA,SAelBA,KAAAA,GAAA;AAAA,EAAA,OACkCX,SAAS,CAAA;AAAA,CAAA,CAAA;AAApC,IAAMY,WAAW,gBAAGL,MAAM,CAAAI,KAAA,EAAA,CAAA,CAAA;AAAAH,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,IAAA;AAAA,CA8FhC,EAAA;AAEM,IAAMG,IAAI,GAMhB,UAAA;AAEM,IAAMC,UAAU,gBAAGP,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,YAAA;AAAAC,EAAAA,OAAAA,EAAA,QAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAU/B;;;;"}
|
@@ -1,148 +1,205 @@
|
|
1
|
+
import { customDayjs } from '../../../utils/datejs.js';
|
1
2
|
import { classes } from '../DatePicker.tokens.js';
|
2
|
-
import { getMaskedDateOnInput
|
3
|
+
import { getMaskedDateOnInput } from '../utils/getMaskedDateOnInput.js';
|
4
|
+
import { getFormattedDates } from '../utils/getFormattedDates.js';
|
5
|
+
import { QUARTER_NAMES } from '../../Calendar/utils/constants.js';
|
3
6
|
|
4
7
|
var useDatePicker = function useDatePicker(_ref) {
|
5
8
|
var currentValue = _ref.currentValue,
|
6
|
-
setInputValue = _ref.setInputValue,
|
7
|
-
setCalendarValue = _ref.setCalendarValue,
|
8
|
-
dateFormatDelimiter = _ref.dateFormatDelimiter,
|
9
9
|
format = _ref.format,
|
10
10
|
_ref$lang = _ref.lang,
|
11
11
|
lang = _ref$lang === void 0 ? 'ru' : _ref$lang,
|
12
12
|
disabled = _ref.disabled,
|
13
13
|
readOnly = _ref.readOnly,
|
14
|
-
maskWithFormat = _ref.maskWithFormat,
|
15
14
|
valueError = _ref.valueError,
|
16
15
|
valueSuccess = _ref.valueSuccess,
|
17
16
|
name = _ref.name,
|
17
|
+
type = _ref.type,
|
18
|
+
min = _ref.min,
|
19
|
+
max = _ref.max,
|
20
|
+
includeEdgeDates = _ref.includeEdgeDates,
|
21
|
+
maskWithFormat = _ref.maskWithFormat,
|
22
|
+
setCorrectDates = _ref.setCorrectDates,
|
23
|
+
setInputValue = _ref.setInputValue,
|
24
|
+
setCalendarValue = _ref.setCalendarValue,
|
25
|
+
dateFormatDelimiter = _ref.dateFormatDelimiter,
|
18
26
|
onChangeValue = _ref.onChangeValue,
|
19
27
|
onCommitDate = _ref.onCommitDate,
|
20
28
|
onChange = _ref.onChange;
|
21
29
|
var datePickerErrorClass = valueError ? classes.datePickerError : undefined;
|
22
30
|
var datePickerSuccessClass = valueSuccess ? classes.datePickerSuccess : undefined;
|
31
|
+
var getQuarterInfo = function getQuarterInfo(originalDate) {
|
32
|
+
if (type !== 'Quarters') {
|
33
|
+
return;
|
34
|
+
}
|
35
|
+
var endQuarter = new Date(originalDate);
|
36
|
+
endQuarter.setMonth(originalDate.getMonth() + 3);
|
37
|
+
endQuarter.setDate(0);
|
38
|
+
customDayjs.locale(lang);
|
39
|
+
var quarterIndex = customDayjs(originalDate).quarter() - 1;
|
40
|
+
return {
|
41
|
+
name: QUARTER_NAMES[quarterIndex],
|
42
|
+
fullValue: [originalDate, endQuarter]
|
43
|
+
};
|
44
|
+
};
|
23
45
|
var handleChangeValue = function handleChangeValue(event) {
|
24
46
|
if (disabled || readOnly) {
|
25
47
|
return;
|
26
48
|
}
|
27
49
|
var value = event.target.value;
|
28
50
|
var newValue = maskWithFormat ? getMaskedDateOnInput(value, format, dateFormatDelimiter(), currentValue) : value;
|
29
|
-
|
30
|
-
setCalendarValue(formatCalendarValue(newValue));
|
31
|
-
setInputValue(formatInputValue({
|
51
|
+
var _getFormattedDates = getFormattedDates({
|
32
52
|
value: newValue,
|
53
|
+
lang: lang,
|
54
|
+
delimiter: dateFormatDelimiter(),
|
33
55
|
format: format,
|
34
|
-
|
35
|
-
|
36
|
-
|
56
|
+
includeEdgeDates: includeEdgeDates,
|
57
|
+
min: min,
|
58
|
+
max: max
|
59
|
+
}),
|
60
|
+
formattedDate = _getFormattedDates.formattedDate,
|
61
|
+
isoDate = _getFormattedDates.isoDate,
|
62
|
+
originalDate = _getFormattedDates.originalDate;
|
63
|
+
if (originalDate) {
|
64
|
+
setCorrectDates({
|
65
|
+
calendar: originalDate,
|
66
|
+
input: formattedDate
|
67
|
+
});
|
68
|
+
var dateInfo = getQuarterInfo(originalDate);
|
69
|
+
onCommitDate === null || onCommitDate === void 0 || onCommitDate(formattedDate, false, true, dateInfo, originalDate, isoDate);
|
70
|
+
setCalendarValue(originalDate);
|
71
|
+
setInputValue(formattedDate);
|
72
|
+
onChangeValue === null || onChangeValue === void 0 || onChangeValue(event, formattedDate, originalDate, isoDate);
|
37
73
|
onChange === null || onChange === void 0 || onChange({
|
38
74
|
target: {
|
39
|
-
value:
|
75
|
+
value: formattedDate,
|
76
|
+
originalDate: originalDate,
|
77
|
+
isoDate: isoDate,
|
40
78
|
name: name
|
41
79
|
}
|
42
80
|
});
|
43
81
|
return;
|
44
82
|
}
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
})
|
50
|
-
hasMonthFullName = _validateDateWithFull.hasMonthFullName,
|
51
|
-
isValidMonth = _validateDateWithFull.isValidMonth,
|
52
|
-
isLengthEqual = _validateDateWithFull.isLengthEqual;
|
53
|
-
if (!hasMonthFullName && (newValue === null || newValue === void 0 ? void 0 : newValue.length) === (format === null || format === void 0 ? void 0 : format.length) || isValidMonth && isLengthEqual) {
|
54
|
-
setCalendarValue(formatCalendarValue(newValue, format, lang));
|
83
|
+
if (formattedDate === '') {
|
84
|
+
setCorrectDates({
|
85
|
+
calendar: undefined,
|
86
|
+
input: ''
|
87
|
+
});
|
55
88
|
}
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
lang: lang,
|
60
|
-
hasMonthFullName: hasMonthFullName,
|
61
|
-
isValidMonth: isValidMonth,
|
62
|
-
isLengthEqual: isLengthEqual
|
63
|
-
}));
|
64
|
-
onChangeValue === null || onChangeValue === void 0 || onChangeValue(event, newValue);
|
89
|
+
setCalendarValue(originalDate);
|
90
|
+
setInputValue(formattedDate);
|
91
|
+
onChangeValue === null || onChangeValue === void 0 || onChangeValue(event, formattedDate, originalDate, isoDate);
|
65
92
|
onChange === null || onChange === void 0 || onChange({
|
66
93
|
target: {
|
67
|
-
value:
|
94
|
+
value: formattedDate,
|
95
|
+
originalDate: originalDate,
|
96
|
+
isoDate: isoDate,
|
68
97
|
name: name
|
69
98
|
}
|
70
99
|
});
|
71
100
|
};
|
72
|
-
var
|
101
|
+
var handleSearch = function handleSearch(date) {
|
73
102
|
if (disabled || readOnly) {
|
74
103
|
return;
|
75
104
|
}
|
76
105
|
if (!date) {
|
77
106
|
setCalendarValue(undefined);
|
78
107
|
setInputValue('');
|
79
|
-
return onCommitDate === null || onCommitDate === void 0 ? void 0 : onCommitDate('', false, true);
|
108
|
+
return onCommitDate === null || onCommitDate === void 0 ? void 0 : onCommitDate('', false, true, undefined, undefined, '');
|
80
109
|
}
|
81
|
-
|
82
|
-
var _formattedInputValue = formatInputValue({
|
110
|
+
var _getFormattedDates2 = getFormattedDates({
|
83
111
|
value: date,
|
112
|
+
lang: lang,
|
113
|
+
delimiter: dateFormatDelimiter(),
|
84
114
|
format: format,
|
85
|
-
|
115
|
+
includeEdgeDates: includeEdgeDates,
|
116
|
+
min: min,
|
117
|
+
max: max
|
118
|
+
}),
|
119
|
+
formattedDate = _getFormattedDates2.formattedDate,
|
120
|
+
isoDate = _getFormattedDates2.isoDate,
|
121
|
+
originalDate = _getFormattedDates2.originalDate;
|
122
|
+
if (originalDate) {
|
123
|
+
var dateInfo = getQuarterInfo(originalDate);
|
124
|
+
onCommitDate === null || onCommitDate === void 0 || onCommitDate(formattedDate, false, true, dateInfo, originalDate, isoDate);
|
125
|
+
}
|
126
|
+
};
|
127
|
+
var handleCalendarPick = function handleCalendarPick(date, dateInfo) {
|
128
|
+
if (disabled || readOnly) {
|
129
|
+
return;
|
130
|
+
}
|
131
|
+
if (!date) {
|
132
|
+
setInputValue('');
|
133
|
+
setCalendarValue(date);
|
134
|
+
setCorrectDates({
|
135
|
+
calendar: date || undefined,
|
136
|
+
input: ''
|
86
137
|
});
|
87
|
-
|
88
|
-
setInputValue(_formattedInputValue);
|
89
|
-
onCommitDate === null || onCommitDate === void 0 || onCommitDate(date, false, true, dateInfo);
|
90
|
-
onChangeValue === null || onChangeValue === void 0 || onChangeValue(null, _formattedInputValue);
|
138
|
+
onChangeValue === null || onChangeValue === void 0 || onChangeValue(null, '', date, '');
|
91
139
|
onChange === null || onChange === void 0 || onChange({
|
92
140
|
target: {
|
93
|
-
value:
|
141
|
+
value: '',
|
142
|
+
originalDate: date,
|
143
|
+
isoDate: '',
|
94
144
|
name: name
|
95
145
|
}
|
96
146
|
});
|
147
|
+
onCommitDate === null || onCommitDate === void 0 || onCommitDate('', false, true, dateInfo, date || undefined, '');
|
97
148
|
return;
|
98
149
|
}
|
99
|
-
|
100
|
-
var
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
lang: lang
|
150
|
+
customDayjs.locale(lang);
|
151
|
+
var formattedDate = customDayjs(date).format(format);
|
152
|
+
var isoDate = date.toISOString();
|
153
|
+
setCalendarValue(date);
|
154
|
+
setInputValue(formattedDate);
|
155
|
+
setCorrectDates({
|
156
|
+
calendar: date,
|
157
|
+
input: formattedDate
|
108
158
|
});
|
109
|
-
|
110
|
-
setInputValue(formattedInputValue);
|
111
|
-
onCommitDate === null || onCommitDate === void 0 || onCommitDate(newDate, isError, isSuccess);
|
112
|
-
onChangeValue === null || onChangeValue === void 0 || onChangeValue(null, formattedInputValue);
|
159
|
+
onChangeValue === null || onChangeValue === void 0 || onChangeValue(null, formattedDate, date, isoDate);
|
113
160
|
onChange === null || onChange === void 0 || onChange({
|
114
161
|
target: {
|
115
|
-
value:
|
162
|
+
value: formattedDate,
|
163
|
+
originalDate: date,
|
164
|
+
isoDate: isoDate,
|
116
165
|
name: name
|
117
166
|
}
|
118
167
|
});
|
168
|
+
onCommitDate === null || onCommitDate === void 0 || onCommitDate(formattedDate, false, true, dateInfo, date, isoDate);
|
119
169
|
};
|
120
|
-
var updateExternalDate = function updateExternalDate(externalDate
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
170
|
+
var updateExternalDate = function updateExternalDate(externalDate) {
|
171
|
+
var _getFormattedDates3 = getFormattedDates({
|
172
|
+
value: externalDate || null,
|
173
|
+
lang: lang,
|
174
|
+
delimiter: dateFormatDelimiter(),
|
175
|
+
format: format,
|
176
|
+
includeEdgeDates: includeEdgeDates,
|
177
|
+
min: min,
|
178
|
+
max: max
|
179
|
+
}),
|
180
|
+
formattedDate = _getFormattedDates3.formattedDate,
|
181
|
+
originalDate = _getFormattedDates3.originalDate;
|
182
|
+
setInputValue(formattedDate);
|
183
|
+
setCalendarValue(originalDate);
|
184
|
+
if (originalDate) {
|
185
|
+
setCorrectDates({
|
186
|
+
calendar: originalDate,
|
187
|
+
input: formattedDate
|
188
|
+
});
|
133
189
|
}
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
190
|
+
if (formattedDate === '') {
|
191
|
+
setCorrectDates({
|
192
|
+
calendar: undefined,
|
193
|
+
input: ''
|
194
|
+
});
|
139
195
|
}
|
140
196
|
};
|
141
197
|
return {
|
142
198
|
datePickerErrorClass: datePickerErrorClass,
|
143
199
|
datePickerSuccessClass: datePickerSuccessClass,
|
144
200
|
handleChangeValue: handleChangeValue,
|
145
|
-
|
201
|
+
handleSearch: handleSearch,
|
202
|
+
handleCalendarPick: handleCalendarPick,
|
146
203
|
updateExternalDate: updateExternalDate
|
147
204
|
};
|
148
205
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useDatePicker.js","sources":["../../../../src/components/DatePicker/hooks/useDatePicker.ts"],"sourcesContent":["import type { ChangeEvent, Dispatch, SetStateAction } from 'react';\n\nimport { classes } from '../DatePicker.tokens';\nimport type { UseDatePickerProps } from '../DatePickerBase.types';\nimport {\n formatCalendarValue,\n formatInputValue,\n getDateFromFormat,\n getMaskedDateOnInput,\n validateDateWithFullMonth,\n} from '../utils/dateHelper';\nimport type { DateInfo } from '../../Calendar/Calendar.types';\n\nexport const useDatePicker = ({\n currentValue,\n setInputValue,\n setCalendarValue,\n dateFormatDelimiter,\n format,\n lang = 'ru',\n disabled,\n readOnly,\n maskWithFormat,\n valueError,\n valueSuccess,\n name,\n onChangeValue,\n onCommitDate,\n onChange,\n}: UseDatePickerProps) => {\n const datePickerErrorClass = valueError ? classes.datePickerError : undefined;\n const datePickerSuccessClass = valueSuccess ? classes.datePickerSuccess : undefined;\n\n const handleChangeValue = (event: ChangeEvent<HTMLInputElement>) => {\n if (disabled || readOnly) {\n return;\n }\n const { value } = event.target;\n\n const newValue = maskWithFormat\n ? getMaskedDateOnInput(value, format, dateFormatDelimiter(), currentValue)\n : value;\n\n if (!format) {\n setCalendarValue(formatCalendarValue(newValue));\n setInputValue(formatInputValue({ value: newValue, format, lang }));\n onChangeValue?.(event, newValue);\n onChange?.({ target: { value: newValue, name } });\n\n return;\n }\n\n const { hasMonthFullName, isValidMonth, isLengthEqual } = validateDateWithFullMonth({\n currentValue: newValue,\n format,\n lang,\n });\n\n if ((!hasMonthFullName && newValue?.length === format?.length) || (isValidMonth && isLengthEqual)) {\n setCalendarValue(formatCalendarValue(newValue, format, lang));\n }\n\n setInputValue(\n formatInputValue({ value: newValue, format, lang, hasMonthFullName, isValidMonth, isLengthEqual }),\n );\n\n onChangeValue?.(event, newValue);\n onChange?.({ target: { value: newValue, name } });\n };\n\n const handleCommitDate = (\n date?: Date | string,\n applyFormat?: boolean,\n isCalendarValue?: boolean,\n dateInfo?: DateInfo,\n ) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (!date) {\n setCalendarValue(undefined);\n setInputValue('');\n\n return onCommitDate?.('', false, true);\n }\n\n if (isCalendarValue) {\n const formattedInputValue = formatInputValue({ value: date, format, lang });\n\n setCalendarValue(formatCalendarValue(date, format, lang));\n setInputValue(formattedInputValue);\n\n onCommitDate?.(date, false, true, dateInfo);\n onChangeValue?.(null, formattedInputValue);\n onChange?.({ target: { value: formattedInputValue, name } });\n\n return;\n }\n\n const formatString = applyFormat ? format : undefined;\n\n const { value: newDate, isError, isSuccess } = getDateFromFormat(date, formatString, lang);\n const formattedInputValue = formatInputValue({ value: newDate, format, lang });\n\n setCalendarValue(formatCalendarValue(newDate, format, lang));\n setInputValue(formattedInputValue);\n\n onCommitDate?.(newDate, isError, isSuccess);\n onChangeValue?.(null, formattedInputValue);\n onChange?.({ target: { value: formattedInputValue, name } });\n };\n\n const updateExternalDate = (\n externalDate: Date | string | undefined,\n inputSetter: Dispatch<SetStateAction<string>>,\n calendarSetter: Dispatch<SetStateAction<Date | undefined>>,\n ) => {\n inputSetter(formatInputValue({ value: externalDate, format, lang }));\n\n if (!format) {\n calendarSetter(formatCalendarValue(externalDate, undefined, lang));\n return;\n }\n\n if (!externalDate) {\n calendarSetter(undefined);\n return;\n }\n\n const { value: newDate, isError } = getDateFromFormat(externalDate, undefined, lang);\n\n if (!isError) {\n calendarSetter(formatCalendarValue(newDate, format, lang));\n }\n };\n\n return {\n datePickerErrorClass,\n datePickerSuccessClass,\n handleChangeValue,\n handleCommitDate,\n updateExternalDate,\n };\n};\n"],"names":["useDatePicker","_ref","currentValue","setInputValue","setCalendarValue","dateFormatDelimiter","format","_ref$lang","lang","disabled","readOnly","maskWithFormat","valueError","valueSuccess","name","onChangeValue","onCommitDate","onChange","datePickerErrorClass","classes","datePickerError","undefined","datePickerSuccessClass","datePickerSuccess","handleChangeValue","event","value","target","newValue","getMaskedDateOnInput","formatCalendarValue","formatInputValue","_validateDateWithFull","validateDateWithFullMonth","hasMonthFullName","isValidMonth","isLengthEqual","length","handleCommitDate","date","applyFormat","isCalendarValue","dateInfo","formattedInputValue","formatString","_getDateFromFormat","getDateFromFormat","newDate","isError","isSuccess","updateExternalDate","externalDate","inputSetter","calendarSetter","_getDateFromFormat2"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"useDatePicker.js","sources":["../../../../src/components/DatePicker/hooks/useDatePicker.ts"],"sourcesContent":["import type { ChangeEvent } from 'react';\nimport { customDayjs } from 'src/utils/datejs';\nimport { QUARTER_NAMES } from 'src/components/Calendar/utils';\n\nimport { classes } from '../DatePicker.tokens';\nimport type { UseDatePickerProps } from '../DatePickerBase.types';\nimport type { CalendarValueType, DateInfo } from '../../Calendar/Calendar.types';\nimport { getFormattedDates, getMaskedDateOnInput } from '../utils';\n\nexport const useDatePicker = ({\n currentValue,\n format,\n lang = 'ru',\n disabled,\n readOnly,\n valueError,\n valueSuccess,\n name,\n type,\n min,\n max,\n includeEdgeDates,\n maskWithFormat,\n setCorrectDates,\n setInputValue,\n setCalendarValue,\n dateFormatDelimiter,\n onChangeValue,\n onCommitDate,\n onChange,\n}: UseDatePickerProps) => {\n const datePickerErrorClass = valueError ? classes.datePickerError : undefined;\n const datePickerSuccessClass = valueSuccess ? classes.datePickerSuccess : undefined;\n\n const getQuarterInfo = (originalDate: Date) => {\n if (type !== 'Quarters') {\n return;\n }\n\n const endQuarter = new Date(originalDate);\n\n endQuarter.setMonth(originalDate.getMonth() + 3);\n endQuarter.setDate(0);\n\n customDayjs.locale(lang);\n const quarterIndex = customDayjs(originalDate).quarter() - 1;\n\n return {\n name: QUARTER_NAMES[quarterIndex],\n fullValue: [originalDate, endQuarter] as CalendarValueType,\n };\n };\n\n const handleChangeValue = (event: ChangeEvent<HTMLInputElement>) => {\n if (disabled || readOnly) {\n return;\n }\n const { value } = event.target;\n\n const newValue = maskWithFormat\n ? getMaskedDateOnInput(value, format, dateFormatDelimiter(), currentValue)\n : value;\n\n const { formattedDate, isoDate, originalDate } = getFormattedDates({\n value: newValue,\n lang,\n delimiter: dateFormatDelimiter(),\n format,\n includeEdgeDates,\n min,\n max,\n });\n\n if (originalDate) {\n setCorrectDates({ calendar: originalDate, input: formattedDate });\n\n const dateInfo = getQuarterInfo(originalDate);\n\n onCommitDate?.(formattedDate, false, true, dateInfo, originalDate, isoDate);\n\n setCalendarValue(originalDate);\n setInputValue(formattedDate);\n\n onChangeValue?.(event, formattedDate, originalDate, isoDate);\n onChange?.({\n target: {\n value: formattedDate,\n originalDate,\n isoDate,\n name,\n },\n });\n\n return;\n }\n\n if (formattedDate === '') {\n setCorrectDates({ calendar: undefined, input: '' });\n }\n\n setCalendarValue(originalDate);\n setInputValue(formattedDate);\n\n onChangeValue?.(event, formattedDate, originalDate, isoDate);\n onChange?.({ target: { value: formattedDate, originalDate, isoDate, name } });\n };\n\n const handleSearch = (date: string) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (!date) {\n setCalendarValue(undefined);\n setInputValue('');\n\n return onCommitDate?.('', false, true, undefined, undefined, '');\n }\n\n const { formattedDate, isoDate, originalDate } = getFormattedDates({\n value: date,\n lang,\n delimiter: dateFormatDelimiter(),\n format,\n includeEdgeDates,\n min,\n max,\n });\n\n if (originalDate) {\n const dateInfo = getQuarterInfo(originalDate);\n\n onCommitDate?.(formattedDate, false, true, dateInfo, originalDate, isoDate);\n }\n };\n\n const handleCalendarPick = (date?: Date | null, dateInfo?: DateInfo) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (!date) {\n setInputValue('');\n setCalendarValue(date);\n setCorrectDates({ calendar: date || undefined, input: '' });\n\n onChangeValue?.(null, '', date, '');\n onChange?.({ target: { value: '', originalDate: date, isoDate: '', name } });\n onCommitDate?.('', false, true, dateInfo, date || undefined, '');\n\n return;\n }\n\n customDayjs.locale(lang);\n const formattedDate = customDayjs(date).format(format);\n const isoDate = date.toISOString();\n\n setCalendarValue(date);\n setInputValue(formattedDate);\n setCorrectDates({ calendar: date, input: formattedDate });\n\n onChangeValue?.(null, formattedDate, date, isoDate);\n onChange?.({ target: { value: formattedDate, originalDate: date, isoDate, name } });\n onCommitDate?.(formattedDate, false, true, dateInfo, date, isoDate);\n };\n\n const updateExternalDate = (externalDate: Date | string | undefined) => {\n const { formattedDate, originalDate } = getFormattedDates({\n value: externalDate || null,\n lang,\n delimiter: dateFormatDelimiter(),\n format,\n includeEdgeDates,\n min,\n max,\n });\n\n setInputValue(formattedDate);\n setCalendarValue(originalDate);\n\n if (originalDate) {\n setCorrectDates({ calendar: originalDate, input: formattedDate });\n }\n\n if (formattedDate === '') {\n setCorrectDates({ calendar: undefined, input: '' });\n }\n };\n\n return {\n datePickerErrorClass,\n datePickerSuccessClass,\n handleChangeValue,\n handleSearch,\n handleCalendarPick,\n updateExternalDate,\n };\n};\n"],"names":["useDatePicker","_ref","currentValue","format","_ref$lang","lang","disabled","readOnly","valueError","valueSuccess","name","type","min","max","includeEdgeDates","maskWithFormat","setCorrectDates","setInputValue","setCalendarValue","dateFormatDelimiter","onChangeValue","onCommitDate","onChange","datePickerErrorClass","classes","datePickerError","undefined","datePickerSuccessClass","datePickerSuccess","getQuarterInfo","originalDate","endQuarter","Date","setMonth","getMonth","setDate","customDayjs","locale","quarterIndex","quarter","QUARTER_NAMES","fullValue","handleChangeValue","event","value","target","newValue","getMaskedDateOnInput","_getFormattedDates","getFormattedDates","delimiter","formattedDate","isoDate","calendar","input","dateInfo","handleSearch","date","_getFormattedDates2","handleCalendarPick","toISOString","updateExternalDate","externalDate","_getFormattedDates3"],"mappings":"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"}
|
@@ -1,3 +1,5 @@
|
|
1
|
+
import { needFullMonth } from '../utils/dateHelper.js';
|
2
|
+
|
1
3
|
var keys = {
|
2
4
|
Space: 'Space',
|
3
5
|
Escape: 'Escape'
|
@@ -5,8 +7,15 @@ var keys = {
|
|
5
7
|
var useKeyNavigation = function useKeyNavigation(_ref) {
|
6
8
|
var isCalendarOpen = _ref.isCalendarOpen,
|
7
9
|
closeOnEsc = _ref.closeOnEsc,
|
10
|
+
format = _ref.format,
|
11
|
+
maskWithFormat = _ref.maskWithFormat,
|
12
|
+
delimiter = _ref.delimiter,
|
8
13
|
onToggle = _ref.onToggle;
|
9
14
|
var onKeyDown = function onKeyDown(event) {
|
15
|
+
if (event.key === delimiter && maskWithFormat && format && !needFullMonth(format)) {
|
16
|
+
event.preventDefault();
|
17
|
+
return;
|
18
|
+
}
|
10
19
|
switch (event.code) {
|
11
20
|
case keys.Space:
|
12
21
|
{
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useKeyboardNavigation.js","sources":["../../../../src/components/DatePicker/hooks/useKeyboardNavigation.ts"],"sourcesContent":["import type { ChangeEvent, KeyboardEvent, SyntheticEvent } from 'react';\n\ninterface Props {\n isCalendarOpen: boolean;\n closeOnEsc: boolean;\n onToggle: (isOpen: boolean, event: SyntheticEvent | Event) => void;\n}\n\nexport const keys = {\n Space: 'Space',\n Escape: 'Escape',\n};\n\nexport const useKeyNavigation = ({
|
1
|
+
{"version":3,"file":"useKeyboardNavigation.js","sources":["../../../../src/components/DatePicker/hooks/useKeyboardNavigation.ts"],"sourcesContent":["import type { ChangeEvent, KeyboardEvent, SyntheticEvent } from 'react';\n\nimport { needFullMonth } from '../utils/dateHelper';\n\ninterface Props {\n isCalendarOpen: boolean;\n closeOnEsc: boolean;\n delimiter: string;\n format?: string;\n maskWithFormat?: boolean;\n onToggle: (isOpen: boolean, event: SyntheticEvent | Event) => void;\n}\n\nexport const keys = {\n Space: 'Space',\n Escape: 'Escape',\n};\n\nexport const useKeyNavigation = ({\n isCalendarOpen,\n closeOnEsc,\n format,\n maskWithFormat,\n delimiter,\n onToggle,\n}: Props) => {\n const onKeyDown = (event: ChangeEvent<HTMLInputElement> & KeyboardEvent<HTMLInputElement>) => {\n if (event.key === delimiter && maskWithFormat && format && !needFullMonth(format)) {\n event.preventDefault();\n return;\n }\n\n switch (event.code) {\n case keys.Space: {\n if (!isCalendarOpen) {\n event.preventDefault();\n onToggle(true, event);\n }\n break;\n }\n case keys.Escape: {\n if (isCalendarOpen && closeOnEsc) {\n event.preventDefault();\n onToggle(false, event);\n }\n break;\n }\n\n default: {\n break;\n }\n }\n };\n\n return { onKeyDown };\n};\n"],"names":["keys","Space","Escape","useKeyNavigation","_ref","isCalendarOpen","closeOnEsc","format","maskWithFormat","delimiter","onToggle","onKeyDown","event","key","needFullMonth","preventDefault","code"],"mappings":";;AAaO,IAAMA,IAAI,GAAG;AAChBC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,MAAM,EAAE,QAAA;AACZ,EAAC;IAEYC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAC,IAAA,EAOhB;AAAA,EAAA,IANTC,cAAc,GAAAD,IAAA,CAAdC,cAAc;IACdC,UAAU,GAAAF,IAAA,CAAVE,UAAU;IACVC,MAAM,GAAAH,IAAA,CAANG,MAAM;IACNC,cAAc,GAAAJ,IAAA,CAAdI,cAAc;IACdC,SAAS,GAAAL,IAAA,CAATK,SAAS;IACTC,QAAQ,GAAAN,IAAA,CAARM,QAAQ,CAAA;AAER,EAAA,IAAMC,SAAS,GAAG,SAAZA,SAASA,CAAIC,KAAsE,EAAK;AAC1F,IAAA,IAAIA,KAAK,CAACC,GAAG,KAAKJ,SAAS,IAAID,cAAc,IAAID,MAAM,IAAI,CAACO,aAAa,CAACP,MAAM,CAAC,EAAE;MAC/EK,KAAK,CAACG,cAAc,EAAE,CAAA;AACtB,MAAA,OAAA;AACJ,KAAA;IAEA,QAAQH,KAAK,CAACI,IAAI;MACd,KAAKhB,IAAI,CAACC,KAAK;AAAE,QAAA;UACb,IAAI,CAACI,cAAc,EAAE;YACjBO,KAAK,CAACG,cAAc,EAAE,CAAA;AACtBL,YAAAA,QAAQ,CAAC,IAAI,EAAEE,KAAK,CAAC,CAAA;AACzB,WAAA;AACA,UAAA,MAAA;AACJ,SAAA;MACA,KAAKZ,IAAI,CAACE,MAAM;AAAE,QAAA;UACd,IAAIG,cAAc,IAAIC,UAAU,EAAE;YAC9BM,KAAK,CAACG,cAAc,EAAE,CAAA;AACtBL,YAAAA,QAAQ,CAAC,KAAK,EAAEE,KAAK,CAAC,CAAA;AAC1B,WAAA;AACA,UAAA,MAAA;AACJ,SAAA;AAKJ,KAAA;GACH,CAAA;EAED,OAAO;AAAED,IAAAA,SAAS,EAATA,SAAAA;GAAW,CAAA;AACxB;;;;"}
|