@skbkontur/react-ui 5.0.12 → 5.1.0-next.1
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/cjs/components/Autocomplete/Autocomplete.d.ts +16 -17
- package/cjs/components/Autocomplete/Autocomplete.js +13 -2
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/Autocomplete/Autocomplete.md +9 -7
- package/cjs/components/Autocomplete/__docs__/Autocomplete.mdx +26 -0
- package/cjs/components/Autocomplete/locale/types.js +1 -1
- package/cjs/components/Button/Button.d.ts +20 -62
- package/cjs/components/Button/Button.js +0 -42
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/Button.md +40 -26
- package/cjs/components/Button/__docs__/Button.mdx +28 -0
- package/cjs/components/Calendar/Calendar.d.ts +22 -45
- package/cjs/components/Calendar/Calendar.js +1 -15
- package/cjs/components/Calendar/Calendar.js.map +1 -1
- package/cjs/components/Calendar/Calendar.md +12 -12
- package/cjs/components/Calendar/CalendarDay.d.ts +7 -0
- package/cjs/components/Calendar/CalendarDay.js +11 -0
- package/cjs/components/Calendar/CalendarDay.js.map +1 -1
- package/cjs/components/Calendar/CalendarDay.md +32 -32
- package/cjs/components/Calendar/__docs__/Calendar.mdx +28 -0
- package/cjs/components/Calendar/__docs__/CalendarDay.mdx +24 -0
- package/cjs/components/Calendar/locale/types.js +1 -1
- package/cjs/components/Center/Center.d.ts +4 -6
- package/cjs/components/Center/Center.js +3 -5
- package/cjs/components/Center/Center.js.map +1 -1
- package/cjs/components/Center/Center.md +1 -1
- package/cjs/components/Center/__docs__/Center.mdx +24 -0
- package/cjs/components/Checkbox/Checkbox.d.ts +20 -28
- package/cjs/components/Checkbox/Checkbox.js +7 -6
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.md +6 -5
- package/cjs/components/Checkbox/__docs__/Checkbox.mdx +28 -0
- package/cjs/components/ComboBox/ComboBox.d.ts +67 -86
- package/cjs/components/ComboBox/ComboBox.js +12 -28
- package/cjs/components/ComboBox/ComboBox.js.map +1 -1
- package/cjs/components/ComboBox/ComboBox.md +41 -40
- package/cjs/components/ComboBox/__docs__/ComboBox.mdx +28 -0
- package/cjs/components/CurrencyInput/CurrencyHelper.d.ts +4 -0
- package/cjs/components/CurrencyInput/CurrencyHelper.js +7 -0
- package/cjs/components/CurrencyInput/CurrencyHelper.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInput.d.ts +12 -12
- package/cjs/components/CurrencyInput/CurrencyInput.js +8 -2
- package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInput.md +3 -1
- package/cjs/components/CurrencyInput/CurrencyInputHelper.d.ts +3 -0
- package/cjs/components/CurrencyInput/CurrencyInputHelper.js +5 -0
- package/cjs/components/CurrencyInput/CurrencyInputHelper.js.map +1 -1
- package/cjs/components/CurrencyInput/__docs__/CurrencyInput.mdx +28 -0
- package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +8 -5
- package/cjs/components/CurrencyLabel/CurrencyLabel.js +6 -0
- package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/cjs/components/CurrencyLabel/CurrencyLabel.md +5 -5
- package/cjs/components/CurrencyLabel/__docs__/CurrencyLabel.mdx +24 -0
- package/cjs/components/DateInput/DateInput.d.ts +21 -29
- package/cjs/components/DateInput/DateInput.js +14 -2
- package/cjs/components/DateInput/DateInput.js.map +1 -1
- package/cjs/components/DateInput/DateInput.md +7 -2
- package/cjs/components/DateInput/__docs__/DateInput.mdx +26 -0
- package/cjs/components/DateInput/helpers/DateInputKeyboardActions.js +1 -1
- package/cjs/components/DateInput/helpers/DateInputKeyboardActions.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.d.ts +33 -23
- package/cjs/components/DatePicker/DatePicker.js +53 -4
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.md +2 -2
- package/cjs/components/DatePicker/__docs__/DatePicker.mdx +28 -0
- package/cjs/components/DatePicker/locale/types.js +1 -1
- package/cjs/components/Dropdown/Dropdown.d.ts +25 -30
- package/cjs/components/Dropdown/Dropdown.js +8 -1
- package/cjs/components/Dropdown/Dropdown.js.map +1 -1
- package/cjs/components/Dropdown/Dropdown.md +2 -1
- package/cjs/components/Dropdown/__docs__/Dropdown.mdx +28 -0
- package/cjs/components/DropdownMenu/DropdownMenu.d.ts +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.js +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.md +12 -10
- package/cjs/components/DropdownMenu/__docs__/DropdownMenu.mdx +28 -0
- package/cjs/components/FileUploader/FileUploader.d.ts +16 -20
- package/cjs/components/FileUploader/FileUploader.js +5 -3
- package/cjs/components/FileUploader/FileUploader.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.md +9 -9
- package/cjs/components/FileUploader/__docs__/FileUploader.mdx +28 -0
- package/cjs/components/FileUploader/locale/types.js +1 -1
- package/cjs/components/FxInput/FxInput.d.ts +15 -9
- package/cjs/components/FxInput/FxInput.js +14 -1
- package/cjs/components/FxInput/FxInput.js.map +1 -1
- package/cjs/components/FxInput/FxInput.md +2 -0
- package/cjs/components/FxInput/__docs__/FxInput.mdx +28 -0
- package/cjs/components/Gapped/Gapped.d.ts +6 -17
- package/cjs/components/Gapped/Gapped.js +1 -8
- package/cjs/components/Gapped/Gapped.js.map +1 -1
- package/cjs/components/Gapped/Gapped.md +3 -2
- package/cjs/components/Gapped/__docs__/Gapped.mdx +24 -0
- package/cjs/components/GlobalLoader/GlobalLoader.d.ts +22 -32
- package/cjs/components/GlobalLoader/GlobalLoader.js +14 -14
- package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
- package/cjs/components/GlobalLoader/GlobalLoader.md +4 -5
- package/cjs/components/GlobalLoader/GlobalLoaderView.d.ts +4 -0
- package/cjs/components/GlobalLoader/GlobalLoaderView.js +7 -0
- package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
- package/cjs/components/GlobalLoader/__docs__/GlobalLoader.mdx +28 -0
- package/cjs/components/Group/Group.d.ts +6 -0
- package/cjs/components/Group/Group.js +7 -1
- package/cjs/components/Group/Group.js.map +1 -1
- package/cjs/components/Group/Group.md +1 -0
- package/cjs/components/Group/__docs__/Group.mdx +24 -0
- package/cjs/components/Hint/Hint.d.ts +18 -40
- package/cjs/components/Hint/Hint.js +4 -16
- package/cjs/components/Hint/Hint.js.map +1 -1
- package/cjs/components/Hint/Hint.md +9 -8
- package/cjs/components/Hint/__docs__/Hint.mdx +29 -0
- package/cjs/components/Input/Input.d.ts +46 -68
- package/cjs/components/Input/Input.js +10 -9
- package/cjs/components/Input/Input.js.map +1 -1
- package/cjs/components/Input/Input.md +11 -2
- package/cjs/components/Input/Input.typings.js +1 -1
- package/cjs/components/Input/__docs__/Input.mdx +28 -0
- package/cjs/components/Kebab/Kebab.d.ts +12 -16
- package/cjs/components/Kebab/Kebab.js +4 -2
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/Kebab/Kebab.md +9 -9
- package/cjs/components/Kebab/__docs__/Kebab.mdx +28 -0
- package/cjs/components/Link/Link.d.ts +13 -37
- package/cjs/components/Link/Link.js +0 -13
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Link/Link.md +12 -11
- package/cjs/components/Link/__docs__/Link.mdx +28 -0
- package/cjs/components/Loader/Loader.d.ts +13 -25
- package/cjs/components/Loader/Loader.js +2 -8
- package/cjs/components/Loader/Loader.js.map +1 -1
- package/cjs/components/Loader/Loader.md +1 -0
- package/cjs/components/Loader/__docs__/Loader.mdx +26 -0
- package/cjs/components/MaskedInput/MaskedInput.d.ts +13 -33
- package/cjs/components/MaskedInput/MaskedInput.js +0 -13
- package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
- package/cjs/components/MaskedInput/MaskedInput.md +7 -5
- package/cjs/components/MaskedInput/__docs__/MaskedInput.mdx +28 -0
- package/cjs/components/MenuFooter/MenuFooter.d.ts +6 -4
- package/cjs/components/MenuFooter/MenuFooter.js +7 -3
- package/cjs/components/MenuFooter/MenuFooter.js.map +1 -1
- package/cjs/components/MenuFooter/MenuFooter.md +2 -2
- package/cjs/components/MenuFooter/__docs__/MenuFooter.mdx +24 -0
- package/cjs/components/MenuHeader/MenuHeader.d.ts +6 -4
- package/cjs/components/MenuHeader/MenuHeader.js +7 -3
- package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
- package/cjs/components/MenuHeader/MenuHeader.md +2 -2
- package/cjs/components/MenuHeader/__docs__/MenuHeader.mdx +24 -0
- package/cjs/components/MenuItem/MenuItem.d.ts +22 -55
- package/cjs/components/MenuItem/MenuItem.js +1 -18
- package/cjs/components/MenuItem/MenuItem.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.md +34 -30
- package/cjs/components/MenuItem/__docs__/MenuItem.mdx +24 -0
- package/cjs/components/MenuSeparator/MenuSeparator.d.ts +2 -2
- package/cjs/components/MenuSeparator/MenuSeparator.js +3 -2
- package/cjs/components/MenuSeparator/MenuSeparator.js.map +1 -1
- package/cjs/components/MenuSeparator/MenuSeparator.md +1 -1
- package/cjs/components/MenuSeparator/__docs__/MenuSeparator.mdx +24 -0
- package/cjs/components/MiniModal/MiniModal.d.ts +6 -0
- package/cjs/components/MiniModal/MiniModal.js +6 -0
- package/cjs/components/MiniModal/MiniModal.js.map +1 -1
- package/cjs/components/MiniModal/MiniModal.md +1 -3
- package/cjs/components/MiniModal/MiniModalFooter.d.ts +2 -7
- package/cjs/components/MiniModal/MiniModalFooter.js +0 -5
- package/cjs/components/MiniModal/MiniModalFooter.js.map +1 -1
- package/cjs/components/MiniModal/MiniModalHeader.d.ts +2 -5
- package/cjs/components/MiniModal/MiniModalHeader.js +0 -3
- package/cjs/components/MiniModal/MiniModalHeader.js.map +1 -1
- package/cjs/components/MiniModal/__docs__/MiniModal.mdx +28 -0
- package/cjs/components/MiniModal/__docs__/MiniModalBody.mdx +17 -0
- package/cjs/components/MiniModal/__docs__/MiniModalFooter.mdx +17 -0
- package/cjs/components/MiniModal/__docs__/MiniModalHeader.mdx +18 -0
- package/cjs/components/MiniModal/__docs__/MiniModalIndent.mdx +11 -0
- package/cjs/components/MiniModal/getMiniModalTheme.d.ts +1 -1
- package/cjs/components/Modal/Modal.d.ts +12 -33
- package/cjs/components/Modal/Modal.js +4 -24
- package/cjs/components/Modal/Modal.js.map +1 -1
- package/cjs/components/Modal/Modal.md +3 -1
- package/cjs/components/Modal/Modal.styles.d.ts +4 -1
- package/cjs/components/Modal/Modal.styles.js +68 -31
- package/cjs/components/Modal/Modal.styles.js.map +1 -1
- package/cjs/components/Modal/ModalBody.d.ts +2 -4
- package/cjs/components/Modal/ModalBody.js +1 -3
- package/cjs/components/Modal/ModalBody.js.map +1 -1
- package/cjs/components/Modal/ModalClose.js +7 -2
- package/cjs/components/Modal/ModalClose.js.map +1 -1
- package/cjs/components/Modal/ModalContext.d.ts +2 -0
- package/cjs/components/Modal/ModalContext.js +3 -0
- package/cjs/components/Modal/ModalContext.js.map +1 -1
- package/cjs/components/Modal/ModalFooter.d.ts +5 -15
- package/cjs/components/Modal/ModalFooter.js +0 -7
- package/cjs/components/Modal/ModalFooter.js.map +1 -1
- package/cjs/components/Modal/ModalHeader.d.ts +3 -1
- package/cjs/components/Modal/ModalHeader.js +4 -1
- package/cjs/components/Modal/ModalHeader.js.map +1 -1
- package/cjs/components/Modal/ModalSeparator.d.ts +1 -0
- package/cjs/components/Modal/ModalSeparator.js +1 -0
- package/cjs/components/Modal/ModalSeparator.js.map +1 -1
- package/cjs/components/Modal/__creevey__/Modal.creevey.mts +15 -1
- package/cjs/components/Modal/__docs__/Modal.mdx +28 -0
- package/cjs/components/Modal/__docs__/ModalBody.mdx +15 -0
- package/cjs/components/Modal/__docs__/ModalFooter.mdx +15 -0
- package/cjs/components/Modal/__docs__/ModalHeader.mdx +15 -0
- package/cjs/components/Modal/__docs__/ModalSeparator.mdx +15 -0
- package/cjs/components/Modal/locale/types.js +1 -1
- package/cjs/components/Paging/Paging.d.ts +20 -15
- package/cjs/components/Paging/Paging.js +17 -1
- package/cjs/components/Paging/Paging.js.map +1 -1
- package/cjs/components/Paging/Paging.md +3 -2
- package/cjs/components/Paging/PagingDefaultComponent.d.ts +2 -0
- package/cjs/components/Paging/PagingDefaultComponent.js +3 -0
- package/cjs/components/Paging/PagingDefaultComponent.js.map +1 -1
- package/cjs/components/Paging/__docs__/Paging.mdx +28 -0
- package/cjs/components/Paging/locale/types.js +1 -1
- package/cjs/components/PasswordInput/PasswordInput.d.ts +10 -3
- package/cjs/components/PasswordInput/PasswordInput.js +35 -9
- package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/components/PasswordInput/PasswordInput.md +3 -2
- package/cjs/components/PasswordInput/__docs__/PasswordInput.mdx +28 -0
- package/cjs/components/PasswordInput/locale/types.js +1 -1
- package/cjs/components/Radio/Radio.d.ts +13 -28
- package/cjs/components/Radio/Radio.js +1 -8
- package/cjs/components/Radio/Radio.js.map +1 -1
- package/cjs/components/Radio/Radio.md +3 -2
- package/cjs/components/Radio/__docs__/Radio.mdx +28 -0
- package/cjs/components/RadioGroup/RadioGroup.d.ts +28 -54
- package/cjs/components/RadioGroup/RadioGroup.js +4 -15
- package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.md +1 -0
- package/cjs/components/RadioGroup/__docs__/RadioGroup.mdx +28 -0
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.d.ts +4 -1
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.js +6 -2
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.md +4 -3
- package/cjs/components/ResponsiveLayout/__docs__/ResponsiveLayout.mdx +97 -0
- package/cjs/components/ResponsiveLayout/types.js +1 -1
- package/cjs/components/ScrollContainer/ScrollBar.d.ts +7 -0
- package/cjs/components/ScrollContainer/ScrollBar.js +13 -0
- package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.d.ts +23 -29
- package/cjs/components/ScrollContainer/ScrollContainer.js +8 -1
- package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.md +5 -3
- package/cjs/components/ScrollContainer/__docs__/ScrollContainer.mdx +24 -0
- package/cjs/components/Select/Item.d.ts +2 -0
- package/cjs/components/Select/Item.js +3 -0
- package/cjs/components/Select/Item.js.map +1 -1
- package/cjs/components/Select/Select.d.ts +54 -38
- package/cjs/components/Select/Select.js +57 -1
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/Select.md +7 -6
- package/cjs/components/Select/__docs__/Select.mdx +28 -0
- package/cjs/components/Select/locale/types.js +1 -1
- package/cjs/components/SidePage/SidePage.d.ts +17 -38
- package/cjs/components/SidePage/SidePage.js +15 -28
- package/cjs/components/SidePage/SidePage.js.map +1 -1
- package/cjs/components/SidePage/SidePage.md +2 -1
- package/cjs/components/SidePage/SidePage.styles.d.ts +8 -1
- package/cjs/components/SidePage/SidePage.styles.js +83 -26
- package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
- package/cjs/components/SidePage/SidePageCloseButton.d.ts +6 -1
- package/cjs/components/SidePage/SidePageCloseButton.js +14 -2
- package/cjs/components/SidePage/SidePageCloseButton.js.map +1 -1
- package/cjs/components/SidePage/SidePageFooter.d.ts +4 -9
- package/cjs/components/SidePage/SidePageFooter.js +0 -2
- package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
- package/cjs/components/SidePage/SidePageHeader.d.ts +2 -1
- package/cjs/components/SidePage/SidePageHeader.js +14 -7
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/SidePage/__creevey__/SidePage.creevey.mts +103 -1
- package/cjs/components/SidePage/__docs__/SidePage.mdx +28 -0
- package/cjs/components/SidePage/__docs__/SidePageBody.mdx +15 -0
- package/cjs/components/SidePage/__docs__/SidePageContainer.mdx +15 -0
- package/cjs/components/SidePage/__docs__/SidePageFooter.mdx +15 -0
- package/cjs/components/SidePage/__docs__/SidePageHeader.mdx +15 -0
- package/cjs/components/SidePage/locale/types.js +1 -1
- package/cjs/components/SingleToast/SingleToast.d.ts +5 -1
- package/cjs/components/SingleToast/SingleToast.js +5 -1
- package/cjs/components/SingleToast/SingleToast.js.map +1 -1
- package/cjs/components/SingleToast/SingleToast.md +2 -1
- package/cjs/components/SingleToast/__docs__/SingleToast.mdx +28 -0
- package/cjs/components/Spinner/Spinner.d.ts +15 -20
- package/cjs/components/Spinner/Spinner.js +6 -7
- package/cjs/components/Spinner/Spinner.js.map +1 -1
- package/cjs/components/Spinner/Spinner.md +2 -1
- package/cjs/components/Spinner/__docs__/Spinner.mdx +28 -0
- package/cjs/components/Sticky/Sticky.d.ts +9 -4
- package/cjs/components/Sticky/Sticky.js +9 -1
- package/cjs/components/Sticky/Sticky.js.map +1 -1
- package/cjs/components/Sticky/Sticky.md +1 -0
- package/cjs/components/Sticky/__docs__/Sticky.mdx +24 -0
- package/cjs/components/Switcher/Switcher.d.ts +18 -7
- package/cjs/components/Switcher/Switcher.js +14 -3
- package/cjs/components/Switcher/Switcher.js.map +1 -1
- package/cjs/components/Switcher/Switcher.md +6 -2
- package/cjs/components/Switcher/Switcher.styles.d.ts +1 -0
- package/cjs/components/Switcher/Switcher.styles.js +20 -1
- package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
- package/cjs/components/Switcher/__docs__/Switcher.mdx +28 -0
- package/cjs/components/Tabs/Tab.d.ts +12 -31
- package/cjs/components/Tabs/Tab.js +1 -20
- package/cjs/components/Tabs/Tab.js.map +1 -1
- package/cjs/components/Tabs/Tab.md +2 -0
- package/cjs/components/Tabs/Tabs.d.ts +14 -25
- package/cjs/components/Tabs/Tabs.js +6 -17
- package/cjs/components/Tabs/Tabs.js.map +1 -1
- package/cjs/components/Tabs/Tabs.md +3 -2
- package/cjs/components/Tabs/__docs__/Tab.mdx +28 -0
- package/cjs/components/Tabs/__docs__/Tabs.mdx +28 -0
- package/cjs/components/Textarea/Textarea.d.ts +26 -52
- package/cjs/components/Textarea/Textarea.js +3 -23
- package/cjs/components/Textarea/Textarea.js.map +1 -1
- package/cjs/components/Textarea/Textarea.md +4 -2
- package/cjs/components/Textarea/__docs__/Textarea.mdx +28 -0
- package/cjs/components/Toast/Toast.d.ts +12 -9
- package/cjs/components/Toast/Toast.js +13 -5
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toast/Toast.md +4 -4
- package/cjs/components/Toast/ToastStatic.d.ts +2 -2
- package/cjs/components/Toast/ToastStatic.js +15 -5
- package/cjs/components/Toast/ToastStatic.js.map +1 -1
- package/cjs/components/Toast/ToastView.d.ts +3 -6
- package/cjs/components/Toast/ToastView.js +3 -5
- package/cjs/components/Toast/ToastView.js.map +1 -1
- package/cjs/components/Toast/ToastView.styles.js +4 -4
- package/cjs/components/Toast/ToastView.styles.js.map +1 -1
- package/cjs/components/Toast/__creevey__/Toast.creevey.mts +23 -0
- package/cjs/components/Toast/__docs__/Toast.mdx +28 -0
- package/cjs/components/Toast/locale/types.js +1 -1
- package/cjs/components/Toggle/Toggle.d.ts +25 -48
- package/cjs/components/Toggle/Toggle.js +4 -12
- package/cjs/components/Toggle/Toggle.js.map +1 -1
- package/cjs/components/Toggle/Toggle.md +9 -9
- package/cjs/components/Toggle/__docs__/Toggle.mdx +28 -0
- package/cjs/components/Token/Token.d.ts +17 -9
- package/cjs/components/Token/Token.js +9 -1
- package/cjs/components/Token/Token.js.map +1 -1
- package/cjs/components/Token/Token.md +86 -3
- package/cjs/components/Token/TokenView.d.ts +3 -0
- package/cjs/components/Token/TokenView.js +3 -0
- package/cjs/components/Token/TokenView.js.map +1 -1
- package/cjs/components/Token/__docs__/Token.mdx +28 -0
- package/cjs/components/Token/locale/types.js +1 -1
- package/cjs/components/TokenInput/TextWidthHelper.d.ts +3 -0
- package/cjs/components/TokenInput/TextWidthHelper.js +5 -0
- package/cjs/components/TokenInput/TextWidthHelper.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.d.ts +54 -97
- package/cjs/components/TokenInput/TokenInput.js +7 -18
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.md +12 -10
- package/cjs/components/TokenInput/TokenInputMenu.d.ts +5 -5
- package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
- package/cjs/components/TokenInput/__docs__/TokenInput.mdx +28 -0
- package/cjs/components/TokenInput/locale/types.js +1 -1
- package/cjs/components/Tooltip/Tooltip.d.ts +28 -68
- package/cjs/components/Tooltip/Tooltip.js +9 -63
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.md +5 -0
- package/cjs/components/Tooltip/__docs__/Tooltip.mdx +28 -0
- package/cjs/components/TooltipMenu/TooltipMenu.d.ts +13 -28
- package/cjs/components/TooltipMenu/TooltipMenu.js +1 -16
- package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
- package/cjs/components/TooltipMenu/TooltipMenu.md +13 -10
- package/cjs/components/TooltipMenu/__docs__/TooltipMenu.mdx +24 -0
- package/cjs/index.d.ts +1 -2
- package/cjs/index.js +1 -2
- package/cjs/index.js.map +1 -1
- package/cjs/internal/CommonWrapper/types.js +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +4 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.js +12 -2
- package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.d.ts +1 -0
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBoxTypes.js +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBoxTypes.js.map +1 -1
- package/cjs/internal/CustomComboBox/locale/types.js +1 -1
- package/cjs/internal/DateSelect/locale/types.js +1 -1
- package/cjs/internal/FileUploaderControl/fileUtils.js +1 -1
- package/cjs/internal/FileUploaderControl/fileUtils.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.js +12 -11
- package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/cjs/internal/Popup/types.js +1 -1
- package/cjs/internal/RenderContainer/RenderContainerTypes.js +1 -1
- package/cjs/internal/ThemePlayground/Playground.styles.js +2 -1
- package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
- package/cjs/internal/ThemePlayground/__creevey__/Theme5_0.creevey.mts +36 -0
- package/cjs/internal/ThemePlayground/__creevey__/Theme5_0.stories.d.ts +4 -0
- package/cjs/internal/ThemePlayground/constants.js +1 -1
- package/cjs/internal/ThemePlayground/constants.js.map +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.js +0 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.js.map +1 -1
- package/cjs/internal/themes/BasicLightTheme.d.ts +5 -1198
- package/cjs/internal/themes/BasicLightTheme.js +2 -2512
- package/cjs/internal/themes/BasicLightTheme.js.map +1 -1
- package/cjs/internal/themes/BasicTheme.d.ts +1217 -0
- package/cjs/internal/themes/BasicTheme.js +2536 -0
- package/cjs/internal/themes/BasicTheme.js.map +1 -0
- package/cjs/internal/themes/DarkTheme5_0.d.ts +1 -0
- package/cjs/internal/themes/DarkTheme5_0.js +556 -0
- package/cjs/internal/themes/DarkTheme5_0.js.map +1 -0
- package/cjs/internal/themes/DarkTheme5_1.d.ts +1 -0
- package/cjs/internal/themes/DarkTheme5_1.js +41 -0
- package/cjs/internal/themes/DarkTheme5_1.js.map +1 -0
- package/cjs/internal/themes/LightTheme5_0.d.ts +1 -0
- package/cjs/internal/themes/LightTheme5_0.js +9 -0
- package/cjs/internal/themes/LightTheme5_0.js.map +1 -0
- package/cjs/internal/themes/LightTheme5_1.d.ts +1 -0
- package/cjs/internal/themes/LightTheme5_1.js +41 -0
- package/cjs/internal/themes/LightTheme5_1.js.map +1 -0
- package/cjs/lib/ModalStack.d.ts +1 -0
- package/cjs/lib/ModalStack.js +6 -4
- package/cjs/lib/ModalStack.js.map +1 -1
- package/cjs/lib/date/types.js +6 -6
- package/cjs/lib/date/types.js.map +1 -1
- package/cjs/lib/events/MouseDrag.js +1 -1
- package/cjs/lib/events/MouseDrag.js.map +1 -1
- package/cjs/lib/events/keyboard/KeyboardEventCodes.js +1 -1
- package/cjs/lib/events/keyboard/KeyboardEventCodes.js.map +1 -1
- package/cjs/lib/locale/types.js +1 -1
- package/cjs/lib/locale/types.js.map +1 -1
- package/cjs/lib/theming/Theme.d.ts +4 -3
- package/cjs/lib/theming/Theme.js +1 -1
- package/cjs/lib/theming/Theme.js.map +1 -1
- package/cjs/lib/theming/ThemeContext.d.ts +1 -1
- package/cjs/lib/theming/ThemeContext.js +2 -2
- package/cjs/lib/theming/ThemeContext.js.map +1 -1
- package/cjs/lib/theming/ThemeFactory.d.ts +9 -0
- package/cjs/lib/theming/ThemeFactory.js +28 -9
- package/cjs/lib/theming/ThemeFactory.js.map +1 -1
- package/cjs/lib/theming/ThemeHelpers.d.ts +55 -8
- package/cjs/lib/theming/ThemeHelpers.js +94 -22
- package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
- package/cjs/lib/theming/ThemeVersions.d.ts +25 -0
- package/cjs/lib/theming/ThemeVersions.js +58 -0
- package/cjs/lib/theming/ThemeVersions.js.map +1 -0
- package/cjs/lib/theming/themes/DarkTheme.d.ts +3 -1
- package/cjs/lib/theming/themes/DarkTheme.js +6 -4
- package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
- package/cjs/lib/theming/themes/LightTheme.d.ts +3 -1
- package/cjs/lib/theming/themes/LightTheme.js +6 -4
- package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
- package/cjs/lib/theming/themes/LightThemeMobile.d.ts +1 -1
- package/cjs/lib/theming/useTheme.d.ts +1 -1
- package/cjs/lib/types/button-link.js +1 -1
- package/cjs/lib/types/polymorphic-component.js +1 -1
- package/cjs/lib/types/props.js +1 -1
- package/components/Autocomplete/Autocomplete/Autocomplete.js +3 -2
- package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/Autocomplete.d.ts +16 -17
- package/components/Autocomplete/Autocomplete.md +9 -7
- package/components/Autocomplete/__docs__/Autocomplete.mdx +26 -0
- package/components/Autocomplete/locale/types/types.js +0 -1
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.d.ts +20 -62
- package/components/Button/Button.md +40 -26
- package/components/Button/__docs__/Button.mdx +28 -0
- package/components/Calendar/Calendar/Calendar.js +1 -1
- package/components/Calendar/Calendar/Calendar.js.map +1 -1
- package/components/Calendar/Calendar.d.ts +22 -45
- package/components/Calendar/Calendar.md +12 -12
- package/components/Calendar/CalendarDay/CalendarDay.js +2 -0
- package/components/Calendar/CalendarDay/CalendarDay.js.map +1 -1
- package/components/Calendar/CalendarDay.d.ts +7 -0
- package/components/Calendar/CalendarDay.md +32 -32
- package/components/Calendar/__docs__/Calendar.mdx +28 -0
- package/components/Calendar/__docs__/CalendarDay.mdx +24 -0
- package/components/Calendar/locale/types/types.js +0 -1
- package/components/Center/Center/Center.js +3 -1
- package/components/Center/Center/Center.js.map +1 -1
- package/components/Center/Center.d.ts +4 -6
- package/components/Center/Center.md +1 -1
- package/components/Center/__docs__/Center.mdx +24 -0
- package/components/Checkbox/Checkbox/Checkbox.js +7 -0
- package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.d.ts +20 -28
- package/components/Checkbox/Checkbox.md +6 -5
- package/components/Checkbox/__docs__/Checkbox.mdx +28 -0
- package/components/ComboBox/ComboBox/ComboBox.js +13 -2
- package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
- package/components/ComboBox/ComboBox.d.ts +67 -86
- package/components/ComboBox/ComboBox.md +41 -40
- package/components/ComboBox/__docs__/ComboBox.mdx +28 -0
- package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js.map +1 -1
- package/components/CurrencyInput/CurrencyHelper.d.ts +4 -0
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +5 -2
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
- package/components/CurrencyInput/CurrencyInput.d.ts +12 -12
- package/components/CurrencyInput/CurrencyInput.md +3 -1
- package/components/CurrencyInput/CurrencyInputHelper/CurrencyInputHelper.js.map +1 -1
- package/components/CurrencyInput/CurrencyInputHelper.d.ts +3 -0
- package/components/CurrencyInput/__docs__/CurrencyInput.mdx +28 -0
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +4 -0
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/components/CurrencyLabel/CurrencyLabel.d.ts +8 -5
- package/components/CurrencyLabel/CurrencyLabel.md +5 -5
- package/components/CurrencyLabel/__docs__/CurrencyLabel.mdx +24 -0
- package/components/DateInput/DateInput/DateInput.js +8 -1
- package/components/DateInput/DateInput/DateInput.js.map +1 -1
- package/components/DateInput/DateInput.d.ts +21 -29
- package/components/DateInput/DateInput.md +7 -2
- package/components/DateInput/__docs__/DateInput.mdx +26 -0
- package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js +3 -3
- package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js.map +1 -1
- package/components/DatePicker/DatePicker/DatePicker.js +33 -5
- package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.d.ts +33 -23
- package/components/DatePicker/DatePicker.md +2 -2
- package/components/DatePicker/__docs__/DatePicker.mdx +28 -0
- package/components/DatePicker/locale/types/types.js +0 -1
- package/components/Dropdown/Dropdown/Dropdown.js +7 -1
- package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
- package/components/Dropdown/Dropdown.d.ts +25 -30
- package/components/Dropdown/Dropdown.md +2 -1
- package/components/Dropdown/__docs__/Dropdown.mdx +28 -0
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +1 -1
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu.d.ts +1 -1
- package/components/DropdownMenu/DropdownMenu.md +12 -10
- package/components/DropdownMenu/__docs__/DropdownMenu.mdx +28 -0
- package/components/FileUploader/FileUploader/FileUploader.js +6 -0
- package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
- package/components/FileUploader/FileUploader.d.ts +16 -20
- package/components/FileUploader/FileUploader.md +9 -9
- package/components/FileUploader/__docs__/FileUploader.mdx +28 -0
- package/components/FileUploader/locale/types/types.js +0 -1
- package/components/FxInput/FxInput/FxInput.js +7 -1
- package/components/FxInput/FxInput/FxInput.js.map +1 -1
- package/components/FxInput/FxInput.d.ts +15 -9
- package/components/FxInput/FxInput.md +2 -0
- package/components/FxInput/__docs__/FxInput.mdx +28 -0
- package/components/Gapped/Gapped/Gapped.js +1 -1
- package/components/Gapped/Gapped/Gapped.js.map +1 -1
- package/components/Gapped/Gapped.d.ts +6 -17
- package/components/Gapped/Gapped.md +3 -2
- package/components/Gapped/__docs__/Gapped.mdx +24 -0
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +13 -0
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
- package/components/GlobalLoader/GlobalLoader.d.ts +22 -32
- package/components/GlobalLoader/GlobalLoader.md +4 -5
- package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
- package/components/GlobalLoader/GlobalLoaderView.d.ts +4 -0
- package/components/GlobalLoader/__docs__/GlobalLoader.mdx +28 -0
- package/components/Group/Group/Group.js +6 -0
- package/components/Group/Group/Group.js.map +1 -1
- package/components/Group/Group.d.ts +6 -0
- package/components/Group/Group.md +1 -0
- package/components/Group/__docs__/Group.mdx +24 -0
- package/components/Hint/Hint/Hint.js +4 -1
- package/components/Hint/Hint/Hint.js.map +1 -1
- package/components/Hint/Hint.d.ts +18 -40
- package/components/Hint/Hint.md +9 -8
- package/components/Hint/__docs__/Hint.mdx +29 -0
- package/components/Input/Input/Input.js +10 -1
- package/components/Input/Input/Input.js.map +1 -1
- package/components/Input/Input.d.ts +46 -68
- package/components/Input/Input.md +11 -2
- package/components/Input/Input.typings/Input.typings.js +0 -1
- package/components/Input/__docs__/Input.mdx +28 -0
- package/components/Kebab/Kebab/Kebab.js +4 -0
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/Kebab/Kebab.d.ts +12 -16
- package/components/Kebab/Kebab.md +9 -9
- package/components/Kebab/__docs__/Kebab.mdx +28 -0
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Link/Link.d.ts +13 -37
- package/components/Link/Link.md +12 -11
- package/components/Link/__docs__/Link.mdx +28 -0
- package/components/Loader/Loader/Loader.js +2 -2
- package/components/Loader/Loader/Loader.js.map +1 -1
- package/components/Loader/Loader.d.ts +13 -25
- package/components/Loader/Loader.md +1 -0
- package/components/Loader/__docs__/Loader.mdx +26 -0
- package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
- package/components/MaskedInput/MaskedInput.d.ts +13 -33
- package/components/MaskedInput/MaskedInput.md +7 -5
- package/components/MaskedInput/__docs__/MaskedInput.mdx +28 -0
- package/components/MenuFooter/MenuFooter/MenuFooter.js +3 -3
- package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -1
- package/components/MenuFooter/MenuFooter.d.ts +6 -4
- package/components/MenuFooter/MenuFooter.md +2 -2
- package/components/MenuFooter/__docs__/MenuFooter.mdx +24 -0
- package/components/MenuHeader/MenuHeader/MenuHeader.js +3 -3
- package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
- package/components/MenuHeader/MenuHeader.d.ts +6 -4
- package/components/MenuHeader/MenuHeader.md +2 -2
- package/components/MenuHeader/__docs__/MenuHeader.mdx +24 -0
- package/components/MenuItem/MenuItem/MenuItem.js +1 -2
- package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.d.ts +22 -55
- package/components/MenuItem/MenuItem.md +34 -30
- package/components/MenuItem/__docs__/MenuItem.mdx +24 -0
- package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +3 -2
- package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
- package/components/MenuSeparator/MenuSeparator.d.ts +2 -2
- package/components/MenuSeparator/MenuSeparator.md +1 -1
- package/components/MenuSeparator/__docs__/MenuSeparator.mdx +24 -0
- package/components/MiniModal/MiniModal/MiniModal.js +7 -0
- package/components/MiniModal/MiniModal/MiniModal.js.map +1 -1
- package/components/MiniModal/MiniModal.d.ts +6 -0
- package/components/MiniModal/MiniModal.md +1 -3
- package/components/MiniModal/MiniModalFooter/MiniModalFooter.js.map +1 -1
- package/components/MiniModal/MiniModalFooter.d.ts +2 -7
- package/components/MiniModal/MiniModalHeader/MiniModalHeader.js.map +1 -1
- package/components/MiniModal/MiniModalHeader.d.ts +2 -5
- package/components/MiniModal/__docs__/MiniModal.mdx +28 -0
- package/components/MiniModal/__docs__/MiniModalBody.mdx +17 -0
- package/components/MiniModal/__docs__/MiniModalFooter.mdx +17 -0
- package/components/MiniModal/__docs__/MiniModalHeader.mdx +18 -0
- package/components/MiniModal/__docs__/MiniModalIndent.mdx +11 -0
- package/components/MiniModal/getMiniModalTheme.d.ts +1 -1
- package/components/Modal/Modal/Modal.js +4 -9
- package/components/Modal/Modal/Modal.js.map +1 -1
- package/components/Modal/Modal.d.ts +12 -33
- package/components/Modal/Modal.md +3 -1
- package/components/Modal/Modal.styles/Modal.styles.js +40 -31
- package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
- package/components/Modal/Modal.styles.d.ts +4 -1
- package/components/Modal/ModalBody/ModalBody.js +1 -1
- package/components/Modal/ModalBody/ModalBody.js.map +1 -1
- package/components/Modal/ModalBody.d.ts +2 -4
- package/components/Modal/ModalClose/ModalClose.js +3 -1
- package/components/Modal/ModalClose/ModalClose.js.map +1 -1
- package/components/Modal/ModalContext/ModalContext.js.map +1 -1
- package/components/Modal/ModalContext.d.ts +2 -0
- package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
- package/components/Modal/ModalFooter.d.ts +5 -15
- package/components/Modal/ModalHeader/ModalHeader.js +1 -1
- package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/components/Modal/ModalHeader.d.ts +3 -1
- package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
- package/components/Modal/ModalSeparator.d.ts +1 -0
- package/components/Modal/__creevey__/Modal.creevey.mts +15 -1
- package/components/Modal/__docs__/Modal.mdx +28 -0
- package/components/Modal/__docs__/ModalBody.mdx +15 -0
- package/components/Modal/__docs__/ModalFooter.mdx +15 -0
- package/components/Modal/__docs__/ModalHeader.mdx +15 -0
- package/components/Modal/__docs__/ModalSeparator.mdx +15 -0
- package/components/Modal/locale/types/types.js +0 -1
- package/components/Paging/Paging/Paging.js +4 -0
- package/components/Paging/Paging/Paging.js.map +1 -1
- package/components/Paging/Paging.d.ts +20 -15
- package/components/Paging/Paging.md +3 -2
- package/components/Paging/PagingDefaultComponent/PagingDefaultComponent.js.map +1 -1
- package/components/Paging/PagingDefaultComponent.d.ts +2 -0
- package/components/Paging/__docs__/Paging.mdx +28 -0
- package/components/Paging/locale/types/types.js +0 -1
- package/components/PasswordInput/PasswordInput/PasswordInput.js +32 -10
- package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
- package/components/PasswordInput/PasswordInput.d.ts +10 -3
- package/components/PasswordInput/PasswordInput.md +3 -2
- package/components/PasswordInput/__docs__/PasswordInput.mdx +28 -0
- package/components/PasswordInput/locale/types/types.js +0 -1
- package/components/Radio/Radio/Radio.js +1 -1
- package/components/Radio/Radio/Radio.js.map +1 -1
- package/components/Radio/Radio.d.ts +13 -28
- package/components/Radio/Radio.md +3 -2
- package/components/Radio/__docs__/Radio.mdx +28 -0
- package/components/RadioGroup/RadioGroup/RadioGroup.js +4 -5
- package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
- package/components/RadioGroup/RadioGroup.d.ts +28 -54
- package/components/RadioGroup/RadioGroup.md +1 -0
- package/components/RadioGroup/__docs__/RadioGroup.mdx +28 -0
- package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js +1 -2
- package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
- package/components/ResponsiveLayout/ResponsiveLayout.d.ts +4 -1
- package/components/ResponsiveLayout/ResponsiveLayout.md +4 -3
- package/components/ResponsiveLayout/__docs__/ResponsiveLayout.mdx +97 -0
- package/components/ResponsiveLayout/types/types.js +0 -1
- package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
- package/components/ScrollContainer/ScrollBar.d.ts +7 -0
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +4 -0
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.d.ts +23 -29
- package/components/ScrollContainer/ScrollContainer.md +5 -3
- package/components/ScrollContainer/__docs__/ScrollContainer.mdx +24 -0
- package/components/Select/Item/Item.js.map +1 -1
- package/components/Select/Item.d.ts +2 -0
- package/components/Select/Select/Select.js +11 -0
- package/components/Select/Select/Select.js.map +1 -1
- package/components/Select/Select.d.ts +54 -38
- package/components/Select/Select.md +7 -6
- package/components/Select/__docs__/Select.mdx +28 -0
- package/components/Select/locale/types/types.js +0 -1
- package/components/SidePage/SidePage/SidePage.js +28 -16
- package/components/SidePage/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.d.ts +17 -38
- package/components/SidePage/SidePage.md +2 -1
- package/components/SidePage/SidePage.styles/SidePage.styles.js +48 -26
- package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
- package/components/SidePage/SidePage.styles.d.ts +8 -1
- package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +6 -2
- package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -1
- package/components/SidePage/SidePageCloseButton.d.ts +6 -1
- package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
- package/components/SidePage/SidePageFooter.d.ts +4 -9
- package/components/SidePage/SidePageHeader/SidePageHeader.js +13 -5
- package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +2 -1
- package/components/SidePage/__creevey__/SidePage.creevey.mts +103 -1
- package/components/SidePage/__docs__/SidePage.mdx +28 -0
- package/components/SidePage/__docs__/SidePageBody.mdx +15 -0
- package/components/SidePage/__docs__/SidePageContainer.mdx +15 -0
- package/components/SidePage/__docs__/SidePageFooter.mdx +15 -0
- package/components/SidePage/__docs__/SidePageHeader.mdx +15 -0
- package/components/SidePage/locale/types/types.js +0 -1
- package/components/SingleToast/SingleToast/SingleToast.js +5 -1
- package/components/SingleToast/SingleToast/SingleToast.js.map +1 -1
- package/components/SingleToast/SingleToast.d.ts +5 -1
- package/components/SingleToast/SingleToast.md +2 -1
- package/components/SingleToast/__docs__/SingleToast.mdx +28 -0
- package/components/Spinner/Spinner/Spinner.js +6 -2
- package/components/Spinner/Spinner/Spinner.js.map +1 -1
- package/components/Spinner/Spinner.d.ts +15 -20
- package/components/Spinner/Spinner.md +2 -1
- package/components/Spinner/__docs__/Spinner.mdx +28 -0
- package/components/Sticky/Sticky/Sticky.js +5 -0
- package/components/Sticky/Sticky/Sticky.js.map +1 -1
- package/components/Sticky/Sticky.d.ts +9 -4
- package/components/Sticky/Sticky.md +1 -0
- package/components/Sticky/__docs__/Sticky.mdx +24 -0
- package/components/Switcher/Switcher/Switcher.js +16 -6
- package/components/Switcher/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/Switcher.d.ts +18 -7
- package/components/Switcher/Switcher.md +6 -2
- package/components/Switcher/Switcher.styles/Switcher.styles.js +4 -1
- package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
- package/components/Switcher/Switcher.styles.d.ts +1 -0
- package/components/Switcher/__docs__/Switcher.mdx +28 -0
- package/components/Tabs/Tab/Tab.js +1 -1
- package/components/Tabs/Tab/Tab.js.map +1 -1
- package/components/Tabs/Tab.d.ts +12 -31
- package/components/Tabs/Tab.md +2 -0
- package/components/Tabs/Tabs/Tabs.js +6 -1
- package/components/Tabs/Tabs/Tabs.js.map +1 -1
- package/components/Tabs/Tabs.d.ts +14 -25
- package/components/Tabs/Tabs.md +3 -2
- package/components/Tabs/__docs__/Tab.mdx +28 -0
- package/components/Tabs/__docs__/Tabs.mdx +28 -0
- package/components/Textarea/Textarea/Textarea.js +3 -4
- package/components/Textarea/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.d.ts +26 -52
- package/components/Textarea/Textarea.md +4 -2
- package/components/Textarea/__docs__/Textarea.mdx +28 -0
- package/components/Toast/Toast/Toast.js +17 -12
- package/components/Toast/Toast/Toast.js.map +1 -1
- package/components/Toast/Toast.d.ts +12 -9
- package/components/Toast/Toast.md +4 -4
- package/components/Toast/ToastStatic/ToastStatic.js +5 -5
- package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
- package/components/Toast/ToastStatic.d.ts +2 -2
- package/components/Toast/ToastView/ToastView.js +2 -1
- package/components/Toast/ToastView/ToastView.js.map +1 -1
- package/components/Toast/ToastView.d.ts +3 -6
- package/components/Toast/ToastView.styles/ToastView.styles.js +2 -2
- package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
- package/components/Toast/__creevey__/Toast.creevey.mts +23 -0
- package/components/Toast/__docs__/Toast.mdx +28 -0
- package/components/Toast/locale/types/types.js +0 -1
- package/components/Toggle/Toggle/Toggle.js +4 -1
- package/components/Toggle/Toggle/Toggle.js.map +1 -1
- package/components/Toggle/Toggle.d.ts +25 -48
- package/components/Toggle/Toggle.md +9 -9
- package/components/Toggle/__docs__/Toggle.mdx +28 -0
- package/components/Token/Token/Token.js +6 -0
- package/components/Token/Token/Token.js.map +1 -1
- package/components/Token/Token.d.ts +17 -9
- package/components/Token/Token.md +86 -3
- package/components/Token/TokenView/TokenView.js.map +1 -1
- package/components/Token/TokenView.d.ts +3 -0
- package/components/Token/__docs__/Token.mdx +28 -0
- package/components/Token/locale/types/types.js +0 -1
- package/components/TokenInput/TextWidthHelper/TextWidthHelper.js.map +1 -1
- package/components/TokenInput/TextWidthHelper.d.ts +3 -0
- package/components/TokenInput/TokenInput/TokenInput.js +9 -3
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +54 -97
- package/components/TokenInput/TokenInput.md +12 -10
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
- package/components/TokenInput/TokenInputMenu.d.ts +5 -5
- package/components/TokenInput/__docs__/TokenInput.mdx +28 -0
- package/components/TokenInput/locale/types/types.js +0 -1
- package/components/Tooltip/Tooltip/Tooltip.js +9 -0
- package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +28 -68
- package/components/Tooltip/Tooltip.md +5 -0
- package/components/Tooltip/__docs__/Tooltip.mdx +28 -0
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +1 -1
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
- package/components/TooltipMenu/TooltipMenu.d.ts +13 -28
- package/components/TooltipMenu/TooltipMenu.md +13 -10
- package/components/TooltipMenu/__docs__/TooltipMenu.mdx +24 -0
- package/index.d.ts +1 -2
- package/index.js +1 -2
- package/index.js.map +1 -1
- package/internal/CommonWrapper/index/index.js +1 -2
- package/internal/CommonWrapper/index/index.js.map +1 -1
- package/internal/CommonWrapper/types/types.js +0 -1
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +10 -2
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.d.ts +4 -1
- package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +1 -1
- package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +1 -0
- package/internal/CustomComboBox/CustomComboBoxTypes/CustomComboBoxTypes.js +3 -3
- package/internal/CustomComboBox/CustomComboBoxTypes/CustomComboBoxTypes.js.map +1 -1
- package/internal/CustomComboBox/locale/types/types.js +0 -1
- package/internal/DateSelect/locale/types/types.js +0 -1
- package/internal/FileUploaderControl/fileUtils/fileUtils.js +3 -3
- package/internal/FileUploaderControl/fileUtils/fileUtils.js.map +1 -1
- package/internal/InputLikeText/InputLikeText/InputLikeText.js +12 -6
- package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/Popup/types/types.js +0 -1
- package/internal/RenderContainer/RenderContainerTypes/RenderContainerTypes.js +0 -1
- package/internal/ThemePlayground/Playground.styles/Playground.styles.js +1 -1
- package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
- package/internal/ThemePlayground/__creevey__/Theme5_0.creevey.d.mts +1 -0
- package/internal/ThemePlayground/__creevey__/Theme5_0.creevey.mts +36 -0
- package/internal/ThemePlayground/__creevey__/Theme5_0.stories.d.ts +4 -0
- package/internal/ThemePlayground/constants/constants.js +3 -3
- package/internal/ThemePlayground/constants/constants.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/internal/ZIndex/index/index.js +1 -2
- package/internal/ZIndex/index/index.js.map +1 -1
- package/internal/themes/BasicLightTheme/BasicLightTheme.js +5 -3338
- package/internal/themes/BasicLightTheme/BasicLightTheme.js.map +1 -1
- package/internal/themes/BasicLightTheme.d.ts +5 -1198
- package/internal/themes/BasicTheme/BasicTheme.js +3360 -0
- package/internal/themes/BasicTheme/BasicTheme.js.map +1 -0
- package/internal/themes/BasicTheme/package.json +6 -0
- package/internal/themes/BasicTheme.d.ts +1217 -0
- package/internal/themes/DarkTheme5_0/DarkTheme5_0.js +409 -0
- package/internal/themes/DarkTheme5_0/DarkTheme5_0.js.map +1 -0
- package/internal/themes/DarkTheme5_0/package.json +6 -0
- package/internal/themes/DarkTheme5_0.d.ts +1 -0
- package/internal/themes/DarkTheme5_1/DarkTheme5_1.js +52 -0
- package/internal/themes/DarkTheme5_1/DarkTheme5_1.js.map +1 -0
- package/internal/themes/DarkTheme5_1/package.json +6 -0
- package/internal/themes/DarkTheme5_1.d.ts +1 -0
- package/internal/themes/LightTheme5_0/LightTheme5_0.js +14 -0
- package/internal/themes/LightTheme5_0/LightTheme5_0.js.map +1 -0
- package/internal/themes/LightTheme5_0/package.json +6 -0
- package/internal/themes/LightTheme5_0.d.ts +1 -0
- package/internal/themes/LightTheme5_1/LightTheme5_1.js +52 -0
- package/internal/themes/LightTheme5_1/LightTheme5_1.js.map +1 -0
- package/internal/themes/LightTheme5_1/package.json +6 -0
- package/internal/themes/LightTheme5_1.d.ts +1 -0
- package/lib/ModalStack/ModalStack.js +8 -8
- package/lib/ModalStack/ModalStack.js.map +1 -1
- package/lib/ModalStack.d.ts +1 -0
- package/lib/date/types/types.js +18 -18
- package/lib/date/types/types.js.map +1 -1
- package/lib/events/MouseDrag/MouseDrag.js +3 -3
- package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
- package/lib/events/keyboard/KeyboardEventCodes/KeyboardEventCodes.js +3 -3
- package/lib/events/keyboard/KeyboardEventCodes/KeyboardEventCodes.js.map +1 -1
- package/lib/locale/types/types.js +3 -3
- package/lib/locale/types/types.js.map +1 -1
- package/lib/theming/Theme/Theme.js +2 -1
- package/lib/theming/Theme/Theme.js.map +1 -1
- package/lib/theming/Theme.d.ts +4 -3
- package/lib/theming/ThemeContext/ThemeContext.js +2 -2
- package/lib/theming/ThemeContext/ThemeContext.js.map +1 -1
- package/lib/theming/ThemeContext.d.ts +1 -1
- package/lib/theming/ThemeFactory/ThemeFactory.js +21 -7
- package/lib/theming/ThemeFactory/ThemeFactory.js.map +1 -1
- package/lib/theming/ThemeFactory.d.ts +9 -0
- package/lib/theming/ThemeHelpers/ThemeHelpers.js +85 -18
- package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
- package/lib/theming/ThemeHelpers.d.ts +55 -8
- package/lib/theming/ThemeVersions/ThemeVersions.js +50 -0
- package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -0
- package/lib/theming/ThemeVersions/package.json +6 -0
- package/lib/theming/ThemeVersions.d.ts +25 -0
- package/lib/theming/themes/DarkTheme/DarkTheme.js +5 -4
- package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
- package/lib/theming/themes/DarkTheme.d.ts +3 -1
- package/lib/theming/themes/LightTheme/LightTheme.js +5 -4
- package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
- package/lib/theming/themes/LightTheme.d.ts +3 -1
- package/lib/theming/themes/LightThemeMobile.d.ts +1 -1
- package/lib/theming/useTheme.d.ts +1 -1
- package/lib/types/button-link/button-link.js +0 -1
- package/lib/types/polymorphic-component/polymorphic-component.js +0 -1
- package/lib/types/props/props.js +0 -1
- package/package.json +9 -5
- package/cjs/internal/themes/BasicDarkTheme.d.ts +0 -289
- package/cjs/internal/themes/BasicDarkTheme.js +0 -597
- package/cjs/internal/themes/BasicDarkTheme.js.map +0 -1
- package/cjs/lib/theming/themes/DarkTheme2022_0.d.ts +0 -1
- package/cjs/lib/theming/themes/DarkTheme2022_0.js +0 -5
- package/cjs/lib/theming/themes/DarkTheme2022_0.js.map +0 -1
- package/cjs/lib/theming/themes/LightTheme2022_0.d.ts +0 -1
- package/cjs/lib/theming/themes/LightTheme2022_0.js +0 -5
- package/cjs/lib/theming/themes/LightTheme2022_0.js.map +0 -1
- package/internal/themes/BasicDarkTheme/BasicDarkTheme.js +0 -641
- package/internal/themes/BasicDarkTheme/BasicDarkTheme.js.map +0 -1
- package/internal/themes/BasicDarkTheme/package.json +0 -6
- package/internal/themes/BasicDarkTheme.d.ts +0 -289
- package/lib/theming/themes/DarkTheme2022_0/DarkTheme2022_0.js +0 -3
- package/lib/theming/themes/DarkTheme2022_0/DarkTheme2022_0.js.map +0 -1
- package/lib/theming/themes/DarkTheme2022_0/package.json +0 -6
- package/lib/theming/themes/DarkTheme2022_0.d.ts +0 -1
- package/lib/theming/themes/LightTheme2022_0/LightTheme2022_0.js +0 -3
- package/lib/theming/themes/LightTheme2022_0/LightTheme2022_0.js.map +0 -1
- package/lib/theming/themes/LightTheme2022_0/package.json +0 -6
- package/lib/theming/themes/LightTheme2022_0.d.ts +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_propTypes","_warning","_lodash","_globalObject","_utils","_client","_Input","_CommonWrapper","_rootNode","_createPropsGetter","_isInstanceOf","_FocusControlWrapper","_constants","_SelectionHelper","_CurrencyHelper","_CurrencyInputHelper","_CurrencyInputKeyboardActions","_excluded","_class","_CurrencyInput","CurrencyInputDataTids","exports","root","CurrencyInput","rootNode","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","state","_extends2","default","getState","value","fractionDigits","hideTrailingZeros","focused","tempSelectionForOnChange","SelectionHelper","fromPosition","renderMain","props","signed","onSubmit","integerDigits","rest","_objectWithoutPropertiesLoose2","createElement","FocusControlWrapper","onBlurWhenDisabled","resetFocus","Input","align","formatted","onBlur","handleBlur","onFocus","handleFocus","onMouseUp","handleMouseUp","onKeyDown","handleKeyDown","onValueChange","handleValueChange","onPaste","handlePaste","onCopy","handleCopy","onCut","handleCut","onMouseEnter","onMouseLeave","onMouseOver","ref","refInput","placeholder","getPlaceholder","focus","input","blur","debouncedSetSelectionFromEvent","debounce","setSelectionFromEvent","event","isIE11","persist","selection","getSelection","target","defaultPrevented","action","extractAction","CURRENCY_INPUT_ACTIONS","Ignore","Unknown","preventDefault","Submit","Backspace","inputValue","CurrencyInputHelper","moveCursor","end","Delete","start","MoveCursorLeft","MoveCursorRight","Home","setState","End","ExtendSelectionLeft","extendSelection","ExtendSelectionRight","FullSelection","forward","ExtendSelectionToStart","backward","ExtendSelectionToEnd","inputEnd","Comma","scrollInput","_this$input","node","getNode","scrollWidth","clientWidth","PAD","SHIFT","selected","position","direction","charsCount","charWidth","frame","Math","ceil","frameStart","scrollLeft","frameEnd","getInputSelectionFromEvent","step","extended","result","safeInsert","unsigned","parsedValue","CurrencyHelper","parse","blink","getOnChangeDelta","oldValue","substring","substr","delta","isNonNullable","data","clipboardData","getData","formatForClipboard","setData","_event$target","selectionStart","selectionEnd","selectionDirection","valueLength","element","_inheritsLoose2","_proto","prototype","componentDidMount","_this$props","maxLength","warning","undefined","MAX_SAFE_DIGITS","componentDidUpdate","prevProps","prevState","_this$getProps","isValidNumber","isNumeric","Number","isNullable","_this$state$selection","setSelectionRange","render","CommonWrapper","rootNodeRef","setRootNode","format","normilized","normalizeSelection","React","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","PropTypes","oneOf","autoFocus","bool","borderless","disabled","error","number","leftIcon","string","size","width","oneOfType","func","isRequired","inputMode","_input$selectionStart","_input$selectionEnd","isInstanceOf","globalObject","HTMLInputElement","Error","isNaN","parseFloat","isFinite"],"sources":["CurrencyInput.tsx"],"sourcesContent":["import React, { AriaAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport warning from 'warning';\nimport debounce from 'lodash.debounce';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isNonNullable, isNullable } from '../../lib/utils';\nimport { isIE11 } from '../../lib/client';\nimport { Input, InputProps } from '../Input';\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\n\nimport { MAX_SAFE_DIGITS } from './constants';\nimport { Selection, SelectionDirection, SelectionHelper } from './SelectionHelper';\nimport { CurrencyHelper } from './CurrencyHelper';\nimport { CurrencyInputHelper } from './CurrencyInputHelper';\nimport { CURRENCY_INPUT_ACTIONS, extractAction } from './CurrencyInputKeyboardActions';\n\nexport interface CurrencyInputProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Override<\n InputProps,\n {\n /** Значение */\n value?: Nullable<number>;\n /** Убрать лишние нули после запятой */\n hideTrailingZeros?: boolean;\n /** Кол-во цифр после запятой */\n fractionDigits?: Nullable<number>;\n /** Отрицательные значения */\n signed?: boolean;\n /**\n * Допустимое кол-во цифр целой части.\n * Если передан **0**, или `fractionDigits=15`, то и в целой части допускается только **0**.\n */\n integerDigits?: Nullable<number>;\n /** Вызывается при изменении `value` */\n onValueChange: (value: Nullable<number>) => void;\n /** onSubmit */\n onSubmit?: () => void;\n }\n > {}\n\nexport interface CurrencyInputState {\n formatted: string;\n selection: Selection;\n focused: boolean;\n}\n\nexport const CurrencyInputDataTids = {\n root: 'CurrencyInput__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<CurrencyInputProps, 'align' | 'fractionDigits' | 'hideTrailingZeros' | 'value' | 'inputMode'>\n>;\n\n/**\n * Поле для денежных сумм (и других числовых значений).\n * Принимает любые свойства `Input`.\n *\n * Максимальная длина числа - **15 цифр** (с десятичным разделителем в любом месте).\n * <br/>\n * Если `fractionDigits=15`, то в целой части допускается **0**.\n */\n@rootNode\nexport class CurrencyInput extends React.PureComponent<CurrencyInputProps, CurrencyInputState> {\n public static __KONTUR_REACT_UI__ = 'CurrencyInput';\n public static displayName = 'CurrencyInput';\n\n public static propTypes = {\n align: PropTypes.oneOf(['left', 'center', 'right']),\n autoFocus: PropTypes.bool,\n borderless: PropTypes.bool,\n disabled: PropTypes.bool,\n error: PropTypes.bool,\n fractionDigits: PropTypes.number,\n hideTrailingZeros: PropTypes.bool,\n leftIcon: PropTypes.element,\n placeholder: PropTypes.string,\n signed: PropTypes.bool,\n size: PropTypes.oneOf(['small', 'medium', 'large']),\n value: (props: CurrencyInputProps) => {\n warning(isValidNumber(props.value), '[CurrencyInput]: Prop `value` is not a valid number');\n },\n warning: PropTypes.bool,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n onBlur: PropTypes.func,\n onValueChange: PropTypes.func.isRequired,\n onFocus: PropTypes.func,\n onMouseEnter: PropTypes.func,\n onMouseLeave: PropTypes.func,\n onMouseOver: PropTypes.func,\n onSubmit: PropTypes.func,\n };\n\n public static defaultProps: DefaultProps = {\n align: 'right',\n fractionDigits: 2,\n hideTrailingZeros: false,\n value: null,\n inputMode: 'decimal',\n };\n\n private getProps = createPropsGetter(CurrencyInput.defaultProps);\n\n public state: CurrencyInputState = {\n ...this.getState(this.getProps().value, this.getProps().fractionDigits, this.getProps().hideTrailingZeros),\n focused: false,\n };\n\n private input: Nullable<Input>;\n private tempSelectionForOnChange: Selection = SelectionHelper.fromPosition(0);\n private setRootNode!: TSetRootNode;\n\n public componentDidMount(): void {\n const { maxLength, integerDigits } = this.props;\n const fractionDigits = this.getProps().fractionDigits;\n warning(\n maxLength === undefined,\n `[CurrencyInput]: Prop 'maxLength' has been deprecated. See 'integerDigits' and 'fractionDigits'`,\n );\n warning(\n (integerDigits || 0) + (fractionDigits || 0) <= MAX_SAFE_DIGITS,\n `[CurrencyInput]: Sum of 'integerDigits' and 'fractionDigits' exceeds ${MAX_SAFE_DIGITS}.` +\n `\\nSee https://tech.skbkontur.ru/react-ui/#/CurrencyInput?id=why15`,\n );\n }\n\n public componentDidUpdate(prevProps: CurrencyInputProps, prevState: CurrencyInputState) {\n const { value, fractionDigits, hideTrailingZeros } = this.getProps();\n if (\n (isValidNumber(value) && isNumeric(value) && Number(value) !== CurrencyHelper.parse(prevState.formatted)) ||\n prevProps.fractionDigits !== fractionDigits\n ) {\n this.setState(this.getState(value, fractionDigits, hideTrailingZeros));\n }\n if (isNonNullable(prevProps.value) && isNullable(value)) {\n this.setState({ formatted: '' });\n }\n if (this.state.focused && this.input) {\n const { start, end } = this.state.selection;\n\n this.input.setSelectionRange(start, end);\n }\n if (prevState.selection !== this.state.selection) {\n this.scrollInput();\n }\n }\n\n public render() {\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<CurrencyInputProps>) => {\n const { fractionDigits, signed, onSubmit, integerDigits, hideTrailingZeros, ...rest } = props;\n\n return (\n <FocusControlWrapper onBlurWhenDisabled={this.resetFocus}>\n <Input\n data-tid={CurrencyInputDataTids.root}\n {...rest}\n align={this.getProps().align}\n value={this.state.formatted}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onMouseUp={this.handleMouseUp}\n onKeyDown={this.handleKeyDown}\n onValueChange={this.handleValueChange}\n onPaste={this.handlePaste}\n onCopy={this.handleCopy}\n onCut={this.handleCut}\n aria-label={this.props['aria-label']}\n onMouseEnter={this.props.onMouseEnter}\n onMouseLeave={this.props.onMouseLeave}\n onMouseOver={this.props.onMouseOver}\n ref={this.refInput}\n placeholder={this.state.focused ? '' : getPlaceholder(props)}\n />\n </FocusControlWrapper>\n );\n };\n\n /**\n * @public\n */\n public focus = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n /**\n * @public\n */\n public blur = () => {\n if (this.input) {\n this.input.blur();\n }\n };\n\n private getState(value: Nullable<number>, fractionDigits: Nullable<number>, hideTrailingZeros: boolean) {\n return {\n formatted: CurrencyHelper.format(value, { fractionDigits, hideTrailingZeros }),\n selection: SelectionHelper.fromPosition(0),\n };\n }\n\n private setSelectionFromEvent(event: React.MouseEvent<HTMLInputElement>) {\n const selection = getInputSelectionFromEvent(event.target);\n const normilized = CurrencyInputHelper.normalizeSelection(this.state.formatted, selection);\n this.setState({ selection: normilized });\n }\n\n // for IE11\n private readonly debouncedSetSelectionFromEvent = debounce(this.setSelectionFromEvent, 300);\n\n private handleMouseUp = (event: React.MouseEvent<HTMLInputElement>) => {\n if (isIE11) {\n event.persist();\n this.debouncedSetSelectionFromEvent(event);\n } else {\n this.setSelectionFromEvent(event);\n }\n };\n\n private handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n const selection = this.getSelection(event.target);\n this.tempSelectionForOnChange = selection;\n\n if (this.props.onKeyDown) {\n this.props.onKeyDown(event);\n if (event.defaultPrevented) {\n return;\n }\n }\n\n const action = extractAction(event);\n\n if (action === CURRENCY_INPUT_ACTIONS.Ignore) {\n return;\n }\n\n if (action !== CURRENCY_INPUT_ACTIONS.Unknown) {\n event.preventDefault();\n }\n\n switch (action) {\n case CURRENCY_INPUT_ACTIONS.Submit: {\n if (this.props.onSubmit) {\n this.props.onSubmit();\n }\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Backspace: {\n this.inputValue(CurrencyInputHelper.moveCursor(this.state.formatted, selection, -1), selection.end, '');\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Delete: {\n this.inputValue(selection.start, CurrencyInputHelper.moveCursor(this.state.formatted, selection, +1), '');\n return;\n }\n case CURRENCY_INPUT_ACTIONS.MoveCursorLeft: {\n this.moveCursor(selection, -1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.MoveCursorRight: {\n this.moveCursor(selection, +1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Home: {\n this.setState({ selection: SelectionHelper.fromPosition(0) });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.End: {\n const end = this.state.formatted.length;\n this.setState({ selection: SelectionHelper.fromPosition(end) });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionLeft: {\n this.extendSelection(selection, -1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionRight: {\n this.extendSelection(selection, +1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.FullSelection: {\n this.setState({\n selection: SelectionHelper.forward(0, this.state.formatted.length),\n });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionToStart: {\n this.setState({\n selection: SelectionHelper.backward(0, selection.start),\n });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionToEnd: {\n const inputEnd = this.state.formatted.length;\n this.setState({\n selection: SelectionHelper.forward(selection.start, inputEnd),\n });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Comma: {\n this.inputValue(selection.start, selection.end, ',');\n return;\n }\n }\n };\n\n private scrollInput = () => {\n const node = this.input?.getNode();\n if (!node || node.scrollWidth === node.clientWidth) {\n return;\n }\n const PAD = 1;\n const SHIFT = 3;\n\n const selection = this.state.selection;\n const selected = selection.start !== selection.end;\n const position = selected && selection.direction === 'forward' ? selection.end : selection.start;\n const charsCount = this.state.formatted.length;\n const charWidth = node.scrollWidth / charsCount;\n const frame = Math.ceil(node.clientWidth / charWidth);\n const frameStart = Math.ceil(node.scrollLeft / charWidth);\n const frameEnd = frameStart + frame;\n\n if (position < frameStart + PAD) {\n node.scrollLeft = (position - SHIFT) * charWidth;\n }\n if (position > frameEnd - PAD) {\n node.scrollLeft = (position - frame + SHIFT) * charWidth;\n }\n };\n\n private getSelection = (input: EventTarget): Selection => {\n const selection = getInputSelectionFromEvent(input);\n return {\n start: selection.start,\n end: selection.end,\n direction: this.state.selection.direction,\n };\n };\n\n private moveCursor = (selection: Selection, step: number) => {\n const position = CurrencyInputHelper.moveCursor(this.state.formatted, selection, step);\n this.setState({ selection: SelectionHelper.fromPosition(position) });\n };\n\n private extendSelection = (selection: Selection, step: number) => {\n const extended = CurrencyInputHelper.extendSelection(this.state.formatted, selection, step);\n this.setState({ selection: extended });\n };\n\n private inputValue = (start: number, end: number, value: string) => {\n const result = CurrencyInputHelper.safeInsert(this.state.formatted, start, end, value, {\n integerDigits: this.props.integerDigits,\n fractionDigits: this.getProps().fractionDigits,\n unsigned: !this.props.signed,\n });\n if (result) {\n const formatted = result.value;\n const selection = SelectionHelper.fromPosition(result.position);\n this.setState({ formatted, selection }, () => {\n const parsedValue = CurrencyHelper.parse(formatted);\n if (this.props.value !== parsedValue) {\n this.props.onValueChange(parsedValue);\n }\n });\n return true;\n }\n\n if (this.input) {\n this.input.blink();\n }\n return false;\n };\n\n private getOnChangeDelta = (value: string) => {\n const selection = this.tempSelectionForOnChange;\n const oldValue = this.state.formatted;\n if (selection.start !== selection.end) {\n return value.substring(selection.start, value.length - (oldValue.length - selection.end));\n } else if (value.length > oldValue.length) {\n return value.substr(selection.start, value.length - oldValue.length);\n }\n return null;\n };\n\n private handleValueChange = (value: string): void => {\n const selection = this.tempSelectionForOnChange;\n const delta = this.getOnChangeDelta(value);\n if (isNonNullable(delta) && !this.inputValue(selection.start, selection.end, delta)) {\n this.setState({ selection });\n }\n };\n\n private handlePaste = (event: React.ClipboardEvent<HTMLInputElement>) => {\n const data = event.clipboardData.getData('text');\n const selection = this.getSelection(event.target);\n this.inputValue(selection.start, selection.end, data);\n event.preventDefault();\n };\n\n private handleCopy = (event: React.ClipboardEvent<HTMLInputElement>) => {\n const selection = this.getSelection(event.target);\n if (selection.start !== selection.end) {\n const substring = this.state.formatted.substring(selection.start, selection.end);\n const data = CurrencyHelper.formatForClipboard(substring);\n event.clipboardData.setData('text', data);\n }\n event.preventDefault();\n };\n\n private handleCut = (event: React.ClipboardEvent<HTMLInputElement>) => {\n const selection = this.getSelection(event.target);\n if (selection.start !== selection.end) {\n const substring = this.state.formatted.substring(selection.start, selection.end);\n const data = CurrencyHelper.formatForClipboard(substring);\n event.clipboardData.setData('text', data);\n this.inputValue(selection.start, selection.end, '');\n }\n event.preventDefault();\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n const { selectionStart, selectionEnd, selectionDirection } = event.target;\n const valueLength = event.target.value.length;\n\n const selection = {\n start: selectionStart !== selectionEnd ? selectionStart || 0 : selectionStart || valueLength,\n end: selectionEnd !== selectionStart ? selectionEnd || 0 : selectionEnd || valueLength,\n direction: (selectionDirection as SelectionDirection) || 'none',\n };\n\n this.setState({\n focused: true,\n selection,\n });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private resetFocus = () => {\n const value = CurrencyHelper.parse(this.state.formatted);\n\n this.setState({\n ...this.getState(value, this.getProps().fractionDigits, this.getProps().hideTrailingZeros),\n focused: false,\n });\n };\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n this.resetFocus();\n this.props.onBlur?.(event);\n };\n\n private refInput = (element: Nullable<Input>) => {\n this.input = element;\n };\n}\n\nfunction getInputSelectionFromEvent(input: EventTarget): Selection {\n if (!isInstanceOf(input, globalObject.HTMLInputElement)) {\n throw new Error('input is not HTMLInputElement');\n }\n\n return {\n start: input.selectionStart ?? 0,\n end: input.selectionEnd ?? 0,\n direction: input.selectionDirection as SelectionDirection,\n };\n}\n\nfunction isNumeric(value: unknown): value is number | string {\n return !isNaN(parseFloat(value as string)) && isFinite(value as number);\n}\n\nfunction isValidNumber(value: unknown): boolean {\n return !isNaN(Number(value));\n}\n\nconst getPlaceholder = (props: CurrencyInputProps) => {\n if (isNullable(props.placeholder)) {\n return CurrencyHelper.format(0, {\n fractionDigits: props.fractionDigits,\n hideTrailingZeros: props.hideTrailingZeros,\n });\n }\n\n return props.placeholder;\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_propTypes","_warning","_lodash","_globalObject","_utils","_client","_Input","_CommonWrapper","_rootNode","_createPropsGetter","_isInstanceOf","_FocusControlWrapper","_constants","_SelectionHelper","_CurrencyHelper","_CurrencyInputHelper","_CurrencyInputKeyboardActions","_excluded","_class","_CurrencyInput","CurrencyInputDataTids","exports","root","CurrencyInput","rootNode","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","state","_extends2","default","getState","value","fractionDigits","hideTrailingZeros","focused","tempSelectionForOnChange","SelectionHelper","fromPosition","renderMain","props","signed","onSubmit","integerDigits","rest","_objectWithoutPropertiesLoose2","createElement","FocusControlWrapper","onBlurWhenDisabled","resetFocus","Input","align","formatted","onBlur","handleBlur","onFocus","handleFocus","onMouseUp","handleMouseUp","onKeyDown","handleKeyDown","onValueChange","handleValueChange","onPaste","handlePaste","onCopy","handleCopy","onCut","handleCut","onMouseEnter","onMouseLeave","onMouseOver","ref","refInput","placeholder","getPlaceholder","focus","input","blur","debouncedSetSelectionFromEvent","debounce","setSelectionFromEvent","event","isIE11","persist","selection","getSelection","target","defaultPrevented","action","extractAction","CURRENCY_INPUT_ACTIONS","Ignore","Unknown","preventDefault","Submit","Backspace","inputValue","CurrencyInputHelper","moveCursor","end","Delete","start","MoveCursorLeft","MoveCursorRight","Home","setState","End","ExtendSelectionLeft","extendSelection","ExtendSelectionRight","FullSelection","forward","ExtendSelectionToStart","backward","ExtendSelectionToEnd","inputEnd","Comma","scrollInput","_this$input","node","getNode","scrollWidth","clientWidth","PAD","SHIFT","selected","position","direction","charsCount","charWidth","frame","Math","ceil","frameStart","scrollLeft","frameEnd","getInputSelectionFromEvent","step","extended","result","safeInsert","unsigned","parsedValue","CurrencyHelper","parse","blink","getOnChangeDelta","oldValue","substring","substr","delta","isNonNullable","data","clipboardData","getData","formatForClipboard","setData","_event$target","selectionStart","selectionEnd","selectionDirection","valueLength","element","_inheritsLoose2","_proto","prototype","componentDidMount","_this$props","maxLength","warning","undefined","MAX_SAFE_DIGITS","componentDidUpdate","prevProps","prevState","_this$getProps","isValidNumber","isNumeric","Number","isNullable","_this$state$selection","setSelectionRange","render","CommonWrapper","rootNodeRef","setRootNode","format","normilized","normalizeSelection","React","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","PropTypes","oneOf","autoFocus","bool","borderless","disabled","error","number","leftIcon","string","size","width","oneOfType","func","isRequired","inputMode","_input$selectionStart","_input$selectionEnd","isInstanceOf","globalObject","HTMLInputElement","Error","isNaN","parseFloat","isFinite"],"sources":["CurrencyInput.tsx"],"sourcesContent":["import React, { AriaAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport warning from 'warning';\nimport debounce from 'lodash.debounce';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isNonNullable, isNullable } from '../../lib/utils';\nimport { isIE11 } from '../../lib/client';\nimport { Input, InputProps } from '../Input';\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\n\nimport { MAX_SAFE_DIGITS } from './constants';\nimport { Selection, SelectionDirection, SelectionHelper } from './SelectionHelper';\nimport { CurrencyHelper } from './CurrencyHelper';\nimport { CurrencyInputHelper } from './CurrencyInputHelper';\nimport { CURRENCY_INPUT_ACTIONS, extractAction } from './CurrencyInputKeyboardActions';\n\nexport interface CurrencyInputProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Override<\n InputProps,\n {\n /** Задает значение инпута. */\n value?: Nullable<number>;\n\n /** Убирает лишние нули после запятой. */\n hideTrailingZeros?: boolean;\n\n /** Устанавливает минимальное количество отображаемых знаков после запятой. */\n fractionDigits?: Nullable<number>;\n\n /** Разрешает отрицательные значения. */\n signed?: boolean;\n\n /** Задает допустимое количество цифр целой части. Если передан **0**, или fractionDigits=15, то и в целой части допускается только **0**. */\n integerDigits?: Nullable<number>;\n\n /** Задает функцию, которая вызывается при изменении `value`. */\n onValueChange: (value: Nullable<number>) => void;\n\n /** Задает функцию, которая вызывается при отправке формы. */\n onSubmit?: () => void;\n }\n > {}\n\nexport interface CurrencyInputState {\n formatted: string;\n selection: Selection;\n focused: boolean;\n}\n\nexport const CurrencyInputDataTids = {\n root: 'CurrencyInput__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<CurrencyInputProps, 'align' | 'fractionDigits' | 'hideTrailingZeros' | 'value' | 'inputMode'>\n>;\n\n/**\n * `CurrencyInput` — поле для денежных сумм (и других числовых значений).\n * Принимает любые свойства `Input`.\n *\n * Используйте такое поле, когда нужно вводить значение в рублях, долларах или другой валюте.\n * Оно форматирует введенное значение и помогает пользователю не ошибиться при вводе.\n *\n * Максимальная длина числа - **15 цифр** (с десятичным разделителем в любом месте).\n *\n * Если `fractionDigits=15`, то в целой части допускается **0**.\n */\n@rootNode\nexport class CurrencyInput extends React.PureComponent<CurrencyInputProps, CurrencyInputState> {\n public static __KONTUR_REACT_UI__ = 'CurrencyInput';\n public static displayName = 'CurrencyInput';\n\n public static propTypes = {\n align: PropTypes.oneOf(['left', 'center', 'right']),\n autoFocus: PropTypes.bool,\n borderless: PropTypes.bool,\n disabled: PropTypes.bool,\n error: PropTypes.bool,\n fractionDigits: PropTypes.number,\n hideTrailingZeros: PropTypes.bool,\n leftIcon: PropTypes.element,\n placeholder: PropTypes.string,\n signed: PropTypes.bool,\n size: PropTypes.oneOf(['small', 'medium', 'large']),\n value: (props: CurrencyInputProps) => {\n warning(isValidNumber(props.value), '[CurrencyInput]: Prop `value` is not a valid number');\n },\n warning: PropTypes.bool,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n onBlur: PropTypes.func,\n onValueChange: PropTypes.func.isRequired,\n onFocus: PropTypes.func,\n onMouseEnter: PropTypes.func,\n onMouseLeave: PropTypes.func,\n onMouseOver: PropTypes.func,\n onSubmit: PropTypes.func,\n };\n\n public static defaultProps: DefaultProps = {\n align: 'right',\n fractionDigits: 2,\n hideTrailingZeros: false,\n value: null,\n inputMode: 'decimal',\n };\n\n private getProps = createPropsGetter(CurrencyInput.defaultProps);\n\n public state: CurrencyInputState = {\n ...this.getState(this.getProps().value, this.getProps().fractionDigits, this.getProps().hideTrailingZeros),\n focused: false,\n };\n\n private input: Nullable<Input>;\n private tempSelectionForOnChange: Selection = SelectionHelper.fromPosition(0);\n private setRootNode!: TSetRootNode;\n\n public componentDidMount(): void {\n const { maxLength, integerDigits } = this.props;\n const fractionDigits = this.getProps().fractionDigits;\n warning(\n maxLength === undefined,\n `[CurrencyInput]: Prop 'maxLength' has been deprecated. See 'integerDigits' and 'fractionDigits'`,\n );\n warning(\n (integerDigits || 0) + (fractionDigits || 0) <= MAX_SAFE_DIGITS,\n `[CurrencyInput]: Sum of 'integerDigits' and 'fractionDigits' exceeds ${MAX_SAFE_DIGITS}.` +\n `\\nSee https://tech.skbkontur.ru/react-ui/#/CurrencyInput?id=why15`,\n );\n }\n\n public componentDidUpdate(prevProps: CurrencyInputProps, prevState: CurrencyInputState) {\n const { value, fractionDigits, hideTrailingZeros } = this.getProps();\n if (\n (isValidNumber(value) && isNumeric(value) && Number(value) !== CurrencyHelper.parse(prevState.formatted)) ||\n prevProps.fractionDigits !== fractionDigits\n ) {\n this.setState(this.getState(value, fractionDigits, hideTrailingZeros));\n }\n if (isNonNullable(prevProps.value) && isNullable(value)) {\n this.setState({ formatted: '' });\n }\n if (this.state.focused && this.input) {\n const { start, end } = this.state.selection;\n\n this.input.setSelectionRange(start, end);\n }\n if (prevState.selection !== this.state.selection) {\n this.scrollInput();\n }\n }\n\n public render() {\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<CurrencyInputProps>) => {\n const { fractionDigits, signed, onSubmit, integerDigits, hideTrailingZeros, ...rest } = props;\n\n return (\n <FocusControlWrapper onBlurWhenDisabled={this.resetFocus}>\n <Input\n data-tid={CurrencyInputDataTids.root}\n {...rest}\n align={this.getProps().align}\n value={this.state.formatted}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onMouseUp={this.handleMouseUp}\n onKeyDown={this.handleKeyDown}\n onValueChange={this.handleValueChange}\n onPaste={this.handlePaste}\n onCopy={this.handleCopy}\n onCut={this.handleCut}\n aria-label={this.props['aria-label']}\n onMouseEnter={this.props.onMouseEnter}\n onMouseLeave={this.props.onMouseLeave}\n onMouseOver={this.props.onMouseOver}\n ref={this.refInput}\n placeholder={this.state.focused ? '' : getPlaceholder(props)}\n />\n </FocusControlWrapper>\n );\n };\n\n /**\n * @public\n */\n public focus = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n /**\n * @public\n */\n public blur = () => {\n if (this.input) {\n this.input.blur();\n }\n };\n\n private getState(value: Nullable<number>, fractionDigits: Nullable<number>, hideTrailingZeros: boolean) {\n return {\n formatted: CurrencyHelper.format(value, { fractionDigits, hideTrailingZeros }),\n selection: SelectionHelper.fromPosition(0),\n };\n }\n\n private setSelectionFromEvent(event: React.MouseEvent<HTMLInputElement>) {\n const selection = getInputSelectionFromEvent(event.target);\n const normilized = CurrencyInputHelper.normalizeSelection(this.state.formatted, selection);\n this.setState({ selection: normilized });\n }\n\n // for IE11\n private readonly debouncedSetSelectionFromEvent = debounce(this.setSelectionFromEvent, 300);\n\n private handleMouseUp = (event: React.MouseEvent<HTMLInputElement>) => {\n if (isIE11) {\n event.persist();\n this.debouncedSetSelectionFromEvent(event);\n } else {\n this.setSelectionFromEvent(event);\n }\n };\n\n private handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n const selection = this.getSelection(event.target);\n this.tempSelectionForOnChange = selection;\n\n if (this.props.onKeyDown) {\n this.props.onKeyDown(event);\n if (event.defaultPrevented) {\n return;\n }\n }\n\n const action = extractAction(event);\n\n if (action === CURRENCY_INPUT_ACTIONS.Ignore) {\n return;\n }\n\n if (action !== CURRENCY_INPUT_ACTIONS.Unknown) {\n event.preventDefault();\n }\n\n switch (action) {\n case CURRENCY_INPUT_ACTIONS.Submit: {\n if (this.props.onSubmit) {\n this.props.onSubmit();\n }\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Backspace: {\n this.inputValue(CurrencyInputHelper.moveCursor(this.state.formatted, selection, -1), selection.end, '');\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Delete: {\n this.inputValue(selection.start, CurrencyInputHelper.moveCursor(this.state.formatted, selection, +1), '');\n return;\n }\n case CURRENCY_INPUT_ACTIONS.MoveCursorLeft: {\n this.moveCursor(selection, -1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.MoveCursorRight: {\n this.moveCursor(selection, +1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Home: {\n this.setState({ selection: SelectionHelper.fromPosition(0) });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.End: {\n const end = this.state.formatted.length;\n this.setState({ selection: SelectionHelper.fromPosition(end) });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionLeft: {\n this.extendSelection(selection, -1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionRight: {\n this.extendSelection(selection, +1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.FullSelection: {\n this.setState({\n selection: SelectionHelper.forward(0, this.state.formatted.length),\n });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionToStart: {\n this.setState({\n selection: SelectionHelper.backward(0, selection.start),\n });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionToEnd: {\n const inputEnd = this.state.formatted.length;\n this.setState({\n selection: SelectionHelper.forward(selection.start, inputEnd),\n });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Comma: {\n this.inputValue(selection.start, selection.end, ',');\n return;\n }\n }\n };\n\n private scrollInput = () => {\n const node = this.input?.getNode();\n if (!node || node.scrollWidth === node.clientWidth) {\n return;\n }\n const PAD = 1;\n const SHIFT = 3;\n\n const selection = this.state.selection;\n const selected = selection.start !== selection.end;\n const position = selected && selection.direction === 'forward' ? selection.end : selection.start;\n const charsCount = this.state.formatted.length;\n const charWidth = node.scrollWidth / charsCount;\n const frame = Math.ceil(node.clientWidth / charWidth);\n const frameStart = Math.ceil(node.scrollLeft / charWidth);\n const frameEnd = frameStart + frame;\n\n if (position < frameStart + PAD) {\n node.scrollLeft = (position - SHIFT) * charWidth;\n }\n if (position > frameEnd - PAD) {\n node.scrollLeft = (position - frame + SHIFT) * charWidth;\n }\n };\n\n private getSelection = (input: EventTarget): Selection => {\n const selection = getInputSelectionFromEvent(input);\n return {\n start: selection.start,\n end: selection.end,\n direction: this.state.selection.direction,\n };\n };\n\n private moveCursor = (selection: Selection, step: number) => {\n const position = CurrencyInputHelper.moveCursor(this.state.formatted, selection, step);\n this.setState({ selection: SelectionHelper.fromPosition(position) });\n };\n\n private extendSelection = (selection: Selection, step: number) => {\n const extended = CurrencyInputHelper.extendSelection(this.state.formatted, selection, step);\n this.setState({ selection: extended });\n };\n\n private inputValue = (start: number, end: number, value: string) => {\n const result = CurrencyInputHelper.safeInsert(this.state.formatted, start, end, value, {\n integerDigits: this.props.integerDigits,\n fractionDigits: this.getProps().fractionDigits,\n unsigned: !this.props.signed,\n });\n if (result) {\n const formatted = result.value;\n const selection = SelectionHelper.fromPosition(result.position);\n this.setState({ formatted, selection }, () => {\n const parsedValue = CurrencyHelper.parse(formatted);\n if (this.props.value !== parsedValue) {\n this.props.onValueChange(parsedValue);\n }\n });\n return true;\n }\n\n if (this.input) {\n this.input.blink();\n }\n return false;\n };\n\n private getOnChangeDelta = (value: string) => {\n const selection = this.tempSelectionForOnChange;\n const oldValue = this.state.formatted;\n if (selection.start !== selection.end) {\n return value.substring(selection.start, value.length - (oldValue.length - selection.end));\n } else if (value.length > oldValue.length) {\n return value.substr(selection.start, value.length - oldValue.length);\n }\n return null;\n };\n\n private handleValueChange = (value: string): void => {\n const selection = this.tempSelectionForOnChange;\n const delta = this.getOnChangeDelta(value);\n if (isNonNullable(delta) && !this.inputValue(selection.start, selection.end, delta)) {\n this.setState({ selection });\n }\n };\n\n private handlePaste = (event: React.ClipboardEvent<HTMLInputElement>) => {\n const data = event.clipboardData.getData('text');\n const selection = this.getSelection(event.target);\n this.inputValue(selection.start, selection.end, data);\n event.preventDefault();\n };\n\n private handleCopy = (event: React.ClipboardEvent<HTMLInputElement>) => {\n const selection = this.getSelection(event.target);\n if (selection.start !== selection.end) {\n const substring = this.state.formatted.substring(selection.start, selection.end);\n const data = CurrencyHelper.formatForClipboard(substring);\n event.clipboardData.setData('text', data);\n }\n event.preventDefault();\n };\n\n private handleCut = (event: React.ClipboardEvent<HTMLInputElement>) => {\n const selection = this.getSelection(event.target);\n if (selection.start !== selection.end) {\n const substring = this.state.formatted.substring(selection.start, selection.end);\n const data = CurrencyHelper.formatForClipboard(substring);\n event.clipboardData.setData('text', data);\n this.inputValue(selection.start, selection.end, '');\n }\n event.preventDefault();\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n const { selectionStart, selectionEnd, selectionDirection } = event.target;\n const valueLength = event.target.value.length;\n\n const selection = {\n start: selectionStart !== selectionEnd ? selectionStart || 0 : selectionStart || valueLength,\n end: selectionEnd !== selectionStart ? selectionEnd || 0 : selectionEnd || valueLength,\n direction: (selectionDirection as SelectionDirection) || 'none',\n };\n\n this.setState({\n focused: true,\n selection,\n });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private resetFocus = () => {\n const value = CurrencyHelper.parse(this.state.formatted);\n\n this.setState({\n ...this.getState(value, this.getProps().fractionDigits, this.getProps().hideTrailingZeros),\n focused: false,\n });\n };\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n this.resetFocus();\n this.props.onBlur?.(event);\n };\n\n private refInput = (element: Nullable<Input>) => {\n this.input = element;\n };\n}\n\nfunction getInputSelectionFromEvent(input: EventTarget): Selection {\n if (!isInstanceOf(input, globalObject.HTMLInputElement)) {\n throw new Error('input is not HTMLInputElement');\n }\n\n return {\n start: input.selectionStart ?? 0,\n end: input.selectionEnd ?? 0,\n direction: input.selectionDirection as SelectionDirection,\n };\n}\n\nfunction isNumeric(value: unknown): value is number | string {\n return !isNaN(parseFloat(value as string)) && isFinite(value as number);\n}\n\nfunction isValidNumber(value: unknown): boolean {\n return !isNaN(Number(value));\n}\n\nconst getPlaceholder = (props: CurrencyInputProps) => {\n if (isNullable(props.placeholder)) {\n return CurrencyHelper.format(0, {\n fractionDigits: props.fractionDigits,\n hideTrailingZeros: props.hideTrailingZeros,\n });\n }\n\n return props.placeholder;\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
### Базовый пример
|
|
1
2
|
```jsx harmony
|
|
2
3
|
const [value, setValue] = React.useState();
|
|
3
4
|
|
|
4
5
|
<CurrencyInput value={value} fractionDigits={3} onValueChange={setValue} />
|
|
5
6
|
```
|
|
6
7
|
|
|
8
|
+
### Очистка значения
|
|
7
9
|
Очистить значение в `CurrencyInput` можно с помощью `null` или `undefined`
|
|
8
10
|
```jsx harmony
|
|
9
11
|
import { Button, Group } from '@skbkontur/react-ui';
|
|
@@ -17,7 +19,7 @@ const [value, setValue] = React.useState();
|
|
|
17
19
|
</Group>
|
|
18
20
|
```
|
|
19
21
|
|
|
20
|
-
|
|
22
|
+
### fractionDigits={15}
|
|
21
23
|
|
|
22
24
|
```jsx harmony
|
|
23
25
|
const [value, setValue] = React.useState();
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { Nullable } from '../../typings/utility-types';
|
|
2
2
|
import { Selection } from './SelectionHelper';
|
|
3
3
|
export interface DecimalOptions {
|
|
4
|
+
/** Задает допустимое количество цифр целой части. Если передан 0, или fractionDigits=15, то и в целой части допускается только 0. */
|
|
4
5
|
integerDigits?: Nullable<number>;
|
|
6
|
+
/** Устанавливает минимальное количество отображаемых знаков после запятой. */
|
|
5
7
|
fractionDigits?: Nullable<number>;
|
|
8
|
+
/** Определяет, является ли число беззнаковым. */
|
|
6
9
|
unsigned?: boolean;
|
|
7
10
|
}
|
|
8
11
|
export declare class CurrencyInputHelper {
|
|
@@ -10,6 +10,11 @@ var _CursorHelper = require("./CursorHelper");var
|
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
13
18
|
CurrencyInputHelper = exports.CurrencyInputHelper = /*#__PURE__*/function () {function CurrencyInputHelper() {}CurrencyInputHelper.
|
|
14
19
|
moveCursor = function moveCursor(value, selection, step) {
|
|
15
20
|
if (selection.start === selection.end) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_CurrencyHelper","require","_CursorHelper","CurrencyInputHelper","exports","moveCursor","value","selection","step","start","end","CursorHelper","calculatePosition","CurrencyHelper","getInfo","cursorMap","extendSelection","info","normalizeSelection","safeInsert","input","options","length","extracted","extractValid","insert","prefix","substring","suffix","combined","isValidString","raw","toRawPosition","info2","formattedPosition","toFormattedPosition","formatted","position"],"sources":["CurrencyInputHelper.tsx"],"sourcesContent":["import { Nullable } from '../../typings/utility-types';\n\nimport { Selection } from './SelectionHelper';\nimport { CurrencyHelper } from './CurrencyHelper';\nimport { CursorHelper } from './CursorHelper';\n\nexport interface DecimalOptions {\n integerDigits?: Nullable<number>;\n fractionDigits?: Nullable<number>;\n unsigned?: boolean;\n}\n\nexport class CurrencyInputHelper {\n public static moveCursor(value: string, selection: Selection, step: number): number {\n if (selection.start === selection.end) {\n return CursorHelper.calculatePosition(CurrencyHelper.getInfo(value).cursorMap, selection.start, step);\n } else if (step < 0) {\n return selection.start;\n }\n\n return selection.end;\n }\n\n public static extendSelection(value: string, selection: Selection, step: number) {\n const info = CurrencyHelper.getInfo(value);\n return CursorHelper.extendSelection(info.cursorMap, selection, step);\n }\n\n public static normalizeSelection(value: string, selection: Selection): Selection {\n const info = CurrencyHelper.getInfo(value);\n return CursorHelper.normalizeSelection(info.cursorMap, selection);\n }\n\n public static safeInsert(value: string, start: number, end: number, input: string, options: DecimalOptions) {\n if (input && start === 0 && end === value.length) {\n const extracted = CurrencyHelper.extractValid(input, options);\n if (!extracted) {\n return null;\n }\n return CurrencyInputHelper.insert(value, start, end, extracted);\n }\n\n const prefix = value.substring(0, start);\n const suffix = value.substring(end);\n\n const combined = prefix + input + suffix;\n if (CurrencyHelper.isValidString(combined, options)) {\n return CurrencyInputHelper.insert(value, start, end, input);\n }\n return null;\n }\n\n public static insert(value: string, start: number, end: number, input: string) {\n const prefix = value.substring(0, start);\n const suffix = value.substring(end);\n\n const info = CurrencyHelper.getInfo(value);\n const raw = CursorHelper.toRawPosition(info.cursorMap, start);\n const info2 = CurrencyHelper.getInfo(prefix + input + suffix);\n const formattedPosition = CursorHelper.toFormattedPosition(info2.cursorMap, raw + input.length);\n\n return { value: info2.formatted, position: formattedPosition };\n }\n}\n"],"mappings":";;;AAGA,IAAAA,eAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA,mBAA8C
|
|
1
|
+
{"version":3,"names":["_CurrencyHelper","require","_CursorHelper","CurrencyInputHelper","exports","moveCursor","value","selection","step","start","end","CursorHelper","calculatePosition","CurrencyHelper","getInfo","cursorMap","extendSelection","info","normalizeSelection","safeInsert","input","options","length","extracted","extractValid","insert","prefix","substring","suffix","combined","isValidString","raw","toRawPosition","info2","formattedPosition","toFormattedPosition","formatted","position"],"sources":["CurrencyInputHelper.tsx"],"sourcesContent":["import { Nullable } from '../../typings/utility-types';\n\nimport { Selection } from './SelectionHelper';\nimport { CurrencyHelper } from './CurrencyHelper';\nimport { CursorHelper } from './CursorHelper';\n\nexport interface DecimalOptions {\n /** Задает допустимое количество цифр целой части. Если передан 0, или fractionDigits=15, то и в целой части допускается только 0. */\n integerDigits?: Nullable<number>;\n\n /** Устанавливает минимальное количество отображаемых знаков после запятой. */\n fractionDigits?: Nullable<number>;\n\n /** Определяет, является ли число беззнаковым. */\n unsigned?: boolean;\n}\n\nexport class CurrencyInputHelper {\n public static moveCursor(value: string, selection: Selection, step: number): number {\n if (selection.start === selection.end) {\n return CursorHelper.calculatePosition(CurrencyHelper.getInfo(value).cursorMap, selection.start, step);\n } else if (step < 0) {\n return selection.start;\n }\n\n return selection.end;\n }\n\n public static extendSelection(value: string, selection: Selection, step: number) {\n const info = CurrencyHelper.getInfo(value);\n return CursorHelper.extendSelection(info.cursorMap, selection, step);\n }\n\n public static normalizeSelection(value: string, selection: Selection): Selection {\n const info = CurrencyHelper.getInfo(value);\n return CursorHelper.normalizeSelection(info.cursorMap, selection);\n }\n\n public static safeInsert(value: string, start: number, end: number, input: string, options: DecimalOptions) {\n if (input && start === 0 && end === value.length) {\n const extracted = CurrencyHelper.extractValid(input, options);\n if (!extracted) {\n return null;\n }\n return CurrencyInputHelper.insert(value, start, end, extracted);\n }\n\n const prefix = value.substring(0, start);\n const suffix = value.substring(end);\n\n const combined = prefix + input + suffix;\n if (CurrencyHelper.isValidString(combined, options)) {\n return CurrencyInputHelper.insert(value, start, end, input);\n }\n return null;\n }\n\n public static insert(value: string, start: number, end: number, input: string) {\n const prefix = value.substring(0, start);\n const suffix = value.substring(end);\n\n const info = CurrencyHelper.getInfo(value);\n const raw = CursorHelper.toRawPosition(info.cursorMap, start);\n const info2 = CurrencyHelper.getInfo(prefix + input + suffix);\n const formattedPosition = CursorHelper.toFormattedPosition(info2.cursorMap, raw + input.length);\n\n return { value: info2.formatted, position: formattedPosition };\n }\n}\n"],"mappings":";;;AAGA,IAAAA,eAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA,mBAA8C;;;;;;;;;;;;;AAajCE,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,sCAAAA,oBAAA,IAAAA,mBAAA;EAChBE,UAAU,GAAxB,SAAAA,WAAyBC,KAAa,EAAEC,SAAoB,EAAEC,IAAY,EAAU;IAClF,IAAID,SAAS,CAACE,KAAK,KAAKF,SAAS,CAACG,GAAG,EAAE;MACrC,OAAOC,0BAAY,CAACC,iBAAiB,CAACC,8BAAc,CAACC,OAAO,CAACR,KAAK,CAAC,CAACS,SAAS,EAAER,SAAS,CAACE,KAAK,EAAED,IAAI,CAAC;IACvG,CAAC,MAAM,IAAIA,IAAI,GAAG,CAAC,EAAE;MACnB,OAAOD,SAAS,CAACE,KAAK;IACxB;;IAEA,OAAOF,SAAS,CAACG,GAAG;EACtB,CAAC,CAAAP,mBAAA;;EAEaa,eAAe,GAA7B,SAAAA,gBAA8BV,KAAa,EAAEC,SAAoB,EAAEC,IAAY,EAAE;IAC/E,IAAMS,IAAI,GAAGJ,8BAAc,CAACC,OAAO,CAACR,KAAK,CAAC;IAC1C,OAAOK,0BAAY,CAACK,eAAe,CAACC,IAAI,CAACF,SAAS,EAAER,SAAS,EAAEC,IAAI,CAAC;EACtE,CAAC,CAAAL,mBAAA;;EAEae,kBAAkB,GAAhC,SAAAA,mBAAiCZ,KAAa,EAAEC,SAAoB,EAAa;IAC/E,IAAMU,IAAI,GAAGJ,8BAAc,CAACC,OAAO,CAACR,KAAK,CAAC;IAC1C,OAAOK,0BAAY,CAACO,kBAAkB,CAACD,IAAI,CAACF,SAAS,EAAER,SAAS,CAAC;EACnE,CAAC,CAAAJ,mBAAA;;EAEagB,UAAU,GAAxB,SAAAA,WAAyBb,KAAa,EAAEG,KAAa,EAAEC,GAAW,EAAEU,KAAa,EAAEC,OAAuB,EAAE;IAC1G,IAAID,KAAK,IAAIX,KAAK,KAAK,CAAC,IAAIC,GAAG,KAAKJ,KAAK,CAACgB,MAAM,EAAE;MAChD,IAAMC,SAAS,GAAGV,8BAAc,CAACW,YAAY,CAACJ,KAAK,EAAEC,OAAO,CAAC;MAC7D,IAAI,CAACE,SAAS,EAAE;QACd,OAAO,IAAI;MACb;MACA,OAAOpB,mBAAmB,CAACsB,MAAM,CAACnB,KAAK,EAAEG,KAAK,EAAEC,GAAG,EAAEa,SAAS,CAAC;IACjE;;IAEA,IAAMG,MAAM,GAAGpB,KAAK,CAACqB,SAAS,CAAC,CAAC,EAAElB,KAAK,CAAC;IACxC,IAAMmB,MAAM,GAAGtB,KAAK,CAACqB,SAAS,CAACjB,GAAG,CAAC;;IAEnC,IAAMmB,QAAQ,GAAGH,MAAM,GAAGN,KAAK,GAAGQ,MAAM;IACxC,IAAIf,8BAAc,CAACiB,aAAa,CAACD,QAAQ,EAAER,OAAO,CAAC,EAAE;MACnD,OAAOlB,mBAAmB,CAACsB,MAAM,CAACnB,KAAK,EAAEG,KAAK,EAAEC,GAAG,EAAEU,KAAK,CAAC;IAC7D;IACA,OAAO,IAAI;EACb,CAAC,CAAAjB,mBAAA;;EAEasB,MAAM,GAApB,SAAAA,OAAqBnB,KAAa,EAAEG,KAAa,EAAEC,GAAW,EAAEU,KAAa,EAAE;IAC7E,IAAMM,MAAM,GAAGpB,KAAK,CAACqB,SAAS,CAAC,CAAC,EAAElB,KAAK,CAAC;IACxC,IAAMmB,MAAM,GAAGtB,KAAK,CAACqB,SAAS,CAACjB,GAAG,CAAC;;IAEnC,IAAMO,IAAI,GAAGJ,8BAAc,CAACC,OAAO,CAACR,KAAK,CAAC;IAC1C,IAAMyB,GAAG,GAAGpB,0BAAY,CAACqB,aAAa,CAACf,IAAI,CAACF,SAAS,EAAEN,KAAK,CAAC;IAC7D,IAAMwB,KAAK,GAAGpB,8BAAc,CAACC,OAAO,CAACY,MAAM,GAAGN,KAAK,GAAGQ,MAAM,CAAC;IAC7D,IAAMM,iBAAiB,GAAGvB,0BAAY,CAACwB,mBAAmB,CAACF,KAAK,CAAClB,SAAS,EAAEgB,GAAG,GAAGX,KAAK,CAACE,MAAM,CAAC;;IAE/F,OAAO,EAAEhB,KAAK,EAAE2B,KAAK,CAACG,SAAS,EAAEC,QAAQ,EAAEH,iBAAiB,CAAC,CAAC;EAChE,CAAC,QAAA/B,mBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import * as CurrencyInputStories from './CurrencyInput.docs.stories.tsx';
|
|
2
|
+
import { Primary, ArgTypes, Stories, Description } from '@storybook/blocks';
|
|
3
|
+
import { Meta } from '../../../.storybook/Meta';
|
|
4
|
+
|
|
5
|
+
<Meta of={CurrencyInputStories} />
|
|
6
|
+
|
|
7
|
+
# CurrencyInput
|
|
8
|
+
|
|
9
|
+
[Компонент в Контур.Гайдах](https://guides.kontur.ru/components/input-fields/currency/)
|
|
10
|
+
|
|
11
|
+
[Компонент в Figma](https://www.figma.com/file/87ScqxPzJpF9DcVBNYWOjM/%E2%9A%A1-Kontur-UI-Modern-Layout?node-id=203%3A1602)
|
|
12
|
+
|
|
13
|
+
<Description />
|
|
14
|
+
|
|
15
|
+
## Базовый пример
|
|
16
|
+
|
|
17
|
+
<Primary />
|
|
18
|
+
|
|
19
|
+
## Пропы
|
|
20
|
+
|
|
21
|
+
<details>
|
|
22
|
+
<summary>Открыть таблицу с пропами</summary>
|
|
23
|
+
<ArgTypes />
|
|
24
|
+
</details>
|
|
25
|
+
|
|
26
|
+
## Примеры использования
|
|
27
|
+
|
|
28
|
+
<Stories title="" includePrimary={false} />
|
|
@@ -1,19 +1,22 @@
|
|
|
1
1
|
import React, { HTMLAttributes } from 'react';
|
|
2
2
|
import { CommonProps } from '../../internal/CommonWrapper';
|
|
3
3
|
export interface CurrencyLabelProps extends CommonProps, Pick<HTMLAttributes<HTMLElement>, 'id'> {
|
|
4
|
-
/**
|
|
5
|
-
*
|
|
6
|
-
* @default 2
|
|
7
|
-
*/
|
|
4
|
+
/** Устанавливает минимальное количество отображаемых знаков после запятой.
|
|
5
|
+
* @default 2 */
|
|
8
6
|
fractionDigits?: number;
|
|
7
|
+
/** Устанавливает значение. */
|
|
9
8
|
value: number;
|
|
9
|
+
/** Задает символ валюты. */
|
|
10
10
|
currencySymbol?: React.ReactNode;
|
|
11
|
-
/**
|
|
11
|
+
/** Убирает лишние нули после запятой. */
|
|
12
12
|
hideTrailingZeros?: boolean;
|
|
13
13
|
}
|
|
14
14
|
export declare const CurrencyLabelDataTids: {
|
|
15
15
|
readonly root: "CurrencyLabel__root";
|
|
16
16
|
};
|
|
17
|
+
/**
|
|
18
|
+
* `CurrencyLabel` — подпись для денежных сумм (и других числовых значений).
|
|
19
|
+
*/
|
|
17
20
|
export declare const CurrencyLabel: {
|
|
18
21
|
({ id, value, fractionDigits, currencySymbol, hideTrailingZeros, ...rest }: CurrencyLabelProps): JSX.Element;
|
|
19
22
|
__KONTUR_REACT_UI__: string;
|
|
@@ -16,12 +16,18 @@ var _CommonWrapper = require("../../internal/CommonWrapper");var _excluded = ["i
|
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
19
22
|
var FRACTION_DIGITS_DEFAULT = 2;
|
|
20
23
|
|
|
21
24
|
var CurrencyLabelDataTids = exports.CurrencyLabelDataTids = {
|
|
22
25
|
root: 'CurrencyLabel__root'
|
|
23
26
|
};
|
|
24
27
|
|
|
28
|
+
/**
|
|
29
|
+
* `CurrencyLabel` — подпись для денежных сумм (и других числовых значений).
|
|
30
|
+
*/
|
|
25
31
|
var CurrencyLabel = exports.CurrencyLabel = function CurrencyLabel(_ref)
|
|
26
32
|
|
|
27
33
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_constants","_CurrencyHelper","_CommonWrapper","_excluded","FRACTION_DIGITS_DEFAULT","CurrencyLabelDataTids","exports","root","CurrencyLabel","_ref","id","value","_ref$fractionDigits","fractionDigits","currencySymbol","_ref$hideTrailingZero","hideTrailingZeros","rest","_objectWithoutPropertiesLoose2","default","createElement","CommonWrapper","CurrencyHelper","format","String","fromCharCode","__KONTUR_REACT_UI__","displayName","propTypes","_ref2","_ref2$fractionDigits","MAX_SAFE_DIGITS","Error","_ref3","destructString","fraction","length","Number","isInteger"],"sources":["CurrencyLabel.tsx"],"sourcesContent":["import React, { HTMLAttributes } from 'react';\n\nimport { MAX_SAFE_DIGITS } from '../CurrencyInput/constants';\nimport { CurrencyHelper } from '../CurrencyInput/CurrencyHelper';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\n\nexport interface CurrencyLabelProps extends CommonProps, Pick<HTMLAttributes<HTMLElement>, 'id'> {\n
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_constants","_CurrencyHelper","_CommonWrapper","_excluded","FRACTION_DIGITS_DEFAULT","CurrencyLabelDataTids","exports","root","CurrencyLabel","_ref","id","value","_ref$fractionDigits","fractionDigits","currencySymbol","_ref$hideTrailingZero","hideTrailingZeros","rest","_objectWithoutPropertiesLoose2","default","createElement","CommonWrapper","CurrencyHelper","format","String","fromCharCode","__KONTUR_REACT_UI__","displayName","propTypes","_ref2","_ref2$fractionDigits","MAX_SAFE_DIGITS","Error","_ref3","destructString","fraction","length","Number","isInteger"],"sources":["CurrencyLabel.tsx"],"sourcesContent":["import React, { HTMLAttributes } from 'react';\n\nimport { MAX_SAFE_DIGITS } from '../CurrencyInput/constants';\nimport { CurrencyHelper } from '../CurrencyInput/CurrencyHelper';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\n\nexport interface CurrencyLabelProps extends CommonProps, Pick<HTMLAttributes<HTMLElement>, 'id'> {\n /** Устанавливает минимальное количество отображаемых знаков после запятой.\n * @default 2 */\n fractionDigits?: number;\n\n /** Устанавливает значение. */\n value: number;\n\n /** Задает символ валюты. */\n currencySymbol?: React.ReactNode;\n\n /** Убирает лишние нули после запятой. */\n hideTrailingZeros?: boolean;\n}\n\nconst FRACTION_DIGITS_DEFAULT = 2;\n\nexport const CurrencyLabelDataTids = {\n root: 'CurrencyLabel__root',\n} as const;\n\n/**\n * `CurrencyLabel` — подпись для денежных сумм (и других числовых значений).\n */\nexport const CurrencyLabel = ({\n id,\n value,\n fractionDigits = FRACTION_DIGITS_DEFAULT,\n currencySymbol,\n hideTrailingZeros = false,\n ...rest\n}: CurrencyLabelProps): JSX.Element => {\n return (\n <CommonWrapper {...rest}>\n <span id={id} data-tid={CurrencyLabelDataTids.root}>\n {CurrencyHelper.format(value, { fractionDigits, hideTrailingZeros })}\n {currencySymbol && String.fromCharCode(0xa0) /* */}\n {currencySymbol}\n </span>\n </CommonWrapper>\n );\n};\n\nCurrencyLabel.__KONTUR_REACT_UI__ = 'CurrencyLabel';\nCurrencyLabel.displayName = 'CurrencyLabel';\n\nCurrencyLabel.propTypes = {\n fractionDigits: ({ fractionDigits = FRACTION_DIGITS_DEFAULT, value }: CurrencyLabelProps) => {\n if (fractionDigits > MAX_SAFE_DIGITS) {\n return new Error(\n `[CurrencyLabel]: Prop 'fractionDigits' exceeds ${MAX_SAFE_DIGITS}.` +\n `\\nSee https://tech.skbkontur.ru/react-ui/#/CurrencyInput?id=why15`,\n );\n }\n\n const { fraction } = CurrencyHelper.destructString(String(value)) || { fraction: '' };\n if (fraction.length > fractionDigits) {\n return new Error(\n `[CurrencyLabel]: Prop 'fractionDigits' less than fractional part of the 'value' property,` +\n `'value' will not be cutted`,\n );\n }\n\n if (!Number.isInteger(fractionDigits)) {\n return new Error(\n `[CurrencyLabel]: Prop 'fractionDigits' is not integer, fraction part of these property will not be used`,\n );\n }\n\n return null;\n },\n};\n"],"mappings":"+TAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;;AAEA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA,iCAA0E,IAAAI,SAAA;;;;;;;;;;;;;;;;;AAiB1E,IAAMC,uBAAuB,GAAG,CAAC;;AAE1B,IAAMC,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA,GAAG;EACnCE,IAAI,EAAE;AACR,CAAU;;AAEV;AACA;AACA;AACO,IAAMC,aAAa,GAAAF,OAAA,CAAAE,aAAA,GAAG,SAAhBA,aAAaA,CAAAC,IAAA;;;;;;;AAOa,KANrCC,EAAE,GAAAD,IAAA,CAAFC,EAAE,CACFC,KAAK,GAAAF,IAAA,CAALE,KAAK,CAAAC,mBAAA,GAAAH,IAAA,CACLI,cAAc,CAAdA,cAAc,GAAAD,mBAAA,cAAGR,uBAAuB,GAAAQ,mBAAA,CACxCE,cAAc,GAAAL,IAAA,CAAdK,cAAc,CAAAC,qBAAA,GAAAN,IAAA,CACdO,iBAAiB,CAAjBA,iBAAiB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA,CACtBE,IAAI,OAAAC,8BAAA,CAAAC,OAAA,EAAAV,IAAA,EAAAN,SAAA;EAEP;IACEN,MAAA,CAAAsB,OAAA,CAAAC,aAAA,CAAClB,cAAA,CAAAmB,aAAa,EAAKJ,IAAI;IACrBpB,MAAA,CAAAsB,OAAA,CAAAC,aAAA,WAAMV,EAAE,EAAEA,EAAG,EAAC,YAAUL,qBAAqB,CAACE,IAAK;IAChDe,8BAAc,CAACC,MAAM,CAACZ,KAAK,EAAE,EAAEE,cAAc,EAAdA,cAAc,EAAEG,iBAAiB,EAAjBA,iBAAiB,CAAC,CAAC,CAAC;IACnEF,cAAc,IAAIU,MAAM,CAACC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5CX;IACG;IACO,CAAC;;AAEpB,CAAC;;AAEDN,aAAa,CAACkB,mBAAmB,GAAG,eAAe;AACnDlB,aAAa,CAACmB,WAAW,GAAG,eAAe;;AAE3CnB,aAAa,CAACoB,SAAS,GAAG;EACxBf,cAAc,EAAE,SAAAA,eAAAgB,KAAA,EAA6E,KAAAC,oBAAA,GAAAD,KAAA,CAA1EhB,cAAc,CAAdA,eAAc,GAAAiB,oBAAA,cAAG1B,uBAAuB,GAAA0B,oBAAA,CAAEnB,KAAK,GAAAkB,KAAA,CAALlB,KAAK;IAChE,IAAIE,eAAc,GAAGkB,0BAAe,EAAE;MACpC,OAAO,IAAIC,KAAK;QACd,oDAAkDD,0BAAe;;MAEnE,CAAC;IACH;;IAEA,IAAAE,KAAA,GAAqBX,8BAAc,CAACY,cAAc,CAACV,MAAM,CAACb,KAAK,CAAC,CAAC,IAAI,EAAEwB,QAAQ,EAAE,EAAE,CAAC,CAAC,CAA7EA,QAAQ,GAAAF,KAAA,CAARE,QAAQ;IAChB,IAAIA,QAAQ,CAACC,MAAM,GAAGvB,eAAc,EAAE;MACpC,OAAO,IAAImB,KAAK;QACd;;MAEF,CAAC;IACH;;IAEA,IAAI,CAACK,MAAM,CAACC,SAAS,CAACzB,eAAc,CAAC,EAAE;MACrC,OAAO,IAAImB,KAAK;;MAEhB,CAAC;IACH;;IAEA,OAAO,IAAI;EACb;AACF,CAAC","ignoreList":[]}
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
To render rubles
|
|
1
|
+
### To render rubles
|
|
2
2
|
|
|
3
3
|
```jsx
|
|
4
4
|
<CurrencyLabel value={12356.1} currencySymbol={'₽'} />
|
|
5
5
|
```
|
|
6
6
|
|
|
7
|
-
...or dollars
|
|
7
|
+
### ...or dollars
|
|
8
8
|
|
|
9
9
|
```jsx
|
|
10
10
|
<CurrencyLabel value={12356.1} currencySymbol={'$'} />
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
...or nothing
|
|
13
|
+
### ...or nothing
|
|
14
14
|
|
|
15
15
|
```jsx
|
|
16
16
|
<CurrencyLabel value={12356.1} />
|
|
17
17
|
```
|
|
18
18
|
|
|
19
|
-
Count of fraction digits can be changed
|
|
19
|
+
### Count of fraction digits can be changed
|
|
20
20
|
|
|
21
21
|
```jsx
|
|
22
22
|
<CurrencyLabel value={3562001.1} fractionDigits={3} currencySymbol={'₽'} />
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
-
Can hide trailing zeros
|
|
25
|
+
### Can hide trailing zeros
|
|
26
26
|
|
|
27
27
|
```jsx
|
|
28
28
|
<CurrencyLabel value={356.167} fractionDigits={5} hideTrailingZeros />
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import * as CurrencyLabelStories from './CurrencyLabel.docs.stories.tsx';
|
|
2
|
+
import { Primary, ArgTypes, Stories, Description } from '@storybook/blocks';
|
|
3
|
+
import { Meta } from '../../../.storybook/Meta';
|
|
4
|
+
|
|
5
|
+
<Meta of={CurrencyLabelStories} />
|
|
6
|
+
|
|
7
|
+
# CurrencyLabel
|
|
8
|
+
|
|
9
|
+
<Description />
|
|
10
|
+
|
|
11
|
+
## Базовый пример
|
|
12
|
+
|
|
13
|
+
<Primary />
|
|
14
|
+
|
|
15
|
+
## Пропы
|
|
16
|
+
|
|
17
|
+
<details>
|
|
18
|
+
<summary>Открыть таблицу с пропами</summary>
|
|
19
|
+
<ArgTypes />
|
|
20
|
+
</details>
|
|
21
|
+
|
|
22
|
+
## Примеры использования
|
|
23
|
+
|
|
24
|
+
<Stories title="" includePrimary={false} />
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { HTMLAttributes } from 'react';
|
|
1
|
+
import React, { AriaAttributes, HTMLAttributes } from 'react';
|
|
2
2
|
import { InternalDateComponentType } from '../../lib/date/types';
|
|
3
3
|
import { CommonProps } from '../../internal/CommonWrapper';
|
|
4
4
|
import { SizeProp } from '../../lib/types/props';
|
|
@@ -12,51 +12,43 @@ export interface DateInputState {
|
|
|
12
12
|
export declare const DateInputDataTids: {
|
|
13
13
|
readonly icon: "DateInput__icon";
|
|
14
14
|
};
|
|
15
|
-
export interface DateInputProps extends CommonProps, Pick<HTMLAttributes<HTMLElement>, 'id'> {
|
|
15
|
+
export interface DateInputProps extends CommonProps, Pick<AriaAttributes, 'aria-describedby' | 'aria-label' | 'aria-labelledby'>, Pick<HTMLAttributes<HTMLElement>, 'id'> {
|
|
16
|
+
/** Устанавливает фокус на контроле после окончания загрузки страницы. */
|
|
16
17
|
autoFocus?: boolean;
|
|
18
|
+
/** Устанавливает значение датаинпута. */
|
|
17
19
|
value?: string;
|
|
18
|
-
/**
|
|
19
|
-
* Состояние валидации при ошибке.
|
|
20
|
-
*/
|
|
20
|
+
/** Переводит контрол в состояние валидации "ошибка". */
|
|
21
21
|
error?: boolean;
|
|
22
|
-
/**
|
|
23
|
-
* Состояние валидации при предупреждении.
|
|
24
|
-
*/
|
|
22
|
+
/** Переводит контрол в состояние валидации "предупреждение". */
|
|
25
23
|
warning?: boolean;
|
|
24
|
+
/** Делает компонент недоступным. */
|
|
26
25
|
disabled?: boolean;
|
|
27
|
-
/**
|
|
28
|
-
* Минимальная дата.
|
|
29
|
-
* @default '01.01.1900'
|
|
30
|
-
*/
|
|
26
|
+
/** Задает минимальную возможную дату в формате `dd.mm.yyyy`. */
|
|
31
27
|
minDate?: string;
|
|
32
|
-
/**
|
|
33
|
-
* Максимальная дата
|
|
34
|
-
* @default '31.12.2099'
|
|
35
|
-
*/
|
|
28
|
+
/** Задает максимальную возможную дату в формате `dd.mm.yyyy` */
|
|
36
29
|
maxDate?: string;
|
|
37
|
-
/**
|
|
38
|
-
* Ширина поля
|
|
39
|
-
* @default 125
|
|
40
|
-
*/
|
|
30
|
+
/** Задает ширину поля. */
|
|
41
31
|
width?: string | number;
|
|
32
|
+
/** Добавляет иконку календаря. */
|
|
42
33
|
withIcon?: boolean;
|
|
43
|
-
/**
|
|
44
|
-
* Размер поля
|
|
45
|
-
* @default 'small'
|
|
46
|
-
*/
|
|
34
|
+
/** Задает размер поля. */
|
|
47
35
|
size?: SizeProp;
|
|
36
|
+
/** Задает функцию, которая вызывается при потере датаинпутом фокуса. */
|
|
48
37
|
onBlur?: (x0: React.FocusEvent<HTMLElement>) => void;
|
|
38
|
+
/** Задает функцию, которая вызывается при клике на датаинпут. */
|
|
49
39
|
onClick?: (x0: React.MouseEvent<HTMLElement>) => void;
|
|
40
|
+
/** Задает функцию, которая вызывается при получении датаинпутом фокуса. */
|
|
50
41
|
onFocus?: (x0: React.FocusEvent<HTMLElement>) => void;
|
|
51
|
-
/**
|
|
52
|
-
*
|
|
53
|
-
*
|
|
54
|
-
* @param value - строка в формате `dd.mm.yyyy`.
|
|
55
|
-
*/
|
|
42
|
+
/** Задает функцию, которая вызывается при изменении value.
|
|
43
|
+
* @param value - строка в формате `dd.mm.yyyy`. */
|
|
56
44
|
onValueChange?: (value: string) => void;
|
|
45
|
+
/** Задает функцию, которая вызывается при нажатии кнопки на клавиатуре. */
|
|
57
46
|
onKeyDown?: (x0: React.KeyboardEvent<HTMLElement>) => void;
|
|
58
47
|
}
|
|
59
48
|
type DefaultProps = Required<Pick<DateInputProps, 'value' | 'minDate' | 'maxDate' | 'size' | 'width'>>;
|
|
49
|
+
/**
|
|
50
|
+
* Компонент поля `DateInput` из DatePicker'а помогает выбирать дату с клавиатуры.
|
|
51
|
+
*/
|
|
60
52
|
export declare class DateInput extends React.Component<DateInputProps, DateInputState> {
|
|
61
53
|
static __KONTUR_REACT_UI__: string;
|
|
62
54
|
static displayName: string;
|
|
@@ -33,7 +33,7 @@ var _InternalDateMediator = require("./helpers/InternalDateMediator");var _dec,
|
|
|
33
33
|
|
|
34
34
|
var DateInputDataTids = exports.DateInputDataTids = {
|
|
35
35
|
icon: 'DateInput__icon'
|
|
36
|
-
};
|
|
36
|
+
};
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
|
|
@@ -82,6 +82,15 @@ var DateInputDataTids = exports.DateInputDataTids = {
|
|
|
82
82
|
|
|
83
83
|
|
|
84
84
|
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* Компонент поля `DateInput` из DatePicker'а помогает выбирать дату с клавиатуры.
|
|
93
|
+
*/var
|
|
85
94
|
|
|
86
95
|
|
|
87
96
|
DateInput = exports.DateInput = (_dec = (0, _decorators.locale)('DatePicker', _locale.DatePickerLocaleHelper), (0, _rootNode.rootNode)(_class = _dec(_class = (_DateInput = /*#__PURE__*/function (_React$Component) {
|
|
@@ -241,6 +250,9 @@ DateInput = exports.DateInput = (_dec = (0, _decorators.locale)('DatePicker', _l
|
|
|
241
250
|
|
|
242
251
|
|
|
243
252
|
|
|
253
|
+
|
|
254
|
+
|
|
255
|
+
|
|
244
256
|
|
|
245
257
|
|
|
246
258
|
|
|
@@ -472,4 +484,4 @@ DateInput = exports.DateInput = (_dec = (0, _decorators.locale)('DatePicker', _l
|
|
|
472
484
|
_this.shiftSelection(1);
|
|
473
485
|
}
|
|
474
486
|
_this.updateValue({ inputMode: inputMode });
|
|
475
|
-
};_this.state = { valueFormatted: '', selected: null, inputMode: false, focused: false, dragged: false };return _this;}(0, _inheritsLoose2.default)(DateInput, _React$Component);var _proto = DateInput.prototype;_proto.componentDidUpdate = function componentDidUpdate(prevProps) {var _this$getProps = this.getProps(),value = _this$getProps.value,minDate = _this$getProps.minDate,maxDate = _this$getProps.maxDate;if (prevProps.value !== value || prevProps.minDate !== minDate || prevProps.maxDate !== maxDate || this.iDateMediator.isChangedLocale(this.locale)) {this.updateFromProps(false);}!this.props.disabled && this.selectNode();};_proto.componentDidMount = function componentDidMount() {this.updateFromProps(false);if (this.props.autoFocus) {this.focus();}};_proto.blur = function blur() {if (this.inputLikeText) {this.inputLikeText.blur();}};_proto.focus = function focus() {if (this.inputLikeText) {this.inputLikeText.focus();}};_proto.blink = function blink() {if (this.inputLikeText) {this.inputLikeText.blink();}};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return _this2.renderMain();});};_proto.renderMain = function renderMain() {var _cx2;var _this$state2 = this.state,focused = _this$state2.focused,selected = _this$state2.selected,inputMode = _this$state2.inputMode,valueFormatted = _this$state2.valueFormatted;var showValue = Boolean(focused || valueFormatted);var _this$getProps2 = this.getProps(),width = _this$getProps2.width,size = _this$getProps2.size;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), /*#__PURE__*/_react.default.createElement(_FocusControlWrapper.FocusControlWrapper, { onBlurWhenDisabled: this.resetFocus }, /*#__PURE__*/_react.default.createElement(_InputLikeText.InputLikeText, { id: this.props.id, width: width, ref: this.inputLikeTextRef, size: size, disabled: this.props.disabled, error: this.props.error, warning: this.props.warning, onBlur: this.handleBlur, onFocus: this.handleFocus, onClick: this.props.onClick, onKeyDown: this.handleKeyDown, onMouseDownCapture: this.handleMouseDownCapture, onPaste: this.handlePaste, rightIcon: this.renderIcon(), onDoubleClickCapture: this.handleDoubleClick, onMouseDragStart: this.handleMouseDragStart, onMouseDragEnd: this.handleMouseDragEnd, value: this.iDateMediator.getInternalString(), inputMode: 'numeric', takeContentWidth: true }, /*#__PURE__*/_react.default.createElement("span", { className: (0, _Emotion.cx)(_DateInput2.styles.value(), (_cx2 = {}, _cx2[_DateInput2.styles.valueVisible()] = showValue, _cx2)) }, /*#__PURE__*/_react.default.createElement(_DateFragmentsView.DateFragmentsView, { ref: this.dateFragmentsViewRef, fragments: this.iDateMediator.getFragments(), onSelectDateComponent: this.handleSelectDateComponent, selected: selected, inputMode: inputMode })))));};return DateInput;}(_react.default.Component), _DateInput.__KONTUR_REACT_UI__ = 'DateInput', _DateInput.displayName = 'DateInput', _DateInput.defaultProps = { value: '', minDate: _constants.MIN_FULLDATE, maxDate: _constants.MAX_FULLDATE, size: 'small', width: 125 }, _DateInput)) || _class) || _class);
|
|
487
|
+
};_this.state = { valueFormatted: '', selected: null, inputMode: false, focused: false, dragged: false };return _this;}(0, _inheritsLoose2.default)(DateInput, _React$Component);var _proto = DateInput.prototype;_proto.componentDidUpdate = function componentDidUpdate(prevProps) {var _this$getProps = this.getProps(),value = _this$getProps.value,minDate = _this$getProps.minDate,maxDate = _this$getProps.maxDate;if (prevProps.value !== value || prevProps.minDate !== minDate || prevProps.maxDate !== maxDate || this.iDateMediator.isChangedLocale(this.locale)) {this.updateFromProps(false);}!this.props.disabled && this.selectNode();};_proto.componentDidMount = function componentDidMount() {this.updateFromProps(false);if (this.props.autoFocus) {this.focus();}};_proto.blur = function blur() {if (this.inputLikeText) {this.inputLikeText.blur();}};_proto.focus = function focus() {if (this.inputLikeText) {this.inputLikeText.focus();}};_proto.blink = function blink() {if (this.inputLikeText) {this.inputLikeText.blink();}};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return _this2.renderMain();});};_proto.renderMain = function renderMain() {var _cx2;var _this$state2 = this.state,focused = _this$state2.focused,selected = _this$state2.selected,inputMode = _this$state2.inputMode,valueFormatted = _this$state2.valueFormatted;var showValue = Boolean(focused || valueFormatted);var _this$getProps2 = this.getProps(),width = _this$getProps2.width,size = _this$getProps2.size;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), /*#__PURE__*/_react.default.createElement(_FocusControlWrapper.FocusControlWrapper, { onBlurWhenDisabled: this.resetFocus }, /*#__PURE__*/_react.default.createElement(_InputLikeText.InputLikeText, { id: this.props.id, width: width, ref: this.inputLikeTextRef, size: size, disabled: this.props.disabled, error: this.props.error, warning: this.props.warning, onBlur: this.handleBlur, onFocus: this.handleFocus, onClick: this.props.onClick, onKeyDown: this.handleKeyDown, onMouseDownCapture: this.handleMouseDownCapture, onPaste: this.handlePaste, rightIcon: this.renderIcon(), onDoubleClickCapture: this.handleDoubleClick, onMouseDragStart: this.handleMouseDragStart, onMouseDragEnd: this.handleMouseDragEnd, value: this.iDateMediator.getInternalString(), inputMode: 'numeric', takeContentWidth: true, "aria-describedby": this.props['aria-describedby'], "aria-label": this.props['aria-label'], "aria-labelledby": this.props['aria-labelledby'] }, /*#__PURE__*/_react.default.createElement("span", { className: (0, _Emotion.cx)(_DateInput2.styles.value(), (_cx2 = {}, _cx2[_DateInput2.styles.valueVisible()] = showValue, _cx2)) }, /*#__PURE__*/_react.default.createElement(_DateFragmentsView.DateFragmentsView, { ref: this.dateFragmentsViewRef, fragments: this.iDateMediator.getFragments(), onSelectDateComponent: this.handleSelectDateComponent, selected: selected, inputMode: inputMode })))));};return DateInput;}(_react.default.Component), _DateInput.__KONTUR_REACT_UI__ = 'DateInput', _DateInput.displayName = 'DateInput', _DateInput.defaultProps = { value: '', minDate: _constants.MIN_FULLDATE, maxDate: _constants.MAX_FULLDATE, size: 'small', width: 125 }, _DateInput)) || _class) || _class);
|