@sberbusiness/triplex-next 1.46.0 → 1.48.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-N4xDl9wn.js → AlertProcessSpoiler-Sz4nOpAx.js} +17 -17
- package/chunks/{AlertProcessSpoiler-N4xDl9wn.js.map → AlertProcessSpoiler-Sz4nOpAx.js.map} +1 -1
- package/chunks/{CalendarViewItem-DPwldi4s.js → CalendarViewItem-8tfDv-A9.js} +21 -21
- package/chunks/{CalendarViewItem-DPwldi4s.js.map → CalendarViewItem-8tfDv-A9.js.map} +1 -1
- package/chunks/Card.module-kIFwMArU.js +32 -0
- package/chunks/Card.module-kIFwMArU.js.map +1 -0
- package/chunks/Carousel.module-D_IzMMFv.js +30 -0
- package/chunks/Carousel.module-D_IzMMFv.js.map +1 -0
- package/chunks/CheckboxTreeExtended.module-C5EvlwgD.js +24 -0
- package/chunks/CheckboxTreeExtended.module-C5EvlwgD.js.map +1 -0
- package/chunks/{Chip-Bi7plvOY.js → Chip-DF_tx9l4.js} +17 -17
- package/chunks/{Chip-Bi7plvOY.js.map → Chip-DF_tx9l4.js.map} +1 -1
- package/chunks/Confirm.module-DoO5fE2O.js +24 -0
- package/chunks/Confirm.module-DoO5fE2O.js.map +1 -0
- package/chunks/{DropdownListItem-BaP5AaMK.js → DropdownListItem-cXbzcYKR.js} +11 -11
- package/chunks/{DropdownListItem-BaP5AaMK.js.map → DropdownListItem-cXbzcYKR.js.map} +1 -1
- package/chunks/DropdownMobile.module-TkQoE9iE.js +40 -0
- package/chunks/DropdownMobile.module-TkQoE9iE.js.map +1 -0
- package/chunks/Footer.module-C4IbSGY2.js +12 -0
- package/chunks/Footer.module-C4IbSGY2.js.map +1 -0
- package/chunks/{HeaderLayoutSidebar.module-CgtR6oF4.js → HeaderLayoutSidebar.module-lDoPFfsH.js} +4 -4
- package/chunks/HeaderLayoutSidebar.module-lDoPFfsH.js.map +1 -0
- package/chunks/HeaderTabs.module-VdomyB_Y.js +12 -0
- package/chunks/HeaderTabs.module-VdomyB_Y.js.map +1 -0
- package/chunks/{HeaderTitle.module-CABfTvCf.js → HeaderTitle.module-C9E0q3CQ.js} +4 -4
- package/chunks/HeaderTitle.module-C9E0q3CQ.js.map +1 -0
- package/chunks/ImageGalleryExtendedMain.module-Cagrj_Nc.js +28 -0
- package/chunks/ImageGalleryExtendedMain.module-Cagrj_Nc.js.map +1 -0
- package/chunks/{ImageGalleryExtendedThumb-BFa7GPtt.js → ImageGalleryExtendedThumb-CDVXTjWG.js} +6 -6
- package/chunks/{ImageGalleryExtendedThumb-BFa7GPtt.js.map → ImageGalleryExtendedThumb-CDVXTjWG.js.map} +1 -1
- package/chunks/IslandAccordion.module-Dws2bgrw.js +44 -0
- package/chunks/IslandAccordion.module-Dws2bgrw.js.map +1 -0
- package/chunks/IslandWidgetFooter.module-CYjuqDDS.js +18 -0
- package/chunks/IslandWidgetFooter.module-CYjuqDDS.js.map +1 -0
- package/chunks/IslandWidgetHeader.module-B-ANb6Z4.js +28 -0
- package/chunks/IslandWidgetHeader.module-B-ANb6Z4.js.map +1 -0
- package/chunks/{LightBoxContent-v_PFgeok.js → LightBoxContent-DVF6KT49.js} +17 -17
- package/chunks/{LightBoxContent-v_PFgeok.js.map → LightBoxContent-DVF6KT49.js.map} +1 -1
- package/chunks/LightBoxControls.module-B5LZnYV0.js +26 -0
- package/chunks/LightBoxControls.module-B5LZnYV0.js.map +1 -0
- package/chunks/{LightBoxSideOverlayClose.module-0Tjk9-qL.js → LightBoxSideOverlayClose.module-B0gINWmN.js} +4 -4
- package/chunks/LightBoxSideOverlayClose.module-B0gINWmN.js.map +1 -0
- package/chunks/{ListItemControlsButton-DoNJ-Yfe.js → ListItemControlsButton-DkpPeYFO.js} +10 -10
- package/chunks/{ListItemControlsButton-DoNJ-Yfe.js.map → ListItemControlsButton-DkpPeYFO.js.map} +1 -1
- package/chunks/ListItemTail.module-C6aqPWcB.js +18 -0
- package/chunks/ListItemTail.module-C6aqPWcB.js.map +1 -0
- package/chunks/ListMasterFooter.module-zjZkQ-qB.js +14 -0
- package/chunks/ListMasterFooter.module-zjZkQ-qB.js.map +1 -0
- package/chunks/ModalWindow.module-DdNfkkzZ.js +28 -0
- package/chunks/ModalWindow.module-DdNfkkzZ.js.map +1 -0
- package/chunks/Notification.module-DCYm_eyJ.js +34 -0
- package/chunks/Notification.module-DCYm_eyJ.js.map +1 -0
- package/chunks/Overlay.module-HJMjZts7.js +30 -0
- package/chunks/Overlay.module-HJMjZts7.js.map +1 -0
- package/chunks/Page.module-DEYdpdTe.js +17 -0
- package/chunks/Page.module-DEYdpdTe.js.map +1 -0
- package/chunks/SMSField.module-BxScHd0G.js +30 -0
- package/chunks/SMSField.module-BxScHd0G.js.map +1 -0
- package/chunks/SliderExtendedMarks.module-qzI-tGBX.js +24 -0
- package/chunks/SliderExtendedMarks.module-qzI-tGBX.js.map +1 -0
- package/chunks/{SliderExtendedRail-BI8zsX61.js → SliderExtendedRail-Co04cta-.js} +7 -7
- package/chunks/SliderExtendedRail-Co04cta-.js.map +1 -0
- package/chunks/StatusTracker.module-L20Tw6M8.js +44 -0
- package/chunks/StatusTracker.module-L20Tw6M8.js.map +1 -0
- package/chunks/{StepperStepArrowBorder-Q22ED8Yo.js → StepperStepArrowBorder-B5HGnDby.js} +16 -16
- package/chunks/{StepperStepArrowBorder-Q22ED8Yo.js.map → StepperStepArrowBorder-B5HGnDby.js.map} +1 -1
- package/chunks/{SuggestFieldMobileDropdownHint-3ySBEFFO.js → SuggestFieldMobileDropdownHint-BeT6Ch46.js} +3 -3
- package/chunks/SuggestFieldMobileDropdownHint-BeT6Ch46.js.map +1 -0
- package/chunks/TableFooter.module-BivJuNYR.js +22 -0
- package/chunks/TableFooter.module-BivJuNYR.js.map +1 -0
- package/chunks/TabsExtended.module-Bv7Xqx7g.js +26 -0
- package/chunks/TabsExtended.module-Bv7Xqx7g.js.map +1 -0
- package/chunks/TabsLine.module-v6dP7lY_.js +36 -0
- package/chunks/TabsLine.module-v6dP7lY_.js.map +1 -0
- package/chunks/TooltipDesktop.module-Bg6ol2mk.js +32 -0
- package/chunks/TooltipDesktop.module-Bg6ol2mk.js.map +1 -0
- package/chunks/TreeView.module-BeU0CUun.js +12 -0
- package/chunks/TreeView.module-BeU0CUun.js.map +1 -0
- package/chunks/UploadZoneInput-85sqlQnz.js +53 -0
- package/chunks/UploadZoneInput-85sqlQnz.js.map +1 -0
- package/chunks/{constants-C-865Unx.js → constants-Cdrw5rn3.js} +27 -27
- package/chunks/{constants-C-865Unx.js.map → constants-Cdrw5rn3.js.map} +1 -1
- package/chunks/{utils-CRayPY0c.js → utils-BtxCEP1y.js} +6 -6
- package/chunks/{utils-CRayPY0c.js.map → utils-BtxCEP1y.js.map} +1 -1
- package/chunks/{utils-BS0p239Z.js → utils-DTHPgHei.js} +27 -27
- package/chunks/{utils-BS0p239Z.js.map → utils-DTHPgHei.js.map} +1 -1
- package/chunks/{utils-CUP-yZoP.js → utils-Dfb5lzLn.js} +11 -11
- package/chunks/{utils-CUP-yZoP.js.map → utils-Dfb5lzLn.js.map} +1 -1
- package/chunks/{utils-D-axOAbx.js → utils-Xoc7ar3d.js} +10 -10
- package/chunks/{utils-D-axOAbx.js.map → utils-Xoc7ar3d.js.map} +1 -1
- package/chunks/{vendor-DqjKLGwf.js → vendor-CUIykw0y.js} +11 -5518
- 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 +17 -2
- package/components/Calendar/components/CalendarControls.js.map +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 +6 -6
- 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/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 +8 -4
- package/components/Chip/ChipMonthYearPicker/ChipMonthYearPicker.js.map +1 -1
- package/components/Chip/ChipMonthYearPicker/ChipMonthYearPickerTarget.js +1 -1
- package/components/Chip/ChipMultiselect.js +2 -2
- package/components/Chip/ChipOptions.js +2 -2
- package/components/Chip/ChipSelect/ChipSelect.js +2 -2
- package/components/Chip/ChipSelect/ChipSelectTarget.js +1 -1
- package/components/Chip/ChipSort.js +2 -2
- package/components/Chip/ChipSuggest/ChipSuggest.js +3 -3
- package/components/Chip/ChipSuggest/ChipSuggest.js.map +1 -1
- package/components/Chip/ChipSuggest/ChipSuggestDropdown.js +3 -3
- package/components/Chip/ChipSuggest/ChipSuggestDropdown.js.map +1 -1
- package/components/Chip/ChipSuggest/ChipSuggestTarget.js +1 -1
- package/components/Chip/ChipSuggest/desktop/ChipSuggestDesktopDropdownField.js +1 -1
- package/components/Chip/index.js +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/DateFieldTarget.js +5 -5
- package/components/DatePickerExtended/DatePickerExtended.js +2 -2
- 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 +18 -13
- package/components/FormField/FormField.js.map +1 -1
- 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 +9 -9
- 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 +2 -2
- 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/components/IslandAccordionContent.js +1 -1
- package/components/IslandAccordion/components/IslandAccordionFooter.js +2 -2
- package/components/IslandAccordion/components/IslandAccordionItem.js +3 -3
- package/components/IslandWidget/IslandWidget.js +4 -4
- package/components/IslandWidget/components/IslandWidgetBody.js +5 -5
- package/components/IslandWidget/components/IslandWidgetExtraFooter.js +2 -2
- package/components/IslandWidget/components/IslandWidgetFooter.js +2 -2
- package/components/IslandWidget/components/IslandWidgetFooterContent.js +2 -2
- package/components/IslandWidget/components/IslandWidgetFooterControls.js +2 -2
- package/components/IslandWidget/components/IslandWidgetHeader.js +2 -2
- package/components/IslandWidget/components/IslandWidgetHeaderContent.js +1 -1
- package/components/IslandWidget/components/IslandWidgetHeaderControls.js +2 -2
- package/components/IslandWidget/components/IslandWidgetHeaderDescription.js +2 -2
- package/components/IslandWidget/components/IslandWidgetHeaderTitle.js +2 -2
- package/components/IslandWidget/components/IslandWidgetWrapper.js +2 -2
- 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/MonthYearField.js +6 -4
- package/components/MonthYearField/MonthYearField.js.map +1 -1
- 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/StatusTracker.js.map +1 -1
- package/components/StatusTracker/components/StatusTrackerAlert.js +7 -6
- package/components/StatusTracker/components/StatusTrackerAlert.js.map +1 -1
- package/components/StatusTracker/components/StatusTrackerBody.js +2 -2
- package/components/StatusTracker/components/StatusTrackerBody.js.map +1 -1
- package/components/StatusTracker/components/StatusTrackerButton.js +8 -3
- package/components/StatusTracker/components/StatusTrackerButton.js.map +1 -1
- package/components/StatusTracker/components/StatusTrackerDescription.js +19 -15
- package/components/StatusTracker/components/StatusTrackerDescription.js.map +1 -1
- package/components/StatusTracker/components/StatusTrackerFooter.js +2 -2
- package/components/StatusTracker/components/StatusTrackerFooter.js.map +1 -1
- package/components/StatusTracker/components/StatusTrackerHeader.js +2 -2
- package/components/StatusTracker/components/StatusTrackerHeader.js.map +1 -1
- package/components/StatusTracker/components/StatusTrackerMedia.js +7 -6
- package/components/StatusTracker/components/StatusTrackerMedia.js.map +1 -1
- package/components/StatusTracker/components/StatusTrackerStatus.js +7 -6
- package/components/StatusTracker/components/StatusTrackerStatus.js.map +1 -1
- package/components/StatusTracker/components/StatusTrackerStatusGroup.js +5 -3
- package/components/StatusTracker/components/StatusTrackerStatusGroup.js.map +1 -1
- package/components/StatusTracker/components/StatusTrackerSum.js +7 -5
- package/components/StatusTracker/components/StatusTrackerSum.js.map +1 -1
- package/components/StatusTracker/components/StatusTrackerTitle.js +7 -5
- package/components/StatusTracker/components/StatusTrackerTitle.js.map +1 -1
- package/components/Step/Step.js +11 -11
- package/components/Stepper/Stepper.js +93 -100
- package/components/Stepper/Stepper.js.map +1 -1
- package/components/Stepper/StepperExtended.js +41 -20
- package/components/Stepper/StepperExtended.js.map +1 -1
- package/components/Stepper/StepperExtendedContext.js +1 -1
- package/components/Stepper/StepperExtendedContext.js.map +1 -1
- 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 +18 -28
- package/components/SuggestField/desktop/SuggestFieldDesktop.js.map +1 -1
- package/components/SuggestField/desktop/SuggestFieldDesktopDropdown.js +4 -4
- package/components/SuggestField/desktop/SuggestFieldDesktopDropdown.js.map +1 -1
- package/components/SuggestField/index.js +1 -1
- package/components/SuggestField/mobile/SuggestFieldMobile.js +3 -3
- package/components/SuggestField/mobile/SuggestFieldMobile.js.map +1 -1
- package/components/SuggestField/mobile/SuggestFieldMobileDropdown.js +3 -4
- package/components/SuggestField/mobile/SuggestFieldMobileDropdown.js.map +1 -1
- 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 +114 -96
- package/components/Tabs/Tabs.js.map +1 -1
- 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/TagColor/TagColor.js.map +1 -1
- package/components/TagColor/enums.js.map +1 -1
- package/components/TagGroup/TagGroup.js +8 -7
- package/components/TagGroup/TagGroup.js.map +1 -1
- 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 +44 -68
- package/components/UploadZone/UploadZone.js.map +1 -1
- package/components/UploadZone/UploadZoneContext.js +1 -1
- package/components/UploadZone/UploadZoneContext.js.map +1 -1
- package/components/UploadZone/components/UploadZoneInput.js +3 -2
- package/components/UploadZone/components/UploadZoneInput.js.map +1 -1
- package/components/UploadZone/index.js +1 -1
- package/components/WindowResizeListener/WindowResizeListener.js +1 -1
- package/components/index.js +6 -6
- package/{components/SliderExtended/utils.js → helpers/setForwardedRef.js} +2 -2
- package/helpers/setForwardedRef.js.map +1 -0
- package/index.d.ts +400 -211
- package/index.js +6 -6
- package/package.json +1 -1
- package/styles/triplex-next.css +3057 -3052
- package/utils/amountUtils.js +1 -1
- package/chunks/Card.module-DRLlpl4W.js +0 -32
- package/chunks/Card.module-DRLlpl4W.js.map +0 -1
- package/chunks/Carousel.module-DdMfAe9T.js +0 -34
- package/chunks/Carousel.module-DdMfAe9T.js.map +0 -1
- package/chunks/CheckboxTreeExtended.module-BCujNMOr.js +0 -24
- package/chunks/CheckboxTreeExtended.module-BCujNMOr.js.map +0 -1
- package/chunks/Confirm.module-D5ujpaan.js +0 -24
- package/chunks/Confirm.module-D5ujpaan.js.map +0 -1
- package/chunks/DropdownMobile.module-B-PviyH6.js +0 -40
- package/chunks/DropdownMobile.module-B-PviyH6.js.map +0 -1
- package/chunks/Footer.module-ib3e66nH.js +0 -12
- package/chunks/Footer.module-ib3e66nH.js.map +0 -1
- package/chunks/HeaderLayoutSidebar.module-CgtR6oF4.js.map +0 -1
- package/chunks/HeaderTabs.module-CYsRVlb9.js +0 -12
- package/chunks/HeaderTabs.module-CYsRVlb9.js.map +0 -1
- package/chunks/HeaderTitle.module-CABfTvCf.js.map +0 -1
- package/chunks/ImageGalleryExtendedMain.module-CZ9ZU6qi.js +0 -28
- package/chunks/ImageGalleryExtendedMain.module-CZ9ZU6qi.js.map +0 -1
- package/chunks/IslandAccordion.module-U3t-4vJq.js +0 -44
- package/chunks/IslandAccordion.module-U3t-4vJq.js.map +0 -1
- package/chunks/IslandWidgetFooter.module--k_POM4A.js +0 -18
- package/chunks/IslandWidgetFooter.module--k_POM4A.js.map +0 -1
- package/chunks/IslandWidgetHeader.module-D6j13jwR.js +0 -28
- package/chunks/IslandWidgetHeader.module-D6j13jwR.js.map +0 -1
- package/chunks/LightBoxControls.module-DR8ULE0a.js +0 -26
- package/chunks/LightBoxControls.module-DR8ULE0a.js.map +0 -1
- package/chunks/LightBoxSideOverlayClose.module-0Tjk9-qL.js.map +0 -1
- package/chunks/ListItemTail.module-Bq08aKyf.js +0 -18
- package/chunks/ListItemTail.module-Bq08aKyf.js.map +0 -1
- package/chunks/ListMasterFooter.module-9x6ntzLF.js +0 -14
- package/chunks/ListMasterFooter.module-9x6ntzLF.js.map +0 -1
- package/chunks/ModalWindow.module-DVlh8Hck.js +0 -28
- package/chunks/ModalWindow.module-DVlh8Hck.js.map +0 -1
- package/chunks/Notification.module-CAO_e6_u.js +0 -34
- package/chunks/Notification.module-CAO_e6_u.js.map +0 -1
- package/chunks/Overlay.module-BobfrUap.js +0 -30
- package/chunks/Overlay.module-BobfrUap.js.map +0 -1
- package/chunks/Page.module-D5IIaIaU.js +0 -15
- package/chunks/Page.module-D5IIaIaU.js.map +0 -1
- package/chunks/SMSField.module-7wYs4QAZ.js +0 -30
- package/chunks/SMSField.module-7wYs4QAZ.js.map +0 -1
- package/chunks/SliderExtendedMarks.module-m4ckCTSy.js +0 -24
- package/chunks/SliderExtendedMarks.module-m4ckCTSy.js.map +0 -1
- package/chunks/SliderExtendedRail-BI8zsX61.js.map +0 -1
- package/chunks/StatusTracker.module-Duk0PPcv.js +0 -44
- package/chunks/StatusTracker.module-Duk0PPcv.js.map +0 -1
- package/chunks/SuggestFieldMobileDropdownHint-3ySBEFFO.js.map +0 -1
- package/chunks/TableFooter.module-oZBepBwa.js +0 -22
- package/chunks/TableFooter.module-oZBepBwa.js.map +0 -1
- package/chunks/TabsExtended.module-D5QonHS5.js +0 -26
- package/chunks/TabsExtended.module-D5QonHS5.js.map +0 -1
- package/chunks/TabsLine.module-RwtPmU40.js +0 -36
- package/chunks/TabsLine.module-RwtPmU40.js.map +0 -1
- package/chunks/TooltipDesktop.module-hAZYb_oS.js +0 -32
- package/chunks/TooltipDesktop.module-hAZYb_oS.js.map +0 -1
- package/chunks/TreeView.module-DZyeCF-w.js +0 -12
- package/chunks/TreeView.module-DZyeCF-w.js.map +0 -1
- package/chunks/UploadZoneInput-BqBNrWzw.js +0 -40
- package/chunks/UploadZoneInput-BqBNrWzw.js.map +0 -1
- package/chunks/vendor-DqjKLGwf.js.map +0 -1
- package/components/Chip/ChipSuggest/utils.js +0 -11
- package/components/Chip/ChipSuggest/utils.js.map +0 -1
- package/components/SliderExtended/utils.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardStatic.js","sources":["../../../src/components/Card/CardStatic.tsx"],"sourcesContent":["import React from \"react\";\nimport {
|
|
1
|
+
{"version":3,"file":"CardStatic.js","sources":["../../../src/components/Card/CardStatic.tsx"],"sourcesContent":["import React from \"react\";\nimport clsx from \"clsx\";\nimport { CardContent } from \"@sberbusiness/triplex-next/components/Card/components/CardContent/CardContent\";\nimport { CardMedia } from \"@sberbusiness/triplex-next/components/Card/components/CardMedia\";\nimport { ECardRoundingSize, ECardTheme } from \"@sberbusiness/triplex-next/components/Card/enums\";\nimport { ICardProps } from \"@sberbusiness/triplex-next/components/Card/types\";\nimport {\n mapCardRoundingSizeToCssClass,\n mapCardThemeToCssClass,\n} from \"@sberbusiness/triplex-next/components/Card/utils\";\nimport cardStyles from \"./styles/Card.module.less\";\n\n/** Внутренние составляющие статичной карточки. */\ninterface ICardStaticComposition {\n /** Контент карточки. */\n Content: typeof CardContent;\n /** Медийный элемент карточки. */\n Media: typeof CardMedia;\n}\n\nconst CardStaticRoot = React.forwardRef<HTMLDivElement, ICardProps>(\n ({ children, className, roundingSize = ECardRoundingSize.MD, theme = ECardTheme.GENERAL, ...rest }, ref) => (\n <div\n className={clsx(\n cardStyles.card,\n mapCardThemeToCssClass[theme],\n mapCardRoundingSizeToCssClass[roundingSize],\n className,\n )}\n {...rest}\n ref={ref}\n data-tx={process.env.npm_package_version}\n >\n {children}\n </div>\n ),\n);\n\nCardStaticRoot.displayName = \"CardStatic\";\n\n/**\n * Компонент \"Статичная карточка\".\n * Информационный контейнер без состояния выбора и клавиатурной активации.\n * Содержимое собирается из составных частей CardStatic.Media и CardStatic.Content.\n */\nexport const CardStatic = Object.assign(CardStaticRoot, {\n Content: CardContent,\n Media: CardMedia,\n} satisfies ICardStaticComposition);\n"],"names":["React"],"mappings":";;;;;;;;AAoBA,MAAM,iBAAiBA,eAAM;AAAA,EACzB,CAAC,EAAE,UAAU,WAAW,eAAe,kBAAkB,IAAI,QAAQ,WAAW,SAAS,GAAG,KAAA,GAAQ,QAChG;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,WAAW;AAAA,QACP,WAAW;AAAA,QACX,uBAAuB,KAAK;AAAA,QAC5B,8BAA8B,YAAY;AAAA,QAC1C;AAAA,MAAA;AAAA,MAEH,GAAG;AAAA,MACJ;AAAA,MACA,WAAS;AAAA,MAER;AAAA,IAAA;AAAA,EAAA;AAGb;AAEA,eAAe,cAAc;AAOtB,MAAM,aAAa,OAAO,OAAO,gBAAgB;AAAA,EACpD,SAAS;AAAA,EACT,OAAO;AACX,CAAkC;"}
|
|
@@ -3,8 +3,8 @@ import { CardContentBody } from "./components/CardContentBody.js";
|
|
|
3
3
|
import { CardContentHeader } from "./components/CardContentHeader.js";
|
|
4
4
|
import { CardContentFooter } from "./components/CardContentFooter.js";
|
|
5
5
|
import { ECardContentPaddingSize } from "../../enums.js";
|
|
6
|
-
import { c as clsx } from "../../../../chunks/vendor-
|
|
7
|
-
import { c as cardStyles } from "../../../../chunks/Card.module-
|
|
6
|
+
import { c as clsx } from "../../../../chunks/vendor-CUIykw0y.js";
|
|
7
|
+
import { c as cardStyles } from "../../../../chunks/Card.module-kIFwMArU.js";
|
|
8
8
|
const mapCardContentPaddingSizeToCssClass = {
|
|
9
9
|
[ECardContentPaddingSize.MD]: cardStyles.paddingMD,
|
|
10
10
|
[ECardContentPaddingSize.SM]: cardStyles.paddingSM
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { c as clsx } from "../../../../../chunks/vendor-
|
|
3
|
-
import { c as cardStyles } from "../../../../../chunks/Card.module-
|
|
2
|
+
import { c as clsx } from "../../../../../chunks/vendor-CUIykw0y.js";
|
|
3
|
+
import { c as cardStyles } from "../../../../../chunks/Card.module-kIFwMArU.js";
|
|
4
4
|
const CardContentBody = ({ children, className, ...rest }) => /* @__PURE__ */ jsx("div", { className: clsx(cardStyles.cardContentBody, className), ...rest, children });
|
|
5
5
|
CardContentBody.displayName = "CardContentBody";
|
|
6
6
|
export {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { c as clsx } from "../../../../../chunks/vendor-
|
|
3
|
-
import { c as cardStyles } from "../../../../../chunks/Card.module-
|
|
2
|
+
import { c as clsx } from "../../../../../chunks/vendor-CUIykw0y.js";
|
|
3
|
+
import { c as cardStyles } from "../../../../../chunks/Card.module-kIFwMArU.js";
|
|
4
4
|
const CardContentFooter = ({ children, className, ...rest }) => /* @__PURE__ */ jsx("div", { className: clsx(cardStyles.cardContentFooter, className), ...rest, children });
|
|
5
5
|
CardContentFooter.displayName = "CardContentFooter";
|
|
6
6
|
export {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { c as clsx } from "../../../../../chunks/vendor-
|
|
3
|
-
import { c as cardStyles } from "../../../../../chunks/Card.module-
|
|
2
|
+
import { c as clsx } from "../../../../../chunks/vendor-CUIykw0y.js";
|
|
3
|
+
import { c as cardStyles } from "../../../../../chunks/Card.module-kIFwMArU.js";
|
|
4
4
|
const CardContentHeader = ({ children, className, ...rest }) => /* @__PURE__ */ jsx("div", { className: clsx(cardStyles.cardContentHeader, className), ...rest, children });
|
|
5
5
|
CardContentHeader.displayName = "CardContentHeader";
|
|
6
6
|
export {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { c as clsx } from "../../../chunks/vendor-
|
|
3
|
-
import { c as cardStyles } from "../../../chunks/Card.module-
|
|
2
|
+
import { c as clsx } from "../../../chunks/vendor-CUIykw0y.js";
|
|
3
|
+
import { c as cardStyles } from "../../../chunks/Card.module-kIFwMArU.js";
|
|
4
4
|
const CardMedia = ({ children, className, ...attributes }) => {
|
|
5
5
|
const classNames = clsx(cardStyles.cardMedia, className);
|
|
6
6
|
return /* @__PURE__ */ jsx("div", { className: classNames, ...attributes, children });
|
package/components/Card/utils.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ECardRoundingSize, ECardTheme } from "./enums.js";
|
|
2
|
-
import { c as cardStyles } from "../../chunks/Card.module-
|
|
2
|
+
import { c as cardStyles } from "../../chunks/Card.module-kIFwMArU.js";
|
|
3
3
|
const mapCardRoundingSizeToCssClass = {
|
|
4
4
|
[ECardRoundingSize.LG]: cardStyles.roundingLG,
|
|
5
5
|
[ECardRoundingSize.MD]: cardStyles.roundingMD,
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import React__default, { useState, useMemo, useRef, useCallback, useLayoutEffect, useEffect } from "react";
|
|
3
|
-
import { c as clsx } from "../../chunks/vendor-
|
|
3
|
+
import { c as clsx } from "../../chunks/vendor-CUIykw0y.js";
|
|
4
4
|
import { CarouselContext } from "./CarouselContext.js";
|
|
5
5
|
import { ECarouselOrientation, ECarouselScrollMode } from "./enums.js";
|
|
6
6
|
import { resolveViewportPadding, useLatestRef } from "./utils.js";
|
|
7
|
-
import { s as styles } from "../../chunks/Carousel.module-
|
|
7
|
+
import { s as styles } from "../../chunks/Carousel.module-D_IzMMFv.js";
|
|
8
8
|
import { CarouselViewport } from "./CarouselViewport.js";
|
|
9
9
|
import { CarouselTrack } from "./CarouselTrack.js";
|
|
10
10
|
import { CarouselItem } from "./CarouselItem.js";
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import React__default, { useContext, useCallback } from "react";
|
|
3
|
-
import { c as clsx } from "../../chunks/vendor-
|
|
3
|
+
import { c as clsx } from "../../chunks/vendor-CUIykw0y.js";
|
|
4
4
|
import { CarouselContext } from "./CarouselContext.js";
|
|
5
5
|
import { useMatchMedia } from "../MediaWidth/useMatchMedia.js";
|
|
6
6
|
import { ButtonIcon } from "../Button/ButtonIcon.js";
|
|
7
7
|
import { CaretupStrokeSrvIcon20, CaretleftStrokeSrvIcon20, CaretdownStrokeSrvIcon20, CaretrightStrokeSrvIcon20 } from "@sberbusiness/icons-next";
|
|
8
8
|
import { ECarouselOrientation } from "./enums.js";
|
|
9
|
-
import { s as styles } from "../../chunks/Carousel.module-
|
|
9
|
+
import { s as styles } from "../../chunks/Carousel.module-D_IzMMFv.js";
|
|
10
10
|
const ORIENTATION_TO_PREV_ICON_MAP = {
|
|
11
11
|
[ECarouselOrientation.HORIZONTAL]: /* @__PURE__ */ jsx(CaretleftStrokeSrvIcon20, { paletteIndex: 7 }),
|
|
12
12
|
[ECarouselOrientation.VERTICAL]: /* @__PURE__ */ jsx(CaretupStrokeSrvIcon20, { paletteIndex: 7 })
|
|
@@ -1,17 +1,22 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import React__default, { useContext, useRef, useCallback, useEffect } from "react";
|
|
3
|
-
import { c as clsx } from "../../chunks/vendor-
|
|
3
|
+
import { c as clsx } from "../../chunks/vendor-CUIykw0y.js";
|
|
4
4
|
import { CarouselContext } from "./CarouselContext.js";
|
|
5
5
|
import { mergeRefs, useLatestRef } from "./utils.js";
|
|
6
6
|
import { ECarouselOrientation, ECarouselScrollMode } from "./enums.js";
|
|
7
7
|
import { ButtonBase } from "../Button/ButtonBase.js";
|
|
8
|
-
import { s as styles } from "../../chunks/Carousel.module-
|
|
8
|
+
import { s as styles } from "../../chunks/Carousel.module-D_IzMMFv.js";
|
|
9
9
|
const ORIENTATION_TO_NAVIGATION_KEYS = {
|
|
10
10
|
[ECarouselOrientation.HORIZONTAL]: ["ArrowRight", "ArrowLeft"],
|
|
11
11
|
[ECarouselOrientation.VERTICAL]: ["ArrowDown", "ArrowUp"]
|
|
12
12
|
};
|
|
13
|
+
const WINDOW_SIZE = 5;
|
|
14
|
+
const GAP = 8;
|
|
15
|
+
const SIZE_NORMAL = 16;
|
|
16
|
+
const SIZE_ACTIVE = 24;
|
|
17
|
+
const SIZE_EDGE = 8;
|
|
13
18
|
const CarouselIndicators = React__default.forwardRef(
|
|
14
|
-
({ className, onKeyDown, indicatorProps,
|
|
19
|
+
({ className, onKeyDown, indicatorProps, ...restProps }, ref) => {
|
|
15
20
|
const { currentIndex, orientation, scrollMode, activeIndices, goToSlide, orientationRef, currentIndexRef } = useContext(CarouselContext);
|
|
16
21
|
const containerRef = useRef(null);
|
|
17
22
|
const combinedRef = mergeRefs(ref, containerRef);
|
|
@@ -109,14 +114,54 @@ const CarouselIndicators = React__default.forwardRef(
|
|
|
109
114
|
});
|
|
110
115
|
return () => cancelAnimationFrame(rafId);
|
|
111
116
|
}, [currentIndex]);
|
|
112
|
-
if (scrollMode === ECarouselScrollMode.ITEM || totalPages < 1)
|
|
117
|
+
if (scrollMode === ECarouselScrollMode.ITEM || totalPages < 1) {
|
|
118
|
+
return null;
|
|
119
|
+
}
|
|
113
120
|
const currentIndexInArray = activeIndices.indexOf(currentIndex);
|
|
114
121
|
let startWindowIndex = 0;
|
|
115
|
-
if (totalPages >
|
|
116
|
-
startWindowIndex = currentIndexInArray - Math.floor(
|
|
117
|
-
startWindowIndex = Math.max(0, Math.min(startWindowIndex, totalPages -
|
|
122
|
+
if (totalPages > WINDOW_SIZE) {
|
|
123
|
+
startWindowIndex = currentIndexInArray - Math.floor(WINDOW_SIZE / 2);
|
|
124
|
+
startWindowIndex = Math.max(0, Math.min(startWindowIndex, totalPages - WINDOW_SIZE));
|
|
118
125
|
}
|
|
119
|
-
const endWindowIndex = startWindowIndex +
|
|
126
|
+
const endWindowIndex = startWindowIndex + WINDOW_SIZE;
|
|
127
|
+
const startWindowOffset = startWindowIndex * (SIZE_EDGE + GAP);
|
|
128
|
+
let currentOffset = 0;
|
|
129
|
+
const indicatorsData = activeIndices.map((slideIndex, index) => {
|
|
130
|
+
const page = index + 1;
|
|
131
|
+
const hidden = index < startWindowIndex || index >= endWindowIndex;
|
|
132
|
+
const selected = currentIndex === slideIndex;
|
|
133
|
+
const startEdge = index === startWindowIndex && startWindowIndex > 0;
|
|
134
|
+
const endEdge = index === endWindowIndex - 1 && endWindowIndex < totalPages;
|
|
135
|
+
let size = SIZE_NORMAL;
|
|
136
|
+
let scale = SIZE_NORMAL / SIZE_ACTIVE;
|
|
137
|
+
if (selected) {
|
|
138
|
+
size = SIZE_ACTIVE;
|
|
139
|
+
scale = 1;
|
|
140
|
+
} else if (startEdge || endEdge || hidden) {
|
|
141
|
+
size = SIZE_EDGE;
|
|
142
|
+
scale = SIZE_EDGE / SIZE_ACTIVE;
|
|
143
|
+
}
|
|
144
|
+
const rawOffset = currentOffset;
|
|
145
|
+
currentOffset += size + GAP;
|
|
146
|
+
const translate = rawOffset - startWindowOffset;
|
|
147
|
+
return {
|
|
148
|
+
slideIndex,
|
|
149
|
+
index,
|
|
150
|
+
page,
|
|
151
|
+
selected,
|
|
152
|
+
hidden,
|
|
153
|
+
size,
|
|
154
|
+
scale,
|
|
155
|
+
translate
|
|
156
|
+
};
|
|
157
|
+
});
|
|
158
|
+
const lastVisibleIndex = Math.min(endWindowIndex - 1, totalPages - 1);
|
|
159
|
+
const lastVisibleItem = indicatorsData[lastVisibleIndex];
|
|
160
|
+
const containerSize = lastVisibleItem ? lastVisibleItem.translate + lastVisibleItem.size : 0;
|
|
161
|
+
const style = {
|
|
162
|
+
...restProps.style,
|
|
163
|
+
"--triplex-next-runtime-carousel-indicators-size": `${containerSize}px`
|
|
164
|
+
};
|
|
120
165
|
return /* @__PURE__ */ jsx(
|
|
121
166
|
"div",
|
|
122
167
|
{
|
|
@@ -126,41 +171,31 @@ const CarouselIndicators = React__default.forwardRef(
|
|
|
126
171
|
"aria-orientation": orientation,
|
|
127
172
|
onKeyDown: handleKeyDown,
|
|
128
173
|
ref: combinedRef,
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
const selected = currentIndex === slideIndex;
|
|
133
|
-
const page = index + 1;
|
|
134
|
-
const startEdge = index === startWindowIndex && startWindowIndex > 0;
|
|
135
|
-
const endEdge = index === endWindowIndex - 1 && endWindowIndex < totalPages;
|
|
174
|
+
style,
|
|
175
|
+
children: indicatorsData.map((item) => {
|
|
176
|
+
const { slideIndex, index, page, selected, hidden, scale, translate } = item;
|
|
136
177
|
const resolvedIndicatorProps = typeof indicatorProps === "function" ? indicatorProps({ index, page, selected }) : indicatorProps;
|
|
137
178
|
const indicatorRef = getIndicatorRef(slideIndex);
|
|
138
179
|
const indicatorClickHandler = getIndicatorClickHandler(slideIndex);
|
|
180
|
+
const indicatorStyle = {
|
|
181
|
+
...resolvedIndicatorProps == null ? void 0 : resolvedIndicatorProps.style,
|
|
182
|
+
"--triplex-next-runtime-carousel-indicators-indicator-scale": scale,
|
|
183
|
+
"--triplex-next-runtime-carousel-indicators-indicator-translate": `${translate}px`
|
|
184
|
+
};
|
|
139
185
|
const providedIndicatorProps = {
|
|
140
186
|
...resolvedIndicatorProps,
|
|
141
187
|
className: clsx(
|
|
142
188
|
styles.indicator,
|
|
143
|
-
{
|
|
144
|
-
[styles.active]: selected,
|
|
145
|
-
[styles.startEdge]: startEdge,
|
|
146
|
-
[styles.endEdge]: endEdge
|
|
147
|
-
},
|
|
189
|
+
{ [styles.active]: selected },
|
|
148
190
|
resolvedIndicatorProps == null ? void 0 : resolvedIndicatorProps.className
|
|
149
191
|
),
|
|
150
192
|
role: "tab",
|
|
151
193
|
tabIndex: selected ? 0 : -1,
|
|
152
194
|
"aria-selected": selected,
|
|
153
|
-
|
|
195
|
+
"aria-hidden": hidden ? true : resolvedIndicatorProps == null ? void 0 : resolvedIndicatorProps["aria-hidden"],
|
|
196
|
+
onClick: indicatorClickHandler,
|
|
197
|
+
style: indicatorStyle
|
|
154
198
|
};
|
|
155
|
-
if (renderIndicator) {
|
|
156
|
-
return /* @__PURE__ */ jsx(React__default.Fragment, { children: renderIndicator({
|
|
157
|
-
index,
|
|
158
|
-
page,
|
|
159
|
-
selected,
|
|
160
|
-
props: providedIndicatorProps,
|
|
161
|
-
ref: indicatorRef
|
|
162
|
-
}) }, slideIndex);
|
|
163
|
-
}
|
|
164
199
|
return /* @__PURE__ */ jsx(ButtonBase, { ...providedIndicatorProps, ref: indicatorRef }, slideIndex);
|
|
165
200
|
})
|
|
166
201
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CarouselIndicators.js","sources":["../../../src/components/Carousel/CarouselIndicators.tsx"],"sourcesContent":["import React, { useContext, useRef, useCallback, useEffect } from \"react\";\nimport clsx from \"clsx\";\nimport { ICarouselIndicatorsProps, TCarouselIndicatorProps } from \"./types\";\nimport { CarouselContext } from \"./CarouselContext\";\nimport { mergeRefs, useLatestRef } from \"./utils\";\nimport { ECarouselScrollMode, ECarouselOrientation } from \"./enums\";\nimport { ButtonBase } from \"../Button/ButtonBase\";\nimport styles from \"./styles/Carousel.module.less\";\n\nconst ORIENTATION_TO_NAVIGATION_KEYS = {\n [ECarouselOrientation.HORIZONTAL]: [\"ArrowRight\", \"ArrowLeft\"],\n [ECarouselOrientation.VERTICAL]: [\"ArrowDown\", \"ArrowUp\"],\n} as const;\n\nexport const CarouselIndicators = React.forwardRef<HTMLDivElement, ICarouselIndicatorsProps>(\n ({ className, onKeyDown, indicatorProps, renderIndicator, ...restProps }, ref) => {\n const { currentIndex, orientation, scrollMode, activeIndices, goToSlide, orientationRef, currentIndexRef } =\n useContext(CarouselContext);\n const containerRef = useRef<HTMLDivElement | null>(null);\n const combinedRef = mergeRefs(ref, containerRef);\n\n const buttonRefs = useRef<Map<number, HTMLButtonElement>>(new Map());\n const indicatorRefsCache = useRef<Map<number, React.RefCallback<HTMLButtonElement>>>(new Map());\n const clickHandlersCache = useRef<Map<number, React.MouseEventHandler<HTMLButtonElement>>>(new Map());\n\n // Храним актуальный indicatorProps в рефе для стабильных колбэков клика\n const indicatorPropsRef = useLatestRef(indicatorProps);\n // Защита от устаревшего замыкания activeIndices в кэшированных кликах\n const activeIndicesRef = useLatestRef(activeIndices);\n\n const totalPages = activeIndices.length;\n\n const getIndicatorRef = useCallback((slideIndex: number) => {\n if (!indicatorRefsCache.current.has(slideIndex)) {\n indicatorRefsCache.current.set(slideIndex, (node) => {\n if (node) {\n buttonRefs.current.set(slideIndex, node);\n } else {\n buttonRefs.current.delete(slideIndex);\n }\n });\n }\n // Безопасно: запись выше гарантирует наличие ключа в кэше.\n return indicatorRefsCache.current.get(slideIndex)!;\n }, []);\n\n const getIndicatorClickHandler = useCallback(\n (slideIndex: number) => {\n if (!clickHandlersCache.current.has(slideIndex)) {\n clickHandlersCache.current.set(slideIndex, (event) => {\n goToSlide(slideIndex);\n\n const currentPropsInput = indicatorPropsRef.current;\n if (!currentPropsInput) return;\n\n const latestActiveIndices = activeIndicesRef.current;\n const indexInArray = latestActiveIndices.indexOf(slideIndex);\n\n if (indexInArray !== -1) {\n const page = indexInArray + 1;\n const selected = currentIndexRef.current === slideIndex;\n const resolvedProps =\n typeof currentPropsInput === \"function\"\n ? currentPropsInput({ index: indexInArray, page, selected })\n : currentPropsInput;\n\n resolvedProps?.onClick?.(event);\n }\n });\n }\n // Безопасно: запись выше гарантирует наличие ключа в кэше.\n return clickHandlersCache.current.get(slideIndex)!;\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [goToSlide],\n );\n\n const handleKeyDown = useCallback<React.KeyboardEventHandler<HTMLDivElement>>(\n (event) => {\n const [nextKey, prevKey] = ORIENTATION_TO_NAVIGATION_KEYS[orientationRef.current];\n const nextKeyMatched = event.key === nextKey;\n const prevKeyMatched = event.key === prevKey;\n const homeKeyMatched = event.key === \"Home\";\n const endKeyMatched = event.key === \"End\";\n\n if (nextKeyMatched || prevKeyMatched || homeKeyMatched || endKeyMatched) {\n const currentIndexInArray = activeIndices.indexOf(currentIndexRef.current);\n\n if (currentIndexInArray !== -1) {\n event.preventDefault();\n\n let nextIndexInArray = currentIndexInArray;\n if (nextKeyMatched) {\n nextIndexInArray = Math.min(currentIndexInArray + 1, totalPages - 1);\n } else if (prevKeyMatched) {\n nextIndexInArray = Math.max(currentIndexInArray - 1, 0);\n } else if (homeKeyMatched) {\n nextIndexInArray = 0;\n } else if (endKeyMatched) {\n nextIndexInArray = totalPages - 1;\n }\n\n const nextSlideIndex = activeIndices[nextIndexInArray];\n goToSlide(nextSlideIndex);\n }\n }\n\n onKeyDown?.(event);\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [activeIndices, totalPages, goToSlide, onKeyDown],\n );\n\n useEffect(() => {\n const activeSet = new Set(activeIndices);\n\n for (const key of indicatorRefsCache.current.keys()) {\n if (!activeSet.has(key)) {\n indicatorRefsCache.current.delete(key);\n buttonRefs.current.delete(key);\n }\n }\n for (const key of clickHandlersCache.current.keys()) {\n if (!activeSet.has(key)) {\n clickHandlersCache.current.delete(key);\n }\n }\n }, [activeIndices]);\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container?.contains(document.activeElement)) return;\n\n const rafId = requestAnimationFrame(() => {\n const activeButton = buttonRefs.current.get(currentIndexRef.current);\n activeButton?.focus();\n });\n\n return () => cancelAnimationFrame(rafId);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentIndex]);\n\n if (scrollMode === ECarouselScrollMode.ITEM || totalPages < 1) return null;\n\n const currentIndexInArray = activeIndices.indexOf(currentIndex);\n\n let startWindowIndex = 0;\n if (totalPages > 5) {\n startWindowIndex = currentIndexInArray - Math.floor(5 / 2);\n startWindowIndex = Math.max(0, Math.min(startWindowIndex, totalPages - 5));\n }\n const endWindowIndex = startWindowIndex + 5;\n\n return (\n <div\n {...restProps}\n className={clsx(styles.indicators, className)}\n role=\"tablist\"\n aria-orientation={orientation}\n onKeyDown={handleKeyDown}\n ref={combinedRef}\n >\n {activeIndices.map((slideIndex, index) => {\n const visible = index >= startWindowIndex && index < endWindowIndex;\n if (!visible) return null;\n\n const selected = currentIndex === slideIndex;\n const page = index + 1;\n\n const startEdge = index === startWindowIndex && startWindowIndex > 0;\n const endEdge = index === endWindowIndex - 1 && endWindowIndex < totalPages;\n\n const resolvedIndicatorProps =\n typeof indicatorProps === \"function\"\n ? indicatorProps({ index, page, selected })\n : indicatorProps;\n\n const indicatorRef = getIndicatorRef(slideIndex);\n const indicatorClickHandler = getIndicatorClickHandler(slideIndex);\n\n const providedIndicatorProps: TCarouselIndicatorProps = {\n ...resolvedIndicatorProps,\n className: clsx(\n styles.indicator,\n {\n [styles.active]: selected,\n [styles.startEdge]: startEdge,\n [styles.endEdge]: endEdge,\n },\n resolvedIndicatorProps?.className,\n ),\n role: \"tab\",\n tabIndex: selected ? 0 : -1,\n \"aria-selected\": selected,\n onClick: indicatorClickHandler,\n };\n\n if (renderIndicator) {\n return (\n <React.Fragment key={slideIndex}>\n {renderIndicator({\n index,\n page,\n selected,\n props: providedIndicatorProps,\n ref: indicatorRef,\n })}\n </React.Fragment>\n );\n }\n\n return <ButtonBase key={slideIndex} {...providedIndicatorProps} ref={indicatorRef} />;\n })}\n </div>\n );\n },\n);\n\nCarouselIndicators.displayName = \"Carousel.Indicators\";\n"],"names":["React","currentIndexInArray"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CarouselIndicators.js","sources":["../../../src/components/Carousel/CarouselIndicators.tsx"],"sourcesContent":["import React, { useContext, useRef, useCallback, useEffect } from \"react\";\nimport clsx from \"clsx\";\nimport { ICarouselIndicatorsProps, TCarouselIndicatorProps } from \"./types\";\nimport { CarouselContext } from \"./CarouselContext\";\nimport { mergeRefs, useLatestRef } from \"./utils\";\nimport { ECarouselScrollMode, ECarouselOrientation } from \"./enums\";\nimport { ButtonBase } from \"../Button/ButtonBase\";\nimport styles from \"./styles/Carousel.module.less\";\n\ninterface ICarouselIndicatorsStyle extends React.CSSProperties {\n \"--triplex-next-runtime-carousel-indicators-size\": string;\n}\n\ninterface ICarouselIndicatorsIndicatorStyle extends React.CSSProperties {\n \"--triplex-next-runtime-carousel-indicators-indicator-scale\": number;\n \"--triplex-next-runtime-carousel-indicators-indicator-translate\": string;\n}\n\nconst ORIENTATION_TO_NAVIGATION_KEYS = {\n [ECarouselOrientation.HORIZONTAL]: [\"ArrowRight\", \"ArrowLeft\"],\n [ECarouselOrientation.VERTICAL]: [\"ArrowDown\", \"ArrowUp\"],\n} as const;\n\nconst WINDOW_SIZE = 5;\nconst GAP = 8;\nconst SIZE_NORMAL = 16;\nconst SIZE_ACTIVE = 24;\nconst SIZE_EDGE = 8;\n\nexport const CarouselIndicators = React.forwardRef<HTMLDivElement, ICarouselIndicatorsProps>(\n ({ className, onKeyDown, indicatorProps, ...restProps }, ref) => {\n const { currentIndex, orientation, scrollMode, activeIndices, goToSlide, orientationRef, currentIndexRef } =\n useContext(CarouselContext);\n const containerRef = useRef<HTMLDivElement | null>(null);\n const combinedRef = mergeRefs(ref, containerRef);\n\n const buttonRefs = useRef<Map<number, HTMLButtonElement>>(new Map());\n const indicatorRefsCache = useRef<Map<number, React.RefCallback<HTMLButtonElement>>>(new Map());\n const clickHandlersCache = useRef<Map<number, React.MouseEventHandler<HTMLButtonElement>>>(new Map());\n\n // Храним актуальный indicatorProps в рефе для стабильных колбэков клика\n const indicatorPropsRef = useLatestRef(indicatorProps);\n // Защита от устаревшего замыкания activeIndices в кэшированных кликах\n const activeIndicesRef = useLatestRef(activeIndices);\n\n const totalPages = activeIndices.length;\n\n const getIndicatorRef = useCallback((slideIndex: number) => {\n if (!indicatorRefsCache.current.has(slideIndex)) {\n indicatorRefsCache.current.set(slideIndex, (node) => {\n if (node) {\n buttonRefs.current.set(slideIndex, node);\n } else {\n buttonRefs.current.delete(slideIndex);\n }\n });\n }\n // Безопасно: запись выше гарантирует наличие ключа в кэше.\n return indicatorRefsCache.current.get(slideIndex)!;\n }, []);\n\n const getIndicatorClickHandler = useCallback(\n (slideIndex: number) => {\n if (!clickHandlersCache.current.has(slideIndex)) {\n clickHandlersCache.current.set(slideIndex, (event) => {\n goToSlide(slideIndex);\n\n const currentPropsInput = indicatorPropsRef.current;\n if (!currentPropsInput) return;\n\n const latestActiveIndices = activeIndicesRef.current;\n const indexInArray = latestActiveIndices.indexOf(slideIndex);\n\n if (indexInArray !== -1) {\n const page = indexInArray + 1;\n const selected = currentIndexRef.current === slideIndex;\n const resolvedProps =\n typeof currentPropsInput === \"function\"\n ? currentPropsInput({ index: indexInArray, page, selected })\n : currentPropsInput;\n\n resolvedProps?.onClick?.(event);\n }\n });\n }\n // Безопасно: запись выше гарантирует наличие ключа в кэше.\n return clickHandlersCache.current.get(slideIndex)!;\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [goToSlide],\n );\n\n const handleKeyDown = useCallback<React.KeyboardEventHandler<HTMLDivElement>>(\n (event) => {\n const [nextKey, prevKey] = ORIENTATION_TO_NAVIGATION_KEYS[orientationRef.current];\n const nextKeyMatched = event.key === nextKey;\n const prevKeyMatched = event.key === prevKey;\n const homeKeyMatched = event.key === \"Home\";\n const endKeyMatched = event.key === \"End\";\n\n if (nextKeyMatched || prevKeyMatched || homeKeyMatched || endKeyMatched) {\n const currentIndexInArray = activeIndices.indexOf(currentIndexRef.current);\n\n if (currentIndexInArray !== -1) {\n event.preventDefault();\n\n let nextIndexInArray = currentIndexInArray;\n if (nextKeyMatched) {\n nextIndexInArray = Math.min(currentIndexInArray + 1, totalPages - 1);\n } else if (prevKeyMatched) {\n nextIndexInArray = Math.max(currentIndexInArray - 1, 0);\n } else if (homeKeyMatched) {\n nextIndexInArray = 0;\n } else if (endKeyMatched) {\n nextIndexInArray = totalPages - 1;\n }\n\n const nextSlideIndex = activeIndices[nextIndexInArray];\n goToSlide(nextSlideIndex);\n }\n }\n\n onKeyDown?.(event);\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [activeIndices, totalPages, goToSlide, onKeyDown],\n );\n\n useEffect(() => {\n const activeSet = new Set(activeIndices);\n\n for (const key of indicatorRefsCache.current.keys()) {\n if (!activeSet.has(key)) {\n indicatorRefsCache.current.delete(key);\n buttonRefs.current.delete(key);\n }\n }\n for (const key of clickHandlersCache.current.keys()) {\n if (!activeSet.has(key)) {\n clickHandlersCache.current.delete(key);\n }\n }\n }, [activeIndices]);\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container?.contains(document.activeElement)) return;\n\n const rafId = requestAnimationFrame(() => {\n const activeButton = buttonRefs.current.get(currentIndexRef.current);\n activeButton?.focus();\n });\n\n return () => cancelAnimationFrame(rafId);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentIndex]);\n\n if (scrollMode === ECarouselScrollMode.ITEM || totalPages < 1) {\n return null;\n }\n\n const currentIndexInArray = activeIndices.indexOf(currentIndex);\n\n let startWindowIndex = 0;\n if (totalPages > WINDOW_SIZE) {\n startWindowIndex = currentIndexInArray - Math.floor(WINDOW_SIZE / 2);\n startWindowIndex = Math.max(0, Math.min(startWindowIndex, totalPages - WINDOW_SIZE));\n }\n const endWindowIndex = startWindowIndex + WINDOW_SIZE;\n\n const startWindowOffset = startWindowIndex * (SIZE_EDGE + GAP);\n\n let currentOffset = 0;\n\n const indicatorsData = activeIndices.map((slideIndex, index) => {\n const page = index + 1;\n const hidden = index < startWindowIndex || index >= endWindowIndex;\n const selected = currentIndex === slideIndex;\n\n const startEdge = index === startWindowIndex && startWindowIndex > 0;\n const endEdge = index === endWindowIndex - 1 && endWindowIndex < totalPages;\n\n let size = SIZE_NORMAL;\n let scale = SIZE_NORMAL / SIZE_ACTIVE;\n\n if (selected) {\n size = SIZE_ACTIVE;\n scale = 1;\n } else if (startEdge || endEdge || hidden) {\n size = SIZE_EDGE;\n scale = SIZE_EDGE / SIZE_ACTIVE;\n }\n\n const rawOffset = currentOffset;\n currentOffset += size + GAP;\n\n const translate = rawOffset - startWindowOffset;\n\n return {\n slideIndex,\n index,\n page,\n selected,\n hidden,\n size,\n scale,\n translate,\n };\n });\n\n const lastVisibleIndex = Math.min(endWindowIndex - 1, totalPages - 1);\n const lastVisibleItem = indicatorsData[lastVisibleIndex];\n const containerSize = lastVisibleItem ? lastVisibleItem.translate + lastVisibleItem.size : 0;\n\n const style: ICarouselIndicatorsStyle = {\n ...restProps.style,\n \"--triplex-next-runtime-carousel-indicators-size\": `${containerSize}px`,\n };\n\n return (\n <div\n {...restProps}\n className={clsx(styles.indicators, className)}\n role=\"tablist\"\n aria-orientation={orientation}\n onKeyDown={handleKeyDown}\n ref={combinedRef}\n style={style}\n >\n {indicatorsData.map((item) => {\n const { slideIndex, index, page, selected, hidden, scale, translate } = item;\n\n const resolvedIndicatorProps =\n typeof indicatorProps === \"function\"\n ? indicatorProps({ index, page, selected })\n : indicatorProps;\n\n const indicatorRef = getIndicatorRef(slideIndex);\n const indicatorClickHandler = getIndicatorClickHandler(slideIndex);\n\n const indicatorStyle: ICarouselIndicatorsIndicatorStyle = {\n ...resolvedIndicatorProps?.style,\n \"--triplex-next-runtime-carousel-indicators-indicator-scale\": scale,\n \"--triplex-next-runtime-carousel-indicators-indicator-translate\": `${translate}px`,\n };\n\n const providedIndicatorProps: TCarouselIndicatorProps = {\n ...resolvedIndicatorProps,\n className: clsx(\n styles.indicator,\n { [styles.active]: selected },\n resolvedIndicatorProps?.className,\n ),\n role: \"tab\",\n tabIndex: selected ? 0 : -1,\n \"aria-selected\": selected,\n \"aria-hidden\": hidden ? true : resolvedIndicatorProps?.[\"aria-hidden\"],\n onClick: indicatorClickHandler,\n style: indicatorStyle,\n };\n\n return <ButtonBase key={slideIndex} {...providedIndicatorProps} ref={indicatorRef} />;\n })}\n </div>\n );\n },\n);\n\nCarouselIndicators.displayName = \"Carousel.Indicators\";\n"],"names":["React","currentIndexInArray"],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import React__default, { useContext, useRef, useCallback } from "react";
|
|
3
|
-
import { c as clsx } from "../../chunks/vendor-
|
|
3
|
+
import { c as clsx } from "../../chunks/vendor-CUIykw0y.js";
|
|
4
4
|
import { CarouselContext } from "./CarouselContext.js";
|
|
5
5
|
import { mergeRefs } from "./utils.js";
|
|
6
|
-
import { s as styles } from "../../chunks/Carousel.module-
|
|
6
|
+
import { s as styles } from "../../chunks/Carousel.module-D_IzMMFv.js";
|
|
7
7
|
const CarouselItem = React__default.forwardRef(
|
|
8
8
|
({ children, className, index, ...restProps }, ref) => {
|
|
9
9
|
const { slideRefs } = useContext(CarouselContext);
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { jsx } 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 { CarouselContext } from "./CarouselContext.js";
|
|
5
5
|
import { mergeRefs } from "./utils.js";
|
|
6
6
|
import { ORIENTATION_TRANSFORM } from "./constants.js";
|
|
7
|
-
import { s as styles } from "../../chunks/Carousel.module-
|
|
7
|
+
import { s as styles } from "../../chunks/Carousel.module-D_IzMMFv.js";
|
|
8
8
|
const CarouselTrack = React__default.forwardRef(
|
|
9
9
|
({ children, className, style, ...restProps }, ref) => {
|
|
10
10
|
const { gap, orientation, offset, trackRef } = useContext(CarouselContext);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import React__default, { useContext, useRef, useCallback, useEffect } from "react";
|
|
3
|
-
import { c as clsx } from "../../chunks/vendor-
|
|
3
|
+
import { c as clsx } from "../../chunks/vendor-CUIykw0y.js";
|
|
4
4
|
import { CarouselContext } from "./CarouselContext.js";
|
|
5
5
|
import { mergeRefs } from "./utils.js";
|
|
6
6
|
import { ORIENTATION_TRANSFORM } from "./constants.js";
|
|
7
7
|
import { ECarouselOrientation } from "./enums.js";
|
|
8
|
-
import { s as styles } from "../../chunks/Carousel.module-
|
|
8
|
+
import { s as styles } from "../../chunks/Carousel.module-D_IzMMFv.js";
|
|
9
9
|
const ORIENTATION_TO_TOUCH_KEY = {
|
|
10
10
|
[ECarouselOrientation.HORIZONTAL]: "clientX",
|
|
11
11
|
[ECarouselOrientation.VERTICAL]: "clientY"
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
2
|
import React__default, { useState, useRef, useCallback, useEffect } from "react";
|
|
3
3
|
import { scrollSmoothHorizontally } from "../../utils/scroll.js";
|
|
4
|
-
import { i as isEqual } from "../../chunks/vendor-
|
|
5
|
-
const carouselExtended = "
|
|
4
|
+
import { i as isEqual } from "../../chunks/vendor-CUIykw0y.js";
|
|
5
|
+
const carouselExtended = "carouselExtended__6fdd5c9a";
|
|
6
6
|
const styles = {
|
|
7
7
|
carouselExtended
|
|
8
8
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
2
|
import React__default from "react";
|
|
3
|
-
import { c as clsx } from "../../chunks/vendor-
|
|
3
|
+
import { c as clsx } from "../../chunks/vendor-CUIykw0y.js";
|
|
4
4
|
import { CheckboxbulkStrokeSrvIcon24, CheckboxtickStrokeSrvIcon24 } from "@sberbusiness/icons-next";
|
|
5
5
|
import { ETextSize } from "../Typography/enums.js";
|
|
6
6
|
import "../Typography/Caption.js";
|
|
@@ -9,15 +9,15 @@ import { Text } from "../Typography/Text.js";
|
|
|
9
9
|
import "../Typography/Title.js";
|
|
10
10
|
import { EComponentSize } from "../../enums/EComponentSize.js";
|
|
11
11
|
import { createSizeToClassNameMap } from "../../utils/classNameMaps.js";
|
|
12
|
-
const label = "
|
|
13
|
-
const sm = "
|
|
14
|
-
const nonempty = "
|
|
15
|
-
const md = "
|
|
16
|
-
const lg = "
|
|
17
|
-
const disabled = "
|
|
18
|
-
const checkbox = "
|
|
19
|
-
const checkboxIcon = "
|
|
20
|
-
const checkmarkIcon = "
|
|
12
|
+
const label = "label__9ee1e646";
|
|
13
|
+
const sm = "sm__f9649bcc";
|
|
14
|
+
const nonempty = "nonempty__6581532a";
|
|
15
|
+
const md = "md__811ac6b3";
|
|
16
|
+
const lg = "lg__a9e6ae2c";
|
|
17
|
+
const disabled = "disabled__055f2200";
|
|
18
|
+
const checkbox = "checkbox__32b6f462";
|
|
19
|
+
const checkboxIcon = "checkboxIcon__a8bcf947";
|
|
20
|
+
const checkmarkIcon = "checkmarkIcon__d76d0b3c";
|
|
21
21
|
const styles = {
|
|
22
22
|
label,
|
|
23
23
|
sm,
|
|
@@ -53,7 +53,7 @@ const Checkbox = React__default.forwardRef((props, ref) => {
|
|
|
53
53
|
labelAttributes == null ? void 0 : labelAttributes.className
|
|
54
54
|
);
|
|
55
55
|
const CheckmarkIcon = bulk ? CheckboxbulkStrokeSrvIcon24 : CheckboxtickStrokeSrvIcon24;
|
|
56
|
-
return /* @__PURE__ */ jsxs("label", { ...labelAttributes, className: labelClassName, "data-tx": "1.
|
|
56
|
+
return /* @__PURE__ */ jsxs("label", { ...labelAttributes, className: labelClassName, "data-tx": "1.48.0", children: [
|
|
57
57
|
/* @__PURE__ */ jsx("input", { type: "checkbox", className: styles.checkbox, disabled: disabled2, ...inputAttributes, ref }),
|
|
58
58
|
/* @__PURE__ */ jsx("span", { className: styles.checkboxIcon }),
|
|
59
59
|
/* @__PURE__ */ jsx(CheckmarkIcon, { className: styles.checkmarkIcon, paletteIndex: 7 }),
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import React__default from "react";
|
|
3
|
-
import { c as clsx } from "../../chunks/vendor-
|
|
4
|
-
const checkboxXGroup = "
|
|
5
|
-
const label = "
|
|
3
|
+
import { c as clsx } from "../../chunks/vendor-CUIykw0y.js";
|
|
4
|
+
const checkboxXGroup = "checkboxXGroup__855f5f67";
|
|
5
|
+
const label = "label__9ee1e646";
|
|
6
6
|
const styles = {
|
|
7
7
|
checkboxXGroup,
|
|
8
|
-
"indent-12": "indent-
|
|
8
|
+
"indent-12": "indent-12__52b23995",
|
|
9
9
|
label,
|
|
10
|
-
"indent-16": "indent-
|
|
11
|
-
"indent-20": "indent-
|
|
12
|
-
"indent-24": "indent-
|
|
13
|
-
"indent-28": "indent-
|
|
14
|
-
"indent-32": "indent-
|
|
10
|
+
"indent-16": "indent-16__de4b5d2a",
|
|
11
|
+
"indent-20": "indent-20__6cbbd325",
|
|
12
|
+
"indent-24": "indent-24__969bf758",
|
|
13
|
+
"indent-28": "indent-28__1f96715c",
|
|
14
|
+
"indent-32": "indent-32__15e3d2af"
|
|
15
15
|
};
|
|
16
16
|
const CheckboxXGroup = React__default.forwardRef((props, ref) => {
|
|
17
17
|
const { children, className, indent = 12, ...rest } = props;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
2
|
import React__default from "react";
|
|
3
|
-
import { c as clsx } from "../../chunks/vendor-
|
|
4
|
-
const checkboxYGroup = "
|
|
3
|
+
import { c as clsx } from "../../chunks/vendor-CUIykw0y.js";
|
|
4
|
+
const checkboxYGroup = "checkboxYGroup__9e1768b6";
|
|
5
5
|
const styles = {
|
|
6
6
|
checkboxYGroup
|
|
7
7
|
};
|
|
@@ -1,42 +1,41 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import React__default from "react";
|
|
2
3
|
import { CheckboxTreeExtended } from "../CheckboxTreeExtended/CheckboxTreeExtended.js";
|
|
3
4
|
import { checkChildrenCheckboxes, traverseCheckboxes, checkParentCheckboxes } from "./utils.js";
|
|
4
5
|
import { EComponentSize } from "../../enums/EComponentSize.js";
|
|
5
|
-
const CheckboxTree = (
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
return /* @__PURE__ */ jsx(CheckboxTreeExtended, { size, children: checkboxes.map((checkbox, index) => renderNode(checkbox, checkboxes[index - 1], checkboxes[index + 1])) });
|
|
39
|
-
};
|
|
6
|
+
const CheckboxTree = React__default.forwardRef(
|
|
7
|
+
({ checkboxes, onChange, size = EComponentSize.MD, ...rest }, ref) => {
|
|
8
|
+
const handleChange = (checkbox) => (event) => {
|
|
9
|
+
const { checked } = event.target;
|
|
10
|
+
checkbox.checked = checkbox.bulk ? true : checked;
|
|
11
|
+
checkChildrenCheckboxes(checkbox);
|
|
12
|
+
traverseCheckboxes(checkboxes, checkParentCheckboxes);
|
|
13
|
+
onChange([...checkboxes]);
|
|
14
|
+
};
|
|
15
|
+
const renderNodes = (nodes) => nodes.map((checkbox, index) => renderNode(checkbox, nodes[index - 1], nodes[index + 1]));
|
|
16
|
+
const renderNode = (checkbox, prevCheckbox, nextCheckbox) => /* @__PURE__ */ jsx(
|
|
17
|
+
CheckboxTreeExtended.Node,
|
|
18
|
+
{
|
|
19
|
+
id: checkbox.id,
|
|
20
|
+
checkbox: (props) => /* @__PURE__ */ jsx(
|
|
21
|
+
CheckboxTreeExtended.Checkbox,
|
|
22
|
+
{
|
|
23
|
+
...props,
|
|
24
|
+
onChange: handleChange(checkbox),
|
|
25
|
+
bulk: checkbox.bulk,
|
|
26
|
+
checked: checkbox.checked,
|
|
27
|
+
children: checkbox.label
|
|
28
|
+
}
|
|
29
|
+
),
|
|
30
|
+
prevNodeId: prevCheckbox == null ? void 0 : prevCheckbox.id,
|
|
31
|
+
nextNodeId: nextCheckbox == null ? void 0 : nextCheckbox.id,
|
|
32
|
+
children: checkbox.children && renderNodes(checkbox.children)
|
|
33
|
+
},
|
|
34
|
+
checkbox.id
|
|
35
|
+
);
|
|
36
|
+
return /* @__PURE__ */ jsx(CheckboxTreeExtended, { size, ...rest, ref, children: renderNodes(checkboxes) });
|
|
37
|
+
}
|
|
38
|
+
);
|
|
40
39
|
CheckboxTree.displayName = "CheckboxTree";
|
|
41
40
|
export {
|
|
42
41
|
CheckboxTree
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckboxTree.js","sources":["../../../src/components/CheckboxTree/CheckboxTree.tsx"],"sourcesContent":["import React from \"react\";\nimport { CheckboxTreeExtended, ICheckboxTreeExtendedProps } from \"../CheckboxTreeExtended/CheckboxTreeExtended\";\nimport { ICheckboxTreeExtendedCheckboxProvideProps } from \"../CheckboxTreeExtended/components/CheckboxTreeExtendedNode\";\nimport { ICheckboxTreeCheckboxData } from \"./types\";\nimport { checkChildrenCheckboxes, checkParentCheckboxes, traverseCheckboxes } from \"./utils\";\nimport { EComponentSize } from \"../../enums/EComponentSize\";\n\n/** Свойства CheckboxTree. */\nexport interface ICheckboxTreeProps extends Omit<ICheckboxTreeExtendedProps, \"children\" | \"onChange\"> {\n children?: never;\n /** Набор чекбоксов. */\n checkboxes: ICheckboxTreeCheckboxData[];\n /** Обработчик изменения чекбоксов. */\n onChange: (options: ICheckboxTreeCheckboxData[]) => void;\n}\n\n/**\n * Дерево чекбоксов.\n * Является оберткой над CheckboxTreeExtended
|
|
1
|
+
{"version":3,"file":"CheckboxTree.js","sources":["../../../src/components/CheckboxTree/CheckboxTree.tsx"],"sourcesContent":["import React from \"react\";\nimport { CheckboxTreeExtended, ICheckboxTreeExtendedProps } from \"../CheckboxTreeExtended/CheckboxTreeExtended\";\nimport { ICheckboxTreeExtendedCheckboxProvideProps } from \"../CheckboxTreeExtended/components/CheckboxTreeExtendedNode\";\nimport { ICheckboxTreeCheckboxData } from \"./types\";\nimport { checkChildrenCheckboxes, checkParentCheckboxes, traverseCheckboxes } from \"./utils\";\nimport { EComponentSize } from \"../../enums/EComponentSize\";\n\n/** Свойства CheckboxTree. */\nexport interface ICheckboxTreeProps extends Omit<ICheckboxTreeExtendedProps, \"children\" | \"onChange\"> {\n /** Дерево строится из checkboxes — собственную разметку узлов передать нельзя. Для неё есть CheckboxTreeExtended. */\n children?: never;\n /** Набор чекбоксов. Дерево задаётся вложенностью children у элементов набора. */\n checkboxes: ICheckboxTreeCheckboxData[];\n /** Обработчик изменения чекбоксов. Получает новый массив с пересчитанными флагами checked и bulk. */\n onChange: (options: ICheckboxTreeCheckboxData[]) => void;\n}\n\n/**\n * Дерево чекбоксов.\n * Является оберткой над CheckboxTreeExtended: принимает плоское описание дерева и сам связывает состояние\n * родителей и потомков — выбор родителя выбирает всех потомков, выбор части потомков делает родителя частичным.\n *\n * ref указывает на корневой <ul role=\"tree\">.\n */\nexport const CheckboxTree = React.forwardRef<HTMLUListElement, ICheckboxTreeProps>(\n ({ checkboxes, onChange, size = EComponentSize.MD, ...rest }, ref) => {\n const handleChange = (checkbox: ICheckboxTreeCheckboxData) => (event: React.ChangeEvent<HTMLInputElement>) => {\n const { checked } = event.target;\n\n // Клик по частично выбранному узлу выбирает его целиком, а не снимает выбор.\n checkbox.checked = checkbox.bulk ? true : checked;\n\n // Обновление флага checked дочерних чекбоксов, при изменении родителя.\n checkChildrenCheckboxes(checkbox);\n\n // Обновление флага checked и bulk всех чекбоксов снизу вверх.\n traverseCheckboxes(checkboxes, checkParentCheckboxes);\n\n onChange([...checkboxes]);\n };\n\n // Соседи по списку передаются узлу как prevNodeId/nextNodeId — по ним TreeView строит клавиатурную навигацию.\n const renderNodes = (nodes: ICheckboxTreeCheckboxData[]) =>\n nodes.map((checkbox, index) => renderNode(checkbox, nodes[index - 1], nodes[index + 1]));\n\n const renderNode = (\n checkbox: ICheckboxTreeCheckboxData,\n prevCheckbox?: ICheckboxTreeCheckboxData,\n nextCheckbox?: ICheckboxTreeCheckboxData,\n ) => (\n <CheckboxTreeExtended.Node\n id={checkbox.id}\n key={checkbox.id}\n checkbox={(props: ICheckboxTreeExtendedCheckboxProvideProps) => (\n <CheckboxTreeExtended.Checkbox\n {...props}\n onChange={handleChange(checkbox)}\n bulk={checkbox.bulk}\n checked={checkbox.checked}\n >\n {checkbox.label}\n </CheckboxTreeExtended.Checkbox>\n )}\n prevNodeId={prevCheckbox?.id}\n nextNodeId={nextCheckbox?.id}\n >\n {checkbox.children && renderNodes(checkbox.children)}\n </CheckboxTreeExtended.Node>\n );\n\n return (\n <CheckboxTreeExtended size={size} {...rest} ref={ref}>\n {renderNodes(checkboxes)}\n </CheckboxTreeExtended>\n );\n },\n);\n\nCheckboxTree.displayName = \"CheckboxTree\";\n"],"names":["React"],"mappings":";;;;;AAwBO,MAAM,eAAeA,eAAM;AAAA,EAC9B,CAAC,EAAE,YAAY,UAAU,OAAO,eAAe,IAAI,GAAG,KAAA,GAAQ,QAAQ;AAClE,UAAM,eAAe,CAAC,aAAwC,CAAC,UAA+C;AAC1G,YAAM,EAAE,YAAY,MAAM;AAG1B,eAAS,UAAU,SAAS,OAAO,OAAO;AAG1C,8BAAwB,QAAQ;AAGhC,yBAAmB,YAAY,qBAAqB;AAEpD,eAAS,CAAC,GAAG,UAAU,CAAC;AAAA,IAC5B;AAGA,UAAM,cAAc,CAAC,UACjB,MAAM,IAAI,CAAC,UAAU,UAAU,WAAW,UAAU,MAAM,QAAQ,CAAC,GAAG,MAAM,QAAQ,CAAC,CAAC,CAAC;AAE3F,UAAM,aAAa,CACf,UACA,cACA,iBAEA;AAAA,MAAC,qBAAqB;AAAA,MAArB;AAAA,QACG,IAAI,SAAS;AAAA,QAEb,UAAU,CAAC,UACP;AAAA,UAAC,qBAAqB;AAAA,UAArB;AAAA,YACI,GAAG;AAAA,YACJ,UAAU,aAAa,QAAQ;AAAA,YAC/B,MAAM,SAAS;AAAA,YACf,SAAS,SAAS;AAAA,YAEjB,UAAA,SAAS;AAAA,UAAA;AAAA,QAAA;AAAA,QAGlB,YAAY,6CAAc;AAAA,QAC1B,YAAY,6CAAc;AAAA,QAEzB,UAAA,SAAS,YAAY,YAAY,SAAS,QAAQ;AAAA,MAAA;AAAA,MAd9C,SAAS;AAAA,IAAA;AAkBtB,WACI,oBAAC,wBAAqB,MAAa,GAAG,MAAM,KACvC,UAAA,YAAY,UAAU,GAC3B;AAAA,EAER;AACJ;AAEA,aAAa,cAAc;"}
|
|
@@ -1,18 +1,25 @@
|
|
|
1
|
-
const traverseCheckboxes = (checkboxes,
|
|
2
|
-
checkboxes.forEach((
|
|
3
|
-
if (
|
|
4
|
-
|
|
1
|
+
const traverseCheckboxes = (checkboxes, callback) => {
|
|
2
|
+
checkboxes.forEach((checkbox) => {
|
|
3
|
+
if (checkbox.children) {
|
|
4
|
+
traverseCheckboxes(checkbox.children, callback);
|
|
5
|
+
}
|
|
6
|
+
callback(checkbox);
|
|
5
7
|
});
|
|
6
8
|
};
|
|
7
9
|
const checkParentCheckboxes = (checkbox) => {
|
|
8
|
-
|
|
10
|
+
var _a;
|
|
11
|
+
if (!((_a = checkbox.children) == null ? void 0 : _a.length)) {
|
|
9
12
|
return;
|
|
10
13
|
}
|
|
11
14
|
let checkedChildrenCount = 0;
|
|
12
15
|
let bulkChildrenCount = 0;
|
|
13
|
-
checkbox.children.forEach((
|
|
14
|
-
|
|
15
|
-
|
|
16
|
+
checkbox.children.forEach((child) => {
|
|
17
|
+
if (child.checked) {
|
|
18
|
+
checkedChildrenCount++;
|
|
19
|
+
}
|
|
20
|
+
if (child.bulk) {
|
|
21
|
+
bulkChildrenCount++;
|
|
22
|
+
}
|
|
16
23
|
});
|
|
17
24
|
if (checkedChildrenCount === checkbox.children.length) {
|
|
18
25
|
checkbox.checked = true;
|
|
@@ -28,9 +35,9 @@ const checkChildrenCheckboxes = (checkbox) => {
|
|
|
28
35
|
if (!checkbox.children) {
|
|
29
36
|
return;
|
|
30
37
|
}
|
|
31
|
-
checkbox.children.forEach((
|
|
32
|
-
|
|
33
|
-
checkChildrenCheckboxes(
|
|
38
|
+
checkbox.children.forEach((child) => {
|
|
39
|
+
child.checked = checkbox.checked;
|
|
40
|
+
checkChildrenCheckboxes(child);
|
|
34
41
|
});
|
|
35
42
|
};
|
|
36
43
|
export {
|