@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
|
@@ -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,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
exports.__esModule = true;
|
|
3
|
-
exports.getTimeEnum = exports.getMultiplicityTime = exports.normalizeRangeValue = exports.datePickerPropPlaceholderTypeDateTime = exports.datePickerPropFormatTypeDateTime = exports.datePickerPropPlaceholderTypeDate = exports.datePickerPropFormatTypeDate = exports.datePickerPropSeparatorDefault = exports.datePickerPropDropdownFormDefault = exports.datePickerPropDropdownForm = exports.datePickerErrorTypes = exports.datePickerPropTypeDefault = exports.datePickerPropType = void 0;
|
|
3
|
+
exports.getFormForEnd = exports.getFormForStart = exports.getTimeEnum = exports.getMultiplicityTime = exports.normalizeRangeValue = exports.datePickerPropPlaceholderTypeDateTime = exports.datePickerPropFormatTypeDateTime = exports.datePickerPropPlaceholderTypeDate = exports.datePickerPropFormatTypeDate = exports.datePickerPropSeparatorDefault = exports.datePickerPropDropdownFormDefault = exports.datePickerPropDropdownForm = exports.datePickerErrorTypes = exports.datePickerPropTypeDefault = exports.datePickerPropType = void 0;
|
|
4
4
|
var date_fns_1 = require("date-fns");
|
|
5
5
|
var array_1 = require("../../utils/array");
|
|
6
|
-
|
|
6
|
+
var getByMap_1 = require("../../utils/getByMap");
|
|
7
|
+
exports.datePickerPropType = ['date', 'date-range', 'date-time', 'date-time-range'];
|
|
7
8
|
exports.datePickerPropTypeDefault = exports.datePickerPropType[0];
|
|
8
9
|
exports.datePickerErrorTypes = [
|
|
9
10
|
'outOfRange',
|
|
@@ -46,3 +47,37 @@ exports.getTimeEnum = function (length, multiplicity, startOfUnits, addUnits, ge
|
|
|
46
47
|
return getItemLabel(addUnits(startDate, number * multiplicity));
|
|
47
48
|
});
|
|
48
49
|
};
|
|
50
|
+
var mapFormForStart = {
|
|
51
|
+
"default": 'defaultClear',
|
|
52
|
+
defaultClear: 'defaultClear',
|
|
53
|
+
defaultBrick: 'defaultClear',
|
|
54
|
+
brick: 'brickClear',
|
|
55
|
+
brickDefault: 'brickClear',
|
|
56
|
+
brickClear: 'brickClear',
|
|
57
|
+
brickRound: 'brickClear',
|
|
58
|
+
round: 'roundClear',
|
|
59
|
+
roundClear: 'roundClear',
|
|
60
|
+
roundBrick: 'roundClear',
|
|
61
|
+
clearRound: 'clearClear',
|
|
62
|
+
clearDefault: 'clearClear',
|
|
63
|
+
clearBrick: 'clearClear',
|
|
64
|
+
clearClear: 'clearClear'
|
|
65
|
+
};
|
|
66
|
+
var mapFormForEnd = {
|
|
67
|
+
"default": 'brickDefault',
|
|
68
|
+
defaultClear: 'brickClear',
|
|
69
|
+
defaultBrick: 'brick',
|
|
70
|
+
brick: 'brick',
|
|
71
|
+
brickDefault: 'brickDefault',
|
|
72
|
+
brickClear: 'brickClear',
|
|
73
|
+
brickRound: 'brickRound',
|
|
74
|
+
round: 'brickRound',
|
|
75
|
+
roundClear: 'brickClear',
|
|
76
|
+
roundBrick: 'brick',
|
|
77
|
+
clearRound: 'brickRound',
|
|
78
|
+
clearDefault: 'brickDefault',
|
|
79
|
+
clearBrick: 'brick',
|
|
80
|
+
clearClear: 'brickClear'
|
|
81
|
+
};
|
|
82
|
+
exports.getFormForStart = function (form) { return getByMap_1.getByMap(mapFormForStart, form); };
|
|
83
|
+
exports.getFormForEnd = function (form) { return getByMap_1.getByMap(mapFormForEnd, form); };
|
package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeDateTime/DateTimeTypeDateTime.js
CHANGED
|
@@ -13,12 +13,12 @@ var helpers_1 = require("../helpers");
|
|
|
13
13
|
var useOnChange_1 = require("./useOnChange");
|
|
14
14
|
var cnDateTimeTypeDateTime = bem_1.cn('DateTimeTypeDateTime');
|
|
15
15
|
exports.DateTimeTypeDateTime = react_1.forwardRef(function (props, ref) {
|
|
16
|
-
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 = tslib_1.__rest(props, ["className", "onMove", "currentVisibleDate", "value", "onChange", "minDate", "maxDate", "events", "locale", "onChangeCurrentVisibleDate", "multiplicitySeconds", "multiplicityMinutes", "multiplicityHours", "style", "renderAdditionalControls"]);
|
|
17
|
-
var
|
|
18
|
-
var
|
|
16
|
+
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 = tslib_1.__rest(props, ["className", "onMove", "currentVisibleDate", "value", "onChange", "onChangeRange", "minDate", "maxDate", "events", "locale", "onChangeCurrentVisibleDate", "multiplicitySeconds", "multiplicityMinutes", "multiplicityHours", "style", "renderAdditionalControls", "timeFor"]);
|
|
17
|
+
var _b = tslib_1.__read(react_1.useState(helpers_1.moveTypes[2]), 2), moveType = _b[0], setMoveType = _b[1];
|
|
18
|
+
var _c = tslib_1.__read(react_1.useState({
|
|
19
19
|
'--root-padding-left': '0px'
|
|
20
|
-
}), 2), cssVars =
|
|
21
|
-
var
|
|
20
|
+
}), 2), cssVars = _c[0], setCssVars = _c[1];
|
|
21
|
+
var _d = tslib_1.__read(useOnChange_1.useOnChange(onChange, onChangeRange, value, timeFor), 4), onDateChange = _d[0], onDateChangeRange = _d[1], onTimeChange = _d[2], valueTime = _d[3];
|
|
22
22
|
var rootRef = react_1.useRef(null);
|
|
23
23
|
var onMove = function (type) {
|
|
24
24
|
setMoveType(type);
|
|
@@ -34,7 +34,7 @@ exports.DateTimeTypeDateTime = react_1.forwardRef(function (props, ref) {
|
|
|
34
34
|
}, []);
|
|
35
35
|
return (react_1["default"].createElement(react_1["default"].Fragment, null,
|
|
36
36
|
react_1["default"].createElement("div", tslib_1.__assign({}, otherProps, { className: cnDateTimeTypeDateTime({ withTime: withTime }, [className]), ref: useForkRef_1.useForkRef([rootRef, ref]), style: tslib_1.__assign(tslib_1.__assign({}, style), cssVars) }),
|
|
37
|
-
react_1["default"].createElement(DateTimeTypeDate_1.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 }),
|
|
38
|
-
withTime && (react_1["default"].createElement(DateTimeTypeTime_1.DateTimeTypeTime, { className: cnDateTimeTypeDateTime('Time'), value:
|
|
37
|
+
react_1["default"].createElement(DateTimeTypeDate_1.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 }),
|
|
38
|
+
withTime && (react_1["default"].createElement(DateTimeTypeTime_1.DateTimeTypeTime, { className: cnDateTimeTypeDateTime('Time'), value: valueTime, onChange: onTimeChange, minDate: minDate, maxDate: maxDate, locale: locale, multiplicitySeconds: multiplicitySeconds, multiplicityMinutes: multiplicityMinutes, multiplicityHours: multiplicityHours }))),
|
|
39
39
|
react_1["default"].createElement(DateTimeAdditionalControls_1.DateTimeAdditionalControls, { currentVisibleDate: currentVisibleDate, renderAdditionalControls: withTime ? renderAdditionalControls : undefined })));
|
|
40
40
|
});
|
package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeDateTime/useOnChange.d.ts
CHANGED
|
@@ -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];
|
|
@@ -11,9 +11,11 @@ var getTime = function (date) {
|
|
|
11
11
|
}
|
|
12
12
|
return [date_fns_1.getHours(date), date_fns_1.getMinutes(date), date_fns_1.getSeconds(date)];
|
|
13
13
|
};
|
|
14
|
-
exports.useOnChange = function (onChange, value) {
|
|
15
|
-
var
|
|
14
|
+
exports.useOnChange = function (onChange, onChangeRange, value, timeFor) {
|
|
15
|
+
var normalizeValue = Array.isArray(value) ? value[timeFor === 'start' ? 0 : 1] : value;
|
|
16
|
+
var _a = tslib_1.__read(react_1.useState(normalizeValue), 2), time = _a[0], setTime = _a[1];
|
|
16
17
|
var onChangeRef = useMutableRef_1.useMutableRef(onChange);
|
|
18
|
+
var onChangeRangeRef = useMutableRef_1.useMutableRef(onChangeRange);
|
|
17
19
|
var timeRef = useMutableRef_1.useMutableRef(time);
|
|
18
20
|
var onDateChange = react_1.useCallback(function (_a) {
|
|
19
21
|
var _b;
|
|
@@ -21,11 +23,23 @@ exports.useOnChange = function (onChange, value) {
|
|
|
21
23
|
var _c = tslib_1.__read(getTime(timeRef.current), 3), hours = _c[0], minutes = _c[1], seconds = _c[2];
|
|
22
24
|
(_b = onChangeRef.current) === null || _b === void 0 ? void 0 : _b.call(onChangeRef, { e: e, value: date_fns_1.set(value, { hours: hours, minutes: minutes, seconds: seconds }) });
|
|
23
25
|
}, []);
|
|
26
|
+
var onDateChangeRange = react_1.useCallback(function (_a) {
|
|
27
|
+
var _b;
|
|
28
|
+
var e = _a.e, value = _a.value;
|
|
29
|
+
var _c = tslib_1.__read(getTime(timeRef.current), 3), hours = _c[0], minutes = _c[1], seconds = _c[2];
|
|
30
|
+
(_b = onChangeRangeRef.current) === null || _b === void 0 ? void 0 : _b.call(onChangeRangeRef, {
|
|
31
|
+
e: e,
|
|
32
|
+
value: [
|
|
33
|
+
value[0] ? date_fns_1.set(value[0], { hours: hours, minutes: minutes, seconds: seconds }) : undefined,
|
|
34
|
+
value[1] ? date_fns_1.set(value[1], { hours: hours, minutes: minutes, seconds: seconds }) : undefined,
|
|
35
|
+
]
|
|
36
|
+
});
|
|
37
|
+
}, []);
|
|
24
38
|
var onTimeChange = react_1.useCallback(function (_a) {
|
|
25
39
|
var _b;
|
|
26
40
|
var e = _a.e, value = _a.value;
|
|
27
41
|
(_b = onChangeRef.current) === null || _b === void 0 ? void 0 : _b.call(onChangeRef, { e: e, value: value });
|
|
28
42
|
}, []);
|
|
29
|
-
react_1.useEffect(function () { return setTime(
|
|
30
|
-
return [onDateChange, onTimeChange];
|
|
43
|
+
react_1.useEffect(function () { return setTime(normalizeValue); }, [normalizeValue === null || normalizeValue === void 0 ? void 0 : normalizeValue.getTime()]);
|
|
44
|
+
return [onDateChange, onDateChangeRange, onTimeChange, normalizeValue];
|
|
31
45
|
};
|
|
@@ -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;
|
|
@@ -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;
|
|
@@ -18,8 +18,8 @@ var helpers_2 = require("./helpers");
|
|
|
18
18
|
function SelectRender(props, ref) {
|
|
19
19
|
var defaultDropdownRef = react_1.useRef(null);
|
|
20
20
|
var controlRef = react_1.useRef(null);
|
|
21
|
-
var _a = usePropsHandler_1.usePropsHandler(cnSelect_1.COMPONENT_NAME, helpers_2.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 ? types_1.defaultPropForm : _c, _d = _a.view, view = _d === void 0 ? types_1.defaultPropView : _d, _e = _a.size, size = _e === void 0 ? types_1.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 = tslib_1.__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"]);
|
|
22
|
-
var
|
|
21
|
+
var _a = usePropsHandler_1.usePropsHandler(cnSelect_1.COMPONENT_NAME, helpers_2.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 ? types_1.defaultPropForm : _c, _d = _a.view, view = _d === void 0 ? types_1.defaultPropView : _d, _e = _a.size, size = _e === void 0 ? types_1.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 ? helpers_1.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 = tslib_1.__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"]);
|
|
22
|
+
var _h = useSelect_1.useSelect({
|
|
23
23
|
items: items,
|
|
24
24
|
groups: groups,
|
|
25
25
|
value: value,
|
|
@@ -35,7 +35,7 @@ function SelectRender(props, ref) {
|
|
|
35
35
|
multiple: false,
|
|
36
36
|
onBlur: onBlur,
|
|
37
37
|
onFocus: onFocus
|
|
38
|
-
}), getKeyProps =
|
|
38
|
+
}), 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;
|
|
39
39
|
var dropdownForm = helpers_1.getSelectDropdownForm(form);
|
|
40
40
|
var renderItemDefault = function (props) {
|
|
41
41
|
var item = props.item, active = props.active, hovered = props.hovered, onClick = props.onClick, onMouseEnter = props.onMouseEnter;
|
|
@@ -56,7 +56,7 @@ function SelectRender(props, ref) {
|
|
|
56
56
|
react_1["default"].createElement("span", { className: cnSelect_1.cnSelect('Indicators') },
|
|
57
57
|
react_1["default"].createElement("button", { type: "button", className: cnSelect_1.cnSelect('IndicatorsDropdown'), tabIndex: -1, onClick: handleToggleDropdown },
|
|
58
58
|
react_1["default"].createElement(IconSelect_1.IconSelect, { size: "xs", className: cnSelect_1.cnSelect('DropdownIndicatorIcon') })))),
|
|
59
|
-
react_1["default"].createElement(SelectDropdown_1.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 })));
|
|
59
|
+
react_1["default"].createElement(SelectDropdown_1.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 })));
|
|
60
60
|
}
|
|
61
61
|
exports.Select = react_1.forwardRef(SelectRender);
|
|
62
62
|
tslib_1.__exportStar(require("./helpers"), exports);
|
|
@@ -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;
|
|
@@ -18,7 +18,7 @@ exports.defaultSelectDropdownPropForm = exports.selectDropdownform[0];
|
|
|
18
18
|
var cnSelectDropdown = bem_1.cn('SelectDropdown');
|
|
19
19
|
var cnSelectDropdownCssTransition = cnForCssTransition_1.cnForCssTransition(cnSelectDropdown);
|
|
20
20
|
exports.SelectDropdown = function (props) {
|
|
21
|
-
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 = tslib_1.__rest(props, ["controlRef", "size", "getOptionProps", "dropdownRef", "labelForCreate", "className", "labelForNotFound", "form", "isOpen", "renderItem", "visibleItems", "getGroupLabel", "notFound", "ref"]);
|
|
21
|
+
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 = tslib_1.__rest(props, ["controlRef", "size", "getOptionProps", "dropdownRef", "labelForCreate", "className", "labelForNotFound", "labelForEmptyItems", "hasItems", "form", "isOpen", "renderItem", "visibleItems", "getGroupLabel", "notFound", "ref"]);
|
|
22
22
|
var getIndex = fabricIndex_1.fabricIndex(-1);
|
|
23
23
|
var indent = form === 'round' ? 'increased' : 'normal';
|
|
24
24
|
return (react_1["default"].createElement(react_transition_group_1.CSSTransition, { "in": isOpen, unmountOnExit: true, appear: true, classNames: cnSelectDropdownCssTransition, timeout: 200 },
|
|
@@ -34,5 +34,6 @@ exports.SelectDropdown = function (props) {
|
|
|
34
34
|
return (react_1["default"].createElement(react_1.Fragment, { key: group.key + "-" + i }, renderItem(tslib_1.__assign({ item: item }, getOptionProps({ index: getIndex(), item: item })))));
|
|
35
35
|
})));
|
|
36
36
|
}),
|
|
37
|
-
notFound && labelForNotFound && (react_1["default"].createElement(Text_1.Text, { className: cnSelectDropdown('LabelForNotFound') }, labelForNotFound))
|
|
37
|
+
notFound && labelForNotFound && (react_1["default"].createElement(Text_1.Text, { className: cnSelectDropdown('LabelForNotFound') }, labelForNotFound)),
|
|
38
|
+
!hasItems && labelForEmptyItems && (react_1["default"].createElement(Text_1.Text, { className: cnSelectDropdown('LabelForEmptyItems') }, labelForEmptyItems))))));
|
|
38
39
|
};
|
|
@@ -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;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
exports.__esModule = true;
|
|
3
|
-
exports.getInputWidth = exports.defaultlabelForCreate = exports.defaultlabelForNotFound = exports.getSelectDropdownForm = void 0;
|
|
3
|
+
exports.getInputWidth = exports.defaultLabelForEmptyItems = exports.defaultlabelForCreate = exports.defaultlabelForNotFound = exports.getSelectDropdownForm = void 0;
|
|
4
4
|
var SelectDropdown_1 = require("./SelectDropdown/SelectDropdown");
|
|
5
5
|
var mapDropdownForms = {
|
|
6
6
|
"default": SelectDropdown_1.selectDropdownform[0],
|
|
@@ -22,6 +22,7 @@ function getSelectDropdownForm(form) {
|
|
|
22
22
|
exports.getSelectDropdownForm = getSelectDropdownForm;
|
|
23
23
|
exports.defaultlabelForNotFound = 'Не найдено';
|
|
24
24
|
exports.defaultlabelForCreate = '+';
|
|
25
|
+
exports.defaultLabelForEmptyItems = 'Список пуст';
|
|
25
26
|
exports.getInputWidth = function (controlInnerRef, helperInputFakeElement) {
|
|
26
27
|
if (!controlInnerRef.current || !helperInputFakeElement.current) {
|
|
27
28
|
return 20;
|
|
@@ -5,6 +5,7 @@ var tslib_1 = require("tslib");
|
|
|
5
5
|
require("./Slider.css");
|
|
6
6
|
var react_1 = tslib_1.__importStar(require("react"));
|
|
7
7
|
var useFlag_1 = require("../../hooks/useFlag/useFlag");
|
|
8
|
+
var useSortSteps_1 = require("../../hooks/useSortSteps/useSortSteps");
|
|
8
9
|
var bem_1 = require("../../utils/bem");
|
|
9
10
|
var getByMap_1 = require("../../utils/getByMap");
|
|
10
11
|
var FieldCaption_1 = require("../FieldCaption/FieldCaption");
|
|
@@ -28,6 +29,7 @@ function SliderRender(props, ref) {
|
|
|
28
29
|
var leftButtonRef = react_1.useRef(null);
|
|
29
30
|
var rightButtonRef = react_1.useRef(null);
|
|
30
31
|
var sliderRef = react_1.useRef(null);
|
|
32
|
+
var sortedSteps = useSortSteps_1.useSortSteps({ step: step, min: min, max: max });
|
|
31
33
|
var IconRight = rightSide;
|
|
32
34
|
var IconLeft = helper_1.isNotRangeParams && props.leftSide && props.leftSide !== 'input' ? props.leftSide : undefined;
|
|
33
35
|
var iconSize = getByMap_1.getByMap(sizeMap, size);
|
|
@@ -37,13 +39,13 @@ function SliderRender(props, ref) {
|
|
|
37
39
|
value: value,
|
|
38
40
|
min: min,
|
|
39
41
|
max: max,
|
|
40
|
-
step:
|
|
42
|
+
step: sortedSteps,
|
|
41
43
|
onChange: onChange,
|
|
42
44
|
onAfterChange: onAfterChange,
|
|
43
45
|
sliderRef: sliderRef,
|
|
44
46
|
buttonRefs: [leftButtonRef, rightButtonRef]
|
|
45
47
|
}), onKeyPress = _l.onKeyPress, onFocus = _l.onFocus, handlePress = _l.handlePress, popoverPosition = _l.popoverPosition, activeButton = _l.activeButton, currentValue = _l.currentValue;
|
|
46
|
-
var _m = useSliderStationing_1.useSliderStationing(currentValue.length === 1 ? currentValue[0] : currentValue, min, max, view, range,
|
|
48
|
+
var _m = useSliderStationing_1.useSliderStationing(currentValue.length === 1 ? currentValue[0] : currentValue, min, max, view, range, sortedSteps, [leftButtonRef, rightButtonRef], sliderRef), lineSizes = _m.lineSizes, buttonPositions = _m.buttonPositions;
|
|
47
49
|
var changeHovered = function (status) {
|
|
48
50
|
if (status)
|
|
49
51
|
on();
|
|
@@ -54,7 +56,7 @@ function SliderRender(props, ref) {
|
|
|
54
56
|
label && (react_1["default"].createElement(FieldLabel_1.FieldLabel, { className: cnSlider('Label'), size: size }, label)),
|
|
55
57
|
react_1["default"].createElement("div", { className: cnSlider('Container') },
|
|
56
58
|
leftSide === 'input' && helper_1.isNotRangeParams(props) && (react_1["default"].createElement("div", { className: cnSlider('Side', { position: 'left' }) },
|
|
57
|
-
react_1["default"].createElement(SliderInput_1.SliderInput, { value: props.value, onChange: function (params) { var _a; return helper_1.isNotRangeParams(props) && ((_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, params)); }, size: size, min: min, max: max, status: status, step:
|
|
59
|
+
react_1["default"].createElement(SliderInput_1.SliderInput, { value: props.value, onChange: function (params) { var _a; return helper_1.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 }))),
|
|
58
60
|
IconLeft && (react_1["default"].createElement("div", { className: cnSlider('Side', { position: 'left' }) },
|
|
59
61
|
react_1["default"].createElement(IconLeft, { size: iconSize, view: "secondary" }))),
|
|
60
62
|
react_1["default"].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
|
};
|
|
@@ -21,5 +21,5 @@ exports.SliderInput = function (props) {
|
|
|
21
21
|
setCurrentValue(validatedValue.toString());
|
|
22
22
|
};
|
|
23
23
|
react_1.useEffect(function () { return setCurrentValue(value.toString()); }, [value]);
|
|
24
|
-
return (react_1["default"].createElement(TextField_1.TextField, tslib_1.__assign({ onBlur: commitChange, type: "number", min: min, max: max, step:
|
|
24
|
+
return (react_1["default"].createElement(TextField_1.TextField, tslib_1.__assign({ onBlur: commitChange, type: "number", min: min, max: max, step: step, onChange: handleChange, value: currentValue }, otherProps)));
|
|
25
25
|
};
|
|
@@ -56,25 +56,18 @@ exports.getValidValue = function (value, min, max, step) {
|
|
|
56
56
|
return (Math.ceil(Number(value.toFixed(division ? division.length : 0)) / stepValue) * stepValue);
|
|
57
57
|
}
|
|
58
58
|
var resultValue_1 = value;
|
|
59
|
-
|
|
60
|
-
if (step[0] !== min) {
|
|
61
|
-
stepsArr_1 = tslib_1.__spread([min], stepsArr_1);
|
|
62
|
-
}
|
|
63
|
-
else if (step[step.length - 1] !== max) {
|
|
64
|
-
stepsArr_1 = tslib_1.__spread(stepsArr_1, [max]);
|
|
65
|
-
}
|
|
66
|
-
stepsArr_1.forEach(function (stepPoint, index) {
|
|
59
|
+
step.forEach(function (stepPoint, index) {
|
|
67
60
|
var minValue = min;
|
|
68
61
|
var maxValue = max;
|
|
69
62
|
if (index === 0) {
|
|
70
|
-
maxValue =
|
|
63
|
+
maxValue = step[index + 1];
|
|
71
64
|
}
|
|
72
|
-
else if (index ===
|
|
65
|
+
else if (index === step.length - 1) {
|
|
73
66
|
minValue = stepPoint;
|
|
74
67
|
maxValue = max;
|
|
75
68
|
}
|
|
76
69
|
else {
|
|
77
|
-
maxValue =
|
|
70
|
+
maxValue = step[index + 1];
|
|
78
71
|
minValue = stepPoint;
|
|
79
72
|
}
|
|
80
73
|
if (value <= maxValue && value >= minValue) {
|
|
@@ -55,7 +55,7 @@ function useSlider(props) {
|
|
|
55
55
|
});
|
|
56
56
|
}, [step]);
|
|
57
57
|
react_1.useEffect(function () {
|
|
58
|
-
if (typeof value !== 'undefined'
|
|
58
|
+
if (typeof value !== 'undefined') {
|
|
59
59
|
var targetValue = helper_1.isRangeParams(props)
|
|
60
60
|
? [
|
|
61
61
|
helper_1.getValidValue(props.value[0], min, max, step),
|
|
@@ -96,32 +96,24 @@ function useSlider(props) {
|
|
|
96
96
|
}
|
|
97
97
|
if (validKeyCode) {
|
|
98
98
|
if (Array.isArray(step)) {
|
|
99
|
-
|
|
100
|
-
if (step[0] !== minValue) {
|
|
101
|
-
stepsArr_1 = tslib_1.__spread([minValue], stepsArr_1);
|
|
102
|
-
}
|
|
103
|
-
if (step[step.length - 1] !== maxValue) {
|
|
104
|
-
stepsArr_1 = tslib_1.__spread(stepsArr_1, [maxValue]);
|
|
105
|
-
}
|
|
106
|
-
stepsArr_1.forEach(function (stepPoint, index) {
|
|
99
|
+
step.forEach(function (stepPoint, index) {
|
|
107
100
|
if (typeof typeButton === 'number' && changedValue_1 === stepPoint) {
|
|
108
101
|
if (stepIncrement_1 >= 0) {
|
|
109
102
|
if (index === 0) {
|
|
110
|
-
stepIncrement_1 =
|
|
103
|
+
stepIncrement_1 = step[1] - minValue;
|
|
111
104
|
}
|
|
112
105
|
else {
|
|
113
106
|
stepIncrement_1 =
|
|
114
|
-
(typeof
|
|
115
|
-
|
|
116
|
-
: maxValue) - stepPoint;
|
|
107
|
+
(typeof step[index + 1] !== 'undefined' ? step[index + 1] : maxValue) -
|
|
108
|
+
stepPoint;
|
|
117
109
|
}
|
|
118
110
|
}
|
|
119
111
|
else if (index === 0) {
|
|
120
|
-
stepIncrement_1 = minValue -
|
|
112
|
+
stepIncrement_1 = minValue - step[1];
|
|
121
113
|
}
|
|
122
114
|
else {
|
|
123
115
|
stepIncrement_1 =
|
|
124
|
-
(typeof
|
|
116
|
+
(typeof step[index - 1] !== 'undefined' ? step[index - 1] : minValue) -
|
|
125
117
|
stepPoint;
|
|
126
118
|
}
|
|
127
119
|
}
|
|
@@ -7,17 +7,10 @@ exports.getSteps = function (step, min, max) {
|
|
|
7
7
|
var stepsArray = [];
|
|
8
8
|
var size = min;
|
|
9
9
|
if (Array.isArray(step)) {
|
|
10
|
-
step.
|
|
10
|
+
for (var i = 0; i < step.length - 1; i++) {
|
|
11
11
|
stepsArray.push({
|
|
12
|
-
min:
|
|
13
|
-
max:
|
|
14
|
-
});
|
|
15
|
-
size += stepSize - size;
|
|
16
|
-
});
|
|
17
|
-
if (size !== max) {
|
|
18
|
-
stepsArray.push({
|
|
19
|
-
min: size,
|
|
20
|
-
max: max
|
|
12
|
+
min: step[i],
|
|
13
|
+
max: step[i + 1]
|
|
21
14
|
});
|
|
22
15
|
}
|
|
23
16
|
}
|
|
@@ -33,6 +26,7 @@ exports.getSteps = function (step, min, max) {
|
|
|
33
26
|
return stepsArray;
|
|
34
27
|
};
|
|
35
28
|
exports.useSliderStationing = function (value, min, max, view, range, step, buttonRefs, sliderLineRef) {
|
|
29
|
+
if (step === void 0) { step = 1; }
|
|
36
30
|
var _a = tslib_1.__read(react_1.useState([]), 2), lineSizes = _a[0], setLineSizes = _a[1];
|
|
37
31
|
var _b = tslib_1.__read(react_1.useState([]), 2), buttonPositions = _b[0], setButtonPositions = _b[1];
|
|
38
32
|
var calculateLines = function () {
|
|
@@ -6,6 +6,7 @@ require("./TextField.css");
|
|
|
6
6
|
var react_1 = tslib_1.__importStar(require("react"));
|
|
7
7
|
var react_textarea_autosize_1 = tslib_1.__importDefault(require("react-textarea-autosize"));
|
|
8
8
|
var useForkRef_1 = require("../../hooks/useForkRef/useForkRef");
|
|
9
|
+
var useSortSteps_1 = require("../../hooks/useSortSteps/useSortSteps");
|
|
9
10
|
var IconClose_1 = require("../../icons/IconClose/IconClose");
|
|
10
11
|
var IconSelect_1 = require("../../icons/IconSelect/IconSelect");
|
|
11
12
|
var IconSelectOpen_1 = require("../../icons/IconSelectOpen/IconSelectOpen");
|
|
@@ -28,6 +29,7 @@ function TextFieldRender(props, ref) {
|
|
|
28
29
|
var leftSideIsString = typeof leftSide === 'string';
|
|
29
30
|
var rightSideIsString = typeof rightSide === 'string';
|
|
30
31
|
var iconSize = getByMap_1.getByMap(helpers_1.sizeMap, size, iconSizeProp);
|
|
32
|
+
var sortedSteps = useSortSteps_1.useSortSteps({ step: step, min: Number(min), max: Number(max) });
|
|
31
33
|
var handleChange = function (e) {
|
|
32
34
|
var value = e.target.value;
|
|
33
35
|
!disabled && (onChange === null || onChange === void 0 ? void 0 : onChange({ e: e, id: id, name: name, value: value || null }));
|
|
@@ -66,6 +68,16 @@ function TextFieldRender(props, ref) {
|
|
|
66
68
|
});
|
|
67
69
|
}
|
|
68
70
|
}, []);
|
|
71
|
+
var onKeyDown = function (e) {
|
|
72
|
+
var flag = helpers_1.getIncrementFlag(e);
|
|
73
|
+
if (type === 'number' && typeof flag === 'boolean' && !disabled) {
|
|
74
|
+
e.preventDefault();
|
|
75
|
+
onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
76
|
+
e: e,
|
|
77
|
+
value: getValueByStep(flag).toString()
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
};
|
|
69
81
|
var textareaProps = {
|
|
70
82
|
rows: rows,
|
|
71
83
|
cols: cols,
|
|
@@ -77,7 +89,8 @@ function TextFieldRender(props, ref) {
|
|
|
77
89
|
type: type,
|
|
78
90
|
max: max,
|
|
79
91
|
min: min,
|
|
80
|
-
step:
|
|
92
|
+
step: !Array.isArray(sortedSteps) ? sortedSteps : 0,
|
|
93
|
+
onKeyDown: onKeyDown,
|
|
81
94
|
ref: useForkRef_1.useForkRef([inputRef, inputRefProp])
|
|
82
95
|
};
|
|
83
96
|
var handleClear = function (e) {
|
|
@@ -86,23 +99,22 @@ function TextFieldRender(props, ref) {
|
|
|
86
99
|
value: ''
|
|
87
100
|
});
|
|
88
101
|
};
|
|
89
|
-
var
|
|
102
|
+
var getValueByStep = function (isIncrement) {
|
|
90
103
|
var _a;
|
|
104
|
+
return Array.isArray(sortedSteps)
|
|
105
|
+
? (_a = helpers_1.getValueByStepArray({
|
|
106
|
+
min: min,
|
|
107
|
+
max: max,
|
|
108
|
+
value: value,
|
|
109
|
+
isIncrement: isIncrement,
|
|
110
|
+
steps: sortedSteps
|
|
111
|
+
})) !== null && _a !== void 0 ? _a : 0 : helpers_1.getValueByStepNumber({ value: value, step: sortedSteps, isIncrement: isIncrement, min: min, max: max });
|
|
112
|
+
};
|
|
113
|
+
var changeNumberValue = function (e, isIncrement) {
|
|
91
114
|
if (isIncrement === void 0) { isIncrement = true; }
|
|
92
|
-
var currentValue = value || 0;
|
|
93
|
-
currentValue = isIncrement
|
|
94
|
-
? Number(currentValue) + Number(step)
|
|
95
|
-
: Number(currentValue) - Number(step);
|
|
96
115
|
onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
97
116
|
e: e,
|
|
98
|
-
value:
|
|
99
|
-
/* Необходимо для того, чтобы избежать ситуации, когда по нажатию
|
|
100
|
-
на кнопку прибавляется число с погрешностью.
|
|
101
|
-
Здесь мы берем разрядность дробной части шага и ограничиваем
|
|
102
|
-
результирующее число этой разрядностью */
|
|
103
|
-
Number(step)
|
|
104
|
-
.toString()
|
|
105
|
-
.split('.')[1]) === null || _a === void 0 ? void 0 : _a.length) || 0)
|
|
117
|
+
value: getValueByStep(isIncrement).toString()
|
|
106
118
|
});
|
|
107
119
|
};
|
|
108
120
|
var rootProps = {
|
|
@@ -131,9 +143,9 @@ function TextFieldRender(props, ref) {
|
|
|
131
143
|
}), title: typeof leftSide === 'string' ? leftSide : undefined }, leftSideIsString ? (leftSide) : (react_1["default"].createElement(LeftIcon, { className: exports.cnTextField('Icon'), size: iconSize })))),
|
|
132
144
|
textarea ? (react_1["default"].createElement(react_textarea_autosize_1["default"], tslib_1.__assign({}, commonProps, textareaProps))) : (react_1["default"].createElement("input", tslib_1.__assign({}, commonProps, inputProps))),
|
|
133
145
|
type === 'number' && (react_1["default"].createElement("div", { className: exports.cnTextField('Counter') },
|
|
134
|
-
react_1["default"].createElement("button", { onClick: function (e) { return changeNumberValue(e, true); }, type: "button", className: exports.cnTextField('CounterButton') },
|
|
146
|
+
react_1["default"].createElement("button", { onFocus: handleFocus, onClick: function (e) { return changeNumberValue(e, true); }, type: "button", className: exports.cnTextField('CounterButton') },
|
|
135
147
|
react_1["default"].createElement(IconSelectOpen_1.IconSelectOpen, { size: "xs" })),
|
|
136
|
-
react_1["default"].createElement("button", { onClick: function (e) { return changeNumberValue(e, false); }, type: "button", className: exports.cnTextField('CounterButton') },
|
|
148
|
+
react_1["default"].createElement("button", { onFocus: handleFocus, onClick: function (e) { return changeNumberValue(e, false); }, type: "button", className: exports.cnTextField('CounterButton') },
|
|
137
149
|
react_1["default"].createElement(IconSelect_1.IconSelect, { size: "xs" })))),
|
|
138
150
|
value && withClearButton && type !== 'number' && (react_1["default"].createElement("button", { type: "button", disabled: disabled, onClick: handleClear, className: exports.cnTextField('ClearButton') },
|
|
139
151
|
react_1["default"].createElement(IconClose_1.IconClose, { size: "xs", className: exports.cnTextField('ClearButtonIcon') }))),
|