@skbkontur/react-ui 0.0.0-2ac4c133dd → 0.0.0-2dd5039746
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +309 -0
- package/README.md +29 -25
- package/cjs/components/Autocomplete/Autocomplete.d.ts +13 -18
- package/cjs/components/Autocomplete/Autocomplete.js +47 -10
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/Autocomplete/Autocomplete.md +15 -1
- package/cjs/components/Autocomplete/locale/index.d.ts +4 -0
- package/cjs/components/Autocomplete/locale/index.js +11 -0
- package/cjs/components/Autocomplete/locale/index.js.map +1 -0
- package/cjs/components/Autocomplete/locale/locales/en.d.ts +2 -0
- package/cjs/components/Autocomplete/locale/locales/en.js +6 -0
- package/cjs/components/Autocomplete/locale/locales/en.js.map +1 -0
- package/cjs/components/Autocomplete/locale/locales/ru.d.ts +2 -0
- package/cjs/components/Autocomplete/locale/locales/ru.js +6 -0
- package/cjs/components/Autocomplete/locale/locales/ru.js.map +1 -0
- package/cjs/components/Autocomplete/locale/types.d.ts +5 -0
- package/cjs/components/Autocomplete/locale/types.js +1 -0
- package/cjs/components/Autocomplete/locale/types.js.map +1 -0
- package/cjs/components/Button/Button.d.ts +9 -6
- package/cjs/components/Button/Button.js +14 -3
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/Button.mixins.js +1 -1
- package/cjs/components/Button/Button.mixins.js.map +1 -1
- package/cjs/components/Button/Button.styles.js +18 -18
- package/cjs/components/Button/Button.styles.js.map +1 -1
- package/cjs/components/Center/Center.d.ts +4 -3
- package/cjs/components/Center/Center.js +9 -3
- package/cjs/components/Center/Center.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.d.ts +5 -1
- package/cjs/components/Checkbox/Checkbox.js +12 -5
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.md +49 -1
- package/cjs/components/Checkbox/Checkbox.styles.d.ts +1 -1
- package/cjs/components/Checkbox/Checkbox.styles.js +1 -1
- package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
- package/cjs/components/ComboBox/ComboBox.d.ts +30 -15
- package/cjs/components/ComboBox/ComboBox.js +34 -2
- package/cjs/components/ComboBox/ComboBox.js.map +1 -1
- package/cjs/components/ComboBox/ComboBox.md +84 -1
- package/cjs/components/CurrencyInput/CurrencyHelper.js +1 -1
- package/cjs/components/CurrencyInput/CurrencyHelper.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInput.d.ts +6 -9
- package/cjs/components/CurrencyInput/CurrencyInput.js +29 -11
- package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInput.md +13 -0
- package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +3 -1
- package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.js +14 -2
- package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.js.map +1 -1
- package/cjs/components/CurrencyInput/constants.d.ts +3 -0
- package/cjs/components/CurrencyInput/constants.js +6 -2
- package/cjs/components/CurrencyInput/constants.js.map +1 -1
- package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +5 -9
- package/cjs/components/CurrencyLabel/CurrencyLabel.js +18 -15
- package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/cjs/components/CurrencyLabel/CurrencyLabel.md +6 -0
- package/cjs/components/DateInput/DateFragmentsView.d.ts +1 -1
- package/cjs/components/DateInput/DateFragmentsView.js +10 -1
- package/cjs/components/DateInput/DateFragmentsView.js.map +1 -1
- package/cjs/components/DateInput/DateInput.d.ts +9 -12
- package/cjs/components/DateInput/DateInput.js +11 -3
- package/cjs/components/DateInput/DateInput.js.map +1 -1
- package/cjs/components/DateInput/helpers/DateInputKeyboardActions.js +1 -2
- package/cjs/components/DateInput/helpers/DateInputKeyboardActions.js.map +1 -1
- package/cjs/components/DateInput/helpers/SelectionHelpers.js +2 -2
- package/cjs/components/DateInput/helpers/SelectionHelpers.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.d.ts +14 -16
- package/cjs/components/DatePicker/DatePicker.js +24 -11
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.md +18 -0
- package/cjs/components/DatePicker/Picker.js +5 -1
- package/cjs/components/DatePicker/Picker.js.map +1 -1
- package/cjs/components/Dropdown/Dropdown.d.ts +8 -2
- package/cjs/components/Dropdown/Dropdown.js +30 -4
- package/cjs/components/Dropdown/Dropdown.js.map +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.d.ts +7 -7
- package/cjs/components/DropdownMenu/DropdownMenu.js +9 -3
- package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.md +68 -1
- package/cjs/components/FileUploader/FileUploader.d.ts +11 -2
- package/cjs/components/FileUploader/FileUploader.js +83 -20
- package/cjs/components/FileUploader/FileUploader.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.md +13 -1
- package/cjs/components/FileUploader/FileUploader.mixins.d.ts +1 -0
- package/cjs/components/FileUploader/FileUploader.mixins.js +10 -0
- package/cjs/components/FileUploader/FileUploader.mixins.js.map +1 -0
- package/cjs/components/FileUploader/FileUploader.styles.d.ts +12 -1
- package/cjs/components/FileUploader/FileUploader.styles.js +119 -22
- package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -1
- package/cjs/components/FxInput/FxInput.d.ts +6 -6
- package/cjs/components/FxInput/FxInput.js +16 -11
- package/cjs/components/FxInput/FxInput.js.map +1 -1
- package/cjs/components/FxInput/FxInput.md +13 -0
- package/cjs/components/Gapped/Gapped.d.ts +7 -8
- package/cjs/components/Gapped/Gapped.js +12 -6
- package/cjs/components/Gapped/Gapped.js.map +1 -1
- package/cjs/components/GlobalLoader/GlobalLoader.d.ts +7 -14
- package/cjs/components/GlobalLoader/GlobalLoader.js +13 -9
- package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
- package/cjs/components/GlobalLoader/GlobalLoaderView.d.ts +2 -2
- package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
- package/cjs/components/Group/Group.d.ts +1 -0
- package/cjs/components/Group/Group.js +7 -11
- package/cjs/components/Group/Group.js.map +1 -1
- package/cjs/components/Hint/Hint.d.ts +9 -15
- package/cjs/components/Hint/Hint.js +14 -25
- package/cjs/components/Hint/Hint.js.map +1 -1
- package/cjs/components/Hint/Hint.md +43 -0
- package/cjs/components/Hint/Hint.styles.d.ts +0 -1
- package/cjs/components/Hint/Hint.styles.js +2 -10
- package/cjs/components/Hint/Hint.styles.js.map +1 -1
- package/cjs/components/Input/Input.d.ts +9 -4
- package/cjs/components/Input/Input.js +26 -9
- package/cjs/components/Input/Input.js.map +1 -1
- package/cjs/components/Input/Input.md +17 -1
- package/cjs/components/Input/Input.styles.d.ts +1 -0
- package/cjs/components/Input/Input.styles.js +17 -10
- package/cjs/components/Input/Input.styles.js.map +1 -1
- package/cjs/components/Kebab/Kebab.d.ts +13 -16
- package/cjs/components/Kebab/Kebab.js +20 -6
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/Link/Link.d.ts +5 -7
- package/cjs/components/Link/Link.js +12 -5
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Loader/Loader.d.ts +20 -7
- package/cjs/components/Loader/Loader.js +25 -5
- package/cjs/components/Loader/Loader.js.map +1 -1
- package/cjs/components/Loader/Loader.md +30 -23
- package/cjs/components/Loader/__stories__/LoaderAndButton.js +6 -0
- package/cjs/components/Loader/__stories__/LoaderAndButton.js.map +1 -1
- package/cjs/components/MenuHeader/MenuHeader.d.ts +1 -1
- package/cjs/components/MenuHeader/MenuHeader.js +1 -1
- package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.d.ts +19 -3
- package/cjs/components/MenuItem/MenuItem.js +75 -28
- package/cjs/components/MenuItem/MenuItem.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.styles.d.ts +5 -0
- package/cjs/components/MenuItem/MenuItem.styles.js +34 -14
- package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
- package/cjs/components/MenuSeparator/MenuSeparator.d.ts +1 -1
- package/cjs/components/MenuSeparator/MenuSeparator.js +13 -2
- package/cjs/components/MenuSeparator/MenuSeparator.js.map +1 -1
- package/cjs/components/MenuSeparator/MenuSeparator.styles.d.ts +1 -0
- package/cjs/components/MenuSeparator/MenuSeparator.styles.js +8 -1
- package/cjs/components/MenuSeparator/MenuSeparator.styles.js.map +1 -1
- package/cjs/components/Modal/Modal.d.ts +4 -3
- package/cjs/components/Modal/Modal.js +9 -8
- package/cjs/components/Modal/Modal.js.map +1 -1
- package/cjs/components/Modal/Modal.styles.d.ts +2 -2
- package/cjs/components/Modal/Modal.styles.js +3 -3
- package/cjs/components/Modal/Modal.styles.js.map +1 -1
- package/cjs/components/Modal/ModalBody.js +2 -2
- package/cjs/components/Modal/ModalBody.js.map +1 -1
- package/cjs/components/Modal/ModalFooter.d.ts +14 -0
- package/cjs/components/Modal/ModalFooter.js +23 -2
- package/cjs/components/Modal/ModalFooter.js.map +1 -1
- package/cjs/components/Modal/ModalHeader.js +1 -1
- package/cjs/components/Modal/ModalHeader.js.map +1 -1
- package/cjs/components/Paging/Paging.d.ts +7 -10
- package/cjs/components/Paging/Paging.js +34 -19
- package/cjs/components/Paging/Paging.js.map +1 -1
- package/cjs/components/Paging/Paging.md +13 -0
- package/cjs/components/Paging/Paging.styles.d.ts +6 -2
- package/cjs/components/Paging/Paging.styles.js +41 -15
- package/cjs/components/Paging/Paging.styles.js.map +1 -1
- package/cjs/components/Paging/PagingDefaultComponent.d.ts +3 -3
- package/cjs/components/Paging/PagingDefaultComponent.js.map +1 -1
- package/cjs/components/PasswordInput/PasswordInput.d.ts +4 -3
- package/cjs/components/PasswordInput/PasswordInput.js +14 -7
- package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/components/Radio/Radio.d.ts +4 -3
- package/cjs/components/Radio/Radio.js +11 -4
- package/cjs/components/Radio/Radio.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.d.ts +7 -19
- package/cjs/components/RadioGroup/RadioGroup.js +19 -20
- package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.d.ts +6 -5
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.js +5 -9
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.md +31 -0
- package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js +16 -13
- package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js.map +1 -1
- package/cjs/components/ResponsiveLayout/decorator.d.ts +1 -1
- package/cjs/components/ResponsiveLayout/types.d.ts +9 -1
- package/cjs/components/ResponsiveLayout/useResponsiveLayout.d.ts +2 -2
- package/cjs/components/ResponsiveLayout/useResponsiveLayout.js +31 -15
- package/cjs/components/ResponsiveLayout/useResponsiveLayout.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollBar.d.ts +12 -2
- package/cjs/components/ScrollContainer/ScrollBar.js +67 -10
- package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.constants.js +3 -2
- package/cjs/components/ScrollContainer/ScrollContainer.constants.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.d.ts +29 -8
- package/cjs/components/ScrollContainer/ScrollContainer.helpers.js +8 -4
- package/cjs/components/ScrollContainer/ScrollContainer.helpers.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.js +56 -11
- package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.md +52 -0
- package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +9 -0
- package/cjs/components/ScrollContainer/ScrollContainer.styles.js +48 -21
- package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
- package/cjs/components/Select/Item.d.ts +4 -2
- package/cjs/components/Select/Item.js +3 -0
- package/cjs/components/Select/Item.js.map +1 -1
- package/cjs/components/Select/Select.d.ts +13 -38
- package/cjs/components/Select/Select.js +21 -22
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/Select.md +14 -0
- package/cjs/components/Select/Select.styles.js +4 -4
- package/cjs/components/Select/Select.styles.js.map +1 -1
- package/cjs/components/Select/selectTheme.js +2 -0
- package/cjs/components/Select/selectTheme.js.map +1 -1
- package/cjs/components/SidePage/SidePage.d.ts +9 -6
- package/cjs/components/SidePage/SidePage.js +12 -1
- package/cjs/components/SidePage/SidePage.js.map +1 -1
- package/cjs/components/SidePage/SidePageFooter.d.ts +15 -5
- package/cjs/components/SidePage/SidePageFooter.js +20 -1
- package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
- package/cjs/components/SidePage/SidePageHeader.d.ts +1 -1
- package/cjs/components/SidePage/SidePageHeader.js +1 -1
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/Spinner/Spinner.d.ts +15 -4
- package/cjs/components/Spinner/Spinner.js +20 -5
- package/cjs/components/Spinner/Spinner.js.map +1 -1
- package/cjs/components/Spinner/Spinner.styles.d.ts +1 -1
- package/cjs/components/Spinner/Spinner.styles.js +7 -7
- package/cjs/components/Spinner/Spinner.styles.js.map +1 -1
- package/cjs/components/Sticky/Sticky.d.ts +7 -6
- package/cjs/components/Sticky/Sticky.js +10 -3
- package/cjs/components/Sticky/Sticky.js.map +1 -1
- package/cjs/components/Switcher/Switcher.d.ts +12 -3
- package/cjs/components/Switcher/Switcher.js +69 -35
- package/cjs/components/Switcher/Switcher.js.map +1 -1
- package/cjs/components/Switcher/Switcher.md +97 -0
- package/cjs/components/Switcher/helpers.d.ts +1 -0
- package/cjs/components/Switcher/helpers.js +1 -0
- package/cjs/components/Switcher/helpers.js.map +1 -0
- package/cjs/components/Tabs/Indicator.d.ts +1 -1
- package/cjs/components/Tabs/Indicator.js +1 -1
- package/cjs/components/Tabs/Indicator.js.map +1 -1
- package/cjs/components/Tabs/Tab.d.ts +9 -13
- package/cjs/components/Tabs/Tab.js +14 -19
- package/cjs/components/Tabs/Tab.js.map +1 -1
- package/cjs/components/Tabs/Tabs.d.ts +9 -13
- package/cjs/components/Tabs/Tabs.js +17 -10
- package/cjs/components/Tabs/Tabs.js.map +1 -1
- package/cjs/components/Textarea/Textarea.d.ts +9 -10
- package/cjs/components/Textarea/Textarea.js +14 -7
- package/cjs/components/Textarea/Textarea.js.map +1 -1
- package/cjs/components/Textarea/Textarea.md +19 -0
- package/cjs/components/Textarea/TextareaCounter.d.ts +2 -2
- package/cjs/components/Textarea/TextareaCounter.js +5 -1
- package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
- package/cjs/components/Toast/Toast.d.ts +6 -3
- package/cjs/components/Toast/Toast.js +16 -9
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toast/Toast.md +129 -0
- package/cjs/components/Toast/ToastStatic.d.ts +3 -2
- package/cjs/components/Toast/ToastStatic.js +5 -5
- package/cjs/components/Toast/ToastStatic.js.map +1 -1
- package/cjs/components/Toggle/Toggle.d.ts +10 -7
- package/cjs/components/Toggle/Toggle.js +16 -4
- package/cjs/components/Toggle/Toggle.js.map +1 -1
- package/cjs/components/Token/Token.d.ts +6 -1
- package/cjs/components/Token/Token.js +13 -2
- package/cjs/components/Token/Token.js.map +1 -1
- package/cjs/components/Token/Token.styles.js +2 -1
- package/cjs/components/Token/Token.styles.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.d.ts +27 -17
- package/cjs/components/TokenInput/TokenInput.js +141 -68
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.md +26 -0
- package/cjs/components/TokenInput/TokenInput.styles.js +2 -1
- package/cjs/components/TokenInput/TokenInput.styles.js.map +1 -1
- package/cjs/components/TokenInput/TokenInputMenu.d.ts +2 -1
- package/cjs/components/TokenInput/TokenInputMenu.js +1 -1
- package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.d.ts +14 -21
- package/cjs/components/Tooltip/Tooltip.js +26 -38
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/cjs/components/TooltipMenu/TooltipMenu.d.ts +8 -7
- package/cjs/components/TooltipMenu/TooltipMenu.js +11 -5
- package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
- package/cjs/components/TooltipMenu/TooltipMenu.md +28 -1
- package/cjs/hooks/useEffectWithoutInitCall.d.ts +2 -2
- package/cjs/hooks/useEffectWithoutInitCall.js +2 -2
- package/cjs/hooks/useEffectWithoutInitCall.js.map +1 -1
- package/cjs/hooks/useMemoObject.d.ts +2 -1
- package/cjs/hooks/useMemoObject.js +2 -0
- package/cjs/hooks/useMemoObject.js.map +1 -1
- package/cjs/index.d.ts +2 -0
- package/cjs/index.js +54 -54
- package/cjs/index.js.map +1 -1
- package/cjs/internal/BGRuler.d.ts +13 -15
- package/cjs/internal/BGRuler.js +16 -8
- package/cjs/internal/BGRuler.js.map +1 -1
- package/cjs/internal/Calendar/Calendar.d.ts +4 -13
- package/cjs/internal/Calendar/Calendar.js +10 -5
- package/cjs/internal/Calendar/Calendar.js.map +1 -1
- package/cjs/internal/Calendar/DayCellView.styles.js +1 -1
- package/cjs/internal/Calendar/DayCellView.styles.js.map +1 -1
- package/cjs/internal/Calendar/Month.js +16 -11
- package/cjs/internal/Calendar/Month.js.map +1 -1
- package/cjs/internal/Calendar/MonthViewModel.d.ts +1 -1
- package/cjs/internal/Calendar/config.d.ts +1 -8
- package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +1 -1
- package/cjs/internal/CommonWrapper/CommonWrapper.js +5 -4
- package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
- package/cjs/internal/ComponentCombinator.d.ts +6 -8
- package/cjs/internal/ComponentCombinator.js +6 -2
- package/cjs/internal/ComponentCombinator.js.map +1 -1
- package/cjs/internal/ComponentTable.d.ts +7 -8
- package/cjs/internal/ComponentTable.js +14 -3
- package/cjs/internal/ComponentTable.js.map +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +7 -6
- package/cjs/internal/CustomComboBox/ComboBoxMenu.js +16 -9
- package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +9 -14
- package/cjs/internal/CustomComboBox/ComboBoxView.js +26 -12
- package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +5 -2
- package/cjs/internal/CustomComboBox/CustomComboBox.js +7 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +8 -6
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
- package/cjs/internal/DataTids/DataTids.d.ts +5 -5
- package/cjs/internal/DataTids/DataTids.js +4 -0
- package/cjs/internal/DataTids/DataTids.js.map +1 -1
- package/cjs/internal/DateSelect/DateSelect.d.ts +4 -6
- package/cjs/internal/DateSelect/DateSelect.js +16 -10
- package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
- package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +8 -7
- package/cjs/internal/DropdownContainer/DropdownContainer.js +19 -11
- package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
- package/cjs/internal/DropdownContainer/getManualPosition.d.ts +19 -0
- package/cjs/internal/DropdownContainer/getManualPosition.js +41 -0
- package/cjs/internal/DropdownContainer/getManualPosition.js.map +1 -0
- package/cjs/internal/FileUploaderControl/FileUploaderControlContext.d.ts +2 -0
- package/cjs/internal/FileUploaderControl/FileUploaderControlContext.js +2 -0
- package/cjs/internal/FileUploaderControl/FileUploaderControlContext.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js +4 -1
- package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +48 -11
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +7 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js +49 -7
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +15 -3
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +3 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js +19 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js.map +1 -1
- package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -0
- package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.js +18 -0
- package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.js.map +1 -0
- package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +1 -1
- package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.js.map +1 -1
- package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +2 -1
- package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.d.ts +5 -3
- package/cjs/internal/InputLikeText/InputLikeText.js +23 -8
- package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/cjs/internal/InternalMenu/InternalMenu.d.ts +4 -9
- package/cjs/internal/InternalMenu/InternalMenu.js +60 -22
- package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
- package/cjs/internal/InternalMenu/InternalMenu.styles.d.ts +5 -4
- package/cjs/internal/InternalMenu/InternalMenu.styles.js +15 -18
- package/cjs/internal/InternalMenu/InternalMenu.styles.js.map +1 -1
- package/cjs/internal/MaskedInput/MaskedInput.d.ts +5 -2
- package/cjs/internal/MaskedInput/MaskedInput.js +20 -7
- package/cjs/internal/MaskedInput/MaskedInput.js.map +1 -1
- package/cjs/internal/Menu/Menu.d.ts +5 -7
- package/cjs/internal/Menu/Menu.js +32 -10
- package/cjs/internal/Menu/Menu.js.map +1 -1
- package/cjs/internal/Menu/Menu.styles.d.ts +2 -0
- package/cjs/internal/Menu/Menu.styles.js +21 -7
- package/cjs/internal/Menu/Menu.styles.js.map +1 -1
- package/cjs/internal/MenuMessage/MenuMessage.d.ts +10 -0
- package/cjs/internal/MenuMessage/MenuMessage.js +43 -0
- package/cjs/internal/MenuMessage/MenuMessage.js.map +1 -0
- package/cjs/internal/MenuMessage/MenuMessage.styles.d.ts +5 -0
- package/cjs/internal/MenuMessage/MenuMessage.styles.js +33 -0
- package/cjs/internal/MenuMessage/MenuMessage.styles.js.map +1 -0
- package/cjs/internal/MenuMessage/index.d.ts +1 -0
- package/cjs/internal/MenuMessage/index.js +1 -0
- package/cjs/internal/MenuMessage/index.js.map +1 -0
- package/cjs/internal/MobilePopup/MobilePopup.d.ts +13 -12
- package/cjs/internal/MobilePopup/MobilePopup.js +6 -60
- package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopup.styles.d.ts +3 -3
- package/cjs/internal/MobilePopup/MobilePopup.styles.js +22 -24
- package/cjs/internal/MobilePopup/MobilePopup.styles.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +3 -4
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js +26 -37
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +2 -4
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js +8 -32
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js.map +1 -1
- package/cjs/internal/PerformanceMetrics/PerformanceMetrics.js.map +1 -1
- package/cjs/internal/Popup/Popup.d.ts +18 -18
- package/cjs/internal/Popup/Popup.js +60 -22
- package/cjs/internal/Popup/Popup.js.map +1 -1
- package/cjs/internal/Popup/PopupHelper.d.ts +1 -1
- package/cjs/internal/Popup/PopupHelper.js.map +1 -1
- package/cjs/internal/Popup/PopupPin.d.ts +1 -1
- package/cjs/internal/Popup/PopupPin.js.map +1 -1
- package/cjs/internal/PopupMenu/PopupMenu.d.ts +8 -11
- package/cjs/internal/PopupMenu/PopupMenu.js +8 -1
- package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/cjs/internal/RenderLayer/RenderLayer.d.ts +5 -4
- package/cjs/internal/RenderLayer/RenderLayer.js +12 -2
- package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
- package/cjs/internal/ThemePlayground/AnotherInputsPlayground.d.ts +11 -6
- package/cjs/internal/ThemePlayground/AnotherInputsPlayground.js +7 -0
- package/cjs/internal/ThemePlayground/AnotherInputsPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/CurrencyInputPlayground.d.ts +7 -6
- package/cjs/internal/ThemePlayground/CurrencyInputPlayground.js +2 -3
- package/cjs/internal/ThemePlayground/CurrencyInputPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/FxInputPlayground.d.ts +6 -4
- package/cjs/internal/ThemePlayground/FxInputPlayground.js +5 -5
- package/cjs/internal/ThemePlayground/FxInputPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/HintPlayground.d.ts +1 -1
- package/cjs/internal/ThemePlayground/HintPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/PagingPlayground.d.ts +6 -6
- package/cjs/internal/ThemePlayground/PagingPlayground.js +5 -2
- package/cjs/internal/ThemePlayground/PagingPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.d.ts +1 -1
- package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
- package/cjs/internal/ThemePlayground/SelectPlayground.d.ts +9 -6
- package/cjs/internal/ThemePlayground/SelectPlayground.js +6 -0
- package/cjs/internal/ThemePlayground/SelectPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/SizesGroup.d.ts +2 -2
- package/cjs/internal/ThemePlayground/SizesGroup.js +2 -0
- package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -1
- package/cjs/internal/ThemePlayground/SwitcherPlayground.d.ts +9 -8
- package/cjs/internal/ThemePlayground/SwitcherPlayground.js +6 -1
- package/cjs/internal/ThemePlayground/SwitcherPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js +14 -4
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/ThemeEditor.d.ts +1 -4
- package/cjs/internal/ThemePlayground/ThemeEditor.js.map +1 -1
- package/cjs/internal/ThemePlayground/TogglePlayground.d.ts +2 -7
- package/cjs/internal/ThemePlayground/TogglePlayground.js +4 -10
- package/cjs/internal/ThemePlayground/TogglePlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/TokenInputPlayground.d.ts +6 -4
- package/cjs/internal/ThemePlayground/TokenInputPlayground.js +3 -0
- package/cjs/internal/ThemePlayground/TokenInputPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/VariableValue.d.ts +6 -8
- package/cjs/internal/ThemePlayground/VariableValue.js +6 -1
- package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
- package/cjs/internal/ThemePlayground/helpers.d.ts +1 -1
- package/cjs/internal/ThemePlayground/helpers.js +4 -2
- package/cjs/internal/ThemePlayground/helpers.js.map +1 -1
- package/cjs/internal/ThemeShowcase/ThemeShowcase.js.map +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/cjs/internal/ZIndex/ZIndex.d.ts +22 -12
- package/cjs/internal/ZIndex/ZIndex.js +54 -13
- package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
- package/cjs/internal/icons/16px/index.js +2 -1
- package/cjs/internal/icons/16px/index.js.map +1 -1
- package/cjs/internal/icons/20px/svg.js +2 -1
- package/cjs/internal/icons/20px/svg.js.map +1 -1
- package/cjs/internal/icons/CloudIcon.js +1 -1
- package/cjs/internal/icons/CloudIcon.js.map +1 -1
- package/cjs/internal/icons/CrossIcon.js +2 -1
- package/cjs/internal/icons/CrossIcon.js.map +1 -1
- package/cjs/internal/icons/SpinnerIcon.js +3 -1
- package/cjs/internal/icons/SpinnerIcon.js.map +1 -1
- package/cjs/internal/themes/DarkTheme.d.ts +1 -0
- package/cjs/internal/themes/DarkTheme.js +2 -1
- package/cjs/internal/themes/DarkTheme.js.map +1 -1
- package/cjs/internal/themes/DefaultTheme.d.ts +43 -3
- package/cjs/internal/themes/DefaultTheme.js +106 -10
- package/cjs/internal/themes/DefaultTheme.js.map +1 -1
- package/cjs/internal/themes/Theme2022.d.ts +1 -0
- package/cjs/internal/themes/Theme2022.js +1 -0
- package/cjs/internal/themes/Theme2022.js.map +1 -1
- package/cjs/lib/ConditionalHandler.js.map +1 -1
- package/cjs/lib/InstanceWithAnchorElement.d.ts +1 -1
- package/cjs/lib/InstanceWithAnchorElement.js.map +1 -1
- package/cjs/lib/ModalStack.js +2 -2
- package/cjs/lib/ModalStack.js.map +1 -1
- package/cjs/lib/SSRSafe.d.ts +3 -1
- package/cjs/lib/SSRSafe.js +15 -1
- package/cjs/lib/SSRSafe.js.map +1 -1
- package/cjs/lib/Upgrades.js +5 -0
- package/cjs/lib/Upgrades.js.map +1 -1
- package/cjs/lib/animation/index.js +1 -0
- package/cjs/lib/animation/index.js.map +1 -1
- package/cjs/lib/callChildRef/callChildRef.js +1 -1
- package/cjs/lib/callChildRef/callChildRef.js.map +1 -1
- package/cjs/lib/createPropsGetter.d.ts +2 -1
- package/cjs/lib/createPropsGetter.js +3 -0
- package/cjs/lib/createPropsGetter.js.map +1 -1
- package/cjs/lib/currentEnvironment.js +33 -12
- package/cjs/lib/currentEnvironment.js.map +1 -1
- package/cjs/lib/date/InternalDateCalculator.d.ts +1 -1
- package/cjs/lib/date/InternalDateCalculator.js +1 -1
- package/cjs/lib/date/InternalDateCalculator.js.map +1 -1
- package/cjs/lib/date/InternalDateValidator.d.ts +1 -1
- package/cjs/lib/date/InternalDateValidator.js +9 -2
- package/cjs/lib/date/InternalDateValidator.js.map +1 -1
- package/cjs/lib/extractKeyboardAction.d.ts +1 -1
- package/cjs/lib/extractKeyboardAction.js.map +1 -1
- package/cjs/lib/filterProps.js +0 -1
- package/cjs/lib/filterProps.js.map +1 -1
- package/cjs/lib/listenFocusOutside.d.ts +1 -1
- package/cjs/lib/listenFocusOutside.js.map +1 -1
- package/cjs/lib/locale/LOCALECONTEXT.md +1 -0
- package/cjs/lib/locale/useLocaleForControl.d.ts +1 -1
- package/cjs/lib/locale/useLocaleForControl.js.map +1 -1
- package/cjs/lib/memo.d.ts +3 -1
- package/cjs/lib/memo.js +3 -3
- package/cjs/lib/memo.js.map +1 -1
- package/cjs/lib/net/fetch.js +2 -2
- package/cjs/lib/net/fetch.js.map +1 -1
- package/cjs/lib/reactGetTextContent.js +0 -1
- package/cjs/lib/reactGetTextContent.js.map +1 -1
- package/cjs/lib/rootNode/getRootNode.d.ts +3 -3
- package/cjs/lib/rootNode/getRootNode.js +40 -15
- package/cjs/lib/rootNode/getRootNode.js.map +1 -1
- package/cjs/lib/rootNode/rootNodeDecorator.d.ts +9 -9
- package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
- package/cjs/lib/styles/ColorFactory.js +2 -2
- package/cjs/lib/styles/ColorFactory.js.map +1 -1
- package/cjs/lib/styles/ColorFunctions.js.map +1 -1
- package/cjs/lib/theming/AnimationKeyframes.d.ts +3 -5
- package/cjs/lib/theming/AnimationKeyframes.js +8 -22
- package/cjs/lib/theming/AnimationKeyframes.js.map +1 -1
- package/cjs/lib/theming/Emotion.js +1 -0
- package/cjs/lib/theming/Emotion.js.map +1 -1
- package/cjs/lib/theming/ThemeContext.md +26 -18
- package/cjs/lib/theming/ThemeFactory.d.ts +1 -1
- package/cjs/lib/theming/ThemeFactory.js +10 -1
- package/cjs/lib/theming/ThemeFactory.js.map +1 -1
- package/cjs/lib/theming/ThemeHelpers.d.ts +13 -4
- package/cjs/lib/theming/ThemeHelpers.js +25 -6
- package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
- package/cjs/lib/theming/themes/DarkTheme.js +1 -1
- package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
- package/cjs/lib/theming/themes/Theme2022Dark.d.ts +1 -1
- package/cjs/lib/theming/themes/Theme2022Dark.js +4 -3
- package/cjs/lib/theming/themes/Theme2022Dark.js.map +1 -1
- package/cjs/lib/utils.d.ts +6 -5
- package/cjs/lib/utils.js +8 -7
- package/cjs/lib/utils.js.map +1 -1
- package/cjs/lib/withClassWrapper.js +1 -4
- package/cjs/lib/withClassWrapper.js.map +1 -1
- package/cjs/typings/event-types.d.ts +2 -2
- package/cjs/typings/{html-props.d.ts → html.d.ts} +2 -2
- package/components/Autocomplete/Autocomplete/Autocomplete.js +53 -17
- package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/Autocomplete.d.ts +13 -18
- package/components/Autocomplete/Autocomplete.md +15 -1
- package/components/Autocomplete/locale/index/index.js +8 -0
- package/components/Autocomplete/locale/index/index.js.map +1 -0
- package/components/Autocomplete/locale/index/package.json +6 -0
- package/components/Autocomplete/locale/index.d.ts +4 -0
- package/components/Autocomplete/locale/locales/en/en.js +5 -0
- package/components/Autocomplete/locale/locales/en/en.js.map +1 -0
- package/components/Autocomplete/locale/locales/en/package.json +6 -0
- package/components/Autocomplete/locale/locales/en.d.ts +2 -0
- package/components/Autocomplete/locale/locales/ru/package.json +6 -0
- package/components/Autocomplete/locale/locales/ru/ru.js +5 -0
- package/components/Autocomplete/locale/locales/ru/ru.js.map +1 -0
- package/components/Autocomplete/locale/locales/ru.d.ts +2 -0
- package/components/Autocomplete/locale/package.json +6 -0
- package/components/Autocomplete/locale/types/package.json +6 -0
- package/components/Autocomplete/locale/types/types.js +1 -0
- package/components/Autocomplete/locale/types/types.js.map +1 -0
- package/components/Autocomplete/locale/types.d.ts +5 -0
- package/components/Button/Button/Button.js +16 -7
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.d.ts +9 -6
- package/components/Button/Button.mixins/Button.mixins.js +1 -1
- package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
- package/components/Button/Button.styles/Button.styles.js +18 -18
- package/components/Button/Button.styles/Button.styles.js.map +1 -1
- package/components/Center/Center/Center.js +7 -5
- package/components/Center/Center/Center.js.map +1 -1
- package/components/Center/Center.d.ts +4 -3
- package/components/Checkbox/Checkbox/Checkbox.js +10 -4
- package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.d.ts +5 -1
- package/components/Checkbox/Checkbox.md +49 -1
- package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +1 -1
- package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
- package/components/Checkbox/Checkbox.styles.d.ts +1 -1
- package/components/ComboBox/ComboBox/ComboBox.js +3 -1
- package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
- package/components/ComboBox/ComboBox.d.ts +30 -15
- package/components/ComboBox/ComboBox.md +84 -1
- package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js +3 -3
- package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js.map +1 -1
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +43 -22
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
- package/components/CurrencyInput/CurrencyInput.d.ts +6 -9
- package/components/CurrencyInput/CurrencyInput.md +13 -0
- package/components/CurrencyInput/CurrencyInputKeyboardActions/CurrencyInputKeyboardActions.js +4 -2
- package/components/CurrencyInput/CurrencyInputKeyboardActions/CurrencyInputKeyboardActions.js.map +1 -1
- package/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +3 -1
- package/components/CurrencyInput/constants/constants.js +4 -1
- package/components/CurrencyInput/constants/constants.js.map +1 -1
- package/components/CurrencyInput/constants.d.ts +3 -0
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +25 -16
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/components/CurrencyLabel/CurrencyLabel.d.ts +5 -9
- package/components/CurrencyLabel/CurrencyLabel.md +6 -0
- package/components/DateInput/DateFragmentsView/DateFragmentsView.js +11 -1
- package/components/DateInput/DateFragmentsView/DateFragmentsView.js.map +1 -1
- package/components/DateInput/DateFragmentsView.d.ts +1 -1
- package/components/DateInput/DateInput/DateInput.js +18 -5
- package/components/DateInput/DateInput/DateInput.js.map +1 -1
- package/components/DateInput/DateInput.d.ts +9 -12
- package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js +0 -1
- package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js.map +1 -1
- package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js +2 -2
- package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js.map +1 -1
- package/components/DatePicker/DatePicker/DatePicker.js +26 -21
- package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.d.ts +14 -16
- package/components/DatePicker/DatePicker.md +18 -0
- package/components/DatePicker/Picker/Picker.js +5 -1
- package/components/DatePicker/Picker/Picker.js.map +1 -1
- package/components/Dropdown/Dropdown/Dropdown.js +21 -6
- package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
- package/components/Dropdown/Dropdown.d.ts +8 -2
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +8 -2
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu.d.ts +7 -7
- package/components/DropdownMenu/DropdownMenu.md +68 -1
- package/components/FileUploader/FileUploader/FileUploader.js +62 -23
- package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
- package/components/FileUploader/FileUploader.d.ts +11 -2
- package/components/FileUploader/FileUploader.md +13 -1
- package/components/FileUploader/FileUploader.mixins/FileUploader.mixins.js +8 -0
- package/components/FileUploader/FileUploader.mixins/FileUploader.mixins.js.map +1 -0
- package/components/FileUploader/FileUploader.mixins/package.json +6 -0
- package/components/FileUploader/FileUploader.mixins.d.ts +1 -0
- package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +51 -17
- package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -1
- package/components/FileUploader/FileUploader.styles.d.ts +12 -1
- package/components/FxInput/FxInput/FxInput.js +15 -10
- package/components/FxInput/FxInput/FxInput.js.map +1 -1
- package/components/FxInput/FxInput.d.ts +6 -6
- package/components/FxInput/FxInput.md +13 -0
- package/components/Gapped/Gapped/Gapped.js +17 -8
- package/components/Gapped/Gapped/Gapped.js.map +1 -1
- package/components/Gapped/Gapped.d.ts +7 -8
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +35 -16
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
- package/components/GlobalLoader/GlobalLoader.d.ts +7 -14
- package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
- package/components/GlobalLoader/GlobalLoaderView.d.ts +2 -2
- package/components/Group/Group/Group.js +5 -5
- package/components/Group/Group/Group.js.map +1 -1
- package/components/Group/Group.d.ts +1 -0
- package/components/Hint/Hint/Hint.js +42 -39
- package/components/Hint/Hint/Hint.js.map +1 -1
- package/components/Hint/Hint.d.ts +9 -15
- package/components/Hint/Hint.md +43 -0
- package/components/Hint/Hint.styles/Hint.styles.js +2 -5
- package/components/Hint/Hint.styles/Hint.styles.js.map +1 -1
- package/components/Hint/Hint.styles.d.ts +0 -1
- package/components/Input/Input/Input.js +36 -16
- package/components/Input/Input/Input.js.map +1 -1
- package/components/Input/Input.d.ts +9 -4
- package/components/Input/Input.md +17 -1
- package/components/Input/Input.styles/Input.styles.js +13 -10
- package/components/Input/Input.styles/Input.styles.js.map +1 -1
- package/components/Input/Input.styles.d.ts +1 -0
- package/components/Kebab/Kebab/Kebab.js +21 -9
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/Kebab/Kebab.d.ts +13 -16
- package/components/Link/Link/Link.js +10 -7
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Link/Link.d.ts +5 -7
- package/components/Loader/Loader/Loader.js +24 -17
- package/components/Loader/Loader/Loader.js.map +1 -1
- package/components/Loader/Loader.d.ts +20 -7
- package/components/Loader/Loader.md +30 -23
- package/components/Loader/__stories__/LoaderAndButton/LoaderAndButton.js.map +1 -1
- package/components/MenuHeader/MenuHeader/MenuHeader.js +1 -1
- package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
- package/components/MenuHeader/MenuHeader.d.ts +1 -1
- package/components/MenuItem/MenuItem/MenuItem.js +51 -15
- package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.d.ts +19 -3
- package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +31 -9
- package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
- package/components/MenuItem/MenuItem.styles.d.ts +5 -0
- package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +11 -4
- package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
- package/components/MenuSeparator/MenuSeparator.d.ts +1 -1
- package/components/MenuSeparator/MenuSeparator.styles/MenuSeparator.styles.js +4 -1
- package/components/MenuSeparator/MenuSeparator.styles/MenuSeparator.styles.js.map +1 -1
- package/components/MenuSeparator/MenuSeparator.styles.d.ts +1 -0
- package/components/Modal/Modal/Modal.js +5 -3
- package/components/Modal/Modal/Modal.js.map +1 -1
- package/components/Modal/Modal.d.ts +4 -3
- package/components/Modal/Modal.styles/Modal.styles.js +3 -3
- package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
- package/components/Modal/Modal.styles.d.ts +2 -2
- package/components/Modal/ModalBody/ModalBody.js +2 -2
- package/components/Modal/ModalBody/ModalBody.js.map +1 -1
- package/components/Modal/ModalFooter/ModalFooter.js +9 -3
- package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
- package/components/Modal/ModalFooter.d.ts +14 -0
- package/components/Modal/ModalHeader/ModalHeader.js +2 -2
- package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/components/Paging/Paging/Paging.js +36 -23
- package/components/Paging/Paging/Paging.js.map +1 -1
- package/components/Paging/Paging.d.ts +7 -10
- package/components/Paging/Paging.md +13 -0
- package/components/Paging/Paging.styles/Paging.styles.js +27 -15
- package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
- package/components/Paging/Paging.styles.d.ts +6 -2
- package/components/Paging/PagingDefaultComponent/PagingDefaultComponent.js.map +1 -1
- package/components/Paging/PagingDefaultComponent.d.ts +3 -3
- package/components/PasswordInput/PasswordInput/PasswordInput.js +14 -13
- package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
- package/components/PasswordInput/PasswordInput.d.ts +4 -3
- package/components/Radio/Radio/Radio.js +11 -6
- package/components/Radio/Radio/Radio.js.map +1 -1
- package/components/Radio/Radio.d.ts +4 -3
- package/components/RadioGroup/RadioGroup/RadioGroup.js +21 -28
- package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
- package/components/RadioGroup/RadioGroup.d.ts +7 -19
- package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js +5 -8
- package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
- package/components/ResponsiveLayout/ResponsiveLayout.d.ts +6 -5
- package/components/ResponsiveLayout/ResponsiveLayout.md +31 -0
- package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js +20 -12
- package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js.map +1 -1
- package/components/ResponsiveLayout/decorator.d.ts +1 -1
- package/components/ResponsiveLayout/types.d.ts +9 -1
- package/components/ResponsiveLayout/useResponsiveLayout/useResponsiveLayout.js +42 -17
- package/components/ResponsiveLayout/useResponsiveLayout/useResponsiveLayout.js.map +1 -1
- package/components/ResponsiveLayout/useResponsiveLayout.d.ts +2 -2
- package/components/ScrollContainer/ScrollBar/ScrollBar.js +67 -10
- package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
- package/components/ScrollContainer/ScrollBar.d.ts +12 -2
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +34 -12
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js +3 -2
- package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.d.ts +29 -8
- package/components/ScrollContainer/ScrollContainer.helpers/ScrollContainer.helpers.js +8 -5
- package/components/ScrollContainer/ScrollContainer.helpers/ScrollContainer.helpers.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.md +52 -0
- package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +30 -7
- package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.styles.d.ts +9 -0
- package/components/Select/Item/Item.js.map +1 -1
- package/components/Select/Item.d.ts +4 -2
- package/components/Select/Select/Select.js +35 -54
- package/components/Select/Select/Select.js.map +1 -1
- package/components/Select/Select.d.ts +13 -38
- package/components/Select/Select.md +14 -0
- package/components/Select/Select.styles/Select.styles.js +4 -4
- package/components/Select/Select.styles/Select.styles.js.map +1 -1
- package/components/Select/selectTheme/selectTheme.js +1 -0
- package/components/Select/selectTheme/selectTheme.js.map +1 -1
- package/components/SidePage/SidePage/SidePage.js +14 -6
- package/components/SidePage/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.d.ts +9 -6
- package/components/SidePage/SidePageFooter/SidePageFooter.js +6 -1
- package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
- package/components/SidePage/SidePageFooter.d.ts +15 -5
- package/components/SidePage/SidePageHeader/SidePageHeader.js +1 -1
- package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +1 -1
- package/components/Spinner/Spinner/Spinner.js +8 -6
- package/components/Spinner/Spinner/Spinner.js.map +1 -1
- package/components/Spinner/Spinner.d.ts +15 -4
- package/components/Spinner/Spinner.styles/Spinner.styles.js +3 -3
- package/components/Spinner/Spinner.styles/Spinner.styles.js.map +1 -1
- package/components/Spinner/Spinner.styles.d.ts +1 -1
- package/components/Sticky/Sticky/Sticky.js +8 -5
- package/components/Sticky/Sticky/Sticky.js.map +1 -1
- package/components/Sticky/Sticky.d.ts +7 -6
- package/components/Switcher/Switcher/Switcher.js +77 -38
- package/components/Switcher/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/Switcher.d.ts +12 -3
- package/components/Switcher/Switcher.md +97 -0
- package/components/Switcher/helpers/helpers.js +3 -0
- package/components/Switcher/helpers/helpers.js.map +1 -0
- package/components/Switcher/helpers/package.json +6 -0
- package/components/Switcher/helpers.d.ts +1 -0
- package/components/Tabs/Indicator/Indicator.js +1 -1
- package/components/Tabs/Indicator/Indicator.js.map +1 -1
- package/components/Tabs/Indicator.d.ts +1 -1
- package/components/Tabs/Tab/Tab.js +18 -15
- package/components/Tabs/Tab/Tab.js.map +1 -1
- package/components/Tabs/Tab.d.ts +9 -13
- package/components/Tabs/Tabs/Tabs.js +15 -18
- package/components/Tabs/Tabs/Tabs.js.map +1 -1
- package/components/Tabs/Tabs.d.ts +9 -13
- package/components/Textarea/Textarea/Textarea.js +25 -16
- package/components/Textarea/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.d.ts +9 -10
- package/components/Textarea/Textarea.md +19 -0
- package/components/Textarea/TextareaCounter/TextareaCounter.js +2 -1
- package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
- package/components/Textarea/TextareaCounter.d.ts +2 -2
- package/components/Toast/Toast/Toast.js +16 -9
- package/components/Toast/Toast/Toast.js.map +1 -1
- package/components/Toast/Toast.d.ts +6 -3
- package/components/Toast/Toast.md +129 -0
- package/components/Toast/ToastStatic/ToastStatic.js +5 -5
- package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
- package/components/Toast/ToastStatic.d.ts +3 -2
- package/components/Toggle/Toggle/Toggle.js +17 -9
- package/components/Toggle/Toggle/Toggle.js.map +1 -1
- package/components/Toggle/Toggle.d.ts +10 -7
- package/components/Token/Token/Token.js +6 -2
- package/components/Token/Token/Token.js.map +1 -1
- package/components/Token/Token.d.ts +6 -1
- package/components/Token/Token.styles/Token.styles.js +1 -1
- package/components/Token/Token.styles/Token.styles.js.map +1 -1
- package/components/TokenInput/TokenInput/TokenInput.js +180 -132
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +27 -17
- package/components/TokenInput/TokenInput.md +26 -0
- package/components/TokenInput/TokenInput.styles/TokenInput.styles.js +1 -1
- package/components/TokenInput/TokenInput.styles/TokenInput.styles.js.map +1 -1
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +1 -1
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
- package/components/TokenInput/TokenInputMenu.d.ts +2 -1
- package/components/Tooltip/Tooltip/Tooltip.js +65 -70
- package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +14 -21
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +15 -13
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
- package/components/TooltipMenu/TooltipMenu.d.ts +8 -7
- package/components/TooltipMenu/TooltipMenu.md +28 -1
- package/hooks/useEffectWithoutInitCall/useEffectWithoutInitCall.js +2 -2
- package/hooks/useEffectWithoutInitCall/useEffectWithoutInitCall.js.map +1 -1
- package/hooks/useEffectWithoutInitCall.d.ts +2 -2
- package/hooks/useMemoObject/useMemoObject.js.map +1 -1
- package/hooks/useMemoObject.d.ts +2 -1
- package/index.d.ts +2 -0
- package/index.js +3 -1
- package/index.js.map +1 -1
- package/internal/BGRuler/BGRuler.js +11 -6
- package/internal/BGRuler/BGRuler.js.map +1 -1
- package/internal/BGRuler.d.ts +13 -15
- package/internal/Calendar/Calendar/Calendar.js +11 -5
- package/internal/Calendar/Calendar/Calendar.js.map +1 -1
- package/internal/Calendar/Calendar.d.ts +4 -13
- package/internal/Calendar/DayCellView.styles/DayCellView.styles.js +1 -1
- package/internal/Calendar/DayCellView.styles/DayCellView.styles.js.map +1 -1
- package/internal/Calendar/Month/Month.js +20 -11
- package/internal/Calendar/Month/Month.js.map +1 -1
- package/internal/Calendar/MonthViewModel.d.ts +1 -1
- package/internal/Calendar/config.d.ts +1 -8
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js +3 -2
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper.d.ts +1 -1
- package/internal/ComponentCombinator/ComponentCombinator.js +8 -5
- package/internal/ComponentCombinator/ComponentCombinator.js.map +1 -1
- package/internal/ComponentCombinator.d.ts +6 -8
- package/internal/ComponentTable/ComponentTable.js +16 -4
- package/internal/ComponentTable/ComponentTable.js.map +1 -1
- package/internal/ComponentTable.d.ts +7 -8
- package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +30 -35
- package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxMenu.d.ts +7 -6
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +32 -15
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView.d.ts +9 -14
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +3 -0
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.d.ts +5 -2
- package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +9 -6
- package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
- package/internal/DataTids/DataTids/DataTids.js.map +1 -1
- package/internal/DataTids/DataTids.d.ts +5 -5
- package/internal/DateSelect/DateSelect/DateSelect.js +15 -12
- package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
- package/internal/DateSelect/DateSelect.d.ts +4 -6
- package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +23 -14
- package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
- package/internal/DropdownContainer/DropdownContainer.d.ts +8 -7
- package/internal/DropdownContainer/getManualPosition/getManualPosition.js +36 -0
- package/internal/DropdownContainer/getManualPosition/getManualPosition.js.map +1 -0
- package/internal/DropdownContainer/getManualPosition/package.json +6 -0
- package/internal/DropdownContainer/getManualPosition.d.ts +19 -0
- package/internal/FileUploaderControl/FileUploaderControlContext/FileUploaderControlContext.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderControlContext.d.ts +2 -0
- package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js +7 -1
- package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +40 -13
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -0
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js +26 -5
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +7 -0
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js +13 -3
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -0
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js +10 -1
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +3 -0
- package/internal/FileUploaderControl/hooks/useFileUploaderSize/package.json +6 -0
- package/internal/FileUploaderControl/hooks/useFileUploaderSize/useFileUploaderSize.js +21 -0
- package/internal/FileUploaderControl/hooks/useFileUploaderSize/useFileUploaderSize.js.map +1 -0
- package/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -0
- package/internal/FileUploaderControl/withFileUploaderControlProvider/withFileUploaderControlProvider.js.map +1 -1
- package/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +1 -1
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js +2 -1
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
- package/internal/InputLikeText/InputLikeText/InputLikeText.js +17 -7
- package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.d.ts +5 -3
- package/internal/InternalMenu/InternalMenu/InternalMenu.js +62 -23
- package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
- package/internal/InternalMenu/InternalMenu.d.ts +4 -9
- package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js +13 -10
- package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js.map +1 -1
- package/internal/InternalMenu/InternalMenu.styles.d.ts +5 -4
- package/internal/MaskedInput/MaskedInput/MaskedInput.js +16 -7
- package/internal/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
- package/internal/MaskedInput/MaskedInput.d.ts +5 -2
- package/internal/Menu/Menu/Menu.js +24 -10
- package/internal/Menu/Menu/Menu.js.map +1 -1
- package/internal/Menu/Menu.d.ts +5 -7
- package/internal/Menu/Menu.styles/Menu.styles.js +13 -7
- package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
- package/internal/Menu/Menu.styles.d.ts +2 -0
- package/internal/MenuMessage/MenuMessage/MenuMessage.js +31 -0
- package/internal/MenuMessage/MenuMessage/MenuMessage.js.map +1 -0
- package/internal/MenuMessage/MenuMessage/package.json +6 -0
- package/internal/MenuMessage/MenuMessage.d.ts +10 -0
- package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js +23 -0
- package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js.map +1 -0
- package/internal/MenuMessage/MenuMessage.styles/package.json +6 -0
- package/internal/MenuMessage/MenuMessage.styles.d.ts +5 -0
- package/internal/MenuMessage/index/index.js +1 -0
- package/internal/MenuMessage/index/index.js.map +1 -0
- package/internal/MenuMessage/index/package.json +6 -0
- package/internal/MenuMessage/index.d.ts +1 -0
- package/internal/MenuMessage/package.json +6 -0
- package/internal/MobilePopup/MobilePopup/MobilePopup.js +23 -53
- package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.d.ts +13 -12
- package/internal/MobilePopup/MobilePopup.styles/MobilePopup.styles.js +11 -11
- package/internal/MobilePopup/MobilePopup.styles/MobilePopup.styles.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.styles.d.ts +3 -3
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js +11 -35
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +3 -4
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles/MobilePopupHeader.styles.js +6 -12
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles/MobilePopupHeader.styles.js.map +1 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +2 -4
- package/internal/PerformanceMetrics/PerformanceMetrics/PerformanceMetrics.js.map +1 -1
- package/internal/Popup/Popup/Popup.js +69 -38
- package/internal/Popup/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.d.ts +18 -18
- package/internal/Popup/PopupHelper/PopupHelper.js.map +1 -1
- package/internal/Popup/PopupHelper.d.ts +1 -1
- package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
- package/internal/Popup/PopupPin.d.ts +1 -1
- package/internal/PopupMenu/PopupMenu/PopupMenu.js +12 -4
- package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.d.ts +8 -11
- package/internal/RenderLayer/RenderLayer/RenderLayer.js +10 -6
- package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
- package/internal/RenderLayer/RenderLayer.d.ts +5 -4
- package/internal/ThemePlayground/AnotherInputsPlayground/AnotherInputsPlayground.js.map +1 -1
- package/internal/ThemePlayground/AnotherInputsPlayground.d.ts +11 -6
- package/internal/ThemePlayground/CurrencyInputPlayground/CurrencyInputPlayground.js.map +1 -1
- package/internal/ThemePlayground/CurrencyInputPlayground.d.ts +7 -6
- package/internal/ThemePlayground/FxInputPlayground/FxInputPlayground.js +10 -6
- package/internal/ThemePlayground/FxInputPlayground/FxInputPlayground.js.map +1 -1
- package/internal/ThemePlayground/FxInputPlayground.d.ts +6 -4
- package/internal/ThemePlayground/HintPlayground/HintPlayground.js.map +1 -1
- package/internal/ThemePlayground/HintPlayground.d.ts +1 -1
- package/internal/ThemePlayground/PagingPlayground/PagingPlayground.js +2 -2
- package/internal/ThemePlayground/PagingPlayground/PagingPlayground.js.map +1 -1
- package/internal/ThemePlayground/PagingPlayground.d.ts +6 -6
- package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
- package/internal/ThemePlayground/Playground.d.ts +1 -1
- package/internal/ThemePlayground/SelectPlayground/SelectPlayground.js.map +1 -1
- package/internal/ThemePlayground/SelectPlayground.d.ts +9 -6
- package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -1
- package/internal/ThemePlayground/SizesGroup.d.ts +2 -2
- package/internal/ThemePlayground/SwitcherPlayground/SwitcherPlayground.js.map +1 -1
- package/internal/ThemePlayground/SwitcherPlayground.d.ts +9 -8
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js +13 -3
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
- package/internal/ThemePlayground/ThemeEditor/ThemeEditor.js.map +1 -1
- package/internal/ThemePlayground/ThemeEditor.d.ts +1 -4
- package/internal/ThemePlayground/TogglePlayground/TogglePlayground.js +5 -17
- package/internal/ThemePlayground/TogglePlayground/TogglePlayground.js.map +1 -1
- package/internal/ThemePlayground/TogglePlayground.d.ts +2 -7
- package/internal/ThemePlayground/TokenInputPlayground/TokenInputPlayground.js.map +1 -1
- package/internal/ThemePlayground/TokenInputPlayground.d.ts +6 -4
- package/internal/ThemePlayground/VariableValue/VariableValue.js +4 -2
- package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
- package/internal/ThemePlayground/VariableValue.d.ts +6 -8
- package/internal/ThemePlayground/helpers/helpers.js +0 -1
- package/internal/ThemePlayground/helpers/helpers.js.map +1 -1
- package/internal/ThemePlayground/helpers.d.ts +1 -1
- package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/internal/ZIndex/ZIndex/ZIndex.js +48 -24
- package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
- package/internal/ZIndex/ZIndex.d.ts +22 -12
- package/internal/icons/16px/index/index.js +2 -1
- package/internal/icons/16px/index/index.js.map +1 -1
- package/internal/icons/20px/svg/svg.js +2 -1
- package/internal/icons/20px/svg/svg.js.map +1 -1
- package/internal/icons/CloudIcon/CloudIcon.js +3 -1
- package/internal/icons/CloudIcon/CloudIcon.js.map +1 -1
- package/internal/icons/CrossIcon/CrossIcon.js +2 -1
- package/internal/icons/CrossIcon/CrossIcon.js.map +1 -1
- package/internal/icons/SpinnerIcon/SpinnerIcon.js +3 -1
- package/internal/icons/SpinnerIcon/SpinnerIcon.js.map +1 -1
- package/internal/themes/DarkTheme/DarkTheme.js +1 -0
- package/internal/themes/DarkTheme/DarkTheme.js.map +1 -1
- package/internal/themes/DarkTheme.d.ts +1 -0
- package/internal/themes/DefaultTheme/DefaultTheme.js +166 -17
- package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
- package/internal/themes/DefaultTheme.d.ts +43 -3
- package/internal/themes/Theme2022/Theme2022.js +1 -0
- package/internal/themes/Theme2022/Theme2022.js.map +1 -1
- package/internal/themes/Theme2022.d.ts +1 -0
- package/lib/ConditionalHandler/ConditionalHandler.js.map +1 -1
- package/lib/InstanceWithAnchorElement/InstanceWithAnchorElement.js.map +1 -1
- package/lib/InstanceWithAnchorElement.d.ts +1 -1
- package/lib/ModalStack/ModalStack.js +2 -2
- package/lib/ModalStack/ModalStack.js.map +1 -1
- package/lib/SSRSafe/SSRSafe.js +12 -0
- package/lib/SSRSafe/SSRSafe.js.map +1 -1
- package/lib/SSRSafe.d.ts +3 -1
- package/lib/Upgrades/Upgrades.js +4 -1
- package/lib/Upgrades/Upgrades.js.map +1 -1
- package/lib/animation/index/index.js +1 -1
- package/lib/animation/index/index.js.map +1 -1
- package/lib/callChildRef/callChildRef/callChildRef.js +1 -1
- package/lib/callChildRef/callChildRef/callChildRef.js.map +1 -1
- package/lib/createPropsGetter/createPropsGetter.js +1 -0
- package/lib/createPropsGetter/createPropsGetter.js.map +1 -1
- package/lib/createPropsGetter.d.ts +2 -1
- package/lib/currentEnvironment/currentEnvironment.js +34 -14
- package/lib/currentEnvironment/currentEnvironment.js.map +1 -1
- package/lib/date/InternalDateCalculator/InternalDateCalculator.js +1 -2
- package/lib/date/InternalDateCalculator/InternalDateCalculator.js.map +1 -1
- package/lib/date/InternalDateCalculator.d.ts +1 -1
- package/lib/date/InternalDateValidator/InternalDateValidator.js +8 -2
- package/lib/date/InternalDateValidator/InternalDateValidator.js.map +1 -1
- package/lib/date/InternalDateValidator.d.ts +1 -1
- package/lib/extractKeyboardAction/extractKeyboardAction.js.map +1 -1
- package/lib/extractKeyboardAction.d.ts +1 -1
- package/lib/filterProps/filterProps.js +0 -1
- package/lib/filterProps/filterProps.js.map +1 -1
- package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
- package/lib/listenFocusOutside.d.ts +1 -1
- package/lib/locale/LOCALECONTEXT.md +1 -0
- package/lib/locale/useLocaleForControl/useLocaleForControl.js.map +1 -1
- package/lib/locale/useLocaleForControl.d.ts +1 -1
- package/lib/memo/memo.js +2 -4
- package/lib/memo/memo.js.map +1 -1
- package/lib/memo.d.ts +3 -1
- package/lib/net/fetch/fetch.js +2 -2
- package/lib/net/fetch/fetch.js.map +1 -1
- package/lib/reactGetTextContent/reactGetTextContent.js +0 -1
- package/lib/reactGetTextContent/reactGetTextContent.js.map +1 -1
- package/lib/rootNode/getRootNode/getRootNode.js +32 -14
- package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
- package/lib/rootNode/getRootNode.d.ts +3 -3
- package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
- package/lib/rootNode/rootNodeDecorator.d.ts +9 -9
- package/lib/styles/ColorFactory/ColorFactory.js +3 -1
- package/lib/styles/ColorFactory/ColorFactory.js.map +1 -1
- package/lib/styles/ColorFunctions/ColorFunctions.js.map +1 -1
- package/lib/theming/AnimationKeyframes/AnimationKeyframes.js +8 -14
- package/lib/theming/AnimationKeyframes/AnimationKeyframes.js.map +1 -1
- package/lib/theming/AnimationKeyframes.d.ts +3 -5
- package/lib/theming/Emotion/Emotion.js.map +1 -1
- package/lib/theming/ThemeContext.md +26 -18
- package/lib/theming/ThemeFactory/ThemeFactory.js +11 -2
- package/lib/theming/ThemeFactory/ThemeFactory.js.map +1 -1
- package/lib/theming/ThemeFactory.d.ts +1 -1
- package/lib/theming/ThemeHelpers/ThemeHelpers.js +19 -5
- package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
- package/lib/theming/ThemeHelpers.d.ts +13 -4
- package/lib/theming/themes/DarkTheme/DarkTheme.js +2 -2
- package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
- package/lib/theming/themes/Theme2022Dark/Theme2022Dark.js +2 -1
- package/lib/theming/themes/Theme2022Dark/Theme2022Dark.js.map +1 -1
- package/lib/theming/themes/Theme2022Dark.d.ts +1 -1
- package/lib/utils/utils.js +2 -3
- package/lib/utils/utils.js.map +1 -1
- package/lib/utils.d.ts +6 -5
- package/lib/withClassWrapper/withClassWrapper.js +1 -4
- package/lib/withClassWrapper/withClassWrapper.js.map +1 -1
- package/package.json +9 -25
- package/typings/event-types.d.ts +2 -2
- package/typings/{html-props.d.ts → html.d.ts} +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Radio.tsx"],"names":["React","ThemeContext","CommonWrapper","cx","keyListener","rootNode","fixFirefoxModifiedClickOnLabel","isEdge","isIE11","RadioGroupContext","styles","globalClasses","RadioDataTids","root","Radio","state","focusedByKeyboard","context","inputEl","createRef","renderMain","props","disabled","warning","error","focused","onMouseOver","onMouseEnter","onMouseLeave","onValueChange","rest","radioProps","className","circle","theme","checked","focus","checkedDisabled","value","inputProps","type","input","tabIndex","ref","onChange","handleChange","onFocus","handleFocus","onBlur","handleBlur","labelProps","rootChecked","rootIE11","handleMouseOver","handleMouseEnter","handleMouseLeave","onClick","_isInRadioGroup","activeItem","name","suppressHydrationWarning","placeholder","children","renderCaption","Boolean","e","onSelect","requestAnimationFrame","isArrowPressed","isTabPressed","setState","render","setRootNode","current","blur","captionClassNames","caption","captionDisabled","captionIE11","Component","__KONTUR_REACT_UI__","defaultProps","contextType"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { Override } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { fixFirefoxModifiedClickOnLabel } from '../../lib/events/fixFirefoxModifiedClickOnLabel';\nimport { isEdge, isIE11 } from '../../lib/client';\nimport { RadioGroupContext, RadioGroupContextType } from '../RadioGroup/RadioGroupContext';\n\nimport { styles, globalClasses } from './Radio.styles';\n\nexport interface RadioProps<T>\n extends CommonProps,\n Override<\n React.InputHTMLAttributes<HTMLInputElement>,\n {\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n /**\n * Состояние фокуса.\n */\n focused?: boolean;\n /**\n * Функция, вызываемая при изменении `value`.\n */\n onValueChange?: (value: T) => void;\n /**\n * HTML-событие `onmouseenter`\n */\n onMouseEnter?: React.MouseEventHandler<HTMLLabelElement>;\n /**\n * HTML-событие `mouseleave`\n */\n onMouseLeave?: React.MouseEventHandler<HTMLLabelElement>;\n /**\n * HTML-событие `onmouseover`\n */\n onMouseOver?: React.MouseEventHandler<HTMLLabelElement>;\n /**\n * HTML-атрибут `value`.\n */\n value: T;\n }\n > {}\n\nexport interface RadioState {\n focusedByKeyboard: boolean;\n}\n\nexport const RadioDataTids = {\n root: 'Radio__root',\n} as const;\n\n/**\n * Радио-кнопки используются, когда может быть выбран только один вариант из нескольких.\n */\n@rootNode\nexport class Radio<T> extends React.Component<RadioProps<T>, RadioState> {\n public static __KONTUR_REACT_UI__ = 'Radio';\n\n public state = {\n focusedByKeyboard: false,\n };\n\n public static defaultProps = {\n focused: false,\n };\n\n public static contextType = RadioGroupContext;\n public context: RadioGroupContextType<T> = this.context;\n\n private inputEl = React.createRef<HTMLInputElement>();\n private setRootNode!: TSetRootNode;\n private theme!: Theme;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public focus() {\n keyListener.isTabPressed = true;\n this.inputEl.current?.focus();\n }\n\n /**\n * @public\n */\n public blur() {\n this.inputEl.current?.blur();\n }\n\n public renderMain = (props: CommonWrapperRestProps<RadioProps<T>>) => {\n const {\n disabled = this.context.disabled,\n warning = this.context.warning,\n error = this.context.error,\n focused,\n onMouseOver,\n onMouseEnter,\n onMouseLeave,\n onValueChange,\n ...rest\n } = props;\n\n const radioProps = {\n className: cx({\n [styles.circle(this.theme)]: true,\n [styles.checked(this.theme)]: this.props.checked,\n [styles.focus(this.theme)]: this.props.focused || this.state.focusedByKeyboard,\n [styles.error(this.theme)]: error,\n [styles.warning(this.theme)]: warning,\n [styles.disabled(this.theme)]: disabled,\n [styles.checkedDisabled(this.theme)]: this.props.checked && disabled,\n [globalClasses.circle]: true,\n }),\n };\n\n let value: string | number | undefined;\n if (typeof this.props.value === 'string' || typeof this.props.value === 'number') {\n value = this.props.value;\n }\n\n const inputProps = {\n ...rest,\n type: 'radio',\n className: styles.input(),\n disabled,\n tabIndex: this.props.tabIndex,\n value,\n ref: this.inputEl,\n onChange: this.handleChange,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n };\n\n const labelProps = {\n className: cx(styles.root(this.theme), {\n [styles.rootChecked(this.theme)]: this.props.checked,\n [styles.rootIE11()]: isIE11 || isEdge,\n }),\n onMouseOver: this.handleMouseOver,\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n onClick: fixFirefoxModifiedClickOnLabel(this.inputEl),\n };\n\n if (this._isInRadioGroup()) {\n const checked = this.props.value === this.context.activeItem;\n inputProps.checked = checked;\n inputProps.name = this.context.name;\n inputProps.suppressHydrationWarning = true;\n labelProps.className = cx(styles.root(this.theme), {\n [styles.rootChecked(this.theme)]: checked,\n [styles.rootIE11()]: isIE11 || isEdge,\n });\n radioProps.className = cx(radioProps.className, {\n [styles.checked(this.theme)]: checked,\n [styles.checkedDisabled(this.theme)]: checked && disabled,\n });\n }\n\n return (\n <label data-tid={RadioDataTids.root} {...labelProps}>\n <input {...inputProps} />\n <span {...radioProps}>\n <span className={styles.placeholder()} />\n </span>\n {this.props.children && this.renderCaption()}\n </label>\n );\n };\n\n private _isInRadioGroup = () => Boolean(this.context.name);\n\n private renderCaption() {\n const captionClassNames = cx({\n [styles.caption(this.theme)]: true,\n [styles.captionDisabled(this.theme)]: !!(this.props.disabled || this.context.disabled),\n [styles.captionIE11()]: isIE11 || isEdge,\n });\n\n return <div className={captionClassNames}>{this.props.children}</div>;\n }\n\n private handleChange: React.ChangeEventHandler<HTMLInputElement> = (e) => {\n this.props.onValueChange?.(this.props.value);\n\n if (this._isInRadioGroup()) {\n this.context.onSelect(this.props.value);\n }\n\n this.props.onChange?.(e);\n };\n\n private handleMouseOver: React.MouseEventHandler<HTMLLabelElement> = (e) => {\n this.props.onMouseOver?.(e);\n };\n\n private handleMouseEnter: React.MouseEventHandler<HTMLLabelElement> = (e) => {\n this.props.onMouseEnter?.(e);\n };\n\n private handleMouseLeave: React.MouseEventHandler<HTMLLabelElement> = (e) => {\n this.props.onMouseLeave?.(e);\n };\n\n private handleFocus = (e: React.FocusEvent<any>) => {\n if (!this.context.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n requestAnimationFrame(() => {\n if (keyListener.isArrowPressed || keyListener.isTabPressed) {\n this.setState({ focusedByKeyboard: true });\n }\n });\n\n if (this.props.onFocus) {\n this.props.onFocus(e);\n }\n }\n };\n\n private handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n this.props.onBlur?.(e);\n this.setState({ focusedByKeyboard: false });\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["Radio.tsx"],"names":["React","ThemeContext","CommonWrapper","cx","keyListener","rootNode","fixFirefoxModifiedClickOnLabel","isEdge","isIE11","RadioGroupContext","createPropsGetter","styles","globalClasses","RadioDataTids","root","Radio","state","focusedByKeyboard","getProps","defaultProps","context","inputEl","createRef","renderMain","props","disabled","warning","error","focused","onMouseOver","onMouseEnter","onMouseLeave","onValueChange","rest","radioProps","className","circle","theme","checked","focus","checkedDisabled","value","inputProps","type","input","tabIndex","ref","onChange","handleChange","onFocus","handleFocus","onBlur","handleBlur","labelProps","rootChecked","rootIE11","handleMouseOver","handleMouseEnter","handleMouseLeave","onClick","_isInRadioGroup","activeItem","name","suppressHydrationWarning","placeholder","children","renderCaption","Boolean","e","onSelect","requestAnimationFrame","isArrowPressed","isTabPressed","setState","render","setRootNode","current","blur","captionClassNames","caption","captionDisabled","captionIE11","Component","__KONTUR_REACT_UI__","contextType"],"mappings":"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","sourcesContent":["// TODO: Enable this rule in functional components.\n/* eslint-disable @typescript-eslint/no-unused-vars */\nimport React from 'react';\n\nimport { Override } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { fixFirefoxModifiedClickOnLabel } from '../../lib/events/fixFirefoxModifiedClickOnLabel';\nimport { isEdge, isIE11 } from '../../lib/client';\nimport { RadioGroupContext, RadioGroupContextType } from '../RadioGroup/RadioGroupContext';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles, globalClasses } from './Radio.styles';\n\nexport interface RadioProps<T>\n extends CommonProps,\n Override<\n React.InputHTMLAttributes<HTMLInputElement>,\n {\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n /**\n * Состояние фокуса.\n */\n focused?: boolean;\n /**\n * Функция, вызываемая при изменении `value`.\n */\n onValueChange?: (value: T) => void;\n /**\n * HTML-событие `onmouseenter`\n */\n onMouseEnter?: React.MouseEventHandler<HTMLLabelElement>;\n /**\n * HTML-событие `mouseleave`\n */\n onMouseLeave?: React.MouseEventHandler<HTMLLabelElement>;\n /**\n * HTML-событие `onmouseover`\n */\n onMouseOver?: React.MouseEventHandler<HTMLLabelElement>;\n /**\n * HTML-атрибут `value`.\n */\n value: T;\n }\n > {}\n\nexport interface RadioState {\n focusedByKeyboard: boolean;\n}\n\nexport const RadioDataTids = {\n root: 'Radio__root',\n} as const;\n\ntype DefaultProps = Required<Pick<RadioProps<any>, 'focused'>>;\n\n/**\n * Радио-кнопки используются, когда может быть выбран только один вариант из нескольких.\n */\n@rootNode\nexport class Radio<T> extends React.Component<RadioProps<T>, RadioState> {\n public static __KONTUR_REACT_UI__ = 'Radio';\n\n public state = {\n focusedByKeyboard: false,\n };\n\n public static defaultProps: DefaultProps = {\n focused: false,\n };\n\n private getProps = createPropsGetter(Radio.defaultProps);\n\n public static contextType = RadioGroupContext;\n public context: RadioGroupContextType<T> = this.context;\n\n private inputEl = React.createRef<HTMLInputElement>();\n private setRootNode!: TSetRootNode;\n private theme!: Theme;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public focus() {\n keyListener.isTabPressed = true;\n this.inputEl.current?.focus();\n }\n\n /**\n * @public\n */\n public blur() {\n this.inputEl.current?.blur();\n }\n\n public renderMain = (props: CommonWrapperRestProps<RadioProps<T>>) => {\n const {\n disabled = this.context.disabled,\n warning = this.context.warning,\n error = this.context.error,\n focused,\n onMouseOver,\n onMouseEnter,\n onMouseLeave,\n onValueChange,\n ...rest\n } = props;\n\n const radioProps = {\n className: cx({\n [styles.circle(this.theme)]: true,\n [styles.checked(this.theme)]: this.props.checked,\n [styles.focus(this.theme)]: this.getProps().focused || this.state.focusedByKeyboard,\n [styles.error(this.theme)]: error,\n [styles.warning(this.theme)]: warning,\n [styles.disabled(this.theme)]: disabled,\n [styles.checkedDisabled(this.theme)]: this.props.checked && disabled,\n [globalClasses.circle]: true,\n }),\n };\n\n let value: string | number | undefined;\n if (typeof this.props.value === 'string' || typeof this.props.value === 'number') {\n value = this.props.value;\n }\n\n const inputProps = {\n ...rest,\n type: 'radio',\n className: styles.input(),\n disabled,\n tabIndex: this.props.tabIndex,\n value,\n ref: this.inputEl,\n onChange: this.handleChange,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n };\n\n const labelProps = {\n className: cx(styles.root(this.theme), {\n [styles.rootChecked(this.theme)]: this.props.checked,\n [styles.rootIE11()]: isIE11 || isEdge,\n }),\n onMouseOver: this.handleMouseOver,\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n onClick: fixFirefoxModifiedClickOnLabel(this.inputEl),\n };\n\n if (this._isInRadioGroup()) {\n const checked = this.props.value === this.context.activeItem;\n inputProps.checked = checked;\n inputProps.name = this.context.name;\n inputProps.suppressHydrationWarning = true;\n labelProps.className = cx(styles.root(this.theme), {\n [styles.rootChecked(this.theme)]: checked,\n [styles.rootIE11()]: isIE11 || isEdge,\n });\n radioProps.className = cx(radioProps.className, {\n [styles.checked(this.theme)]: checked,\n [styles.checkedDisabled(this.theme)]: checked && disabled,\n });\n }\n\n return (\n <label data-tid={RadioDataTids.root} {...labelProps}>\n <input {...inputProps} />\n <span {...radioProps}>\n <span className={styles.placeholder()} />\n </span>\n {this.props.children && this.renderCaption()}\n </label>\n );\n };\n\n private _isInRadioGroup = () => Boolean(this.context.name);\n\n private renderCaption() {\n const captionClassNames = cx({\n [styles.caption(this.theme)]: true,\n [styles.captionDisabled(this.theme)]: !!(this.props.disabled || this.context.disabled),\n [styles.captionIE11()]: isIE11 || isEdge,\n });\n\n return <div className={captionClassNames}>{this.props.children}</div>;\n }\n\n private handleChange: React.ChangeEventHandler<HTMLInputElement> = (e) => {\n this.props.onValueChange?.(this.props.value);\n\n if (this._isInRadioGroup()) {\n this.context.onSelect(this.props.value);\n }\n\n this.props.onChange?.(e);\n };\n\n private handleMouseOver: React.MouseEventHandler<HTMLLabelElement> = (e) => {\n this.props.onMouseOver?.(e);\n };\n\n private handleMouseEnter: React.MouseEventHandler<HTMLLabelElement> = (e) => {\n this.props.onMouseEnter?.(e);\n };\n\n private handleMouseLeave: React.MouseEventHandler<HTMLLabelElement> = (e) => {\n this.props.onMouseLeave?.(e);\n };\n\n private handleFocus = (e: React.FocusEvent<any>) => {\n if (!this.context.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n requestAnimationFrame(() => {\n if (keyListener.isArrowPressed || keyListener.isTabPressed) {\n this.setState({ focusedByKeyboard: true });\n }\n });\n\n if (this.props.onFocus) {\n this.props.onFocus(e);\n }\n }\n };\n\n private handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n this.props.onBlur?.(e);\n this.setState({ focusedByKeyboard: false });\n };\n}\n"]}
|
|
@@ -43,6 +43,7 @@ export interface RadioState {
|
|
|
43
43
|
export declare const RadioDataTids: {
|
|
44
44
|
readonly root: "Radio__root";
|
|
45
45
|
};
|
|
46
|
+
declare type DefaultProps = Required<Pick<RadioProps<any>, 'focused'>>;
|
|
46
47
|
/**
|
|
47
48
|
* Радио-кнопки используются, когда может быть выбран только один вариант из нескольких.
|
|
48
49
|
*/
|
|
@@ -51,9 +52,8 @@ export declare class Radio<T> extends React.Component<RadioProps<T>, RadioState>
|
|
|
51
52
|
state: {
|
|
52
53
|
focusedByKeyboard: boolean;
|
|
53
54
|
};
|
|
54
|
-
static defaultProps:
|
|
55
|
-
|
|
56
|
-
};
|
|
55
|
+
static defaultProps: DefaultProps;
|
|
56
|
+
private getProps;
|
|
57
57
|
static contextType: React.Context<RadioGroupContextType<any>>;
|
|
58
58
|
context: RadioGroupContextType<T>;
|
|
59
59
|
private inputEl;
|
|
@@ -78,3 +78,4 @@ export declare class Radio<T> extends React.Component<RadioProps<T>, RadioState>
|
|
|
78
78
|
private handleFocus;
|
|
79
79
|
private handleBlur;
|
|
80
80
|
}
|
|
81
|
+
export {};
|
|
@@ -44,7 +44,6 @@ function _arrayLikeToArray(arr, len) {
|
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
import React from 'react';
|
|
47
|
-
import PropTypes from 'prop-types';
|
|
48
47
|
import invariant from 'invariant';
|
|
49
48
|
import { getRandomID, isNonNullable } from "../../../lib/utils";
|
|
50
49
|
import { Radio } from "../../Radio";
|
|
@@ -60,17 +59,17 @@ import { RadioGroupContext } from "../RadioGroupContext";
|
|
|
60
59
|
export var RadioGroupDataTids = {
|
|
61
60
|
root: 'RadioGroup__root'
|
|
62
61
|
};
|
|
62
|
+
export
|
|
63
63
|
/**
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
export var RadioGroup = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {
|
|
64
|
+
*
|
|
65
|
+
* `children` может содержать любую разметку с компонентами Radio,
|
|
66
|
+
* если не передан параметр `items`.
|
|
67
|
+
* Каждому компоненту Radio нужно указать параметр `value`, такого же типа
|
|
68
|
+
* как и параметр `value` самой радиогруппы.
|
|
69
|
+
*
|
|
70
|
+
* Значения активного элемента сравниваются по строгому равенству `===`
|
|
71
|
+
*/
|
|
72
|
+
var RadioGroup = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {
|
|
74
73
|
_inheritsLoose(RadioGroup, _React$Component);
|
|
75
74
|
|
|
76
75
|
function RadioGroup(props) {
|
|
@@ -122,7 +121,9 @@ export var RadioGroup = rootNode(_class = (_temp = _class2 = /*#__PURE__*/functi
|
|
|
122
121
|
key: _this.getKeyByItem(itemValue),
|
|
123
122
|
className: cx((_cx = {}, _cx[styles.item(_this.theme)] = true, _cx[styles.itemFirst()] = index === 0, _cx[styles.itemInline()] = !!_this.props.inline, _cx))
|
|
124
123
|
};
|
|
125
|
-
return /*#__PURE__*/React.createElement("span",
|
|
124
|
+
return /*#__PURE__*/React.createElement("span", _extends({}, itemProps, {
|
|
125
|
+
role: "presentation"
|
|
126
|
+
}), /*#__PURE__*/React.createElement(Radio, {
|
|
126
127
|
value: itemValue
|
|
127
128
|
}, _this.getProps().renderItem(itemValue, data)));
|
|
128
129
|
};
|
|
@@ -162,7 +163,8 @@ export var RadioGroup = rootNode(_class = (_temp = _class2 = /*#__PURE__*/functi
|
|
|
162
163
|
onMouseLeave = _this$props.onMouseLeave,
|
|
163
164
|
onMouseOver = _this$props.onMouseOver,
|
|
164
165
|
onMouseEnter = _this$props.onMouseEnter,
|
|
165
|
-
onBlur = _this$props.onBlur
|
|
166
|
+
onBlur = _this$props.onBlur,
|
|
167
|
+
ariaDescribedby = _this$props['aria-describedby'];
|
|
166
168
|
var style = {
|
|
167
169
|
width: width != null ? width : 'auto'
|
|
168
170
|
};
|
|
@@ -179,8 +181,11 @@ export var RadioGroup = rootNode(_class = (_temp = _class2 = /*#__PURE__*/functi
|
|
|
179
181
|
"data-tid": RadioGroupDataTids.root,
|
|
180
182
|
ref: this.ref,
|
|
181
183
|
style: style,
|
|
182
|
-
className: styles.root()
|
|
183
|
-
|
|
184
|
+
className: styles.root(),
|
|
185
|
+
role: "radiogroup"
|
|
186
|
+
}, handlers, {
|
|
187
|
+
"aria-describedby": ariaDescribedby
|
|
188
|
+
}), /*#__PURE__*/React.createElement(RadioGroupContext.Provider, {
|
|
184
189
|
value: this.getRadioGroupContextValue()
|
|
185
190
|
}, this.renderChildren()))));
|
|
186
191
|
}
|
|
@@ -216,19 +221,7 @@ export var RadioGroup = rootNode(_class = (_temp = _class2 = /*#__PURE__*/functi
|
|
|
216
221
|
};
|
|
217
222
|
|
|
218
223
|
return RadioGroup;
|
|
219
|
-
}(React.Component), _class2.__KONTUR_REACT_UI__ = 'RadioGroup', _class2.
|
|
220
|
-
children: PropTypes.node,
|
|
221
|
-
disabled: PropTypes.bool,
|
|
222
|
-
error: PropTypes.bool,
|
|
223
|
-
inline: PropTypes.bool,
|
|
224
|
-
name: PropTypes.string,
|
|
225
|
-
warning: PropTypes.bool,
|
|
226
|
-
width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
|
|
227
|
-
onBlur: PropTypes.func,
|
|
228
|
-
onMouseEnter: PropTypes.func,
|
|
229
|
-
onMouseLeave: PropTypes.func,
|
|
230
|
-
onMouseOver: PropTypes.func
|
|
231
|
-
}, _class2.defaultProps = {
|
|
224
|
+
}(React.Component), _class2.__KONTUR_REACT_UI__ = 'RadioGroup', _class2.defaultProps = {
|
|
232
225
|
renderItem: renderItem
|
|
233
226
|
}, _class2.Prevent = Prevent, _temp)) || _class;
|
|
234
227
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["RadioGroup.tsx"],"names":["React","PropTypes","invariant","getRandomID","isNonNullable","Radio","createPropsGetter","FocusTrap","ThemeContext","CommonWrapper","cx","rootNode","styles","Prevent","RadioGroupContext","RadioGroupDataTids","root","RadioGroup","props","name","getProps","defaultProps","getRadioGroupContextValue","activeItem","getValue","onSelect","handleSelect","getName","disabled","error","warning","isControlled","value","state","setState","onValueChange","renderRadio","itemValue","data","index","itemProps","key","getKeyByItem","className","item","theme","itemFirst","itemInline","inline","renderItem","toKey","undefined","ref","element","node","defaultValue","render","renderMain","width","onMouseLeave","onMouseOver","onMouseEnter","onBlur","style","handlers","setRootNode","renderChildren","focus","radio","querySelector","items","children","mapItems","Component","__KONTUR_REACT_UI__","propTypes","bool","string","oneOfType","number","func","_value","fn","result","entry","normalizeEntry","push","Array","isArray"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport invariant from 'invariant';\n\nimport { getRandomID, isNonNullable } from '../../lib/utils';\nimport { Radio } from '../Radio';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Nullable } from '../../typings/utility-types';\nimport { FocusTrap } from '../../internal/FocusTrap';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\n\nimport { styles } from './RadioGroup.styles';\nimport { Prevent } from './Prevent';\nimport { RadioGroupContext, RadioGroupContextType } from './RadioGroupContext';\n\nexport interface RadioGroupProps<T = string | number> extends CommonProps {\n /**\n * Значение по умолчанию. Должно быть одним из значений дочерних радиокнопок\n * или значений из параметра `items`\n */\n defaultValue?: T;\n /**\n * Значение радиогруппы. Должно быть одним из значений радиокнопок.\n * Если не указано, то компонент будет работать, как неконтролируемый\n */\n value?: T;\n /**\n * Может быть использовано, если не передан параметр `children`\n *\n * Массив параметров радиокнопок. Может быть типа `Array<Value>` или\n * `Array<[Value, Data]>`, где тип `Value` — значение радиокнопки, а `Data`\n * — значение которое будет использовано вторым параметром в `renderItem`.\n * Если тип `items: Array<Value>`, то он будет приведен к типу\n * `Array<[Value, Value]>`\n */\n items?: T[] | Array<[T, React.ReactNode]>;\n /**\n * Аттрибут name для вложенных радиокнопок. Если не указан, то сгенерируется\n * случайное имя\n */\n name?: string;\n\n /**\n * Метод получения уникального ключа по элементу\n * @param item\n */\n toKey?: (item: T) => string | number;\n /**\n * Дизейблит все радиокнопки\n */\n disabled?: boolean;\n /**\n * Переводит все радиокнопки в состояние валидации: предупреждение.\n */\n warning?: boolean;\n /**\n * Переводит все радиокнопки в состояние валидации: ошибка.\n */\n error?: boolean;\n /**\n * Выравнивает элементы в строку. Не работает с `children`\n */\n inline?: boolean;\n /**\n * Ширина радиогруппы. Не работает с `children`\n */\n width?: React.CSSProperties['width'];\n /**\n * Метод отрисовки контента радиокнопки. Не работает с `children`.\n *\n * Принимает два аргумента: `(value: Value, data: Data) => React.Node`\n */\n renderItem?: (itemValue: T, data: React.ReactNode) => React.ReactNode;\n /** Вызывается при изменении `value` */\n onValueChange?: (value: T) => void;\n onBlur?: (event: FocusEvent) => void;\n onMouseLeave?: () => any;\n onMouseOver?: () => any;\n onMouseEnter?: () => any;\n}\n\nexport interface RadioGroupState<T> {\n activeItem?: T;\n}\n\nexport const RadioGroupDataTids = {\n root: 'RadioGroup__root',\n} as const;\n\n/**\n *\n * `children` может содержать любую разметку с компонентами Radio,\n * если не передан параметр `items`.\n * Каждому компоненту Radio нужно указать параметр `value`, такого же типа\n * как и параметр `value` самой радиогруппы.\n *\n * Значения активного элемента сравниваются по строгому равенству `===`\n */\n@rootNode\nexport class RadioGroup<T> extends React.Component<RadioGroupProps<T>, RadioGroupState<T>> {\n public static __KONTUR_REACT_UI__ = 'RadioGroup';\n\n public static propTypes = {\n children: PropTypes.node,\n disabled: PropTypes.bool,\n error: PropTypes.bool,\n inline: PropTypes.bool,\n name: PropTypes.string,\n warning: PropTypes.bool,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n onBlur: PropTypes.func,\n onMouseEnter: PropTypes.func,\n onMouseLeave: PropTypes.func,\n onMouseOver: PropTypes.func,\n };\n\n public static defaultProps = {\n renderItem,\n };\n\n public static Prevent = Prevent;\n\n private theme!: Theme;\n\n private node: Nullable<HTMLSpanElement>;\n private name = getRandomID();\n private getProps = createPropsGetter(RadioGroup.defaultProps);\n private setRootNode!: TSetRootNode;\n\n constructor(props: RadioGroupProps<T>) {\n super(props);\n\n this.state = {\n activeItem: this.props.defaultValue,\n };\n }\n\n private getRadioGroupContextValue = (): RadioGroupContextType<T> => {\n return {\n activeItem: this.getValue(),\n onSelect: this.handleSelect,\n name: this.getName(),\n disabled: this.props.disabled,\n error: this.props.error,\n warning: this.props.warning,\n };\n };\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const { width, onMouseLeave, onMouseOver, onMouseEnter, onBlur } = this.props;\n const style = {\n width: width ?? 'auto',\n };\n const handlers = {\n onMouseOver,\n onMouseEnter,\n onMouseLeave,\n };\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <FocusTrap onBlur={onBlur}>\n <span data-tid={RadioGroupDataTids.root} ref={this.ref} style={style} className={styles.root()} {...handlers}>\n <RadioGroupContext.Provider value={this.getRadioGroupContextValue()}>\n {this.renderChildren()}\n </RadioGroupContext.Provider>\n </span>\n </FocusTrap>\n </CommonWrapper>\n );\n }\n\n /**\n * @public\n */\n public focus() {\n const node = this.node;\n if (!node) {\n return;\n }\n\n let radio = node.querySelector('input[type=\"radio\"]:checked') as Nullable<HTMLInputElement>;\n\n // If no checked radios, try get first radio\n if (!radio || radio.disabled) {\n radio = node.querySelector('input[type=\"radio\"]:not([disabled])') as Nullable<HTMLInputElement>;\n }\n\n if (radio) {\n radio.focus();\n }\n }\n\n private getValue = () => (this.isControlled() ? this.props.value : this.state.activeItem);\n\n private getName = () => this.props.name || this.name;\n\n private isControlled = () => isNonNullable(this.props.value);\n\n private handleSelect = (value: T) => {\n if (!this.isControlled()) {\n this.setState({ activeItem: value });\n }\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private renderChildren() {\n const { items, children } = this.props;\n invariant((!items && children) || (items && !children), 'Either items or children must be passed, not both');\n return items ? mapItems<T>(this.renderRadio, items) : children;\n }\n\n private renderRadio = (itemValue: T, data: React.ReactNode, index: number): JSX.Element => {\n const itemProps = {\n key: this.getKeyByItem(itemValue),\n className: cx({\n [styles.item(this.theme)]: true,\n [styles.itemFirst()]: index === 0,\n [styles.itemInline()]: !!this.props.inline,\n }),\n };\n\n return (\n <span {...itemProps}>\n <Radio value={itemValue}>{this.getProps().renderItem<T>(itemValue, data)}</Radio>\n </span>\n );\n };\n\n private getKeyByItem = (itemValue: T) => {\n if (this.props.toKey) {\n return this.props.toKey(itemValue);\n }\n return typeof itemValue === 'string' || typeof itemValue === 'number' ? itemValue : undefined;\n };\n\n private ref = (element: HTMLSpanElement) => {\n this.node = element;\n };\n}\n\nfunction renderItem<T>(_value: T, data: React.ReactNode) {\n return data;\n}\n\nfunction mapItems<T>(\n fn: (value: T, data: React.ReactNode, index: number) => React.ReactNode,\n items: T[] | Array<[T, React.ReactNode]>,\n) {\n const result: React.ReactNode[] = [];\n let index = 0;\n for (const entry of items) {\n const [value, data] = normalizeEntry<T>(entry);\n result.push(fn(value, data, index));\n ++index;\n }\n return result;\n}\n\nfunction normalizeEntry<T>(entry: T | [T, React.ReactNode]): [T, React.ReactNode] {\n if (!Array.isArray(entry)) {\n return [entry, entry];\n }\n return entry;\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["RadioGroup.tsx"],"names":["React","invariant","getRandomID","isNonNullable","Radio","createPropsGetter","FocusTrap","ThemeContext","CommonWrapper","cx","rootNode","styles","Prevent","RadioGroupContext","RadioGroupDataTids","root","RadioGroup","props","name","getProps","defaultProps","getRadioGroupContextValue","activeItem","getValue","onSelect","handleSelect","getName","disabled","error","warning","isControlled","value","state","setState","onValueChange","renderRadio","itemValue","data","index","itemProps","key","getKeyByItem","className","item","theme","itemFirst","itemInline","inline","renderItem","toKey","undefined","ref","element","node","defaultValue","render","renderMain","width","onMouseLeave","onMouseOver","onMouseEnter","onBlur","ariaDescribedby","style","handlers","setRootNode","renderChildren","focus","radio","querySelector","items","children","mapItems","Component","__KONTUR_REACT_UI__","_value","fn","result","entry","normalizeEntry","push","Array","isArray"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\nimport invariant from 'invariant';\n\nimport { getRandomID, isNonNullable } from '../../lib/utils';\nimport { Radio } from '../Radio';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Nullable } from '../../typings/utility-types';\nimport { FocusTrap } from '../../internal/FocusTrap';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\n\nimport { styles } from './RadioGroup.styles';\nimport { Prevent } from './Prevent';\nimport { RadioGroupContext, RadioGroupContextType } from './RadioGroupContext';\n\nexport interface RadioGroupProps<T = string | number> extends CommonProps {\n /**\n * Значение по умолчанию. Должно быть одним из значений дочерних радиокнопок\n * или значений из параметра `items`\n */\n defaultValue?: T;\n /**\n * Значение радиогруппы. Должно быть одним из значений радиокнопок.\n * Если не указано, то компонент будет работать, как неконтролируемый\n */\n value?: T;\n /**\n * Может быть использовано, если не передан параметр `children`\n *\n * Массив параметров радиокнопок. Может быть типа `Array<Value>` или\n * `Array<[Value, Data]>`, где тип `Value` — значение радиокнопки, а `Data`\n * — значение которое будет использовано вторым параметром в `renderItem`.\n * Если тип `items: Array<Value>`, то он будет приведен к типу\n * `Array<[Value, Value]>`\n */\n items?: T[] | Array<[T, React.ReactNode]>;\n /**\n * Аттрибут name для вложенных радиокнопок. Если не указан, то сгенерируется\n * случайное имя\n */\n name?: string;\n\n /**\n * Метод получения уникального ключа по элементу\n * @param item\n */\n toKey?: (item: T) => string | number;\n /**\n * Дизейблит все радиокнопки\n */\n disabled?: boolean;\n /**\n * Переводит все радиокнопки в состояние валидации: предупреждение.\n */\n warning?: boolean;\n /**\n * Переводит все радиокнопки в состояние валидации: ошибка.\n */\n error?: boolean;\n /**\n * Выравнивает элементы в строку. Не работает с `children`\n */\n inline?: boolean;\n /**\n * Ширина радиогруппы. Не работает с `children`\n */\n width?: React.CSSProperties['width'];\n /**\n * Метод отрисовки контента радиокнопки. Не работает с `children`.\n *\n * Принимает два аргумента: `(value: Value, data: Data) => React.Node`\n */\n renderItem?: (itemValue: T, data: React.ReactNode) => React.ReactNode;\n /**\n * Атрибут для указания id элемента(-ов), описывающих его\n */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n /** Вызывается при изменении `value` */\n onValueChange?: (value: T) => void;\n onBlur?: (event: FocusEvent) => void;\n onMouseLeave?: () => any;\n onMouseOver?: () => any;\n onMouseEnter?: () => any;\n}\n\nexport interface RadioGroupState<T> {\n activeItem?: T;\n}\n\nexport const RadioGroupDataTids = {\n root: 'RadioGroup__root',\n} as const;\n\ntype DefaultProps = Required<Pick<RadioGroupProps<unknown>, 'renderItem'>>;\n\n/**\n *\n * `children` может содержать любую разметку с компонентами Radio,\n * если не передан параметр `items`.\n * Каждому компоненту Radio нужно указать параметр `value`, такого же типа\n * как и параметр `value` самой радиогруппы.\n *\n * Значения активного элемента сравниваются по строгому равенству `===`\n */\n@rootNode\nexport class RadioGroup<T> extends React.Component<RadioGroupProps<T>, RadioGroupState<T>> {\n public static __KONTUR_REACT_UI__ = 'RadioGroup';\n\n public static defaultProps: DefaultProps = {\n renderItem,\n };\n\n public static Prevent = Prevent;\n\n private theme!: Theme;\n\n private node: Nullable<HTMLSpanElement>;\n private name = getRandomID();\n private getProps = createPropsGetter(RadioGroup.defaultProps);\n private setRootNode!: TSetRootNode;\n\n constructor(props: RadioGroupProps<T>) {\n super(props);\n\n this.state = {\n activeItem: this.props.defaultValue,\n };\n }\n\n private getRadioGroupContextValue = (): RadioGroupContextType<T> => {\n return {\n activeItem: this.getValue(),\n onSelect: this.handleSelect,\n name: this.getName(),\n disabled: this.props.disabled,\n error: this.props.error,\n warning: this.props.warning,\n };\n };\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const { width, onMouseLeave, onMouseOver, onMouseEnter, onBlur, 'aria-describedby': ariaDescribedby } = this.props;\n const style = {\n width: width ?? 'auto',\n };\n const handlers = {\n onMouseOver,\n onMouseEnter,\n onMouseLeave,\n };\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <FocusTrap onBlur={onBlur}>\n <span\n data-tid={RadioGroupDataTids.root}\n ref={this.ref}\n style={style}\n className={styles.root()}\n role=\"radiogroup\"\n {...handlers}\n aria-describedby={ariaDescribedby}\n >\n <RadioGroupContext.Provider value={this.getRadioGroupContextValue()}>\n {this.renderChildren()}\n </RadioGroupContext.Provider>\n </span>\n </FocusTrap>\n </CommonWrapper>\n );\n }\n\n /**\n * @public\n */\n public focus() {\n const node = this.node;\n if (!node) {\n return;\n }\n\n let radio = node.querySelector('input[type=\"radio\"]:checked') as Nullable<HTMLInputElement>;\n\n // If no checked radios, try get first radio\n if (!radio || radio.disabled) {\n radio = node.querySelector('input[type=\"radio\"]:not([disabled])') as Nullable<HTMLInputElement>;\n }\n\n if (radio) {\n radio.focus();\n }\n }\n\n private getValue = () => (this.isControlled() ? this.props.value : this.state.activeItem);\n\n private getName = () => this.props.name || this.name;\n\n private isControlled = () => isNonNullable(this.props.value);\n\n private handleSelect = (value: T) => {\n if (!this.isControlled()) {\n this.setState({ activeItem: value });\n }\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private renderChildren() {\n const { items, children } = this.props;\n invariant((!items && children) || (items && !children), 'Either items or children must be passed, not both');\n return items ? mapItems<T>(this.renderRadio, items) : children;\n }\n\n private renderRadio = (itemValue: T, data: React.ReactNode, index: number): JSX.Element => {\n const itemProps = {\n key: this.getKeyByItem(itemValue),\n className: cx({\n [styles.item(this.theme)]: true,\n [styles.itemFirst()]: index === 0,\n [styles.itemInline()]: !!this.props.inline,\n }),\n };\n\n return (\n <span {...itemProps} role=\"presentation\">\n <Radio value={itemValue}>{this.getProps().renderItem(itemValue, data)}</Radio>\n </span>\n );\n };\n\n private getKeyByItem = (itemValue: T) => {\n if (this.props.toKey) {\n return this.props.toKey(itemValue);\n }\n return typeof itemValue === 'string' || typeof itemValue === 'number' ? itemValue : undefined;\n };\n\n private ref = (element: HTMLSpanElement) => {\n this.node = element;\n };\n}\n\nfunction renderItem<T>(_value: T, data: React.ReactNode) {\n return data;\n}\n\nfunction mapItems<T>(\n fn: (value: T, data: React.ReactNode, index: number) => React.ReactNode,\n items: T[] | Array<[T, React.ReactNode]>,\n) {\n const result: React.ReactNode[] = [];\n let index = 0;\n for (const entry of items) {\n const [value, data] = normalizeEntry<T>(entry);\n result.push(fn(value, data, index));\n ++index;\n }\n return result;\n}\n\nfunction normalizeEntry<T>(entry: T | [T, React.ReactNode]): [T, React.ReactNode] {\n if (!Array.isArray(entry)) {\n return [entry, entry];\n }\n return entry;\n}\n"]}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import PropTypes from 'prop-types';
|
|
1
|
+
import React, { AriaAttributes } from 'react';
|
|
3
2
|
import { CommonProps } from '../../internal/CommonWrapper';
|
|
4
3
|
import { Prevent } from './Prevent';
|
|
5
4
|
export interface RadioGroupProps<T = string | number> extends CommonProps {
|
|
@@ -59,6 +58,10 @@ export interface RadioGroupProps<T = string | number> extends CommonProps {
|
|
|
59
58
|
* Принимает два аргумента: `(value: Value, data: Data) => React.Node`
|
|
60
59
|
*/
|
|
61
60
|
renderItem?: (itemValue: T, data: React.ReactNode) => React.ReactNode;
|
|
61
|
+
/**
|
|
62
|
+
* Атрибут для указания id элемента(-ов), описывающих его
|
|
63
|
+
*/
|
|
64
|
+
'aria-describedby'?: AriaAttributes['aria-describedby'];
|
|
62
65
|
/** Вызывается при изменении `value` */
|
|
63
66
|
onValueChange?: (value: T) => void;
|
|
64
67
|
onBlur?: (event: FocusEvent) => void;
|
|
@@ -72,6 +75,7 @@ export interface RadioGroupState<T> {
|
|
|
72
75
|
export declare const RadioGroupDataTids: {
|
|
73
76
|
readonly root: "RadioGroup__root";
|
|
74
77
|
};
|
|
78
|
+
declare type DefaultProps = Required<Pick<RadioGroupProps<unknown>, 'renderItem'>>;
|
|
75
79
|
/**
|
|
76
80
|
*
|
|
77
81
|
* `children` может содержать любую разметку с компонентами Radio,
|
|
@@ -83,22 +87,7 @@ export declare const RadioGroupDataTids: {
|
|
|
83
87
|
*/
|
|
84
88
|
export declare class RadioGroup<T> extends React.Component<RadioGroupProps<T>, RadioGroupState<T>> {
|
|
85
89
|
static __KONTUR_REACT_UI__: string;
|
|
86
|
-
static
|
|
87
|
-
children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
88
|
-
disabled: PropTypes.Requireable<boolean>;
|
|
89
|
-
error: PropTypes.Requireable<boolean>;
|
|
90
|
-
inline: PropTypes.Requireable<boolean>;
|
|
91
|
-
name: PropTypes.Requireable<string>;
|
|
92
|
-
warning: PropTypes.Requireable<boolean>;
|
|
93
|
-
width: PropTypes.Requireable<string | number>;
|
|
94
|
-
onBlur: PropTypes.Requireable<(...args: any[]) => any>;
|
|
95
|
-
onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>;
|
|
96
|
-
onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
|
|
97
|
-
onMouseOver: PropTypes.Requireable<(...args: any[]) => any>;
|
|
98
|
-
};
|
|
99
|
-
static defaultProps: {
|
|
100
|
-
renderItem: typeof renderItem;
|
|
101
|
-
};
|
|
90
|
+
static defaultProps: DefaultProps;
|
|
102
91
|
static Prevent: typeof Prevent;
|
|
103
92
|
private theme;
|
|
104
93
|
private node;
|
|
@@ -122,5 +111,4 @@ export declare class RadioGroup<T> extends React.Component<RadioGroupProps<T>, R
|
|
|
122
111
|
private getKeyByItem;
|
|
123
112
|
private ref;
|
|
124
113
|
}
|
|
125
|
-
declare function renderItem<T>(_value: T, data: React.ReactNode): React.ReactNode;
|
|
126
114
|
export {};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import React, { useEffect } from 'react';
|
|
2
|
-
import propTypes from 'prop-types';
|
|
3
2
|
import { isFunction } from "../../../lib/utils";
|
|
4
3
|
import { CommonWrapper } from "../../../internal/CommonWrapper";
|
|
5
4
|
import { useResponsiveLayout } from "../useResponsiveLayout";
|
|
@@ -7,18 +6,16 @@ import { useResponsiveLayout } from "../useResponsiveLayout";
|
|
|
7
6
|
* Компонент для определения текущего лэйаута.
|
|
8
7
|
*/
|
|
9
8
|
|
|
10
|
-
export
|
|
9
|
+
export function ResponsiveLayout(props) {
|
|
11
10
|
var _props$children, _props$children2;
|
|
12
11
|
|
|
13
|
-
var layoutFlags = useResponsiveLayout(
|
|
12
|
+
var layoutFlags = useResponsiveLayout({
|
|
13
|
+
customMediaQueries: props.customMediaQueries
|
|
14
|
+
});
|
|
14
15
|
useEffect(function () {
|
|
15
16
|
if (props.onLayoutChange) {
|
|
16
17
|
props.onLayoutChange(layoutFlags);
|
|
17
18
|
}
|
|
18
19
|
}, [layoutFlags]);
|
|
19
20
|
return /*#__PURE__*/React.createElement(CommonWrapper, props, isFunction(props.children) ? (_props$children = props.children(layoutFlags)) != null ? _props$children : null : (_props$children2 = props.children) != null ? _props$children2 : null);
|
|
20
|
-
}
|
|
21
|
-
ResponsiveLayout.propTypes = {
|
|
22
|
-
onLayoutChange: propTypes.func,
|
|
23
|
-
children: propTypes.oneOfType([propTypes.node, propTypes.func])
|
|
24
|
-
};
|
|
21
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["ResponsiveLayout.tsx"],"names":["React","useEffect","
|
|
1
|
+
{"version":3,"sources":["ResponsiveLayout.tsx"],"names":["React","useEffect","isFunction","CommonWrapper","useResponsiveLayout","ResponsiveLayout","props","layoutFlags","customMediaQueries","onLayoutChange","children"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,SAAhB,QAAiC,OAAjC;;AAEA,SAASC,UAAT,QAA2B,iBAA3B;AACA,SAASC,aAAT,QAA8B,8BAA9B;;;AAGA,SAASC,mBAAT,QAAoC,uBAApC;;;;;;;;AAQA;AACA;AACA;;AAEA,OAAO,SAASC,gBAAT,CAAoEC,KAApE,EAAqG;AAC1G,MAAMC,WAAW,GAAGH,mBAAmB,CAAI,EAAEI,kBAAkB,EAAEF,KAAK,CAACE,kBAA5B,EAAJ,CAAvC;;AAEAP,EAAAA,SAAS,CAAC,YAAM;AACd,QAAIK,KAAK,CAACG,cAAV,EAA0B;AACxBH,MAAAA,KAAK,CAACG,cAAN,CAAqBF,WAArB;AACD;AACF,GAJQ,EAIN,CAACA,WAAD,CAJM,CAAT;;AAMA;AACE,wBAAC,aAAD,EAAmBD,KAAnB;AACGJ,IAAAA,UAAU,CAACI,KAAK,CAACI,QAAP,CAAV,sBAA6BJ,KAAK,CAACI,QAAN,CAAeH,WAAf,CAA7B,8BAA4D,IAA5D,uBAAmED,KAAK,CAACI,QAAzE,+BAAqF,IADxF,CADF;;;AAKD","sourcesContent":["import React, { useEffect } from 'react';\n\nimport { isFunction } from '../../lib/utils';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\n\nimport { EmptyObject, MediaQueriesType, ResponsiveLayoutFlags } from './types';\nimport { useResponsiveLayout } from './useResponsiveLayout';\n\ninterface ResponsiveLayoutProps<T extends MediaQueriesType = EmptyObject> {\n onLayoutChange?: (layout: ResponsiveLayoutFlags<T>) => void;\n children?: React.ReactNode | ((currentLayout: ResponsiveLayoutFlags<T>) => React.ReactNode);\n customMediaQueries?: T;\n}\n\n/**\n * Компонент для определения текущего лэйаута.\n */\n\nexport function ResponsiveLayout<T extends MediaQueriesType = EmptyObject>(props: ResponsiveLayoutProps<T>) {\n const layoutFlags = useResponsiveLayout<T>({ customMediaQueries: props.customMediaQueries });\n\n useEffect(() => {\n if (props.onLayoutChange) {\n props.onLayoutChange(layoutFlags);\n }\n }, [layoutFlags]);\n\n return (\n <CommonWrapper {...props}>\n {isFunction(props.children) ? props.children(layoutFlags) ?? null : props.children ?? null}\n </CommonWrapper>\n );\n}\n"]}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { ResponsiveLayoutFlags } from './types';
|
|
3
|
-
interface ResponsiveLayoutProps {
|
|
4
|
-
onLayoutChange?: (layout: ResponsiveLayoutFlags) => void;
|
|
5
|
-
children?: React.ReactNode | ((currentLayout: ResponsiveLayoutFlags) => React.ReactNode);
|
|
2
|
+
import { EmptyObject, MediaQueriesType, ResponsiveLayoutFlags } from './types';
|
|
3
|
+
interface ResponsiveLayoutProps<T extends MediaQueriesType = EmptyObject> {
|
|
4
|
+
onLayoutChange?: (layout: ResponsiveLayoutFlags<T>) => void;
|
|
5
|
+
children?: React.ReactNode | ((currentLayout: ResponsiveLayoutFlags<T>) => React.ReactNode);
|
|
6
|
+
customMediaQueries?: T;
|
|
6
7
|
}
|
|
7
8
|
/**
|
|
8
9
|
* Компонент для определения текущего лэйаута.
|
|
9
10
|
*/
|
|
10
|
-
export declare
|
|
11
|
+
export declare function ResponsiveLayout<T extends MediaQueriesType = EmptyObject>(props: ResponsiveLayoutProps<T>): JSX.Element;
|
|
11
12
|
export {};
|
|
@@ -40,4 +40,35 @@ class SomeComponent {
|
|
|
40
40
|
}
|
|
41
41
|
```
|
|
42
42
|
|
|
43
|
+
В компонент можно передать проп `customMediaQueries: MediaQueriesType`, который позволяет кастомизировать возвращаемые флаги:
|
|
44
|
+
```ts static
|
|
45
|
+
type MediaQueriesType = Record<string, string>;
|
|
46
|
+
```
|
|
47
|
+
1. Без кастомизации есть только флаг isMobile
|
|
48
|
+
2. Поля из `customMediaQueries` дополняют список возвращаемых флагов в `ResponsiveLayoutFlags`
|
|
49
|
+
3. При добавлении кастомного флага isMobile, значение дефолтного флага перезаписывается в пользу кастомного
|
|
50
|
+
|
|
51
|
+
```jsx static
|
|
52
|
+
import { ResponsiveLayout } from '@skbkontur/react-ui';
|
|
53
|
+
|
|
54
|
+
const customMediaQueries = {
|
|
55
|
+
isTablet: '(min-width: 577px)',
|
|
56
|
+
isDesktop: '(min-width: 1280px)',
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
class SomeComponent {
|
|
60
|
+
public render() {
|
|
61
|
+
return (
|
|
62
|
+
<ResponsiveLayout customMediaQueries={customMediaQueries}>
|
|
63
|
+
{
|
|
64
|
+
({ isMobile, isTablet, isDesktop }) => {
|
|
65
|
+
/* ... */
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
</ResponsiveLayout>
|
|
69
|
+
)
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
```
|
|
73
|
+
|
|
43
74
|
Как альтернативу можно использовать хук [useResponsiveLayout](#/Mobiles).
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import { matchMediaSSRSafe } from "../../../lib/SSRSafe";
|
|
2
3
|
import { canUseDOM } from "../../../lib/client";
|
|
3
4
|
export var eventListenersMap = new Map();
|
|
4
5
|
export function addResponsiveLayoutListener(mediaQuery, callback) {
|
|
@@ -26,17 +27,20 @@ function addCallbackToMQListener(mediaQuery, callback) {
|
|
|
26
27
|
}
|
|
27
28
|
|
|
28
29
|
function createMQListener(mediaQuery, callback) {
|
|
29
|
-
var mql =
|
|
30
|
-
var newMediaQueryInfo = {
|
|
31
|
-
mql: mql,
|
|
32
|
-
listeners: [callback]
|
|
33
|
-
};
|
|
34
|
-
eventListenersMap.set(mediaQuery, newMediaQueryInfo);
|
|
30
|
+
var mql = matchMediaSSRSafe(mediaQuery);
|
|
35
31
|
|
|
36
|
-
if (mql
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
32
|
+
if (mql) {
|
|
33
|
+
var newMediaQueryInfo = {
|
|
34
|
+
mql: mql,
|
|
35
|
+
listeners: [callback]
|
|
36
|
+
};
|
|
37
|
+
eventListenersMap.set(mediaQuery, newMediaQueryInfo);
|
|
38
|
+
|
|
39
|
+
if (mql.addEventListener) {
|
|
40
|
+
mql.addEventListener('change', changeCallback);
|
|
41
|
+
} else {
|
|
42
|
+
mql.addListener(changeCallback);
|
|
43
|
+
}
|
|
40
44
|
}
|
|
41
45
|
}
|
|
42
46
|
|
|
@@ -68,16 +72,20 @@ function removeCallbackFromMQListener(mediaQuery, callback) {
|
|
|
68
72
|
}
|
|
69
73
|
|
|
70
74
|
export function checkMatches(mediaQuery) {
|
|
75
|
+
var _eventListener$mql$ma;
|
|
76
|
+
|
|
71
77
|
if (!canUseDOM) {
|
|
72
78
|
return false;
|
|
73
79
|
}
|
|
74
80
|
|
|
75
81
|
if (!eventListenersMap.has(mediaQuery)) {
|
|
76
|
-
|
|
82
|
+
var _matchMediaSSRSafe;
|
|
83
|
+
|
|
84
|
+
return !!((_matchMediaSSRSafe = matchMediaSSRSafe(mediaQuery)) != null && _matchMediaSSRSafe.matches);
|
|
77
85
|
}
|
|
78
86
|
|
|
79
87
|
var eventListener = eventListenersMap.get(mediaQuery);
|
|
80
|
-
return eventListener.mql.matches;
|
|
88
|
+
return (_eventListener$mql$ma = eventListener == null ? void 0 : eventListener.mql.matches) != null ? _eventListener$mql$ma : false;
|
|
81
89
|
}
|
|
82
90
|
|
|
83
91
|
function changeCallback(e) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["ResponsiveLayoutEvents.ts"],"names":["canUseDOM","eventListenersMap","Map","addResponsiveLayoutListener","mediaQuery","callback","has","addCallbackToMQListener","createMQListener","remove","removeCallbackFromMQListener","eventListener","get","set","listeners","mql","
|
|
1
|
+
{"version":3,"sources":["ResponsiveLayoutEvents.ts"],"names":["matchMediaSSRSafe","canUseDOM","eventListenersMap","Map","addResponsiveLayoutListener","mediaQuery","callback","has","addCallbackToMQListener","createMQListener","remove","removeCallbackFromMQListener","eventListener","get","set","listeners","mql","newMediaQueryInfo","addEventListener","changeCallback","addListener","newListeners","filter","listener","length","removeEventListener","removeListener","checkMatches","matches","e","media","forEach"],"mappings":"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","sourcesContent":["import { matchMediaSSRSafe } from '../../lib/SSRSafe';\nimport { canUseDOM } from '../../lib/client';\n\ninterface mediaQueryData {\n mql: MediaQueryList;\n listeners: Array<(e: MediaQueryListEvent) => void>;\n}\n\nexport interface listenerToken {\n remove: () => void;\n}\n\nexport const eventListenersMap = new Map<string, mediaQueryData>();\n\nexport function addResponsiveLayoutListener(\n mediaQuery: string,\n callback: (e: MediaQueryListEvent) => void,\n): listenerToken {\n if (eventListenersMap.has(mediaQuery)) {\n addCallbackToMQListener(mediaQuery, callback);\n } else {\n createMQListener(mediaQuery, callback);\n }\n\n return {\n remove() {\n removeCallbackFromMQListener(mediaQuery, callback);\n },\n };\n}\n\nfunction addCallbackToMQListener(mediaQuery: string, callback: (e: MediaQueryListEvent) => void) {\n const eventListener = eventListenersMap.get(mediaQuery);\n\n if (eventListener) {\n eventListenersMap.set(mediaQuery, {\n ...eventListener,\n listeners: [...eventListener.listeners, callback],\n });\n }\n}\n\nfunction createMQListener(mediaQuery: string, callback: (e: MediaQueryListEvent) => void) {\n const mql = matchMediaSSRSafe(mediaQuery);\n if (mql) {\n const newMediaQueryInfo: mediaQueryData = { mql, listeners: [callback] };\n\n eventListenersMap.set(mediaQuery, newMediaQueryInfo);\n if (mql.addEventListener) {\n mql.addEventListener('change', changeCallback);\n } else {\n mql.addListener(changeCallback);\n }\n }\n}\n\nfunction removeCallbackFromMQListener(mediaQuery: string, callback: (e: MediaQueryListEvent) => void) {\n if (eventListenersMap.has(mediaQuery)) {\n const eventListener = eventListenersMap.get(mediaQuery);\n\n if (eventListener) {\n const newListeners = eventListener.listeners.filter((listener) => listener !== callback);\n\n if (newListeners.length === 0) {\n if (eventListener.mql.removeEventListener) {\n eventListener.mql.removeEventListener('change', changeCallback);\n } else {\n eventListener.mql.removeListener(changeCallback);\n }\n eventListenersMap.delete(mediaQuery);\n return;\n }\n\n eventListenersMap.set(mediaQuery, {\n ...eventListener,\n listeners: [...newListeners],\n });\n }\n }\n}\n\nexport function checkMatches(mediaQuery: string) {\n if (!canUseDOM) {\n return false;\n }\n\n if (!eventListenersMap.has(mediaQuery)) {\n return !!matchMediaSSRSafe(mediaQuery)?.matches;\n }\n\n const eventListener = eventListenersMap.get(mediaQuery);\n return eventListener?.mql.matches ?? false;\n}\n\nfunction changeCallback(e: MediaQueryListEvent) {\n const eventListener = eventListenersMap.get(e.media);\n\n if (eventListener) {\n eventListener.listeners.forEach((listener) => {\n listener(e);\n });\n }\n}\n"]}
|
|
@@ -3,7 +3,7 @@ import { ResponsiveLayoutFlags } from './types';
|
|
|
3
3
|
export declare function responsiveLayout<T extends new (...args: any[]) => React.Component>(WrappedComp: T): {
|
|
4
4
|
new (...args: any[]): {
|
|
5
5
|
layout: ResponsiveLayoutFlags;
|
|
6
|
-
currentLayout: ResponsiveLayoutFlags
|
|
6
|
+
currentLayout: ResponsiveLayoutFlags<import("./types").EmptyObject>;
|
|
7
7
|
isMobileLayout: boolean;
|
|
8
8
|
renderWithLayout: (currentLayout: ResponsiveLayoutFlags) => React.ReactNode;
|
|
9
9
|
render(): JSX.Element;
|
|
@@ -1,3 +1,11 @@
|
|
|
1
|
-
export
|
|
1
|
+
export declare type MediaQueriesType = Record<string, string>;
|
|
2
|
+
export declare type EmptyObject = Record<never, never>;
|
|
3
|
+
export interface ResponsiveLayoutOptions<MQ extends MediaQueriesType> {
|
|
4
|
+
customMediaQueries?: MQ;
|
|
5
|
+
}
|
|
6
|
+
export declare type ResponsiveLayoutFlags<T extends MediaQueriesType = EmptyObject> = {
|
|
7
|
+
[K in keyof T]?: boolean;
|
|
8
|
+
} & ResponsiveLayoutFlagsInternal;
|
|
9
|
+
export interface ResponsiveLayoutFlagsInternal {
|
|
2
10
|
isMobile: boolean;
|
|
3
11
|
}
|