@consta/uikit 5.30.0 → 5.32.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/ColorPicker/index.d.ts +1 -0
- package/ColorPicker/index.js +1 -0
- package/FileCanary/index.d.ts +1 -0
- package/FileCanary/index.js +1 -0
- package/__internal__/src/components/Attachment/Attachment.css +1 -1
- package/__internal__/src/components/Attachment/types.d.ts +1 -1
- package/__internal__/src/components/Attachment/types.js.map +1 -1
- package/__internal__/src/components/AttachmentDeprecated/Attachment.css +1 -1
- package/__internal__/src/components/AttachmentDeprecated/AttachmentDeprecated.js.map +1 -1
- package/__internal__/src/components/AttachmentDeprecated/types.d.ts +1 -1
- package/__internal__/src/components/AttachmentDeprecated/types.js.map +1 -1
- package/__internal__/src/components/AutoComplete/AutoComplete.js +1 -1
- package/__internal__/src/components/AutoComplete/AutoComplete.js.map +1 -1
- package/__internal__/src/components/AutoComplete/helpers.d.ts +1 -0
- package/__internal__/src/components/AutoComplete/types.d.ts +1 -0
- package/__internal__/src/components/AutoComplete/types.js.map +1 -1
- package/__internal__/src/components/AutoCompleteCanary/AutoCompleteTypeText/AutoCompleteTypeText.js +1 -1
- package/__internal__/src/components/AutoCompleteCanary/AutoCompleteTypeText/AutoCompleteTypeText.js.map +1 -1
- package/__internal__/src/components/AutoCompleteCanary/AutoCompleteTypeTextArray/AutoCompleteTypeTextArray.js +1 -1
- package/__internal__/src/components/AutoCompleteCanary/AutoCompleteTypeTextArray/AutoCompleteTypeTextArray.js.map +1 -1
- package/__internal__/src/components/AutoCompleteCanary/helpers.d.ts +1 -0
- package/__internal__/src/components/AutoCompleteCanary/types.d.ts +1 -0
- package/__internal__/src/components/AutoCompleteCanary/types.js.map +1 -1
- package/__internal__/src/components/Avatar/Avatar.d.ts +2 -2
- package/__internal__/src/components/Avatar/Avatar.js.map +1 -1
- package/__internal__/src/components/AvatarGroup/types.d.ts +2 -2
- package/__internal__/src/components/AvatarGroup/types.js.map +1 -1
- package/__internal__/src/components/Badge/Badge.css +2 -2
- package/__internal__/src/components/Badge/maps.js.map +1 -1
- package/__internal__/src/components/Badge/types.d.ts +4 -4
- package/__internal__/src/components/Badge/types.js.map +1 -1
- package/__internal__/src/components/Banner/Banner.d.ts +4 -4
- package/__internal__/src/components/Banner/Banner.js.map +1 -1
- package/__internal__/src/components/BookmarkTabs/BookmarkTabs.js.map +1 -1
- package/__internal__/src/components/BookmarkTabs/types.d.ts +3 -3
- package/__internal__/src/components/BookmarkTabs/types.js.map +1 -1
- package/__internal__/src/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
- package/__internal__/src/components/Breadcrumbs/types.d.ts +2 -2
- package/__internal__/src/components/Breadcrumbs/types.js.map +1 -1
- package/__internal__/src/components/Button/Button.d.ts +4 -4
- package/__internal__/src/components/Button/Button.js.map +1 -1
- package/__internal__/src/components/Card/Card.d.ts +3 -3
- package/__internal__/src/components/Card/Card.js.map +1 -1
- package/__internal__/src/components/Checkbox/Checkbox.css +2 -2
- package/__internal__/src/components/Checkbox/Checkbox.d.ts +3 -3
- package/__internal__/src/components/Checkbox/Checkbox.js.map +1 -1
- package/__internal__/src/components/CheckboxDeprecated/Checkbox.css +2 -2
- package/__internal__/src/components/CheckboxDeprecated/CheckboxDeprecated.d.ts +3 -3
- package/__internal__/src/components/CheckboxDeprecated/CheckboxDeprecated.js.map +1 -1
- package/__internal__/src/components/CheckboxGroup/types.d.ts +4 -4
- package/__internal__/src/components/CheckboxGroup/types.js.map +1 -1
- package/__internal__/src/components/Chips/ChipsItem/ChipsItem.css +2 -2
- package/__internal__/src/components/Chips/types.d.ts +2 -2
- package/__internal__/src/components/Chips/types.js.map +1 -1
- package/__internal__/src/components/ChoiceGroup/ChoiceGroup.js.map +1 -1
- package/__internal__/src/components/ChoiceGroup/types.d.ts +4 -4
- package/__internal__/src/components/ChoiceGroup/types.js.map +1 -1
- package/__internal__/src/components/Collapse/types.d.ts +7 -7
- package/__internal__/src/components/Collapse/types.js.map +1 -1
- package/__internal__/src/components/ColorPicker/ColorControl/ColorControl.css +7 -0
- package/__internal__/src/components/ColorPicker/ColorControl/ColorControl.d.ts +6 -0
- package/__internal__/src/components/ColorPicker/ColorControl/ColorControl.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorControl/ColorControl.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorControl/index.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/ColorControl/index.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorControl/index.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorControl/types.d.ts +6 -0
- package/__internal__/src/components/ColorPicker/ColorControl/types.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorControl/types.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorInputTypeChanger/ColorInputTypeChanger.css +1 -0
- package/__internal__/src/components/ColorPicker/ColorInputTypeChanger/ColorInputTypeChanger.d.ts +4 -0
- package/__internal__/src/components/ColorPicker/ColorInputTypeChanger/ColorInputTypeChanger.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorInputTypeChanger/ColorInputTypeChanger.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorInputTypeChanger/index.d.ts +1 -0
- package/__internal__/src/components/ColorPicker/ColorInputTypeChanger/index.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorInputTypeChanger/index.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorInputTypeChanger/types.d.ts +6 -0
- package/__internal__/src/components/ColorPicker/ColorInputTypeChanger/types.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorInputTypeChanger/types.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorMarker/ColorMarker.css +1 -0
- package/__internal__/src/components/ColorPicker/ColorMarker/ColorMarker.d.ts +16 -0
- package/__internal__/src/components/ColorPicker/ColorMarker/ColorMarker.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorMarker/ColorMarker.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorMarker/index.d.ts +1 -0
- package/__internal__/src/components/ColorPicker/ColorMarker/index.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorMarker/index.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPalette/ColorPalette.d.ts +13 -0
- package/__internal__/src/components/ColorPicker/ColorPalette/ColorPalette.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPalette/ColorPalette.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPalette/index.d.ts +1 -0
- package/__internal__/src/components/ColorPicker/ColorPalette/index.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPalette/index.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPicker/ColorPicker.css +1 -0
- package/__internal__/src/components/ColorPicker/ColorPicker/ColorPicker.d.ts +3 -0
- package/__internal__/src/components/ColorPicker/ColorPicker/ColorPicker.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPicker/ColorPicker.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPicker/index.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/ColorPicker/index.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPicker/index.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPicker/types.d.ts +25 -0
- package/__internal__/src/components/ColorPicker/ColorPicker/types.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPicker/types.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerAlpha/ColorPickerAlpha.css +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerAlpha/ColorPickerAlpha.d.ts +12 -0
- package/__internal__/src/components/ColorPicker/ColorPickerAlpha/ColorPickerAlpha.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerAlpha/ColorPickerAlpha.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerAlpha/index.d.ts +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerAlpha/index.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerAlpha/index.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerBase/ColorPickerBase.d.ts +12 -0
- package/__internal__/src/components/ColorPicker/ColorPickerBase/ColorPickerBase.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerBase/ColorPickerBase.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerBase/index.d.ts +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerBase/index.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerBase/index.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerHue/ColorPickerHue.css +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerHue/ColorPickerHue.d.ts +12 -0
- package/__internal__/src/components/ColorPicker/ColorPickerHue/ColorPickerHue.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerHue/ColorPickerHue.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerHue/index.d.ts +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerHue/index.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerHue/index.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInput/ColorPickerInput.css +3 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInput/ColorPickerInput.d.ts +5 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInput/ColorPickerInput.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInput/ColorPickerInput.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInput/helpers.d.ts +12 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInput/helpers.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInput/helpers.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInput/index.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInput/index.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInput/index.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInput/types.d.ts +25 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInput/types.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInput/types.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInteractive/ColorPickerInteractive.css +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInteractive/ColorPickerInteractive.d.ts +15 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInteractive/ColorPickerInteractive.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInteractive/ColorPickerInteractive.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInteractive/index.d.ts +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInteractive/index.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerInteractive/index.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerPoint/ColorPickerPoint.css +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerPoint/ColorPickerPoint.d.ts +8 -0
- package/__internal__/src/components/ColorPicker/ColorPickerPoint/ColorPickerPoint.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerPoint/ColorPickerPoint.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerPoint/index.d.ts +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerPoint/index.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerPoint/index.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerRoot/ColorPickerRoot.css +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerRoot/ColorPickerRoot.d.ts +16 -0
- package/__internal__/src/components/ColorPicker/ColorPickerRoot/ColorPickerRoot.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerRoot/ColorPickerRoot.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerRoot/index.d.ts +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerRoot/index.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerRoot/index.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerSaturation/ColorPickerSaturation.css +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerSaturation/ColorPickerSaturation.d.ts +13 -0
- package/__internal__/src/components/ColorPicker/ColorPickerSaturation/ColorPickerSaturation.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerSaturation/ColorPickerSaturation.js.map +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerSaturation/index.d.ts +1 -0
- package/__internal__/src/components/ColorPicker/ColorPickerSaturation/index.js +2 -0
- package/__internal__/src/components/ColorPicker/ColorPickerSaturation/index.js.map +1 -0
- package/__internal__/src/components/ColorPicker/hooks/useColorManipulation.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/hooks/useColorManipulation.js +2 -0
- package/__internal__/src/components/ColorPicker/hooks/useColorManipulation.js.map +1 -0
- package/__internal__/src/components/ColorPicker/hooks/useEventCallback.d.ts +1 -0
- package/__internal__/src/components/ColorPicker/hooks/useEventCallback.js +2 -0
- package/__internal__/src/components/ColorPicker/hooks/useEventCallback.js.map +1 -0
- package/__internal__/src/components/ColorPicker/index.d.ts +10 -0
- package/__internal__/src/components/ColorPicker/index.js +2 -0
- package/__internal__/src/components/ColorPicker/index.js.map +1 -0
- package/__internal__/src/components/ColorPicker/models/hexAlphaModel.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/models/hexAlphaModel.js +2 -0
- package/__internal__/src/components/ColorPicker/models/hexAlphaModel.js.map +1 -0
- package/__internal__/src/components/ColorPicker/models/hexModel.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/models/hexModel.js +2 -0
- package/__internal__/src/components/ColorPicker/models/hexModel.js.map +1 -0
- package/__internal__/src/components/ColorPicker/models/hslModel.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/models/hslModel.js +2 -0
- package/__internal__/src/components/ColorPicker/models/hslModel.js.map +1 -0
- package/__internal__/src/components/ColorPicker/models/hslStringModel.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/models/hslStringModel.js +2 -0
- package/__internal__/src/components/ColorPicker/models/hslStringModel.js.map +1 -0
- package/__internal__/src/components/ColorPicker/models/hslaModel.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/models/hslaModel.js +2 -0
- package/__internal__/src/components/ColorPicker/models/hslaModel.js.map +1 -0
- package/__internal__/src/components/ColorPicker/models/hslaStringModel.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/models/hslaStringModel.js +2 -0
- package/__internal__/src/components/ColorPicker/models/hslaStringModel.js.map +1 -0
- package/__internal__/src/components/ColorPicker/models/hsvModel.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/models/hsvModel.js +2 -0
- package/__internal__/src/components/ColorPicker/models/hsvModel.js.map +1 -0
- package/__internal__/src/components/ColorPicker/models/hsvStringModel.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/models/hsvStringModel.js +2 -0
- package/__internal__/src/components/ColorPicker/models/hsvStringModel.js.map +1 -0
- package/__internal__/src/components/ColorPicker/models/hsvaModel.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/models/hsvaModel.js +2 -0
- package/__internal__/src/components/ColorPicker/models/hsvaModel.js.map +1 -0
- package/__internal__/src/components/ColorPicker/models/hsvaStringModel.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/models/hsvaStringModel.js +2 -0
- package/__internal__/src/components/ColorPicker/models/hsvaStringModel.js.map +1 -0
- package/__internal__/src/components/ColorPicker/models/index.d.ts +14 -0
- package/__internal__/src/components/ColorPicker/models/index.js +2 -0
- package/__internal__/src/components/ColorPicker/models/index.js.map +1 -0
- package/__internal__/src/components/ColorPicker/models/rgbModel.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/models/rgbModel.js +2 -0
- package/__internal__/src/components/ColorPicker/models/rgbModel.js.map +1 -0
- package/__internal__/src/components/ColorPicker/models/rgbStringModel.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/models/rgbStringModel.js +2 -0
- package/__internal__/src/components/ColorPicker/models/rgbStringModel.js.map +1 -0
- package/__internal__/src/components/ColorPicker/models/rgbaModel.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/models/rgbaModel.js +2 -0
- package/__internal__/src/components/ColorPicker/models/rgbaModel.js.map +1 -0
- package/__internal__/src/components/ColorPicker/models/rgbaStringModel.d.ts +2 -0
- package/__internal__/src/components/ColorPicker/models/rgbaStringModel.js +2 -0
- package/__internal__/src/components/ColorPicker/models/rgbaStringModel.js.map +1 -0
- package/__internal__/src/components/ColorPicker/types.d.ts +33 -0
- package/__internal__/src/components/ColorPicker/types.js +2 -0
- package/__internal__/src/components/ColorPicker/types.js.map +1 -0
- package/__internal__/src/components/ColorPicker/utils/clamp.d.ts +1 -0
- package/__internal__/src/components/ColorPicker/utils/clamp.js +2 -0
- package/__internal__/src/components/ColorPicker/utils/clamp.js.map +1 -0
- package/__internal__/src/components/ColorPicker/utils/compare.d.ts +4 -0
- package/__internal__/src/components/ColorPicker/utils/compare.js +2 -0
- package/__internal__/src/components/ColorPicker/utils/compare.js.map +1 -0
- package/__internal__/src/components/ColorPicker/utils/convert.d.ts +32 -0
- package/__internal__/src/components/ColorPicker/utils/convert.js +2 -0
- package/__internal__/src/components/ColorPicker/utils/convert.js.map +1 -0
- package/__internal__/src/components/ColorPicker/utils/format.d.ts +1 -0
- package/__internal__/src/components/ColorPicker/utils/format.js +2 -0
- package/__internal__/src/components/ColorPicker/utils/format.js.map +1 -0
- package/__internal__/src/components/ColorPicker/utils/round.d.ts +1 -0
- package/__internal__/src/components/ColorPicker/utils/round.js +2 -0
- package/__internal__/src/components/ColorPicker/utils/round.js.map +1 -0
- package/__internal__/src/components/ColorPicker/utils/validate.d.ts +1 -0
- package/__internal__/src/components/ColorPicker/utils/validate.js +2 -0
- package/__internal__/src/components/ColorPicker/utils/validate.js.map +1 -0
- package/__internal__/src/components/Combobox/Combobox.js +1 -1
- package/__internal__/src/components/Combobox/Combobox.js.map +1 -1
- package/__internal__/src/components/Combobox/helpers.d.ts +3 -1
- package/__internal__/src/components/Combobox/helpers.js.map +1 -1
- package/__internal__/src/components/ContextMenu/ContextMenuLevel/ContextMenuLevel.js.map +1 -1
- package/__internal__/src/components/ContextMenu/ContextMenuLevelWrapper/ContextMenuLevelWrapper.js +1 -1
- package/__internal__/src/components/ContextMenu/ContextMenuLevelWrapper/ContextMenuLevelWrapper.js.map +1 -1
- package/__internal__/src/components/ContextMenu/ContextMenuLevels/ContextMenuLevels.js.map +1 -1
- package/__internal__/src/components/ContextMenu/ContextMenuWrapper/ContextMenuWrapper.js +1 -1
- package/__internal__/src/components/ContextMenu/ContextMenuWrapper/ContextMenuWrapper.js.map +1 -1
- package/__internal__/src/components/ContextMenu/helpers.d.ts +4 -2
- package/__internal__/src/components/ContextMenu/types.d.ts +6 -3
- package/__internal__/src/components/ContextMenu/types.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerDropdown/DatePickerDropdown.d.ts +2 -0
- package/__internal__/src/components/DatePicker/DatePickerDropdown/DatePickerDropdown.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerDropdown/DatePickerDropdown.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerFieldTypeDate/DatePickerFieldTypeDate.d.ts +1 -1
- package/__internal__/src/components/DatePicker/DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime.d.ts +1 -1
- package/__internal__/src/components/DatePicker/DatePickerFieldTypeMonth/DatePickerFieldTypeMonth.d.ts +1 -1
- package/__internal__/src/components/DatePicker/DatePickerFieldTypeTime/DatePickerFieldTypeTime.d.ts +1 -1
- package/__internal__/src/components/DatePicker/DatePickerFieldTypeYear/DatePickerFieldTypeYear.d.ts +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDate/DatePickerTypeDate.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDate/DatePickerTypeDate.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeMonth/DatePickerTypeMonth.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeMonth/DatePickerTypeMonth.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeTime/DatePickerTypeTime.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeTime/DatePickerTypeTime.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeYear/DatePickerTypeYear.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeYear/DatePickerTypeYear.js.map +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.js +1 -1
- package/__internal__/src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.js.map +1 -1
- package/__internal__/src/components/DatePicker/getChangeFnRange.js +1 -1
- package/__internal__/src/components/DatePicker/getChangeFnRange.js.map +1 -1
- package/__internal__/src/components/DatePicker/helpers.js.map +1 -1
- package/__internal__/src/components/DatePicker/types.d.ts +7 -6
- package/__internal__/src/components/DatePicker/types.js.map +1 -1
- package/__internal__/src/components/DateTime/DateTime100YearSlider/DateTime100YearSlider.js +1 -1
- package/__internal__/src/components/DateTime/DateTime100YearSlider/DateTime100YearSlider.js.map +1 -1
- package/__internal__/src/components/DateTime/DateTime10YearSlider/DateTime10YearSlider.js +1 -1
- package/__internal__/src/components/DateTime/DateTime10YearSlider/DateTime10YearSlider.js.map +1 -1
- package/__internal__/src/components/DateTime/DateTimeCell/DateTimeCell.d.ts +1 -1
- package/__internal__/src/components/DateTime/DateTimeCell/DateTimeCell.js.map +1 -1
- package/__internal__/src/components/DateTime/DateTimeGrid/DateTimeGrid.css +1 -1
- package/__internal__/src/components/DateTime/DateTimeTypeDate/DateTimeTypeDate.js +1 -1
- package/__internal__/src/components/DateTime/DateTimeTypeDate/DateTimeTypeDate.js.map +1 -1
- package/__internal__/src/components/DateTime/DateTimeTypeMonth/DateTimeTypeMonth.js +1 -1
- package/__internal__/src/components/DateTime/DateTimeTypeMonth/DateTimeTypeMonth.js.map +1 -1
- package/__internal__/src/components/DateTime/DateTimeTypeYear/DateTimeTypeYear.js +1 -1
- package/__internal__/src/components/DateTime/DateTimeTypeYear/DateTimeTypeYear.js.map +1 -1
- package/__internal__/src/components/DateTime/DateTimeYearSlider/DateTimeYearSlider.js +1 -1
- package/__internal__/src/components/DateTime/DateTimeYearSlider/DateTimeYearSlider.js.map +1 -1
- package/__internal__/src/components/DateTime/helpers/index.js +1 -1
- package/__internal__/src/components/DateTime/helpers/index.js.map +1 -1
- package/__internal__/src/components/DateTime/helpers/types.d.ts +4 -3
- package/__internal__/src/components/DateTime/helpers/types.js.map +1 -1
- package/__internal__/src/components/DragNDropField/DragNDropFieldTooltip/DragNDropFieldTooltip.css +1 -1
- package/__internal__/src/components/DragNDropFieldCanary/types.d.ts +1 -1
- package/__internal__/src/components/DragNDropFieldCanary/types.js.map +1 -1
- package/__internal__/src/components/FieldComponents/FieldControlLayout/FieldControlLayout.css +4 -2
- package/__internal__/src/components/FieldComponents/FieldControlLayout/FieldControlLayout.js +1 -1
- package/__internal__/src/components/FieldComponents/FieldControlLayout/FieldControlLayout.js.map +1 -1
- package/__internal__/src/components/FieldComponents/FieldControlLayout/helpers.d.ts +5 -2
- package/__internal__/src/components/FieldComponents/FieldControlLayout/helpers.js +1 -1
- package/__internal__/src/components/FieldComponents/FieldControlLayout/helpers.js.map +1 -1
- package/__internal__/src/components/FieldComponents/FieldControlLayout/maps.d.ts +1 -0
- package/__internal__/src/components/FieldComponents/FieldControlLayout/maps.js +1 -1
- package/__internal__/src/components/FieldComponents/FieldControlLayout/maps.js.map +1 -1
- package/__internal__/src/components/FieldGroup/getForm.js +1 -1
- package/__internal__/src/components/FieldGroup/getForm.js.map +1 -1
- package/__internal__/src/components/FileCanary/FileCanary.d.ts +1 -0
- package/__internal__/src/components/FileCanary/FileCanary.js +2 -0
- package/__internal__/src/components/FileCanary/FileCanary.js.map +1 -0
- package/__internal__/src/components/FileCanary/FileCanaryBase/FileCanaryBase.css +1 -0
- package/__internal__/src/components/FileCanary/FileCanaryBase/FileCanaryBase.d.ts +4 -0
- package/__internal__/src/components/FileCanary/FileCanaryBase/FileCanaryBase.js +2 -0
- package/__internal__/src/components/FileCanary/FileCanaryBase/FileCanaryBase.js.map +1 -0
- package/__internal__/src/components/FileCanary/config.d.ts +2 -0
- package/__internal__/src/components/FileCanary/config.js +2 -0
- package/__internal__/src/components/FileCanary/config.js.map +1 -0
- package/__internal__/src/components/FileCanary/fileCanaryGenerator.d.ts +2 -0
- package/__internal__/src/components/FileCanary/fileCanaryGenerator.js +2 -0
- package/__internal__/src/components/FileCanary/fileCanaryGenerator.js.map +1 -0
- package/__internal__/src/components/FileCanary/index.d.ts +4 -0
- package/__internal__/src/components/FileCanary/index.js +2 -0
- package/__internal__/src/components/FileCanary/index.js.map +1 -0
- package/__internal__/src/components/FileCanary/types.d.ts +25 -0
- package/__internal__/src/components/FileCanary/types.js +2 -0
- package/__internal__/src/components/FileCanary/types.js.map +1 -0
- package/__internal__/src/components/FlatSelect/FlatSelect.css +8 -8
- package/__internal__/src/components/FlatSelect/FlatSelect.js +1 -1
- package/__internal__/src/components/FlatSelect/FlatSelect.js.map +1 -1
- package/__internal__/src/components/FlatSelect/FlatSelectList/FlatSelectList.d.ts +1 -1
- package/__internal__/src/components/FlatSelect/FlatSelectList/FlatSelectList.js.map +1 -1
- package/__internal__/src/components/FlatSelect/FlatSelectRoot/FlatSelectRoot.d.ts +1 -0
- package/__internal__/src/components/FlatSelect/FlatSelectRoot/FlatSelectRoot.js +1 -1
- package/__internal__/src/components/FlatSelect/FlatSelectRoot/FlatSelectRoot.js.map +1 -1
- package/__internal__/src/components/FlatSelect/types.d.ts +1 -0
- package/__internal__/src/components/FlatSelect/types.js.map +1 -1
- package/__internal__/src/components/Grid/types.d.ts +4 -4
- package/__internal__/src/components/Grid/types.js.map +1 -1
- package/__internal__/src/components/GridDeprecated/Grid.css +1 -1
- package/__internal__/src/components/GridDeprecated/GridDeprecated.d.ts +4 -4
- package/__internal__/src/components/GridDeprecated/GridDeprecated.js.map +1 -1
- package/__internal__/src/components/Informer/Informer.d.ts +3 -3
- package/__internal__/src/components/Informer/Informer.js.map +1 -1
- package/__internal__/src/components/Layout/Layout.d.ts +3 -3
- package/__internal__/src/components/Layout/Layout.js.map +1 -1
- package/__internal__/src/components/Layout/useFixed.d.ts +2 -2
- package/__internal__/src/components/Layout/useFixed.js.map +1 -1
- package/__internal__/src/components/ListCanary/ListCanary.js.map +1 -1
- package/__internal__/src/components/ListCanary/ListItemGrid/ListItemGrid.css +1 -1
- package/__internal__/src/components/ListCanary/types.d.ts +4 -4
- package/__internal__/src/components/ListCanary/types.js.map +1 -1
- package/__internal__/src/components/LoaderDeprecated/Loader.css +2 -2
- package/__internal__/src/components/LoaderDeprecated/LoaderDeprecated.d.ts +1 -1
- package/__internal__/src/components/LoaderDeprecated/LoaderDeprecated.js.map +1 -1
- package/__internal__/src/components/Modal/ModalLayout/ModalLayout.css +4 -4
- package/__internal__/src/components/ModalDeprecated/ModalDeprecated.d.ts +2 -2
- package/__internal__/src/components/ModalDeprecated/ModalDeprecated.js.map +1 -1
- package/__internal__/src/components/Notification/helpers/defaultDateFormat.js +1 -1
- package/__internal__/src/components/Notification/helpers/defaultDateFormat.js.map +1 -1
- package/__internal__/src/components/Pagination/types.d.ts +3 -3
- package/__internal__/src/components/Pagination/types.js.map +1 -1
- package/__internal__/src/components/PaginationDeprecated/PaginationDeprecated.d.ts +4 -4
- package/__internal__/src/components/PaginationDeprecated/PaginationDeprecated.js.map +1 -1
- package/__internal__/src/components/Popover/Popover.d.ts +2 -2
- package/__internal__/src/components/Popover/Popover.js.map +1 -1
- package/__internal__/src/components/ProgressLine/ProgressLine.css +1 -1
- package/__internal__/src/components/ProgressLine/types.d.ts +1 -1
- package/__internal__/src/components/ProgressLine/types.js.map +1 -1
- package/__internal__/src/components/ProgressSpin/ProgressSpin.d.ts +1 -1
- package/__internal__/src/components/ProgressSpin/ProgressSpin.js.map +1 -1
- package/__internal__/src/components/ProgressStepBar/ProgressStepBarItem/ProgressStepBarItem.css +8 -8
- package/__internal__/src/components/ProgressStepBar/helpers.d.ts +5 -5
- package/__internal__/src/components/ProgressStepBar/helpers.js.map +1 -1
- package/__internal__/src/components/Radio/Radio.css +1 -1
- package/__internal__/src/components/Radio/Radio.d.ts +3 -3
- package/__internal__/src/components/Radio/Radio.js.map +1 -1
- package/__internal__/src/components/RadioGroup/types.d.ts +4 -4
- package/__internal__/src/components/RadioGroup/types.js.map +1 -1
- package/__internal__/src/components/Responses/Responses.d.ts +1 -1
- package/__internal__/src/components/Responses/Responses.js.map +1 -1
- package/__internal__/src/components/Select/Select.js +1 -1
- package/__internal__/src/components/Select/Select.js.map +1 -1
- package/__internal__/src/components/Select/helpers.d.ts +3 -1
- package/__internal__/src/components/Select/helpers.js.map +1 -1
- package/__internal__/src/components/SelectCanary/SelectDropdown/SelectDropdown.d.ts +2 -1
- package/__internal__/src/components/SelectCanary/SelectDropdown/SelectDropdown.js +1 -1
- package/__internal__/src/components/SelectCanary/SelectDropdown/SelectDropdown.js.map +1 -1
- package/__internal__/src/components/SelectCanary/SelectMultiple/SelectMultiple.css +2 -2
- package/__internal__/src/components/SelectCanary/SelectMultiple/SelectMultiple.js +1 -1
- package/__internal__/src/components/SelectCanary/SelectMultiple/SelectMultiple.js.map +1 -1
- package/__internal__/src/components/SelectCanary/SelectMultiple/__test__/SelectMultiple.test.js +1 -1
- package/__internal__/src/components/SelectCanary/SelectMultiple/__test__/SelectMultiple.test.js.map +1 -1
- package/__internal__/src/components/SelectCanary/SelectPopover/SelectPopover.d.ts +2 -1
- package/__internal__/src/components/SelectCanary/SelectPopover/SelectPopover.js +1 -1
- package/__internal__/src/components/SelectCanary/SelectPopover/SelectPopover.js.map +1 -1
- package/__internal__/src/components/SelectCanary/SelectSingle/SelectSingle.js +1 -1
- package/__internal__/src/components/SelectCanary/SelectSingle/SelectSingle.js.map +1 -1
- package/__internal__/src/components/SelectCanary/SelectSingle/__test__/SelectSingle.test.js +1 -1
- package/__internal__/src/components/SelectCanary/SelectSingle/__test__/SelectSingle.test.js.map +1 -1
- package/__internal__/src/components/SelectCanary/helpers.d.ts +2 -1
- package/__internal__/src/components/SelectCanary/types.d.ts +1 -0
- package/__internal__/src/components/SelectCanary/types.js.map +1 -1
- package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.d.ts +2 -1
- package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.js +1 -1
- package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.js.map +1 -1
- package/__internal__/src/components/SelectComponents/SelectValueTag/SelectValueTag.css +1 -1
- package/__internal__/src/components/SelectComponents/types.d.ts +4 -4
- package/__internal__/src/components/SelectComponents/types.js.map +1 -1
- package/__internal__/src/components/SelectComponents/useSelect/useSelect.js +1 -1
- package/__internal__/src/components/SelectComponents/useSelect/useSelect.js.map +1 -1
- package/__internal__/src/components/SelectComponentsDeprecated/SelectDropdown/SelectDropdown.d.ts +1 -1
- package/__internal__/src/components/SelectComponentsDeprecated/SelectDropdown/SelectDropdown.js.map +1 -1
- package/__internal__/src/components/SelectComponentsDeprecated/SelectValueTag/SelectValueTag.css +1 -1
- package/__internal__/src/components/SelectComponentsDeprecated/types.d.ts +4 -4
- package/__internal__/src/components/SelectComponentsDeprecated/types.js.map +1 -1
- package/__internal__/src/components/Sidebar/types.d.ts +2 -2
- package/__internal__/src/components/Sidebar/types.js.map +1 -1
- package/__internal__/src/components/SidebarDeprecated/SidebarDeprecated.d.ts +2 -2
- package/__internal__/src/components/SidebarDeprecated/SidebarDeprecated.js.map +1 -1
- package/__internal__/src/components/Skeleton/Skeleton.css +1 -1
- package/__internal__/src/components/Slider/helper.d.ts +2 -2
- package/__internal__/src/components/Slider/helper.js.map +1 -1
- package/__internal__/src/components/SnackBar/types.d.ts +4 -4
- package/__internal__/src/components/SnackBar/types.js.map +1 -1
- package/__internal__/src/components/Spoiler/types.d.ts +2 -2
- package/__internal__/src/components/Spoiler/types.js.map +1 -1
- package/__internal__/src/components/Steps/StepsStep/StepsStep.css +1 -1
- package/__internal__/src/components/Steps/types.d.ts +1 -1
- package/__internal__/src/components/Steps/types.js.map +1 -1
- package/__internal__/src/components/Switch/Switch.css +1 -1
- package/__internal__/src/components/Switch/types.d.ts +3 -3
- package/__internal__/src/components/Switch/types.js.map +1 -1
- package/__internal__/src/components/SwitchGroup/types.d.ts +1 -1
- package/__internal__/src/components/SwitchGroup/types.js.map +1 -1
- package/__internal__/src/components/Table/Cell/TableCell.css +1 -1
- package/__internal__/src/components/Table/Cell/TableCell.d.ts +2 -2
- package/__internal__/src/components/Table/Cell/TableCell.js.map +1 -1
- package/__internal__/src/components/Table/Header/TableHeader.d.ts +1 -1
- package/__internal__/src/components/Table/Header/TableHeader.js.map +1 -1
- package/__internal__/src/components/Table/Table.d.ts +3 -3
- package/__internal__/src/components/Table/Table.js.map +1 -1
- package/__internal__/src/components/Table/__mock__/data.mock.d.ts +10 -10
- package/__internal__/src/components/Table/__mock__/data.mock.js.map +1 -1
- package/__internal__/src/components/Table/helpers.d.ts +1 -1
- package/__internal__/src/components/Table/helpers.js.map +1 -1
- package/__internal__/src/components/Tabs/Tabs.js.map +1 -1
- package/__internal__/src/components/Tabs/types.d.ts +4 -4
- package/__internal__/src/components/Tabs/types.js.map +1 -1
- package/__internal__/src/components/Tag/Tag.d.ts +1 -1
- package/__internal__/src/components/Tag/Tag.js.map +1 -1
- package/__internal__/src/components/TagBase/TagBase.d.ts +3 -3
- package/__internal__/src/components/TagBase/TagBase.js.map +1 -1
- package/__internal__/src/components/Text/Text.d.ts +13 -13
- package/__internal__/src/components/Text/Text.js.map +1 -1
- package/__internal__/src/components/TextAreaAutoSize/TextAreaAutoSize.css +1 -1
- package/__internal__/src/components/TextDeprecated/TextDeprecated.d.ts +13 -13
- package/__internal__/src/components/TextDeprecated/TextDeprecated.js.map +1 -1
- package/__internal__/src/components/TextField/types.d.ts +4 -4
- package/__internal__/src/components/TextField/types.js.map +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeNumber/TextFieldTypeNumber.js +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeNumber/TextFieldTypeNumber.js.map +1 -1
- package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArea/TextFieldTypeTextArea.css +2 -2
- package/__internal__/src/components/TextFieldCanary/useTextField.js.map +1 -1
- package/__internal__/src/components/Theme/_font/Silkscreen-Regular.woff +0 -0
- package/__internal__/src/components/Theme/_font/Silkscreen-Regular.woff2 +0 -0
- package/__internal__/src/components/Theme/_font/Theme_font_gpnDefault.css +1 -1
- package/__internal__/src/components/ThemeToggler/ThemeToggler.js.map +1 -1
- package/__internal__/src/components/ThemeToggler/types.d.ts +1 -1
- package/__internal__/src/components/ThemeToggler/types.js.map +1 -1
- package/__internal__/src/components/Timer/Timer.d.ts +1 -1
- package/__internal__/src/components/Timer/Timer.js.map +1 -1
- package/__internal__/src/components/Tooltip/types.d.ts +2 -2
- package/__internal__/src/components/Tooltip/types.js.map +1 -1
- package/__internal__/src/components/TooltipDeprecated/TooltipDeprecated.d.ts +2 -2
- package/__internal__/src/components/TooltipDeprecated/TooltipDeprecated.js.map +1 -1
- package/__internal__/src/components/User/User.css +1 -1
- package/__internal__/src/components/User/User.d.ts +4 -4
- package/__internal__/src/components/User/User.js.map +1 -1
- package/__internal__/src/components/UserSelect/UserSelect.js +1 -1
- package/__internal__/src/components/UserSelect/UserSelect.js.map +1 -1
- package/__internal__/src/components/UserSelect/UserSelectItem/UserSelectItem.css +1 -1
- package/__internal__/src/components/UserSelect/helpers.d.ts +3 -1
- package/__internal__/src/components/UserSelect/helpers.js.map +1 -1
- package/__internal__/src/fileIcons/FileIcon/FileIcon.d.ts +1 -1
- package/__internal__/src/fileIcons/FileIcon/FileIcon.js.map +1 -1
- package/__internal__/src/hocs/withTooltip/withTooltip.d.ts +1 -1
- package/__internal__/src/hocs/withTooltip/withTooltip.js.map +1 -1
- package/__internal__/src/hooks/useBreakpointsDeprecated/useBreakpointsDeprecated.d.ts +1 -1
- package/__internal__/src/hooks/useBreakpointsDeprecated/useBreakpointsDeprecated.js.map +1 -1
- package/__internal__/src/hooks/useRefs/useRefs.js.map +1 -1
- package/__internal__/src/hooks/useStyleProps/types.js.map +1 -1
- package/__internal__/src/mixs/MixCard/MixCard.d.ts +2 -2
- package/__internal__/src/mixs/MixCard/MixCard.js.map +1 -1
- package/__internal__/src/mixs/MixFlex/MixFlex.d.ts +5 -5
- package/__internal__/src/mixs/MixFlex/MixFlex.js.map +1 -1
- package/__internal__/src/mixs/MixScrollBar/MixScrollBar.d.ts +2 -2
- package/__internal__/src/mixs/MixScrollBar/MixScrollBar.js.map +1 -1
- package/__internal__/src/mixs/MixVisuallyHidden/MixVisuallyHidden.css +1 -1
- package/__internal__/src/utils/array.js.map +1 -1
- package/__internal__/src/utils/date/index.js +1 -1
- package/__internal__/src/utils/date/index.js.map +1 -1
- package/package.json +3 -3
|
@@ -4,16 +4,16 @@ import React from 'react';
|
|
|
4
4
|
import { MixSpaceProps, Space } from '../../mixs/MixSpace';
|
|
5
5
|
import { PropsWithJsxAttributes } from '../../utils/types/PropsWithJsxAttributes';
|
|
6
6
|
export declare const bannerPropSize: readonly ["xs", "s", "m", "l"];
|
|
7
|
-
export type BannerPropSize = typeof bannerPropSize[number];
|
|
7
|
+
export type BannerPropSize = (typeof bannerPropSize)[number];
|
|
8
8
|
export declare const bannerPropSizeDefault: BannerPropSize;
|
|
9
9
|
export declare const bannerPropView: readonly ["filled", "ghost", "transparent"];
|
|
10
|
-
export type BannerPropView = typeof bannerPropView[number];
|
|
10
|
+
export type BannerPropView = (typeof bannerPropView)[number];
|
|
11
11
|
export declare const bannerPropViewDefault: BannerPropView;
|
|
12
12
|
export declare const bannerPropStatus: readonly ["normal", "warning", "alert", "success", "system"];
|
|
13
|
-
export type BannerPropStatus = typeof bannerPropStatus[number];
|
|
13
|
+
export type BannerPropStatus = (typeof bannerPropStatus)[number];
|
|
14
14
|
export declare const bannerPropStatusDefault: BannerPropStatus;
|
|
15
15
|
export declare const bannerPropForm: readonly ["default", "round", "brick"];
|
|
16
|
-
export type BannerPropForm = typeof bannerPropForm[number];
|
|
16
|
+
export type BannerPropForm = (typeof bannerPropForm)[number];
|
|
17
17
|
export declare const bannerPropFormDefault: BannerPropForm;
|
|
18
18
|
export type BannerProps = PropsWithJsxAttributes<{
|
|
19
19
|
leftSide?: React.ReactNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Banner.js","names":["React","forwardRef","cnText","Text","useTheme","cnMixFlex","cnMixSpace","cn","isNotNil","isString","bannerPropSize","bannerPropSizeDefault","bannerPropView","bannerPropViewDefault","bannerPropStatus","bannerPropStatusDefault","bannerPropForm","bannerPropFormDefault","cnBanner","SlotWrapper","children","renderSlot","slot","index","position","renderSlots","Array","isArray","filter","map","item","getGap","gap","textSizeMap","xs","s","m","l","controlSizeMap","Banner","props","ref","leftSide","rightSide","Icon","icon","size","view","className","space","itemsGap","status","style","form","otherProps","themeClassNames","leftSlots","rightSlots","justify","length","align","pH","pV","color","accent"],"sources":["../../../../../src/components/Banner/Banner.tsx"],"sourcesContent":["import './Banner.css';\n\nimport { IconComponent } from '@consta/icons/Icon';\nimport React, { forwardRef } from 'react';\n\nimport { cnText, Text } from '##/components/Text';\nimport { useTheme } from '##/components/Theme/Theme';\nimport { cnMixFlex } from '##/mixs/MixFlex';\nimport { cnMixSpace, MixSpaceProps, Space } from '##/mixs/MixSpace';\nimport { cn } from '##/utils/bem';\nimport { isNotNil, isString } from '##/utils/type-guards';\nimport { PropsWithJsxAttributes } from '##/utils/types/PropsWithJsxAttributes';\n\nexport const bannerPropSize = ['xs', 's', 'm', 'l'] as const;\nexport type BannerPropSize = typeof bannerPropSize[number];\nexport const bannerPropSizeDefault: BannerPropSize = bannerPropSize[2]; // 'm'\n\nexport const bannerPropView = ['filled', 'ghost', 'transparent'] as const;\nexport type BannerPropView = typeof bannerPropView[number];\nexport const bannerPropViewDefault: BannerPropView = bannerPropView[0]; // 'filled'\n\nexport const bannerPropStatus = [\n 'normal',\n 'warning',\n 'alert',\n 'success',\n 'system',\n] as const;\nexport type BannerPropStatus = typeof bannerPropStatus[number];\nexport const bannerPropStatusDefault: BannerPropStatus = bannerPropStatus[0]; // 'normal'\n\nexport const bannerPropForm = ['default', 'round', 'brick'] as const;\nexport type BannerPropForm = typeof bannerPropForm[number];\nexport const bannerPropFormDefault: BannerPropForm = bannerPropForm[0]; // 'default'\n\nexport type BannerProps = PropsWithJsxAttributes<{\n leftSide?: React.ReactNode;\n rightSide?: React.ReactNode;\n icon?: IconComponent;\n size?: BannerPropSize;\n view?: BannerPropView;\n space?: MixSpaceProps;\n itemsGap?: Space | [Space, Space];\n status?: BannerPropStatus;\n form?: BannerPropForm;\n}>;\n\nexport const cnBanner = cn('Banner');\n\nconst SlotWrapper: React.FC<{ children: React.ReactNode }> = ({ children }) => (\n <div className={cnBanner('Slot')}>{children}</div>\n);\n\nconst renderSlot = (slot: React.ReactNode, index: number, position: number) => {\n if (isString(slot)) {\n return (\n <SlotWrapper key={cnBanner('Slot', { index, position })}>\n <Text\n className={cnBanner('Text')}\n view=\"primary\"\n weight={index === 0 && position === 0 ? 'bold' : undefined}\n lineHeight=\"m\"\n >\n {slot}\n </Text>\n </SlotWrapper>\n );\n }\n\n return (\n <SlotWrapper key={cnBanner('Slot', { index, position })}>\n {slot}\n </SlotWrapper>\n );\n};\n\nconst renderSlots = (slot: React.ReactNode, position: number) => {\n if (Array.isArray(slot)) {\n return slot\n .filter(isNotNil)\n .map((item, index) => renderSlot(item, index, position));\n }\n return renderSlots([slot], position);\n};\n\nconst getGap = (gap: Space | [Space, Space], index: number) => {\n if (Array.isArray(gap)) {\n return gap[index];\n }\n return gap;\n};\n\nconst textSizeMap: Record<BannerPropSize, 'xs' | 's' | 'm' | 'l'> = {\n xs: 's',\n s: 's',\n m: 'm',\n l: 'l',\n};\n\nconst controlSizeMap: Record<BannerPropSize, 'xs' | 's' | 'm'> = {\n xs: 'xs',\n s: 's',\n m: 's',\n l: 'm',\n};\n\n/**\n * Компонент Banner, отображающий содержимое слева и справа.\n * Поддерживает иконки, размеры, виды, статусы и формы.\n *\n * @property {React.ReactNode} [leftSide] - Содержимое на левой стороне.\n * @property {React.ReactNode} [rightSide] - Содержимое на правой стороне.\n * @property {IconComponent} [icon] - Иконка.\n * @property {BannerPropSize} [size] - Размер компонента.\n * @property {BannerPropView} [view] - Визуальный стиль.\n * @property {MixSpaceProps} [space] - Параметры отступов.\n * @property {Space | [Space, Space]} [itemsGap] - Отступы между элементами.\n * @property {BannerPropStatus} [status] - Статус (цветовая схема).\n * @property {BannerPropForm} [form] - Форма компонента.\n */\n\nexport const Banner = forwardRef<HTMLDivElement, BannerProps>((props, ref) => {\n const {\n leftSide,\n rightSide,\n icon: Icon,\n size = bannerPropSizeDefault,\n view = bannerPropViewDefault,\n className,\n space,\n itemsGap = 's',\n status = bannerPropStatusDefault,\n style,\n form = bannerPropFormDefault,\n ...otherProps\n } = props;\n\n const { themeClassNames } = useTheme();\n\n const leftSlots = renderSlots(\n [\n Icon ? <Icon className={cnBanner('Icon')} /> : null,\n ...(Array.isArray(leftSide) ? leftSide : [leftSide]),\n ],\n 0,\n );\n\n const rightSlots = renderSlots(rightSide, 1);\n\n return (\n <div\n {...otherProps}\n className={cnBanner({ view, form, size }, [\n cnMixFlex({\n justify:\n rightSlots.length && !leftSlots.length\n ? 'flex-end'\n : 'space-between',\n align: 'center',\n gap: 'm',\n }),\n cnMixSpace(space || { pH: size, pV: 'xs' }),\n cnText({ size: textSizeMap[size] }),\n status !== 'system' && view === 'filled'\n ? themeClassNames.color.accent\n : undefined,\n className,\n ])}\n style={{\n ...style,\n ['--banner-bg-color' as string]: `var(--color-bg-${status})`,\n ['--banner-inner-height' as string]: `var(--control-height-${controlSizeMap[size]})`,\n }}\n ref={ref}\n >\n {leftSlots.length ? (\n <div\n className={cnMixFlex({ gap: getGap(itemsGap, 0), align: 'center' })}\n >\n {leftSlots}\n </div>\n ) : undefined}\n {rightSlots.length ? (\n <div\n className={cnMixFlex({ gap: getGap(itemsGap, 1), align: 'center' })}\n >\n {rightSlots}\n </div>\n ) : undefined}\n </div>\n );\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Banner.js","names":["React","forwardRef","cnText","Text","useTheme","cnMixFlex","cnMixSpace","cn","isNotNil","isString","bannerPropSize","bannerPropSizeDefault","bannerPropView","bannerPropViewDefault","bannerPropStatus","bannerPropStatusDefault","bannerPropForm","bannerPropFormDefault","cnBanner","SlotWrapper","children","renderSlot","slot","index","position","renderSlots","Array","isArray","filter","map","item","getGap","gap","textSizeMap","xs","s","m","l","controlSizeMap","Banner","props","ref","leftSide","rightSide","Icon","icon","size","view","className","space","itemsGap","status","style","form","otherProps","themeClassNames","leftSlots","rightSlots","justify","length","align","pH","pV","color","accent"],"sources":["../../../../../src/components/Banner/Banner.tsx"],"sourcesContent":["import './Banner.css';\n\nimport { IconComponent } from '@consta/icons/Icon';\nimport React, { forwardRef } from 'react';\n\nimport { cnText, Text } from '##/components/Text';\nimport { useTheme } from '##/components/Theme/Theme';\nimport { cnMixFlex } from '##/mixs/MixFlex';\nimport { cnMixSpace, MixSpaceProps, Space } from '##/mixs/MixSpace';\nimport { cn } from '##/utils/bem';\nimport { isNotNil, isString } from '##/utils/type-guards';\nimport { PropsWithJsxAttributes } from '##/utils/types/PropsWithJsxAttributes';\n\nexport const bannerPropSize = ['xs', 's', 'm', 'l'] as const;\nexport type BannerPropSize = (typeof bannerPropSize)[number];\nexport const bannerPropSizeDefault: BannerPropSize = bannerPropSize[2]; // 'm'\n\nexport const bannerPropView = ['filled', 'ghost', 'transparent'] as const;\nexport type BannerPropView = (typeof bannerPropView)[number];\nexport const bannerPropViewDefault: BannerPropView = bannerPropView[0]; // 'filled'\n\nexport const bannerPropStatus = [\n 'normal',\n 'warning',\n 'alert',\n 'success',\n 'system',\n] as const;\nexport type BannerPropStatus = (typeof bannerPropStatus)[number];\nexport const bannerPropStatusDefault: BannerPropStatus = bannerPropStatus[0]; // 'normal'\n\nexport const bannerPropForm = ['default', 'round', 'brick'] as const;\nexport type BannerPropForm = (typeof bannerPropForm)[number];\nexport const bannerPropFormDefault: BannerPropForm = bannerPropForm[0]; // 'default'\n\nexport type BannerProps = PropsWithJsxAttributes<{\n leftSide?: React.ReactNode;\n rightSide?: React.ReactNode;\n icon?: IconComponent;\n size?: BannerPropSize;\n view?: BannerPropView;\n space?: MixSpaceProps;\n itemsGap?: Space | [Space, Space];\n status?: BannerPropStatus;\n form?: BannerPropForm;\n}>;\n\nexport const cnBanner = cn('Banner');\n\nconst SlotWrapper: React.FC<{ children: React.ReactNode }> = ({ children }) => (\n <div className={cnBanner('Slot')}>{children}</div>\n);\n\nconst renderSlot = (slot: React.ReactNode, index: number, position: number) => {\n if (isString(slot)) {\n return (\n <SlotWrapper key={cnBanner('Slot', { index, position })}>\n <Text\n className={cnBanner('Text')}\n view=\"primary\"\n weight={index === 0 && position === 0 ? 'bold' : undefined}\n lineHeight=\"m\"\n >\n {slot}\n </Text>\n </SlotWrapper>\n );\n }\n\n return (\n <SlotWrapper key={cnBanner('Slot', { index, position })}>\n {slot}\n </SlotWrapper>\n );\n};\n\nconst renderSlots = (slot: React.ReactNode, position: number) => {\n if (Array.isArray(slot)) {\n return slot\n .filter(isNotNil)\n .map((item, index) => renderSlot(item, index, position));\n }\n return renderSlots([slot], position);\n};\n\nconst getGap = (gap: Space | [Space, Space], index: number) => {\n if (Array.isArray(gap)) {\n return gap[index];\n }\n return gap;\n};\n\nconst textSizeMap: Record<BannerPropSize, 'xs' | 's' | 'm' | 'l'> = {\n xs: 's',\n s: 's',\n m: 'm',\n l: 'l',\n};\n\nconst controlSizeMap: Record<BannerPropSize, 'xs' | 's' | 'm'> = {\n xs: 'xs',\n s: 's',\n m: 's',\n l: 'm',\n};\n\n/**\n * Компонент Banner, отображающий содержимое слева и справа.\n * Поддерживает иконки, размеры, виды, статусы и формы.\n *\n * @property {React.ReactNode} [leftSide] - Содержимое на левой стороне.\n * @property {React.ReactNode} [rightSide] - Содержимое на правой стороне.\n * @property {IconComponent} [icon] - Иконка.\n * @property {BannerPropSize} [size] - Размер компонента.\n * @property {BannerPropView} [view] - Визуальный стиль.\n * @property {MixSpaceProps} [space] - Параметры отступов.\n * @property {Space | [Space, Space]} [itemsGap] - Отступы между элементами.\n * @property {BannerPropStatus} [status] - Статус (цветовая схема).\n * @property {BannerPropForm} [form] - Форма компонента.\n */\n\nexport const Banner = forwardRef<HTMLDivElement, BannerProps>((props, ref) => {\n const {\n leftSide,\n rightSide,\n icon: Icon,\n size = bannerPropSizeDefault,\n view = bannerPropViewDefault,\n className,\n space,\n itemsGap = 's',\n status = bannerPropStatusDefault,\n style,\n form = bannerPropFormDefault,\n ...otherProps\n } = props;\n\n const { themeClassNames } = useTheme();\n\n const leftSlots = renderSlots(\n [\n Icon ? <Icon className={cnBanner('Icon')} /> : null,\n ...(Array.isArray(leftSide) ? leftSide : [leftSide]),\n ],\n 0,\n );\n\n const rightSlots = renderSlots(rightSide, 1);\n\n return (\n <div\n {...otherProps}\n className={cnBanner({ view, form, size }, [\n cnMixFlex({\n justify:\n rightSlots.length && !leftSlots.length\n ? 'flex-end'\n : 'space-between',\n align: 'center',\n gap: 'm',\n }),\n cnMixSpace(space || { pH: size, pV: 'xs' }),\n cnText({ size: textSizeMap[size] }),\n status !== 'system' && view === 'filled'\n ? themeClassNames.color.accent\n : undefined,\n className,\n ])}\n style={{\n ...style,\n ['--banner-bg-color' as string]: `var(--color-bg-${status})`,\n ['--banner-inner-height' as string]: `var(--control-height-${controlSizeMap[size]})`,\n }}\n ref={ref}\n >\n {leftSlots.length ? (\n <div\n className={cnMixFlex({ gap: getGap(itemsGap, 0), align: 'center' })}\n >\n {leftSlots}\n </div>\n ) : undefined}\n {rightSlots.length ? (\n <div\n className={cnMixFlex({ gap: getGap(itemsGap, 1), align: 'center' })}\n >\n {rightSlots}\n </div>\n ) : undefined}\n </div>\n );\n});\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BookmarkTabs.js","names":["IconAdd","IconArrowLeft","IconArrowRight","React","forwardRef","useMemo","useState","useComponentSize","useForkRef","cnMixScrollBar","cn","Button","BookmarkTabsTab","withDefaultGetters","bookmarkTabsPropFormDefault","bookmarkTabsPropSizeDefault","bookmarkTabsPropViewDefault","useBookmarkTabs","cnBookmarkTabs","renderItemDefault","props","_item","item","attributes","as","otherProps","BookmarkTabsRender","ref","items","value","onCreate","getItemKey","getItemLabel","getItemLeftIcon","getItemRightIcon","getItemAs","getItemRef","getItemAttributes","getItemFixed","onChange","onRemove","renderItem","renderItemProp","size","form","view","withNavigationButtons","onMouseLeaveProp","onMouseLeave","className","id","highlightedIndex","setHighlightedIndex","getItemActive","withAddButton","refs","fixedTabs","fixedTabsRef","otherTabs","otherTabsRef","showControls","wrapperRef","containerRef","controlsRef","addButtonRef","navigate","sizes","fixedWidth","width","fixed","controlRef","bordered","index","tabWidth","onClick","e","active","label","leftIcon","rightIcon","tabRef","onClose","hovered","borderedIndexes","arr","activeIndex","indexOf","Array","from","length","keys","slice","filter","el","invisible","map","includes","type","BookmarkTabs"],"sources":["../../../../../src/components/BookmarkTabs/BookmarkTabs.tsx"],"sourcesContent":["import './BookmarkTabs.css';\n\nimport { IconAdd } from '@consta/icons/IconAdd';\nimport { IconArrowLeft } from '@consta/icons/IconArrowLeft';\nimport { IconArrowRight } from '@consta/icons/IconArrowRight';\nimport React, { forwardRef, useMemo, useState } from 'react';\n\nimport { useComponentSize } from '##/hooks/useComponentSize';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { cnMixScrollBar } from '##/mixs/MixScrollBar';\nimport { cn } from '##/utils/bem';\n\nimport { Button } from '../Button';\nimport { BookmarkTabsTab } from './BookmarkTabsTab';\nimport { withDefaultGetters } from './helper';\nimport {\n BookmarkTabsComponent,\n bookmarkTabsPropFormDefault,\n BookmarkTabsProps,\n bookmarkTabsPropSizeDefault,\n bookmarkTabsPropViewDefault,\n BookmarkTabsRenderItemProps,\n} from './types';\nimport { useBookmarkTabs } from './useBookmarkTabs';\n\nexport const cnBookmarkTabs = cn('BookmarkTabs');\n\nconst renderItemDefault = <ITEM,>(\n props: BookmarkTabsRenderItemProps<ITEM>,\n): React.ReactNode => {\n const { item: _item, attributes = {}, as, ...otherProps } = props;\n return <BookmarkTabsTab {...attributes} {...otherProps} as={as} />;\n};\n\nconst BookmarkTabsRender = (\n props: BookmarkTabsProps,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const {\n items = [],\n value,\n onCreate,\n getItemKey,\n getItemLabel,\n getItemLeftIcon,\n getItemRightIcon,\n getItemAs,\n getItemRef,\n getItemAttributes,\n getItemFixed,\n onChange,\n onRemove,\n renderItem: renderItemProp = renderItemDefault,\n size = bookmarkTabsPropSizeDefault,\n form = bookmarkTabsPropFormDefault,\n view = bookmarkTabsPropViewDefault,\n withNavigationButtons,\n onMouseLeave: onMouseLeaveProp,\n className,\n id,\n ...otherProps\n } = withDefaultGetters(props);\n\n const [highlightedIndex, setHighlightedIndex] = useState<number | null>(null);\n\n type Item = typeof items[number];\n\n const getItemActive = (item: Item) => {\n return value ? getItemKey(item) === getItemKey(value) : false;\n };\n\n const {\n refs,\n fixedTabs,\n fixedTabsRef,\n otherTabs,\n otherTabsRef,\n showControls,\n wrapperRef,\n containerRef,\n controlsRef,\n addButtonRef,\n navigate,\n sizes,\n } = useBookmarkTabs({\n items,\n getItemFixed,\n size,\n withNavigationButtons,\n withAddButton: !!onCreate,\n });\n\n const { width: fixedWidth } = useComponentSize(fixedTabsRef);\n\n const renderItem = (\n item: Item,\n fixed: boolean,\n controlRef: React.RefObject<HTMLDivElement>,\n bordered: boolean,\n index: number,\n tabWidth?: string,\n ) => (\n <div\n className={cnBookmarkTabs('Tab')}\n onMouseEnter={() => setHighlightedIndex(index)}\n onFocus={() => setHighlightedIndex(index)}\n ref={controlRef}\n >\n {renderItemProp({\n item,\n onClick: (e) => onChange?.(item, { e }),\n active: getItemActive(item),\n label: getItemLabel(item),\n leftIcon: getItemLeftIcon(item),\n rightIcon: getItemRightIcon(item),\n as: getItemAs(item) ?? 'div',\n attributes: getItemAttributes(item),\n tabRef: getItemRef(item),\n fixed,\n bordered,\n onClose: onRemove ? (e) => onRemove(item, { e }) : undefined,\n size,\n view,\n hovered: highlightedIndex === index,\n form,\n tabWidth,\n })}\n </div>\n );\n\n const onMouseLeave: React.MouseEventHandler<HTMLDivElement> = (e) => {\n onMouseLeaveProp?.(e);\n setHighlightedIndex(null);\n };\n\n const borderedIndexes = useMemo(() => {\n const arr = [...fixedTabs, ...otherTabs];\n const activeIndex = value ? arr.indexOf(value) : -1;\n return Array.from(Array(arr.length).keys())\n .slice(undefined, -1)\n .filter((el) =>\n form === 'round' ? el !== activeIndex && el !== activeIndex - 1 : true,\n );\n }, [fixedTabs, otherTabs, value, form]);\n\n return (\n <div\n className={cnBookmarkTabs({ size, view, form }, [className])}\n ref={useForkRef([ref, containerRef])}\n id={id}\n onMouseLeave={onMouseLeave}\n {...otherProps}\n >\n {showControls && (\n <div ref={controlsRef} className={cnBookmarkTabs('ScrollControls')}>\n <div className={cnBookmarkTabs('Button')}>\n <Button\n view=\"clear\"\n size=\"xs\"\n type=\"button\"\n onClick={() => navigate('prev')}\n iconLeft={IconArrowLeft}\n onlyIcon\n />\n </div>\n <div className={cnBookmarkTabs('Button')}>\n <Button\n view=\"clear\"\n size=\"xs\"\n type=\"button\"\n onClick={() => navigate('next')}\n iconLeft={IconArrowRight}\n onlyIcon\n />\n </div>\n </div>\n )}\n <div\n ref={wrapperRef}\n className={cnBookmarkTabs(\n 'Wrapper',\n cnMixScrollBar({ invisible: true }),\n )}\n >\n <div\n style={{\n ['--bookmarks-list-width' as string]: `max-content`,\n }}\n ref={fixedTabsRef}\n className={cnBookmarkTabs('List')}\n >\n {fixedTabs.map((item, index) => (\n <React.Fragment key={getItemKey(item)}>\n {renderItem(\n item,\n true,\n refs[index],\n borderedIndexes.includes(index),\n index,\n )}\n </React.Fragment>\n ))}\n </div>\n <div\n style={{\n ['--bookmarks-list-width' as string]: `calc(100% - ${fixedWidth}px)`,\n }}\n className={cnBookmarkTabs('List')}\n ref={otherTabsRef}\n >\n {otherTabs.map((item, index) => {\n const { length } = fixedTabs;\n return (\n <React.Fragment key={getItemKey(item)}>\n {renderItem(\n item,\n false,\n refs[length + index],\n borderedIndexes.includes(length + index),\n length + index,\n sizes[index],\n )}\n </React.Fragment>\n );\n })}\n </div>\n </div>\n {onCreate && (\n <div\n ref={addButtonRef}\n className={cnBookmarkTabs('Button', { type: 'add' })}\n >\n <Button\n view=\"clear\"\n size=\"xs\"\n type=\"button\"\n onClick={onCreate}\n iconLeft={IconAdd}\n onlyIcon\n />\n </div>\n )}\n <div className={cnBookmarkTabs('Empty')} />\n </div>\n );\n};\n\nexport const BookmarkTabs = forwardRef(\n BookmarkTabsRender,\n) as BookmarkTabsComponent;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BookmarkTabs.js","names":["IconAdd","IconArrowLeft","IconArrowRight","React","forwardRef","useMemo","useState","useComponentSize","useForkRef","cnMixScrollBar","cn","Button","BookmarkTabsTab","withDefaultGetters","bookmarkTabsPropFormDefault","bookmarkTabsPropSizeDefault","bookmarkTabsPropViewDefault","useBookmarkTabs","cnBookmarkTabs","renderItemDefault","props","_item","item","attributes","as","otherProps","BookmarkTabsRender","ref","items","value","onCreate","getItemKey","getItemLabel","getItemLeftIcon","getItemRightIcon","getItemAs","getItemRef","getItemAttributes","getItemFixed","onChange","onRemove","renderItem","renderItemProp","size","form","view","withNavigationButtons","onMouseLeaveProp","onMouseLeave","className","id","highlightedIndex","setHighlightedIndex","getItemActive","withAddButton","refs","fixedTabs","fixedTabsRef","otherTabs","otherTabsRef","showControls","wrapperRef","containerRef","controlsRef","addButtonRef","navigate","sizes","fixedWidth","width","fixed","controlRef","bordered","index","tabWidth","onClick","e","active","label","leftIcon","rightIcon","tabRef","onClose","hovered","borderedIndexes","arr","activeIndex","indexOf","Array","from","length","keys","slice","filter","el","invisible","map","includes","type","BookmarkTabs"],"sources":["../../../../../src/components/BookmarkTabs/BookmarkTabs.tsx"],"sourcesContent":["import './BookmarkTabs.css';\n\nimport { IconAdd } from '@consta/icons/IconAdd';\nimport { IconArrowLeft } from '@consta/icons/IconArrowLeft';\nimport { IconArrowRight } from '@consta/icons/IconArrowRight';\nimport React, { forwardRef, useMemo, useState } from 'react';\n\nimport { useComponentSize } from '##/hooks/useComponentSize';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { cnMixScrollBar } from '##/mixs/MixScrollBar';\nimport { cn } from '##/utils/bem';\n\nimport { Button } from '../Button';\nimport { BookmarkTabsTab } from './BookmarkTabsTab';\nimport { withDefaultGetters } from './helper';\nimport {\n BookmarkTabsComponent,\n bookmarkTabsPropFormDefault,\n BookmarkTabsProps,\n bookmarkTabsPropSizeDefault,\n bookmarkTabsPropViewDefault,\n BookmarkTabsRenderItemProps,\n} from './types';\nimport { useBookmarkTabs } from './useBookmarkTabs';\n\nexport const cnBookmarkTabs = cn('BookmarkTabs');\n\nconst renderItemDefault = <ITEM,>(\n props: BookmarkTabsRenderItemProps<ITEM>,\n): React.ReactNode => {\n const { item: _item, attributes = {}, as, ...otherProps } = props;\n return <BookmarkTabsTab {...attributes} {...otherProps} as={as} />;\n};\n\nconst BookmarkTabsRender = (\n props: BookmarkTabsProps,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const {\n items = [],\n value,\n onCreate,\n getItemKey,\n getItemLabel,\n getItemLeftIcon,\n getItemRightIcon,\n getItemAs,\n getItemRef,\n getItemAttributes,\n getItemFixed,\n onChange,\n onRemove,\n renderItem: renderItemProp = renderItemDefault,\n size = bookmarkTabsPropSizeDefault,\n form = bookmarkTabsPropFormDefault,\n view = bookmarkTabsPropViewDefault,\n withNavigationButtons,\n onMouseLeave: onMouseLeaveProp,\n className,\n id,\n ...otherProps\n } = withDefaultGetters(props);\n\n const [highlightedIndex, setHighlightedIndex] = useState<number | null>(null);\n\n type Item = (typeof items)[number];\n\n const getItemActive = (item: Item) => {\n return value ? getItemKey(item) === getItemKey(value) : false;\n };\n\n const {\n refs,\n fixedTabs,\n fixedTabsRef,\n otherTabs,\n otherTabsRef,\n showControls,\n wrapperRef,\n containerRef,\n controlsRef,\n addButtonRef,\n navigate,\n sizes,\n } = useBookmarkTabs({\n items,\n getItemFixed,\n size,\n withNavigationButtons,\n withAddButton: !!onCreate,\n });\n\n const { width: fixedWidth } = useComponentSize(fixedTabsRef);\n\n const renderItem = (\n item: Item,\n fixed: boolean,\n controlRef: React.RefObject<HTMLDivElement>,\n bordered: boolean,\n index: number,\n tabWidth?: string,\n ) => (\n <div\n className={cnBookmarkTabs('Tab')}\n onMouseEnter={() => setHighlightedIndex(index)}\n onFocus={() => setHighlightedIndex(index)}\n ref={controlRef}\n >\n {renderItemProp({\n item,\n onClick: (e) => onChange?.(item, { e }),\n active: getItemActive(item),\n label: getItemLabel(item),\n leftIcon: getItemLeftIcon(item),\n rightIcon: getItemRightIcon(item),\n as: getItemAs(item) ?? 'div',\n attributes: getItemAttributes(item),\n tabRef: getItemRef(item),\n fixed,\n bordered,\n onClose: onRemove ? (e) => onRemove(item, { e }) : undefined,\n size,\n view,\n hovered: highlightedIndex === index,\n form,\n tabWidth,\n })}\n </div>\n );\n\n const onMouseLeave: React.MouseEventHandler<HTMLDivElement> = (e) => {\n onMouseLeaveProp?.(e);\n setHighlightedIndex(null);\n };\n\n const borderedIndexes = useMemo(() => {\n const arr = [...fixedTabs, ...otherTabs];\n const activeIndex = value ? arr.indexOf(value) : -1;\n return Array.from(Array(arr.length).keys())\n .slice(undefined, -1)\n .filter((el) =>\n form === 'round' ? el !== activeIndex && el !== activeIndex - 1 : true,\n );\n }, [fixedTabs, otherTabs, value, form]);\n\n return (\n <div\n className={cnBookmarkTabs({ size, view, form }, [className])}\n ref={useForkRef([ref, containerRef])}\n id={id}\n onMouseLeave={onMouseLeave}\n {...otherProps}\n >\n {showControls && (\n <div ref={controlsRef} className={cnBookmarkTabs('ScrollControls')}>\n <div className={cnBookmarkTabs('Button')}>\n <Button\n view=\"clear\"\n size=\"xs\"\n type=\"button\"\n onClick={() => navigate('prev')}\n iconLeft={IconArrowLeft}\n onlyIcon\n />\n </div>\n <div className={cnBookmarkTabs('Button')}>\n <Button\n view=\"clear\"\n size=\"xs\"\n type=\"button\"\n onClick={() => navigate('next')}\n iconLeft={IconArrowRight}\n onlyIcon\n />\n </div>\n </div>\n )}\n <div\n ref={wrapperRef}\n className={cnBookmarkTabs(\n 'Wrapper',\n cnMixScrollBar({ invisible: true }),\n )}\n >\n <div\n style={{\n ['--bookmarks-list-width' as string]: `max-content`,\n }}\n ref={fixedTabsRef}\n className={cnBookmarkTabs('List')}\n >\n {fixedTabs.map((item, index) => (\n <React.Fragment key={getItemKey(item)}>\n {renderItem(\n item,\n true,\n refs[index],\n borderedIndexes.includes(index),\n index,\n )}\n </React.Fragment>\n ))}\n </div>\n <div\n style={{\n ['--bookmarks-list-width' as string]: `calc(100% - ${fixedWidth}px)`,\n }}\n className={cnBookmarkTabs('List')}\n ref={otherTabsRef}\n >\n {otherTabs.map((item, index) => {\n const { length } = fixedTabs;\n return (\n <React.Fragment key={getItemKey(item)}>\n {renderItem(\n item,\n false,\n refs[length + index],\n borderedIndexes.includes(length + index),\n length + index,\n sizes[index],\n )}\n </React.Fragment>\n );\n })}\n </div>\n </div>\n {onCreate && (\n <div\n ref={addButtonRef}\n className={cnBookmarkTabs('Button', { type: 'add' })}\n >\n <Button\n view=\"clear\"\n size=\"xs\"\n type=\"button\"\n onClick={onCreate}\n iconLeft={IconAdd}\n onlyIcon\n />\n </div>\n )}\n <div className={cnBookmarkTabs('Empty')} />\n </div>\n );\n};\n\nexport const BookmarkTabs = forwardRef(\n BookmarkTabsRender,\n) as BookmarkTabsComponent;\n"],"mappings":"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"}
|
|
@@ -4,13 +4,13 @@ import { AsAttributes, AsTags } from '../../utils/types/AsTags';
|
|
|
4
4
|
import { PropsWithAsAttributes } from '../../utils/types/PropsWithAsAttributes';
|
|
5
5
|
import { PropsWithHTMLAttributesAndRef } from '../../utils/types/PropsWithHTMLAttributes';
|
|
6
6
|
export declare const bookmarkTabsPropSize: readonly ["m", "s"];
|
|
7
|
-
export type BookmarkTabsPropSize = typeof bookmarkTabsPropSize[number];
|
|
7
|
+
export type BookmarkTabsPropSize = (typeof bookmarkTabsPropSize)[number];
|
|
8
8
|
export declare const bookmarkTabsPropSizeDefault: BookmarkTabsPropSize;
|
|
9
9
|
export declare const bookmarkTabsPropForm: readonly ["brick", "round"];
|
|
10
|
-
export type BookmarkTabsPropForm = typeof bookmarkTabsPropForm[number];
|
|
10
|
+
export type BookmarkTabsPropForm = (typeof bookmarkTabsPropForm)[number];
|
|
11
11
|
export declare const bookmarkTabsPropFormDefault: BookmarkTabsPropForm;
|
|
12
12
|
export declare const bookmarkTabsPropView: readonly ["ghost", "clear"];
|
|
13
|
-
export type BookmarkTabsPropView = typeof bookmarkTabsPropView[number];
|
|
13
|
+
export type BookmarkTabsPropView = (typeof bookmarkTabsPropView)[number];
|
|
14
14
|
export declare const bookmarkTabsPropViewDefault: BookmarkTabsPropView;
|
|
15
15
|
export type BookmarkTabsItemDefault = {
|
|
16
16
|
key: string | number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":["bookmarkTabsPropSize","bookmarkTabsPropSizeDefault","bookmarkTabsPropForm","bookmarkTabsPropFormDefault","bookmarkTabsPropView","bookmarkTabsPropViewDefault"],"sources":["../../../../../src/components/BookmarkTabs/types.ts"],"sourcesContent":["import { IconComponent } from '@consta/icons/Icon';\nimport React from 'react';\n\nimport { AsAttributes, AsTags } from '##/utils/types/AsTags';\nimport { PropsWithAsAttributes } from '##/utils/types/PropsWithAsAttributes';\nimport { PropsWithHTMLAttributesAndRef } from '##/utils/types/PropsWithHTMLAttributes';\n\nexport const bookmarkTabsPropSize = ['m', 's'] as const;\nexport type BookmarkTabsPropSize = typeof bookmarkTabsPropSize[number];\nexport const bookmarkTabsPropSizeDefault: BookmarkTabsPropSize =\n bookmarkTabsPropSize[0];\n\nexport const bookmarkTabsPropForm = ['brick', 'round'] as const;\nexport type BookmarkTabsPropForm = typeof bookmarkTabsPropForm[number];\nexport const bookmarkTabsPropFormDefault: BookmarkTabsPropForm =\n bookmarkTabsPropForm[0];\n\nexport const bookmarkTabsPropView = ['ghost', 'clear'] as const;\nexport type BookmarkTabsPropView = typeof bookmarkTabsPropView[number];\nexport const bookmarkTabsPropViewDefault: BookmarkTabsPropView =\n bookmarkTabsPropView[0];\n\nexport type BookmarkTabsItemDefault = {\n key: string | number;\n label?: string | number;\n leftIcon?: IconComponent;\n rightIcon?: IconComponent;\n fixed?: boolean;\n as?: AsTags;\n ref?: React.RefObject<HTMLElement>;\n attributes?: AsAttributes;\n};\n\nexport type BookmarkTabsPropGetItemKey<ITEM> = (item: ITEM) => string | number;\nexport type BookmarkTabsPropGetItemLabel<ITEM> = (\n item: ITEM,\n) => string | number | undefined;\nexport type BookmarkTabsPropGetItemLeftIcon<ITEM> = (\n item: ITEM,\n) => IconComponent | undefined;\nexport type BookmarkTabsPropGetItemRightIcon<ITEM> = (\n item: ITEM,\n) => IconComponent | undefined;\nexport type BookmarkTabsPropGetItemFixed<ITEM> = (\n item: ITEM,\n) => boolean | undefined;\nexport type BookmarkTabsPropGetItemAs<ITEM> = (\n item: ITEM,\n) => AsTags | undefined;\nexport type BookmarkTabsPropGetItemRef<ITEM> = (\n item: ITEM,\n) => React.RefObject<HTMLElement> | undefined;\nexport type BookmarkTabsPropGetItemAttributes<ITEM> = (\n item: ITEM,\n) => AsAttributes | undefined;\n\nexport type BookmarkTabsPropOnChange<ITEM> = (\n value: ITEM,\n params: {\n e: React.MouseEvent;\n },\n) => void;\n\nexport type BookmarkTabsRenderItemProps<ITEM> = {\n item: ITEM;\n hovered?: boolean;\n onClick: React.MouseEventHandler;\n active?: boolean;\n onClose?: React.MouseEventHandler;\n size: BookmarkTabsPropSize;\n form: BookmarkTabsPropForm;\n view: BookmarkTabsPropView;\n bordered?: boolean;\n tabWidth?: string;\n tabRef?: React.RefObject<HTMLElement>;\n} & Omit<BookmarkTabsItemDefault, 'key' | 'ref'>;\n\nexport type BookmarkTabsPropRenderItem<ITEM> = (\n props: BookmarkTabsRenderItemProps<ITEM>,\n) => React.ReactNode | null;\n\nexport type BookmarkTabsPropOnRemove<ITEM> = (\n item: ITEM,\n params: { e: React.MouseEvent },\n) => void;\n\nexport type BookmarkTabsProps<ITEM = BookmarkTabsItemDefault> =\n PropsWithHTMLAttributesAndRef<\n {\n size?: BookmarkTabsPropSize;\n form?: BookmarkTabsPropForm;\n view?: BookmarkTabsPropView;\n items: ITEM[];\n value?: ITEM | null;\n getItemKey?: BookmarkTabsPropGetItemKey<ITEM>;\n getItemLabel?: BookmarkTabsPropGetItemLabel<ITEM>;\n getItemLeftIcon?: BookmarkTabsPropGetItemLeftIcon<ITEM>;\n getItemRightIcon?: BookmarkTabsPropGetItemRightIcon<ITEM>;\n getItemFixed?: BookmarkTabsPropGetItemFixed<ITEM>;\n getItemAs?: BookmarkTabsPropGetItemAs<ITEM>;\n getItemRef?: BookmarkTabsPropGetItemRef<ITEM>;\n getItemAttributes?: BookmarkTabsPropGetItemAttributes<ITEM>;\n children?: never;\n withNavigationButtons?: boolean;\n onCreate?: React.MouseEventHandler;\n onRemove?: BookmarkTabsPropOnRemove<ITEM>;\n onChange?: BookmarkTabsPropOnChange<ITEM>;\n renderItem?: BookmarkTabsPropRenderItem<ITEM>;\n },\n HTMLDivElement\n > &\n (ITEM extends { key: string | number }\n ? {}\n : {\n getItemKey: BookmarkTabsPropGetItemKey<ITEM>;\n });\n\nexport type BookmarkTabsComponent = <ITEM>(\n props: BookmarkTabsProps<ITEM>,\n) => React.ReactNode | null;\n\nexport type BookmarkTabsTabProps<AS extends AsTags = 'div'> =\n PropsWithAsAttributes<\n {\n hovered?: boolean;\n size: BookmarkTabsPropSize;\n form: BookmarkTabsPropForm;\n view: BookmarkTabsPropView;\n active?: boolean;\n tabWidth?: string;\n bordered?: boolean;\n tabRef?: React.RefObject<HTMLElement>;\n fixed?: boolean;\n onClose?: React.ReactEventHandler;\n },\n AS\n > &\n Omit<BookmarkTabsItemDefault, 'key' | 'attributes' | 'ref'>;\n\nexport type BookmarkTabsTabComponent = <AS extends AsTags = 'div'>(\n props: BookmarkTabsTabProps<AS>,\n) => React.ReactNode | null;\n"],"mappings":"AAOA,MAAO,IAAMA,qBAAoB,CAAG,CAAC,GAAD,CAAM,GAAN,CAA7B,CAEP,MAAO,IAAMC,4BAAiD,CAC5DD,oBAAoB,CAAC,CAAD,CADf,CAGP,MAAO,IAAME,qBAAoB,CAAG,CAAC,OAAD,CAAU,OAAV,CAA7B,CAEP,MAAO,IAAMC,4BAAiD,CAC5DD,oBAAoB,CAAC,CAAD,CADf,CAGP,MAAO,IAAME,qBAAoB,CAAG,CAAC,OAAD,CAAU,OAAV,CAA7B,CAEP,MAAO,IAAMC,4BAAiD,CAC5DD,oBAAoB,CAAC,CAAD,CADf"}
|
|
1
|
+
{"version":3,"file":"types.js","names":["bookmarkTabsPropSize","bookmarkTabsPropSizeDefault","bookmarkTabsPropForm","bookmarkTabsPropFormDefault","bookmarkTabsPropView","bookmarkTabsPropViewDefault"],"sources":["../../../../../src/components/BookmarkTabs/types.ts"],"sourcesContent":["import { IconComponent } from '@consta/icons/Icon';\nimport React from 'react';\n\nimport { AsAttributes, AsTags } from '##/utils/types/AsTags';\nimport { PropsWithAsAttributes } from '##/utils/types/PropsWithAsAttributes';\nimport { PropsWithHTMLAttributesAndRef } from '##/utils/types/PropsWithHTMLAttributes';\n\nexport const bookmarkTabsPropSize = ['m', 's'] as const;\nexport type BookmarkTabsPropSize = (typeof bookmarkTabsPropSize)[number];\nexport const bookmarkTabsPropSizeDefault: BookmarkTabsPropSize =\n bookmarkTabsPropSize[0];\n\nexport const bookmarkTabsPropForm = ['brick', 'round'] as const;\nexport type BookmarkTabsPropForm = (typeof bookmarkTabsPropForm)[number];\nexport const bookmarkTabsPropFormDefault: BookmarkTabsPropForm =\n bookmarkTabsPropForm[0];\n\nexport const bookmarkTabsPropView = ['ghost', 'clear'] as const;\nexport type BookmarkTabsPropView = (typeof bookmarkTabsPropView)[number];\nexport const bookmarkTabsPropViewDefault: BookmarkTabsPropView =\n bookmarkTabsPropView[0];\n\nexport type BookmarkTabsItemDefault = {\n key: string | number;\n label?: string | number;\n leftIcon?: IconComponent;\n rightIcon?: IconComponent;\n fixed?: boolean;\n as?: AsTags;\n ref?: React.RefObject<HTMLElement>;\n attributes?: AsAttributes;\n};\n\nexport type BookmarkTabsPropGetItemKey<ITEM> = (item: ITEM) => string | number;\nexport type BookmarkTabsPropGetItemLabel<ITEM> = (\n item: ITEM,\n) => string | number | undefined;\nexport type BookmarkTabsPropGetItemLeftIcon<ITEM> = (\n item: ITEM,\n) => IconComponent | undefined;\nexport type BookmarkTabsPropGetItemRightIcon<ITEM> = (\n item: ITEM,\n) => IconComponent | undefined;\nexport type BookmarkTabsPropGetItemFixed<ITEM> = (\n item: ITEM,\n) => boolean | undefined;\nexport type BookmarkTabsPropGetItemAs<ITEM> = (\n item: ITEM,\n) => AsTags | undefined;\nexport type BookmarkTabsPropGetItemRef<ITEM> = (\n item: ITEM,\n) => React.RefObject<HTMLElement> | undefined;\nexport type BookmarkTabsPropGetItemAttributes<ITEM> = (\n item: ITEM,\n) => AsAttributes | undefined;\n\nexport type BookmarkTabsPropOnChange<ITEM> = (\n value: ITEM,\n params: {\n e: React.MouseEvent;\n },\n) => void;\n\nexport type BookmarkTabsRenderItemProps<ITEM> = {\n item: ITEM;\n hovered?: boolean;\n onClick: React.MouseEventHandler;\n active?: boolean;\n onClose?: React.MouseEventHandler;\n size: BookmarkTabsPropSize;\n form: BookmarkTabsPropForm;\n view: BookmarkTabsPropView;\n bordered?: boolean;\n tabWidth?: string;\n tabRef?: React.RefObject<HTMLElement>;\n} & Omit<BookmarkTabsItemDefault, 'key' | 'ref'>;\n\nexport type BookmarkTabsPropRenderItem<ITEM> = (\n props: BookmarkTabsRenderItemProps<ITEM>,\n) => React.ReactNode | null;\n\nexport type BookmarkTabsPropOnRemove<ITEM> = (\n item: ITEM,\n params: { e: React.MouseEvent },\n) => void;\n\nexport type BookmarkTabsProps<ITEM = BookmarkTabsItemDefault> =\n PropsWithHTMLAttributesAndRef<\n {\n size?: BookmarkTabsPropSize;\n form?: BookmarkTabsPropForm;\n view?: BookmarkTabsPropView;\n items: ITEM[];\n value?: ITEM | null;\n getItemKey?: BookmarkTabsPropGetItemKey<ITEM>;\n getItemLabel?: BookmarkTabsPropGetItemLabel<ITEM>;\n getItemLeftIcon?: BookmarkTabsPropGetItemLeftIcon<ITEM>;\n getItemRightIcon?: BookmarkTabsPropGetItemRightIcon<ITEM>;\n getItemFixed?: BookmarkTabsPropGetItemFixed<ITEM>;\n getItemAs?: BookmarkTabsPropGetItemAs<ITEM>;\n getItemRef?: BookmarkTabsPropGetItemRef<ITEM>;\n getItemAttributes?: BookmarkTabsPropGetItemAttributes<ITEM>;\n children?: never;\n withNavigationButtons?: boolean;\n onCreate?: React.MouseEventHandler;\n onRemove?: BookmarkTabsPropOnRemove<ITEM>;\n onChange?: BookmarkTabsPropOnChange<ITEM>;\n renderItem?: BookmarkTabsPropRenderItem<ITEM>;\n },\n HTMLDivElement\n > &\n (ITEM extends { key: string | number }\n ? {}\n : {\n getItemKey: BookmarkTabsPropGetItemKey<ITEM>;\n });\n\nexport type BookmarkTabsComponent = <ITEM>(\n props: BookmarkTabsProps<ITEM>,\n) => React.ReactNode | null;\n\nexport type BookmarkTabsTabProps<AS extends AsTags = 'div'> =\n PropsWithAsAttributes<\n {\n hovered?: boolean;\n size: BookmarkTabsPropSize;\n form: BookmarkTabsPropForm;\n view: BookmarkTabsPropView;\n active?: boolean;\n tabWidth?: string;\n bordered?: boolean;\n tabRef?: React.RefObject<HTMLElement>;\n fixed?: boolean;\n onClose?: React.ReactEventHandler;\n },\n AS\n > &\n Omit<BookmarkTabsItemDefault, 'key' | 'attributes' | 'ref'>;\n\nexport type BookmarkTabsTabComponent = <AS extends AsTags = 'div'>(\n props: BookmarkTabsTabProps<AS>,\n) => React.ReactNode | null;\n"],"mappings":"AAOA,MAAO,IAAMA,qBAAoB,CAAG,CAAC,GAAD,CAAM,GAAN,CAA7B,CAEP,MAAO,IAAMC,4BAAiD,CAC5DD,oBAAoB,CAAC,CAAD,CADf,CAGP,MAAO,IAAME,qBAAoB,CAAG,CAAC,OAAD,CAAU,OAAV,CAA7B,CAEP,MAAO,IAAMC,4BAAiD,CAC5DD,oBAAoB,CAAC,CAAD,CADf,CAGP,MAAO,IAAME,qBAAoB,CAAG,CAAC,OAAD,CAAU,OAAV,CAA7B,CAEP,MAAO,IAAMC,4BAAiD,CAC5DD,oBAAoB,CAAC,CAAD,CADf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Breadcrumbs.js","names":["React","forwardRef","cn","BreadcrumbsFitModeDropdown","BreadcrumbsFitModeScroll","BreadcrumbsItem","withDefaultGetters","breadcrumbPropFitModeDefault","breadcrumbPropSizeDefault","cnBreadcrumbs","BreadcrumbsRender","props","ref","items","getItemHref","getItemLabel","getItemIcon","getItemOnClick","getItemSubMenu","onItemClick","size","onlyIconRoot","className","fitMode","lastItemIsLink","otherProps","shortList","length","renderItem","item","index","isFirst","isLast","hidden","handleClick","e","map","Breadcrumbs"],"sources":["../../../../../src/components/Breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import './Breadcrumbs.css';\n\nimport React, { forwardRef } from 'react';\n\nimport { cn } from '../../utils/bem';\nimport { BreadcrumbsFitModeDropdown } from './BreadcrumbsFitModeDropdown/BreadcrumbsFitModeDropdown';\nimport { BreadcrumbsFitModeScroll } from './BreadcrumbsFitModeScroll/BreadcrumbsFitModeScroll';\nimport { BreadcrumbsItem } from './BreadcrumbsItem/BreadcrumbsItem';\nimport { withDefaultGetters } from './helpers';\nimport {\n breadcrumbPropFitModeDefault,\n breadcrumbPropSizeDefault,\n BreadcrumbsComponent,\n BreadcrumbsPropOnItemClick,\n BreadcrumbsProps,\n RenderItem,\n} from './types';\n\nexport const cnBreadcrumbs = cn('Breadcrumbs');\n\nconst BreadcrumbsRender = (\n props: BreadcrumbsProps,\n ref: React.Ref<HTMLUListElement>,\n) => {\n const {\n items,\n getItemHref,\n getItemLabel,\n getItemIcon,\n getItemOnClick,\n getItemSubMenu,\n onItemClick,\n size = breadcrumbPropSizeDefault,\n onlyIconRoot = false,\n className,\n fitMode = breadcrumbPropFitModeDefault,\n lastItemIsLink,\n ...otherProps\n } = withDefaultGetters(props);\n\n type Item = typeof items[number];\n\n const shortList = items.length <= 2;\n\n const renderItem: RenderItem<Item> = (\n item,\n index,\n isFirst,\n isLast,\n ref,\n hidden,\n ) => {\n if (item === undefined) {\n return;\n }\n\n const handleClick: BreadcrumbsPropOnItemClick<Item> = (item, { e }) => {\n getItemOnClick?.(item)?.(e);\n onItemClick?.(item, { e });\n };\n\n return (\n <BreadcrumbsItem\n className={cnBreadcrumbs('Item', { hidden })}\n item={item}\n getItemHref={getItemHref}\n getItemIcon={getItemIcon}\n getItemLabel={getItemLabel}\n getItemSubMenu={getItemSubMenu}\n onItemClick={handleClick}\n active={lastItemIsLink ? false : isLast}\n delimiter={!isFirst}\n onlyIcon={onlyIconRoot && isFirst}\n key={cnBreadcrumbs('Item', { index })}\n size={size}\n ref={ref}\n />\n );\n };\n\n if (items.length <= 2) {\n return (\n <ul\n {...otherProps}\n className={cnBreadcrumbs({ shortList }, [className])}\n ref={ref}\n >\n {items.map((item, index) =>\n renderItem(item, index, index === 0, index === items.length - 1),\n )}\n </ul>\n );\n }\n\n if (fitMode === 'scroll') {\n return (\n <BreadcrumbsFitModeScroll\n {...otherProps}\n className={cnBreadcrumbs(null, [className])}\n items={items}\n renderItem={renderItem}\n ref={ref}\n />\n );\n }\n\n return (\n <BreadcrumbsFitModeDropdown\n {...otherProps}\n size={size}\n className={cnBreadcrumbs(null, [className])}\n items={items}\n getItemHref={getItemHref}\n getItemIcon={getItemIcon}\n getItemLabel={getItemLabel}\n getItemOnClick={getItemOnClick}\n getItemSubMenu={getItemSubMenu}\n onItemClick={onItemClick}\n ref={ref}\n renderItem={renderItem}\n />\n );\n};\n\nexport const Breadcrumbs = forwardRef(\n BreadcrumbsRender,\n) as BreadcrumbsComponent;\n\nexport * from './types';\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Breadcrumbs.js","names":["React","forwardRef","cn","BreadcrumbsFitModeDropdown","BreadcrumbsFitModeScroll","BreadcrumbsItem","withDefaultGetters","breadcrumbPropFitModeDefault","breadcrumbPropSizeDefault","cnBreadcrumbs","BreadcrumbsRender","props","ref","items","getItemHref","getItemLabel","getItemIcon","getItemOnClick","getItemSubMenu","onItemClick","size","onlyIconRoot","className","fitMode","lastItemIsLink","otherProps","shortList","length","renderItem","item","index","isFirst","isLast","hidden","handleClick","e","map","Breadcrumbs"],"sources":["../../../../../src/components/Breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import './Breadcrumbs.css';\n\nimport React, { forwardRef } from 'react';\n\nimport { cn } from '../../utils/bem';\nimport { BreadcrumbsFitModeDropdown } from './BreadcrumbsFitModeDropdown/BreadcrumbsFitModeDropdown';\nimport { BreadcrumbsFitModeScroll } from './BreadcrumbsFitModeScroll/BreadcrumbsFitModeScroll';\nimport { BreadcrumbsItem } from './BreadcrumbsItem/BreadcrumbsItem';\nimport { withDefaultGetters } from './helpers';\nimport {\n breadcrumbPropFitModeDefault,\n breadcrumbPropSizeDefault,\n BreadcrumbsComponent,\n BreadcrumbsPropOnItemClick,\n BreadcrumbsProps,\n RenderItem,\n} from './types';\n\nexport const cnBreadcrumbs = cn('Breadcrumbs');\n\nconst BreadcrumbsRender = (\n props: BreadcrumbsProps,\n ref: React.Ref<HTMLUListElement>,\n) => {\n const {\n items,\n getItemHref,\n getItemLabel,\n getItemIcon,\n getItemOnClick,\n getItemSubMenu,\n onItemClick,\n size = breadcrumbPropSizeDefault,\n onlyIconRoot = false,\n className,\n fitMode = breadcrumbPropFitModeDefault,\n lastItemIsLink,\n ...otherProps\n } = withDefaultGetters(props);\n\n type Item = (typeof items)[number];\n\n const shortList = items.length <= 2;\n\n const renderItem: RenderItem<Item> = (\n item,\n index,\n isFirst,\n isLast,\n ref,\n hidden,\n ) => {\n if (item === undefined) {\n return;\n }\n\n const handleClick: BreadcrumbsPropOnItemClick<Item> = (item, { e }) => {\n getItemOnClick?.(item)?.(e);\n onItemClick?.(item, { e });\n };\n\n return (\n <BreadcrumbsItem\n className={cnBreadcrumbs('Item', { hidden })}\n item={item}\n getItemHref={getItemHref}\n getItemIcon={getItemIcon}\n getItemLabel={getItemLabel}\n getItemSubMenu={getItemSubMenu}\n onItemClick={handleClick}\n active={lastItemIsLink ? false : isLast}\n delimiter={!isFirst}\n onlyIcon={onlyIconRoot && isFirst}\n key={cnBreadcrumbs('Item', { index })}\n size={size}\n ref={ref}\n />\n );\n };\n\n if (items.length <= 2) {\n return (\n <ul\n {...otherProps}\n className={cnBreadcrumbs({ shortList }, [className])}\n ref={ref}\n >\n {items.map((item, index) =>\n renderItem(item, index, index === 0, index === items.length - 1),\n )}\n </ul>\n );\n }\n\n if (fitMode === 'scroll') {\n return (\n <BreadcrumbsFitModeScroll\n {...otherProps}\n className={cnBreadcrumbs(null, [className])}\n items={items}\n renderItem={renderItem}\n ref={ref}\n />\n );\n }\n\n return (\n <BreadcrumbsFitModeDropdown\n {...otherProps}\n size={size}\n className={cnBreadcrumbs(null, [className])}\n items={items}\n getItemHref={getItemHref}\n getItemIcon={getItemIcon}\n getItemLabel={getItemLabel}\n getItemOnClick={getItemOnClick}\n getItemSubMenu={getItemSubMenu}\n onItemClick={onItemClick}\n ref={ref}\n renderItem={renderItem}\n />\n );\n};\n\nexport const Breadcrumbs = forwardRef(\n BreadcrumbsRender,\n) as BreadcrumbsComponent;\n\nexport * from './types';\n"],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { IconComponent } from '@consta/icons/Icon';
|
|
2
2
|
import { PropsWithHTMLAttributesAndRef } from '../../utils/types/PropsWithHTMLAttributes';
|
|
3
3
|
export declare const breadcrumbPropSize: readonly ["m", "xs", "s", "l"];
|
|
4
|
-
export type BreadcrumbPropSize = typeof breadcrumbPropSize[number];
|
|
4
|
+
export type BreadcrumbPropSize = (typeof breadcrumbPropSize)[number];
|
|
5
5
|
export declare const breadcrumbPropSizeDefault: "m";
|
|
6
6
|
export declare const breadcrumbPropFitMode: readonly ["dropdown", "scroll"];
|
|
7
|
-
export type BreadcrumbPropFitMode = typeof breadcrumbPropFitMode[number];
|
|
7
|
+
export type BreadcrumbPropFitMode = (typeof breadcrumbPropFitMode)[number];
|
|
8
8
|
export declare const breadcrumbPropFitModeDefault: "dropdown";
|
|
9
9
|
export type BreadcrumbsPropGetItemLabel<ITEM> = (item: ITEM) => string;
|
|
10
10
|
export type BreadcrumbsPropGetItemHref<ITEM> = (item: ITEM) => string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":["breadcrumbPropSize","breadcrumbPropSizeDefault","breadcrumbPropFitMode","breadcrumbPropFitModeDefault"],"sources":["../../../../../src/components/Breadcrumbs/types.ts"],"sourcesContent":["import { IconComponent } from '@consta/icons/Icon';\n\nimport { PropsWithHTMLAttributesAndRef } from '../../utils/types/PropsWithHTMLAttributes';\n\nexport const breadcrumbPropSize = ['m', 'xs', 's', 'l'] as const;\nexport type BreadcrumbPropSize = typeof breadcrumbPropSize[number];\nexport const breadcrumbPropSizeDefault = breadcrumbPropSize[0];\n\nexport const breadcrumbPropFitMode = ['dropdown', 'scroll'] as const;\nexport type BreadcrumbPropFitMode = typeof breadcrumbPropFitMode[number];\nexport const breadcrumbPropFitModeDefault = breadcrumbPropFitMode[0];\n\nexport type BreadcrumbsPropGetItemLabel<ITEM> = (item: ITEM) => string;\nexport type BreadcrumbsPropGetItemHref<ITEM> = (\n item: ITEM,\n) => string | undefined;\nexport type BreadcrumbsPropGetItemIcon<ITEM> = (\n item: ITEM,\n) => IconComponent | undefined;\nexport type BreadcrumbsPropGetItemSubMenu<ITEM> = (\n item: ITEM,\n) => ITEM[] | undefined;\nexport type BreadcrumbsPropGetItemOnClick<ITEM> = (\n item: ITEM,\n) => React.MouseEventHandler | undefined;\nexport type BreadcrumbsPropOnItemClick<ITEM> = (\n item: ITEM,\n props: {\n e: React.MouseEvent;\n },\n) => void;\n\nexport type BreadcrumbsDefaultItem = {\n label: string;\n icon?: IconComponent;\n href?: string;\n onClick?: React.MouseEventHandler<HTMLAnchorElement>;\n subMenu?: BreadcrumbsDefaultItem[];\n};\n\nexport type DefaultItem = BreadcrumbsDefaultItem;\n\nexport type RenderItem<ITEM> = (\n item: ITEM | undefined,\n index: number | string,\n isFirst?: boolean,\n isLast?: boolean,\n ref?: React.Ref<HTMLLIElement>,\n hidden?: boolean,\n) => React.ReactNode | undefined;\n\nexport type BreadcrumbsProps<ITEM = BreadcrumbsDefaultItem> =\n PropsWithHTMLAttributesAndRef<\n {\n items: ITEM[];\n getItemLabel?: BreadcrumbsPropGetItemLabel<ITEM>;\n getItemHref?: BreadcrumbsPropGetItemHref<ITEM>;\n getItemIcon?: BreadcrumbsPropGetItemIcon<ITEM>;\n getItemOnClick?: BreadcrumbsPropGetItemOnClick<ITEM>;\n getItemSubMenu?: BreadcrumbsPropGetItemSubMenu<ITEM>;\n onItemClick?: BreadcrumbsPropOnItemClick<ITEM>;\n size?: BreadcrumbPropSize;\n onlyIconRoot?: boolean;\n fitMode?: BreadcrumbPropFitMode;\n lastItemIsLink?: boolean;\n },\n HTMLUListElement\n > &\n (ITEM extends { label: BreadcrumbsDefaultItem['label'] }\n ? {}\n : { getItemLabel: BreadcrumbsPropGetItemLabel<ITEM> });\n\nexport type BreadcrumbsComponent = <ITEM>(\n props: BreadcrumbsProps<ITEM>,\n) => React.ReactNode | null;\n\nexport type BreadcrumbsMoreProps<ITEM> = PropsWithHTMLAttributesAndRef<\n {\n size: BreadcrumbPropSize;\n items: ITEM[];\n getItemLabel: BreadcrumbsPropGetItemLabel<ITEM>;\n getItemHref: BreadcrumbsPropGetItemHref<ITEM>;\n getItemIcon: BreadcrumbsPropGetItemIcon<ITEM>;\n getItemSubMenu: BreadcrumbsPropGetItemSubMenu<ITEM>;\n getItemOnClick: BreadcrumbsPropGetItemOnClick<ITEM>;\n onItemClick?: BreadcrumbsPropOnItemClick<ITEM>;\n },\n HTMLLIElement\n>;\n\nexport type BreadcrumbsMoreComponent = <ITEM>(\n props: BreadcrumbsMoreProps<ITEM>,\n) => React.ReactNode | null;\n\nexport type BreadcrumbsItemProps<ITEM> = PropsWithHTMLAttributesAndRef<\n {\n size: 'm' | 'xs' | 's' | 'l';\n item?: ITEM;\n getItemLabel?: BreadcrumbsPropGetItemLabel<ITEM>;\n getItemHref?: BreadcrumbsPropGetItemHref<ITEM>;\n getItemIcon?: BreadcrumbsPropGetItemIcon<ITEM>;\n getItemSubMenu?: BreadcrumbsPropGetItemSubMenu<ITEM>;\n active?: boolean;\n onlyIcon?: boolean;\n delimiter?: boolean;\n onItemClick?: BreadcrumbsPropOnItemClick<ITEM>;\n },\n HTMLLIElement\n>;\n\nexport type BreadcrumbsItemComponent = <ITEM>(\n props: BreadcrumbsItemProps<ITEM>,\n) => React.ReactNode | null;\n\nexport type BreadcrumbsFitModeDropdownProps<ITEM> =\n PropsWithHTMLAttributesAndRef<\n {\n items: ITEM[];\n getItemLabel: BreadcrumbsPropGetItemLabel<ITEM>;\n getItemHref: BreadcrumbsPropGetItemHref<ITEM>;\n getItemIcon: BreadcrumbsPropGetItemIcon<ITEM>;\n getItemOnClick: BreadcrumbsPropGetItemOnClick<ITEM>;\n getItemSubMenu: BreadcrumbsPropGetItemSubMenu<ITEM>;\n onItemClick?: BreadcrumbsPropOnItemClick<ITEM>;\n renderItem: RenderItem<ITEM>;\n size: BreadcrumbPropSize;\n },\n HTMLUListElement\n >;\n\nexport type BreadcrumbsFitModeDropdownComponent = <ITEM>(\n props: BreadcrumbsFitModeDropdownProps<ITEM>,\n) => React.ReactNode | null;\n\nexport type BreadcrumbsFitModeScrollProps<ITEM> = PropsWithHTMLAttributesAndRef<\n {\n items: ITEM[];\n renderItem: RenderItem<ITEM>;\n },\n HTMLUListElement\n>;\n\nexport type BreadcrumbsFitModeScrollComponent = <ITEM>(\n props: BreadcrumbsFitModeScrollProps<ITEM>,\n) => React.ReactNode | null;\n\nexport type BreadcrumbsShortListComponent = <ITEM>(\n props: BreadcrumbsFitModeScrollProps<ITEM>,\n) => React.ReactNode | null;\n"],"mappings":"AAIA,MAAO,IAAMA,mBAAkB,CAAG,CAAC,GAAD,CAAM,IAAN,CAAY,GAAZ,CAAiB,GAAjB,CAA3B,CAEP,MAAO,IAAMC,0BAAyB,CAAGD,kBAAkB,CAAC,CAAD,CAApD,CAEP,MAAO,IAAME,sBAAqB,CAAG,CAAC,UAAD,CAAa,QAAb,CAA9B,CAEP,MAAO,IAAMC,6BAA4B,CAAGD,qBAAqB,CAAC,CAAD,CAA1D"}
|
|
1
|
+
{"version":3,"file":"types.js","names":["breadcrumbPropSize","breadcrumbPropSizeDefault","breadcrumbPropFitMode","breadcrumbPropFitModeDefault"],"sources":["../../../../../src/components/Breadcrumbs/types.ts"],"sourcesContent":["import { IconComponent } from '@consta/icons/Icon';\n\nimport { PropsWithHTMLAttributesAndRef } from '../../utils/types/PropsWithHTMLAttributes';\n\nexport const breadcrumbPropSize = ['m', 'xs', 's', 'l'] as const;\nexport type BreadcrumbPropSize = (typeof breadcrumbPropSize)[number];\nexport const breadcrumbPropSizeDefault = breadcrumbPropSize[0];\n\nexport const breadcrumbPropFitMode = ['dropdown', 'scroll'] as const;\nexport type BreadcrumbPropFitMode = (typeof breadcrumbPropFitMode)[number];\nexport const breadcrumbPropFitModeDefault = breadcrumbPropFitMode[0];\n\nexport type BreadcrumbsPropGetItemLabel<ITEM> = (item: ITEM) => string;\nexport type BreadcrumbsPropGetItemHref<ITEM> = (\n item: ITEM,\n) => string | undefined;\nexport type BreadcrumbsPropGetItemIcon<ITEM> = (\n item: ITEM,\n) => IconComponent | undefined;\nexport type BreadcrumbsPropGetItemSubMenu<ITEM> = (\n item: ITEM,\n) => ITEM[] | undefined;\nexport type BreadcrumbsPropGetItemOnClick<ITEM> = (\n item: ITEM,\n) => React.MouseEventHandler | undefined;\nexport type BreadcrumbsPropOnItemClick<ITEM> = (\n item: ITEM,\n props: {\n e: React.MouseEvent;\n },\n) => void;\n\nexport type BreadcrumbsDefaultItem = {\n label: string;\n icon?: IconComponent;\n href?: string;\n onClick?: React.MouseEventHandler<HTMLAnchorElement>;\n subMenu?: BreadcrumbsDefaultItem[];\n};\n\nexport type DefaultItem = BreadcrumbsDefaultItem;\n\nexport type RenderItem<ITEM> = (\n item: ITEM | undefined,\n index: number | string,\n isFirst?: boolean,\n isLast?: boolean,\n ref?: React.Ref<HTMLLIElement>,\n hidden?: boolean,\n) => React.ReactNode | undefined;\n\nexport type BreadcrumbsProps<ITEM = BreadcrumbsDefaultItem> =\n PropsWithHTMLAttributesAndRef<\n {\n items: ITEM[];\n getItemLabel?: BreadcrumbsPropGetItemLabel<ITEM>;\n getItemHref?: BreadcrumbsPropGetItemHref<ITEM>;\n getItemIcon?: BreadcrumbsPropGetItemIcon<ITEM>;\n getItemOnClick?: BreadcrumbsPropGetItemOnClick<ITEM>;\n getItemSubMenu?: BreadcrumbsPropGetItemSubMenu<ITEM>;\n onItemClick?: BreadcrumbsPropOnItemClick<ITEM>;\n size?: BreadcrumbPropSize;\n onlyIconRoot?: boolean;\n fitMode?: BreadcrumbPropFitMode;\n lastItemIsLink?: boolean;\n },\n HTMLUListElement\n > &\n (ITEM extends { label: BreadcrumbsDefaultItem['label'] }\n ? {}\n : { getItemLabel: BreadcrumbsPropGetItemLabel<ITEM> });\n\nexport type BreadcrumbsComponent = <ITEM>(\n props: BreadcrumbsProps<ITEM>,\n) => React.ReactNode | null;\n\nexport type BreadcrumbsMoreProps<ITEM> = PropsWithHTMLAttributesAndRef<\n {\n size: BreadcrumbPropSize;\n items: ITEM[];\n getItemLabel: BreadcrumbsPropGetItemLabel<ITEM>;\n getItemHref: BreadcrumbsPropGetItemHref<ITEM>;\n getItemIcon: BreadcrumbsPropGetItemIcon<ITEM>;\n getItemSubMenu: BreadcrumbsPropGetItemSubMenu<ITEM>;\n getItemOnClick: BreadcrumbsPropGetItemOnClick<ITEM>;\n onItemClick?: BreadcrumbsPropOnItemClick<ITEM>;\n },\n HTMLLIElement\n>;\n\nexport type BreadcrumbsMoreComponent = <ITEM>(\n props: BreadcrumbsMoreProps<ITEM>,\n) => React.ReactNode | null;\n\nexport type BreadcrumbsItemProps<ITEM> = PropsWithHTMLAttributesAndRef<\n {\n size: 'm' | 'xs' | 's' | 'l';\n item?: ITEM;\n getItemLabel?: BreadcrumbsPropGetItemLabel<ITEM>;\n getItemHref?: BreadcrumbsPropGetItemHref<ITEM>;\n getItemIcon?: BreadcrumbsPropGetItemIcon<ITEM>;\n getItemSubMenu?: BreadcrumbsPropGetItemSubMenu<ITEM>;\n active?: boolean;\n onlyIcon?: boolean;\n delimiter?: boolean;\n onItemClick?: BreadcrumbsPropOnItemClick<ITEM>;\n },\n HTMLLIElement\n>;\n\nexport type BreadcrumbsItemComponent = <ITEM>(\n props: BreadcrumbsItemProps<ITEM>,\n) => React.ReactNode | null;\n\nexport type BreadcrumbsFitModeDropdownProps<ITEM> =\n PropsWithHTMLAttributesAndRef<\n {\n items: ITEM[];\n getItemLabel: BreadcrumbsPropGetItemLabel<ITEM>;\n getItemHref: BreadcrumbsPropGetItemHref<ITEM>;\n getItemIcon: BreadcrumbsPropGetItemIcon<ITEM>;\n getItemOnClick: BreadcrumbsPropGetItemOnClick<ITEM>;\n getItemSubMenu: BreadcrumbsPropGetItemSubMenu<ITEM>;\n onItemClick?: BreadcrumbsPropOnItemClick<ITEM>;\n renderItem: RenderItem<ITEM>;\n size: BreadcrumbPropSize;\n },\n HTMLUListElement\n >;\n\nexport type BreadcrumbsFitModeDropdownComponent = <ITEM>(\n props: BreadcrumbsFitModeDropdownProps<ITEM>,\n) => React.ReactNode | null;\n\nexport type BreadcrumbsFitModeScrollProps<ITEM> = PropsWithHTMLAttributesAndRef<\n {\n items: ITEM[];\n renderItem: RenderItem<ITEM>;\n },\n HTMLUListElement\n>;\n\nexport type BreadcrumbsFitModeScrollComponent = <ITEM>(\n props: BreadcrumbsFitModeScrollProps<ITEM>,\n) => React.ReactNode | null;\n\nexport type BreadcrumbsShortListComponent = <ITEM>(\n props: BreadcrumbsFitModeScrollProps<ITEM>,\n) => React.ReactNode | null;\n"],"mappings":"AAIA,MAAO,IAAMA,mBAAkB,CAAG,CAAC,GAAD,CAAM,IAAN,CAAY,GAAZ,CAAiB,GAAjB,CAA3B,CAEP,MAAO,IAAMC,0BAAyB,CAAGD,kBAAkB,CAAC,CAAD,CAApD,CAEP,MAAO,IAAME,sBAAqB,CAAG,CAAC,UAAD,CAAa,QAAb,CAA9B,CAEP,MAAO,IAAMC,6BAA4B,CAAGD,qBAAqB,CAAC,CAAD,CAA1D"}
|
|
@@ -2,16 +2,16 @@ import './Button.css';
|
|
|
2
2
|
import { IconComponent, IconPropSize } from '@consta/icons/Icon';
|
|
3
3
|
import React, { HTMLProps } from 'react';
|
|
4
4
|
export declare const buttonPropSize: readonly ["m", "xs", "s", "l"];
|
|
5
|
-
export type ButtonPropSize = typeof buttonPropSize[number];
|
|
5
|
+
export type ButtonPropSize = (typeof buttonPropSize)[number];
|
|
6
6
|
export declare const buttonPropSizeDefault: ButtonPropSize;
|
|
7
7
|
export declare const buttonPropView: readonly ["primary", "clear", "ghost", "secondary"];
|
|
8
|
-
export type ButtonPropView = typeof buttonPropView[number];
|
|
8
|
+
export type ButtonPropView = (typeof buttonPropView)[number];
|
|
9
9
|
export declare const buttonPropViewDefault: ButtonPropView;
|
|
10
10
|
export declare const buttonPropWidth: readonly ["default", "full"];
|
|
11
|
-
export type ButtonPropWidth = typeof buttonPropWidth[number];
|
|
11
|
+
export type ButtonPropWidth = (typeof buttonPropWidth)[number];
|
|
12
12
|
export declare const buttonPropWidthDefault: ButtonPropWidth;
|
|
13
13
|
export declare const buttonPropForm: readonly ["default", "brick", "round", "brickRound", "roundBrick", "brickDefault", "defaultBrick"];
|
|
14
|
-
export type ButtonPropForm = typeof buttonPropForm[number];
|
|
14
|
+
export type ButtonPropForm = (typeof buttonPropForm)[number];
|
|
15
15
|
export declare const buttonPropFormDefault: "default";
|
|
16
16
|
export type Props = {
|
|
17
17
|
size?: ButtonPropSize;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.js","names":["React","useRef","Loader","useForkRef","cnMixFocus","cn","getByMap","forwardRefWithAs","usePropsHandler","buttonPropSize","buttonPropSizeDefault","buttonPropView","buttonPropViewDefault","buttonPropWidth","buttonPropWidthDefault","buttonPropForm","mapStableForm","defaultClear","defaultBrick","brick","brickDefault","brickClear","brickRound","round","roundClear","roundBrick","clearRound","clearDefault","clearBrick","clearClear","buttonPropFormDefault","COMPONENT_NAME","cnButton","sizeMap","xs","s","m","l","sizeMapOnlyIcon","Button","props","ref","buttonRef","size","view","width","form","iconLeft","iconRight","label","className","onClick","disabled","loading","type","tabIndex","as","onlyIcon","iconSizeProp","iconSize","formId","otherProps","IconOnly","IconLeft","IconRight","title","handleClick","e","withIcon","position"],"sources":["../../../../../src/components/Button/Button.tsx"],"sourcesContent":["import './Button.css';\n\nimport { IconComponent, IconPropSize } from '@consta/icons/Icon';\nimport React, { HTMLProps, useRef } from 'react';\n\nimport { Loader } from '##/components/Loader';\n\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { cnMixFocus } from '../../mixs/MixFocus/MixFocus';\nimport { cn } from '../../utils/bem';\nimport { getByMap } from '../../utils/getByMap';\nimport { forwardRefWithAs } from '../../utils/types/PropsWithAsAttributes';\nimport { usePropsHandler } from '../EventInterceptor/usePropsHandler';\n\nexport const buttonPropSize = ['m', 'xs', 's', 'l'] as const;\nexport type ButtonPropSize = typeof buttonPropSize[number];\nexport const buttonPropSizeDefault: ButtonPropSize = buttonPropSize[0];\n\nexport const buttonPropView = [\n 'primary',\n 'clear',\n 'ghost',\n 'secondary',\n] as const;\nexport type ButtonPropView = typeof buttonPropView[number];\nexport const buttonPropViewDefault: ButtonPropView = buttonPropView[0];\n\nexport const buttonPropWidth = ['default', 'full'] as const;\nexport type ButtonPropWidth = typeof buttonPropWidth[number];\nexport const buttonPropWidthDefault: ButtonPropWidth = buttonPropWidth[0];\n\nexport const buttonPropForm = [\n 'default',\n 'brick',\n 'round',\n 'brickRound',\n 'roundBrick',\n 'brickDefault',\n 'defaultBrick',\n] as const;\n\nexport type ButtonPropForm = typeof buttonPropForm[number];\n\ntype GlobalForm =\n | 'default'\n | 'brick'\n | 'round'\n | 'brickRound'\n | 'roundBrick'\n | 'brickDefault'\n | 'defaultBrick'\n | 'defaultClear'\n | 'brickClear'\n | 'roundClear'\n | 'clearRound'\n | 'clearDefault'\n | 'clearBrick'\n | 'clearClear';\n\nconst mapStableForm: Record<GlobalForm, ButtonPropForm> = {\n default: 'default',\n defaultClear: 'defaultBrick',\n defaultBrick: 'defaultBrick',\n brick: 'brick',\n brickDefault: 'brickDefault',\n brickClear: 'brick',\n brickRound: 'brickRound',\n round: 'round',\n roundClear: 'roundBrick',\n roundBrick: 'roundBrick',\n clearRound: 'brickRound',\n clearDefault: 'brickDefault',\n clearBrick: 'brick',\n clearClear: 'brick',\n};\n\nexport const buttonPropFormDefault = buttonPropForm[0];\n\nexport type Props = {\n size?: ButtonPropSize;\n view?: ButtonPropView;\n width?: ButtonPropWidth;\n form?: ButtonPropForm;\n tabIndex?: number;\n disabled?: boolean;\n loading?: boolean;\n label?: string | number;\n onClick?: React.EventHandler<React.MouseEvent>;\n iconLeft?: IconComponent;\n iconRight?: IconComponent;\n onlyIcon?: boolean;\n iconSize?: IconPropSize;\n title?: string;\n children?: never;\n type?: 'button' | 'reset' | 'submit';\n formId?: HTMLProps<HTMLButtonElement>['form'];\n};\n\nexport const COMPONENT_NAME = 'Button' as const;\nexport const cnButton = cn(COMPONENT_NAME);\n\nconst sizeMap = {\n xs: 'xs',\n s: 'xs',\n m: 's',\n l: 'm',\n} as const;\n\nconst sizeMapOnlyIcon = {\n xs: 'xs',\n s: 's',\n m: 'm',\n l: 'm',\n} as const;\n\nexport const Button = forwardRefWithAs<Props, 'button'>((props, ref) => {\n const buttonRef = useRef<HTMLButtonElement | null>(null);\n\n const {\n size = buttonPropSizeDefault,\n view = buttonPropViewDefault,\n width = buttonPropWidthDefault,\n form = buttonPropFormDefault,\n iconLeft,\n iconRight,\n label,\n className,\n onClick,\n disabled,\n loading,\n type = 'button',\n tabIndex,\n as = 'button',\n onlyIcon,\n iconSize: iconSizeProp,\n formId,\n ...otherProps\n } = usePropsHandler(COMPONENT_NAME, props, buttonRef);\n\n const Tag = as as string;\n const IconOnly = (!label || onlyIcon) && (iconLeft || iconRight);\n const IconLeft = iconLeft;\n const IconRight = iconRight;\n const withIcon = !!iconLeft || !!iconRight;\n const title = props.title || (!!IconOnly && label) || undefined;\n const iconSize = IconOnly\n ? getByMap(sizeMapOnlyIcon, size, iconSizeProp)\n : getByMap(sizeMap, size, iconSizeProp);\n\n const handleClick = (e: React.MouseEvent<HTMLElement>) => {\n if (!disabled && !loading && onClick) {\n onClick(e);\n }\n };\n\n return (\n <Tag\n {...otherProps}\n onClick={onClick ? handleClick : undefined}\n form={formId}\n type={type}\n className={cnButton(\n {\n size,\n view,\n width,\n form: mapStableForm[form],\n loading,\n disabled,\n withIcon,\n onlyIcon: !!IconOnly,\n },\n [!(disabled || loading) ? cnMixFocus() : undefined, className],\n )}\n disabled={disabled}\n tabIndex={tabIndex}\n title={title}\n ref={useForkRef([ref, buttonRef])}\n >\n {IconOnly && <IconOnly className={cnButton('Icon')} size={iconSize} />}\n {!IconOnly &&\n ((IconLeft || IconRight) && label ? (\n <>\n {IconLeft && (\n <IconLeft\n className={cnButton('Icon', { position: 'left' })}\n size={iconSize}\n />\n )}\n <span className={cnButton('Label')}>{label}</span>\n {IconRight && (\n <IconRight\n className={cnButton('Icon', { position: 'right' })}\n size={iconSize}\n />\n )}\n </>\n ) : (\n label\n ))}\n {loading && (\n <div className={cnButton('Loader')}>\n <Loader size={sizeMapOnlyIcon[size]} type=\"circle\" />\n </div>\n )}\n </Tag>\n );\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Button.js","names":["React","useRef","Loader","useForkRef","cnMixFocus","cn","getByMap","forwardRefWithAs","usePropsHandler","buttonPropSize","buttonPropSizeDefault","buttonPropView","buttonPropViewDefault","buttonPropWidth","buttonPropWidthDefault","buttonPropForm","mapStableForm","defaultClear","defaultBrick","brick","brickDefault","brickClear","brickRound","round","roundClear","roundBrick","clearRound","clearDefault","clearBrick","clearClear","buttonPropFormDefault","COMPONENT_NAME","cnButton","sizeMap","xs","s","m","l","sizeMapOnlyIcon","Button","props","ref","buttonRef","size","view","width","form","iconLeft","iconRight","label","className","onClick","disabled","loading","type","tabIndex","as","onlyIcon","iconSizeProp","iconSize","formId","otherProps","IconOnly","IconLeft","IconRight","title","handleClick","e","withIcon","position"],"sources":["../../../../../src/components/Button/Button.tsx"],"sourcesContent":["import './Button.css';\n\nimport { IconComponent, IconPropSize } from '@consta/icons/Icon';\nimport React, { HTMLProps, useRef } from 'react';\n\nimport { Loader } from '##/components/Loader';\n\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { cnMixFocus } from '../../mixs/MixFocus/MixFocus';\nimport { cn } from '../../utils/bem';\nimport { getByMap } from '../../utils/getByMap';\nimport { forwardRefWithAs } from '../../utils/types/PropsWithAsAttributes';\nimport { usePropsHandler } from '../EventInterceptor/usePropsHandler';\n\nexport const buttonPropSize = ['m', 'xs', 's', 'l'] as const;\nexport type ButtonPropSize = (typeof buttonPropSize)[number];\nexport const buttonPropSizeDefault: ButtonPropSize = buttonPropSize[0];\n\nexport const buttonPropView = [\n 'primary',\n 'clear',\n 'ghost',\n 'secondary',\n] as const;\nexport type ButtonPropView = (typeof buttonPropView)[number];\nexport const buttonPropViewDefault: ButtonPropView = buttonPropView[0];\n\nexport const buttonPropWidth = ['default', 'full'] as const;\nexport type ButtonPropWidth = (typeof buttonPropWidth)[number];\nexport const buttonPropWidthDefault: ButtonPropWidth = buttonPropWidth[0];\n\nexport const buttonPropForm = [\n 'default',\n 'brick',\n 'round',\n 'brickRound',\n 'roundBrick',\n 'brickDefault',\n 'defaultBrick',\n] as const;\n\nexport type ButtonPropForm = (typeof buttonPropForm)[number];\n\ntype GlobalForm =\n | 'default'\n | 'brick'\n | 'round'\n | 'brickRound'\n | 'roundBrick'\n | 'brickDefault'\n | 'defaultBrick'\n | 'defaultClear'\n | 'brickClear'\n | 'roundClear'\n | 'clearRound'\n | 'clearDefault'\n | 'clearBrick'\n | 'clearClear';\n\nconst mapStableForm: Record<GlobalForm, ButtonPropForm> = {\n default: 'default',\n defaultClear: 'defaultBrick',\n defaultBrick: 'defaultBrick',\n brick: 'brick',\n brickDefault: 'brickDefault',\n brickClear: 'brick',\n brickRound: 'brickRound',\n round: 'round',\n roundClear: 'roundBrick',\n roundBrick: 'roundBrick',\n clearRound: 'brickRound',\n clearDefault: 'brickDefault',\n clearBrick: 'brick',\n clearClear: 'brick',\n};\n\nexport const buttonPropFormDefault = buttonPropForm[0];\n\nexport type Props = {\n size?: ButtonPropSize;\n view?: ButtonPropView;\n width?: ButtonPropWidth;\n form?: ButtonPropForm;\n tabIndex?: number;\n disabled?: boolean;\n loading?: boolean;\n label?: string | number;\n onClick?: React.EventHandler<React.MouseEvent>;\n iconLeft?: IconComponent;\n iconRight?: IconComponent;\n onlyIcon?: boolean;\n iconSize?: IconPropSize;\n title?: string;\n children?: never;\n type?: 'button' | 'reset' | 'submit';\n formId?: HTMLProps<HTMLButtonElement>['form'];\n};\n\nexport const COMPONENT_NAME = 'Button' as const;\nexport const cnButton = cn(COMPONENT_NAME);\n\nconst sizeMap = {\n xs: 'xs',\n s: 'xs',\n m: 's',\n l: 'm',\n} as const;\n\nconst sizeMapOnlyIcon = {\n xs: 'xs',\n s: 's',\n m: 'm',\n l: 'm',\n} as const;\n\nexport const Button = forwardRefWithAs<Props, 'button'>((props, ref) => {\n const buttonRef = useRef<HTMLButtonElement | null>(null);\n\n const {\n size = buttonPropSizeDefault,\n view = buttonPropViewDefault,\n width = buttonPropWidthDefault,\n form = buttonPropFormDefault,\n iconLeft,\n iconRight,\n label,\n className,\n onClick,\n disabled,\n loading,\n type = 'button',\n tabIndex,\n as = 'button',\n onlyIcon,\n iconSize: iconSizeProp,\n formId,\n ...otherProps\n } = usePropsHandler(COMPONENT_NAME, props, buttonRef);\n\n const Tag = as as string;\n const IconOnly = (!label || onlyIcon) && (iconLeft || iconRight);\n const IconLeft = iconLeft;\n const IconRight = iconRight;\n const withIcon = !!iconLeft || !!iconRight;\n const title = props.title || (!!IconOnly && label) || undefined;\n const iconSize = IconOnly\n ? getByMap(sizeMapOnlyIcon, size, iconSizeProp)\n : getByMap(sizeMap, size, iconSizeProp);\n\n const handleClick = (e: React.MouseEvent<HTMLElement>) => {\n if (!disabled && !loading && onClick) {\n onClick(e);\n }\n };\n\n return (\n <Tag\n {...otherProps}\n onClick={onClick ? handleClick : undefined}\n form={formId}\n type={type}\n className={cnButton(\n {\n size,\n view,\n width,\n form: mapStableForm[form],\n loading,\n disabled,\n withIcon,\n onlyIcon: !!IconOnly,\n },\n [!(disabled || loading) ? cnMixFocus() : undefined, className],\n )}\n disabled={disabled}\n tabIndex={tabIndex}\n title={title}\n ref={useForkRef([ref, buttonRef])}\n >\n {IconOnly && <IconOnly className={cnButton('Icon')} size={iconSize} />}\n {!IconOnly &&\n ((IconLeft || IconRight) && label ? (\n <>\n {IconLeft && (\n <IconLeft\n className={cnButton('Icon', { position: 'left' })}\n size={iconSize}\n />\n )}\n <span className={cnButton('Label')}>{label}</span>\n {IconRight && (\n <IconRight\n className={cnButton('Icon', { position: 'right' })}\n size={iconSize}\n />\n )}\n </>\n ) : (\n label\n ))}\n {loading && (\n <div className={cnButton('Loader')}>\n <Loader size={sizeMapOnlyIcon[size]} type=\"circle\" />\n </div>\n )}\n </Tag>\n );\n});\n"],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
export declare const cardPropForm: readonly ["round", "square"];
|
|
3
|
-
export type CardPropForm = typeof cardPropForm[number];
|
|
3
|
+
export type CardPropForm = (typeof cardPropForm)[number];
|
|
4
4
|
export declare const cardPropFormDefault: CardPropForm;
|
|
5
5
|
export declare const cardPropSpace: readonly ["m", "xs", "s", "l", "xl", "2xl", "3xl", "4xl", "5xl"];
|
|
6
|
-
export type CardPropSpace = typeof cardPropSpace[number];
|
|
6
|
+
export type CardPropSpace = (typeof cardPropSpace)[number];
|
|
7
7
|
export declare const cardPropStatus: readonly ["alert", "success", "warning"];
|
|
8
|
-
export type CardPropStatus = typeof cardPropStatus[number] | string;
|
|
8
|
+
export type CardPropStatus = (typeof cardPropStatus)[number] | string;
|
|
9
9
|
export type CardProps = {
|
|
10
10
|
verticalSpace?: CardPropSpace;
|
|
11
11
|
horizontalSpace?: CardPropSpace;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Card.js","names":["React","useRef","useForkRef","cnMixCard","cn","forwardRefWithAs","usePropsHandler","cardPropForm","cardPropFormDefault","cardPropSpace","cardPropStatus","COMPONENT_NAME","cnCard","Card","props","ref","cardRef","verticalSpace","horizontalSpace","status","form","shadow","children","tabIndex","border","className","as","otherProps"],"sources":["../../../../../src/components/Card/Card.tsx"],"sourcesContent":["import React, { useRef } from 'react';\n\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { cnMixCard } from '../../mixs/MixCard/MixCard';\nimport { cn } from '../../utils/bem';\nimport { forwardRefWithAs } from '../../utils/types/PropsWithAsAttributes';\nimport { usePropsHandler } from '../EventInterceptor/usePropsHandler';\n\nexport const cardPropForm = ['round', 'square'] as const;\nexport type CardPropForm = typeof cardPropForm[number];\nexport const cardPropFormDefault: CardPropForm = cardPropForm[0];\n\nexport const cardPropSpace = [\n 'm',\n 'xs',\n 's',\n 'l',\n 'xl',\n '2xl',\n '3xl',\n '4xl',\n '5xl',\n] as const;\nexport type CardPropSpace = typeof cardPropSpace[number];\n\nexport const cardPropStatus = ['alert', 'success', 'warning'] as const;\nexport type CardPropStatus = typeof cardPropStatus[number] | string;\n\nexport type CardProps = {\n verticalSpace?: CardPropSpace;\n horizontalSpace?: CardPropSpace;\n status?: CardPropStatus;\n border?: boolean;\n form?: CardPropForm;\n shadow?: boolean;\n children?: React.ReactNode;\n};\n\nexport type Props = CardProps;\n\nexport const COMPONENT_NAME = 'Card' as const;\n\nexport const cnCard = cn('Card');\n\nexport const Card = forwardRefWithAs<CardProps>((props, ref) => {\n const cardRef = useRef<HTMLDivElement>(null);\n\n const {\n verticalSpace,\n horizontalSpace,\n status,\n form = cardPropFormDefault,\n shadow = true,\n children,\n tabIndex,\n border,\n className,\n as = 'div',\n ...otherProps\n } = usePropsHandler(COMPONENT_NAME, props, cardRef);\n\n const Tag = as as string;\n\n return (\n <Tag\n tabIndex={tabIndex}\n ref={useForkRef([cardRef, ref])}\n className={cnCard(null, [\n cnMixCard({\n verticalSpace,\n horizontalSpace,\n shadow,\n form,\n status,\n border,\n }),\n className,\n ])}\n {...otherProps}\n >\n {children}\n </Tag>\n );\n});\n"],"mappings":"gNAAA,MAAOA,MAAP,EAAgBC,MAAhB,KAA8B,OAA9B,CAEA,OAASC,UAAT,yCACA,OAASC,SAAT,kCACA,OAASC,EAAT,uBACA,OAASC,gBAAT,+CACA,OAASC,eAAT,2CAEA,MAAO,IAAMC,aAAY,CAAG,CAAC,OAAD,CAAU,QAAV,CAArB,CAEP,MAAO,IAAMC,oBAAiC,CAAGD,YAAY,CAAC,CAAD,CAAtD,CAEP,MAAO,IAAME,cAAa,CAAG,CAC3B,GAD2B,CAE3B,IAF2B,CAG3B,GAH2B,CAI3B,GAJ2B,CAK3B,IAL2B,CAM3B,KAN2B,CAO3B,KAP2B,CAQ3B,KAR2B,CAS3B,KAT2B,CAAtB,CAaP,MAAO,IAAMC,eAAc,CAAG,CAAC,OAAD,CAAU,SAAV,CAAqB,SAArB,CAAvB,CAeP,MAAO,IAAMC,eAAc,CAAG,MAAvB,CAEP,MAAO,IAAMC,OAAM,CAAGR,EAAE,CAAC,MAAD,CAAjB,CAEP,MAAO,IAAMS,KAAI,CAAGR,gBAAgB,CAAY,SAACS,CAAD,CAAQC,CAAR,CAAgB,IACxDC,EAAO,CAAGf,MAAM,CAAiB,IAAjB,CADwC,GAe1DK,eAAe,CAACK,cAAD,CAAiBG,CAAjB,CAAwBE,CAAxB,CAf2C,CAI5DC,CAJ4D,GAI5DA,aAJ4D,CAK5DC,CAL4D,GAK5DA,eAL4D,CAM5DC,CAN4D,GAM5DA,MAN4D,KAO5DC,IAP4D,CAO5DA,CAP4D,YAOrDZ,mBAPqD,OAQ5Da,MAR4D,CAS5DC,CAT4D,GAS5DA,QAT4D,CAU5DC,CAV4D,GAU5DA,QAV4D,CAW5DC,CAX4D,GAW5DA,MAX4D,CAY5DC,CAZ4D,GAY5DA,SAZ4D,KAa5DC,EAb4D,CAa5DA,CAb4D,YAavD,KAbuD,GAczDC,CAdyD,uCAmB9D,MACE,qBAHUD,CAGV,gBACE,QAAQ,CAAEH,CADZ,CAEE,GAAG,CAAErB,UAAU,CAAC,CAACc,CAAD,CAAUD,CAAV,CAAD,CAFjB,CAGE,SAAS,CAAEH,MAAM,CAAC,IAAD,CAAO,CACtBT,SAAS,CAAC,CACRc,aAAa,CAAbA,CADQ,CAERC,eAAe,CAAfA,CAFQ,CAGRG,MAAM,iBAHE,CAIRD,IAAI,CAAJA,CAJQ,CAKRD,MAAM,CAANA,CALQ,CAMRK,MAAM,CAANA,CANQ,CAAD,CADa,CAStBC,CATsB,CAAP,CAHnB,EAcME,CAdN,EAgBGL,CAhBH,CAmBH,CAvCmC,CAA7B"}
|
|
1
|
+
{"version":3,"file":"Card.js","names":["React","useRef","useForkRef","cnMixCard","cn","forwardRefWithAs","usePropsHandler","cardPropForm","cardPropFormDefault","cardPropSpace","cardPropStatus","COMPONENT_NAME","cnCard","Card","props","ref","cardRef","verticalSpace","horizontalSpace","status","form","shadow","children","tabIndex","border","className","as","otherProps"],"sources":["../../../../../src/components/Card/Card.tsx"],"sourcesContent":["import React, { useRef } from 'react';\n\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { cnMixCard } from '../../mixs/MixCard/MixCard';\nimport { cn } from '../../utils/bem';\nimport { forwardRefWithAs } from '../../utils/types/PropsWithAsAttributes';\nimport { usePropsHandler } from '../EventInterceptor/usePropsHandler';\n\nexport const cardPropForm = ['round', 'square'] as const;\nexport type CardPropForm = (typeof cardPropForm)[number];\nexport const cardPropFormDefault: CardPropForm = cardPropForm[0];\n\nexport const cardPropSpace = [\n 'm',\n 'xs',\n 's',\n 'l',\n 'xl',\n '2xl',\n '3xl',\n '4xl',\n '5xl',\n] as const;\nexport type CardPropSpace = (typeof cardPropSpace)[number];\n\nexport const cardPropStatus = ['alert', 'success', 'warning'] as const;\nexport type CardPropStatus = (typeof cardPropStatus)[number] | string;\n\nexport type CardProps = {\n verticalSpace?: CardPropSpace;\n horizontalSpace?: CardPropSpace;\n status?: CardPropStatus;\n border?: boolean;\n form?: CardPropForm;\n shadow?: boolean;\n children?: React.ReactNode;\n};\n\nexport type Props = CardProps;\n\nexport const COMPONENT_NAME = 'Card' as const;\n\nexport const cnCard = cn('Card');\n\nexport const Card = forwardRefWithAs<CardProps>((props, ref) => {\n const cardRef = useRef<HTMLDivElement>(null);\n\n const {\n verticalSpace,\n horizontalSpace,\n status,\n form = cardPropFormDefault,\n shadow = true,\n children,\n tabIndex,\n border,\n className,\n as = 'div',\n ...otherProps\n } = usePropsHandler(COMPONENT_NAME, props, cardRef);\n\n const Tag = as as string;\n\n return (\n <Tag\n tabIndex={tabIndex}\n ref={useForkRef([cardRef, ref])}\n className={cnCard(null, [\n cnMixCard({\n verticalSpace,\n horizontalSpace,\n shadow,\n form,\n status,\n border,\n }),\n className,\n ])}\n {...otherProps}\n >\n {children}\n </Tag>\n );\n});\n"],"mappings":"gNAAA,MAAOA,MAAP,EAAgBC,MAAhB,KAA8B,OAA9B,CAEA,OAASC,UAAT,yCACA,OAASC,SAAT,kCACA,OAASC,EAAT,uBACA,OAASC,gBAAT,+CACA,OAASC,eAAT,2CAEA,MAAO,IAAMC,aAAY,CAAG,CAAC,OAAD,CAAU,QAAV,CAArB,CAEP,MAAO,IAAMC,oBAAiC,CAAGD,YAAY,CAAC,CAAD,CAAtD,CAEP,MAAO,IAAME,cAAa,CAAG,CAC3B,GAD2B,CAE3B,IAF2B,CAG3B,GAH2B,CAI3B,GAJ2B,CAK3B,IAL2B,CAM3B,KAN2B,CAO3B,KAP2B,CAQ3B,KAR2B,CAS3B,KAT2B,CAAtB,CAaP,MAAO,IAAMC,eAAc,CAAG,CAAC,OAAD,CAAU,SAAV,CAAqB,SAArB,CAAvB,CAeP,MAAO,IAAMC,eAAc,CAAG,MAAvB,CAEP,MAAO,IAAMC,OAAM,CAAGR,EAAE,CAAC,MAAD,CAAjB,CAEP,MAAO,IAAMS,KAAI,CAAGR,gBAAgB,CAAY,SAACS,CAAD,CAAQC,CAAR,CAAgB,IACxDC,EAAO,CAAGf,MAAM,CAAiB,IAAjB,CADwC,GAe1DK,eAAe,CAACK,cAAD,CAAiBG,CAAjB,CAAwBE,CAAxB,CAf2C,CAI5DC,CAJ4D,GAI5DA,aAJ4D,CAK5DC,CAL4D,GAK5DA,eAL4D,CAM5DC,CAN4D,GAM5DA,MAN4D,KAO5DC,IAP4D,CAO5DA,CAP4D,YAOrDZ,mBAPqD,OAQ5Da,MAR4D,CAS5DC,CAT4D,GAS5DA,QAT4D,CAU5DC,CAV4D,GAU5DA,QAV4D,CAW5DC,CAX4D,GAW5DA,MAX4D,CAY5DC,CAZ4D,GAY5DA,SAZ4D,KAa5DC,EAb4D,CAa5DA,CAb4D,YAavD,KAbuD,GAczDC,CAdyD,uCAmB9D,MACE,qBAHUD,CAGV,gBACE,QAAQ,CAAEH,CADZ,CAEE,GAAG,CAAErB,UAAU,CAAC,CAACc,CAAD,CAAUD,CAAV,CAAD,CAFjB,CAGE,SAAS,CAAEH,MAAM,CAAC,IAAD,CAAO,CACtBT,SAAS,CAAC,CACRc,aAAa,CAAbA,CADQ,CAERC,eAAe,CAAfA,CAFQ,CAGRG,MAAM,iBAHE,CAIRD,IAAI,CAAJA,CAJQ,CAKRD,MAAM,CAANA,CALQ,CAMRK,MAAM,CAANA,CANQ,CAAD,CADa,CAStBC,CATsB,CAAP,CAHnB,EAcME,CAdN,EAgBGL,CAhBH,CAmBH,CAvCmC,CAA7B"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
.Checkbox{cursor:pointer;display:inline-flex;font-family:var(--font-sans);line-height:var(--line-height-text-s);position:relative}.Checkbox_size_xs{--checkbox-font-size:var(--control-text-size-xs);--checkbox-size:var(--control-box-size-m);--checkbox-offset:var(--space-xs);--checkbox-arrow-width:calc(var(--space-3xs)*3/4);--align-top-margin:0}.Checkbox_size_s{--checkbox-font-size:var(--control-text-size-s);--checkbox-size:var(--control-box-size-m);--checkbox-offset:var(--space-xs);--checkbox-arrow-width:calc(var(--space-3xs)*3/4);--align-top-margin:var(--space-3xs)}.Checkbox_size_m{--checkbox-font-size:var(--control-text-size-m);--checkbox-size:var(--control-box-size-l);--checkbox-offset:var(--space-xs);--checkbox-arrow-width:var(--space-3xs);--align-top-margin:var(--space-3xs)}.Checkbox_size_l{--checkbox-font-size:var(--control-text-size-l);--checkbox-size:var(--control-box-size-l);--checkbox-offset:var(--space-s);--checkbox-arrow-width:var(--space-3xs);--align-top-margin:var(--space-3xs)}.Checkbox_view_primary{--checkbox-checked-border:var(--color-control-bg-primary);--checkbox-checked-background:var(--color-control-bg-primary);--checkbox-checked-check:var(--color-control-typo-primary);--checkbox-checked-border-hover:var(--color-control-bg-primary-hover);--checkbox-checked-background-hover:var(
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
--color-control-bg-primary-hover
|
|
3
|
+
)}.Checkbox_view_ghost{--checkbox-checked-border:var(--color-control-bg-border-default);--checkbox-checked-background:var(--color-control-bg-ghost);--checkbox-checked-check:var(--color-control-typo-ghost);--checkbox-checked-border-hover:var(--color-control-bg-border-default);--checkbox-checked-background-hover:var(--color-control-bg-ghost-hover)}.Checkbox_intermediate .Checkbox-Input,.Checkbox_intermediate .Checkbox-Input:checked,.Checkbox_intermediate:hover .Checkbox-Input,.Checkbox_intermediate:hover .Checkbox-Input:checked{background-color:var(--checkbox-checked-background);border-color:var(--checkbox-checked-border)}.Checkbox_intermediate .Checkbox-Input:before,.Checkbox_intermediate .Checkbox-Input:checked:before,.Checkbox_intermediate:hover .Checkbox-Input:before,.Checkbox_intermediate:hover .Checkbox-Input:checked:before{--checkbox-intermediate-offset:calc(var(--space-3xs) + var(--control-border-width));background-color:var(--checkbox-checked-check);border:none;height:var(--space-3xs);left:var(--space-3xs);opacity:1;top:calc(var(--checkbox-size)/2 - var(--space-3xs)/2);transform:rotate(0) translateY(-50%);transition:opacity .15s,transform .15s,background-color .08s .04s;width:calc(var(--checkbox-size) - var(--checkbox-intermediate-offset)*2)}.Checkbox_disabled{pointer-events:none}.Checkbox_disabled .Checkbox-Input:disabled{background-color:var(--color-control-bg-disable);border-color:transparent}.Checkbox_disabled .Checkbox-Input:disabled:before{border-color:var(--color-control-typo-disable)}.Checkbox_disabled.Checkbox_intermediate .Checkbox-Input:disabled:before{background-color:var(--color-control-typo-disable)}.Checkbox_disabled .Checkbox-Input:disabled~.Checkbox-Label{color:var(--color-control-typo-disable)}.Checkbox_align_center{align-items:center}.Checkbox_align_top{align-items:start}.Checkbox_align_top .Checkbox-Input{margin-top:var(--align-top-margin)}.Checkbox-Label{color:var(--color-control-typo-default);font-size:var(--checkbox-font-size);margin-left:var(--checkbox-offset)}.Checkbox-Input{-webkit-appearance:none;background-color:transparent;border:var(--control-border-width) solid var(--color-control-bg-border-default);border-radius:var(--control-radius);box-sizing:border-box;cursor:pointer;flex-shrink:0;height:var(--checkbox-size);margin:0;max-width:var(--checkbox-size);padding:0;position:relative;transition:border-color .15s,background-color .15s;width:var(--checkbox-size)}.Checkbox-Input:before{background-color:var(--color-control-bg-affect);border-bottom:var(--checkbox-arrow-width) solid var(--checkbox-checked-check);border-left:var(--checkbox-arrow-width) solid var(--checkbox-checked-check);box-sizing:border-box;content:"";height:calc(var(--checkbox-size)*.35);left:calc(var(--checkbox-size)/5 - 1.2px);opacity:0;position:absolute;top:calc(var(--checkbox-size)/2 - .5px);transform:rotate(-50deg) scaleX(0);transform-origin:0 0;transition:opacity .15s,transform .15s,background-color .08s;width:calc(var(--checkbox-size)*.6)}.Checkbox-Input:checked{background-color:var(--checkbox-checked-background);border-color:var(--checkbox-checked-border)}.Checkbox-Input:checked:before{opacity:1;transform:rotate(-50deg) scale(1)}.Checkbox:hover .Checkbox-Input{border-color:var(--color-control-bg-border-default-hover)}.Checkbox:hover .Checkbox-Input:checked{background-color:var(--checkbox-checked-background-hover);border-color:var(--checkbox-checked-border-hover)}
|
|
@@ -2,13 +2,13 @@ import './Checkbox.css';
|
|
|
2
2
|
import React, { ChangeEventHandler } from 'react';
|
|
3
3
|
import { PropsWithHTMLAttributes } from '../../utils/types/PropsWithHTMLAttributes';
|
|
4
4
|
export declare const checkboxPropSize: readonly ["m", "xs", "s", "l"];
|
|
5
|
-
export type CheckboxPropSize = typeof checkboxPropSize[number];
|
|
5
|
+
export type CheckboxPropSize = (typeof checkboxPropSize)[number];
|
|
6
6
|
export declare const checkboxPropSizeDefault: CheckboxPropSize;
|
|
7
7
|
export declare const checkboxPropView: readonly ["primary", "ghost"];
|
|
8
|
-
export type CheckboxPropView = typeof checkboxPropView[number];
|
|
8
|
+
export type CheckboxPropView = (typeof checkboxPropView)[number];
|
|
9
9
|
export declare const checkboxPropViewDefault: CheckboxPropView;
|
|
10
10
|
export declare const checkboxPropAlign: readonly ["center", "top"];
|
|
11
|
-
export type CheckboxPropAlign = typeof checkboxPropAlign[number];
|
|
11
|
+
export type CheckboxPropAlign = (typeof checkboxPropAlign)[number];
|
|
12
12
|
export declare const checkboxPropAlignDefault: CheckboxPropAlign;
|
|
13
13
|
export type CheckboxPropOnChange = (checked: boolean, params: {
|
|
14
14
|
e: React.ChangeEvent<HTMLInputElement>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkbox.js","names":["React","useForkRef","cnMixFocus","cn","usePropsHandler","checkboxPropSize","checkboxPropSizeDefault","checkboxPropView","checkboxPropViewDefault","checkboxPropAlign","checkboxPropAlignDefault","checkboxPropOnChangeDefault","COMPONENT_NAME","cnCheckbox","Checkbox","forwardRef","props","ref","checkboxRef","useRef","checked","name","size","view","align","disabled","intermediate","className","label","onChange","onFocus","onBlur","readOnly","required","step","tabIndex","inputId","inputRef","otherProps"],"sources":["../../../../../src/components/Checkbox/Checkbox.tsx"],"sourcesContent":["import './Checkbox.css';\n\nimport React, { ChangeEventHandler } from 'react';\n\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { cnMixFocus } from '../../mixs/MixFocus/MixFocus';\nimport { cn } from '../../utils/bem';\nimport { PropsWithHTMLAttributes } from '../../utils/types/PropsWithHTMLAttributes';\nimport { usePropsHandler } from '../EventInterceptor/usePropsHandler';\n\nexport const checkboxPropSize = ['m', 'xs', 's', 'l'] as const;\nexport type CheckboxPropSize = typeof checkboxPropSize[number];\nexport const checkboxPropSizeDefault: CheckboxPropSize = checkboxPropSize[0];\n\nexport const checkboxPropView = ['primary', 'ghost'] as const;\nexport type CheckboxPropView = typeof checkboxPropView[number];\nexport const checkboxPropViewDefault: CheckboxPropView = checkboxPropView[0];\n\nexport const checkboxPropAlign = ['center', 'top'] as const;\nexport type CheckboxPropAlign = typeof checkboxPropAlign[number];\nexport const checkboxPropAlignDefault: CheckboxPropAlign = checkboxPropAlign[0];\n\nexport type CheckboxPropOnChange = (\n checked: boolean,\n params: {\n e: React.ChangeEvent<HTMLInputElement>;\n },\n) => void;\n\nconst checkboxPropOnChangeDefault = () => {};\n\ntype Props = {\n checked: boolean | undefined;\n size?: CheckboxPropSize;\n view?: CheckboxPropView;\n align?: CheckboxPropAlign;\n disabled?: boolean;\n intermediate?: boolean;\n label?: string;\n onChange?: ChangeEventHandler<HTMLInputElement>;\n name?: string;\n onFocus?: React.FocusEventHandler<HTMLInputElement>;\n onBlur?: React.FocusEventHandler<HTMLInputElement>;\n autoFocus?: boolean;\n readOnly?: boolean;\n required?: boolean;\n step?: number | string;\n tabIndex?: number;\n inputRef?: React.Ref<HTMLInputElement>;\n children?: never;\n for?: string;\n inputId?: string;\n};\n\nexport type CheckboxProps = PropsWithHTMLAttributes<Props, HTMLLabelElement>;\n\nexport const COMPONENT_NAME = 'Checkbox' as const;\nexport const cnCheckbox = cn(COMPONENT_NAME);\n\nexport const Checkbox = React.forwardRef<HTMLLabelElement, CheckboxProps>(\n (props, ref) => {\n const checkboxRef = React.useRef<HTMLLabelElement>(null);\n\n const {\n checked = false,\n name,\n size = checkboxPropSizeDefault,\n view = checkboxPropViewDefault,\n align = checkboxPropAlignDefault,\n disabled,\n intermediate = false,\n className,\n label,\n onChange = checkboxPropOnChangeDefault,\n onFocus,\n onBlur,\n readOnly,\n required,\n step,\n tabIndex,\n inputId,\n inputRef,\n ...otherProps\n } = usePropsHandler(COMPONENT_NAME, props, checkboxRef);\n\n return (\n <label\n {...otherProps}\n className={cnCheckbox({ size, view, disabled, intermediate, align }, [\n className,\n ])}\n ref={useForkRef([ref, checkboxRef])}\n >\n <input\n type=\"checkbox\"\n name={name}\n className={cnCheckbox('Input', [cnMixFocus()])}\n checked={checked}\n id={inputId}\n disabled={disabled}\n onChange={onChange}\n onFocus={onFocus}\n onBlur={onBlur}\n readOnly={readOnly}\n required={required}\n step={step}\n tabIndex={tabIndex}\n ref={inputRef}\n />\n {label && <span className={cnCheckbox('Label')}>{label}</span>}\n </label>\n );\n },\n);\n"],"mappings":"qRAAA,uBAEA,MAAOA,MAAP,KAA0C,OAA1C,CAEA,OAASC,UAAT,yCACA,OAASC,UAAT,oCACA,OAASC,EAAT,uBAEA,OAASC,eAAT,2CAEA,MAAO,IAAMC,iBAAgB,CAAG,CAAC,GAAD,CAAM,IAAN,CAAY,GAAZ,CAAiB,GAAjB,CAAzB,CAEP,MAAO,IAAMC,wBAAyC,CAAGD,gBAAgB,CAAC,CAAD,CAAlE,CAEP,MAAO,IAAME,iBAAgB,CAAG,CAAC,SAAD,CAAY,OAAZ,CAAzB,CAEP,MAAO,IAAMC,wBAAyC,CAAGD,gBAAgB,CAAC,CAAD,CAAlE,CAEP,MAAO,IAAME,kBAAiB,CAAG,CAAC,QAAD,CAAW,KAAX,CAA1B,CAEP,MAAO,IAAMC,yBAA2C,CAAGD,iBAAiB,CAAC,CAAD,CAArE,CASP,GAAME,4BAA2B,CAAG,UAAM,CAAE,CAA5C,CA2BA,MAAO,IAAMC,eAAc,CAAG,UAAvB,CACP,MAAO,IAAMC,WAAU,CAAGV,EAAE,YAArB,CAEP,MAAO,IAAMW,SAAQ,CAAGd,KAAK,CAACe,UAAN,CACtB,SAACC,CAAD,CAAQC,CAAR,CAAgB,IACRC,EAAW,CAAGlB,KAAK,CAACmB,MAAN,CAA+B,IAA/B,CADN,GAuBVf,eAAe,CAACQ,cAAD,CAAiBI,CAAjB,CAAwBE,CAAxB,CAvBL,KAIZE,OAJY,CAKZC,CALY,GAKZA,IALY,KAMZC,IANY,CAMZA,CANY,YAMLhB,uBANK,OAOZiB,IAPY,CAOZA,CAPY,YAOLf,uBAPK,OAQZgB,KARY,CAQZA,CARY,YAQJd,wBARI,GASZe,CATY,GASZA,QATY,KAUZC,YAVY,CAWZC,CAXY,GAWZA,SAXY,CAYZC,CAZY,GAYZA,KAZY,KAaZC,QAbY,CAaZA,CAbY,YAaDlB,2BAbC,GAcZmB,CAdY,GAcZA,OAdY,CAeZC,CAfY,GAeZA,MAfY,CAgBZC,CAhBY,GAgBZA,QAhBY,CAiBZC,CAjBY,GAiBZA,QAjBY,CAkBZC,CAlBY,GAkBZA,IAlBY,CAmBZC,CAnBY,GAmBZA,QAnBY,CAoBZC,CApBY,GAoBZA,OApBY,CAqBZC,CArBY,GAqBZA,QArBY,CAsBTC,CAtBS,uCAyBd,MACE,8CACMA,CADN,EAEE,SAAS,CAAEzB,UAAU,CAAC,CAAES,IAAI,CAAJA,CAAF,CAAQC,IAAI,CAAJA,CAAR,CAAcE,QAAQ,CAARA,CAAd,CAAwBC,YAAY,cAApC,CAAsCF,KAAK,CAALA,CAAtC,CAAD,CAAgD,CACnEG,CADmE,CAAhD,CAFvB,CAKE,GAAG,CAAE1B,UAAU,CAAC,CAACgB,CAAD,CAAMC,CAAN,CAAD,CALjB,GAOE,6BACE,IAAI,CAAC,UADP,CAEE,IAAI,CAAEG,CAFR,CAGE,SAAS,CAAER,UAAU,CAAC,OAAD,CAAU,CAACX,UAAU,EAAX,CAAV,CAHvB,CAIE,OAAO,cAJT,CAKE,EAAE,CAAEkC,CALN,CAME,QAAQ,CAAEX,CANZ,CAOE,QAAQ,CAAEI,CAPZ,CAQE,OAAO,CAAEC,CARX,CASE,MAAM,CAAEC,CATV,CAUE,QAAQ,CAAEC,CAVZ,CAWE,QAAQ,CAAEC,CAXZ,CAYE,IAAI,CAAEC,CAZR,CAaE,QAAQ,CAAEC,CAbZ,CAcE,GAAG,CAAEE,CAdP,EAPF,CAuBGT,CAAK,EAAI,4BAAM,SAAS,CAAEf,UAAU,CAAC,OAAD,CAA3B,EAAuCe,CAAvC,CAvBZ,CA0BH,CArDqB,CAAjB"}
|
|
1
|
+
{"version":3,"file":"Checkbox.js","names":["React","useForkRef","cnMixFocus","cn","usePropsHandler","checkboxPropSize","checkboxPropSizeDefault","checkboxPropView","checkboxPropViewDefault","checkboxPropAlign","checkboxPropAlignDefault","checkboxPropOnChangeDefault","COMPONENT_NAME","cnCheckbox","Checkbox","forwardRef","props","ref","checkboxRef","useRef","checked","name","size","view","align","disabled","intermediate","className","label","onChange","onFocus","onBlur","readOnly","required","step","tabIndex","inputId","inputRef","otherProps"],"sources":["../../../../../src/components/Checkbox/Checkbox.tsx"],"sourcesContent":["import './Checkbox.css';\n\nimport React, { ChangeEventHandler } from 'react';\n\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { cnMixFocus } from '../../mixs/MixFocus/MixFocus';\nimport { cn } from '../../utils/bem';\nimport { PropsWithHTMLAttributes } from '../../utils/types/PropsWithHTMLAttributes';\nimport { usePropsHandler } from '../EventInterceptor/usePropsHandler';\n\nexport const checkboxPropSize = ['m', 'xs', 's', 'l'] as const;\nexport type CheckboxPropSize = (typeof checkboxPropSize)[number];\nexport const checkboxPropSizeDefault: CheckboxPropSize = checkboxPropSize[0];\n\nexport const checkboxPropView = ['primary', 'ghost'] as const;\nexport type CheckboxPropView = (typeof checkboxPropView)[number];\nexport const checkboxPropViewDefault: CheckboxPropView = checkboxPropView[0];\n\nexport const checkboxPropAlign = ['center', 'top'] as const;\nexport type CheckboxPropAlign = (typeof checkboxPropAlign)[number];\nexport const checkboxPropAlignDefault: CheckboxPropAlign = checkboxPropAlign[0];\n\nexport type CheckboxPropOnChange = (\n checked: boolean,\n params: {\n e: React.ChangeEvent<HTMLInputElement>;\n },\n) => void;\n\nconst checkboxPropOnChangeDefault = () => {};\n\ntype Props = {\n checked: boolean | undefined;\n size?: CheckboxPropSize;\n view?: CheckboxPropView;\n align?: CheckboxPropAlign;\n disabled?: boolean;\n intermediate?: boolean;\n label?: string;\n onChange?: ChangeEventHandler<HTMLInputElement>;\n name?: string;\n onFocus?: React.FocusEventHandler<HTMLInputElement>;\n onBlur?: React.FocusEventHandler<HTMLInputElement>;\n autoFocus?: boolean;\n readOnly?: boolean;\n required?: boolean;\n step?: number | string;\n tabIndex?: number;\n inputRef?: React.Ref<HTMLInputElement>;\n children?: never;\n for?: string;\n inputId?: string;\n};\n\nexport type CheckboxProps = PropsWithHTMLAttributes<Props, HTMLLabelElement>;\n\nexport const COMPONENT_NAME = 'Checkbox' as const;\nexport const cnCheckbox = cn(COMPONENT_NAME);\n\nexport const Checkbox = React.forwardRef<HTMLLabelElement, CheckboxProps>(\n (props, ref) => {\n const checkboxRef = React.useRef<HTMLLabelElement>(null);\n\n const {\n checked = false,\n name,\n size = checkboxPropSizeDefault,\n view = checkboxPropViewDefault,\n align = checkboxPropAlignDefault,\n disabled,\n intermediate = false,\n className,\n label,\n onChange = checkboxPropOnChangeDefault,\n onFocus,\n onBlur,\n readOnly,\n required,\n step,\n tabIndex,\n inputId,\n inputRef,\n ...otherProps\n } = usePropsHandler(COMPONENT_NAME, props, checkboxRef);\n\n return (\n <label\n {...otherProps}\n className={cnCheckbox({ size, view, disabled, intermediate, align }, [\n className,\n ])}\n ref={useForkRef([ref, checkboxRef])}\n >\n <input\n type=\"checkbox\"\n name={name}\n className={cnCheckbox('Input', [cnMixFocus()])}\n checked={checked}\n id={inputId}\n disabled={disabled}\n onChange={onChange}\n onFocus={onFocus}\n onBlur={onBlur}\n readOnly={readOnly}\n required={required}\n step={step}\n tabIndex={tabIndex}\n ref={inputRef}\n />\n {label && <span className={cnCheckbox('Label')}>{label}</span>}\n </label>\n );\n },\n);\n"],"mappings":"qRAAA,uBAEA,MAAOA,MAAP,KAA0C,OAA1C,CAEA,OAASC,UAAT,yCACA,OAASC,UAAT,oCACA,OAASC,EAAT,uBAEA,OAASC,eAAT,2CAEA,MAAO,IAAMC,iBAAgB,CAAG,CAAC,GAAD,CAAM,IAAN,CAAY,GAAZ,CAAiB,GAAjB,CAAzB,CAEP,MAAO,IAAMC,wBAAyC,CAAGD,gBAAgB,CAAC,CAAD,CAAlE,CAEP,MAAO,IAAME,iBAAgB,CAAG,CAAC,SAAD,CAAY,OAAZ,CAAzB,CAEP,MAAO,IAAMC,wBAAyC,CAAGD,gBAAgB,CAAC,CAAD,CAAlE,CAEP,MAAO,IAAME,kBAAiB,CAAG,CAAC,QAAD,CAAW,KAAX,CAA1B,CAEP,MAAO,IAAMC,yBAA2C,CAAGD,iBAAiB,CAAC,CAAD,CAArE,CASP,GAAME,4BAA2B,CAAG,UAAM,CAAE,CAA5C,CA2BA,MAAO,IAAMC,eAAc,CAAG,UAAvB,CACP,MAAO,IAAMC,WAAU,CAAGV,EAAE,YAArB,CAEP,MAAO,IAAMW,SAAQ,CAAGd,KAAK,CAACe,UAAN,CACtB,SAACC,CAAD,CAAQC,CAAR,CAAgB,IACRC,EAAW,CAAGlB,KAAK,CAACmB,MAAN,CAA+B,IAA/B,CADN,GAuBVf,eAAe,CAACQ,cAAD,CAAiBI,CAAjB,CAAwBE,CAAxB,CAvBL,KAIZE,OAJY,CAKZC,CALY,GAKZA,IALY,KAMZC,IANY,CAMZA,CANY,YAMLhB,uBANK,OAOZiB,IAPY,CAOZA,CAPY,YAOLf,uBAPK,OAQZgB,KARY,CAQZA,CARY,YAQJd,wBARI,GASZe,CATY,GASZA,QATY,KAUZC,YAVY,CAWZC,CAXY,GAWZA,SAXY,CAYZC,CAZY,GAYZA,KAZY,KAaZC,QAbY,CAaZA,CAbY,YAaDlB,2BAbC,GAcZmB,CAdY,GAcZA,OAdY,CAeZC,CAfY,GAeZA,MAfY,CAgBZC,CAhBY,GAgBZA,QAhBY,CAiBZC,CAjBY,GAiBZA,QAjBY,CAkBZC,CAlBY,GAkBZA,IAlBY,CAmBZC,CAnBY,GAmBZA,QAnBY,CAoBZC,CApBY,GAoBZA,OApBY,CAqBZC,CArBY,GAqBZA,QArBY,CAsBTC,CAtBS,uCAyBd,MACE,8CACMA,CADN,EAEE,SAAS,CAAEzB,UAAU,CAAC,CAAES,IAAI,CAAJA,CAAF,CAAQC,IAAI,CAAJA,CAAR,CAAcE,QAAQ,CAARA,CAAd,CAAwBC,YAAY,cAApC,CAAsCF,KAAK,CAALA,CAAtC,CAAD,CAAgD,CACnEG,CADmE,CAAhD,CAFvB,CAKE,GAAG,CAAE1B,UAAU,CAAC,CAACgB,CAAD,CAAMC,CAAN,CAAD,CALjB,GAOE,6BACE,IAAI,CAAC,UADP,CAEE,IAAI,CAAEG,CAFR,CAGE,SAAS,CAAER,UAAU,CAAC,OAAD,CAAU,CAACX,UAAU,EAAX,CAAV,CAHvB,CAIE,OAAO,cAJT,CAKE,EAAE,CAAEkC,CALN,CAME,QAAQ,CAAEX,CANZ,CAOE,QAAQ,CAAEI,CAPZ,CAQE,OAAO,CAAEC,CARX,CASE,MAAM,CAAEC,CATV,CAUE,QAAQ,CAAEC,CAVZ,CAWE,QAAQ,CAAEC,CAXZ,CAYE,IAAI,CAAEC,CAZR,CAaE,QAAQ,CAAEC,CAbZ,CAcE,GAAG,CAAEE,CAdP,EAPF,CAuBGT,CAAK,EAAI,4BAAM,SAAS,CAAEf,UAAU,CAAC,OAAD,CAA3B,EAAuCe,CAAvC,CAvBZ,CA0BH,CArDqB,CAAjB"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
.deprecated--Checkbox{cursor:pointer;display:inline-flex;font-family:var(--font-sans);position:relative}.deprecated--Checkbox_size_xs{--checkbox-font-size:var(--control-text-size-xs);--checkbox-size:var(--control-box-size-s);--checkbox-offset:var(--space-xs);--checkbox-intermediate-width:calc(var(--space-xs) - var(--space-3xs));--checkbox-arrow-width:calc(var(--space-3xs)*3/4)}.deprecated--Checkbox_size_s{--checkbox-font-size:var(--control-text-size-s);--checkbox-size:calc(var(--control-box-size-s) + var(--space-3xs));--checkbox-offset:var(--space-xs);--checkbox-intermediate-width:var(--space-xs);--checkbox-arrow-width:calc(var(--space-3xs)*3/4)}.deprecated--Checkbox_size_m{--checkbox-font-size:var(--control-text-size-m);--checkbox-size:var(--control-box-size-m);--checkbox-offset:var(--space-xs);--checkbox-intermediate-width:calc(var(--space-s) - var(--space-3xs));--checkbox-arrow-width:var(--space-3xs)}.deprecated--Checkbox_size_l{--checkbox-font-size:var(--control-text-size-l);--checkbox-size:var(--control-box-size-l);--checkbox-offset:var(--space-s);--checkbox-intermediate-width:calc(var(--space-m) - var(--space-3xs));--checkbox-arrow-width:var(--space-3xs)}.deprecated--Checkbox_view_primary{--checkbox-checked-border:var(--color-control-bg-primary);--checkbox-checked-background:var(--color-control-bg-primary);--checkbox-checked-check:var(--color-control-typo-primary);--checkbox-checked-border-hover:var(--color-control-bg-primary-hover);--checkbox-checked-background-hover:var(
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
--color-control-bg-primary-hover
|
|
3
|
+
)}.deprecated--Checkbox_view_ghost{--checkbox-checked-border:var(--color-control-bg-border-default);--checkbox-checked-background:var(--color-control-bg-ghost);--checkbox-checked-check:var(--color-control-typo-ghost);--checkbox-checked-border-hover:var(--color-control-bg-border-default);--checkbox-checked-background-hover:var(--color-control-bg-ghost-hover)}.deprecated--Checkbox_intermediate .Checkbox-Input,.deprecated--Checkbox_intermediate .Checkbox-Input:checked,.deprecated--Checkbox_intermediate:hover .Checkbox-Input,.deprecated--Checkbox_intermediate:hover .Checkbox-Input:checked{background-color:var(--checkbox-checked-background);border-color:var(--checkbox-checked-border)}.deprecated--Checkbox_intermediate .Checkbox-Input:before,.deprecated--Checkbox_intermediate .Checkbox-Input:checked:before,.deprecated--Checkbox_intermediate:hover .Checkbox-Input:before,.deprecated--Checkbox_intermediate:hover .Checkbox-Input:checked:before{background-color:var(--checkbox-checked-check);border:none;height:var(--space-3xs);opacity:1;transform:rotate(0) translateY(-50%);transition:opacity .15s,transform .15s,background-color .08s .04s;width:var(--checkbox-intermediate-width)}.deprecated--Checkbox_disabled{pointer-events:none}.deprecated--Checkbox_disabled .Checkbox-Input:disabled{background-color:var(--color-control-bg-disable);border-color:transparent}.deprecated--Checkbox_disabled .Checkbox-Input:disabled:before{border-color:var(--color-control-typo-disable)}.deprecated--Checkbox_disabled.Checkbox_intermediate .Checkbox-Input:disabled:before{background-color:var(--color-control-typo-disable)}.deprecated--Checkbox_disabled .Checkbox-Input:disabled~.Checkbox-Label{color:var(--color-control-typo-disable)}.deprecated--Checkbox_align_center{align-items:center}.deprecated--Checkbox_align_top{align-items:start}.deprecated--Checkbox_align_top .Checkbox-Input{margin-top:var(--space-3xs)}.deprecated--Checkbox-Label{color:var(--color-control-typo-default);font-size:var(--checkbox-font-size);margin-left:var(--checkbox-offset)}.deprecated--Checkbox-Input{-webkit-appearance:none;background-color:transparent;border:var(--control-border-width) solid var(--color-control-bg-border-default);border-radius:var(--control-radius);box-sizing:border-box;cursor:pointer;flex-shrink:0;height:var(--checkbox-size);margin:0;max-width:var(--checkbox-size);padding:0;position:relative;transition:border-color .15s,background-color .15s;width:var(--checkbox-size)}.deprecated--Checkbox-Input:before{background-color:var(--color-control-bg-affect);border-bottom:var(--checkbox-arrow-width) solid var(--checkbox-checked-check);border-left:var(--checkbox-arrow-width) solid var(--checkbox-checked-check);box-sizing:border-box;content:"";height:calc(var(--checkbox-size)*.35);left:calc(var(--checkbox-size)/5 - 1.2px);opacity:0;position:absolute;top:calc(var(--checkbox-size)/2 - .5px);transform:rotate(-50deg) scaleX(0);transform-origin:0 0;transition:opacity .15s,transform .15s,background-color .08s;width:calc(var(--checkbox-size)*.6)}.deprecated--Checkbox-Input:checked{background-color:var(--checkbox-checked-background);border-color:var(--checkbox-checked-border)}.deprecated--Checkbox-Input:checked:before{opacity:1;transform:rotate(-50deg) scale(1)}.deprecated--Checkbox:hover .deprecated--Checkbox-Input{border-color:var(--color-control-bg-border-default-hover)}.deprecated--Checkbox:hover .deprecated--Checkbox-Input:checked{background-color:var(--checkbox-checked-background-hover);border-color:var(--checkbox-checked-border-hover)}
|
|
@@ -2,13 +2,13 @@ import './Checkbox.css';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { PropsWithHTMLAttributes } from '../../utils/types/PropsWithHTMLAttributes';
|
|
4
4
|
export declare const checkboxPropSize: readonly ["m", "xs", "s", "l"];
|
|
5
|
-
export type CheckboxPropSize = typeof checkboxPropSize[number];
|
|
5
|
+
export type CheckboxPropSize = (typeof checkboxPropSize)[number];
|
|
6
6
|
export declare const checkboxPropSizeDefault: CheckboxPropSize;
|
|
7
7
|
export declare const checkboxPropView: readonly ["primary", "ghost"];
|
|
8
|
-
export type CheckboxPropView = typeof checkboxPropView[number];
|
|
8
|
+
export type CheckboxPropView = (typeof checkboxPropView)[number];
|
|
9
9
|
export declare const checkboxPropViewDefault: CheckboxPropView;
|
|
10
10
|
export declare const checkboxPropAlign: readonly ["center", "top"];
|
|
11
|
-
export type CheckboxPropAlign = typeof checkboxPropAlign[number];
|
|
11
|
+
export type CheckboxPropAlign = (typeof checkboxPropAlign)[number];
|
|
12
12
|
export declare const checkboxPropAlignDefault: CheckboxPropAlign;
|
|
13
13
|
export type CheckboxPropOnChange = (checked: boolean, params: {
|
|
14
14
|
e: React.ChangeEvent<HTMLInputElement>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckboxDeprecated.js","names":["React","useForkRef","cnMixFocus","cnDeprecated","usePropsHandler","checkboxPropSize","checkboxPropSizeDefault","checkboxPropView","checkboxPropViewDefault","checkboxPropAlign","checkboxPropAlignDefault","COMPONENT_NAME","cnCheckbox","Checkbox","forwardRef","props","ref","checkboxRef","useRef","checked","name","size","view","align","disabled","intermediate","className","label","onChange","onFocus","onBlur","readOnly","required","step","tabIndex","inputId","inputRef","otherProps","handleChange","e"],"sources":["../../../../../src/components/CheckboxDeprecated/CheckboxDeprecated.tsx"],"sourcesContent":["import './Checkbox.css';\n\nimport React, { ChangeEventHandler } from 'react';\n\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { cnMixFocus } from '../../mixs/MixFocus/MixFocus';\nimport { cnDeprecated } from '../../utils/bem';\nimport { PropsWithHTMLAttributes } from '../../utils/types/PropsWithHTMLAttributes';\nimport { usePropsHandler } from '../EventInterceptor/usePropsHandler';\n\nexport const checkboxPropSize = ['m', 'xs', 's', 'l'] as const;\nexport type CheckboxPropSize = typeof checkboxPropSize[number];\nexport const checkboxPropSizeDefault: CheckboxPropSize = checkboxPropSize[0];\n\nexport const checkboxPropView = ['primary', 'ghost'] as const;\nexport type CheckboxPropView = typeof checkboxPropView[number];\nexport const checkboxPropViewDefault: CheckboxPropView = checkboxPropView[0];\n\nexport const checkboxPropAlign = ['center', 'top'] as const;\nexport type CheckboxPropAlign = typeof checkboxPropAlign[number];\nexport const checkboxPropAlignDefault: CheckboxPropAlign = checkboxPropAlign[0];\n\nexport type CheckboxPropOnChange = (\n checked: boolean,\n params: {\n e: React.ChangeEvent<HTMLInputElement>;\n },\n) => void;\n\ntype Props = {\n checked: boolean | undefined;\n size?: CheckboxPropSize;\n view?: CheckboxPropView;\n align?: CheckboxPropAlign;\n disabled?: boolean;\n intermediate?: boolean;\n label?: string;\n onChange?: CheckboxPropOnChange;\n name?: string;\n onFocus?: React.FocusEventHandler<HTMLInputElement>;\n onBlur?: React.FocusEventHandler<HTMLInputElement>;\n autoFocus?: boolean;\n readOnly?: boolean;\n required?: boolean;\n step?: number | string;\n tabIndex?: number;\n inputRef?: React.Ref<HTMLInputElement>;\n children?: never;\n for?: string;\n inputId?: string;\n};\n\nexport type CheckboxProps = PropsWithHTMLAttributes<Props, HTMLLabelElement>;\n\nexport const COMPONENT_NAME = 'Checkbox' as const;\nexport const cnCheckbox = cnDeprecated(COMPONENT_NAME);\n\nexport const Checkbox = React.forwardRef<HTMLLabelElement, CheckboxProps>(\n (props, ref) => {\n const checkboxRef = React.useRef<HTMLLabelElement>(null);\n\n const {\n checked = false,\n name,\n size = checkboxPropSizeDefault,\n view = checkboxPropViewDefault,\n align = checkboxPropAlignDefault,\n disabled,\n intermediate = false,\n className,\n label,\n onChange,\n onFocus,\n onBlur,\n readOnly,\n required,\n step,\n tabIndex,\n inputId,\n inputRef,\n ...otherProps\n } = usePropsHandler(COMPONENT_NAME, props, checkboxRef);\n\n const handleChange: ChangeEventHandler<HTMLInputElement> = (e) => {\n if (onChange) {\n onChange(!checked, { e });\n }\n };\n\n return (\n <label\n {...otherProps}\n className={cnCheckbox({ size, view, disabled, intermediate, align }, [\n className,\n ])}\n ref={useForkRef([ref, checkboxRef])}\n >\n <input\n type=\"checkbox\"\n name={name}\n className={cnCheckbox('Input', [cnMixFocus()])}\n checked={checked}\n id={inputId}\n disabled={disabled}\n onChange={handleChange}\n onFocus={onFocus}\n onBlur={onBlur}\n readOnly={readOnly}\n required={required}\n step={step}\n tabIndex={tabIndex}\n ref={inputRef}\n />\n {label && <span className={cnCheckbox('Label')}>{label}</span>}\n </label>\n );\n },\n);\n"],"mappings":"qRAAA,uBAEA,MAAOA,MAAP,KAA0C,OAA1C,CAEA,OAASC,UAAT,yCACA,OAASC,UAAT,oCACA,OAASC,YAAT,uBAEA,OAASC,eAAT,2CAEA,MAAO,IAAMC,iBAAgB,CAAG,CAAC,GAAD,CAAM,IAAN,CAAY,GAAZ,CAAiB,GAAjB,CAAzB,CAEP,MAAO,IAAMC,wBAAyC,CAAGD,gBAAgB,CAAC,CAAD,CAAlE,CAEP,MAAO,IAAME,iBAAgB,CAAG,CAAC,SAAD,CAAY,OAAZ,CAAzB,CAEP,MAAO,IAAMC,wBAAyC,CAAGD,gBAAgB,CAAC,CAAD,CAAlE,CAEP,MAAO,IAAME,kBAAiB,CAAG,CAAC,QAAD,CAAW,KAAX,CAA1B,CAEP,MAAO,IAAMC,yBAA2C,CAAGD,iBAAiB,CAAC,CAAD,CAArE,CAkCP,MAAO,IAAME,eAAc,CAAG,UAAvB,CACP,MAAO,IAAMC,WAAU,CAAGT,YAAY,YAA/B,CAEP,MAAO,IAAMU,SAAQ,CAAGb,KAAK,CAACc,UAAN,CACtB,SAACC,CAAD,CAAQC,CAAR,CAAgB,IACRC,EAAW,CAAGjB,KAAK,CAACkB,MAAN,CAA+B,IAA/B,CADN,GAuBVd,eAAe,CAACO,cAAD,CAAiBI,CAAjB,CAAwBE,CAAxB,CAvBL,KAIZE,OAJY,CAIZA,CAJY,eAKZC,CALY,GAKZA,IALY,KAMZC,IANY,CAMZA,CANY,YAMLf,uBANK,OAOZgB,IAPY,CAOZA,CAPY,YAOLd,uBAPK,OAQZe,KARY,CAQZA,CARY,YAQJb,wBARI,GASZc,CATY,GASZA,QATY,KAUZC,YAVY,CAWZC,CAXY,GAWZA,SAXY,CAYZC,CAZY,GAYZA,KAZY,CAaZC,CAbY,GAaZA,QAbY,CAcZC,CAdY,GAcZA,OAdY,CAeZC,CAfY,GAeZA,MAfY,CAgBZC,CAhBY,GAgBZA,QAhBY,CAiBZC,CAjBY,GAiBZA,QAjBY,CAkBZC,CAlBY,GAkBZA,IAlBY,CAmBZC,CAnBY,GAmBZA,QAnBY,CAoBZC,CApBY,GAoBZA,OApBY,CAqBZC,CArBY,GAqBZA,QArBY,CAsBTC,CAtBS,uCA+Bd,MACE,8CACMA,CADN,EAEE,SAAS,CAAEzB,UAAU,CAAC,CAAES,IAAI,CAAJA,CAAF,CAAQC,IAAI,CAAJA,CAAR,CAAcE,QAAQ,CAARA,CAAd,CAAwBC,YAAY,cAApC,CAAsCF,KAAK,CAALA,CAAtC,CAAD,CAAgD,CACnEG,CADmE,CAAhD,CAFvB,CAKE,GAAG,CAAEzB,UAAU,CAAC,CAACe,CAAD,CAAMC,CAAN,CAAD,CALjB,GAOE,6BACE,IAAI,CAAC,UADP,CAEE,IAAI,CAAEG,CAFR,CAGE,SAAS,CAAER,UAAU,CAAC,OAAD,CAAU,CAACV,UAAU,EAAX,CAAV,CAHvB,CAIE,OAAO,CAAEiB,CAJX,CAKE,EAAE,CAAEgB,CALN,CAME,QAAQ,CAAEX,CANZ,CAOE,QAAQ,CArB6C,QAArDc,aAAqD,CAACC,CAAD,CAAO,CAC5DX,CAD4D,EAE9DA,CAAQ,CAAC,CAACT,CAAF,CAAW,CAAEoB,CAAC,CAADA,CAAF,CAAX,CAEX,CAUG,CAQE,OAAO,CAAEV,CARX,CASE,MAAM,CAAEC,CATV,CAUE,QAAQ,CAAEC,CAVZ,CAWE,QAAQ,CAAEC,CAXZ,CAYE,IAAI,CAAEC,CAZR,CAaE,QAAQ,CAAEC,CAbZ,CAcE,GAAG,CAAEE,CAdP,EAPF,CAuBGT,CAAK,EAAI,4BAAM,SAAS,CAAEf,UAAU,CAAC,OAAD,CAA3B,EAAuCe,CAAvC,CAvBZ,CA0BH,CA3DqB,CAAjB"}
|
|
1
|
+
{"version":3,"file":"CheckboxDeprecated.js","names":["React","useForkRef","cnMixFocus","cnDeprecated","usePropsHandler","checkboxPropSize","checkboxPropSizeDefault","checkboxPropView","checkboxPropViewDefault","checkboxPropAlign","checkboxPropAlignDefault","COMPONENT_NAME","cnCheckbox","Checkbox","forwardRef","props","ref","checkboxRef","useRef","checked","name","size","view","align","disabled","intermediate","className","label","onChange","onFocus","onBlur","readOnly","required","step","tabIndex","inputId","inputRef","otherProps","handleChange","e"],"sources":["../../../../../src/components/CheckboxDeprecated/CheckboxDeprecated.tsx"],"sourcesContent":["import './Checkbox.css';\n\nimport React, { ChangeEventHandler } from 'react';\n\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { cnMixFocus } from '../../mixs/MixFocus/MixFocus';\nimport { cnDeprecated } from '../../utils/bem';\nimport { PropsWithHTMLAttributes } from '../../utils/types/PropsWithHTMLAttributes';\nimport { usePropsHandler } from '../EventInterceptor/usePropsHandler';\n\nexport const checkboxPropSize = ['m', 'xs', 's', 'l'] as const;\nexport type CheckboxPropSize = (typeof checkboxPropSize)[number];\nexport const checkboxPropSizeDefault: CheckboxPropSize = checkboxPropSize[0];\n\nexport const checkboxPropView = ['primary', 'ghost'] as const;\nexport type CheckboxPropView = (typeof checkboxPropView)[number];\nexport const checkboxPropViewDefault: CheckboxPropView = checkboxPropView[0];\n\nexport const checkboxPropAlign = ['center', 'top'] as const;\nexport type CheckboxPropAlign = (typeof checkboxPropAlign)[number];\nexport const checkboxPropAlignDefault: CheckboxPropAlign = checkboxPropAlign[0];\n\nexport type CheckboxPropOnChange = (\n checked: boolean,\n params: {\n e: React.ChangeEvent<HTMLInputElement>;\n },\n) => void;\n\ntype Props = {\n checked: boolean | undefined;\n size?: CheckboxPropSize;\n view?: CheckboxPropView;\n align?: CheckboxPropAlign;\n disabled?: boolean;\n intermediate?: boolean;\n label?: string;\n onChange?: CheckboxPropOnChange;\n name?: string;\n onFocus?: React.FocusEventHandler<HTMLInputElement>;\n onBlur?: React.FocusEventHandler<HTMLInputElement>;\n autoFocus?: boolean;\n readOnly?: boolean;\n required?: boolean;\n step?: number | string;\n tabIndex?: number;\n inputRef?: React.Ref<HTMLInputElement>;\n children?: never;\n for?: string;\n inputId?: string;\n};\n\nexport type CheckboxProps = PropsWithHTMLAttributes<Props, HTMLLabelElement>;\n\nexport const COMPONENT_NAME = 'Checkbox' as const;\nexport const cnCheckbox = cnDeprecated(COMPONENT_NAME);\n\nexport const Checkbox = React.forwardRef<HTMLLabelElement, CheckboxProps>(\n (props, ref) => {\n const checkboxRef = React.useRef<HTMLLabelElement>(null);\n\n const {\n checked = false,\n name,\n size = checkboxPropSizeDefault,\n view = checkboxPropViewDefault,\n align = checkboxPropAlignDefault,\n disabled,\n intermediate = false,\n className,\n label,\n onChange,\n onFocus,\n onBlur,\n readOnly,\n required,\n step,\n tabIndex,\n inputId,\n inputRef,\n ...otherProps\n } = usePropsHandler(COMPONENT_NAME, props, checkboxRef);\n\n const handleChange: ChangeEventHandler<HTMLInputElement> = (e) => {\n if (onChange) {\n onChange(!checked, { e });\n }\n };\n\n return (\n <label\n {...otherProps}\n className={cnCheckbox({ size, view, disabled, intermediate, align }, [\n className,\n ])}\n ref={useForkRef([ref, checkboxRef])}\n >\n <input\n type=\"checkbox\"\n name={name}\n className={cnCheckbox('Input', [cnMixFocus()])}\n checked={checked}\n id={inputId}\n disabled={disabled}\n onChange={handleChange}\n onFocus={onFocus}\n onBlur={onBlur}\n readOnly={readOnly}\n required={required}\n step={step}\n tabIndex={tabIndex}\n ref={inputRef}\n />\n {label && <span className={cnCheckbox('Label')}>{label}</span>}\n </label>\n );\n },\n);\n"],"mappings":"qRAAA,uBAEA,MAAOA,MAAP,KAA0C,OAA1C,CAEA,OAASC,UAAT,yCACA,OAASC,UAAT,oCACA,OAASC,YAAT,uBAEA,OAASC,eAAT,2CAEA,MAAO,IAAMC,iBAAgB,CAAG,CAAC,GAAD,CAAM,IAAN,CAAY,GAAZ,CAAiB,GAAjB,CAAzB,CAEP,MAAO,IAAMC,wBAAyC,CAAGD,gBAAgB,CAAC,CAAD,CAAlE,CAEP,MAAO,IAAME,iBAAgB,CAAG,CAAC,SAAD,CAAY,OAAZ,CAAzB,CAEP,MAAO,IAAMC,wBAAyC,CAAGD,gBAAgB,CAAC,CAAD,CAAlE,CAEP,MAAO,IAAME,kBAAiB,CAAG,CAAC,QAAD,CAAW,KAAX,CAA1B,CAEP,MAAO,IAAMC,yBAA2C,CAAGD,iBAAiB,CAAC,CAAD,CAArE,CAkCP,MAAO,IAAME,eAAc,CAAG,UAAvB,CACP,MAAO,IAAMC,WAAU,CAAGT,YAAY,YAA/B,CAEP,MAAO,IAAMU,SAAQ,CAAGb,KAAK,CAACc,UAAN,CACtB,SAACC,CAAD,CAAQC,CAAR,CAAgB,IACRC,EAAW,CAAGjB,KAAK,CAACkB,MAAN,CAA+B,IAA/B,CADN,GAuBVd,eAAe,CAACO,cAAD,CAAiBI,CAAjB,CAAwBE,CAAxB,CAvBL,KAIZE,OAJY,CAIZA,CAJY,eAKZC,CALY,GAKZA,IALY,KAMZC,IANY,CAMZA,CANY,YAMLf,uBANK,OAOZgB,IAPY,CAOZA,CAPY,YAOLd,uBAPK,OAQZe,KARY,CAQZA,CARY,YAQJb,wBARI,GASZc,CATY,GASZA,QATY,KAUZC,YAVY,CAWZC,CAXY,GAWZA,SAXY,CAYZC,CAZY,GAYZA,KAZY,CAaZC,CAbY,GAaZA,QAbY,CAcZC,CAdY,GAcZA,OAdY,CAeZC,CAfY,GAeZA,MAfY,CAgBZC,CAhBY,GAgBZA,QAhBY,CAiBZC,CAjBY,GAiBZA,QAjBY,CAkBZC,CAlBY,GAkBZA,IAlBY,CAmBZC,CAnBY,GAmBZA,QAnBY,CAoBZC,CApBY,GAoBZA,OApBY,CAqBZC,CArBY,GAqBZA,QArBY,CAsBTC,CAtBS,uCA+Bd,MACE,8CACMA,CADN,EAEE,SAAS,CAAEzB,UAAU,CAAC,CAAES,IAAI,CAAJA,CAAF,CAAQC,IAAI,CAAJA,CAAR,CAAcE,QAAQ,CAARA,CAAd,CAAwBC,YAAY,cAApC,CAAsCF,KAAK,CAALA,CAAtC,CAAD,CAAgD,CACnEG,CADmE,CAAhD,CAFvB,CAKE,GAAG,CAAEzB,UAAU,CAAC,CAACe,CAAD,CAAMC,CAAN,CAAD,CALjB,GAOE,6BACE,IAAI,CAAC,UADP,CAEE,IAAI,CAAEG,CAFR,CAGE,SAAS,CAAER,UAAU,CAAC,OAAD,CAAU,CAACV,UAAU,EAAX,CAAV,CAHvB,CAIE,OAAO,CAAEiB,CAJX,CAKE,EAAE,CAAEgB,CALN,CAME,QAAQ,CAAEX,CANZ,CAOE,QAAQ,CArB6C,QAArDc,aAAqD,CAACC,CAAD,CAAO,CAC5DX,CAD4D,EAE9DA,CAAQ,CAAC,CAACT,CAAF,CAAW,CAAEoB,CAAC,CAADA,CAAF,CAAX,CAEX,CAUG,CAQE,OAAO,CAAEV,CARX,CASE,MAAM,CAAEC,CATV,CAUE,QAAQ,CAAEC,CAVZ,CAWE,QAAQ,CAAEC,CAXZ,CAYE,IAAI,CAAEC,CAZR,CAaE,QAAQ,CAAEC,CAbZ,CAcE,GAAG,CAAEE,CAdP,EAPF,CAuBGT,CAAK,EAAI,4BAAM,SAAS,CAAEf,UAAU,CAAC,OAAD,CAA3B,EAAuCe,CAAvC,CAvBZ,CA0BH,CA3DqB,CAAjB"}
|