@consta/uikit 5.13.0 → 5.15.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/FieldComponents/index.d.ts +1 -0
- package/FieldComponents/index.js +1 -0
- package/TextFieldCanary/index.d.ts +1 -0
- package/TextFieldCanary/index.js +1 -0
- package/__internal__/src/components/AutoComplete/helpers.d.ts +1 -1
- package/__internal__/src/components/AutoComplete/types.d.ts +1 -1
- package/__internal__/src/components/AutoComplete/types.js.map +1 -1
- package/__internal__/src/components/AutoComplete/useAutoComplete.d.ts +1 -1
- package/__internal__/src/components/AutoComplete/useAutoComplete.js +1 -1
- package/__internal__/src/components/AutoComplete/useAutoComplete.js.map +1 -1
- package/__internal__/src/components/AutoCompleteCanary/helpers.d.ts +1 -1
- package/__internal__/src/components/AutoCompleteCanary/types.d.ts +1 -1
- package/__internal__/src/components/AutoCompleteCanary/types.js.map +1 -1
- package/__internal__/src/components/AutoCompleteCanary/useAutoComplete.d.ts +1 -1
- package/__internal__/src/components/AutoCompleteCanary/useAutoComplete.js +1 -1
- package/__internal__/src/components/AutoCompleteCanary/useAutoComplete.js.map +1 -1
- package/__internal__/src/components/AvatarGroup/AvatarGroup.js.map +1 -1
- package/__internal__/src/components/Badge/Badge.css +1 -1
- package/__internal__/src/components/Badge/Badge.d.ts +2 -31
- package/__internal__/src/components/Badge/Badge.js +1 -1
- package/__internal__/src/components/Badge/Badge.js.map +1 -1
- package/__internal__/src/components/Badge/cn.d.ts +1 -0
- package/__internal__/src/components/Badge/cn.js +2 -0
- package/__internal__/src/components/Badge/cn.js.map +1 -0
- package/__internal__/src/components/Badge/guardStatus.d.ts +2 -0
- package/__internal__/src/components/Badge/guardStatus.js +2 -0
- package/__internal__/src/components/Badge/guardStatus.js.map +1 -0
- package/__internal__/src/components/Badge/index.d.ts +2 -0
- package/__internal__/src/components/Badge/index.js +1 -1
- package/__internal__/src/components/Badge/index.js.map +1 -1
- package/__internal__/src/components/Badge/maps.d.ts +9 -0
- package/__internal__/src/components/Badge/maps.js +2 -0
- package/__internal__/src/components/Badge/maps.js.map +1 -0
- package/__internal__/src/components/Badge/types.d.ts +31 -0
- package/__internal__/src/components/Badge/types.js +2 -0
- package/__internal__/src/components/Badge/types.js.map +1 -0
- package/__internal__/src/components/BadgeGroup/BadgeGroup.js +1 -1
- package/__internal__/src/components/BadgeGroup/BadgeGroup.js.map +1 -1
- package/__internal__/src/components/BadgeGroup/types.d.ts +4 -1
- package/__internal__/src/components/BadgeGroup/types.js.map +1 -1
- package/__internal__/src/components/BookmarkTabs/BookmarkTabs.js.map +1 -1
- package/__internal__/src/components/Breadcrumbs/BreadcrumbsItem/BreadcrumbsItem.css +1 -1
- package/__internal__/src/components/Checkbox/Checkbox.css +1 -1
- package/__internal__/src/components/CheckboxDeprecated/Checkbox.css +2 -2
- package/__internal__/src/components/CheckboxGroup/CheckboxGroup.js.map +1 -1
- package/__internal__/src/components/Chips/types.d.ts +8 -2
- package/__internal__/src/components/Chips/types.js.map +1 -1
- package/__internal__/src/components/Collapse/types.d.ts +1 -1
- package/__internal__/src/components/Collapse/types.js.map +1 -1
- package/__internal__/src/components/Combobox/Combobox.js +1 -1
- package/__internal__/src/components/Combobox/Combobox.js.map +1 -1
- package/__internal__/src/components/Combobox/helpers.d.ts +2 -2
- package/__internal__/src/components/Combobox/helpers.js.map +1 -1
- package/__internal__/src/components/ComboboxDeprecated/ComboboxDeprecated.js +1 -1
- package/__internal__/src/components/ComboboxDeprecated/ComboboxDeprecated.js.map +1 -1
- package/__internal__/src/components/ContextMenu/ContextMenuLevel/ContextMenuLevel.js +1 -1
- package/__internal__/src/components/ContextMenu/ContextMenuLevel/ContextMenuLevel.js.map +1 -1
- package/__internal__/src/components/ContextMenu/ContextMenuLevelWrapper/ContextMenuLevelWrapper.js +1 -1
- package/__internal__/src/components/ContextMenu/ContextMenuLevelWrapper/ContextMenuLevelWrapper.js.map +1 -1
- package/__internal__/src/components/ContextMenu/ContextMenuWrapper/ContextMenuWrapper.css +1 -1
- package/__internal__/src/components/ContextMenu/ContextMenuWrapper/ContextMenuWrapper.js +1 -1
- package/__internal__/src/components/ContextMenu/ContextMenuWrapper/ContextMenuWrapper.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerDropdown/DatePickerDropdown.css +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.js.map +1 -1
- package/__internal__/src/components/DateTime/DateTime10Years/DateTime10Years.css +1 -1
- package/__internal__/src/components/DateTime/DateTimeCell/DateTimeCell.css +1 -1
- package/__internal__/src/components/DateTime/DateTimeMonth/DateTimeMonth.css +1 -1
- package/__internal__/src/components/DateTime/DateTimeTimeColumn/DateTimeTimeColumn.css +1 -1
- package/__internal__/src/components/DateTime/DateTimeTimeColumn/DateTimeTimeColumn.js +1 -1
- package/__internal__/src/components/DateTime/DateTimeTimeColumn/DateTimeTimeColumn.js.map +1 -1
- package/__internal__/src/components/DateTime/DateTimeTimeColumn/useScrollToElement/useScrollToElement.js.map +1 -1
- package/__internal__/src/components/DateTime/DateTimeTypeTime/DateTimeTypeTime.css +1 -1
- package/__internal__/src/components/DateTime/DateTimeTypeTime/DateTimeTypeTime.js.map +1 -1
- package/__internal__/src/components/DateTime/DateTimeYear/DateTimeYear.css +1 -1
- package/__internal__/src/components/DateTime/helpers/getSliderValueRange.js +1 -1
- package/__internal__/src/components/DateTime/helpers/getSliderValueRange.js.map +1 -1
- package/__internal__/src/components/DragNDropField/DragNDropField.js +1 -1
- package/__internal__/src/components/DragNDropField/DragNDropField.js.map +1 -1
- package/__internal__/src/components/DragNDropField/formatAccept.js.map +1 -1
- package/__internal__/src/components/DragNDropField/locale.d.ts +1 -1
- package/__internal__/src/components/DragNDropField/locale.js +1 -1
- package/__internal__/src/components/DragNDropField/locale.js.map +1 -1
- package/__internal__/src/components/DragNDropFieldCanary/DragNDropFieldCanary.js +1 -1
- package/__internal__/src/components/DragNDropFieldCanary/DragNDropFieldCanary.js.map +1 -1
- package/__internal__/src/components/DragNDropFieldCanary/renderChildren.d.ts +3 -0
- package/__internal__/src/components/DragNDropFieldCanary/renderChildren.js +2 -0
- package/__internal__/src/components/DragNDropFieldCanary/renderChildren.js.map +1 -0
- package/__internal__/src/components/FieldComponents/FieldArrayValueInlineControl/FieldArrayValueInlineControl.js +1 -1
- package/__internal__/src/components/FieldComponents/FieldArrayValueInlineControl/FieldArrayValueInlineControl.js.map +1 -1
- package/__internal__/src/components/FieldComponents/FieldArrayValueInlineControl/types.d.ts +2 -1
- package/__internal__/src/components/FieldComponents/FieldArrayValueInlineControl/types.js.map +1 -1
- package/__internal__/src/components/FieldComponents/FieldComponents.d.ts +15 -0
- package/__internal__/src/components/FieldComponents/FieldComponents.js +2 -0
- package/__internal__/src/components/FieldComponents/FieldComponents.js.map +1 -0
- package/__internal__/src/components/FieldComponents/FieldControlLayout/FieldControlLayout.css +1 -1
- package/__internal__/src/components/FieldComponents/FieldControlLayout/FieldControlLayout.js +1 -1
- package/__internal__/src/components/FieldComponents/FieldControlLayout/FieldControlLayout.js.map +1 -1
- package/__internal__/src/components/FieldComponents/FieldControlLayout/helpers.js.map +1 -1
- package/__internal__/src/components/FieldComponents/FieldWrapper/FieldWrapper.js +1 -1
- package/__internal__/src/components/FieldComponents/FieldWrapper/FieldWrapper.js.map +1 -1
- package/__internal__/src/components/FieldComponents/index.d.ts +1 -15
- package/__internal__/src/components/FieldComponents/index.js +1 -1
- package/__internal__/src/components/FieldComponents/index.js.map +1 -1
- package/__internal__/src/components/Grid/helpers.js.map +1 -1
- package/__internal__/src/components/Informer/Informer.css +1 -1
- package/__internal__/src/components/Informer/Informer.d.ts +1 -1
- package/__internal__/src/components/Informer/Informer.js +1 -1
- package/__internal__/src/components/Informer/Informer.js.map +1 -1
- package/__internal__/src/components/Layout/useFixed.js +1 -1
- package/__internal__/src/components/Layout/useFixed.js.map +1 -1
- package/__internal__/src/components/ListCanary/ListAddItem/ListAddItem.js +1 -1
- package/__internal__/src/components/ListCanary/ListAddItem/ListAddItem.js.map +1 -1
- package/__internal__/src/components/ListCanary/ListBox/ListBox.js +1 -1
- package/__internal__/src/components/ListCanary/ListBox/ListBox.js.map +1 -1
- package/__internal__/src/components/ListCanary/ListBox/index.d.ts +1 -1
- package/__internal__/src/components/ListCanary/ListBox/index.js +1 -1
- package/__internal__/src/components/ListCanary/ListBox/index.js.map +1 -1
- package/__internal__/src/components/ListCanary/ListBox/{mapVerticalSpase.d.ts → mapVerticalSpace.d.ts} +1 -1
- package/__internal__/src/components/ListCanary/ListBox/mapVerticalSpace.js +2 -0
- package/__internal__/src/components/ListCanary/ListBox/mapVerticalSpace.js.map +1 -0
- package/__internal__/src/components/ListCanary/ListCanary.js +1 -1
- package/__internal__/src/components/ListCanary/ListCanary.js.map +1 -1
- package/__internal__/src/components/ListCanary/ListDivider/ListDivider.js +1 -1
- package/__internal__/src/components/ListCanary/ListDivider/ListDivider.js.map +1 -1
- package/__internal__/src/components/ListCanary/ListGroupLabel/ListGroupLabel.js +1 -1
- package/__internal__/src/components/ListCanary/ListGroupLabel/ListGroupLabel.js.map +1 -1
- package/__internal__/src/components/ListCanary/ListItem/ListItem.js +1 -1
- package/__internal__/src/components/ListCanary/ListItem/ListItem.js.map +1 -1
- package/__internal__/src/components/ListCanary/ListLoader/ListLoader.js +1 -1
- package/__internal__/src/components/ListCanary/ListLoader/ListLoader.js.map +1 -1
- package/__internal__/src/components/ListCanary/helper.d.ts +3 -3
- package/__internal__/src/components/ListCanary/maps.d.ts +4 -4
- package/__internal__/src/components/ListCanary/maps.js +1 -1
- package/__internal__/src/components/ListCanary/maps.js.map +1 -1
- package/__internal__/src/components/ListCanary/renderHeader.d.ts +1 -1
- package/__internal__/src/components/ListCanary/renderHeader.js.map +1 -1
- package/__internal__/src/components/ListCanary/types.d.ts +3 -3
- package/__internal__/src/components/ListCanary/types.js.map +1 -1
- package/__internal__/src/components/Pagination/Pagination.js.map +1 -1
- package/__internal__/src/components/Pagination/PaginationList/PaginationList.css +1 -1
- package/__internal__/src/components/Pagination/PaginationList/PaginationList.js +1 -1
- package/__internal__/src/components/Pagination/PaginationList/PaginationList.js.map +1 -1
- package/__internal__/src/components/Pagination/helpers.js.map +1 -1
- package/__internal__/src/components/Pagination/usePaginationItems.js.map +1 -1
- package/__internal__/src/components/Popover/Popover.d.ts +2 -1
- package/__internal__/src/components/Popover/Popover.js +1 -1
- package/__internal__/src/components/Popover/Popover.js.map +1 -1
- package/__internal__/src/components/Popover/helpers.d.ts +1 -1
- package/__internal__/src/components/Popover/helpers.js +1 -1
- package/__internal__/src/components/Popover/helpers.js.map +1 -1
- package/__internal__/src/components/Popover/usePopoverReposition.d.ts +2 -2
- package/__internal__/src/components/Popover/usePopoverReposition.js.map +1 -1
- package/__internal__/src/components/PortalWithTheme/PortalWithTheme.js.map +1 -1
- package/__internal__/src/components/PortalWithTheme/PortalWithThemeContext/PortalWithThemeContext.d.ts +4 -4
- package/__internal__/src/components/PortalWithTheme/PortalWithThemeContext/PortalWithThemeContext.js.map +1 -1
- package/__internal__/src/components/ProgressLine/helpers.js.map +1 -1
- package/__internal__/src/components/ProgressLine/types.d.ts +2 -2
- package/__internal__/src/components/ProgressLine/types.js.map +1 -1
- package/__internal__/src/components/ProgressStepBar/helpers.d.ts +3 -3
- package/__internal__/src/components/ProgressStepBar/helpers.js.map +1 -1
- package/__internal__/src/components/Select/helpers.d.ts +2 -2
- package/__internal__/src/components/Select/helpers.js.map +1 -1
- package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.d.ts +3 -3
- 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/SelectComponents/helpers.d.ts +2 -2
- package/__internal__/src/components/SelectComponents/helpers.js +1 -1
- package/__internal__/src/components/SelectComponents/helpers.js.map +1 -1
- package/__internal__/src/components/SelectComponents/useSelect/useSelect.d.ts +1 -1
- package/__internal__/src/components/SelectComponents/useSelect/useSelect.js +1 -1
- package/__internal__/src/components/SelectComponents/useSelect/useSelect.js.map +1 -1
- package/__internal__/src/components/SelectComponentsDeprecated/SelectDropdown/SelectDropdown.d.ts +2 -2
- package/__internal__/src/components/SelectComponentsDeprecated/SelectDropdown/SelectDropdown.js +1 -1
- package/__internal__/src/components/SelectComponentsDeprecated/SelectDropdown/SelectDropdown.js.map +1 -1
- package/__internal__/src/components/SelectComponentsDeprecated/helpers.d.ts +2 -2
- package/__internal__/src/components/SelectComponentsDeprecated/helpers.js +1 -1
- package/__internal__/src/components/SelectComponentsDeprecated/helpers.js.map +1 -1
- package/__internal__/src/components/Slider/Slider.js +1 -1
- package/__internal__/src/components/Slider/Slider.js.map +1 -1
- package/__internal__/src/components/Slider/helper.d.ts +6 -6
- package/__internal__/src/components/Slider/helper.js +1 -1
- package/__internal__/src/components/Slider/helper.js.map +1 -1
- package/__internal__/src/components/Slider/useSlider/helper.d.ts +2 -2
- package/__internal__/src/components/Slider/useSlider/helper.js +1 -1
- package/__internal__/src/components/Slider/useSlider/helper.js.map +1 -1
- package/__internal__/src/components/Slider/useSlider/useSlider.js +1 -1
- package/__internal__/src/components/Slider/useSlider/useSlider.js.map +1 -1
- package/__internal__/src/components/Slider/useSliderStationing.js.map +1 -1
- package/__internal__/src/components/SnackBar/SnackBar.js +1 -1
- package/__internal__/src/components/SnackBar/SnackBar.js.map +1 -1
- package/__internal__/src/components/SnackBar/SnackBarActionButton/SnackBarActionButton.js +1 -1
- package/__internal__/src/components/SnackBar/SnackBarActionButton/SnackBarActionButton.js.map +1 -1
- package/__internal__/src/components/SnackBar/SnackBarActionButton/index.d.ts +1 -0
- package/__internal__/src/components/SnackBar/SnackBarActionButton/index.js +2 -0
- package/__internal__/src/components/SnackBar/SnackBarActionButton/index.js.map +1 -0
- package/__internal__/src/components/SnackBar/SnackBarItem/SnackBarItem.css +1 -1
- package/__internal__/src/components/SnackBar/SnackBarItem/SnackBarItem.d.ts +0 -1
- package/__internal__/src/components/SnackBar/SnackBarItem/SnackBarItem.js +1 -1
- package/__internal__/src/components/SnackBar/SnackBarItem/SnackBarItem.js.map +1 -1
- package/__internal__/src/components/SnackBar/SnackBarItem/index.d.ts +1 -0
- package/__internal__/src/components/SnackBar/SnackBarItem/index.js +2 -0
- package/__internal__/src/components/SnackBar/SnackBarItem/index.js.map +1 -0
- package/__internal__/src/components/SnackBar/SnackBarLine/SnackBarLine.js.map +1 -1
- package/__internal__/src/components/SnackBar/SnackBarLine/index.d.ts +1 -0
- package/__internal__/src/components/SnackBar/SnackBarLine/index.js +2 -0
- package/__internal__/src/components/SnackBar/SnackBarLine/index.js.map +1 -0
- package/__internal__/src/components/SnackBar/SnackBarProgress/SnackBarProgress.css +1 -0
- package/__internal__/src/components/SnackBar/SnackBarProgress/SnackBarProgress.d.ts +4 -0
- package/__internal__/src/components/SnackBar/SnackBarProgress/SnackBarProgress.js +2 -0
- package/__internal__/src/components/SnackBar/SnackBarProgress/SnackBarProgress.js.map +1 -0
- package/__internal__/src/components/SnackBar/SnackBarProgress/index.d.ts +1 -0
- package/__internal__/src/components/SnackBar/SnackBarProgress/index.js +2 -0
- package/__internal__/src/components/SnackBar/SnackBarProgress/index.js.map +1 -0
- package/__internal__/src/components/SnackBar/SnackBarTimer/SnackBarTimer.js +1 -1
- package/__internal__/src/components/SnackBar/SnackBarTimer/SnackBarTimer.js.map +1 -1
- package/__internal__/src/components/SnackBar/SnackBarTimer/index.d.ts +1 -0
- package/__internal__/src/components/SnackBar/SnackBarTimer/index.js +2 -0
- package/__internal__/src/components/SnackBar/SnackBarTimer/index.js.map +1 -0
- package/__internal__/src/components/SnackBar/helper.d.ts +4 -1
- package/__internal__/src/components/SnackBar/helper.js +1 -1
- package/__internal__/src/components/SnackBar/helper.js.map +1 -1
- package/__internal__/src/components/SnackBar/types.d.ts +15 -0
- package/__internal__/src/components/SnackBar/types.js +1 -1
- package/__internal__/src/components/SnackBar/types.js.map +1 -1
- package/__internal__/src/components/Spoiler/types.d.ts +4 -4
- package/__internal__/src/components/Spoiler/types.js +1 -1
- package/__internal__/src/components/Spoiler/types.js.map +1 -1
- package/__internal__/src/components/Steps/Steps.d.ts +2 -2
- package/__internal__/src/components/Steps/Steps.js.map +1 -1
- package/__internal__/src/components/Steps/StepsStep/StepsStep.js +1 -1
- package/__internal__/src/components/Steps/StepsStep/StepsStep.js.map +1 -1
- package/__internal__/src/components/Steps/types.d.ts +1 -1
- package/__internal__/src/components/Steps/types.js.map +1 -1
- package/__internal__/src/components/Table/Header/TableHeader.js +1 -1
- package/__internal__/src/components/Table/Header/TableHeader.js.map +1 -1
- package/__internal__/src/components/Table/Resizer/TableResizer.js.map +1 -1
- package/__internal__/src/components/Table/Table.css +1 -1
- package/__internal__/src/components/Table/Table.js +1 -1
- package/__internal__/src/components/Table/Table.js.map +1 -1
- package/__internal__/src/components/Table/__mock__/data.mock.d.ts +1 -1
- package/__internal__/src/components/Table/__mock__/data.mock.js +1 -1
- package/__internal__/src/components/Table/__mock__/data.mock.js.map +1 -1
- package/__internal__/src/components/Table/helpers.d.ts +2 -2
- package/__internal__/src/components/Table/helpers.js +1 -1
- package/__internal__/src/components/Table/helpers.js.map +1 -1
- package/__internal__/src/components/Tabs/TabsFitModeScrollWrapper/__test__/helpers.test.js +1 -1
- package/__internal__/src/components/Tabs/TabsFitModeScrollWrapper/__test__/helpers.test.js.map +1 -1
- package/__internal__/src/components/TagBase/TagBase.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/TextField/helpers.d.ts +1 -1
- package/__internal__/src/components/TextField/helpers.js.map +1 -1
- package/__internal__/src/components/TextFieldCanary/{TextField.js → TextFieldCanary.js} +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldCanary.js.map +1 -0
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeNumber/TextFieldTypeNumber.js +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeNumber/TextFieldTypeNumber.js.map +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypePassword/TextFieldTypePassword.js +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypePassword/TextFieldTypePassword.js.map +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeText/TextFieldTypeText.js +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeText/TextFieldTypeText.js.map +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArea/TextFieldTypeTextArea.css +3 -3
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArea/TextFieldTypeTextArea.js +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArea/TextFieldTypeTextArea.js.map +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArray/TextFieldTypeTextArray.css +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArray/TextFieldTypeTextArray.js +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArray/TextFieldTypeTextArray.js.map +1 -1
- package/__internal__/src/components/TextFieldCanary/index.d.ts +1 -1
- package/__internal__/src/components/TextFieldCanary/index.js +1 -1
- package/__internal__/src/components/TextFieldCanary/index.js.map +1 -1
- package/__internal__/src/components/TextFieldCanary/types.d.ts +1 -0
- package/__internal__/src/components/TextFieldCanary/types.js.map +1 -1
- package/__internal__/src/components/UserSelect/UserSelect.js +1 -1
- package/__internal__/src/components/UserSelect/UserSelect.js.map +1 -1
- package/__internal__/src/components/UserSelect/UserSelectItem/UserSelectItem.js +1 -1
- package/__internal__/src/components/UserSelect/UserSelectItem/UserSelectItem.js.map +1 -1
- package/__internal__/src/components/UserSelect/helpers.d.ts +2 -2
- package/__internal__/src/components/UserSelect/helpers.js.map +1 -1
- package/__internal__/src/components/UserSelectDeprecated/UserSelectDeprecated.js +1 -1
- package/__internal__/src/components/UserSelectDeprecated/UserSelectDeprecated.js.map +1 -1
- package/__internal__/src/components/UserSelectDeprecated/UserSelectItem/UserSelectItem.js +1 -1
- package/__internal__/src/components/UserSelectDeprecated/UserSelectItem/UserSelectItem.js.map +1 -1
- package/__internal__/src/hocs/withTooltip/withTooltip.js.map +1 -1
- package/__internal__/src/hooks/{useBreakpointsDepricated → useBreakpointsDeprecated}/addPrefix.js.map +1 -1
- package/__internal__/src/hooks/{useBreakpointsDepricated → useBreakpointsDeprecated}/getLastPoint.js.map +1 -1
- package/__internal__/src/hooks/useBreakpointsDeprecated/index.d.ts +3 -0
- package/__internal__/src/hooks/useBreakpointsDeprecated/index.js +2 -0
- package/__internal__/src/hooks/useBreakpointsDeprecated/index.js.map +1 -0
- package/__internal__/src/hooks/{useBreakpointsDepricated → useBreakpointsDeprecated}/mapping.js.map +1 -1
- package/__internal__/src/hooks/{useBreakpointsDepricated → useBreakpointsDeprecated}/types.js.map +1 -1
- package/__internal__/src/hooks/useBreakpointsDeprecated/useBreakpointsDeprecated.d.ts +2 -0
- package/__internal__/src/hooks/useBreakpointsDeprecated/useBreakpointsDeprecated.js +2 -0
- package/__internal__/src/hooks/useBreakpointsDeprecated/useBreakpointsDeprecated.js.map +1 -0
- package/__internal__/src/hooks/useBreakpointsDepricated/index.d.ts +0 -2
- package/__internal__/src/hooks/useBreakpointsDepricated/index.js +1 -1
- package/__internal__/src/hooks/useBreakpointsDepricated/index.js.map +1 -1
- package/__internal__/src/hooks/useBreakpointsDepricated/useBreakpointsDepricated.d.ts +1 -2
- package/__internal__/src/hooks/useBreakpointsDepricated/useBreakpointsDepricated.js +1 -1
- package/__internal__/src/hooks/useBreakpointsDepricated/useBreakpointsDepricated.js.map +1 -1
- package/__internal__/src/hooks/useChoiceGroup/useChoiceGroup.js.map +1 -1
- package/__internal__/src/hooks/useClickOutside/useClickOutside.js.map +1 -1
- package/__internal__/src/hooks/useComponentBreakpointsDeprecated/index.d.ts +2 -0
- package/__internal__/src/hooks/useComponentBreakpointsDeprecated/index.js +2 -0
- package/__internal__/src/hooks/useComponentBreakpointsDeprecated/index.js.map +1 -0
- package/__internal__/src/hooks/useComponentBreakpointsDeprecated/useComponentBreakpointsDeprecated.d.ts +2 -0
- package/__internal__/src/hooks/useComponentBreakpointsDeprecated/useComponentBreakpointsDeprecated.js +2 -0
- package/__internal__/src/hooks/useComponentBreakpointsDeprecated/useComponentBreakpointsDeprecated.js.map +1 -0
- package/__internal__/src/hooks/useComponentBreakpointsDepricated/index.d.ts +0 -1
- package/__internal__/src/hooks/useComponentBreakpointsDepricated/index.js +1 -1
- package/__internal__/src/hooks/useComponentBreakpointsDepricated/index.js.map +1 -1
- package/__internal__/src/hooks/useComponentBreakpointsDepricated/useComponentBreakpointsDepricated.d.ts +1 -2
- package/__internal__/src/hooks/useComponentBreakpointsDepricated/useComponentBreakpointsDepricated.js +1 -1
- package/__internal__/src/hooks/useComponentBreakpointsDepricated/useComponentBreakpointsDepricated.js.map +1 -1
- package/__internal__/src/hooks/useHideElementsInLineDeprecated/index.d.ts +1 -0
- package/__internal__/src/hooks/useHideElementsInLineDeprecated/index.js +2 -0
- package/__internal__/src/hooks/useHideElementsInLineDeprecated/index.js.map +1 -0
- package/__internal__/src/hooks/useHideElementsInLineDeprecated/useHideElementsInLineDeprecated.d.ts +10 -0
- package/__internal__/src/hooks/useHideElementsInLineDeprecated/useHideElementsInLineDeprecated.js +2 -0
- package/__internal__/src/hooks/useHideElementsInLineDeprecated/useHideElementsInLineDeprecated.js.map +1 -0
- package/__internal__/src/hooks/useHideElementsInLineDepricated/index.js.map +1 -1
- package/__internal__/src/hooks/useHideElementsInLineDepricated/useHideElementsInLineDepricated.d.ts +1 -10
- package/__internal__/src/hooks/useHideElementsInLineDepricated/useHideElementsInLineDepricated.js +1 -1
- package/__internal__/src/hooks/useHideElementsInLineDepricated/useHideElementsInLineDepricated.js.map +1 -1
- package/__internal__/src/hooks/useKeysDeprecated/index.d.ts +1 -0
- package/__internal__/src/hooks/useKeysDeprecated/index.js +2 -0
- package/__internal__/src/hooks/useKeysDeprecated/index.js.map +1 -0
- package/__internal__/src/hooks/useKeysDeprecated/useKeysDeprecated.d.ts +18 -0
- package/__internal__/src/hooks/useKeysDeprecated/useKeysDeprecated.js +2 -0
- package/__internal__/src/hooks/useKeysDeprecated/useKeysDeprecated.js.map +1 -0
- package/__internal__/src/hooks/useKeysDepricated/index.js.map +1 -1
- package/__internal__/src/hooks/useKeysDepricated/useKeysDepricated.d.ts +1 -18
- package/__internal__/src/hooks/useKeysDepricated/useKeysDepricated.js +1 -1
- package/__internal__/src/hooks/useKeysDepricated/useKeysDepricated.js.map +1 -1
- package/__internal__/src/hooks/useResizableContent/helpers.d.ts +1 -1
- package/__internal__/src/hooks/useResizableContent/helpers.js +1 -1
- package/__internal__/src/hooks/useResizableContent/helpers.js.map +1 -1
- package/__internal__/src/hooks/useResizableContent/useResizableContent.js +1 -1
- package/__internal__/src/hooks/useResizableContent/useResizableContent.js.map +1 -1
- package/__internal__/src/hooks/useSelect/useSelect.d.ts +1 -1
- package/__internal__/src/hooks/useSelect/useSelect.js +1 -1
- package/__internal__/src/hooks/useSelect/useSelect.js.map +1 -1
- package/__internal__/src/hooks/useVirtualScroll/helpers.js +2 -0
- package/__internal__/src/hooks/useVirtualScroll/helpers.js.map +1 -0
- package/__internal__/src/hooks/useVirtualScroll/useVirtualScroll.d.ts +1 -1
- package/__internal__/src/hooks/useVirtualScroll/useVirtualScroll.js +1 -1
- package/__internal__/src/hooks/useVirtualScroll/useVirtualScroll.js.map +1 -1
- package/__internal__/src/mixs/MixPopoverAnimate/MixPopoverAnimate.css +1 -1
- package/__internal__/src/uiKit/components/ThemePreview/ThemePreview.js +1 -1
- package/__internal__/src/uiKit/components/ThemePreview/ThemePreview.js.map +1 -1
- package/__internal__/src/uiKit/components/ThemePreview/helpers.d.ts +4 -4
- package/__internal__/src/uiKit/components/ThemePreview/helpers.js +1 -1
- package/__internal__/src/uiKit/components/ThemePreview/helpers.js.map +1 -1
- package/__internal__/src/utils/date/index.d.ts +1 -1
- package/__internal__/src/utils/date/index.js +1 -1
- package/__internal__/src/utils/date/index.js.map +1 -1
- package/__internal__/src/utils/date/isDisableDate.js +1 -1
- package/__internal__/src/utils/date/isDisableDate.js.map +1 -1
- package/__internal__/src/utils/date/{isInMinMaxDade.js → isInMinMaxDate.js} +1 -1
- package/__internal__/src/utils/date/{isInMinMaxDade.js.map → isInMinMaxDate.js.map} +1 -1
- package/__internal__/src/utils/getGroups.d.ts +3 -3
- package/__internal__/src/utils/getGroups.js +1 -1
- package/__internal__/src/utils/getGroups.js.map +1 -1
- package/__internal__/src/utils/types/AutoComplete.js.map +1 -1
- package/__internal__/src/utils/types/KeyCode.d.ts +3 -3
- package/__internal__/src/utils/types/KeyCode.js.map +1 -1
- package/package.json +1 -1
- package/useBreakpointsDeprecated/index.d.ts +1 -0
- package/useBreakpointsDeprecated/index.js +1 -0
- package/useComponentBreakpointsDeprecated/index.d.ts +1 -0
- package/useComponentBreakpointsDeprecated/index.js +1 -0
- package/useHideElementsInLineDeprecated/index.d.ts +1 -0
- package/useHideElementsInLineDeprecated/index.js +1 -0
- package/useKeysDeprecated/index.d.ts +1 -0
- package/useKeysDeprecated/index.js +1 -0
- package/__internal__/src/components/DragNDropFieldCanary/renderCildren.d.ts +0 -3
- package/__internal__/src/components/DragNDropFieldCanary/renderCildren.js +0 -2
- package/__internal__/src/components/DragNDropFieldCanary/renderCildren.js.map +0 -1
- package/__internal__/src/components/ListCanary/ListBox/mapVerticalSpase.js +0 -2
- package/__internal__/src/components/ListCanary/ListBox/mapVerticalSpase.js.map +0 -1
- package/__internal__/src/components/TextFieldCanary/TextField.js.map +0 -1
- package/__internal__/src/hooks/useVirtualScroll/hellpers.js +0 -2
- package/__internal__/src/hooks/useVirtualScroll/hellpers.js.map +0 -1
- package/__internal__/src/uiKit/components/StoryBookExample/StoryBookExample.css +0 -1
- package/__internal__/src/uiKit/components/StoryBookExample/StoryBookExample.d.ts +0 -6
- package/__internal__/src/uiKit/components/StoryBookExample/StoryBookExample.js +0 -2
- package/__internal__/src/uiKit/components/StoryBookExample/StoryBookExample.js.map +0 -1
- /package/__internal__/src/components/TextFieldCanary/{TextField.d.ts → TextFieldCanary.d.ts} +0 -0
- /package/__internal__/src/hooks/{useBreakpointsDepricated → useBreakpointsDeprecated}/addPrefix.d.ts +0 -0
- /package/__internal__/src/hooks/{useBreakpointsDepricated → useBreakpointsDeprecated}/addPrefix.js +0 -0
- /package/__internal__/src/hooks/{useBreakpointsDepricated → useBreakpointsDeprecated}/getLastPoint.d.ts +0 -0
- /package/__internal__/src/hooks/{useBreakpointsDepricated → useBreakpointsDeprecated}/getLastPoint.js +0 -0
- /package/__internal__/src/hooks/{useBreakpointsDepricated → useBreakpointsDeprecated}/mapping.d.ts +0 -0
- /package/__internal__/src/hooks/{useBreakpointsDepricated → useBreakpointsDeprecated}/mapping.js +0 -0
- /package/__internal__/src/hooks/{useBreakpointsDepricated → useBreakpointsDeprecated}/types.d.ts +0 -0
- /package/__internal__/src/hooks/{useBreakpointsDepricated → useBreakpointsDeprecated}/types.js +0 -0
- /package/__internal__/src/hooks/useVirtualScroll/{hellpers.d.ts → helpers.d.ts} +0 -0
- /package/__internal__/src/utils/date/{isInMinMaxDade.d.ts → isInMinMaxDate.d.ts} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["placeholder","onBlur","onFocus","items","onChange","value","disabled","ariaLabel","id","required","dropdownRef","form","view","size","dropdownClassName","name","groups","getItemLabel","getItemKey","getItemGroupKey","getItemDisabled","getGroupKey","getGroupLabel","renderItem","searchValue","renderValue","onCreate","inputRef","labelForNotFound","labelForCreate","labelForEmptyItems","onInputChange","searchFunction","selectAll","isLoading","multiple","style","dropdownForm"];import"../SelectComponentsDeprecated/Select.css";import{IconClear}from"@consta/icons/IconClear";import{IconSelect}from"@consta/icons/IconSelect";import React,{forwardRef,useRef}from"react";import{isNotNil}from"../../utils/type-guards";import{useForkRef}from"../../hooks/useForkRef/useForkRef";import{useSelect}from"../../hooks/useSelect/useSelect";import{cnMixFocus}from"../../mixs/MixFocus/MixFocus";import{usePropsHandler}from"../EventInterceptor/usePropsHandler";import{cnSelect}from"../SelectComponentsDeprecated/cnSelect";import{
|
|
1
|
+
import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["placeholder","onBlur","onFocus","items","onChange","value","disabled","ariaLabel","id","required","dropdownRef","form","view","size","dropdownClassName","name","groups","getItemLabel","getItemKey","getItemGroupKey","getItemDisabled","getGroupKey","getGroupLabel","renderItem","searchValue","renderValue","onCreate","inputRef","labelForNotFound","labelForCreate","labelForEmptyItems","onInputChange","searchFunction","selectAll","isLoading","multiple","style","dropdownForm"];import"../SelectComponentsDeprecated/Select.css";import{IconClear}from"@consta/icons/IconClear";import{IconSelect}from"@consta/icons/IconSelect";import React,{forwardRef,useRef}from"react";import{isNotNil}from"../../utils/type-guards";import{useForkRef}from"../../hooks/useForkRef/useForkRef";import{useSelect}from"../../hooks/useSelect/useSelect";import{cnMixFocus}from"../../mixs/MixFocus/MixFocus";import{usePropsHandler}from"../EventInterceptor/usePropsHandler";import{cnSelect}from"../SelectComponentsDeprecated/cnSelect";import{defaultLabelForCreate,defaultLabelForEmptyItems,defaultLabelForNotFound,getInputWidth}from"../SelectComponentsDeprecated/helpers";import{SelectContainer}from"../SelectComponentsDeprecated/SelectContainer/SelectContainer";import{SelectDropdown}from"../SelectComponentsDeprecated/SelectDropdown/SelectDropdown";import{SelectItem}from"../SelectComponentsDeprecated/SelectItem/SelectItem";import{SelectValueTag}from"../SelectComponentsDeprecated/SelectValueTag/SelectValueTag";import{defaultPropForm,defaultPropSize,defaultPropView}from"../SelectComponentsDeprecated/types";import{clearSizeMap,iconSizeMap,isMultipleParams,isNotMultipleParams,withDefaultGetters}from"./helpers";export var COMPONENT_NAME="Combobox";var ComboboxRender=function(a,b){var c=useRef(null),d=useRef(null),e=useRef(null),f=useRef(null),g=usePropsHandler(COMPONENT_NAME,withDefaultGetters(a),f),h=g.placeholder,i=g.onBlur,j=g.onFocus,k=g.items,l=g.onChange,m=g.value,n=g.disabled,o=g.ariaLabel,p=g.id,q=g.required,r=g.dropdownRef,s=g.form,t=void 0===s?defaultPropForm:s,u=g.view,v=void 0===u?defaultPropView:u,w=g.size,x=void 0===w?defaultPropSize:w,y=g.dropdownClassName,z=g.name,A=g.groups,B=void 0===A?[]:A,C=g.getItemLabel,D=g.getItemKey,E=g.getItemGroupKey,F=g.getItemDisabled,G=g.getGroupKey,H=g.getGroupLabel,I=g.renderItem,J=g.searchValue,K=g.renderValue,L=g.onCreate,M=g.inputRef,N=g.labelForNotFound,O=void 0===N?defaultLabelForNotFound:N,P=g.labelForCreate,Q=void 0===P?defaultLabelForCreate:P,R=g.labelForEmptyItems,S=void 0===R?defaultLabelForEmptyItems:R,T=g.onInputChange,U=g.searchFunction,V=g.selectAll,W=g.isLoading,X=g.multiple,Y=void 0!==X&&X,Z=g.style,$=g.dropdownForm,_=void 0===$?"default":$,aa=_objectWithoutProperties(g,_excluded),ba=useSelect({items:k,groups:B,value:m,onChange:l,selectAll:V,dropdownRef:c,controlRef:f,disabled:n,getItemLabel:C,getItemKey:D,getGroupKey:G,searchValue:J,getItemGroupKey:E,getItemDisabled:F,multiple:Y,onBlur:i,onFocus:j,onCreate:L,searchFunction:U}),ca=ba.getKeyProps,da=ba.getOptionProps,ea=ba.isOpen,fa=ba.visibleItems,ga=ba.isFocused,ha=ba.handleInputFocus,ia=ba.handleInputBlur,ja=ba.handleToggleDropdown,ka=ba.inputRef,la=ba.handleInputClick,ma=ba.handleInputChange,na=ba.searchValue,oa=ba.clearValue,pa=ba.getHandleRemoveValue,qa=ba.notFound,ra=ba.hasItems,sa=p?"".concat(p,"-input"):p,ta=K||(Y?function renderValueDefaultMultiple(a){var b=a.item,c=a.handleRemove;return React.createElement(SelectValueTag,{label:C(b),key:D(b),size:x,disabled:n||F(b),handleRemove:c})}:function renderValueDefaultNotMultiple(a){var b=C(a.item);return React.createElement("span",{className:cnSelect("ControlValue"),title:b},b)}),ua=useForkRef([ka,M]),va=function(a){ma(a);var b=a.target.value;n||(null===T||void 0===T?void 0:T(b||null,{e:a,id:p,name:z}))},wa=function(){var b=Y?getInputWidth(d,e):void 0;return React.createElement(React.Fragment,null,isMultipleParams(a)&&Array.isArray(a.value)&&a.value.map(function(a){return ta({item:a,handleRemove:pa(a)})}),isNotMultipleParams(a)&&isNotNil(a.value)&&ta({item:a.value}),(!isNotNil(m)||Array.isArray(m)&&0===m.length)&&!na&&h&&React.createElement("span",{className:cnSelect("Placeholder"),title:"placeholder"},h),React.createElement("input",Object.assign({},ca(),{type:"text",name:z,id:sa,onFocus:ha,onBlur:ia,"aria-label":o,onChange:va,ref:ua,className:cnSelect("Input",{size:x,hide:!Y&&isNotNil(m),multiple:Y}),value:na,style:{width:b}})))};return React.createElement(React.Fragment,null,React.createElement(SelectContainer,Object.assign({focused:ga,disabled:n,size:x,view:v,required:q,form:t,multiple:Y,ref:b,type:"combobox",style:Z,id:sa},aa),React.createElement("div",{className:cnSelect("Control",{hasInput:!0}),ref:f,"aria-expanded":ea,"aria-haspopup":"listbox",id:p},React.createElement("div",{className:cnSelect("ControlInner"),onClick:la,role:"button",ref:d,"aria-hidden":"true"},React.createElement("div",{className:cnSelect("ControlValueContainer")},Y?React.createElement("div",{className:cnSelect("ControlValue")},wa()):wa())),React.createElement("span",{className:cnSelect("Indicators")},isNotNil(m)&&React.createElement("button",{type:"button",onClick:oa,className:cnSelect("ClearIndicator",[cnMixFocus()])},React.createElement(IconClear,{size:clearSizeMap[x],className:cnSelect("ClearIndicatorIcon")})),React.createElement("span",{className:cnSelect("Delimiter")}),React.createElement("button",{type:"button",className:cnSelect("IndicatorsDropdown"),tabIndex:-1,onClick:ja},React.createElement(IconSelect,{size:iconSizeMap[x],className:cnSelect("DropdownIndicatorIcon")})))),React.createElement("div",{className:cnSelect("HelperInputFakeElement"),ref:e},na)),React.createElement(SelectDropdown,{isOpen:ea,size:x,controlRef:f,getOptionProps:da,dropdownRef:useForkRef([r,c]),form:_,className:y,renderItem:I||function renderItemDefault(a){var b=a.item,c=a.active,d=a.hovered,e=a.onClick,f=a.onMouseEnter;return React.createElement(SelectItem,{label:C(b),active:c,hovered:d,multiple:Y,size:x,indent:"round"===_?"increased":"normal",onClick:e,onMouseEnter:f,disabled:F(b)})},getGroupLabel:H,visibleItems:fa,labelForNotFound:O,labelForCreate:Q,isLoading:W,labelForEmptyItems:S,notFound:qa,hasItems:ra,style:"number"==typeof(null===Z||void 0===Z?void 0:Z.zIndex)?{zIndex:Z.zIndex+1}:void 0}))};export var Combobox=forwardRef(ComboboxRender);export*from"./helpers";
|
|
2
2
|
//# sourceMappingURL=ComboboxDeprecated.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComboboxDeprecated.js","names":["IconClear","IconSelect","React","forwardRef","useRef","isNotNil","useForkRef","useSelect","cnMixFocus","usePropsHandler","cnSelect","defaultlabelForCreate","defaultLabelForEmptyItems","defaultlabelForNotFound","getInputWidth","SelectContainer","SelectDropdown","SelectItem","SelectValueTag","defaultPropForm","defaultPropSize","defaultPropView","clearSizeMap","iconSizeMap","isMultipleParams","isNotMultipleParams","withDefaultGetters","COMPONENT_NAME","ComboboxRender","props","ref","defaultDropdownRef","controlInnerRef","helperInputFakeElement","controlRef","placeholder","onBlur","onFocus","items","onChange","value","disabled","ariaLabel","id","required","dropdownRef","form","view","size","dropdownClassName","name","groups","getItemLabel","getItemKey","getItemGroupKey","getItemDisabled","getGroupKey","getGroupLabel","renderItem","searchValueProp","searchValue","renderValueProp","renderValue","onCreate","inputRefProp","inputRef","labelForNotFound","labelForCreate","labelForEmptyItems","onInputChange","searchFunction","selectAll","isLoading","multiple","style","dropdownForm","otherProps","getKeyProps","getOptionProps","isOpen","visibleItems","isFocused","handleInputFocus","handleInputBlur","handleToggleDropdown","handleInputClick","handleInputChange","clearValue","getHandleRemoveValue","notFound","hasItems","inputId","renderValueDefaultMultiple","item","handleRemove","renderValueDefaultNotMultiple","valueLable","inputRefForRender","handleChangeValue","e","target","renderControlValue","width","Array","isArray","map","length","hide","hasInput","renderItemDefault","active","hovered","onClick","onMouseEnter","zIndex","Combobox"],"sources":["../../../../../src/components/ComboboxDeprecated/ComboboxDeprecated.tsx"],"sourcesContent":["import '../SelectComponentsDeprecated/Select.css';\n\nimport { IconClear } from '@consta/icons/IconClear';\nimport { IconSelect } from '@consta/icons/IconSelect';\nimport React, { forwardRef, useRef } from 'react';\n\nimport { isNotNil } from '##/utils/type-guards';\n\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { useSelect } from '../../hooks/useSelect/useSelect';\nimport { cnMixFocus } from '../../mixs/MixFocus/MixFocus';\nimport { usePropsHandler } from '../EventInterceptor/usePropsHandler';\nimport { cnSelect } from '../SelectComponentsDeprecated/cnSelect';\nimport {\n defaultlabelForCreate,\n defaultLabelForEmptyItems,\n defaultlabelForNotFound,\n getInputWidth,\n} from '../SelectComponentsDeprecated/helpers';\nimport { SelectContainer } from '../SelectComponentsDeprecated/SelectContainer/SelectContainer';\nimport { SelectDropdown } from '../SelectComponentsDeprecated/SelectDropdown/SelectDropdown';\nimport { SelectItem } from '../SelectComponentsDeprecated/SelectItem/SelectItem';\nimport { SelectValueTag } from '../SelectComponentsDeprecated/SelectValueTag/SelectValueTag';\nimport {\n defaultPropForm,\n defaultPropSize,\n defaultPropView,\n} from '../SelectComponentsDeprecated/types';\nimport {\n clearSizeMap,\n ComboboxComponent,\n ComboboxProps,\n DefaultGroup,\n DefaultItem,\n iconSizeMap,\n isMultipleParams,\n isNotMultipleParams,\n PropRenderItem,\n PropRenderValue,\n withDefaultGetters,\n} from './helpers';\n\nexport const COMPONENT_NAME = 'Combobox' as const;\n\nconst ComboboxRender = <\n ITEM = DefaultItem,\n GROUP = DefaultGroup,\n MULTIPLE extends boolean = false,\n>(\n props: ComboboxProps<ITEM, GROUP, MULTIPLE>,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const defaultDropdownRef = useRef<HTMLDivElement | null>(null);\n const controlInnerRef = useRef<HTMLDivElement>(null);\n const helperInputFakeElement = 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 disabled,\n ariaLabel,\n id,\n required,\n dropdownRef,\n form = defaultPropForm,\n view = defaultPropView,\n size = defaultPropSize,\n dropdownClassName,\n name,\n groups = [],\n getItemLabel,\n getItemKey,\n getItemGroupKey,\n getItemDisabled,\n getGroupKey,\n getGroupLabel,\n renderItem,\n searchValue: searchValueProp,\n renderValue: renderValueProp,\n onCreate,\n inputRef: inputRefProp,\n labelForNotFound = defaultlabelForNotFound,\n labelForCreate = defaultlabelForCreate,\n labelForEmptyItems = defaultLabelForEmptyItems,\n onInputChange,\n searchFunction,\n selectAll,\n isLoading,\n multiple = false,\n style,\n dropdownForm = 'default',\n ...otherProps\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 handleInputChange,\n searchValue,\n clearValue,\n getHandleRemoveValue,\n notFound,\n hasItems,\n } = useSelect({\n items,\n groups,\n value,\n onChange,\n selectAll,\n dropdownRef: defaultDropdownRef,\n controlRef,\n disabled,\n getItemLabel,\n getItemKey,\n getGroupKey,\n searchValue: searchValueProp,\n getItemGroupKey,\n getItemDisabled,\n multiple,\n onBlur,\n onFocus,\n onCreate,\n searchFunction,\n });\n\n const inputId = id ? `${id}-input` : id;\n\n const renderItemDefault: PropRenderItem<ITEM> = (props) => {\n const { item, active, hovered, onClick, onMouseEnter } = props;\n\n return (\n <SelectItem\n label={getItemLabel(item)}\n active={active}\n hovered={hovered}\n multiple={multiple}\n size={size}\n indent={dropdownForm === 'round' ? 'increased' : 'normal'}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n disabled={getItemDisabled(item)}\n />\n );\n };\n\n const renderValueDefaultMultiple: PropRenderValue<ITEM> = ({\n item,\n handleRemove,\n }) => {\n return (\n <SelectValueTag\n label={getItemLabel(item)}\n key={getItemKey(item)}\n size={size}\n disabled={disabled || getItemDisabled(item)}\n handleRemove={handleRemove}\n />\n );\n };\n\n const renderValueDefaultNotMultiple: PropRenderValue<ITEM> = (props) => {\n const valueLable = getItemLabel(props.item);\n\n return (\n <span className={cnSelect('ControlValue')} title={valueLable}>\n {valueLable}\n </span>\n );\n };\n\n const renderValue =\n renderValueProp ||\n (multiple ? renderValueDefaultMultiple : renderValueDefaultNotMultiple);\n\n const inputRefForRender = useForkRef([inputRef, inputRefProp]);\n\n const handleChangeValue = (e: React.ChangeEvent<HTMLInputElement>) => {\n handleInputChange(e);\n const { value } = e.target;\n !disabled && onInputChange?.(value || null, { e, id, name });\n };\n\n const renderControlValue = () => {\n const width = multiple\n ? getInputWidth(controlInnerRef, helperInputFakeElement)\n : undefined;\n return (\n <>\n {isMultipleParams(props) &&\n Array.isArray(props.value) &&\n props.value.map((item) =>\n renderValue({ item, handleRemove: getHandleRemoveValue(item) }),\n )}\n {isNotMultipleParams(props) &&\n isNotNil(props.value) &&\n renderValue({ item: props.value })}\n {(!isNotNil(value) || (Array.isArray(value) && value.length === 0)) &&\n !searchValue &&\n placeholder && (\n <span className={cnSelect('Placeholder')} title=\"placeholder\">\n {placeholder}\n </span>\n )}\n <input\n {...getKeyProps()}\n type=\"text\"\n name={name}\n id={inputId}\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n aria-label={ariaLabel}\n onChange={handleChangeValue}\n ref={inputRefForRender}\n className={cnSelect('Input', {\n size,\n hide: !multiple && isNotNil(value),\n multiple,\n })}\n value={searchValue}\n style={{ width }}\n />\n </>\n );\n };\n\n return (\n <>\n <SelectContainer\n focused={isFocused}\n disabled={disabled}\n size={size}\n view={view}\n required={required}\n form={form}\n multiple={multiple}\n ref={ref}\n type=\"combobox\"\n style={style}\n id={inputId}\n {...otherProps}\n >\n <div\n className={cnSelect('Control', { hasInput: true })}\n ref={controlRef}\n aria-expanded={isOpen}\n aria-haspopup=\"listbox\"\n id={id}\n >\n <div\n className={cnSelect('ControlInner')}\n onClick={handleInputClick}\n role=\"button\"\n ref={controlInnerRef}\n aria-hidden=\"true\"\n >\n <div className={cnSelect('ControlValueContainer')}>\n {multiple ? (\n <div className={cnSelect('ControlValue')}>\n {renderControlValue()}\n </div>\n ) : (\n renderControlValue()\n )}\n </div>\n </div>\n <span className={cnSelect('Indicators')}>\n {isNotNil(value) && (\n <button\n type=\"button\"\n onClick={clearValue}\n className={cnSelect('ClearIndicator', [cnMixFocus()])}\n >\n <IconClear\n size={clearSizeMap[size]}\n className={cnSelect('ClearIndicatorIcon')}\n />\n </button>\n )}\n <span className={cnSelect('Delimiter')} />\n <button\n type=\"button\"\n className={cnSelect('IndicatorsDropdown')}\n tabIndex={-1}\n onClick={handleToggleDropdown}\n >\n <IconSelect\n size={iconSizeMap[size]}\n className={cnSelect('DropdownIndicatorIcon')}\n />\n </button>\n </span>\n </div>\n <div\n className={cnSelect('HelperInputFakeElement')}\n ref={helperInputFakeElement}\n >\n {searchValue}\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 labelForNotFound={labelForNotFound}\n labelForCreate={labelForCreate}\n isLoading={isLoading}\n labelForEmptyItems={labelForEmptyItems}\n notFound={notFound}\n hasItems={hasItems}\n style={\n typeof style?.zIndex === 'number'\n ? { zIndex: style.zIndex + 1 }\n : undefined\n }\n />\n </>\n );\n};\n\nexport const Combobox = forwardRef(ComboboxRender) as ComboboxComponent;\n\nexport * from './helpers';\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ComboboxDeprecated.js","names":["IconClear","IconSelect","React","forwardRef","useRef","isNotNil","useForkRef","useSelect","cnMixFocus","usePropsHandler","cnSelect","defaultLabelForCreate","defaultLabelForEmptyItems","defaultLabelForNotFound","getInputWidth","SelectContainer","SelectDropdown","SelectItem","SelectValueTag","defaultPropForm","defaultPropSize","defaultPropView","clearSizeMap","iconSizeMap","isMultipleParams","isNotMultipleParams","withDefaultGetters","COMPONENT_NAME","ComboboxRender","props","ref","defaultDropdownRef","controlInnerRef","helperInputFakeElement","controlRef","placeholder","onBlur","onFocus","items","onChange","value","disabled","ariaLabel","id","required","dropdownRef","form","view","size","dropdownClassName","name","groups","getItemLabel","getItemKey","getItemGroupKey","getItemDisabled","getGroupKey","getGroupLabel","renderItem","searchValueProp","searchValue","renderValueProp","renderValue","onCreate","inputRefProp","inputRef","labelForNotFound","labelForCreate","labelForEmptyItems","onInputChange","searchFunction","selectAll","isLoading","multiple","style","dropdownForm","otherProps","getKeyProps","getOptionProps","isOpen","visibleItems","isFocused","handleInputFocus","handleInputBlur","handleToggleDropdown","handleInputClick","handleInputChange","clearValue","getHandleRemoveValue","notFound","hasItems","inputId","renderValueDefaultMultiple","item","handleRemove","renderValueDefaultNotMultiple","valueLabel","inputRefForRender","handleChangeValue","e","target","renderControlValue","width","Array","isArray","map","length","hide","hasInput","renderItemDefault","active","hovered","onClick","onMouseEnter","zIndex","Combobox"],"sources":["../../../../../src/components/ComboboxDeprecated/ComboboxDeprecated.tsx"],"sourcesContent":["import '../SelectComponentsDeprecated/Select.css';\n\nimport { IconClear } from '@consta/icons/IconClear';\nimport { IconSelect } from '@consta/icons/IconSelect';\nimport React, { forwardRef, useRef } from 'react';\n\nimport { isNotNil } from '##/utils/type-guards';\n\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { useSelect } from '../../hooks/useSelect/useSelect';\nimport { cnMixFocus } from '../../mixs/MixFocus/MixFocus';\nimport { usePropsHandler } from '../EventInterceptor/usePropsHandler';\nimport { cnSelect } from '../SelectComponentsDeprecated/cnSelect';\nimport {\n defaultLabelForCreate,\n defaultLabelForEmptyItems,\n defaultLabelForNotFound,\n getInputWidth,\n} from '../SelectComponentsDeprecated/helpers';\nimport { SelectContainer } from '../SelectComponentsDeprecated/SelectContainer/SelectContainer';\nimport { SelectDropdown } from '../SelectComponentsDeprecated/SelectDropdown/SelectDropdown';\nimport { SelectItem } from '../SelectComponentsDeprecated/SelectItem/SelectItem';\nimport { SelectValueTag } from '../SelectComponentsDeprecated/SelectValueTag/SelectValueTag';\nimport {\n defaultPropForm,\n defaultPropSize,\n defaultPropView,\n} from '../SelectComponentsDeprecated/types';\nimport {\n clearSizeMap,\n ComboboxComponent,\n ComboboxProps,\n DefaultGroup,\n DefaultItem,\n iconSizeMap,\n isMultipleParams,\n isNotMultipleParams,\n PropRenderItem,\n PropRenderValue,\n withDefaultGetters,\n} from './helpers';\n\nexport const COMPONENT_NAME = 'Combobox' as const;\n\nconst ComboboxRender = <\n ITEM = DefaultItem,\n GROUP = DefaultGroup,\n MULTIPLE extends boolean = false,\n>(\n props: ComboboxProps<ITEM, GROUP, MULTIPLE>,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const defaultDropdownRef = useRef<HTMLDivElement | null>(null);\n const controlInnerRef = useRef<HTMLDivElement>(null);\n const helperInputFakeElement = 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 disabled,\n ariaLabel,\n id,\n required,\n dropdownRef,\n form = defaultPropForm,\n view = defaultPropView,\n size = defaultPropSize,\n dropdownClassName,\n name,\n groups = [],\n getItemLabel,\n getItemKey,\n getItemGroupKey,\n getItemDisabled,\n getGroupKey,\n getGroupLabel,\n renderItem,\n searchValue: searchValueProp,\n renderValue: renderValueProp,\n onCreate,\n inputRef: inputRefProp,\n labelForNotFound = defaultLabelForNotFound,\n labelForCreate = defaultLabelForCreate,\n labelForEmptyItems = defaultLabelForEmptyItems,\n onInputChange,\n searchFunction,\n selectAll,\n isLoading,\n multiple = false,\n style,\n dropdownForm = 'default',\n ...otherProps\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 handleInputChange,\n searchValue,\n clearValue,\n getHandleRemoveValue,\n notFound,\n hasItems,\n } = useSelect({\n items,\n groups,\n value,\n onChange,\n selectAll,\n dropdownRef: defaultDropdownRef,\n controlRef,\n disabled,\n getItemLabel,\n getItemKey,\n getGroupKey,\n searchValue: searchValueProp,\n getItemGroupKey,\n getItemDisabled,\n multiple,\n onBlur,\n onFocus,\n onCreate,\n searchFunction,\n });\n\n const inputId = id ? `${id}-input` : id;\n\n const renderItemDefault: PropRenderItem<ITEM> = (props) => {\n const { item, active, hovered, onClick, onMouseEnter } = props;\n\n return (\n <SelectItem\n label={getItemLabel(item)}\n active={active}\n hovered={hovered}\n multiple={multiple}\n size={size}\n indent={dropdownForm === 'round' ? 'increased' : 'normal'}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n disabled={getItemDisabled(item)}\n />\n );\n };\n\n const renderValueDefaultMultiple: PropRenderValue<ITEM> = ({\n item,\n handleRemove,\n }) => {\n return (\n <SelectValueTag\n label={getItemLabel(item)}\n key={getItemKey(item)}\n size={size}\n disabled={disabled || getItemDisabled(item)}\n handleRemove={handleRemove}\n />\n );\n };\n\n const renderValueDefaultNotMultiple: PropRenderValue<ITEM> = (props) => {\n const valueLabel = getItemLabel(props.item);\n\n return (\n <span className={cnSelect('ControlValue')} title={valueLabel}>\n {valueLabel}\n </span>\n );\n };\n\n const renderValue =\n renderValueProp ||\n (multiple ? renderValueDefaultMultiple : renderValueDefaultNotMultiple);\n\n const inputRefForRender = useForkRef([inputRef, inputRefProp]);\n\n const handleChangeValue = (e: React.ChangeEvent<HTMLInputElement>) => {\n handleInputChange(e);\n const { value } = e.target;\n !disabled && onInputChange?.(value || null, { e, id, name });\n };\n\n const renderControlValue = () => {\n const width = multiple\n ? getInputWidth(controlInnerRef, helperInputFakeElement)\n : undefined;\n return (\n <>\n {isMultipleParams(props) &&\n Array.isArray(props.value) &&\n props.value.map((item) =>\n renderValue({ item, handleRemove: getHandleRemoveValue(item) }),\n )}\n {isNotMultipleParams(props) &&\n isNotNil(props.value) &&\n renderValue({ item: props.value })}\n {(!isNotNil(value) || (Array.isArray(value) && value.length === 0)) &&\n !searchValue &&\n placeholder && (\n <span className={cnSelect('Placeholder')} title=\"placeholder\">\n {placeholder}\n </span>\n )}\n <input\n {...getKeyProps()}\n type=\"text\"\n name={name}\n id={inputId}\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n aria-label={ariaLabel}\n onChange={handleChangeValue}\n ref={inputRefForRender}\n className={cnSelect('Input', {\n size,\n hide: !multiple && isNotNil(value),\n multiple,\n })}\n value={searchValue}\n style={{ width }}\n />\n </>\n );\n };\n\n return (\n <>\n <SelectContainer\n focused={isFocused}\n disabled={disabled}\n size={size}\n view={view}\n required={required}\n form={form}\n multiple={multiple}\n ref={ref}\n type=\"combobox\"\n style={style}\n id={inputId}\n {...otherProps}\n >\n <div\n className={cnSelect('Control', { hasInput: true })}\n ref={controlRef}\n aria-expanded={isOpen}\n aria-haspopup=\"listbox\"\n id={id}\n >\n <div\n className={cnSelect('ControlInner')}\n onClick={handleInputClick}\n role=\"button\"\n ref={controlInnerRef}\n aria-hidden=\"true\"\n >\n <div className={cnSelect('ControlValueContainer')}>\n {multiple ? (\n <div className={cnSelect('ControlValue')}>\n {renderControlValue()}\n </div>\n ) : (\n renderControlValue()\n )}\n </div>\n </div>\n <span className={cnSelect('Indicators')}>\n {isNotNil(value) && (\n <button\n type=\"button\"\n onClick={clearValue}\n className={cnSelect('ClearIndicator', [cnMixFocus()])}\n >\n <IconClear\n size={clearSizeMap[size]}\n className={cnSelect('ClearIndicatorIcon')}\n />\n </button>\n )}\n <span className={cnSelect('Delimiter')} />\n <button\n type=\"button\"\n className={cnSelect('IndicatorsDropdown')}\n tabIndex={-1}\n onClick={handleToggleDropdown}\n >\n <IconSelect\n size={iconSizeMap[size]}\n className={cnSelect('DropdownIndicatorIcon')}\n />\n </button>\n </span>\n </div>\n <div\n className={cnSelect('HelperInputFakeElement')}\n ref={helperInputFakeElement}\n >\n {searchValue}\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 labelForNotFound={labelForNotFound}\n labelForCreate={labelForCreate}\n isLoading={isLoading}\n labelForEmptyItems={labelForEmptyItems}\n notFound={notFound}\n hasItems={hasItems}\n style={\n typeof style?.zIndex === 'number'\n ? { zIndex: style.zIndex + 1 }\n : undefined\n }\n />\n </>\n );\n};\n\nexport const Combobox = forwardRef(ComboboxRender) as ComboboxComponent;\n\nexport * from './helpers';\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _defineProperty from"@babel/runtime/helpers/defineProperty";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["size","items","groups","className","form","animate","levelDepth","activeLevelDepth","activeItem","addLevel","deleteLevel","setHoveredParenLevel","hoveredParenLevel","sortGroup","onItemClick","onEsc","isOpen","parent","isMobile","direction","possibleDirections","offset","onSetDirection","spareDirection","anchorRef","getItemLabel","getItemRightSide","getItemLeftSide","getItemSubMenu","getItemStatus","getItemDisabled","getItemKey","getItemOnClick","getItemAs","getItemAttributes","getItemGroupId","getItemLeftIcon","getItemRightIcon","getGroupLabel","getGroupId"];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}function _createForOfIteratorHelper(a,b){var c="undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(!c){if(Array.isArray(a)||(c=_unsupportedIterableToArray(a))||b&&a&&"number"==typeof a.length){c&&(a=c);var d=0,e=function(){};return{s:e,n:function n(){return d>=a.length?{done:!0}:{done:!1,value:a[d++]}},e:function e(a){throw a},f:e}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var f,g=!0,h=!1;return{s:function s(){c=c.call(a)},n:function n(){var a=c.next();return g=a.done,a},e:function e(a){h=!0,f=a},f:function f(){try{g||null==c["return"]||c["return"]()}finally{if(h)throw f}}}}function _unsupportedIterableToArray(a,b){if(a){if("string"==typeof a)return _arrayLikeToArray(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?_arrayLikeToArray(a,b):void 0}}function _arrayLikeToArray(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}import"./ContextMenuLevel.css";import{IconArrowLeft}from"@consta/icons/IconArrowLeft";import{IconArrowRight}from"@consta/icons/IconArrowRight";import React,{forwardRef,useEffect,useMemo}from"react";import{cnListBox,List,ListDivider,ListItem,mapIconSize,
|
|
1
|
+
import _defineProperty from"@babel/runtime/helpers/defineProperty";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["size","items","groups","className","form","animate","levelDepth","activeLevelDepth","activeItem","addLevel","deleteLevel","setHoveredParenLevel","hoveredParenLevel","sortGroup","onItemClick","onEsc","isOpen","parent","isMobile","direction","possibleDirections","offset","onSetDirection","spareDirection","anchorRef","getItemLabel","getItemRightSide","getItemLeftSide","getItemSubMenu","getItemStatus","getItemDisabled","getItemKey","getItemOnClick","getItemAs","getItemAttributes","getItemGroupId","getItemLeftIcon","getItemRightIcon","getGroupLabel","getGroupId"];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}function _createForOfIteratorHelper(a,b){var c="undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(!c){if(Array.isArray(a)||(c=_unsupportedIterableToArray(a))||b&&a&&"number"==typeof a.length){c&&(a=c);var d=0,e=function(){};return{s:e,n:function n(){return d>=a.length?{done:!0}:{done:!1,value:a[d++]}},e:function e(a){throw a},f:e}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var f,g=!0,h=!1;return{s:function s(){c=c.call(a)},n:function n(){var a=c.next();return g=a.done,a},e:function e(a){h=!0,f=a},f:function f(){try{g||null==c["return"]||c["return"]()}finally{if(h)throw f}}}}function _unsupportedIterableToArray(a,b){if(a){if("string"==typeof a)return _arrayLikeToArray(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?_arrayLikeToArray(a,b):void 0}}function _arrayLikeToArray(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}import"./ContextMenuLevel.css";import{IconArrowLeft}from"@consta/icons/IconArrowLeft";import{IconArrowRight}from"@consta/icons/IconArrowRight";import React,{forwardRef,useEffect,useMemo}from"react";import{cnListBox,List,ListDivider,ListItem,mapIconSize,mapVerticalSpace}from"../../ListCanary";import{useFlag}from"../../../hooks/useFlag/useFlag";import{useForkRef}from"../../../hooks/useForkRef";import{cnMixPopoverAnimate}from"../../../mixs/MixPopoverAnimate";import{cnMixSpace}from"../../../mixs/MixSpace";import{cn}from"../../../utils/bem";import{ContextMenuLevelWrapper}from"../ContextMenuLevelWrapper";import{contextMenuDefaultSize}from"../types";import{useMenuNavigation}from"../useMenuNavigation";export var cnContextMenuLevel=cn("ContextMenuLevel");var timers=[];export function clearTimers(){var a,b=_createForOfIteratorHelper(timers);try{for(b.s();!(a=b.n()).done;){var c=a.value;clearTimeout(c)}}catch(a){b.e(a)}finally{b.f()}timers=[]}var closeDelay=300,ContextMenuLevelRender=function(a,b){var c=a.size,d=void 0===c?contextMenuDefaultSize:c,f=a.items,g=a.groups,h=a.className,i=a.form,j=void 0===i?"default":i,k=a.animate,l=a.levelDepth,m=a.activeLevelDepth,n=a.activeItem,o=a.addLevel,p=a.deleteLevel,q=a.setHoveredParenLevel,r=a.hoveredParenLevel,s=a.sortGroup,t=a.onItemClick,u=a.onEsc,v=a.isOpen,w=a.parent,x=a.isMobile,y=a.direction,z=a.possibleDirections,A=a.offset,B=a.onSetDirection,C=a.spareDirection,D=a.anchorRef,E=a.getItemLabel,F=a.getItemRightSide,G=a.getItemLeftSide,H=a.getItemSubMenu,I=a.getItemStatus,J=a.getItemDisabled,K=a.getItemKey,L=a.getItemOnClick,M=a.getItemAs,N=a.getItemAttributes,O=a.getItemGroupId,P=a.getItemLeftIcon,Q=a.getItemRightIcon,R=a.getGroupLabel,S=a.getGroupId,T=_objectWithoutProperties(a,_excluded),U=0===l,V=useFlag(!1),W=_slicedToArray(V,2),X=W[0],Y=W[1],Z=function(a){return(K(a)||E(a)).toString()},$=function(a){var b=H(a),c=J(a);if(Array.isArray(b)&&!c){var d=Z(a);o({level:l+1,items:b,anchorRef:ha[d],activeItem:d,parent:a}),q(l+1)}else q(l)},_=useMenuNavigation({items:f,getItemSubMenu:H,addLevel:$,active:m===l,deleteLevel:function deleteLevel(){return p(l)},onEsc:function handleEscClick(a){var b;null===u||void 0===u?void 0:u(a),null===D||void 0===D||null===(b=D.current)||void 0===b?void 0:b.focus()},level:l,isMobile:x}),aa=_.refs,ba=_.onKeyDown,ca=_.activeIndex,da=_.setActiveIndex,ea=_.setDirection,fa=_.parentRef,ga=_.containerRef,ha=useMemo(function(){return f.map(function(a){return Z(a)}).reduce(function(b,a,c){return _objectSpread(_objectSpread({},b),{},_defineProperty({},a,aa[c]))},{})},[g,aa]),ia=useMemo(function(){var a=f[ca];return a?Z(a):void 0},[f,ca]),ja=x?void 0:function(a){return function(b){var c;$(a);var d=null===(c=N(a))||void 0===c?void 0:c.onMouseEnter;da(f.indexOf(a)),null===d||void 0===d?void 0:d(b)}},ka=L?function(a){return function(b){var c;return null===(c=L(a))||void 0===c?void 0:c(b)}}:void 0;return useEffect(function(){return 0!==l&&!X&&r<l&&(clearTimeout(timers[l]),timers[l]=setTimeout(function(){return p(l)},closeDelay)),function(){return clearTimeout(timers[l])}},[X,r]),useEffect(function(){v||clearTimeout(timers[l])},[v]),React.createElement(ContextMenuLevelWrapper,Object.assign({anchorRef:D,className:x?cnContextMenuLevel("Mobile",{animate:k},[h]):cnContextMenuLevel("Desktop",{firstLevel:U},[cnListBox({size:d,form:j,border:!0,shadow:!0}),cnMixSpace({pV:mapVerticalSpace[d]}),cnMixPopoverAnimate({animate:k}),U?h:void 0]),possibleDirections:z,spareDirection:C,direction:y,offset:A,tabIndex:0,onKeyDown:ba,onSetDirection:function onSetDirection(a){null===B||void 0===B?void 0:B(a),ea(a)},onMouseEnter:Y.on,onMouseLeave:function onMouseLeave(){Y.off(),da(-1)},ref:useForkRef([b,ga]),isMobile:x},T),w&&React.createElement(React.Fragment,null,React.createElement(ListItem,{label:E(w),size:d,tabIndex:0,ref:fa,leftIcon:IconArrowLeft,onClick:function onClick(){return p(l)},active:-1===ca,className:cnContextMenuLevel("Item",{active:-1===ca})}),React.createElement(ListDivider,{size:d,space:{mV:mapVerticalSpace[d]}})),React.createElement(List,{size:d,items:f,getItemLabel:E,onItemClick:function onItemClick(a,b){var c=b.e;x&&($(a),da(f.indexOf(a))),null===t||void 0===t?void 0:t(a,{e:c})},sortGroup:s?function(c,a){return s(c.key,a.key)}:void 0,getItemOnClick:ka,getItemAs:M,getItemAttributes:function getItemAttributes(a){return _objectSpread(_objectSpread({},N(a)),{},{tabIndex:0,onMouseEnter:null===ja||void 0===ja?void 0:ja(a)})},getItemGroupKey:O,getItemLeftIcon:P,getItemRightIcon:Q,getItemLeftSide:G,getItemRightSide:function getItemRightSide(a){var b=F(a);if(!H(a))return b;var c=Array.isArray(b)?b:[b];return c.push(React.createElement(IconArrowRight,{size:mapIconSize[d]})),c},getGroupKey:S,getGroupLabel:R,getItemDisabled:J,getItemStatus:I,getItemActive:function getItemActive(a){var b=Z(a);return b===n||b===ia},getItemAdditionalClassName:function getItemAdditionalClassName(a){return cnContextMenuLevel("Item",{active:Z(a)===n})},getItemRef:function getItemRef(a){return ha[Z(a)]},groups:g,innerOffset:"round"===j?"increased":"normal"}))};export var ContextMenuLevel=forwardRef(ContextMenuLevelRender);
|
|
2
2
|
//# sourceMappingURL=ContextMenuLevel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextMenuLevel.js","names":["IconArrowLeft","IconArrowRight","React","forwardRef","useEffect","useMemo","cnListBox","List","ListDivider","ListItem","mapIconSize","mapVerticalSpase","useFlag","useForkRef","cnMixPopoverAnimate","cnMixSpace","cn","ContextMenuLevelWrapper","contextMenuDefaultSize","useMenuNavigation","cnContextMenuLevel","timers","clearTimers","timer","clearTimeout","closeDelay","ContextMenuLevelRender","props","ref","size","items","groupsProp","groups","className","form","animate","levelDepth","activeLevelDepth","activeItem","addLevel","deleteLevel","setHoveredParenLevel","hoveredParenLevel","sortGroup","onItemClickProp","onItemClick","onEsc","isOpen","parent","isMobile","direction","possibleDirections","offset","onSetDirection","spareDirection","anchorRef","getItemLabel","getItemRightSideProp","getItemRightSide","getItemLeftSide","getItemSubMenu","getItemStatus","getItemDisabled","getItemKey","getItemOnClickProp","getItemOnClick","getItemAs","getItemAttributesProp","getItemAttributes","getItemGroupId","getItemLeftIcon","getItemRightIcon","getGroupLabel","getGroupId","otherProps","firstLevel","hovered","setHovered","getKey","item","toString","addCurrentLevel","subMenu","disabled","Array","isArray","key","level","itemsRefs","active","handleEscClick","e","current","focus","refs","onKeyDown","activeIndex","setActiveIndex","setDirection","parentRef","containerRef","map","reduce","a","v","index","activeKey","onMouseEnter","indexOf","setTimeout","border","shadow","pV","on","onMouseLeave","off","mV","b","tabIndex","side","sides","push","getItemActive","ContextMenuLevel"],"sources":["../../../../../../src/components/ContextMenu/ContextMenuLevel/ContextMenuLevel.tsx"],"sourcesContent":["import './ContextMenuLevel.css';\n\nimport { IconArrowLeft } from '@consta/icons/IconArrowLeft';\nimport { IconArrowRight } from '@consta/icons/IconArrowRight';\nimport React, { forwardRef, useEffect, useMemo } from 'react';\n\nimport {\n cnListBox,\n List,\n ListDivider,\n ListItem,\n ListPropOnItemClick,\n mapIconSize,\n mapVerticalSpase,\n} from '##/components/ListCanary';\nimport { useFlag } from '##/hooks/useFlag/useFlag';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { cnMixPopoverAnimate } from '##/mixs/MixPopoverAnimate';\nimport { cnMixSpace } from '##/mixs/MixSpace';\nimport { cn } from '##/utils/bem';\nimport { AsAttributes, AsTagAttribute } from '##/utils/types/AsTags';\n\nimport { ContextMenuLevelWrapper } from '../ContextMenuLevelWrapper';\nimport {\n contextMenuDefaultSize,\n ContextMenuItemDefault,\n ContextMenuLevelComponent,\n ContextMenuLevelProps,\n} from '../types';\nimport { useMenuNavigation } from '../useMenuNavigation';\n\nexport const cnContextMenuLevel = cn('ContextMenuLevel');\n\nlet timers: ReturnType<typeof setTimeout>[] = [];\nexport function clearTimers() {\n for (const timer of timers) {\n clearTimeout(timer);\n }\n timers = [];\n}\n\nconst closeDelay = 300;\n\nconst ContextMenuLevelRender = (\n props: ContextMenuLevelProps,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const {\n size = contextMenuDefaultSize,\n items,\n groups: groupsProp,\n className,\n form = 'default',\n animate,\n // Свойства относящиеся к меню\n levelDepth,\n activeLevelDepth,\n activeItem,\n addLevel,\n deleteLevel,\n setHoveredParenLevel,\n hoveredParenLevel,\n sortGroup,\n onItemClick: onItemClickProp,\n onEsc,\n isOpen,\n parent,\n isMobile,\n\n // Свойства для поповера\n direction,\n possibleDirections,\n offset,\n onSetDirection,\n spareDirection,\n anchorRef,\n // Геттеры для ITEM\n getItemLabel,\n getItemRightSide: getItemRightSideProp,\n getItemLeftSide,\n getItemSubMenu,\n getItemStatus,\n getItemDisabled,\n getItemKey,\n getItemOnClick: getItemOnClickProp,\n getItemAs,\n getItemAttributes: getItemAttributesProp,\n getItemGroupId,\n getItemLeftIcon,\n getItemRightIcon,\n // Геттеры для GROUP\n getGroupLabel,\n getGroupId,\n ...otherProps\n } = props;\n\n const firstLevel = levelDepth === 0;\n\n const [hovered, setHovered] = useFlag(false);\n\n const getKey = (item: ContextMenuItemDefault) =>\n (getItemKey(item) || getItemLabel(item)).toString();\n\n const addCurrentLevel = (item: ContextMenuItemDefault) => {\n const subMenu = getItemSubMenu(item);\n const disabled = getItemDisabled(item);\n\n if (Array.isArray(subMenu) && !disabled) {\n const key = getKey(item);\n addLevel({\n level: levelDepth + 1,\n items: subMenu,\n anchorRef: itemsRefs[key],\n activeItem: key,\n parent: item,\n });\n setHoveredParenLevel(levelDepth + 1);\n } else {\n setHoveredParenLevel(levelDepth);\n }\n };\n\n const handleEscClick: React.KeyboardEventHandler = (e) => {\n onEsc?.(e);\n anchorRef?.current?.focus();\n };\n\n const {\n refs,\n onKeyDown,\n activeIndex,\n setActiveIndex,\n setDirection,\n parentRef,\n containerRef,\n } = useMenuNavigation({\n items,\n getItemSubMenu,\n addLevel: addCurrentLevel,\n active: activeLevelDepth === levelDepth,\n deleteLevel: () => deleteLevel(levelDepth),\n onEsc: handleEscClick,\n level: levelDepth,\n isMobile,\n });\n\n const itemsRefs = useMemo(() => {\n return items\n .map((item) => getKey(item))\n .reduce((a, v, index) => ({ ...a, [v]: refs[index] }), {}) as Record<\n string,\n React.RefObject<HTMLDivElement>\n >;\n }, [groupsProp, refs]);\n\n const activeKey = useMemo(() => {\n const item = items[activeIndex];\n return item ? getKey(item) : undefined;\n }, [items, activeIndex]);\n\n const onMouseEnter = isMobile\n ? undefined\n : (item: ContextMenuItemDefault): AsTagAttribute<'div'>['onMouseEnter'] =>\n (e) => {\n addCurrentLevel(item);\n const onMouseEnter = getItemAttributesProp(item)\n ?.onMouseEnter as AsTagAttribute<'div'>['onMouseEnter'];\n setActiveIndex(items.indexOf(item));\n onMouseEnter?.(e);\n };\n\n // GETTERS\n\n const getItemOnClick = getItemOnClickProp\n ? (item: ContextMenuItemDefault) => (e: React.MouseEvent) =>\n getItemOnClickProp(item)?.(e as React.MouseEvent<HTMLDivElement>)\n : undefined;\n\n const getItemAttributes = (item: ContextMenuItemDefault) =>\n ({\n ...getItemAttributesProp(item),\n tabIndex: 0,\n onMouseEnter: onMouseEnter?.(item),\n } as AsAttributes);\n\n const getItemActive = (item: ContextMenuItemDefault) => {\n const key = getKey(item);\n return key === activeItem || key === activeKey;\n };\n\n const getItemRightSide = (item: ContextMenuItemDefault) => {\n const side = getItemRightSideProp(item);\n if (!getItemSubMenu(item)) {\n return side;\n }\n\n const sides: React.ReactNode[] = Array.isArray(side) ? side : [side];\n sides.push(<IconArrowRight size={mapIconSize[size]} />);\n return sides;\n };\n\n const onMouseLeave: React.MouseEventHandler = () => {\n setHovered.off();\n setActiveIndex(-1);\n };\n\n const onItemClick: ListPropOnItemClick<ContextMenuItemDefault> = (\n item,\n { e },\n ) => {\n if (isMobile) {\n addCurrentLevel(item);\n setActiveIndex(items.indexOf(item));\n }\n onItemClickProp?.(item, {\n e: e as React.MouseEvent<HTMLDivElement>,\n });\n };\n\n // EFFECTS\n\n useEffect(() => {\n if (levelDepth !== 0 && !hovered && hoveredParenLevel < levelDepth) {\n clearTimeout(timers[levelDepth]);\n timers[levelDepth] = setTimeout(\n () => deleteLevel(levelDepth),\n closeDelay,\n );\n }\n return () => clearTimeout(timers[levelDepth]);\n }, [hovered, hoveredParenLevel]);\n\n useEffect(() => {\n if (!isOpen) {\n clearTimeout(timers[levelDepth]);\n }\n }, [isOpen]);\n\n return (\n <ContextMenuLevelWrapper\n anchorRef={anchorRef}\n className={\n isMobile\n ? cnContextMenuLevel('Mobile', { animate }, [className])\n : cnContextMenuLevel('Desktop', { firstLevel }, [\n cnListBox({ size, form, border: true, shadow: true }),\n cnMixSpace({\n pV: mapVerticalSpase[size],\n }),\n cnMixPopoverAnimate({ animate }),\n firstLevel ? className : undefined,\n ])\n }\n possibleDirections={possibleDirections}\n spareDirection={spareDirection}\n direction={direction}\n offset={offset}\n tabIndex={0}\n onKeyDown={onKeyDown}\n onSetDirection={(direction) => {\n onSetDirection?.(direction);\n setDirection(direction);\n }}\n onMouseEnter={setHovered.on}\n onMouseLeave={onMouseLeave}\n ref={useForkRef([ref, containerRef])}\n isMobile={isMobile}\n {...otherProps}\n >\n {parent && (\n <>\n <ListItem\n label={getItemLabel(parent)}\n size={size}\n tabIndex={0}\n ref={parentRef}\n leftIcon={IconArrowLeft}\n onClick={() => deleteLevel(levelDepth)}\n active={activeIndex === -1}\n className={cnContextMenuLevel('Item', {\n active: activeIndex === -1,\n })}\n />\n <ListDivider size={size} space={{ mV: mapVerticalSpase[size] }} />\n </>\n )}\n <List\n size={size}\n items={items}\n getItemLabel={getItemLabel}\n onItemClick={onItemClick}\n sortGroup={sortGroup ? (a, b) => sortGroup(a.key, b.key) : undefined}\n getItemOnClick={getItemOnClick}\n getItemAs={getItemAs}\n getItemAttributes={getItemAttributes}\n getItemGroupKey={getItemGroupId}\n getItemLeftIcon={getItemLeftIcon}\n getItemRightIcon={getItemRightIcon}\n getItemLeftSide={getItemLeftSide}\n getItemRightSide={getItemRightSide}\n getGroupKey={getGroupId}\n getGroupLabel={getGroupLabel}\n getItemDisabled={getItemDisabled}\n getItemStatus={getItemStatus}\n getItemActive={getItemActive}\n getItemAdditionalClassName={(item) =>\n cnContextMenuLevel('Item', {\n active: getKey(item) === activeItem,\n })\n }\n getItemRef={(item) => itemsRefs[getKey(item)]}\n groups={groupsProp}\n innerOffset={form === 'round' ? 'increased' : 'normal'}\n />\n </ContextMenuLevelWrapper>\n );\n};\n\nexport const ContextMenuLevel = forwardRef(\n ContextMenuLevelRender,\n) as ContextMenuLevelComponent;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ContextMenuLevel.js","names":["IconArrowLeft","IconArrowRight","React","forwardRef","useEffect","useMemo","cnListBox","List","ListDivider","ListItem","mapIconSize","mapVerticalSpace","useFlag","useForkRef","cnMixPopoverAnimate","cnMixSpace","cn","ContextMenuLevelWrapper","contextMenuDefaultSize","useMenuNavigation","cnContextMenuLevel","timers","clearTimers","timer","clearTimeout","closeDelay","ContextMenuLevelRender","props","ref","size","items","groupsProp","groups","className","form","animate","levelDepth","activeLevelDepth","activeItem","addLevel","deleteLevel","setHoveredParenLevel","hoveredParenLevel","sortGroup","onItemClickProp","onItemClick","onEsc","isOpen","parent","isMobile","direction","possibleDirections","offset","onSetDirection","spareDirection","anchorRef","getItemLabel","getItemRightSideProp","getItemRightSide","getItemLeftSide","getItemSubMenu","getItemStatus","getItemDisabled","getItemKey","getItemOnClickProp","getItemOnClick","getItemAs","getItemAttributesProp","getItemAttributes","getItemGroupId","getItemLeftIcon","getItemRightIcon","getGroupLabel","getGroupId","otherProps","firstLevel","hovered","setHovered","getKey","item","toString","addCurrentLevel","subMenu","disabled","Array","isArray","key","level","itemsRefs","active","handleEscClick","e","current","focus","refs","onKeyDown","activeIndex","setActiveIndex","setDirection","parentRef","containerRef","map","reduce","a","v","index","activeKey","onMouseEnter","indexOf","setTimeout","border","shadow","pV","on","onMouseLeave","off","mV","b","tabIndex","side","sides","push","getItemActive","ContextMenuLevel"],"sources":["../../../../../../src/components/ContextMenu/ContextMenuLevel/ContextMenuLevel.tsx"],"sourcesContent":["import './ContextMenuLevel.css';\n\nimport { IconArrowLeft } from '@consta/icons/IconArrowLeft';\nimport { IconArrowRight } from '@consta/icons/IconArrowRight';\nimport React, { forwardRef, useEffect, useMemo } from 'react';\n\nimport {\n cnListBox,\n List,\n ListDivider,\n ListItem,\n ListPropOnItemClick,\n mapIconSize,\n mapVerticalSpace,\n} from '##/components/ListCanary';\nimport { useFlag } from '##/hooks/useFlag/useFlag';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { cnMixPopoverAnimate } from '##/mixs/MixPopoverAnimate';\nimport { cnMixSpace } from '##/mixs/MixSpace';\nimport { cn } from '##/utils/bem';\nimport { AsAttributes, AsTagAttribute } from '##/utils/types/AsTags';\n\nimport { ContextMenuLevelWrapper } from '../ContextMenuLevelWrapper';\nimport {\n contextMenuDefaultSize,\n ContextMenuItemDefault,\n ContextMenuLevelComponent,\n ContextMenuLevelProps,\n} from '../types';\nimport { useMenuNavigation } from '../useMenuNavigation';\n\nexport const cnContextMenuLevel = cn('ContextMenuLevel');\n\nlet timers: ReturnType<typeof setTimeout>[] = [];\nexport function clearTimers() {\n for (const timer of timers) {\n clearTimeout(timer);\n }\n timers = [];\n}\n\nconst closeDelay = 300;\n\nconst ContextMenuLevelRender = (\n props: ContextMenuLevelProps,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const {\n size = contextMenuDefaultSize,\n items,\n groups: groupsProp,\n className,\n form = 'default',\n animate,\n // Свойства относящиеся к меню\n levelDepth,\n activeLevelDepth,\n activeItem,\n addLevel,\n deleteLevel,\n setHoveredParenLevel,\n hoveredParenLevel,\n sortGroup,\n onItemClick: onItemClickProp,\n onEsc,\n isOpen,\n parent,\n isMobile,\n\n // Свойства для поповера\n direction,\n possibleDirections,\n offset,\n onSetDirection,\n spareDirection,\n anchorRef,\n // Геттеры для ITEM\n getItemLabel,\n getItemRightSide: getItemRightSideProp,\n getItemLeftSide,\n getItemSubMenu,\n getItemStatus,\n getItemDisabled,\n getItemKey,\n getItemOnClick: getItemOnClickProp,\n getItemAs,\n getItemAttributes: getItemAttributesProp,\n getItemGroupId,\n getItemLeftIcon,\n getItemRightIcon,\n // Геттеры для GROUP\n getGroupLabel,\n getGroupId,\n ...otherProps\n } = props;\n\n const firstLevel = levelDepth === 0;\n\n const [hovered, setHovered] = useFlag(false);\n\n const getKey = (item: ContextMenuItemDefault) =>\n (getItemKey(item) || getItemLabel(item)).toString();\n\n const addCurrentLevel = (item: ContextMenuItemDefault) => {\n const subMenu = getItemSubMenu(item);\n const disabled = getItemDisabled(item);\n\n if (Array.isArray(subMenu) && !disabled) {\n const key = getKey(item);\n addLevel({\n level: levelDepth + 1,\n items: subMenu,\n anchorRef: itemsRefs[key],\n activeItem: key,\n parent: item,\n });\n setHoveredParenLevel(levelDepth + 1);\n } else {\n setHoveredParenLevel(levelDepth);\n }\n };\n\n const handleEscClick: React.KeyboardEventHandler = (e) => {\n onEsc?.(e);\n anchorRef?.current?.focus();\n };\n\n const {\n refs,\n onKeyDown,\n activeIndex,\n setActiveIndex,\n setDirection,\n parentRef,\n containerRef,\n } = useMenuNavigation({\n items,\n getItemSubMenu,\n addLevel: addCurrentLevel,\n active: activeLevelDepth === levelDepth,\n deleteLevel: () => deleteLevel(levelDepth),\n onEsc: handleEscClick,\n level: levelDepth,\n isMobile,\n });\n\n const itemsRefs = useMemo(() => {\n return items\n .map((item) => getKey(item))\n .reduce((a, v, index) => ({ ...a, [v]: refs[index] }), {}) as Record<\n string,\n React.RefObject<HTMLDivElement>\n >;\n }, [groupsProp, refs]);\n\n const activeKey = useMemo(() => {\n const item = items[activeIndex];\n return item ? getKey(item) : undefined;\n }, [items, activeIndex]);\n\n const onMouseEnter = isMobile\n ? undefined\n : (item: ContextMenuItemDefault): AsTagAttribute<'div'>['onMouseEnter'] =>\n (e) => {\n addCurrentLevel(item);\n const onMouseEnter = getItemAttributesProp(item)\n ?.onMouseEnter as AsTagAttribute<'div'>['onMouseEnter'];\n setActiveIndex(items.indexOf(item));\n onMouseEnter?.(e);\n };\n\n // GETTERS\n\n const getItemOnClick = getItemOnClickProp\n ? (item: ContextMenuItemDefault) => (e: React.MouseEvent) =>\n getItemOnClickProp(item)?.(e as React.MouseEvent<HTMLDivElement>)\n : undefined;\n\n const getItemAttributes = (item: ContextMenuItemDefault) =>\n ({\n ...getItemAttributesProp(item),\n tabIndex: 0,\n onMouseEnter: onMouseEnter?.(item),\n } as AsAttributes);\n\n const getItemActive = (item: ContextMenuItemDefault) => {\n const key = getKey(item);\n return key === activeItem || key === activeKey;\n };\n\n const getItemRightSide = (item: ContextMenuItemDefault) => {\n const side = getItemRightSideProp(item);\n if (!getItemSubMenu(item)) {\n return side;\n }\n\n const sides: React.ReactNode[] = Array.isArray(side) ? side : [side];\n sides.push(<IconArrowRight size={mapIconSize[size]} />);\n return sides;\n };\n\n const onMouseLeave: React.MouseEventHandler = () => {\n setHovered.off();\n setActiveIndex(-1);\n };\n\n const onItemClick: ListPropOnItemClick<ContextMenuItemDefault> = (\n item,\n { e },\n ) => {\n if (isMobile) {\n addCurrentLevel(item);\n setActiveIndex(items.indexOf(item));\n }\n onItemClickProp?.(item, {\n e: e as React.MouseEvent<HTMLDivElement>,\n });\n };\n\n // EFFECTS\n\n useEffect(() => {\n if (levelDepth !== 0 && !hovered && hoveredParenLevel < levelDepth) {\n clearTimeout(timers[levelDepth]);\n timers[levelDepth] = setTimeout(\n () => deleteLevel(levelDepth),\n closeDelay,\n );\n }\n return () => clearTimeout(timers[levelDepth]);\n }, [hovered, hoveredParenLevel]);\n\n useEffect(() => {\n if (!isOpen) {\n clearTimeout(timers[levelDepth]);\n }\n }, [isOpen]);\n\n return (\n <ContextMenuLevelWrapper\n anchorRef={anchorRef}\n className={\n isMobile\n ? cnContextMenuLevel('Mobile', { animate }, [className])\n : cnContextMenuLevel('Desktop', { firstLevel }, [\n cnListBox({ size, form, border: true, shadow: true }),\n cnMixSpace({\n pV: mapVerticalSpace[size],\n }),\n cnMixPopoverAnimate({ animate }),\n firstLevel ? className : undefined,\n ])\n }\n possibleDirections={possibleDirections}\n spareDirection={spareDirection}\n direction={direction}\n offset={offset}\n tabIndex={0}\n onKeyDown={onKeyDown}\n onSetDirection={(direction) => {\n onSetDirection?.(direction);\n setDirection(direction);\n }}\n onMouseEnter={setHovered.on}\n onMouseLeave={onMouseLeave}\n ref={useForkRef([ref, containerRef])}\n isMobile={isMobile}\n {...otherProps}\n >\n {parent && (\n <>\n <ListItem\n label={getItemLabel(parent)}\n size={size}\n tabIndex={0}\n ref={parentRef}\n leftIcon={IconArrowLeft}\n onClick={() => deleteLevel(levelDepth)}\n active={activeIndex === -1}\n className={cnContextMenuLevel('Item', {\n active: activeIndex === -1,\n })}\n />\n <ListDivider size={size} space={{ mV: mapVerticalSpace[size] }} />\n </>\n )}\n <List\n size={size}\n items={items}\n getItemLabel={getItemLabel}\n onItemClick={onItemClick}\n sortGroup={sortGroup ? (a, b) => sortGroup(a.key, b.key) : undefined}\n getItemOnClick={getItemOnClick}\n getItemAs={getItemAs}\n getItemAttributes={getItemAttributes}\n getItemGroupKey={getItemGroupId}\n getItemLeftIcon={getItemLeftIcon}\n getItemRightIcon={getItemRightIcon}\n getItemLeftSide={getItemLeftSide}\n getItemRightSide={getItemRightSide}\n getGroupKey={getGroupId}\n getGroupLabel={getGroupLabel}\n getItemDisabled={getItemDisabled}\n getItemStatus={getItemStatus}\n getItemActive={getItemActive}\n getItemAdditionalClassName={(item) =>\n cnContextMenuLevel('Item', {\n active: getKey(item) === activeItem,\n })\n }\n getItemRef={(item) => itemsRefs[getKey(item)]}\n groups={groupsProp}\n innerOffset={form === 'round' ? 'increased' : 'normal'}\n />\n </ContextMenuLevelWrapper>\n );\n};\n\nexport const ContextMenuLevel = forwardRef(\n ContextMenuLevelRender,\n) as ContextMenuLevelComponent;\n"],"mappings":"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"}
|
package/__internal__/src/components/ContextMenu/ContextMenuLevelWrapper/ContextMenuLevelWrapper.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["isMobile","children","className","size","onClickOutside","spareDirection","possibleDirections","direction","offset","anchorRef","position","onSetDirection"];import"./ContextMenuLevelWrapper.css";import React,{forwardRef}from"react";import{
|
|
1
|
+
import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["isMobile","children","className","size","onClickOutside","spareDirection","possibleDirections","direction","offset","anchorRef","position","onSetDirection"];import"./ContextMenuLevelWrapper.css";import React,{forwardRef}from"react";import{mapVerticalSpace}from"../../ListCanary";import{Popover}from"../../Popover";import{cnMixSpace}from"../../../mixs/MixSpace";import{cn}from"../../../utils/bem";import{contextMenuDefaultSize}from"../types";var cnContextMenuLevelWrapper=cn("ContextMenuLevelWrapper");export var ContextMenuLevelWrapper=forwardRef(function(a,b){var c=a.isMobile,d=a.children,e=a.className,f=a.size,g=void 0===f?contextMenuDefaultSize:f,h=a.onClickOutside,i=a.spareDirection,j=a.possibleDirections,k=a.direction,l=a.offset,m=a.anchorRef,n=a.position,o=a.onSetDirection,p=_objectWithoutProperties(a,_excluded);return c?React.createElement("div",{className:e},React.createElement("div",Object.assign({className:cnContextMenuLevelWrapper("Mobile",[cnMixSpace({pV:mapVerticalSpace[g]})]),ref:b},p),d)):React.createElement(Popover,Object.assign({},p,{ref:b,className:e,onClickOutside:h,spareDirection:i,possibleDirections:j,direction:k,offset:l,anchorRef:m,position:n,onSetDirection:o}),d)});
|
|
2
2
|
//# sourceMappingURL=ContextMenuLevelWrapper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextMenuLevelWrapper.js","names":["React","forwardRef","
|
|
1
|
+
{"version":3,"file":"ContextMenuLevelWrapper.js","names":["React","forwardRef","mapVerticalSpace","Popover","cnMixSpace","cn","contextMenuDefaultSize","cnContextMenuLevelWrapper","ContextMenuLevelWrapper","props","ref","isMobile","children","className","size","onClickOutside","spareDirection","possibleDirections","direction","offset","anchorRef","position","onSetDirection","otherProps","pV"],"sources":["../../../../../../src/components/ContextMenu/ContextMenuLevelWrapper/ContextMenuLevelWrapper.tsx"],"sourcesContent":["import './ContextMenuLevelWrapper.css';\n\nimport React, { forwardRef } from 'react';\n\nimport { mapVerticalSpace } from '##/components/ListCanary';\nimport { Popover } from '##/components/Popover';\nimport { cnMixSpace } from '##/mixs/MixSpace';\nimport { cn } from '##/utils/bem';\n\nimport { contextMenuDefaultSize, ContextMenuLevelWrapperProps } from '../types';\n\nconst cnContextMenuLevelWrapper = cn('ContextMenuLevelWrapper');\n\nexport const ContextMenuLevelWrapper = forwardRef(\n (props: ContextMenuLevelWrapperProps, ref: React.Ref<HTMLDivElement>) => {\n const {\n isMobile,\n children,\n className,\n size = contextMenuDefaultSize,\n onClickOutside,\n spareDirection,\n possibleDirections,\n direction,\n offset,\n anchorRef,\n position,\n onSetDirection,\n ...otherProps\n } = props;\n\n if (isMobile) {\n return (\n <div className={className}>\n <div\n className={cnContextMenuLevelWrapper('Mobile', [\n cnMixSpace({\n pV: mapVerticalSpace[size],\n }),\n ])}\n ref={ref}\n {...otherProps}\n >\n {children}\n </div>\n </div>\n );\n }\n\n return (\n <Popover\n {...otherProps}\n ref={ref}\n className={className}\n onClickOutside={onClickOutside}\n spareDirection={spareDirection}\n possibleDirections={possibleDirections}\n direction={direction}\n offset={offset}\n anchorRef={anchorRef}\n position={position}\n onSetDirection={onSetDirection}\n >\n {children}\n </Popover>\n );\n },\n);\n"],"mappings":"kQAAA,sCAEA,MAAOA,MAAP,EAAgBC,UAAhB,KAAkC,OAAlC,CAEA,OAASC,gBAAT,wBACA,OAASC,OAAT,qBACA,OAASC,UAAT,8BACA,OAASC,EAAT,0BAEA,OAASC,sBAAT,gBAEA,GAAMC,0BAAyB,CAAGF,EAAE,CAAC,yBAAD,CAApC,CAEA,MAAO,IAAMG,wBAAuB,CAAGP,UAAU,CAC/C,SAACQ,CAAD,CAAsCC,CAAtC,CAAyE,CACvE,GACEC,EADF,CAcIF,CAdJ,CACEE,QADF,CAEEC,CAFF,CAcIH,CAdJ,CAEEG,QAFF,CAGEC,CAHF,CAcIJ,CAdJ,CAGEI,SAHF,GAcIJ,CAdJ,CAIEK,IAJF,CAIEA,CAJF,YAISR,sBAJT,GAKES,CALF,CAcIN,CAdJ,CAKEM,cALF,CAMEC,CANF,CAcIP,CAdJ,CAMEO,cANF,CAOEC,CAPF,CAcIR,CAdJ,CAOEQ,kBAPF,CAQEC,CARF,CAcIT,CAdJ,CAQES,SARF,CASEC,CATF,CAcIV,CAdJ,CASEU,MATF,CAUEC,CAVF,CAcIX,CAdJ,CAUEW,SAVF,CAWEC,CAXF,CAcIZ,CAdJ,CAWEY,QAXF,CAYEC,CAZF,CAcIb,CAdJ,CAYEa,cAZF,CAaKC,CAbL,0BAcId,CAdJ,YADuE,MAiBnEE,EAjBmE,CAmBnE,2BAAK,SAAS,CAAEE,CAAhB,EACE,yCACE,SAAS,CAAEN,yBAAyB,CAAC,QAAD,CAAW,CAC7CH,UAAU,CAAC,CACToB,EAAE,CAAEtB,gBAAgB,CAACY,CAAD,CADX,CAAD,CADmC,CAAX,CADtC,CAME,GAAG,CAAEJ,CANP,EAOMa,CAPN,EASGX,CATH,CADF,CAnBmE,CAoCrE,oBAAC,OAAD,kBACMW,CADN,EAEE,GAAG,CAAEb,CAFP,CAGE,SAAS,CAAEG,CAHb,CAIE,cAAc,CAAEE,CAJlB,CAKE,cAAc,CAAEC,CALlB,CAME,kBAAkB,CAAEC,CANtB,CAOE,SAAS,CAAEC,CAPb,CAQE,MAAM,CAAEC,CARV,CASE,SAAS,CAAEC,CATb,CAUE,QAAQ,CAAEC,CAVZ,CAWE,cAAc,CAAEC,CAXlB,GAaGV,CAbH,CAgBH,CArD8C,CAA1C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ContextMenuWrapper{overflow:hidden;width:240px}.MixPopoverAnimate.ContextMenuWrapper{--mix-dropdown-animate-
|
|
1
|
+
.ContextMenuWrapper{overflow:hidden;width:240px}.MixPopoverAnimate.ContextMenuWrapper{--mix-dropdown-animate-transition:opacity var(--mix-dropdown-animate-timeout),transform var(--mix-dropdown-animate-timeout),height var(--mix-dropdown-animate-timeout)}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import"./ContextMenuWrapper.css";import React,{Fragment,useCallback,useState}from"react";import{Transition}from"react-transition-group";import{cnListBox,
|
|
1
|
+
import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import"./ContextMenuWrapper.css";import React,{Fragment,useCallback,useState}from"react";import{Transition}from"react-transition-group";import{cnListBox,mapVerticalSpace}from"../../ListCanary";import{Popover}from"../../Popover";import{useFlag}from"../../../hooks/useFlag";import{useMutableRef}from"../../../hooks/useMutableRef";import{animateTimeout,cnMixPopoverAnimate}from"../../../mixs/MixPopoverAnimate";import{cnMixSpace}from"../../../mixs/MixSpace";import{cn}from"../../../utils/bem";import{contextMenuDefaultSize,defaultContextMenuForm}from"../types";var cnContextMenuWrapper=cn("ContextMenuWrapper");export var ContextMenuWrapper=function(a){var b=a.isMobile,c=a.children,d=a.form,e=void 0===d?defaultContextMenuForm:d,f=a.isOpen,g=a.size,h=void 0===g?contextMenuDefaultSize:g,i=a.anchorRef,j=a.possibleDirections,k=a.position,l=a.direction,m=a.spareDirection,n=a.onClickOutside,o=a.offset,p=a.onSetDirection,q=a.className,r=a.animationBack,s=a.style,t=useFlag(b),u=_slicedToArray(t,2),v=u[0],w=u[1],x=useState(l),y=_slicedToArray(x,2),z=y[0],A=y[1],B=useMutableRef(p),C=useCallback(function(a){var b;A(a),null===(b=B.current)||void 0===b?void 0:b.call(B,a)},[]);return b?React.createElement(Transition,{timeout:animateTimeout,in:f,unmountOnExit:!0,onEntered:w.on,onExit:w.off},function(a){return React.createElement(Popover,{className:cnContextMenuWrapper({animationBack:r,innerAnimation:v},[cnListBox({size:h,form:e,border:!0,shadow:!0}),cnMixSpace({pV:mapVerticalSpace[h]}),cnMixPopoverAnimate({animate:a}),q]),anchorRef:i,possibleDirections:j,position:k,direction:z,spareDirection:m,onClickOutside:n,offset:o,onSetDirection:C,style:s},c)}):React.createElement(Fragment,{key:ContextMenuWrapper.name},c)};
|
|
2
2
|
//# sourceMappingURL=ContextMenuWrapper.js.map
|
package/__internal__/src/components/ContextMenu/ContextMenuWrapper/ContextMenuWrapper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextMenuWrapper.js","names":["React","Fragment","useCallback","useState","Transition","cnListBox","
|
|
1
|
+
{"version":3,"file":"ContextMenuWrapper.js","names":["React","Fragment","useCallback","useState","Transition","cnListBox","mapVerticalSpace","Popover","useFlag","useMutableRef","animateTimeout","cnMixPopoverAnimate","cnMixSpace","cn","contextMenuDefaultSize","defaultContextMenuForm","cnContextMenuWrapper","ContextMenuWrapper","props","isMobile","children","form","isOpen","size","anchorRef","possibleDirections","position","directionProp","direction","spareDirection","onClickOutside","offset","onSetDirectionProp","onSetDirection","className","animationBack","style","innerAnimation","setInnerAnimation","setDirection","onSetDirectionRef","current","on","off","animate","border","shadow","pV","name"],"sources":["../../../../../../src/components/ContextMenu/ContextMenuWrapper/ContextMenuWrapper.tsx"],"sourcesContent":["import './ContextMenuWrapper.css';\n\nimport React, { Fragment, useCallback, useState } from 'react';\nimport { Transition } from 'react-transition-group';\n\nimport { cnListBox, mapVerticalSpace } from '##/components/ListCanary';\nimport { Direction, Popover } from '##/components/Popover';\nimport { useFlag } from '##/hooks/useFlag';\nimport { useMutableRef } from '##/hooks/useMutableRef';\nimport { animateTimeout, cnMixPopoverAnimate } from '##/mixs/MixPopoverAnimate';\nimport { cnMixSpace } from '##/mixs/MixSpace';\nimport { cn } from '##/utils/bem';\n\nimport {\n contextMenuDefaultSize,\n ContextMenuWrapperProps,\n defaultContextMenuForm,\n} from '../types';\n\nconst cnContextMenuWrapper = cn('ContextMenuWrapper');\n\nexport const ContextMenuWrapper = (props: ContextMenuWrapperProps) => {\n const {\n isMobile,\n children,\n form = defaultContextMenuForm,\n isOpen,\n size = contextMenuDefaultSize,\n anchorRef,\n possibleDirections,\n position,\n direction: directionProp,\n spareDirection,\n onClickOutside,\n offset,\n onSetDirection: onSetDirectionProp,\n className,\n animationBack,\n style,\n } = props;\n\n const [innerAnimation, setInnerAnimation] = useFlag(isMobile);\n // запоминаем позицию последнего удовлетворяющего разворота,\n // для того чтоб следующий экран разворачивался в эту же строну.\n const [direction, setDirection] = useState(directionProp);\n\n const onSetDirectionRef = useMutableRef(onSetDirectionProp);\n\n const onSetDirection = useCallback((direction: Direction) => {\n setDirection(direction);\n onSetDirectionRef.current?.(direction);\n }, []);\n\n if (isMobile) {\n return (\n <Transition\n timeout={animateTimeout}\n in={isOpen}\n unmountOnExit\n onEntered={setInnerAnimation.on}\n onExit={setInnerAnimation.off}\n >\n {(animate) => (\n <Popover\n className={cnContextMenuWrapper({ animationBack, innerAnimation }, [\n cnListBox({ size, form, border: true, shadow: true }),\n cnMixSpace({\n pV: mapVerticalSpace[size],\n }),\n cnMixPopoverAnimate({ animate }),\n className,\n ])}\n anchorRef={anchorRef}\n possibleDirections={possibleDirections}\n position={position}\n direction={direction}\n spareDirection={spareDirection}\n onClickOutside={onClickOutside}\n offset={offset}\n onSetDirection={onSetDirection}\n style={style}\n >\n {children}\n </Popover>\n )}\n </Transition>\n );\n }\n\n return <Fragment key={ContextMenuWrapper.name}>{children}</Fragment>;\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.DatePickerDropdown{--transition-
|
|
1
|
+
.DatePickerDropdown{--transition-space:var(--space-2xs);background:var(--color-bg-default);box-shadow:var(--shadow-layer);padding:var(--space-l)}.DatePickerDropdown_form_default{border-radius:var(--control-radius)}.DatePickerDropdown_form_brick{border-radius:0}.DatePickerDropdown_form_round{border-radius:var(--space-l)}
|
package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","dropdownClassName","dropdownRef","name","placeholder","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates"];import addMonths from"date-fns/addMonths";import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useCallback,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateRange}from"../DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange";import{getDropdownZIndex,getFieldName,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDateRange=forwardRef(function(a,b){var c,d,e,f,g=a.events,h=a.dateTimeView,i=void 0===h?datePickerPropDateTimeViewDefault:h,j=a.locale,k=a.dropdownForm,l=a.onFocus,m=a.onBlur,n=a.leftSide,o=a.rightSide,p=a.currentVisibleDate,q=a.onChangeCurrentVisibleDate,r=a.renderAdditionalControls,s=a.inputRef,t=a.dropdownClassName,u=a.dropdownRef,v=a.name,w=a.placeholder,x=a.onDropdownOpen,y=a.dropdownOpen,z=a.ignoreOutsideClicksRefs,A=a.disabled,B=a.disableDates,C=_objectWithoutProperties(a,_excluded),D=useRef(null),E=useRef(null),F=useRef(null),G=useRef(null),H=useRef(null),I=useState(!1),J=_slicedToArray(I,2),K=J[0],L=J[1],M="start"===K,N="end"===K,O=useCalendarVisible({dropdownOpen:y,onDropdownOpen:x,disabled:A,startRef:F,endRef:G}),P=_slicedToArray(O,2),Q=P[0],R=P[1],S=useCurrentVisibleDate({currentVisibleDate:p,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:q,calendarVisible:Q}),T=_slicedToArray(S,2),U=T[0],V=T[1];return useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[0]&&"classic"===i&&M){var d=startOfMonth(a.value[0]);return void(d.getTime()!==(null===U||void 0===U?void 0:U.getTime())&&V(d))}if(null!==(c=a.value)&&void 0!==c&&c[0]&&"classic"!==i&&M){var e=startOfMonth(a.value[0]);e.getTime()!==(null===U||void 0===U?void 0:U.getTime())&&e.getTime()!==(U&&addMonths(U,1).getTime())&&V(e)}},[null===(c=a.value)||void 0===c||null===(d=c[0])||void 0===d?void 0:d.getTime(),Q,M]),useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[1]&&"classic"===i&&N){var d=startOfMonth(a.value[1]);return void(d.getTime()!==(null===U||void 0===U?void 0:U.getTime())&&V(d))}if(null!==(c=a.value)&&void 0!==c&&c[1]&&"classic"!==i&&N){var e=startOfMonth(a.value[1]);e.getTime()!==(null===U||void 0===U?void 0:U.getTime())&&e.getTime()!==(U&&addMonths(U,1).getTime())&&V(addMonths(e,-1))}},[null===(e=a.value)||void 0===e||null===(f=e[1])||void 0===f?void 0:f.getTime(),Q,N]),useClickOutside({isActive:Q,ignoreClicksInsideRefs:[D,E,H].concat(_toConsumableArray(null!==z&&void 0!==z?z:[])),handler:useCallback(function(){L(!1),R.off()},[])}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDateRange,Object.assign({},C,{ref:b,startFieldRef:D,endFieldRef:E,startFieldInputRef:useForkRef([F,null===s||void 0===s?void 0:s[0]]),endFieldInputRef:useForkRef([G,null===s||void 0===s?void 0:s[1]]),startFieldOnFocus:function startFieldOnFocusHandler(a){var b;L("start"),Array.isArray(l)?null===(b=l[0])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},endFieldOnFocus:function endFieldOnFocusHandler(a){var b;L("end"),Array.isArray(l)?null===(b=l[1])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},startFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[0]:n,startFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[0]:void 0,endFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[1]:void 0,endFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[1]:o,startFieldOnBlur:function startFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[0])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},startFieldOnClick:R.on,endFieldOnClick:R.on,endFieldOnBlur:function endFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[1])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},startFocused:M,endFocused:N,startFieldName:getFieldName(v,0),endFieldName:getFieldName(v,1),startFieldPlaceholder:Array.isArray(w)?null===w||void 0===w?void 0:w[0]:w,endFieldPlaceholder:Array.isArray(w)?null===w||void 0===w?void 0:w[1]:w,disabled:A})),React.createElement(DatePickerDropdown,{type:"date",ref:useForkRef([u,H]),anchorRef:D,className:t,isOpen:Q,onChangeCurrentVisibleDate:V,currentVisibleDate:U,value:a.value||void 0,view:i,events:g,locale:j,minDate:a.minDate,maxDate:a.maxDate,form:k,onChange:function
|
|
1
|
+
import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","dropdownClassName","dropdownRef","name","placeholder","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates"];import addMonths from"date-fns/addMonths";import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useCallback,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateRange}from"../DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange";import{getDropdownZIndex,getFieldName,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDateRange=forwardRef(function(a,b){var c,d,e,f,g=a.events,h=a.dateTimeView,i=void 0===h?datePickerPropDateTimeViewDefault:h,j=a.locale,k=a.dropdownForm,l=a.onFocus,m=a.onBlur,n=a.leftSide,o=a.rightSide,p=a.currentVisibleDate,q=a.onChangeCurrentVisibleDate,r=a.renderAdditionalControls,s=a.inputRef,t=a.dropdownClassName,u=a.dropdownRef,v=a.name,w=a.placeholder,x=a.onDropdownOpen,y=a.dropdownOpen,z=a.ignoreOutsideClicksRefs,A=a.disabled,B=a.disableDates,C=_objectWithoutProperties(a,_excluded),D=useRef(null),E=useRef(null),F=useRef(null),G=useRef(null),H=useRef(null),I=useState(!1),J=_slicedToArray(I,2),K=J[0],L=J[1],M="start"===K,N="end"===K,O=useCalendarVisible({dropdownOpen:y,onDropdownOpen:x,disabled:A,startRef:F,endRef:G}),P=_slicedToArray(O,2),Q=P[0],R=P[1],S=useCurrentVisibleDate({currentVisibleDate:p,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:q,calendarVisible:Q}),T=_slicedToArray(S,2),U=T[0],V=T[1];return useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[0]&&"classic"===i&&M){var d=startOfMonth(a.value[0]);return void(d.getTime()!==(null===U||void 0===U?void 0:U.getTime())&&V(d))}if(null!==(c=a.value)&&void 0!==c&&c[0]&&"classic"!==i&&M){var e=startOfMonth(a.value[0]);e.getTime()!==(null===U||void 0===U?void 0:U.getTime())&&e.getTime()!==(U&&addMonths(U,1).getTime())&&V(e)}},[null===(c=a.value)||void 0===c||null===(d=c[0])||void 0===d?void 0:d.getTime(),Q,M]),useEffect(function(){var b,c;if(null!==(b=a.value)&&void 0!==b&&b[1]&&"classic"===i&&N){var d=startOfMonth(a.value[1]);return void(d.getTime()!==(null===U||void 0===U?void 0:U.getTime())&&V(d))}if(null!==(c=a.value)&&void 0!==c&&c[1]&&"classic"!==i&&N){var e=startOfMonth(a.value[1]);e.getTime()!==(null===U||void 0===U?void 0:U.getTime())&&e.getTime()!==(U&&addMonths(U,1).getTime())&&V(addMonths(e,-1))}},[null===(e=a.value)||void 0===e||null===(f=e[1])||void 0===f?void 0:f.getTime(),Q,N]),useClickOutside({isActive:Q,ignoreClicksInsideRefs:[D,E,H].concat(_toConsumableArray(null!==z&&void 0!==z?z:[])),handler:useCallback(function(){L(!1),R.off()},[])}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDateRange,Object.assign({},C,{ref:b,startFieldRef:D,endFieldRef:E,startFieldInputRef:useForkRef([F,null===s||void 0===s?void 0:s[0]]),endFieldInputRef:useForkRef([G,null===s||void 0===s?void 0:s[1]]),startFieldOnFocus:function startFieldOnFocusHandler(a){var b;L("start"),Array.isArray(l)?null===(b=l[0])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},endFieldOnFocus:function endFieldOnFocusHandler(a){var b;L("end"),Array.isArray(l)?null===(b=l[1])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},startFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[0]:n,startFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[0]:void 0,endFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[1]:void 0,endFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[1]:o,startFieldOnBlur:function startFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[0])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},startFieldOnClick:R.on,endFieldOnClick:R.on,endFieldOnBlur:function endFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[1])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},startFocused:M,endFocused:N,startFieldName:getFieldName(v,0),endFieldName:getFieldName(v,1),startFieldPlaceholder:Array.isArray(w)?null===w||void 0===w?void 0:w[0]:w,endFieldPlaceholder:Array.isArray(w)?null===w||void 0===w?void 0:w[1]:w,disabled:A})),React.createElement(DatePickerDropdown,{type:"date",ref:useForkRef([u,H]),anchorRef:D,className:t,isOpen:Q,onChangeCurrentVisibleDate:V,currentVisibleDate:U,value:a.value||void 0,view:i,events:g,locale:j,minDate:a.minDate,maxDate:a.maxDate,form:k,onChange:function handleChange(b,c){var d=c.e;if(M){var e,f,g=normalizeRangeValue([b,null===a||void 0===a||null===(e=a.value)||void 0===e?void 0:e[1]]);null===(f=a.onChange)||void 0===f?void 0:f.call(a,g,{e:d})}if(N){var h,i,j=normalizeRangeValue([null===a||void 0===a||null===(h=a.value)||void 0===h?void 0:h[0],b]);null===(i=a.onChange)||void 0===i?void 0:i.call(a,j,{e:d})}},renderAdditionalControls:r,zIndex:getDropdownZIndex(a.style),disableDates:B}))});
|
|
2
2
|
//# sourceMappingURL=DatePickerTypeDateRange.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerTypeDateRange.js","names":["addMonths","startOfMonth","React","forwardRef","useCallback","useEffect","useRef","useState","useClickOutside","useForkRef","DatePickerDropdown","DatePickerFieldTypeDateRange","getDropdownZIndex","getFieldName","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCalendarVisible","useCurrentVisibleDate","DatePickerTypeDateRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","dropdownClassName","dropdownRef","name","placeholder","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","startRef","endRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","on","endFieldOnBlurHandler","hadleChange","newValue","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';\nimport { useForkRef } from '##/hooks/useForkRef';\n\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 { useCalendarVisible } from '../useCalendarVisible';\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 dropdownRef,\n name,\n placeholder,\n onDropdownOpen,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n disabled,\n disableDates,\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 = (value, { e }) => {\n if (startFocused) {\n const newValue = normalizeRangeValue([value, props?.value?.[1]]);\n props.onChange?.(newValue, {\n e,\n });\n }\n if (endFocused) {\n const newValue = normalizeRangeValue([props?.value?.[0], value]);\n props.onChange?.(newValue, {\n e,\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useCalendarVisible({\n dropdownOpen,\n onDropdownOpen,\n disabled,\n startRef: startFieldInputRef,\n endRef: endFieldInputRef,\n });\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 Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('end');\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: [\n startFieldRef,\n endFieldRef,\n calendarRef,\n ...(ignoreOutsideClicksRefs ?? []),\n ],\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 startFieldOnClick={setCalendarVisible.on}\n endFieldOnClick={setCalendarVisible.on}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={getFieldName(name, 0)}\n endFieldName={getFieldName(name, 1)}\n startFieldPlaceholder={\n Array.isArray(placeholder) ? placeholder?.[0] : placeholder\n }\n endFieldPlaceholder={\n Array.isArray(placeholder) ? placeholder?.[1] : placeholder\n }\n disabled={disabled}\n />\n <DatePickerDropdown\n type=\"date\"\n ref={useForkRef([dropdownRef, 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 disableDates={disableDates}\n />\n </>\n );\n });\n"],"mappings":"4iBAAA,MAAOA,UAAP,KAAsB,oBAAtB,CACA,MAAOC,aAAP,KAAyB,uBAAzB,CACA,MAAOC,MAAP,EACEC,UADF,CAEEC,WAFF,CAGEC,SAHF,CAIEC,MAJF,CAKEC,QALF,KAMO,OANP,CAQA,OAASC,eAAT,sCACA,OAASC,UAAT,iCAEA,OACEC,kBADF,gDAIA,OAASC,4BAAT,oEACA,OACEC,iBADF,CAEEC,YAFF,CAGEC,mBAHF,kBAKA,OACEC,iCADF,gBAIA,OAASC,kBAAT,6BACA,OAASC,qBAAT,gCAEA,MAAO,IAAMC,wBAA8D,CACzEf,UAAU,CAAC,SAACgB,CAAD,CAAQC,CAAR,CAAgB,aAEvBC,CAFuB,CAwBrBF,CAxBqB,CAEvBE,MAFuB,GAwBrBF,CAxBqB,CAGvBG,YAHuB,CAGvBA,CAHuB,YAGRP,iCAHQ,GAIvBQ,CAJuB,CAwBrBJ,CAxBqB,CAIvBI,MAJuB,CAKvBC,CALuB,CAwBrBL,CAxBqB,CAKvBK,YALuB,CAMvBC,CANuB,CAwBrBN,CAxBqB,CAMvBM,OANuB,CAOvBC,CAPuB,CAwBrBP,CAxBqB,CAOvBO,MAPuB,CAQvBC,CARuB,CAwBrBR,CAxBqB,CAQvBQ,QARuB,CASvBC,CATuB,CAwBrBT,CAxBqB,CASvBS,SATuB,CAUHC,CAVG,CAwBrBV,CAxBqB,CAUvBW,kBAVuB,CAWvBC,CAXuB,CAwBrBZ,CAxBqB,CAWvBY,0BAXuB,CAYvBC,CAZuB,CAwBrBb,CAxBqB,CAYvBa,wBAZuB,CAavBC,CAbuB,CAwBrBd,CAxBqB,CAavBc,QAbuB,CAcvBC,CAduB,CAwBrBf,CAxBqB,CAcvBe,iBAduB,CAevBC,CAfuB,CAwBrBhB,CAxBqB,CAevBgB,WAfuB,CAgBvBC,CAhBuB,CAwBrBjB,CAxBqB,CAgBvBiB,IAhBuB,CAiBvBC,CAjBuB,CAwBrBlB,CAxBqB,CAiBvBkB,WAjBuB,CAkBvBC,CAlBuB,CAwBrBnB,CAxBqB,CAkBvBmB,cAlBuB,CAmBvBC,CAnBuB,CAwBrBpB,CAxBqB,CAmBvBoB,YAnBuB,CAoBvBC,CApBuB,CAwBrBrB,CAxBqB,CAoBvBqB,uBApBuB,CAqBvBC,CArBuB,CAwBrBtB,CAxBqB,CAqBvBsB,QArBuB,CAsBvBC,CAtBuB,CAwBrBvB,CAxBqB,CAsBvBuB,YAtBuB,CAuBpBC,CAvBoB,0BAwBrBxB,CAxBqB,YA0BnByB,CAAa,CAAGtC,MAAM,CAAiB,IAAjB,CA1BH,CA2BnBuC,CAAW,CAAGvC,MAAM,CAAiB,IAAjB,CA3BD,CA4BnBwC,CAAkB,CAAGxC,MAAM,CAAmB,IAAnB,CA5BR,CA6BnByC,CAAgB,CAAGzC,MAAM,CAAmB,IAAnB,CA7BN,CA8BnB0C,CAAW,CAAG1C,MAAM,CAAiB,IAAjB,CA9BD,GAgCeC,QAAQ,IAhCvB,uBAgClB0C,CAhCkB,MAgCJC,CAhCI,MAoCnBC,CAAY,CAAoB,OAAjB,GAAAF,CApCI,CAqCnBG,CAAU,CAAoB,KAAjB,GAAAH,CArCM,GAsDqBjC,kBAAkB,CAAC,CAC/DuB,YAAY,CAAZA,CAD+D,CAE/DD,cAAc,CAAdA,CAF+D,CAG/DG,QAAQ,CAARA,CAH+D,CAI/DY,QAAQ,CAAEP,CAJqD,CAK/DQ,MAAM,CAAEP,CALuD,CAAD,CAtDvC,uBAsDlBQ,CAtDkB,MAsDDC,CAtDC,QA8D2BvC,qBAAqB,CAAC,CACxEa,kBAAkB,CAAED,CADoD,CAExE4B,OAAO,CAAEtC,CAAK,CAACsC,OAFyD,CAGxEC,OAAO,CAAEvC,CAAK,CAACuC,OAHyD,CAIxEC,KAAK,CAAExC,CAAK,CAACwC,KAJ2D,CAKxEC,WAAW,CAAE3D,YAL2D,CAMxE8B,0BAA0B,CAA1BA,CANwE,CAOxEwB,eAAe,CAAfA,CAPwE,CAAD,CA9DhD,uBA8DlBzB,CA9DkB,MA8DE+B,CA9DF,MA+IzB,MAtDAxD,UAAS,CAAC,UAAM,SACd,GAAI,UAAAc,CAAK,CAACwC,KAAN,iBAAc,CAAd,GAAqC,SAAjB,GAAArC,CAApB,EAAkD6B,CAAtD,CAAoE,CAClE,GAAMW,EAAc,CAAG7D,YAAY,CAACkB,CAAK,CAACwC,KAAN,CAAY,CAAZ,CAAD,CAAnC,CAIA,YAHIG,CAAc,CAACC,OAAf,aAA6BjC,CAA7B,WAA6BA,CAA7B,QAA6BA,CAAkB,CAAEiC,OAApB,EAA7B,CAGJ,EAFEF,CAAqB,CAACC,CAAD,CAEvB,CACD,CACD,GAAI,UAAA3C,CAAK,CAACwC,KAAN,iBAAc,CAAd,GAAqC,SAAjB,GAAArC,CAApB,EAAkD6B,CAAtD,CAAoE,CAClE,GAAMW,EAAc,CAAG7D,YAAY,CAACkB,CAAK,CAACwC,KAAN,CAAY,CAAZ,CAAD,CAAnC,CAEEG,CAAc,CAACC,OAAf,aAA6BjC,CAA7B,WAA6BA,CAA7B,QAA6BA,CAAkB,CAAEiC,OAApB,EAA7B,GACAD,CAAc,CAACC,OAAf,MACGjC,CAAkB,EAAI9B,SAAS,CAAC8B,CAAD,CAAqB,CAArB,CAAT,CAAiCiC,OAAjC,EADzB,CAJgE,EAOhEF,CAAqB,CAACC,CAAD,CAExB,CACF,CAlBQ,CAkBN,WAAC3C,CAAK,CAACwC,KAAP,yBAAC,EAAc,CAAd,CAAD,qBAAC,EAAkBI,OAAlB,EAAD,CAA8BR,CAA9B,CAA+CJ,CAA/C,CAlBM,CAsDT,CAlCA9C,SAAS,CAAC,UAAM,SACd,GAAI,UAAAc,CAAK,CAACwC,KAAN,iBAAc,CAAd,GAAqC,SAAjB,GAAArC,CAApB,EAAkD8B,CAAtD,CAAkE,CAChE,GAAMU,EAAc,CAAG7D,YAAY,CAACkB,CAAK,CAACwC,KAAN,CAAY,CAAZ,CAAD,CAAnC,CAIA,YAHIG,CAAc,CAACC,OAAf,aAA6BjC,CAA7B,WAA6BA,CAA7B,QAA6BA,CAAkB,CAAEiC,OAApB,EAA7B,CAGJ,EAFEF,CAAqB,CAACC,CAAD,CAEvB,CACD,CACD,GAAI,UAAA3C,CAAK,CAACwC,KAAN,iBAAc,CAAd,GAAqC,SAAjB,GAAArC,CAApB,EAAkD8B,CAAtD,CAAkE,CAChE,GAAMU,EAAc,CAAG7D,YAAY,CAACkB,CAAK,CAACwC,KAAN,CAAY,CAAZ,CAAD,CAAnC,CAEEG,CAAc,CAACC,OAAf,aAA6BjC,CAA7B,WAA6BA,CAA7B,QAA6BA,CAAkB,CAAEiC,OAApB,EAA7B,GACAD,CAAc,CAACC,OAAf,MACGjC,CAAkB,EAAI9B,SAAS,CAAC8B,CAAD,CAAqB,CAArB,CAAT,CAAiCiC,OAAjC,EADzB,CAJ8D,EAO9DF,CAAqB,CAAC7D,SAAS,CAAC8D,CAAD,CAAiB,CAAC,CAAlB,CAAV,CAExB,CACF,CAlBQ,CAkBN,WAAC3C,CAAK,CAACwC,KAAP,yBAAC,EAAc,CAAd,CAAD,qBAAC,EAAkBI,OAAlB,EAAD,CAA8BR,CAA9B,CAA+CH,CAA/C,CAlBM,CAkCT,CAdA5C,eAAe,CAAC,CACdwD,QAAQ,CAAET,CADI,CAEdU,sBAAsB,EACpBrB,CADoB,CAEpBC,CAFoB,CAGpBG,CAHoB,mCAIhBR,CAJgB,WAIhBA,CAJgB,CAIhBA,CAJgB,CAIW,EAJX,EAFR,CAQd0B,OAAO,CAAE9D,WAAW,CAAC,UAAM,CACzB8C,CAAe,IADU,CAEzBM,CAAkB,CAACW,GAAnB,EACD,CAHmB,CAGjB,EAHiB,CARN,CAAD,CAcf,CACE,wCACE,oBAAC,4BAAD,kBACMxB,CADN,EAEE,GAAG,CAAEvB,CAFP,CAGE,aAAa,CAAEwB,CAHjB,CAIE,WAAW,CAAEC,CAJf,CAKE,kBAAkB,CAAEpC,UAAU,CAAC,CAACqC,CAAD,QAAqBb,CAArB,WAAqBA,CAArB,QAAqBA,CAAQ,CAAG,CAAH,CAA7B,CAAD,CALhC,CAME,gBAAgB,CAAExB,UAAU,CAAC,CAACsC,CAAD,QAAmBd,CAAnB,WAAmBA,CAAnB,QAAmBA,CAAQ,CAAG,CAAH,CAA3B,CAAD,CAN9B,CAOE,iBAAiB,CA1EU,QAA3BmC,yBAA2B,CAACC,CAAD,CAAsC,OACrEnB,CAAe,CAAC,OAAD,CADsD,CAErEoB,KAAK,CAACC,OAAN,CAAc9C,CAAd,YAAyBA,CAAO,CAAC,CAAD,CAAhC,qBAAyB,OAAAA,CAAO,CAAM4C,CAAN,CAAhC,QAA2C5C,CAA3C,WAA2CA,CAA3C,QAA2CA,CAAO,CAAG4C,CAAH,CACnD,CAgEG,CAQE,eAAe,CAtEU,QAAzBG,uBAAyB,CAACH,CAAD,CAAsC,OACnEnB,CAAe,CAAC,KAAD,CADoD,CAEnEoB,KAAK,CAACC,OAAN,CAAc9C,CAAd,YAAyBA,CAAO,CAAC,CAAD,CAAhC,qBAAyB,OAAAA,CAAO,CAAM4C,CAAN,CAAhC,QAA2C5C,CAA3C,WAA2CA,CAA3C,QAA2CA,CAAO,CAAG4C,CAAH,CACnD,CA2DG,CASE,kBAAkB,CAChBC,KAAK,CAACC,OAAN,CAAc5C,CAAd,SAA0BA,CAA1B,WAA0BA,CAA1B,QAA0BA,CAAQ,CAAG,CAAH,CAAlC,CAA0CA,CAV9C,CAYE,mBAAmB,CACjB2C,KAAK,CAACC,OAAN,CAAc3C,CAAd,SAA2BA,CAA3B,WAA2BA,CAA3B,QAA2BA,CAAS,CAAG,CAAH,CAApC,OAbJ,CAeE,gBAAgB,CAAE0C,KAAK,CAACC,OAAN,CAAc5C,CAAd,SAA0BA,CAA1B,WAA0BA,CAA1B,QAA0BA,CAAQ,CAAG,CAAH,CAAlC,OAfpB,CAgBE,iBAAiB,CACf2C,KAAK,CAACC,OAAN,CAAc3C,CAAd,SAA2BA,CAA3B,WAA2BA,CAA3B,QAA2BA,CAAS,CAAG,CAAH,CAApC,CAA4CA,CAjBhD,CAmBE,gBAAgB,CA5FU,QAA1B6C,wBAA0B,CAACJ,CAAD,cAC9BC,MAAK,CAACC,OAAN,CAAc7C,CAAd,YAAwBA,CAAM,CAAC,CAAD,CAA9B,qBAAwB,OAAAA,CAAM,CAAM2C,CAAN,CAA9B,QAAyC3C,CAAzC,WAAyCA,CAAzC,QAAyCA,CAAM,CAAG2C,CAAH,CADjB,CAyE5B,CAoBE,iBAAiB,CAAEb,CAAkB,CAACkB,EApBxC,CAqBE,eAAe,CAAElB,CAAkB,CAACkB,EArBtC,CAsBE,cAAc,CA5FU,QAAxBC,sBAAwB,CAACN,CAAD,cAC5BC,MAAK,CAACC,OAAN,CAAc7C,CAAd,YAAwBA,CAAM,CAAC,CAAD,CAA9B,qBAAwB,OAAAA,CAAM,CAAM2C,CAAN,CAA9B,QAAyC3C,CAAzC,WAAyCA,CAAzC,QAAyCA,CAAM,CAAG2C,CAAH,CADnB,CAsE1B,CAuBE,YAAY,CAAElB,CAvBhB,CAwBE,UAAU,CAAEC,CAxBd,CAyBE,cAAc,CAAEvC,YAAY,CAACuB,CAAD,CAAO,CAAP,CAzB9B,CA0BE,YAAY,CAAEvB,YAAY,CAACuB,CAAD,CAAO,CAAP,CA1B5B,CA2BE,qBAAqB,CACnBkC,KAAK,CAACC,OAAN,CAAclC,CAAd,SAA6BA,CAA7B,WAA6BA,CAA7B,QAA6BA,CAAW,CAAG,CAAH,CAAxC,CAAgDA,CA5BpD,CA8BE,mBAAmB,CACjBiC,KAAK,CAACC,OAAN,CAAclC,CAAd,SAA6BA,CAA7B,WAA6BA,CAA7B,QAA6BA,CAAW,CAAG,CAAH,CAAxC,CAAgDA,CA/BpD,CAiCE,QAAQ,CAAEI,CAjCZ,GADF,CAoCE,oBAAC,kBAAD,EACE,IAAI,CAAC,MADP,CAEE,GAAG,CAAEhC,UAAU,CAAC,CAAC0B,CAAD,CAAca,CAAd,CAAD,CAFjB,CAGE,SAAS,CAAEJ,CAHb,CAIE,SAAS,CAAEV,CAJb,CAKE,MAAM,CAAEqB,CALV,CAME,0BAA0B,CAAEM,CAN9B,CAOE,kBAAkB,CAAE/B,CAPtB,CAQE,KAAK,CAAEX,CAAK,CAACwC,KAAN,QART,CASE,IAAI,CAAErC,CATR,CAUE,MAAM,CAAED,CAVV,CAWE,MAAM,CAAEE,CAXV,CAYE,OAAO,CAAEJ,CAAK,CAACuC,OAZjB,CAaE,OAAO,CAAEvC,CAAK,CAACsC,OAbjB,CAcE,IAAI,CAAEjC,CAdR,CAeE,QAAQ,CA5JsC,QAA9CoD,YAA8C,CAACjB,CAAD,GAAkB,IAARU,EAAQ,GAARA,CAAQ,CACpE,GAAIlB,CAAJ,CAAkB,SACV0B,CAAQ,CAAG/D,mBAAmB,CAAC,CAAC6C,CAAD,QAAQxC,CAAR,WAAQA,CAAR,YAAQA,CAAK,CAAEwC,KAAf,qBAAQ,EAAe,CAAf,CAAR,CAAD,CADpB,WAEhBxC,CAAK,CAAC2D,QAFU,qBAEhB,OAAA3D,CAAK,CAAY0D,CAAZ,CAAsB,CACzBR,CAAC,CAADA,CADyB,CAAtB,CAGN,CACD,GAAIjB,CAAJ,CAAgB,SACRyB,CAAQ,CAAG/D,mBAAmB,CAAC,QAACK,CAAD,WAACA,CAAD,YAACA,CAAK,CAAEwC,KAAR,qBAAC,EAAe,CAAf,CAAD,CAAoBA,CAApB,CAAD,CADtB,WAEdxC,CAAK,CAAC2D,QAFQ,qBAEd,OAAA3D,CAAK,CAAY0D,CAAZ,CAAsB,CACzBR,CAAC,CAADA,CADyB,CAAtB,CAGN,CACF,CAgIG,CAgBE,wBAAwB,CAAErC,CAhB5B,CAiBE,MAAM,CAAEpB,iBAAiB,CAACO,CAAK,CAAC4D,KAAP,CAjB3B,CAkBE,YAAY,CAAErC,CAlBhB,EApCF,CA0DH,CA1MS,CADL"}
|
|
1
|
+
{"version":3,"file":"DatePickerTypeDateRange.js","names":["addMonths","startOfMonth","React","forwardRef","useCallback","useEffect","useRef","useState","useClickOutside","useForkRef","DatePickerDropdown","DatePickerFieldTypeDateRange","getDropdownZIndex","getFieldName","normalizeRangeValue","datePickerPropDateTimeViewDefault","useCalendarVisible","useCurrentVisibleDate","DatePickerTypeDateRange","props","ref","events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDateProp","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","dropdownClassName","dropdownRef","name","placeholder","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates","fieldProps","startFieldRef","endFieldRef","startFieldInputRef","endFieldInputRef","calendarRef","fieldFocused","setFieldFocused","startFocused","endFocused","startRef","endRef","calendarVisible","setCalendarVisible","maxDate","minDate","value","startOfUnit","setCurrentVisibleDate","newVisibleDate","getTime","isActive","ignoreClicksInsideRefs","handler","off","startFieldOnFocusHandler","e","Array","isArray","endFieldOnFocusHandler","startFieldOnBlurHandler","on","endFieldOnBlurHandler","handleChange","newValue","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';\nimport { useForkRef } from '##/hooks/useForkRef';\n\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 { useCalendarVisible } from '../useCalendarVisible';\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 dropdownRef,\n name,\n placeholder,\n onDropdownOpen,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n disabled,\n disableDates,\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 handleChange: DatePickerDropdownPropOnChange = (value, { e }) => {\n if (startFocused) {\n const newValue = normalizeRangeValue([value, props?.value?.[1]]);\n props.onChange?.(newValue, {\n e,\n });\n }\n if (endFocused) {\n const newValue = normalizeRangeValue([props?.value?.[0], value]);\n props.onChange?.(newValue, {\n e,\n });\n }\n };\n\n const [calendarVisible, setCalendarVisible] = useCalendarVisible({\n dropdownOpen,\n onDropdownOpen,\n disabled,\n startRef: startFieldInputRef,\n endRef: endFieldInputRef,\n });\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 Array.isArray(onFocus) ? onFocus[0]?.(e) : onFocus?.(e);\n };\n\n const endFieldOnFocusHandler = (e: React.FocusEvent<HTMLElement>) => {\n setFieldFocused('end');\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: [\n startFieldRef,\n endFieldRef,\n calendarRef,\n ...(ignoreOutsideClicksRefs ?? []),\n ],\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 startFieldOnClick={setCalendarVisible.on}\n endFieldOnClick={setCalendarVisible.on}\n endFieldOnBlur={endFieldOnBlurHandler}\n startFocused={startFocused}\n endFocused={endFocused}\n startFieldName={getFieldName(name, 0)}\n endFieldName={getFieldName(name, 1)}\n startFieldPlaceholder={\n Array.isArray(placeholder) ? placeholder?.[0] : placeholder\n }\n endFieldPlaceholder={\n Array.isArray(placeholder) ? placeholder?.[1] : placeholder\n }\n disabled={disabled}\n />\n <DatePickerDropdown\n type=\"date\"\n ref={useForkRef([dropdownRef, 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={handleChange}\n renderAdditionalControls={renderAdditionalControls}\n zIndex={getDropdownZIndex(props.style)}\n disableDates={disableDates}\n />\n </>\n );\n });\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","placeholder","multiplicityMinutes","dropdownClassName","dropdownRef","multiplicitySeconds","multiplicityHours","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates"];import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useCallback,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateTimeRange}from"../DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange";import{getDropdownZIndex,getFieldName,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDateTimeRange=forwardRef(function(a,b){var c,d,e,f,g=a.events,h=a.dateTimeView,i=void 0===h?datePickerPropDateTimeViewDefault:h,j=a.locale,k=a.dropdownForm,l=a.onFocus,m=a.onBlur,n=a.leftSide,o=a.rightSide,p=a.currentVisibleDate,q=a.onChangeCurrentVisibleDate,r=a.renderAdditionalControls,s=a.inputRef,t=a.name,u=a.placeholder,v=a.multiplicityMinutes,w=a.dropdownClassName,x=a.dropdownRef,y=a.multiplicitySeconds,z=a.multiplicityHours,A=a.onDropdownOpen,B=a.dropdownOpen,C=a.ignoreOutsideClicksRefs,D=a.disabled,E=a.disableDates,F=_objectWithoutProperties(a,_excluded),G=useRef(null),H=useRef(null),I=useRef(null),J=useRef(null),K=useRef(null),L=useState(!1),M=_slicedToArray(L,2),N=M[0],O=M[1],P="start"===N,Q="end"===N,R=useCalendarVisible({dropdownOpen:B,onDropdownOpen:A,disabled:D,startRef:I,endRef:J}),S=_slicedToArray(R,2),T=S[0],U=S[1],V=useCurrentVisibleDate({currentVisibleDate:p,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:q,calendarVisible:T}),W=_slicedToArray(V,2),X=W[0],Y=W[1];return useEffect(function(){var b;if(null!==(b=a.value)&&void 0!==b&&b[0]&&P){var c=startOfMonth(a.value[0]);c.getTime()!==(null===X||void 0===X?void 0:X.getTime())&&Y(c)}},[null===(c=a.value)||void 0===c||null===(d=c[0])||void 0===d?void 0:d.getTime(),T,P]),useEffect(function(){var b;if(null!==(b=a.value)&&void 0!==b&&b[1]&&Q){var c=startOfMonth(a.value[1]);c.getTime()!==(null===X||void 0===X?void 0:X.getTime())&&Y(c)}},[null===(e=a.value)||void 0===e||null===(f=e[1])||void 0===f?void 0:f.getTime(),T,Q]),useClickOutside({isActive:T,ignoreClicksInsideRefs:[G,H,K].concat(_toConsumableArray(null!==C&&void 0!==C?C:[])),handler:useCallback(function(){O(!1),U.off()},[])}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDateTimeRange,Object.assign({},F,{ref:b,startFieldRef:G,endFieldRef:H,startFieldInputRef:useForkRef([I,null===s||void 0===s?void 0:s[0]]),endFieldInputRef:useForkRef([J,null===s||void 0===s?void 0:s[1]]),startFieldOnFocus:function startFieldOnFocusHandler(a){var b;O("start"),Array.isArray(l)?null===(b=l[0])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},endFieldOnFocus:function endFieldOnFocusHandler(a){var b;O("end"),Array.isArray(l)?null===(b=l[1])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},startFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[0]:n,startFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[0]:void 0,endFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[1]:void 0,endFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[1]:o,startFieldOnBlur:function startFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[0])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},endFieldOnBlur:function endFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[1])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},startFieldOnClick:U.on,endFieldOnClick:U.on,startFocused:P,endFocused:Q,startFieldName:getFieldName(t,0),endFieldName:getFieldName(t,1),disabled:D,startFieldPlaceholder:Array.isArray(u)?null===u||void 0===u?void 0:u[0]:u,endFieldPlaceholder:Array.isArray(u)?null===u||void 0===u?void 0:u[1]:u})),React.createElement(DatePickerDropdown,{type:"date-time",ref:useForkRef([x,K]),anchorRef:G,isOpen:T,className:w,onChangeCurrentVisibleDate:Y,currentVisibleDate:X,value:a.value||void 0,timeFor:N||void 0,view:i,events:g,locale:j,minDate:a.minDate,maxDate:a.maxDate,form:k,onChange:function
|
|
1
|
+
import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["events","dateTimeView","locale","dropdownForm","onFocus","onBlur","leftSide","rightSide","currentVisibleDate","onChangeCurrentVisibleDate","renderAdditionalControls","inputRef","name","placeholder","multiplicityMinutes","dropdownClassName","dropdownRef","multiplicitySeconds","multiplicityHours","onDropdownOpen","dropdownOpen","ignoreOutsideClicksRefs","disabled","disableDates"];import startOfMonth from"date-fns/startOfMonth";import React,{forwardRef,useCallback,useEffect,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside/useClickOutside";import{useForkRef}from"../../../hooks/useForkRef/useForkRef";import{DatePickerDropdown}from"../DatePickerDropdown/DatePickerDropdown";import{DatePickerFieldTypeDateTimeRange}from"../DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange";import{getDropdownZIndex,getFieldName,normalizeRangeValue}from"../helpers";import{datePickerPropDateTimeViewDefault}from"../types";import{useCalendarVisible}from"../useCalendarVisible";import{useCurrentVisibleDate}from"../useCurrentVisibleDate";export var DatePickerTypeDateTimeRange=forwardRef(function(a,b){var c,d,e,f,g=a.events,h=a.dateTimeView,i=void 0===h?datePickerPropDateTimeViewDefault:h,j=a.locale,k=a.dropdownForm,l=a.onFocus,m=a.onBlur,n=a.leftSide,o=a.rightSide,p=a.currentVisibleDate,q=a.onChangeCurrentVisibleDate,r=a.renderAdditionalControls,s=a.inputRef,t=a.name,u=a.placeholder,v=a.multiplicityMinutes,w=a.dropdownClassName,x=a.dropdownRef,y=a.multiplicitySeconds,z=a.multiplicityHours,A=a.onDropdownOpen,B=a.dropdownOpen,C=a.ignoreOutsideClicksRefs,D=a.disabled,E=a.disableDates,F=_objectWithoutProperties(a,_excluded),G=useRef(null),H=useRef(null),I=useRef(null),J=useRef(null),K=useRef(null),L=useState(!1),M=_slicedToArray(L,2),N=M[0],O=M[1],P="start"===N,Q="end"===N,R=useCalendarVisible({dropdownOpen:B,onDropdownOpen:A,disabled:D,startRef:I,endRef:J}),S=_slicedToArray(R,2),T=S[0],U=S[1],V=useCurrentVisibleDate({currentVisibleDate:p,maxDate:a.maxDate,minDate:a.minDate,value:a.value,startOfUnit:startOfMonth,onChangeCurrentVisibleDate:q,calendarVisible:T}),W=_slicedToArray(V,2),X=W[0],Y=W[1];return useEffect(function(){var b;if(null!==(b=a.value)&&void 0!==b&&b[0]&&P){var c=startOfMonth(a.value[0]);c.getTime()!==(null===X||void 0===X?void 0:X.getTime())&&Y(c)}},[null===(c=a.value)||void 0===c||null===(d=c[0])||void 0===d?void 0:d.getTime(),T,P]),useEffect(function(){var b;if(null!==(b=a.value)&&void 0!==b&&b[1]&&Q){var c=startOfMonth(a.value[1]);c.getTime()!==(null===X||void 0===X?void 0:X.getTime())&&Y(c)}},[null===(e=a.value)||void 0===e||null===(f=e[1])||void 0===f?void 0:f.getTime(),T,Q]),useClickOutside({isActive:T,ignoreClicksInsideRefs:[G,H,K].concat(_toConsumableArray(null!==C&&void 0!==C?C:[])),handler:useCallback(function(){O(!1),U.off()},[])}),React.createElement(React.Fragment,null,React.createElement(DatePickerFieldTypeDateTimeRange,Object.assign({},F,{ref:b,startFieldRef:G,endFieldRef:H,startFieldInputRef:useForkRef([I,null===s||void 0===s?void 0:s[0]]),endFieldInputRef:useForkRef([J,null===s||void 0===s?void 0:s[1]]),startFieldOnFocus:function startFieldOnFocusHandler(a){var b;O("start"),Array.isArray(l)?null===(b=l[0])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},endFieldOnFocus:function endFieldOnFocusHandler(a){var b;O("end"),Array.isArray(l)?null===(b=l[1])||void 0===b?void 0:b.call(l,a):null===l||void 0===l?void 0:l(a)},startFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[0]:n,startFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[0]:void 0,endFieldLeftSide:Array.isArray(n)?null===n||void 0===n?void 0:n[1]:void 0,endFieldRightSide:Array.isArray(o)?null===o||void 0===o?void 0:o[1]:o,startFieldOnBlur:function startFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[0])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},endFieldOnBlur:function endFieldOnBlurHandler(a){var b;return Array.isArray(m)?null===(b=m[1])||void 0===b?void 0:b.call(m,a):null===m||void 0===m?void 0:m(a)},startFieldOnClick:U.on,endFieldOnClick:U.on,startFocused:P,endFocused:Q,startFieldName:getFieldName(t,0),endFieldName:getFieldName(t,1),disabled:D,startFieldPlaceholder:Array.isArray(u)?null===u||void 0===u?void 0:u[0]:u,endFieldPlaceholder:Array.isArray(u)?null===u||void 0===u?void 0:u[1]:u})),React.createElement(DatePickerDropdown,{type:"date-time",ref:useForkRef([x,K]),anchorRef:G,isOpen:T,className:w,onChangeCurrentVisibleDate:Y,currentVisibleDate:X,value:a.value||void 0,timeFor:N||void 0,view:i,events:g,locale:j,minDate:a.minDate,maxDate:a.maxDate,form:k,onChange:function handleChange(b,c){var d=c.e;if(P){var e,f,g=normalizeRangeValue([b,null===a||void 0===a||null===(e=a.value)||void 0===e?void 0:e[1]]);null===(f=a.onChange)||void 0===f?void 0:f.call(a,g,{e:d})}if(Q){var h,i,j=normalizeRangeValue([null===a||void 0===a||null===(h=a.value)||void 0===h?void 0:h[0],b]);null===(i=a.onChange)||void 0===i?void 0:i.call(a,j,{e:d})}},renderAdditionalControls:r,multiplicityMinutes:v,multiplicitySeconds:y,multiplicityHours:z,zIndex:getDropdownZIndex(a.style),disableDates:E}))});
|
|
2
2
|
//# sourceMappingURL=DatePickerTypeDateTimeRange.js.map
|