@skbkontur/react-ui 6.4.6-b246a.0 → 6.4.7-b33c6.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 +11 -0
- package/README.md +42 -0
- package/components/Autocomplete/Autocomplete.css.d.ts +6 -0
- package/components/Autocomplete/Autocomplete.css.js +4 -0
- package/components/Autocomplete/Autocomplete.css.js.map +1 -0
- package/components/Autocomplete/Autocomplete.d.ts +0 -3
- package/components/Autocomplete/Autocomplete.js +4 -6
- package/components/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/getAutocompleteTheme.d.ts +1 -2
- package/components/Autocomplete/getAutocompleteTheme.js +3 -2
- package/components/Autocomplete/getAutocompleteTheme.js.map +1 -1
- package/components/Button/Button.classes.js +1 -1
- package/components/Button/Button.classes.js.map +1 -1
- package/components/Button/Button.css.d.ts +166 -0
- package/components/Button/Button.css.js +77 -0
- package/components/Button/Button.css.js.map +1 -0
- package/components/Button/Button.d.ts +0 -4
- package/components/Button/Button.js +73 -74
- package/components/Button/Button.js.map +1 -1
- package/components/Button/ButtonArrow.d.ts +1 -4
- package/components/Button/ButtonArrow.js +10 -14
- package/components/Button/ButtonArrow.js.map +1 -1
- package/components/Button/ButtonIcon.css.d.ts +28 -0
- package/components/Button/ButtonIcon.css.js +15 -0
- package/components/Button/ButtonIcon.css.js.map +1 -0
- package/components/Button/ButtonIcon.js +9 -21
- package/components/Button/ButtonIcon.js.map +1 -1
- package/components/Button/LoadingButtonIcon.js +2 -4
- package/components/Button/LoadingButtonIcon.js.map +1 -1
- package/components/Button/getInnerLinkTheme.d.ts +1 -2
- package/components/Button/getInnerLinkTheme.js +3 -2
- package/components/Button/getInnerLinkTheme.js.map +1 -1
- package/components/Calendar/Calendar.css.d.ts +8 -0
- package/components/Calendar/Calendar.css.js +5 -0
- package/components/Calendar/Calendar.css.js.map +1 -0
- package/components/Calendar/Calendar.d.ts +0 -3
- package/components/Calendar/Calendar.js +5 -5
- package/components/Calendar/Calendar.js.map +1 -1
- package/components/Calendar/CalendarDay.js +7 -9
- package/components/Calendar/CalendarDay.js.map +1 -1
- package/components/Calendar/DayCellView.css.d.ts +14 -0
- package/components/Calendar/DayCellView.css.js +8 -0
- package/components/Calendar/DayCellView.css.js.map +1 -0
- package/components/Calendar/DayCellView.js +2 -6
- package/components/Calendar/DayCellView.js.map +1 -1
- package/components/Calendar/Month.js +5 -25
- package/components/Calendar/Month.js.map +1 -1
- package/components/Calendar/MonthView.css.d.ts +20 -0
- package/components/Calendar/MonthView.css.js +11 -0
- package/components/Calendar/MonthView.css.js.map +1 -0
- package/components/Calendar/MonthView.js +8 -10
- package/components/Calendar/MonthView.js.map +1 -1
- package/components/Center/Center.css.d.ts +12 -0
- package/components/Center/Center.css.js +7 -0
- package/components/Center/Center.css.js.map +1 -0
- package/components/Center/Center.d.ts +0 -3
- package/components/Center/Center.js +8 -10
- package/components/Center/Center.js.map +1 -1
- package/components/Checkbox/Checkbox.css.d.ts +62 -0
- package/components/Checkbox/Checkbox.css.js +32 -0
- package/components/Checkbox/Checkbox.css.js.map +1 -0
- package/components/Checkbox/Checkbox.d.ts +0 -3
- package/components/Checkbox/Checkbox.js +33 -33
- package/components/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.mixins.d.ts +19 -4
- package/components/Checkbox/Checkbox.mixins.js +16 -15
- package/components/Checkbox/Checkbox.mixins.js.map +1 -1
- package/components/DateInput/DateFragmentsView.css.d.ts +10 -0
- package/components/DateInput/DateFragmentsView.css.js +6 -0
- package/components/DateInput/DateFragmentsView.css.js.map +1 -0
- package/components/DateInput/DateFragmentsView.d.ts +0 -5
- package/components/DateInput/DateFragmentsView.js +9 -17
- package/components/DateInput/DateFragmentsView.js.map +1 -1
- package/components/DateInput/DateInput.css.d.ts +16 -0
- package/components/DateInput/DateInput.css.js +9 -0
- package/components/DateInput/DateInput.css.js.map +1 -0
- package/components/DateInput/DateInput.d.ts +0 -5
- package/components/DateInput/DateInput.js +9 -18
- package/components/DateInput/DateInput.js.map +1 -1
- package/components/DatePicker/DatePicker.css.d.ts +6 -0
- package/components/DatePicker/DatePicker.css.js +4 -0
- package/components/DatePicker/DatePicker.css.js.map +1 -0
- package/components/DatePicker/DatePicker.d.ts +0 -2
- package/components/DatePicker/DatePicker.js +8 -7
- package/components/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/MobilePicker.css.d.ts +4 -0
- package/components/DatePicker/MobilePicker.css.js +3 -0
- package/components/DatePicker/MobilePicker.css.js.map +1 -0
- package/components/DatePicker/MobilePicker.js +2 -4
- package/components/DatePicker/MobilePicker.js.map +1 -1
- package/components/DatePicker/getMobilePickerTheme.d.ts +1 -2
- package/components/DatePicker/getMobilePickerTheme.js +3 -2
- package/components/DatePicker/getMobilePickerTheme.js.map +1 -1
- package/components/DateRangePicker/DateRangePicker.css.d.ts +34 -0
- package/components/DateRangePicker/DateRangePicker.css.js +18 -0
- package/components/DateRangePicker/DateRangePicker.css.js.map +1 -0
- package/components/DateRangePicker/DateRangePicker.d.ts +12 -12
- package/components/DateRangePicker/DateRangePicker.js +40 -38
- package/components/DateRangePicker/DateRangePicker.js.map +1 -1
- package/components/DateRangePicker/DateRangePickerTheme.d.ts +2 -3
- package/components/DateRangePicker/DateRangePickerTheme.js +5 -4
- package/components/DateRangePicker/DateRangePickerTheme.js.map +1 -1
- package/components/Dropdown/getDropdownTheme.d.ts +1 -2
- package/components/Dropdown/getDropdownTheme.js +3 -2
- package/components/Dropdown/getDropdownTheme.js.map +1 -1
- package/components/DropdownMenu/getDropdownMenuTheme.d.ts +1 -2
- package/components/DropdownMenu/getDropdownMenuTheme.js +3 -2
- package/components/DropdownMenu/getDropdownMenuTheme.js.map +1 -1
- package/components/FileUploader/FileUploader.css.d.ts +133 -0
- package/components/FileUploader/FileUploader.css.js +65 -0
- package/components/FileUploader/FileUploader.css.js.map +1 -0
- package/components/FileUploader/FileUploader.js +43 -46
- package/components/FileUploader/FileUploader.js.map +1 -1
- package/components/FileUploader/FileUploader.mixins.d.ts +6 -1
- package/components/FileUploader/FileUploader.mixins.js +6 -1
- package/components/FileUploader/FileUploader.mixins.js.map +1 -1
- package/components/FileUploader/FileUploaderFile.css.d.ts +111 -0
- package/components/FileUploader/FileUploaderFile.css.js +56 -0
- package/components/FileUploader/FileUploaderFile.css.js.map +1 -0
- package/components/FileUploader/FileUploaderFile.js +35 -40
- package/components/FileUploader/FileUploaderFile.js.map +1 -1
- package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.css.d.ts +60 -0
- package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.css.js +31 -0
- package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.css.js.map +1 -0
- package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.js +22 -28
- package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
- package/components/FileUploader/FileUploaderFileStatusIcon.js +3 -8
- package/components/FileUploader/FileUploaderFileStatusIcon.js.map +1 -1
- package/components/GlobalLoader/GlobalLoaderView.css.d.ts +26 -0
- package/components/GlobalLoader/GlobalLoaderView.css.js +14 -0
- package/components/GlobalLoader/GlobalLoaderView.css.js.map +1 -0
- package/components/GlobalLoader/GlobalLoaderView.js +20 -19
- package/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
- package/components/Group/Group.css.d.ts +14 -0
- package/components/Group/Group.css.js +8 -0
- package/components/Group/Group.css.js.map +1 -0
- package/components/Group/Group.d.ts +0 -3
- package/components/Group/Group.js +10 -12
- package/components/Group/Group.js.map +1 -1
- package/components/Hint/Hint.css.d.ts +6 -0
- package/components/Hint/Hint.css.js +4 -0
- package/components/Hint/Hint.css.js.map +1 -0
- package/components/Hint/Hint.d.ts +0 -3
- package/components/Hint/Hint.js +10 -10
- package/components/Hint/Hint.js.map +1 -1
- package/components/Input/Input.css.d.ts +73 -0
- package/components/Input/Input.css.js +22 -0
- package/components/Input/Input.css.js.map +1 -0
- package/components/Input/Input.d.ts +0 -3
- package/components/Input/Input.js +18 -18
- package/components/Input/Input.js.map +1 -1
- package/components/Input/InputLayout/InputLayout.css.d.ts +32 -0
- package/components/Input/InputLayout/InputLayout.css.js +18 -0
- package/components/Input/InputLayout/InputLayout.css.js.map +1 -0
- package/components/Input/InputLayout/InputLayout.js +2 -4
- package/components/Input/InputLayout/InputLayout.js.map +1 -1
- package/components/Input/InputLayout/InputLayoutAside.js +2 -4
- package/components/Input/InputLayout/InputLayoutAside.js.map +1 -1
- package/components/Input/InputLayout/InputLayoutAsideCounter.js +9 -11
- package/components/Input/InputLayout/InputLayoutAsideCounter.js.map +1 -1
- package/components/Input/InputLayout/InputLayoutAsideIcon.js +3 -5
- package/components/Input/InputLayout/InputLayoutAsideIcon.js.map +1 -1
- package/components/Input/InputLayout/InputLayoutAsideText.js +4 -6
- package/components/Input/InputLayout/InputLayoutAsideText.js.map +1 -1
- package/components/Kebab/Kebab.css.d.ts +18 -0
- package/components/Kebab/Kebab.css.js +10 -0
- package/components/Kebab/Kebab.css.js.map +1 -0
- package/components/Kebab/Kebab.d.ts +0 -3
- package/components/Kebab/Kebab.js +6 -6
- package/components/Kebab/Kebab.js.map +1 -1
- package/components/Link/Link.css.d.ts +43 -0
- package/components/Link/Link.css.js +22 -0
- package/components/Link/Link.css.js.map +1 -0
- package/components/Link/Link.d.ts +0 -3
- package/components/Link/Link.js +25 -24
- package/components/Link/Link.js.map +1 -1
- package/components/Link/LinkIcon.js +4 -8
- package/components/Link/LinkIcon.js.map +1 -1
- package/components/Loader/Loader.css.d.ts +12 -0
- package/components/Loader/Loader.css.js +7 -0
- package/components/Loader/Loader.css.js.map +1 -0
- package/components/Loader/Loader.d.ts +0 -5
- package/components/Loader/Loader.js +8 -16
- package/components/Loader/Loader.js.map +1 -1
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.css.d.ts +7 -0
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.css.js +4 -0
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.css.js.map +1 -0
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.js +4 -6
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.js.map +1 -1
- package/components/MaskedInput/MaskedInput.css.d.ts +7 -0
- package/components/MaskedInput/MaskedInput.css.js +5 -0
- package/components/MaskedInput/MaskedInput.css.js.map +1 -0
- package/components/MaskedInput/MaskedInputLegacy.js +4 -8
- package/components/MaskedInput/MaskedInputLegacy.js.map +1 -1
- package/components/MaskedInputV2/MaskedInputV2.css.d.ts +7 -0
- package/components/MaskedInputV2/MaskedInputV2.css.js +5 -0
- package/components/MaskedInputV2/MaskedInputV2.css.js.map +1 -0
- package/components/MaskedInputV2/MaskedInputV2.js +4 -8
- package/components/MaskedInputV2/MaskedInputV2.js.map +1 -1
- package/components/MaskedInputV2/internal/MaskOverlay.js +7 -13
- package/components/MaskedInputV2/internal/MaskOverlay.js.map +1 -1
- package/components/MaskedInputV2/internal/MaskedCore.js +5 -8
- package/components/MaskedInputV2/internal/MaskedCore.js.map +1 -1
- package/components/MaskedInputV2/internal/MaskedInternal.css.d.ts +19 -0
- package/components/MaskedInputV2/internal/MaskedInternal.css.js +8 -0
- package/components/MaskedInputV2/internal/MaskedInternal.css.js.map +1 -0
- package/components/MaskedInputV2/react-imask/input.d.ts +1 -1
- package/components/MenuFooter/MenuFooter.css.d.ts +16 -0
- package/components/MenuFooter/MenuFooter.css.js +9 -0
- package/components/MenuFooter/MenuFooter.css.js.map +1 -0
- package/components/MenuFooter/MenuFooter.js +10 -14
- package/components/MenuFooter/MenuFooter.js.map +1 -1
- package/components/MenuFooter/MenuFooter.mixins.d.ts +8 -2
- package/components/MenuFooter/MenuFooter.mixins.js +8 -4
- package/components/MenuFooter/MenuFooter.mixins.js.map +1 -1
- package/components/MenuHeader/MenuHeader.css.d.ts +16 -0
- package/components/MenuHeader/MenuHeader.css.js +9 -0
- package/components/MenuHeader/MenuHeader.css.js.map +1 -0
- package/components/MenuHeader/MenuHeader.js +9 -13
- package/components/MenuHeader/MenuHeader.js.map +1 -1
- package/components/MenuHeader/MenuHeader.mixins.d.ts +8 -2
- package/components/MenuHeader/MenuHeader.mixins.js +8 -4
- package/components/MenuHeader/MenuHeader.mixins.js.map +1 -1
- package/components/MenuItem/MenuItem.css.d.ts +50 -0
- package/components/MenuItem/MenuItem.css.js +26 -0
- package/components/MenuItem/MenuItem.css.js.map +1 -0
- package/components/MenuItem/MenuItem.d.ts +0 -3
- package/components/MenuItem/MenuItem.js +30 -30
- package/components/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.mixins.d.ts +12 -4
- package/components/MenuItem/MenuItem.mixins.js +12 -19
- package/components/MenuItem/MenuItem.mixins.js.map +1 -1
- package/components/MenuSeparator/MenuSeparator.css.d.ts +6 -0
- package/components/MenuSeparator/MenuSeparator.css.js +4 -0
- package/components/MenuSeparator/MenuSeparator.css.js.map +1 -0
- package/components/MenuSeparator/MenuSeparator.js +7 -13
- package/components/MenuSeparator/MenuSeparator.js.map +1 -1
- package/components/MiniModal/MiniModal.css.d.ts +17 -0
- package/components/MiniModal/MiniModal.css.js +10 -0
- package/components/MiniModal/MiniModal.css.js.map +1 -0
- package/components/MiniModal/MiniModalBody.js +2 -8
- package/components/MiniModal/MiniModalBody.js.map +1 -1
- package/components/MiniModal/MiniModalFooter.js +4 -8
- package/components/MiniModal/MiniModalFooter.js.map +1 -1
- package/components/MiniModal/MiniModalHeader.js +6 -10
- package/components/MiniModal/MiniModalHeader.js.map +1 -1
- package/components/MiniModal/MiniModalIndent.js +3 -7
- package/components/MiniModal/MiniModalIndent.js.map +1 -1
- package/components/MiniModal/getMiniModalTheme.d.ts +1 -2
- package/components/MiniModal/getMiniModalTheme.js +3 -2
- package/components/MiniModal/getMiniModalTheme.js.map +1 -1
- package/components/Modal/Modal.css.d.ts +102 -0
- package/components/Modal/Modal.css.js +51 -0
- package/components/Modal/Modal.css.js.map +1 -0
- package/components/Modal/Modal.d.ts +0 -3
- package/components/Modal/Modal.js +26 -26
- package/components/Modal/Modal.js.map +1 -1
- package/components/Modal/ModalBody.d.ts +0 -3
- package/components/Modal/ModalBody.js +10 -12
- package/components/Modal/ModalBody.js.map +1 -1
- package/components/Modal/ModalClose.js +14 -19
- package/components/Modal/ModalClose.js.map +1 -1
- package/components/Modal/ModalFooter.js +3 -5
- package/components/Modal/ModalFooter.js.map +1 -1
- package/components/Modal/ModalHeader.js +3 -5
- package/components/Modal/ModalHeader.js.map +1 -1
- package/components/Modal/ModalSeparator.js +5 -9
- package/components/Modal/ModalSeparator.js.map +1 -1
- package/components/Modal/getModalBodyTheme.d.ts +1 -2
- package/components/Modal/getModalBodyTheme.js +3 -2
- package/components/Modal/getModalBodyTheme.js.map +1 -1
- package/components/Modal/getModalTheme.d.ts +1 -2
- package/components/Modal/getModalTheme.js +3 -2
- package/components/Modal/getModalTheme.js.map +1 -1
- package/components/Paging/Paging.css.d.ts +60 -0
- package/components/Paging/Paging.css.js +31 -0
- package/components/Paging/Paging.css.js.map +1 -0
- package/components/Paging/Paging.d.ts +0 -4
- package/components/Paging/Paging.js +36 -44
- package/components/Paging/Paging.js.map +1 -1
- package/components/PasswordInput/PasswordInput.css.d.ts +18 -0
- package/components/PasswordInput/PasswordInput.css.js +10 -0
- package/components/PasswordInput/PasswordInput.css.js.map +1 -0
- package/components/PasswordInput/PasswordInput.d.ts +0 -4
- package/components/PasswordInput/PasswordInput.js +10 -17
- package/components/PasswordInput/PasswordInput.js.map +1 -1
- package/components/PasswordInput/locale/locales/en.js +2 -2
- package/components/PasswordInput/locale/locales/en.js.map +1 -1
- package/components/PasswordInput/locale/locales/ru.js +2 -2
- package/components/PasswordInput/locale/locales/ru.js.map +1 -1
- package/components/Radio/Radio.css.d.ts +61 -0
- package/components/Radio/Radio.css.js +31 -0
- package/components/Radio/Radio.css.js.map +1 -0
- package/components/Radio/Radio.d.ts +0 -4
- package/components/Radio/Radio.js +33 -38
- package/components/Radio/Radio.js.map +1 -1
- package/components/Radio/Radio.mixins.d.ts +39 -7
- package/components/Radio/Radio.mixins.js +37 -23
- package/components/Radio/Radio.mixins.js.map +1 -1
- package/components/RadioGroup/RadioGroup.css.d.ts +10 -0
- package/components/RadioGroup/RadioGroup.css.js +6 -0
- package/components/RadioGroup/RadioGroup.css.js.map +1 -0
- package/components/RadioGroup/RadioGroup.d.ts +0 -3
- package/components/RadioGroup/RadioGroup.js +8 -10
- package/components/RadioGroup/RadioGroup.js.map +1 -1
- package/components/ScrollContainer/ScrollBar.d.ts +1 -6
- package/components/ScrollContainer/ScrollBar.js +25 -33
- package/components/ScrollContainer/ScrollBar.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.css.d.ts +31 -0
- package/components/ScrollContainer/ScrollContainer.css.js +14 -0
- package/components/ScrollContainer/ScrollContainer.css.js.map +1 -0
- package/components/ScrollContainer/ScrollContainer.d.ts +0 -3
- package/components/ScrollContainer/ScrollContainer.js +4 -4
- package/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/Select/Select.css.d.ts +31 -0
- package/components/Select/Select.css.js +16 -0
- package/components/Select/Select.css.js.map +1 -0
- package/components/Select/Select.d.ts +0 -4
- package/components/Select/Select.js +25 -24
- package/components/Select/Select.js.map +1 -1
- package/components/Select/selectTheme.d.ts +1 -3
- package/components/Select/selectTheme.js +8 -7
- package/components/Select/selectTheme.js.map +1 -1
- package/components/SidePage/SidePage.css.d.ts +96 -0
- package/components/SidePage/SidePage.css.js +49 -0
- package/components/SidePage/SidePage.css.js.map +1 -0
- package/components/SidePage/SidePage.d.ts +0 -5
- package/components/SidePage/SidePage.js +21 -29
- package/components/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePageBody.d.ts +0 -3
- package/components/SidePage/SidePageBody.js +5 -11
- package/components/SidePage/SidePageBody.js.map +1 -1
- package/components/SidePage/SidePageCloseButton.js +7 -10
- package/components/SidePage/SidePageCloseButton.js.map +1 -1
- package/components/SidePage/SidePageContainer.d.ts +0 -4
- package/components/SidePage/SidePageContainer.js +10 -17
- package/components/SidePage/SidePageContainer.js.map +1 -1
- package/components/SidePage/SidePageFooter.d.ts +1 -6
- package/components/SidePage/SidePageFooter.js +10 -18
- package/components/SidePage/SidePageFooter.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +0 -3
- package/components/SidePage/SidePageHeader.js +14 -16
- package/components/SidePage/SidePageHeader.js.map +1 -1
- package/components/Spinner/Spinner.css.d.ts +22 -0
- package/components/Spinner/Spinner.css.js +12 -0
- package/components/Spinner/Spinner.css.js.map +1 -0
- package/components/Spinner/Spinner.d.ts +0 -5
- package/components/Spinner/Spinner.js +9 -19
- package/components/Spinner/Spinner.js.map +1 -1
- package/components/Sticky/Sticky.css.d.ts +12 -0
- package/components/Sticky/Sticky.css.js +7 -0
- package/components/Sticky/Sticky.css.js.map +1 -0
- package/components/Sticky/Sticky.d.ts +0 -4
- package/components/Sticky/Sticky.js +7 -10
- package/components/Sticky/Sticky.js.map +1 -1
- package/components/Switcher/Switcher.css.d.ts +20 -0
- package/components/Switcher/Switcher.css.js +11 -0
- package/components/Switcher/Switcher.css.js.map +1 -0
- package/components/Switcher/Switcher.d.ts +0 -3
- package/components/Switcher/Switcher.js +11 -13
- package/components/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/switcherTheme.d.ts +1 -2
- package/components/Switcher/switcherTheme.js +3 -2
- package/components/Switcher/switcherTheme.js.map +1 -1
- package/components/Tabs/Indicator.css.d.ts +12 -0
- package/components/Tabs/Indicator.css.js +7 -0
- package/components/Tabs/Indicator.css.js.map +1 -0
- package/components/Tabs/Indicator.d.ts +0 -3
- package/components/Tabs/Indicator.js +3 -3
- package/components/Tabs/Indicator.js.map +1 -1
- package/components/Tabs/Tab.css.d.ts +55 -0
- package/components/Tabs/Tab.css.js +28 -0
- package/components/Tabs/Tab.css.js.map +1 -0
- package/components/Tabs/Tab.d.ts +1 -8
- package/components/Tabs/Tab.js +23 -33
- package/components/Tabs/Tab.js.map +1 -1
- package/components/Tabs/Tabs.css.d.ts +10 -0
- package/components/Tabs/Tabs.css.js +6 -0
- package/components/Tabs/Tabs.css.js.map +1 -0
- package/components/Tabs/Tabs.d.ts +0 -4
- package/components/Tabs/Tabs.js +25 -30
- package/components/Tabs/Tabs.js.map +1 -1
- package/components/Textarea/Textarea.css.d.ts +42 -0
- package/components/Textarea/Textarea.css.js +22 -0
- package/components/Textarea/Textarea.css.js.map +1 -0
- package/components/Textarea/Textarea.d.ts +1 -4
- package/components/Textarea/Textarea.js +19 -19
- package/components/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.mixins.d.ts +8 -2
- package/components/Textarea/Textarea.mixins.js +8 -6
- package/components/Textarea/Textarea.mixins.js.map +1 -1
- package/components/Textarea/TextareaCounter.js +7 -9
- package/components/Textarea/TextareaCounter.js.map +1 -1
- package/components/ThemeContainer/ThemeContainer.d.ts +16 -0
- package/components/ThemeContainer/ThemeContainer.js +46 -0
- package/components/ThemeContainer/ThemeContainer.js.map +1 -0
- package/components/ThemeContainer/index.d.ts +1 -0
- package/components/ThemeContainer/index.js +2 -0
- package/components/ThemeContainer/index.js.map +1 -0
- package/components/TimePicker/TimePicker.css.d.ts +19 -0
- package/components/TimePicker/TimePicker.css.js +10 -0
- package/components/TimePicker/TimePicker.css.js.map +1 -0
- package/components/TimePicker/TimePicker.js +4 -6
- package/components/TimePicker/TimePicker.js.map +1 -1
- package/components/TimePicker/TimePickerItems.js +12 -16
- package/components/TimePicker/TimePickerItems.js.map +1 -1
- package/components/TimePicker/TimePickerPopup.js +2 -4
- package/components/TimePicker/TimePickerPopup.js.map +1 -1
- package/components/TimePicker/helpers/TimePicker.constants.d.ts +1 -0
- package/components/TimePicker/helpers/TimePicker.constants.js +3 -0
- package/components/TimePicker/helpers/TimePicker.constants.js.map +1 -1
- package/components/TimePicker/helpers/TimePicker.value.d.ts +0 -1
- package/components/TimePicker/helpers/TimePicker.value.js +0 -5
- package/components/TimePicker/helpers/TimePicker.value.js.map +1 -1
- package/components/Toast/Toast.css.d.ts +10 -0
- package/components/Toast/Toast.css.js +6 -0
- package/components/Toast/Toast.css.js.map +1 -0
- package/components/Toast/Toast.d.ts +0 -2
- package/components/Toast/Toast.js +7 -10
- package/components/Toast/Toast.js.map +1 -1
- package/components/Toast/ToastView.css.d.ts +31 -0
- package/components/Toast/ToastView.css.js +16 -0
- package/components/Toast/ToastView.css.js.map +1 -0
- package/components/Toast/ToastView.d.ts +0 -3
- package/components/Toast/ToastView.js +9 -11
- package/components/Toast/ToastView.js.map +1 -1
- package/components/Toggle/Toggle.classes.js +1 -1
- package/components/Toggle/Toggle.classes.js.map +1 -1
- package/components/Toggle/Toggle.css.d.ts +93 -0
- package/components/Toggle/Toggle.css.js +48 -0
- package/components/Toggle/Toggle.css.js.map +1 -0
- package/components/Toggle/Toggle.d.ts +1 -6
- package/components/Toggle/Toggle.js +52 -60
- package/components/Toggle/Toggle.js.map +1 -1
- package/components/Token/Token.css.d.ts +39 -0
- package/components/Token/Token.css.js +20 -0
- package/components/Token/Token.css.js.map +1 -0
- package/components/Token/Token.d.ts +0 -5
- package/components/Token/Token.js +4 -15
- package/components/Token/Token.js.map +1 -1
- package/components/Token/Token.mixins.d.ts +6 -1
- package/components/Token/Token.mixins.js +6 -3
- package/components/Token/Token.mixins.js.map +1 -1
- package/components/Token/TokenView.js +8 -12
- package/components/Token/TokenView.js.map +1 -1
- package/components/TokenInput/TextWidthHelper.d.ts +0 -3
- package/components/TokenInput/TextWidthHelper.js +7 -17
- package/components/TokenInput/TextWidthHelper.js.map +1 -1
- package/components/TokenInput/TokenInput.css.d.ts +40 -0
- package/components/TokenInput/TokenInput.css.js +22 -0
- package/components/TokenInput/TokenInput.css.js.map +1 -0
- package/components/TokenInput/TokenInput.d.ts +0 -3
- package/components/TokenInput/TokenInput.js +22 -23
- package/components/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.mixins.d.ts +8 -2
- package/components/TokenInput/TokenInput.mixins.js +8 -6
- package/components/TokenInput/TokenInput.mixins.js.map +1 -1
- package/components/TokenInput/TokenInputMenu.js +5 -3
- package/components/TokenInput/TokenInputMenu.js.map +1 -1
- package/components/Tooltip/Tooltip.css.d.ts +18 -0
- package/components/Tooltip/Tooltip.css.js +10 -0
- package/components/Tooltip/Tooltip.css.js.map +1 -0
- package/components/Tooltip/Tooltip.d.ts +1 -12
- package/components/Tooltip/Tooltip.js +29 -42
- package/components/Tooltip/Tooltip.js.map +1 -1
- package/components/TooltipMenu/TooltipMenu.js +10 -6
- package/components/TooltipMenu/TooltipMenu.js.map +1 -1
- package/index.d.ts +1 -0
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon.css.d.ts +18 -0
- package/internal/ClearCrossIcon/ClearCrossIcon.css.js +10 -0
- package/internal/ClearCrossIcon/ClearCrossIcon.css.js.map +1 -0
- package/internal/ClearCrossIcon/ClearCrossIcon.js +8 -11
- package/internal/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
- package/internal/CloseButtonIcon/CloseButtonIcon.css.d.ts +14 -0
- package/internal/CloseButtonIcon/CloseButtonIcon.css.js +8 -0
- package/internal/CloseButtonIcon/CloseButtonIcon.css.js.map +1 -0
- package/internal/CloseButtonIcon/CloseButtonIcon.js +15 -13
- package/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper.d.ts +6 -2
- package/internal/CommonWrapper/CommonWrapper.js +29 -7
- package/internal/CommonWrapper/CommonWrapper.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView.d.ts +0 -4
- package/internal/CustomComboBox/ComboBoxView.js +6 -9
- package/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.css.d.ts +6 -0
- package/internal/CustomComboBox/CustomComboBox.css.js +4 -0
- package/internal/CustomComboBox/CustomComboBox.css.js.map +1 -0
- package/internal/CustomComboBox/getComboBoxTheme.d.ts +1 -2
- package/internal/CustomComboBox/getComboBoxTheme.js +3 -2
- package/internal/CustomComboBox/getComboBoxTheme.js.map +1 -1
- package/internal/DateSelect/DateSelect.css.d.ts +11 -0
- package/internal/DateSelect/DateSelect.css.js +6 -0
- package/internal/DateSelect/DateSelect.css.js.map +1 -0
- package/internal/DateSelect/DateSelect.d.ts +0 -3
- package/internal/DateSelect/DateSelect.js +5 -7
- package/internal/DateSelect/DateSelect.js.map +1 -1
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.css.d.ts +4 -0
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.css.js +3 -0
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.css.js.map +1 -0
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +1 -2
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +8 -13
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.css.d.ts +8 -0
- package/internal/InputLikeText/InputLikeText.css.js +5 -0
- package/internal/InputLikeText/InputLikeText.css.js.map +1 -0
- package/internal/InputLikeText/InputLikeText.d.ts +0 -4
- package/internal/InputLikeText/InputLikeText.js +28 -29
- package/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.css.d.ts +6 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.css.js +5 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.css.js.map +1 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +0 -5
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js +33 -33
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -1
- package/internal/MaskCharLowLine/MaskCharLowLine.css.d.ts +4 -0
- package/internal/MaskCharLowLine/MaskCharLowLine.css.js +3 -0
- package/internal/MaskCharLowLine/MaskCharLowLine.css.js.map +1 -0
- package/internal/MaskCharLowLine/MaskCharLowLine.js +2 -4
- package/internal/MaskCharLowLine/MaskCharLowLine.js.map +1 -1
- package/internal/Menu/Menu.css.d.ts +28 -0
- package/internal/Menu/Menu.css.js +15 -0
- package/internal/Menu/Menu.css.js.map +1 -0
- package/internal/Menu/Menu.d.ts +0 -3
- package/internal/Menu/Menu.js +28 -24
- package/internal/Menu/Menu.js.map +1 -1
- package/internal/MenuMessage/MenuMessage.css.d.ts +18 -0
- package/internal/MenuMessage/MenuMessage.css.js +10 -0
- package/internal/MenuMessage/MenuMessage.css.js.map +1 -0
- package/internal/MenuMessage/MenuMessage.js +10 -12
- package/internal/MenuMessage/MenuMessage.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.css.d.ts +30 -0
- package/internal/MobilePopup/MobilePopup.css.js +16 -0
- package/internal/MobilePopup/MobilePopup.css.js.map +1 -0
- package/internal/MobilePopup/MobilePopup.d.ts +0 -3
- package/internal/MobilePopup/MobilePopup.js +17 -19
- package/internal/MobilePopup/MobilePopup.js.map +1 -1
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.css.d.ts +10 -0
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.css.js +6 -0
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.css.js.map +1 -0
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.d.ts +0 -2
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js +5 -16
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js.map +1 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.css.d.ts +24 -0
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.css.js +13 -0
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.css.js.map +1 -0
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +0 -3
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js +18 -28
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
- package/internal/NativeDateInput/NativeDateInput.css.d.ts +4 -0
- package/internal/NativeDateInput/NativeDateInput.css.js +3 -0
- package/internal/NativeDateInput/NativeDateInput.css.js.map +1 -0
- package/internal/NativeDateInput/NativeDateInput.d.ts +0 -2
- package/internal/NativeDateInput/NativeDateInput.js +2 -13
- package/internal/NativeDateInput/NativeDateInput.js.map +1 -1
- package/internal/NativeTimeInput/NativeTimeInput.css.d.ts +4 -0
- package/internal/NativeTimeInput/NativeTimeInput.css.js +3 -0
- package/internal/NativeTimeInput/NativeTimeInput.css.js.map +1 -0
- package/internal/NativeTimeInput/NativeTimeInput.js +2 -4
- package/internal/NativeTimeInput/NativeTimeInput.js.map +1 -1
- package/internal/Popup/Popup.css.d.ts +35 -0
- package/internal/Popup/Popup.css.js +16 -0
- package/internal/Popup/Popup.css.js.map +1 -0
- package/internal/Popup/Popup.d.ts +0 -11
- package/internal/Popup/Popup.js +26 -40
- package/internal/Popup/Popup.js.map +1 -1
- package/internal/Popup/PopupPin.css.d.ts +16 -0
- package/internal/Popup/PopupPin.css.js +9 -0
- package/internal/Popup/PopupPin.css.js.map +1 -0
- package/internal/Popup/PopupPin.d.ts +0 -3
- package/internal/Popup/PopupPin.js +8 -8
- package/internal/Popup/PopupPin.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.css.d.ts +6 -0
- package/internal/PopupMenu/PopupMenu.css.js +4 -0
- package/internal/PopupMenu/PopupMenu.css.js.map +1 -0
- package/internal/PopupMenu/PopupMenu.d.ts +0 -2
- package/internal/PopupMenu/PopupMenu.js +9 -8
- package/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/RenderContainer/RenderContainer.d.ts +2 -0
- package/internal/RenderContainer/RenderContainer.js +38 -3
- package/internal/RenderContainer/RenderContainer.js.map +1 -1
- package/internal/RenderContainer/RenderInnerContainer.js +6 -3
- package/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
- package/internal/ResizeDetector/ResizeDetector.css.d.ts +12 -0
- package/internal/ResizeDetector/ResizeDetector.css.js +7 -0
- package/internal/ResizeDetector/ResizeDetector.css.js.map +1 -0
- package/internal/ResizeDetector/ResizeDetector.d.ts +0 -3
- package/internal/ResizeDetector/ResizeDetector.js +8 -18
- package/internal/ResizeDetector/ResizeDetector.js.map +1 -1
- package/internal/SpinnerIcon/SpinnerIcon.css.d.ts +10 -0
- package/internal/SpinnerIcon/SpinnerIcon.css.js +6 -0
- package/internal/SpinnerIcon/SpinnerIcon.css.js.map +1 -0
- package/internal/SpinnerIcon/SpinnerIcon.js +5 -7
- package/internal/SpinnerIcon/SpinnerIcon.js.map +1 -1
- package/internal/TextWidthHelper/TextWidthHelper.css.d.ts +6 -0
- package/internal/TextWidthHelper/TextWidthHelper.css.js +4 -0
- package/internal/TextWidthHelper/TextWidthHelper.css.js.map +1 -0
- package/internal/TextWidthHelper/TextWidthHelper.d.ts +0 -2
- package/internal/TextWidthHelper/TextWidthHelper.js +3 -14
- package/internal/TextWidthHelper/TextWidthHelper.js.map +1 -1
- package/internal/TimeInput/TimeFragments.css.d.ts +47 -0
- package/internal/TimeInput/TimeFragments.css.js +18 -0
- package/internal/TimeInput/TimeFragments.css.js.map +1 -0
- package/internal/TimeInput/TimeFragments.js +22 -26
- package/internal/TimeInput/TimeFragments.js.map +1 -1
- package/internal/TimeInput/TimeInput.css.d.ts +10 -0
- package/internal/TimeInput/TimeInput.css.js +6 -0
- package/internal/TimeInput/TimeInput.css.js.map +1 -0
- package/internal/TimeInput/TimeInput.js +6 -8
- package/internal/TimeInput/TimeInput.js.map +1 -1
- package/internal/icons2022/BaseIcon.css.d.ts +4 -0
- package/internal/icons2022/BaseIcon.css.js +3 -0
- package/internal/icons2022/BaseIcon.css.js.map +1 -0
- package/internal/icons2022/BaseIcon.js +2 -4
- package/internal/icons2022/BaseIcon.js.map +1 -1
- package/internal/icons2022/LoadingIcon.js +3 -7
- package/internal/icons2022/LoadingIcon.js.map +1 -1
- package/internal/themes/BasicTheme.d.ts +5 -5
- package/internal/themes/BasicTheme.js +42 -12
- package/internal/themes/BasicTheme.js.map +1 -1
- package/internal/themes/DarkTheme6_0.js +0 -2
- package/internal/themes/DarkTheme6_0.js.map +1 -1
- package/lib/cx.d.ts +2 -0
- package/lib/cx.js +23 -0
- package/lib/cx.js.map +1 -0
- package/lib/prefix.d.ts +2 -0
- package/lib/prefix.js +22 -0
- package/lib/prefix.js.map +1 -0
- package/lib/renderEnvironment/RenderEnvironmentContext.d.ts +0 -4
- package/lib/renderEnvironment/RenderEnvironmentContext.js +21 -16
- package/lib/renderEnvironment/RenderEnvironmentContext.js.map +1 -1
- package/lib/renderEnvironment/RenderEnvironmentDecorator.js +1 -3
- package/lib/renderEnvironment/RenderEnvironmentDecorator.js.map +1 -1
- package/lib/styles/LabGrotesqueBaseline.css.d.ts +1 -0
- package/lib/styles/LabGrotesqueBaseline.css.js +0 -0
- package/lib/styles/LabGrotesqueBaseline.css.js.map +1 -0
- package/lib/styles/UiFont.css.d.ts +1 -0
- package/lib/styles/UiFont.css.js +2 -0
- package/lib/styles/UiFont.css.js.map +1 -0
- package/lib/styles/getLabGrotesqueBaselineCompensation.d.ts +6 -1
- package/lib/styles/getLabGrotesqueBaselineCompensation.js +23 -6
- package/lib/styles/getLabGrotesqueBaselineCompensation.js.map +1 -1
- package/lib/theming/ThemeFactory.d.ts +1 -10
- package/lib/theming/ThemeFactory.js +1 -29
- package/lib/theming/ThemeFactory.js.map +1 -1
- package/lib/theming/memoizeTheme.d.ts +11 -0
- package/lib/theming/memoizeTheme.js +37 -0
- package/lib/theming/memoizeTheme.js.map +1 -0
- package/lib/theming/themeVars.d.ts +37 -0
- package/lib/theming/themeVars.js +121 -0
- package/lib/theming/themeVars.js.map +1 -0
- package/package.json +22 -7
- package/react-ui.css +6096 -0
- package/theme-loader.js +51 -0
- package/components/Autocomplete/Autocomplete.styles.d.ts +0 -5
- package/components/Autocomplete/Autocomplete.styles.js +0 -18
- package/components/Autocomplete/Autocomplete.styles.js.map +0 -1
- 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/Button/Button.styles.d.ts +0 -95
- package/components/Button/Button.styles.js +0 -260
- package/components/Button/Button.styles.js.map +0 -1
- package/components/Button/ButtonIcon.styles.d.ts +0 -16
- package/components/Button/ButtonIcon.styles.js +0 -53
- package/components/Button/ButtonIcon.styles.js.map +0 -1
- package/components/Calendar/Calendar.styles.d.ts +0 -6
- package/components/Calendar/Calendar.styles.js +0 -22
- package/components/Calendar/Calendar.styles.js.map +0 -1
- package/components/Calendar/DayCellView.styles.d.ts +0 -9
- package/components/Calendar/DayCellView.styles.js +0 -31
- package/components/Calendar/DayCellView.styles.js.map +0 -1
- package/components/Calendar/MonthView.styles.d.ts +0 -13
- package/components/Calendar/MonthView.styles.js +0 -47
- package/components/Calendar/MonthView.styles.js.map +0 -1
- package/components/Center/Center.styles.d.ts +0 -7
- package/components/Center/Center.styles.js +0 -27
- package/components/Center/Center.styles.js.map +0 -1
- package/components/Checkbox/Checkbox.styles.d.ts +0 -34
- package/components/Checkbox/Checkbox.styles.js +0 -100
- package/components/Checkbox/Checkbox.styles.js.map +0 -1
- package/components/DateInput/DateFragmentsView.styles.d.ts +0 -7
- package/components/DateInput/DateFragmentsView.styles.js +0 -28
- package/components/DateInput/DateFragmentsView.styles.js.map +0 -1
- package/components/DateInput/DateInput.styles.d.ts +0 -11
- package/components/DateInput/DateInput.styles.js +0 -29
- package/components/DateInput/DateInput.styles.js.map +0 -1
- package/components/DatePicker/DatePicker.styles.d.ts +0 -5
- package/components/DatePicker/DatePicker.styles.js +0 -18
- package/components/DatePicker/DatePicker.styles.js.map +0 -1
- package/components/DatePicker/MobilePicker.styles.d.ts +0 -3
- package/components/DatePicker/MobilePicker.styles.js +0 -15
- package/components/DatePicker/MobilePicker.styles.js.map +0 -1
- package/components/DateRangePicker/DateRangePicker.styles.d.ts +0 -16
- package/components/DateRangePicker/DateRangePicker.styles.js +0 -57
- package/components/DateRangePicker/DateRangePicker.styles.js.map +0 -1
- package/components/FileUploader/FileUploader.styles.d.ts +0 -74
- package/components/FileUploader/FileUploader.styles.js +0 -221
- package/components/FileUploader/FileUploader.styles.js.map +0 -1
- package/components/FileUploader/FileUploaderFile.styles.d.ts +0 -60
- package/components/FileUploader/FileUploaderFile.styles.js +0 -184
- package/components/FileUploader/FileUploaderFile.styles.js.map +0 -1
- package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.styles.d.ts +0 -34
- package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.styles.js +0 -103
- package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.styles.js.map +0 -1
- package/components/GlobalLoader/GlobalLoaderView.styles.d.ts +0 -17
- package/components/GlobalLoader/GlobalLoaderView.styles.js +0 -70
- package/components/GlobalLoader/GlobalLoaderView.styles.js.map +0 -1
- package/components/Group/Group.styles.d.ts +0 -8
- package/components/Group/Group.styles.js +0 -30
- package/components/Group/Group.styles.js.map +0 -1
- package/components/Hint/Hint.styles.d.ts +0 -5
- package/components/Hint/Hint.styles.js +0 -18
- package/components/Hint/Hint.styles.js.map +0 -1
- package/components/Input/Input.styles.d.ts +0 -21
- package/components/Input/Input.styles.js +0 -68
- package/components/Input/Input.styles.js.map +0 -1
- package/components/Input/InputLayout/InputLayout.styles.d.ts +0 -18
- package/components/Input/InputLayout/InputLayout.styles.js +0 -59
- package/components/Input/InputLayout/InputLayout.styles.js.map +0 -1
- package/components/Kebab/Kebab.styles.d.ts +0 -11
- package/components/Kebab/Kebab.styles.js +0 -36
- package/components/Kebab/Kebab.styles.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/Link/Link.styles.d.ts +0 -24
- package/components/Link/Link.styles.js +0 -82
- package/components/Link/Link.styles.js.map +0 -1
- package/components/Loader/Loader.styles.d.ts +0 -8
- package/components/Loader/Loader.styles.js +0 -27
- package/components/Loader/Loader.styles.js.map +0 -1
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.styles.d.ts +0 -6
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.styles.js +0 -18
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.styles.js.map +0 -1
- package/components/MaskedInput/MaskedInput.styles.d.ts +0 -7
- package/components/MaskedInput/MaskedInput.styles.js +0 -19
- package/components/MaskedInput/MaskedInput.styles.js.map +0 -1
- package/components/MaskedInputV2/MaskedInputV2.styles.d.ts +0 -7
- package/components/MaskedInputV2/MaskedInputV2.styles.js +0 -19
- package/components/MaskedInputV2/MaskedInputV2.styles.js.map +0 -1
- package/components/MaskedInputV2/internal/MaskedInternal.styles.d.ts +0 -15
- package/components/MaskedInputV2/internal/MaskedInternal.styles.js +0 -34
- package/components/MaskedInputV2/internal/MaskedInternal.styles.js.map +0 -1
- package/components/MenuFooter/MenuFooter.styles.d.ts +0 -10
- package/components/MenuFooter/MenuFooter.styles.js +0 -34
- package/components/MenuFooter/MenuFooter.styles.js.map +0 -1
- package/components/MenuHeader/MenuHeader.styles.d.ts +0 -10
- package/components/MenuHeader/MenuHeader.styles.js +0 -34
- package/components/MenuHeader/MenuHeader.styles.js.map +0 -1
- package/components/MenuItem/MenuItem.styles.d.ts +0 -29
- package/components/MenuItem/MenuItem.styles.js +0 -88
- package/components/MenuItem/MenuItem.styles.js.map +0 -1
- package/components/MenuSeparator/MenuSeparator.styles.d.ts +0 -5
- package/components/MenuSeparator/MenuSeparator.styles.js +0 -18
- package/components/MenuSeparator/MenuSeparator.styles.js.map +0 -1
- package/components/MiniModal/MiniModal.styles.d.ts +0 -11
- package/components/MiniModal/MiniModal.styles.js +0 -37
- package/components/MiniModal/MiniModal.styles.js.map +0 -1
- package/components/Modal/Modal.styles.d.ts +0 -55
- package/components/Modal/Modal.styles.js +0 -167
- package/components/Modal/Modal.styles.js.map +0 -1
- package/components/Paging/Paging.styles.d.ts +0 -32
- package/components/Paging/Paging.styles.js +0 -99
- package/components/Paging/Paging.styles.js.map +0 -1
- package/components/PasswordInput/PasswordInput.styles.d.ts +0 -11
- package/components/PasswordInput/PasswordInput.styles.js +0 -36
- package/components/PasswordInput/PasswordInput.styles.js.map +0 -1
- package/components/Radio/Radio.styles.d.ts +0 -34
- package/components/Radio/Radio.styles.js +0 -100
- package/components/Radio/Radio.styles.js.map +0 -1
- package/components/RadioGroup/RadioGroup.styles.d.ts +0 -6
- package/components/RadioGroup/RadioGroup.styles.js +0 -24
- package/components/RadioGroup/RadioGroup.styles.js.map +0 -1
- package/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -21
- package/components/ScrollContainer/ScrollContainer.styles.js +0 -52
- package/components/ScrollContainer/ScrollContainer.styles.js.map +0 -1
- package/components/Select/Select.styles.d.ts +0 -18
- package/components/Select/Select.styles.js +0 -57
- package/components/Select/Select.styles.js.map +0 -1
- package/components/SidePage/SidePage.styles.d.ts +0 -50
- package/components/SidePage/SidePage.styles.js +0 -158
- package/components/SidePage/SidePage.styles.js.map +0 -1
- package/components/Spinner/Spinner.styles.d.ts +0 -13
- package/components/Spinner/Spinner.styles.js +0 -43
- package/components/Spinner/Spinner.styles.js.map +0 -1
- package/components/Sticky/Sticky.styles.d.ts +0 -7
- package/components/Sticky/Sticky.styles.js +0 -27
- package/components/Sticky/Sticky.styles.js.map +0 -1
- package/components/Switcher/Switcher.styles.d.ts +0 -12
- package/components/Switcher/Switcher.styles.js +0 -39
- package/components/Switcher/Switcher.styles.js.map +0 -1
- package/components/Tabs/Indicator.styles.d.ts +0 -8
- package/components/Tabs/Indicator.styles.js +0 -27
- package/components/Tabs/Indicator.styles.js.map +0 -1
- package/components/Tabs/Tab.styles.d.ts +0 -33
- package/components/Tabs/Tab.styles.js +0 -105
- package/components/Tabs/Tab.styles.js.map +0 -1
- package/components/Tabs/Tabs.styles.d.ts +0 -7
- package/components/Tabs/Tabs.styles.js +0 -26
- package/components/Tabs/Tabs.styles.js.map +0 -1
- package/components/Textarea/Textarea.styles.d.ts +0 -23
- package/components/Textarea/Textarea.styles.js +0 -73
- package/components/Textarea/Textarea.styles.js.map +0 -1
- package/components/TimePicker/TimePicker.styles.d.ts +0 -12
- package/components/TimePicker/TimePicker.styles.js +0 -39
- package/components/TimePicker/TimePicker.styles.js.map +0 -1
- package/components/Toast/Toast.styles.d.ts +0 -6
- package/components/Toast/Toast.styles.js +0 -24
- package/components/Toast/Toast.styles.js.map +0 -1
- package/components/Toast/ToastView.styles.d.ts +0 -18
- package/components/Toast/ToastView.styles.js +0 -67
- package/components/Toast/ToastView.styles.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/Toggle/Toggle.styles.d.ts +0 -49
- package/components/Toggle/Toggle.styles.js +0 -147
- package/components/Toggle/Toggle.styles.js.map +0 -1
- package/components/Token/Token.styles.d.ts +0 -23
- package/components/Token/Token.styles.js +0 -67
- package/components/Token/Token.styles.js.map +0 -1
- package/components/TokenInput/TokenInput.styles.d.ts +0 -22
- package/components/TokenInput/TokenInput.styles.js +0 -71
- package/components/TokenInput/TokenInput.styles.js.map +0 -1
- package/components/Tooltip/Tooltip.styles.d.ts +0 -11
- package/components/Tooltip/Tooltip.styles.js +0 -36
- package/components/Tooltip/Tooltip.styles.js.map +0 -1
- package/internal/ClearCrossIcon/ClearCrossIcon.styles.d.ts +0 -12
- package/internal/ClearCrossIcon/ClearCrossIcon.styles.js +0 -36
- package/internal/ClearCrossIcon/ClearCrossIcon.styles.js.map +0 -1
- package/internal/CloseButtonIcon/CloseButtonIcon.styles.d.ts +0 -8
- package/internal/CloseButtonIcon/CloseButtonIcon.styles.js +0 -24
- package/internal/CloseButtonIcon/CloseButtonIcon.styles.js.map +0 -1
- package/internal/CustomComboBox/CustomComboBox.styles.d.ts +0 -4
- package/internal/CustomComboBox/CustomComboBox.styles.js +0 -18
- package/internal/CustomComboBox/CustomComboBox.styles.js.map +0 -1
- package/internal/DateSelect/DateSelect.styles.d.ts +0 -9
- package/internal/DateSelect/DateSelect.styles.js +0 -24
- package/internal/DateSelect/DateSelect.styles.js.map +0 -1
- package/internal/InputLikeText/InputLikeText.styles.d.ts +0 -8
- package/internal/InputLikeText/InputLikeText.styles.js +0 -30
- package/internal/InputLikeText/InputLikeText.styles.js.map +0 -1
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.d.ts +0 -3
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js +0 -15
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js.map +0 -1
- package/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +0 -3
- package/internal/MaskCharLowLine/MaskCharLowLine.styles.js +0 -15
- package/internal/MaskCharLowLine/MaskCharLowLine.styles.js.map +0 -1
- package/internal/Menu/Menu.styles.d.ts +0 -16
- package/internal/Menu/Menu.styles.js +0 -51
- package/internal/Menu/Menu.styles.js.map +0 -1
- package/internal/MenuMessage/MenuMessage.styles.d.ts +0 -11
- package/internal/MenuMessage/MenuMessage.styles.js +0 -41
- package/internal/MenuMessage/MenuMessage.styles.js.map +0 -1
- package/internal/MobilePopup/MobilePopup.styles.d.ts +0 -17
- package/internal/MobilePopup/MobilePopup.styles.js +0 -57
- package/internal/MobilePopup/MobilePopup.styles.js.map +0 -1
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.d.ts +0 -7
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.js +0 -25
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.js.map +0 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +0 -14
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js +0 -47
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js.map +0 -1
- package/internal/NativeDateInput/NativeDateInput.styles.d.ts +0 -3
- package/internal/NativeDateInput/NativeDateInput.styles.js +0 -15
- package/internal/NativeDateInput/NativeDateInput.styles.js.map +0 -1
- package/internal/NativeTimeInput/NativeTimeInput.styles.d.ts +0 -3
- package/internal/NativeTimeInput/NativeTimeInput.styles.js +0 -15
- package/internal/NativeTimeInput/NativeTimeInput.styles.js.map +0 -1
- package/internal/Popup/Popup.styles.d.ts +0 -22
- package/internal/Popup/Popup.styles.js +0 -69
- package/internal/Popup/Popup.styles.js.map +0 -1
- package/internal/Popup/PopupPin.styles.d.ts +0 -9
- package/internal/Popup/PopupPin.styles.js +0 -33
- package/internal/Popup/PopupPin.styles.js.map +0 -1
- package/internal/PopupMenu/PopupMenu.styles.d.ts +0 -4
- package/internal/PopupMenu/PopupMenu.styles.js +0 -18
- package/internal/PopupMenu/PopupMenu.styles.js.map +0 -1
- package/internal/ResizeDetector/ResizeDetector.styles.d.ts +0 -7
- package/internal/ResizeDetector/ResizeDetector.styles.js +0 -27
- package/internal/ResizeDetector/ResizeDetector.styles.js.map +0 -1
- package/internal/SpinnerIcon/SpinnerIcon.styles.d.ts +0 -6
- package/internal/SpinnerIcon/SpinnerIcon.styles.js +0 -24
- package/internal/SpinnerIcon/SpinnerIcon.styles.js.map +0 -1
- package/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +0 -4
- package/internal/TextWidthHelper/TextWidthHelper.styles.js +0 -18
- package/internal/TextWidthHelper/TextWidthHelper.styles.js.map +0 -1
- package/internal/TimeInput/TimeFragments.styles.d.ts +0 -32
- package/internal/TimeInput/TimeFragments.styles.js +0 -78
- package/internal/TimeInput/TimeFragments.styles.js.map +0 -1
- package/internal/TimeInput/TimeInput.styles.d.ts +0 -7
- package/internal/TimeInput/TimeInput.styles.js +0 -24
- package/internal/TimeInput/TimeInput.styles.js.map +0 -1
- package/internal/icons2022/BaseIcon.styles.d.ts +0 -3
- package/internal/icons2022/BaseIcon.styles.js +0 -16
- package/internal/icons2022/BaseIcon.styles.js.map +0 -1
- package/lib/Upgrades.d.ts +0 -6
- package/lib/Upgrades.js +0 -34
- package/lib/Upgrades.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/theming/AnimationKeyframes.d.ts +0 -7
- package/lib/theming/AnimationKeyframes.js +0 -24
- package/lib/theming/AnimationKeyframes.js.map +0 -1
- package/lib/theming/Emotion.d.ts +0 -15
- package/lib/theming/Emotion.js +0 -72
- package/lib/theming/Emotion.js.map +0 -1
- package/typings/stylis-plugin-extra-scope.d.ts +0 -3
|
@@ -35,20 +35,20 @@ import warning from 'warning';
|
|
|
35
35
|
import { CommonWrapper } from '../../internal/CommonWrapper/index.js';
|
|
36
36
|
import { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes.js';
|
|
37
37
|
import { createPropsGetter } from '../../lib/createPropsGetter.js';
|
|
38
|
+
import { cx } from '../../lib/cx.js';
|
|
38
39
|
import { isKeyArrowLeft, isKeyArrowRight, isKeyEnter } from '../../lib/events/keyboard/identifiers.js';
|
|
39
40
|
import { KeyListener } from '../../lib/events/keyListener.js';
|
|
40
41
|
import { isInstanceOf } from '../../lib/isInstanceOf.js';
|
|
41
42
|
import { locale } from '../../lib/locale/decorators.js';
|
|
42
43
|
import { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';
|
|
43
44
|
import { rootNode } from '../../lib/rootNode/index.js';
|
|
44
|
-
import { ThemeContext } from '../../lib/theming/ThemeContext.js';
|
|
45
45
|
import { emptyHandler } from '../../lib/utils.js';
|
|
46
46
|
import { ResponsiveLayout } from '../ResponsiveLayout/index.js';
|
|
47
47
|
import { DotsIcon } from './DotsIcon.js';
|
|
48
48
|
import { ForwardIcon, ForwardIconMobile } from './ForwardIcon.js';
|
|
49
49
|
import { PagingLocaleHelper } from './locale/index.js';
|
|
50
50
|
import * as NavigationHelper from './NavigationHelper.js';
|
|
51
|
-
import {
|
|
51
|
+
import { styles } from './Paging.css.js';
|
|
52
52
|
import { PagingDefaultComponent } from './PagingDefaultComponent.js';
|
|
53
53
|
import { getItems } from './PagingHelper.js';
|
|
54
54
|
var IGNORE_EVENT_TAGS = ['input', 'textarea'];
|
|
@@ -93,15 +93,15 @@ var Paging = /** @class */ (function (_super) {
|
|
|
93
93
|
};
|
|
94
94
|
_this.renderDots = function (key) {
|
|
95
95
|
var _a;
|
|
96
|
-
return (React.createElement("span", { "data-tid": PagingDataTids.dots, key: key, className:
|
|
97
|
-
_a[
|
|
96
|
+
return (React.createElement("span", { "data-tid": PagingDataTids.dots, key: key, className: cx(styles.dots, _this.sizeClassNames.dots, (_a = {},
|
|
97
|
+
_a[styles.dotsDisabled] = _this.props.disabled,
|
|
98
98
|
_a)) }, _this.getDotsIcon()));
|
|
99
99
|
};
|
|
100
100
|
_this.renderForwardLink = function (disabled, focused) {
|
|
101
101
|
var _a;
|
|
102
|
-
var classNames =
|
|
103
|
-
_a[
|
|
104
|
-
_a[
|
|
102
|
+
var classNames = cx(styles.pageLink, _this.sizeClassNames.pageLink, styles.forwardLink, _this.sizeClassNames.forwardLink, (_a = {},
|
|
103
|
+
_a[styles.pageLinkFocused] = focused,
|
|
104
|
+
_a[styles.forwardLinkDisabled] = disabled || _this.props.disabled,
|
|
105
105
|
_a));
|
|
106
106
|
var Component = _this.getProps().component;
|
|
107
107
|
var forward = _this.locale.forward;
|
|
@@ -113,15 +113,15 @@ var Paging = /** @class */ (function (_super) {
|
|
|
113
113
|
_this.renderPageLink = function (pageNumber, active, focused) {
|
|
114
114
|
var _a;
|
|
115
115
|
var disabled = _this.props.disabled;
|
|
116
|
-
var classNames =
|
|
117
|
-
_a[
|
|
118
|
-
_a[
|
|
119
|
-
_a[
|
|
120
|
-
_a[
|
|
116
|
+
var classNames = cx(styles.pageLink, _this.sizeClassNames.pageLink, (_a = {},
|
|
117
|
+
_a[styles.pageLinkFocused] = focused,
|
|
118
|
+
_a[styles.pageLinkDisabled] = disabled,
|
|
119
|
+
_a[styles.pageLinkCurrent] = active,
|
|
120
|
+
_a[styles.pageLinkCurrentDisabled] = active && disabled,
|
|
121
121
|
_a));
|
|
122
122
|
var Component = _this.getProps().component;
|
|
123
123
|
var handleClick = function () { return _this.goToPage(pageNumber); };
|
|
124
|
-
return (React.createElement("span", __assign({ "data-tid": PagingDataTids.pageLinkWrapper, key: pageNumber, className:
|
|
124
|
+
return (React.createElement("span", __assign({ "data-tid": PagingDataTids.pageLinkWrapper, key: pageNumber, className: styles.pageLinkWrapper }, getVisualStateDataAttributes({ active: active, disabled: disabled })),
|
|
125
125
|
React.createElement(Component, { "data-tid": PagingDataTids.pageLink, active: active, className: classNames, onClick: handleClick, tabIndex: -1, pageNumber: pageNumber }, pageNumber),
|
|
126
126
|
active && !_this.isMobile && _this.renderNavigationHint()));
|
|
127
127
|
};
|
|
@@ -135,11 +135,11 @@ var Paging = /** @class */ (function (_super) {
|
|
|
135
135
|
var hint = null;
|
|
136
136
|
if (keyboardControl && (canGoBackward || canGoForward)) {
|
|
137
137
|
hint = (React.createElement(React.Fragment, null,
|
|
138
|
-
React.createElement("span", { className: canGoBackward ? '' :
|
|
138
|
+
React.createElement("span", { className: canGoBackward ? '' : styles.transparent }, '←'),
|
|
139
139
|
React.createElement("span", null, NavigationHelper.getKeyName()),
|
|
140
|
-
React.createElement("span", { className: canGoForward ? '' :
|
|
140
|
+
React.createElement("span", { className: canGoForward ? '' : styles.transparent }, '→')));
|
|
141
141
|
}
|
|
142
|
-
return React.createElement("div", { className:
|
|
142
|
+
return React.createElement("div", { className: styles.pageLinkHint }, hint);
|
|
143
143
|
};
|
|
144
144
|
_this.handleMouseDown = function () {
|
|
145
145
|
_this.setState({ focusedByTab: false, focusedItem: null });
|
|
@@ -285,31 +285,27 @@ var Paging = /** @class */ (function (_super) {
|
|
|
285
285
|
_this.getPagingSizeClassNames = function () {
|
|
286
286
|
var size = _this.getSize();
|
|
287
287
|
var defaultClassNames = {
|
|
288
|
-
root:
|
|
289
|
-
dots:
|
|
290
|
-
forwardLink:
|
|
291
|
-
pageLink:
|
|
288
|
+
root: styles.pagingSmall,
|
|
289
|
+
dots: styles.dotsSmall,
|
|
290
|
+
forwardLink: styles.forwardLinkSmall,
|
|
291
|
+
pageLink: styles.pageLinkSmall,
|
|
292
292
|
};
|
|
293
293
|
switch (size) {
|
|
294
294
|
case 'small':
|
|
295
295
|
return defaultClassNames;
|
|
296
296
|
case 'medium':
|
|
297
297
|
return {
|
|
298
|
-
root:
|
|
299
|
-
dots:
|
|
300
|
-
forwardLink: _this.isMobile
|
|
301
|
-
|
|
302
|
-
: _this.styles.forwardLinkMedium(_this.theme),
|
|
303
|
-
pageLink: _this.styles.pageLinkMedium(_this.theme),
|
|
298
|
+
root: styles.pagingMedium,
|
|
299
|
+
dots: styles.dotsMedium,
|
|
300
|
+
forwardLink: _this.isMobile ? styles.forwardLinkMediumMobile : styles.forwardLinkMedium,
|
|
301
|
+
pageLink: styles.pageLinkMedium,
|
|
304
302
|
};
|
|
305
303
|
case 'large':
|
|
306
304
|
return {
|
|
307
|
-
root:
|
|
308
|
-
dots:
|
|
309
|
-
forwardLink: _this.isMobile
|
|
310
|
-
|
|
311
|
-
: _this.styles.forwardLinkLarge(_this.theme),
|
|
312
|
-
pageLink: _this.styles.pageLinkLarge(_this.theme),
|
|
305
|
+
root: styles.pagingLarge,
|
|
306
|
+
dots: styles.dotsLarge,
|
|
307
|
+
forwardLink: _this.isMobile ? styles.forwardLinkLargeMobile : styles.forwardLinkLarge,
|
|
308
|
+
pageLink: styles.pageLinkLarge,
|
|
313
309
|
};
|
|
314
310
|
default:
|
|
315
311
|
warning(false, "Invalid size prop: '".concat(_this.props.size, "'"));
|
|
@@ -367,15 +363,11 @@ var Paging = /** @class */ (function (_super) {
|
|
|
367
363
|
if (this.props.pagesCount < 2) {
|
|
368
364
|
return null;
|
|
369
365
|
}
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
_this.
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
_this.isMobile = isMobile;
|
|
376
|
-
_this.sizeClassNames = _this.getPagingSizeClassNames();
|
|
377
|
-
return _this.renderMain();
|
|
378
|
-
}));
|
|
366
|
+
return (React.createElement(ResponsiveLayout, null, function (_a) {
|
|
367
|
+
var isMobile = _a.isMobile;
|
|
368
|
+
_this.isMobile = isMobile;
|
|
369
|
+
_this.sizeClassNames = _this.getPagingSizeClassNames();
|
|
370
|
+
return _this.renderMain();
|
|
379
371
|
}));
|
|
380
372
|
};
|
|
381
373
|
Paging.prototype.renderMain = function () {
|
|
@@ -383,9 +375,9 @@ var Paging = /** @class */ (function (_super) {
|
|
|
383
375
|
var _this = this;
|
|
384
376
|
var useGlobalListener = this.getProps().useGlobalListener;
|
|
385
377
|
return (React.createElement(CommonWrapper, __assign({ rootNodeRef: this.setRootNode }, this.props, getVisualStateDataAttributes({ disabled: this.props.disabled })),
|
|
386
|
-
React.createElement("span", { tabIndex: this.props.disabled ? -1 : 0, "data-tid": PagingDataTids.root, className:
|
|
387
|
-
_a[
|
|
388
|
-
_a[
|
|
378
|
+
React.createElement("span", { tabIndex: this.props.disabled ? -1 : 0, "data-tid": PagingDataTids.root, className: cx(styles.paging, this.sizeClassNames.root, (_a = {},
|
|
379
|
+
_a[styles.pagingMobile] = this.isMobile,
|
|
380
|
+
_a[styles.pagingDisabled] = this.props.disabled,
|
|
389
381
|
_a)), onKeyDown: useGlobalListener ? undefined : this.handleKeyDown, onFocus: this.handleFocus, onBlur: this.handleBlur, onMouseDown: this.handleMouseDown, ref: this.refContainer }, this.getItems().map(function (item, index) { return _this.renderItem(item, index); }))));
|
|
390
382
|
};
|
|
391
383
|
var Paging_1;
|
|
@@ -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 { cx } from '../../lib/cx.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 { 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 { styles } from './Paging.css.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 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\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={cx(styles.paging, this.sizeClassNames.root, {\n [styles.pagingMobile]: this.isMobile,\n [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={cx(styles.dots, this.sizeClassNames.dots, {\n [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 = cx(\n styles.pageLink,\n this.sizeClassNames.pageLink,\n styles.forwardLink,\n this.sizeClassNames.forwardLink,\n {\n [styles.pageLinkFocused]: focused,\n [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 = cx(styles.pageLink, this.sizeClassNames.pageLink, {\n [styles.pageLinkFocused]: focused,\n [styles.pageLinkDisabled]: disabled,\n [styles.pageLinkCurrent]: active,\n [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={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 ? '' : styles.transparent}>{'←'}</span>\n <span>{NavigationHelper.getKeyName()}</span>\n <span className={canGoForward ? '' : styles.transparent}>{'→'}</span>\n </>\n );\n }\n return <div className={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: styles.pagingSmall,\n dots: styles.dotsSmall,\n forwardLink: styles.forwardLinkSmall,\n pageLink: styles.pageLinkSmall,\n };\n\n switch (size) {\n case 'small':\n return defaultClassNames;\n case 'medium':\n return {\n root: styles.pagingMedium,\n dots: styles.dotsMedium,\n forwardLink: this.isMobile ? styles.forwardLinkMediumMobile : styles.forwardLinkMedium,\n pageLink: styles.pageLinkMedium,\n };\n case 'large':\n return {\n root: styles.pagingLarge,\n dots: styles.dotsLarge,\n forwardLink: this.isMobile ? styles.forwardLinkLargeMobile : styles.forwardLinkLarge,\n pageLink: 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"]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export declare const root: string;
|
|
2
|
+
export declare const toggleVisibility: string;
|
|
3
|
+
export declare const capsLockDetector: string;
|
|
4
|
+
export declare const iconWrapper: string;
|
|
5
|
+
export declare const eyeWrapperSmall: string;
|
|
6
|
+
export declare const eyeWrapperMedium: string;
|
|
7
|
+
export declare const eyeWrapperLarge: string;
|
|
8
|
+
export declare const icon: string;
|
|
9
|
+
export declare const styles: {
|
|
10
|
+
root: string;
|
|
11
|
+
toggleVisibility: string;
|
|
12
|
+
capsLockDetector: string;
|
|
13
|
+
iconWrapper: string;
|
|
14
|
+
eyeWrapperSmall: string;
|
|
15
|
+
eyeWrapperMedium: string;
|
|
16
|
+
eyeWrapperLarge: string;
|
|
17
|
+
icon: string;
|
|
18
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
|
|
2
|
+
export var capsLockDetector = 'react-ui-PasswordInput__capsLockDetector';
|
|
3
|
+
export var eyeWrapperLarge = 'react-ui-PasswordInput__eyeWrapperLarge';
|
|
4
|
+
export var eyeWrapperMedium = 'react-ui-PasswordInput__eyeWrapperMedium';
|
|
5
|
+
export var eyeWrapperSmall = 'react-ui-PasswordInput__eyeWrapperSmall';
|
|
6
|
+
export var icon = 'react-ui-PasswordInput__icon';
|
|
7
|
+
export var iconWrapper = 'react-ui-PasswordInput__iconWrapper';
|
|
8
|
+
export var root = 'react-ui-PasswordInput__root';
|
|
9
|
+
export var styles = {root:'react-ui-PasswordInput__root',toggleVisibility:'react-ui-PasswordInput__toggleVisibility',capsLockDetector:'react-ui-PasswordInput__capsLockDetector',iconWrapper:'react-ui-PasswordInput__iconWrapper',eyeWrapperSmall:'react-ui-PasswordInput__eyeWrapperSmall',eyeWrapperMedium:'react-ui-PasswordInput__eyeWrapperMedium',eyeWrapperLarge:'react-ui-PasswordInput__eyeWrapperLarge',icon:'react-ui-PasswordInput__icon'};
|
|
10
|
+
export var toggleVisibility = 'react-ui-PasswordInput__toggleVisibility';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PasswordInput.css.js","sourceRoot":"","sources":["PasswordInput.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,CAAC,EAAE,MAAM,8BAA8B,CAAC;AAEjD,MAAM,CAAC,IAAM,IAAI,GAAG,KAAK,CAAC;IACxB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,cAAc;IACvB,UAAU,EAAE,QAAQ;IACpB,KAAK,EAAE,MAAM;CACd,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,gBAAgB,GAAG,KAAK,CAAC;IACpC,KAAK,EAAE,CAAC,CAAC,gCAAgC;IACzC,MAAM,EAAE,SAAS;IACjB,OAAO,EAAE,CAAC,CAAC,kCAAkC;IAC7C,UAAU,EAAE,MAAM;CACnB,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,gBAAgB,GAAG,KAAK,CAAC;IACpC,OAAO,EAAE,cAAc;IACvB,QAAQ,EAAE,KAAK;IACf,WAAW,EAAE,KAAK;IAClB,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,SAAS;IACjB,UAAU,EAAE,MAAM;IAClB,OAAO,EAAE,SAAS;IAClB,YAAY,EAAE,KAAK;IACnB,MAAM,EAAE,CAAC;IACT,SAAS,EAAE,YAAY;IACvB,UAAU,EAAE,QAAQ;CACrB,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,WAAW,GAAG,KAAK,CAAC;IAC/B,OAAO,EAAE,MAAM;IACf,UAAU,EAAE,QAAQ;IACpB,cAAc,EAAE,UAAU;CAC3B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,eAAe,GAAG,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAEzE,MAAM,CAAC,IAAM,gBAAgB,GAAG,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC;AAE3E,MAAM,CAAC,IAAM,eAAe,GAAG,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAEzE,MAAM,CAAC,IAAM,IAAI,GAAG,KAAK,CAAC;IACxB,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,SAAS;IAChB,eAAe,EAAE,aAAa;IAC9B,MAAM,EAAE,SAAS;CAClB,CAAC,CAAC;AAEH,qFAAqF;AACrF,WAAW,CAAC,UAAG,IAAI,gCAAsB,IAAI,uBAAoB,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;AAExF,WAAW,CAAC,UAAG,gBAAgB,WAAQ,EAAE;IACvC,KAAK,EAAE,CAAC,CAAC,qCAAqC;IAC9C,OAAO,EAAE,CAAC,CAAC,uCAAuC;CACnD,CAAC,CAAC;AAEH,WAAW,CAAC,UAAG,gBAAgB,aAAU,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;AAEtE,MAAM,CAAC,IAAM,MAAM,GAAG;IACpB,IAAI,MAAA;IACJ,gBAAgB,kBAAA;IAChB,gBAAgB,kBAAA;IAChB,WAAW,aAAA;IACX,eAAe,iBAAA;IACf,gBAAgB,kBAAA;IAChB,eAAe,iBAAA;IACf,IAAI,MAAA;CACL,CAAC","sourcesContent":["import { globalStyle, style } from '@vanilla-extract/css';\n\nimport { t } from '../../lib/theming/vanilla.js';\n\nexport const root = style({\n position: 'relative',\n display: 'inline-block',\n lineHeight: 'normal',\n width: '100%',\n});\n\nexport const toggleVisibility = style({\n color: t.passwordInputVisibilityIconColor,\n cursor: 'pointer',\n opacity: t.passwordInputVisibilityIconOpacity,\n userSelect: 'none',\n});\n\nexport const capsLockDetector = style({\n display: 'inline-block',\n fontSize: '9px',\n marginRight: '8px',\n color: '#fff',\n cursor: 'default',\n background: '#999',\n padding: '2px 5px',\n borderRadius: '3px',\n zIndex: 9,\n boxSizing: 'border-box',\n lineHeight: 'normal',\n});\n\nexport const iconWrapper = style({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-end',\n});\n\nexport const eyeWrapperSmall = style({ minWidth: t.inputIconSizeSmall });\n\nexport const eyeWrapperMedium = style({ minWidth: t.inputIconSizeMedium });\n\nexport const eyeWrapperLarge = style({ minWidth: t.inputIconSizeLarge });\n\nexport const icon = style({\n padding: 0,\n border: 'none',\n font: 'inherit',\n color: 'inherit',\n backgroundColor: 'transparent',\n cursor: 'pointer',\n});\n\n// вложенные правила — после баз всех классов файла, как было в склеенном CSS Emotion\nglobalStyle(`${root} input::-ms-clear, ${root} input::-ms-reveal`, { display: 'none' });\n\nglobalStyle(`${toggleVisibility}:hover`, {\n color: t.passwordInputVisibilityIconHoverColor,\n opacity: t.passwordInputVisibilityIconHoverOpacity,\n});\n\nglobalStyle(`${capsLockDetector}::before`, { content: \"'CapsLock'\" });\n\nexport const styles = {\n root,\n toggleVisibility,\n capsLockDetector,\n iconWrapper,\n eyeWrapperSmall,\n eyeWrapperMedium,\n eyeWrapperLarge,\n icon,\n};\n"]}
|
|
@@ -25,10 +25,6 @@ export declare class PasswordInput extends React.PureComponent<PasswordInputProp
|
|
|
25
25
|
static displayName: string;
|
|
26
26
|
state: PasswordInputState;
|
|
27
27
|
private size;
|
|
28
|
-
private emotion;
|
|
29
|
-
private cx;
|
|
30
|
-
private styles;
|
|
31
|
-
private theme;
|
|
32
28
|
private input;
|
|
33
29
|
getRootNode: TGetRootNode;
|
|
34
30
|
private setRootNode;
|
|
@@ -45,17 +45,16 @@ import React from 'react';
|
|
|
45
45
|
import { CommonWrapper } from '../../internal/CommonWrapper/index.js';
|
|
46
46
|
import { RenderLayer } from '../../internal/RenderLayer/index.js';
|
|
47
47
|
import { createPropsGetter } from '../../lib/createPropsGetter.js';
|
|
48
|
+
import { cx } from '../../lib/cx.js';
|
|
48
49
|
import { isKeyCapsLock } from '../../lib/events/keyboard/identifiers.js';
|
|
49
50
|
import { KeyboardEventCodes as Codes } from '../../lib/events/keyboard/KeyboardEventCodes.js';
|
|
50
51
|
import { locale } from '../../lib/locale/decorators.js';
|
|
51
|
-
import { withRenderEnvironment } from '../../lib/renderEnvironment/RenderEnvironmentDecorator.js';
|
|
52
52
|
import { rootNode } from '../../lib/rootNode/index.js';
|
|
53
53
|
import { withSize } from '../../lib/size/SizeDecorator.js';
|
|
54
|
-
import { ThemeContext } from '../../lib/theming/ThemeContext.js';
|
|
55
54
|
import { isNonNullable } from '../../lib/utils.js';
|
|
56
55
|
import { Input } from '../Input/index.js';
|
|
57
56
|
import { PasswordInputLocaleHelper } from './locale/index.js';
|
|
58
|
-
import {
|
|
57
|
+
import { styles } from './PasswordInput.css.js';
|
|
59
58
|
import { PasswordInputIcon } from './PasswordInputIcon.js';
|
|
60
59
|
export var PasswordInputDataTids = {
|
|
61
60
|
root: 'PasswordInput',
|
|
@@ -140,9 +139,9 @@ var PasswordInput = /** @class */ (function (_super) {
|
|
|
140
139
|
};
|
|
141
140
|
_this.renderEye = function () {
|
|
142
141
|
var capsLockEnabled = _this.state.capsLockEnabled;
|
|
143
|
-
return (React.createElement("span", { className:
|
|
144
|
-
capsLockEnabled && (React.createElement("span", { className:
|
|
145
|
-
React.createElement("span", { className:
|
|
142
|
+
return (React.createElement("span", { className: styles.iconWrapper },
|
|
143
|
+
capsLockEnabled && (React.createElement("span", { className: styles.capsLockDetector, "data-tid": PasswordInputDataTids.capsLockDetector })),
|
|
144
|
+
React.createElement("span", { className: cx(styles.toggleVisibility, _this.getEyeWrapperClassname()) }, !_this.props.disabled && (React.createElement("button", { type: "button", "aria-label": _this.state.visible ? _this.locale.eyeClosedAriaLabel : _this.locale.eyeOpenedAriaLabel, onClick: _this.handleToggleVisibility, className: styles.icon, "data-tid": PasswordInputDataTids.eyeIcon },
|
|
146
145
|
React.createElement(PasswordInputIcon, { size: _this.size, visible: _this.state.visible }))))));
|
|
147
146
|
};
|
|
148
147
|
_this.refInput = function (element) {
|
|
@@ -154,7 +153,7 @@ var PasswordInput = /** @class */ (function (_super) {
|
|
|
154
153
|
_this.renderMain = function (props) {
|
|
155
154
|
var detectCapsLock = props.detectCapsLock, rest = __rest(props, ["detectCapsLock"]);
|
|
156
155
|
return (React.createElement(RenderLayer, { active: _this.state.focused, onFocusOutside: _this.handleFocusOutside, onClickOutside: _this.handleFocusOutside },
|
|
157
|
-
React.createElement("div", { "data-tid": PasswordInputDataTids.root, className:
|
|
156
|
+
React.createElement("div", { "data-tid": PasswordInputDataTids.root, className: styles.root },
|
|
158
157
|
React.createElement(Input, __assign({ ref: _this.refInput, type: _this.state.visible ? 'text' : 'password' }, rest, { onKeyDown: _this.handleKeydown, onKeyPress: _this.handleKeyPress, rightIcon: _this.renderEye(), onFocus: _this.handleFocus })))));
|
|
159
158
|
};
|
|
160
159
|
return _this;
|
|
@@ -171,28 +170,22 @@ var PasswordInput = /** @class */ (function (_super) {
|
|
|
171
170
|
return state;
|
|
172
171
|
};
|
|
173
172
|
PasswordInput.prototype.render = function () {
|
|
174
|
-
|
|
175
|
-
this.styles = getStyles(this.emotion);
|
|
176
|
-
return (React.createElement(ThemeContext.Consumer, null, function (theme) {
|
|
177
|
-
_this.theme = theme;
|
|
178
|
-
return (React.createElement(CommonWrapper, __assign({ rootNodeRef: _this.setRootNode }, _this.getProps()), _this.renderMain));
|
|
179
|
-
}));
|
|
173
|
+
return (React.createElement(CommonWrapper, __assign({ rootNodeRef: this.setRootNode }, this.getProps()), this.renderMain));
|
|
180
174
|
};
|
|
181
175
|
PasswordInput.prototype.getEyeWrapperClassname = function () {
|
|
182
176
|
switch (this.size) {
|
|
183
177
|
case 'large':
|
|
184
|
-
return
|
|
178
|
+
return styles.eyeWrapperLarge;
|
|
185
179
|
case 'medium':
|
|
186
|
-
return
|
|
180
|
+
return styles.eyeWrapperMedium;
|
|
187
181
|
case 'small':
|
|
188
182
|
default:
|
|
189
|
-
return
|
|
183
|
+
return styles.eyeWrapperSmall;
|
|
190
184
|
}
|
|
191
185
|
};
|
|
192
186
|
PasswordInput.__KONTUR_REACT_UI__ = 'PasswordInput';
|
|
193
187
|
PasswordInput.displayName = 'PasswordInput';
|
|
194
188
|
PasswordInput = __decorate([
|
|
195
|
-
withRenderEnvironment,
|
|
196
189
|
rootNode,
|
|
197
190
|
locale('PasswordInput', PasswordInputLocaleHelper),
|
|
198
191
|
withSize
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PasswordInput.js","sourceRoot":"","sources":["PasswordInput.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport type { AriaAttributes, JSX } from 'react';\nimport React from 'react';\n\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper/index.js';\nimport { CommonWrapper } from '../../internal/CommonWrapper/index.js';\nimport { RenderLayer } from '../../internal/RenderLayer/index.js';\nimport { createPropsGetter } from '../../lib/createPropsGetter.js';\nimport { isKeyCapsLock } from '../../lib/events/keyboard/identifiers.js';\nimport { KeyboardEventCodes as Codes } from '../../lib/events/keyboard/KeyboardEventCodes.js';\nimport { locale } from '../../lib/locale/decorators.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/RenderEnvironmentDecorator.js';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode/index.js';\nimport { rootNode } from '../../lib/rootNode/index.js';\nimport { withSize } from '../../lib/size/SizeDecorator.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 { isNonNullable } from '../../lib/utils.js';\nimport type { Nullable } from '../../typings/utility-types.js';\nimport { Input } from '../Input/index.js';\nimport type { InputProps } from '../Input/index.js';\nimport type { PasswordInputLocale } from './locale/index.js';\nimport { PasswordInputLocaleHelper } from './locale/index.js';\nimport { getStyles } from './PasswordInput.styles.js';\nimport { PasswordInputIcon } from './PasswordInputIcon.js';\n\nexport interface PasswordInputProps\n extends Pick<AriaAttributes, 'aria-label'>, CommonProps, Omit<InputProps, 'showClearIcon'> {\n /** Визуально показывает, что активен CapsLock. */\n detectCapsLock?: boolean;\n}\n\nexport interface PasswordInputState {\n visible: boolean;\n focused: boolean;\n capsLockEnabled?: boolean | null;\n}\n\nexport const PasswordInputDataTids = {\n root: 'PasswordInput',\n capsLockDetector: 'PasswordInputCapsLockDetector',\n eyeIcon: 'PasswordInputEyeIcon',\n} as const;\n\n/**\n * Однострочное поле для ввода пароля, в котором символы заменяются на точки.\n */\n@withRenderEnvironment\n@rootNode\n@locale('PasswordInput', PasswordInputLocaleHelper)\n@withSize\nexport class PasswordInput extends React.PureComponent<PasswordInputProps, PasswordInputState> {\n public static __KONTUR_REACT_UI__ = 'PasswordInput';\n public static displayName = 'PasswordInput';\n\n public state: PasswordInputState = {\n visible: false,\n focused: false,\n capsLockEnabled: false,\n };\n private size!: SizeProp;\n\n private emotion!: Emotion;\n private cx!: Emotion['cx'];\n private styles!: ReturnType<typeof getStyles>;\n private theme!: Theme;\n\n private input: Nullable<Input>;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private readonly locale!: PasswordInputLocale;\n\n private getProps = createPropsGetter({});\n\n public componentDidMount() {\n if (this.props.detectCapsLock) {\n this.setState({ capsLockEnabled: null });\n }\n }\n\n public static getDerivedStateFromProps(props: PasswordInputProps, state: PasswordInputState) {\n if (props.disabled) {\n return { visible: false };\n }\n\n return state;\n }\n\n public render(): JSX.Element {\n this.styles = getStyles(this.emotion);\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /** Программно устанавливает фокус на поле.\n * Появляется фокусная рамка, элемент получает клавиатурные события и воспринимается как текущий элемент для чтения скринридерами.\n * @public\n */\n public focus = (): void => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n /** Программно снимает фокус с кнопки.\n * @public\n */\n public blur = (): void => {\n if (this.input) {\n this.input.blur();\n }\n };\n\n private handleKeyPress = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const { onKeyPress, detectCapsLock } = this.props;\n\n if (onKeyPress) {\n onKeyPress(e);\n }\n\n if (!detectCapsLock) {\n return;\n }\n\n const capsLockEnabled = e.getModifierState(Codes.CapsLock);\n\n this.setState({ capsLockEnabled });\n };\n\n private handleKeydown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const {\n props: { detectCapsLock, onKeyDown },\n state: { capsLockEnabled },\n } = this;\n\n if (onKeyDown) {\n onKeyDown(e);\n }\n\n if (!detectCapsLock) {\n return;\n }\n\n if (isKeyCapsLock(e) && isNonNullable(capsLockEnabled)) {\n this.setState({ capsLockEnabled: !capsLockEnabled });\n }\n };\n\n private handleToggleVisibility = () => {\n this.setState((prevState) => ({ visible: !prevState.visible }), this.focusOnInput);\n };\n\n private focusOnInput = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.state.focused) {\n return;\n }\n\n this.setState({ focused: true });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleFocusOutside = () => {\n this.hideSymbols();\n\n if (this.state.focused) {\n this.setState({ focused: false });\n }\n };\n\n private getEyeWrapperClassname() {\n switch (this.size) {\n case 'large':\n return this.styles.eyeWrapperLarge(this.theme);\n case 'medium':\n return this.styles.eyeWrapperMedium(this.theme);\n case 'small':\n default:\n return this.styles.eyeWrapperSmall(this.theme);\n }\n }\n\n private renderEye = () => {\n const { capsLockEnabled } = this.state;\n\n return (\n <span className={this.styles.iconWrapper()}>\n {capsLockEnabled && (\n <span className={this.styles.capsLockDetector()} data-tid={PasswordInputDataTids.capsLockDetector} />\n )}\n <span className={this.cx(this.styles.toggleVisibility(this.theme), this.getEyeWrapperClassname())}>\n {!this.props.disabled && (\n <button\n type=\"button\"\n aria-label={this.state.visible ? this.locale.eyeClosedAriaLabel : this.locale.eyeOpenedAriaLabel}\n onClick={this.handleToggleVisibility}\n className={this.styles.icon()}\n data-tid={PasswordInputDataTids.eyeIcon}\n >\n <PasswordInputIcon size={this.size} visible={this.state.visible} />\n </button>\n )}\n </span>\n </span>\n );\n };\n\n private refInput = (element: Input) => {\n this.input = element;\n };\n\n private hideSymbols = () => {\n this.setState({ visible: false });\n };\n\n private renderMain = (props: CommonWrapperRestProps<PasswordInputProps>) => {\n const { detectCapsLock, ...rest } = props;\n return (\n <RenderLayer\n active={this.state.focused}\n onFocusOutside={this.handleFocusOutside}\n onClickOutside={this.handleFocusOutside}\n >\n <div data-tid={PasswordInputDataTids.root} className={this.styles.root()}>\n <Input\n ref={this.refInput}\n type={this.state.visible ? 'text' : 'password'}\n {...rest}\n onKeyDown={this.handleKeydown}\n onKeyPress={this.handleKeyPress}\n rightIcon={this.renderEye()}\n onFocus={this.handleFocus}\n />\n </div>\n </RenderLayer>\n );\n };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"PasswordInput.js","sourceRoot":"","sources":["PasswordInput.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { AriaAttributes, JSX } from 'react';\nimport React from 'react';\n\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper/index.js';\nimport { CommonWrapper } from '../../internal/CommonWrapper/index.js';\nimport { RenderLayer } from '../../internal/RenderLayer/index.js';\nimport { createPropsGetter } from '../../lib/createPropsGetter.js';\nimport { cx } from '../../lib/cx.js';\nimport { isKeyCapsLock } from '../../lib/events/keyboard/identifiers.js';\nimport { KeyboardEventCodes as Codes } from '../../lib/events/keyboard/KeyboardEventCodes.js';\nimport { locale } from '../../lib/locale/decorators.js';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode/index.js';\nimport { rootNode } from '../../lib/rootNode/index.js';\nimport { withSize } from '../../lib/size/SizeDecorator.js';\nimport type { SizeProp } from '../../lib/types/props.js';\nimport { isNonNullable } from '../../lib/utils.js';\nimport type { Nullable } from '../../typings/utility-types.js';\nimport { Input } from '../Input/index.js';\nimport type { InputProps } from '../Input/index.js';\nimport type { PasswordInputLocale } from './locale/index.js';\nimport { PasswordInputLocaleHelper } from './locale/index.js';\nimport { styles } from './PasswordInput.css.js';\nimport { PasswordInputIcon } from './PasswordInputIcon.js';\n\nexport interface PasswordInputProps\n extends Pick<AriaAttributes, 'aria-label'>, CommonProps, Omit<InputProps, 'showClearIcon'> {\n /** Визуально показывает, что активен CapsLock. */\n detectCapsLock?: boolean;\n}\n\nexport interface PasswordInputState {\n visible: boolean;\n focused: boolean;\n capsLockEnabled?: boolean | null;\n}\n\nexport const PasswordInputDataTids = {\n root: 'PasswordInput',\n capsLockDetector: 'PasswordInputCapsLockDetector',\n eyeIcon: 'PasswordInputEyeIcon',\n} as const;\n\n/**\n * Однострочное поле для ввода пароля, в котором символы заменяются на точки.\n */\n@rootNode\n@locale('PasswordInput', PasswordInputLocaleHelper)\n@withSize\nexport class PasswordInput extends React.PureComponent<PasswordInputProps, PasswordInputState> {\n public static __KONTUR_REACT_UI__ = 'PasswordInput';\n public static displayName = 'PasswordInput';\n\n public state: PasswordInputState = {\n visible: false,\n focused: false,\n capsLockEnabled: false,\n };\n private size!: SizeProp;\n\n private input: Nullable<Input>;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private readonly locale!: PasswordInputLocale;\n\n private getProps = createPropsGetter({});\n\n public componentDidMount() {\n if (this.props.detectCapsLock) {\n this.setState({ capsLockEnabled: null });\n }\n }\n\n public static getDerivedStateFromProps(props: PasswordInputProps, state: PasswordInputState) {\n if (props.disabled) {\n return { visible: false };\n }\n\n return state;\n }\n\n public render(): JSX.Element {\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }\n\n /** Программно устанавливает фокус на поле.\n * Появляется фокусная рамка, элемент получает клавиатурные события и воспринимается как текущий элемент для чтения скринридерами.\n * @public\n */\n public focus = (): void => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n /** Программно снимает фокус с кнопки.\n * @public\n */\n public blur = (): void => {\n if (this.input) {\n this.input.blur();\n }\n };\n\n private handleKeyPress = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const { onKeyPress, detectCapsLock } = this.props;\n\n if (onKeyPress) {\n onKeyPress(e);\n }\n\n if (!detectCapsLock) {\n return;\n }\n\n const capsLockEnabled = e.getModifierState(Codes.CapsLock);\n\n this.setState({ capsLockEnabled });\n };\n\n private handleKeydown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const {\n props: { detectCapsLock, onKeyDown },\n state: { capsLockEnabled },\n } = this;\n\n if (onKeyDown) {\n onKeyDown(e);\n }\n\n if (!detectCapsLock) {\n return;\n }\n\n if (isKeyCapsLock(e) && isNonNullable(capsLockEnabled)) {\n this.setState({ capsLockEnabled: !capsLockEnabled });\n }\n };\n\n private handleToggleVisibility = () => {\n this.setState((prevState) => ({ visible: !prevState.visible }), this.focusOnInput);\n };\n\n private focusOnInput = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.state.focused) {\n return;\n }\n\n this.setState({ focused: true });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleFocusOutside = () => {\n this.hideSymbols();\n\n if (this.state.focused) {\n this.setState({ focused: false });\n }\n };\n\n private getEyeWrapperClassname() {\n switch (this.size) {\n case 'large':\n return styles.eyeWrapperLarge;\n case 'medium':\n return styles.eyeWrapperMedium;\n case 'small':\n default:\n return styles.eyeWrapperSmall;\n }\n }\n\n private renderEye = () => {\n const { capsLockEnabled } = this.state;\n\n return (\n <span className={styles.iconWrapper}>\n {capsLockEnabled && (\n <span className={styles.capsLockDetector} data-tid={PasswordInputDataTids.capsLockDetector} />\n )}\n <span className={cx(styles.toggleVisibility, this.getEyeWrapperClassname())}>\n {!this.props.disabled && (\n <button\n type=\"button\"\n aria-label={this.state.visible ? this.locale.eyeClosedAriaLabel : this.locale.eyeOpenedAriaLabel}\n onClick={this.handleToggleVisibility}\n className={styles.icon}\n data-tid={PasswordInputDataTids.eyeIcon}\n >\n <PasswordInputIcon size={this.size} visible={this.state.visible} />\n </button>\n )}\n </span>\n </span>\n );\n };\n\n private refInput = (element: Input) => {\n this.input = element;\n };\n\n private hideSymbols = () => {\n this.setState({ visible: false });\n };\n\n private renderMain = (props: CommonWrapperRestProps<PasswordInputProps>) => {\n const { detectCapsLock, ...rest } = props;\n return (\n <RenderLayer\n active={this.state.focused}\n onFocusOutside={this.handleFocusOutside}\n onClickOutside={this.handleFocusOutside}\n >\n <div data-tid={PasswordInputDataTids.root} className={styles.root}>\n <Input\n ref={this.refInput}\n type={this.state.visible ? 'text' : 'password'}\n {...rest}\n onKeyDown={this.handleKeydown}\n onKeyPress={this.handleKeyPress}\n rightIcon={this.renderEye()}\n onFocus={this.handleFocus}\n />\n </div>\n </RenderLayer>\n );\n };\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"en.js","sourceRoot":"","sources":["en.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,IAAM,iBAAiB,GAAwB;IACpD,kBAAkB,EAAE,uBAAuB;IAC3C,kBAAkB,EAAE,uBAAuB;CAC5C,CAAC","sourcesContent":["import type { PasswordInputLocale } from '../types.js';\n\nexport const componentsLocales: PasswordInputLocale = {\n eyeOpenedAriaLabel: '
|
|
1
|
+
{"version":3,"file":"en.js","sourceRoot":"","sources":["en.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,IAAM,iBAAiB,GAAwB;IACpD,kBAAkB,EAAE,uBAAuB;IAC3C,kBAAkB,EAAE,uBAAuB;CAC5C,CAAC","sourcesContent":["import type { PasswordInputLocale } from '../types.js';\n\nexport const componentsLocales: PasswordInputLocale = {\n eyeOpenedAriaLabel: 'Show password symbols',\n eyeClosedAriaLabel: 'Hide password symbols',\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ru.js","sourceRoot":"","sources":["ru.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,IAAM,iBAAiB,GAAwB;IACpD,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"ru.js","sourceRoot":"","sources":["ru.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,IAAM,iBAAiB,GAAwB;IACpD,kBAAkB,EAAE,2BAA2B;IAC/C,kBAAkB,EAAE,uBAAuB;CAC5C,CAAC","sourcesContent":["import type { PasswordInputLocale } from '../types.js';\n\nexport const componentsLocales: PasswordInputLocale = {\n eyeOpenedAriaLabel: 'Отобразить символы пароля',\n eyeClosedAriaLabel: 'Скрыть символы пароля',\n};\n"]}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import '../../lib/styles/LabGrotesqueBaseline.css.js';
|
|
2
|
+
export declare const globalClasses: {
|
|
3
|
+
circle: string;
|
|
4
|
+
};
|
|
5
|
+
export declare const root: string;
|
|
6
|
+
export declare const rootSmall: string;
|
|
7
|
+
export declare const rootMedium: string;
|
|
8
|
+
export declare const rootLarge: string;
|
|
9
|
+
export declare const rootChecked: string;
|
|
10
|
+
export declare const circle: string;
|
|
11
|
+
export declare const circleSmall: string;
|
|
12
|
+
export declare const circleMedium: string;
|
|
13
|
+
export declare const circleLarge: string;
|
|
14
|
+
export declare const focus: string;
|
|
15
|
+
export declare const warning: string;
|
|
16
|
+
export declare const error: string;
|
|
17
|
+
export declare const checked: string;
|
|
18
|
+
export declare const checkedSmall: string;
|
|
19
|
+
export declare const checkedMedium: string;
|
|
20
|
+
export declare const checkedLarge: string;
|
|
21
|
+
export declare const checkedDisabled: string;
|
|
22
|
+
export declare const input: string;
|
|
23
|
+
export declare const disabled: string;
|
|
24
|
+
export declare const caption: string;
|
|
25
|
+
export declare const placeholder: string;
|
|
26
|
+
export declare const captionWrapper: string;
|
|
27
|
+
export declare const subcaption: string;
|
|
28
|
+
export declare const subcaptionSmall: string;
|
|
29
|
+
export declare const subcaptionMedium: string;
|
|
30
|
+
export declare const subcaptionLarge: string;
|
|
31
|
+
export declare const captionDisabled: string;
|
|
32
|
+
export declare const styles: {
|
|
33
|
+
root: string;
|
|
34
|
+
rootSmall: string;
|
|
35
|
+
rootMedium: string;
|
|
36
|
+
rootLarge: string;
|
|
37
|
+
rootChecked: string;
|
|
38
|
+
circle: string;
|
|
39
|
+
circleSmall: string;
|
|
40
|
+
circleMedium: string;
|
|
41
|
+
circleLarge: string;
|
|
42
|
+
focus: string;
|
|
43
|
+
warning: string;
|
|
44
|
+
error: string;
|
|
45
|
+
checked: string;
|
|
46
|
+
checkedSmall: string;
|
|
47
|
+
checkedMedium: string;
|
|
48
|
+
checkedLarge: string;
|
|
49
|
+
checkedDisabled: string;
|
|
50
|
+
input: string;
|
|
51
|
+
disabled: string;
|
|
52
|
+
caption: string;
|
|
53
|
+
captionDisabled: string;
|
|
54
|
+
placeholder: string;
|
|
55
|
+
captionWrapper: string;
|
|
56
|
+
subcaption: string;
|
|
57
|
+
subcaptionDisabled: string;
|
|
58
|
+
subcaptionSmall: string;
|
|
59
|
+
subcaptionMedium: string;
|
|
60
|
+
subcaptionLarge: string;
|
|
61
|
+
};
|