@skbkontur/react-ui 6.4.1-8cb58.0 → 6.4.2-static-css.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/CHANGELOG.md +25 -0
- package/README.md +97 -0
- package/components/Autocomplete/Autocomplete.d.ts +0 -1
- package/components/Autocomplete/Autocomplete.js +13 -4
- package/components/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/Autocomplete.styles.d.ts +4 -4
- package/components/Autocomplete/Autocomplete.styles.js +5 -16
- package/components/Autocomplete/Autocomplete.styles.js.map +1 -1
- package/components/Button/Button.d.ts +15 -1
- package/components/Button/Button.js +162 -76
- package/components/Button/Button.js.map +1 -1
- package/components/Button/Button.styles.d.ts +107 -91
- package/components/Button/Button.styles.js +108 -255
- package/components/Button/Button.styles.js.map +1 -1
- package/components/Button/ButtonArrow.d.ts +2 -3
- package/components/Button/ButtonArrow.js +8 -10
- package/components/Button/ButtonArrow.js.map +1 -1
- package/components/Button/ButtonIcon.js +7 -17
- package/components/Button/ButtonIcon.js.map +1 -1
- package/components/Button/ButtonIcon.styles.d.ts +15 -15
- package/components/Button/ButtonIcon.styles.js +16 -51
- package/components/Button/ButtonIcon.styles.js.map +1 -1
- package/components/Calendar/Calendar.d.ts +0 -1
- package/components/Calendar/Calendar.js +3 -3
- package/components/Calendar/Calendar.js.map +1 -1
- package/components/Calendar/Calendar.styles.d.ts +5 -5
- package/components/Calendar/Calendar.styles.js +6 -20
- package/components/Calendar/Calendar.styles.js.map +1 -1
- package/components/Calendar/CalendarDay.js +11 -7
- package/components/Calendar/CalendarDay.js.map +1 -1
- package/components/Calendar/DayCellView.js +1 -3
- package/components/Calendar/DayCellView.js.map +1 -1
- package/components/Calendar/DayCellView.styles.d.ts +10 -8
- package/components/Calendar/DayCellView.styles.js +11 -29
- package/components/Calendar/DayCellView.styles.js.map +1 -1
- package/components/Calendar/Month.js +6 -10
- package/components/Calendar/Month.js.map +1 -1
- package/components/Calendar/MonthView.js +7 -7
- package/components/Calendar/MonthView.js.map +1 -1
- package/components/Calendar/MonthView.styles.d.ts +12 -12
- package/components/Calendar/MonthView.styles.js +13 -45
- package/components/Calendar/MonthView.styles.js.map +1 -1
- package/components/Center/Center.d.ts +0 -1
- package/components/Center/Center.js +1 -1
- package/components/Center/Center.js.map +1 -1
- package/components/Center/Center.styles.d.ts +7 -6
- package/components/Center/Center.styles.js +8 -25
- package/components/Center/Center.styles.js.map +1 -1
- package/components/Checkbox/Checkbox.d.ts +8 -1
- package/components/Checkbox/Checkbox.js +57 -26
- package/components/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.styles.d.ts +33 -30
- package/components/Checkbox/Checkbox.styles.js +35 -95
- package/components/Checkbox/Checkbox.styles.js.map +1 -1
- package/components/DateInput/DateFragmentsView.d.ts +0 -2
- package/components/DateInput/DateFragmentsView.js +10 -7
- package/components/DateInput/DateFragmentsView.js.map +1 -1
- package/components/DateInput/DateFragmentsView.styles.d.ts +8 -6
- package/components/DateInput/DateFragmentsView.styles.js +9 -26
- package/components/DateInput/DateFragmentsView.styles.js.map +1 -1
- package/components/DateInput/DateInput.d.ts +0 -2
- package/components/DateInput/DateInput.js +6 -8
- package/components/DateInput/DateInput.js.map +1 -1
- package/components/DateInput/DateInput.styles.d.ts +10 -11
- package/components/DateInput/DateInput.styles.js +11 -28
- package/components/DateInput/DateInput.styles.js.map +1 -1
- package/components/DatePicker/DatePicker.d.ts +0 -1
- package/components/DatePicker/DatePicker.js +2 -2
- package/components/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.styles.d.ts +4 -4
- package/components/DatePicker/DatePicker.styles.js +5 -16
- package/components/DatePicker/DatePicker.styles.js.map +1 -1
- package/components/DatePicker/MobilePicker.styles.d.ts +3 -2
- package/components/DatePicker/MobilePicker.styles.js +4 -13
- package/components/DatePicker/MobilePicker.styles.js.map +1 -1
- package/components/DatePicker/getMobilePickerTheme.js +27 -9
- package/components/DatePicker/getMobilePickerTheme.js.map +1 -1
- package/components/DateRangePicker/DateRangePicker.d.ts +4 -4
- package/components/DateRangePicker/DateRangePicker.js +26 -28
- package/components/DateRangePicker/DateRangePicker.js.map +1 -1
- package/components/DateRangePicker/DateRangePicker.styles.d.ts +20 -14
- package/components/DateRangePicker/DateRangePicker.styles.js +25 -49
- package/components/DateRangePicker/DateRangePicker.styles.js.map +1 -1
- package/components/DateRangePicker/DateRangePickerTheme.js +30 -10
- package/components/DateRangePicker/DateRangePickerTheme.js.map +1 -1
- package/components/Dropdown/getDropdownTheme.d.ts +11 -0
- package/components/Dropdown/getDropdownTheme.js +23 -4
- package/components/Dropdown/getDropdownTheme.js.map +1 -1
- package/components/DropdownMenu/getDropdownMenuTheme.js +9 -2
- package/components/DropdownMenu/getDropdownMenuTheme.js.map +1 -1
- package/components/FileUploader/FileUploader.d.ts +2 -1
- package/components/FileUploader/FileUploader.js +50 -45
- package/components/FileUploader/FileUploader.js.map +1 -1
- package/components/FileUploader/FileUploader.styles.d.ts +69 -68
- package/components/FileUploader/FileUploader.styles.js +71 -214
- package/components/FileUploader/FileUploader.styles.js.map +1 -1
- package/components/FileUploader/FileUploaderFile.js +28 -30
- package/components/FileUploader/FileUploaderFile.js.map +1 -1
- package/components/FileUploader/FileUploaderFile.styles.d.ts +57 -57
- package/components/FileUploader/FileUploaderFile.styles.js +58 -180
- package/components/FileUploader/FileUploaderFile.styles.js.map +1 -1
- package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.js +17 -19
- package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
- package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.styles.d.ts +31 -31
- package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.styles.js +32 -99
- package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.styles.js.map +1 -1
- package/components/FileUploader/FileUploaderFileStatusIcon.js +2 -4
- package/components/FileUploader/FileUploaderFileStatusIcon.js.map +1 -1
- package/components/FileUploader/FileUploaderFileTypeIcon.js +47 -52
- package/components/FileUploader/FileUploaderFileTypeIcon.js.map +1 -1
- package/components/FileUploader/FileUploaderFileTypeIcon.styles.d.ts +14 -0
- package/components/FileUploader/FileUploaderFileTypeIcon.styles.js +16 -0
- package/components/FileUploader/FileUploaderFileTypeIcon.styles.js.map +1 -0
- package/components/FxInput/FxInput.d.ts +1 -1
- package/components/FxInput/FxInput.js +6 -2
- package/components/FxInput/FxInput.js.map +1 -1
- package/components/FxInput/FxInput.styles.d.ts +4 -0
- package/components/FxInput/FxInput.styles.js +6 -0
- package/components/FxInput/FxInput.styles.js.map +1 -0
- package/components/FxInput/FxInputRestoreBtn.js +23 -15
- package/components/FxInput/FxInputRestoreBtn.js.map +1 -1
- package/components/FxInput/FxInputRestoreBtn.styles.d.ts +6 -0
- package/components/FxInput/FxInputRestoreBtn.styles.js +8 -0
- package/components/FxInput/FxInputRestoreBtn.styles.js.map +1 -0
- package/components/GlobalLoader/GlobalLoaderView.js +30 -14
- package/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
- package/components/GlobalLoader/GlobalLoaderView.styles.d.ts +22 -16
- package/components/GlobalLoader/GlobalLoaderView.styles.js +22 -67
- package/components/GlobalLoader/GlobalLoaderView.styles.js.map +1 -1
- package/components/Group/Group.d.ts +0 -1
- package/components/Group/Group.js +2 -3
- package/components/Group/Group.js.map +1 -1
- package/components/Group/Group.styles.d.ts +7 -7
- package/components/Group/Group.styles.js +8 -28
- package/components/Group/Group.styles.js.map +1 -1
- package/components/Hint/Hint.d.ts +10 -2
- package/components/Hint/Hint.js +47 -19
- package/components/Hint/Hint.js.map +1 -1
- package/components/Hint/Hint.styles.d.ts +4 -4
- package/components/Hint/Hint.styles.js +5 -16
- package/components/Hint/Hint.styles.js.map +1 -1
- package/components/Hint/HintDelayController.d.ts +11 -0
- package/components/Hint/HintDelayController.js +50 -0
- package/components/Hint/HintDelayController.js.map +1 -0
- package/components/Input/Input.d.ts +0 -1
- package/components/Input/Input.js +13 -13
- package/components/Input/Input.js.map +1 -1
- package/components/Input/Input.styles.d.ts +20 -20
- package/components/Input/Input.styles.js +21 -66
- package/components/Input/Input.styles.js.map +1 -1
- package/components/Input/InputLayout/InputLayout.styles.d.ts +26 -17
- package/components/Input/InputLayout/InputLayout.styles.js +27 -57
- package/components/Input/InputLayout/InputLayout.styles.js.map +1 -1
- package/components/Input/InputLayout/InputLayoutAsideCounter.js +8 -8
- package/components/Input/InputLayout/InputLayoutAsideCounter.js.map +1 -1
- package/components/Input/InputLayout/InputLayoutAsideIcon.js +19 -25
- package/components/Input/InputLayout/InputLayoutAsideIcon.js.map +1 -1
- package/components/Input/InputLayout/InputLayoutAsideText.js +4 -4
- package/components/Input/InputLayout/InputLayoutAsideText.js.map +1 -1
- package/components/Kebab/Kebab.d.ts +0 -1
- package/components/Kebab/Kebab.js +2 -2
- package/components/Kebab/Kebab.js.map +1 -1
- package/components/Kebab/Kebab.styles.d.ts +10 -10
- package/components/Kebab/Kebab.styles.js +11 -34
- package/components/Kebab/Kebab.styles.js.map +1 -1
- package/components/Link/Link.d.ts +0 -1
- package/components/Link/Link.js +23 -18
- package/components/Link/Link.js.map +1 -1
- package/components/Link/Link.styles.d.ts +23 -23
- package/components/Link/Link.styles.js +25 -81
- package/components/Link/Link.styles.js.map +1 -1
- package/components/Link/LinkIcon.js +4 -6
- package/components/Link/LinkIcon.js.map +1 -1
- package/components/Loader/Loader.d.ts +0 -2
- package/components/Loader/Loader.js +2 -3
- package/components/Loader/Loader.js.map +1 -1
- package/components/Loader/Loader.styles.d.ts +7 -7
- package/components/Loader/Loader.styles.js +8 -25
- package/components/Loader/Loader.styles.js.map +1 -1
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.js +15 -21
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.js.map +1 -1
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.styles.d.ts +3 -2
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.styles.js +5 -13
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.styles.js.map +1 -1
- package/components/MaskedInput/MaskedInput.styles.d.ts +3 -3
- package/components/MaskedInput/MaskedInput.styles.js +5 -14
- package/components/MaskedInput/MaskedInput.styles.js.map +1 -1
- package/components/MaskedInput/MaskedInputLegacy.js +4 -6
- package/components/MaskedInput/MaskedInputLegacy.js.map +1 -1
- package/components/MaskedInputV2/MaskedInputV2.js +4 -6
- package/components/MaskedInputV2/MaskedInputV2.js.map +1 -1
- package/components/MaskedInputV2/MaskedInputV2.styles.d.ts +3 -3
- package/components/MaskedInputV2/MaskedInputV2.styles.js +5 -14
- package/components/MaskedInputV2/MaskedInputV2.styles.js.map +1 -1
- package/components/MaskedInputV2/internal/MaskOverlay.js +8 -8
- package/components/MaskedInputV2/internal/MaskOverlay.js.map +1 -1
- package/components/MaskedInputV2/internal/MaskedCore.js +7 -5
- package/components/MaskedInputV2/internal/MaskedCore.js.map +1 -1
- package/components/MaskedInputV2/internal/MaskedInternal.styles.d.ts +7 -7
- package/components/MaskedInputV2/internal/MaskedInternal.styles.js +9 -25
- package/components/MaskedInputV2/internal/MaskedInternal.styles.js.map +1 -1
- package/components/MenuFooter/MenuFooter.js +10 -12
- package/components/MenuFooter/MenuFooter.js.map +1 -1
- package/components/MenuFooter/MenuFooter.styles.d.ts +9 -9
- package/components/MenuFooter/MenuFooter.styles.js +10 -32
- package/components/MenuFooter/MenuFooter.styles.js.map +1 -1
- package/components/MenuHeader/MenuHeader.js +9 -11
- package/components/MenuHeader/MenuHeader.js.map +1 -1
- package/components/MenuHeader/MenuHeader.styles.d.ts +9 -9
- package/components/MenuHeader/MenuHeader.styles.js +10 -32
- package/components/MenuHeader/MenuHeader.styles.js.map +1 -1
- package/components/MenuItem/MenuItem.d.ts +0 -1
- package/components/MenuItem/MenuItem.js +21 -21
- package/components/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.mixins.d.ts +6 -0
- package/components/MenuItem/MenuItem.mixins.js +7 -1
- package/components/MenuItem/MenuItem.mixins.js.map +1 -1
- package/components/MenuItem/MenuItem.styles.d.ts +26 -26
- package/components/MenuItem/MenuItem.styles.js +28 -85
- package/components/MenuItem/MenuItem.styles.js.map +1 -1
- package/components/MenuSeparator/MenuSeparator.js +4 -6
- package/components/MenuSeparator/MenuSeparator.js.map +1 -1
- package/components/MenuSeparator/MenuSeparator.styles.d.ts +4 -4
- package/components/MenuSeparator/MenuSeparator.styles.js +5 -16
- package/components/MenuSeparator/MenuSeparator.styles.js.map +1 -1
- package/components/MiniModal/MiniModal.styles.d.ts +10 -10
- package/components/MiniModal/MiniModal.styles.js +11 -35
- package/components/MiniModal/MiniModal.styles.js.map +1 -1
- package/components/MiniModal/MiniModalBody.js +3 -3
- package/components/MiniModal/MiniModalBody.js.map +1 -1
- package/components/MiniModal/MiniModalFooter.js +4 -6
- package/components/MiniModal/MiniModalFooter.js.map +1 -1
- package/components/MiniModal/MiniModalHeader.js +4 -6
- package/components/MiniModal/MiniModalHeader.js.map +1 -1
- package/components/MiniModal/MiniModalIndent.js +2 -4
- package/components/MiniModal/MiniModalIndent.js.map +1 -1
- package/components/MiniModal/getMiniModalTheme.js +39 -13
- package/components/MiniModal/getMiniModalTheme.js.map +1 -1
- package/components/Modal/Modal.d.ts +0 -1
- package/components/Modal/Modal.js +8 -8
- package/components/Modal/Modal.js.map +1 -1
- package/components/Modal/Modal.styles.d.ts +50 -50
- package/components/Modal/Modal.styles.js +52 -161
- package/components/Modal/Modal.styles.js.map +1 -1
- package/components/Modal/ModalBody.d.ts +0 -1
- package/components/Modal/ModalBody.js +7 -7
- package/components/Modal/ModalBody.js.map +1 -1
- package/components/Modal/ModalClose.js +7 -9
- package/components/Modal/ModalClose.js.map +1 -1
- package/components/Modal/ModalFooter.js +3 -3
- package/components/Modal/ModalFooter.js.map +1 -1
- package/components/Modal/ModalHeader.js +3 -3
- package/components/Modal/ModalHeader.js.map +1 -1
- package/components/Modal/ModalSeparator.js +4 -6
- package/components/Modal/ModalSeparator.js.map +1 -1
- package/components/Paging/Paging.d.ts +0 -2
- package/components/Paging/Paging.js +32 -37
- package/components/Paging/Paging.js.map +1 -1
- package/components/Paging/Paging.styles.d.ts +31 -31
- package/components/Paging/Paging.styles.js +32 -97
- package/components/Paging/Paging.styles.js.map +1 -1
- package/components/PasswordInput/PasswordInput.d.ts +0 -2
- package/components/PasswordInput/PasswordInput.js +6 -11
- package/components/PasswordInput/PasswordInput.js.map +1 -1
- package/components/PasswordInput/PasswordInput.styles.d.ts +10 -10
- package/components/PasswordInput/PasswordInput.styles.js +11 -34
- package/components/PasswordInput/PasswordInput.styles.js.map +1 -1
- package/components/Radio/Radio.d.ts +8 -1
- package/components/Radio/Radio.js +59 -28
- package/components/Radio/Radio.js.map +1 -1
- package/components/Radio/Radio.styles.d.ts +33 -30
- package/components/Radio/Radio.styles.js +35 -95
- package/components/Radio/Radio.styles.js.map +1 -1
- package/components/RadioGroup/RadioGroup.d.ts +0 -1
- package/components/RadioGroup/RadioGroup.js +1 -2
- package/components/RadioGroup/RadioGroup.js.map +1 -1
- package/components/RadioGroup/RadioGroup.styles.d.ts +5 -5
- package/components/RadioGroup/RadioGroup.styles.js +6 -22
- package/components/RadioGroup/RadioGroup.styles.js.map +1 -1
- package/components/ScrollContainer/ScrollBar.d.ts +1 -3
- package/components/ScrollContainer/ScrollBar.js +9 -14
- package/components/ScrollContainer/ScrollBar.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.d.ts +0 -1
- package/components/ScrollContainer/ScrollContainer.js +1 -1
- package/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.styles.d.ts +13 -13
- package/components/ScrollContainer/ScrollContainer.styles.js +15 -43
- package/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
- package/components/Select/Select.d.ts +0 -1
- package/components/Select/Select.js +12 -12
- package/components/Select/Select.js.map +1 -1
- package/components/Select/Select.styles.d.ts +17 -17
- package/components/Select/Select.styles.js +18 -55
- package/components/Select/Select.styles.js.map +1 -1
- package/components/Select/selectTheme.js +31 -7
- package/components/Select/selectTheme.js.map +1 -1
- package/components/SidePage/SidePage.d.ts +0 -2
- package/components/SidePage/SidePage.js +8 -10
- package/components/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.styles.d.ts +49 -49
- package/components/SidePage/SidePage.styles.js +50 -156
- package/components/SidePage/SidePage.styles.js.map +1 -1
- package/components/SidePage/SidePageBody.d.ts +0 -1
- package/components/SidePage/SidePageBody.js +7 -8
- package/components/SidePage/SidePageBody.js.map +1 -1
- package/components/SidePage/SidePageCloseButton.js +6 -8
- package/components/SidePage/SidePageCloseButton.js.map +1 -1
- package/components/SidePage/SidePageContainer.d.ts +0 -2
- package/components/SidePage/SidePageContainer.js +11 -13
- package/components/SidePage/SidePageContainer.js.map +1 -1
- package/components/SidePage/SidePageFooter.d.ts +0 -2
- package/components/SidePage/SidePageFooter.js +11 -13
- package/components/SidePage/SidePageFooter.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +0 -1
- package/components/SidePage/SidePageHeader.js +10 -10
- package/components/SidePage/SidePageHeader.js.map +1 -1
- package/components/Spinner/Spinner.d.ts +0 -2
- package/components/Spinner/Spinner.js +7 -10
- package/components/Spinner/Spinner.js.map +1 -1
- package/components/Spinner/Spinner.styles.d.ts +12 -12
- package/components/Spinner/Spinner.styles.js +13 -41
- package/components/Spinner/Spinner.styles.js.map +1 -1
- package/components/Sticky/Sticky.d.ts +0 -1
- package/components/Sticky/Sticky.js +1 -1
- package/components/Sticky/Sticky.js.map +1 -1
- package/components/Sticky/Sticky.styles.d.ts +7 -6
- package/components/Sticky/Sticky.styles.js +8 -25
- package/components/Sticky/Sticky.styles.js.map +1 -1
- package/components/Switcher/Switcher.d.ts +0 -1
- package/components/Switcher/Switcher.js +6 -6
- package/components/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/Switcher.styles.d.ts +11 -11
- package/components/Switcher/Switcher.styles.js +12 -37
- package/components/Switcher/Switcher.styles.js.map +1 -1
- package/components/Switcher/switcherTheme.js +12 -4
- package/components/Switcher/switcherTheme.js.map +1 -1
- package/components/Tabs/Indicator.d.ts +0 -1
- package/components/Tabs/Indicator.js +2 -2
- package/components/Tabs/Indicator.js.map +1 -1
- package/components/Tabs/Indicator.styles.d.ts +7 -7
- package/components/Tabs/Indicator.styles.js +8 -25
- package/components/Tabs/Indicator.styles.js.map +1 -1
- package/components/Tabs/Tab.d.ts +0 -2
- package/components/Tabs/Tab.js +19 -24
- package/components/Tabs/Tab.js.map +1 -1
- package/components/Tabs/Tab.styles.d.ts +27 -27
- package/components/Tabs/Tab.styles.js +30 -99
- package/components/Tabs/Tab.styles.js.map +1 -1
- package/components/Tabs/Tabs.d.ts +0 -2
- package/components/Tabs/Tabs.js +24 -29
- package/components/Tabs/Tabs.js.map +1 -1
- package/components/Tabs/Tabs.styles.d.ts +6 -6
- package/components/Tabs/Tabs.styles.js +8 -25
- package/components/Tabs/Tabs.styles.js.map +1 -1
- package/components/Textarea/Textarea.d.ts +0 -2
- package/components/Textarea/Textarea.js +17 -24
- package/components/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.styles.d.ts +26 -22
- package/components/Textarea/Textarea.styles.js +27 -71
- package/components/Textarea/Textarea.styles.js.map +1 -1
- package/components/Textarea/TextareaCounter.js +22 -14
- package/components/Textarea/TextareaCounter.js.map +1 -1
- package/components/TimePicker/TimePicker.styles.d.ts +11 -11
- package/components/TimePicker/TimePicker.styles.js +12 -37
- package/components/TimePicker/TimePicker.styles.js.map +1 -1
- package/components/TimePicker/TimePickerItems.js +6 -6
- package/components/TimePicker/TimePickerItems.js.map +1 -1
- package/components/TimePicker/TimePickerPopup.js +1 -1
- package/components/TimePicker/TimePickerPopup.js.map +1 -1
- package/components/Toast/Toast.d.ts +0 -1
- package/components/Toast/Toast.js +9 -6
- package/components/Toast/Toast.js.map +1 -1
- package/components/Toast/Toast.styles.d.ts +6 -5
- package/components/Toast/Toast.styles.js +7 -22
- package/components/Toast/Toast.styles.js.map +1 -1
- package/components/Toast/ToastView.d.ts +0 -1
- package/components/Toast/ToastView.js +9 -17
- package/components/Toast/ToastView.js.map +1 -1
- package/components/Toast/ToastView.styles.d.ts +19 -17
- package/components/Toast/ToastView.styles.js +20 -65
- package/components/Toast/ToastView.styles.js.map +1 -1
- package/components/Toggle/Toggle.d.ts +1 -1
- package/components/Toggle/Toggle.js +55 -39
- package/components/Toggle/Toggle.js.map +1 -1
- package/components/Toggle/Toggle.styles.d.ts +47 -46
- package/components/Toggle/Toggle.styles.js +48 -143
- package/components/Toggle/Toggle.styles.js.map +1 -1
- package/components/Token/Token.d.ts +0 -2
- package/components/Token/Token.js +5 -10
- package/components/Token/Token.js.map +1 -1
- package/components/Token/Token.styles.d.ts +20 -19
- package/components/Token/Token.styles.js +22 -62
- package/components/Token/Token.styles.js.map +1 -1
- package/components/Token/TokenView.js +8 -10
- package/components/Token/TokenView.js.map +1 -1
- package/components/TokenInput/TextWidthHelper.d.ts +0 -1
- package/components/TokenInput/TextWidthHelper.js +4 -4
- package/components/TokenInput/TextWidthHelper.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +1 -2
- package/components/TokenInput/TokenInput.js +20 -22
- package/components/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.styles.d.ts +21 -20
- package/components/TokenInput/TokenInput.styles.js +22 -66
- package/components/TokenInput/TokenInput.styles.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +0 -1
- package/components/Tooltip/Tooltip.js +12 -12
- package/components/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.styles.d.ts +11 -10
- package/components/Tooltip/Tooltip.styles.js +12 -34
- package/components/Tooltip/Tooltip.styles.js.map +1 -1
- package/index.d.ts +4 -0
- package/index.js +12 -0
- package/index.js.map +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon.js +7 -9
- package/internal/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon.styles.d.ts +11 -12
- package/internal/ClearCrossIcon/ClearCrossIcon.styles.js +12 -35
- package/internal/ClearCrossIcon/ClearCrossIcon.styles.js.map +1 -1
- package/internal/CloseButtonIcon/CloseButtonIcon.d.ts +21 -11
- package/internal/CloseButtonIcon/CloseButtonIcon.js +28 -13
- package/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
- package/internal/CloseButtonIcon/CloseButtonIcon.styles.d.ts +8 -8
- package/internal/CloseButtonIcon/CloseButtonIcon.styles.js +9 -23
- package/internal/CloseButtonIcon/CloseButtonIcon.styles.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper.d.ts +5 -1
- package/internal/CommonWrapper/CommonWrapper.js +107 -6
- package/internal/CommonWrapper/CommonWrapper.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView.d.ts +1 -2
- package/internal/CustomComboBox/ComboBoxView.js +8 -7
- package/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.styles.d.ts +5 -3
- package/internal/CustomComboBox/CustomComboBox.styles.js +6 -16
- package/internal/CustomComboBox/CustomComboBox.styles.js.map +1 -1
- package/internal/DateSelect/DateSelect.d.ts +0 -1
- package/internal/DateSelect/DateSelect.js +2 -2
- package/internal/DateSelect/DateSelect.js.map +1 -1
- package/internal/DateSelect/DateSelect.styles.d.ts +5 -5
- package/internal/DateSelect/DateSelect.styles.js +7 -19
- package/internal/DateSelect/DateSelect.styles.js.map +1 -1
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +15 -1
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +36 -15
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.styles.d.ts +5 -0
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.styles.js +7 -0
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.styles.js.map +1 -0
- package/internal/InputLikeText/InputLikeText.d.ts +0 -1
- package/internal/InputLikeText/InputLikeText.js +21 -17
- package/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.styles.d.ts +7 -7
- package/internal/InputLikeText/InputLikeText.styles.js +8 -28
- package/internal/InputLikeText/InputLikeText.styles.js.map +1 -1
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +0 -1
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js +14 -14
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -1
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.d.ts +3 -2
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js +4 -13
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js.map +1 -1
- package/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +3 -2
- package/internal/MaskCharLowLine/MaskCharLowLine.styles.js +4 -13
- package/internal/MaskCharLowLine/MaskCharLowLine.styles.js.map +1 -1
- package/internal/Menu/Menu.d.ts +0 -1
- package/internal/Menu/Menu.js +9 -9
- package/internal/Menu/Menu.js.map +1 -1
- package/internal/Menu/Menu.styles.d.ts +15 -15
- package/internal/Menu/Menu.styles.js +16 -49
- package/internal/Menu/Menu.styles.js.map +1 -1
- package/internal/MenuMessage/MenuMessage.js +10 -10
- package/internal/MenuMessage/MenuMessage.js.map +1 -1
- package/internal/MenuMessage/MenuMessage.styles.d.ts +10 -10
- package/internal/MenuMessage/MenuMessage.styles.js +11 -39
- package/internal/MenuMessage/MenuMessage.styles.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.d.ts +0 -1
- package/internal/MobilePopup/MobilePopup.js +23 -11
- package/internal/MobilePopup/MobilePopup.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.styles.d.ts +16 -16
- package/internal/MobilePopup/MobilePopup.styles.js +17 -55
- package/internal/MobilePopup/MobilePopup.styles.js.map +1 -1
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.d.ts +0 -1
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js +5 -5
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js.map +1 -1
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.d.ts +6 -6
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.js +7 -23
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.js.map +1 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +0 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js +10 -10
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +13 -13
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js +14 -45
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js.map +1 -1
- package/internal/NativeDateInput/NativeDateInput.d.ts +0 -1
- package/internal/NativeDateInput/NativeDateInput.js +1 -1
- package/internal/NativeDateInput/NativeDateInput.js.map +1 -1
- package/internal/NativeDateInput/NativeDateInput.styles.d.ts +3 -2
- package/internal/NativeDateInput/NativeDateInput.styles.js +4 -13
- package/internal/NativeDateInput/NativeDateInput.styles.js.map +1 -1
- package/internal/NativeTimeInput/NativeTimeInput.js +1 -2
- package/internal/NativeTimeInput/NativeTimeInput.js.map +1 -1
- package/internal/NativeTimeInput/NativeTimeInput.styles.d.ts +3 -2
- package/internal/NativeTimeInput/NativeTimeInput.styles.js +4 -13
- package/internal/NativeTimeInput/NativeTimeInput.styles.js.map +1 -1
- package/internal/Popup/Popup.d.ts +0 -1
- package/internal/Popup/Popup.js +5 -5
- package/internal/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.styles.d.ts +21 -21
- package/internal/Popup/Popup.styles.js +22 -67
- package/internal/Popup/Popup.styles.js.map +1 -1
- package/internal/Popup/PopupPin.d.ts +0 -1
- package/internal/Popup/PopupPin.js +1 -1
- package/internal/Popup/PopupPin.js.map +1 -1
- package/internal/Popup/PopupPin.styles.d.ts +9 -8
- package/internal/Popup/PopupPin.styles.js +10 -31
- package/internal/Popup/PopupPin.styles.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.d.ts +0 -1
- package/internal/PopupMenu/PopupMenu.js +1 -1
- package/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.styles.d.ts +4 -3
- package/internal/PopupMenu/PopupMenu.styles.js +5 -16
- package/internal/PopupMenu/PopupMenu.styles.js.map +1 -1
- package/internal/RenderContainer/RenderInnerContainer.js +4 -2
- package/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
- package/internal/ResizeDetector/ResizeDetector.d.ts +0 -1
- package/internal/ResizeDetector/ResizeDetector.js +1 -1
- package/internal/ResizeDetector/ResizeDetector.js.map +1 -1
- package/internal/ResizeDetector/ResizeDetector.styles.d.ts +7 -6
- package/internal/ResizeDetector/ResizeDetector.styles.js +8 -25
- package/internal/ResizeDetector/ResizeDetector.styles.js.map +1 -1
- package/internal/SpinnerIcon/SpinnerIcon.js +2 -2
- package/internal/SpinnerIcon/SpinnerIcon.js.map +1 -1
- package/internal/SpinnerIcon/SpinnerIcon.styles.d.ts +6 -5
- package/internal/SpinnerIcon/SpinnerIcon.styles.js +7 -22
- package/internal/SpinnerIcon/SpinnerIcon.styles.js.map +1 -1
- package/internal/TextWidthHelper/TextWidthHelper.d.ts +0 -1
- package/internal/TextWidthHelper/TextWidthHelper.js +1 -1
- package/internal/TextWidthHelper/TextWidthHelper.js.map +1 -1
- package/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +4 -3
- package/internal/TextWidthHelper/TextWidthHelper.styles.js +5 -16
- package/internal/TextWidthHelper/TextWidthHelper.styles.js.map +1 -1
- package/internal/TimeInput/TimeFragments.js +19 -15
- package/internal/TimeInput/TimeFragments.js.map +1 -1
- package/internal/TimeInput/TimeFragments.styles.d.ts +19 -31
- package/internal/TimeInput/TimeFragments.styles.js +20 -76
- package/internal/TimeInput/TimeFragments.styles.js.map +1 -1
- package/internal/TimeInput/TimeInput.js +4 -4
- package/internal/TimeInput/TimeInput.js.map +1 -1
- package/internal/TimeInput/TimeInput.styles.d.ts +6 -6
- package/internal/TimeInput/TimeInput.styles.js +7 -22
- package/internal/TimeInput/TimeInput.styles.js.map +1 -1
- package/internal/icons2022/BaseIcon.js +8 -1
- package/internal/icons2022/BaseIcon.js.map +1 -1
- package/internal/icons2022/BaseIcon.styles.d.ts +5 -2
- package/internal/icons2022/BaseIcon.styles.js +6 -14
- package/internal/icons2022/BaseIcon.styles.js.map +1 -1
- package/internal/icons2022/LoadingIcon.js +3 -5
- package/internal/icons2022/LoadingIcon.js.map +1 -1
- package/internal/themes/BasicTheme.d.ts +10 -0
- package/internal/themes/BasicTheme.js +17 -6
- package/internal/themes/BasicTheme.js.map +1 -1
- package/internal/themes/DarkTheme6_0.js +62 -342
- package/internal/themes/DarkTheme6_0.js.map +1 -1
- package/internal/themes/DarkTheme6_1.js +11 -3
- package/internal/themes/DarkTheme6_1.js.map +1 -1
- package/internal/themes/DarkTheme6_4.js +11 -1
- package/internal/themes/DarkTheme6_4.js.map +1 -1
- package/lib/Upgrades.d.ts +12 -2
- package/lib/Upgrades.js +12 -16
- package/lib/Upgrades.js.map +1 -1
- package/lib/classNames.generated.d.ts +1235 -0
- package/lib/classNames.generated.js +1233 -0
- package/lib/classNames.generated.js.map +1 -0
- package/lib/globalObject.js +4 -1
- package/lib/globalObject.js.map +1 -1
- package/lib/renderEnvironment/RenderEnvironmentContext.d.ts +38 -6
- package/lib/renderEnvironment/RenderEnvironmentContext.js +21 -19
- package/lib/renderEnvironment/RenderEnvironmentContext.js.map +1 -1
- package/lib/renderEnvironment/RenderEnvironmentDecorator.js +6 -3
- package/lib/renderEnvironment/RenderEnvironmentDecorator.js.map +1 -1
- package/lib/styles/baselineCompensation.d.ts +63 -0
- package/lib/styles/baselineCompensation.js +122 -0
- package/lib/styles/baselineCompensation.js.map +1 -0
- package/lib/theming/Emotion.d.ts +43 -9
- package/lib/theming/Emotion.js +70 -35
- package/lib/theming/Emotion.js.map +1 -1
- package/lib/theming/declaredTheme.d.ts +43 -0
- package/lib/theming/declaredTheme.js +56 -0
- package/lib/theming/declaredTheme.js.map +1 -0
- package/lib/theming/hashString.d.ts +19 -0
- package/lib/theming/hashString.js +52 -0
- package/lib/theming/hashString.js.map +1 -0
- package/lib/theming/staticStyles.d.ts +17 -0
- package/lib/theming/staticStyles.js +8 -0
- package/lib/theming/staticStyles.js.map +1 -0
- package/lib/theming/staticThemeDelta.d.ts +17 -0
- package/lib/theming/staticThemeDelta.js +37 -0
- package/lib/theming/staticThemeDelta.js.map +1 -0
- package/lib/theming/staticThemeVars.d.ts +21 -0
- package/lib/theming/staticThemeVars.js +35 -0
- package/lib/theming/staticThemeVars.js.map +1 -0
- package/lib/theming/themeCssVarsClass.d.ts +89 -0
- package/lib/theming/themeCssVarsClass.js +253 -0
- package/lib/theming/themeCssVarsClass.js.map +1 -0
- package/lib/theming/themeCssVarsDelta.d.ts +13 -0
- package/lib/theming/themeCssVarsDelta.js +67 -0
- package/lib/theming/themeCssVarsDelta.js.map +1 -0
- package/lib/theming/themeToCssVars.d.ts +47 -0
- package/lib/theming/themeToCssVars.js +861 -0
- package/lib/theming/themeToCssVars.js.map +1 -0
- package/package.json +47 -6
- package/react-ui-tailwind.css +544 -0
- package/react-ui-themes.css +8628 -0
- package/react-ui-token-map.json +9029 -0
- package/react-ui.css +7776 -0
- package/react-ui.layer.css +7778 -0
- package/themes/dark-6-0.css +1439 -0
- package/themes/dark-6-0.scoped.css +1439 -0
- package/themes/dark-6-1.css +1439 -0
- package/themes/dark-6-1.scoped.css +1439 -0
- package/themes/dark.css +1439 -0
- package/themes/dark.scoped.css +1439 -0
- package/themes/light-6-0.css +1437 -0
- package/themes/light-6-0.scoped.css +1437 -0
- package/themes/light-6-1.css +1437 -0
- package/themes/light-6-1.scoped.css +1437 -0
- package/themes/light.css +1437 -0
- package/themes/light.scoped.css +1437 -0
- package/components/Button/Button.mixins.d.ts +0 -4
- package/components/Button/Button.mixins.js +0 -21
- package/components/Button/Button.mixins.js.map +0 -1
- package/components/Checkbox/Checkbox.mixins.d.ts +0 -4
- package/components/Checkbox/Checkbox.mixins.js +0 -18
- package/components/Checkbox/Checkbox.mixins.js.map +0 -1
- package/components/FileUploader/FileUploader.mixins.d.ts +0 -1
- package/components/FileUploader/FileUploader.mixins.js +0 -4
- package/components/FileUploader/FileUploader.mixins.js.map +0 -1
- package/components/Link/Link.mixins.d.ts +0 -2
- package/components/Link/Link.mixins.js +0 -7
- package/components/Link/Link.mixins.js.map +0 -1
- package/components/MenuFooter/MenuFooter.mixins.d.ts +0 -2
- package/components/MenuFooter/MenuFooter.mixins.js +0 -8
- package/components/MenuFooter/MenuFooter.mixins.js.map +0 -1
- package/components/MenuHeader/MenuHeader.mixins.d.ts +0 -2
- package/components/MenuHeader/MenuHeader.mixins.js +0 -8
- package/components/MenuHeader/MenuHeader.mixins.js.map +0 -1
- package/components/Radio/Radio.mixins.d.ts +0 -7
- package/components/Radio/Radio.mixins.js +0 -30
- package/components/Radio/Radio.mixins.js.map +0 -1
- package/components/Tabs/helpers.d.ts +0 -6
- package/components/Tabs/helpers.js +0 -25
- package/components/Tabs/helpers.js.map +0 -1
- package/components/Textarea/Textarea.mixins.d.ts +0 -2
- package/components/Textarea/Textarea.mixins.js +0 -7
- package/components/Textarea/Textarea.mixins.js.map +0 -1
- package/components/Toggle/Toggle.mixins.d.ts +0 -8
- package/components/Toggle/Toggle.mixins.js +0 -32
- package/components/Toggle/Toggle.mixins.js.map +0 -1
- package/components/Token/Token.mixins.d.ts +0 -1
- package/components/Token/Token.mixins.js +0 -4
- package/components/Token/Token.mixins.js.map +0 -1
- package/components/TokenInput/TokenInput.mixins.d.ts +0 -2
- package/components/TokenInput/TokenInput.mixins.js +0 -7
- package/components/TokenInput/TokenInput.mixins.js.map +0 -1
- package/lib/chars.d.ts +0 -8
- package/lib/chars.js +0 -9
- package/lib/chars.js.map +0 -1
- package/lib/styles/Mixins.d.ts +0 -2
- package/lib/styles/Mixins.js +0 -7
- package/lib/styles/Mixins.js.map +0 -1
- package/lib/styles/UiFont.d.ts +0 -3
- package/lib/styles/UiFont.js +0 -18
- package/lib/styles/UiFont.js.map +0 -1
- package/lib/styles/getLabGrotesqueBaselineCompensation.d.ts +0 -1
- package/lib/styles/getLabGrotesqueBaselineCompensation.js +0 -10
- package/lib/styles/getLabGrotesqueBaselineCompensation.js.map +0 -1
- package/lib/theming/AnimationKeyframes.d.ts +0 -7
- package/lib/theming/AnimationKeyframes.js +0 -24
- package/lib/theming/AnimationKeyframes.js.map +0 -1
- package/lib/theming/useTheme.d.ts +0 -2
- package/lib/theming/useTheme.js +0 -6
- package/lib/theming/useTheme.js.map +0 -1
- package/typings/stylis-plugin-extra-scope.d.ts +0 -3
|
@@ -22,27 +22,25 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
22
22
|
};
|
|
23
23
|
import React from 'react';
|
|
24
24
|
import { useKeyListener } from '../../lib/events/keyListener.js';
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
25
|
+
import { useGlobal, useStyles } from '../../lib/renderEnvironment/index.js';
|
|
26
|
+
import { concatClassNames as cx } from '../../lib/theming/Emotion.js';
|
|
27
27
|
import { CommonWrapper } from '../CommonWrapper/index.js';
|
|
28
28
|
import { getStyles } from './ClearCrossIcon.styles.js';
|
|
29
29
|
import { CrossIcon } from './CrossIcon.js';
|
|
30
30
|
export var ClearCrossIcon = function (_a) {
|
|
31
31
|
var _b = _a.size, size = _b === void 0 ? 'small' : _b, style = _a.style, dataTid = _a["data-tid"], rest = __rest(_a, ["size", "style", 'data-tid']);
|
|
32
32
|
var globalObject = useGlobal();
|
|
33
|
-
var cx = useEmotion().cx;
|
|
34
33
|
var styles = useStyles(getStyles);
|
|
35
|
-
var theme = React.useContext(ThemeContext);
|
|
36
34
|
var keyListener = useKeyListener();
|
|
37
35
|
var getSizeClassNames = function (size) {
|
|
38
36
|
switch (size) {
|
|
39
37
|
case 'large':
|
|
40
|
-
return { button: styles.clearCrossLarge(
|
|
38
|
+
return { button: styles.clearCrossLarge(), span: styles.relativeWidthLarge() };
|
|
41
39
|
case 'medium':
|
|
42
|
-
return { button: styles.clearCrossMedium(
|
|
40
|
+
return { button: styles.clearCrossMedium(), span: styles.relativeWidthMedium() };
|
|
43
41
|
case 'small':
|
|
44
42
|
default:
|
|
45
|
-
return { button: styles.clearCrossSmall(
|
|
43
|
+
return { button: styles.clearCrossSmall(), span: styles.relativeWidthSmall() };
|
|
46
44
|
}
|
|
47
45
|
};
|
|
48
46
|
var _c = React.useState(false), focusedByTab = _c[0], setFocusedByTab = _c[1];
|
|
@@ -58,9 +56,9 @@ export var ClearCrossIcon = function (_a) {
|
|
|
58
56
|
var handleBlur = function () { return setFocusedByTab(false); };
|
|
59
57
|
return (React.createElement(CommonWrapper, __assign({}, rest),
|
|
60
58
|
React.createElement("span", { className: getSizeClassNames(size).span },
|
|
61
|
-
React.createElement("button", __assign({ "data-tid": dataTid, type: "button", tabIndex: -1, className: cx(styles.root(
|
|
59
|
+
React.createElement("button", __assign({ "data-tid": dataTid, type: "button", tabIndex: -1, className: cx(styles.root(),
|
|
62
60
|
// Todo: use &:focus-visible on root instead styles.focus. It supported on Chrome >= 86, Firefox >= 4, Safari >= 15.4
|
|
63
|
-
focusedByTab && styles.focus(
|
|
61
|
+
focusedByTab && styles.focus(), getSizeClassNames(size).button), style: style, onFocus: handleFocus, onBlur: handleBlur }, rest),
|
|
64
62
|
React.createElement(CrossIcon, { size: size, focusable: true })))));
|
|
65
63
|
};
|
|
66
64
|
ClearCrossIcon.__KONTUR_REACT_UI__ = 'ClearCrossIcon';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClearCrossIcon.js","sourceRoot":"","sources":["ClearCrossIcon.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ClearCrossIcon.js","sourceRoot":"","sources":["ClearCrossIcon.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,gBAAgB,IAAI,EAAE,EAAE,MAAM,8BAA8B,CAAC;AAGtE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAU3C,MAAM,CAAC,IAAM,cAAc,GAAiD,UAAC,EAK5E;IAJC,IAAA,YAAc,EAAd,IAAI,mBAAG,OAAO,KAAA,EACd,KAAK,WAAA,EACO,OAAO,iBAAA,EAChB,IAAI,cAJoE,6BAK5E,CADQ;IAEP,IAAM,YAAY,GAAG,SAAS,EAAE,CAAC;IACjC,IAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,IAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,IAAM,iBAAiB,GAAG,UAAC,IAAe;QACxC,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,OAAO;gBACV,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,kBAAkB,EAAE,EAAE,CAAC;YACjF,KAAK,QAAQ;gBACX,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,gBAAgB,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,mBAAmB,EAAE,EAAE,CAAC;YACnF,KAAK,OAAO,CAAC;YACb;gBACE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,kBAAkB,EAAE,EAAE,CAAC;QACnF,CAAC;IACH,CAAC,CAAC;IAEI,IAAA,KAAkC,KAAK,CAAC,QAAQ,CAAU,KAAK,CAAC,EAA/D,YAAY,QAAA,EAAE,eAAe,QAAkC,CAAC;IAEvE,IAAM,WAAW,GAAG;;QAClB,4FAA4F;QAC5F,MAAA,YAAY,CAAC,qBAAqB,6DAAG;YACnC,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC;gBAC7B,eAAe,CAAC,IAAI,CAAC,CAAC;YACxB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,IAAM,UAAU,GAAG,cAAM,OAAA,eAAe,CAAC,KAAK,CAAC,EAAtB,CAAsB,CAAC;IAEhD,OAAO,CACL,oBAAC,aAAa,eAAK,IAAI;QACrB,8BAAM,SAAS,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI;YAC3C,qDACY,OAAO,EACjB,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,CAAC,EACZ,SAAS,EAAE,EAAE,CACX,MAAM,CAAC,IAAI,EAAE;gBACb,qHAAqH;gBACrH,YAAY,IAAI,MAAM,CAAC,KAAK,EAAE,EAC9B,iBAAiB,CAAC,IAAI,CAAC,CAAC,MAAM,CAC/B,EACD,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,UAAU,IACd,IAAI;gBAER,oBAAC,SAAS,IAAC,IAAI,EAAE,IAAI,EAAE,SAAS,SAAG,CAC5B,CACJ,CACO,CACjB,CAAC;AACJ,CAAC,CAAC;AAEF,cAAc,CAAC,mBAAmB,GAAG,gBAAgB,CAAC;AACtD,cAAc,CAAC,WAAW,GAAG,gBAAgB,CAAC","sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\n\nimport type { TokenSize } from '../../components/Token/index.js';\nimport { useKeyListener } from '../../lib/events/keyListener.js';\nimport { useGlobal, useStyles } from '../../lib/renderEnvironment/index.js';\nimport { concatClassNames as cx } from '../../lib/theming/Emotion.js';\nimport type { SizeProp } from '../../lib/types/props.js';\nimport type { CommonProps } from '../CommonWrapper/index.js';\nimport { CommonWrapper } from '../CommonWrapper/index.js';\nimport { getStyles } from './ClearCrossIcon.styles.js';\nimport { CrossIcon } from './CrossIcon.js';\n\nexport interface ClearCrossIconProps\n extends Pick<AriaAttributes, 'aria-label'>, React.ButtonHTMLAttributes<HTMLButtonElement>, CommonProps {\n /** Ширина и высота иконки крестика\n * @default small */\n size?: SizeProp;\n 'data-tid'?: string;\n}\n\nexport const ClearCrossIcon: React.FunctionComponent<ClearCrossIconProps> = ({\n size = 'small',\n style,\n 'data-tid': dataTid,\n ...rest\n}) => {\n const globalObject = useGlobal();\n const styles = useStyles(getStyles);\n const keyListener = useKeyListener();\n const getSizeClassNames = (size: TokenSize) => {\n switch (size) {\n case 'large':\n return { button: styles.clearCrossLarge(), span: styles.relativeWidthLarge() };\n case 'medium':\n return { button: styles.clearCrossMedium(), span: styles.relativeWidthMedium() };\n case 'small':\n default:\n return { button: styles.clearCrossSmall(), span: styles.relativeWidthSmall() };\n }\n };\n\n const [focusedByTab, setFocusedByTab] = React.useState<boolean>(false);\n\n const handleFocus = () => {\n // focus event fires before keyDown eventlistener so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n setFocusedByTab(true);\n }\n });\n };\n const handleBlur = () => setFocusedByTab(false);\n\n return (\n <CommonWrapper {...rest}>\n <span className={getSizeClassNames(size).span}>\n <button\n data-tid={dataTid}\n type=\"button\"\n tabIndex={-1}\n className={cx(\n styles.root(),\n // Todo: use &:focus-visible on root instead styles.focus. It supported on Chrome >= 86, Firefox >= 4, Safari >= 15.4\n focusedByTab && styles.focus(),\n getSizeClassNames(size).button,\n )}\n style={style}\n onFocus={handleFocus}\n onBlur={handleBlur}\n {...rest}\n >\n <CrossIcon size={size} focusable />\n </button>\n </span>\n </CommonWrapper>\n );\n};\n\nClearCrossIcon.__KONTUR_REACT_UI__ = 'ClearCrossIcon';\nClearCrossIcon.displayName = 'ClearCrossIcon';\n"]}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
};
|
|
1
|
+
/** Правила — в `ClearCrossIcon.css`; здесь только имена классов. */
|
|
2
|
+
export declare const getStyles: (ignored?: unknown) => import("../../lib/theming/staticStyles.js").StaticStyles<{
|
|
3
|
+
root: string;
|
|
4
|
+
focus: string;
|
|
5
|
+
clearCrossSmall: string;
|
|
6
|
+
clearCrossMedium: string;
|
|
7
|
+
clearCrossLarge: string;
|
|
8
|
+
relativeWidthSmall: string;
|
|
9
|
+
relativeWidthMedium: string;
|
|
10
|
+
relativeWidthLarge: string;
|
|
11
|
+
}>;
|
|
@@ -1,36 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
return emotion.css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n color: ", ";\n "], ["\n color: ", ";\n "])), t.clearCrossIconHoverColor);
|
|
14
|
-
},
|
|
15
|
-
clearCrossSmall: function (t) {
|
|
16
|
-
return emotion.css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n width: ", ";\n height: ", ";\n border-radius: ", ";\n "], ["\n width: ", ";\n height: ", ";\n border-radius: ", ";\n "])), t.clearCrossIconWidthSmall, t.clearCrossIconHeightSmall, t.clearCrossIconBorderRadiusSmall);
|
|
17
|
-
},
|
|
18
|
-
clearCrossMedium: function (t) {
|
|
19
|
-
return emotion.css(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n width: ", ";\n height: ", ";\n border-radius: ", ";\n "], ["\n width: ", ";\n height: ", ";\n border-radius: ", ";\n "])), t.clearCrossIconWidthMedium, t.clearCrossIconHeightMedium, t.clearCrossIconBorderRadiusMedium);
|
|
20
|
-
},
|
|
21
|
-
clearCrossLarge: function (t) {
|
|
22
|
-
return emotion.css(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n width: ", ";\n height: ", ";\n border-radius: ", ";\n "], ["\n width: ", ";\n height: ", ";\n border-radius: ", ";\n "])), t.clearCrossIconWidthLarge, t.clearCrossIconHeightLarge, t.clearCrossIconBorderRadiusLarge);
|
|
23
|
-
},
|
|
24
|
-
relativeWidthSmall: function (t) {
|
|
25
|
-
return emotion.css(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n display: inline-block;\n width: ", ";\n "], ["\n display: inline-block;\n width: ", ";\n "])), t.inputIconSizeSmall);
|
|
26
|
-
},
|
|
27
|
-
relativeWidthMedium: function (t) {
|
|
28
|
-
return emotion.css(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n display: inline-block;\n width: ", ";\n "], ["\n display: inline-block;\n width: ", ";\n "])), t.inputIconSizeMedium);
|
|
29
|
-
},
|
|
30
|
-
relativeWidthLarge: function (t) {
|
|
31
|
-
return emotion.css(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n display: inline-block;\n width: ", ";\n "], ["\n display: inline-block;\n width: ", ";\n "])), t.inputIconSizeLarge);
|
|
32
|
-
},
|
|
33
|
-
});
|
|
34
|
-
};
|
|
35
|
-
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8;
|
|
1
|
+
import { staticStyles } from '../../lib/theming/staticStyles.js';
|
|
2
|
+
/** Правила — в `ClearCrossIcon.css`; здесь только имена классов. */
|
|
3
|
+
export var getStyles = staticStyles({
|
|
4
|
+
root: 'react-ui-ClearCrossIcon-root',
|
|
5
|
+
focus: 'react-ui-ClearCrossIcon-focus',
|
|
6
|
+
clearCrossSmall: 'react-ui-ClearCrossIcon-clearCrossSmall',
|
|
7
|
+
clearCrossMedium: 'react-ui-ClearCrossIcon-clearCrossMedium',
|
|
8
|
+
clearCrossLarge: 'react-ui-ClearCrossIcon-clearCrossLarge',
|
|
9
|
+
relativeWidthSmall: 'react-ui-ClearCrossIcon-relativeWidthSmall',
|
|
10
|
+
relativeWidthMedium: 'react-ui-ClearCrossIcon-relativeWidthMedium',
|
|
11
|
+
relativeWidthLarge: 'react-ui-ClearCrossIcon-relativeWidthLarge',
|
|
12
|
+
});
|
|
36
13
|
//# sourceMappingURL=ClearCrossIcon.styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClearCrossIcon.styles.js","sourceRoot":"","sources":["ClearCrossIcon.styles.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ClearCrossIcon.styles.js","sourceRoot":"","sources":["ClearCrossIcon.styles.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAEjE,oEAAoE;AACpE,MAAM,CAAC,IAAM,SAAS,GAAG,YAAY,CAAC;IACpC,IAAI,EAAE,8BAA8B;IACpC,KAAK,EAAE,+BAA+B;IACtC,eAAe,EAAE,yCAAyC;IAC1D,gBAAgB,EAAE,0CAA0C;IAC5D,eAAe,EAAE,yCAAyC;IAC1D,kBAAkB,EAAE,4CAA4C;IAChE,mBAAmB,EAAE,6CAA6C;IAClE,kBAAkB,EAAE,4CAA4C;CACjE,CAAC,CAAC","sourcesContent":["import { staticStyles } from '../../lib/theming/staticStyles.js';\n\n/** Правила — в `ClearCrossIcon.css`; здесь только имена классов. */\nexport const getStyles = staticStyles({\n root: 'react-ui-ClearCrossIcon-root',\n focus: 'react-ui-ClearCrossIcon-focus',\n clearCrossSmall: 'react-ui-ClearCrossIcon-clearCrossSmall',\n clearCrossMedium: 'react-ui-ClearCrossIcon-clearCrossMedium',\n clearCrossLarge: 'react-ui-ClearCrossIcon-clearCrossLarge',\n relativeWidthSmall: 'react-ui-ClearCrossIcon-relativeWidthSmall',\n relativeWidthMedium: 'react-ui-ClearCrossIcon-relativeWidthMedium',\n relativeWidthLarge: 'react-ui-ClearCrossIcon-relativeWidthLarge',\n});\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AriaAttributes
|
|
1
|
+
import type { AriaAttributes } from 'react';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import type { CommonProps } from '../CommonWrapper/index.js';
|
|
4
4
|
export interface CloseButtonIconProps extends Pick<AriaAttributes, 'aria-label'>, React.ButtonHTMLAttributes<HTMLButtonElement>, CommonProps {
|
|
@@ -15,22 +15,32 @@ export interface CloseButtonIconProps extends Pick<AriaAttributes, 'aria-label'>
|
|
|
15
15
|
*/
|
|
16
16
|
side?: number;
|
|
17
17
|
/**
|
|
18
|
-
*
|
|
18
|
+
* Возможность сфокусироваться на кнопке клавишей TAB
|
|
19
|
+
*
|
|
20
|
+
* @default true
|
|
21
|
+
* */
|
|
22
|
+
tabbable?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Цвет иконки.
|
|
19
25
|
*
|
|
20
|
-
*
|
|
26
|
+
* @deprecated Библиотека внутри себя цвет задаёт классом через `className`.
|
|
27
|
+
* Проп оставлен для совместимости и порождает правило в рантайме, поэтому его
|
|
28
|
+
* содержимое нельзя извлечь на этапе сборки.
|
|
21
29
|
*/
|
|
22
|
-
color?:
|
|
30
|
+
color?: string;
|
|
23
31
|
/**
|
|
24
|
-
* Цвет иконки при наведении мышью и при
|
|
32
|
+
* Цвет иконки при наведении мышью и при фокусе.
|
|
25
33
|
*
|
|
26
|
-
*
|
|
34
|
+
* @deprecated См. `color`.
|
|
27
35
|
*/
|
|
28
|
-
colorHover?:
|
|
36
|
+
colorHover?: string;
|
|
29
37
|
/**
|
|
30
|
-
*
|
|
38
|
+
* Класс с цветом иконки — вместо цвета в `root`.
|
|
31
39
|
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
|
|
40
|
+
* Нужен, чтобы цвет вызывающего и цвет по умолчанию были взаимоисключающими:
|
|
41
|
+
* в статическом CSS спор между ними решался бы порядком правил, а он не в
|
|
42
|
+
* пользу вызывающего.
|
|
43
|
+
*/
|
|
44
|
+
colorClassName?: string;
|
|
35
45
|
}
|
|
36
46
|
export declare const CloseButtonIcon: React.FunctionComponent<CloseButtonIconProps>;
|
|
@@ -22,25 +22,20 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
22
22
|
};
|
|
23
23
|
import React from 'react';
|
|
24
24
|
import { useKeyListener } from '../../lib/events/keyListener.js';
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import {
|
|
25
|
+
import { useGlobal, useStyles } from '../../lib/renderEnvironment/index.js';
|
|
26
|
+
import { concatClassNames as cx } from '../../lib/theming/Emotion.js';
|
|
27
|
+
import { THEME_CSS_VAR_PREFIX } from '../../lib/theming/themeToCssVars.js';
|
|
28
28
|
import { CommonWrapper } from '../CommonWrapper/index.js';
|
|
29
29
|
import { DEFAULT_ICON_SIZE } from '../icons2022/iconConstants.js';
|
|
30
30
|
import { getStyles } from './CloseButtonIcon.styles.js';
|
|
31
31
|
import { CrossIcon } from './CrossIcon.js';
|
|
32
32
|
export var CloseButtonIcon = function (_a) {
|
|
33
|
-
var _b
|
|
33
|
+
var _b, _c;
|
|
34
|
+
var _d = _a.side, side = _d === void 0 ? DEFAULT_ICON_SIZE : _d, _e = _a.size, size = _e === void 0 ? DEFAULT_ICON_SIZE : _e, _f = _a.tabbable, tabbable = _f === void 0 ? true : _f, style = _a.style, className = _a.className, color = _a.color, colorHover = _a.colorHover, colorClassName = _a.colorClassName, rest = __rest(_a, ["side", "size", "tabbable", "style", "className", "color", "colorHover", "colorClassName"]);
|
|
34
35
|
var globalObject = useGlobal();
|
|
35
|
-
var cx = useEmotion().cx;
|
|
36
36
|
var styles = useStyles(getStyles);
|
|
37
|
-
var _theme = React.useContext(ThemeContext);
|
|
38
|
-
var theme = ThemeFactory.create({
|
|
39
|
-
closeBtnIconColor: color !== null && color !== void 0 ? color : _theme.closeBtnIconColor,
|
|
40
|
-
closeBtnIconHoverColor: colorHover !== null && colorHover !== void 0 ? colorHover : _theme.closeBtnIconHoverColor,
|
|
41
|
-
}, _theme);
|
|
42
37
|
var keyListener = useKeyListener();
|
|
43
|
-
var
|
|
38
|
+
var _g = React.useState(false), focusedByTab = _g[0], setFocusedByTab = _g[1];
|
|
44
39
|
var handleFocus = function () {
|
|
45
40
|
var _a;
|
|
46
41
|
// focus event fires before keyDown eventlistener
|
|
@@ -53,8 +48,28 @@ export var CloseButtonIcon = function (_a) {
|
|
|
53
48
|
};
|
|
54
49
|
var handleBlur = function () { return setFocusedByTab(false); };
|
|
55
50
|
var tabIndex = !tabbable || rest.disabled ? -1 : 0;
|
|
56
|
-
|
|
57
|
-
|
|
51
|
+
// Внутри библиотеки цвет приезжает статическим классом через `className`, и
|
|
52
|
+
// содержимое таких классов от темы не зависит. Пропы `color`/`colorHover`
|
|
53
|
+
// остались только ради совместимости: каталог называется `internal`, но после
|
|
54
|
+
// сборки путь до компонента резолвится, то есть снятие пропов было бы
|
|
55
|
+
// ломающим.
|
|
56
|
+
//
|
|
57
|
+
// Раньше на каждый такой проп создавалось правило в рантайме — последнее
|
|
58
|
+
// место в библиотеке, где это ещё происходило. Теперь значение подставляется
|
|
59
|
+
// в ту же переменную, которую правило и читает
|
|
60
|
+
// (`.defaultColor { color: var(--kontur-closeBtnIconColor) }`), объявлением на
|
|
61
|
+
// самом элементе: объявление на узле сильнее унаследованного, поэтому
|
|
62
|
+
// переданный цвет побеждает, а `:hover` подхватывает свою переменную тем же
|
|
63
|
+
// правилом. Ни инстанса Emotion, ни тега `<style>` для этого не нужно.
|
|
64
|
+
// Через `Record<string, string>`: `CSSProperties` не знает про пользовательские
|
|
65
|
+
// свойства, а тем же приёмом уже едет инлайн-дельта темы в `CommonWrapper`.
|
|
66
|
+
var overrideColors = __assign(__assign({}, (color ? (_b = {}, _b["".concat(THEME_CSS_VAR_PREFIX, "closeBtnIconColor")] = color, _b) : null)), (colorHover ? (_c = {}, _c["".concat(THEME_CSS_VAR_PREFIX, "closeBtnIconHoverColor")] = colorHover, _c) : null));
|
|
67
|
+
// `className` уходит в `CommonWrapper`, а не на `<button>`: сырой спред `rest`
|
|
68
|
+
// ложится после атрибута `className`, и переданный класс затирал бы
|
|
69
|
+
// собственные классы кнопки. `CommonWrapper` домешивает его через `cx`,
|
|
70
|
+
// поэтому цвет от вызывающего перебивает цвет из `root`.
|
|
71
|
+
return (React.createElement(CommonWrapper, __assign({}, rest, { className: className }),
|
|
72
|
+
React.createElement("button", __assign({ tabIndex: tabIndex, style: __assign(__assign({ width: side, height: side }, overrideColors), style), onFocus: handleFocus, onBlur: handleBlur }, rest, { className: cx(styles.root(), colorClassName !== null && colorClassName !== void 0 ? colorClassName : styles.defaultColor(), !rest.disabled && focusedByTab && styles.focus(), rest.disabled && styles.rootDisabled()) }),
|
|
58
73
|
React.createElement("span", { className: styles.wrapper() },
|
|
59
74
|
React.createElement(CrossIcon, { size: side < size ? side : size, focusable: tabIndex >= 0 })))));
|
|
60
75
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CloseButtonIcon.js","sourceRoot":"","sources":["CloseButtonIcon.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"CloseButtonIcon.js","sourceRoot":"","sources":["CloseButtonIcon.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,gBAAgB,IAAI,EAAE,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AA8C3C,MAAM,CAAC,IAAM,eAAe,GAAkD,UAAC,EAU9E;;IATC,IAAA,YAAwB,EAAxB,IAAI,mBAAG,iBAAiB,KAAA,EACxB,YAAwB,EAAxB,IAAI,mBAAG,iBAAiB,KAAA,EACxB,gBAAe,EAAf,QAAQ,mBAAG,IAAI,KAAA,EACf,KAAK,WAAA,EACL,SAAS,eAAA,EACT,KAAK,WAAA,EACL,UAAU,gBAAA,EACV,cAAc,oBAAA,EACX,IAAI,cATsE,2FAU9E,CADQ;IAEP,IAAM,YAAY,GAAG,SAAS,EAAE,CAAC;IACjC,IAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,IAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAC/B,IAAA,KAAkC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAtD,YAAY,QAAA,EAAE,eAAe,QAAyB,CAAC;IAE9D,IAAM,WAAW,GAAG;;QAClB,iDAAiD;QACjD,6CAA6C;QAC7C,MAAA,YAAY,CAAC,qBAAqB,6DAAG;YACnC,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC;gBAC7B,eAAe,CAAC,IAAI,CAAC,CAAC;YACxB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,IAAM,UAAU,GAAG,cAAM,OAAA,eAAe,CAAC,KAAK,CAAC,EAAtB,CAAsB,CAAC;IAEhD,IAAM,QAAQ,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAErD,4EAA4E;IAC5E,0EAA0E;IAC1E,8EAA8E;IAC9E,sEAAsE;IACtE,YAAY;IACZ,EAAE;IACF,yEAAyE;IACzE,6EAA6E;IAC7E,+CAA+C;IAC/C,+EAA+E;IAC/E,sEAAsE;IACtE,4EAA4E;IAC5E,uEAAuE;IACvE,gFAAgF;IAChF,4EAA4E;IAC5E,IAAM,cAAc,yBACf,CAAC,KAAK,CAAC,CAAC,WAAG,GAAC,UAAG,oBAAoB,sBAAmB,IAAG,KAAK,MAAG,CAAC,CAAC,IAAI,CAAC,GACxE,CAAC,UAAU,CAAC,CAAC,WAAG,GAAC,UAAG,oBAAoB,2BAAwB,IAAG,UAAU,MAAG,CAAC,CAAC,IAAI,CAAC,CAC3F,CAAC;IAEF,+EAA+E;IAC/E,oEAAoE;IACpE,wEAAwE;IACxE,yDAAyD;IACzD,OAAO,CACL,oBAAC,aAAa,eAAK,IAAI,IAAE,SAAS,EAAE,SAAS;QAC3C,yCACE,QAAQ,EAAE,QAAQ,EAClB,KAAK,sBAAI,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,IAAM,cAAsC,GAAK,KAAK,GACxF,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,UAAU,IACd,IAAI,IACR,SAAS,EAAE,EAAE,CACX,MAAM,CAAC,IAAI,EAAE,EACb,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,MAAM,CAAC,YAAY,EAAE,EACvC,CAAC,IAAI,CAAC,QAAQ,IAAI,YAAY,IAAI,MAAM,CAAC,KAAK,EAAE,EAChD,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,YAAY,EAAE,CACvC;YAED,8BAAM,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE;gBAC/B,oBAAC,SAAS,IAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,IAAI,CAAC,GAAI,CACnE,CACA,CACK,CACjB,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,CAAC,mBAAmB,GAAG,iBAAiB,CAAC;AACxD,eAAe,CAAC,WAAW,GAAG,iBAAiB,CAAC","sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\n\nimport { useKeyListener } from '../../lib/events/keyListener.js';\nimport { useGlobal, useStyles } from '../../lib/renderEnvironment/index.js';\nimport { concatClassNames as cx } from '../../lib/theming/Emotion.js';\nimport { THEME_CSS_VAR_PREFIX } from '../../lib/theming/themeToCssVars.js';\nimport type { CommonProps } from '../CommonWrapper/index.js';\nimport { CommonWrapper } from '../CommonWrapper/index.js';\nimport { DEFAULT_ICON_SIZE } from '../icons2022/iconConstants.js';\nimport { getStyles } from './CloseButtonIcon.styles.js';\nimport { CrossIcon } from './CrossIcon.js';\n\nexport interface CloseButtonIconProps\n extends Pick<AriaAttributes, 'aria-label'>, React.ButtonHTMLAttributes<HTMLButtonElement>, CommonProps {\n /**\n * Ширина и высота иконки крестика\n *\n * @default 16\n */\n size?: number;\n /**\n * Ширина и высота всей кнопки\n *\n * @default 16\n */\n side?: number;\n /**\n * Возможность сфокусироваться на кнопке клавишей TAB\n *\n * @default true\n * */\n tabbable?: boolean;\n /**\n * Цвет иконки.\n *\n * @deprecated Библиотека внутри себя цвет задаёт классом через `className`.\n * Проп оставлен для совместимости и порождает правило в рантайме, поэтому его\n * содержимое нельзя извлечь на этапе сборки.\n */\n color?: string;\n /**\n * Цвет иконки при наведении мышью и при фокусе.\n *\n * @deprecated См. `color`.\n */\n colorHover?: string;\n /**\n * Класс с цветом иконки — вместо цвета в `root`.\n *\n * Нужен, чтобы цвет вызывающего и цвет по умолчанию были взаимоисключающими:\n * в статическом CSS спор между ними решался бы порядком правил, а он не в\n * пользу вызывающего.\n */\n colorClassName?: string;\n}\n\nexport const CloseButtonIcon: React.FunctionComponent<CloseButtonIconProps> = ({\n side = DEFAULT_ICON_SIZE,\n size = DEFAULT_ICON_SIZE,\n tabbable = true,\n style,\n className,\n color,\n colorHover,\n colorClassName,\n ...rest\n}) => {\n const globalObject = useGlobal();\n const styles = useStyles(getStyles);\n const keyListener = useKeyListener();\n const [focusedByTab, setFocusedByTab] = React.useState(false);\n\n const handleFocus = () => {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n setFocusedByTab(true);\n }\n });\n };\n const handleBlur = () => setFocusedByTab(false);\n\n const tabIndex = !tabbable || rest.disabled ? -1 : 0;\n\n // Внутри библиотеки цвет приезжает статическим классом через `className`, и\n // содержимое таких классов от темы не зависит. Пропы `color`/`colorHover`\n // остались только ради совместимости: каталог называется `internal`, но после\n // сборки путь до компонента резолвится, то есть снятие пропов было бы\n // ломающим.\n //\n // Раньше на каждый такой проп создавалось правило в рантайме — последнее\n // место в библиотеке, где это ещё происходило. Теперь значение подставляется\n // в ту же переменную, которую правило и читает\n // (`.defaultColor { color: var(--kontur-closeBtnIconColor) }`), объявлением на\n // самом элементе: объявление на узле сильнее унаследованного, поэтому\n // переданный цвет побеждает, а `:hover` подхватывает свою переменную тем же\n // правилом. Ни инстанса Emotion, ни тега `<style>` для этого не нужно.\n // Через `Record<string, string>`: `CSSProperties` не знает про пользовательские\n // свойства, а тем же приёмом уже едет инлайн-дельта темы в `CommonWrapper`.\n const overrideColors: Record<string, string> = {\n ...(color ? { [`${THEME_CSS_VAR_PREFIX}closeBtnIconColor`]: color } : null),\n ...(colorHover ? { [`${THEME_CSS_VAR_PREFIX}closeBtnIconHoverColor`]: colorHover } : null),\n };\n\n // `className` уходит в `CommonWrapper`, а не на `<button>`: сырой спред `rest`\n // ложится после атрибута `className`, и переданный класс затирал бы\n // собственные классы кнопки. `CommonWrapper` домешивает его через `cx`,\n // поэтому цвет от вызывающего перебивает цвет из `root`.\n return (\n <CommonWrapper {...rest} className={className}>\n <button\n tabIndex={tabIndex}\n style={{ width: side, height: side, ...(overrideColors as React.CSSProperties), ...style }}\n onFocus={handleFocus}\n onBlur={handleBlur}\n {...rest}\n className={cx(\n styles.root(),\n colorClassName ?? styles.defaultColor(),\n !rest.disabled && focusedByTab && styles.focus(),\n rest.disabled && styles.rootDisabled(),\n )}\n >\n <span className={styles.wrapper()}>\n <CrossIcon size={side < size ? side : size} focusable={tabIndex >= 0} />\n </span>\n </button>\n </CommonWrapper>\n );\n};\n\nCloseButtonIcon.__KONTUR_REACT_UI__ = 'CloseButtonIcon';\nCloseButtonIcon.displayName = 'CloseButtonIcon';\n"]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
rootDisabled
|
|
6
|
-
focus
|
|
7
|
-
wrapper
|
|
8
|
-
}
|
|
1
|
+
/** Правила — в `CloseButtonIcon.css`; здесь только имена классов. */
|
|
2
|
+
export declare const getStyles: (ignored?: unknown) => import("../../lib/theming/staticStyles.js").StaticStyles<{
|
|
3
|
+
root: string;
|
|
4
|
+
defaultColor: string;
|
|
5
|
+
rootDisabled: string;
|
|
6
|
+
focus: string;
|
|
7
|
+
wrapper: string;
|
|
8
|
+
}>;
|
|
@@ -1,24 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
return emotion.css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n ", "\n display: inline-block;\n position: relative;\n border-radius: ", ";\n color: ", ";\n cursor: pointer;\n transition: color ", " ", ";\n\n &:enabled:focus,\n &:enabled:hover {\n color: ", ";\n }\n "], ["\n ", "\n display: inline-block;\n position: relative;\n border-radius: ", ";\n color: ", ";\n cursor: pointer;\n transition: color ", " ", ";\n\n &:enabled:focus,\n &:enabled:hover {\n color: ", ";\n }\n "])), resetButton(), t.closeBtnIconBorderRadius, t.closeBtnIconColor, t.transitionDuration, t.transitionTimingFunction, t.closeBtnIconHoverColor);
|
|
11
|
-
},
|
|
12
|
-
rootDisabled: function (t) {
|
|
13
|
-
return emotion.css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n color: ", ";\n "], ["\n color: ", ";\n "])), t.closeBtnIconDisabledColor);
|
|
14
|
-
},
|
|
15
|
-
focus: function (t) {
|
|
16
|
-
return emotion.css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n box-shadow: ", ";\n "], ["\n box-shadow: ", ";\n "])), t.closeBtnIconFocusShadow);
|
|
17
|
-
},
|
|
18
|
-
wrapper: function () {
|
|
19
|
-
return emotion.css(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n box-sizing: content-box;\n display: flex;\n width: 100%;\n height: 100%;\n align-items: center;\n justify-content: center;\n pointer-events: none;\n "], ["\n box-sizing: content-box;\n display: flex;\n width: 100%;\n height: 100%;\n align-items: center;\n justify-content: center;\n pointer-events: none;\n "])));
|
|
20
|
-
},
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
|
-
var templateObject_1, templateObject_2, templateObject_3, templateObject_4;
|
|
1
|
+
import { staticStyles } from '../../lib/theming/staticStyles.js';
|
|
2
|
+
/** Правила — в `CloseButtonIcon.css`; здесь только имена классов. */
|
|
3
|
+
export var getStyles = staticStyles({
|
|
4
|
+
root: 'react-ui-CloseButtonIcon-root',
|
|
5
|
+
defaultColor: 'react-ui-CloseButtonIcon-defaultColor',
|
|
6
|
+
rootDisabled: 'react-ui-CloseButtonIcon-rootDisabled',
|
|
7
|
+
focus: 'react-ui-CloseButtonIcon-focus',
|
|
8
|
+
wrapper: 'react-ui-CloseButtonIcon-wrapper',
|
|
9
|
+
});
|
|
24
10
|
//# sourceMappingURL=CloseButtonIcon.styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CloseButtonIcon.styles.js","sourceRoot":"","sources":["CloseButtonIcon.styles.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CloseButtonIcon.styles.js","sourceRoot":"","sources":["CloseButtonIcon.styles.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAEjE,qEAAqE;AACrE,MAAM,CAAC,IAAM,SAAS,GAAG,YAAY,CAAC;IACpC,IAAI,EAAE,+BAA+B;IACrC,YAAY,EAAE,uCAAuC;IACrD,YAAY,EAAE,uCAAuC;IACrD,KAAK,EAAE,gCAAgC;IACvC,OAAO,EAAE,kCAAkC;CAC5C,CAAC,CAAC","sourcesContent":["import { staticStyles } from '../../lib/theming/staticStyles.js';\n\n/** Правила — в `CloseButtonIcon.css`; здесь только имена классов. */\nexport const getStyles = staticStyles({\n root: 'react-ui-CloseButtonIcon-root',\n defaultColor: 'react-ui-CloseButtonIcon-defaultColor',\n rootDisabled: 'react-ui-CloseButtonIcon-rootDisabled',\n focus: 'react-ui-CloseButtonIcon-focus',\n wrapper: 'react-ui-CloseButtonIcon-wrapper',\n});\n"]}
|
|
@@ -1,15 +1,19 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { TGetRootNode } from '../../lib/rootNode/index.js';
|
|
3
|
+
import { ThemeContext } from '../../lib/theming/ThemeContext.js';
|
|
3
4
|
import type { CommonProps, CommonPropsRootNodeRef, CommonWrapperProps } from './types.js';
|
|
4
5
|
export type CommonPropsWithRootNodeRef = CommonProps & CommonPropsRootNodeRef;
|
|
5
6
|
export declare class CommonWrapper<P extends CommonPropsWithRootNodeRef> extends React.Component<CommonWrapperProps<P> & CommonPropsRootNodeRef> {
|
|
6
7
|
static __KONTUR_REACT_UI__: string;
|
|
7
8
|
static displayName: string;
|
|
9
|
+
static contextType: React.Context<Readonly<typeof import("../themes/BasicTheme.js").BasicThemeClass>>;
|
|
10
|
+
context: React.ContextType<typeof ThemeContext>;
|
|
8
11
|
private cx;
|
|
12
|
+
private globalObject;
|
|
9
13
|
private child;
|
|
10
14
|
getRootNode: TGetRootNode;
|
|
11
15
|
private setRootNode;
|
|
12
16
|
private rootNodeSubscription;
|
|
13
|
-
render(): React.
|
|
17
|
+
render(): React.JSX.Element;
|
|
14
18
|
private ref;
|
|
15
19
|
}
|
|
@@ -47,9 +47,27 @@ import { callChildRef } from '../../lib/callChildRef/callChildRef.js';
|
|
|
47
47
|
import { getElementRef } from '../../lib/getElementRef.js';
|
|
48
48
|
import { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';
|
|
49
49
|
import { getRootNode, isInstanceWithRootNode, rootNode } from '../../lib/rootNode/index.js';
|
|
50
|
+
import { injectBaselineCompensationVars } from '../../lib/styles/baselineCompensation.js';
|
|
51
|
+
import { DeclaredThemeContext, themeCarrierSignature } from '../../lib/theming/declaredTheme.js';
|
|
52
|
+
import { ThemeContext } from '../../lib/theming/ThemeContext.js';
|
|
53
|
+
import { getThemeCssVars, isThemeCssVarsClass } from '../../lib/theming/themeCssVarsClass.js';
|
|
54
|
+
import { THEME_CSS_VAR_PREFIX } from '../../lib/theming/themeToCssVars.js';
|
|
50
55
|
import { isFunction, isRefableElement } from '../../lib/utils.js';
|
|
51
56
|
import { extractCommonProps } from './utils/extractCommonProps.js';
|
|
52
57
|
import { getCommonVisualStateDataAttributes } from './utils/getCommonVisualStateDataAttributes.js';
|
|
58
|
+
/** Объявления темы из чужой дельты: имена переменных начинаются с префикса. */
|
|
59
|
+
var withoutThemeVars = function (style) {
|
|
60
|
+
if (!style) {
|
|
61
|
+
return style;
|
|
62
|
+
}
|
|
63
|
+
var result = {};
|
|
64
|
+
Object.keys(style).forEach(function (property) {
|
|
65
|
+
if (!property.startsWith(THEME_CSS_VAR_PREFIX)) {
|
|
66
|
+
result[property] = style[property];
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
return result;
|
|
70
|
+
};
|
|
53
71
|
var CommonWrapper = /** @class */ (function (_super) {
|
|
54
72
|
__extends(CommonWrapper, _super);
|
|
55
73
|
function CommonWrapper() {
|
|
@@ -79,27 +97,110 @@ var CommonWrapper = /** @class */ (function (_super) {
|
|
|
79
97
|
}
|
|
80
98
|
CommonWrapper.prototype.render = function () {
|
|
81
99
|
var _this = this;
|
|
100
|
+
// Централизованно для всех компонентов: раньше звалось из `getStyles`
|
|
101
|
+
// Checkbox/Radio/Toggle, но после перевода на `staticStyles()` их фабрика
|
|
102
|
+
// не выполняется вовсе — см. комментарий у самой функции.
|
|
103
|
+
injectBaselineCompensationVars(this.globalObject);
|
|
82
104
|
var _a = extractCommonProps(this.props), _b = _a[0], _c = _a[1], className = _b.className, style = _b.style, children = _b.children, rootNodeRef = _b.rootNodeRef, dataProps = __rest(_b, ["className", "style", "children", "rootNodeRef"]), rest = __rest(_c, []);
|
|
83
105
|
this.child = isFunction(children) ? children(rest) : children;
|
|
84
106
|
// TODO: replace count with only in 7.0
|
|
85
107
|
if (React.Children.count(this.child) > 1) {
|
|
86
108
|
warning(false, 'CommonWrapper expects a single child');
|
|
87
109
|
}
|
|
88
|
-
var getChildProps = function (child) {
|
|
110
|
+
var getChildProps = function (child, needsCarrier) {
|
|
111
|
+
var _a;
|
|
89
112
|
var childProps = __assign(__assign({}, getCommonVisualStateDataAttributes(rest)), dataProps);
|
|
90
113
|
isRefableElement(child) && (childProps.ref = _this.ref);
|
|
91
|
-
|
|
114
|
+
// Класс с переменными темы приклеивается строкой, а НЕ через `cx`: `cx`
|
|
115
|
+
// сливает зарегистрированные классы в один новый, и тогда хеш общего класса
|
|
116
|
+
// зависел бы от значений темы — класснеймы снова разъехались бы между
|
|
117
|
+
// светлой и тёмной.
|
|
118
|
+
//
|
|
119
|
+
// Из класса ребёнка такой класс сначала выбрасывается: `CommonWrapper`
|
|
120
|
+
// вкладываются друг в друга (например у Kebab корень — Button), и без этого
|
|
121
|
+
// внешний класс переменных попал бы в `cx` внутреннего.
|
|
122
|
+
var themeVars = getThemeCssVars(_this.context);
|
|
123
|
+
var childClassNames = ((_a = child.props.className) !== null && _a !== void 0 ? _a : '').split(' ').filter(Boolean);
|
|
124
|
+
var hasOuterThemeVars = childClassNames.some(isThemeCssVarsClass);
|
|
125
|
+
var childClassName = childClassNames.filter(function (name) { return !isThemeCssVarsClass(name); }).join(' ');
|
|
126
|
+
// Из собственного пропа выбрасывается не всякий класс темы, а ровно тот,
|
|
127
|
+
// который печатается строкой ниже. Внешняя обёртка кладёт свой носитель
|
|
128
|
+
// именно в `className` внутреннего компонента (у Kebab корень — Button, у
|
|
129
|
+
// Autocomplete — Input), и без этого одно и то же имя оказывалось на узле
|
|
130
|
+
// до трёх раз.
|
|
131
|
+
//
|
|
132
|
+
// Фильтр по префиксу здесь не годится: `<Button className={
|
|
133
|
+
// useThemeCssVars(MY_THEME).className}>` — законный способ задать
|
|
134
|
+
// поддереву свою тему, и такой класс принадлежит приложению, а не нам.
|
|
135
|
+
// Дубликат носителя выбрасывается из пропа только тогда, когда мы печатаем
|
|
136
|
+
// свой: иначе выбрасывать нечего и НЕЛЬЗЯ. Внешняя обёртка кладёт носитель
|
|
137
|
+
// именно в `className` внутреннего компонента (`Group` прокидывает
|
|
138
|
+
// `{...this.props}` в свой `CommonWrapper`), и если свой мы не печатаем, то
|
|
139
|
+
// пришедший — единственный на узле. Вырезать его значило бы стереть тему
|
|
140
|
+
// у целого поддерева; на `FxInput` это ровно так и вышло.
|
|
141
|
+
var ownThemeClassNames = new Set(themeVars.className.split(' ').filter(Boolean));
|
|
142
|
+
var outerClassName = needsCarrier
|
|
143
|
+
? (className === null || className === void 0 ? void 0 : className.split(' ').filter(function (name) { return !ownThemeClassNames.has(name); }).join(' ')) || undefined
|
|
144
|
+
: className;
|
|
145
|
+
// Носитель печатается только на ГРАНИЦЕ смены темы: если та же тема уже
|
|
146
|
+
// объявлена выше по DOM, повторять её блок незачем — а вреда от повтора
|
|
147
|
+
// много. Объявление на самом элементе всегда сильнее унаследованного,
|
|
148
|
+
// поэтому собственный блок на корне каждого компонента экранировал и
|
|
149
|
+
// `:root`, и контейнер приложения (раздел 8.3).
|
|
150
|
+
var classNames = [needsCarrier ? themeVars.className : '', _this.cx(childClassName, outerClassName)]
|
|
151
|
+
.filter(Boolean)
|
|
152
|
+
.join(' ');
|
|
92
153
|
classNames && (childProps.className = classNames);
|
|
93
|
-
|
|
154
|
+
// Дельта производной темы идёт инлайном и стоит первой: свой `style` у
|
|
155
|
+
// компонента и `style` из пропов обязаны её перебивать, а не наоборот.
|
|
156
|
+
// React ставит объявления через CSSOM, поэтому правила в таблице стилей
|
|
157
|
+
// не появляется — со внешним CSS страница остаётся без тега `<style>`.
|
|
158
|
+
//
|
|
159
|
+
// Чужая дельта из пропов ребёнка выбрасывается вместе с чужим классом
|
|
160
|
+
// темы — эти двое всегда приезжают парой. `CommonWrapper` вкладываются
|
|
161
|
+
// друг в друга (у Kebab корень — Button), и между ними тема может
|
|
162
|
+
// смениться: тогда класс достался бы от одной темы, а объявления поверх
|
|
163
|
+
// него — от другой. Без класса темы `--kontur-*` в пропах — уже
|
|
164
|
+
// объявления приложения, и трогать их нельзя.
|
|
165
|
+
var outerStyle = hasOuterThemeVars ? withoutThemeVars(child.props.style) : child.props.style;
|
|
166
|
+
// Дельта производной темы — такая же часть носителя, как и класс, и едет
|
|
167
|
+
// вместе с ним: без класса базы её объявления не на чем считать.
|
|
168
|
+
var styles = __assign(__assign(__assign({}, (needsCarrier ? themeVars.style : undefined)), outerStyle), style);
|
|
94
169
|
Object.keys(styles).length && (childProps.style = styles);
|
|
95
170
|
return childProps;
|
|
96
171
|
};
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
172
|
+
var themeVars = getThemeCssVars(this.context);
|
|
173
|
+
var signature = themeCarrierSignature(themeVars);
|
|
174
|
+
// Через `Consumer`, а не `contextType`: тот занят `ThemeContext`, и второй
|
|
175
|
+
// контекст классовому компоненту иначе не прочитать. Тем же приёмом это уже
|
|
176
|
+
// сделано в `RenderEnvironmentDecorator`.
|
|
177
|
+
return (React.createElement(DeclaredThemeContext.Consumer, null, function (declared) {
|
|
178
|
+
var isElement = React.isValidElement(_this.child);
|
|
179
|
+
// Носитель нужен, только если тема сменилась И его есть на что
|
|
180
|
+
// повесить. Ребёнок не элемент — клонировать нечего, класс никуда не
|
|
181
|
+
// попадёт; объявить при этом тему объявленной значило бы обмануть
|
|
182
|
+
// поддерево: вложенные компоненты решили бы, что носитель выше есть,
|
|
183
|
+
// а его нет. Так и произошло на `FxInput`.
|
|
184
|
+
var needsCarrier = isElement && declared !== signature;
|
|
185
|
+
// А публикуется объявленная тема ТОЛЬКО когда ребёнок — настоящий
|
|
186
|
+
// DOM-элемент. Если это компонент, класс уезжает ему пропом, и куда он
|
|
187
|
+
// его повесит — неизвестно: `Menu` вешает на узел глубже своего
|
|
188
|
+
// корня, и `MenuHeader` оказывался уже не под носителем. Знать это
|
|
189
|
+
// снаружи нельзя, поэтому там, где неизвестно, поддерево считается
|
|
190
|
+
// необъявленным — лишний носитель дешевле потерянных переменных.
|
|
191
|
+
var childIsDomElement = isElement && typeof _this.child.type === 'string';
|
|
192
|
+
var declaresForSubtree = needsCarrier && childIsDomElement;
|
|
193
|
+
var content = isElement
|
|
194
|
+
? React.cloneElement(_this.child, getChildProps(_this.child, needsCarrier))
|
|
195
|
+
: _this.child;
|
|
196
|
+
// Провайдер не рождает DOM-узла, поэтому ни `ref`, ни `getRootNode`,
|
|
197
|
+
// ни разметка от него не меняются.
|
|
198
|
+
return declaresForSubtree ? (React.createElement(DeclaredThemeContext.Provider, { value: signature }, content)) : (content);
|
|
199
|
+
}));
|
|
100
200
|
};
|
|
101
201
|
CommonWrapper.__KONTUR_REACT_UI__ = 'CommonWrapper';
|
|
102
202
|
CommonWrapper.displayName = 'CommonWrapper';
|
|
203
|
+
CommonWrapper.contextType = ThemeContext;
|
|
103
204
|
CommonWrapper = __decorate([
|
|
104
205
|
withRenderEnvironment,
|
|
105
206
|
rootNode
|