@skbkontur/react-ui 2.17.6 → 2.17.7-sidepage-header
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 +2194 -2183
- package/README.md +61 -61
- package/cjs/components/Autocomplete/Autocomplete.js +23 -23
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/Autocomplete/Autocomplete.md +7 -7
- package/cjs/components/Autocomplete/index.js.map +1 -1
- package/cjs/components/Button/Button.js +4 -4
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/Button.md +89 -89
- package/cjs/components/Button/Button.mixins.js.map +1 -1
- package/cjs/components/Button/Button.styles.js.map +1 -1
- package/cjs/components/Button/Corners.js.map +1 -1
- package/cjs/components/Button/index.js.map +1 -1
- package/cjs/components/Center/Center.js +3 -3
- package/cjs/components/Center/Center.js.map +1 -1
- package/cjs/components/Center/Center.md +5 -5
- package/cjs/components/Center/Center.styles.js.map +1 -1
- package/cjs/components/Center/index.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.js +9 -9
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.md +63 -63
- package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
- package/cjs/components/Checkbox/index.js.map +1 -1
- package/cjs/components/ComboBox/ComboBox.js +20 -20
- package/cjs/components/ComboBox/ComboBox.js.map +1 -1
- package/cjs/components/ComboBox/ComboBox.md +432 -432
- package/cjs/components/ComboBox/index.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyHelper.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInput.js +7 -7
- package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInput.md +20 -20
- package/cjs/components/CurrencyInput/CurrencyInputHelper.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.js.map +1 -1
- package/cjs/components/CurrencyInput/CursorHelper.js.map +1 -1
- package/cjs/components/CurrencyInput/SelectionHelper.js.map +1 -1
- package/cjs/components/CurrencyInput/constants.js.map +1 -1
- package/cjs/components/CurrencyInput/index.js.map +1 -1
- package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/cjs/components/CurrencyLabel/index.js.map +1 -1
- package/cjs/components/DateInput/DateFragmentsView.js.map +1 -1
- package/cjs/components/DateInput/DateFragmentsView.styles.js.map +1 -1
- package/cjs/components/DateInput/DateInput.js.map +1 -1
- package/cjs/components/DateInput/DateInput.md +104 -104
- package/cjs/components/DateInput/DateInput.styles.js.map +1 -1
- package/cjs/components/DateInput/ViewDateInputValidateChecks.js.map +1 -1
- package/cjs/components/DateInput/helpers/DateInputKeyboardActions.js.map +1 -1
- package/cjs/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
- package/cjs/components/DateInput/helpers/SelectionHelpers.js.map +1 -1
- package/cjs/components/DateInput/helpers/inputNumber.js.map +1 -1
- package/cjs/components/DateInput/index.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.js +15 -15
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.md +310 -310
- package/cjs/components/DatePicker/DatePicker.styles.js.map +1 -1
- package/cjs/components/DatePicker/DatePickerHelpers.js.map +1 -1
- package/cjs/components/DatePicker/Picker.js.map +1 -1
- package/cjs/components/DatePicker/Picker.styles.js.map +1 -1
- package/cjs/components/DatePicker/index.js.map +1 -1
- package/cjs/components/DatePicker/locale/index.js.map +1 -1
- package/cjs/components/DatePicker/locale/locales/en.js.map +1 -1
- package/cjs/components/DatePicker/locale/locales/ru.js.map +1 -1
- package/cjs/components/Dropdown/Dropdown.js +24 -24
- package/cjs/components/Dropdown/Dropdown.js.map +1 -1
- package/cjs/components/Dropdown/Dropdown.md +12 -12
- package/cjs/components/Dropdown/index.js.map +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.js +2 -2
- package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.md +73 -73
- package/cjs/components/DropdownMenu/index.js.map +1 -1
- package/cjs/components/Fias/Fias.js +2 -2
- package/cjs/components/Fias/Fias.js.map +1 -1
- package/cjs/components/Fias/Fias.md +451 -451
- package/cjs/components/Fias/Fias.styles.js.map +1 -1
- package/cjs/components/Fias/FiasModal.js.map +1 -1
- package/cjs/components/Fias/FiasSearch/FiasSearch.js +2 -2
- package/cjs/components/Fias/FiasSearch/FiasSearch.js.map +1 -1
- package/cjs/components/Fias/FiasSearch/FiasSearch.md +78 -78
- package/cjs/components/Fias/Form/FiasComboBox.js.map +1 -1
- package/cjs/components/Fias/Form/FiasCountrySelector.js.map +1 -1
- package/cjs/components/Fias/Form/FiasForm.js.map +1 -1
- package/cjs/components/Fias/Form/FiasForm.styles.js.map +1 -1
- package/cjs/components/Fias/api/FiasAPI.js.map +1 -1
- package/cjs/components/Fias/api/FiasAPIResultFactory.js.map +1 -1
- package/cjs/components/Fias/api/FiasMockAPI.js.map +1 -1
- package/cjs/components/Fias/api/data.json +285 -285
- package/cjs/components/Fias/constants/abbreviations.js.map +1 -1
- package/cjs/components/Fias/index.js.map +1 -1
- package/cjs/components/Fias/locale/index.js.map +1 -1
- package/cjs/components/Fias/locale/locales/ru.js.map +1 -1
- package/cjs/components/Fias/logger/FiasLogger.js.map +1 -1
- package/cjs/components/Fias/models/FiasAddress.js.map +1 -1
- package/cjs/components/Fias/models/FiasAddressElement.js.map +1 -1
- package/cjs/components/Fias/models/FiasData.js.map +1 -1
- package/cjs/components/Fias/types.js.map +1 -1
- package/cjs/components/FxInput/FxInput.js.map +1 -1
- package/cjs/components/FxInput/FxInput.md +13 -13
- package/cjs/components/FxInput/index.js.map +1 -1
- package/cjs/components/Gapped/Gapped.js +8 -8
- package/cjs/components/Gapped/Gapped.js.map +1 -1
- package/cjs/components/Gapped/index.js.map +1 -1
- package/cjs/components/Group/Group.js.map +1 -1
- package/cjs/components/Group/Group.md +26 -26
- package/cjs/components/Group/Group.styles.js.map +1 -1
- package/cjs/components/Group/index.js.map +1 -1
- package/cjs/components/Hint/Hint.js.map +1 -1
- package/cjs/components/Hint/Hint.md +3 -3
- package/cjs/components/Hint/Hint.styles.js.map +1 -1
- package/cjs/components/Hint/index.js.map +1 -1
- package/cjs/components/Input/Input.js +13 -13
- package/cjs/components/Input/Input.js.map +1 -1
- package/cjs/components/Input/Input.styles.js.map +1 -1
- package/cjs/components/Input/index.js.map +1 -1
- package/cjs/components/Kebab/Kebab.js +6 -6
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/Kebab/Kebab.md +45 -45
- package/cjs/components/Kebab/Kebab.styles.js.map +1 -1
- package/cjs/components/Kebab/__stories__/Kebab.items.js.map +1 -1
- package/cjs/components/Kebab/index.js.map +1 -1
- package/cjs/components/Link/Link.js +5 -5
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Link/Link.md +11 -11
- package/cjs/components/Link/Link.mixins.js.map +1 -1
- package/cjs/components/Link/Link.styles.js.map +1 -1
- package/cjs/components/Link/index.js.map +1 -1
- package/cjs/components/Loader/Loader.js +20 -20
- package/cjs/components/Loader/Loader.js.map +1 -1
- package/cjs/components/Loader/Loader.md +25 -25
- package/cjs/components/Loader/Loader.styles.js.map +1 -1
- package/cjs/components/Loader/__stories__/LoaderAndButton.js.map +1 -1
- package/cjs/components/Loader/index.js.map +1 -1
- package/cjs/components/LocaleProvider/LocaleProvider.js.map +1 -1
- package/cjs/components/LocaleProvider/index.js.map +1 -1
- package/cjs/components/Logotype/Logotype.js +2 -2
- package/cjs/components/Logotype/Logotype.js.map +1 -1
- package/cjs/components/Logotype/Logotype.md +33 -33
- package/cjs/components/Logotype/Logotype.styles.js.map +1 -1
- package/cjs/components/Logotype/ProductWidget.js.map +1 -1
- package/cjs/components/Logotype/index.js.map +1 -1
- package/cjs/components/Logotype/locale/index.js.map +1 -1
- package/cjs/components/Logotype/locale/locales/en.js.map +1 -1
- package/cjs/components/Logotype/locale/locales/ru.js.map +1 -1
- package/cjs/components/MenuHeader/MenuHeader.js +2 -2
- package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
- package/cjs/components/MenuHeader/MenuHeader.styles.js.map +1 -1
- package/cjs/components/MenuHeader/index.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.js +2 -2
- package/cjs/components/MenuItem/MenuItem.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.md +7 -7
- package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
- package/cjs/components/MenuItem/index.js.map +1 -1
- package/cjs/components/MenuSeparator/MenuSeparator.js +2 -2
- package/cjs/components/MenuSeparator/MenuSeparator.js.map +1 -1
- package/cjs/components/MenuSeparator/MenuSeparator.styles.js.map +1 -1
- package/cjs/components/MenuSeparator/index.js.map +1 -1
- package/cjs/components/Modal/Modal.js +13 -13
- package/cjs/components/Modal/Modal.js.map +1 -1
- package/cjs/components/Modal/Modal.md +37 -37
- package/cjs/components/Modal/Modal.styles.js.map +1 -1
- package/cjs/components/Modal/ModalBody.js +4 -4
- package/cjs/components/Modal/ModalBody.js.map +1 -1
- package/cjs/components/Modal/ModalClose.js.map +1 -1
- package/cjs/components/Modal/ModalContext.js.map +1 -1
- package/cjs/components/Modal/ModalFooter.js +4 -4
- package/cjs/components/Modal/ModalFooter.js.map +1 -1
- package/cjs/components/Modal/ModalHeader.js +4 -4
- package/cjs/components/Modal/ModalHeader.js.map +1 -1
- package/cjs/components/Modal/helpers.js.map +1 -1
- package/cjs/components/Modal/index.js.map +1 -1
- package/cjs/components/Paging/NavigationHelper.js.map +1 -1
- package/cjs/components/Paging/Paging.js +10 -10
- package/cjs/components/Paging/Paging.js.map +1 -1
- package/cjs/components/Paging/Paging.md +43 -43
- package/cjs/components/Paging/Paging.styles.js.map +1 -1
- package/cjs/components/Paging/PagingHelper.js.map +1 -1
- package/cjs/components/Paging/index.js.map +1 -1
- package/cjs/components/Paging/locale/index.js.map +1 -1
- package/cjs/components/Paging/locale/locales/en.js.map +1 -1
- package/cjs/components/Paging/locale/locales/ru.js.map +1 -1
- package/cjs/components/PasswordInput/PasswordInput.js +6 -6
- package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/components/PasswordInput/PasswordInput.styles.js.map +1 -1
- package/cjs/components/PasswordInput/index.js.map +1 -1
- package/cjs/components/Radio/Radio.js +4 -4
- package/cjs/components/Radio/Radio.js.map +1 -1
- package/cjs/components/Radio/Radio.md +14 -14
- package/cjs/components/Radio/Radio.styles.js.map +1 -1
- package/cjs/components/Radio/index.js.map +1 -1
- package/cjs/components/RadioGroup/Prevent.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.js +46 -46
- package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.styles.js.map +1 -1
- package/cjs/components/RadioGroup/index.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.js +6 -6
- package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.md +94 -94
- package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
- package/cjs/components/ScrollContainer/index.js.map +1 -1
- package/cjs/components/Select/Item.js.map +1 -1
- package/cjs/components/Select/Select.js +2 -2
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/Select.md +23 -23
- package/cjs/components/Select/Select.styles.js.map +1 -1
- package/cjs/components/Select/index.js.map +1 -1
- package/cjs/components/Select/locale/index.js.map +1 -1
- package/cjs/components/Select/locale/locales/en.js.map +1 -1
- package/cjs/components/Select/locale/locales/ru.js.map +1 -1
- package/cjs/components/Select/selectTheme.js.map +1 -1
- package/cjs/components/SidePage/SidePage.d.ts +2 -0
- package/cjs/components/SidePage/SidePage.js +21 -16
- package/cjs/components/SidePage/SidePage.js.map +1 -1
- package/cjs/components/SidePage/SidePage.md +48 -48
- package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
- package/cjs/components/SidePage/SidePageBody.js +4 -4
- package/cjs/components/SidePage/SidePageBody.js.map +1 -1
- package/cjs/components/SidePage/SidePageContainer.js +4 -4
- package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
- package/cjs/components/SidePage/SidePageContext.d.ts +2 -0
- package/cjs/components/SidePage/SidePageContext.js +3 -0
- package/cjs/components/SidePage/SidePageContext.js.map +1 -1
- package/cjs/components/SidePage/SidePageFooter.js +4 -4
- package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
- package/cjs/components/SidePage/SidePageHeader.d.ts +5 -0
- package/cjs/components/SidePage/SidePageHeader.js +24 -7
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/SidePage/helpers.js.map +1 -1
- package/cjs/components/SidePage/index.js.map +1 -1
- package/cjs/components/Spinner/Spinner.js +16 -16
- package/cjs/components/Spinner/Spinner.js.map +1 -1
- package/cjs/components/Spinner/Spinner.md +34 -34
- package/cjs/components/Spinner/Spinner.styles.js.map +1 -1
- package/cjs/components/Spinner/SpinnerFallbackAnimation.js.map +1 -1
- package/cjs/components/Spinner/index.js.map +1 -1
- package/cjs/components/Spinner/locale/index.js.map +1 -1
- package/cjs/components/Spinner/locale/locales/en.js.map +1 -1
- package/cjs/components/Spinner/locale/locales/ru.js.map +1 -1
- package/cjs/components/Sticky/Sticky.d.ts +1 -1
- package/cjs/components/Sticky/Sticky.js +4 -4
- package/cjs/components/Sticky/Sticky.js.map +1 -1
- package/cjs/components/Sticky/Sticky.md +27 -27
- package/cjs/components/Sticky/Sticky.styles.js.map +1 -1
- package/cjs/components/Sticky/index.js.map +1 -1
- package/cjs/components/Switcher/Switcher.js.map +1 -1
- package/cjs/components/Switcher/Switcher.md +10 -10
- package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
- package/cjs/components/Switcher/index.js.map +1 -1
- package/cjs/components/Switcher/switcherTheme.js.map +1 -1
- package/cjs/components/Tabs/Indicator.js.map +1 -1
- package/cjs/components/Tabs/Indicator.styles.js.map +1 -1
- package/cjs/components/Tabs/Tab.js +14 -14
- package/cjs/components/Tabs/Tab.js.map +1 -1
- package/cjs/components/Tabs/Tab.styles.js.map +1 -1
- package/cjs/components/Tabs/Tabs.js +4 -4
- package/cjs/components/Tabs/Tabs.js.map +1 -1
- package/cjs/components/Tabs/Tabs.md +36 -36
- package/cjs/components/Tabs/Tabs.styles.js.map +1 -1
- package/cjs/components/Tabs/TabsContext.js.map +1 -1
- package/cjs/components/Tabs/index.js.map +1 -1
- package/cjs/components/Textarea/Textarea.js +12 -12
- package/cjs/components/Textarea/Textarea.js.map +1 -1
- package/cjs/components/Textarea/Textarea.md +25 -25
- package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
- package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
- package/cjs/components/Textarea/TextareaHelpers.js.map +1 -1
- package/cjs/components/Textarea/index.js.map +1 -1
- package/cjs/components/ThemeConsumer/ThemeConsumer.js.map +1 -1
- package/cjs/components/ThemeConsumer/index.js.map +1 -1
- package/cjs/components/ThemeProvider/ThemeProvider.js.map +1 -1
- package/cjs/components/ThemeProvider/index.js.map +1 -1
- package/cjs/components/Toast/Toast.js +19 -19
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toast/Toast.md +41 -41
- package/cjs/components/Toast/Toast.styles.js.map +1 -1
- package/cjs/components/Toast/ToastStatic.js.map +1 -1
- package/cjs/components/Toast/ToastView.js +4 -4
- package/cjs/components/Toast/ToastView.js.map +1 -1
- package/cjs/components/Toast/ToastView.styles.js.map +1 -1
- package/cjs/components/Toast/index.js.map +1 -1
- package/cjs/components/Toggle/Toggle.js +2 -2
- package/cjs/components/Toggle/Toggle.js.map +1 -1
- package/cjs/components/Toggle/Toggle.md +24 -24
- package/cjs/components/Toggle/Toggle.styles.js.map +1 -1
- package/cjs/components/Toggle/index.js.map +1 -1
- package/cjs/components/Token/Token.js.map +1 -1
- package/cjs/components/Token/Token.styles.js.map +1 -1
- package/cjs/components/Token/index.js.map +1 -1
- package/cjs/components/TokenInput/TextWidthHelper.js +3 -3
- package/cjs/components/TokenInput/TextWidthHelper.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.js +17 -17
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.md +77 -77
- package/cjs/components/TokenInput/TokenInput.styles.js.map +1 -1
- package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
- package/cjs/components/TokenInput/TokenInputReducer.js.map +1 -1
- package/cjs/components/TokenInput/index.js.map +1 -1
- package/cjs/components/TokenInput/locale/index.js.map +1 -1
- package/cjs/components/TokenInput/locale/locales/en.js.map +1 -1
- package/cjs/components/TokenInput/locale/locales/ru.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.js +8 -8
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.md +301 -301
- package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
- package/cjs/components/Tooltip/index.js.map +1 -1
- package/cjs/components/TooltipMenu/TooltipMenu.js +7 -7
- package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
- package/cjs/components/TooltipMenu/TooltipMenu.md +115 -115
- package/cjs/components/TooltipMenu/index.js.map +1 -1
- package/cjs/components/TopBar/TopBar.js +38 -38
- package/cjs/components/TopBar/TopBar.js.map +1 -1
- package/cjs/components/TopBar/TopBar.md +111 -111
- package/cjs/components/TopBar/TopBar.styles.js.map +1 -1
- package/cjs/components/TopBar/TopBarButtonItem.js +4 -4
- package/cjs/components/TopBar/TopBarButtonItem.js.map +1 -1
- package/cjs/components/TopBar/TopBarDivider.js +4 -4
- package/cjs/components/TopBar/TopBarDivider.js.map +1 -1
- package/cjs/components/TopBar/TopBarDropdown.js +4 -4
- package/cjs/components/TopBar/TopBarDropdown.js.map +1 -1
- package/cjs/components/TopBar/TopBarEnd.js +4 -4
- package/cjs/components/TopBar/TopBarEnd.js.map +1 -1
- package/cjs/components/TopBar/TopBarItem.js +4 -4
- package/cjs/components/TopBar/TopBarItem.js.map +1 -1
- package/cjs/components/TopBar/TopBarLogout.js +4 -4
- package/cjs/components/TopBar/TopBarLogout.js.map +1 -1
- package/cjs/components/TopBar/TopBarOrganizations.js +4 -4
- package/cjs/components/TopBar/TopBarOrganizations.js.map +1 -1
- package/cjs/components/TopBar/TopBarStart.js +4 -4
- package/cjs/components/TopBar/TopBarStart.js.map +1 -1
- package/cjs/components/TopBar/TopBarUser.js +6 -6
- package/cjs/components/TopBar/TopBarUser.js.map +1 -1
- package/cjs/components/TopBar/index.js.map +1 -1
- package/cjs/components/TopBar/locale/index.js.map +1 -1
- package/cjs/components/TopBar/locale/locales/en.js.map +1 -1
- package/cjs/components/TopBar/locale/locales/ru.js.map +1 -1
- package/cjs/index.js.map +1 -1
- package/cjs/internal/BGRuler.js +5 -5
- package/cjs/internal/BGRuler.js.map +1 -1
- package/cjs/internal/Calendar/Calendar.js +3 -3
- package/cjs/internal/Calendar/Calendar.js.map +1 -1
- package/cjs/internal/Calendar/Calendar.styles.js.map +1 -1
- package/cjs/internal/Calendar/CalendarDateShape.js.map +1 -1
- package/cjs/internal/Calendar/CalendarScrollEvents.js.map +1 -1
- package/cjs/internal/Calendar/CalendarUtils.js.map +1 -1
- package/cjs/internal/Calendar/DayCellView.js.map +1 -1
- package/cjs/internal/Calendar/DayCellView.styles.js.map +1 -1
- package/cjs/internal/Calendar/DayCellViewModel.js.map +1 -1
- package/cjs/internal/Calendar/Month.js.map +1 -1
- package/cjs/internal/Calendar/MonthView.js.map +1 -1
- package/cjs/internal/Calendar/MonthView.styles.js.map +1 -1
- package/cjs/internal/Calendar/MonthViewModel.js.map +1 -1
- package/cjs/internal/Calendar/config.js.map +1 -1
- package/cjs/internal/Calendar/index.js.map +1 -1
- package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
- package/cjs/internal/CommonWrapper/index.js.map +1 -1
- package/cjs/internal/ComponentCombinator.js.map +1 -1
- package/cjs/internal/ComponentTable.js.map +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.js +10 -10
- package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.styles.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBoxTypes.js.map +1 -1
- package/cjs/internal/CustomComboBox/index.js.map +1 -1
- package/cjs/internal/CustomComboBox/locale/index.js.map +1 -1
- package/cjs/internal/CustomComboBox/locale/locales/en.js.map +1 -1
- package/cjs/internal/CustomComboBox/locale/locales/ru.js.map +1 -1
- package/cjs/internal/DateSelect/DateSelect.js +2 -2
- package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
- package/cjs/internal/DateSelect/DateSelect.styles.js.map +1 -1
- package/cjs/internal/DateSelect/index.js.map +1 -1
- package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
- package/cjs/internal/DropdownContainer/index.js.map +1 -1
- package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
- package/cjs/internal/FocusTrap/index.js.map +1 -1
- package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
- package/cjs/internal/HideBodyVerticalScroll/index.js.map +1 -1
- package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
- package/cjs/internal/IgnoreLayerClick/index.js.map +1 -1
- package/cjs/internal/InputLikeText/HiddenInput.js +4 -4
- package/cjs/internal/InputLikeText/HiddenInput.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.js +6 -6
- package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.styles.js.map +1 -1
- package/cjs/internal/InputLikeText/index.js.map +1 -1
- package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
- package/cjs/internal/InternalMenu/InternalMenu.styles.js.map +1 -1
- package/cjs/internal/InternalMenu/index.js.map +1 -1
- package/cjs/internal/InternalMenu/isActiveElement.js.map +1 -1
- package/cjs/internal/MaskCharLowLine/MaskCharLowLine.js +6 -6
- package/cjs/internal/MaskCharLowLine/MaskCharLowLine.js.map +1 -1
- package/cjs/internal/MaskCharLowLine/MaskCharLowLine.styles.js.map +1 -1
- package/cjs/internal/MaskCharLowLine/index.js.map +1 -1
- package/cjs/internal/MaskedInput/MaskedInput.js.map +1 -1
- package/cjs/internal/MaskedInput/MaskedInput.styles.js.map +1 -1
- package/cjs/internal/MaskedInput/index.js.map +1 -1
- package/cjs/internal/Menu/Menu.js +10 -10
- package/cjs/internal/Menu/Menu.js.map +1 -1
- package/cjs/internal/Menu/Menu.styles.js.map +1 -1
- package/cjs/internal/Menu/index.js.map +1 -1
- package/cjs/internal/Menu/isActiveElement.js.map +1 -1
- package/cjs/internal/PerformanceMetrics/PerformanceMetrics.js.map +1 -1
- package/cjs/internal/Popup/Popup.js +31 -31
- package/cjs/internal/Popup/Popup.js.map +1 -1
- package/cjs/internal/Popup/Popup.styles.js.map +1 -1
- package/cjs/internal/Popup/PopupHelper.js.map +1 -1
- package/cjs/internal/Popup/PopupPin.js +16 -16
- package/cjs/internal/Popup/PopupPin.js.map +1 -1
- package/cjs/internal/Popup/PopupPin.styles.js.map +1 -1
- package/cjs/internal/Popup/index.js.map +1 -1
- package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/cjs/internal/PopupMenu/PopupMenu.styles.js.map +1 -1
- package/cjs/internal/PopupMenu/PopupMenuPositions.js.map +1 -1
- package/cjs/internal/PopupMenu/index.js.map +1 -1
- package/cjs/internal/PopupMenu/validatePositions.js.map +1 -1
- package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
- package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
- package/cjs/internal/RenderContainer/index.js.map +1 -1
- package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
- package/cjs/internal/RenderLayer/index.js.map +1 -1
- package/cjs/internal/ResizeDetector/ResizeDetector.js.map +1 -1
- package/cjs/internal/ResizeDetector/ResizeDetector.styles.js.map +1 -1
- package/cjs/internal/ResizeDetector/index.js.map +1 -1
- package/cjs/internal/SpinnerOld/SpinnerOld.js +12 -12
- package/cjs/internal/SpinnerOld/SpinnerOld.js.map +1 -1
- package/cjs/internal/SpinnerOld/SpinnerOld.styles.js.map +1 -1
- package/cjs/internal/SpinnerOld/SpinnerOldCloudIcon.js.map +1 -1
- package/cjs/internal/SpinnerOld/index.js.map +1 -1
- package/cjs/internal/SpinnerOld/locale/index.js.map +1 -1
- package/cjs/internal/SpinnerOld/locale/locales/en.js.map +1 -1
- package/cjs/internal/SpinnerOld/locale/locales/ru.js.map +1 -1
- package/cjs/internal/ThemePlayground/AnotherInputsPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/CheckboxPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/ComponentsGroup.js.map +1 -1
- package/cjs/internal/ThemePlayground/CurrencyInputPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/FxInputPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/HintPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/PagingPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.md +7 -7
- package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
- package/cjs/internal/ThemePlayground/RadioPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/SelectPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
- package/cjs/internal/ThemePlayground/SwitcherPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/ThemeEditor.js.map +1 -1
- package/cjs/internal/ThemePlayground/TogglePlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/TokenInputPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
- package/cjs/internal/ThemePlayground/constants.js.map +1 -1
- package/cjs/internal/ThemePlayground/darkTheme.js.map +1 -1
- package/cjs/internal/ThemePlayground/helpers.js.map +1 -1
- package/cjs/internal/ThemeShowcase/ThemeShowcase.js.map +1 -1
- package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.js.map +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.js.map +1 -1
- package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
- package/cjs/internal/ZIndex/ZIndexStorage.js.map +1 -1
- package/cjs/internal/ZIndex/index.js.map +1 -1
- package/cjs/internal/icons/16px/icon.styles.js.map +1 -1
- package/cjs/internal/icons/16px/index.js.map +1 -1
- package/cjs/internal/icons/20px/Icon.js +2 -2
- package/cjs/internal/icons/20px/Icon.js.map +1 -1
- package/cjs/internal/icons/20px/icon.styles.js.map +1 -1
- package/cjs/internal/icons/20px/index.js.map +1 -1
- package/cjs/internal/icons/20px/svg.js.map +1 -1
- package/cjs/internal/icons/CloudIcon.js.map +1 -1
- package/cjs/internal/icons/CrossIcon.js.map +1 -1
- package/cjs/internal/icons/SpinnerIcon.js.map +1 -1
- package/cjs/internal/icons/SpinnerIcon.styles.js.map +1 -1
- package/cjs/internal/themes/DefaultTheme.js.map +1 -1
- package/cjs/internal/themes/FlatTheme.js.map +1 -1
- package/cjs/internal/themes/Theme8px.js.map +1 -1
- package/cjs/lib/ConditionalHandler.js +2 -2
- package/cjs/lib/ConditionalHandler.js.map +1 -1
- package/cjs/lib/LayoutEvents.js.map +1 -1
- package/cjs/lib/MockDate.js.map +1 -1
- package/cjs/lib/ModalStack.js +4 -4
- package/cjs/lib/ModalStack.js.map +1 -1
- package/cjs/lib/SSRSafe.js.map +1 -1
- package/cjs/lib/Supports.js.map +1 -1
- package/cjs/lib/Upgrades.js.map +1 -1
- package/cjs/lib/animation/index.js.map +1 -1
- package/cjs/lib/animation/presets.js.map +1 -1
- package/cjs/lib/animation/stepper.js.map +1 -1
- package/cjs/lib/client.js.map +1 -1
- package/cjs/lib/createPropsGetter.js.map +1 -1
- package/cjs/lib/currentEnvironment.js.map +1 -1
- package/cjs/lib/date/InternalDate.js +3 -3
- package/cjs/lib/date/InternalDate.js.map +1 -1
- package/cjs/lib/date/InternalDateCalculator.js.map +1 -1
- package/cjs/lib/date/InternalDateGetter.js.map +1 -1
- package/cjs/lib/date/InternalDateSetter.js.map +1 -1
- package/cjs/lib/date/InternalDateTransformer.js.map +1 -1
- package/cjs/lib/date/InternalDateValidator.js.map +1 -1
- package/cjs/lib/date/constants.js.map +1 -1
- package/cjs/lib/date/localeSets.js.map +1 -1
- package/cjs/lib/date/types.js.map +1 -1
- package/cjs/lib/dom/getFocusableElements.js +33 -33
- package/cjs/lib/dom/getFocusableElements.js.map +1 -1
- package/cjs/lib/dom/getScrollWidth.js.map +1 -1
- package/cjs/lib/events/MouseDrag.js +26 -26
- package/cjs/lib/events/MouseDrag.js.map +1 -1
- package/cjs/lib/events/keyboard/KeyboardEventCodes.js.map +1 -1
- package/cjs/lib/events/keyboard/KeyboardMapKeys.js.map +1 -1
- package/cjs/lib/events/keyboard/extractCode.js.map +1 -1
- package/cjs/lib/events/keyboard/identifiers.js.map +1 -1
- package/cjs/lib/events/stopPropagation.js.map +1 -1
- package/cjs/lib/events/tabListener.js.map +1 -1
- package/cjs/lib/extractKeyboardAction.js.map +1 -1
- package/cjs/lib/filterProps.js.map +1 -1
- package/cjs/lib/listenFocusOutside.js +9 -9
- package/cjs/lib/listenFocusOutside.js.map +1 -1
- package/cjs/lib/locale/LOCALECONTEXT.md +246 -246
- package/cjs/lib/locale/LocaleContext.js.map +1 -1
- package/cjs/lib/locale/LocaleHelper.js.map +1 -1
- package/cjs/lib/locale/constants.js.map +1 -1
- package/cjs/lib/locale/decorators.js.map +1 -1
- package/cjs/lib/locale/index.js.map +1 -1
- package/cjs/lib/locale/types.js.map +1 -1
- package/cjs/lib/memo.js.map +1 -1
- package/cjs/lib/net/fetch.js.map +1 -1
- package/cjs/lib/polyfillPlaceholder.js.map +1 -1
- package/cjs/lib/reactGetTextContent.js.map +1 -1
- package/cjs/lib/styles/ColorFactory.js.map +1 -1
- package/cjs/lib/styles/ColorFunctions.js.map +1 -1
- package/cjs/lib/styles/ColorHelpers.js.map +1 -1
- package/cjs/lib/styles/ColorKeywords.js.map +1 -1
- package/cjs/lib/styles/ColorObject.js.map +1 -1
- package/cjs/lib/styles/DimensionFunctions.js.map +1 -1
- package/cjs/lib/styles/HoldSelectionColor.js.map +1 -1
- package/cjs/lib/styles/Mixins.js.map +1 -1
- package/cjs/lib/theming/AnimationKeyframes.js.map +1 -1
- package/cjs/lib/theming/Emotion.js.map +1 -1
- package/cjs/lib/theming/ThemeContext.js.map +1 -1
- package/cjs/lib/theming/ThemeContext.md +248 -248
- package/cjs/lib/theming/ThemeFactory.js.map +1 -1
- package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
- package/cjs/lib/theming/themes/DefaultTheme.js.map +1 -1
- package/cjs/lib/theming/themes/DefaultTheme8px.js.map +1 -1
- package/cjs/lib/theming/themes/FlatTheme.js.map +1 -1
- package/cjs/lib/theming/themes/FlatTheme8px.js.map +1 -1
- package/cjs/lib/utils.js +2 -2
- package/cjs/lib/utils.js.map +1 -1
- package/cjs/typings/console.d.ts +3 -3
- package/cjs/typings/event-types.d.ts +4 -4
- package/cjs/typings/fonts.d.ts +12 -12
- package/cjs/typings/global.d.ts +6 -6
- package/cjs/typings/images.d.ts +1 -1
- package/cjs/typings/normalize-wheel.d.ts +5 -5
- package/cjs/typings/stylis-plugin-extra-scope.d.ts +3 -3
- package/cjs/typings/utility-types.d.ts +14 -14
- package/components/Autocomplete/Autocomplete/Autocomplete.js +23 -23
- package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/Autocomplete.md +7 -7
- package/components/Autocomplete/index/index.js.map +1 -1
- package/components/Button/Button/Button.js +4 -4
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.md +89 -89
- package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
- package/components/Button/Button.styles/Button.styles.js.map +1 -1
- package/components/Button/Corners/Corners.js.map +1 -1
- package/components/Button/index/index.js.map +1 -1
- package/components/Center/Center/Center.js +3 -3
- package/components/Center/Center/Center.js.map +1 -1
- package/components/Center/Center.md +5 -5
- package/components/Center/Center.styles/Center.styles.js.map +1 -1
- package/components/Center/index/index.js.map +1 -1
- package/components/Checkbox/Checkbox/Checkbox.js +9 -9
- package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.md +63 -63
- package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
- package/components/Checkbox/index/index.js.map +1 -1
- package/components/ComboBox/ComboBox/ComboBox.js +20 -20
- package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
- package/components/ComboBox/ComboBox.md +432 -432
- package/components/ComboBox/index/index.js.map +1 -1
- package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js.map +1 -1
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +7 -7
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
- package/components/CurrencyInput/CurrencyInput.md +20 -20
- package/components/CurrencyInput/CurrencyInputHelper/CurrencyInputHelper.js.map +1 -1
- package/components/CurrencyInput/CurrencyInputKeyboardActions/CurrencyInputKeyboardActions.js.map +1 -1
- package/components/CurrencyInput/CursorHelper/CursorHelper.js.map +1 -1
- package/components/CurrencyInput/SelectionHelper/SelectionHelper.js.map +1 -1
- package/components/CurrencyInput/constants/constants.js.map +1 -1
- package/components/CurrencyInput/index/index.js.map +1 -1
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/components/CurrencyLabel/index/index.js.map +1 -1
- package/components/DateInput/DateFragmentsView/DateFragmentsView.js.map +1 -1
- package/components/DateInput/DateFragmentsView.styles/DateFragmentsView.styles.js.map +1 -1
- package/components/DateInput/DateInput/DateInput.js.map +1 -1
- package/components/DateInput/DateInput.md +104 -104
- package/components/DateInput/DateInput.styles/DateInput.styles.js.map +1 -1
- package/components/DateInput/ViewDateInputValidateChecks/ViewDateInputValidateChecks.js.map +1 -1
- package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js.map +1 -1
- package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js.map +1 -1
- package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js.map +1 -1
- package/components/DateInput/helpers/inputNumber/inputNumber.js.map +1 -1
- package/components/DateInput/index/index.js.map +1 -1
- package/components/DatePicker/DatePicker/DatePicker.js +15 -15
- package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.md +310 -310
- package/components/DatePicker/DatePicker.styles/DatePicker.styles.js.map +1 -1
- package/components/DatePicker/DatePickerHelpers/DatePickerHelpers.js.map +1 -1
- package/components/DatePicker/Picker/Picker.js.map +1 -1
- package/components/DatePicker/Picker.styles/Picker.styles.js.map +1 -1
- package/components/DatePicker/index/index.js.map +1 -1
- package/components/DatePicker/locale/index/index.js.map +1 -1
- package/components/DatePicker/locale/locales/en/en.js.map +1 -1
- package/components/DatePicker/locale/locales/ru/ru.js.map +1 -1
- package/components/Dropdown/Dropdown/Dropdown.js +24 -24
- package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
- package/components/Dropdown/Dropdown.md +12 -12
- package/components/Dropdown/index/index.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +2 -2
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu.md +73 -73
- package/components/DropdownMenu/index/index.js.map +1 -1
- package/components/Fias/Fias/Fias.js +2 -2
- package/components/Fias/Fias/Fias.js.map +1 -1
- package/components/Fias/Fias.md +451 -451
- package/components/Fias/Fias.styles/Fias.styles.js.map +1 -1
- package/components/Fias/FiasModal/FiasModal.js.map +1 -1
- package/components/Fias/FiasSearch/FiasSearch/FiasSearch.js +2 -2
- package/components/Fias/FiasSearch/FiasSearch/FiasSearch.js.map +1 -1
- package/components/Fias/FiasSearch/FiasSearch.md +78 -78
- package/components/Fias/Form/FiasComboBox/FiasComboBox.js.map +1 -1
- package/components/Fias/Form/FiasCountrySelector/FiasCountrySelector.js.map +1 -1
- package/components/Fias/Form/FiasForm/FiasForm.js.map +1 -1
- package/components/Fias/Form/FiasForm.styles/FiasForm.styles.js.map +1 -1
- package/components/Fias/api/FiasAPI/FiasAPI.js.map +1 -1
- package/components/Fias/api/FiasAPIResultFactory/FiasAPIResultFactory.js.map +1 -1
- package/components/Fias/api/FiasMockAPI/FiasMockAPI.js.map +1 -1
- package/components/Fias/api/data.json +285 -285
- package/components/Fias/constants/abbreviations/abbreviations.js.map +1 -1
- package/components/Fias/index/index.js.map +1 -1
- package/components/Fias/locale/index/index.js.map +1 -1
- package/components/Fias/locale/locales/ru/ru.js.map +1 -1
- package/components/Fias/logger/FiasLogger/FiasLogger.js.map +1 -1
- package/components/Fias/models/FiasAddress/FiasAddress.js.map +1 -1
- package/components/Fias/models/FiasAddressElement/FiasAddressElement.js.map +1 -1
- package/components/Fias/models/FiasData/FiasData.js.map +1 -1
- package/components/Fias/types/types.js.map +1 -1
- package/components/FxInput/FxInput/FxInput.js.map +1 -1
- package/components/FxInput/FxInput.md +13 -13
- package/components/FxInput/index/index.js.map +1 -1
- package/components/Gapped/Gapped/Gapped.js +8 -8
- package/components/Gapped/Gapped/Gapped.js.map +1 -1
- package/components/Gapped/index/index.js.map +1 -1
- package/components/Group/Group/Group.js.map +1 -1
- package/components/Group/Group.md +26 -26
- package/components/Group/Group.styles/Group.styles.js.map +1 -1
- package/components/Group/index/index.js.map +1 -1
- package/components/Hint/Hint/Hint.js.map +1 -1
- package/components/Hint/Hint.md +3 -3
- package/components/Hint/Hint.styles/Hint.styles.js.map +1 -1
- package/components/Hint/index/index.js.map +1 -1
- package/components/Input/Input/Input.js +13 -13
- package/components/Input/Input/Input.js.map +1 -1
- package/components/Input/Input.styles/Input.styles.js.map +1 -1
- package/components/Input/index/index.js.map +1 -1
- package/components/Kebab/Kebab/Kebab.js +6 -6
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/Kebab/Kebab.md +45 -45
- package/components/Kebab/Kebab.styles/Kebab.styles.js.map +1 -1
- package/components/Kebab/__stories__/Kebab.items/Kebab.items.js.map +1 -1
- package/components/Kebab/index/index.js.map +1 -1
- package/components/Link/Link/Link.js +5 -5
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Link/Link.md +11 -11
- package/components/Link/Link.mixins/Link.mixins.js.map +1 -1
- package/components/Link/Link.styles/Link.styles.js.map +1 -1
- package/components/Link/index/index.js.map +1 -1
- package/components/Loader/Loader/Loader.js +20 -20
- package/components/Loader/Loader/Loader.js.map +1 -1
- package/components/Loader/Loader.md +25 -25
- package/components/Loader/Loader.styles/Loader.styles.js.map +1 -1
- package/components/Loader/__stories__/LoaderAndButton/LoaderAndButton.js.map +1 -1
- package/components/Loader/index/index.js.map +1 -1
- package/components/LocaleProvider/LocaleProvider/LocaleProvider.js.map +1 -1
- package/components/LocaleProvider/index/index.js.map +1 -1
- package/components/Logotype/Logotype/Logotype.js +2 -2
- package/components/Logotype/Logotype/Logotype.js.map +1 -1
- package/components/Logotype/Logotype.md +33 -33
- package/components/Logotype/Logotype.styles/Logotype.styles.js.map +1 -1
- package/components/Logotype/ProductWidget/ProductWidget.js.map +1 -1
- package/components/Logotype/index/index.js.map +1 -1
- package/components/Logotype/locale/index/index.js.map +1 -1
- package/components/Logotype/locale/locales/en/en.js.map +1 -1
- package/components/Logotype/locale/locales/ru/ru.js.map +1 -1
- package/components/MenuHeader/MenuHeader/MenuHeader.js +2 -2
- package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
- package/components/MenuHeader/MenuHeader.styles/MenuHeader.styles.js.map +1 -1
- package/components/MenuHeader/index/index.js.map +1 -1
- package/components/MenuItem/MenuItem/MenuItem.js +2 -2
- package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.md +7 -7
- package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
- package/components/MenuItem/index/index.js.map +1 -1
- package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +2 -2
- package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
- package/components/MenuSeparator/MenuSeparator.styles/MenuSeparator.styles.js.map +1 -1
- package/components/MenuSeparator/index/index.js.map +1 -1
- package/components/Modal/Modal/Modal.js +13 -13
- package/components/Modal/Modal/Modal.js.map +1 -1
- package/components/Modal/Modal.md +37 -37
- package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
- package/components/Modal/ModalBody/ModalBody.js +4 -4
- package/components/Modal/ModalBody/ModalBody.js.map +1 -1
- package/components/Modal/ModalClose/ModalClose.js.map +1 -1
- package/components/Modal/ModalContext/ModalContext.js.map +1 -1
- package/components/Modal/ModalFooter/ModalFooter.js +4 -4
- package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
- package/components/Modal/ModalHeader/ModalHeader.js +4 -4
- package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/components/Modal/helpers/helpers.js.map +1 -1
- package/components/Modal/index/index.js.map +1 -1
- package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
- package/components/Paging/Paging/Paging.js +10 -10
- package/components/Paging/Paging/Paging.js.map +1 -1
- package/components/Paging/Paging.md +43 -43
- package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
- package/components/Paging/PagingHelper/PagingHelper.js.map +1 -1
- package/components/Paging/index/index.js.map +1 -1
- package/components/Paging/locale/index/index.js.map +1 -1
- package/components/Paging/locale/locales/en/en.js.map +1 -1
- package/components/Paging/locale/locales/ru/ru.js.map +1 -1
- package/components/PasswordInput/PasswordInput/PasswordInput.js +6 -6
- package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
- package/components/PasswordInput/PasswordInput.styles/PasswordInput.styles.js.map +1 -1
- package/components/PasswordInput/index/index.js.map +1 -1
- package/components/Radio/Radio/Radio.js +4 -4
- package/components/Radio/Radio/Radio.js.map +1 -1
- package/components/Radio/Radio.md +14 -14
- package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
- package/components/Radio/index/index.js.map +1 -1
- package/components/RadioGroup/Prevent/Prevent.js.map +1 -1
- package/components/RadioGroup/RadioGroup/RadioGroup.js +46 -46
- package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
- package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js.map +1 -1
- package/components/RadioGroup/index/index.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +6 -6
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.md +94 -94
- package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
- package/components/ScrollContainer/index/index.js.map +1 -1
- package/components/Select/Item/Item.js.map +1 -1
- package/components/Select/Select/Select.js +2 -2
- package/components/Select/Select/Select.js.map +1 -1
- package/components/Select/Select.md +23 -23
- package/components/Select/Select.styles/Select.styles.js.map +1 -1
- package/components/Select/index/index.js.map +1 -1
- package/components/Select/locale/index/index.js.map +1 -1
- package/components/Select/locale/locales/en/en.js.map +1 -1
- package/components/Select/locale/locales/ru/ru.js.map +1 -1
- package/components/Select/selectTheme/selectTheme.js.map +1 -1
- package/components/SidePage/SidePage/SidePage.js +22 -15
- package/components/SidePage/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.d.ts +2 -0
- package/components/SidePage/SidePage.md +48 -48
- package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
- package/components/SidePage/SidePageBody/SidePageBody.js +4 -4
- package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
- package/components/SidePage/SidePageContainer/SidePageContainer.js +4 -4
- package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
- package/components/SidePage/SidePageContext/SidePageContext.js +3 -0
- package/components/SidePage/SidePageContext/SidePageContext.js.map +1 -1
- package/components/SidePage/SidePageContext.d.ts +2 -0
- package/components/SidePage/SidePageFooter/SidePageFooter.js +4 -4
- package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
- package/components/SidePage/SidePageHeader/SidePageHeader.js +23 -6
- package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +5 -0
- package/components/SidePage/helpers/helpers.js.map +1 -1
- package/components/SidePage/index/index.js.map +1 -1
- package/components/Spinner/Spinner/Spinner.js +16 -16
- package/components/Spinner/Spinner/Spinner.js.map +1 -1
- package/components/Spinner/Spinner.md +34 -34
- package/components/Spinner/Spinner.styles/Spinner.styles.js.map +1 -1
- package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js.map +1 -1
- package/components/Spinner/index/index.js.map +1 -1
- package/components/Spinner/locale/index/index.js.map +1 -1
- package/components/Spinner/locale/locales/en/en.js.map +1 -1
- package/components/Spinner/locale/locales/ru/ru.js.map +1 -1
- package/components/Sticky/Sticky/Sticky.js +4 -4
- package/components/Sticky/Sticky/Sticky.js.map +1 -1
- package/components/Sticky/Sticky.d.ts +1 -1
- package/components/Sticky/Sticky.md +27 -27
- package/components/Sticky/Sticky.styles/Sticky.styles.js.map +1 -1
- package/components/Sticky/index/index.js.map +1 -1
- package/components/Switcher/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/Switcher.md +10 -10
- package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
- package/components/Switcher/index/index.js.map +1 -1
- package/components/Switcher/switcherTheme/switcherTheme.js.map +1 -1
- package/components/Tabs/Indicator/Indicator.js.map +1 -1
- package/components/Tabs/Indicator.styles/Indicator.styles.js.map +1 -1
- package/components/Tabs/Tab/Tab.js +14 -14
- package/components/Tabs/Tab/Tab.js.map +1 -1
- package/components/Tabs/Tab.styles/Tab.styles.js.map +1 -1
- package/components/Tabs/Tabs/Tabs.js +4 -4
- package/components/Tabs/Tabs/Tabs.js.map +1 -1
- package/components/Tabs/Tabs.md +36 -36
- package/components/Tabs/Tabs.styles/Tabs.styles.js.map +1 -1
- package/components/Tabs/TabsContext/TabsContext.js.map +1 -1
- package/components/Tabs/index/index.js.map +1 -1
- package/components/Textarea/Textarea/Textarea.js +12 -12
- package/components/Textarea/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.md +25 -25
- package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
- package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
- package/components/Textarea/TextareaHelpers/TextareaHelpers.js.map +1 -1
- package/components/Textarea/index/index.js.map +1 -1
- package/components/ThemeConsumer/ThemeConsumer/ThemeConsumer.js.map +1 -1
- package/components/ThemeConsumer/index/index.js.map +1 -1
- package/components/ThemeProvider/ThemeProvider/ThemeProvider.js.map +1 -1
- package/components/ThemeProvider/index/index.js.map +1 -1
- package/components/Toast/Toast/Toast.js +19 -19
- package/components/Toast/Toast/Toast.js.map +1 -1
- package/components/Toast/Toast.md +41 -41
- package/components/Toast/Toast.styles/Toast.styles.js.map +1 -1
- package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
- package/components/Toast/ToastView/ToastView.js +4 -4
- package/components/Toast/ToastView/ToastView.js.map +1 -1
- package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
- package/components/Toast/index/index.js.map +1 -1
- package/components/Toggle/Toggle/Toggle.js +2 -2
- package/components/Toggle/Toggle/Toggle.js.map +1 -1
- package/components/Toggle/Toggle.md +24 -24
- package/components/Toggle/Toggle.styles/Toggle.styles.js.map +1 -1
- package/components/Toggle/index/index.js.map +1 -1
- package/components/Token/Token/Token.js.map +1 -1
- package/components/Token/Token.styles/Token.styles.js.map +1 -1
- package/components/Token/index/index.js.map +1 -1
- package/components/TokenInput/TextWidthHelper/TextWidthHelper.js +3 -3
- package/components/TokenInput/TextWidthHelper/TextWidthHelper.js.map +1 -1
- package/components/TokenInput/TokenInput/TokenInput.js +28 -17
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.md +77 -77
- package/components/TokenInput/TokenInput.styles/TokenInput.styles.js.map +1 -1
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
- package/components/TokenInput/TokenInputReducer/TokenInputReducer.js.map +1 -1
- package/components/TokenInput/index/index.js.map +1 -1
- package/components/TokenInput/locale/index/index.js.map +1 -1
- package/components/TokenInput/locale/locales/en/en.js.map +1 -1
- package/components/TokenInput/locale/locales/ru/ru.js.map +1 -1
- package/components/Tooltip/Tooltip/Tooltip.js +8 -8
- package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.md +301 -301
- package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
- package/components/Tooltip/index/index.js.map +1 -1
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +7 -7
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
- package/components/TooltipMenu/TooltipMenu.md +115 -115
- package/components/TooltipMenu/index/index.js.map +1 -1
- package/components/TopBar/TopBar/TopBar.js +38 -38
- package/components/TopBar/TopBar/TopBar.js.map +1 -1
- package/components/TopBar/TopBar.md +111 -111
- package/components/TopBar/TopBar.styles/TopBar.styles.js.map +1 -1
- package/components/TopBar/TopBarButtonItem/TopBarButtonItem.js +4 -4
- package/components/TopBar/TopBarButtonItem/TopBarButtonItem.js.map +1 -1
- package/components/TopBar/TopBarDivider/TopBarDivider.js +4 -4
- package/components/TopBar/TopBarDivider/TopBarDivider.js.map +1 -1
- package/components/TopBar/TopBarDropdown/TopBarDropdown.js +4 -4
- package/components/TopBar/TopBarDropdown/TopBarDropdown.js.map +1 -1
- package/components/TopBar/TopBarEnd/TopBarEnd.js +4 -4
- package/components/TopBar/TopBarEnd/TopBarEnd.js.map +1 -1
- package/components/TopBar/TopBarItem/TopBarItem.js +4 -4
- package/components/TopBar/TopBarItem/TopBarItem.js.map +1 -1
- package/components/TopBar/TopBarLogout/TopBarLogout.js +4 -4
- package/components/TopBar/TopBarLogout/TopBarLogout.js.map +1 -1
- package/components/TopBar/TopBarOrganizations/TopBarOrganizations.js +4 -4
- package/components/TopBar/TopBarOrganizations/TopBarOrganizations.js.map +1 -1
- package/components/TopBar/TopBarStart/TopBarStart.js +4 -4
- package/components/TopBar/TopBarStart/TopBarStart.js.map +1 -1
- package/components/TopBar/TopBarUser/TopBarUser.js +6 -6
- package/components/TopBar/TopBarUser/TopBarUser.js.map +1 -1
- package/components/TopBar/index/index.js.map +1 -1
- package/components/TopBar/locale/index/index.js.map +1 -1
- package/components/TopBar/locale/locales/en/en.js.map +1 -1
- package/components/TopBar/locale/locales/ru/ru.js.map +1 -1
- package/index.js.map +1 -1
- package/internal/BGRuler/BGRuler.js +5 -5
- package/internal/BGRuler/BGRuler.js.map +1 -1
- package/internal/Calendar/Calendar/Calendar.js +3 -3
- package/internal/Calendar/Calendar/Calendar.js.map +1 -1
- package/internal/Calendar/Calendar.styles/Calendar.styles.js.map +1 -1
- package/internal/Calendar/CalendarDateShape/CalendarDateShape.js.map +1 -1
- package/internal/Calendar/CalendarScrollEvents/CalendarScrollEvents.js.map +1 -1
- package/internal/Calendar/CalendarUtils/CalendarUtils.js.map +1 -1
- package/internal/Calendar/DayCellView/DayCellView.js.map +1 -1
- package/internal/Calendar/DayCellView.styles/DayCellView.styles.js.map +1 -1
- package/internal/Calendar/DayCellViewModel/DayCellViewModel.js.map +1 -1
- package/internal/Calendar/Month/Month.js.map +1 -1
- package/internal/Calendar/MonthView/MonthView.js.map +1 -1
- package/internal/Calendar/MonthView.styles/MonthView.styles.js.map +1 -1
- package/internal/Calendar/MonthViewModel/MonthViewModel.js.map +1 -1
- package/internal/Calendar/config/config.js.map +1 -1
- package/internal/Calendar/index/index.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
- package/internal/CommonWrapper/index/index.js.map +1 -1
- package/internal/ComponentCombinator/ComponentCombinator.js.map +1 -1
- package/internal/ComponentTable/ComponentTable.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +10 -10
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.styles/CustomComboBox.styles.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBoxTypes/CustomComboBoxTypes.js.map +1 -1
- package/internal/CustomComboBox/index/index.js.map +1 -1
- package/internal/CustomComboBox/locale/index/index.js.map +1 -1
- package/internal/CustomComboBox/locale/locales/en/en.js.map +1 -1
- package/internal/CustomComboBox/locale/locales/ru/ru.js.map +1 -1
- package/internal/DateSelect/DateSelect/DateSelect.js +2 -2
- package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
- package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js.map +1 -1
- package/internal/DateSelect/index/index.js.map +1 -1
- package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
- package/internal/DropdownContainer/index/index.js.map +1 -1
- package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
- package/internal/FocusTrap/index/index.js.map +1 -1
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
- package/internal/HideBodyVerticalScroll/index/index.js.map +1 -1
- package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
- package/internal/IgnoreLayerClick/index/index.js.map +1 -1
- package/internal/InputLikeText/HiddenInput/HiddenInput.js +4 -4
- package/internal/InputLikeText/HiddenInput/HiddenInput.js.map +1 -1
- package/internal/InputLikeText/InputLikeText/InputLikeText.js +6 -6
- package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js.map +1 -1
- package/internal/InputLikeText/index/index.js.map +1 -1
- package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
- package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js.map +1 -1
- package/internal/InternalMenu/index/index.js.map +1 -1
- package/internal/InternalMenu/isActiveElement/isActiveElement.js.map +1 -1
- package/internal/MaskCharLowLine/MaskCharLowLine/MaskCharLowLine.js +6 -6
- package/internal/MaskCharLowLine/MaskCharLowLine/MaskCharLowLine.js.map +1 -1
- package/internal/MaskCharLowLine/MaskCharLowLine.styles/MaskCharLowLine.styles.js.map +1 -1
- package/internal/MaskCharLowLine/index/index.js.map +1 -1
- package/internal/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
- package/internal/MaskedInput/MaskedInput.styles/MaskedInput.styles.js.map +1 -1
- package/internal/MaskedInput/index/index.js.map +1 -1
- package/internal/Menu/Menu/Menu.js +10 -10
- package/internal/Menu/Menu/Menu.js.map +1 -1
- package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
- package/internal/Menu/index/index.js.map +1 -1
- package/internal/Menu/isActiveElement/isActiveElement.js.map +1 -1
- package/internal/PerformanceMetrics/PerformanceMetrics/PerformanceMetrics.js.map +1 -1
- package/internal/Popup/Popup/Popup.js +31 -31
- package/internal/Popup/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.styles/Popup.styles.js.map +1 -1
- package/internal/Popup/PopupHelper/PopupHelper.js.map +1 -1
- package/internal/Popup/PopupPin/PopupPin.js +16 -16
- package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
- package/internal/Popup/PopupPin.styles/PopupPin.styles.js.map +1 -1
- package/internal/Popup/index/index.js.map +1 -1
- package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.styles/PopupMenu.styles.js.map +1 -1
- package/internal/PopupMenu/PopupMenuPositions/PopupMenuPositions.js.map +1 -1
- package/internal/PopupMenu/index/index.js.map +1 -1
- package/internal/PopupMenu/validatePositions/validatePositions.js.map +1 -1
- package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
- package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
- package/internal/RenderContainer/index/index.js.map +1 -1
- package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
- package/internal/RenderLayer/index/index.js.map +1 -1
- package/internal/ResizeDetector/ResizeDetector/ResizeDetector.js.map +1 -1
- package/internal/ResizeDetector/ResizeDetector.styles/ResizeDetector.styles.js.map +1 -1
- package/internal/ResizeDetector/index/index.js.map +1 -1
- package/internal/SpinnerOld/SpinnerOld/SpinnerOld.js +12 -12
- package/internal/SpinnerOld/SpinnerOld/SpinnerOld.js.map +1 -1
- package/internal/SpinnerOld/SpinnerOld.styles/SpinnerOld.styles.js.map +1 -1
- package/internal/SpinnerOld/SpinnerOldCloudIcon/SpinnerOldCloudIcon.js.map +1 -1
- package/internal/SpinnerOld/index/index.js.map +1 -1
- package/internal/SpinnerOld/locale/index/index.js.map +1 -1
- package/internal/SpinnerOld/locale/locales/en/en.js.map +1 -1
- package/internal/SpinnerOld/locale/locales/ru/ru.js.map +1 -1
- package/internal/ThemePlayground/AnotherInputsPlayground/AnotherInputsPlayground.js.map +1 -1
- package/internal/ThemePlayground/CheckboxPlayground/CheckboxPlayground.js.map +1 -1
- package/internal/ThemePlayground/ComponentsGroup/ComponentsGroup.js.map +1 -1
- package/internal/ThemePlayground/CurrencyInputPlayground/CurrencyInputPlayground.js.map +1 -1
- package/internal/ThemePlayground/FxInputPlayground/FxInputPlayground.js.map +1 -1
- package/internal/ThemePlayground/HintPlayground/HintPlayground.js.map +1 -1
- package/internal/ThemePlayground/PagingPlayground/PagingPlayground.js.map +1 -1
- package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
- package/internal/ThemePlayground/Playground.md +7 -7
- package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
- package/internal/ThemePlayground/RadioPlayground/RadioPlayground.js.map +1 -1
- package/internal/ThemePlayground/SelectPlayground/SelectPlayground.js.map +1 -1
- package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
- package/internal/ThemePlayground/SwitcherPlayground/SwitcherPlayground.js.map +1 -1
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
- package/internal/ThemePlayground/ThemeEditor/ThemeEditor.js.map +1 -1
- package/internal/ThemePlayground/TogglePlayground/TogglePlayground.js.map +1 -1
- package/internal/ThemePlayground/TokenInputPlayground/TokenInputPlayground.js.map +1 -1
- package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
- package/internal/ThemePlayground/constants/constants.js.map +1 -1
- package/internal/ThemePlayground/darkTheme/darkTheme.js.map +1 -1
- package/internal/ThemePlayground/helpers/helpers.js.map +1 -1
- package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js.map +1 -1
- package/internal/ThemeShowcase/ThemeShowcase.styles/ThemeShowcase.styles.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js.map +1 -1
- package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
- package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js.map +1 -1
- package/internal/ZIndex/index/index.js.map +1 -1
- package/internal/icons/16px/icon.styles/icon.styles.js.map +1 -1
- package/internal/icons/16px/index/index.js.map +1 -1
- package/internal/icons/20px/Icon/Icon.js +2 -2
- package/internal/icons/20px/Icon/Icon.js.map +1 -1
- package/internal/icons/20px/icon.styles/icon.styles.js.map +1 -1
- package/internal/icons/20px/index/index.js.map +1 -1
- package/internal/icons/20px/svg/svg.js.map +1 -1
- package/internal/icons/CloudIcon/CloudIcon.js.map +1 -1
- package/internal/icons/CrossIcon/CrossIcon.js.map +1 -1
- package/internal/icons/SpinnerIcon/SpinnerIcon.js.map +1 -1
- package/internal/icons/SpinnerIcon.styles/SpinnerIcon.styles.js.map +1 -1
- package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
- package/internal/themes/FlatTheme/FlatTheme.js.map +1 -1
- package/internal/themes/Theme8px/Theme8px.js.map +1 -1
- package/lib/ConditionalHandler/ConditionalHandler.js +2 -2
- package/lib/ConditionalHandler/ConditionalHandler.js.map +1 -1
- package/lib/LayoutEvents/LayoutEvents.js.map +1 -1
- package/lib/MockDate/MockDate.js.map +1 -1
- package/lib/ModalStack/ModalStack.js +4 -4
- package/lib/ModalStack/ModalStack.js.map +1 -1
- package/lib/SSRSafe/SSRSafe.js.map +1 -1
- package/lib/Supports/Supports.js.map +1 -1
- package/lib/Upgrades/Upgrades.js.map +1 -1
- package/lib/animation/index/index.js.map +1 -1
- package/lib/animation/presets/presets.js.map +1 -1
- package/lib/animation/stepper/stepper.js.map +1 -1
- package/lib/client/client.js.map +1 -1
- package/lib/createPropsGetter/createPropsGetter.js.map +1 -1
- package/lib/currentEnvironment/currentEnvironment.js.map +1 -1
- package/lib/date/InternalDate/InternalDate.js +3 -3
- package/lib/date/InternalDate/InternalDate.js.map +1 -1
- package/lib/date/InternalDateCalculator/InternalDateCalculator.js.map +1 -1
- package/lib/date/InternalDateGetter/InternalDateGetter.js.map +1 -1
- package/lib/date/InternalDateSetter/InternalDateSetter.js.map +1 -1
- package/lib/date/InternalDateTransformer/InternalDateTransformer.js.map +1 -1
- package/lib/date/InternalDateValidator/InternalDateValidator.js.map +1 -1
- package/lib/date/constants/constants.js.map +1 -1
- package/lib/date/localeSets/localeSets.js.map +1 -1
- package/lib/date/types/types.js.map +1 -1
- package/lib/dom/getFocusableElements/getFocusableElements.js +33 -33
- package/lib/dom/getFocusableElements/getFocusableElements.js.map +1 -1
- package/lib/dom/getScrollWidth/getScrollWidth.js.map +1 -1
- package/lib/events/MouseDrag/MouseDrag.js +26 -26
- package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
- package/lib/events/keyboard/KeyboardEventCodes/KeyboardEventCodes.js.map +1 -1
- package/lib/events/keyboard/KeyboardMapKeys/KeyboardMapKeys.js.map +1 -1
- package/lib/events/keyboard/extractCode/extractCode.js.map +1 -1
- package/lib/events/keyboard/identifiers/identifiers.js.map +1 -1
- package/lib/events/stopPropagation/stopPropagation.js.map +1 -1
- package/lib/events/tabListener/tabListener.js.map +1 -1
- package/lib/extractKeyboardAction/extractKeyboardAction.js.map +1 -1
- package/lib/filterProps/filterProps.js.map +1 -1
- package/lib/listenFocusOutside/listenFocusOutside.js +9 -9
- package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
- package/lib/locale/LOCALECONTEXT.md +246 -246
- package/lib/locale/LocaleContext/LocaleContext.js.map +1 -1
- package/lib/locale/LocaleHelper/LocaleHelper.js.map +1 -1
- package/lib/locale/constants/constants.js.map +1 -1
- package/lib/locale/decorators/decorators.js.map +1 -1
- package/lib/locale/index/index.js.map +1 -1
- package/lib/locale/types/types.js.map +1 -1
- package/lib/memo/memo.js.map +1 -1
- package/lib/net/fetch/fetch.js.map +1 -1
- package/lib/polyfillPlaceholder/polyfillPlaceholder.js.map +1 -1
- package/lib/reactGetTextContent/reactGetTextContent.js.map +1 -1
- package/lib/styles/ColorFactory/ColorFactory.js.map +1 -1
- package/lib/styles/ColorFunctions/ColorFunctions.js.map +1 -1
- package/lib/styles/ColorHelpers/ColorHelpers.js.map +1 -1
- package/lib/styles/ColorKeywords/ColorKeywords.js.map +1 -1
- package/lib/styles/ColorObject/ColorObject.js.map +1 -1
- package/lib/styles/DimensionFunctions/DimensionFunctions.js.map +1 -1
- package/lib/styles/HoldSelectionColor/HoldSelectionColor.js.map +1 -1
- package/lib/styles/Mixins/Mixins.js.map +1 -1
- package/lib/theming/AnimationKeyframes/AnimationKeyframes.js.map +1 -1
- package/lib/theming/Emotion/Emotion.js.map +1 -1
- package/lib/theming/ThemeContext/ThemeContext.js.map +1 -1
- package/lib/theming/ThemeContext.md +248 -248
- package/lib/theming/ThemeFactory/ThemeFactory.js.map +1 -1
- package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
- package/lib/theming/themes/DefaultTheme/DefaultTheme.js.map +1 -1
- package/lib/theming/themes/DefaultTheme8px/DefaultTheme8px.js.map +1 -1
- package/lib/theming/themes/FlatTheme/FlatTheme.js.map +1 -1
- package/lib/theming/themes/FlatTheme8px/FlatTheme8px.js.map +1 -1
- package/lib/utils/utils.js +2 -2
- package/lib/utils/utils.js.map +1 -1
- package/package.json +2 -5
- package/typings/console.d.ts +3 -3
- package/typings/event-types.d.ts +4 -4
- package/typings/fonts.d.ts +12 -12
- package/typings/global.d.ts +6 -6
- package/typings/images.d.ts +1 -1
- package/typings/normalize-wheel.d.ts +5 -5
- package/typings/stylis-plugin-extra-scope.d.ts +3 -3
- package/typings/utility-types.d.ts +14 -14
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["ScrollContainer.tsx"],"names":["React","PropTypes","cn","LayoutEvents","getScrollWidth","CommonWrapper","jsStyles","HIDE_SCROLLBAR_OFFSET","MIN_SCROLL_SIZE","ScrollContainer","state","scrollActive","scrollSize","scrollPos","hover","scrolling","scrollState","inner","scroll","refInner","element","props","preventWindowScroll","addEventListener","handleInnerScrollWheel","passive","removeEventListener","refScroll","handleScrollWheel","handleNativeScroll","event","reflow","onScroll","preventDefault","emit","containerHeight","offsetHeight","contentHeight","scrollHeight","scrollTop","Math","max","getImmediateScrollState","onScrollStateChange","setState","handleScrollMouseDown","target","window","document","initialY","clientY","initialScrollTop","mouseMove","mouseMoveEvent","ratio","deltaY","Object","prototype","hasOwnProperty","call","returnValue","mouseUp","WheelEvent","handleMouseMove","right","currentTarget","getBoundingClientRect","pageX","setHover","handleMouseLeave","componentDidMount","componentDidUpdate","prevProps","render","scrollClass","scrollInvert","Boolean","invert","scrollHover","scrollStyle","top","height","innerStyle","marginRight","paddingRight","maxHeight","scrollBehavior","scrollBehaviour","root","children","scrollTo","maxScroll","offsetTop","minScroll","scrollToTop","scrollToBottom","clientHeight","Component","__KONTUR_REACT_UI__","propTypes","bool","oneOfType","string","number","oneOf","func","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport cn from 'classnames';\r\n\r\nimport * as LayoutEvents from '../../lib/LayoutEvents';\r\nimport { getScrollWidth } from '../../lib/dom/getScrollWidth';\r\nimport { Nullable } from '../../typings/utility-types';\r\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\r\n\r\nimport { jsStyles } from './ScrollContainer.styles';\r\n\r\nconst HIDE_SCROLLBAR_OFFSET = 30;\r\nconst MIN_SCROLL_SIZE = 20;\r\n\r\nexport type ScrollContainerScrollState = 'top' | 'scroll' | 'bottom';\r\n\r\nexport type ScrollBehaviour = 'auto' | 'smooth';\r\n\r\nexport interface ScrollContainerProps extends CommonProps {\r\n invert?: boolean;\r\n maxHeight?: React.CSSProperties['maxHeight'];\r\n preventWindowScroll?: boolean;\r\n /**\r\n * Поведение скролла (https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-behavior)\r\n * @default 'auto'\r\n */\r\n scrollBehaviour?: ScrollBehaviour;\r\n onScrollStateChange?: (scrollState: ScrollContainerScrollState) => void;\r\n onScroll?: (e: React.UIEvent<HTMLDivElement>) => void;\r\n}\r\n\r\nexport interface ScrollContainerState {\r\n scrollActive: boolean;\r\n hover: boolean;\r\n scrolling: boolean;\r\n scrollSize: number;\r\n scrollPos: number;\r\n scrollState: ScrollContainerScrollState;\r\n}\r\n\r\nexport class ScrollContainer extends React.Component<ScrollContainerProps, ScrollContainerState> {\r\n public static __KONTUR_REACT_UI__ = 'ScrollContainer';\r\n\r\n public static propTypes = {\r\n invert: PropTypes.bool,\r\n maxHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\r\n scrollBehaviour: PropTypes.oneOf(['auto', 'smooth']),\r\n preventWindowScroll: PropTypes.bool,\r\n onScrollStateChange: PropTypes.func,\r\n };\r\n\r\n public static defaultProps = {\r\n scrollBehaviour: 'auto',\r\n };\r\n\r\n public state: ScrollContainerState = {\r\n scrollActive: false,\r\n scrollSize: 0,\r\n scrollPos: 0,\r\n\r\n // Mouse is moving where big scrollbar can be located.\r\n hover: false,\r\n // True when scroll is following mouse (mouse down on scroll).\r\n scrolling: false,\r\n scrollState: 'top',\r\n };\r\n\r\n private inner: Nullable<HTMLElement>;\r\n private scroll: Nullable<HTMLElement>;\r\n\r\n public componentDidMount() {\r\n this.reflow();\r\n }\r\n\r\n public componentDidUpdate(prevProps: ScrollContainerProps) {\r\n if (this.inner) {\r\n if (prevProps.preventWindowScroll && !this.props.preventWindowScroll) {\r\n this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);\r\n }\r\n if (!prevProps.preventWindowScroll && this.props.preventWindowScroll) {\r\n this.inner.addEventListener('wheel', this.handleInnerScrollWheel, { passive: false });\r\n }\r\n }\r\n this.reflow();\r\n }\r\n\r\n public render() {\r\n const state = this.state;\r\n const props = this.props;\r\n let scroll = null;\r\n\r\n if (state.scrollActive) {\r\n const scrollClass = cn({\r\n [jsStyles.scroll()]: true,\r\n [jsStyles.scrollInvert()]: Boolean(props.invert),\r\n [jsStyles.scrollHover()]: state.hover || state.scrolling,\r\n });\r\n const scrollStyle = {\r\n top: state.scrollPos,\r\n height: state.scrollSize,\r\n };\r\n scroll = (\r\n <div\r\n ref={this.refScroll}\r\n className={scrollClass}\r\n style={scrollStyle}\r\n onMouseDown={this.handleScrollMouseDown}\r\n />\r\n );\r\n }\r\n\r\n const innerStyle: React.CSSProperties = {\r\n // hide vertical scrollbar with a little extra space\r\n marginRight: -1 * HIDE_SCROLLBAR_OFFSET,\r\n paddingRight: HIDE_SCROLLBAR_OFFSET - getScrollWidth(),\r\n\r\n maxHeight: props.maxHeight,\r\n scrollBehavior: props.scrollBehaviour,\r\n };\r\n\r\n return (\r\n <CommonWrapper {...this.props}>\r\n <div className={jsStyles.root()} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\r\n {scroll}\r\n <div\r\n data-tid=\"ScrollContainer__inner\"\r\n className={jsStyles.inner()}\r\n style={innerStyle}\r\n ref={this.refInner}\r\n onScroll={this.handleNativeScroll}\r\n >\r\n {props.children}\r\n </div>\r\n </div>\r\n </CommonWrapper>\r\n );\r\n }\r\n\r\n /**\r\n * @public\r\n */\r\n public scrollTo(element: HTMLElement) {\r\n if (!element || !this.inner) {\r\n return;\r\n }\r\n const maxScroll = element.offsetTop;\r\n if (this.inner.scrollTop > maxScroll) {\r\n this.inner.scrollTop = maxScroll;\r\n return;\r\n }\r\n\r\n const minScroll = element.offsetTop + element.scrollHeight - this.inner.offsetHeight;\r\n if (this.inner.scrollTop < minScroll) {\r\n this.inner.scrollTop = minScroll;\r\n }\r\n }\r\n\r\n /**\r\n * @public\r\n */\r\n public scrollToTop() {\r\n if (!this.inner) {\r\n return;\r\n }\r\n this.inner.scrollTop = 0;\r\n }\r\n\r\n /**\r\n * @public\r\n */\r\n public scrollToBottom() {\r\n if (!this.inner) {\r\n return;\r\n }\r\n this.inner.scrollTop = this.inner.scrollHeight - this.inner.offsetHeight;\r\n }\r\n\r\n private refInner = (element: HTMLElement | null) => {\r\n if (!this.inner && element && this.props.preventWindowScroll) {\r\n element.addEventListener('wheel', this.handleInnerScrollWheel, { passive: false });\r\n }\r\n if (this.inner && !element) {\r\n this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);\r\n }\r\n this.inner = element;\r\n };\r\n\r\n private refScroll = (element: HTMLElement | null) => {\r\n if (!this.scroll && element) {\r\n element.addEventListener('wheel', this.handleScrollWheel, { passive: false });\r\n }\r\n if (this.scroll && !element) {\r\n this.scroll.removeEventListener('wheel', this.handleScrollWheel);\r\n }\r\n this.scroll = element;\r\n };\r\n\r\n private handleNativeScroll = (event: React.UIEvent<HTMLDivElement>) => {\r\n this.reflow();\r\n this.props.onScroll?.(event);\r\n if (this.props.preventWindowScroll) {\r\n event.preventDefault();\r\n return;\r\n }\r\n LayoutEvents.emit();\r\n };\r\n\r\n private reflow = () => {\r\n if (!this.inner) {\r\n return;\r\n }\r\n\r\n const containerHeight = this.inner.offsetHeight;\r\n const contentHeight = this.inner.scrollHeight;\r\n const scrollTop = this.inner.scrollTop;\r\n\r\n const scrollActive = containerHeight < contentHeight;\r\n\r\n if (!scrollActive && !this.state.scrollActive) {\r\n return;\r\n }\r\n\r\n let scrollSize = 0;\r\n let scrollPos = 0;\r\n let scrollState = this.state.scrollState;\r\n\r\n if (scrollActive) {\r\n scrollSize = Math.max((containerHeight / contentHeight) * containerHeight, MIN_SCROLL_SIZE);\r\n scrollPos = (scrollTop / (contentHeight - containerHeight)) * (containerHeight - scrollSize);\r\n }\r\n\r\n if (\r\n this.state.scrollActive !== scrollActive ||\r\n this.state.scrollSize !== scrollSize ||\r\n this.state.scrollPos !== scrollPos\r\n ) {\r\n scrollState = this.getImmediateScrollState();\r\n\r\n if (scrollState !== this.state.scrollState) {\r\n this.props.onScrollStateChange?.(scrollState);\r\n }\r\n\r\n this.setState({\r\n scrollActive,\r\n scrollSize,\r\n scrollPos,\r\n scrollState,\r\n });\r\n }\r\n };\r\n\r\n private handleScrollMouseDown = (event: React.MouseEvent<HTMLDivElement>) => {\r\n if (!this.inner) {\r\n return;\r\n }\r\n\r\n const target: Document = window.document;\r\n const initialY = event.clientY;\r\n const initialScrollTop = this.inner.scrollTop;\r\n\r\n const mouseMove = (mouseMoveEvent: MouseEvent) => {\r\n if (!this.inner) {\r\n return;\r\n }\r\n\r\n const ratio =\r\n (this.inner.scrollHeight - this.inner.offsetHeight) / (this.inner.offsetHeight - this.state.scrollSize);\r\n const deltaY = (mouseMoveEvent.clientY - initialY) * ratio;\r\n\r\n this.inner.scrollTop = initialScrollTop + deltaY;\r\n\r\n if (mouseMoveEvent.preventDefault) {\r\n mouseMoveEvent.preventDefault();\r\n }\r\n\r\n if (Object.prototype.hasOwnProperty.call(mouseMoveEvent, 'returnValue')) {\r\n (mouseMoveEvent as MouseEvent & {\r\n returnValue: boolean;\r\n }).returnValue = false;\r\n }\r\n };\r\n\r\n const mouseUp = () => {\r\n target.removeEventListener('mousemove', mouseMove);\r\n target.removeEventListener('mouseup', mouseUp);\r\n this.setState({ scrolling: false });\r\n };\r\n\r\n target.addEventListener('mousemove', mouseMove);\r\n target.addEventListener('mouseup', mouseUp);\r\n this.setState({ scrolling: true });\r\n\r\n event.preventDefault();\r\n };\r\n\r\n private handleScrollWheel = (event: Event) => {\r\n if (!this.inner || !(event instanceof WheelEvent)) {\r\n return;\r\n }\r\n\r\n if (event.deltaY > 0 && this.inner.scrollHeight <= this.inner.scrollTop + this.inner.offsetHeight) {\r\n return;\r\n }\r\n if (event.deltaY < 0 && this.inner.scrollTop <= 0) {\r\n return;\r\n }\r\n\r\n this.inner.scrollTop += event.deltaY;\r\n event.preventDefault();\r\n };\r\n\r\n private handleInnerScrollWheel = (event: Event) => {\r\n if (!this.inner || !(event instanceof WheelEvent)) {\r\n return;\r\n }\r\n\r\n if (this.state.scrollActive) {\r\n if (event.deltaY > 0 && this.inner.scrollHeight <= this.inner.scrollTop + this.inner.offsetHeight) {\r\n event.preventDefault();\r\n return false;\r\n }\r\n if (event.deltaY < 0 && this.inner.scrollTop <= 0) {\r\n event.preventDefault();\r\n return false;\r\n }\r\n }\r\n };\r\n\r\n private handleMouseMove = (event: React.MouseEvent<HTMLDivElement>) => {\r\n const right = event.currentTarget.getBoundingClientRect().right - event.pageX;\r\n this.setHover(right <= 12);\r\n };\r\n\r\n private handleMouseLeave = () => {\r\n this.setHover(false);\r\n };\r\n\r\n private setHover(hover: boolean) {\r\n if (this.state.hover !== hover) {\r\n this.setState({ hover });\r\n }\r\n }\r\n\r\n private getImmediateScrollState(): ScrollContainerScrollState {\r\n if (!this.inner || this.inner.scrollTop === 0) {\r\n return 'top';\r\n } else if (this.inner.scrollTop === this.inner.scrollHeight - this.inner.clientHeight) {\r\n return 'bottom';\r\n } else {\r\n return 'scroll';\r\n }\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"sources":["ScrollContainer.tsx"],"names":["React","PropTypes","cn","LayoutEvents","getScrollWidth","CommonWrapper","jsStyles","HIDE_SCROLLBAR_OFFSET","MIN_SCROLL_SIZE","ScrollContainer","state","scrollActive","scrollSize","scrollPos","hover","scrolling","scrollState","inner","scroll","refInner","element","props","preventWindowScroll","addEventListener","handleInnerScrollWheel","passive","removeEventListener","refScroll","handleScrollWheel","handleNativeScroll","event","reflow","onScroll","preventDefault","emit","containerHeight","offsetHeight","contentHeight","scrollHeight","scrollTop","Math","max","getImmediateScrollState","onScrollStateChange","setState","handleScrollMouseDown","target","window","document","initialY","clientY","initialScrollTop","mouseMove","mouseMoveEvent","ratio","deltaY","Object","prototype","hasOwnProperty","call","returnValue","mouseUp","WheelEvent","handleMouseMove","right","currentTarget","getBoundingClientRect","pageX","setHover","handleMouseLeave","componentDidMount","componentDidUpdate","prevProps","render","scrollClass","scrollInvert","Boolean","invert","scrollHover","scrollStyle","top","height","innerStyle","marginRight","paddingRight","maxHeight","scrollBehavior","scrollBehaviour","root","children","scrollTo","maxScroll","offsetTop","minScroll","scrollToTop","scrollToBottom","clientHeight","Component","__KONTUR_REACT_UI__","propTypes","bool","oneOfType","string","number","oneOf","func","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport cn from 'classnames';\n\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { getScrollWidth } from '../../lib/dom/getScrollWidth';\nimport { Nullable } from '../../typings/utility-types';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\n\nimport { jsStyles } from './ScrollContainer.styles';\n\nconst HIDE_SCROLLBAR_OFFSET = 30;\nconst MIN_SCROLL_SIZE = 20;\n\nexport type ScrollContainerScrollState = 'top' | 'scroll' | 'bottom';\n\nexport type ScrollBehaviour = 'auto' | 'smooth';\n\nexport interface ScrollContainerProps extends CommonProps {\n invert?: boolean;\n maxHeight?: React.CSSProperties['maxHeight'];\n preventWindowScroll?: boolean;\n /**\n * Поведение скролла (https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-behavior)\n * @default 'auto'\n */\n scrollBehaviour?: ScrollBehaviour;\n onScrollStateChange?: (scrollState: ScrollContainerScrollState) => void;\n onScroll?: (e: React.UIEvent<HTMLDivElement>) => void;\n}\n\nexport interface ScrollContainerState {\n scrollActive: boolean;\n hover: boolean;\n scrolling: boolean;\n scrollSize: number;\n scrollPos: number;\n scrollState: ScrollContainerScrollState;\n}\n\nexport class ScrollContainer extends React.Component<ScrollContainerProps, ScrollContainerState> {\n public static __KONTUR_REACT_UI__ = 'ScrollContainer';\n\n public static propTypes = {\n invert: PropTypes.bool,\n maxHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n scrollBehaviour: PropTypes.oneOf(['auto', 'smooth']),\n preventWindowScroll: PropTypes.bool,\n onScrollStateChange: PropTypes.func,\n };\n\n public static defaultProps = {\n scrollBehaviour: 'auto',\n };\n\n public state: ScrollContainerState = {\n scrollActive: false,\n scrollSize: 0,\n scrollPos: 0,\n\n // Mouse is moving where big scrollbar can be located.\n hover: false,\n // True when scroll is following mouse (mouse down on scroll).\n scrolling: false,\n scrollState: 'top',\n };\n\n private inner: Nullable<HTMLElement>;\n private scroll: Nullable<HTMLElement>;\n\n public componentDidMount() {\n this.reflow();\n }\n\n public componentDidUpdate(prevProps: ScrollContainerProps) {\n if (this.inner) {\n if (prevProps.preventWindowScroll && !this.props.preventWindowScroll) {\n this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);\n }\n if (!prevProps.preventWindowScroll && this.props.preventWindowScroll) {\n this.inner.addEventListener('wheel', this.handleInnerScrollWheel, { passive: false });\n }\n }\n this.reflow();\n }\n\n public render() {\n const state = this.state;\n const props = this.props;\n let scroll = null;\n\n if (state.scrollActive) {\n const scrollClass = cn({\n [jsStyles.scroll()]: true,\n [jsStyles.scrollInvert()]: Boolean(props.invert),\n [jsStyles.scrollHover()]: state.hover || state.scrolling,\n });\n const scrollStyle = {\n top: state.scrollPos,\n height: state.scrollSize,\n };\n scroll = (\n <div\n ref={this.refScroll}\n className={scrollClass}\n style={scrollStyle}\n onMouseDown={this.handleScrollMouseDown}\n />\n );\n }\n\n const innerStyle: React.CSSProperties = {\n // hide vertical scrollbar with a little extra space\n marginRight: -1 * HIDE_SCROLLBAR_OFFSET,\n paddingRight: HIDE_SCROLLBAR_OFFSET - getScrollWidth(),\n\n maxHeight: props.maxHeight,\n scrollBehavior: props.scrollBehaviour,\n };\n\n return (\n <CommonWrapper {...this.props}>\n <div className={jsStyles.root()} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n {scroll}\n <div\n data-tid=\"ScrollContainer__inner\"\n className={jsStyles.inner()}\n style={innerStyle}\n ref={this.refInner}\n onScroll={this.handleNativeScroll}\n >\n {props.children}\n </div>\n </div>\n </CommonWrapper>\n );\n }\n\n /**\n * @public\n */\n public scrollTo(element: HTMLElement) {\n if (!element || !this.inner) {\n return;\n }\n const maxScroll = element.offsetTop;\n if (this.inner.scrollTop > maxScroll) {\n this.inner.scrollTop = maxScroll;\n return;\n }\n\n const minScroll = element.offsetTop + element.scrollHeight - this.inner.offsetHeight;\n if (this.inner.scrollTop < minScroll) {\n this.inner.scrollTop = minScroll;\n }\n }\n\n /**\n * @public\n */\n public scrollToTop() {\n if (!this.inner) {\n return;\n }\n this.inner.scrollTop = 0;\n }\n\n /**\n * @public\n */\n public scrollToBottom() {\n if (!this.inner) {\n return;\n }\n this.inner.scrollTop = this.inner.scrollHeight - this.inner.offsetHeight;\n }\n\n private refInner = (element: HTMLElement | null) => {\n if (!this.inner && element && this.props.preventWindowScroll) {\n element.addEventListener('wheel', this.handleInnerScrollWheel, { passive: false });\n }\n if (this.inner && !element) {\n this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);\n }\n this.inner = element;\n };\n\n private refScroll = (element: HTMLElement | null) => {\n if (!this.scroll && element) {\n element.addEventListener('wheel', this.handleScrollWheel, { passive: false });\n }\n if (this.scroll && !element) {\n this.scroll.removeEventListener('wheel', this.handleScrollWheel);\n }\n this.scroll = element;\n };\n\n private handleNativeScroll = (event: React.UIEvent<HTMLDivElement>) => {\n this.reflow();\n this.props.onScroll?.(event);\n if (this.props.preventWindowScroll) {\n event.preventDefault();\n return;\n }\n LayoutEvents.emit();\n };\n\n private reflow = () => {\n if (!this.inner) {\n return;\n }\n\n const containerHeight = this.inner.offsetHeight;\n const contentHeight = this.inner.scrollHeight;\n const scrollTop = this.inner.scrollTop;\n\n const scrollActive = containerHeight < contentHeight;\n\n if (!scrollActive && !this.state.scrollActive) {\n return;\n }\n\n let scrollSize = 0;\n let scrollPos = 0;\n let scrollState = this.state.scrollState;\n\n if (scrollActive) {\n scrollSize = Math.max((containerHeight / contentHeight) * containerHeight, MIN_SCROLL_SIZE);\n scrollPos = (scrollTop / (contentHeight - containerHeight)) * (containerHeight - scrollSize);\n }\n\n if (\n this.state.scrollActive !== scrollActive ||\n this.state.scrollSize !== scrollSize ||\n this.state.scrollPos !== scrollPos\n ) {\n scrollState = this.getImmediateScrollState();\n\n if (scrollState !== this.state.scrollState) {\n this.props.onScrollStateChange?.(scrollState);\n }\n\n this.setState({\n scrollActive,\n scrollSize,\n scrollPos,\n scrollState,\n });\n }\n };\n\n private handleScrollMouseDown = (event: React.MouseEvent<HTMLDivElement>) => {\n if (!this.inner) {\n return;\n }\n\n const target: Document = window.document;\n const initialY = event.clientY;\n const initialScrollTop = this.inner.scrollTop;\n\n const mouseMove = (mouseMoveEvent: MouseEvent) => {\n if (!this.inner) {\n return;\n }\n\n const ratio =\n (this.inner.scrollHeight - this.inner.offsetHeight) / (this.inner.offsetHeight - this.state.scrollSize);\n const deltaY = (mouseMoveEvent.clientY - initialY) * ratio;\n\n this.inner.scrollTop = initialScrollTop + deltaY;\n\n if (mouseMoveEvent.preventDefault) {\n mouseMoveEvent.preventDefault();\n }\n\n if (Object.prototype.hasOwnProperty.call(mouseMoveEvent, 'returnValue')) {\n (mouseMoveEvent as MouseEvent & {\n returnValue: boolean;\n }).returnValue = false;\n }\n };\n\n const mouseUp = () => {\n target.removeEventListener('mousemove', mouseMove);\n target.removeEventListener('mouseup', mouseUp);\n this.setState({ scrolling: false });\n };\n\n target.addEventListener('mousemove', mouseMove);\n target.addEventListener('mouseup', mouseUp);\n this.setState({ scrolling: true });\n\n event.preventDefault();\n };\n\n private handleScrollWheel = (event: Event) => {\n if (!this.inner || !(event instanceof WheelEvent)) {\n return;\n }\n\n if (event.deltaY > 0 && this.inner.scrollHeight <= this.inner.scrollTop + this.inner.offsetHeight) {\n return;\n }\n if (event.deltaY < 0 && this.inner.scrollTop <= 0) {\n return;\n }\n\n this.inner.scrollTop += event.deltaY;\n event.preventDefault();\n };\n\n private handleInnerScrollWheel = (event: Event) => {\n if (!this.inner || !(event instanceof WheelEvent)) {\n return;\n }\n\n if (this.state.scrollActive) {\n if (event.deltaY > 0 && this.inner.scrollHeight <= this.inner.scrollTop + this.inner.offsetHeight) {\n event.preventDefault();\n return false;\n }\n if (event.deltaY < 0 && this.inner.scrollTop <= 0) {\n event.preventDefault();\n return false;\n }\n }\n };\n\n private handleMouseMove = (event: React.MouseEvent<HTMLDivElement>) => {\n const right = event.currentTarget.getBoundingClientRect().right - event.pageX;\n this.setHover(right <= 12);\n };\n\n private handleMouseLeave = () => {\n this.setHover(false);\n };\n\n private setHover(hover: boolean) {\n if (this.state.hover !== hover) {\n this.setState({ hover });\n }\n }\n\n private getImmediateScrollState(): ScrollContainerScrollState {\n if (!this.inner || this.inner.scrollTop === 0) {\n return 'top';\n } else if (this.inner.scrollTop === this.inner.scrollHeight - this.inner.clientHeight) {\n return 'bottom';\n } else {\n return 'scroll';\n }\n }\n}\n"]}
|
|
@@ -1,94 +1,94 @@
|
|
|
1
|
-
```jsx harmony
|
|
2
|
-
function items(count) {
|
|
3
|
-
var items = [];
|
|
4
|
-
for (var i = 0; i < count; ++i) {
|
|
5
|
-
items.push(i);
|
|
6
|
-
}
|
|
7
|
-
return items;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
var divStyle = {
|
|
11
|
-
display: 'inline-block',
|
|
12
|
-
border: '1px solid #f99',
|
|
13
|
-
height: 200,
|
|
14
|
-
margin: 1,
|
|
15
|
-
position: 'relative',
|
|
16
|
-
verticalAlign: 'top',
|
|
17
|
-
width: 200,
|
|
18
|
-
};
|
|
19
|
-
var absStyle = {
|
|
20
|
-
border: '1px solid #000',
|
|
21
|
-
boxSizing: 'border-box',
|
|
22
|
-
position: 'absolute',
|
|
23
|
-
width: '100%',
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
<div>
|
|
27
|
-
<div style={divStyle}>
|
|
28
|
-
<ScrollContainer>
|
|
29
|
-
{items(20).map(i => (
|
|
30
|
-
<div key={i}>{i}</div>
|
|
31
|
-
))}
|
|
32
|
-
</ScrollContainer>
|
|
33
|
-
</div>
|
|
34
|
-
<div style={{ ...divStyle, background: '#888' }}>
|
|
35
|
-
<ScrollContainer invert>
|
|
36
|
-
{items(20).map(i => (
|
|
37
|
-
<div key={i}>{i}</div>
|
|
38
|
-
))}
|
|
39
|
-
</ScrollContainer>
|
|
40
|
-
</div>
|
|
41
|
-
<div style={divStyle}>
|
|
42
|
-
<div style={absStyle}>
|
|
43
|
-
<ScrollContainer>
|
|
44
|
-
{items(3).map(i => (
|
|
45
|
-
<div key={i}>{i}</div>
|
|
46
|
-
))}
|
|
47
|
-
</ScrollContainer>
|
|
48
|
-
</div>
|
|
49
|
-
</div>
|
|
50
|
-
<div style={divStyle}>
|
|
51
|
-
<div style={absStyle}>
|
|
52
|
-
<ScrollContainer maxHeight={150}>
|
|
53
|
-
{items(30).map(i => (
|
|
54
|
-
<div key={i}>{i}</div>
|
|
55
|
-
))}
|
|
56
|
-
</ScrollContainer>
|
|
57
|
-
</div>
|
|
58
|
-
</div>
|
|
59
|
-
</div>;
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
На данный момент кастомизируется только вертикальный scrollbar. Горизонтальный, при наличии, остается нативным.
|
|
63
|
-
|
|
64
|
-
```jsx harmony
|
|
65
|
-
function items(count) {
|
|
66
|
-
var items = [];
|
|
67
|
-
for (var i = 0; i < count; ++i) {
|
|
68
|
-
items.push(i);
|
|
69
|
-
}
|
|
70
|
-
return items;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
var containerStyle = {
|
|
74
|
-
display: 'inline-block',
|
|
75
|
-
border: '1px solid #f99',
|
|
76
|
-
height: 200,
|
|
77
|
-
margin: 1,
|
|
78
|
-
width: 200,
|
|
79
|
-
};
|
|
80
|
-
|
|
81
|
-
var innerStyle = {
|
|
82
|
-
width: 400,
|
|
83
|
-
};
|
|
84
|
-
|
|
85
|
-
<div style={containerStyle}>
|
|
86
|
-
<ScrollContainer>
|
|
87
|
-
{items(20).map(i => (
|
|
88
|
-
<div style={innerStyle} key={i}>
|
|
89
|
-
{i}
|
|
90
|
-
</div>
|
|
91
|
-
))}
|
|
92
|
-
</ScrollContainer>
|
|
93
|
-
</div>;
|
|
94
|
-
```
|
|
1
|
+
```jsx harmony
|
|
2
|
+
function items(count) {
|
|
3
|
+
var items = [];
|
|
4
|
+
for (var i = 0; i < count; ++i) {
|
|
5
|
+
items.push(i);
|
|
6
|
+
}
|
|
7
|
+
return items;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
var divStyle = {
|
|
11
|
+
display: 'inline-block',
|
|
12
|
+
border: '1px solid #f99',
|
|
13
|
+
height: 200,
|
|
14
|
+
margin: 1,
|
|
15
|
+
position: 'relative',
|
|
16
|
+
verticalAlign: 'top',
|
|
17
|
+
width: 200,
|
|
18
|
+
};
|
|
19
|
+
var absStyle = {
|
|
20
|
+
border: '1px solid #000',
|
|
21
|
+
boxSizing: 'border-box',
|
|
22
|
+
position: 'absolute',
|
|
23
|
+
width: '100%',
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
<div>
|
|
27
|
+
<div style={divStyle}>
|
|
28
|
+
<ScrollContainer>
|
|
29
|
+
{items(20).map(i => (
|
|
30
|
+
<div key={i}>{i}</div>
|
|
31
|
+
))}
|
|
32
|
+
</ScrollContainer>
|
|
33
|
+
</div>
|
|
34
|
+
<div style={{ ...divStyle, background: '#888' }}>
|
|
35
|
+
<ScrollContainer invert>
|
|
36
|
+
{items(20).map(i => (
|
|
37
|
+
<div key={i}>{i}</div>
|
|
38
|
+
))}
|
|
39
|
+
</ScrollContainer>
|
|
40
|
+
</div>
|
|
41
|
+
<div style={divStyle}>
|
|
42
|
+
<div style={absStyle}>
|
|
43
|
+
<ScrollContainer>
|
|
44
|
+
{items(3).map(i => (
|
|
45
|
+
<div key={i}>{i}</div>
|
|
46
|
+
))}
|
|
47
|
+
</ScrollContainer>
|
|
48
|
+
</div>
|
|
49
|
+
</div>
|
|
50
|
+
<div style={divStyle}>
|
|
51
|
+
<div style={absStyle}>
|
|
52
|
+
<ScrollContainer maxHeight={150}>
|
|
53
|
+
{items(30).map(i => (
|
|
54
|
+
<div key={i}>{i}</div>
|
|
55
|
+
))}
|
|
56
|
+
</ScrollContainer>
|
|
57
|
+
</div>
|
|
58
|
+
</div>
|
|
59
|
+
</div>;
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
На данный момент кастомизируется только вертикальный scrollbar. Горизонтальный, при наличии, остается нативным.
|
|
63
|
+
|
|
64
|
+
```jsx harmony
|
|
65
|
+
function items(count) {
|
|
66
|
+
var items = [];
|
|
67
|
+
for (var i = 0; i < count; ++i) {
|
|
68
|
+
items.push(i);
|
|
69
|
+
}
|
|
70
|
+
return items;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
var containerStyle = {
|
|
74
|
+
display: 'inline-block',
|
|
75
|
+
border: '1px solid #f99',
|
|
76
|
+
height: 200,
|
|
77
|
+
margin: 1,
|
|
78
|
+
width: 200,
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
var innerStyle = {
|
|
82
|
+
width: 400,
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
<div style={containerStyle}>
|
|
86
|
+
<ScrollContainer>
|
|
87
|
+
{items(20).map(i => (
|
|
88
|
+
<div style={innerStyle} key={i}>
|
|
89
|
+
{i}
|
|
90
|
+
</div>
|
|
91
|
+
))}
|
|
92
|
+
</ScrollContainer>
|
|
93
|
+
</div>;
|
|
94
|
+
```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["ScrollContainer.styles.ts"],"names":["css","memoizeStyle","styles","root","inner","scroll","scrollHover","scrollInvert","jsStyles"],"mappings":"ukDAAA,SAASA,GAAT,EAAcC,YAAd,QAAkC,2BAAlC;;AAEA,IAAMC,MAAM,GAAG;AACbC,EAAAA,IADa,kBACN;AACL,WAAOH,GAAP;;;;;AAKD,GAPY;;AASbI,EAAAA,KATa,mBASL;AACN,WAAOJ,GAAP;;;;;;;;AAQD,GAlBY;;AAoBbK,EAAAA,MApBa,oBAoBJ;AACP,WAAOL,GAAP;;;;;;;;;;;;;;;;;;;AAmBD,GAxCY;;AA0CbM,EAAAA,WA1Ca,yBA0CC;AACZ,WAAON,GAAP;;;AAGD,GA9CY;;AAgDbO,EAAAA,YAhDa,0BAgDE;AACb,WAAOP,GAAP;;;;;;AAMD,GAvDY,EAAf;;;AA0DA,OAAO,IAAMQ,QAAQ,GAAGP,YAAY,CAACC,MAAD,CAA7B","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\
|
|
1
|
+
{"version":3,"sources":["ScrollContainer.styles.ts"],"names":["css","memoizeStyle","styles","root","inner","scroll","scrollHover","scrollInvert","jsStyles"],"mappings":"ukDAAA,SAASA,GAAT,EAAcC,YAAd,QAAkC,2BAAlC;;AAEA,IAAMC,MAAM,GAAG;AACbC,EAAAA,IADa,kBACN;AACL,WAAOH,GAAP;;;;;AAKD,GAPY;;AASbI,EAAAA,KATa,mBASL;AACN,WAAOJ,GAAP;;;;;;;;AAQD,GAlBY;;AAoBbK,EAAAA,MApBa,oBAoBJ;AACP,WAAOL,GAAP;;;;;;;;;;;;;;;;;;;AAmBD,GAxCY;;AA0CbM,EAAAA,WA1Ca,yBA0CC;AACZ,WAAON,GAAP;;;AAGD,GA9CY;;AAgDbO,EAAAA,YAhDa,0BAgDE;AACb,WAAOP,GAAP;;;;;;AAMD,GAvDY,EAAf;;;AA0DA,OAAO,IAAMQ,QAAQ,GAAGP,YAAY,CAACC,MAAD,CAA7B","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\n\nconst styles = {\n root() {\n return css`\n height: 100%;\n overflow: hidden;\n position: relative;\n `;\n },\n\n inner() {\n return css`\n margin-bottom: -1px;\n max-height: 100%;\n\n /* IE sometimes enabled scroll: http://codepen.io/anon/pen/RRrLNX */\n padding-bottom: 1px;\n overflow-y: scroll;\n `;\n },\n\n scroll() {\n return css`\n position: absolute;\n right: 2px;\n transition: width 0.2s;\n width: 4px;\n z-index: 200;\n\n &::after {\n background: #b7b7b7;\n border-radius: 5px;\n bottom: 1px;\n content: '';\n display: block;\n left: 0;\n position: absolute;\n right: 0;\n top: 1px;\n }\n `;\n },\n\n scrollHover() {\n return css`\n width: 10px;\n `;\n },\n\n scrollInvert() {\n return css`\n &::after {\n background: #ccc;\n background: rgba(255, 255, 255, 0.5);\n }\n `;\n },\n};\n\nexport const jsStyles = memoizeStyle(styles);\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.tsx"],"names":[],"mappings":"AAAA,cAAc,mBAAd","sourcesContent":["export * from './ScrollContainer';\
|
|
1
|
+
{"version":3,"sources":["index.tsx"],"names":[],"mappings":"AAAA,cAAc,mBAAd","sourcesContent":["export * from './ScrollContainer';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Item.tsx"],"names":["React","MenuItem","Item","render","props","children","Component","__KONTUR_REACT_UI__"],"mappings":"sEAAA,OAAOA,KAAP,MAAkB,OAAlB;;AAEA,SAASC,QAAT,QAAyB,aAAzB;;AAEA,WAAaC,IAAb;;;AAGSC,EAAAA,MAHT,GAGE,kBAAgB;AACd,wBAAO,oBAAC,QAAD,QAAW,KAAKC,KAAL,CAAWC,QAAtB,CAAP;AACD,GALH,eAA0BL,KAAK,CAACM,SAAhC,EAAaJ,I,CACGK,mB,GAAsB,Y","sourcesContent":["import React from 'react';\
|
|
1
|
+
{"version":3,"sources":["Item.tsx"],"names":["React","MenuItem","Item","render","props","children","Component","__KONTUR_REACT_UI__"],"mappings":"sEAAA,OAAOA,KAAP,MAAkB,OAAlB;;AAEA,SAASC,QAAT,QAAyB,aAAzB;;AAEA,WAAaC,IAAb;;;AAGSC,EAAAA,MAHT,GAGE,kBAAgB;AACd,wBAAO,oBAAC,QAAD,QAAW,KAAKC,KAAL,CAAWC,QAAtB,CAAP;AACD,GALH,eAA0BL,KAAK,CAACM,SAAhC,EAAaJ,I,CACGK,mB,GAAsB,Y","sourcesContent":["import React from 'react';\n\nimport { MenuItem } from '../MenuItem';\n\nexport class Item extends React.Component<{ children?: React.ReactNode }> {\n public static __KONTUR_REACT_UI__ = 'SelectItem';\n\n public render() {\n return <MenuItem>{this.props.children}</MenuItem>;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Select.tsx"],"names":["React","PropTypes","ReactDOM","invariant","warning","cn","isKeyArrowDown","isKeyArrowUp","isKeyArrowVertical","isKeyEnter","isKeyEscape","isKeySpace","locale","reactGetTextContent","Button","DropdownContainer","filterProps","Input","Link","Menu","MenuItem","MenuSeparator","RenderLayer","createPropsGetter","isFunction","ThemeContext","CommonWrapper","Item","SelectLocaleHelper","jsStyles","getSelectTheme","PASS_BUTTON_PROPS","disabled","error","use","size","onMouseEnter","onMouseLeave","onMouseOver","Select","state","opened","value","props","defaultValue","searchPattern","theme","menu","buttonElement","getProps","defaultProps","open","setState","onOpen","close","onClose","focus","dropdownContainerGetParent","findDOMNode","focusInput","input","setTimeout","refMenu","toggle","handleKey","e","preventDefault","up","down","enter","onKeyDown","handleSearch","buttonRef","element","getButton","buttonParams","button","_renderButton","renderDefaultButton","Children","only","isValidElement","cloneElement","ref","onFocus","onBlur","componentDidUpdate","_prevProps","prevState","window","addEventListener","removeEventListener","render","renderMain","renderLabel","label","isPlaceholder","onClick","style","width","maxWidth","undefined","root","renderMenu","getValue","item","getItemByValue","renderValue","placeholder","params","diadocLinkIcon","renderLinkButton","buttonProps","align","active","_icon","Object","assign","icon","_noRightPadding","labelProps","className","customUsePlaceholder","paddingRight","getLabelPaddingRight","useIsCustom","labelText","arrowWrap","right","getLegacyArrowShift","arrow","arrowDisabled","customUseArrow","getArrowPadding","selectPaddingArrowLarge","selectPaddingArrowMedium","selectPaddingArrowSmall","ARROW_WIDTH","arrowLeftPadding","parseFloat","getSelectPadding","selectPaddingXLarge","selectPaddingXMedium","selectPaddingXSmall","selectPadding","linkProps","_button","_buttonOpened","search","menuAlign","disablePortal","menuWidth","maxMenuHeight","mapItems","iValue","i","comment","key","areValuesEqual","select","bind","renderItem","onValueChange","fn","items","pattern","toLowerCase","result","index","entry","normalizeEntry","filterItem","push","itemValue","Component","__KONTUR_REACT_UI__","propTypes","func","any","bool","oneOfType","array","object","number","string","node","SEP","value1","value2","Array","isArray","toString","indexOf"],"mappings":"84CAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,QAAP,MAAqB,WAArB;AACA,OAAOC,SAAP,MAAsB,WAAtB;AACA,OAAOC,OAAP,MAAoB,SAApB;AACA,OAAOC,EAAP,MAAe,YAAf;;AAEA;AACEC,cADF;AAEEC,YAFF;AAGEC,kBAHF;AAIEC,UAJF;AAKEC,WALF;AAMEC,UANF;AAOO,uCAPP;AAQA,SAASC,MAAT,QAAuB,6BAAvB;AACA,SAASC,mBAAT,QAAoC,+BAApC;AACA,SAASC,MAAT,QAA2D,WAA3D;AACA,SAASC,iBAAT,QAAkC,kCAAlC;AACA,SAASC,WAAT,QAA4B,uBAA5B;AACA,SAASC,KAAT,QAAsB,UAAtB;AACA,SAASC,IAAT,QAAqB,SAArB;AACA,SAASC,IAAT,QAAqB,qBAArB;AACA,SAASC,QAAT,QAAyB,aAAzB;AACA,SAASC,aAAT,QAA8B,kBAA9B;AACA,SAASC,WAAT,QAA4B,4BAA5B;AACA,SAASC,iBAAT,QAAkC,6BAAlC;;AAEA,SAASC,UAAT,QAA2B,iBAA3B;AACA,SAASC,YAAT,QAA6B,gCAA7B;;AAEA,SAAsBC,aAAtB,QAA2C,8BAA3C;;AAEA,SAASC,IAAT,QAAqB,QAArB;AACA,SAAuBC,kBAAvB,QAAiD,UAAjD;AACA,SAASC,QAAT,QAAyB,iBAAzB;AACA,SAASC,cAAT,QAA+B,eAA/B;;;;;;;;;;;AAWA,IAAMC,iBAAiB,GAAG;AACxBC,EAAAA,QAAQ,EAAE,IADc;AAExBC,EAAAA,KAAK,EAAE,IAFiB;AAGxBC,EAAAA,GAAG,EAAE,IAHmB;AAIxBC,EAAAA,IAAI,EAAE,IAJkB;AAKxB/B,EAAAA,OAAO,EAAE,IALe;;AAOxBgC,EAAAA,YAAY,EAAE,IAPU;AAQxBC,EAAAA,YAAY,EAAE,IARU;AASxBC,EAAAA,WAAW,EAAE,IATW,EAA1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwGA,WAAaC,MAAb,WADC3B,MAAM,CAAC,QAAD,EAAWgB,kBAAX,CACP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6CSY,IAAAA,KA7CT,GA6CsC;AAClCC,MAAAA,MAAM,EAAE,KAD0B;AAElCC,MAAAA,KAAK,EAAE,MAAKC,KAAL,CAAWC,YAFgB;AAGlCC,MAAAA,aAAa,EAAE,EAHmB,EA7CtC;;;AAmDUC,IAAAA,KAnDV;AAoDmBlC,IAAAA,MApDnB;AAqDUmC,IAAAA,IArDV;AAsDUC,IAAAA,aAtDV,GAsDwD,IAtDxD;AAuDUC,IAAAA,QAvDV,GAuDqB1B,iBAAiB,CAACgB,MAAM,CAACW,YAAR,CAvDtC;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkFSC,IAAAA,IAlFT,GAkFgB,YAAM;AAClB,UAAI,CAAC,MAAKX,KAAL,CAAWC,MAAhB,EAAwB;AACtB,cAAKW,QAAL,CAAc,EAAEX,MAAM,EAAE,IAAV,EAAd;;AAEA,YAAI,MAAKE,KAAL,CAAWU,MAAf,EAAuB;AACrB,gBAAKV,KAAL,CAAWU,MAAX;AACD;AACF;AACF,KA1FH;;;;;AA+FSC,IAAAA,KA/FT,GA+FiB,YAAM;AACnB,UAAI,MAAKd,KAAL,CAAWC,MAAf,EAAuB;AACrB,cAAKW,QAAL,CAAc,EAAEX,MAAM,EAAE,KAAV,EAAiBI,aAAa,EAAE,EAAhC,EAAd;;AAEA,YAAI,MAAKF,KAAL,CAAWY,OAAf,EAAwB;AACtB,gBAAKZ,KAAL,CAAWY,OAAX;AACD;AACF;AACF,KAvGH;;;;;AA4GSC,IAAAA,KA5GT,GA4GiB,YAAM;AACnB,UAAI,MAAKR,aAAL,IAAsB,MAAKA,aAAL,CAAmBQ,KAA7C,EAAoD;AAClD,cAAKR,aAAL,CAAmBQ,KAAnB;AACD;AACF,KAhHH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8TUC,IAAAA,0BA9TV,GA8TuC,YAAM;AACzC,aAAOvD,QAAQ,CAACwD,WAAT,+BAAP;AACD,KAhUH;;AAkUUC,IAAAA,UAlUV,GAkUuB,UAACC,KAAD,EAAkB;AACrC;AACAC,MAAAA,UAAU,CAAC,oBAAMD,KAAN,oBAAMA,KAAK,CAAEJ,KAAP,EAAN,EAAD,EAAuB,CAAvB,CAAV;AACD,KArUH;;AAuUUM,IAAAA,OAvUV,GAuUoB,UAACf,IAAD,EAAgB;AAChC,YAAKA,IAAL,GAAYA,IAAZ;AACD,KAzUH;;AA2UUgB,IAAAA,MA3UV,GA2UmB,YAAM;AACrB,UAAI,MAAKvB,KAAL,CAAWC,MAAf,EAAuB;AACrB,cAAKa,KAAL;AACD,OAFD,MAEO;AACL,cAAKH,IAAL;AACD;AACF,KAjVH;;AAmVUa,IAAAA,SAnVV,GAmVsB,UAACC,CAAD,EAAyC;AAC3D,UAAI,CAAC,MAAKzB,KAAL,CAAWC,MAAhB,EAAwB;AACtB,YAAI9B,UAAU,CAACsD,CAAD,CAAV,IAAiBzD,kBAAkB,CAACyD,CAAD,CAAvC,EAA4C;AAC1CA,UAAAA,CAAC,CAACC,cAAF;AACA,gBAAKf,IAAL;AACD;AACF,OALD,MAKO;AACL,gBAAQ,IAAR;AACE,eAAKzC,WAAW,CAACuD,CAAD,CAAhB;AACE,kBAAKT,KAAL;AACA,kBAAKF,KAAL;AACA;AACF,eAAK/C,YAAY,CAAC0D,CAAD,CAAjB;AACEA,YAAAA,CAAC,CAACC,cAAF;AACA,gBAAI,MAAKnB,IAAT,EAAe;AACb,oBAAKA,IAAL,CAAUoB,EAAV;AACD;AACD;AACF,eAAK7D,cAAc,CAAC2D,CAAD,CAAnB;AACEA,YAAAA,CAAC,CAACC,cAAF;AACA,gBAAI,MAAKnB,IAAT,EAAe;AACb,oBAAKA,IAAL,CAAUqB,IAAV;AACD;AACD;AACF,eAAK3D,UAAU,CAACwD,CAAD,CAAf;AACEA,YAAAA,CAAC,CAACC,cAAF,GADF,CACsB;AACpB,gBAAI,MAAKnB,IAAT,EAAe;AACb,oBAAKA,IAAL,CAAUsB,KAAV,CAAgBJ,CAAhB;AACD;AACD,kBAtBJ;;AAwBD;AACD,UAAI,MAAKtB,KAAL,CAAW2B,SAAf,EAA0B;AACxB,cAAK3B,KAAL,CAAW2B,SAAX,CAAqBL,CAArB;AACD;AACF,KAtXH;;AAwXUM,IAAAA,YAxXV,GAwXyB,UAAC7B,KAAD,EAAmB;AACxC,YAAKU,QAAL,CAAc,EAAEP,aAAa,EAAEH,KAAjB,EAAd;AACD,KA1XH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkbU8B,IAAAA,SAlbV,GAkbsB,UAACC,OAAD,EAA2C;AAC7D,YAAKzB,aAAL,GAAqByB,OAArB;AACD,KApbH;;AAsbUC,IAAAA,SAtbV,GAsbsB,UAACC,YAAD,EAAgC;AAClD,UAAMC,MAAM,GAAG,MAAKjC,KAAL,CAAWkC,aAAX;AACX,YAAKlC,KAAL,CAAWkC,aAAX,CAAyBF,YAAzB,CADW;AAEX,YAAKG,mBAAL,CAAyBH,YAAzB,CAFJ;;AAIA,UAAM3B,aAAa,GAAGhD,KAAK,CAAC+E,QAAN,CAAeC,IAAf,CAAoBJ,MAApB,CAAtB;;AAEA,aAAO,aAAA5E,KAAK,CAACiF,cAAN,CAAqBjC,aAArB;AACHhD,MAAAA,KAAK,CAACkF,YAAN,CAAmBlC,aAAnB,EAAwD;AACtDmC,QAAAA,GAAG,EAAE,MAAKX,SAD4C;AAEtDY,QAAAA,OAAO,EAAE,MAAKzC,KAAL,CAAWyC,OAFkC;AAGtDC,QAAAA,MAAM,EAAE,MAAK1C,KAAL,CAAW0C,MAHmC,EAAxD,CADG;;AAMHrC,MAAAA,aANJ;AAOD,KApcH,oDAyDSsC,kBAzDT,GAyDE,4BAA0BC,UAA1B,EAAkEC,SAAlE,EAAkG,CAChG,IAAI,CAACA,SAAS,CAAC/C,MAAX,IAAqB,KAAKD,KAAL,CAAWC,MAApC,EAA4C,CAC1CgD,MAAM,CAACC,gBAAP,CAAwB,UAAxB,EAAoC,KAAKpC,KAAzC,EACD,CACD,IAAIkC,SAAS,CAAC/C,MAAV,IAAoB,CAAC,KAAKD,KAAL,CAAWC,MAApC,EAA4C,CAC1CgD,MAAM,CAACE,mBAAP,CAA2B,UAA3B,EAAuC,KAAKrC,KAA5C,EACD,CACF,CAhEH,QAkESsC,MAlET,GAkEE,kBAAgB,mBACd,oBACE,oBAAC,YAAD,CAAc,QAAd,QACG,UAAA9C,KAAK,EAAI,CACR,MAAI,CAACA,KAAL,GAAaA,KAAb,CACA,oBACE,oBAAC,YAAD,CAAc,QAAd,IAAuB,KAAK,EAAEhB,cAAc,CAACgB,KAAD,EAAQ,MAAI,CAACH,KAAb,CAA5C,IAAkE,MAAI,CAACkD,UAAL,EAAlE,CADF,CAGD,CANH,CADF,CAUD,CA7EH,CA+EE;AACF;AACA,KAjFA,QAkHUA,UAlHV,GAkHE,sBAAqB,yBACc,KAAKC,WAAL,EADd,CACXC,KADW,qBACXA,KADW,CACJC,aADI,qBACJA,aADI,CAGnB,IAAMrB,YAA0B,GAAG,EACjClC,MAAM,EAAE,KAAKD,KAAL,CAAWC,MADc,EAEjCsD,KAAK,EAALA,KAFiC,EAGjCC,aAAa,EAAbA,aAHiC,EAIjCC,OAAO,EAAE,KAAKlC,MAJmB,EAKjCO,SAAS,EAAE,KAAKN,SALiB,EAAnC,CAQA,IAAMkC,KAAK,GAAG,EACZC,KAAK,EAAE,KAAKxD,KAAL,CAAWwD,KADN,EAEZC,QAAQ,EAAE,KAAKzD,KAAL,CAAWyD,QAAX,IAAuBC,SAFrB,EAAd,CAKA,IAAMzB,MAAM,GAAG,KAAKF,SAAL,CAAeC,YAAf,CAAf,CAEA,oBACE,oBAAC,aAAD,EAAmB,KAAKhC,KAAxB,eACE,oBAAC,WAAD,IAAa,cAAc,EAAE,KAAKW,KAAlC,EAAyC,cAAc,EAAE,KAAKA,KAA9D,EAAqE,MAAM,EAAE,KAAKd,KAAL,CAAWC,MAAxF,iBACE,8BAAM,SAAS,EAAEZ,QAAQ,CAACyE,IAAT,CAAc,KAAKxD,KAAnB,CAAjB,EAA4C,KAAK,EAAEoD,KAAnD,IACGtB,MADH,EAEG,CAAC,KAAKjC,KAAL,CAAWX,QAAZ,IAAwB,KAAKQ,KAAL,CAAWC,MAAnC,IAA6C,KAAK8D,UAAL,EAFhD,CADF,CADF,CADF,CAUD,CA9IH,QAgJUT,WAhJV,GAgJE,uBAAsB,CACpB,IAAMpD,KAAK,GAAG,KAAK8D,QAAL,EAAd,CACA,IAAMC,IAAI,GAAG,KAAKC,cAAL,CAAoBhE,KAApB,CAAb,CAEA,IAAI+D,IAAI,IAAI,IAAR,IAAgB/D,KAAK,IAAI,IAA7B,EAAmC,CACjC,OAAO,EACLqD,KAAK,EAAE,KAAK9C,QAAL,GAAgB0D,WAAhB,CAA4BjE,KAA5B,EAAmC+D,IAAnC,CADF,EAELT,aAAa,EAAE,KAFV,EAAP,CAID,CAED,OAAO,EACLD,KAAK,eAAE,kCAAO,KAAKpD,KAAL,CAAWiE,WAAX,IAA0B,KAAKhG,MAAL,CAAYgG,WAA7C,CADF,EAELZ,aAAa,EAAE,IAFV,EAAP,CAID,CA/JH,QAiKUlB,mBAjKV,GAiKE,6BAA4B+B,MAA5B,EAAkD,eAChD,IAAI,KAAKlE,KAAL,CAAWmE,cAAf,EAA+B,CAC7B1G,OAAO,CAAC,KAAD,uCAAP,CACA,OAAO,KAAK2G,gBAAL,CAAsBF,MAAtB,CAAP,CACD,CAED,IAAMG,WAAwB,gBACzBhG,WAAW,CAAC,KAAK2B,KAAN,EAAaZ,iBAAb,CADc,IAE5BkF,KAAK,EAAE,MAFqB,EAG5BjF,QAAQ,EAAE,KAAKW,KAAL,CAAWX,QAHO,EAI5BmE,KAAK,EAAE,MAJqB,EAK5BF,OAAO,EAAEY,MAAM,CAACZ,OALY,EAM5B3B,SAAS,EAAEuC,MAAM,CAACvC,SANU,EAO5B4C,MAAM,EAAEL,MAAM,CAACpE,MAPa,GAA9B,CAUA,IAAI,KAAKE,KAAL,CAAWwE,KAAf,EAAsB,CACpBC,MAAM,CAACC,MAAP,CAAcL,WAAd,EAA2B,EACzBM,IAAI,EAAE,KAAK3E,KAAL,CAAWwE,KADQ,EAEzBI,eAAe,EAAE,IAFQ,EAA3B,EAID,CAED,IAAMC,UAAU,GAAG,EACjBC,SAAS,EAAEpH,EAAE,gBACVwB,QAAQ,CAACkE,KAAT,EADU,IACS,KAAKpD,KAAL,CAAWT,GAAX,KAAmB,MAD5B,MAEVL,QAAQ,CAAC+E,WAAT,CAAqB,KAAK9D,KAA1B,CAFU,IAEyB+D,MAAM,CAACb,aAFhC,MAGVnE,QAAQ,CAAC6F,oBAAT,EAHU,IAGwBb,MAAM,CAACb,aAAP,IAAwB,KAAKrD,KAAL,CAAWT,GAAX,KAAmB,SAHnE,OADI,EAMjBgE,KAAK,EAAE,EACLyB,YAAY,EAAE,KAAKC,oBAAL,EADT,EANU,EAAnB,CAWA,IAAMC,WAAW,GAAG,KAAKlF,KAAL,CAAWT,GAAX,KAAmB,SAAvC,CAEA,oBACE,oBAAC,MAAD,EAAY8E,WAAZ,eACE,4BAAUQ,UAAV,eACE,8BAAM,SAAS,EAAE3F,QAAQ,CAACiG,SAAT,EAAjB,IAAwCjB,MAAM,CAACd,KAA/C,CADF,CADF,eAIE,6BAAK,SAAS,EAAElE,QAAQ,CAACkG,SAAT,EAAhB,EAAsC,KAAK,EAAE,EAAEC,KAAK,EAAE,KAAKC,mBAAL,EAAT,EAA7C,iBACE,6BACE,SAAS,EAAE5H,EAAE,CAACwB,QAAQ,CAACqG,KAAT,CAAe,KAAKpF,KAApB,CAAD,mBACVjB,QAAQ,CAACsG,aAAT,CAAuB,KAAKrF,KAA5B,CADU,IAC2B,KAAKH,KAAL,CAAWX,QADtC,OAEVH,QAAQ,CAACuG,cAAT,EAFU,IAEkBP,WAFlB,QADf,GADF,CAJF,CADF,CAeD,CApNH,QAsNUD,oBAtNV,GAsNE,gCAAuC,mBACrC,IAAMS,eAAe,GAAG,SAAlBA,eAAkB,GAAM,CAC5B,QAAQ,MAAI,CAAC1F,KAAL,CAAWR,IAAnB,GACE,KAAK,OAAL,CACE,OAAO,MAAI,CAACW,KAAL,CAAWwF,uBAAlB,CACF,KAAK,QAAL,CACE,OAAO,MAAI,CAACxF,KAAL,CAAWyF,wBAAlB,CACF,KAAK,OAAL,CACA,QACE,OAAO,MAAI,CAACzF,KAAL,CAAW0F,uBAAlB,CAPJ,CASD,CAVD,CAWA,IAAMC,WAAW,GAAG,CAApB,CACA,IAAMC,gBAAgB,GAAGC,UAAU,CAACN,eAAe,EAAhB,CAAV,IAAiC,CAA1D,CAEA,OAAOI,WAAW,GAAGC,gBAAd,IAAkC,KAAK/F,KAAL,CAAWwE,KAAX,GAAmB,EAAnB,GAAwB,CAA1D,IAA+D,KAAKc,mBAAL,EAAtE,CACD,CAtOH,QAwOUA,mBAxOV,GAwOE,+BAAsC,mBACpC,IAAMW,gBAAgB,GAAG,SAAnBA,gBAAmB,GAAM,CAC7B,QAAQ,MAAI,CAACjG,KAAL,CAAWR,IAAnB,GACE,KAAK,OAAL,CACE,OAAO,MAAI,CAACW,KAAL,CAAW+F,mBAAlB,CACF,KAAK,QAAL,CACE,OAAO,MAAI,CAAC/F,KAAL,CAAWgG,oBAAlB,CACF,KAAK,OAAL,CACA,QACE,OAAO,MAAI,CAAChG,KAAL,CAAWiG,mBAAlB,CAPJ,CASD,CAVD,CAWA,IAAMC,aAAa,GAAGL,UAAU,CAACC,gBAAgB,EAAjB,CAAV,IAAkC,CAAxD,CACA,OAAO,KAAKjG,KAAL,CAAWT,GAAX,KAAmB,MAAnB,GAA4B,EAA5B,GAAiC,KAAK,KAAKS,KAAL,CAAWwE,KAAX,GAAmB6B,aAAnB,GAAmC,CAAxC,CAAxC,CACD,CAtPH,QAwPUjC,gBAxPV,GAwPE,0BAAyBF,MAAzB,EAAgE,CAC9D,IAAMoC,SAAS,GAAG,EAChBjH,QAAQ,EAAE6E,MAAM,CAAC7E,QADD,EAEhBsF,IAAI,EAAE,KAAK3E,KAAL,CAAWmE,cAFD,EAGhBoC,OAAO,EAAE,IAHO,EAIhBC,aAAa,EAAEtC,MAAM,CAACpE,MAJN,EAMhBwD,OAAO,EAAEY,MAAM,CAACZ,OANA,EAOhB3B,SAAS,EAAEuC,MAAM,CAACvC,SAPF,EAAlB,CAUA,oBAAO,oBAAC,IAAD,EAAU2E,SAAV,EAAsBpC,MAAM,CAACd,KAA7B,CAAP,CACD,CApQH,QAsQUQ,UAtQV,GAsQE,sBAAsC,mBACpC,IAAM6C,MAAM,GAAG,KAAKzG,KAAL,CAAWyG,MAAX,gBACb,6BAAK,SAAS,EAAEvH,QAAQ,CAACuH,MAAT,EAAhB,iBACE,oBAAC,KAAD,IAAO,GAAG,EAAE,KAAKzF,UAAjB,EAA6B,aAAa,EAAE,KAAKY,YAAjD,EAA+D,KAAK,EAAC,MAArE,GADF,CADa,GAIX,IAJJ,CAMA,IAAM7B,KAAK,GAAG,KAAK8D,QAAL,EAAd,CAEA,oBACE,oBAAC,iBAAD,IACE,SAAS,EAAE,KAAK/C,0BADlB,EAEE,OAAO,EAAE,CAAC,CAFZ,EAGE,KAAK,EAAE,KAAKd,KAAL,CAAW0G,SAHpB,EAIE,aAAa,EAAE,KAAK1G,KAAL,CAAW2G,aAJ5B,iBAME,oBAAC,IAAD,IACE,GAAG,EAAE,KAAKxF,OADZ,EAEE,KAAK,EAAE,KAAKnB,KAAL,CAAW4G,SAFpB,EAGE,WAAW,EAAE,KAAKjG,KAHpB,EAIE,SAAS,EAAE,KAAKX,KAAL,CAAW6G,aAJxB,IAMGJ,MANH,EAOG,KAAKK,QAAL,CACC,UAACC,MAAD,EAAiBjD,IAAjB,EAAwDkD,CAAxD,EAAmEC,OAAnE,EAA0G,CACxG,IAAIpI,UAAU,CAACiF,IAAD,CAAd,EAAsB,CACpB,IAAMhC,OAAO,GAAGgC,IAAI,EAApB,CAEA,kBAAIzG,KAAK,CAACiF,cAAN,CAAqBR,OAArB,CAAJ,EAAmC,CACjC,oBAAOzE,KAAK,CAACkF,YAAN,CAAmBT,OAAnB,EAA4B,EAAEoF,GAAG,EAAEF,CAAP,EAA5B,CAAP,CACD,CAED,OAAO,IAAP,CACD,CAED,kBAAI3J,KAAK,CAACiF,cAAN,CAAqBwB,IAArB,CAAJ,EAAgC,CAC9B,oBAAOzG,KAAK,CAACkF,YAAN,CAAmBuB,IAAnB,EAAyB,EAAEoD,GAAG,EAAEF,CAAP,EAAzB,CAAP,CACD,CAED,oBACE,oBAAC,QAAD,IACE,GAAG,EAAEA,CADP,EAEE,KAAK,EAAE,MAAI,CAAC1G,QAAL,GAAgB6G,cAAhB,CAA+BJ,MAA/B,EAAuChH,KAAvC,IAAgD,UAAhD,GAA6D,IAFtE,EAGE,OAAO,EAAE,MAAI,CAACqH,MAAL,CAAYC,IAAZ,CAAiB,MAAjB,EAAuBN,MAAvB,CAHX,EAIE,OAAO,EAAEE,OAJX,IAMG,MAAI,CAAC3G,QAAL,GAAgBgH,UAAhB,CAA2BP,MAA3B,EAAmCjD,IAAnC,CANH,CADF,CAUD,CA1BF,CAPH,CANF,CADF,CA6CD,CA5TH,QA4XUsD,MA5XV,GA4XE,gBAAerH,KAAf,EAA8B,CAC5B,KAAKc,KAAL,GACA,KAAKJ,QAAL,CAAc,EAAEX,MAAM,EAAE,KAAV,EAAiBC,KAAK,EAALA,KAAjB,EAAd,EAEA,IAAI,KAAKC,KAAL,CAAWuH,aAAX,IAA4B,CAAC,KAAKjH,QAAL,GAAgB6G,cAAhB,CAA+B,KAAKtD,QAAL,EAA/B,EAAgD9D,KAAhD,CAAjC,EAAyF,CACvF,KAAKC,KAAL,CAAWuH,aAAX,CAAyBxH,KAAzB,EACD,CACF,CAnYH,QAqYU8D,QArYV,GAqYE,oBAAmB,CACjB,IAAI,KAAK7D,KAAL,CAAWD,KAAX,KAAqB2D,SAAzB,EAAoC,CAClC,OAAO,KAAK1D,KAAL,CAAWD,KAAlB,CACD,CACD,OAAO,KAAKF,KAAL,CAAWE,KAAlB,CACD,CA1YH,QA4YU+G,QA5YV,GA4YE,kBAAiBU,EAAjB,EAAuG,KAC7FC,KAD6F,GACnF,KAAKzH,KAD8E,CAC7FyH,KAD6F,CAErG,IAAI,CAACA,KAAL,EAAY,CACV,OAAO,EAAP,CACD,CACD,IAAMC,OAAO,GAAG,KAAK7H,KAAL,CAAWK,aAAX,IAA4B,KAAKL,KAAL,CAAWK,aAAX,CAAyByH,WAAzB,EAA5C,CAEA,IAAMC,MAA4B,GAAG,EAArC,CACA,IAAIC,KAAK,GAAG,CAAZ,CACA,qDAAoBJ,KAApB,wCAA2B,KAAhBK,KAAgB,qCACMC,cAAc,CAACD,KAAD,CADpB,CAClB/H,MADkB,sBACX+D,KADW,sBACLmD,QADK,sBAGzB,IAAI,CAACS,OAAD,IAAY,KAAKpH,QAAL,GAAgB0H,UAAhB,CAA2BjI,MAA3B,EAAkC+D,KAAlC,EAAwC4D,OAAxC,CAAhB,EAAkE,CAChEE,MAAM,CAACK,IAAP,CAAYT,EAAE,CAACzH,MAAD,EAAQ+D,KAAR,EAAc+D,KAAd,EAAqBZ,QAArB,CAAd,EACA,EAAEY,KAAF,CACD,CACF,CAED,OAAOD,MAAP,CACD,CA/ZH,QAiaU7D,cAjaV,GAiaE,wBAAuBhE,KAAvB,EAAiD,CAC/C,IAAIA,KAAK,KAAK,IAAV,IAAkBA,KAAK,KAAK2D,SAAhC,EAA2C,CACzC,OAAO,IAAP,CACD,CAED,IAAM+D,KAAK,GAAG,KAAKzH,KAAL,CAAWyH,KAAX,IAAoB,EAAlC,CAEA,sDAAoBA,KAApB,2CAA2B,KAAhBK,KAAgB,uCACCC,cAAc,CAACD,KAAD,CADf,CAClBI,SADkB,uBACPpE,MADO,uBAGzB,IAAI,KAAKxD,QAAL,GAAgB6G,cAAhB,CAA+Be,SAA/B,EAA0CnI,KAA1C,CAAJ,EAAsD,CACpD,OAAO+D,MAAP,CACD,CACF,CACD,OAAO,IAAP,CACD,CAhbH,iBAAqDzG,KAAK,CAAC8K,SAA3D,WACgBC,mBADhB,GACsC,QADtC,UAGgBC,SAHhB,GAG4B,EACxBlB,cAAc,EAAE7J,SAAS,CAACgL,IADF,EAExBrI,YAAY,EAAE3C,SAAS,CAACiL,GAFA,EAGxB5B,aAAa,EAAErJ,SAAS,CAACkL,IAHD,EAIxBnJ,QAAQ,EAAE/B,SAAS,CAACkL,IAJI,EAKxBlJ,KAAK,EAAEhC,SAAS,CAACkL,IALO,EAMxBR,UAAU,EAAE1K,SAAS,CAACgL,IANE,EAOxBb,KAAK,EAAEnK,SAAS,CAACmL,SAAV,CAAoB,CAACnL,SAAS,CAACoL,KAAX,EAAkBpL,SAAS,CAACqL,MAA5B,CAApB,CAPiB,EAQxB9B,aAAa,EAAEvJ,SAAS,CAACsL,MARD,EASxBnF,QAAQ,EAAEnG,SAAS,CAACmL,SAAV,CAAoB,CAACnL,SAAS,CAACsL,MAAX,EAAmBtL,SAAS,CAACuL,MAA7B,CAApB,CATc,EAUxB5E,WAAW,EAAE3G,SAAS,CAACwL,IAVC,EAWxBxB,UAAU,EAAEhK,SAAS,CAACgL,IAXE,EAYxBtE,WAAW,EAAE1G,SAAS,CAACgL,IAZC,EAaxB7B,MAAM,EAAEnJ,SAAS,CAACkL,IAbM,EAcxBzI,KAAK,EAAEzC,SAAS,CAACiL,GAdO,EAexB/E,KAAK,EAAElG,SAAS,CAACmL,SAAV,CAAoB,CAACnL,SAAS,CAACsL,MAAX,EAAmBtL,SAAS,CAACuL,MAA7B,CAApB,CAfiB,EAgBxBtB,aAAa,EAAEjK,SAAS,CAACgL,IAhBD,EAiBxB7I,YAAY,EAAEnC,SAAS,CAACgL,IAjBA,EAkBxB5I,YAAY,EAAEpC,SAAS,CAACgL,IAlBA,EAmBxB3I,WAAW,EAAErC,SAAS,CAACgL,IAnBC,EAoBxB3G,SAAS,EAAErE,SAAS,CAACgL,IApBG,EAH5B,UA0BgB/H,YA1BhB,GA0B+B,EAC3ByD,WAAW,EAAXA,WAD2B,EAE3BsD,UAAU,EAAVA,UAF2B,EAG3BH,cAAc,EAAdA,cAH2B,EAI3Ba,UAAU,EAAVA,UAJ2B,EAK3BzI,GAAG,EAAE,SALsB,EA1B/B,UAkCgBP,IAlChB,GAkCuBA,IAlCvB,UAmCgB+J,GAnChB,GAmCsB,iCAAM,oBAAC,aAAD,OAAN,EAnCtB,sBAqCyB,UAACjH,OAAD,EAA8D,CACnFtE,SAAS,CACP,cAAAH,KAAK,CAACiF,cAAN,CAAqBR,OAArB,KAAiC,OAAOA,OAAP,KAAmB,UAD7C,EAEP,qEAFO,CAAT,CAIA,OAAOA,OAAP,CACD,CA3CH;AAucA,SAASkC,WAAT,CAAqBjE,KAArB,EAAiC+D,IAAjC,EAA4C;AAC1C,SAAOA,IAAP;AACD;;AAED,SAASwD,UAAT,CAAoBvH,KAApB,EAAgC+D,IAAhC,EAA2C;AACzC,SAAOA,IAAP;AACD;;AAED,SAASqD,cAAT,CAAwB6B,MAAxB,EAAqCC,MAArC,EAAkD;AAChD,SAAOD,MAAM,KAAKC,MAAlB;AACD;;AAED,SAASlB,cAAT,CAAwBD,KAAxB,EAAoC;AAClC,MAAIoB,KAAK,CAACC,OAAN,CAAcrB,KAAd,CAAJ,EAA0B;AACxB,WAAOA,KAAP;AACD,GAFD,MAEO;AACL,WAAO,CAACA,KAAD,EAAQA,KAAR,EAAepE,SAAf,CAAP;AACD;AACF;;AAED,SAASsE,UAAT,CAAoBjI,KAApB,EAAgC+D,IAAhC,EAA2C4D,OAA3C,EAA4D;AAC1D,MAAI5D,IAAI,KAAKlE,MAAM,CAACmJ,GAApB,EAAyB;AACvB,WAAO,KAAP;AACD;AACD,MAAI,cAAA1L,KAAK,CAACiF,cAAN,CAAqBwB,IAArB,KAA+BjF,UAAU,CAACiF,IAAD,CAAV,iBAAoBzG,KAAK,CAACiF,cAAN,CAAsBwB,IAAI,GAAGA,IAAI,EAAjC,CAAvD,EAA+F;AAC7FA,IAAAA,IAAI,GAAG5F,mBAAmB,CAAC4F,IAAD,CAA1B;AACD;AACD,MAAI,OAAOA,IAAP,KAAgB,QAApB,EAA8B;AAC5BA,IAAAA,IAAI,GAAGA,IAAI,CAACsF,QAAL,CAAc,EAAd,CAAP;AACD;AACD,MAAI,OAAOtF,IAAP,KAAgB,QAApB,EAA8B;AAC5B,WAAO,KAAP;AACD;AACD,SAAOA,IAAI,CAAC6D,WAAL,GAAmB0B,OAAnB,CAA2B3B,OAA3B,MAAwC,CAAC,CAAhD;AACD","sourcesContent":["import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport ReactDOM from 'react-dom';\r\nimport invariant from 'invariant';\r\nimport warning from 'warning';\r\nimport cn from 'classnames';\r\n\r\nimport {\r\n isKeyArrowDown,\r\n isKeyArrowUp,\r\n isKeyArrowVertical,\r\n isKeyEnter,\r\n isKeyEscape,\r\n isKeySpace,\r\n} from '../../lib/events/keyboard/identifiers';\r\nimport { locale } from '../../lib/locale/decorators';\r\nimport { reactGetTextContent } from '../../lib/reactGetTextContent';\r\nimport { Button, ButtonProps, ButtonSize, ButtonUse } from '../Button';\r\nimport { DropdownContainer } from '../../internal/DropdownContainer';\r\nimport { filterProps } from '../../lib/filterProps';\r\nimport { Input } from '../Input';\r\nimport { Link } from '../Link';\r\nimport { Menu } from '../../internal/Menu';\r\nimport { MenuItem } from '../MenuItem';\r\nimport { MenuSeparator } from '../MenuSeparator';\r\nimport { RenderLayer } from '../../internal/RenderLayer';\r\nimport { createPropsGetter } from '../../lib/createPropsGetter';\r\nimport { Nullable } from '../../typings/utility-types';\r\nimport { isFunction } from '../../lib/utils';\r\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\r\nimport { Theme } from '../../lib/theming/Theme';\r\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\r\n\r\nimport { Item } from './Item';\r\nimport { SelectLocale, SelectLocaleHelper } from './locale';\r\nimport { jsStyles } from './Select.styles';\r\nimport { getSelectTheme } from './selectTheme';\r\n\r\nexport interface ButtonParams {\r\n disabled?: boolean;\r\n label: React.ReactNode;\r\n onClick: () => void;\r\n onKeyDown: (event: React.KeyboardEvent<HTMLElement>) => void;\r\n opened: boolean;\r\n isPlaceholder: boolean;\r\n}\r\n\r\nconst PASS_BUTTON_PROPS = {\r\n disabled: true,\r\n error: true,\r\n use: true,\r\n size: true,\r\n warning: true,\r\n\r\n onMouseEnter: true,\r\n onMouseLeave: true,\r\n onMouseOver: true,\r\n};\r\n\r\nexport interface SelectProps<TValue, TItem> extends CommonProps {\r\n /** @ignore */\r\n _icon?: React.ReactElement<any>;\r\n /** @ignore */\r\n _renderButton?: (params: ButtonParams) => React.ReactNode;\r\n defaultValue?: TValue;\r\n /** @deprecated @ignore */\r\n diadocLinkIcon?: React.ReactElement<any>;\r\n /**\r\n * Отключает использование портала\r\n */\r\n disablePortal?: boolean;\r\n disabled?: boolean;\r\n /**\r\n * Визуально показать наличие ошибки.\r\n */\r\n error?: boolean;\r\n filterItem?: (value: TValue, item: TItem, pattern: string) => boolean;\r\n /**\r\n * Набор значений. Поддерживаются любые перечисляемые типы, в том числе\r\n * `Array`, `Map`, `Immutable.Map`.\r\n *\r\n * Элементы воспринимаются следующим образом: если элемент — это массив, то\r\n * первый элемент является значением, второй — отображается в списке,\r\n * а третий – комментарий;\r\n * если элемент не является массивом, то он используется и для отображения,\r\n * и для значения.\r\n *\r\n * Для вставки разделителя можно использовать `Select.SEP`.\r\n *\r\n * Вставить невыделяемый элемент со своей разметкой можно так:\r\n * ```\r\n * <Select ...\r\n * items={[Select.static(() => <div>My Element</div>)]}\r\n * />\r\n * ```\r\n *\r\n * Чтобы добавить стандартный отступ для статического элемента:\r\n * ```\r\n * <Select.Item>My Element</Select.Item>\r\n * ```\r\n */\r\n items?: Array<[TValue, TItem, React.ReactNode?] | TItem | React.ReactElement | (() => React.ReactElement)>;\r\n maxMenuHeight?: number;\r\n maxWidth?: React.CSSProperties['maxWidth'];\r\n menuAlign?: 'left' | 'right';\r\n menuWidth?: React.CSSProperties['width'];\r\n onValueChange?: (value: TValue) => void;\r\n onClose?: () => void;\r\n onMouseEnter?: (e: React.MouseEvent<HTMLElement>) => void;\r\n onMouseLeave?: (e: React.MouseEvent<HTMLElement>) => void;\r\n onMouseOver?: (e: React.MouseEvent<HTMLElement>) => void;\r\n onKeyDown?: (e: React.KeyboardEvent<HTMLElement>) => void;\r\n onOpen?: () => void;\r\n placeholder?: React.ReactNode;\r\n /**\r\n * Функция для отрисовки элемента в выпадающем списке. Аргументы — *value*,\r\n * *item*.\r\n */\r\n renderItem?: (value: TValue, item?: TItem) => React.ReactNode;\r\n /**\r\n * Функция для отрисовки выбранного элемента. Аргументы — *value*, *item*.\r\n */\r\n renderValue?: (value: TValue, item?: TItem) => React.ReactNode;\r\n /**\r\n * Функция для сравнения `value` с элементом из `items`\r\n */\r\n areValuesEqual?: (value1: TValue, value2: TValue) => boolean;\r\n /**\r\n * Показывать строку поиска в списке.\r\n */\r\n search?: boolean;\r\n value?: TValue;\r\n width?: number | string;\r\n warning?: boolean;\r\n use?: ButtonUse;\r\n size?: ButtonSize;\r\n onFocus?: React.FocusEventHandler<HTMLElement>;\r\n onBlur?: React.FocusEventHandler<HTMLElement>;\r\n}\r\n\r\nexport interface SelectState<TValue> {\r\n opened: boolean;\r\n searchPattern: string;\r\n value: Nullable<TValue>;\r\n}\r\n\r\ninterface FocusableReactElement extends React.ReactElement<any> {\r\n focus: (event?: any) => void;\r\n}\r\n\r\n@locale('Select', SelectLocaleHelper)\r\nexport class Select<TValue = {}, TItem = {}> extends React.Component<SelectProps<TValue, TItem>, SelectState<TValue>> {\r\n public static __KONTUR_REACT_UI__ = 'Select';\r\n\r\n public static propTypes = {\r\n areValuesEqual: PropTypes.func,\r\n defaultValue: PropTypes.any,\r\n disablePortal: PropTypes.bool,\r\n disabled: PropTypes.bool,\r\n error: PropTypes.bool,\r\n filterItem: PropTypes.func,\r\n items: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\r\n maxMenuHeight: PropTypes.number,\r\n maxWidth: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\r\n placeholder: PropTypes.node,\r\n renderItem: PropTypes.func,\r\n renderValue: PropTypes.func,\r\n search: PropTypes.bool,\r\n value: PropTypes.any,\r\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\r\n onValueChange: PropTypes.func,\r\n onMouseEnter: PropTypes.func,\r\n onMouseLeave: PropTypes.func,\r\n onMouseOver: PropTypes.func,\r\n onKeyDown: PropTypes.func,\r\n };\r\n\r\n public static defaultProps = {\r\n renderValue,\r\n renderItem,\r\n areValuesEqual,\r\n filterItem,\r\n use: 'default',\r\n };\r\n\r\n public static Item = Item;\r\n public static SEP = () => <MenuSeparator />;\r\n\r\n public static static = (element: React.ReactElement | (() => React.ReactElement)) => {\r\n invariant(\r\n React.isValidElement(element) || typeof element === 'function',\r\n 'Select.static(element) expects element to be a valid react element.',\r\n );\r\n return element;\r\n };\r\n\r\n public state: SelectState<TValue> = {\r\n opened: false,\r\n value: this.props.defaultValue,\r\n searchPattern: '',\r\n };\r\n\r\n private theme!: Theme;\r\n private readonly locale!: SelectLocale;\r\n private menu: Nullable<Menu>;\r\n private buttonElement: FocusableReactElement | null = null;\r\n private getProps = createPropsGetter(Select.defaultProps);\r\n\r\n public componentDidUpdate(_prevProps: SelectProps<TValue, TItem>, prevState: SelectState<TValue>) {\r\n if (!prevState.opened && this.state.opened) {\r\n window.addEventListener('popstate', this.close);\r\n }\r\n if (prevState.opened && !this.state.opened) {\r\n window.removeEventListener('popstate', this.close);\r\n }\r\n }\r\n\r\n public render() {\r\n return (\r\n <ThemeContext.Consumer>\r\n {theme => {\r\n this.theme = theme;\r\n return (\r\n <ThemeContext.Provider value={getSelectTheme(theme, this.props)}>{this.renderMain()}</ThemeContext.Provider>\r\n );\r\n }}\r\n </ThemeContext.Consumer>\r\n );\r\n }\r\n\r\n /**\r\n * @public\r\n */\r\n public open = () => {\r\n if (!this.state.opened) {\r\n this.setState({ opened: true });\r\n\r\n if (this.props.onOpen) {\r\n this.props.onOpen();\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * @public\r\n */\r\n public close = () => {\r\n if (this.state.opened) {\r\n this.setState({ opened: false, searchPattern: '' });\r\n\r\n if (this.props.onClose) {\r\n this.props.onClose();\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * @public\r\n */\r\n public focus = () => {\r\n if (this.buttonElement && this.buttonElement.focus) {\r\n this.buttonElement.focus();\r\n }\r\n };\r\n\r\n private renderMain() {\r\n const { label, isPlaceholder } = this.renderLabel();\r\n\r\n const buttonParams: ButtonParams = {\r\n opened: this.state.opened,\r\n label,\r\n isPlaceholder,\r\n onClick: this.toggle,\r\n onKeyDown: this.handleKey,\r\n };\r\n\r\n const style = {\r\n width: this.props.width,\r\n maxWidth: this.props.maxWidth || undefined,\r\n };\r\n\r\n const button = this.getButton(buttonParams);\r\n\r\n return (\r\n <CommonWrapper {...this.props}>\r\n <RenderLayer onClickOutside={this.close} onFocusOutside={this.close} active={this.state.opened}>\r\n <span className={jsStyles.root(this.theme)} style={style}>\r\n {button}\r\n {!this.props.disabled && this.state.opened && this.renderMenu()}\r\n </span>\r\n </RenderLayer>\r\n </CommonWrapper>\r\n );\r\n }\r\n\r\n private renderLabel() {\r\n const value = this.getValue();\r\n const item = this.getItemByValue(value);\r\n\r\n if (item != null || value != null) {\r\n return {\r\n label: this.getProps().renderValue(value, item),\r\n isPlaceholder: false,\r\n };\r\n }\r\n\r\n return {\r\n label: <span>{this.props.placeholder || this.locale.placeholder}</span>,\r\n isPlaceholder: true,\r\n };\r\n }\r\n\r\n private renderDefaultButton(params: ButtonParams) {\r\n if (this.props.diadocLinkIcon) {\r\n warning(false, `diadocLinkIcon has been deprecated`);\r\n return this.renderLinkButton(params);\r\n }\r\n\r\n const buttonProps: ButtonProps = {\r\n ...filterProps(this.props, PASS_BUTTON_PROPS),\r\n align: 'left' as React.CSSProperties['textAlign'],\r\n disabled: this.props.disabled,\r\n width: '100%',\r\n onClick: params.onClick,\r\n onKeyDown: params.onKeyDown,\r\n active: params.opened,\r\n };\r\n\r\n if (this.props._icon) {\r\n Object.assign(buttonProps, {\r\n icon: this.props._icon,\r\n _noRightPadding: true,\r\n });\r\n }\r\n\r\n const labelProps = {\r\n className: cn({\r\n [jsStyles.label()]: this.props.use !== 'link',\r\n [jsStyles.placeholder(this.theme)]: params.isPlaceholder,\r\n [jsStyles.customUsePlaceholder()]: params.isPlaceholder && this.props.use !== 'default',\r\n }),\r\n style: {\r\n paddingRight: this.getLabelPaddingRight(),\r\n },\r\n };\r\n\r\n const useIsCustom = this.props.use !== 'default';\r\n\r\n return (\r\n <Button {...buttonProps}>\r\n <span {...labelProps}>\r\n <span className={jsStyles.labelText()}>{params.label}</span>\r\n </span>\r\n <div className={jsStyles.arrowWrap()} style={{ right: this.getLegacyArrowShift() }}>\r\n <div\r\n className={cn(jsStyles.arrow(this.theme), {\r\n [jsStyles.arrowDisabled(this.theme)]: this.props.disabled,\r\n [jsStyles.customUseArrow()]: useIsCustom,\r\n })}\r\n />\r\n </div>\r\n </Button>\r\n );\r\n }\r\n\r\n private getLabelPaddingRight(): number {\r\n const getArrowPadding = () => {\r\n switch (this.props.size) {\r\n case 'large':\r\n return this.theme.selectPaddingArrowLarge;\r\n case 'medium':\r\n return this.theme.selectPaddingArrowMedium;\r\n case 'small':\r\n default:\r\n return this.theme.selectPaddingArrowSmall;\r\n }\r\n };\r\n const ARROW_WIDTH = 8;\r\n const arrowLeftPadding = parseFloat(getArrowPadding()) || 0;\r\n\r\n return ARROW_WIDTH + arrowLeftPadding + (this.props._icon ? 10 : 0) + this.getLegacyArrowShift();\r\n }\r\n\r\n private getLegacyArrowShift(): number {\r\n const getSelectPadding = () => {\r\n switch (this.props.size) {\r\n case 'large':\r\n return this.theme.selectPaddingXLarge;\r\n case 'medium':\r\n return this.theme.selectPaddingXMedium;\r\n case 'small':\r\n default:\r\n return this.theme.selectPaddingXSmall;\r\n }\r\n };\r\n const selectPadding = parseFloat(getSelectPadding()) || 0;\r\n return this.props.use === 'link' ? 10 : 1 + (this.props._icon ? selectPadding : 0);\r\n }\r\n\r\n private renderLinkButton(params: ButtonParams): React.ReactNode {\r\n const linkProps = {\r\n disabled: params.disabled,\r\n icon: this.props.diadocLinkIcon,\r\n _button: true,\r\n _buttonOpened: params.opened,\r\n\r\n onClick: params.onClick,\r\n onKeyDown: params.onKeyDown,\r\n };\r\n\r\n return <Link {...linkProps}>{params.label}</Link>;\r\n }\r\n\r\n private renderMenu(): React.ReactNode {\r\n const search = this.props.search ? (\r\n <div className={jsStyles.search()}>\r\n <Input ref={this.focusInput} onValueChange={this.handleSearch} width=\"100%\" />\r\n </div>\r\n ) : null;\r\n\r\n const value = this.getValue();\r\n\r\n return (\r\n <DropdownContainer\r\n getParent={this.dropdownContainerGetParent}\r\n offsetY={-1}\r\n align={this.props.menuAlign}\r\n disablePortal={this.props.disablePortal}\r\n >\r\n <Menu\r\n ref={this.refMenu}\r\n width={this.props.menuWidth}\r\n onItemClick={this.close}\r\n maxHeight={this.props.maxMenuHeight}\r\n >\r\n {search}\r\n {this.mapItems(\r\n (iValue: TValue, item: TItem | (() => React.ReactNode), i: number, comment: Nullable<React.ReactNode>) => {\r\n if (isFunction(item)) {\r\n const element = item();\r\n\r\n if (React.isValidElement(element)) {\r\n return React.cloneElement(element, { key: i });\r\n }\r\n\r\n return null;\r\n }\r\n\r\n if (React.isValidElement(item)) {\r\n return React.cloneElement(item, { key: i });\r\n }\r\n\r\n return (\r\n <MenuItem\r\n key={i}\r\n state={this.getProps().areValuesEqual(iValue, value) ? 'selected' : null}\r\n onClick={this.select.bind(this, iValue)}\r\n comment={comment}\r\n >\r\n {this.getProps().renderItem(iValue, item)}\r\n </MenuItem>\r\n );\r\n },\r\n )}\r\n </Menu>\r\n </DropdownContainer>\r\n );\r\n }\r\n\r\n private dropdownContainerGetParent = () => {\r\n return ReactDOM.findDOMNode(this);\r\n };\r\n\r\n private focusInput = (input: Input) => {\r\n // fix cases when an Input is rendered in portal\r\n setTimeout(() => input?.focus(), 0);\r\n };\r\n\r\n private refMenu = (menu: Menu) => {\r\n this.menu = menu;\r\n };\r\n\r\n private toggle = () => {\r\n if (this.state.opened) {\r\n this.close();\r\n } else {\r\n this.open();\r\n }\r\n };\r\n\r\n private handleKey = (e: React.KeyboardEvent<HTMLElement>) => {\r\n if (!this.state.opened) {\r\n if (isKeySpace(e) || isKeyArrowVertical(e)) {\r\n e.preventDefault();\r\n this.open();\r\n }\r\n } else {\r\n switch (true) {\r\n case isKeyEscape(e):\r\n this.focus();\r\n this.close();\r\n break;\r\n case isKeyArrowUp(e):\r\n e.preventDefault();\r\n if (this.menu) {\r\n this.menu.up();\r\n }\r\n break;\r\n case isKeyArrowDown(e):\r\n e.preventDefault();\r\n if (this.menu) {\r\n this.menu.down();\r\n }\r\n break;\r\n case isKeyEnter(e):\r\n e.preventDefault(); // To prevent form submission.\r\n if (this.menu) {\r\n this.menu.enter(e);\r\n }\r\n break;\r\n }\r\n }\r\n if (this.props.onKeyDown) {\r\n this.props.onKeyDown(e);\r\n }\r\n };\r\n\r\n private handleSearch = (value: string) => {\r\n this.setState({ searchPattern: value });\r\n };\r\n\r\n private select(value: TValue) {\r\n this.focus();\r\n this.setState({ opened: false, value });\r\n\r\n if (this.props.onValueChange && !this.getProps().areValuesEqual(this.getValue(), value)) {\r\n this.props.onValueChange(value);\r\n }\r\n }\r\n\r\n private getValue() {\r\n if (this.props.value !== undefined) {\r\n return this.props.value;\r\n }\r\n return this.state.value;\r\n }\r\n\r\n private mapItems(fn: (value: TValue, item: TItem, index: number, comment?: string) => React.ReactNode) {\r\n const { items } = this.props;\r\n if (!items) {\r\n return [];\r\n }\r\n const pattern = this.state.searchPattern && this.state.searchPattern.toLowerCase();\r\n\r\n const result: React.ReactNodeArray = [];\r\n let index = 0;\r\n for (const entry of items) {\r\n const [value, item, comment] = normalizeEntry(entry as TItem);\r\n\r\n if (!pattern || this.getProps().filterItem(value, item, pattern)) {\r\n result.push(fn(value, item, index, comment));\r\n ++index;\r\n }\r\n }\r\n\r\n return result;\r\n }\r\n\r\n private getItemByValue(value?: Nullable<TValue>) {\r\n if (value === null || value === undefined) {\r\n return null;\r\n }\r\n\r\n const items = this.props.items || [];\r\n\r\n for (const entry of items) {\r\n const [itemValue, item] = normalizeEntry(entry);\r\n\r\n if (this.getProps().areValuesEqual(itemValue, value)) {\r\n return item;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n private buttonRef = (element: FocusableReactElement | null) => {\r\n this.buttonElement = element;\r\n };\r\n\r\n private getButton = (buttonParams: ButtonParams) => {\r\n const button = this.props._renderButton\r\n ? this.props._renderButton(buttonParams)\r\n : this.renderDefaultButton(buttonParams);\r\n\r\n const buttonElement = React.Children.only(button);\r\n\r\n return React.isValidElement(buttonElement)\r\n ? React.cloneElement(buttonElement as React.ReactElement, {\r\n ref: this.buttonRef,\r\n onFocus: this.props.onFocus,\r\n onBlur: this.props.onBlur,\r\n })\r\n : buttonElement;\r\n };\r\n}\r\n\r\nfunction renderValue(value: any, item: any) {\r\n return item;\r\n}\r\n\r\nfunction renderItem(value: any, item: any) {\r\n return item;\r\n}\r\n\r\nfunction areValuesEqual(value1: any, value2: any) {\r\n return value1 === value2;\r\n}\r\n\r\nfunction normalizeEntry(entry: any) {\r\n if (Array.isArray(entry)) {\r\n return entry;\r\n } else {\r\n return [entry, entry, undefined];\r\n }\r\n}\r\n\r\nfunction filterItem(value: any, item: any, pattern: string) {\r\n if (item === Select.SEP) {\r\n return false;\r\n }\r\n if (React.isValidElement(item) || (isFunction(item) && React.isValidElement((item = item())))) {\r\n item = reactGetTextContent(item);\r\n }\r\n if (typeof item === 'number') {\r\n item = item.toString(10);\r\n }\r\n if (typeof item !== 'string') {\r\n return false;\r\n }\r\n return item.toLowerCase().indexOf(pattern) !== -1;\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"sources":["Select.tsx"],"names":["React","PropTypes","ReactDOM","invariant","warning","cn","isKeyArrowDown","isKeyArrowUp","isKeyArrowVertical","isKeyEnter","isKeyEscape","isKeySpace","locale","reactGetTextContent","Button","DropdownContainer","filterProps","Input","Link","Menu","MenuItem","MenuSeparator","RenderLayer","createPropsGetter","isFunction","ThemeContext","CommonWrapper","Item","SelectLocaleHelper","jsStyles","getSelectTheme","PASS_BUTTON_PROPS","disabled","error","use","size","onMouseEnter","onMouseLeave","onMouseOver","Select","state","opened","value","props","defaultValue","searchPattern","theme","menu","buttonElement","getProps","defaultProps","open","setState","onOpen","close","onClose","focus","dropdownContainerGetParent","findDOMNode","focusInput","input","setTimeout","refMenu","toggle","handleKey","e","preventDefault","up","down","enter","onKeyDown","handleSearch","buttonRef","element","getButton","buttonParams","button","_renderButton","renderDefaultButton","Children","only","isValidElement","cloneElement","ref","onFocus","onBlur","componentDidUpdate","_prevProps","prevState","window","addEventListener","removeEventListener","render","renderMain","renderLabel","label","isPlaceholder","onClick","style","width","maxWidth","undefined","root","renderMenu","getValue","item","getItemByValue","renderValue","placeholder","params","diadocLinkIcon","renderLinkButton","buttonProps","align","active","_icon","Object","assign","icon","_noRightPadding","labelProps","className","customUsePlaceholder","paddingRight","getLabelPaddingRight","useIsCustom","labelText","arrowWrap","right","getLegacyArrowShift","arrow","arrowDisabled","customUseArrow","getArrowPadding","selectPaddingArrowLarge","selectPaddingArrowMedium","selectPaddingArrowSmall","ARROW_WIDTH","arrowLeftPadding","parseFloat","getSelectPadding","selectPaddingXLarge","selectPaddingXMedium","selectPaddingXSmall","selectPadding","linkProps","_button","_buttonOpened","search","menuAlign","disablePortal","menuWidth","maxMenuHeight","mapItems","iValue","i","comment","key","areValuesEqual","select","bind","renderItem","onValueChange","fn","items","pattern","toLowerCase","result","index","entry","normalizeEntry","filterItem","push","itemValue","Component","__KONTUR_REACT_UI__","propTypes","func","any","bool","oneOfType","array","object","number","string","node","SEP","value1","value2","Array","isArray","toString","indexOf"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport ReactDOM from 'react-dom';\nimport invariant from 'invariant';\nimport warning from 'warning';\nimport cn from 'classnames';\n\nimport {\n isKeyArrowDown,\n isKeyArrowUp,\n isKeyArrowVertical,\n isKeyEnter,\n isKeyEscape,\n isKeySpace,\n} from '../../lib/events/keyboard/identifiers';\nimport { locale } from '../../lib/locale/decorators';\nimport { reactGetTextContent } from '../../lib/reactGetTextContent';\nimport { Button, ButtonProps, ButtonSize, ButtonUse } from '../Button';\nimport { DropdownContainer } from '../../internal/DropdownContainer';\nimport { filterProps } from '../../lib/filterProps';\nimport { Input } from '../Input';\nimport { Link } from '../Link';\nimport { Menu } from '../../internal/Menu';\nimport { MenuItem } from '../MenuItem';\nimport { MenuSeparator } from '../MenuSeparator';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Nullable } from '../../typings/utility-types';\nimport { isFunction } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\n\nimport { Item } from './Item';\nimport { SelectLocale, SelectLocaleHelper } from './locale';\nimport { jsStyles } from './Select.styles';\nimport { getSelectTheme } from './selectTheme';\n\nexport interface ButtonParams {\n disabled?: boolean;\n label: React.ReactNode;\n onClick: () => void;\n onKeyDown: (event: React.KeyboardEvent<HTMLElement>) => void;\n opened: boolean;\n isPlaceholder: boolean;\n}\n\nconst PASS_BUTTON_PROPS = {\n disabled: true,\n error: true,\n use: true,\n size: true,\n warning: true,\n\n onMouseEnter: true,\n onMouseLeave: true,\n onMouseOver: true,\n};\n\nexport interface SelectProps<TValue, TItem> extends CommonProps {\n /** @ignore */\n _icon?: React.ReactElement<any>;\n /** @ignore */\n _renderButton?: (params: ButtonParams) => React.ReactNode;\n defaultValue?: TValue;\n /** @deprecated @ignore */\n diadocLinkIcon?: React.ReactElement<any>;\n /**\n * Отключает использование портала\n */\n disablePortal?: boolean;\n disabled?: boolean;\n /**\n * Визуально показать наличие ошибки.\n */\n error?: boolean;\n filterItem?: (value: TValue, item: TItem, pattern: string) => boolean;\n /**\n * Набор значений. Поддерживаются любые перечисляемые типы, в том числе\n * `Array`, `Map`, `Immutable.Map`.\n *\n * Элементы воспринимаются следующим образом: если элемент — это массив, то\n * первый элемент является значением, второй — отображается в списке,\n * а третий – комментарий;\n * если элемент не является массивом, то он используется и для отображения,\n * и для значения.\n *\n * Для вставки разделителя можно использовать `Select.SEP`.\n *\n * Вставить невыделяемый элемент со своей разметкой можно так:\n * ```\n * <Select ...\n * items={[Select.static(() => <div>My Element</div>)]}\n * />\n * ```\n *\n * Чтобы добавить стандартный отступ для статического элемента:\n * ```\n * <Select.Item>My Element</Select.Item>\n * ```\n */\n items?: Array<[TValue, TItem, React.ReactNode?] | TItem | React.ReactElement | (() => React.ReactElement)>;\n maxMenuHeight?: number;\n maxWidth?: React.CSSProperties['maxWidth'];\n menuAlign?: 'left' | 'right';\n menuWidth?: React.CSSProperties['width'];\n onValueChange?: (value: TValue) => void;\n onClose?: () => void;\n onMouseEnter?: (e: React.MouseEvent<HTMLElement>) => void;\n onMouseLeave?: (e: React.MouseEvent<HTMLElement>) => void;\n onMouseOver?: (e: React.MouseEvent<HTMLElement>) => void;\n onKeyDown?: (e: React.KeyboardEvent<HTMLElement>) => void;\n onOpen?: () => void;\n placeholder?: React.ReactNode;\n /**\n * Функция для отрисовки элемента в выпадающем списке. Аргументы — *value*,\n * *item*.\n */\n renderItem?: (value: TValue, item?: TItem) => React.ReactNode;\n /**\n * Функция для отрисовки выбранного элемента. Аргументы — *value*, *item*.\n */\n renderValue?: (value: TValue, item?: TItem) => React.ReactNode;\n /**\n * Функция для сравнения `value` с элементом из `items`\n */\n areValuesEqual?: (value1: TValue, value2: TValue) => boolean;\n /**\n * Показывать строку поиска в списке.\n */\n search?: boolean;\n value?: TValue;\n width?: number | string;\n warning?: boolean;\n use?: ButtonUse;\n size?: ButtonSize;\n onFocus?: React.FocusEventHandler<HTMLElement>;\n onBlur?: React.FocusEventHandler<HTMLElement>;\n}\n\nexport interface SelectState<TValue> {\n opened: boolean;\n searchPattern: string;\n value: Nullable<TValue>;\n}\n\ninterface FocusableReactElement extends React.ReactElement<any> {\n focus: (event?: any) => void;\n}\n\n@locale('Select', SelectLocaleHelper)\nexport class Select<TValue = {}, TItem = {}> extends React.Component<SelectProps<TValue, TItem>, SelectState<TValue>> {\n public static __KONTUR_REACT_UI__ = 'Select';\n\n public static propTypes = {\n areValuesEqual: PropTypes.func,\n defaultValue: PropTypes.any,\n disablePortal: PropTypes.bool,\n disabled: PropTypes.bool,\n error: PropTypes.bool,\n filterItem: PropTypes.func,\n items: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n maxMenuHeight: PropTypes.number,\n maxWidth: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n placeholder: PropTypes.node,\n renderItem: PropTypes.func,\n renderValue: PropTypes.func,\n search: PropTypes.bool,\n value: PropTypes.any,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n onValueChange: PropTypes.func,\n onMouseEnter: PropTypes.func,\n onMouseLeave: PropTypes.func,\n onMouseOver: PropTypes.func,\n onKeyDown: PropTypes.func,\n };\n\n public static defaultProps = {\n renderValue,\n renderItem,\n areValuesEqual,\n filterItem,\n use: 'default',\n };\n\n public static Item = Item;\n public static SEP = () => <MenuSeparator />;\n\n public static static = (element: React.ReactElement | (() => React.ReactElement)) => {\n invariant(\n React.isValidElement(element) || typeof element === 'function',\n 'Select.static(element) expects element to be a valid react element.',\n );\n return element;\n };\n\n public state: SelectState<TValue> = {\n opened: false,\n value: this.props.defaultValue,\n searchPattern: '',\n };\n\n private theme!: Theme;\n private readonly locale!: SelectLocale;\n private menu: Nullable<Menu>;\n private buttonElement: FocusableReactElement | null = null;\n private getProps = createPropsGetter(Select.defaultProps);\n\n public componentDidUpdate(_prevProps: SelectProps<TValue, TItem>, prevState: SelectState<TValue>) {\n if (!prevState.opened && this.state.opened) {\n window.addEventListener('popstate', this.close);\n }\n if (prevState.opened && !this.state.opened) {\n window.removeEventListener('popstate', this.close);\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {theme => {\n this.theme = theme;\n return (\n <ThemeContext.Provider value={getSelectTheme(theme, this.props)}>{this.renderMain()}</ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public open = () => {\n if (!this.state.opened) {\n this.setState({ opened: true });\n\n if (this.props.onOpen) {\n this.props.onOpen();\n }\n }\n };\n\n /**\n * @public\n */\n public close = () => {\n if (this.state.opened) {\n this.setState({ opened: false, searchPattern: '' });\n\n if (this.props.onClose) {\n this.props.onClose();\n }\n }\n };\n\n /**\n * @public\n */\n public focus = () => {\n if (this.buttonElement && this.buttonElement.focus) {\n this.buttonElement.focus();\n }\n };\n\n private renderMain() {\n const { label, isPlaceholder } = this.renderLabel();\n\n const buttonParams: ButtonParams = {\n opened: this.state.opened,\n label,\n isPlaceholder,\n onClick: this.toggle,\n onKeyDown: this.handleKey,\n };\n\n const style = {\n width: this.props.width,\n maxWidth: this.props.maxWidth || undefined,\n };\n\n const button = this.getButton(buttonParams);\n\n return (\n <CommonWrapper {...this.props}>\n <RenderLayer onClickOutside={this.close} onFocusOutside={this.close} active={this.state.opened}>\n <span className={jsStyles.root(this.theme)} style={style}>\n {button}\n {!this.props.disabled && this.state.opened && this.renderMenu()}\n </span>\n </RenderLayer>\n </CommonWrapper>\n );\n }\n\n private renderLabel() {\n const value = this.getValue();\n const item = this.getItemByValue(value);\n\n if (item != null || value != null) {\n return {\n label: this.getProps().renderValue(value, item),\n isPlaceholder: false,\n };\n }\n\n return {\n label: <span>{this.props.placeholder || this.locale.placeholder}</span>,\n isPlaceholder: true,\n };\n }\n\n private renderDefaultButton(params: ButtonParams) {\n if (this.props.diadocLinkIcon) {\n warning(false, `diadocLinkIcon has been deprecated`);\n return this.renderLinkButton(params);\n }\n\n const buttonProps: ButtonProps = {\n ...filterProps(this.props, PASS_BUTTON_PROPS),\n align: 'left' as React.CSSProperties['textAlign'],\n disabled: this.props.disabled,\n width: '100%',\n onClick: params.onClick,\n onKeyDown: params.onKeyDown,\n active: params.opened,\n };\n\n if (this.props._icon) {\n Object.assign(buttonProps, {\n icon: this.props._icon,\n _noRightPadding: true,\n });\n }\n\n const labelProps = {\n className: cn({\n [jsStyles.label()]: this.props.use !== 'link',\n [jsStyles.placeholder(this.theme)]: params.isPlaceholder,\n [jsStyles.customUsePlaceholder()]: params.isPlaceholder && this.props.use !== 'default',\n }),\n style: {\n paddingRight: this.getLabelPaddingRight(),\n },\n };\n\n const useIsCustom = this.props.use !== 'default';\n\n return (\n <Button {...buttonProps}>\n <span {...labelProps}>\n <span className={jsStyles.labelText()}>{params.label}</span>\n </span>\n <div className={jsStyles.arrowWrap()} style={{ right: this.getLegacyArrowShift() }}>\n <div\n className={cn(jsStyles.arrow(this.theme), {\n [jsStyles.arrowDisabled(this.theme)]: this.props.disabled,\n [jsStyles.customUseArrow()]: useIsCustom,\n })}\n />\n </div>\n </Button>\n );\n }\n\n private getLabelPaddingRight(): number {\n const getArrowPadding = () => {\n switch (this.props.size) {\n case 'large':\n return this.theme.selectPaddingArrowLarge;\n case 'medium':\n return this.theme.selectPaddingArrowMedium;\n case 'small':\n default:\n return this.theme.selectPaddingArrowSmall;\n }\n };\n const ARROW_WIDTH = 8;\n const arrowLeftPadding = parseFloat(getArrowPadding()) || 0;\n\n return ARROW_WIDTH + arrowLeftPadding + (this.props._icon ? 10 : 0) + this.getLegacyArrowShift();\n }\n\n private getLegacyArrowShift(): number {\n const getSelectPadding = () => {\n switch (this.props.size) {\n case 'large':\n return this.theme.selectPaddingXLarge;\n case 'medium':\n return this.theme.selectPaddingXMedium;\n case 'small':\n default:\n return this.theme.selectPaddingXSmall;\n }\n };\n const selectPadding = parseFloat(getSelectPadding()) || 0;\n return this.props.use === 'link' ? 10 : 1 + (this.props._icon ? selectPadding : 0);\n }\n\n private renderLinkButton(params: ButtonParams): React.ReactNode {\n const linkProps = {\n disabled: params.disabled,\n icon: this.props.diadocLinkIcon,\n _button: true,\n _buttonOpened: params.opened,\n\n onClick: params.onClick,\n onKeyDown: params.onKeyDown,\n };\n\n return <Link {...linkProps}>{params.label}</Link>;\n }\n\n private renderMenu(): React.ReactNode {\n const search = this.props.search ? (\n <div className={jsStyles.search()}>\n <Input ref={this.focusInput} onValueChange={this.handleSearch} width=\"100%\" />\n </div>\n ) : null;\n\n const value = this.getValue();\n\n return (\n <DropdownContainer\n getParent={this.dropdownContainerGetParent}\n offsetY={-1}\n align={this.props.menuAlign}\n disablePortal={this.props.disablePortal}\n >\n <Menu\n ref={this.refMenu}\n width={this.props.menuWidth}\n onItemClick={this.close}\n maxHeight={this.props.maxMenuHeight}\n >\n {search}\n {this.mapItems(\n (iValue: TValue, item: TItem | (() => React.ReactNode), i: number, comment: Nullable<React.ReactNode>) => {\n if (isFunction(item)) {\n const element = item();\n\n if (React.isValidElement(element)) {\n return React.cloneElement(element, { key: i });\n }\n\n return null;\n }\n\n if (React.isValidElement(item)) {\n return React.cloneElement(item, { key: i });\n }\n\n return (\n <MenuItem\n key={i}\n state={this.getProps().areValuesEqual(iValue, value) ? 'selected' : null}\n onClick={this.select.bind(this, iValue)}\n comment={comment}\n >\n {this.getProps().renderItem(iValue, item)}\n </MenuItem>\n );\n },\n )}\n </Menu>\n </DropdownContainer>\n );\n }\n\n private dropdownContainerGetParent = () => {\n return ReactDOM.findDOMNode(this);\n };\n\n private focusInput = (input: Input) => {\n // fix cases when an Input is rendered in portal\n setTimeout(() => input?.focus(), 0);\n };\n\n private refMenu = (menu: Menu) => {\n this.menu = menu;\n };\n\n private toggle = () => {\n if (this.state.opened) {\n this.close();\n } else {\n this.open();\n }\n };\n\n private handleKey = (e: React.KeyboardEvent<HTMLElement>) => {\n if (!this.state.opened) {\n if (isKeySpace(e) || isKeyArrowVertical(e)) {\n e.preventDefault();\n this.open();\n }\n } else {\n switch (true) {\n case isKeyEscape(e):\n this.focus();\n this.close();\n break;\n case isKeyArrowUp(e):\n e.preventDefault();\n if (this.menu) {\n this.menu.up();\n }\n break;\n case isKeyArrowDown(e):\n e.preventDefault();\n if (this.menu) {\n this.menu.down();\n }\n break;\n case isKeyEnter(e):\n e.preventDefault(); // To prevent form submission.\n if (this.menu) {\n this.menu.enter(e);\n }\n break;\n }\n }\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n };\n\n private handleSearch = (value: string) => {\n this.setState({ searchPattern: value });\n };\n\n private select(value: TValue) {\n this.focus();\n this.setState({ opened: false, value });\n\n if (this.props.onValueChange && !this.getProps().areValuesEqual(this.getValue(), value)) {\n this.props.onValueChange(value);\n }\n }\n\n private getValue() {\n if (this.props.value !== undefined) {\n return this.props.value;\n }\n return this.state.value;\n }\n\n private mapItems(fn: (value: TValue, item: TItem, index: number, comment?: string) => React.ReactNode) {\n const { items } = this.props;\n if (!items) {\n return [];\n }\n const pattern = this.state.searchPattern && this.state.searchPattern.toLowerCase();\n\n const result: React.ReactNodeArray = [];\n let index = 0;\n for (const entry of items) {\n const [value, item, comment] = normalizeEntry(entry as TItem);\n\n if (!pattern || this.getProps().filterItem(value, item, pattern)) {\n result.push(fn(value, item, index, comment));\n ++index;\n }\n }\n\n return result;\n }\n\n private getItemByValue(value?: Nullable<TValue>) {\n if (value === null || value === undefined) {\n return null;\n }\n\n const items = this.props.items || [];\n\n for (const entry of items) {\n const [itemValue, item] = normalizeEntry(entry);\n\n if (this.getProps().areValuesEqual(itemValue, value)) {\n return item;\n }\n }\n return null;\n }\n\n private buttonRef = (element: FocusableReactElement | null) => {\n this.buttonElement = element;\n };\n\n private getButton = (buttonParams: ButtonParams) => {\n const button = this.props._renderButton\n ? this.props._renderButton(buttonParams)\n : this.renderDefaultButton(buttonParams);\n\n const buttonElement = React.Children.only(button);\n\n return React.isValidElement(buttonElement)\n ? React.cloneElement(buttonElement as React.ReactElement, {\n ref: this.buttonRef,\n onFocus: this.props.onFocus,\n onBlur: this.props.onBlur,\n })\n : buttonElement;\n };\n}\n\nfunction renderValue(value: any, item: any) {\n return item;\n}\n\nfunction renderItem(value: any, item: any) {\n return item;\n}\n\nfunction areValuesEqual(value1: any, value2: any) {\n return value1 === value2;\n}\n\nfunction normalizeEntry(entry: any) {\n if (Array.isArray(entry)) {\n return entry;\n } else {\n return [entry, entry, undefined];\n }\n}\n\nfunction filterItem(value: any, item: any, pattern: string) {\n if (item === Select.SEP) {\n return false;\n }\n if (React.isValidElement(item) || (isFunction(item) && React.isValidElement((item = item())))) {\n item = reactGetTextContent(item);\n }\n if (typeof item === 'number') {\n item = item.toString(10);\n }\n if (typeof item !== 'string') {\n return false;\n }\n return item.toLowerCase().indexOf(pattern) !== -1;\n}\n"]}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
```jsx harmony
|
|
2
|
-
let items = [Select.static(() => <Select.Item>Not selectable</Select.Item>), 'One', 'Two', 'Three', Select.SEP, 'Four'];
|
|
3
|
-
|
|
4
|
-
let initialState = {};
|
|
5
|
-
|
|
6
|
-
<Select items={items} value={state.value} onValueChange={value => setState({ value })} />;
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
#### Локали по умолчанию (см. `LocaleProvider`)
|
|
10
|
-
|
|
11
|
-
```typescript
|
|
12
|
-
interface SelectLocale {
|
|
13
|
-
placeholder?: React.ReactNode;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
const ru_RU = {
|
|
17
|
-
placeholder: 'Ничего не выбрано',
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
const en_GB = {
|
|
21
|
-
placeholder: 'Nothing selected',
|
|
22
|
-
};
|
|
23
|
-
```
|
|
1
|
+
```jsx harmony
|
|
2
|
+
let items = [Select.static(() => <Select.Item>Not selectable</Select.Item>), 'One', 'Two', 'Three', Select.SEP, 'Four'];
|
|
3
|
+
|
|
4
|
+
let initialState = {};
|
|
5
|
+
|
|
6
|
+
<Select items={items} value={state.value} onValueChange={value => setState({ value })} />;
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
#### Локали по умолчанию (см. `LocaleProvider`)
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
interface SelectLocale {
|
|
13
|
+
placeholder?: React.ReactNode;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
const ru_RU = {
|
|
17
|
+
placeholder: 'Ничего не выбрано',
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
const en_GB = {
|
|
21
|
+
placeholder: 'Nothing selected',
|
|
22
|
+
};
|
|
23
|
+
```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Select.styles.ts"],"names":["css","memoizeStyle","styles","root","t","placeholder","selectPlaceholderColor","customUsePlaceholder","arrow","selectMenuArrowColor","arrowWrap","arrowDisabled","selectMenuArrowColorDisabled","customUseArrow","label","labelText","search","jsStyles"],"mappings":"klFAAA,SAASA,GAAT,EAAcC,YAAd,QAAkC,2BAAlC;;;AAGA,IAAMC,MAAM,GAAG;AACbC,EAAAA,IADa,gBACRC,CADQ,EACE;AACb,WAAOJ,GAAP;;;;AAID,GANY;;AAQbK,EAAAA,WARa,uBAQDD,CARC,EAQS;AACpB,WAAOJ,GAAP;AACWI,IAAAA,CAAC,CAACE,sBADb;;;AAID,GAbY;;AAebC,EAAAA,oBAfa,kCAeU;AACrB,WAAOP,GAAP;;;;AAID,GApBY;;AAsBbQ,EAAAA,KAtBa,iBAsBPJ,CAtBO,EAsBG;AACd,WAAOJ,GAAP;;;AAGsBI,IAAAA,CAAC,CAACK,oBAHxB;;;;;;AASD,GAhCY;;AAkCbC,EAAAA,SAlCa,uBAkCD;AACV,WAAOV,GAAP;;;;;;;;;;;;;AAaD,GAhDY;;AAkDbW,EAAAA,aAlDa,yBAkDCP,CAlDD,EAkDW;AACtB,WAAOJ,GAAP;AACsBI,IAAAA,CAAC,CAACQ,4BADxB;;AAGD,GAtDY;;AAwDbC,EAAAA,cAxDa,4BAwDI;AACf,WAAOb,GAAP;;;;;AAKD,GA9DY;;AAgEbc,EAAAA,KAhEa,mBAgEL;AACN,WAAOd,GAAP;;;;;;;AAOD,GAxEY;;AA0Ebe,EAAAA,SA1Ea,uBA0ED;AACV,WAAOf,GAAP;;;;;;;;AAQD,GAnFY;;AAqFbgB,EAAAA,MArFa,oBAqFJ;AACP,WAAOhB,GAAP;;;AAGD,GAzFY,EAAf;;;AA4FA,OAAO,IAAMiB,QAAQ,GAAGhB,YAAY,CAACC,MAAD,CAA7B","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\
|
|
1
|
+
{"version":3,"sources":["Select.styles.ts"],"names":["css","memoizeStyle","styles","root","t","placeholder","selectPlaceholderColor","customUsePlaceholder","arrow","selectMenuArrowColor","arrowWrap","arrowDisabled","selectMenuArrowColorDisabled","customUseArrow","label","labelText","search","jsStyles"],"mappings":"klFAAA,SAASA,GAAT,EAAcC,YAAd,QAAkC,2BAAlC;;;AAGA,IAAMC,MAAM,GAAG;AACbC,EAAAA,IADa,gBACRC,CADQ,EACE;AACb,WAAOJ,GAAP;;;;AAID,GANY;;AAQbK,EAAAA,WARa,uBAQDD,CARC,EAQS;AACpB,WAAOJ,GAAP;AACWI,IAAAA,CAAC,CAACE,sBADb;;;AAID,GAbY;;AAebC,EAAAA,oBAfa,kCAeU;AACrB,WAAOP,GAAP;;;;AAID,GApBY;;AAsBbQ,EAAAA,KAtBa,iBAsBPJ,CAtBO,EAsBG;AACd,WAAOJ,GAAP;;;AAGsBI,IAAAA,CAAC,CAACK,oBAHxB;;;;;;AASD,GAhCY;;AAkCbC,EAAAA,SAlCa,uBAkCD;AACV,WAAOV,GAAP;;;;;;;;;;;;;AAaD,GAhDY;;AAkDbW,EAAAA,aAlDa,yBAkDCP,CAlDD,EAkDW;AACtB,WAAOJ,GAAP;AACsBI,IAAAA,CAAC,CAACQ,4BADxB;;AAGD,GAtDY;;AAwDbC,EAAAA,cAxDa,4BAwDI;AACf,WAAOb,GAAP;;;;;AAKD,GA9DY;;AAgEbc,EAAAA,KAhEa,mBAgEL;AACN,WAAOd,GAAP;;;;;;;AAOD,GAxEY;;AA0Ebe,EAAAA,SA1Ea,uBA0ED;AACV,WAAOf,GAAP;;;;;;;;AAQD,GAnFY;;AAqFbgB,EAAAA,MArFa,oBAqFJ;AACP,WAAOhB,GAAP;;;AAGD,GAzFY,EAAf;;;AA4FA,OAAO,IAAMiB,QAAQ,GAAGhB,YAAY,CAACC,MAAD,CAA7B","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\n\nconst styles = {\n root(t: Theme) {\n return css`\n display: inline-block;\n position: relative;\n `;\n },\n\n placeholder(t: Theme) {\n return css`\n color: ${t.selectPlaceholderColor};\n text-overflow: ellipsis;\n `;\n },\n\n customUsePlaceholder() {\n return css`\n color: inherit;\n opacity: 0.7;\n `;\n },\n\n arrow(t: Theme) {\n return css`\n border: 4px solid transparent;\n border-bottom-width: 0;\n border-top-color: ${t.selectMenuArrowColor};\n\n display: inline-block;\n margin-bottom: 3px;\n vertical-align: middle;\n `;\n },\n\n arrowWrap() {\n return css`\n position: absolute;\n top: 0;\n bottom: 0;\n right: 0;\n\n &::before {\n content: '';\n display: inline-block;\n height: 100%;\n vertical-align: middle;\n }\n `;\n },\n\n arrowDisabled(t: Theme) {\n return css`\n border-top-color: ${t.selectMenuArrowColorDisabled};\n `;\n },\n\n customUseArrow() {\n return css`\n border-top-color: inherit;\n color: inherit;\n opacity: 0.7;\n `;\n },\n\n label() {\n return css`\n box-sizing: border-box;\n display: inline-block;\n max-width: 100%;\n width: auto;\n position: relative;\n `;\n },\n\n labelText() {\n return css`\n display: inline-block;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n vertical-align: top;\n white-space: nowrap;\n `;\n },\n\n search() {\n return css`\n margin: 1px 4px 4px;\n `;\n },\n};\n\nexport const jsStyles = memoizeStyle(styles);\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.tsx"],"names":[],"mappings":"AAAA,cAAc,UAAd","sourcesContent":["export * from './Select';\
|
|
1
|
+
{"version":3,"sources":["index.tsx"],"names":[],"mappings":"AAAA,cAAc,UAAd","sourcesContent":["export * from './Select';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.ts"],"names":["LocaleHelper","componentsLocales","en_GB","ru_RU","SelectLocaleHelper"],"mappings":"AAAA,SAASA,YAAT,QAA6B,kCAA7B;;AAEA,SAAUC,iBAAiB,IAAIC,KAA/B,QAA4C,cAA5C;AACA,SAAUD,iBAAiB,IAAIE,KAA/B,QAA4C,cAA5C;;;AAGA,cAAc,SAAd;;AAEA,OAAO,IAAMC,kBAAkB,GAAG,IAAIJ,YAAJ,CAA+B;AAC/DG,EAAAA,KAAK,EAALA,KAD+D;AAE/DD,EAAAA,KAAK,EAALA,KAF+D,EAA/B,CAA3B","sourcesContent":["import { LocaleHelper } from '../../../lib/locale/LocaleHelper';\
|
|
1
|
+
{"version":3,"sources":["index.ts"],"names":["LocaleHelper","componentsLocales","en_GB","ru_RU","SelectLocaleHelper"],"mappings":"AAAA,SAASA,YAAT,QAA6B,kCAA7B;;AAEA,SAAUC,iBAAiB,IAAIC,KAA/B,QAA4C,cAA5C;AACA,SAAUD,iBAAiB,IAAIE,KAA/B,QAA4C,cAA5C;;;AAGA,cAAc,SAAd;;AAEA,OAAO,IAAMC,kBAAkB,GAAG,IAAIJ,YAAJ,CAA+B;AAC/DG,EAAAA,KAAK,EAALA,KAD+D;AAE/DD,EAAAA,KAAK,EAALA,KAF+D,EAA/B,CAA3B","sourcesContent":["import { LocaleHelper } from '../../../lib/locale/LocaleHelper';\n\nimport { componentsLocales as en_GB } from './locales/en';\nimport { componentsLocales as ru_RU } from './locales/ru';\nimport { SelectLocale } from './types';\n\nexport * from './types';\n\nexport const SelectLocaleHelper = new LocaleHelper<SelectLocale>({\n ru_RU,\n en_GB,\n});\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["en.ts"],"names":["componentsLocales","placeholder"],"mappings":";;AAEA,OAAO,IAAMA,iBAA+B,GAAG;AAC7CC,EAAAA,WAAW,EAAE,kBADgC,EAAxC","sourcesContent":["import { SelectLocale } from '../types';\
|
|
1
|
+
{"version":3,"sources":["en.ts"],"names":["componentsLocales","placeholder"],"mappings":";;AAEA,OAAO,IAAMA,iBAA+B,GAAG;AAC7CC,EAAAA,WAAW,EAAE,kBADgC,EAAxC","sourcesContent":["import { SelectLocale } from '../types';\n\nexport const componentsLocales: SelectLocale = {\n placeholder: 'Nothing selected',\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["ru.ts"],"names":["componentsLocales","placeholder"],"mappings":";;AAEA,OAAO,IAAMA,iBAA+B,GAAG;AAC7CC,EAAAA,WAAW,EAAE,mBADgC,EAAxC","sourcesContent":["import { SelectLocale } from '../types';\
|
|
1
|
+
{"version":3,"sources":["ru.ts"],"names":["componentsLocales","placeholder"],"mappings":";;AAEA,OAAO,IAAMA,iBAA+B,GAAG;AAC7CC,EAAAA,WAAW,EAAE,mBADgC,EAAxC","sourcesContent":["import { SelectLocale } from '../types';\n\nexport const componentsLocales: SelectLocale = {\n placeholder: 'Ничего не выбрано',\n};\n"]}
|