@consta/uikit 3.15.1 → 3.16.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/Attach/package.json +1 -1
- package/Attachment/package.json +1 -1
- package/Avatar/package.json +1 -1
- package/Badge/package.json +1 -1
- package/BasicSelectDeprecated/package.json +1 -1
- package/Breadcrumbs/package.json +1 -1
- package/BreadcrumbsCanary/package.json +1 -1
- package/Button/package.json +1 -1
- package/CHANGELOG.md +26 -8
- package/Calendar/package.json +1 -1
- package/Card/package.json +1 -1
- package/Checkbox/package.json +1 -1
- package/CheckboxGroup/package.json +1 -1
- package/ChoiceGroup/package.json +1 -1
- package/Collapse/package.json +1 -1
- package/CollapseGroup/package.json +1 -1
- package/Combobox/package.json +1 -1
- package/ComboboxDeprecated/package.json +1 -1
- package/ContextMenu/package.json +1 -1
- package/DatePickerCanary/package.json +1 -1
- package/DateTimeCanary/package.json +1 -1
- package/DragNDropField/package.json +1 -1
- package/EventInterceptor/package.json +1 -1
- package/FieldCaption/package.json +1 -1
- package/FieldLabel/package.json +1 -1
- package/File/package.json +1 -1
- package/FileField/package.json +1 -1
- package/FileIcon/package.json +1 -1
- package/FileIconAvi/package.json +1 -1
- package/FileIconBmp/package.json +1 -1
- package/FileIconCsv/package.json +1 -1
- package/FileIconDoc/package.json +1 -1
- package/FileIconExe/package.json +1 -1
- package/FileIconGif/package.json +1 -1
- package/FileIconJpg/package.json +1 -1
- package/FileIconJson/package.json +1 -1
- package/FileIconLoading/package.json +1 -1
- package/FileIconMov/package.json +1 -1
- package/FileIconMp3/package.json +1 -1
- package/FileIconMp4/package.json +1 -1
- package/FileIconPdf/package.json +1 -1
- package/FileIconPng/package.json +1 -1
- package/FileIconPtt/package.json +1 -1
- package/FileIconRar/package.json +1 -1
- package/FileIconRtf/package.json +1 -1
- package/FileIconTiff/package.json +1 -1
- package/FileIconTxt/package.json +1 -1
- package/FileIconUndefined/package.json +1 -1
- package/FileIconWav/package.json +1 -1
- package/FileIconXls/package.json +1 -1
- package/FileIconZip/package.json +1 -1
- package/Grid/package.json +1 -1
- package/Header/package.json +1 -1
- package/Icon/package.json +1 -1
- package/IconAdd/package.json +1 -1
- package/IconAddToComparison/package.json +1 -1
- package/IconAlert/package.json +1 -1
- package/IconAlignBlocksLeft/package.json +1 -1
- package/IconAlignBlocksRight/package.json +1 -1
- package/IconAlignCenter/package.json +1 -1
- package/IconAlignJustify/package.json +1 -1
- package/IconAlignLeft/package.json +1 -1
- package/IconAlignRight/package.json +1 -1
- package/IconAllDone/package.json +1 -1
- package/IconArrowDown/package.json +1 -1
- package/IconArrowLeft/package.json +1 -1
- package/IconArrowRight/package.json +1 -1
- package/IconArrowUp/package.json +1 -1
- package/IconArtBrush/package.json +1 -1
- package/IconAttach/package.json +1 -1
- package/IconBackward/package.json +1 -1
- package/IconBag/package.json +1 -1
- package/IconBarrier/package.json +1 -1
- package/IconBento/package.json +1 -1
- package/IconBold/package.json +1 -1
- package/IconBook/package.json +1 -1
- package/IconBookmarkFilled/package.json +1 -1
- package/IconBookmarkStroked/package.json +1 -1
- package/IconCalculator/package.json +1 -1
- package/IconCalendar/package.json +1 -1
- package/IconCamera/package.json +1 -1
- package/IconCancel/package.json +1 -1
- package/IconCards/package.json +1 -1
- package/IconChat/package.json +1 -1
- package/IconCheck/package.json +1 -1
- package/IconClose/package.json +1 -1
- package/IconCollapse/package.json +1 -1
- package/IconColorFill/package.json +1 -1
- package/IconColorText/package.json +1 -1
- package/IconColumns/package.json +1 -1
- package/IconComment/package.json +1 -1
- package/IconConnection/package.json +1 -1
- package/IconCopy/package.json +1 -1
- package/IconCrown/package.json +1 -1
- package/IconCursorMouse/package.json +1 -1
- package/IconDataNull/package.json +1 -1
- package/IconDiamond/package.json +1 -1
- package/IconDinosaur/package.json +1 -1
- package/IconDisconnection/package.json +1 -1
- package/IconDocAdd/package.json +1 -1
- package/IconDocBlank/package.json +1 -1
- package/IconDocDelete/package.json +1 -1
- package/IconDocExport/package.json +1 -1
- package/IconDocFilled/package.json +1 -1
- package/IconDown/package.json +1 -1
- package/IconDownload/package.json +1 -1
- package/IconDrag/package.json +1 -1
- package/IconDraggable/package.json +1 -1
- package/IconDrillingRig/package.json +1 -1
- package/IconDrop/package.json +1 -1
- package/IconEdit/package.json +1 -1
- package/IconExit/package.json +1 -1
- package/IconExpand/package.json +1 -1
- package/IconEye/package.json +1 -1
- package/IconEyeClose/package.json +1 -1
- package/IconFavorite/package.json +1 -1
- package/IconFilter/package.json +1 -1
- package/IconFitToDefault/package.json +1 -1
- package/IconFlagFilled/package.json +1 -1
- package/IconFlagStroked/package.json +1 -1
- package/IconFolders/package.json +1 -1
- package/IconForward/package.json +1 -1
- package/IconFunnel/package.json +1 -1
- package/IconGas/package.json +1 -1
- package/IconGeo/package.json +1 -1
- package/IconGrouping/package.json +1 -1
- package/IconHamburger/package.json +1 -1
- package/IconHand/package.json +1 -1
- package/IconHealth/package.json +1 -1
- package/IconHome/package.json +1 -1
- package/IconInComparison/package.json +1 -1
- package/IconInfo/package.json +1 -1
- package/IconIntroduction/package.json +1 -1
- package/IconIpad/package.json +1 -1
- package/IconItalic/package.json +1 -1
- package/IconKebab/package.json +1 -1
- package/IconLaptop/package.json +1 -1
- package/IconLayers/package.json +1 -1
- package/IconLeaf/package.json +1 -1
- package/IconLightningBolt/package.json +1 -1
- package/IconLineAndBarChart/package.json +1 -1
- package/IconLink/package.json +1 -1
- package/IconList/package.json +1 -1
- package/IconListNumbered/package.json +1 -1
- package/IconLock/package.json +1 -1
- package/IconLogicalElement/package.json +1 -1
- package/IconMBU/package.json +1 -1
- package/IconMGRP/package.json +1 -1
- package/IconMLSP/package.json +1 -1
- package/IconMMP/package.json +1 -1
- package/IconMail/package.json +1 -1
- package/IconMap/package.json +1 -1
- package/IconMaxHeight/package.json +1 -1
- package/IconMaxWidth/package.json +1 -1
- package/IconMeatball/package.json +1 -1
- package/IconMic/package.json +1 -1
- package/IconMolecules/package.json +1 -1
- package/IconMoon/package.json +1 -1
- package/IconNodeEnd/package.json +1 -1
- package/IconNodeStart/package.json +1 -1
- package/IconNodeStep/package.json +1 -1
- package/IconNodes/package.json +1 -1
- package/IconOpenInNew/package.json +1 -1
- package/IconOperators/package.json +1 -1
- package/IconPanelBottom/package.json +1 -1
- package/IconPanelLeft/package.json +1 -1
- package/IconPanelRight/package.json +1 -1
- package/IconPanelTop/package.json +1 -1
- package/IconPaste/package.json +1 -1
- package/IconPause/package.json +1 -1
- package/IconPhone/package.json +1 -1
- package/IconPhoto/package.json +1 -1
- package/IconPlay/package.json +1 -1
- package/IconPressure/package.json +1 -1
- package/IconProcessing/package.json +1 -1
- package/IconQuestion/package.json +1 -1
- package/IconQuote/package.json +1 -1
- package/IconRUO/package.json +1 -1
- package/IconRUS/package.json +1 -1
- package/IconRecord/package.json +1 -1
- package/IconRemove/package.json +1 -1
- package/IconRemoveFromComparison/package.json +1 -1
- package/IconReply/package.json +1 -1
- package/IconResize/package.json +1 -1
- package/IconRestart/package.json +1 -1
- package/IconRevert/package.json +1 -1
- package/IconRing/package.json +1 -1
- package/IconRouble/package.json +1 -1
- package/IconRuler/package.json +1 -1
- package/IconSave/package.json +1 -1
- package/IconScreen/package.json +1 -1
- package/IconSearch/package.json +1 -1
- package/IconSelect/package.json +1 -1
- package/IconSelectOpen/package.json +1 -1
- package/IconSendMessage/package.json +1 -1
- package/IconSettings/package.json +1 -1
- package/IconShape/package.json +1 -1
- package/IconShuffle/package.json +1 -1
- package/IconSmile/package.json +1 -1
- package/IconSortDown/package.json +1 -1
- package/IconSortDownCenter/package.json +1 -1
- package/IconSortUp/package.json +1 -1
- package/IconSortUpCenter/package.json +1 -1
- package/IconStop/package.json +1 -1
- package/IconStorage/package.json +1 -1
- package/IconStrikethrough/package.json +1 -1
- package/IconSun/package.json +1 -1
- package/IconTable/package.json +1 -1
- package/IconTarget/package.json +1 -1
- package/IconTeam/package.json +1 -1
- package/IconTechResponse/package.json +1 -1
- package/IconTest/package.json +1 -1
- package/IconThumbUp/package.json +1 -1
- package/IconTie/package.json +1 -1
- package/IconTop/package.json +1 -1
- package/IconTrash/package.json +1 -1
- package/IconType/package.json +1 -1
- package/IconUnderline/package.json +1 -1
- package/IconUnlock/package.json +1 -1
- package/IconUnsort/package.json +1 -1
- package/IconUnsortCenter/package.json +1 -1
- package/IconUpload/package.json +1 -1
- package/IconUser/package.json +1 -1
- package/IconVZD/package.json +1 -1
- package/IconVideo/package.json +1 -1
- package/IconWarning/package.json +1 -1
- package/IconWatch/package.json +1 -1
- package/IconWideScreen/package.json +1 -1
- package/IconWorld/package.json +1 -1
- package/Informer/package.json +1 -1
- package/LayoutCanary/package.json +1 -1
- package/Loader/package.json +1 -1
- package/MixCard/package.json +1 -1
- package/MixFocus/package.json +1 -1
- package/MixPopoverAnimate/es.js +1 -0
- package/MixPopoverAnimate/index.d.ts +1 -0
- package/MixPopoverAnimate/index.js +4 -0
- package/{MixDropdownAnimate → MixPopoverAnimate}/package.json +2 -2
- package/MixSpace/package.json +1 -1
- package/MixVisuallyHidden/package.json +1 -1
- package/Modal/package.json +1 -1
- package/MultiComboboxDeprecated/package.json +1 -1
- package/Pagination/package.json +1 -1
- package/Popover/package.json +1 -1
- package/PortalWithTheme/package.json +1 -1
- package/ProgressSpin/package.json +1 -1
- package/ProgressStepBarCanary/package.json +1 -1
- package/Radio/package.json +1 -1
- package/RadioGroup/package.json +1 -1
- package/Responses/package.json +1 -1
- package/Responses403/package.json +1 -1
- package/Responses404/package.json +1 -1
- package/Responses500/package.json +1 -1
- package/Responses503/package.json +1 -1
- package/ResponsesConnectionError/package.json +1 -1
- package/ResponsesDeleted/package.json +1 -1
- package/ResponsesEmptyBox/package.json +1 -1
- package/ResponsesEmptyPockets/package.json +1 -1
- package/ResponsesExit/package.json +1 -1
- package/ResponsesImage/package.json +1 -1
- package/ResponsesImage403/package.json +1 -1
- package/ResponsesImage404/package.json +1 -1
- package/ResponsesImage500/package.json +1 -1
- package/ResponsesImage503/package.json +1 -1
- package/ResponsesImageConnectionError/package.json +1 -1
- package/ResponsesImageDeleted/package.json +1 -1
- package/ResponsesImageEmptyBox/package.json +1 -1
- package/ResponsesImageEmptyPockets/package.json +1 -1
- package/ResponsesImageNothingFound/package.json +1 -1
- package/ResponsesImageSuccess/package.json +1 -1
- package/ResponsesNothingFound/package.json +1 -1
- package/ResponsesSuccess/package.json +1 -1
- package/Select/package.json +1 -1
- package/Sidebar/package.json +1 -1
- package/Skeleton/package.json +1 -1
- package/SliderCanary/package.json +1 -1
- package/SnackBar/package.json +1 -1
- package/Steps/package.json +1 -1
- package/Switch/package.json +1 -1
- package/SwitchGroup/package.json +1 -1
- package/Table/package.json +1 -1
- package/Tabs/package.json +1 -1
- package/Tag/package.json +1 -1
- package/TagBase/package.json +1 -1
- package/Text/package.json +1 -1
- package/TextField/package.json +1 -1
- package/Theme/package.json +1 -1
- package/ThemeToggler/package.json +1 -1
- package/Timer/package.json +1 -1
- package/Tooltip/package.json +1 -1
- package/User/package.json +1 -1
- package/UserSelect/package.json +1 -1
- package/UserSelectDeprecated/package.json +1 -1
- package/__internal__/cjs-src/components/BreadcrumbsCanary/BreadcrumbsMore/BreadcrumbsMore.d.ts +6 -0
- package/__internal__/cjs-src/components/BreadcrumbsCanary/BreadcrumbsMore/BreadcrumbsMore.js +17 -4
- package/__internal__/cjs-src/components/Combobox/Combobox.js +4 -4
- package/__internal__/cjs-src/components/Combobox/helpers.d.ts +2 -0
- package/__internal__/cjs-src/components/ContextMenu/ContextMenu.js +1 -1
- package/__internal__/cjs-src/components/ContextMenu/helpers.d.ts +1 -0
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerCanary.js +3 -1
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerDropdown/DatePickerDropdown.css +0 -49
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerDropdown/DatePickerDropdown.d.ts +1 -0
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerDropdown/DatePickerDropdown.js +11 -6
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.d.ts +0 -1
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.js +9 -13
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateRange/helpers.d.ts +0 -3
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateRange/helpers.js +0 -33
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange.d.ts +83 -0
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange.js +98 -0
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateTimeRange/helpers.d.ts +30 -0
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateTimeRange/helpers.js +2 -0
- package/__internal__/cjs-src/components/DatePickerCanary/{DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.css → DatePickerMixRangeField/DatePickerMixRangeField.css} +16 -16
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerMixRangeField/DatePickerMixRangeField.d.ts +2 -0
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerMixRangeField/DatePickerMixRangeField.js +6 -0
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeDate/DatePickerTypeDate.js +1 -1
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeDateRange/DatePickerTypeDateRange.js +31 -34
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeDateTime/DatePickerTypeDateTime.js +4 -5
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.d.ts +2 -0
- package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js +95 -0
- package/__internal__/cjs-src/components/DatePickerCanary/helpers.d.ts +10 -7
- package/__internal__/cjs-src/components/DatePickerCanary/helpers.js +37 -2
- package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeDateTime/DateTimeTypeDateTime.js +7 -7
- package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeDateTime/useOnChange.d.ts +3 -2
- package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeDateTime/useOnChange.js +18 -4
- package/__internal__/cjs-src/components/DateTimeCanary/helpers/types.d.ts +3 -1
- package/__internal__/cjs-src/components/EventInterceptor/eventInterceptorMap.d.ts +1 -1
- package/__internal__/cjs-src/components/EventInterceptor/propsHandlers/useTextFieldEventsHandler.d.ts +1 -1
- package/__internal__/cjs-src/components/Select/Select.js +4 -4
- package/__internal__/cjs-src/components/Select/helpers.d.ts +2 -0
- package/__internal__/cjs-src/components/SelectComponents/SelectDropdown/SelectDropdown.css +2 -1
- package/__internal__/cjs-src/components/SelectComponents/SelectDropdown/SelectDropdown.d.ts +2 -0
- package/__internal__/cjs-src/components/SelectComponents/SelectDropdown/SelectDropdown.js +3 -2
- package/__internal__/cjs-src/components/SelectComponents/helpers.d.ts +1 -0
- package/__internal__/cjs-src/components/SelectComponents/helpers.js +2 -1
- package/__internal__/cjs-src/components/SliderCanary/SliderCanary.js +5 -3
- package/__internal__/cjs-src/components/SliderCanary/SliderInput/SliderInput.d.ts +1 -1
- package/__internal__/cjs-src/components/SliderCanary/SliderInput/SliderInput.js +1 -1
- package/__internal__/cjs-src/components/SliderCanary/useSlider/helper.js +4 -11
- package/__internal__/cjs-src/components/SliderCanary/useSlider/useSlider.js +7 -15
- package/__internal__/cjs-src/components/SliderCanary/useSliderStationing.js +4 -10
- package/__internal__/cjs-src/components/TextField/TextField.js +28 -16
- package/__internal__/cjs-src/components/TextField/helpers.d.ts +17 -2
- package/__internal__/cjs-src/components/TextField/helpers.js +52 -1
- package/__internal__/cjs-src/components/UserSelect/UserSelect.js +4 -4
- package/__internal__/cjs-src/components/UserSelect/helpers.d.ts +2 -0
- package/__internal__/cjs-src/hooks/useHideElementsInLine/useHideElementsInLine.d.ts +1 -1
- package/__internal__/cjs-src/hooks/useRefs/useRefs.d.ts +1 -1
- package/__internal__/cjs-src/hooks/useSelect/useSelect.d.ts +1 -0
- package/__internal__/cjs-src/hooks/useSelect/useSelect.js +4 -2
- package/__internal__/cjs-src/hooks/useSortSteps/useSortSteps.d.ts +7 -0
- package/__internal__/cjs-src/hooks/useSortSteps/useSortSteps.js +28 -0
- package/__internal__/cjs-src/hooks/useTimer/useTimer.js +6 -1
- package/__internal__/cjs-src/mixs/MixPopoverAnimate/MixPopoverAnimate.css +76 -0
- package/__internal__/cjs-src/mixs/MixPopoverAnimate/MixPopoverAnimate.d.ts +12 -0
- package/__internal__/cjs-src/mixs/MixPopoverAnimate/MixPopoverAnimate.js +10 -0
- package/__internal__/src/components/BreadcrumbsCanary/BreadcrumbsMore/BreadcrumbsMore.d.ts +6 -0
- package/__internal__/src/components/BreadcrumbsCanary/BreadcrumbsMore/BreadcrumbsMore.js +18 -5
- package/__internal__/src/components/Combobox/Combobox.js +5 -5
- package/__internal__/src/components/Combobox/helpers.d.ts +2 -0
- package/__internal__/src/components/ContextMenu/ContextMenu.js +1 -1
- package/__internal__/src/components/ContextMenu/helpers.d.ts +1 -0
- package/__internal__/src/components/DatePickerCanary/DatePickerCanary.js +3 -1
- package/__internal__/src/components/DatePickerCanary/DatePickerDropdown/DatePickerDropdown.css +0 -49
- package/__internal__/src/components/DatePickerCanary/DatePickerDropdown/DatePickerDropdown.d.ts +1 -0
- package/__internal__/src/components/DatePickerCanary/DatePickerDropdown/DatePickerDropdown.js +14 -9
- package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.d.ts +0 -1
- package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.js +10 -14
- package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateRange/helpers.d.ts +0 -3
- package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateRange/helpers.js +0 -32
- package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange.d.ts +83 -0
- package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange.js +95 -0
- package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateTimeRange/helpers.d.ts +30 -0
- package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateTimeRange/helpers.js +0 -0
- package/__internal__/src/components/DatePickerCanary/{DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.css → DatePickerMixRangeField/DatePickerMixRangeField.css} +16 -16
- package/__internal__/src/components/DatePickerCanary/DatePickerMixRangeField/DatePickerMixRangeField.d.ts +2 -0
- package/__internal__/src/components/DatePickerCanary/DatePickerMixRangeField/DatePickerMixRangeField.js +3 -0
- package/__internal__/src/components/DatePickerCanary/DatePickerTypeDate/DatePickerTypeDate.js +1 -1
- package/__internal__/src/components/DatePickerCanary/DatePickerTypeDateRange/DatePickerTypeDateRange.js +31 -34
- package/__internal__/src/components/DatePickerCanary/DatePickerTypeDateTime/DatePickerTypeDateTime.js +4 -5
- package/__internal__/src/components/DatePickerCanary/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.d.ts +2 -0
- package/__internal__/src/components/DatePickerCanary/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js +92 -0
- package/__internal__/src/components/DatePickerCanary/helpers.d.ts +10 -7
- package/__internal__/src/components/DatePickerCanary/helpers.js +36 -1
- package/__internal__/src/components/DateTimeCanary/DateTimeTypeDateTime/DateTimeTypeDateTime.js +7 -7
- package/__internal__/src/components/DateTimeCanary/DateTimeTypeDateTime/useOnChange.d.ts +3 -2
- package/__internal__/src/components/DateTimeCanary/DateTimeTypeDateTime/useOnChange.js +18 -4
- package/__internal__/src/components/DateTimeCanary/helpers/types.d.ts +3 -1
- package/__internal__/src/components/EventInterceptor/eventInterceptorMap.d.ts +1 -1
- package/__internal__/src/components/EventInterceptor/propsHandlers/useTextFieldEventsHandler.d.ts +1 -1
- package/__internal__/src/components/Select/Select.js +5 -5
- package/__internal__/src/components/Select/helpers.d.ts +2 -0
- package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.css +2 -1
- package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.d.ts +2 -0
- package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.js +3 -2
- package/__internal__/src/components/SelectComponents/helpers.d.ts +1 -0
- package/__internal__/src/components/SelectComponents/helpers.js +1 -0
- package/__internal__/src/components/SliderCanary/SliderCanary.js +5 -3
- package/__internal__/src/components/SliderCanary/SliderInput/SliderInput.d.ts +1 -1
- package/__internal__/src/components/SliderCanary/SliderInput/SliderInput.js +1 -1
- package/__internal__/src/components/SliderCanary/useSlider/helper.js +5 -12
- package/__internal__/src/components/SliderCanary/useSlider/useSlider.js +7 -15
- package/__internal__/src/components/SliderCanary/useSliderStationing.js +4 -10
- package/__internal__/src/components/TextField/TextField.js +29 -17
- package/__internal__/src/components/TextField/helpers.d.ts +17 -2
- package/__internal__/src/components/TextField/helpers.js +51 -0
- package/__internal__/src/components/UserSelect/UserSelect.js +5 -5
- package/__internal__/src/components/UserSelect/helpers.d.ts +2 -0
- package/__internal__/src/hooks/useHideElementsInLine/useHideElementsInLine.d.ts +1 -1
- package/__internal__/src/hooks/useRefs/useRefs.d.ts +1 -1
- package/__internal__/src/hooks/useSelect/useSelect.d.ts +1 -0
- package/__internal__/src/hooks/useSelect/useSelect.js +4 -2
- package/__internal__/src/hooks/useSortSteps/useSortSteps.d.ts +7 -0
- package/__internal__/src/hooks/useSortSteps/useSortSteps.js +25 -0
- package/__internal__/src/hooks/useTimer/useTimer.js +6 -1
- package/__internal__/src/mixs/MixPopoverAnimate/MixPopoverAnimate.css +76 -0
- package/__internal__/src/mixs/MixPopoverAnimate/MixPopoverAnimate.d.ts +12 -0
- package/__internal__/src/mixs/MixPopoverAnimate/MixPopoverAnimate.js +7 -0
- package/createIcon/package.json +1 -1
- package/createResponsesImage/package.json +1 -1
- package/package.json +3 -2
- package/useBreakpoints/package.json +1 -1
- package/useChoiceGroup/package.json +1 -1
- package/useChoiceGroupIndexed/package.json +1 -1
- package/useClickOutside/package.json +1 -1
- package/useComponentSize/package.json +1 -1
- package/useDebounce/package.json +1 -1
- package/useFlag/package.json +1 -1
- package/useForkRef/package.json +1 -1
- package/useGlobalKeys/package.json +1 -1
- package/useHideElementsInLine/package.json +1 -1
- package/useKeys/package.json +1 -1
- package/useMutableRef/package.json +1 -1
- package/useOverflow/package.json +1 -1
- package/usePrevious/package.json +1 -1
- package/useRefs/package.json +1 -1
- package/useResizeObserved/package.json +1 -1
- package/useScrollElements/package.json +1 -1
- package/useScrollPosition/package.json +1 -1
- package/useSelect/package.json +1 -1
- package/useSortSteps/es.js +1 -0
- package/useSortSteps/index.d.ts +1 -0
- package/useSortSteps/index.js +4 -0
- package/useSortSteps/package.json +9 -0
- package/useThemeVars/package.json +1 -1
- package/useTimer/package.json +1 -1
- package/withTooltip/package.json +1 -1
- package/MixDropdownAnimate/es.js +0 -1
- package/MixDropdownAnimate/index.d.ts +0 -1
- package/MixDropdownAnimate/index.js +0 -4
- package/__internal__/cjs-src/mixs/MixDropdownAnimate/MixDropdownAnimate.css +0 -37
- package/__internal__/cjs-src/mixs/MixDropdownAnimate/MixDropdownAnimate.d.ts +0 -4
- package/__internal__/cjs-src/mixs/MixDropdownAnimate/MixDropdownAnimate.js +0 -9
- package/__internal__/src/mixs/MixDropdownAnimate/MixDropdownAnimate.css +0 -37
- package/__internal__/src/mixs/MixDropdownAnimate/MixDropdownAnimate.d.ts +0 -4
- package/__internal__/src/mixs/MixDropdownAnimate/MixDropdownAnimate.js +0 -6
|
@@ -42,14 +42,13 @@ export var DatePickerTypeDateTime = forwardRef(function (props, ref) {
|
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
44
|
}, [props.value]);
|
|
45
|
-
var handleClose = function () {
|
|
46
|
-
setCalendarVisible.off();
|
|
47
|
-
setCurrentVisibleDate(undefined);
|
|
48
|
-
};
|
|
49
45
|
useClickOutside({
|
|
50
46
|
isActive: calendarVisible,
|
|
51
47
|
ignoreClicksInsideRefs: [fieldRef, calendarRef],
|
|
52
|
-
handler:
|
|
48
|
+
handler: function () {
|
|
49
|
+
setCalendarVisible.off();
|
|
50
|
+
setCurrentVisibleDate(props.value ? undefined : currentVisibleDateProp);
|
|
51
|
+
}
|
|
53
52
|
});
|
|
54
53
|
return (React.createElement(React.Fragment, null,
|
|
55
54
|
React.createElement(DatePickerFieldTypeDateTime, __assign({}, otherProps, { ref: fieldRef, onFocus: onFocusHandler, multiplicityHours: multiplicityHours, multiplicitySeconds: multiplicitySeconds, multiplicityMinutes: multiplicityMinutes })),
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { __assign, __read, __rest } from "tslib";
|
|
2
|
+
import React, { forwardRef, useEffect, useRef, useState } from 'react';
|
|
3
|
+
import startOfMonth from 'date-fns/startOfMonth';
|
|
4
|
+
import { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';
|
|
5
|
+
import { useFlag } from '../../../hooks/useFlag/useFlag';
|
|
6
|
+
import { useForkRef } from '../../../hooks/useForkRef/useForkRef';
|
|
7
|
+
import { DatePickerDropdown, } from '../DatePickerDropdown/DatePickerDropdown';
|
|
8
|
+
import { DatePickerFieldTypeDateTimeRange } from '../DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange';
|
|
9
|
+
import { normalizeRangeValue } from '../helpers';
|
|
10
|
+
import { useCurrentVisibleDate } from '../useCurrentVisibleDate';
|
|
11
|
+
export var DatePickerTypeDateTimeRange = forwardRef(function (props, ref) {
|
|
12
|
+
var _a, _b, _c, _d;
|
|
13
|
+
var events = props.events, dateTimeView = props.dateTimeView, locale = props.locale, dropdownForm = props.dropdownForm, startFieldRightSide = props.startFieldRightSide, startFieldLeftSide = props.startFieldLeftSide, startFieldOnBlur = props.startFieldOnBlur, startFieldOnFocus = props.startFieldOnFocus, endFieldRightSide = props.endFieldRightSide, endFieldLeftSide = props.endFieldLeftSide, endFieldOnBlur = props.endFieldOnBlur, endFieldOnFocus = props.endFieldOnFocus, onFocus = props.onFocus, onBlur = props.onBlur, leftSide = props.leftSide, rightSide = props.rightSide, endFieldInputRefProp = props.endFieldInputRef, startFieldInputRefProp = props.startFieldInputRef, style = props.style, currentVisibleDateProp = props.currentVisibleDate, onChangeCurrentVisibleDateProp = props.onChangeCurrentVisibleDate, renderAdditionalControls = props.renderAdditionalControls, fieldProps = __rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "startFieldRightSide", "startFieldLeftSide", "startFieldOnBlur", "startFieldOnFocus", "endFieldRightSide", "endFieldLeftSide", "endFieldOnBlur", "endFieldOnFocus", "onFocus", "onBlur", "leftSide", "rightSide", "endFieldInputRef", "startFieldInputRef", "style", "currentVisibleDate", "onChangeCurrentVisibleDate", "renderAdditionalControls"]);
|
|
14
|
+
var startFieldRef = useRef(null);
|
|
15
|
+
var endFieldRef = useRef(null);
|
|
16
|
+
var startFieldInputRef = useRef(null);
|
|
17
|
+
var endFieldInputRef = useRef(null);
|
|
18
|
+
var calendarRef = useRef(null);
|
|
19
|
+
var _e = __read(useState(false), 2), fieldFocused = _e[0], setFieldFocused = _e[1];
|
|
20
|
+
var startFocused = fieldFocused === 'start';
|
|
21
|
+
var endFocused = fieldFocused === 'end';
|
|
22
|
+
var hadleChange = function (_a) {
|
|
23
|
+
var _b, _c, _d, _e;
|
|
24
|
+
var e = _a.e, value = _a.value;
|
|
25
|
+
if (startFocused) {
|
|
26
|
+
(_b = props.onChange) === null || _b === void 0 ? void 0 : _b.call(props, { e: e, value: normalizeRangeValue([value, (_c = props === null || props === void 0 ? void 0 : props.value) === null || _c === void 0 ? void 0 : _c[1]]) });
|
|
27
|
+
}
|
|
28
|
+
if (endFocused) {
|
|
29
|
+
(_d = props.onChange) === null || _d === void 0 ? void 0 : _d.call(props, { e: e, value: normalizeRangeValue([(_e = props === null || props === void 0 ? void 0 : props.value) === null || _e === void 0 ? void 0 : _e[0], value]) });
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
var _f = __read(useFlag(false), 2), calendarVisible = _f[0], setCalendarVisible = _f[1];
|
|
33
|
+
var _g = __read(useCurrentVisibleDate(currentVisibleDateProp, onChangeCurrentVisibleDateProp), 2), currentVisibleDate = _g[0], setCurrentVisibleDate = _g[1];
|
|
34
|
+
var startFieldOnBlurHandler = function (e) {
|
|
35
|
+
onBlur && onBlur(e);
|
|
36
|
+
startFieldOnBlur && startFieldOnBlur(e);
|
|
37
|
+
};
|
|
38
|
+
var endFieldOnBlurHandler = function (e) {
|
|
39
|
+
onBlur && onBlur(e);
|
|
40
|
+
endFieldOnBlur && endFieldOnBlur(e);
|
|
41
|
+
};
|
|
42
|
+
var startFieldOnFocusHandler = function (e) {
|
|
43
|
+
setFieldFocused('start');
|
|
44
|
+
setCalendarVisible.on();
|
|
45
|
+
onFocus && onFocus(e);
|
|
46
|
+
startFieldOnFocus && startFieldOnFocus(e);
|
|
47
|
+
};
|
|
48
|
+
var endFieldOnFocusHandler = function (e) {
|
|
49
|
+
setFieldFocused('end');
|
|
50
|
+
setCalendarVisible.on();
|
|
51
|
+
onFocus && onFocus(e);
|
|
52
|
+
endFieldOnFocus && endFieldOnFocus(e);
|
|
53
|
+
};
|
|
54
|
+
// эфект для того чтобы календарь переключался при вводе с клавиатуры
|
|
55
|
+
useEffect(function () {
|
|
56
|
+
var _a, _b;
|
|
57
|
+
if (((_a = props.value) === null || _a === void 0 ? void 0 : _a[0]) && startFocused) {
|
|
58
|
+
var newVisibleDate = startOfMonth(props.value[0]);
|
|
59
|
+
if (newVisibleDate.getTime() !== (currentVisibleDate === null || currentVisibleDate === void 0 ? void 0 : currentVisibleDate.getTime())) {
|
|
60
|
+
setCurrentVisibleDate(newVisibleDate);
|
|
61
|
+
}
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
if (!((_b = props.value) === null || _b === void 0 ? void 0 : _b[0]) && startFocused) {
|
|
65
|
+
setCurrentVisibleDate(currentVisibleDateProp);
|
|
66
|
+
}
|
|
67
|
+
}, [(_b = (_a = props.value) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.getTime(), calendarVisible, startFocused]);
|
|
68
|
+
useEffect(function () {
|
|
69
|
+
var _a, _b;
|
|
70
|
+
if (((_a = props.value) === null || _a === void 0 ? void 0 : _a[1]) && endFocused) {
|
|
71
|
+
var newVisibleDate = startOfMonth(props.value[1]);
|
|
72
|
+
if (newVisibleDate.getTime() !== (currentVisibleDate === null || currentVisibleDate === void 0 ? void 0 : currentVisibleDate.getTime())) {
|
|
73
|
+
setCurrentVisibleDate(newVisibleDate);
|
|
74
|
+
}
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
if (!((_b = props.value) === null || _b === void 0 ? void 0 : _b[1]) && endFocused) {
|
|
78
|
+
setCurrentVisibleDate(currentVisibleDateProp);
|
|
79
|
+
}
|
|
80
|
+
}, [(_d = (_c = props.value) === null || _c === void 0 ? void 0 : _c[1]) === null || _d === void 0 ? void 0 : _d.getTime(), calendarVisible, endFocused]);
|
|
81
|
+
useClickOutside({
|
|
82
|
+
isActive: calendarVisible,
|
|
83
|
+
ignoreClicksInsideRefs: [startFieldRef, endFieldRef, calendarRef],
|
|
84
|
+
handler: function () {
|
|
85
|
+
setFieldFocused(false);
|
|
86
|
+
setCalendarVisible.off();
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
return (React.createElement(React.Fragment, null,
|
|
90
|
+
React.createElement(DatePickerFieldTypeDateTimeRange, __assign({}, fieldProps, { style: style, ref: ref, startFieldRef: startFieldRef, endFieldRef: endFieldRef, startFieldInputRef: useForkRef([startFieldInputRef, startFieldInputRefProp]), endFieldInputRef: useForkRef([endFieldInputRef, endFieldInputRefProp]), startFieldOnFocus: startFieldOnFocusHandler, endFieldOnFocus: endFieldOnFocusHandler, startFieldRightSide: startFieldRightSide, startFieldLeftSide: startFieldLeftSide || leftSide, endFieldRightSide: endFieldRightSide || rightSide, endFieldLeftSide: endFieldLeftSide, startFieldOnBlur: startFieldOnBlurHandler, endFieldOnBlur: endFieldOnBlurHandler, startFocused: startFocused, endFocused: endFocused })),
|
|
91
|
+
React.createElement(DatePickerDropdown, { type: "date-time", ref: calendarRef, anchorRef: startFieldRef, isOpen: calendarVisible, onChangeCurrentVisibleDate: setCurrentVisibleDate, currentVisibleDate: currentVisibleDate, value: props.value || undefined, timeFor: fieldFocused || undefined, view: dateTimeView, events: events, locale: locale, minDate: props.minDate, maxDate: props.maxDate, form: dropdownForm, onChange: hadleChange, renderAdditionalControls: renderAdditionalControls, zIndex: typeof (style === null || style === void 0 ? void 0 : style.zIndex) === 'number' ? style.zIndex + 1 : undefined })));
|
|
92
|
+
});
|
|
@@ -5,12 +5,13 @@ import { DateRange } from '../../utils/types/Date';
|
|
|
5
5
|
import { PropsWithHTMLAttributesAndRef } from '../../utils/types/PropsWithHTMLAttributes';
|
|
6
6
|
import { DateTimeAdditionalControlRenderProp, DateTimePropView } from '../DateTimeCanary/helpers';
|
|
7
7
|
import { TextFieldPropForm, TextFieldPropSize, TextFieldPropStatus, TextFieldPropView, TextFieldPropWidth } from '../TextField/TextField';
|
|
8
|
-
export declare const datePickerPropType: readonly ["date", "date-range", "date-time"];
|
|
8
|
+
export declare const datePickerPropType: readonly ["date", "date-range", "date-time", "date-time-range"];
|
|
9
9
|
export declare type DatePickerPropType = typeof datePickerPropType[number];
|
|
10
10
|
export declare const datePickerPropTypeDefault: "date";
|
|
11
11
|
export declare type DatePickerPropDateTimeView = DateTimePropView;
|
|
12
|
+
declare type Range = 'date-range' | 'date-time-range';
|
|
12
13
|
export declare const datePickerErrorTypes: readonly ["outOfRange", "invalidInputAttempt", "startDateIsGreaterThanEndDate"];
|
|
13
|
-
export declare type DatePickerPropValue<TYPE extends DatePickerPropType> = (TYPE extends
|
|
14
|
+
export declare type DatePickerPropValue<TYPE extends DatePickerPropType> = (TYPE extends Range ? DateRange : Date) | null;
|
|
14
15
|
export declare type DatePickerPropOnChange<TYPE extends DatePickerPropType> = (props: {
|
|
15
16
|
value: DatePickerPropValue<TYPE>;
|
|
16
17
|
e: React.MouseEvent<HTMLButtonElement, MouseEvent> | Event;
|
|
@@ -18,11 +19,11 @@ export declare type DatePickerPropOnChange<TYPE extends DatePickerPropType> = (p
|
|
|
18
19
|
export declare const datePickerPropDropdownForm: readonly ["default", "brick", "round"];
|
|
19
20
|
export declare type DatePickerPropDropdownForm = typeof datePickerPropDropdownForm[number];
|
|
20
21
|
export declare const datePickerPropDropdownFormDefault: "default";
|
|
21
|
-
declare type DatePickerPropCalendarWidth<TYPE> = TYPE extends
|
|
22
|
-
declare type DatePickerPropCalendarInputRef<TYPE> = TYPE extends
|
|
23
|
-
declare type DatePickerPropCalendarStartInputRef<TYPE> = TYPE extends
|
|
24
|
-
declare type DatePickerPropCalendarStartLeftSide<TYPE> = TYPE extends
|
|
25
|
-
declare type DatePickerPropCalendarStartOnFocus<TYPE> = TYPE extends
|
|
22
|
+
declare type DatePickerPropCalendarWidth<TYPE> = TYPE extends Range ? TextFieldPropWidth : never;
|
|
23
|
+
declare type DatePickerPropCalendarInputRef<TYPE> = TYPE extends Range ? never : React.Ref<HTMLInputElement>;
|
|
24
|
+
declare type DatePickerPropCalendarStartInputRef<TYPE> = TYPE extends Range ? React.Ref<HTMLInputElement> : never;
|
|
25
|
+
declare type DatePickerPropCalendarStartLeftSide<TYPE> = TYPE extends Range ? string | IconComponent : never;
|
|
26
|
+
declare type DatePickerPropCalendarStartOnFocus<TYPE> = TYPE extends Range ? React.FocusEventHandler<HTMLElement> : never;
|
|
26
27
|
export declare type DatePickerProps<TYPE extends DatePickerPropType = 'date'> = PropsWithHTMLAttributesAndRef<{
|
|
27
28
|
type?: TYPE;
|
|
28
29
|
value?: DatePickerPropValue<TYPE>;
|
|
@@ -110,4 +111,6 @@ export declare const datePickerPropPlaceholderTypeDateTime: string;
|
|
|
110
111
|
export declare const normalizeRangeValue: (dateRange: DateRange) => DateRange;
|
|
111
112
|
export declare const getMultiplicityTime: (format: string, multiplicityHours: number | undefined, multiplicityMinutes: number | undefined, multiplicitySeconds: number | undefined) => (number | undefined)[];
|
|
112
113
|
export declare const getTimeEnum: (length: number, multiplicity: number | undefined, startOfUnits: (date: Date) => Date, addUnits: (date: Date, amount: number) => Date, getItemLabel: (date: Date) => string) => string[];
|
|
114
|
+
export declare const getFormForStart: (form: TextFieldPropForm) => "default" | "round" | "brick" | "brickRound" | "roundBrick" | "brickDefault" | "defaultBrick" | "clearRound" | "roundClear" | "clearDefault" | "defaultClear" | "brickClear" | "clearBrick" | "clearClear";
|
|
115
|
+
export declare const getFormForEnd: (form: TextFieldPropForm) => "default" | "round" | "brick" | "brickRound" | "roundBrick" | "brickDefault" | "defaultBrick" | "clearRound" | "roundClear" | "clearDefault" | "defaultClear" | "brickClear" | "clearBrick" | "clearClear";
|
|
113
116
|
export {};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { startOfToday } from 'date-fns';
|
|
2
2
|
import { range } from '../../utils/array';
|
|
3
|
-
|
|
3
|
+
import { getByMap } from '../../utils/getByMap';
|
|
4
|
+
export var datePickerPropType = ['date', 'date-range', 'date-time', 'date-time-range'];
|
|
4
5
|
export var datePickerPropTypeDefault = datePickerPropType[0];
|
|
5
6
|
export var datePickerErrorTypes = [
|
|
6
7
|
'outOfRange',
|
|
@@ -43,3 +44,37 @@ export var getTimeEnum = function (length, multiplicity, startOfUnits, addUnits,
|
|
|
43
44
|
return getItemLabel(addUnits(startDate, number * multiplicity));
|
|
44
45
|
});
|
|
45
46
|
};
|
|
47
|
+
var mapFormForStart = {
|
|
48
|
+
"default": 'defaultClear',
|
|
49
|
+
defaultClear: 'defaultClear',
|
|
50
|
+
defaultBrick: 'defaultClear',
|
|
51
|
+
brick: 'brickClear',
|
|
52
|
+
brickDefault: 'brickClear',
|
|
53
|
+
brickClear: 'brickClear',
|
|
54
|
+
brickRound: 'brickClear',
|
|
55
|
+
round: 'roundClear',
|
|
56
|
+
roundClear: 'roundClear',
|
|
57
|
+
roundBrick: 'roundClear',
|
|
58
|
+
clearRound: 'clearClear',
|
|
59
|
+
clearDefault: 'clearClear',
|
|
60
|
+
clearBrick: 'clearClear',
|
|
61
|
+
clearClear: 'clearClear'
|
|
62
|
+
};
|
|
63
|
+
var mapFormForEnd = {
|
|
64
|
+
"default": 'brickDefault',
|
|
65
|
+
defaultClear: 'brickClear',
|
|
66
|
+
defaultBrick: 'brick',
|
|
67
|
+
brick: 'brick',
|
|
68
|
+
brickDefault: 'brickDefault',
|
|
69
|
+
brickClear: 'brickClear',
|
|
70
|
+
brickRound: 'brickRound',
|
|
71
|
+
round: 'brickRound',
|
|
72
|
+
roundClear: 'brickClear',
|
|
73
|
+
roundBrick: 'brick',
|
|
74
|
+
clearRound: 'brickRound',
|
|
75
|
+
clearDefault: 'brickDefault',
|
|
76
|
+
clearBrick: 'brick',
|
|
77
|
+
clearClear: 'brickClear'
|
|
78
|
+
};
|
|
79
|
+
export var getFormForStart = function (form) { return getByMap(mapFormForStart, form); };
|
|
80
|
+
export var getFormForEnd = function (form) { return getByMap(mapFormForEnd, form); };
|
package/__internal__/src/components/DateTimeCanary/DateTimeTypeDateTime/DateTimeTypeDateTime.js
CHANGED
|
@@ -10,12 +10,12 @@ import { moveTypes } from '../helpers';
|
|
|
10
10
|
import { useOnChange } from './useOnChange';
|
|
11
11
|
var cnDateTimeTypeDateTime = cn('DateTimeTypeDateTime');
|
|
12
12
|
export var DateTimeTypeDateTime = forwardRef(function (props, ref) {
|
|
13
|
-
var className = props.className, onMoveProp = props.onMove, currentVisibleDate = props.currentVisibleDate, value = props.value, onChange = props.onChange, minDate = props.minDate, maxDate = props.maxDate, events = props.events, locale = props.locale, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, multiplicitySeconds = props.multiplicitySeconds, multiplicityMinutes = props.multiplicityMinutes, multiplicityHours = props.multiplicityHours, style = props.style, renderAdditionalControls = props.renderAdditionalControls, otherProps = __rest(props, ["className", "onMove", "currentVisibleDate", "value", "onChange", "minDate", "maxDate", "events", "locale", "onChangeCurrentVisibleDate", "multiplicitySeconds", "multiplicityMinutes", "multiplicityHours", "style", "renderAdditionalControls"]);
|
|
14
|
-
var
|
|
15
|
-
var
|
|
13
|
+
var className = props.className, onMoveProp = props.onMove, currentVisibleDate = props.currentVisibleDate, value = props.value, onChange = props.onChange, onChangeRange = props.onChangeRange, minDate = props.minDate, maxDate = props.maxDate, events = props.events, locale = props.locale, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, multiplicitySeconds = props.multiplicitySeconds, multiplicityMinutes = props.multiplicityMinutes, multiplicityHours = props.multiplicityHours, style = props.style, renderAdditionalControls = props.renderAdditionalControls, _a = props.timeFor, timeFor = _a === void 0 ? 'start' : _a, otherProps = __rest(props, ["className", "onMove", "currentVisibleDate", "value", "onChange", "onChangeRange", "minDate", "maxDate", "events", "locale", "onChangeCurrentVisibleDate", "multiplicitySeconds", "multiplicityMinutes", "multiplicityHours", "style", "renderAdditionalControls", "timeFor"]);
|
|
14
|
+
var _b = __read(useState(moveTypes[2]), 2), moveType = _b[0], setMoveType = _b[1];
|
|
15
|
+
var _c = __read(useState({
|
|
16
16
|
'--root-padding-left': '0px'
|
|
17
|
-
}), 2), cssVars =
|
|
18
|
-
var
|
|
17
|
+
}), 2), cssVars = _c[0], setCssVars = _c[1];
|
|
18
|
+
var _d = __read(useOnChange(onChange, onChangeRange, value, timeFor), 4), onDateChange = _d[0], onDateChangeRange = _d[1], onTimeChange = _d[2], valueTime = _d[3];
|
|
19
19
|
var rootRef = useRef(null);
|
|
20
20
|
var onMove = function (type) {
|
|
21
21
|
setMoveType(type);
|
|
@@ -31,7 +31,7 @@ export var DateTimeTypeDateTime = forwardRef(function (props, ref) {
|
|
|
31
31
|
}, []);
|
|
32
32
|
return (React.createElement(React.Fragment, null,
|
|
33
33
|
React.createElement("div", __assign({}, otherProps, { className: cnDateTimeTypeDateTime({ withTime: withTime }, [className]), ref: useForkRef([rootRef, ref]), style: __assign(__assign({}, style), cssVars) }),
|
|
34
|
-
React.createElement(DateTimeTypeDate, { className: cnDateTimeTypeDateTime('Date', { withTime: withTime }), onMove: onMove, currentVisibleDate: currentVisibleDate, value: value, onChange: onDateChange, minDate: minDate, maxDate: maxDate, events: events, locale: locale, renderAdditionalControls: withTime ? undefined : renderAdditionalControls, onChangeCurrentVisibleDate: onChangeCurrentVisibleDate }),
|
|
35
|
-
withTime && (React.createElement(DateTimeTypeTime, { className: cnDateTimeTypeDateTime('Time'), value:
|
|
34
|
+
React.createElement(DateTimeTypeDate, { className: cnDateTimeTypeDateTime('Date', { withTime: withTime }), onMove: onMove, currentVisibleDate: currentVisibleDate, value: value, onChange: onDateChange, onChangeRange: onDateChangeRange, minDate: minDate, maxDate: maxDate, events: events, locale: locale, renderAdditionalControls: withTime ? undefined : renderAdditionalControls, onChangeCurrentVisibleDate: onChangeCurrentVisibleDate }),
|
|
35
|
+
withTime && (React.createElement(DateTimeTypeTime, { className: cnDateTimeTypeDateTime('Time'), value: valueTime, onChange: onTimeChange, minDate: minDate, maxDate: maxDate, locale: locale, multiplicitySeconds: multiplicitySeconds, multiplicityMinutes: multiplicityMinutes, multiplicityHours: multiplicityHours }))),
|
|
36
36
|
React.createElement(DateTimeAdditionalControls, { currentVisibleDate: currentVisibleDate, renderAdditionalControls: withTime ? renderAdditionalControls : undefined })));
|
|
37
37
|
});
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { DateRange } from '../../../utils/types/Date';
|
|
2
|
+
import { DateTimePropOnChange, DateTimePropOnChangeRange } from '../helpers';
|
|
3
|
+
export declare const useOnChange: (onChange: DateTimePropOnChange | undefined, onChangeRange: DateTimePropOnChangeRange<'date-time'> | undefined, value: DateRange | Date | undefined, timeFor: 'start' | 'end') => [DateTimePropOnChange, DateTimePropOnChangeRange<'date-time'>, DateTimePropOnChange, Date | undefined];
|
|
@@ -8,9 +8,11 @@ var getTime = function (date) {
|
|
|
8
8
|
}
|
|
9
9
|
return [getHours(date), getMinutes(date), getSeconds(date)];
|
|
10
10
|
};
|
|
11
|
-
export var useOnChange = function (onChange, value) {
|
|
12
|
-
var
|
|
11
|
+
export var useOnChange = function (onChange, onChangeRange, value, timeFor) {
|
|
12
|
+
var normalizeValue = Array.isArray(value) ? value[timeFor === 'start' ? 0 : 1] : value;
|
|
13
|
+
var _a = __read(useState(normalizeValue), 2), time = _a[0], setTime = _a[1];
|
|
13
14
|
var onChangeRef = useMutableRef(onChange);
|
|
15
|
+
var onChangeRangeRef = useMutableRef(onChangeRange);
|
|
14
16
|
var timeRef = useMutableRef(time);
|
|
15
17
|
var onDateChange = useCallback(function (_a) {
|
|
16
18
|
var _b;
|
|
@@ -18,11 +20,23 @@ export var useOnChange = function (onChange, value) {
|
|
|
18
20
|
var _c = __read(getTime(timeRef.current), 3), hours = _c[0], minutes = _c[1], seconds = _c[2];
|
|
19
21
|
(_b = onChangeRef.current) === null || _b === void 0 ? void 0 : _b.call(onChangeRef, { e: e, value: set(value, { hours: hours, minutes: minutes, seconds: seconds }) });
|
|
20
22
|
}, []);
|
|
23
|
+
var onDateChangeRange = useCallback(function (_a) {
|
|
24
|
+
var _b;
|
|
25
|
+
var e = _a.e, value = _a.value;
|
|
26
|
+
var _c = __read(getTime(timeRef.current), 3), hours = _c[0], minutes = _c[1], seconds = _c[2];
|
|
27
|
+
(_b = onChangeRangeRef.current) === null || _b === void 0 ? void 0 : _b.call(onChangeRangeRef, {
|
|
28
|
+
e: e,
|
|
29
|
+
value: [
|
|
30
|
+
value[0] ? set(value[0], { hours: hours, minutes: minutes, seconds: seconds }) : undefined,
|
|
31
|
+
value[1] ? set(value[1], { hours: hours, minutes: minutes, seconds: seconds }) : undefined,
|
|
32
|
+
]
|
|
33
|
+
});
|
|
34
|
+
}, []);
|
|
21
35
|
var onTimeChange = useCallback(function (_a) {
|
|
22
36
|
var _b;
|
|
23
37
|
var e = _a.e, value = _a.value;
|
|
24
38
|
(_b = onChangeRef.current) === null || _b === void 0 ? void 0 : _b.call(onChangeRef, { e: e, value: value });
|
|
25
39
|
}, []);
|
|
26
|
-
useEffect(function () { return setTime(
|
|
27
|
-
return [onDateChange, onTimeChange];
|
|
40
|
+
useEffect(function () { return setTime(normalizeValue); }, [normalizeValue === null || normalizeValue === void 0 ? void 0 : normalizeValue.getTime()]);
|
|
41
|
+
return [onDateChange, onDateChangeRange, onTimeChange, normalizeValue];
|
|
28
42
|
};
|
|
@@ -7,7 +7,7 @@ export declare const dateTimePropViewDefault: "classic";
|
|
|
7
7
|
export declare const dateTimePropType: readonly ["date", "month", "year", "time", "date-time"];
|
|
8
8
|
export declare type DateTimePropType = typeof dateTimePropType[number];
|
|
9
9
|
export declare const dateTimePropTypeDefault: "date";
|
|
10
|
-
export declare type СapableRangeType = 'date' | 'month' | 'year';
|
|
10
|
+
export declare type СapableRangeType = 'date' | 'month' | 'year' | 'date-time';
|
|
11
11
|
export declare type DateTimePropValue<TYPE> = TYPE extends СapableRangeType ? Date | DateRange : Date;
|
|
12
12
|
export declare type DateTimePropOnChange = (props: {
|
|
13
13
|
value: Date;
|
|
@@ -27,6 +27,7 @@ declare type LocaleWords = {
|
|
|
27
27
|
export declare type DateTimePropLocale = Locale & LocaleWords;
|
|
28
28
|
export declare const moveTypes: readonly ["year", "month", "day", "time"];
|
|
29
29
|
export declare type MoveType = typeof moveTypes[number];
|
|
30
|
+
declare type DateTimePropTimeFor<TYPE> = TYPE extends 'date-time' ? 'start' | 'end' : never;
|
|
30
31
|
export declare type DateTimeProps<TYPE extends DateTimePropType = 'date'> = PropsWithHTMLAttributesAndRef<{
|
|
31
32
|
currentVisibleDate?: Date;
|
|
32
33
|
type?: TYPE;
|
|
@@ -45,6 +46,7 @@ export declare type DateTimeProps<TYPE extends DateTimePropType = 'date'> = Prop
|
|
|
45
46
|
multiplicityHours?: number;
|
|
46
47
|
onMove?: (type: MoveType) => void;
|
|
47
48
|
renderAdditionalControls?: DateTimeAdditionalControlRenderProp;
|
|
49
|
+
timeFor?: DateTimePropTimeFor<TYPE>;
|
|
48
50
|
}, HTMLDivElement>;
|
|
49
51
|
export declare type DateTimeAdditionalControlRenderProp = React.ReactNode | React.ReactNode[] | AdditionalControlRenderType;
|
|
50
52
|
export declare type AdditionalControlRenderType = (props: DateTimeAdditionalControlRenderProps) => React.ReactNode | React.ReactNode[];
|
|
@@ -60,7 +60,7 @@ export declare const eventInterceptorMap: {
|
|
|
60
60
|
min?: string | number | undefined;
|
|
61
61
|
readOnly?: boolean | undefined;
|
|
62
62
|
required?: boolean | undefined;
|
|
63
|
-
step?: string | number | undefined;
|
|
63
|
+
step?: string | number | number[] | undefined;
|
|
64
64
|
tabIndex?: number | undefined;
|
|
65
65
|
inputContainerRef?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
66
66
|
inputRef?: ((instance: HTMLInputElement | HTMLTextAreaElement | null) => void) | import("react").RefObject<HTMLInputElement | HTMLTextAreaElement> | null | undefined;
|
package/__internal__/src/components/EventInterceptor/propsHandlers/useTextFieldEventsHandler.d.ts
CHANGED
|
@@ -70,7 +70,7 @@ export declare const useTextFieldEventsHandler: <P extends {
|
|
|
70
70
|
min?: string | number | undefined;
|
|
71
71
|
readOnly?: boolean | undefined;
|
|
72
72
|
required?: boolean | undefined;
|
|
73
|
-
step?: string | number | undefined;
|
|
73
|
+
step?: string | number | number[] | undefined;
|
|
74
74
|
tabIndex?: number | undefined;
|
|
75
75
|
inputContainerRef?: ((instance: HTMLDivElement | null) => void) | React.RefObject<HTMLDivElement> | null | undefined;
|
|
76
76
|
inputRef?: ((instance: HTMLInputElement | HTMLTextAreaElement | null) => void) | React.RefObject<HTMLInputElement | HTMLTextAreaElement> | null | undefined;
|
|
@@ -6,7 +6,7 @@ import { useSelect } from '../../hooks/useSelect/useSelect';
|
|
|
6
6
|
import { IconSelect } from '../../icons/IconSelect/IconSelect';
|
|
7
7
|
import { usePropsHandler } from '../EventInterceptor/usePropsHandler';
|
|
8
8
|
import { cnSelect, COMPONENT_NAME } from '../SelectComponents/cnSelect';
|
|
9
|
-
import { getSelectDropdownForm } from '../SelectComponents/helpers';
|
|
9
|
+
import { defaultLabelForEmptyItems, getSelectDropdownForm } from '../SelectComponents/helpers';
|
|
10
10
|
import { SelectContainer } from '../SelectComponents/SelectContainer/SelectContainer';
|
|
11
11
|
import { SelectDropdown } from '../SelectComponents/SelectDropdown/SelectDropdown';
|
|
12
12
|
import { SelectItem } from '../SelectComponents/SelectItem/SelectItem';
|
|
@@ -15,8 +15,8 @@ import { withDefaultGetters, } from './helpers';
|
|
|
15
15
|
function SelectRender(props, ref) {
|
|
16
16
|
var defaultDropdownRef = useRef(null);
|
|
17
17
|
var controlRef = useRef(null);
|
|
18
|
-
var _a = usePropsHandler(COMPONENT_NAME, withDefaultGetters(props), controlRef), placeholder = _a.placeholder, onBlur = _a.onBlur, onFocus = _a.onFocus, items = _a.items, onChange = _a.onChange, value = _a.value, required = _a.required, disabled = _a.disabled, ariaLabel = _a.ariaLabel, id = _a.id, _b = _a.dropdownRef, dropdownRef = _b === void 0 ? defaultDropdownRef : _b, _c = _a.form, form = _c === void 0 ? defaultPropForm : _c, _d = _a.view, view = _d === void 0 ? defaultPropView : _d, _e = _a.size, size = _e === void 0 ? defaultPropSize : _e, dropdownClassName = _a.dropdownClassName, name = _a.name, _f = _a.groups, groups = _f === void 0 ? [] : _f, getItemLabel = _a.getItemLabel, getItemKey = _a.getItemKey, getItemGroupKey = _a.getItemGroupKey, getItemDisabled = _a.getItemDisabled, getGroupKey = _a.getGroupKey, getGroupLabel = _a.getGroupLabel, renderItem = _a.renderItem, renderValueProp = _a.renderValue, inputRefProp = _a.inputRef, style = _a.style, restProps = __rest(_a, ["placeholder", "onBlur", "onFocus", "items", "onChange", "value", "required", "disabled", "ariaLabel", "id", "dropdownRef", "form", "view", "size", "dropdownClassName", "name", "groups", "getItemLabel", "getItemKey", "getItemGroupKey", "getItemDisabled", "getGroupKey", "getGroupLabel", "renderItem", "renderValue", "inputRef", "style"]);
|
|
19
|
-
var
|
|
18
|
+
var _a = usePropsHandler(COMPONENT_NAME, withDefaultGetters(props), controlRef), placeholder = _a.placeholder, onBlur = _a.onBlur, onFocus = _a.onFocus, items = _a.items, onChange = _a.onChange, value = _a.value, required = _a.required, disabled = _a.disabled, ariaLabel = _a.ariaLabel, id = _a.id, _b = _a.dropdownRef, dropdownRef = _b === void 0 ? defaultDropdownRef : _b, _c = _a.form, form = _c === void 0 ? defaultPropForm : _c, _d = _a.view, view = _d === void 0 ? defaultPropView : _d, _e = _a.size, size = _e === void 0 ? defaultPropSize : _e, dropdownClassName = _a.dropdownClassName, name = _a.name, _f = _a.groups, groups = _f === void 0 ? [] : _f, getItemLabel = _a.getItemLabel, _g = _a.labelForEmptyItems, labelForEmptyItems = _g === void 0 ? defaultLabelForEmptyItems : _g, getItemKey = _a.getItemKey, getItemGroupKey = _a.getItemGroupKey, getItemDisabled = _a.getItemDisabled, getGroupKey = _a.getGroupKey, getGroupLabel = _a.getGroupLabel, renderItem = _a.renderItem, renderValueProp = _a.renderValue, inputRefProp = _a.inputRef, style = _a.style, restProps = __rest(_a, ["placeholder", "onBlur", "onFocus", "items", "onChange", "value", "required", "disabled", "ariaLabel", "id", "dropdownRef", "form", "view", "size", "dropdownClassName", "name", "groups", "getItemLabel", "labelForEmptyItems", "getItemKey", "getItemGroupKey", "getItemDisabled", "getGroupKey", "getGroupLabel", "renderItem", "renderValue", "inputRef", "style"]);
|
|
19
|
+
var _h = useSelect({
|
|
20
20
|
items: items,
|
|
21
21
|
groups: groups,
|
|
22
22
|
value: value,
|
|
@@ -32,7 +32,7 @@ function SelectRender(props, ref) {
|
|
|
32
32
|
multiple: false,
|
|
33
33
|
onBlur: onBlur,
|
|
34
34
|
onFocus: onFocus
|
|
35
|
-
}), getKeyProps =
|
|
35
|
+
}), getKeyProps = _h.getKeyProps, getOptionProps = _h.getOptionProps, isOpen = _h.isOpen, visibleItems = _h.visibleItems, isFocused = _h.isFocused, handleInputFocus = _h.handleInputFocus, handleInputBlur = _h.handleInputBlur, handleToggleDropdown = _h.handleToggleDropdown, inputRef = _h.inputRef, handleInputClick = _h.handleInputClick, notFound = _h.notFound, hasItems = _h.hasItems;
|
|
36
36
|
var dropdownForm = getSelectDropdownForm(form);
|
|
37
37
|
var renderItemDefault = function (props) {
|
|
38
38
|
var item = props.item, active = props.active, hovered = props.hovered, onClick = props.onClick, onMouseEnter = props.onMouseEnter;
|
|
@@ -53,7 +53,7 @@ function SelectRender(props, ref) {
|
|
|
53
53
|
React.createElement("span", { className: cnSelect('Indicators') },
|
|
54
54
|
React.createElement("button", { type: "button", className: cnSelect('IndicatorsDropdown'), tabIndex: -1, onClick: handleToggleDropdown },
|
|
55
55
|
React.createElement(IconSelect, { size: "xs", className: cnSelect('DropdownIndicatorIcon') })))),
|
|
56
|
-
React.createElement(SelectDropdown, { isOpen: isOpen, size: size, controlRef: controlRef, getOptionProps: getOptionProps, dropdownRef: dropdownRef, form: dropdownForm, className: dropdownClassName, renderItem: renderItem || renderItemDefault, getGroupLabel: getGroupLabel, visibleItems: visibleItems, notFound: notFound, style: typeof (style === null || style === void 0 ? void 0 : style.zIndex) === 'number' ? { zIndex: style.zIndex + 1 } : undefined })));
|
|
56
|
+
React.createElement(SelectDropdown, { isOpen: isOpen, size: size, controlRef: controlRef, getOptionProps: getOptionProps, dropdownRef: dropdownRef, form: dropdownForm, className: dropdownClassName, renderItem: renderItem || renderItemDefault, getGroupLabel: getGroupLabel, visibleItems: visibleItems, notFound: notFound, labelForEmptyItems: labelForEmptyItems, hasItems: hasItems, style: typeof (style === null || style === void 0 ? void 0 : style.zIndex) === 'number' ? { zIndex: style.zIndex + 1 } : undefined })));
|
|
57
57
|
}
|
|
58
58
|
export var Select = forwardRef(SelectRender);
|
|
59
59
|
export * from './helpers';
|
|
@@ -42,6 +42,7 @@ export declare type SelectProps<ITEM = DefaultItem, GROUP = DefaultGroup> = Prop
|
|
|
42
42
|
dropdownRef?: React.RefObject<HTMLDivElement>;
|
|
43
43
|
required?: boolean;
|
|
44
44
|
name?: string;
|
|
45
|
+
labelForEmptyItems?: string;
|
|
45
46
|
value?: PropValue<ITEM>;
|
|
46
47
|
renderItem?: PropRenderItem<ITEM>;
|
|
47
48
|
renderValue?: PropRenderValue<ITEM>;
|
|
@@ -101,6 +102,7 @@ export declare function withDefaultGetters<ITEM, GROUP>(props: SelectProps<ITEM,
|
|
|
101
102
|
dropdownRef?: React.RefObject<HTMLDivElement> | undefined;
|
|
102
103
|
required?: boolean | undefined;
|
|
103
104
|
name?: string | undefined;
|
|
105
|
+
labelForEmptyItems?: string | undefined;
|
|
104
106
|
value?: PropValue<ITEM>;
|
|
105
107
|
renderItem?: PropRenderItem<ITEM> | undefined;
|
|
106
108
|
renderValue?: PropRenderValue<ITEM> | undefined;
|
|
@@ -23,7 +23,9 @@ declare type Props<ITEM, GROUP> = PropsWithJsxAttributes<{
|
|
|
23
23
|
getGroupLabel?: (group: GROUP) => string;
|
|
24
24
|
labelForCreate?: string;
|
|
25
25
|
labelForNotFound?: string;
|
|
26
|
+
labelForEmptyItems?: string;
|
|
26
27
|
notFound?: boolean;
|
|
28
|
+
hasItems?: boolean;
|
|
27
29
|
}>;
|
|
28
30
|
declare type SelectDropdown = <ITEM, GROUP>(props: Props<ITEM, GROUP>) => React.ReactElement | null;
|
|
29
31
|
export declare const SelectDropdown: SelectDropdown;
|
|
@@ -15,7 +15,7 @@ export var defaultSelectDropdownPropForm = selectDropdownform[0];
|
|
|
15
15
|
var cnSelectDropdown = cn('SelectDropdown');
|
|
16
16
|
var cnSelectDropdownCssTransition = cnForCssTransition(cnSelectDropdown);
|
|
17
17
|
export var SelectDropdown = function (props) {
|
|
18
|
-
var controlRef = props.controlRef, size = props.size, getOptionProps = props.getOptionProps, dropdownRef = props.dropdownRef, labelForCreate = props.labelForCreate, className = props.className, labelForNotFound = props.labelForNotFound, form = props.form, isOpen = props.isOpen, renderItem = props.renderItem, visibleItems = props.visibleItems, getGroupLabel = props.getGroupLabel, notFound = props.notFound, ref = props.ref, otherProps = __rest(props, ["controlRef", "size", "getOptionProps", "dropdownRef", "labelForCreate", "className", "labelForNotFound", "form", "isOpen", "renderItem", "visibleItems", "getGroupLabel", "notFound", "ref"]);
|
|
18
|
+
var controlRef = props.controlRef, size = props.size, getOptionProps = props.getOptionProps, dropdownRef = props.dropdownRef, labelForCreate = props.labelForCreate, className = props.className, labelForNotFound = props.labelForNotFound, labelForEmptyItems = props.labelForEmptyItems, _a = props.hasItems, hasItems = _a === void 0 ? true : _a, form = props.form, isOpen = props.isOpen, renderItem = props.renderItem, visibleItems = props.visibleItems, getGroupLabel = props.getGroupLabel, notFound = props.notFound, ref = props.ref, otherProps = __rest(props, ["controlRef", "size", "getOptionProps", "dropdownRef", "labelForCreate", "className", "labelForNotFound", "labelForEmptyItems", "hasItems", "form", "isOpen", "renderItem", "visibleItems", "getGroupLabel", "notFound", "ref"]);
|
|
19
19
|
var getIndex = fabricIndex(-1);
|
|
20
20
|
var indent = form === 'round' ? 'increased' : 'normal';
|
|
21
21
|
return (React.createElement(CSSTransition, { "in": isOpen, unmountOnExit: true, appear: true, classNames: cnSelectDropdownCssTransition, timeout: 200 },
|
|
@@ -31,5 +31,6 @@ export var SelectDropdown = function (props) {
|
|
|
31
31
|
return (React.createElement(Fragment, { key: group.key + "-" + i }, renderItem(__assign({ item: item }, getOptionProps({ index: getIndex(), item: item })))));
|
|
32
32
|
})));
|
|
33
33
|
}),
|
|
34
|
-
notFound && labelForNotFound && (React.createElement(Text, { className: cnSelectDropdown('LabelForNotFound') }, labelForNotFound))
|
|
34
|
+
notFound && labelForNotFound && (React.createElement(Text, { className: cnSelectDropdown('LabelForNotFound') }, labelForNotFound)),
|
|
35
|
+
!hasItems && labelForEmptyItems && (React.createElement(Text, { className: cnSelectDropdown('LabelForEmptyItems') }, labelForEmptyItems))))));
|
|
35
36
|
};
|
|
@@ -3,4 +3,5 @@ import { PropForm } from './types';
|
|
|
3
3
|
export declare function getSelectDropdownForm(form: PropForm): SelectDropdownPropForm;
|
|
4
4
|
export declare const defaultlabelForNotFound = "\u041D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u043E";
|
|
5
5
|
export declare const defaultlabelForCreate = "+";
|
|
6
|
+
export declare const defaultLabelForEmptyItems = "\u0421\u043F\u0438\u0441\u043E\u043A \u043F\u0443\u0441\u0442";
|
|
6
7
|
export declare const getInputWidth: (controlInnerRef: React.RefObject<HTMLDivElement>, helperInputFakeElement: React.RefObject<HTMLDivElement>) => number;
|
|
@@ -18,6 +18,7 @@ export function getSelectDropdownForm(form) {
|
|
|
18
18
|
}
|
|
19
19
|
export var defaultlabelForNotFound = 'Не найдено';
|
|
20
20
|
export var defaultlabelForCreate = '+';
|
|
21
|
+
export var defaultLabelForEmptyItems = 'Список пуст';
|
|
21
22
|
export var getInputWidth = function (controlInnerRef, helperInputFakeElement) {
|
|
22
23
|
if (!controlInnerRef.current || !helperInputFakeElement.current) {
|
|
23
24
|
return 20;
|
|
@@ -2,6 +2,7 @@ import { __assign, __read, __rest } from "tslib";
|
|
|
2
2
|
import './Slider.css';
|
|
3
3
|
import React, { forwardRef, useRef } from 'react';
|
|
4
4
|
import { useFlag } from '../../hooks/useFlag/useFlag';
|
|
5
|
+
import { useSortSteps } from '../../hooks/useSortSteps/useSortSteps';
|
|
5
6
|
import { cn } from '../../utils/bem';
|
|
6
7
|
import { getByMap } from '../../utils/getByMap';
|
|
7
8
|
import { FieldCaption } from '../FieldCaption/FieldCaption';
|
|
@@ -25,6 +26,7 @@ function SliderRender(props, ref) {
|
|
|
25
26
|
var leftButtonRef = useRef(null);
|
|
26
27
|
var rightButtonRef = useRef(null);
|
|
27
28
|
var sliderRef = useRef(null);
|
|
29
|
+
var sortedSteps = useSortSteps({ step: step, min: min, max: max });
|
|
28
30
|
var IconRight = rightSide;
|
|
29
31
|
var IconLeft = isNotRangeParams && props.leftSide && props.leftSide !== 'input' ? props.leftSide : undefined;
|
|
30
32
|
var iconSize = getByMap(sizeMap, size);
|
|
@@ -34,13 +36,13 @@ function SliderRender(props, ref) {
|
|
|
34
36
|
value: value,
|
|
35
37
|
min: min,
|
|
36
38
|
max: max,
|
|
37
|
-
step:
|
|
39
|
+
step: sortedSteps,
|
|
38
40
|
onChange: onChange,
|
|
39
41
|
onAfterChange: onAfterChange,
|
|
40
42
|
sliderRef: sliderRef,
|
|
41
43
|
buttonRefs: [leftButtonRef, rightButtonRef]
|
|
42
44
|
}), onKeyPress = _l.onKeyPress, onFocus = _l.onFocus, handlePress = _l.handlePress, popoverPosition = _l.popoverPosition, activeButton = _l.activeButton, currentValue = _l.currentValue;
|
|
43
|
-
var _m = useSliderStationing(currentValue.length === 1 ? currentValue[0] : currentValue, min, max, view, range,
|
|
45
|
+
var _m = useSliderStationing(currentValue.length === 1 ? currentValue[0] : currentValue, min, max, view, range, sortedSteps, [leftButtonRef, rightButtonRef], sliderRef), lineSizes = _m.lineSizes, buttonPositions = _m.buttonPositions;
|
|
44
46
|
var changeHovered = function (status) {
|
|
45
47
|
if (status)
|
|
46
48
|
on();
|
|
@@ -51,7 +53,7 @@ function SliderRender(props, ref) {
|
|
|
51
53
|
label && (React.createElement(FieldLabel, { className: cnSlider('Label'), size: size }, label)),
|
|
52
54
|
React.createElement("div", { className: cnSlider('Container') },
|
|
53
55
|
leftSide === 'input' && isNotRangeParams(props) && (React.createElement("div", { className: cnSlider('Side', { position: 'left' }) },
|
|
54
|
-
React.createElement(SliderInput, { value: props.value, onChange: function (params) { var _a; return isNotRangeParams(props) && ((_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, params)); }, size: size, min: min, max: max, status: status, step:
|
|
56
|
+
React.createElement(SliderInput, { value: props.value, onChange: function (params) { var _a; return isNotRangeParams(props) && ((_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, params)); }, size: size, min: min, max: max, status: status, step: sortedSteps, disabled: disabled }))),
|
|
55
57
|
IconLeft && (React.createElement("div", { className: cnSlider('Side', { position: 'left' }) },
|
|
56
58
|
React.createElement(IconLeft, { size: iconSize, view: "secondary" }))),
|
|
57
59
|
React.createElement("div", { className: cnSlider('Control'), ref: sliderRef },
|
|
@@ -6,7 +6,7 @@ declare type Props = Omit<TextFieldProps<'number'>, 'value' | 'onChange' | 'min'
|
|
|
6
6
|
min?: number;
|
|
7
7
|
max?: number;
|
|
8
8
|
onChange?: (props: {
|
|
9
|
-
e?: React.ChangeEvent | React.MouseEvent;
|
|
9
|
+
e?: React.ChangeEvent | React.MouseEvent | React.KeyboardEvent;
|
|
10
10
|
value: number;
|
|
11
11
|
}) => void;
|
|
12
12
|
};
|
|
@@ -18,5 +18,5 @@ export var SliderInput = function (props) {
|
|
|
18
18
|
setCurrentValue(validatedValue.toString());
|
|
19
19
|
};
|
|
20
20
|
useEffect(function () { return setCurrentValue(value.toString()); }, [value]);
|
|
21
|
-
return (React.createElement(TextField, __assign({ onBlur: commitChange, type: "number", min: min, max: max, step:
|
|
21
|
+
return (React.createElement(TextField, __assign({ onBlur: commitChange, type: "number", min: min, max: max, step: step, onChange: handleChange, value: currentValue }, otherProps)));
|
|
22
22
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __read
|
|
1
|
+
import { __read } from "tslib";
|
|
2
2
|
import { getSteps } from '../useSliderStationing';
|
|
3
3
|
export var isRangeParams = function (params) {
|
|
4
4
|
return !!params.range;
|
|
@@ -53,25 +53,18 @@ export var getValidValue = function (value, min, max, step) {
|
|
|
53
53
|
return (Math.ceil(Number(value.toFixed(division ? division.length : 0)) / stepValue) * stepValue);
|
|
54
54
|
}
|
|
55
55
|
var resultValue_1 = value;
|
|
56
|
-
|
|
57
|
-
if (step[0] !== min) {
|
|
58
|
-
stepsArr_1 = __spread([min], stepsArr_1);
|
|
59
|
-
}
|
|
60
|
-
else if (step[step.length - 1] !== max) {
|
|
61
|
-
stepsArr_1 = __spread(stepsArr_1, [max]);
|
|
62
|
-
}
|
|
63
|
-
stepsArr_1.forEach(function (stepPoint, index) {
|
|
56
|
+
step.forEach(function (stepPoint, index) {
|
|
64
57
|
var minValue = min;
|
|
65
58
|
var maxValue = max;
|
|
66
59
|
if (index === 0) {
|
|
67
|
-
maxValue =
|
|
60
|
+
maxValue = step[index + 1];
|
|
68
61
|
}
|
|
69
|
-
else if (index ===
|
|
62
|
+
else if (index === step.length - 1) {
|
|
70
63
|
minValue = stepPoint;
|
|
71
64
|
maxValue = max;
|
|
72
65
|
}
|
|
73
66
|
else {
|
|
74
|
-
maxValue =
|
|
67
|
+
maxValue = step[index + 1];
|
|
75
68
|
minValue = stepPoint;
|
|
76
69
|
}
|
|
77
70
|
if (value <= maxValue && value >= minValue) {
|
|
@@ -52,7 +52,7 @@ export function useSlider(props) {
|
|
|
52
52
|
});
|
|
53
53
|
}, [step]);
|
|
54
54
|
useEffect(function () {
|
|
55
|
-
if (typeof value !== 'undefined'
|
|
55
|
+
if (typeof value !== 'undefined') {
|
|
56
56
|
var targetValue = isRangeParams(props)
|
|
57
57
|
? [
|
|
58
58
|
getValidValue(props.value[0], min, max, step),
|
|
@@ -93,32 +93,24 @@ export function useSlider(props) {
|
|
|
93
93
|
}
|
|
94
94
|
if (validKeyCode) {
|
|
95
95
|
if (Array.isArray(step)) {
|
|
96
|
-
|
|
97
|
-
if (step[0] !== minValue) {
|
|
98
|
-
stepsArr_1 = __spread([minValue], stepsArr_1);
|
|
99
|
-
}
|
|
100
|
-
if (step[step.length - 1] !== maxValue) {
|
|
101
|
-
stepsArr_1 = __spread(stepsArr_1, [maxValue]);
|
|
102
|
-
}
|
|
103
|
-
stepsArr_1.forEach(function (stepPoint, index) {
|
|
96
|
+
step.forEach(function (stepPoint, index) {
|
|
104
97
|
if (typeof typeButton === 'number' && changedValue_1 === stepPoint) {
|
|
105
98
|
if (stepIncrement_1 >= 0) {
|
|
106
99
|
if (index === 0) {
|
|
107
|
-
stepIncrement_1 =
|
|
100
|
+
stepIncrement_1 = step[1] - minValue;
|
|
108
101
|
}
|
|
109
102
|
else {
|
|
110
103
|
stepIncrement_1 =
|
|
111
|
-
(typeof
|
|
112
|
-
|
|
113
|
-
: maxValue) - stepPoint;
|
|
104
|
+
(typeof step[index + 1] !== 'undefined' ? step[index + 1] : maxValue) -
|
|
105
|
+
stepPoint;
|
|
114
106
|
}
|
|
115
107
|
}
|
|
116
108
|
else if (index === 0) {
|
|
117
|
-
stepIncrement_1 = minValue -
|
|
109
|
+
stepIncrement_1 = minValue - step[1];
|
|
118
110
|
}
|
|
119
111
|
else {
|
|
120
112
|
stepIncrement_1 =
|
|
121
|
-
(typeof
|
|
113
|
+
(typeof step[index - 1] !== 'undefined' ? step[index - 1] : minValue) -
|
|
122
114
|
stepPoint;
|
|
123
115
|
}
|
|
124
116
|
}
|