@consta/uikit 4.23.1 → 4.25.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/ComboboxCanary/index.d.ts +1 -0
- package/ComboboxCanary/index.js +1 -0
- package/SelectCanary/index.d.ts +1 -0
- package/SelectCanary/index.js +1 -0
- package/UserSelectCanary/index.d.ts +1 -0
- package/UserSelectCanary/index.js +1 -0
- package/__internal__/src/components/AutoCompleteCanary/AutoCompleteCanary.js +1 -1
- package/__internal__/src/components/AutoCompleteCanary/AutoCompleteCanary.js.map +1 -1
- package/__internal__/src/components/AutoCompleteCanary/helpers.d.ts +8 -2
- package/__internal__/src/components/AutoCompleteCanary/types.d.ts +13 -2
- package/__internal__/src/components/AutoCompleteCanary/types.js.map +1 -1
- package/__internal__/src/components/AutoCompleteCanary/useAutoComplete.d.ts +6 -0
- package/__internal__/src/components/AutoCompleteCanary/useAutoComplete.js +1 -1
- package/__internal__/src/components/AutoCompleteCanary/useAutoComplete.js.map +1 -1
- package/__internal__/src/components/Button/Button.css +1 -1
- package/__internal__/src/components/CollapseGroup/helpers.d.ts +3 -3
- package/__internal__/src/components/Combobox/helpers.d.ts +2 -2
- package/__internal__/src/components/ComboboxCanary/ComboboxCanary.d.ts +4 -0
- package/__internal__/src/components/ComboboxCanary/ComboboxCanary.js +2 -0
- package/__internal__/src/components/ComboboxCanary/ComboboxCanary.js.map +1 -0
- package/__internal__/src/components/ComboboxCanary/helpers.d.ts +186 -0
- package/__internal__/src/components/ComboboxCanary/helpers.js +2 -0
- package/__internal__/src/components/ComboboxCanary/helpers.js.map +1 -0
- package/__internal__/src/components/ComboboxCanary/index.d.ts +2 -0
- package/__internal__/src/components/ComboboxCanary/index.js +2 -0
- package/__internal__/src/components/ComboboxCanary/index.js.map +1 -0
- package/__internal__/src/components/ContextMenu/ContextMenuLevelWrapper/ContextMenuLevelWrapper.d.ts +1 -1
- package/__internal__/src/components/ContextMenu/ContextMenuLevels/ContextMenuLevels.js +1 -1
- package/__internal__/src/components/ContextMenu/ContextMenuLevels/ContextMenuLevels.js.map +1 -1
- package/__internal__/src/components/ContextMenu/helpers.d.ts +2 -2
- package/__internal__/src/components/ContextMenuDeprecated/ContextMenuDeprecated.js +1 -1
- package/__internal__/src/components/ContextMenuDeprecated/ContextMenuDeprecated.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerFieldTypeDate/DatePickerFieldTypeDate.d.ts +3 -3
- package/__internal__/src/components/DatePicker/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.d.ts +4 -4
- package/__internal__/src/components/DatePicker/DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime.d.ts +3 -3
- package/__internal__/src/components/DatePicker/DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange.d.ts +4 -4
- package/__internal__/src/components/DatePicker/DatePickerFieldTypeMonth/DatePickerFieldTypeMonth.d.ts +3 -3
- package/__internal__/src/components/DatePicker/DatePickerFieldTypeMonthRange/DatePickerFieldTypeMonthRange.d.ts +4 -4
- package/__internal__/src/components/DatePicker/DatePickerFieldTypeTime/DatePickerFieldTypeTime.d.ts +3 -3
- package/__internal__/src/components/DatePicker/DatePickerFieldTypeYear/DatePickerFieldTypeYear.d.ts +3 -3
- package/__internal__/src/components/DatePicker/DatePickerFieldTypeYearRange/DatePickerFieldTypeYearRange.d.ts +4 -4
- package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.js.map +1 -1
- package/__internal__/src/components/EventInterceptor/propsHandlers/useTextFieldEventsHandler.d.ts +4 -4
- package/__internal__/src/components/Select/helpers.d.ts +1 -1
- package/__internal__/src/components/SelectCanary/SelectCanary.d.ts +4 -0
- package/__internal__/src/components/SelectCanary/SelectCanary.js +2 -0
- package/__internal__/src/components/SelectCanary/SelectCanary.js.map +1 -0
- package/__internal__/src/components/SelectCanary/helpers.d.ts +159 -0
- package/__internal__/src/components/SelectCanary/helpers.js +2 -0
- package/__internal__/src/components/SelectCanary/helpers.js.map +1 -0
- package/__internal__/src/components/SelectCanary/index.d.ts +1 -0
- package/__internal__/src/components/SelectCanary/index.js +2 -0
- package/__internal__/src/components/SelectCanary/index.js.map +1 -0
- package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.js +1 -1
- package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.js.map +1 -1
- package/__internal__/src/components/SelectComponentsCanary/Select.css +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectContainer/SelectContainer.d.ts +20 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectContainer/SelectContainer.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectContainer/SelectContainer.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectContainer/index.d.ts +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectContainer/index.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectContainer/index.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectCreateButton/SelectCreateButton.css +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectCreateButton/SelectCreateButton.d.ts +15 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectCreateButton/SelectCreateButton.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectCreateButton/SelectCreateButton.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectCreateButton/index.d.ts +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectCreateButton/index.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectCreateButton/index.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectDropdown/SelectDropdown.css +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectDropdown/SelectDropdown.d.ts +41 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectDropdown/SelectDropdown.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectDropdown/SelectDropdown.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectDropdown/index.d.ts +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectDropdown/index.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectDropdown/index.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectGroupLabel/SelectGroupLabel.d.ts +10 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectGroupLabel/SelectGroupLabel.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectGroupLabel/SelectGroupLabel.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectGroupLabel/index.d.ts +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectGroupLabel/index.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectGroupLabel/index.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectItem/SelectItem.css +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectItem/SelectItem.d.ts +17 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectItem/SelectItem.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectItem/SelectItem.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectItem/index.d.ts +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectItem/index.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectItem/index.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectItemAll/SelectItemAll.css +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectItemAll/SelectSelectAll.d.ts +14 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectItemAll/SelectSelectAll.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectItemAll/SelectSelectAll.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectItemAll/index.d.ts +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectItemAll/index.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectItemAll/index.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectLoader/SelectLoader.css +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectLoader/SelectLoader.d.ts +3 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectLoader/SelectLoader.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectLoader/SelectLoader.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectLoader/index.d.ts +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectLoader/index.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectLoader/index.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectValueTag/SelectValueTag.css +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectValueTag/SelectValueTag.d.ts +12 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectValueTag/SelectValueTag.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectValueTag/SelectValueTag.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectValueTag/index.d.ts +1 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectValueTag/index.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/SelectValueTag/index.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/cnSelect.d.ts +3 -0
- package/__internal__/src/components/SelectComponentsCanary/cnSelect.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/cnSelect.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/helpers.d.ts +4 -0
- package/__internal__/src/components/SelectComponentsCanary/helpers.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/helpers.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/types.d.ts +34 -0
- package/__internal__/src/components/SelectComponentsCanary/types.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/types.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/useSelect/helpers.d.ts +14 -0
- package/__internal__/src/components/SelectComponentsCanary/useSelect/helpers.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/useSelect/helpers.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/useSelect/index.d.ts +1 -0
- package/__internal__/src/components/SelectComponentsCanary/useSelect/index.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/useSelect/index.js.map +1 -0
- package/__internal__/src/components/SelectComponentsCanary/useSelect/useSelect.d.ts +84 -0
- package/__internal__/src/components/SelectComponentsCanary/useSelect/useSelect.js +2 -0
- package/__internal__/src/components/SelectComponentsCanary/useSelect/useSelect.js.map +1 -0
- package/__internal__/src/components/Slider/helper.d.ts +1 -1
- package/__internal__/src/components/SnackBar/helper.d.ts +1 -1
- package/__internal__/src/components/SpoilerCanary/Spoiler.css +1 -1
- package/__internal__/src/components/SpoilerCanary/SpoilerButton/SpoilerButton.js +1 -1
- package/__internal__/src/components/SpoilerCanary/SpoilerButton/SpoilerButton.js.map +1 -1
- package/__internal__/src/components/SpoilerCanary/SpoilerCanary.js +1 -1
- package/__internal__/src/components/SpoilerCanary/SpoilerCanary.js.map +1 -1
- package/__internal__/src/components/SpoilerCanary/index.d.ts +1 -0
- package/__internal__/src/components/SpoilerCanary/index.js +1 -1
- package/__internal__/src/components/SpoilerCanary/index.js.map +1 -1
- package/__internal__/src/components/SpoilerCanary/types.d.ts +20 -5
- package/__internal__/src/components/SpoilerCanary/types.js +1 -1
- package/__internal__/src/components/SpoilerCanary/types.js.map +1 -1
- package/__internal__/src/components/TagBase/TagBase.d.ts +1 -1
- package/__internal__/src/components/TextField/TextField.css +1 -1
- package/__internal__/src/components/TextField/TextField.js +1 -1
- package/__internal__/src/components/TextField/TextField.js.map +1 -1
- package/__internal__/src/components/UserSelect/helpers.d.ts +2 -2
- package/__internal__/src/components/UserSelectCanary/UserSelectCanary.d.ts +5 -0
- package/__internal__/src/components/UserSelectCanary/UserSelectCanary.js +2 -0
- package/__internal__/src/components/UserSelectCanary/UserSelectCanary.js.map +1 -0
- package/__internal__/src/components/UserSelectCanary/UserSelectItem/UserSelectItem.css +1 -0
- package/__internal__/src/components/UserSelectCanary/UserSelectItem/UserSelectItem.d.ts +14 -0
- package/__internal__/src/components/UserSelectCanary/UserSelectItem/UserSelectItem.js +2 -0
- package/__internal__/src/components/UserSelectCanary/UserSelectItem/UserSelectItem.js.map +1 -0
- package/__internal__/src/components/UserSelectCanary/UserSelectValue/UserSelectValue.css +1 -0
- package/__internal__/src/components/UserSelectCanary/UserSelectValue/UserSelectValue.d.ts +15 -0
- package/__internal__/src/components/UserSelectCanary/UserSelectValue/UserSelectValue.js +2 -0
- package/__internal__/src/components/UserSelectCanary/UserSelectValue/UserSelectValue.js.map +1 -0
- package/__internal__/src/components/UserSelectCanary/helpers.d.ts +191 -0
- package/__internal__/src/components/UserSelectCanary/helpers.js +2 -0
- package/__internal__/src/components/UserSelectCanary/helpers.js.map +1 -0
- package/__internal__/src/components/UserSelectCanary/index.d.ts +1 -0
- package/__internal__/src/components/UserSelectCanary/index.js +2 -0
- package/__internal__/src/components/UserSelectCanary/index.js.map +1 -0
- package/__internal__/src/hooks/useBreakpoints/useBreakpoints.js +1 -1
- package/__internal__/src/hooks/useBreakpoints/useBreakpoints.js.map +1 -1
- package/__internal__/src/hooks/useComponentBreakpoints/useComponentBreakpoints.js +1 -1
- package/__internal__/src/hooks/useComponentBreakpoints/useComponentBreakpoints.js.map +1 -1
- package/__internal__/src/hooks/useFlag/useFlag.d.ts +1 -0
- package/__internal__/src/hooks/useFlag/useFlag.js +1 -1
- package/__internal__/src/hooks/useFlag/useFlag.js.map +1 -1
- package/__internal__/src/hooks/useForkRef/useForkRef.d.ts +2 -1
- package/__internal__/src/hooks/useForkRef/useForkRef.js +1 -1
- package/__internal__/src/hooks/useForkRef/useForkRef.js.map +1 -1
- package/__internal__/src/hooks/useRefs/useRefs.d.ts +2 -2
- package/__internal__/src/hooks/useRefs/useRefs.js.map +1 -1
- package/__internal__/src/hooks/useStyleProps/getStyleProps.d.ts +2 -0
- package/__internal__/src/hooks/useStyleProps/getStyleProps.js +2 -0
- package/__internal__/src/hooks/useStyleProps/getStyleProps.js.map +1 -0
- package/__internal__/src/hooks/useStyleProps/helpers.d.ts +2 -0
- package/__internal__/src/hooks/useStyleProps/helpers.js +2 -0
- package/__internal__/src/hooks/useStyleProps/helpers.js.map +1 -0
- package/__internal__/src/hooks/useStyleProps/index.d.ts +2 -0
- package/__internal__/src/hooks/useStyleProps/index.js +2 -0
- package/__internal__/src/hooks/useStyleProps/index.js.map +1 -0
- package/__internal__/src/hooks/useStyleProps/types.d.ts +1 -0
- package/__internal__/src/hooks/useStyleProps/types.js +2 -0
- package/__internal__/src/hooks/useStyleProps/types.js.map +1 -0
- package/__internal__/src/hooks/useStyleProps/useStyleProps.d.ts +3 -0
- package/__internal__/src/hooks/useStyleProps/useStyleProps.js +2 -0
- package/__internal__/src/hooks/useStyleProps/useStyleProps.js.map +1 -0
- package/__internal__/src/hooks/useThemeVars/index.d.ts +1 -0
- package/__internal__/src/hooks/useThemeVars/index.js +1 -1
- package/__internal__/src/hooks/useThemeVars/index.js.map +1 -1
- package/__internal__/src/hooks/useThemeVars/useThemeVars.d.ts +1 -1
- package/__internal__/src/hooks/useThemeVars/useThemeVars.js +1 -1
- package/__internal__/src/hooks/useThemeVars/useThemeVars.js.map +1 -1
- package/__internal__/src/icons/IconAdd/IconAdd.d.ts +1 -2
- package/__internal__/src/icons/IconAddToComparison/IconAddToComparison.d.ts +1 -2
- package/__internal__/src/icons/IconAlert/IconAlert.d.ts +1 -2
- package/__internal__/src/icons/IconAlignBlocksLeft/IconAlignBlocksLeft.d.ts +1 -2
- package/__internal__/src/icons/IconAlignBlocksRight/IconAlignBlocksRight.d.ts +1 -2
- package/__internal__/src/icons/IconAlignCenter/IconAlignCenter.d.ts +1 -2
- package/__internal__/src/icons/IconAlignJustify/IconAlignJustify.d.ts +1 -2
- package/__internal__/src/icons/IconAlignLeft/IconAlignLeft.d.ts +1 -2
- package/__internal__/src/icons/IconAlignRight/IconAlignRight.d.ts +1 -2
- package/__internal__/src/icons/IconAllDone/IconAllDone.d.ts +1 -2
- package/__internal__/src/icons/IconArrowDown/IconArrowDown.d.ts +1 -2
- package/__internal__/src/icons/IconArrowLeft/IconArrowLeft.d.ts +1 -2
- package/__internal__/src/icons/IconArrowRight/IconArrowRight.d.ts +1 -2
- package/__internal__/src/icons/IconArrowUp/IconArrowUp.d.ts +1 -2
- package/__internal__/src/icons/IconArtBrush/IconArtBrush.d.ts +1 -2
- package/__internal__/src/icons/IconAttach/IconAttach.d.ts +1 -2
- package/__internal__/src/icons/IconAxesRotate/IconAxesRotate.d.ts +1 -2
- package/__internal__/src/icons/IconBackward/IconBackward.d.ts +1 -2
- package/__internal__/src/icons/IconBag/IconBag.d.ts +1 -2
- package/__internal__/src/icons/IconBarrier/IconBarrier.d.ts +1 -2
- package/__internal__/src/icons/IconBento/IconBento.d.ts +1 -2
- package/__internal__/src/icons/IconBit/IconBit.d.ts +1 -2
- package/__internal__/src/icons/IconBold/IconBold.d.ts +1 -2
- package/__internal__/src/icons/IconBook/IconBook.d.ts +1 -2
- package/__internal__/src/icons/IconBookmarkFilled/IconBookmarkFilled.d.ts +1 -2
- package/__internal__/src/icons/IconBookmarkStroked/IconBookmarkStroked.d.ts +1 -2
- package/__internal__/src/icons/IconCalculator/IconCalculator.d.ts +1 -2
- package/__internal__/src/icons/IconCalendar/IconCalendar.d.ts +1 -2
- package/__internal__/src/icons/IconCamera/IconCamera.d.ts +1 -2
- package/__internal__/src/icons/IconCancel/IconCancel.d.ts +1 -2
- package/__internal__/src/icons/IconCards/IconCards.d.ts +1 -2
- package/__internal__/src/icons/IconChatFilled/IconChatFilled.d.ts +1 -2
- package/__internal__/src/icons/IconChatStroked/IconChatStroked.d.ts +1 -2
- package/__internal__/src/icons/IconCheck/IconCheck.d.ts +1 -2
- package/__internal__/src/icons/IconClose/IconClose.d.ts +1 -2
- package/__internal__/src/icons/IconCollapse/IconCollapse.d.ts +1 -2
- package/__internal__/src/icons/IconColorFill/IconColorFill.d.ts +1 -2
- package/__internal__/src/icons/IconColorText/IconColorText.d.ts +1 -2
- package/__internal__/src/icons/IconColumns/IconColumns.d.ts +1 -2
- package/__internal__/src/icons/IconCommentFilled/IconCommentFilled.d.ts +1 -2
- package/__internal__/src/icons/IconCommentStroked/IconCommentStroked.d.ts +1 -2
- package/__internal__/src/icons/IconConnection/IconConnection.d.ts +1 -2
- package/__internal__/src/icons/IconCopy/IconCopy.d.ts +1 -2
- package/__internal__/src/icons/IconCrown/IconCrown.d.ts +1 -2
- package/__internal__/src/icons/IconCursorMouse/IconCursorMouse.d.ts +1 -2
- package/__internal__/src/icons/IconDataNull/IconDataNull.d.ts +1 -2
- package/__internal__/src/icons/IconDiamond/IconDiamond.d.ts +1 -2
- package/__internal__/src/icons/IconDinosaur/IconDinosaur.d.ts +1 -2
- package/__internal__/src/icons/IconDisconnection/IconDisconnection.d.ts +1 -2
- package/__internal__/src/icons/IconDocAdd/IconDocAdd.d.ts +1 -2
- package/__internal__/src/icons/IconDocBlank/IconDocBlank.d.ts +1 -2
- package/__internal__/src/icons/IconDocDelete/IconDocDelete.d.ts +1 -2
- package/__internal__/src/icons/IconDocExport/IconDocExport.d.ts +1 -2
- package/__internal__/src/icons/IconDocFilled/IconDocFilled.d.ts +1 -2
- package/__internal__/src/icons/IconDown/IconDown.d.ts +1 -2
- package/__internal__/src/icons/IconDownload/IconDownload.d.ts +1 -2
- package/__internal__/src/icons/IconDrag/IconDrag.d.ts +1 -2
- package/__internal__/src/icons/IconDraggable/IconDraggable.d.ts +1 -2
- package/__internal__/src/icons/IconDrillingPartLeftFilled/IconDrillingPartLeftFilled.d.ts +1 -2
- package/__internal__/src/icons/IconDrillingPartLeftStroked/IconDrillingPartLeftStroked.d.ts +1 -2
- package/__internal__/src/icons/IconDrillingPartRightFilled/IconDrillingPartRightFilled.d.ts +1 -2
- package/__internal__/src/icons/IconDrillingPartRightStroked/IconDrillingPartRightStroked.d.ts +1 -2
- package/__internal__/src/icons/IconDrillingRig/IconDrillingRig.d.ts +1 -2
- package/__internal__/src/icons/IconDrop/IconDrop.d.ts +1 -2
- package/__internal__/src/icons/IconEdit/IconEdit.d.ts +1 -2
- package/__internal__/src/icons/IconExit/IconExit.d.ts +1 -2
- package/__internal__/src/icons/IconExpand/IconExpand.d.ts +1 -2
- package/__internal__/src/icons/IconEye/IconEye.d.ts +1 -2
- package/__internal__/src/icons/IconEyeClose/IconEyeClose.d.ts +1 -2
- package/__internal__/src/icons/IconFavorite/IconFavorite.d.ts +1 -2
- package/__internal__/src/icons/IconFilter/IconFilter.d.ts +1 -2
- package/__internal__/src/icons/IconFishboneFilled/IconFishboneFilled.d.ts +1 -2
- package/__internal__/src/icons/IconFishboneStroked/IconFishboneStroked.d.ts +1 -2
- package/__internal__/src/icons/IconFitToDefault/IconFitToDefault.d.ts +1 -2
- package/__internal__/src/icons/IconFlagFilled/IconFlagFilled.d.ts +1 -2
- package/__internal__/src/icons/IconFlagStroked/IconFlagStroked.d.ts +1 -2
- package/__internal__/src/icons/IconFolders/IconFolders.d.ts +1 -2
- package/__internal__/src/icons/IconForward/IconForward.d.ts +1 -2
- package/__internal__/src/icons/IconFunnel/IconFunnel.d.ts +1 -2
- package/__internal__/src/icons/IconGas/IconGas.d.ts +1 -2
- package/__internal__/src/icons/IconGeo/IconGeo.d.ts +1 -2
- package/__internal__/src/icons/IconGradients/IconGradients.d.ts +1 -2
- package/__internal__/src/icons/IconGrouping/IconGrouping.d.ts +1 -2
- package/__internal__/src/icons/IconHamburger/IconHamburger.d.ts +1 -2
- package/__internal__/src/icons/IconHand/IconHand.d.ts +1 -2
- package/__internal__/src/icons/IconHealth/IconHealth.d.ts +1 -2
- package/__internal__/src/icons/IconHome/IconHome.d.ts +1 -2
- package/__internal__/src/icons/IconInComparison/IconInComparison.d.ts +1 -2
- package/__internal__/src/icons/IconIncident/IconIncident.d.ts +1 -2
- package/__internal__/src/icons/IconInfo/IconInfo.d.ts +1 -2
- package/__internal__/src/icons/IconIntroduction/IconIntroduction.d.ts +1 -2
- package/__internal__/src/icons/IconIpad/IconIpad.d.ts +1 -2
- package/__internal__/src/icons/IconItalic/IconItalic.d.ts +1 -2
- package/__internal__/src/icons/IconKebab/IconKebab.d.ts +1 -2
- package/__internal__/src/icons/IconKernFilled/IconKernFilled.d.ts +1 -2
- package/__internal__/src/icons/IconKernStroked/IconKernStroked.d.ts +1 -2
- package/__internal__/src/icons/IconLaptop/IconLaptop.d.ts +1 -2
- package/__internal__/src/icons/IconLayers/IconLayers.d.ts +1 -2
- package/__internal__/src/icons/IconLeaf/IconLeaf.d.ts +1 -2
- package/__internal__/src/icons/IconLightningBolt/IconLightningBolt.d.ts +1 -2
- package/__internal__/src/icons/IconLineAndBarChart/IconLineAndBarChart.d.ts +1 -2
- package/__internal__/src/icons/IconLink/IconLink.d.ts +1 -2
- package/__internal__/src/icons/IconList/IconList.d.ts +1 -2
- package/__internal__/src/icons/IconListNumbered/IconListNumbered.d.ts +1 -2
- package/__internal__/src/icons/IconLithologyFilled/IconLithologyFilled.d.ts +1 -2
- package/__internal__/src/icons/IconLithologyStroked/IconLithologyStroked.d.ts +1 -2
- package/__internal__/src/icons/IconLock/IconLock.d.ts +1 -2
- package/__internal__/src/icons/IconLogicalElement/IconLogicalElement.d.ts +1 -2
- package/__internal__/src/icons/IconMBU/IconMBU.d.ts +1 -2
- package/__internal__/src/icons/IconMGRP/IconMGRP.d.ts +1 -2
- package/__internal__/src/icons/IconMLSP/IconMLSP.d.ts +1 -2
- package/__internal__/src/icons/IconMMP/IconMMP.d.ts +1 -2
- package/__internal__/src/icons/IconMail/IconMail.d.ts +1 -2
- package/__internal__/src/icons/IconMap/IconMap.d.ts +1 -2
- package/__internal__/src/icons/IconMaxHeight/IconMaxHeight.d.ts +1 -2
- package/__internal__/src/icons/IconMaxWidth/IconMaxWidth.d.ts +1 -2
- package/__internal__/src/icons/IconMeatball/IconMeatball.d.ts +1 -2
- package/__internal__/src/icons/IconMic/IconMic.d.ts +1 -2
- package/__internal__/src/icons/IconMolecules/IconMolecules.d.ts +1 -2
- package/__internal__/src/icons/IconMoon/IconMoon.d.ts +1 -2
- package/__internal__/src/icons/IconNodeEnd/IconNodeEnd.d.ts +1 -2
- package/__internal__/src/icons/IconNodeStart/IconNodeStart.d.ts +1 -2
- package/__internal__/src/icons/IconNodeStep/IconNodeStep.d.ts +1 -2
- package/__internal__/src/icons/IconNodes/IconNodes.d.ts +1 -2
- package/__internal__/src/icons/IconOilBarrel/IconOilBarrel.d.ts +1 -2
- package/__internal__/src/icons/IconOpenInNew/IconOpenInNew.d.ts +1 -2
- package/__internal__/src/icons/IconOperators/IconOperators.d.ts +1 -2
- package/__internal__/src/icons/IconPanelBottom/IconPanelBottom.d.ts +1 -2
- package/__internal__/src/icons/IconPanelLeft/IconPanelLeft.d.ts +1 -2
- package/__internal__/src/icons/IconPanelRight/IconPanelRight.d.ts +1 -2
- package/__internal__/src/icons/IconPanelTop/IconPanelTop.d.ts +1 -2
- package/__internal__/src/icons/IconPaste/IconPaste.d.ts +1 -2
- package/__internal__/src/icons/IconPause/IconPause.d.ts +1 -2
- package/__internal__/src/icons/IconPhone/IconPhone.d.ts +1 -2
- package/__internal__/src/icons/IconPhoto/IconPhoto.d.ts +1 -2
- package/__internal__/src/icons/IconPicture/IconPicture.d.ts +1 -2
- package/__internal__/src/icons/IconPlay/IconPlay.d.ts +1 -2
- package/__internal__/src/icons/IconPressureFilled/IconPressureFilled.d.ts +1 -2
- package/__internal__/src/icons/IconPressureStroked/IconPressureStroked.d.ts +1 -2
- package/__internal__/src/icons/IconPriceLabel/IconPriceLabel.d.ts +1 -2
- package/__internal__/src/icons/IconProcessing/IconProcessing.d.ts +1 -2
- package/__internal__/src/icons/IconQuestion/IconQuestion.d.ts +1 -2
- package/__internal__/src/icons/IconQuote/IconQuote.d.ts +1 -2
- package/__internal__/src/icons/IconRUO/IconRUO.d.ts +1 -2
- package/__internal__/src/icons/IconRUS/IconRUS.d.ts +1 -2
- package/__internal__/src/icons/IconRecord/IconRecord.d.ts +1 -2
- package/__internal__/src/icons/IconRemove/IconRemove.d.ts +1 -2
- package/__internal__/src/icons/IconRemoveFromComparison/IconRemoveFromComparison.d.ts +1 -2
- package/__internal__/src/icons/IconReply/IconReply.d.ts +1 -2
- package/__internal__/src/icons/IconResize/IconResize.d.ts +1 -2
- package/__internal__/src/icons/IconRestart/IconRestart.d.ts +1 -2
- package/__internal__/src/icons/IconRevert/IconRevert.d.ts +1 -2
- package/__internal__/src/icons/IconRing/IconRing.d.ts +1 -2
- package/__internal__/src/icons/IconRouble/IconRouble.d.ts +1 -2
- package/__internal__/src/icons/IconRuler/IconRuler.d.ts +1 -2
- package/__internal__/src/icons/IconSave/IconSave.d.ts +1 -2
- package/__internal__/src/icons/IconScreen/IconScreen.d.ts +1 -2
- package/__internal__/src/icons/IconSearch/IconSearch.d.ts +1 -2
- package/__internal__/src/icons/IconSelect/IconSelect.d.ts +1 -2
- package/__internal__/src/icons/IconSelectOpen/IconSelectOpen.d.ts +1 -2
- package/__internal__/src/icons/IconSendMessage/IconSendMessage.d.ts +1 -2
- package/__internal__/src/icons/IconSettings/IconSettings.d.ts +1 -2
- package/__internal__/src/icons/IconShape/IconShape.d.ts +1 -2
- package/__internal__/src/icons/IconShuffle/IconShuffle.d.ts +1 -2
- package/__internal__/src/icons/IconSmile/IconSmile.d.ts +1 -2
- package/__internal__/src/icons/IconSnowflake/IconSnowflake.d.ts +1 -2
- package/__internal__/src/icons/IconSortDown/IconSortDown.d.ts +1 -2
- package/__internal__/src/icons/IconSortDownCenter/IconSortDownCenter.d.ts +1 -2
- package/__internal__/src/icons/IconSortUp/IconSortUp.d.ts +1 -2
- package/__internal__/src/icons/IconSortUpCenter/IconSortUpCenter.d.ts +1 -2
- package/__internal__/src/icons/IconSpeed/IconSpeed.d.ts +1 -2
- package/__internal__/src/icons/IconStop/IconStop.d.ts +1 -2
- package/__internal__/src/icons/IconStorage/IconStorage.d.ts +1 -2
- package/__internal__/src/icons/IconStrikethrough/IconStrikethrough.d.ts +1 -2
- package/__internal__/src/icons/IconString/IconString.d.ts +1 -2
- package/__internal__/src/icons/IconSun/IconSun.d.ts +1 -2
- package/__internal__/src/icons/IconTable/IconTable.d.ts +1 -2
- package/__internal__/src/icons/IconTable2/IconTable2.d.ts +1 -2
- package/__internal__/src/icons/IconTarget/IconTarget.d.ts +1 -2
- package/__internal__/src/icons/IconTeam/IconTeam.d.ts +1 -2
- package/__internal__/src/icons/IconTechResponse/IconTechResponse.d.ts +1 -2
- package/__internal__/src/icons/IconTest/IconTest.d.ts +1 -2
- package/__internal__/src/icons/IconThumbUp/IconThumbUp.d.ts +1 -2
- package/__internal__/src/icons/IconTie/IconTie.d.ts +1 -2
- package/__internal__/src/icons/IconTop/IconTop.d.ts +1 -2
- package/__internal__/src/icons/IconTrajectory/IconTrajectory.d.ts +1 -2
- package/__internal__/src/icons/IconTrash/IconTrash.d.ts +1 -2
- package/__internal__/src/icons/IconType/IconType.d.ts +1 -2
- package/__internal__/src/icons/IconUnderline/IconUnderline.d.ts +1 -2
- package/__internal__/src/icons/IconUnlock/IconUnlock.d.ts +1 -2
- package/__internal__/src/icons/IconUnsort/IconUnsort.d.ts +1 -2
- package/__internal__/src/icons/IconUnsortCenter/IconUnsortCenter.d.ts +1 -2
- package/__internal__/src/icons/IconUpload/IconUpload.d.ts +1 -2
- package/__internal__/src/icons/IconUser/IconUser.d.ts +1 -2
- package/__internal__/src/icons/IconVZD/IconVZD.d.ts +1 -2
- package/__internal__/src/icons/IconVideo/IconVideo.d.ts +1 -2
- package/__internal__/src/icons/IconWarning/IconWarning.d.ts +1 -2
- package/__internal__/src/icons/IconWatch/IconWatch.d.ts +1 -2
- package/__internal__/src/icons/IconWellOpen/IconWellOpen.d.ts +1 -2
- package/__internal__/src/icons/IconWellPipe/IconWellPipe.d.ts +1 -2
- package/__internal__/src/icons/IconWideScreen/IconWideScreen.d.ts +1 -2
- package/__internal__/src/icons/IconWorldFilled/IconWorldFilled.d.ts +1 -2
- package/__internal__/src/icons/IconWorldStroked/IconWorldStroked.d.ts +1 -2
- package/__internal__/src/icons/IconWrench/IconWrench.d.ts +1 -2
- package/__internal__/src/icons/IconYandexDzen/IconYandexDzen.d.ts +1 -2
- package/__internal__/src/icons/IconYoutube/IconYoutube.d.ts +1 -2
- package/__internal__/src/icons/createIcon/createIcon.d.ts +1 -2
- package/__internal__/src/icons/createIcon/createIcon.js +1 -1
- package/__internal__/src/icons/createIcon/createIcon.js.map +1 -1
- package/__internal__/src/mixs/MixSpace/MixSpace.js.map +1 -1
- package/__internal__/src/utils/fabricIndex.js +1 -1
- package/__internal__/src/utils/fabricIndex.js.map +1 -1
- package/__internal__/src/utils/object/index.d.ts +2 -0
- package/__internal__/src/utils/object/index.js +2 -0
- package/__internal__/src/utils/object/index.js.map +1 -0
- package/__internal__/src/utils/{object.js → object/isEmpty.js} +1 -1
- package/__internal__/src/utils/object/isEmpty.js.map +1 -0
- package/__internal__/src/utils/object/isEq.d.ts +1 -0
- package/__internal__/src/utils/object/isEq.js.map +1 -0
- package/package.json +2 -2
- package/useStyleProps/index.d.ts +1 -0
- package/useStyleProps/index.js +1 -0
- package/__internal__/src/hooks/useBreakpoints/isEq.d.ts +0 -2
- package/__internal__/src/hooks/useBreakpoints/isEq.js.map +0 -1
- package/__internal__/src/utils/object.js.map +0 -1
- /package/__internal__/src/utils/{object.d.ts → object/isEmpty.d.ts} +0 -0
- /package/__internal__/src/{hooks/useBreakpoints → utils/object}/isEq.js +0 -0
package/__internal__/src/components/DatePicker/DatePickerFieldTypeYear/DatePickerFieldTypeYear.d.ts
CHANGED
|
@@ -19,8 +19,8 @@ export declare const DatePickerFieldTypeYear: React.ForwardRefExoticComponent<{
|
|
|
19
19
|
onBlur?: React.FocusEventHandler<HTMLElement> | undefined;
|
|
20
20
|
autoFocus?: boolean | undefined;
|
|
21
21
|
placeholder?: string | undefined;
|
|
22
|
-
leftSide?: string | import("@consta/icons/Icon").IconComponent | undefined;
|
|
23
|
-
rightSide?: string | import("@consta/icons/Icon").IconComponent | undefined;
|
|
22
|
+
leftSide?: string | import("@consta/icons/Icon").IconComponent<"span"> | undefined;
|
|
23
|
+
rightSide?: string | import("@consta/icons/Icon").IconComponent<"span"> | undefined;
|
|
24
24
|
readOnly?: boolean | undefined;
|
|
25
25
|
required?: boolean | undefined;
|
|
26
26
|
tabIndex?: number | undefined;
|
|
@@ -34,7 +34,7 @@ export declare const DatePickerFieldTypeYear: React.ForwardRefExoticComponent<{
|
|
|
34
34
|
maxDate?: Date | undefined;
|
|
35
35
|
focused?: boolean | undefined;
|
|
36
36
|
label?: string | undefined;
|
|
37
|
-
labelIcon?: import("@consta/icons/Icon").IconComponent | undefined;
|
|
37
|
+
labelIcon?: import("@consta/icons/Icon").IconComponent<"span"> | undefined;
|
|
38
38
|
caption?: string | undefined;
|
|
39
39
|
labelPosition?: "left" | "top" | undefined;
|
|
40
40
|
withClearButton?: boolean | undefined;
|
|
@@ -7,10 +7,10 @@ export declare const DatePickerFieldTypeYearRange: React.ForwardRefExoticCompone
|
|
|
7
7
|
value?: import("../../../utils/types/Date").DateRange | null | undefined;
|
|
8
8
|
startFieldInputRef?: React.Ref<HTMLInputElement> | undefined;
|
|
9
9
|
endFieldInputRef?: React.Ref<HTMLInputElement> | undefined;
|
|
10
|
-
startFieldLeftSide?: string | import("@consta/icons/Icon").IconComponent | undefined;
|
|
11
|
-
startFieldRightSide?: string | import("@consta/icons/Icon").IconComponent | undefined;
|
|
12
|
-
endFieldLeftSide?: string | import("@consta/icons/Icon").IconComponent | undefined;
|
|
13
|
-
endFieldRightSide?: string | import("@consta/icons/Icon").IconComponent | undefined;
|
|
10
|
+
startFieldLeftSide?: string | import("@consta/icons/Icon").IconComponent<"span"> | undefined;
|
|
11
|
+
startFieldRightSide?: string | import("@consta/icons/Icon").IconComponent<"span"> | undefined;
|
|
12
|
+
endFieldLeftSide?: string | import("@consta/icons/Icon").IconComponent<"span"> | undefined;
|
|
13
|
+
endFieldRightSide?: string | import("@consta/icons/Icon").IconComponent<"span"> | undefined;
|
|
14
14
|
startFieldRef?: React.Ref<HTMLDivElement> | undefined;
|
|
15
15
|
endFieldRef?: React.Ref<HTMLDivElement> | undefined;
|
|
16
16
|
startFieldOnFocus?: React.FocusEventHandler<HTMLElement> | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerTypeDateRange.js","names":["addMonths","startOfMonth","React","forwardRef","useCallback","useEffect","useRef","useState","useClickOutside","useFlag","useForkRef","DatePickerDropdown","DatePickerFieldTypeDateRange","getDropdownZIndex","getFieldName","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeDateRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","dropdownClassName","name","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","on","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","hadleChange","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.tsx"],"sourcesContent":["import addMonths from 'date-fns/addMonths';\nimport startOfMonth from 'date-fns/startOfMonth';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateRange } from '../DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange';\nimport {\n getDropdownZIndex,\n getFieldName,\n normalizeRangeValue,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeDateRange: DatePickerTypeComponent<'date-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n dropdownClassName,\n name,\n ...fieldProps\n } = props;\n\n const startFieldRef = useRef<HTMLDivElement>(null);\n const endFieldRef = useRef<HTMLDivElement>(null);\n const startFieldInputRef = useRef<HTMLInputElement>(null);\n const endFieldInputRef = useRef<HTMLInputElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [fieldFocused, setFieldFocused] = useState<'start' | 'end' | false>(\n false,\n );\n\n const startFocused = fieldFocused === 'start';\n const endFocused = fieldFocused === 'end';\n\n const hadleChange: DatePickerDropdownPropOnChange = ({ e, value }) => {\n if (startFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([value, props?.value?.[1]]),\n });\n }\n if (endFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([props?.value?.[0], value]),\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfMonth,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n const startFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[0]?.(e) : onBlur?.(e);\n\n const endFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[1]?.(e) : onBlur?.(e);\n\n const startFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('start');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('end');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[1]?.(e) : onFocus?.(e);\n };\n\n // эфект для того чтобы календарь переключался при вводе с клавиатуры\n useEffect(() => {\n if (props.value?.[0] && dateTimeView === 'classic' && startFocused) {\n const newVisibleDate = startOfMonth(props.value[0]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[0] && dateTimeView !== 'classic' && startFocused) {\n const newVisibleDate = startOfMonth(props.value[0]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addMonths(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[0]?.getTime(), calendarVisible, startFocused]);\n\n useEffect(() => {\n if (props.value?.[1] && dateTimeView === 'classic' && endFocused) {\n const newVisibleDate = startOfMonth(props.value[1]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[1] && dateTimeView !== 'classic' && endFocused) {\n const newVisibleDate = startOfMonth(props.value[1]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addMonths(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(addMonths(newVisibleDate, -1));\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [startFieldRef, endFieldRef, calendarRef],\n handler: useCallback(() => {\n setFieldFocused(false);\n setCalendarVisible.off();\n }, []),\n });\n\n return (\n <>\n <DatePickerFieldTypeDateRange\n {...fieldProps}\n ref={ref}\n startFieldRef={startFieldRef}\n endFieldRef={endFieldRef}\n startFieldInputRef={useForkRef([startFieldInputRef, inputRef?.[0]])}\n endFieldInputRef={useForkRef([endFieldInputRef, inputRef?.[1]])}\n startFieldOnFocus={startFieldOnFocusHandler}\n endFieldOnFocus={endFieldOnFocusHandler}\n startFieldLeftSide={\n Array.isArray(leftSide) ? leftSide?.[0] : leftSide\n }\n startFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[0] : undefined\n }\n endFieldLeftSide={Array.isArray(leftSide) ? leftSide?.[1] : undefined}\n endFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[1] : rightSide\n }\n startFieldOnBlur={startFieldOnBlurHandler}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={getFieldName(name, 0)}\n endFieldName={getFieldName(name, 1)}\n />\n <DatePickerDropdown\n type=\"date\"\n ref={calendarRef}\n anchorRef={startFieldRef}\n className={dropdownClassName}\n isOpen={calendarVisible}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={hadleChange}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DatePickerTypeDateRange.js","names":["addMonths","startOfMonth","React","forwardRef","useCallback","useEffect","useRef","useState","useClickOutside","useFlag","useForkRef","DatePickerDropdown","DatePickerFieldTypeDateRange","getDropdownZIndex","getFieldName","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeDateRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","dropdownClassName","name","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","on","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","hadleChange","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.tsx"],"sourcesContent":["import addMonths from 'date-fns/addMonths';\nimport startOfMonth from 'date-fns/startOfMonth';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateRange } from '../DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange';\nimport {\n getDropdownZIndex,\n getFieldName,\n normalizeRangeValue,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeDateRange: DatePickerTypeComponent<'date-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n dropdownClassName,\n name,\n ...fieldProps\n } = props;\n\n const startFieldRef = useRef<HTMLDivElement>(null);\n const endFieldRef = useRef<HTMLDivElement>(null);\n const startFieldInputRef = useRef<HTMLInputElement>(null);\n const endFieldInputRef = useRef<HTMLInputElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [fieldFocused, setFieldFocused] = useState<'start' | 'end' | false>(\n false,\n );\n\n const startFocused = fieldFocused === 'start';\n const endFocused = fieldFocused === 'end';\n\n const hadleChange: DatePickerDropdownPropOnChange = ({ e, value }) => {\n if (startFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([value, props?.value?.[1]]),\n });\n }\n if (endFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([props?.value?.[0], value]),\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfMonth,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n const startFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[0]?.(e) : onBlur?.(e);\n\n const endFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[1]?.(e) : onBlur?.(e);\n\n const startFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('start');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('end');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[1]?.(e) : onFocus?.(e);\n };\n\n // эффект для того чтобы календарь переключался при вводе с клавиатуры\n useEffect(() => {\n if (props.value?.[0] && dateTimeView === 'classic' && startFocused) {\n const newVisibleDate = startOfMonth(props.value[0]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[0] && dateTimeView !== 'classic' && startFocused) {\n const newVisibleDate = startOfMonth(props.value[0]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addMonths(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[0]?.getTime(), calendarVisible, startFocused]);\n\n useEffect(() => {\n if (props.value?.[1] && dateTimeView === 'classic' && endFocused) {\n const newVisibleDate = startOfMonth(props.value[1]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[1] && dateTimeView !== 'classic' && endFocused) {\n const newVisibleDate = startOfMonth(props.value[1]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addMonths(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(addMonths(newVisibleDate, -1));\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [startFieldRef, endFieldRef, calendarRef],\n handler: useCallback(() => {\n setFieldFocused(false);\n setCalendarVisible.off();\n }, []),\n });\n\n return (\n <>\n <DatePickerFieldTypeDateRange\n {...fieldProps}\n ref={ref}\n startFieldRef={startFieldRef}\n endFieldRef={endFieldRef}\n startFieldInputRef={useForkRef([startFieldInputRef, inputRef?.[0]])}\n endFieldInputRef={useForkRef([endFieldInputRef, inputRef?.[1]])}\n startFieldOnFocus={startFieldOnFocusHandler}\n endFieldOnFocus={endFieldOnFocusHandler}\n startFieldLeftSide={\n Array.isArray(leftSide) ? leftSide?.[0] : leftSide\n }\n startFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[0] : undefined\n }\n endFieldLeftSide={Array.isArray(leftSide) ? leftSide?.[1] : undefined}\n endFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[1] : rightSide\n }\n startFieldOnBlur={startFieldOnBlurHandler}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={getFieldName(name, 0)}\n endFieldName={getFieldName(name, 1)}\n />\n <DatePickerDropdown\n type=\"date\"\n ref={calendarRef}\n anchorRef={startFieldRef}\n className={dropdownClassName}\n isOpen={calendarVisible}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={hadleChange}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerTypeDateTimeRange.js","names":["startOfMonth","React","forwardRef","useCallback","useEffect","useRef","useState","useClickOutside","useFlag","useForkRef","DatePickerDropdown","DatePickerFieldTypeDateTimeRange","getDropdownZIndex","getFieldName","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeDateTimeRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","multiplicityMinutes","dropdownClassName","multiplicitySeconds","multiplicityHours","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","on","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","hadleChange","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.tsx"],"sourcesContent":["import startOfMonth from 'date-fns/startOfMonth';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateTimeRange } from '../DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange';\nimport {\n getDropdownZIndex,\n getFieldName,\n normalizeRangeValue,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeDateTimeRange: DatePickerTypeComponent<'date-time-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n name,\n multiplicityMinutes,\n dropdownClassName,\n multiplicitySeconds,\n multiplicityHours,\n ...fieldProps\n } = props;\n\n const startFieldRef = useRef<HTMLDivElement>(null);\n const endFieldRef = useRef<HTMLDivElement>(null);\n const startFieldInputRef = useRef<HTMLInputElement>(null);\n const endFieldInputRef = useRef<HTMLInputElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [fieldFocused, setFieldFocused] = useState<'start' | 'end' | false>(\n false,\n );\n\n const startFocused = fieldFocused === 'start';\n const endFocused = fieldFocused === 'end';\n\n const hadleChange: DatePickerDropdownPropOnChange = ({ e, value }) => {\n if (startFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([value, props?.value?.[1]]),\n });\n }\n if (endFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([props?.value?.[0], value]),\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfMonth,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n const startFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[0]?.(e) : onBlur?.(e);\n\n const endFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[1]?.(e) : onBlur?.(e);\n\n const startFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('start');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('end');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[1]?.(e) : onFocus?.(e);\n };\n\n // эфект для того чтобы календарь переключался при вводе с клавиатуры\n useEffect(() => {\n if (props.value?.[0] && startFocused) {\n const newVisibleDate = startOfMonth(props.value[0]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[0]?.getTime(), calendarVisible, startFocused]);\n\n useEffect(() => {\n if (props.value?.[1] && endFocused) {\n const newVisibleDate = startOfMonth(props.value[1]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [startFieldRef, endFieldRef, calendarRef],\n handler: useCallback(() => {\n setFieldFocused(false);\n setCalendarVisible.off();\n }, []),\n });\n\n return (\n <>\n <DatePickerFieldTypeDateTimeRange\n {...fieldProps}\n ref={ref}\n startFieldRef={startFieldRef}\n endFieldRef={endFieldRef}\n startFieldInputRef={useForkRef([startFieldInputRef, inputRef?.[0]])}\n endFieldInputRef={useForkRef([endFieldInputRef, inputRef?.[1]])}\n startFieldOnFocus={startFieldOnFocusHandler}\n endFieldOnFocus={endFieldOnFocusHandler}\n startFieldLeftSide={\n Array.isArray(leftSide) ? leftSide?.[0] : leftSide\n }\n startFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[0] : undefined\n }\n endFieldLeftSide={Array.isArray(leftSide) ? leftSide?.[1] : undefined}\n endFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[1] : rightSide\n }\n startFieldOnBlur={startFieldOnBlurHandler}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={getFieldName(name, 0)}\n endFieldName={getFieldName(name, 1)}\n />\n <DatePickerDropdown\n type=\"date-time\"\n ref={calendarRef}\n anchorRef={startFieldRef}\n isOpen={calendarVisible}\n className={dropdownClassName}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n timeFor={fieldFocused || undefined}\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={hadleChange}\n renderAdditionalControls={renderAdditionalControls}\n multiplicityMinutes={multiplicityMinutes}\n multiplicitySeconds={multiplicitySeconds}\n multiplicityHours={multiplicityHours}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DatePickerTypeDateTimeRange.js","names":["startOfMonth","React","forwardRef","useCallback","useEffect","useRef","useState","useClickOutside","useFlag","useForkRef","DatePickerDropdown","DatePickerFieldTypeDateTimeRange","getDropdownZIndex","getFieldName","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeDateTimeRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","multiplicityMinutes","dropdownClassName","multiplicitySeconds","multiplicityHours","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","on","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","hadleChange","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.tsx"],"sourcesContent":["import startOfMonth from 'date-fns/startOfMonth';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeDateTimeRange } from '../DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange';\nimport {\n getDropdownZIndex,\n getFieldName,\n normalizeRangeValue,\n} from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeDateTimeRange: DatePickerTypeComponent<'date-time-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n name,\n multiplicityMinutes,\n dropdownClassName,\n multiplicitySeconds,\n multiplicityHours,\n ...fieldProps\n } = props;\n\n const startFieldRef = useRef<HTMLDivElement>(null);\n const endFieldRef = useRef<HTMLDivElement>(null);\n const startFieldInputRef = useRef<HTMLInputElement>(null);\n const endFieldInputRef = useRef<HTMLInputElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [fieldFocused, setFieldFocused] = useState<'start' | 'end' | false>(\n false,\n );\n\n const startFocused = fieldFocused === 'start';\n const endFocused = fieldFocused === 'end';\n\n const hadleChange: DatePickerDropdownPropOnChange = ({ e, value }) => {\n if (startFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([value, props?.value?.[1]]),\n });\n }\n if (endFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([props?.value?.[0], value]),\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfMonth,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n const startFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[0]?.(e) : onBlur?.(e);\n\n const endFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[1]?.(e) : onBlur?.(e);\n\n const startFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('start');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('end');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[1]?.(e) : onFocus?.(e);\n };\n\n // эффект для того чтобы календарь переключался при вводе с клавиатуры\n useEffect(() => {\n if (props.value?.[0] && startFocused) {\n const newVisibleDate = startOfMonth(props.value[0]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[0]?.getTime(), calendarVisible, startFocused]);\n\n useEffect(() => {\n if (props.value?.[1] && endFocused) {\n const newVisibleDate = startOfMonth(props.value[1]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [startFieldRef, endFieldRef, calendarRef],\n handler: useCallback(() => {\n setFieldFocused(false);\n setCalendarVisible.off();\n }, []),\n });\n\n return (\n <>\n <DatePickerFieldTypeDateTimeRange\n {...fieldProps}\n ref={ref}\n startFieldRef={startFieldRef}\n endFieldRef={endFieldRef}\n startFieldInputRef={useForkRef([startFieldInputRef, inputRef?.[0]])}\n endFieldInputRef={useForkRef([endFieldInputRef, inputRef?.[1]])}\n startFieldOnFocus={startFieldOnFocusHandler}\n endFieldOnFocus={endFieldOnFocusHandler}\n startFieldLeftSide={\n Array.isArray(leftSide) ? leftSide?.[0] : leftSide\n }\n startFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[0] : undefined\n }\n endFieldLeftSide={Array.isArray(leftSide) ? leftSide?.[1] : undefined}\n endFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[1] : rightSide\n }\n startFieldOnBlur={startFieldOnBlurHandler}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={getFieldName(name, 0)}\n endFieldName={getFieldName(name, 1)}\n />\n <DatePickerDropdown\n type=\"date-time\"\n ref={calendarRef}\n anchorRef={startFieldRef}\n isOpen={calendarVisible}\n className={dropdownClassName}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n timeFor={fieldFocused || undefined}\n view={dateTimeView}\n events={events}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={hadleChange}\n renderAdditionalControls={renderAdditionalControls}\n multiplicityMinutes={multiplicityMinutes}\n multiplicitySeconds={multiplicitySeconds}\n multiplicityHours={multiplicityHours}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerTypeMonthRange.js","names":["addYears","startOfYear","React","forwardRef","useCallback","useEffect","useRef","useState","useClickOutside","useFlag","useForkRef","DatePickerDropdown","DatePickerFieldTypeMonthRange","getDropdownZIndex","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeMonthRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","dropdownClassName","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","on","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","hadleChange","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.tsx"],"sourcesContent":["import addYears from 'date-fns/addYears';\nimport startOfYear from 'date-fns/startOfYear';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeMonthRange } from '../DatePickerFieldTypeMonthRange/DatePickerFieldTypeMonthRange';\nimport { getDropdownZIndex, normalizeRangeValue } from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeMonthRange: DatePickerTypeComponent<'month-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n dropdownClassName,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n name,\n ...fieldProps\n } = props;\n\n const startFieldRef = useRef<HTMLDivElement>(null);\n const endFieldRef = useRef<HTMLDivElement>(null);\n const startFieldInputRef = useRef<HTMLInputElement>(null);\n const endFieldInputRef = useRef<HTMLInputElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [fieldFocused, setFieldFocused] = useState<'start' | 'end' | false>(\n false,\n );\n\n const startFocused = fieldFocused === 'start';\n const endFocused = fieldFocused === 'end';\n\n const hadleChange: DatePickerDropdownPropOnChange = ({ e, value }) => {\n if (startFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([value, props?.value?.[1]]),\n });\n }\n if (endFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([props?.value?.[0], value]),\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfYear,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n const startFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[0]?.(e) : onBlur?.(e);\n\n const endFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[1]?.(e) : onBlur?.(e);\n\n const startFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('start');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('end');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[1]?.(e) : onFocus?.(e);\n };\n\n // эфект для того чтобы календарь переключался при вводе с клавиатуры\n useEffect(() => {\n if (props.value?.[0] && dateTimeView === 'classic' && startFocused) {\n const newVisibleDate = startOfYear(props.value[0]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[0] && dateTimeView !== 'classic' && startFocused) {\n const newVisibleDate = startOfYear(props.value[0]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addYears(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[0]?.getTime(), calendarVisible, startFocused]);\n\n useEffect(() => {\n if (props.value?.[1] && dateTimeView === 'classic' && endFocused) {\n const newVisibleDate = startOfYear(props.value[1]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[1] && dateTimeView !== 'classic' && endFocused) {\n const newVisibleDate = startOfYear(props.value[1]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addYears(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(addYears(newVisibleDate, -1));\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [startFieldRef, endFieldRef, calendarRef],\n handler: useCallback(() => {\n setFieldFocused(false);\n setCalendarVisible.off();\n }, []),\n });\n\n return (\n <>\n <DatePickerFieldTypeMonthRange\n {...fieldProps}\n ref={ref}\n startFieldRef={startFieldRef}\n endFieldRef={endFieldRef}\n startFieldInputRef={useForkRef([startFieldInputRef, inputRef?.[0]])}\n endFieldInputRef={useForkRef([endFieldInputRef, inputRef?.[1]])}\n startFieldOnFocus={startFieldOnFocusHandler}\n endFieldOnFocus={endFieldOnFocusHandler}\n startFieldLeftSide={\n Array.isArray(leftSide) ? leftSide?.[0] : leftSide\n }\n startFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[0] : undefined\n }\n endFieldLeftSide={Array.isArray(leftSide) ? leftSide?.[1] : undefined}\n endFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[1] : rightSide\n }\n startFieldOnBlur={startFieldOnBlurHandler}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={Array.isArray(name) ? name[0] : `${name}_start`}\n endFieldName={Array.isArray(name) ? name[1] : `${name}_end`}\n />\n <DatePickerDropdown\n type=\"month\"\n ref={calendarRef}\n anchorRef={startFieldRef}\n isOpen={calendarVisible}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n view={dateTimeView}\n events={events}\n className={dropdownClassName}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={hadleChange}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DatePickerTypeMonthRange.js","names":["addYears","startOfYear","React","forwardRef","useCallback","useEffect","useRef","useState","useClickOutside","useFlag","useForkRef","DatePickerDropdown","DatePickerFieldTypeMonthRange","getDropdownZIndex","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeMonthRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","dropdownClassName","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","on","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","hadleChange","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.tsx"],"sourcesContent":["import addYears from 'date-fns/addYears';\nimport startOfYear from 'date-fns/startOfYear';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeMonthRange } from '../DatePickerFieldTypeMonthRange/DatePickerFieldTypeMonthRange';\nimport { getDropdownZIndex, normalizeRangeValue } from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeMonthRange: DatePickerTypeComponent<'month-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n dropdownClassName,\n onBlur,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n name,\n ...fieldProps\n } = props;\n\n const startFieldRef = useRef<HTMLDivElement>(null);\n const endFieldRef = useRef<HTMLDivElement>(null);\n const startFieldInputRef = useRef<HTMLInputElement>(null);\n const endFieldInputRef = useRef<HTMLInputElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [fieldFocused, setFieldFocused] = useState<'start' | 'end' | false>(\n false,\n );\n\n const startFocused = fieldFocused === 'start';\n const endFocused = fieldFocused === 'end';\n\n const hadleChange: DatePickerDropdownPropOnChange = ({ e, value }) => {\n if (startFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([value, props?.value?.[1]]),\n });\n }\n if (endFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([props?.value?.[0], value]),\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfYear,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n const startFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[0]?.(e) : onBlur?.(e);\n\n const endFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[1]?.(e) : onBlur?.(e);\n\n const startFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('start');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('end');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[1]?.(e) : onFocus?.(e);\n };\n\n // эффект для того чтобы календарь переключался при вводе с клавиатуры\n useEffect(() => {\n if (props.value?.[0] && dateTimeView === 'classic' && startFocused) {\n const newVisibleDate = startOfYear(props.value[0]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[0] && dateTimeView !== 'classic' && startFocused) {\n const newVisibleDate = startOfYear(props.value[0]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addYears(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[0]?.getTime(), calendarVisible, startFocused]);\n\n useEffect(() => {\n if (props.value?.[1] && dateTimeView === 'classic' && endFocused) {\n const newVisibleDate = startOfYear(props.value[1]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[1] && dateTimeView !== 'classic' && endFocused) {\n const newVisibleDate = startOfYear(props.value[1]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addYears(currentVisibleDate, 1).getTime())\n ) {\n setCurrentVisibleDate(addYears(newVisibleDate, -1));\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [startFieldRef, endFieldRef, calendarRef],\n handler: useCallback(() => {\n setFieldFocused(false);\n setCalendarVisible.off();\n }, []),\n });\n\n return (\n <>\n <DatePickerFieldTypeMonthRange\n {...fieldProps}\n ref={ref}\n startFieldRef={startFieldRef}\n endFieldRef={endFieldRef}\n startFieldInputRef={useForkRef([startFieldInputRef, inputRef?.[0]])}\n endFieldInputRef={useForkRef([endFieldInputRef, inputRef?.[1]])}\n startFieldOnFocus={startFieldOnFocusHandler}\n endFieldOnFocus={endFieldOnFocusHandler}\n startFieldLeftSide={\n Array.isArray(leftSide) ? leftSide?.[0] : leftSide\n }\n startFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[0] : undefined\n }\n endFieldLeftSide={Array.isArray(leftSide) ? leftSide?.[1] : undefined}\n endFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[1] : rightSide\n }\n startFieldOnBlur={startFieldOnBlurHandler}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={Array.isArray(name) ? name[0] : `${name}_start`}\n endFieldName={Array.isArray(name) ? name[1] : `${name}_end`}\n />\n <DatePickerDropdown\n type=\"month\"\n ref={calendarRef}\n anchorRef={startFieldRef}\n isOpen={calendarVisible}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n view={dateTimeView}\n events={events}\n className={dropdownClassName}\n locale={locale}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={hadleChange}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerTypeYearRange.js","names":["addYears","startOfDecade","React","forwardRef","useEffect","useRef","useState","useClickOutside","useFlag","useForkRef","DatePickerDropdown","DatePickerFieldTypeYearRange","getDropdownZIndex","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeYearRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","dropdownClassName","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","on","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","hadleChange","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.tsx"],"sourcesContent":["import { addYears, startOfDecade } from 'date-fns';\nimport React, { forwardRef, useEffect, useRef, useState } from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeYearRange } from '../DatePickerFieldTypeYearRange/DatePickerFieldTypeYearRange';\nimport { getDropdownZIndex, normalizeRangeValue } from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeYearRange: DatePickerTypeComponent<'date-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n onBlur,\n dropdownClassName,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n name,\n ...fieldProps\n } = props;\n\n const startFieldRef = useRef<HTMLDivElement>(null);\n const endFieldRef = useRef<HTMLDivElement>(null);\n const startFieldInputRef = useRef<HTMLInputElement>(null);\n const endFieldInputRef = useRef<HTMLInputElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [fieldFocused, setFieldFocused] = useState<'start' | 'end' | false>(\n false,\n );\n\n const startFocused = fieldFocused === 'start';\n const endFocused = fieldFocused === 'end';\n\n const hadleChange: DatePickerDropdownPropOnChange = ({ e, value }) => {\n if (startFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([value, props?.value?.[1]]),\n });\n }\n if (endFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([props?.value?.[0], value]),\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfDecade,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n const startFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[0]?.(e) : onBlur?.(e);\n\n const endFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[1]?.(e) : onBlur?.(e);\n\n const startFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('start');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('end');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[1]?.(e) : onFocus?.(e);\n };\n\n // эфект для того чтобы календарь переключался при вводе с клавиатуры\n useEffect(() => {\n if (props.value?.[0] && dateTimeView === 'classic' && startFocused) {\n const newVisibleDate = startOfDecade(props.value[0]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[0] && dateTimeView !== 'classic' && startFocused) {\n const newVisibleDate = startOfDecade(props.value[0]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addYears(currentVisibleDate, 10).getTime())\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[0]?.getTime(), calendarVisible, startFocused]);\n\n useEffect(() => {\n if (props.value?.[1] && dateTimeView === 'classic' && endFocused) {\n const newVisibleDate = startOfDecade(props.value[1]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[1] && dateTimeView !== 'classic' && endFocused) {\n const newVisibleDate = startOfDecade(props.value[1]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addYears(currentVisibleDate, 10).getTime())\n ) {\n setCurrentVisibleDate(addYears(newVisibleDate, -10));\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [startFieldRef, endFieldRef, calendarRef],\n handler: () => {\n setFieldFocused(false);\n setCalendarVisible.off();\n },\n });\n\n return (\n <>\n <DatePickerFieldTypeYearRange\n {...fieldProps}\n ref={ref}\n startFieldRef={startFieldRef}\n endFieldRef={endFieldRef}\n startFieldInputRef={useForkRef([startFieldInputRef, inputRef?.[0]])}\n endFieldInputRef={useForkRef([endFieldInputRef, inputRef?.[1]])}\n startFieldOnFocus={startFieldOnFocusHandler}\n endFieldOnFocus={endFieldOnFocusHandler}\n startFieldLeftSide={\n Array.isArray(leftSide) ? leftSide?.[0] : leftSide\n }\n startFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[0] : undefined\n }\n endFieldLeftSide={Array.isArray(leftSide) ? leftSide?.[1] : undefined}\n endFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[1] : rightSide\n }\n startFieldOnBlur={startFieldOnBlurHandler}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={Array.isArray(name) ? name[0] : `${name}_start`}\n endFieldName={Array.isArray(name) ? name[1] : `${name}_end`}\n />\n <DatePickerDropdown\n type=\"year\"\n ref={calendarRef}\n anchorRef={startFieldRef}\n isOpen={calendarVisible}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n view={dateTimeView}\n events={events}\n locale={locale}\n className={dropdownClassName}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={hadleChange}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DatePickerTypeYearRange.js","names":["addYears","startOfDecade","React","forwardRef","useEffect","useRef","useState","useClickOutside","useFlag","useForkRef","DatePickerDropdown","DatePickerFieldTypeYearRange","getDropdownZIndex","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCurrentVisibleDate","DatePickerTypeYearRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","dropdownClassName","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","on","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","endFieldOnBlurHandler","hadleChange","onChange","style"],"sources":["../../../../../../src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.tsx"],"sourcesContent":["import { addYears, startOfDecade } from 'date-fns';\nimport React, { forwardRef, useEffect, useRef, useState } from 'react';\n\nimport { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';\nimport { useFlag } from '../../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../../hooks/useForkRef/useForkRef';\nimport {\n DatePickerDropdown,\n DatePickerDropdownPropOnChange,\n} from '../DatePickerDropdown/DatePickerDropdown';\nimport { DatePickerFieldTypeYearRange } from '../DatePickerFieldTypeYearRange/DatePickerFieldTypeYearRange';\nimport { getDropdownZIndex, normalizeRangeValue } from '../helpers';\nimport {\n datePickerPropDateTimeViewDefault,\n DatePickerTypeComponent,\n} from '../types';\nimport { useCurrentVisibleDate } from '../useCurrentVisibleDate';\n\nexport const DatePickerTypeYearRange: DatePickerTypeComponent<'date-range'> =\n forwardRef((props, ref) => {\n const {\n events,\n dateTimeView = datePickerPropDateTimeViewDefault,\n locale,\n dropdownForm,\n onFocus,\n onBlur,\n dropdownClassName,\n leftSide,\n rightSide,\n currentVisibleDate: currentVisibleDateProp,\n onChangeCurrentVisibleDate,\n renderAdditionalControls,\n inputRef,\n name,\n ...fieldProps\n } = props;\n\n const startFieldRef = useRef<HTMLDivElement>(null);\n const endFieldRef = useRef<HTMLDivElement>(null);\n const startFieldInputRef = useRef<HTMLInputElement>(null);\n const endFieldInputRef = useRef<HTMLInputElement>(null);\n const calendarRef = useRef<HTMLDivElement>(null);\n\n const [fieldFocused, setFieldFocused] = useState<'start' | 'end' | false>(\n false,\n );\n\n const startFocused = fieldFocused === 'start';\n const endFocused = fieldFocused === 'end';\n\n const hadleChange: DatePickerDropdownPropOnChange = ({ e, value }) => {\n if (startFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([value, props?.value?.[1]]),\n });\n }\n if (endFocused) {\n props.onChange?.({\n e,\n value: normalizeRangeValue([props?.value?.[0], value]),\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useFlag(false);\n\n const [currentVisibleDate, setCurrentVisibleDate] = useCurrentVisibleDate({\n currentVisibleDate: currentVisibleDateProp,\n maxDate: props.maxDate,\n minDate: props.minDate,\n value: props.value,\n startOfUnit: startOfDecade,\n onChangeCurrentVisibleDate,\n calendarVisible,\n });\n\n const startFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[0]?.(e) : onBlur?.(e);\n\n const endFieldOnBlurHandler = (e: React.FocusEvent<HTMLElement>) =>\n Array.isArray(onBlur) ? onBlur[1]?.(e) : onBlur?.(e);\n\n const startFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('start');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('end');\n setCalendarVisible.on();\n Array.isArray(onFocus) ? onFocus[1]?.(e) : onFocus?.(e);\n };\n\n // эффект для того чтобы календарь переключался при вводе с клавиатуры\n useEffect(() => {\n if (props.value?.[0] && dateTimeView === 'classic' && startFocused) {\n const newVisibleDate = startOfDecade(props.value[0]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[0] && dateTimeView !== 'classic' && startFocused) {\n const newVisibleDate = startOfDecade(props.value[0]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addYears(currentVisibleDate, 10).getTime())\n ) {\n setCurrentVisibleDate(newVisibleDate);\n }\n }\n }, [props.value?.[0]?.getTime(), calendarVisible, startFocused]);\n\n useEffect(() => {\n if (props.value?.[1] && dateTimeView === 'classic' && endFocused) {\n const newVisibleDate = startOfDecade(props.value[1]);\n if (newVisibleDate.getTime() !== currentVisibleDate?.getTime()) {\n setCurrentVisibleDate(newVisibleDate);\n }\n return;\n }\n if (props.value?.[1] && dateTimeView !== 'classic' && endFocused) {\n const newVisibleDate = startOfDecade(props.value[1]);\n if (\n newVisibleDate.getTime() !== currentVisibleDate?.getTime() &&\n newVisibleDate.getTime() !==\n (currentVisibleDate && addYears(currentVisibleDate, 10).getTime())\n ) {\n setCurrentVisibleDate(addYears(newVisibleDate, -10));\n }\n }\n }, [props.value?.[1]?.getTime(), calendarVisible, endFocused]);\n\n useClickOutside({\n isActive: calendarVisible,\n ignoreClicksInsideRefs: [startFieldRef, endFieldRef, calendarRef],\n handler: () => {\n setFieldFocused(false);\n setCalendarVisible.off();\n },\n });\n\n return (\n <>\n <DatePickerFieldTypeYearRange\n {...fieldProps}\n ref={ref}\n startFieldRef={startFieldRef}\n endFieldRef={endFieldRef}\n startFieldInputRef={useForkRef([startFieldInputRef, inputRef?.[0]])}\n endFieldInputRef={useForkRef([endFieldInputRef, inputRef?.[1]])}\n startFieldOnFocus={startFieldOnFocusHandler}\n endFieldOnFocus={endFieldOnFocusHandler}\n startFieldLeftSide={\n Array.isArray(leftSide) ? leftSide?.[0] : leftSide\n }\n startFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[0] : undefined\n }\n endFieldLeftSide={Array.isArray(leftSide) ? leftSide?.[1] : undefined}\n endFieldRightSide={\n Array.isArray(rightSide) ? rightSide?.[1] : rightSide\n }\n startFieldOnBlur={startFieldOnBlurHandler}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={Array.isArray(name) ? name[0] : `${name}_start`}\n endFieldName={Array.isArray(name) ? name[1] : `${name}_end`}\n />\n <DatePickerDropdown\n type=\"year\"\n ref={calendarRef}\n anchorRef={startFieldRef}\n isOpen={calendarVisible}\n onChangeCurrentVisibleDate={setCurrentVisibleDate}\n currentVisibleDate={currentVisibleDate}\n value={props.value || undefined}\n view={dateTimeView}\n events={events}\n locale={locale}\n className={dropdownClassName}\n minDate={props.minDate}\n maxDate={props.maxDate}\n form={dropdownForm}\n onChange={hadleChange}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n />\n </>\n );\n });\n"],"mappings":"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"}
|
package/__internal__/src/components/EventInterceptor/propsHandlers/useTextFieldEventsHandler.d.ts
CHANGED
|
@@ -57,8 +57,8 @@ export declare const useTextFieldEventsHandler: <P extends {
|
|
|
57
57
|
incrementButtons?: boolean | undefined;
|
|
58
58
|
autoFocus?: boolean | undefined;
|
|
59
59
|
placeholder?: string | undefined;
|
|
60
|
-
leftSide?: string | IconComponent | undefined;
|
|
61
|
-
rightSide?: string | IconComponent | undefined;
|
|
60
|
+
leftSide?: string | IconComponent<"span"> | undefined;
|
|
61
|
+
rightSide?: string | IconComponent<"span"> | undefined;
|
|
62
62
|
withClearButton?: boolean | undefined;
|
|
63
63
|
autoComplete?: AutoCompete | undefined;
|
|
64
64
|
max?: string | number | undefined;
|
|
@@ -73,7 +73,7 @@ export declare const useTextFieldEventsHandler: <P extends {
|
|
|
73
73
|
iconSize?: "m" | "s" | "xs" | "l" | undefined;
|
|
74
74
|
children?: undefined;
|
|
75
75
|
label?: string | undefined;
|
|
76
|
-
labelIcon?: IconComponent | undefined;
|
|
76
|
+
labelIcon?: IconComponent<"span"> | undefined;
|
|
77
77
|
caption?: string | undefined;
|
|
78
78
|
labelPosition?: "left" | "top" | undefined;
|
|
79
79
|
focused?: boolean | undefined;
|
|
@@ -88,5 +88,5 @@ export declare const useTextFieldEventsHandler: <P extends {
|
|
|
88
88
|
minRows?: undefined;
|
|
89
89
|
maxRows?: undefined;
|
|
90
90
|
} & {
|
|
91
|
-
rightSide?: string | IconComponent | undefined;
|
|
91
|
+
rightSide?: string | IconComponent<"span"> | undefined;
|
|
92
92
|
} & React.RefAttributes<HTMLElement>>(props: P, handler: EventInterceptorHandler, ref: React.RefObject<HTMLDivElement>) => P;
|
|
@@ -123,7 +123,7 @@ export declare function withDefaultGetters<ITEM, GROUP>(props: SelectProps<ITEM,
|
|
|
123
123
|
getGroupLabel?: PropGetGroupLabel<GROUP> | undefined;
|
|
124
124
|
getGroupKey?: PropGetGroupKey<GROUP> | undefined;
|
|
125
125
|
label?: string | undefined;
|
|
126
|
-
labelIcon?: IconComponent | undefined;
|
|
126
|
+
labelIcon?: IconComponent<"span"> | undefined;
|
|
127
127
|
labelPosition?: "left" | "top" | undefined;
|
|
128
128
|
caption?: string | undefined;
|
|
129
129
|
} & Omit<React.HTMLAttributes<HTMLDivElement>, "css" | "placeholder" | "onFocus" | "onBlur" | "onChange" | "size" | "caption" | "form" | "label" | "view" | "status" | "name" | "disabled" | "value" | "multiple" | "required" | "inputRef" | "items" | "dropdownForm" | "focused" | "ariaLabel" | "dropdownClassName" | "dropdownRef" | "isLoading" | "labelForEmptyItems" | "renderItem" | "renderValue" | "groups" | "getItemLabel" | "getItemKey" | "getItemGroupKey" | "getItemDisabled" | "getGroupLabel" | "getGroupKey" | "labelIcon" | "labelPosition"> & React.RefAttributes<HTMLDivElement> & (ITEM extends {
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["placeholder","onBlur","onFocus","items","onChange","value","required","disabled","ariaLabel","id","dropdownRef","form","view","size","dropdownClassName","name","groups","getItemLabel","labelForEmptyItems","getItemKey","getItemGroupKey","getItemDisabled","getGroupKey","getGroupLabel","renderItem","isLoading","renderValue","inputRef","style","dropdownForm","onDropdownOpen","onScrollToBottom","virtualScroll","dropdownOpen","ignoreOutsideClicksRefs"];import"../SelectComponents/Select.css";import{IconSelect}from"@consta/icons/IconSelect";import React,{forwardRef,useRef}from"react";import{usePropsHandler}from"../EventInterceptor/usePropsHandler";import{cnSelect,COMPONENT_NAME}from"../SelectComponentsCanary/cnSelect";import{defaultLabelForEmptyItems}from"../SelectComponentsCanary/helpers";import{SelectContainer}from"../SelectComponentsCanary/SelectContainer";import{SelectDropdown}from"../SelectComponentsCanary/SelectDropdown";import{SelectItem}from"../SelectComponentsCanary/SelectItem";import{defaultPropForm,defaultPropSize,defaultPropView}from"../SelectComponentsCanary/types";import{useSelect}from"../SelectComponentsCanary/useSelect";import{useForkRef}from"../../hooks/useForkRef";import{withDefaultGetters}from"./helpers";var SelectRender=function(a,b){var c=useRef(null),d=useRef(null),e=usePropsHandler(COMPONENT_NAME,withDefaultGetters(a),d),f=e.placeholder,g=e.onBlur,h=e.onFocus,i=e.items,j=e.onChange,k=e.value,l=e.required,m=e.disabled,n=e.ariaLabel,o=e.id,p=e.dropdownRef,q=e.form,r=void 0===q?defaultPropForm:q,s=e.view,t=void 0===s?defaultPropView:s,u=e.size,v=void 0===u?defaultPropSize:u,w=e.dropdownClassName,x=e.name,y=e.groups,z=void 0===y?[]:y,A=e.getItemLabel,B=e.labelForEmptyItems,C=void 0===B?defaultLabelForEmptyItems:B,D=e.getItemKey,E=e.getItemGroupKey,F=e.getItemDisabled,G=e.getGroupKey,H=e.getGroupLabel,I=e.renderItem,J=e.isLoading,K=e.renderValue,L=e.inputRef,M=e.style,N=e.dropdownForm,O=void 0===N?"default":N,P=e.onDropdownOpen,Q=e.onScrollToBottom,R=e.virtualScroll,S=e.dropdownOpen,T=e.ignoreOutsideClicksRefs,U=_objectWithoutProperties(e,_excluded),V=useSelect({items:i,groups:z,value:k,onChange:j,dropdownRef:c,controlRef:d,disabled:m,getItemLabel:A,getItemKey:D,getGroupKey:G,getItemGroupKey:E,getItemDisabled:F,multiple:!1,onBlur:g,onFocus:h,onDropdownOpen:P,dropdownOpen:S,ignoreOutsideClicksRefs:T}),W=V.getKeyProps,X=V.getOptionProps,Y=V.isOpen,Z=V.visibleItems,$=V.isFocused,_=V.handleInputFocus,aa=V.handleInputBlur,ba=V.handleToggleDropdown,ca=V.inputRef,da=V.handleInputClick,ea=V.notFound,fa=V.hasItems,ga=V.optionsRefs,ha=o?"".concat(o,"-input"):o;return React.createElement(React.Fragment,null,React.createElement(SelectContainer,Object.assign({focused:$,disabled:m,size:v,view:t,form:r,required:l,ref:b,style:M,id:ha},U),React.createElement("div",{className:cnSelect("Control"),ref:d,"aria-expanded":Y,"aria-haspopup":"listbox",id:o},React.createElement("div",{className:cnSelect("ControlInner")},React.createElement("div",{className:cnSelect("ControlValueContainer")},React.createElement("input",Object.assign({},W(),{className:cnSelect("FakeField"),type:"text",name:x,id:ha,onFocus:_,onBlur:aa,"aria-label":n,onClick:da,ref:useForkRef([ca,L]),readOnly:!0})),k&&(K||function renderValueDefault(a){var b=A(a.item);return React.createElement("span",{className:cnSelect("ControlValue"),title:b},b)})({item:k}),("undefined"==typeof k||null===k)&&f&&React.createElement("span",{className:cnSelect("Placeholder"),title:"placeholder"},f))),React.createElement("span",{className:cnSelect("Indicators")},React.createElement("button",{type:"button",className:cnSelect("IndicatorsDropdown"),tabIndex:-1,onClick:ba},React.createElement(IconSelect,{size:"xs",className:cnSelect("DropdownIndicatorIcon")}))))),React.createElement(SelectDropdown,{isOpen:Y,size:v,controlRef:d,getOptionProps:X,dropdownRef:useForkRef([p,c]),form:O,className:w,renderItem:I||function renderItemDefault(a){var b=a.item,c=a.active,d=a.hovered,e=a.onClick,f=a.onMouseEnter,g=a.ref;return React.createElement(SelectItem,{label:A(b),active:c,hovered:d,multiple:!1,size:v,indent:"round"===O?"increased":"normal",onClick:e,onMouseEnter:f,disabled:F(b),ref:g})},getGroupLabel:H,visibleItems:Z,notFound:ea,isLoading:J,labelForEmptyItems:C,hasItems:fa,itemsRefs:ga,virtualScroll:R,onScrollToBottom:Q,style:"number"==typeof(null===M||void 0===M?void 0:M.zIndex)?{zIndex:M.zIndex+1}:void 0}))};export var Select=forwardRef(SelectRender);export*from"./helpers";
|
|
2
|
+
//# sourceMappingURL=SelectCanary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectCanary.js","names":["IconSelect","React","forwardRef","useRef","usePropsHandler","cnSelect","COMPONENT_NAME","defaultLabelForEmptyItems","SelectContainer","SelectDropdown","SelectItem","defaultPropForm","defaultPropSize","defaultPropView","useSelect","useForkRef","withDefaultGetters","SelectRender","props","ref","defaultDropdownRef","controlRef","placeholder","onBlur","onFocus","items","onChange","value","required","disabled","ariaLabel","id","dropdownRef","form","view","size","dropdownClassName","name","groups","getItemLabel","labelForEmptyItems","getItemKey","getItemGroupKey","getItemDisabled","getGroupKey","getGroupLabel","renderItem","isLoading","renderValueProp","renderValue","inputRefProp","inputRef","style","dropdownForm","onDropdownOpen","onScrollToBottom","virtualScroll","dropdownOpen","ignoreOutsideClicksRefs","restProps","multiple","getKeyProps","getOptionProps","isOpen","visibleItems","isFocused","handleInputFocus","handleInputBlur","handleToggleDropdown","handleInputClick","notFound","hasItems","optionsRefs","inputId","renderValueDefault","label","item","renderItemDefault","active","hovered","onClick","onMouseEnter","zIndex","Select"],"sources":["../../../../../src/components/SelectCanary/SelectCanary.tsx"],"sourcesContent":["import '##/components/SelectComponents/Select.css';\n\nimport { IconSelect } from '@consta/icons/IconSelect';\nimport React, { forwardRef, useRef } from 'react';\n\nimport { usePropsHandler } from '##/components/EventInterceptor/usePropsHandler';\nimport {\n cnSelect,\n COMPONENT_NAME,\n} from '##/components/SelectComponentsCanary/cnSelect';\nimport { defaultLabelForEmptyItems } from '##/components/SelectComponentsCanary/helpers';\nimport { SelectContainer } from '##/components/SelectComponentsCanary/SelectContainer';\nimport { SelectDropdown } from '##/components/SelectComponentsCanary/SelectDropdown';\nimport { SelectItem } from '##/components/SelectComponentsCanary/SelectItem';\nimport {\n defaultPropForm,\n defaultPropSize,\n defaultPropView,\n} from '##/components/SelectComponentsCanary/types';\nimport { useSelect } from '##/components/SelectComponentsCanary/useSelect';\nimport { useForkRef } from '##/hooks/useForkRef';\n\nimport {\n DefaultGroup,\n DefaultItem,\n PropRenderItem,\n PropRenderValue,\n SelectComponent,\n SelectProps,\n withDefaultGetters,\n} from './helpers';\n\nconst SelectRender = <ITEM = DefaultItem, GROUP = DefaultGroup>(\n props: SelectProps<ITEM, GROUP>,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const defaultDropdownRef = useRef<HTMLDivElement>(null);\n const controlRef = useRef<HTMLDivElement | null>(null);\n\n const {\n placeholder,\n onBlur,\n onFocus,\n items,\n onChange,\n value,\n required,\n disabled,\n ariaLabel,\n id,\n dropdownRef,\n form = defaultPropForm,\n view = defaultPropView,\n size = defaultPropSize,\n dropdownClassName,\n name,\n groups = [],\n getItemLabel,\n labelForEmptyItems = defaultLabelForEmptyItems,\n getItemKey,\n getItemGroupKey,\n getItemDisabled,\n getGroupKey,\n getGroupLabel,\n renderItem,\n isLoading,\n renderValue: renderValueProp,\n inputRef: inputRefProp,\n style,\n dropdownForm = 'default',\n onDropdownOpen,\n onScrollToBottom,\n virtualScroll,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n ...restProps\n } = usePropsHandler(COMPONENT_NAME, withDefaultGetters(props), controlRef);\n\n const {\n getKeyProps,\n getOptionProps,\n isOpen,\n visibleItems,\n isFocused,\n handleInputFocus,\n handleInputBlur,\n handleToggleDropdown,\n inputRef,\n handleInputClick,\n notFound,\n hasItems,\n optionsRefs,\n } = useSelect<ITEM, GROUP, false>({\n items,\n groups,\n value,\n onChange,\n dropdownRef: defaultDropdownRef,\n controlRef,\n disabled,\n getItemLabel,\n getItemKey,\n getGroupKey,\n getItemGroupKey,\n getItemDisabled,\n multiple: false,\n onBlur,\n onFocus,\n onDropdownOpen,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n });\n\n const inputId = id ? `${id}-input` : id;\n\n const renderItemDefault: PropRenderItem<ITEM> = (props) => {\n const { item, active, hovered, onClick, onMouseEnter, ref } = props;\n\n return (\n <SelectItem\n label={getItemLabel(item)}\n active={active}\n hovered={hovered}\n multiple={false}\n size={size}\n indent={dropdownForm === 'round' ? 'increased' : 'normal'}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n disabled={getItemDisabled(item)}\n ref={ref}\n />\n );\n };\n\n const renderValueDefault: PropRenderValue<ITEM> = (props) => {\n const label = getItemLabel(props.item);\n\n return (\n <span className={cnSelect('ControlValue')} title={label}>\n {label}\n </span>\n );\n };\n\n const renderValue = renderValueProp || renderValueDefault;\n\n return (\n <>\n <SelectContainer\n focused={isFocused}\n disabled={disabled}\n size={size}\n view={view}\n form={form}\n required={required}\n ref={ref}\n style={style}\n id={inputId}\n {...restProps}\n >\n <div\n className={cnSelect('Control')}\n ref={controlRef}\n aria-expanded={isOpen}\n aria-haspopup=\"listbox\"\n id={id}\n >\n <div className={cnSelect('ControlInner')}>\n <div className={cnSelect('ControlValueContainer')}>\n <input\n {...getKeyProps()}\n className={cnSelect('FakeField')}\n type=\"text\"\n name={name}\n id={inputId}\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n aria-label={ariaLabel}\n onClick={handleInputClick}\n ref={useForkRef([inputRef, inputRefProp])}\n readOnly\n />\n {value && renderValue({ item: value })}\n {(typeof value === 'undefined' || value === null) && placeholder && (\n <span className={cnSelect('Placeholder')} title=\"placeholder\">\n {placeholder}\n </span>\n )}\n </div>\n </div>\n <span className={cnSelect('Indicators')}>\n <button\n type=\"button\"\n className={cnSelect('IndicatorsDropdown')}\n tabIndex={-1}\n onClick={handleToggleDropdown}\n >\n <IconSelect\n size=\"xs\"\n className={cnSelect('DropdownIndicatorIcon')}\n />\n </button>\n </span>\n </div>\n </SelectContainer>\n <SelectDropdown\n isOpen={isOpen}\n size={size}\n controlRef={controlRef}\n getOptionProps={getOptionProps}\n dropdownRef={useForkRef([dropdownRef, defaultDropdownRef])}\n form={dropdownForm}\n className={dropdownClassName}\n renderItem={renderItem || renderItemDefault}\n getGroupLabel={getGroupLabel}\n visibleItems={visibleItems}\n notFound={notFound}\n isLoading={isLoading}\n labelForEmptyItems={labelForEmptyItems}\n hasItems={hasItems}\n itemsRefs={optionsRefs}\n virtualScroll={virtualScroll}\n onScrollToBottom={onScrollToBottom}\n style={\n typeof style?.zIndex === 'number'\n ? { zIndex: style.zIndex + 1 }\n : undefined\n }\n />\n </>\n );\n};\n\nexport const Select = forwardRef(SelectRender) as SelectComponent;\n\nexport * from './helpers';\n"],"mappings":"wiBAAA,uCAEA,OAASA,UAAT,KAA2B,0BAA3B,CACA,MAAOC,MAAP,EAAgBC,UAAhB,CAA4BC,MAA5B,KAA0C,OAA1C,CAEA,OAASC,eAAT,2CACA,OACEC,QADF,CAEEC,cAFF,0CAIA,OAASC,yBAAT,yCACA,OAASC,eAAT,iDACA,OAASC,cAAT,gDACA,OAASC,UAAT,4CACA,OACEC,eADF,CAEEC,eAFF,CAGEC,eAHF,uCAKA,OAASC,SAAT,2CACA,OAASC,UAAT,8BAEA,OAOEC,kBAPF,iBAUA,GAAMC,aAAY,CAAG,SACnBC,CADmB,CAEnBC,CAFmB,CAGhB,IACGC,EAAkB,CAAGjB,MAAM,CAAiB,IAAjB,CAD9B,CAEGkB,CAAU,CAAGlB,MAAM,CAAwB,IAAxB,CAFtB,GAyCCC,eAAe,CAACE,cAAD,CAAiBU,kBAAkB,CAACE,CAAD,CAAnC,CAA4CG,CAA5C,CAzChB,CAKDC,CALC,GAKDA,WALC,CAMDC,CANC,GAMDA,MANC,CAODC,CAPC,GAODA,OAPC,CAQDC,CARC,GAQDA,KARC,CASDC,CATC,GASDA,QATC,CAUDC,CAVC,GAUDA,KAVC,CAWDC,CAXC,GAWDA,QAXC,CAYDC,CAZC,GAYDA,QAZC,CAaDC,CAbC,GAaDA,SAbC,CAcDC,CAdC,GAcDA,EAdC,CAeDC,CAfC,GAeDA,WAfC,KAgBDC,IAhBC,CAgBDA,CAhBC,YAgBMtB,eAhBN,OAiBDuB,IAjBC,CAiBDA,CAjBC,YAiBMrB,eAjBN,OAkBDsB,IAlBC,CAkBDA,CAlBC,YAkBMvB,eAlBN,GAmBDwB,CAnBC,GAmBDA,iBAnBC,CAoBDC,CApBC,GAoBDA,IApBC,KAqBDC,MArBC,CAqBDA,CArBC,YAqBQ,EArBR,GAsBDC,CAtBC,GAsBDA,YAtBC,KAuBDC,kBAvBC,CAuBDA,CAvBC,YAuBoBjC,yBAvBpB,GAwBDkC,CAxBC,GAwBDA,UAxBC,CAyBDC,CAzBC,GAyBDA,eAzBC,CA0BDC,CA1BC,GA0BDA,eA1BC,CA2BDC,CA3BC,GA2BDA,WA3BC,CA4BDC,CA5BC,GA4BDA,aA5BC,CA6BDC,CA7BC,GA6BDA,UA7BC,CA8BDC,CA9BC,GA8BDA,SA9BC,CA+BYC,CA/BZ,GA+BDC,WA/BC,CAgCSC,CAhCT,GAgCDC,QAhCC,CAiCDC,CAjCC,GAiCDA,KAjCC,KAkCDC,YAlCC,CAkCDA,CAlCC,YAkCc,SAlCd,GAmCDC,CAnCC,GAmCDA,cAnCC,CAoCDC,CApCC,GAoCDA,gBApCC,CAqCDC,CArCC,GAqCDA,aArCC,CAsCDC,CAtCC,GAsCDA,YAtCC,CAuCDC,CAvCC,GAuCDA,uBAvCC,CAwCEC,CAxCF,yCAyDC7C,SAAS,CAAqB,CAChCW,KAAK,CAALA,CADgC,CAEhCa,MAAM,CAANA,CAFgC,CAGhCX,KAAK,CAALA,CAHgC,CAIhCD,QAAQ,CAARA,CAJgC,CAKhCM,WAAW,CAAEZ,CALmB,CAMhCC,UAAU,CAAVA,CANgC,CAOhCQ,QAAQ,CAARA,CAPgC,CAQhCU,YAAY,CAAZA,CARgC,CAShCE,UAAU,CAAVA,CATgC,CAUhCG,WAAW,CAAXA,CAVgC,CAWhCF,eAAe,CAAfA,CAXgC,CAYhCC,eAAe,CAAfA,CAZgC,CAahCiB,QAAQ,GAbwB,CAchCrC,MAAM,CAANA,CAdgC,CAehCC,OAAO,CAAPA,CAfgC,CAgBhC8B,cAAc,CAAdA,CAhBgC,CAiBhCG,YAAY,CAAZA,CAjBgC,CAkBhCC,uBAAuB,CAAvBA,CAlBgC,CAArB,CAzDV,CA4CDG,CA5CC,GA4CDA,WA5CC,CA6CDC,CA7CC,GA6CDA,cA7CC,CA8CDC,CA9CC,GA8CDA,MA9CC,CA+CDC,CA/CC,GA+CDA,YA/CC,CAgDDC,CAhDC,GAgDDA,SAhDC,CAiDDC,CAjDC,GAiDDA,gBAjDC,CAkDDC,EAlDC,GAkDDA,eAlDC,CAmDDC,EAnDC,GAmDDA,oBAnDC,CAoDDjB,EApDC,GAoDDA,QApDC,CAqDDkB,EArDC,GAqDDA,gBArDC,CAsDDC,EAtDC,GAsDDA,QAtDC,CAuDDC,EAvDC,GAuDDA,QAvDC,CAwDDC,EAxDC,GAwDDA,WAxDC,CA8EGC,EAAO,CAAG1C,CAAE,WAAMA,CAAN,WAAmBA,CA9ElC,CA+GH,MACE,yCACE,oBAAC,eAAD,gBACE,OAAO,CAAEkC,CADX,CAEE,QAAQ,CAAEpC,CAFZ,CAGE,IAAI,CAAEM,CAHR,CAIE,IAAI,CAAED,CAJR,CAKE,IAAI,CAAED,CALR,CAME,QAAQ,CAAEL,CANZ,CAOE,GAAG,CAAET,CAPP,CAQE,KAAK,CAAEiC,CART,CASE,EAAE,CAAEqB,EATN,EAUMd,CAVN,EAYE,2BACE,SAAS,CAAEtD,QAAQ,CAAC,SAAD,CADrB,CAEE,GAAG,CAAEgB,CAFP,CAGE,gBAAe0C,CAHjB,CAIE,gBAAc,SAJhB,CAKE,EAAE,CAAEhC,CALN,EAOE,2BAAK,SAAS,CAAE1B,QAAQ,CAAC,cAAD,CAAxB,EACE,2BAAK,SAAS,CAAEA,QAAQ,CAAC,uBAAD,CAAxB,EACE,6CACMwD,CAAW,EADjB,EAEE,SAAS,CAAExD,QAAQ,CAAC,WAAD,CAFrB,CAGE,IAAI,CAAC,MAHP,CAIE,IAAI,CAAEgC,CAJR,CAKE,EAAE,CAAEoC,EALN,CAME,OAAO,CAAEP,CANX,CAOE,MAAM,CAAEC,EAPV,CAQE,aAAYrC,CARd,CASE,OAAO,CAAEuC,EATX,CAUE,GAAG,CAAEtD,UAAU,CAAC,CAACoC,EAAD,CAAWD,CAAX,CAAD,CAVjB,CAWE,QAAQ,GAXV,GADF,CAcGvB,CAAK,EAAI,CAtCFqB,CAAe,EAVe,QAA5C0B,mBAA4C,CAACxD,CAAD,CAAW,CAC3D,GAAMyD,EAAK,CAAGpC,CAAY,CAACrB,CAAK,CAAC0D,IAAP,CAA1B,CAEA,MACE,6BAAM,SAAS,CAAEvE,QAAQ,CAAC,cAAD,CAAzB,CAA2C,KAAK,CAAEsE,CAAlD,EACGA,CADH,CAIH,CAwCqB,EAAY,CAAEC,IAAI,CAAEjD,CAAR,CAAZ,CAdZ,CAeG,CAAkB,WAAjB,QAAOA,EAAP,EAA0C,IAAV,GAAAA,CAAjC,GAAoDL,CAApD,EACC,4BAAM,SAAS,CAAEjB,QAAQ,CAAC,aAAD,CAAzB,CAA0C,KAAK,CAAC,aAAhD,EACGiB,CADH,CAhBJ,CADF,CAPF,CA8BE,4BAAM,SAAS,CAAEjB,QAAQ,CAAC,YAAD,CAAzB,EACE,8BACE,IAAI,CAAC,QADP,CAEE,SAAS,CAAEA,QAAQ,CAAC,oBAAD,CAFrB,CAGE,QAAQ,CAAE,CAAC,CAHb,CAIE,OAAO,CAAE+D,EAJX,EAME,oBAAC,UAAD,EACE,IAAI,CAAC,IADP,CAEE,SAAS,CAAE/D,QAAQ,CAAC,uBAAD,CAFrB,EANF,CADF,CA9BF,CAZF,CADF,CA0DE,oBAAC,cAAD,EACE,MAAM,CAAE0D,CADV,CAEE,IAAI,CAAE5B,CAFR,CAGE,UAAU,CAAEd,CAHd,CAIE,cAAc,CAAEyC,CAJlB,CAKE,WAAW,CAAE/C,UAAU,CAAC,CAACiB,CAAD,CAAcZ,CAAd,CAAD,CALzB,CAME,IAAI,CAAEiC,CANR,CAOE,SAAS,CAAEjB,CAPb,CAQE,UAAU,CAAEU,CAAU,EAlGoB,QAA1C+B,kBAA0C,CAAC3D,CAAD,CAAW,CACzD,GAAQ0D,EAAR,CAA8D1D,CAA9D,CAAQ0D,IAAR,CAAcE,CAAd,CAA8D5D,CAA9D,CAAc4D,MAAd,CAAsBC,CAAtB,CAA8D7D,CAA9D,CAAsB6D,OAAtB,CAA+BC,CAA/B,CAA8D9D,CAA9D,CAA+B8D,OAA/B,CAAwCC,CAAxC,CAA8D/D,CAA9D,CAAwC+D,YAAxC,CAAsD9D,CAAtD,CAA8DD,CAA9D,CAAsDC,GAAtD,CAEA,MACE,qBAAC,UAAD,EACE,KAAK,CAAEoB,CAAY,CAACqC,CAAD,CADrB,CAEE,MAAM,CAAEE,CAFV,CAGE,OAAO,CAAEC,CAHX,CAIE,QAAQ,GAJV,CAKE,IAAI,CAAE5C,CALR,CAME,MAAM,CAAmB,OAAjB,GAAAkB,CAAY,CAAe,WAAf,CAA6B,QANnD,CAOE,OAAO,CAAE2B,CAPX,CAQE,YAAY,CAAEC,CARhB,CASE,QAAQ,CAAEtC,CAAe,CAACiC,CAAD,CAT3B,CAUE,GAAG,CAAEzD,CAVP,EAaH,CAyEG,CASE,aAAa,CAAE0B,CATjB,CAUE,YAAY,CAAEmB,CAVhB,CAWE,QAAQ,CAAEM,EAXZ,CAYE,SAAS,CAAEvB,CAZb,CAaE,kBAAkB,CAAEP,CAbtB,CAcE,QAAQ,CAAE+B,EAdZ,CAeE,SAAS,CAAEC,EAfb,CAgBE,aAAa,CAAEhB,CAhBjB,CAiBE,gBAAgB,CAAED,CAjBpB,CAkBE,KAAK,CACsB,QAAzB,gBAAOH,CAAP,WAAOA,CAAP,QAAOA,CAAK,CAAE8B,MAAd,EACI,CAAEA,MAAM,CAAE9B,CAAK,CAAC8B,MAAN,CAAe,CAAzB,CADJ,OAnBJ,EA1DF,CAoFH,CAvMD,CAyMA,MAAO,IAAMC,OAAM,CAAGjF,UAAU,CAACe,YAAD,CAAzB,CAEP"}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { IconComponent } from '@consta/icons/Icon';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { PropsWithHTMLAttributesAndRef } from '../../utils/types/PropsWithHTMLAttributes';
|
|
4
|
+
import { PropForm, PropSize, PropStatus, PropView, RenderItemProps } from '../SelectComponentsCanary/types';
|
|
5
|
+
export declare type DefaultItem = {
|
|
6
|
+
label: string;
|
|
7
|
+
id: string | number;
|
|
8
|
+
groupId?: string | number;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
};
|
|
11
|
+
export declare type DefaultGroup = {
|
|
12
|
+
label: string;
|
|
13
|
+
id: string | number;
|
|
14
|
+
};
|
|
15
|
+
declare type PropValue<ITEM> = ITEM | null | undefined;
|
|
16
|
+
declare type RenderValueProps<ITEM> = {
|
|
17
|
+
item: ITEM;
|
|
18
|
+
};
|
|
19
|
+
export declare type PropGetItemLabel<ITEM> = (item: ITEM) => string;
|
|
20
|
+
export declare type PropGetItemKey<ITEM> = (item: ITEM) => string | number;
|
|
21
|
+
export declare type PropGetItemGroupKey<ITEM> = (item: ITEM) => string | number | undefined;
|
|
22
|
+
export declare type PropGetItemDisabled<ITEM> = (item: ITEM) => boolean | undefined;
|
|
23
|
+
export declare type PropGetGroupKey<GROUP> = (group: GROUP) => string | number;
|
|
24
|
+
export declare type PropGetGroupLabel<GROUP> = (group: GROUP) => string;
|
|
25
|
+
export declare type PropRenderItem<ITEM> = (props: RenderItemProps<ITEM>) => React.ReactElement | null;
|
|
26
|
+
export declare type PropRenderValue<ITEM> = (props: RenderValueProps<ITEM>) => React.ReactElement | null;
|
|
27
|
+
export declare type SelectProps<ITEM = DefaultItem, GROUP = DefaultGroup> = PropsWithHTMLAttributesAndRef<{
|
|
28
|
+
items: ITEM[];
|
|
29
|
+
onChange: (value: ITEM | null, props: {
|
|
30
|
+
e: React.SyntheticEvent;
|
|
31
|
+
}) => void;
|
|
32
|
+
disabled?: boolean;
|
|
33
|
+
form?: PropForm;
|
|
34
|
+
dropdownForm?: 'default' | 'brick' | 'round';
|
|
35
|
+
size?: PropSize;
|
|
36
|
+
view?: PropView;
|
|
37
|
+
status?: PropStatus;
|
|
38
|
+
focused?: boolean;
|
|
39
|
+
placeholder?: string;
|
|
40
|
+
ariaLabel?: string;
|
|
41
|
+
dropdownClassName?: string;
|
|
42
|
+
dropdownRef?: React.RefObject<HTMLDivElement>;
|
|
43
|
+
required?: boolean;
|
|
44
|
+
name?: string;
|
|
45
|
+
isLoading?: boolean;
|
|
46
|
+
labelForEmptyItems?: string;
|
|
47
|
+
value?: PropValue<ITEM>;
|
|
48
|
+
renderItem?: PropRenderItem<ITEM>;
|
|
49
|
+
renderValue?: PropRenderValue<ITEM>;
|
|
50
|
+
onFocus?: React.FocusEventHandler<HTMLInputElement>;
|
|
51
|
+
onBlur?: React.FocusEventHandler<HTMLInputElement>;
|
|
52
|
+
inputRef?: React.RefObject<HTMLInputElement>;
|
|
53
|
+
groups?: GROUP[];
|
|
54
|
+
getItemLabel?: PropGetItemLabel<ITEM>;
|
|
55
|
+
getItemKey?: PropGetItemKey<ITEM>;
|
|
56
|
+
getItemGroupKey?: PropGetItemGroupKey<ITEM>;
|
|
57
|
+
getItemDisabled?: PropGetItemDisabled<ITEM>;
|
|
58
|
+
getGroupLabel?: PropGetGroupLabel<GROUP>;
|
|
59
|
+
getGroupKey?: PropGetGroupKey<GROUP>;
|
|
60
|
+
label?: string;
|
|
61
|
+
labelIcon?: IconComponent;
|
|
62
|
+
labelPosition?: 'top' | 'left';
|
|
63
|
+
caption?: string;
|
|
64
|
+
virtualScroll?: boolean;
|
|
65
|
+
onScrollToBottom?: () => void;
|
|
66
|
+
onDropdownOpen?: (isOpen: boolean) => void;
|
|
67
|
+
dropdownOpen?: boolean;
|
|
68
|
+
ignoreOutsideClicksRefs?: ReadonlyArray<React.RefObject<HTMLElement>>;
|
|
69
|
+
}, HTMLDivElement> & (ITEM extends {
|
|
70
|
+
label: DefaultItem['label'];
|
|
71
|
+
} ? {} : {
|
|
72
|
+
getItemLabel: PropGetItemLabel<ITEM>;
|
|
73
|
+
}) & (ITEM extends {
|
|
74
|
+
id: DefaultItem['id'];
|
|
75
|
+
} ? {} : {
|
|
76
|
+
getItemKey: PropGetItemKey<ITEM>;
|
|
77
|
+
}) & (GROUP extends {
|
|
78
|
+
label: DefaultGroup['label'];
|
|
79
|
+
} ? {} : {
|
|
80
|
+
getGroupLabel: PropGetGroupLabel<GROUP>;
|
|
81
|
+
}) & (GROUP extends {
|
|
82
|
+
id: DefaultGroup['id'];
|
|
83
|
+
} ? {} : {
|
|
84
|
+
getGroupKey: PropGetGroupKey<GROUP>;
|
|
85
|
+
});
|
|
86
|
+
export declare type SelectComponent = <ITEM = DefaultItem, GROUP = DefaultGroup>(props: SelectProps<ITEM, GROUP>) => React.ReactElement | null;
|
|
87
|
+
export declare const defaultGetItemKey: PropGetItemKey<DefaultItem>;
|
|
88
|
+
export declare const defaultGetItemLabel: PropGetItemLabel<DefaultItem>;
|
|
89
|
+
export declare const defaultGetItemGroupKey: PropGetItemGroupKey<DefaultItem>;
|
|
90
|
+
export declare const defaultGetItemDisabled: PropGetItemDisabled<DefaultItem>;
|
|
91
|
+
export declare const defaultGetGroupKey: PropGetGroupKey<DefaultGroup>;
|
|
92
|
+
export declare const defaultGetGroupLabel: PropGetGroupLabel<DefaultGroup>;
|
|
93
|
+
export declare function withDefaultGetters<ITEM, GROUP>(props: SelectProps<ITEM, GROUP>): {
|
|
94
|
+
items: ITEM[];
|
|
95
|
+
onChange: (value: ITEM | null, props: {
|
|
96
|
+
e: React.SyntheticEvent<Element, Event>;
|
|
97
|
+
}) => void;
|
|
98
|
+
disabled?: boolean | undefined;
|
|
99
|
+
form?: "default" | "round" | "defaultClear" | "defaultBrick" | "brick" | "brickDefault" | "brickClear" | "brickRound" | "roundClear" | "roundBrick" | "clearRound" | "clearDefault" | "clearBrick" | "clearClear" | undefined;
|
|
100
|
+
dropdownForm?: "default" | "round" | "brick" | undefined;
|
|
101
|
+
size?: "m" | "s" | "xs" | "l" | undefined;
|
|
102
|
+
view?: "default" | "clear" | undefined;
|
|
103
|
+
status?: "alert" | "warning" | "success" | undefined;
|
|
104
|
+
focused?: boolean | undefined;
|
|
105
|
+
placeholder?: string | undefined;
|
|
106
|
+
ariaLabel?: string | undefined;
|
|
107
|
+
dropdownClassName?: string | undefined;
|
|
108
|
+
dropdownRef?: React.RefObject<HTMLDivElement> | undefined;
|
|
109
|
+
required?: boolean | undefined;
|
|
110
|
+
name?: string | undefined;
|
|
111
|
+
isLoading?: boolean | undefined;
|
|
112
|
+
labelForEmptyItems?: string | undefined;
|
|
113
|
+
value?: PropValue<ITEM>;
|
|
114
|
+
renderItem?: PropRenderItem<ITEM> | undefined;
|
|
115
|
+
renderValue?: PropRenderValue<ITEM> | undefined;
|
|
116
|
+
onFocus?: React.FocusEventHandler<HTMLInputElement> | undefined;
|
|
117
|
+
onBlur?: React.FocusEventHandler<HTMLInputElement> | undefined;
|
|
118
|
+
inputRef?: React.RefObject<HTMLInputElement> | undefined;
|
|
119
|
+
groups?: GROUP[] | undefined;
|
|
120
|
+
getItemLabel?: PropGetItemLabel<ITEM> | undefined;
|
|
121
|
+
getItemKey?: PropGetItemKey<ITEM> | undefined;
|
|
122
|
+
getItemGroupKey?: PropGetItemGroupKey<ITEM> | undefined;
|
|
123
|
+
getItemDisabled?: PropGetItemDisabled<ITEM> | undefined;
|
|
124
|
+
getGroupLabel?: PropGetGroupLabel<GROUP> | undefined;
|
|
125
|
+
getGroupKey?: PropGetGroupKey<GROUP> | undefined;
|
|
126
|
+
label?: string | undefined;
|
|
127
|
+
labelIcon?: IconComponent<"span"> | undefined;
|
|
128
|
+
labelPosition?: "left" | "top" | undefined;
|
|
129
|
+
caption?: string | undefined;
|
|
130
|
+
virtualScroll?: boolean | undefined;
|
|
131
|
+
onScrollToBottom?: (() => void) | undefined;
|
|
132
|
+
onDropdownOpen?: ((isOpen: boolean) => void) | undefined;
|
|
133
|
+
dropdownOpen?: boolean | undefined;
|
|
134
|
+
ignoreOutsideClicksRefs?: readonly React.RefObject<HTMLElement>[] | undefined;
|
|
135
|
+
} & Omit<React.HTMLAttributes<HTMLDivElement>, "css" | "placeholder" | "onFocus" | "onBlur" | "onChange" | "size" | "caption" | "form" | "label" | "view" | "status" | "name" | "disabled" | "value" | "required" | "inputRef" | "items" | "dropdownForm" | "focused" | "ariaLabel" | "dropdownClassName" | "dropdownRef" | "isLoading" | "labelForEmptyItems" | "renderItem" | "renderValue" | "groups" | "getItemLabel" | "getItemKey" | "getItemGroupKey" | "getItemDisabled" | "getGroupLabel" | "getGroupKey" | "labelIcon" | "labelPosition" | "onScrollToBottom" | "onDropdownOpen" | "dropdownOpen" | "ignoreOutsideClicksRefs" | "virtualScroll"> & React.RefAttributes<HTMLDivElement> & (ITEM extends {
|
|
136
|
+
label: string;
|
|
137
|
+
} ? {} : {
|
|
138
|
+
getItemLabel: PropGetItemLabel<ITEM>;
|
|
139
|
+
}) & (ITEM extends {
|
|
140
|
+
id: string | number;
|
|
141
|
+
} ? {} : {
|
|
142
|
+
getItemKey: PropGetItemKey<ITEM>;
|
|
143
|
+
}) & (GROUP extends {
|
|
144
|
+
label: string;
|
|
145
|
+
} ? {} : {
|
|
146
|
+
getGroupLabel: PropGetGroupLabel<GROUP>;
|
|
147
|
+
}) & (GROUP extends {
|
|
148
|
+
id: string | number;
|
|
149
|
+
} ? {} : {
|
|
150
|
+
getGroupKey: PropGetGroupKey<GROUP>;
|
|
151
|
+
}) & {
|
|
152
|
+
getItemLabel: PropGetItemLabel<DefaultItem> | PropGetItemLabel<ITEM>;
|
|
153
|
+
getItemKey: PropGetItemKey<DefaultItem> | PropGetItemKey<ITEM>;
|
|
154
|
+
getItemGroupKey: PropGetItemGroupKey<DefaultItem> | PropGetItemGroupKey<ITEM>;
|
|
155
|
+
getItemDisabled: PropGetItemDisabled<DefaultItem> | PropGetItemDisabled<ITEM>;
|
|
156
|
+
getGroupLabel: PropGetGroupLabel<DefaultGroup> | PropGetGroupLabel<GROUP>;
|
|
157
|
+
getGroupKey: PropGetGroupKey<DefaultGroup> | PropGetGroupKey<GROUP>;
|
|
158
|
+
};
|
|
159
|
+
export {};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import _defineProperty from"@babel/runtime/helpers/defineProperty";function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}export var defaultGetItemKey=function(a){return a.id};export var defaultGetItemLabel=function(a){return a.label};export var defaultGetItemGroupKey=function(a){return a.groupId};export var defaultGetItemDisabled=function(a){return a.disabled};export var defaultGetGroupKey=function(a){return a.id};export var defaultGetGroupLabel=function(a){return a.label};export function withDefaultGetters(a){return _objectSpread(_objectSpread({},a),{},{getItemLabel:a.getItemLabel||defaultGetItemLabel,getItemKey:a.getItemKey||defaultGetItemKey,getItemGroupKey:a.getItemGroupKey||defaultGetItemGroupKey,getItemDisabled:a.getItemDisabled||defaultGetItemDisabled,getGroupLabel:a.getGroupLabel||defaultGetGroupLabel,getGroupKey:a.getGroupKey||defaultGetGroupKey})}
|
|
2
|
+
//# sourceMappingURL=helpers.js.map
|