@sberbusiness/triplex-next 1.45.0 → 1.47.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/chunks/{AlertProcessSpoiler-54gQMEAr.js → AlertProcessSpoiler-Bws9nhT_.js} +17 -17
- package/chunks/{AlertProcessSpoiler-54gQMEAr.js.map → AlertProcessSpoiler-Bws9nhT_.js.map} +1 -1
- package/chunks/{CalendarViewItem-cQjxsIMh.js → CalendarViewItem-Bikp6svb.js} +21 -21
- package/chunks/{CalendarViewItem-cQjxsIMh.js.map → CalendarViewItem-Bikp6svb.js.map} +1 -1
- package/chunks/Card.module-BX03G_qX.js +32 -0
- package/chunks/Card.module-BX03G_qX.js.map +1 -0
- package/chunks/Carousel.module-Doem7_zb.js +30 -0
- package/chunks/Carousel.module-Doem7_zb.js.map +1 -0
- package/chunks/CheckboxTreeExtended.module-Bn7_t4on.js +24 -0
- package/chunks/CheckboxTreeExtended.module-Bn7_t4on.js.map +1 -0
- package/chunks/{Chip-CWaqKk62.js → Chip-DNn2jKWv.js} +17 -17
- package/chunks/{Chip-CWaqKk62.js.map → Chip-DNn2jKWv.js.map} +1 -1
- package/chunks/Confirm.module-Cu7K98Sg.js +24 -0
- package/chunks/Confirm.module-Cu7K98Sg.js.map +1 -0
- package/chunks/{DropdownListItem-kMroiHoh.js → DropdownListItem-B9cIx_8A.js} +11 -11
- package/chunks/{DropdownListItem-kMroiHoh.js.map → DropdownListItem-B9cIx_8A.js.map} +1 -1
- package/chunks/DropdownMobile.module-DnkRPsic.js +40 -0
- package/chunks/DropdownMobile.module-DnkRPsic.js.map +1 -0
- package/chunks/Footer.module-_S9ZcA7b.js +12 -0
- package/chunks/Footer.module-_S9ZcA7b.js.map +1 -0
- package/chunks/{HeaderLayoutSidebar.module-k_1rIXs0.js → HeaderLayoutSidebar.module-CNgPkokh.js} +4 -4
- package/chunks/HeaderLayoutSidebar.module-CNgPkokh.js.map +1 -0
- package/chunks/HeaderTabs.module-2XAHGidd.js +12 -0
- package/chunks/HeaderTabs.module-2XAHGidd.js.map +1 -0
- package/chunks/{HeaderTitle.module-BbIcVzwx.js → HeaderTitle.module-CFABp2sW.js} +4 -4
- package/chunks/HeaderTitle.module-CFABp2sW.js.map +1 -0
- package/chunks/ImageGalleryExtendedMain.module-DfFkrw4n.js +28 -0
- package/chunks/ImageGalleryExtendedMain.module-DfFkrw4n.js.map +1 -0
- package/chunks/{ImageGalleryExtendedThumb-DlJrbeiX.js → ImageGalleryExtendedThumb-Bm2vFDwB.js} +6 -6
- package/chunks/{ImageGalleryExtendedThumb-DlJrbeiX.js.map → ImageGalleryExtendedThumb-Bm2vFDwB.js.map} +1 -1
- package/chunks/IslandAccordion.module-CARpAvhk.js +44 -0
- package/chunks/IslandAccordion.module-CARpAvhk.js.map +1 -0
- package/chunks/IslandWidgetFooter.module-E0IBRK6A.js +18 -0
- package/chunks/IslandWidgetFooter.module-E0IBRK6A.js.map +1 -0
- package/chunks/IslandWidgetHeader.module-DgysHiDv.js +28 -0
- package/chunks/IslandWidgetHeader.module-DgysHiDv.js.map +1 -0
- package/chunks/{LightBoxContent-DDevHCAQ.js → LightBoxContent-b3ATzdz4.js} +17 -17
- package/chunks/{LightBoxContent-DDevHCAQ.js.map → LightBoxContent-b3ATzdz4.js.map} +1 -1
- package/chunks/LightBoxControls.module-CFiw2WEe.js +26 -0
- package/chunks/LightBoxControls.module-CFiw2WEe.js.map +1 -0
- package/chunks/{LightBoxSideOverlayClose.module-B_RmH_Zj.js → LightBoxSideOverlayClose.module-rUoDHQx6.js} +4 -4
- package/chunks/LightBoxSideOverlayClose.module-rUoDHQx6.js.map +1 -0
- package/chunks/{ListItemControlsButton-BGHyQIXE.js → ListItemControlsButton-DATlwch8.js} +10 -10
- package/chunks/{ListItemControlsButton-BGHyQIXE.js.map → ListItemControlsButton-DATlwch8.js.map} +1 -1
- package/chunks/ListItemTail.module-DEbIYD0x.js +18 -0
- package/chunks/ListItemTail.module-DEbIYD0x.js.map +1 -0
- package/chunks/ListMasterFooter.module-Dw_g_Hqv.js +14 -0
- package/chunks/ListMasterFooter.module-Dw_g_Hqv.js.map +1 -0
- package/chunks/ModalWindow.module-BIeL2Dm9.js +28 -0
- package/chunks/ModalWindow.module-BIeL2Dm9.js.map +1 -0
- package/chunks/Notification.module-CAVClo9k.js +34 -0
- package/chunks/Notification.module-CAVClo9k.js.map +1 -0
- package/chunks/Overlay.module-dRFf4RgK.js +30 -0
- package/chunks/Overlay.module-dRFf4RgK.js.map +1 -0
- package/chunks/Page.module-Bq4qHw4a.js +17 -0
- package/chunks/Page.module-Bq4qHw4a.js.map +1 -0
- package/chunks/SMSField.module-BFaDeCmy.js +30 -0
- package/chunks/SMSField.module-BFaDeCmy.js.map +1 -0
- package/chunks/SliderExtendedMarks.module-I5oq_ntW.js +24 -0
- package/chunks/SliderExtendedMarks.module-I5oq_ntW.js.map +1 -0
- package/chunks/{SliderExtendedRail-VEYm3CWM.js → SliderExtendedRail-CQjM0BDm.js} +7 -7
- package/chunks/SliderExtendedRail-CQjM0BDm.js.map +1 -0
- package/chunks/StatusTracker.module-CLL7XYcX.js +44 -0
- package/chunks/StatusTracker.module-CLL7XYcX.js.map +1 -0
- package/chunks/{StepperStepArrowBorder-B8OziF77.js → StepperStepArrowBorder-DDMmOSKy.js} +16 -16
- package/chunks/{StepperStepArrowBorder-B8OziF77.js.map → StepperStepArrowBorder-DDMmOSKy.js.map} +1 -1
- package/chunks/{SuggestFieldMobileDropdownHint-CEHlClB5.js → SuggestFieldMobileDropdownHint-BESIIDZs.js} +3 -3
- package/chunks/{SuggestFieldMobileDropdownHint-CEHlClB5.js.map → SuggestFieldMobileDropdownHint-BESIIDZs.js.map} +1 -1
- package/chunks/TableFooter.module-DyFW1z3j.js +22 -0
- package/chunks/TableFooter.module-DyFW1z3j.js.map +1 -0
- package/chunks/TabsExtended.module-DPptPKmZ.js +26 -0
- package/chunks/TabsExtended.module-DPptPKmZ.js.map +1 -0
- package/chunks/TabsLine.module-BOD6aGpU.js +36 -0
- package/chunks/TabsLine.module-BOD6aGpU.js.map +1 -0
- package/chunks/TooltipDesktop.module-_lk-8WZV.js +32 -0
- package/chunks/TooltipDesktop.module-_lk-8WZV.js.map +1 -0
- package/chunks/TreeView.module-mCVJ7u_z.js +12 -0
- package/chunks/TreeView.module-mCVJ7u_z.js.map +1 -0
- package/chunks/{UploadZoneInput-DW4bcKms.js → UploadZoneInput-1DuaS4IR.js} +6 -6
- package/chunks/{UploadZoneInput-DW4bcKms.js.map → UploadZoneInput-1DuaS4IR.js.map} +1 -1
- package/chunks/{constants-C-g_SxPw.js → constants-DUgeKsf9.js} +27 -27
- package/chunks/{constants-C-g_SxPw.js.map → constants-DUgeKsf9.js.map} +1 -1
- package/chunks/{utils-vSmFPvz4.js → utils-CvDoNsRH.js} +10 -10
- package/chunks/{utils-vSmFPvz4.js.map → utils-CvDoNsRH.js.map} +1 -1
- package/chunks/{utils-oLO5Fak1.js → utils-DhEse9-I.js} +6 -6
- package/chunks/{utils-oLO5Fak1.js.map → utils-DhEse9-I.js.map} +1 -1
- package/chunks/{utils-CRgskx0c.js → utils-c0Fgm-SD.js} +27 -27
- package/chunks/{utils-CRgskx0c.js.map → utils-c0Fgm-SD.js.map} +1 -1
- package/chunks/{utils-DogucNlz.js → utils-tt7vKg1E.js} +11 -11
- package/chunks/{utils-DogucNlz.js.map → utils-tt7vKg1E.js.map} +1 -1
- package/chunks/{vendor-D4wvHis9.js → vendor-CUIykw0y.js} +10 -5517
- package/chunks/vendor-CUIykw0y.js.map +1 -0
- package/components/AbstractTree/AbstractTreeNode.js +1 -1
- package/components/AccordionBase/protected/AccordionBase.js +1 -1
- package/components/Alert/AlertContext/AlertContext.js +8 -8
- package/components/Alert/AlertProcess/AlertProcess.js +3 -3
- package/components/Alert/AlertProcess/components/AlertProcessSpoiler.js +2 -2
- package/components/Amount/Amount.js +3 -3
- package/components/AmountField/AmountBaseInputCore.js +2 -2
- package/components/AmountField/AmountBaseInputCore.js.map +1 -1
- package/components/AmountField/AmountBaseInputFormatter.js +7 -10
- package/components/AmountField/AmountBaseInputFormatter.js.map +1 -1
- package/components/AmountField/AmountBaseInputParser.js +9 -13
- package/components/AmountField/AmountBaseInputParser.js.map +1 -1
- package/components/AmountField/AmountField.js +38 -55
- package/components/AmountField/AmountField.js.map +1 -1
- package/components/AmountField/utils.js +12 -2
- package/components/AmountField/utils.js.map +1 -1
- package/components/Avatar/Avatar.js +14 -14
- package/components/Avatar/Avatar.js.map +1 -1
- package/components/Avatar/enums.js.map +1 -1
- package/components/Badge/Badge.js +5 -5
- package/components/Badge/BadgeDot.js +5 -5
- package/components/Badge/components/BadgeContent.js +7 -7
- package/components/Badge/components/BadgePostfix.js +2 -2
- package/components/Badge/components/BadgePrefix.js +2 -2
- package/components/Body/Body.js +4 -4
- package/components/Button/Button.js +21 -21
- package/components/Button/ButtonBase.js +1 -1
- package/components/Button/ButtonDropdown.js +9 -9
- package/components/Button/ButtonDropdownExtended.js +3 -3
- package/components/Button/ButtonIcon.js +4 -4
- package/components/Calendar/Calendar.js +5 -5
- package/components/Calendar/components/CalendarControls.js +1 -1
- package/components/Calendar/components/CalendarFooter.js +2 -2
- package/components/Calendar/components/CalendarViewDays.js +2 -2
- package/components/Calendar/components/CalendarViewItem.js +2 -2
- package/components/Calendar/components/CalendarViewMonths.js +1 -1
- package/components/Calendar/components/CalendarViewYears.js +1 -1
- package/components/Card/CardAction.js +24 -10
- package/components/Card/CardAction.js.map +1 -1
- package/components/Card/CardStatic.js +26 -26
- package/components/Card/CardStatic.js.map +1 -1
- package/components/Card/components/CardContent/CardContent.js +2 -2
- package/components/Card/components/CardContent/CardContent.js.map +1 -1
- package/components/Card/components/CardContent/components/CardContentBody.js +2 -2
- package/components/Card/components/CardContent/components/CardContentFooter.js +2 -2
- package/components/Card/components/CardContent/components/CardContentHeader.js +2 -2
- package/components/Card/components/CardMedia.js +2 -2
- package/components/Card/utils.js +1 -1
- package/components/Carousel/Carousel.js +2 -2
- package/components/Carousel/CarouselButton.js +2 -2
- package/components/Carousel/CarouselIndicators.js +65 -30
- package/components/Carousel/CarouselIndicators.js.map +1 -1
- package/components/Carousel/CarouselItem.js +2 -2
- package/components/Carousel/CarouselTrack.js +2 -2
- package/components/Carousel/CarouselViewport.js +2 -2
- package/components/CarouselExtended/CarouselExtended.js +2 -2
- package/components/Checkbox/Checkbox.js +11 -11
- package/components/Checkbox/CheckboxXGroup.js +9 -9
- package/components/Checkbox/CheckboxYGroup.js +2 -2
- package/components/CheckboxTree/CheckboxTree.js +34 -35
- package/components/CheckboxTree/CheckboxTree.js.map +1 -1
- package/components/CheckboxTree/utils.js +18 -11
- package/components/CheckboxTree/utils.js.map +1 -1
- package/components/CheckboxTreeExtended/CheckboxTreeExtended.js +22 -9
- package/components/CheckboxTreeExtended/CheckboxTreeExtended.js.map +1 -1
- package/components/CheckboxTreeExtended/components/CheckboxTreeExtendedArrow.js +1 -1
- package/components/CheckboxTreeExtended/components/CheckboxTreeExtendedCheckbox.js +2 -2
- package/components/CheckboxTreeExtended/components/CheckboxTreeExtendedNode.js +2 -2
- package/components/Chip/Chip.js +2 -2
- package/components/Chip/ChipClearButton.js +2 -2
- package/components/Chip/ChipDatePicker/ChipDatePicker.js +1 -1
- package/components/Chip/ChipDatePicker/ChipDatePickerTarget.js +1 -1
- package/components/Chip/ChipDropdownArrow.js +3 -3
- package/components/Chip/ChipIcon.js +1 -1
- package/components/Chip/ChipMonthYearPicker/ChipMonthYearPicker.js +70 -0
- package/components/Chip/ChipMonthYearPicker/ChipMonthYearPicker.js.map +1 -0
- package/components/Chip/ChipMonthYearPicker/ChipMonthYearPickerTarget.js +72 -0
- package/components/Chip/ChipMonthYearPicker/ChipMonthYearPickerTarget.js.map +1 -0
- package/components/Chip/ChipMonthYearPicker/index.js +7 -0
- package/components/Chip/ChipMonthYearPicker/index.js.map +1 -0
- package/components/Chip/ChipMultiselect.js +15 -12
- package/components/Chip/ChipMultiselect.js.map +1 -1
- package/components/Chip/ChipOptions.js +29 -7
- package/components/Chip/ChipOptions.js.map +1 -1
- package/components/Chip/ChipSelect/ChipSelect.js +2 -2
- package/components/Chip/ChipSelect/ChipSelectTarget.js +1 -1
- package/components/Chip/ChipSort.js +13 -6
- package/components/Chip/ChipSort.js.map +1 -1
- package/components/Chip/ChipSuggest/ChipSuggest.js +24 -12
- package/components/Chip/ChipSuggest/ChipSuggest.js.map +1 -1
- package/components/Chip/ChipSuggest/ChipSuggestDropdown.js +12 -12
- package/components/Chip/ChipSuggest/ChipSuggestDropdown.js.map +1 -1
- package/components/Chip/ChipSuggest/ChipSuggestTarget.js +3 -9
- package/components/Chip/ChipSuggest/ChipSuggestTarget.js.map +1 -1
- package/components/Chip/ChipSuggest/desktop/ChipSuggestDesktopDropdownField.js +4 -3
- package/components/Chip/ChipSuggest/desktop/ChipSuggestDesktopDropdownField.js.map +1 -1
- package/components/Chip/index.js +5 -1
- package/components/Chip/index.js.map +1 -1
- package/components/ChipGroup/ChipGroup.js +8 -8
- package/components/Col/Col.js +133 -133
- package/components/CollapsibleTree/CollapsibleTree.js +2 -2
- package/components/CollapsibleTree/components/CollapsibleTreeLeafContent.js +2 -2
- package/components/CollapsibleTree/components/CollapsibleTreeLeafNode.js +2 -2
- package/components/CollapsibleTree/components/CollapsibleTreeNodeHeader.js +5 -5
- package/components/CollapsibleTreeExtended/CollapsibleTreeExtended.js +7 -2
- package/components/CollapsibleTreeExtended/CollapsibleTreeExtended.js.map +1 -1
- package/components/CollapsibleTreeExtended/components/CollapsibleTreeExtendedNode.js +2 -2
- package/components/Confirm/Confirm.js +22 -19
- package/components/Confirm/Confirm.js.map +1 -1
- package/components/Confirm/components/ConfirmClose.js +21 -7
- package/components/Confirm/components/ConfirmClose.js.map +1 -1
- package/components/Confirm/components/ConfirmCloseButton.js +4 -4
- package/components/Confirm/components/ConfirmCloseButton.js.map +1 -1
- package/components/Confirm/components/ConfirmContent.js +10 -5
- package/components/Confirm/components/ConfirmContent.js.map +1 -1
- package/components/Confirm/components/ConfirmContentSubTitle.js +4 -5
- package/components/Confirm/components/ConfirmContentSubTitle.js.map +1 -1
- package/components/Confirm/components/ConfirmContentTitle.js +6 -8
- package/components/Confirm/components/ConfirmContentTitle.js.map +1 -1
- package/components/Confirm/components/ConfirmControls.js +6 -3
- package/components/Confirm/components/ConfirmControls.js.map +1 -1
- package/components/Confirm/enums.js.map +1 -1
- package/components/DateField/DateField.js +43 -43
- package/components/DateField/DateField.js.map +1 -1
- package/components/DateField/DateFieldContext.js.map +1 -1
- package/components/DateField/DateFieldTarget.js +6 -5
- package/components/DateField/DateFieldTarget.js.map +1 -1
- package/components/DatePickerExtended/DatePickerExtended.js +2 -2
- package/components/DatePickerExtended/DatePickerExtended.js.map +1 -1
- package/components/DatePickerExtended/DatePickerExtendedDropdown.js +2 -2
- package/components/DateRange/DateRange.js +69 -82
- package/components/DateRange/DateRange.js.map +1 -1
- package/components/DateRange/types.js +2 -0
- package/components/DateRange/types.js.map +1 -0
- package/components/DateRange/utils.js +8 -0
- package/components/DateRange/utils.js.map +1 -0
- package/components/DesignTokens/DesignTokenUtils.js +2 -2
- package/components/DesignTokens/components/Step.js +1 -1
- package/components/DesignTokens/components/Step.js.map +1 -1
- package/components/Divider/Divider.js +18 -18
- package/components/DocumentNumberEdit/DocumentNumberEdit.js +4 -4
- package/components/Dropdown/desktop/DropdownDesktop.js +7 -7
- package/components/Dropdown/desktop/DropdownList.js +2 -2
- package/components/Dropdown/desktop/DropdownListItem.js +2 -2
- package/components/Dropdown/desktop/index.js +1 -1
- package/components/Dropdown/index.js +1 -1
- package/components/Dropdown/mobile/DropdownMobile.js +2 -2
- package/components/Dropdown/mobile/DropdownMobileBody.js +2 -2
- package/components/Dropdown/mobile/DropdownMobileClose.js +2 -2
- package/components/Dropdown/mobile/DropdownMobileFooter.js +2 -2
- package/components/Dropdown/mobile/DropdownMobileHeader.js +2 -2
- package/components/Dropdown/mobile/DropdownMobileInner.js +2 -2
- package/components/Dropdown/mobile/DropdownMobileInput.js +2 -2
- package/components/Dropdown/mobile/DropdownMobileList.js +2 -2
- package/components/Dropdown/mobile/DropdownMobileListItem.js +2 -2
- package/components/Dropdown/mobile/DropdownMobileLoader.js +2 -2
- package/components/Dropdown/mobile/DropdownMobileMaskedInput.js +2 -2
- package/components/Ellipsis/Ellipsis.js +4 -4
- package/components/EmptyView/EmptyView.js +5 -5
- package/components/ExpandAnimation/ExpandAnimation.js +2 -2
- package/components/FocusTrapExtended/FocusTrapExtended.js +1 -1
- package/components/Footer/Footer.js +1 -1
- package/components/Footer/components/FooterDescription.js +2 -2
- package/components/Footer/components/FooterDescriptionContent.js +2 -2
- package/components/Footer/components/FooterDescriptionControls.js +2 -2
- package/components/FormField/FormField.js +12 -12
- package/components/FormField/FormFieldContext.js.map +1 -1
- package/components/FormField/components/FormFieldClear.js +2 -2
- package/components/FormField/components/FormFieldCounter.js +2 -2
- package/components/FormField/components/FormFieldDescription.js +3 -3
- package/components/FormField/components/FormFieldInput.js +6 -5
- package/components/FormField/components/FormFieldInput.js.map +1 -1
- package/components/FormField/components/FormFieldLabel.js +21 -9
- package/components/FormField/components/FormFieldLabel.js.map +1 -1
- package/components/FormField/components/FormFieldMaskedInput.js +29 -35
- package/components/FormField/components/FormFieldMaskedInput.js.map +1 -1
- package/components/FormField/components/FormFieldPostfix.js +2 -2
- package/components/FormField/components/FormFieldPrefix.js +2 -2
- package/components/FormField/components/FormFieldTarget.js +10 -13
- package/components/FormField/components/FormFieldTarget.js.map +1 -1
- package/components/FormField/components/FormFieldTextarea.js +6 -5
- package/components/FormField/components/FormFieldTextarea.js.map +1 -1
- package/components/FormField/components/useFormFieldAffixWidth.js +1 -1
- package/components/FormField/components/useFormFieldAffixWidth.js.map +1 -1
- package/components/FormField/components/utils.js +1 -9
- package/components/FormField/components/utils.js.map +1 -1
- package/components/Gap/Gap.js +9 -9
- package/components/Header/Header.js +1 -1
- package/components/Header/components/HeaderLayoutSidebar/HeaderLayoutSidebar.js +2 -2
- package/components/Header/components/HeaderLayoutSidebar/HeaderLayoutSidebarContent.js +2 -2
- package/components/Header/components/HeaderLayoutSidebar/HeaderLayoutSidebarSidebar.js +2 -2
- package/components/Header/components/HeaderSubheader/HeaderSubheader.js +3 -3
- package/components/Header/components/HeaderTabs/HeaderTabs.js +2 -2
- package/components/Header/components/HeaderTabs/HeaderTabsContent.js +2 -2
- package/components/Header/components/HeaderTabs/HeaderTabsControls.js +2 -2
- package/components/Header/components/HeaderTitle/HeaderTitle.js +2 -2
- package/components/Header/components/HeaderTitle/HeaderTitleContent.js +2 -2
- package/components/Header/components/HeaderTitle/HeaderTitleControls.js +2 -2
- package/components/HelpBox/HelpBox.js +53 -45
- package/components/HelpBox/HelpBox.js.map +1 -1
- package/components/IconWrapper/IconWrapper.js +3 -3
- package/components/ImageGallery/ImageGallery.js +1 -1
- package/components/ImageGalleryExtended/ImageGalleryExtended.js +3 -3
- package/components/ImageGalleryExtended/components/ImageGalleryExtendedArrow.js +2 -2
- package/components/ImageGalleryExtended/components/ImageGalleryExtendedDots.js +4 -4
- package/components/ImageGalleryExtended/components/ImageGalleryExtendedMain.js +2 -2
- package/components/ImageGalleryExtended/components/ImageGalleryExtendedSlide.js +2 -2
- package/components/ImageGalleryExtended/components/ImageGalleryExtendedSwipeTrack.js +2 -2
- package/components/ImageGalleryExtended/components/ImageGalleryExtendedThumb.js +2 -2
- package/components/ImageGalleryExtended/components/ImageGalleryExtendedThumbnails.js +2 -2
- package/components/ImageGalleryExtended/components/index.js +1 -1
- package/components/ImageGalleryExtended/index.js +1 -1
- package/components/Island/Island.js +2 -2
- package/components/Island/components/IslandBody.js +2 -2
- package/components/Island/components/IslandFooter.js +2 -2
- package/components/Island/components/IslandHeader.js +2 -2
- package/components/Island/utils.js +1 -1
- package/components/IslandAccordion/IslandAccordion.js +3 -3
- package/components/IslandAccordion/IslandAccordion.js.map +1 -1
- package/components/IslandAccordion/IslandAccordionContext.js.map +1 -1
- package/components/IslandAccordion/components/IslandAccordionContent.js +1 -1
- package/components/IslandAccordion/components/IslandAccordionContent.js.map +1 -1
- package/components/IslandAccordion/components/IslandAccordionFooter.js +2 -2
- package/components/IslandAccordion/components/IslandAccordionFooter.js.map +1 -1
- package/components/IslandAccordion/components/IslandAccordionItem.js +17 -20
- package/components/IslandAccordion/components/IslandAccordionItem.js.map +1 -1
- package/components/IslandWidget/IslandWidget.js +18 -15
- package/components/IslandWidget/IslandWidget.js.map +1 -1
- package/components/IslandWidget/IslandWidgetContext.js.map +1 -1
- package/components/IslandWidget/IslandWidgetLayoutContext.js +3 -1
- package/components/IslandWidget/IslandWidgetLayoutContext.js.map +1 -1
- package/components/IslandWidget/components/IslandWidgetBody.js +5 -5
- package/components/IslandWidget/components/IslandWidgetBody.js.map +1 -1
- package/components/IslandWidget/components/IslandWidgetExtraFooter.js +10 -6
- package/components/IslandWidget/components/IslandWidgetExtraFooter.js.map +1 -1
- package/components/IslandWidget/components/IslandWidgetFooter.js +2 -2
- package/components/IslandWidget/components/IslandWidgetFooter.js.map +1 -1
- package/components/IslandWidget/components/IslandWidgetFooterContent.js +4 -2
- package/components/IslandWidget/components/IslandWidgetFooterContent.js.map +1 -1
- package/components/IslandWidget/components/IslandWidgetFooterControls.js +4 -2
- package/components/IslandWidget/components/IslandWidgetFooterControls.js.map +1 -1
- package/components/IslandWidget/components/IslandWidgetHeader.js +12 -7
- package/components/IslandWidget/components/IslandWidgetHeader.js.map +1 -1
- package/components/IslandWidget/components/IslandWidgetHeaderContent.js +2 -3
- package/components/IslandWidget/components/IslandWidgetHeaderContent.js.map +1 -1
- package/components/IslandWidget/components/IslandWidgetHeaderControls.js +2 -2
- package/components/IslandWidget/components/IslandWidgetHeaderControls.js.map +1 -1
- package/components/IslandWidget/components/IslandWidgetHeaderDescription.js +2 -2
- package/components/IslandWidget/components/IslandWidgetHeaderDescription.js.map +1 -1
- package/components/IslandWidget/components/IslandWidgetHeaderTitle.js +2 -2
- package/components/IslandWidget/components/IslandWidgetHeaderTitle.js.map +1 -1
- package/components/IslandWidget/components/IslandWidgetWrapper.js +15 -5
- package/components/IslandWidget/components/IslandWidgetWrapper.js.map +1 -1
- package/components/LightBox/LightBox.js +6 -6
- package/components/LightBox/LightBoxContent.js +2 -2
- package/components/LightBox/LightBoxControls/LightBoxArrow.js +2 -2
- package/components/LightBox/LightBoxControls/LightBoxClose.js +2 -2
- package/components/LightBox/LightBoxControls/LightBoxControls.js +2 -2
- package/components/LightBox/LightBoxControls/LightBoxNext.js +2 -2
- package/components/LightBox/LightBoxControls/LightBoxPrev.js +2 -2
- package/components/LightBox/LightBoxSideOverlay/LightBoxSideOverlay.js +13 -13
- package/components/LightBox/LightBoxSideOverlay/LightBoxSideOverlayCloseDesktop.js +2 -2
- package/components/LightBox/LightBoxSideOverlay/LightBoxSideOverlayCloseMobile.js +2 -2
- package/components/LightBox/LightBoxSideOverlay/LightBoxSideOverlayLoader.js +1 -1
- package/components/LightBox/LightBoxSidebars/LightBoxLeftSidebar.js +4 -4
- package/components/LightBox/LightBoxSidebars/LightBoxRightSidebar.js +4 -4
- package/components/LightBox/LightBoxViewManager/LightBoxViewManager.js +1 -1
- package/components/Link/Link.js +6 -6
- package/components/List/List.js +4 -4
- package/components/List/ListSortable.js +1 -1
- package/components/List/components/ListActionItem.js +2 -2
- package/components/List/components/ListEmptyState.js +2 -2
- package/components/List/components/ListItem.js +1 -1
- package/components/List/components/ListItemContent.js +5 -5
- package/components/List/components/ListItemControls.js +2 -2
- package/components/List/components/ListItemControlsButton.js +2 -2
- package/components/List/components/ListItemControlsButtonDropdown.js +3 -3
- package/components/List/components/ListItemControlsButtonDropdown.js.map +1 -1
- package/components/List/components/ListItemLoading.js +2 -2
- package/components/List/components/ListItemSelectable.js +7 -7
- package/components/List/components/ListItemTailLeft.js +2 -2
- package/components/List/components/ListItemTailRight.js +2 -2
- package/components/List/components/ListSortableItem.js +4 -4
- package/components/List/components/ListSortableItem.js.map +1 -1
- package/components/List/components/ListSortableItemControls.js +2 -2
- package/components/List/components/ListSortableItemTarget.js +5 -5
- package/components/List/components/ListTableItem.js +4 -4
- package/components/List/index.js +1 -1
- package/components/List/utils.js +1 -9
- package/components/List/utils.js.map +1 -1
- package/components/ListMaster/ListMaster.js +1 -1
- package/components/ListMaster/components/ListMasterBody.js +1 -1
- package/components/ListMaster/components/ListMasterChipGroup.js +2 -2
- package/components/ListMaster/components/ListMasterFooter.js +2 -2
- package/components/ListMaster/components/ListMasterFooterControls.js +2 -2
- package/components/ListMaster/components/ListMasterFooterDescription.js +2 -2
- package/components/ListMaster/components/ListMasterHeader.js +3 -3
- package/components/ListMaster/components/SelectionControls.js +3 -3
- package/components/Loader/LoaderMiddle/LoaderMiddle.js +9 -9
- package/components/Loader/LoaderSmall/LoaderSmall.js +11 -11
- package/components/LoaderScreen/LoaderScreen.js +6 -6
- package/components/Marker/Marker.js +2 -2
- package/components/Marker/utils.js +1 -1
- package/components/MarkerStatus/MarkerStatus.js +8 -8
- package/components/ModalWindow/ModalWindow.js +2 -2
- package/components/ModalWindow/components/ModalWindowBody.js +2 -2
- package/components/ModalWindow/components/ModalWindowClose.js +1 -1
- package/components/ModalWindow/components/ModalWindowContent.js +2 -2
- package/components/ModalWindow/components/ModalWindowHeader.js +2 -2
- package/components/ModalWindow/components/ModalWindowViewManager.js +2 -2
- package/components/MonthYearField/MonthYearFieldTarget.js +5 -5
- package/components/MonthYearRange/MonthYearRange.js +4 -4
- package/components/MultiselectField/components/MultiselectFieldDropdown.js +2 -2
- package/components/MultiselectField/components/MultiselectFieldDropdownContent.js +6 -6
- package/components/MultiselectField/components/MultiselectFieldDropdownFooter.js +2 -2
- package/components/MultiselectField/components/MultiselectFieldDropdownHeader.js +2 -2
- package/components/Notification/Notification.js +3 -3
- package/components/Notification/NotificationGrouped.js +1 -1
- package/components/Notification/components/NotificationBody.js +1 -1
- package/components/Notification/components/NotificationBodyList.js +2 -2
- package/components/Notification/components/NotificationClose.js +1 -1
- package/components/Notification/components/NotificationFooter.js +1 -1
- package/components/Notification/components/NotificationGroupedFooter.js +2 -2
- package/components/Notification/components/NotificationHeader.js +1 -1
- package/components/Notification/components/NotificationIcon.js +1 -1
- package/components/Notification/components/NotificationTime.js +1 -1
- package/components/OrderedList/OrderedList.js +3 -3
- package/components/OrderedList/OrderedListItem.js +3 -3
- package/components/Overlay/Overlay.js +2 -2
- package/components/Overlay/OverlayMask.js +2 -2
- package/components/Overlay/OverlayPanel.js +2 -2
- package/components/Page/Page.js +2 -2
- package/components/Page/components/BodyPage.js +8 -8
- package/components/Page/components/FooterPage.js +7 -14
- package/components/Page/components/FooterPage.js.map +1 -1
- package/components/Page/components/HeaderPage.js +2 -2
- package/components/Pagination/components/PaginationExtended.js +3 -3
- package/components/Pagination/components/PaginationNavigationButton.js +2 -2
- package/components/Pagination/components/PaginationNavigationExtended.js +2 -2
- package/components/Pagination/components/PaginationPageButton.js +3 -3
- package/components/Pagination/components/PaginationPageEllipsis.js +2 -2
- package/components/Pagination/components/PaginationSelect.js +3 -3
- package/components/Pagination/utils.js +1 -1
- package/components/Radio/Radio.js +10 -10
- package/components/Radio/RadioXGroup.js +9 -9
- package/components/Radio/RadioYGroup.js +2 -2
- package/components/Row/Row.js +5 -5
- package/components/SMSField/SMSField.js +3 -3
- package/components/SMSField/components/RefreshIcon.js +2 -2
- package/components/SMSField/components/SMSFieldInput.js +2 -2
- package/components/SMSField/components/SMSFieldRefresh.js +2 -2
- package/components/SMSField/components/SMSFieldSubmit.js +2 -2
- package/components/SMSField/components/SMSFieldTooltip.js +1 -1
- package/components/SegmentedControl/SegmentedControl.js +10 -10
- package/components/SegmentedControl/SegmentedControlSegment.js +4 -4
- package/components/SelectExtendedField/SelectExtendedField.js +2 -2
- package/components/SelectExtendedField/components/SelectExtendedFieldDropdown.js +1 -1
- package/components/SelectExtendedField/components/SelectExtendedFieldDropdownDefault.js +1 -1
- package/components/SelectExtendedField/components/SelectExtendedFieldTarget.js +8 -8
- package/components/SelectField/SelectField.js +2 -2
- package/components/Skeleton/Skeleton.js +6 -6
- package/components/Slider/Slider.js +10 -14
- package/components/Slider/Slider.js.map +1 -1
- package/components/SliderExtended/SliderExtended.js +3 -3
- package/components/SliderExtended/components/SliderExtendedDot/SliderExtendedDot.js +7 -7
- package/components/SliderExtended/components/SliderExtendedDot/SliderExtendedDot.js.map +1 -1
- package/components/SliderExtended/components/SliderExtendedMarks/SliderExtendedMark.js +2 -2
- package/components/SliderExtended/components/SliderExtendedMarks/SliderExtendedMarks.js +2 -2
- package/components/SliderExtended/components/SliderExtendedMoveHandler.js +1 -1
- package/components/SliderExtended/components/SliderExtendedRail.js +3 -3
- package/components/SliderExtended/components/SliderExtendedTooltip/SliderExtendedTooltip.js +6 -6
- package/components/SliderExtended/components/SliderExtendedTooltip/SliderExtendedTooltip.js.map +1 -1
- package/components/SliderExtended/components/SliderExtendedTrack/SliderExtendedTrack.js +8 -8
- package/components/SliderExtended/components/SliderExtendedTrack/SliderExtendedTrack.js.map +1 -1
- package/components/SliderRange/SliderRange.js +12 -19
- package/components/SliderRange/SliderRange.js.map +1 -1
- package/components/SmallInput/SmallInput.js +2 -2
- package/components/Spoiler/Spoiler.js +11 -11
- package/components/StatusTracker/StatusTracker.js +3 -3
- package/components/StatusTracker/components/StatusTrackerAlert.js +2 -2
- package/components/StatusTracker/components/StatusTrackerBody.js +2 -2
- package/components/StatusTracker/components/StatusTrackerButton.js +2 -2
- package/components/StatusTracker/components/StatusTrackerDescription.js +2 -2
- package/components/StatusTracker/components/StatusTrackerFooter.js +2 -2
- package/components/StatusTracker/components/StatusTrackerHeader.js +2 -2
- package/components/StatusTracker/components/StatusTrackerMedia.js +2 -2
- package/components/StatusTracker/components/StatusTrackerStatus.js +2 -2
- package/components/StatusTracker/components/StatusTrackerStatusGroup.js +2 -2
- package/components/StatusTracker/components/StatusTrackerSum.js +2 -2
- package/components/StatusTracker/components/StatusTrackerTitle.js +2 -2
- package/components/Step/Step.js +11 -11
- package/components/Stepper/Stepper.js +9 -9
- package/components/Stepper/StepperExtended.js +2 -2
- package/components/Stepper/StepperStep.js +3 -3
- package/components/Stepper/StepperStepArrowBorder.js +1 -1
- package/components/Suggest/SuggestMobileDropdownContent.js +3 -3
- package/components/Suggest/useSuggest.js +1 -1
- package/components/SuggestField/SuggestField.js +1 -1
- package/components/SuggestField/desktop/SuggestFieldDesktop.js +2 -2
- package/components/SuggestField/desktop/SuggestFieldDesktopDropdown.js +1 -1
- package/components/SuggestField/index.js +1 -1
- package/components/SuggestField/mobile/SuggestFieldMobile.js +1 -1
- package/components/SuggestField/mobile/SuggestFieldMobileDropdown.js +2 -2
- package/components/SuggestField/mobile/SuggestFieldMobileDropdownHint.js +1 -1
- package/components/SuggestField/mobile/index.js +1 -1
- package/components/SwipeableArea/SwipeableArea.js +9 -9
- package/components/Table/ChipPanel.js +2 -2
- package/components/Table/ChipPanelLinks.js +2 -2
- package/components/Table/FilterPanel.js +3 -3
- package/components/Table/MasterTable.js +3 -3
- package/components/Table/NoColumns.js +3 -3
- package/components/Table/PaginationPanel.js +3 -3
- package/components/Table/TableBasic/TableBasic.js +2 -2
- package/components/Table/TableBasic/components/TableBasicBody.js +2 -2
- package/components/Table/TableBasic/components/TableBasicHeader.js +2 -2
- package/components/Table/TableBasic/components/TableBasicRow.js +2 -2
- package/components/Table/TableBasicSettings/TableBasicSettings.js +3 -3
- package/components/Table/TableBasicSettings/components/ColumnSettingsSortableListItemTarget.js +3 -3
- package/components/Table/TableBasicSettings/components/ColumnSettingsStaticListItem.js +2 -2
- package/components/Table/TableBasicSettings/components/TableBasicSettingsBody.js +2 -2
- package/components/Table/TableBasicSettings/components/TableBasicSettingsFooter.js +2 -2
- package/components/Table/TableBasicSettings/components/TableBasicSettingsHeader.js +2 -2
- package/components/Table/TableFooter/TableFooter.js +2 -2
- package/components/Table/TableFooter/components/TableFooterSummary.js +1 -1
- package/components/Table/TableFooter/components/TableFooterSummaryAmount.js +1 -1
- package/components/Table/TableFooter/components/TableFooterSummarySelectAllButton.js +1 -1
- package/components/Table/TableFooter/components/TableFooterSummarySelectedCount.js +1 -1
- package/components/Table/utils.js +1 -1
- package/components/Tabs/Tabs.js +9 -9
- package/components/TabsExtended/TabsExtended.js +3 -3
- package/components/TabsExtended/components/TabsExtendedContent.js +2 -2
- package/components/TabsExtended/components/TabsExtendedDropdownWrapper.js +2 -2
- package/components/TabsExtended/components/TabsExtendedTab.js +2 -2
- package/components/TabsExtended/components/TabsExtendedTabButton.js +2 -2
- package/components/TabsExtended/components/TabsExtendedTabsWrapper.js +2 -2
- package/components/TabsExtended/utils.js +1 -1
- package/components/TabsLine/TabsLine.js +20 -17
- package/components/TabsLine/TabsLine.js.map +1 -1
- package/components/TabsLine/components/TabsLineDesktop.js +85 -98
- package/components/TabsLine/components/TabsLineDesktop.js.map +1 -1
- package/components/TabsLine/components/TabsLineDropdown.js +122 -86
- package/components/TabsLine/components/TabsLineDropdown.js.map +1 -1
- package/components/TabsLine/components/TabsLineItem.js +43 -27
- package/components/TabsLine/components/TabsLineItem.js.map +1 -1
- package/components/TabsLine/components/TabsLineMobile.js +20 -15
- package/components/TabsLine/components/TabsLineMobile.js.map +1 -1
- package/components/TabsLine/utils.js +8 -0
- package/components/TabsLine/utils.js.map +1 -1
- package/components/Tag/Tag.js +6 -6
- package/components/TagColor/TagColor.js +11 -11
- package/components/TagGroup/TagGroup.js +5 -5
- package/components/TextareaField/TextareaField.js +5 -1
- package/components/TextareaField/TextareaField.js.map +1 -1
- package/components/ThemeProvider/ThemeProvider.js +1 -1
- package/components/ThemeProvider/components/ThemeProviderView.js +1 -1
- package/components/Tooltip/components/common/TooltipBody.js +2 -2
- package/components/Tooltip/components/common/TooltipLink.js +5 -5
- package/components/Tooltip/components/common/TooltipXButton.js +1 -1
- package/components/Tooltip/components/desktop/components/TooltipDesktopBase.js +2 -2
- package/components/Tooltip/components/desktop/components/TooltipDesktopTip.js +2 -2
- package/components/Tooltip/components/mobile/TooltipMobile.js +5 -5
- package/components/TopOverlay/TopOverlay.js +7 -7
- package/components/TreeView/TreeView.js +13 -8
- package/components/TreeView/TreeView.js.map +1 -1
- package/components/TreeView/components/TreeViewGroup.js +2 -2
- package/components/TreeView/components/TreeViewNode.js +2 -2
- package/components/Triggers/TriggerClickOnKeyDownEvent.js +2 -5
- package/components/Triggers/TriggerClickOnKeyDownEvent.js.map +1 -1
- package/components/Typography/Caption.js +8 -8
- package/components/Typography/CodeText.js +3 -3
- package/components/Typography/Text.js +10 -10
- package/components/Typography/Title.js +10 -10
- package/components/Typography/constants.js +1 -1
- package/components/UnorderedListExtended/UnorderedListExtended.js +3 -3
- package/components/UnorderedListExtended/UnorderedListExtendedItem.js +3 -3
- package/components/UnorderedListExtended/UnorderedListExtendedItemMarker.js +4 -4
- package/components/UploadZone/UploadZone.js +3 -3
- package/components/UploadZone/components/UploadZoneInput.js +2 -2
- package/components/UploadZone/index.js +1 -1
- package/components/WindowResizeListener/WindowResizeListener.js +1 -1
- package/components/index.js +10 -6
- package/components/index.js.map +1 -1
- package/{components/SliderExtended/utils.js → helpers/setForwardedRef.js} +2 -2
- package/helpers/setForwardedRef.js.map +1 -0
- package/index.d.ts +426 -204
- package/index.js +10 -6
- package/index.js.map +1 -1
- package/package.json +1 -1
- package/styles/triplex-next.css +3044 -3046
- package/utils/amountUtils.js +1 -1
- package/chunks/Card.module-CNOChUdZ.js +0 -32
- package/chunks/Card.module-CNOChUdZ.js.map +0 -1
- package/chunks/Carousel.module-BpVAzSjh.js +0 -34
- package/chunks/Carousel.module-BpVAzSjh.js.map +0 -1
- package/chunks/CheckboxTreeExtended.module-BqOLLHuh.js +0 -24
- package/chunks/CheckboxTreeExtended.module-BqOLLHuh.js.map +0 -1
- package/chunks/Confirm.module-Dw5sV0a8.js +0 -24
- package/chunks/Confirm.module-Dw5sV0a8.js.map +0 -1
- package/chunks/DropdownMobile.module-ljfYoQZP.js +0 -40
- package/chunks/DropdownMobile.module-ljfYoQZP.js.map +0 -1
- package/chunks/Footer.module-DgSEqR3M.js +0 -12
- package/chunks/Footer.module-DgSEqR3M.js.map +0 -1
- package/chunks/HeaderLayoutSidebar.module-k_1rIXs0.js.map +0 -1
- package/chunks/HeaderTabs.module-Dm__bdlz.js +0 -12
- package/chunks/HeaderTabs.module-Dm__bdlz.js.map +0 -1
- package/chunks/HeaderTitle.module-BbIcVzwx.js.map +0 -1
- package/chunks/ImageGalleryExtendedMain.module--816bwiO.js +0 -28
- package/chunks/ImageGalleryExtendedMain.module--816bwiO.js.map +0 -1
- package/chunks/IslandAccordion.module-4rzQ8p9D.js +0 -44
- package/chunks/IslandAccordion.module-4rzQ8p9D.js.map +0 -1
- package/chunks/IslandWidgetFooter.module-Dxb05X44.js +0 -18
- package/chunks/IslandWidgetFooter.module-Dxb05X44.js.map +0 -1
- package/chunks/IslandWidgetHeader.module-K8SbMdcg.js +0 -28
- package/chunks/IslandWidgetHeader.module-K8SbMdcg.js.map +0 -1
- package/chunks/LightBoxControls.module-DsLaGx4X.js +0 -26
- package/chunks/LightBoxControls.module-DsLaGx4X.js.map +0 -1
- package/chunks/LightBoxSideOverlayClose.module-B_RmH_Zj.js.map +0 -1
- package/chunks/ListItemTail.module-CwDNx9W5.js +0 -18
- package/chunks/ListItemTail.module-CwDNx9W5.js.map +0 -1
- package/chunks/ListMasterFooter.module-D7b9ZUqR.js +0 -14
- package/chunks/ListMasterFooter.module-D7b9ZUqR.js.map +0 -1
- package/chunks/ModalWindow.module-urBVReGQ.js +0 -28
- package/chunks/ModalWindow.module-urBVReGQ.js.map +0 -1
- package/chunks/Notification.module-BgjNhU2P.js +0 -34
- package/chunks/Notification.module-BgjNhU2P.js.map +0 -1
- package/chunks/Overlay.module-DlzZBVdp.js +0 -30
- package/chunks/Overlay.module-DlzZBVdp.js.map +0 -1
- package/chunks/Page.module-CEeCuq1n.js +0 -15
- package/chunks/Page.module-CEeCuq1n.js.map +0 -1
- package/chunks/SMSField.module-CGuPONeF.js +0 -30
- package/chunks/SMSField.module-CGuPONeF.js.map +0 -1
- package/chunks/SliderExtendedMarks.module-SGdABaf_.js +0 -24
- package/chunks/SliderExtendedMarks.module-SGdABaf_.js.map +0 -1
- package/chunks/SliderExtendedRail-VEYm3CWM.js.map +0 -1
- package/chunks/StatusTracker.module-oLJmSAgs.js +0 -44
- package/chunks/StatusTracker.module-oLJmSAgs.js.map +0 -1
- package/chunks/TableFooter.module-DOL7cRaV.js +0 -22
- package/chunks/TableFooter.module-DOL7cRaV.js.map +0 -1
- package/chunks/TabsExtended.module-DveIh7_v.js +0 -26
- package/chunks/TabsExtended.module-DveIh7_v.js.map +0 -1
- package/chunks/TabsLine.module-CFuF3nRE.js +0 -36
- package/chunks/TabsLine.module-CFuF3nRE.js.map +0 -1
- package/chunks/TooltipDesktop.module-Bay9M-y1.js +0 -32
- package/chunks/TooltipDesktop.module-Bay9M-y1.js.map +0 -1
- package/chunks/TreeView.module-B1mjvRWg.js +0 -12
- package/chunks/TreeView.module-B1mjvRWg.js.map +0 -1
- package/chunks/vendor-D4wvHis9.js.map +0 -1
- package/components/SliderExtended/utils.js.map +0 -1
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import React__default from "react";
|
|
2
3
|
import { ETextSize } from "../../Typography/enums.js";
|
|
3
4
|
import "../../Typography/Caption.js";
|
|
4
5
|
import "../../Typography/CodeText.js";
|
|
5
6
|
import { Text } from "../../Typography/Text.js";
|
|
6
7
|
import "../../Typography/Title.js";
|
|
7
|
-
const ConfirmContentSubTitle = (
|
|
8
|
-
children,
|
|
9
|
-
|
|
10
|
-
...rest
|
|
11
|
-
}) => /* @__PURE__ */ jsx(Text, { size, tag: "div", ...rest, children });
|
|
8
|
+
const ConfirmContentSubTitle = React__default.forwardRef(
|
|
9
|
+
({ children, size = ETextSize.B2, ...rest }, ref) => /* @__PURE__ */ jsx(Text, { size, tag: "div", ...rest, ref, children })
|
|
10
|
+
);
|
|
12
11
|
ConfirmContentSubTitle.displayName = "ConfirmContentSubTitle";
|
|
13
12
|
export {
|
|
14
13
|
ConfirmContentSubTitle
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfirmContentSubTitle.js","sources":["../../../../src/components/Confirm/components/ConfirmContentSubTitle.tsx"],"sourcesContent":["import React from \"react\";\nimport { Text } from \"../../Typography\";\nimport { ETextSize } from \"../../Typography/enums\";\nimport { TTextProps } from \"../../Typography/Text\";\n\n/** Свойства компонента ConfirmContentSubTitle. */\nexport interface IConfirmContentSubTitleProps extends Partial<TTextProps<\"div\">> {}\n\nexport const ConfirmContentSubTitle
|
|
1
|
+
{"version":3,"file":"ConfirmContentSubTitle.js","sources":["../../../../src/components/Confirm/components/ConfirmContentSubTitle.tsx"],"sourcesContent":["import React from \"react\";\nimport { Text } from \"../../Typography\";\nimport { ETextSize } from \"../../Typography/enums\";\nimport { TTextProps } from \"../../Typography/Text\";\n\n/** Свойства компонента ConfirmContentSubTitle. */\nexport interface IConfirmContentSubTitleProps extends Partial<TTextProps<\"div\">> {}\n\n/**\n * Подзаголовок предупреждения — поясняющий текст под заголовком.\n * Обёртка над {@link Text} с дефолтами `size=B2` и `tag=\"div\"` — тег можно переопределить.\n *\n * Ref типизирован как `HTMLElement`, а не `HTMLDivElement`: переопределённый\n * `tag` меняет тип реального DOM-узла, и обещать `div` было бы неправдой.\n */\nexport const ConfirmContentSubTitle = React.forwardRef<HTMLElement, IConfirmContentSubTitleProps>(\n ({ children, size = ETextSize.B2, ...rest }, ref) => (\n <Text size={size} tag=\"div\" {...rest} ref={ref}>\n {children}\n </Text>\n ),\n);\n\nConfirmContentSubTitle.displayName = \"ConfirmContentSubTitle\";\n"],"names":["React"],"mappings":";;;;;;;AAeO,MAAM,yBAAyBA,eAAM;AAAA,EACxC,CAAC,EAAE,UAAU,OAAO,UAAU,IAAI,GAAG,KAAA,GAAQ,QACzC,oBAAC,QAAK,MAAY,KAAI,OAAO,GAAG,MAAM,KACjC,SAAA,CACL;AAER;AAEA,uBAAuB,cAAc;"}
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import React__default from "react";
|
|
2
3
|
import { ETitleSize } from "../../Typography/enums.js";
|
|
3
4
|
import { Title } from "../../Typography/Title.js";
|
|
4
|
-
import { c as clsx } from "../../../chunks/vendor-
|
|
5
|
-
import { s as styles } from "../../../chunks/Confirm.module-
|
|
6
|
-
const ConfirmContentTitle = (
|
|
7
|
-
children,
|
|
8
|
-
|
|
9
|
-
size = ETitleSize.H3,
|
|
10
|
-
...rest
|
|
11
|
-
}) => /* @__PURE__ */ jsx(Title, { size, className: clsx(className, styles.confirmContentTitle), ...rest, children });
|
|
5
|
+
import { c as clsx } from "../../../chunks/vendor-CUIykw0y.js";
|
|
6
|
+
import { s as styles } from "../../../chunks/Confirm.module-Cu7K98Sg.js";
|
|
7
|
+
const ConfirmContentTitle = React__default.forwardRef(
|
|
8
|
+
({ children, className, size = ETitleSize.H3, ...rest }, ref) => /* @__PURE__ */ jsx(Title, { size, className: clsx(styles.confirmContentTitle, className), ...rest, ref, children })
|
|
9
|
+
);
|
|
12
10
|
ConfirmContentTitle.displayName = "ConfirmContentTitle";
|
|
13
11
|
export {
|
|
14
12
|
ConfirmContentTitle
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfirmContentTitle.js","sources":["../../../../src/components/Confirm/components/ConfirmContentTitle.tsx"],"sourcesContent":["import React from \"react\";\nimport { ETitleSize } from \"../../Typography/enums\";\nimport { TTitleProps } from \"../../Typography/Title\";\nimport { Title } from \"../../Typography/Title\";\nimport clsx from \"clsx\";\nimport styles from \"../styles/Confirm.module.less\";\n\n/** Свойства компонента ConfirmContentTitle. */\nexport interface IConfirmContentTitleProps extends Partial<TTitleProps<\"h1\">> {}\n\nexport const ConfirmContentTitle
|
|
1
|
+
{"version":3,"file":"ConfirmContentTitle.js","sources":["../../../../src/components/Confirm/components/ConfirmContentTitle.tsx"],"sourcesContent":["import React from \"react\";\nimport { ETitleSize } from \"../../Typography/enums\";\nimport { TTitleProps } from \"../../Typography/Title\";\nimport { Title } from \"../../Typography/Title\";\nimport clsx from \"clsx\";\nimport styles from \"../styles/Confirm.module.less\";\n\n/** Свойства компонента ConfirmContentTitle. */\nexport interface IConfirmContentTitleProps extends Partial<TTitleProps<\"h1\">> {}\n\n/**\n * Заголовок предупреждения.\n * Обёртка над {@link Title} с дефолтом `size=H3` и отступом до подзаголовка.\n *\n * Ref типизирован как `HTMLElement`, а не `HTMLHeadingElement`: тег\n * переопределяется через `tag` (см. Confirm-ai.md), и тогда в DOM окажется\n * не заголовок.\n */\nexport const ConfirmContentTitle = React.forwardRef<HTMLElement, IConfirmContentTitleProps>(\n ({ children, className, size = ETitleSize.H3, ...rest }, ref) => (\n <Title size={size} className={clsx(styles.confirmContentTitle, className)} {...rest} ref={ref}>\n {children}\n </Title>\n ),\n);\n\nConfirmContentTitle.displayName = \"ConfirmContentTitle\";\n"],"names":["React"],"mappings":";;;;;;AAkBO,MAAM,sBAAsBA,eAAM;AAAA,EACrC,CAAC,EAAE,UAAU,WAAW,OAAO,WAAW,IAAI,GAAG,KAAA,GAAQ,4BACpD,OAAA,EAAM,MAAY,WAAW,KAAK,OAAO,qBAAqB,SAAS,GAAI,GAAG,MAAM,KAChF,SAAA,CACL;AAER;AAEA,oBAAoB,cAAc;"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
|
|
2
|
+
import React__default from "react";
|
|
3
|
+
import { c as clsx } from "../../../chunks/vendor-CUIykw0y.js";
|
|
4
|
+
import { s as styles } from "../../../chunks/Confirm.module-Cu7K98Sg.js";
|
|
5
|
+
const ConfirmControls = React__default.forwardRef(
|
|
6
|
+
({ children, className, ...htmlDivAttributes }, ref) => /* @__PURE__ */ jsx("div", { className: clsx(styles.confirmControls, className), ...htmlDivAttributes, ref, children })
|
|
7
|
+
);
|
|
5
8
|
ConfirmControls.displayName = "ConfirmControls";
|
|
6
9
|
export {
|
|
7
10
|
ConfirmControls
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfirmControls.js","sources":["../../../../src/components/Confirm/components/ConfirmControls.tsx"],"sourcesContent":["import React from \"react\";\nimport clsx from \"clsx\";\nimport styles from \"../styles/Confirm.module.less\";\n\n/** Свойства компонента ConfirmControls. */\nexport interface IConfirmControlsProps extends React.HTMLAttributes<HTMLDivElement> {}\n\nexport const ConfirmControls
|
|
1
|
+
{"version":3,"file":"ConfirmControls.js","sources":["../../../../src/components/Confirm/components/ConfirmControls.tsx"],"sourcesContent":["import React from \"react\";\nimport clsx from \"clsx\";\nimport styles from \"../styles/Confirm.module.less\";\n\n/** Свойства компонента ConfirmControls. */\nexport interface IConfirmControlsProps extends React.HTMLAttributes<HTMLDivElement> {}\n\n/** Контейнер кнопок действий предупреждения. Запрещает перенос кнопок на новую строку. */\nexport const ConfirmControls = React.forwardRef<HTMLDivElement, IConfirmControlsProps>(\n ({ children, className, ...htmlDivAttributes }, ref) => (\n <div className={clsx(styles.confirmControls, className)} {...htmlDivAttributes} ref={ref}>\n {children}\n </div>\n ),\n);\n\nConfirmControls.displayName = \"ConfirmControls\";\n"],"names":["React"],"mappings":";;;;AAQO,MAAM,kBAAkBA,eAAM;AAAA,EACjC,CAAC,EAAE,UAAU,WAAW,GAAG,kBAAA,GAAqB,QAC5C,oBAAC,SAAI,WAAW,KAAK,OAAO,iBAAiB,SAAS,GAAI,GAAG,mBAAmB,KAC3E,SAAA,CACL;AAER;AAEA,gBAAgB,cAAc;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enums.js","sources":["../../../src/components/Confirm/enums.ts"],"sourcesContent":["/** Компоненты, в которых можно открыть Confirm.\n * От этого зависит максимальная ширина Confirm.\n */\nexport enum EConfirmParentComponent {\n LIGHTBOX = \"lightBox\",\n SIDE_OVERLAY_SM = \"sideOverlaySM\",\n SIDE_OVERLAY_MD = \"sideOverlayMD\",\n SIDE_OVERLAY_LG = \"sideOverlayLG\",\n}\n"],"names":["EConfirmParentComponent"],"mappings":"AAGO,IAAK,4CAAAA,6BAAL;
|
|
1
|
+
{"version":3,"file":"enums.js","sources":["../../../src/components/Confirm/enums.ts"],"sourcesContent":["/** Компоненты, в которых можно открыть Confirm.\n * От этого зависит максимальная ширина Confirm.\n */\nexport enum EConfirmParentComponent {\n /** LightBox — ширина контента лайтбокса. */\n LIGHTBOX = \"lightBox\",\n /** LightBoxSideOverlay размера SM. */\n SIDE_OVERLAY_SM = \"sideOverlaySM\",\n /** LightBoxSideOverlay размера MD. */\n SIDE_OVERLAY_MD = \"sideOverlayMD\",\n /** LightBoxSideOverlay размера LG. */\n SIDE_OVERLAY_LG = \"sideOverlayLG\",\n}\n"],"names":["EConfirmParentComponent"],"mappings":"AAGO,IAAK,4CAAAA,6BAAL;AAEHA,2BAAA,UAAA,IAAW;AAEXA,2BAAA,iBAAA,IAAkB;AAElBA,2BAAA,iBAAA,IAAkB;AAElBA,2BAAA,iBAAA,IAAkB;AARV,SAAAA;AAAA,GAAA,2BAAA,CAAA,CAAA;"}
|
|
@@ -41,7 +41,7 @@ const DateField = React__default.forwardRef((props, ref) => {
|
|
|
41
41
|
const inputFocusedRef = useRef(false);
|
|
42
42
|
const dropdownOpenRef = useRef(false);
|
|
43
43
|
const dropdownClosedByCalendarRef = useRef(false);
|
|
44
|
-
const
|
|
44
|
+
const tooltipOpenedRef = useRef(false);
|
|
45
45
|
useEffect(() => {
|
|
46
46
|
const newPickerValues = DateFieldUtils.getPickerValues(value, format, limitRange, disabledDays);
|
|
47
47
|
if (newPickerValues.inputString !== pickerValues.inputString) {
|
|
@@ -57,43 +57,6 @@ const DateField = React__default.forwardRef((props, ref) => {
|
|
|
57
57
|
ref.current = instance;
|
|
58
58
|
}
|
|
59
59
|
};
|
|
60
|
-
const renderTarget = () => {
|
|
61
|
-
const { maskedInputProps, ...restTargetProps } = targetProps || {};
|
|
62
|
-
const { onChange: onInputChange, ...restMaskedInputProps } = maskedInputProps || {};
|
|
63
|
-
return /* @__PURE__ */ jsx(DateFieldContext.Provider, { value: { inputFocusedRef, onChange, triggerChangeFromInput }, children: /* @__PURE__ */ jsx(
|
|
64
|
-
DateFieldTarget,
|
|
65
|
-
{
|
|
66
|
-
size,
|
|
67
|
-
status,
|
|
68
|
-
label,
|
|
69
|
-
onClear,
|
|
70
|
-
maskedInputProps: {
|
|
71
|
-
value: pickerValues.inputString,
|
|
72
|
-
mask: FormFieldMaskedInput.presets.masks.date,
|
|
73
|
-
placeholderMask,
|
|
74
|
-
"aria-label": ariaLabel,
|
|
75
|
-
"aria-labelledby": ariaLabelledby,
|
|
76
|
-
onChange: (event) => {
|
|
77
|
-
handleInputChange(event);
|
|
78
|
-
onInputChange == null ? void 0 : onInputChange(event);
|
|
79
|
-
},
|
|
80
|
-
...restMaskedInputProps
|
|
81
|
-
},
|
|
82
|
-
...restTargetProps,
|
|
83
|
-
ref: dropdownTargetRef
|
|
84
|
-
}
|
|
85
|
-
) });
|
|
86
|
-
};
|
|
87
|
-
const renderDropdownHeaderTarget = () => /* @__PURE__ */ jsx(
|
|
88
|
-
DropdownMobileMaskedInput,
|
|
89
|
-
{
|
|
90
|
-
value: pickerValues.inputString,
|
|
91
|
-
mask: DropdownMobileMaskedInput.presets.masks.date,
|
|
92
|
-
placeholderMask,
|
|
93
|
-
onChange: handleInputChange,
|
|
94
|
-
autoFocus: true
|
|
95
|
-
}
|
|
96
|
-
);
|
|
97
60
|
const handleInputChange = (event) => {
|
|
98
61
|
let date = null;
|
|
99
62
|
if (event.target.value.length === inputDateFormat.length) {
|
|
@@ -101,9 +64,9 @@ const DateField = React__default.forwardRef((props, ref) => {
|
|
|
101
64
|
if (!date.isValid() || !DateFieldUtils.isAvailableDate(date, date.format(format), limitRange, disabledDays)) {
|
|
102
65
|
date = null;
|
|
103
66
|
}
|
|
104
|
-
|
|
67
|
+
tooltipOpenedRef.current = !date;
|
|
105
68
|
} else {
|
|
106
|
-
|
|
69
|
+
tooltipOpenedRef.current = false;
|
|
107
70
|
}
|
|
108
71
|
setPickerValues({ calendarDate: date, inputString: event.target.value });
|
|
109
72
|
};
|
|
@@ -122,7 +85,7 @@ const DateField = React__default.forwardRef((props, ref) => {
|
|
|
122
85
|
}
|
|
123
86
|
}
|
|
124
87
|
if (pickerValues.inputString !== lastValidPickerValuesRef.current.inputString) {
|
|
125
|
-
|
|
88
|
+
tooltipOpenedRef.current = false;
|
|
126
89
|
setPickerValues(lastValidPickerValuesRef.current);
|
|
127
90
|
}
|
|
128
91
|
};
|
|
@@ -141,9 +104,46 @@ const DateField = React__default.forwardRef((props, ref) => {
|
|
|
141
104
|
};
|
|
142
105
|
const handleDateChange = (date) => {
|
|
143
106
|
dropdownClosedByCalendarRef.current = true;
|
|
144
|
-
|
|
107
|
+
tooltipOpenedRef.current = false;
|
|
145
108
|
onChange(date.format(format));
|
|
146
109
|
};
|
|
110
|
+
const renderTarget = () => {
|
|
111
|
+
const { maskedInputProps, ...restTargetProps } = targetProps || {};
|
|
112
|
+
const { onChange: onInputChange, ...restMaskedInputProps } = maskedInputProps || {};
|
|
113
|
+
return /* @__PURE__ */ jsx(DateFieldContext.Provider, { value: { inputFocusedRef, onChange, triggerChangeFromInput }, children: /* @__PURE__ */ jsx(
|
|
114
|
+
DateFieldTarget,
|
|
115
|
+
{
|
|
116
|
+
size,
|
|
117
|
+
status,
|
|
118
|
+
label,
|
|
119
|
+
onClear,
|
|
120
|
+
maskedInputProps: {
|
|
121
|
+
value: pickerValues.inputString,
|
|
122
|
+
mask: FormFieldMaskedInput.presets.masks.date,
|
|
123
|
+
placeholderMask,
|
|
124
|
+
"aria-label": ariaLabel,
|
|
125
|
+
"aria-labelledby": ariaLabelledby,
|
|
126
|
+
onChange: (event) => {
|
|
127
|
+
handleInputChange(event);
|
|
128
|
+
onInputChange == null ? void 0 : onInputChange(event);
|
|
129
|
+
},
|
|
130
|
+
...restMaskedInputProps
|
|
131
|
+
},
|
|
132
|
+
...restTargetProps,
|
|
133
|
+
ref: dropdownTargetRef
|
|
134
|
+
}
|
|
135
|
+
) });
|
|
136
|
+
};
|
|
137
|
+
const renderDropdownHeaderTarget = () => /* @__PURE__ */ jsx(
|
|
138
|
+
DropdownMobileMaskedInput,
|
|
139
|
+
{
|
|
140
|
+
value: pickerValues.inputString,
|
|
141
|
+
mask: DropdownMobileMaskedInput.presets.masks.date,
|
|
142
|
+
placeholderMask,
|
|
143
|
+
onChange: handleInputChange,
|
|
144
|
+
autoFocus: true
|
|
145
|
+
}
|
|
146
|
+
);
|
|
147
147
|
const renderDatePickerExtended = () => /* @__PURE__ */ jsx(
|
|
148
148
|
DatePickerExtended,
|
|
149
149
|
{
|
|
@@ -164,7 +164,7 @@ const DateField = React__default.forwardRef((props, ref) => {
|
|
|
164
164
|
return /* @__PURE__ */ jsx(
|
|
165
165
|
MobileView,
|
|
166
166
|
{
|
|
167
|
-
fallback: /* @__PURE__ */ jsxs(Tooltip, { targetRef: tooltipTargetRef, size: ETooltipSize.SM, isOpen:
|
|
167
|
+
fallback: /* @__PURE__ */ jsxs(Tooltip, { targetRef: tooltipTargetRef, size: ETooltipSize.SM, isOpen: tooltipOpenedRef.current, children: [
|
|
168
168
|
/* @__PURE__ */ jsx(Tooltip.Body, { children: invalidDateHint }),
|
|
169
169
|
/* @__PURE__ */ jsx(Tooltip.Target, { children: renderDatePickerExtended() })
|
|
170
170
|
] }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateField.js","sources":["../../../src/components/DateField/DateField.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from \"react\";\nimport moment from \"moment\";\nimport { IDateFieldProps } from \"./types\";\nimport { DatePickerExtended } from \"../DatePickerExtended/DatePickerExtended\";\nimport { dateFormatYYYYMMDD, globalLimitRange } from \"../../consts/DateConst\";\nimport { DateFieldUtils } from \"./utils\";\nimport { DateFieldTarget } from \"./DateFieldTarget\";\nimport { inputDateFormat } from \"./constants\";\nimport { Tooltip } from \"../Tooltip/Tooltip\";\nimport { ETooltipSize } from \"../Tooltip/enums\";\nimport { MobileView } from \"../MobileView/MobileView\";\nimport { DropdownMobileMaskedInput } from \"../Dropdown/mobile/DropdownMobileMaskedInput\";\nimport { DateFieldContext } from \"./DateFieldContext\";\nimport { FormFieldMaskedInput } from \"../FormField/components/FormFieldMaskedInput\";\n\n/** Компонент ввода и выбора даты. */\nexport const DateField = React.forwardRef<HTMLDivElement, IDateFieldProps>((props, ref) => {\n const {\n size,\n status,\n value,\n label,\n placeholderMask,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledby,\n format = dateFormatYYYYMMDD,\n limitRange = globalLimitRange,\n disabledDays,\n onChange,\n onClear,\n onDropdownOpen,\n onDropdownClose,\n invalidDateHint,\n targetProps,\n ...restProps\n } = props;\n const [pickerValues, setPickerValues] = useState(\n DateFieldUtils.getPickerValues(value, format, limitRange, disabledDays),\n );\n const tooltipTargetRef = useRef<HTMLDivElement | null>(null);\n const dropdownTargetRef = useRef<HTMLDivElement | null>(null);\n const lastValidPickerValuesRef = useRef(pickerValues);\n const inputFocusedRef = useRef(false);\n const dropdownOpenRef = useRef(false);\n const dropdownClosedByCalendarRef = useRef(false); // Dropdown закрылся от выбора даты в календаре\n const tooltipOpened = useRef(false);\n\n useEffect(() => {\n const newPickerValues = DateFieldUtils.getPickerValues(value, format, limitRange, disabledDays);\n\n if (newPickerValues.inputString !== pickerValues.inputString) {\n setPickerValues(newPickerValues);\n }\n lastValidPickerValuesRef.current = newPickerValues;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value, format, limitRange, disabledDays]);\n\n /** Функция для хранения ссылки. */\n const setRef = (instance: HTMLDivElement | null) => {\n tooltipTargetRef.current = instance;\n if (typeof ref === \"function\") {\n ref(instance);\n } else if (ref) {\n ref.current = instance;\n }\n };\n\n /** Рендер-функция управляющего элемента. */\n const renderTarget = () => {\n const { maskedInputProps, ...restTargetProps } = targetProps || {};\n const { onChange: onInputChange, ...restMaskedInputProps } = maskedInputProps || {};\n\n return (\n <DateFieldContext.Provider value={{ inputFocusedRef, onChange, triggerChangeFromInput }}>\n <DateFieldTarget\n size={size}\n status={status}\n label={label}\n onClear={onClear}\n maskedInputProps={{\n value: pickerValues.inputString,\n mask: FormFieldMaskedInput.presets.masks.date,\n placeholderMask,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledby,\n onChange: (event) => {\n handleInputChange(event);\n onInputChange?.(event);\n },\n ...restMaskedInputProps,\n }}\n {...restTargetProps}\n ref={dropdownTargetRef}\n />\n </DateFieldContext.Provider>\n );\n };\n\n /** Рендер-функция управляющего элемента в заголовке DropdownMobile. */\n const renderDropdownHeaderTarget = () => (\n <DropdownMobileMaskedInput\n value={pickerValues.inputString}\n mask={DropdownMobileMaskedInput.presets.masks.date}\n placeholderMask={placeholderMask}\n onChange={handleInputChange}\n autoFocus={true}\n />\n );\n\n /** Обработчик изменения значения DatePickerTargetInput. */\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n let date: moment.Moment | null = null;\n\n if (event.target.value.length === inputDateFormat.length) {\n date = moment(event.target.value, inputDateFormat, true);\n\n if (\n !date.isValid() ||\n !DateFieldUtils.isAvailableDate(date, date.format(format), limitRange, disabledDays)\n ) {\n date = null;\n }\n\n tooltipOpened.current = !date;\n } else {\n tooltipOpened.current = false;\n }\n\n setPickerValues({ calendarDate: date, inputString: event.target.value });\n };\n\n /** Триггер изменения значения из поля ввода. */\n const triggerChangeFromInput = () => {\n if (pickerValues.inputString.length === 0 && value.length !== 0) {\n return onChange(pickerValues.inputString);\n }\n\n const date = moment(pickerValues.inputString, inputDateFormat, true);\n\n if (date.isValid()) {\n const newValue = date.format(format);\n\n if (newValue === value) {\n return;\n }\n\n if (DateFieldUtils.isAvailableDate(date, newValue, limitRange, disabledDays)) {\n return onChange(newValue);\n }\n }\n\n // Текущее значение в поле невалидно, возвращаем последнее валидное.\n if (pickerValues.inputString !== lastValidPickerValuesRef.current.inputString) {\n tooltipOpened.current = false;\n setPickerValues(lastValidPickerValuesRef.current);\n }\n };\n\n /** Обработчик открытия Dropdown. */\n const handleDropdownOpen = () => {\n dropdownOpenRef.current = true;\n\n onDropdownOpen?.();\n };\n\n /** Обработчик закрытия Dropdown. */\n const handleDropdownClose = () => {\n dropdownOpenRef.current = false;\n\n if (dropdownClosedByCalendarRef.current) {\n dropdownClosedByCalendarRef.current = false;\n } else if (\n !inputFocusedRef.current &&\n pickerValues.inputString !== lastValidPickerValuesRef.current.inputString\n ) {\n triggerChangeFromInput();\n }\n\n onDropdownClose?.();\n };\n\n /** Обработчик изменения даты. */\n const handleDateChange = (date: moment.Moment) => {\n dropdownClosedByCalendarRef.current = true;\n tooltipOpened.current = false;\n\n onChange(date.format(format));\n };\n\n const renderDatePickerExtended = () => (\n <DatePickerExtended\n dropdownTargetRef={dropdownTargetRef}\n renderTarget={renderTarget}\n renderDropdownHeaderTarget={renderDropdownHeaderTarget}\n pickedDate={pickerValues.calendarDate}\n format={format}\n limitRange={limitRange}\n disabledDays={disabledDays}\n onDropdownOpen={handleDropdownOpen}\n onDropdownClose={handleDropdownClose}\n onDateChange={handleDateChange}\n {...restProps}\n ref={setRef}\n />\n );\n\n return (\n <MobileView\n fallback={\n <Tooltip targetRef={tooltipTargetRef} size={ETooltipSize.SM} isOpen={tooltipOpened.current}>\n <Tooltip.Body>{invalidDateHint}</Tooltip.Body>\n <Tooltip.Target>{renderDatePickerExtended()}</Tooltip.Target>\n </Tooltip>\n }\n >\n {renderDatePickerExtended()}\n </MobileView>\n );\n});\n\nDateField.displayName = \"DateField\";\n"],"names":["React"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DateField.js","sources":["../../../src/components/DateField/DateField.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from \"react\";\nimport moment from \"moment\";\nimport { IDateFieldProps } from \"./types\";\nimport { DatePickerExtended } from \"../DatePickerExtended/DatePickerExtended\";\nimport { dateFormatYYYYMMDD, globalLimitRange } from \"../../consts/DateConst\";\nimport { DateFieldUtils } from \"./utils\";\nimport { DateFieldTarget } from \"./DateFieldTarget\";\nimport { inputDateFormat } from \"./constants\";\nimport { Tooltip } from \"../Tooltip/Tooltip\";\nimport { ETooltipSize } from \"../Tooltip/enums\";\nimport { MobileView } from \"../MobileView/MobileView\";\nimport { DropdownMobileMaskedInput } from \"../Dropdown/mobile/DropdownMobileMaskedInput\";\nimport { DateFieldContext } from \"./DateFieldContext\";\nimport { FormFieldMaskedInput } from \"../FormField/components/FormFieldMaskedInput\";\n\n/** Компонент ввода и выбора даты. */\nexport const DateField = React.forwardRef<HTMLDivElement, IDateFieldProps>((props, ref) => {\n const {\n size,\n status,\n value,\n label,\n placeholderMask,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledby,\n format = dateFormatYYYYMMDD,\n limitRange = globalLimitRange,\n disabledDays,\n onChange,\n onClear,\n onDropdownOpen,\n onDropdownClose,\n invalidDateHint,\n targetProps,\n ...restProps\n } = props;\n const [pickerValues, setPickerValues] = useState(\n DateFieldUtils.getPickerValues(value, format, limitRange, disabledDays),\n );\n const tooltipTargetRef = useRef<HTMLDivElement | null>(null);\n const dropdownTargetRef = useRef<HTMLDivElement | null>(null);\n const lastValidPickerValuesRef = useRef(pickerValues);\n const inputFocusedRef = useRef(false);\n const dropdownOpenRef = useRef(false);\n const dropdownClosedByCalendarRef = useRef(false); // Dropdown закрылся от выбора даты в календаре\n const tooltipOpenedRef = useRef(false);\n\n useEffect(() => {\n const newPickerValues = DateFieldUtils.getPickerValues(value, format, limitRange, disabledDays);\n\n if (newPickerValues.inputString !== pickerValues.inputString) {\n setPickerValues(newPickerValues);\n }\n lastValidPickerValuesRef.current = newPickerValues;\n // pickerValues намеренно не в зависимостях: эффект синхронизирует поле с внешним value,\n // а не реагирует на ввод пользователя — иначе он затирал бы промежуточный ввод.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value, format, limitRange, disabledDays]);\n\n const setRef = (instance: HTMLDivElement | null) => {\n tooltipTargetRef.current = instance;\n if (typeof ref === \"function\") {\n ref(instance);\n } else if (ref) {\n ref.current = instance;\n }\n };\n\n /** Обработчик изменения значения поля ввода с маской. */\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n let date: moment.Moment | null = null;\n\n if (event.target.value.length === inputDateFormat.length) {\n date = moment(event.target.value, inputDateFormat, true);\n\n if (\n !date.isValid() ||\n !DateFieldUtils.isAvailableDate(date, date.format(format), limitRange, disabledDays)\n ) {\n date = null;\n }\n\n tooltipOpenedRef.current = !date;\n } else {\n tooltipOpenedRef.current = false;\n }\n\n setPickerValues({ calendarDate: date, inputString: event.target.value });\n };\n\n /** Триггер изменения значения из поля ввода. */\n const triggerChangeFromInput = () => {\n if (pickerValues.inputString.length === 0 && value.length !== 0) {\n return onChange(pickerValues.inputString);\n }\n\n const date = moment(pickerValues.inputString, inputDateFormat, true);\n\n if (date.isValid()) {\n const newValue = date.format(format);\n\n if (newValue === value) {\n return;\n }\n\n if (DateFieldUtils.isAvailableDate(date, newValue, limitRange, disabledDays)) {\n return onChange(newValue);\n }\n }\n\n // Текущее значение в поле невалидно, возвращаем последнее валидное.\n if (pickerValues.inputString !== lastValidPickerValuesRef.current.inputString) {\n tooltipOpenedRef.current = false;\n setPickerValues(lastValidPickerValuesRef.current);\n }\n };\n\n /** Обработчик открытия Dropdown. */\n const handleDropdownOpen = () => {\n dropdownOpenRef.current = true;\n\n onDropdownOpen?.();\n };\n\n /** Обработчик закрытия Dropdown. */\n const handleDropdownClose = () => {\n dropdownOpenRef.current = false;\n\n if (dropdownClosedByCalendarRef.current) {\n dropdownClosedByCalendarRef.current = false;\n } else if (\n !inputFocusedRef.current &&\n pickerValues.inputString !== lastValidPickerValuesRef.current.inputString\n ) {\n triggerChangeFromInput();\n }\n\n onDropdownClose?.();\n };\n\n /** Обработчик изменения даты. */\n const handleDateChange = (date: moment.Moment) => {\n dropdownClosedByCalendarRef.current = true;\n tooltipOpenedRef.current = false;\n\n onChange(date.format(format));\n };\n\n /** Рендер-функция управляющего элемента. */\n const renderTarget = () => {\n const { maskedInputProps, ...restTargetProps } = targetProps || {};\n const { onChange: onInputChange, ...restMaskedInputProps } = maskedInputProps || {};\n\n return (\n <DateFieldContext.Provider value={{ inputFocusedRef, onChange, triggerChangeFromInput }}>\n <DateFieldTarget\n size={size}\n status={status}\n label={label}\n onClear={onClear}\n maskedInputProps={{\n value: pickerValues.inputString,\n mask: FormFieldMaskedInput.presets.masks.date,\n placeholderMask,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledby,\n onChange: (event) => {\n handleInputChange(event);\n onInputChange?.(event);\n },\n ...restMaskedInputProps,\n }}\n {...restTargetProps}\n ref={dropdownTargetRef}\n />\n </DateFieldContext.Provider>\n );\n };\n\n /** Рендер-функция управляющего элемента в заголовке DropdownMobile. */\n const renderDropdownHeaderTarget = () => (\n <DropdownMobileMaskedInput\n value={pickerValues.inputString}\n mask={DropdownMobileMaskedInput.presets.masks.date}\n placeholderMask={placeholderMask}\n onChange={handleInputChange}\n autoFocus={true}\n />\n );\n\n /** Рендер-функция DatePickerExtended — поле ввода с выпадающим календарём. */\n const renderDatePickerExtended = () => (\n <DatePickerExtended\n dropdownTargetRef={dropdownTargetRef}\n renderTarget={renderTarget}\n renderDropdownHeaderTarget={renderDropdownHeaderTarget}\n pickedDate={pickerValues.calendarDate}\n format={format}\n limitRange={limitRange}\n disabledDays={disabledDays}\n onDropdownOpen={handleDropdownOpen}\n onDropdownClose={handleDropdownClose}\n onDateChange={handleDateChange}\n {...restProps}\n ref={setRef}\n />\n );\n\n return (\n <MobileView\n fallback={\n <Tooltip targetRef={tooltipTargetRef} size={ETooltipSize.SM} isOpen={tooltipOpenedRef.current}>\n <Tooltip.Body>{invalidDateHint}</Tooltip.Body>\n <Tooltip.Target>{renderDatePickerExtended()}</Tooltip.Target>\n </Tooltip>\n }\n >\n {renderDatePickerExtended()}\n </MobileView>\n );\n});\n\nDateField.displayName = \"DateField\";\n"],"names":["React"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateFieldContext.js","sources":["../../../src/components/DateField/DateFieldContext.ts"],"sourcesContent":["import React from \"react\";\nimport { IDateFieldProps } from \"./types\";\n\n/** Свойства контекста компонента
|
|
1
|
+
{"version":3,"file":"DateFieldContext.js","sources":["../../../src/components/DateField/DateFieldContext.ts"],"sourcesContent":["import React from \"react\";\nimport { IDateFieldProps } from \"./types\";\n\n/** Свойства контекста компонента DateField. */\ninterface IDateFieldContext extends Pick<IDateFieldProps, \"onChange\"> {\n /** Находится ли поле ввода в фокусе. */\n inputFocusedRef: React.MutableRefObject<boolean | null>;\n /** Зафиксировать введённое в поле значение: вызвать onChange либо откатить поле к последнему валидному значению. */\n triggerChangeFromInput: () => void;\n}\n\n/** Контекст компонента DateField. */\nexport const DateFieldContext = React.createContext<IDateFieldContext>({\n inputFocusedRef: { current: null },\n onChange: () => {},\n triggerChangeFromInput: () => {},\n});\n"],"names":["React"],"mappings":";AAYO,MAAM,mBAAmBA,eAAM,cAAiC;AAAA,EACnE,iBAAiB,EAAE,SAAS,KAAA;AAAA,EAC5B,UAAU,MAAM;AAAA,EAAC;AAAA,EACjB,wBAAwB,MAAM;AAAA,EAAC;AACnC,CAAC;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
2
2
|
import React__default, { useContext } from "react";
|
|
3
|
-
import { c as clsx } from "../../chunks/vendor-
|
|
3
|
+
import { c as clsx } from "../../chunks/vendor-CUIykw0y.js";
|
|
4
4
|
import { CalendarStrokeSrvIcon24, CalendarStrokeSrvIcon20, CalendarStrokeSrvIcon16 } from "@sberbusiness/icons-next";
|
|
5
5
|
import { DatePickerExtendedContext } from "../DatePickerExtended/DatePickerExtendedContext.js";
|
|
6
6
|
import { DateFieldContext } from "./DateFieldContext.js";
|
|
@@ -12,10 +12,10 @@ import { useMobileView } from "../MobileView/useMobileView.js";
|
|
|
12
12
|
import { isKey } from "../../utils/keyboard.js";
|
|
13
13
|
import { EComponentSize } from "../../enums/EComponentSize.js";
|
|
14
14
|
import { EFormFieldStatus } from "../FormField/enums.js";
|
|
15
|
-
const dateFieldTarget = "
|
|
16
|
-
const minWidthSM = "
|
|
17
|
-
const minWidthMD = "
|
|
18
|
-
const minWidthLG = "
|
|
15
|
+
const dateFieldTarget = "dateFieldTarget__f1c45eb8";
|
|
16
|
+
const minWidthSM = "minWidthSM__8b2138d6";
|
|
17
|
+
const minWidthMD = "minWidthMD__d6b8af5c";
|
|
18
|
+
const minWidthLG = "minWidthLG__1407f8a2";
|
|
19
19
|
const styles = {
|
|
20
20
|
dateFieldTarget,
|
|
21
21
|
minWidthSM,
|
|
@@ -102,6 +102,7 @@ const DateFieldTarget = React__default.forwardRef(
|
|
|
102
102
|
);
|
|
103
103
|
}
|
|
104
104
|
);
|
|
105
|
+
DateFieldTarget.displayName = "DateFieldTarget";
|
|
105
106
|
export {
|
|
106
107
|
DateFieldTarget
|
|
107
108
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateFieldTarget.js","sources":["../../../src/components/DateField/DateFieldTarget.tsx"],"sourcesContent":["import React, { useContext } from \"react\";\nimport clsx from \"clsx\";\nimport { CalendarStrokeSrvIcon16, CalendarStrokeSrvIcon20, CalendarStrokeSrvIcon24 } from \"@sberbusiness/icons-next\";\nimport { DatePickerExtendedContext } from \"../DatePickerExtended/DatePickerExtendedContext\";\nimport { DateFieldContext } from \"./DateFieldContext\";\nimport { MaskedField } from \"../MaskedField/MaskedField\";\nimport { FormFieldClear } from \"../FormField/components/FormFieldClear\";\nimport { ButtonIcon } from \"../Button/ButtonIcon\";\nimport { useMobileView } from \"../MobileView\";\nimport { isKey } from \"../../utils/keyboard\";\nimport { EComponentSize } from \"../../enums\";\nimport { EFormFieldStatus } from \"../FormField/enums\";\nimport { IDateFieldTargetProps } from \"./types\";\nimport styles from \"./styles/DateFieldTarget.module.less\";\n\n/** Соответствие размера имени класса поля ввода. */\nconst SIZE_TO_INPUT_CLASS_NAME_MAP = {\n [EComponentSize.SM]: styles.minWidthSM,\n [EComponentSize.MD]: styles.minWidthMD,\n [EComponentSize.LG]: styles.minWidthLG,\n};\n\n/** Соответствие размера иконке календаря. */\nconst SIZE_TO_CALENDAR_ICON_MAP = {\n [EComponentSize.SM]: <CalendarStrokeSrvIcon16 paletteIndex={5} />,\n [EComponentSize.MD]: <CalendarStrokeSrvIcon20 paletteIndex={5} />,\n [EComponentSize.LG]: <CalendarStrokeSrvIcon24 paletteIndex={5} />,\n};\n\nexport const DateFieldTarget = React.forwardRef<HTMLDivElement, IDateFieldTargetProps>(\n ({ className, size = EComponentSize.MD, postfix, maskedInputProps, onClear, ...restProps }, ref) => {\n const { dropdownOpen, setDropdownOpen } = useContext(DatePickerExtendedContext);\n const { inputFocusedRef, triggerChangeFromInput } = useContext(DateFieldContext);\n const { status } = restProps;\n const {\n className: inputClassName,\n onFocus: onInputFocus,\n onBlur: onInputBlur,\n onKeyDown: onInputKeyDown,\n onMouseDown: onInputMouseDown,\n ...restInputProps\n } = maskedInputProps;\n const adaptive = useMobileView();\n const disabled = status === EFormFieldStatus.DISABLED;\n\n const handleInputFocus: React.FocusEventHandler<HTMLInputElement> = (event) => {\n inputFocusedRef.current = true;\n onInputFocus?.(event);\n };\n\n const handleInputBlur: React.FocusEventHandler<HTMLInputElement> = (event) => {\n inputFocusedRef.current = false;\n\n if (!dropdownOpen) {\n triggerChangeFromInput();\n }\n\n onInputBlur?.(event);\n };\n\n const handleMouseDown: React.MouseEventHandler<HTMLInputElement> = (event) => {\n if (!dropdownOpen) {\n if (adaptive) {\n event.preventDefault();\n }\n // setTimeout для корректной работы label\n setTimeout(() => setDropdownOpen(true));\n }\n\n onInputMouseDown?.(event);\n };\n\n const handleInputKeyDown: React.KeyboardEventHandler<HTMLInputElement> = (event) => {\n if (isKey(event.code, \"ENTER\")) {\n setDropdownOpen(!dropdownOpen);\n } else if (isKey(event.code, \"SPACE\")) {\n event.preventDefault();\n setDropdownOpen(!dropdownOpen);\n }\n\n onInputKeyDown?.(event);\n };\n\n const handleButtonClick: React.MouseEventHandler<HTMLButtonElement> = () => setDropdownOpen(!dropdownOpen);\n\n const renderPostfixContent = () => (\n <>\n {onClear && <FormFieldClear onClick={onClear} />}\n <ButtonIcon active={dropdownOpen} disabled={disabled} onClick={handleButtonClick}>\n {SIZE_TO_CALENDAR_ICON_MAP[size]}\n </ButtonIcon>\n {postfix}\n </>\n );\n\n return (\n <MaskedField\n className={clsx(styles.dateFieldTarget, className)}\n size={size}\n maskedInputProps={{\n ...restInputProps,\n className: clsx(SIZE_TO_INPUT_CLASS_NAME_MAP[size], inputClassName),\n onFocus: handleInputFocus,\n onBlur: handleInputBlur,\n onMouseDown: handleMouseDown,\n onKeyDown: handleInputKeyDown,\n }}\n postfix={renderPostfixContent()}\n {...restProps}\n ref={ref}\n />\n );\n },\n);\n"],"names":["React"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAgBA,MAAM,+BAA+B;AAAA,EACjC,CAAC,eAAe,EAAE,GAAG,OAAO;AAAA,EAC5B,CAAC,eAAe,EAAE,GAAG,OAAO;AAAA,EAC5B,CAAC,eAAe,EAAE,GAAG,OAAO;AAChC;AAGA,MAAM,4BAA4B;AAAA,EAC9B,CAAC,eAAe,EAAE,GAAG,oBAAC,yBAAA,EAAwB,cAAc,GAAG;AAAA,EAC/D,CAAC,eAAe,EAAE,GAAG,oBAAC,yBAAA,EAAwB,cAAc,GAAG;AAAA,EAC/D,CAAC,eAAe,EAAE,GAAG,oBAAC,yBAAA,EAAwB,cAAc,EAAA,CAAG;AACnE;
|
|
1
|
+
{"version":3,"file":"DateFieldTarget.js","sources":["../../../src/components/DateField/DateFieldTarget.tsx"],"sourcesContent":["import React, { useContext } from \"react\";\nimport clsx from \"clsx\";\nimport { CalendarStrokeSrvIcon16, CalendarStrokeSrvIcon20, CalendarStrokeSrvIcon24 } from \"@sberbusiness/icons-next\";\nimport { DatePickerExtendedContext } from \"../DatePickerExtended/DatePickerExtendedContext\";\nimport { DateFieldContext } from \"./DateFieldContext\";\nimport { MaskedField } from \"../MaskedField/MaskedField\";\nimport { FormFieldClear } from \"../FormField/components/FormFieldClear\";\nimport { ButtonIcon } from \"../Button/ButtonIcon\";\nimport { useMobileView } from \"../MobileView\";\nimport { isKey } from \"../../utils/keyboard\";\nimport { EComponentSize } from \"../../enums\";\nimport { EFormFieldStatus } from \"../FormField/enums\";\nimport { IDateFieldTargetProps } from \"./types\";\nimport styles from \"./styles/DateFieldTarget.module.less\";\n\n/** Соответствие размера имени класса поля ввода. */\nconst SIZE_TO_INPUT_CLASS_NAME_MAP = {\n [EComponentSize.SM]: styles.minWidthSM,\n [EComponentSize.MD]: styles.minWidthMD,\n [EComponentSize.LG]: styles.minWidthLG,\n};\n\n/** Соответствие размера иконке календаря. */\nconst SIZE_TO_CALENDAR_ICON_MAP = {\n [EComponentSize.SM]: <CalendarStrokeSrvIcon16 paletteIndex={5} />,\n [EComponentSize.MD]: <CalendarStrokeSrvIcon20 paletteIndex={5} />,\n [EComponentSize.LG]: <CalendarStrokeSrvIcon24 paletteIndex={5} />,\n};\n\n/**\n * Управляющий элемент DateField — поле ввода даты с маской.\n * Кнопка-иконка календаря и клавиши Enter/Space открывают и закрывают выпадающий календарь,\n * потеря фокуса при закрытом календаре фиксирует введённое значение.\n */\nexport const DateFieldTarget = React.forwardRef<HTMLDivElement, IDateFieldTargetProps>(\n ({ className, size = EComponentSize.MD, postfix, maskedInputProps, onClear, ...restProps }, ref) => {\n const { dropdownOpen, setDropdownOpen } = useContext(DatePickerExtendedContext);\n const { inputFocusedRef, triggerChangeFromInput } = useContext(DateFieldContext);\n const { status } = restProps;\n const {\n className: inputClassName,\n onFocus: onInputFocus,\n onBlur: onInputBlur,\n onKeyDown: onInputKeyDown,\n onMouseDown: onInputMouseDown,\n ...restInputProps\n } = maskedInputProps;\n const adaptive = useMobileView();\n const disabled = status === EFormFieldStatus.DISABLED;\n\n const handleInputFocus: React.FocusEventHandler<HTMLInputElement> = (event) => {\n inputFocusedRef.current = true;\n onInputFocus?.(event);\n };\n\n const handleInputBlur: React.FocusEventHandler<HTMLInputElement> = (event) => {\n inputFocusedRef.current = false;\n\n if (!dropdownOpen) {\n triggerChangeFromInput();\n }\n\n onInputBlur?.(event);\n };\n\n const handleMouseDown: React.MouseEventHandler<HTMLInputElement> = (event) => {\n if (!dropdownOpen) {\n if (adaptive) {\n event.preventDefault();\n }\n // setTimeout для корректной работы label\n setTimeout(() => setDropdownOpen(true));\n }\n\n onInputMouseDown?.(event);\n };\n\n const handleInputKeyDown: React.KeyboardEventHandler<HTMLInputElement> = (event) => {\n if (isKey(event.code, \"ENTER\")) {\n setDropdownOpen(!dropdownOpen);\n } else if (isKey(event.code, \"SPACE\")) {\n event.preventDefault();\n setDropdownOpen(!dropdownOpen);\n }\n\n onInputKeyDown?.(event);\n };\n\n const handleButtonClick: React.MouseEventHandler<HTMLButtonElement> = () => setDropdownOpen(!dropdownOpen);\n\n const renderPostfixContent = () => (\n <>\n {onClear && <FormFieldClear onClick={onClear} />}\n <ButtonIcon active={dropdownOpen} disabled={disabled} onClick={handleButtonClick}>\n {SIZE_TO_CALENDAR_ICON_MAP[size]}\n </ButtonIcon>\n {postfix}\n </>\n );\n\n return (\n <MaskedField\n className={clsx(styles.dateFieldTarget, className)}\n size={size}\n maskedInputProps={{\n ...restInputProps,\n className: clsx(SIZE_TO_INPUT_CLASS_NAME_MAP[size], inputClassName),\n onFocus: handleInputFocus,\n onBlur: handleInputBlur,\n onMouseDown: handleMouseDown,\n onKeyDown: handleInputKeyDown,\n }}\n postfix={renderPostfixContent()}\n {...restProps}\n ref={ref}\n />\n );\n },\n);\n\nDateFieldTarget.displayName = \"DateFieldTarget\";\n"],"names":["React"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAgBA,MAAM,+BAA+B;AAAA,EACjC,CAAC,eAAe,EAAE,GAAG,OAAO;AAAA,EAC5B,CAAC,eAAe,EAAE,GAAG,OAAO;AAAA,EAC5B,CAAC,eAAe,EAAE,GAAG,OAAO;AAChC;AAGA,MAAM,4BAA4B;AAAA,EAC9B,CAAC,eAAe,EAAE,GAAG,oBAAC,yBAAA,EAAwB,cAAc,GAAG;AAAA,EAC/D,CAAC,eAAe,EAAE,GAAG,oBAAC,yBAAA,EAAwB,cAAc,GAAG;AAAA,EAC/D,CAAC,eAAe,EAAE,GAAG,oBAAC,yBAAA,EAAwB,cAAc,EAAA,CAAG;AACnE;AAOO,MAAM,kBAAkBA,eAAM;AAAA,EACjC,CAAC,EAAE,WAAW,OAAO,eAAe,IAAI,SAAS,kBAAkB,SAAS,GAAG,UAAA,GAAa,QAAQ;AAChG,UAAM,EAAE,cAAc,oBAAoB,WAAW,yBAAyB;AAC9E,UAAM,EAAE,iBAAiB,2BAA2B,WAAW,gBAAgB;AAC/E,UAAM,EAAE,WAAW;AACnB,UAAM;AAAA,MACF,WAAW;AAAA,MACX,SAAS;AAAA,MACT,QAAQ;AAAA,MACR,WAAW;AAAA,MACX,aAAa;AAAA,MACb,GAAG;AAAA,IAAA,IACH;AACJ,UAAM,WAAW,cAAA;AACjB,UAAM,WAAW,WAAW,iBAAiB;AAE7C,UAAM,mBAA8D,CAAC,UAAU;AAC3E,sBAAgB,UAAU;AAC1B,mDAAe;AAAA,IACnB;AAEA,UAAM,kBAA6D,CAAC,UAAU;AAC1E,sBAAgB,UAAU;AAE1B,UAAI,CAAC,cAAc;AACf,+BAAA;AAAA,MACJ;AAEA,iDAAc;AAAA,IAClB;AAEA,UAAM,kBAA6D,CAAC,UAAU;AAC1E,UAAI,CAAC,cAAc;AACf,YAAI,UAAU;AACV,gBAAM,eAAA;AAAA,QACV;AAEA,mBAAW,MAAM,gBAAgB,IAAI,CAAC;AAAA,MAC1C;AAEA,2DAAmB;AAAA,IACvB;AAEA,UAAM,qBAAmE,CAAC,UAAU;AAChF,UAAI,MAAM,MAAM,MAAM,OAAO,GAAG;AAC5B,wBAAgB,CAAC,YAAY;AAAA,MACjC,WAAW,MAAM,MAAM,MAAM,OAAO,GAAG;AACnC,cAAM,eAAA;AACN,wBAAgB,CAAC,YAAY;AAAA,MACjC;AAEA,uDAAiB;AAAA,IACrB;AAEA,UAAM,oBAAgE,MAAM,gBAAgB,CAAC,YAAY;AAEzG,UAAM,uBAAuB,MACzB,qBAAA,UAAA,EACK,UAAA;AAAA,MAAA,WAAW,oBAAC,gBAAA,EAAe,SAAS,QAAA,CAAS;AAAA,MAC9C,oBAAC,cAAW,QAAQ,cAAc,UAAoB,SAAS,mBAC1D,UAAA,0BAA0B,IAAI,EAAA,CACnC;AAAA,MACC;AAAA,IAAA,GACL;AAGJ,WACI;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAW,KAAK,OAAO,iBAAiB,SAAS;AAAA,QACjD;AAAA,QACA,kBAAkB;AAAA,UACd,GAAG;AAAA,UACH,WAAW,KAAK,6BAA6B,IAAI,GAAG,cAAc;AAAA,UAClE,SAAS;AAAA,UACT,QAAQ;AAAA,UACR,aAAa;AAAA,UACb,WAAW;AAAA,QAAA;AAAA,QAEf,SAAS,qBAAA;AAAA,QACR,GAAG;AAAA,QACJ;AAAA,MAAA;AAAA,IAAA;AAAA,EAGZ;AACJ;AAEA,gBAAgB,cAAc;"}
|
|
@@ -5,7 +5,7 @@ import { Calendar } from "../Calendar/Calendar.js";
|
|
|
5
5
|
import "../Dropdown/DropdownListContext.js";
|
|
6
6
|
import "../Dropdown/desktop/DropdownDesktop.js";
|
|
7
7
|
import "../Dropdown/desktop/DropdownList.js";
|
|
8
|
-
import "../../chunks/DropdownListItem-
|
|
8
|
+
import "../../chunks/DropdownListItem-B9cIx_8A.js";
|
|
9
9
|
import { EDropdownAlignment } from "../Dropdown/desktop/enums.js";
|
|
10
10
|
import "../Dropdown/mobile/DropdownMobile.js";
|
|
11
11
|
import "../Dropdown/mobile/DropdownMobileBody.js";
|
|
@@ -136,7 +136,7 @@ const DatePickerExtended = React__default.forwardRef((props, ref) => {
|
|
|
136
136
|
onKeyDown: handleKeyDown,
|
|
137
137
|
onMouseDown: handleMouseDown,
|
|
138
138
|
...restProps,
|
|
139
|
-
"data-tx": "1.
|
|
139
|
+
"data-tx": "1.47.0",
|
|
140
140
|
ref: setRef,
|
|
141
141
|
children: /* @__PURE__ */ jsxs(DatePickerExtendedContext.Provider, { value: { dropdownOpen, mouseUsedRef, setDropdownOpen }, children: [
|
|
142
142
|
renderTarget(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerExtended.js","sources":["../../../src/components/DatePickerExtended/DatePickerExtended.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from \"react\";\nimport moment from \"moment\";\nimport { FocusTrapProps } from \"focus-trap-react\";\nimport { isKey } from \"../../utils/keyboard\";\nimport { Calendar, ICalendarProps } from \"../Calendar\";\nimport { EDropdownAlignment, IDropdownProps } from \"../Dropdown\";\nimport { DatePickerExtendedContext } from \"./DatePickerExtendedContext\";\nimport { DatePickerExtendedDropdown } from \"./DatePickerExtendedDropdown\";\nimport { EComponentSize } from \"../../enums\";\n\n/**\n * Свойства компонента DatePickerExtended.\n * adaptiveMode исключён из props календаря: адаптивный режим компонент определяет сам по версии дропдауна.\n */\nexport interface IDatePickerExtendedProps\n extends\n Omit<React.HTMLAttributes<HTMLDivElement>, \"onChange\">,\n Pick<IDropdownProps, \"alignment\">,\n Omit<ICalendarProps, \"adaptiveMode\"> {\n /** Ссылка на целевой элемент для Dropdown. По умолчанию — корневой элемент компонента. */\n dropdownTargetRef?: React.RefObject<HTMLElement>;\n /** Рендер-функция целевого элемента. */\n renderTarget: () => React.ReactNode;\n /** Рендер-функция целевого элемента в заголовке DropdownMobile. */\n renderDropdownHeaderTarget: () => React.ReactNode;\n /** Callback на открытие Dropdown. */\n onDropdownOpen?: () => void;\n /** Callback на закрытие Dropdown. */\n onDropdownClose?: () => void;\n /** Свойства FocusTrap. Используется npm-пакет focus-trap-react. */\n focusTrapProps?: FocusTrapProps;\n}\n\n/**\n * База для компонентов выбора даты (DateField, MonthYearField, ChipDatePicker).\n * Рендерит переданный целевым элемент и выпадающий Calendar, хранит состояние открытости\n * дропдауна и отдаёт его целевому элементу через DatePickerExtendedContext.\n */\nexport const DatePickerExtended = React.forwardRef<HTMLDivElement, IDatePickerExtendedProps>((props, ref) => {\n const {\n // Dropdown props\n dropdownTargetRef,\n alignment = EDropdownAlignment.LEFT,\n focusTrapProps,\n // Calendar props — перечислены явно, иначе они попадут в restProps и осядут на корневом div.\n pickType,\n format,\n defaultViewDate,\n onViewChange,\n onPageChange,\n pickedDate,\n limitRange,\n markedDays,\n disabledDays,\n reversedPick,\n dayHtmlAttributes,\n monthHtmlAttributes,\n yearHtmlAttributes,\n prevButtonProps,\n nextButtonProps,\n viewButtonProps,\n yesterdayButtonProps,\n todayButtonProps,\n tomorrowButtonProps,\n onDateChange,\n // Other\n renderTarget,\n renderDropdownHeaderTarget,\n onKeyDown,\n onMouseDown,\n onDropdownOpen,\n onDropdownClose,\n // adaptiveMode исключён из публичного типа, но JS-потребитель и старый скомпилированный код\n // всё ещё могут его передать. Снимаем значение здесь, иначе оно уйдёт на корневой div.\n adaptiveMode,\n ...restProps\n } = props as IDatePickerExtendedProps & Pick<ICalendarProps, \"adaptiveMode\">;\n const [dropdownOpen, setDropdownOpen] = useState(false);\n const containerRef = useRef<HTMLDivElement | null>(null);\n const dropdownRef = useRef<HTMLDivElement>(null);\n /** Флаг взаимодействия пользователя мышью. */\n const mouseUsedRef = useRef(false);\n\n useEffect(() => {\n if (!dropdownOpen) {\n mouseUsedRef.current = false;\n\n return;\n }\n\n /** Обработчик нажатия мыши вне компонента. */\n const handleOutsideMouseDown = (event: MouseEvent) => {\n if (\n !containerRef.current?.contains(event.target as Node) &&\n !dropdownRef.current?.contains(event.target as Node)\n ) {\n setDropdownOpen(false);\n }\n };\n\n document.addEventListener(\"mousedown\", handleOutsideMouseDown);\n\n return () => {\n document.removeEventListener(\"mousedown\", handleOutsideMouseDown);\n };\n }, [dropdownOpen]);\n\n /** Обработчик нажатия клавиши. */\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n const key = event.code || event.keyCode;\n\n if (dropdownOpen && isKey(key, \"ESCAPE\")) {\n setDropdownOpen(false);\n }\n\n onKeyDown?.(event);\n };\n\n /** Обработчик нажатия мыши. */\n const handleMouseDown = (event: React.MouseEvent<HTMLDivElement>) => {\n mouseUsedRef.current = true;\n\n onMouseDown?.(event);\n };\n\n /** Обработчик изменения даты. Выбор даты закрывает дропдаун. */\n const handleDateChange = (date: moment.Moment) => {\n setDropdownOpen(false);\n\n onDateChange(date);\n };\n\n /** Рендер календаря. Адаптивный режим включает мобильная версия дропдауна. */\n const renderCalendar = (adaptive: boolean) => (\n <Calendar\n defaultViewDate={defaultViewDate}\n pickedDate={pickedDate}\n pickType={pickType}\n format={format}\n limitRange={limitRange}\n markedDays={markedDays}\n disabledDays={disabledDays}\n reversedPick={reversedPick}\n adaptiveMode={adaptive}\n onDateChange={handleDateChange}\n onPageChange={onPageChange}\n onViewChange={onViewChange}\n dayHtmlAttributes={dayHtmlAttributes}\n monthHtmlAttributes={monthHtmlAttributes}\n yearHtmlAttributes={yearHtmlAttributes}\n prevButtonProps={prevButtonProps}\n nextButtonProps={nextButtonProps}\n viewButtonProps={viewButtonProps}\n yesterdayButtonProps={yesterdayButtonProps}\n todayButtonProps={todayButtonProps}\n tomorrowButtonProps={tomorrowButtonProps}\n />\n );\n\n const setRef = (node: HTMLDivElement | null) => {\n containerRef.current = node;\n\n if (typeof ref === \"function\") {\n ref(node);\n } else if (ref) {\n ref.current = node;\n }\n };\n\n return (\n <div\n onKeyDown={handleKeyDown}\n onMouseDown={handleMouseDown}\n {...restProps}\n data-tx={process.env.npm_package_version}\n ref={setRef}\n >\n <DatePickerExtendedContext.Provider value={{ dropdownOpen, mouseUsedRef, setDropdownOpen }}>\n {renderTarget()}\n <DatePickerExtendedDropdown\n opened={dropdownOpen}\n size={EComponentSize.MD}\n alignment={alignment}\n targetRef={dropdownTargetRef || containerRef}\n focusTrapProps={focusTrapProps}\n renderCalendar={renderCalendar}\n renderHeaderTarget={renderDropdownHeaderTarget}\n setOpened={setDropdownOpen}\n onOpen={onDropdownOpen}\n onClose={onDropdownClose}\n ref={dropdownRef}\n />\n </DatePickerExtendedContext.Provider>\n </div>\n );\n});\n\nDatePickerExtended.displayName = \"DatePickerExtended\";\n"],"names":["React"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DatePickerExtended.js","sources":["../../../src/components/DatePickerExtended/DatePickerExtended.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from \"react\";\nimport moment from \"moment\";\nimport { FocusTrapProps } from \"focus-trap-react\";\nimport { isKey } from \"../../utils/keyboard\";\nimport { Calendar, ICalendarProps } from \"../Calendar\";\nimport { EDropdownAlignment, IDropdownProps } from \"../Dropdown\";\nimport { DatePickerExtendedContext } from \"./DatePickerExtendedContext\";\nimport { DatePickerExtendedDropdown } from \"./DatePickerExtendedDropdown\";\nimport { EComponentSize } from \"../../enums\";\n\n/**\n * Свойства компонента DatePickerExtended.\n * adaptiveMode исключён из props календаря: адаптивный режим компонент определяет сам по версии дропдауна.\n */\nexport interface IDatePickerExtendedProps\n extends\n Omit<React.HTMLAttributes<HTMLDivElement>, \"onChange\">,\n Pick<IDropdownProps, \"alignment\">,\n Omit<ICalendarProps, \"adaptiveMode\"> {\n /** Ссылка на целевой элемент для Dropdown. По умолчанию — корневой элемент компонента. */\n dropdownTargetRef?: React.RefObject<HTMLElement>;\n /** Рендер-функция целевого элемента. */\n renderTarget: () => React.ReactNode;\n /** Рендер-функция целевого элемента в заголовке DropdownMobile. */\n renderDropdownHeaderTarget: () => React.ReactNode;\n /** Callback на открытие Dropdown. */\n onDropdownOpen?: () => void;\n /** Callback на закрытие Dropdown. */\n onDropdownClose?: () => void;\n /** Свойства FocusTrap. Используется npm-пакет focus-trap-react. */\n focusTrapProps?: FocusTrapProps;\n}\n\n/**\n * База для компонентов выбора даты (DateField, MonthYearField, ChipDatePicker, ChipMonthYearPicker).\n * Рендерит переданный целевым элемент и выпадающий Calendar, хранит состояние открытости\n * дропдауна и отдаёт его целевому элементу через DatePickerExtendedContext.\n */\nexport const DatePickerExtended = React.forwardRef<HTMLDivElement, IDatePickerExtendedProps>((props, ref) => {\n const {\n // Dropdown props\n dropdownTargetRef,\n alignment = EDropdownAlignment.LEFT,\n focusTrapProps,\n // Calendar props — перечислены явно, иначе они попадут в restProps и осядут на корневом div.\n pickType,\n format,\n defaultViewDate,\n onViewChange,\n onPageChange,\n pickedDate,\n limitRange,\n markedDays,\n disabledDays,\n reversedPick,\n dayHtmlAttributes,\n monthHtmlAttributes,\n yearHtmlAttributes,\n prevButtonProps,\n nextButtonProps,\n viewButtonProps,\n yesterdayButtonProps,\n todayButtonProps,\n tomorrowButtonProps,\n onDateChange,\n // Other\n renderTarget,\n renderDropdownHeaderTarget,\n onKeyDown,\n onMouseDown,\n onDropdownOpen,\n onDropdownClose,\n // adaptiveMode исключён из публичного типа, но JS-потребитель и старый скомпилированный код\n // всё ещё могут его передать. Снимаем значение здесь, иначе оно уйдёт на корневой div.\n adaptiveMode,\n ...restProps\n } = props as IDatePickerExtendedProps & Pick<ICalendarProps, \"adaptiveMode\">;\n const [dropdownOpen, setDropdownOpen] = useState(false);\n const containerRef = useRef<HTMLDivElement | null>(null);\n const dropdownRef = useRef<HTMLDivElement>(null);\n /** Флаг взаимодействия пользователя мышью. */\n const mouseUsedRef = useRef(false);\n\n useEffect(() => {\n if (!dropdownOpen) {\n mouseUsedRef.current = false;\n\n return;\n }\n\n /** Обработчик нажатия мыши вне компонента. */\n const handleOutsideMouseDown = (event: MouseEvent) => {\n if (\n !containerRef.current?.contains(event.target as Node) &&\n !dropdownRef.current?.contains(event.target as Node)\n ) {\n setDropdownOpen(false);\n }\n };\n\n document.addEventListener(\"mousedown\", handleOutsideMouseDown);\n\n return () => {\n document.removeEventListener(\"mousedown\", handleOutsideMouseDown);\n };\n }, [dropdownOpen]);\n\n /** Обработчик нажатия клавиши. */\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n const key = event.code || event.keyCode;\n\n if (dropdownOpen && isKey(key, \"ESCAPE\")) {\n setDropdownOpen(false);\n }\n\n onKeyDown?.(event);\n };\n\n /** Обработчик нажатия мыши. */\n const handleMouseDown = (event: React.MouseEvent<HTMLDivElement>) => {\n mouseUsedRef.current = true;\n\n onMouseDown?.(event);\n };\n\n /** Обработчик изменения даты. Выбор даты закрывает дропдаун. */\n const handleDateChange = (date: moment.Moment) => {\n setDropdownOpen(false);\n\n onDateChange(date);\n };\n\n /** Рендер календаря. Адаптивный режим включает мобильная версия дропдауна. */\n const renderCalendar = (adaptive: boolean) => (\n <Calendar\n defaultViewDate={defaultViewDate}\n pickedDate={pickedDate}\n pickType={pickType}\n format={format}\n limitRange={limitRange}\n markedDays={markedDays}\n disabledDays={disabledDays}\n reversedPick={reversedPick}\n adaptiveMode={adaptive}\n onDateChange={handleDateChange}\n onPageChange={onPageChange}\n onViewChange={onViewChange}\n dayHtmlAttributes={dayHtmlAttributes}\n monthHtmlAttributes={monthHtmlAttributes}\n yearHtmlAttributes={yearHtmlAttributes}\n prevButtonProps={prevButtonProps}\n nextButtonProps={nextButtonProps}\n viewButtonProps={viewButtonProps}\n yesterdayButtonProps={yesterdayButtonProps}\n todayButtonProps={todayButtonProps}\n tomorrowButtonProps={tomorrowButtonProps}\n />\n );\n\n const setRef = (node: HTMLDivElement | null) => {\n containerRef.current = node;\n\n if (typeof ref === \"function\") {\n ref(node);\n } else if (ref) {\n ref.current = node;\n }\n };\n\n return (\n <div\n onKeyDown={handleKeyDown}\n onMouseDown={handleMouseDown}\n {...restProps}\n data-tx={process.env.npm_package_version}\n ref={setRef}\n >\n <DatePickerExtendedContext.Provider value={{ dropdownOpen, mouseUsedRef, setDropdownOpen }}>\n {renderTarget()}\n <DatePickerExtendedDropdown\n opened={dropdownOpen}\n size={EComponentSize.MD}\n alignment={alignment}\n targetRef={dropdownTargetRef || containerRef}\n focusTrapProps={focusTrapProps}\n renderCalendar={renderCalendar}\n renderHeaderTarget={renderDropdownHeaderTarget}\n setOpened={setDropdownOpen}\n onOpen={onDropdownOpen}\n onClose={onDropdownClose}\n ref={dropdownRef}\n />\n </DatePickerExtendedContext.Provider>\n </div>\n );\n});\n\nDatePickerExtended.displayName = \"DatePickerExtended\";\n"],"names":["React"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
2
2
|
import React__default, { useContext, useRef } from "react";
|
|
3
|
-
import { j as focusTrapReactExports } from "../../chunks/vendor-
|
|
3
|
+
import { j as focusTrapReactExports } from "../../chunks/vendor-CUIykw0y.js";
|
|
4
4
|
import { Dropdown } from "../Dropdown/Dropdown.js";
|
|
5
5
|
import { DatePickerExtendedContext } from "./DatePickerExtendedContext.js";
|
|
6
6
|
import "../Dropdown/mobile/DropdownMobile.js";
|
|
@@ -14,7 +14,7 @@ import "../Dropdown/mobile/DropdownMobileList.js";
|
|
|
14
14
|
import "../Dropdown/mobile/DropdownMobileListItem.js";
|
|
15
15
|
import "../Loader/LoaderSmall/LoaderSmall.js";
|
|
16
16
|
import "../Loader/LoaderMiddle/LoaderMiddle.js";
|
|
17
|
-
const datePickerExtendedMobileDropdown = "
|
|
17
|
+
const datePickerExtendedMobileDropdown = "datePickerExtendedMobileDropdown__f8459bb1";
|
|
18
18
|
const styles = {
|
|
19
19
|
datePickerExtendedMobileDropdown
|
|
20
20
|
};
|
|
@@ -1,93 +1,80 @@
|
|
|
1
1
|
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import React__default from "react";
|
|
3
3
|
import { CaretleftStrokeSrvIcon20, RangeStrokeSrvIcon16, CaretrightStrokeSrvIcon20 } from "@sberbusiness/icons-next";
|
|
4
|
-
import {
|
|
4
|
+
import { c as clsx } from "../../chunks/vendor-CUIykw0y.js";
|
|
5
5
|
import { EDateRangeShiftUnit } from "./enums.js";
|
|
6
|
-
import {
|
|
7
|
-
const dateRange = "
|
|
8
|
-
const dateRangeButton = "
|
|
9
|
-
const separator = "
|
|
6
|
+
import { shiftDateRange } from "./utils.js";
|
|
7
|
+
const dateRange = "dateRange__aa91e9ae";
|
|
8
|
+
const dateRangeButton = "dateRangeButton__db76128e";
|
|
9
|
+
const separator = "separator__34d60f77";
|
|
10
10
|
const styles = {
|
|
11
11
|
dateRange,
|
|
12
12
|
dateRangeButton,
|
|
13
13
|
separator
|
|
14
14
|
};
|
|
15
|
-
const DateRange = (
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
/* @__PURE__ */ jsx(RangeStrokeSrvIcon16, { className: styles.separator, paletteIndex: 5 }),
|
|
79
|
-
renderPickerTo({
|
|
80
|
-
onChange: handleChangePickerTo,
|
|
81
|
-
value: end
|
|
82
|
-
}),
|
|
83
|
-
!hideNavigation && renderButtonForward({
|
|
84
|
-
children: /* @__PURE__ */ jsx(CaretrightStrokeSrvIcon20, { paletteIndex: 5 }),
|
|
85
|
-
className: clsx(styles.dateRangeButton, { disabled: !(start && end) }),
|
|
86
|
-
disabled: !(start && end),
|
|
87
|
-
onClick: shiftRangeForward
|
|
88
|
-
})
|
|
89
|
-
] });
|
|
90
|
-
};
|
|
15
|
+
const DateRange = React__default.forwardRef(
|
|
16
|
+
({
|
|
17
|
+
children,
|
|
18
|
+
className,
|
|
19
|
+
value,
|
|
20
|
+
onChange,
|
|
21
|
+
shiftAmount = 1,
|
|
22
|
+
shiftUnit = EDateRangeShiftUnit.MONTH,
|
|
23
|
+
hideNavigation,
|
|
24
|
+
renderPickerFrom,
|
|
25
|
+
renderPickerTo,
|
|
26
|
+
renderButtonForward,
|
|
27
|
+
renderButtonBack,
|
|
28
|
+
...rest
|
|
29
|
+
}, ref) => {
|
|
30
|
+
const [start, end] = value;
|
|
31
|
+
const classNames = clsx(styles.dateRange, className);
|
|
32
|
+
const shiftDisabled = !(start && end);
|
|
33
|
+
const handleChangePickerFrom = (date) => {
|
|
34
|
+
if (!date || !end || date <= end) {
|
|
35
|
+
onChange([date, end]);
|
|
36
|
+
} else {
|
|
37
|
+
onChange([date, ""]);
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
const handleChangePickerTo = (date) => {
|
|
41
|
+
if (!date || !start || date >= start) {
|
|
42
|
+
onChange([start, date]);
|
|
43
|
+
} else {
|
|
44
|
+
onChange(["", date]);
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
const shiftRange = (amount) => {
|
|
48
|
+
if (shiftDisabled) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
onChange(shiftDateRange(value, amount, shiftUnit));
|
|
52
|
+
};
|
|
53
|
+
return /* @__PURE__ */ jsxs("div", { className: classNames, ...rest, ref, children: [
|
|
54
|
+
!hideNavigation && renderButtonBack({
|
|
55
|
+
children: /* @__PURE__ */ jsx(CaretleftStrokeSrvIcon20, { paletteIndex: 5 }),
|
|
56
|
+
className: clsx(styles.dateRangeButton, { disabled: shiftDisabled }),
|
|
57
|
+
disabled: shiftDisabled,
|
|
58
|
+
onClick: () => shiftRange(-shiftAmount)
|
|
59
|
+
}),
|
|
60
|
+
renderPickerFrom({
|
|
61
|
+
onChange: handleChangePickerFrom,
|
|
62
|
+
value: start
|
|
63
|
+
}),
|
|
64
|
+
/* @__PURE__ */ jsx(RangeStrokeSrvIcon16, { className: styles.separator, paletteIndex: 5 }),
|
|
65
|
+
renderPickerTo({
|
|
66
|
+
onChange: handleChangePickerTo,
|
|
67
|
+
value: end
|
|
68
|
+
}),
|
|
69
|
+
!hideNavigation && renderButtonForward({
|
|
70
|
+
children: /* @__PURE__ */ jsx(CaretrightStrokeSrvIcon20, { paletteIndex: 5 }),
|
|
71
|
+
className: clsx(styles.dateRangeButton, { disabled: shiftDisabled }),
|
|
72
|
+
disabled: shiftDisabled,
|
|
73
|
+
onClick: () => shiftRange(shiftAmount)
|
|
74
|
+
})
|
|
75
|
+
] });
|
|
76
|
+
}
|
|
77
|
+
);
|
|
91
78
|
DateRange.displayName = "DateRange";
|
|
92
79
|
export {
|
|
93
80
|
DateRange
|