@skbkontur/react-ui 6.4.1 → 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 +13 -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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalBody.js","sourceRoot":"","sources":["ModalBody.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"ModalBody.js","sourceRoot":"","sources":["ModalBody.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { type JSX } from 'react';\n\nimport type { CommonProps } from '../../internal/CommonWrapper/index.js';\nimport { CommonWrapper } from '../../internal/CommonWrapper/index.js';\nimport { ResizeDetector } from '../../internal/ResizeDetector/index.js';\nimport { ZIndex } from '../../internal/ZIndex/index.js';\nimport * as LayoutEvents from '../../lib/LayoutEvents.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode/index.js';\nimport { rootNode } from '../../lib/rootNode/index.js';\nimport type { ClassNames } from '../../lib/theming/Emotion.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator.js';\nimport { getModalBodyTheme } from './getModalBodyTheme.js';\nimport { ModalZIndexPriority } from './Modal.constants.js';\nimport { getStyles } from './Modal.styles.js';\nimport { ModalContext } from './ModalContext.js';\n\nexport interface ModalBodyProps extends CommonProps {\n /** Убирает отступы. */\n noPadding?: boolean;\n}\n\n/**\n * Контейнер с отступами для содержимого модального окна.\n *\n * @visibleName Modal.Body\n */\n@withRenderEnvironment\n@responsiveLayout\n@rootNode\nexport class ModalBody extends React.Component<ModalBodyProps> {\n public static __KONTUR_REACT_UI__ = 'ModalBody';\n public static displayName = 'ModalBody';\n public static __MODAL_BODY__ = true;\n\n private cx!: ClassNames;\n private styles!: ReturnType<typeof getStyles>;\n private theme!: Theme;\n private isMobileLayout!: boolean;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public render(): React.JSX.Element {\n this.styles = getStyles();\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getModalBodyTheme(theme);\n return <ThemeContext.Provider value={this.theme}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private handleResize = () => {\n LayoutEvents.emit();\n };\n\n public renderMain(): JSX.Element {\n const { noPadding } = this.props;\n return (\n <ModalContext.Consumer>\n {({ additionalPadding, hasHeader }) => (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <ZIndex\n priority={ModalZIndexPriority.Content}\n className={this.cx({\n [this.styles.body()]: true,\n [this.styles.mobileBody()]: this.isMobileLayout,\n [this.styles.bodyWithoutHeader()]: !hasHeader,\n [this.styles.bodyAddPaddingForPanel()]: additionalPadding,\n [this.styles.mobileBodyAddPaddingForPanel()]: additionalPadding && this.isMobileLayout,\n [this.styles.mobileBodyWithoutHeader()]: !hasHeader && this.isMobileLayout,\n [this.styles.bodyWithoutPadding()]: noPadding,\n })}\n >\n {this.isMobileLayout ? (\n <ResizeDetector onResize={this.handleResize}>{this.props.children}</ResizeDetector>\n ) : (\n this.props.children\n )}\n </ZIndex>\n </CommonWrapper>\n )}\n </ModalContext.Consumer>\n );\n }\n}\n"]}
|
|
@@ -20,13 +20,13 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
20
20
|
}
|
|
21
21
|
return t;
|
|
22
22
|
};
|
|
23
|
-
import React
|
|
23
|
+
import React from 'react';
|
|
24
24
|
import { CommonWrapper } from '../../internal/CommonWrapper/index.js';
|
|
25
25
|
import { XIcon20Regular } from '../../internal/icons2022/XIcon/XIcon20Regular.js';
|
|
26
26
|
import { useKeyListener } from '../../lib/events/keyListener.js';
|
|
27
27
|
import { useLocaleForControl } from '../../lib/locale/useLocaleForControl.js';
|
|
28
|
-
import {
|
|
29
|
-
import {
|
|
28
|
+
import { useGlobal, useStyles } from '../../lib/renderEnvironment/index.js';
|
|
29
|
+
import { concatClassNames as cx } from '../../lib/theming/Emotion.js';
|
|
30
30
|
import { ResponsiveLayout } from '../ResponsiveLayout/index.js';
|
|
31
31
|
import { ModalLocaleHelper } from './locale/index.js';
|
|
32
32
|
import { ModalDataTids } from './Modal.constants.js';
|
|
@@ -35,9 +35,7 @@ export function ModalClose(_a) {
|
|
|
35
35
|
var disableClose = _a.disableClose, requestClose = _a.requestClose, otherProps = __rest(_a, ["disableClose", "requestClose"]);
|
|
36
36
|
var locale = useLocaleForControl('Modal', ModalLocaleHelper);
|
|
37
37
|
var globalObject = useGlobal();
|
|
38
|
-
var cx = useEmotion().cx;
|
|
39
38
|
var styles = useStyles(getStyles);
|
|
40
|
-
var theme = useContext(ThemeContext);
|
|
41
39
|
var keyListener = useKeyListener();
|
|
42
40
|
var _b = React.useState(false), focusedByTab = _b[0], setFocusedByTab = _b[1];
|
|
43
41
|
var handleFocus = function () {
|
|
@@ -59,10 +57,10 @@ export function ModalClose(_a) {
|
|
|
59
57
|
var _b;
|
|
60
58
|
var isMobile = _a.isMobile;
|
|
61
59
|
return (React.createElement("button", { "aria-label": locale.closeButtonAriaLabel, className: cx((_b = {},
|
|
62
|
-
_b[styles.close(
|
|
63
|
-
_b[styles.closeMobile(
|
|
64
|
-
_b[styles.disabled(
|
|
65
|
-
_b[styles.focus(
|
|
60
|
+
_b[styles.close()] = true,
|
|
61
|
+
_b[styles.closeMobile()] = isMobile,
|
|
62
|
+
_b[styles.disabled()] = disableClose,
|
|
63
|
+
_b[styles.focus()] = focusedByTab,
|
|
66
64
|
_b)), onClick: requestClose, onFocus: handleFocus, onBlur: handleBlur, "data-tid": ModalDataTids.close, tabIndex: disableClose ? -1 : 0 }, icon));
|
|
67
65
|
})));
|
|
68
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalClose.js","sourceRoot":"","sources":["ModalClose.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"ModalClose.js","sourceRoot":"","sources":["ModalClose.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,kDAAkD,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,gBAAgB,IAAI,EAAE,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,MAAM,UAAU,UAAU,CAAC,EAAyD;IAAvD,IAAA,YAAY,kBAAA,EAAE,YAAY,kBAAA,EAAK,UAAU,cAA3C,gCAA6C,CAAF;IACpE,IAAM,MAAM,GAAG,mBAAmB,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;IAC/D,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;IAEF,IAAM,UAAU,GAAG;QACjB,eAAe,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC,CAAC;IAEF,IAAM,IAAI,GAAG,oBAAC,cAAc,IAAC,KAAK,EAAC,MAAM,GAAG,CAAC;IAE7C,OAAO,CACL,oBAAC,aAAa,eAAK,UAAU;QAC3B,oBAAC,gBAAgB,QACd,UAAC,EAAY;;gBAAV,QAAQ,cAAA;YAAO,OAAA,CACjB,8CACc,MAAM,CAAC,oBAAoB,EACvC,SAAS,EAAE,EAAE;oBACX,GAAC,MAAM,CAAC,KAAK,EAAE,IAAG,IAAI;oBACtB,GAAC,MAAM,CAAC,WAAW,EAAE,IAAG,QAAQ;oBAChC,GAAC,MAAM,CAAC,QAAQ,EAAE,IAAG,YAAY;oBACjC,GAAC,MAAM,CAAC,KAAK,EAAE,IAAG,YAAY;wBAC9B,EACF,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,UAAU,cACR,aAAa,CAAC,KAAK,EAC7B,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAE9B,IAAI,CACE,CACV;QAjBkB,CAiBlB,CACgB,CACL,CACjB,CAAC;AACJ,CAAC;AAED,UAAU,CAAC,mBAAmB,GAAG,YAAY,CAAC;AAC9C,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC","sourcesContent":["import React from 'react';\n\nimport { CommonWrapper } from '../../internal/CommonWrapper/index.js';\nimport { XIcon20Regular } from '../../internal/icons2022/XIcon/XIcon20Regular.js';\nimport { useKeyListener } from '../../lib/events/keyListener.js';\nimport { useLocaleForControl } from '../../lib/locale/useLocaleForControl.js';\nimport { useGlobal, useStyles } from '../../lib/renderEnvironment/index.js';\nimport { concatClassNames as cx } from '../../lib/theming/Emotion.js';\nimport { ResponsiveLayout } from '../ResponsiveLayout/index.js';\nimport { ModalLocaleHelper } from './locale/index.js';\nimport { ModalDataTids } from './Modal.constants.js';\nimport { getStyles } from './Modal.styles.js';\nimport type { CloseProps } from './ModalContext.js';\n\nexport function ModalClose({ disableClose, requestClose, ...otherProps }: CloseProps): React.JSX.Element {\n const locale = useLocaleForControl('Modal', ModalLocaleHelper);\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\n const handleBlur = () => {\n setFocusedByTab(false);\n };\n\n const icon = <XIcon20Regular align=\"none\" />;\n\n return (\n <CommonWrapper {...otherProps}>\n <ResponsiveLayout>\n {({ isMobile }) => (\n <button\n aria-label={locale.closeButtonAriaLabel}\n className={cx({\n [styles.close()]: true,\n [styles.closeMobile()]: isMobile,\n [styles.disabled()]: disableClose,\n [styles.focus()]: focusedByTab,\n })}\n onClick={requestClose}\n onFocus={handleFocus}\n onBlur={handleBlur}\n data-tid={ModalDataTids.close}\n tabIndex={disableClose ? -1 : 0}\n >\n {icon}\n </button>\n )}\n </ResponsiveLayout>\n </CommonWrapper>\n );\n}\n\nModalClose.__KONTUR_REACT_UI__ = 'ModalClose';\nModalClose.displayName = 'ModalClose';\n"]}
|
|
@@ -12,7 +12,8 @@ var __assign = (this && this.__assign) || function () {
|
|
|
12
12
|
import React, { useContext, useLayoutEffect } from 'react';
|
|
13
13
|
import { CommonWrapper } from '../../internal/CommonWrapper/index.js';
|
|
14
14
|
import { useGetScrollWidth } from '../../lib/dom/getScrollWidth.js';
|
|
15
|
-
import {
|
|
15
|
+
import { useStyles } from '../../lib/renderEnvironment/index.js';
|
|
16
|
+
import { concatClassNames as cx } from '../../lib/theming/Emotion.js';
|
|
16
17
|
import { ThemeContext } from '../../lib/theming/ThemeContext.js';
|
|
17
18
|
import { isNonNullable } from '../../lib/utils.js';
|
|
18
19
|
import { Gapped } from '../Gapped/index.js';
|
|
@@ -31,7 +32,6 @@ export var ModalFooterDataTids = {
|
|
|
31
32
|
*/
|
|
32
33
|
function ModalFooter(props) {
|
|
33
34
|
var theme = useContext(ThemeContext);
|
|
34
|
-
var cx = useEmotion().cx;
|
|
35
35
|
var styles = useStyles(getStyles);
|
|
36
36
|
var modal = useContext(ModalContext);
|
|
37
37
|
var layout = useResponsiveLayout();
|
|
@@ -51,7 +51,7 @@ function ModalFooter(props) {
|
|
|
51
51
|
if (fixed === void 0) { fixed = false; }
|
|
52
52
|
return (React.createElement("div", null,
|
|
53
53
|
(panel || fixed) && React.createElement(ModalSeparator, { fixed: fixed }),
|
|
54
|
-
React.createElement("div", { "data-tid": ModalFooterDataTids.root, className: cx(styles.footer(
|
|
54
|
+
React.createElement("div", { "data-tid": ModalFooterDataTids.root, className: cx(styles.footer(), fixed && styles.fixedFooter(), Boolean(panel) && styles.panel(), fixed && Boolean(panel) && styles.fixedPanel(), layout.isMobile && styles.mobileFooter(), layout.isMobile && fixed && styles.mobileFixedFooter()) }, isNonNullable(gap) ? (React.createElement(Gapped, { vertical: layout.isMobile, gap: gap }, children)) : (children))));
|
|
55
55
|
};
|
|
56
56
|
var getStickyOffset = function () {
|
|
57
57
|
var offset = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalFooter.js","sourceRoot":"","sources":["ModalFooter.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAI3D,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ModalFooter.js","sourceRoot":"","sources":["ModalFooter.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useContext, useLayoutEffect } from 'react';\nimport type { ReactNode } from 'react';\n\nimport type { CommonProps } from '../../internal/CommonWrapper/index.js';\nimport { CommonWrapper } from '../../internal/CommonWrapper/index.js';\nimport { useGetScrollWidth } from '../../lib/dom/getScrollWidth.js';\nimport { useStyles } from '../../lib/renderEnvironment/index.js';\nimport { concatClassNames as cx } from '../../lib/theming/Emotion.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport { isNonNullable } from '../../lib/utils.js';\nimport { Gapped } from '../Gapped/index.js';\nimport type { GappedProps } from '../Gapped/index.js';\nimport { useResponsiveLayout } from '../ResponsiveLayout/index.js';\nimport { Sticky } from '../Sticky/index.js';\nimport { getStyles } from './Modal.styles.js';\nimport { ModalContext } from './ModalContext.js';\nimport { ModalSeparator } from './ModalSeparator.js';\n\nexport interface ModalFooterProps extends CommonProps {\n /** Включает разделитель перед футером. */\n panel?: boolean;\n\n /** Закрепляет футер снизу модального окна при скролле длинной контент-зоны.\n * @default На десктопе - `true`, на мобильных - `false`. */\n sticky?: boolean;\n\n /** Контент футера. */\n children?: ReactNode;\n\n /** Расстояние между элементами футера в пикселях. */\n gap?: GappedProps['gap'];\n}\n\nexport const ModalFooterDataTids = {\n root: 'ModalFooter__root',\n} as const;\n\n/**\n * Футер модального окна, где обычно располагаются кнопки основных действий.\n *\n * @visibleName Modal.Footer\n */\nfunction ModalFooter(props: ModalFooterProps): React.JSX.Element {\n const theme = useContext(ThemeContext);\n const styles = useStyles(getStyles);\n const modal = useContext(ModalContext);\n const layout = useResponsiveLayout();\n const scrollWidth = useGetScrollWidth();\n\n const { sticky = !layout.isMobile, gap, panel, children } = props;\n\n useLayoutEffect(() => {\n modal.setHasFooter?.(true);\n modal.setHasPanel?.(panel || false);\n\n return () => {\n modal.setHasFooter?.(false);\n modal.setHasPanel?.(false);\n };\n }, [panel]);\n\n const renderContent = (fixed = false) => {\n return (\n <div>\n {(panel || fixed) && <ModalSeparator fixed={fixed} />}\n <div\n data-tid={ModalFooterDataTids.root}\n className={cx(\n styles.footer(),\n fixed && styles.fixedFooter(),\n Boolean(panel) && styles.panel(),\n fixed && Boolean(panel) && styles.fixedPanel(),\n layout.isMobile && styles.mobileFooter(),\n layout.isMobile && fixed && styles.mobileFixedFooter(),\n )}\n >\n {isNonNullable(gap) ? (\n <Gapped vertical={layout.isMobile} gap={gap}>\n {children}\n </Gapped>\n ) : (\n children\n )}\n </div>\n </div>\n );\n };\n\n const getStickyOffset = () => {\n let offset = 0;\n if (modal.horizontalScroll) {\n offset += scrollWidth;\n }\n if (layout.isMobile && !modal.mobileOnFullScreen) {\n offset += parseInt(theme.mobileModalContainerMarginBottom);\n }\n return offset;\n };\n\n return (\n <CommonWrapper {...props}>\n {sticky ? (\n <Sticky side=\"bottom\" offset={getStickyOffset()}>\n {renderContent}\n </Sticky>\n ) : (\n renderContent()\n )}\n </CommonWrapper>\n );\n}\n\nModalFooter.__KONTUR_REACT_UI__ = 'ModalFooter';\nModalFooter.displayName = 'ModalFooter';\nModalFooter.__MODAL_FOOTER__ = true;\n\nexport { ModalFooter };\n"]}
|
|
@@ -11,7 +11,8 @@ var __assign = (this && this.__assign) || function () {
|
|
|
11
11
|
};
|
|
12
12
|
import React, { useContext, useLayoutEffect } from 'react';
|
|
13
13
|
import { CommonWrapper } from '../../internal/CommonWrapper/index.js';
|
|
14
|
-
import {
|
|
14
|
+
import { useStyles } from '../../lib/renderEnvironment/index.js';
|
|
15
|
+
import { concatClassNames as cx } from '../../lib/theming/Emotion.js';
|
|
15
16
|
import { ThemeContext } from '../../lib/theming/ThemeContext.js';
|
|
16
17
|
import { useResponsiveLayout } from '../ResponsiveLayout/index.js';
|
|
17
18
|
import { Sticky } from '../Sticky/index.js';
|
|
@@ -29,7 +30,6 @@ export var ModalHeaderDataTids = {
|
|
|
29
30
|
*/
|
|
30
31
|
function ModalHeader(props) {
|
|
31
32
|
var theme = useContext(ThemeContext);
|
|
32
|
-
var cx = useEmotion().cx;
|
|
33
33
|
var styles = useStyles(getStyles);
|
|
34
34
|
var modal = useContext(ModalContext);
|
|
35
35
|
var layout = useResponsiveLayout();
|
|
@@ -42,7 +42,7 @@ function ModalHeader(props) {
|
|
|
42
42
|
var renderContent = function (fixed) {
|
|
43
43
|
if (fixed === void 0) { fixed = false; }
|
|
44
44
|
return (React.createElement("div", null,
|
|
45
|
-
React.createElement("div", { "data-tid": ModalHeaderDataTids.root, className: cx(styles.header(
|
|
45
|
+
React.createElement("div", { "data-tid": ModalHeaderDataTids.root, className: cx(styles.header(), layout.isMobile && styles.mobileHeader(), Boolean(modal.additionalPadding) && styles.headerAddPadding(), fixed && styles.fixedHeader(), cutTitleOnStuck && fixed && styles.titleCut(), fixed && layout.isMobile && styles.mobileFixedHeader(), Boolean(modal.close) && styles.headerWithClose(), Boolean(modal.close) && layout.isMobile && styles.mobileHeaderWithClose()) },
|
|
46
46
|
modal.close && (React.createElement(ModalClose, { requestClose: modal.close.requestClose, disableClose: modal.close.disableClose })),
|
|
47
47
|
children),
|
|
48
48
|
fixed && React.createElement(ModalSeparator, { fixed: fixed })));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalHeader.js","sourceRoot":"","sources":["ModalHeader.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAI3D,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACtE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ModalHeader.js","sourceRoot":"","sources":["ModalHeader.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useContext, useLayoutEffect } from 'react';\nimport type { ReactNode } from 'react';\n\nimport type { CommonProps } from '../../internal/CommonWrapper/index.js';\nimport { CommonWrapper } from '../../internal/CommonWrapper/index.js';\nimport { useStyles } from '../../lib/renderEnvironment/index.js';\nimport { concatClassNames as cx } from '../../lib/theming/Emotion.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport { useResponsiveLayout } from '../ResponsiveLayout/index.js';\nimport { Sticky } from '../Sticky/index.js';\nimport { getStyles } from './Modal.styles.js';\nimport { ModalClose } from './ModalClose.js';\nimport { ModalContext } from './ModalContext.js';\nimport { ModalSeparator } from './ModalSeparator.js';\n\nexport interface ModalHeaderProps extends CommonProps {\n /** Закрепляет заголовок модального окна при скролле длинной контент-зоны. */\n sticky?: boolean;\n\n /** @ignore */\n children?: ReactNode;\n\n /**\n * Обрезает длинный заголовок. Работает с пропом `sticky`.\n * @default false\n */\n cutTitleOnStuck?: boolean;\n}\n\nexport const ModalHeaderDataTids = {\n root: 'ModalHeader__root',\n} as const;\n\n/**\n * Шапка модального окна, состоит из заголовка и крестика закрытия.\n *\n * @visibleName Modal.Header\n */\nfunction ModalHeader(props: ModalHeaderProps): React.JSX.Element {\n const theme = useContext(ThemeContext);\n const styles = useStyles(getStyles);\n\n const modal = useContext(ModalContext);\n const layout = useResponsiveLayout();\n\n const { sticky = !layout.isMobile, cutTitleOnStuck = false, children } = props;\n\n useLayoutEffect(() => {\n modal.setHasHeader?.(true);\n\n return () => modal.setHasHeader?.(false);\n }, []);\n\n const renderContent = (fixed = false) => {\n return (\n <div>\n <div\n data-tid={ModalHeaderDataTids.root}\n className={cx(\n styles.header(),\n layout.isMobile && styles.mobileHeader(),\n Boolean(modal.additionalPadding) && styles.headerAddPadding(),\n fixed && styles.fixedHeader(),\n cutTitleOnStuck && fixed && styles.titleCut(),\n fixed && layout.isMobile && styles.mobileFixedHeader(),\n Boolean(modal.close) && styles.headerWithClose(),\n Boolean(modal.close) && layout.isMobile && styles.mobileHeaderWithClose(),\n )}\n >\n {modal.close && (\n <ModalClose requestClose={modal.close.requestClose} disableClose={modal.close.disableClose} />\n )}\n {children}\n </div>\n {fixed && <ModalSeparator fixed={fixed} />}\n </div>\n );\n };\n\n const getStickyOffset = () => {\n if (layout.isMobile && !modal.mobileOnFullScreen) {\n return parseInt(theme.mobileModalContainerMarginTop);\n }\n return 0;\n };\n\n return (\n <CommonWrapper {...props}>\n {sticky ? (\n <Sticky offset={getStickyOffset()} side=\"top\">\n {renderContent}\n </Sticky>\n ) : (\n renderContent()\n )}\n </CommonWrapper>\n );\n}\n\nModalHeader.__KONTUR_REACT_UI__ = 'ModalHeader';\nModalHeader.displayName = 'ModalHeader';\nModalHeader.__MODAL_HEADER__ = true;\n\nexport { ModalHeader };\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import React
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useStyles } from '../../lib/renderEnvironment/index.js';
|
|
3
|
+
import { concatClassNames as cx } from '../../lib/theming/Emotion.js';
|
|
4
4
|
import { getStyles } from './Modal.styles.js';
|
|
5
5
|
/**
|
|
6
6
|
* Разделитель
|
|
@@ -9,11 +9,9 @@ import { getStyles } from './Modal.styles.js';
|
|
|
9
9
|
*/
|
|
10
10
|
export function ModalSeparator(_a) {
|
|
11
11
|
var fixed = _a.fixed;
|
|
12
|
-
var theme = useContext(ThemeContext);
|
|
13
|
-
var cx = useEmotion().cx;
|
|
14
12
|
var styles = useStyles(getStyles);
|
|
15
13
|
return (React.createElement("div", { className: styles.modalSeparatorWrapper() },
|
|
16
|
-
React.createElement("div", { className: cx(styles.modalSeparator(
|
|
14
|
+
React.createElement("div", { className: cx(styles.modalSeparator(), fixed && styles.modalSeparatorFixed()) })));
|
|
17
15
|
}
|
|
18
16
|
ModalSeparator.__KONTUR_REACT_UI__ = 'ModalSeparator';
|
|
19
17
|
ModalSeparator.displayName = 'ModalSeparator';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalSeparator.js","sourceRoot":"","sources":["ModalSeparator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"ModalSeparator.js","sourceRoot":"","sources":["ModalSeparator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,gBAAgB,IAAI,EAAE,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAO9C;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,EAA8B;QAA5B,KAAK,WAAA;IACpC,IAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IAEpC,OAAO,CACL,6BAAK,SAAS,EAAE,MAAM,CAAC,qBAAqB,EAAE;QAC5C,6BAAK,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,KAAK,IAAI,MAAM,CAAC,mBAAmB,EAAE,CAAC,GAAI,CAClF,CACP,CAAC;AACJ,CAAC;AAED,cAAc,CAAC,mBAAmB,GAAG,gBAAgB,CAAC;AACtD,cAAc,CAAC,WAAW,GAAG,gBAAgB,CAAC","sourcesContent":["import React from 'react';\n\nimport type { CommonProps } from '../../internal/CommonWrapper/index.js';\nimport { useStyles } from '../../lib/renderEnvironment/index.js';\nimport { concatClassNames as cx } from '../../lib/theming/Emotion.js';\nimport { getStyles } from './Modal.styles.js';\n\nexport interface ModalSeparatorProps extends CommonProps {\n /** Фиксирует позицию ModalSeparator. */\n fixed?: boolean;\n}\n\n/**\n * Разделитель\n *\n * @visibleName Modal.Separator\n */\nexport function ModalSeparator({ fixed }: ModalSeparatorProps): React.JSX.Element {\n const styles = useStyles(getStyles);\n\n return (\n <div className={styles.modalSeparatorWrapper()}>\n <div className={cx(styles.modalSeparator(), fixed && styles.modalSeparatorFixed())} />\n </div>\n );\n}\n\nModalSeparator.__KONTUR_REACT_UI__ = 'ModalSeparator';\nModalSeparator.displayName = 'ModalSeparator';\n"]}
|
|
@@ -69,10 +69,8 @@ export declare class Paging extends React.PureComponent<PagingProps, PagingState
|
|
|
69
69
|
static isForward(pageNumber: number | 'forward'): boolean;
|
|
70
70
|
state: PagingState;
|
|
71
71
|
private globalObject;
|
|
72
|
-
private emotion;
|
|
73
72
|
private cx;
|
|
74
73
|
private styles;
|
|
75
|
-
private theme;
|
|
76
74
|
private readonly locale;
|
|
77
75
|
private isMobile;
|
|
78
76
|
private sizeClassNames;
|
|
@@ -41,7 +41,6 @@ import { isInstanceOf } from '../../lib/isInstanceOf.js';
|
|
|
41
41
|
import { locale } from '../../lib/locale/decorators.js';
|
|
42
42
|
import { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';
|
|
43
43
|
import { rootNode } from '../../lib/rootNode/index.js';
|
|
44
|
-
import { ThemeContext } from '../../lib/theming/ThemeContext.js';
|
|
45
44
|
import { emptyHandler } from '../../lib/utils.js';
|
|
46
45
|
import { ResponsiveLayout } from '../ResponsiveLayout/index.js';
|
|
47
46
|
import { DotsIcon } from './DotsIcon.js';
|
|
@@ -93,15 +92,15 @@ var Paging = /** @class */ (function (_super) {
|
|
|
93
92
|
};
|
|
94
93
|
_this.renderDots = function (key) {
|
|
95
94
|
var _a;
|
|
96
|
-
return (React.createElement("span", { "data-tid": PagingDataTids.dots, key: key, className: _this.cx(_this.styles.dots(
|
|
97
|
-
_a[_this.styles.dotsDisabled(
|
|
95
|
+
return (React.createElement("span", { "data-tid": PagingDataTids.dots, key: key, className: _this.cx(_this.styles.dots(), _this.sizeClassNames.dots, (_a = {},
|
|
96
|
+
_a[_this.styles.dotsDisabled()] = _this.props.disabled,
|
|
98
97
|
_a)) }, _this.getDotsIcon()));
|
|
99
98
|
};
|
|
100
99
|
_this.renderForwardLink = function (disabled, focused) {
|
|
101
100
|
var _a;
|
|
102
|
-
var classNames = _this.cx(_this.styles.pageLink(
|
|
103
|
-
_a[_this.styles.pageLinkFocused(
|
|
104
|
-
_a[_this.styles.forwardLinkDisabled(
|
|
101
|
+
var classNames = _this.cx(_this.styles.pageLink(), _this.sizeClassNames.pageLink, _this.styles.forwardLink(), _this.sizeClassNames.forwardLink, (_a = {},
|
|
102
|
+
_a[_this.styles.pageLinkFocused()] = focused,
|
|
103
|
+
_a[_this.styles.forwardLinkDisabled()] = disabled || _this.props.disabled,
|
|
105
104
|
_a));
|
|
106
105
|
var Component = _this.getProps().component;
|
|
107
106
|
var forward = _this.locale.forward;
|
|
@@ -113,11 +112,11 @@ var Paging = /** @class */ (function (_super) {
|
|
|
113
112
|
_this.renderPageLink = function (pageNumber, active, focused) {
|
|
114
113
|
var _a;
|
|
115
114
|
var disabled = _this.props.disabled;
|
|
116
|
-
var classNames = _this.cx(_this.styles.pageLink(
|
|
117
|
-
_a[_this.styles.pageLinkFocused(
|
|
118
|
-
_a[_this.styles.pageLinkDisabled(
|
|
119
|
-
_a[_this.styles.pageLinkCurrent(
|
|
120
|
-
_a[_this.styles.pageLinkCurrentDisabled(
|
|
115
|
+
var classNames = _this.cx(_this.styles.pageLink(), _this.sizeClassNames.pageLink, (_a = {},
|
|
116
|
+
_a[_this.styles.pageLinkFocused()] = focused,
|
|
117
|
+
_a[_this.styles.pageLinkDisabled()] = disabled,
|
|
118
|
+
_a[_this.styles.pageLinkCurrent()] = active,
|
|
119
|
+
_a[_this.styles.pageLinkCurrentDisabled()] = active && disabled,
|
|
121
120
|
_a));
|
|
122
121
|
var Component = _this.getProps().component;
|
|
123
122
|
var handleClick = function () { return _this.goToPage(pageNumber); };
|
|
@@ -139,7 +138,7 @@ var Paging = /** @class */ (function (_super) {
|
|
|
139
138
|
React.createElement("span", null, NavigationHelper.getKeyName()),
|
|
140
139
|
React.createElement("span", { className: canGoForward ? '' : _this.styles.transparent() }, '→')));
|
|
141
140
|
}
|
|
142
|
-
return React.createElement("div", { className: _this.styles.pageLinkHint(
|
|
141
|
+
return React.createElement("div", { className: _this.styles.pageLinkHint() }, hint);
|
|
143
142
|
};
|
|
144
143
|
_this.handleMouseDown = function () {
|
|
145
144
|
_this.setState({ focusedByTab: false, focusedItem: null });
|
|
@@ -285,31 +284,27 @@ var Paging = /** @class */ (function (_super) {
|
|
|
285
284
|
_this.getPagingSizeClassNames = function () {
|
|
286
285
|
var size = _this.getSize();
|
|
287
286
|
var defaultClassNames = {
|
|
288
|
-
root: _this.styles.pagingSmall(
|
|
289
|
-
dots: _this.styles.dotsSmall(
|
|
290
|
-
forwardLink: _this.styles.forwardLinkSmall(
|
|
291
|
-
pageLink: _this.styles.pageLinkSmall(
|
|
287
|
+
root: _this.styles.pagingSmall(),
|
|
288
|
+
dots: _this.styles.dotsSmall(),
|
|
289
|
+
forwardLink: _this.styles.forwardLinkSmall(),
|
|
290
|
+
pageLink: _this.styles.pageLinkSmall(),
|
|
292
291
|
};
|
|
293
292
|
switch (size) {
|
|
294
293
|
case 'small':
|
|
295
294
|
return defaultClassNames;
|
|
296
295
|
case 'medium':
|
|
297
296
|
return {
|
|
298
|
-
root: _this.styles.pagingMedium(
|
|
299
|
-
dots: _this.styles.dotsMedium(
|
|
300
|
-
forwardLink: _this.isMobile
|
|
301
|
-
|
|
302
|
-
: _this.styles.forwardLinkMedium(_this.theme),
|
|
303
|
-
pageLink: _this.styles.pageLinkMedium(_this.theme),
|
|
297
|
+
root: _this.styles.pagingMedium(),
|
|
298
|
+
dots: _this.styles.dotsMedium(),
|
|
299
|
+
forwardLink: _this.isMobile ? _this.styles.forwardLinkMediumMobile() : _this.styles.forwardLinkMedium(),
|
|
300
|
+
pageLink: _this.styles.pageLinkMedium(),
|
|
304
301
|
};
|
|
305
302
|
case 'large':
|
|
306
303
|
return {
|
|
307
|
-
root: _this.styles.pagingLarge(
|
|
308
|
-
dots: _this.styles.dotsLarge(
|
|
309
|
-
forwardLink: _this.isMobile
|
|
310
|
-
|
|
311
|
-
: _this.styles.forwardLinkLarge(_this.theme),
|
|
312
|
-
pageLink: _this.styles.pageLinkLarge(_this.theme),
|
|
304
|
+
root: _this.styles.pagingLarge(),
|
|
305
|
+
dots: _this.styles.dotsLarge(),
|
|
306
|
+
forwardLink: _this.isMobile ? _this.styles.forwardLinkLargeMobile() : _this.styles.forwardLinkLarge(),
|
|
307
|
+
pageLink: _this.styles.pageLinkLarge(),
|
|
313
308
|
};
|
|
314
309
|
default:
|
|
315
310
|
warning(false, "Invalid size prop: '".concat(_this.props.size, "'"));
|
|
@@ -367,15 +362,15 @@ var Paging = /** @class */ (function (_super) {
|
|
|
367
362
|
if (this.props.pagesCount < 2) {
|
|
368
363
|
return null;
|
|
369
364
|
}
|
|
370
|
-
this.styles = getStyles(
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
365
|
+
this.styles = getStyles();
|
|
366
|
+
// Подписка на тему больше не нужна: значения приходят CSS-переменными, а
|
|
367
|
+
// класс с ними держит CommonWrapper. Смена темы обновляет стили без
|
|
368
|
+
// перерисовки этого компонента.
|
|
369
|
+
return (React.createElement(ResponsiveLayout, null, function (_a) {
|
|
370
|
+
var isMobile = _a.isMobile;
|
|
371
|
+
_this.isMobile = isMobile;
|
|
372
|
+
_this.sizeClassNames = _this.getPagingSizeClassNames();
|
|
373
|
+
return _this.renderMain();
|
|
379
374
|
}));
|
|
380
375
|
};
|
|
381
376
|
Paging.prototype.renderMain = function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Paging.js","sourceRoot":"","sources":["Paging.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport React, { type JSX } from 'react';\nimport warning from 'warning';\n\nimport type { CommonProps } from '../../internal/CommonWrapper/index.js';\nimport { CommonWrapper } from '../../internal/CommonWrapper/index.js';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes.js';\nimport { createPropsGetter } from '../../lib/createPropsGetter.js';\nimport { isKeyArrowLeft, isKeyArrowRight, isKeyEnter } from '../../lib/events/keyboard/identifiers.js';\nimport { KeyListener } from '../../lib/events/keyListener.js';\nimport type { GlobalObject } from '../../lib/globalObject.js';\nimport { isInstanceOf } from '../../lib/isInstanceOf.js';\nimport { locale } from '../../lib/locale/decorators.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode/index.js';\nimport { rootNode } from '../../lib/rootNode/index.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport type { SizeProp } from '../../lib/types/props.js';\nimport { emptyHandler } from '../../lib/utils.js';\nimport type { Nullable } from '../../typings/utility-types.js';\nimport { ResponsiveLayout } from '../ResponsiveLayout/index.js';\nimport { DotsIcon } from './DotsIcon.js';\nimport { ForwardIcon, ForwardIconMobile } from './ForwardIcon.js';\nimport type { PagingLocale } from './locale/index.js';\nimport { PagingLocaleHelper } from './locale/index.js';\nimport * as NavigationHelper from './NavigationHelper.js';\nimport { getStyles } from './Paging.styles.js';\nimport { PagingDefaultComponent } from './PagingDefaultComponent.js';\nimport { getItems } from './PagingHelper.js';\n\nconst IGNORE_EVENT_TAGS = ['input', 'textarea'];\n\nexport interface ItemComponentProps {\n /** @ignore */\n children?: React.ReactNode;\n\n /** Определяет, является ли страница текущей. */\n active: boolean;\n\n /** Номер страницы. */\n pageNumber: number | 'forward';\n\n /** Событие нажатия на элемент. */\n onClick: () => void;\n\n /** HTML-атрибут `class`. */\n className: string;\n\n /** HTML-атрибут `tabindex`. */\n tabIndex: number;\n}\n\nexport interface PagingProps extends CommonProps {\n /** Количество страниц. */\n pagesCount: number;\n\n /** Номер текущей страницы. */\n activePage: number;\n\n /** Событие переключения страницы. */\n onPageChange: (pageNumber: number) => void;\n\n /** Размер пейджинга.\n *\n * *Проп поддерживается начиная с версии 5.3.*\n * @default 'small' */\n size?: SizeProp;\n\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Подпись у кнопки перехода на следующую страницу. */\n caption?: string;\n\n /** Компонент обёртки страниц.\n * @default <span/> */\n component?: React.ComponentType<ItemComponentProps>;\n\n /** Отключает навигационные подсказки.\n * По умолчанию подсказки появляются, когда доступно управление с клавиатуры (либо контрол в фокусе, либо globalListeners === true). */\n withoutNavigationHint?: boolean;\n\n /** Включает глобальный слушатель `keyDown`, для навигации клавишами без фокуса на контроле. */\n useGlobalListener?: boolean;\n}\n\nexport interface PagingState {\n focusedByTab: boolean;\n focusedItem: Nullable<ItemType>;\n keyboardControl: boolean;\n}\n\nexport type ItemType = number | '.' | 'forward';\n\nexport const PagingDataTids = {\n root: 'Paging__root',\n dots: 'Paging__dots',\n forwardLink: 'Paging__forwardLink',\n pageLinkWrapper: 'Paging__pageLinkWrapper',\n pageLink: 'Paging__pageLink',\n} as const;\n\ntype DefaultProps = Required<Pick<PagingProps, 'component' | 'useGlobalListener'>>;\n\ninterface PagingSizeClassNames {\n root: string;\n dots: string;\n forwardLink: string;\n pageLink: string;\n}\n\n/**\n * Постраничная навигация `Paging` (пейджинг или пагинация) — способ представления большого количества однородной информации, когда контент разбивается на страницы.\n */\n@withRenderEnvironment\n@rootNode\n@locale('Paging', PagingLocaleHelper)\nexport class Paging extends React.PureComponent<PagingProps, PagingState> {\n public static __KONTUR_REACT_UI__ = 'Paging';\n public static displayName = 'Paging';\n\n public static defaultProps: DefaultProps = {\n component: PagingDefaultComponent,\n useGlobalListener: false,\n };\n\n private getProps = createPropsGetter(Paging.defaultProps);\n\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public static isForward(pageNumber: number | 'forward'): boolean {\n return pageNumber === 'forward';\n }\n\n public state: PagingState = {\n focusedByTab: false,\n focusedItem: null,\n keyboardControl: this.getProps().useGlobalListener,\n };\n\n private globalObject!: GlobalObject;\n private emotion!: Emotion;\n private cx!: Emotion['cx'];\n private styles!: ReturnType<typeof getStyles>;\n private theme!: Theme;\n private readonly locale!: PagingLocale;\n private isMobile!: boolean;\n private sizeClassNames!: PagingSizeClassNames;\n private addedGlobalListener = false;\n private container: HTMLSpanElement | null = null;\n private keyListener!: KeyListener;\n\n public componentDidMount() {\n this.keyListener = new KeyListener(this.globalObject);\n const useGlobalListener = this.getProps().useGlobalListener;\n if (useGlobalListener) {\n this.addGlobalListener();\n }\n }\n\n public componentDidUpdate(prevProps: PagingProps) {\n const useGlobalListener = this.getProps().useGlobalListener;\n if (!prevProps.useGlobalListener && useGlobalListener) {\n this.addGlobalListener();\n }\n\n if (prevProps.useGlobalListener && !useGlobalListener) {\n this.removeGlobalListener();\n }\n\n if (prevProps.useGlobalListener !== useGlobalListener) {\n this.setState({\n keyboardControl: useGlobalListener,\n });\n }\n }\n\n public componentWillUnmount() {\n this.removeGlobalListener();\n }\n\n public render(): React.JSX.Element | null {\n if (this.props.pagesCount < 2) {\n return null;\n }\n this.styles = getStyles(this.emotion);\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ResponsiveLayout>\n {({ isMobile }) => {\n this.isMobile = isMobile;\n this.sizeClassNames = this.getPagingSizeClassNames();\n return this.renderMain();\n }}\n </ResponsiveLayout>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { useGlobalListener } = this.getProps();\n return (\n <CommonWrapper\n rootNodeRef={this.setRootNode}\n {...this.props}\n {...getVisualStateDataAttributes({ disabled: this.props.disabled })}\n >\n <span\n tabIndex={this.props.disabled ? -1 : 0}\n data-tid={PagingDataTids.root}\n className={this.cx(this.styles.paging(), this.sizeClassNames.root, {\n [this.styles.pagingMobile()]: this.isMobile,\n [this.styles.pagingDisabled()]: this.props.disabled,\n })}\n onKeyDown={useGlobalListener ? undefined : this.handleKeyDown}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onMouseDown={this.handleMouseDown}\n ref={this.refContainer}\n >\n {this.getItems().map((item, index) => this.renderItem(item, index))}\n </span>\n </CommonWrapper>\n );\n }\n\n private renderItem = (item: ItemType, index: number) => {\n const focused = this.getFocusedItem() === item;\n switch (item) {\n case '.': {\n const key = `dots${index < 5 ? 'Left' : 'Right'}`;\n return this.renderDots(key);\n }\n case 'forward': {\n const disabled = this.isItemDisabled(item);\n return this.renderForwardLink(disabled, focused);\n }\n default: {\n const active = this.props.activePage === item;\n return this.renderPageLink(item, active, focused);\n }\n }\n };\n\n private renderDots = (key: string) => {\n return (\n <span\n data-tid={PagingDataTids.dots}\n key={key}\n className={this.cx(this.styles.dots(this.theme), this.sizeClassNames.dots, {\n [this.styles.dotsDisabled(this.theme)]: this.props.disabled,\n })}\n >\n {this.getDotsIcon()}\n </span>\n );\n };\n\n private renderForwardLink = (disabled: boolean, focused: boolean): JSX.Element => {\n const classNames = this.cx(\n this.styles.pageLink(this.theme),\n this.sizeClassNames.pageLink,\n this.styles.forwardLink(this.theme),\n this.sizeClassNames.forwardLink,\n {\n [this.styles.pageLinkFocused(this.theme)]: focused,\n [this.styles.forwardLinkDisabled(this.theme)]: disabled || this.props.disabled,\n },\n );\n const Component = this.getProps().component;\n const { forward } = this.locale;\n\n const forwardIcon = this.getForwardIcon();\n\n return (\n <Component\n key={'forward'}\n data-tid={PagingDataTids.forwardLink}\n active={false}\n className={classNames}\n onClick={disabled ? emptyHandler : this.goForward}\n tabIndex={-1}\n pageNumber={'forward' as const}\n {...getVisualStateDataAttributes({ disabled })}\n >\n {!this.isMobile && (this.props.caption || forward)}\n {forwardIcon}\n </Component>\n );\n };\n\n private renderPageLink = (pageNumber: number, active: boolean, focused: boolean): JSX.Element => {\n const disabled = this.props.disabled;\n const classNames = this.cx(this.styles.pageLink(this.theme), this.sizeClassNames.pageLink, {\n [this.styles.pageLinkFocused(this.theme)]: focused,\n [this.styles.pageLinkDisabled(this.theme)]: disabled,\n [this.styles.pageLinkCurrent(this.theme)]: active,\n [this.styles.pageLinkCurrentDisabled(this.theme)]: active && disabled,\n });\n const Component = this.getProps().component;\n const handleClick = () => this.goToPage(pageNumber);\n\n return (\n <span\n data-tid={PagingDataTids.pageLinkWrapper}\n key={pageNumber}\n className={this.styles.pageLinkWrapper()}\n {...getVisualStateDataAttributes({ active, disabled })}\n >\n <Component\n data-tid={PagingDataTids.pageLink}\n active={active}\n className={classNames}\n onClick={handleClick}\n tabIndex={-1}\n pageNumber={pageNumber}\n >\n {pageNumber}\n </Component>\n {active && !this.isMobile && this.renderNavigationHint()}\n </span>\n );\n };\n\n private renderNavigationHint = () => {\n if (this.props.withoutNavigationHint) {\n return null;\n }\n\n const { keyboardControl } = this.state;\n const canGoBackward = this.canGoBackward();\n const canGoForward = this.canGoForward();\n\n let hint = null;\n if (keyboardControl && (canGoBackward || canGoForward)) {\n hint = (\n <>\n <span className={canGoBackward ? '' : this.styles.transparent()}>{'←'}</span>\n <span>{NavigationHelper.getKeyName()}</span>\n <span className={canGoForward ? '' : this.styles.transparent()}>{'→'}</span>\n </>\n );\n }\n return <div className={this.styles.pageLinkHint(this.theme)}>{hint}</div>;\n };\n\n private handleMouseDown = () => {\n this.setState({ focusedByTab: false, focusedItem: null });\n };\n\n private handleKeyDown = (e: KeyboardEvent | React.KeyboardEvent<HTMLElement>) => {\n if (e.shiftKey) {\n return;\n }\n\n const target = e.target;\n\n const isArrowLeft = isKeyArrowLeft(e);\n const isArrowRight = isKeyArrowRight(e);\n\n if (\n isInstanceOf(target, this.globalObject.Element) &&\n (IGNORE_EVENT_TAGS.includes(target.tagName.toLowerCase()) || (target as HTMLElement).isContentEditable)\n ) {\n return;\n }\n\n if (NavigationHelper.checkKeyPressed(e) && isArrowLeft) {\n this.setState({ focusedItem: null }, this.goBackward);\n return;\n }\n if (NavigationHelper.checkKeyPressed(e) && isArrowRight) {\n this.setState({ focusedItem: null }, this.goForward);\n return;\n }\n\n if (this.container && this.container === e.target) {\n if (isArrowLeft) {\n this.setState({ focusedByTab: true }, this.moveFocusLeft);\n return;\n }\n if (isArrowRight) {\n this.setState({ focusedByTab: true }, this.moveFocusRight);\n return;\n }\n if (isKeyEnter(e)) {\n this.executeItemAction(this.getFocusedItem());\n return;\n }\n }\n };\n\n private handleFocus = () => {\n if (this.props.disabled) {\n return;\n }\n\n this.setState({ keyboardControl: true });\n\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n this.globalObject.requestAnimationFrame?.(() => {\n if (this.keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n };\n\n private handleBlur = () => {\n this.setState({\n focusedByTab: false,\n keyboardControl: this.getProps().useGlobalListener || false,\n });\n };\n\n private getItems = (): ItemType[] => {\n return getItems(this.props.activePage, this.props.pagesCount, this.isMobile).concat('forward');\n };\n\n private getFocusedItem = (): Nullable<ItemType> => {\n if (!this.state.focusedByTab) {\n return null;\n }\n\n const { focusedItem } = this.state;\n if (focusedItem && this.getItems().includes(focusedItem) && this.isItemFocusable(focusedItem)) {\n return focusedItem;\n }\n\n return this.props.activePage;\n };\n\n private isItemFocusable = (item: ItemType) => {\n return !this.isItemDisabled(item);\n };\n\n private isItemDisabled = (item: ItemType) => {\n switch (item) {\n case '.':\n return true;\n case 'forward':\n return !this.canGoForward();\n default:\n return false;\n }\n };\n\n private executeItemAction = (item: Nullable<ItemType>) => {\n if (item === 'forward') {\n this.goForward();\n }\n if (typeof item === 'number') {\n this.goToPage(item);\n }\n };\n\n private moveFocusLeft = () => {\n this.moveFocus(-1);\n };\n\n private moveFocusRight = () => {\n this.moveFocus(1);\n };\n\n private moveFocus = (step: number) => {\n const focusedItem = this.getFocusedItem();\n const items = this.getItems();\n let index = items.findIndex((x) => x === focusedItem);\n do {\n index = (index + step + items.length) % items.length;\n } while (!this.isItemFocusable(items[index]));\n this.setState({ focusedItem: items[index] });\n };\n\n private canGoBackward = (): boolean => {\n return this.props.activePage > 1;\n };\n\n private canGoForward = (): boolean => {\n return this.props.activePage < this.props.pagesCount;\n };\n\n private goBackward = () => {\n this.goToPage(this.props.activePage - 1);\n };\n\n private goForward = () => {\n this.goToPage(this.props.activePage + 1);\n };\n\n private goToPage = (pageNumber: number) => {\n if (pageNumber >= 1 && pageNumber !== this.props.activePage && pageNumber <= this.props.pagesCount) {\n this.props.onPageChange(pageNumber);\n }\n };\n\n private addGlobalListener = () => {\n if (this.addedGlobalListener) {\n return;\n }\n\n this.globalObject.document?.addEventListener('keydown', this.handleKeyDown);\n this.addedGlobalListener = true;\n };\n\n private removeGlobalListener = () => {\n if (this.addedGlobalListener) {\n this.globalObject.document?.removeEventListener('keydown', this.handleKeyDown);\n\n this.addedGlobalListener = false;\n }\n };\n\n private refContainer = (element: HTMLSpanElement | null) => {\n this.container = element;\n };\n\n private getPagingSizeClassNames = (): PagingSizeClassNames => {\n const size = this.getSize();\n\n const defaultClassNames = {\n root: this.styles.pagingSmall(this.theme),\n dots: this.styles.dotsSmall(this.theme),\n forwardLink: this.styles.forwardLinkSmall(this.theme),\n pageLink: this.styles.pageLinkSmall(this.theme),\n };\n\n switch (size) {\n case 'small':\n return defaultClassNames;\n case 'medium':\n return {\n root: this.styles.pagingMedium(this.theme),\n dots: this.styles.dotsMedium(this.theme),\n forwardLink: this.isMobile\n ? this.styles.forwardLinkMediumMobile(this.theme)\n : this.styles.forwardLinkMedium(this.theme),\n pageLink: this.styles.pageLinkMedium(this.theme),\n };\n case 'large':\n return {\n root: this.styles.pagingLarge(this.theme),\n dots: this.styles.dotsLarge(this.theme),\n forwardLink: this.isMobile\n ? this.styles.forwardLinkLargeMobile(this.theme)\n : this.styles.forwardLinkLarge(this.theme),\n pageLink: this.styles.pageLinkLarge(this.theme),\n };\n default:\n warning(false, `Invalid size prop: '${this.props.size}'`);\n return defaultClassNames;\n }\n };\n\n private getDotsIcon = () => {\n const size = this.getSize();\n return <DotsIcon size={size} />;\n };\n\n private getForwardIcon = () => {\n const size = this.getSize();\n const iconSize = size;\n return this.isMobile ? (\n <ForwardIconMobile size={iconSize} />\n ) : (\n <ForwardIcon size={iconSize} style={{ marginLeft: 4 }} />\n );\n };\n\n private getSize = () => {\n if (this.props.size) {\n return this.isMobile && this.props.size === 'small' ? 'medium' : this.props.size;\n }\n\n const defaultSize = 'small';\n return this.isMobile ? 'medium' : defaultSize;\n };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"Paging.js","sourceRoot":"","sources":["Paging.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { type JSX } from 'react';\nimport warning from 'warning';\n\nimport type { CommonProps } from '../../internal/CommonWrapper/index.js';\nimport { CommonWrapper } from '../../internal/CommonWrapper/index.js';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes.js';\nimport { createPropsGetter } from '../../lib/createPropsGetter.js';\nimport { isKeyArrowLeft, isKeyArrowRight, isKeyEnter } from '../../lib/events/keyboard/identifiers.js';\nimport { KeyListener } from '../../lib/events/keyListener.js';\nimport type { GlobalObject } from '../../lib/globalObject.js';\nimport { isInstanceOf } from '../../lib/isInstanceOf.js';\nimport { locale } from '../../lib/locale/decorators.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode/index.js';\nimport { rootNode } from '../../lib/rootNode/index.js';\nimport type { ClassNames } from '../../lib/theming/Emotion.js';\nimport type { SizeProp } from '../../lib/types/props.js';\nimport { emptyHandler } from '../../lib/utils.js';\nimport type { Nullable } from '../../typings/utility-types.js';\nimport { ResponsiveLayout } from '../ResponsiveLayout/index.js';\nimport { DotsIcon } from './DotsIcon.js';\nimport { ForwardIcon, ForwardIconMobile } from './ForwardIcon.js';\nimport type { PagingLocale } from './locale/index.js';\nimport { PagingLocaleHelper } from './locale/index.js';\nimport * as NavigationHelper from './NavigationHelper.js';\nimport { getStyles } from './Paging.styles.js';\nimport { PagingDefaultComponent } from './PagingDefaultComponent.js';\nimport { getItems } from './PagingHelper.js';\n\nconst IGNORE_EVENT_TAGS = ['input', 'textarea'];\n\nexport interface ItemComponentProps {\n /** @ignore */\n children?: React.ReactNode;\n\n /** Определяет, является ли страница текущей. */\n active: boolean;\n\n /** Номер страницы. */\n pageNumber: number | 'forward';\n\n /** Событие нажатия на элемент. */\n onClick: () => void;\n\n /** HTML-атрибут `class`. */\n className: string;\n\n /** HTML-атрибут `tabindex`. */\n tabIndex: number;\n}\n\nexport interface PagingProps extends CommonProps {\n /** Количество страниц. */\n pagesCount: number;\n\n /** Номер текущей страницы. */\n activePage: number;\n\n /** Событие переключения страницы. */\n onPageChange: (pageNumber: number) => void;\n\n /** Размер пейджинга.\n *\n * *Проп поддерживается начиная с версии 5.3.*\n * @default 'small' */\n size?: SizeProp;\n\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Подпись у кнопки перехода на следующую страницу. */\n caption?: string;\n\n /** Компонент обёртки страниц.\n * @default <span/> */\n component?: React.ComponentType<ItemComponentProps>;\n\n /** Отключает навигационные подсказки.\n * По умолчанию подсказки появляются, когда доступно управление с клавиатуры (либо контрол в фокусе, либо globalListeners === true). */\n withoutNavigationHint?: boolean;\n\n /** Включает глобальный слушатель `keyDown`, для навигации клавишами без фокуса на контроле. */\n useGlobalListener?: boolean;\n}\n\nexport interface PagingState {\n focusedByTab: boolean;\n focusedItem: Nullable<ItemType>;\n keyboardControl: boolean;\n}\n\nexport type ItemType = number | '.' | 'forward';\n\nexport const PagingDataTids = {\n root: 'Paging__root',\n dots: 'Paging__dots',\n forwardLink: 'Paging__forwardLink',\n pageLinkWrapper: 'Paging__pageLinkWrapper',\n pageLink: 'Paging__pageLink',\n} as const;\n\ntype DefaultProps = Required<Pick<PagingProps, 'component' | 'useGlobalListener'>>;\n\ninterface PagingSizeClassNames {\n root: string;\n dots: string;\n forwardLink: string;\n pageLink: string;\n}\n\n/**\n * Постраничная навигация `Paging` (пейджинг или пагинация) — способ представления большого количества однородной информации, когда контент разбивается на страницы.\n */\n@withRenderEnvironment\n@rootNode\n@locale('Paging', PagingLocaleHelper)\nexport class Paging extends React.PureComponent<PagingProps, PagingState> {\n public static __KONTUR_REACT_UI__ = 'Paging';\n public static displayName = 'Paging';\n\n public static defaultProps: DefaultProps = {\n component: PagingDefaultComponent,\n useGlobalListener: false,\n };\n\n private getProps = createPropsGetter(Paging.defaultProps);\n\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public static isForward(pageNumber: number | 'forward'): boolean {\n return pageNumber === 'forward';\n }\n\n public state: PagingState = {\n focusedByTab: false,\n focusedItem: null,\n keyboardControl: this.getProps().useGlobalListener,\n };\n\n private globalObject!: GlobalObject;\n private cx!: ClassNames;\n private styles!: ReturnType<typeof getStyles>;\n private readonly locale!: PagingLocale;\n private isMobile!: boolean;\n private sizeClassNames!: PagingSizeClassNames;\n private addedGlobalListener = false;\n private container: HTMLSpanElement | null = null;\n private keyListener!: KeyListener;\n\n public componentDidMount() {\n this.keyListener = new KeyListener(this.globalObject);\n const useGlobalListener = this.getProps().useGlobalListener;\n if (useGlobalListener) {\n this.addGlobalListener();\n }\n }\n\n public componentDidUpdate(prevProps: PagingProps) {\n const useGlobalListener = this.getProps().useGlobalListener;\n if (!prevProps.useGlobalListener && useGlobalListener) {\n this.addGlobalListener();\n }\n\n if (prevProps.useGlobalListener && !useGlobalListener) {\n this.removeGlobalListener();\n }\n\n if (prevProps.useGlobalListener !== useGlobalListener) {\n this.setState({\n keyboardControl: useGlobalListener,\n });\n }\n }\n\n public componentWillUnmount() {\n this.removeGlobalListener();\n }\n\n public render(): React.JSX.Element | null {\n if (this.props.pagesCount < 2) {\n return null;\n }\n this.styles = getStyles();\n\n // Подписка на тему больше не нужна: значения приходят CSS-переменными, а\n // класс с ними держит CommonWrapper. Смена темы обновляет стили без\n // перерисовки этого компонента.\n return (\n <ResponsiveLayout>\n {({ isMobile }) => {\n this.isMobile = isMobile;\n this.sizeClassNames = this.getPagingSizeClassNames();\n return this.renderMain();\n }}\n </ResponsiveLayout>\n );\n }\n\n private renderMain() {\n const { useGlobalListener } = this.getProps();\n return (\n <CommonWrapper\n rootNodeRef={this.setRootNode}\n {...this.props}\n {...getVisualStateDataAttributes({ disabled: this.props.disabled })}\n >\n <span\n tabIndex={this.props.disabled ? -1 : 0}\n data-tid={PagingDataTids.root}\n className={this.cx(this.styles.paging(), this.sizeClassNames.root, {\n [this.styles.pagingMobile()]: this.isMobile,\n [this.styles.pagingDisabled()]: this.props.disabled,\n })}\n onKeyDown={useGlobalListener ? undefined : this.handleKeyDown}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onMouseDown={this.handleMouseDown}\n ref={this.refContainer}\n >\n {this.getItems().map((item, index) => this.renderItem(item, index))}\n </span>\n </CommonWrapper>\n );\n }\n\n private renderItem = (item: ItemType, index: number) => {\n const focused = this.getFocusedItem() === item;\n switch (item) {\n case '.': {\n const key = `dots${index < 5 ? 'Left' : 'Right'}`;\n return this.renderDots(key);\n }\n case 'forward': {\n const disabled = this.isItemDisabled(item);\n return this.renderForwardLink(disabled, focused);\n }\n default: {\n const active = this.props.activePage === item;\n return this.renderPageLink(item, active, focused);\n }\n }\n };\n\n private renderDots = (key: string) => {\n return (\n <span\n data-tid={PagingDataTids.dots}\n key={key}\n className={this.cx(this.styles.dots(), this.sizeClassNames.dots, {\n [this.styles.dotsDisabled()]: this.props.disabled,\n })}\n >\n {this.getDotsIcon()}\n </span>\n );\n };\n\n private renderForwardLink = (disabled: boolean, focused: boolean): JSX.Element => {\n const classNames = this.cx(\n this.styles.pageLink(),\n this.sizeClassNames.pageLink,\n this.styles.forwardLink(),\n this.sizeClassNames.forwardLink,\n {\n [this.styles.pageLinkFocused()]: focused,\n [this.styles.forwardLinkDisabled()]: disabled || this.props.disabled,\n },\n );\n const Component = this.getProps().component;\n const { forward } = this.locale;\n\n const forwardIcon = this.getForwardIcon();\n\n return (\n <Component\n key={'forward'}\n data-tid={PagingDataTids.forwardLink}\n active={false}\n className={classNames}\n onClick={disabled ? emptyHandler : this.goForward}\n tabIndex={-1}\n pageNumber={'forward' as const}\n {...getVisualStateDataAttributes({ disabled })}\n >\n {!this.isMobile && (this.props.caption || forward)}\n {forwardIcon}\n </Component>\n );\n };\n\n private renderPageLink = (pageNumber: number, active: boolean, focused: boolean): JSX.Element => {\n const disabled = this.props.disabled;\n const classNames = this.cx(this.styles.pageLink(), this.sizeClassNames.pageLink, {\n [this.styles.pageLinkFocused()]: focused,\n [this.styles.pageLinkDisabled()]: disabled,\n [this.styles.pageLinkCurrent()]: active,\n [this.styles.pageLinkCurrentDisabled()]: active && disabled,\n });\n const Component = this.getProps().component;\n const handleClick = () => this.goToPage(pageNumber);\n\n return (\n <span\n data-tid={PagingDataTids.pageLinkWrapper}\n key={pageNumber}\n className={this.styles.pageLinkWrapper()}\n {...getVisualStateDataAttributes({ active, disabled })}\n >\n <Component\n data-tid={PagingDataTids.pageLink}\n active={active}\n className={classNames}\n onClick={handleClick}\n tabIndex={-1}\n pageNumber={pageNumber}\n >\n {pageNumber}\n </Component>\n {active && !this.isMobile && this.renderNavigationHint()}\n </span>\n );\n };\n\n private renderNavigationHint = () => {\n if (this.props.withoutNavigationHint) {\n return null;\n }\n\n const { keyboardControl } = this.state;\n const canGoBackward = this.canGoBackward();\n const canGoForward = this.canGoForward();\n\n let hint = null;\n if (keyboardControl && (canGoBackward || canGoForward)) {\n hint = (\n <>\n <span className={canGoBackward ? '' : this.styles.transparent()}>{'←'}</span>\n <span>{NavigationHelper.getKeyName()}</span>\n <span className={canGoForward ? '' : this.styles.transparent()}>{'→'}</span>\n </>\n );\n }\n return <div className={this.styles.pageLinkHint()}>{hint}</div>;\n };\n\n private handleMouseDown = () => {\n this.setState({ focusedByTab: false, focusedItem: null });\n };\n\n private handleKeyDown = (e: KeyboardEvent | React.KeyboardEvent<HTMLElement>) => {\n if (e.shiftKey) {\n return;\n }\n\n const target = e.target;\n\n const isArrowLeft = isKeyArrowLeft(e);\n const isArrowRight = isKeyArrowRight(e);\n\n if (\n isInstanceOf(target, this.globalObject.Element) &&\n (IGNORE_EVENT_TAGS.includes(target.tagName.toLowerCase()) || (target as HTMLElement).isContentEditable)\n ) {\n return;\n }\n\n if (NavigationHelper.checkKeyPressed(e) && isArrowLeft) {\n this.setState({ focusedItem: null }, this.goBackward);\n return;\n }\n if (NavigationHelper.checkKeyPressed(e) && isArrowRight) {\n this.setState({ focusedItem: null }, this.goForward);\n return;\n }\n\n if (this.container && this.container === e.target) {\n if (isArrowLeft) {\n this.setState({ focusedByTab: true }, this.moveFocusLeft);\n return;\n }\n if (isArrowRight) {\n this.setState({ focusedByTab: true }, this.moveFocusRight);\n return;\n }\n if (isKeyEnter(e)) {\n this.executeItemAction(this.getFocusedItem());\n return;\n }\n }\n };\n\n private handleFocus = () => {\n if (this.props.disabled) {\n return;\n }\n\n this.setState({ keyboardControl: true });\n\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n this.globalObject.requestAnimationFrame?.(() => {\n if (this.keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n };\n\n private handleBlur = () => {\n this.setState({\n focusedByTab: false,\n keyboardControl: this.getProps().useGlobalListener || false,\n });\n };\n\n private getItems = (): ItemType[] => {\n return getItems(this.props.activePage, this.props.pagesCount, this.isMobile).concat('forward');\n };\n\n private getFocusedItem = (): Nullable<ItemType> => {\n if (!this.state.focusedByTab) {\n return null;\n }\n\n const { focusedItem } = this.state;\n if (focusedItem && this.getItems().includes(focusedItem) && this.isItemFocusable(focusedItem)) {\n return focusedItem;\n }\n\n return this.props.activePage;\n };\n\n private isItemFocusable = (item: ItemType) => {\n return !this.isItemDisabled(item);\n };\n\n private isItemDisabled = (item: ItemType) => {\n switch (item) {\n case '.':\n return true;\n case 'forward':\n return !this.canGoForward();\n default:\n return false;\n }\n };\n\n private executeItemAction = (item: Nullable<ItemType>) => {\n if (item === 'forward') {\n this.goForward();\n }\n if (typeof item === 'number') {\n this.goToPage(item);\n }\n };\n\n private moveFocusLeft = () => {\n this.moveFocus(-1);\n };\n\n private moveFocusRight = () => {\n this.moveFocus(1);\n };\n\n private moveFocus = (step: number) => {\n const focusedItem = this.getFocusedItem();\n const items = this.getItems();\n let index = items.findIndex((x) => x === focusedItem);\n do {\n index = (index + step + items.length) % items.length;\n } while (!this.isItemFocusable(items[index]));\n this.setState({ focusedItem: items[index] });\n };\n\n private canGoBackward = (): boolean => {\n return this.props.activePage > 1;\n };\n\n private canGoForward = (): boolean => {\n return this.props.activePage < this.props.pagesCount;\n };\n\n private goBackward = () => {\n this.goToPage(this.props.activePage - 1);\n };\n\n private goForward = () => {\n this.goToPage(this.props.activePage + 1);\n };\n\n private goToPage = (pageNumber: number) => {\n if (pageNumber >= 1 && pageNumber !== this.props.activePage && pageNumber <= this.props.pagesCount) {\n this.props.onPageChange(pageNumber);\n }\n };\n\n private addGlobalListener = () => {\n if (this.addedGlobalListener) {\n return;\n }\n\n this.globalObject.document?.addEventListener('keydown', this.handleKeyDown);\n this.addedGlobalListener = true;\n };\n\n private removeGlobalListener = () => {\n if (this.addedGlobalListener) {\n this.globalObject.document?.removeEventListener('keydown', this.handleKeyDown);\n\n this.addedGlobalListener = false;\n }\n };\n\n private refContainer = (element: HTMLSpanElement | null) => {\n this.container = element;\n };\n\n private getPagingSizeClassNames = (): PagingSizeClassNames => {\n const size = this.getSize();\n\n const defaultClassNames = {\n root: this.styles.pagingSmall(),\n dots: this.styles.dotsSmall(),\n forwardLink: this.styles.forwardLinkSmall(),\n pageLink: this.styles.pageLinkSmall(),\n };\n\n switch (size) {\n case 'small':\n return defaultClassNames;\n case 'medium':\n return {\n root: this.styles.pagingMedium(),\n dots: this.styles.dotsMedium(),\n forwardLink: this.isMobile ? this.styles.forwardLinkMediumMobile() : this.styles.forwardLinkMedium(),\n pageLink: this.styles.pageLinkMedium(),\n };\n case 'large':\n return {\n root: this.styles.pagingLarge(),\n dots: this.styles.dotsLarge(),\n forwardLink: this.isMobile ? this.styles.forwardLinkLargeMobile() : this.styles.forwardLinkLarge(),\n pageLink: this.styles.pageLinkLarge(),\n };\n default:\n warning(false, `Invalid size prop: '${this.props.size}'`);\n return defaultClassNames;\n }\n };\n\n private getDotsIcon = () => {\n const size = this.getSize();\n return <DotsIcon size={size} />;\n };\n\n private getForwardIcon = () => {\n const size = this.getSize();\n const iconSize = size;\n return this.isMobile ? (\n <ForwardIconMobile size={iconSize} />\n ) : (\n <ForwardIcon size={iconSize} style={{ marginLeft: 4 }} />\n );\n };\n\n private getSize = () => {\n if (this.props.size) {\n return this.isMobile && this.props.size === 'small' ? 'medium' : this.props.size;\n }\n\n const defaultSize = 'small';\n return this.isMobile ? 'medium' : defaultSize;\n };\n}\n"]}
|