@jetbrains/ring-ui 5.1.1 → 6.0.1-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -6
- package/components/alert/alert.d.ts +1 -1
- package/components/alert/container.css +3 -0
- package/components/alert-service/alert-service.d.ts +2 -2
- package/components/analytics/analytics.d.ts +21 -7
- package/components/analytics/analytics.js +19 -24
- package/components/analytics/analytics__custom-plugin.d.ts +6 -16
- package/components/analytics/analytics__custom-plugin.js +12 -52
- package/components/analytics/analytics__fus-plugin.d.ts +15 -25
- package/components/analytics/analytics__fus-plugin.js +15 -73
- package/components/analytics/analytics__ga-plugin.d.ts +13 -3
- package/components/analytics/analytics__ga-plugin.js +35 -5
- package/components/analytics/analytics__plugin-utils.d.ts +16 -0
- package/components/analytics/analytics__plugin-utils.js +26 -1
- package/components/auth/auth__core.d.ts +5 -4
- package/components/auth/auth__core.js +44 -27
- package/components/auth-dialog/auth-dialog.d.ts +2 -2
- package/components/auth-dialog/auth-dialog.js +3 -1
- package/components/auth-dialog-service/auth-dialog-service.js +4 -1
- package/components/avatar/avatar.d.ts +3 -3
- package/components/avatar/fallback-avatar.d.ts +2 -2
- package/components/avatar/fallback-avatar.js +2 -1
- package/components/avatar-editor-ng/avatar-editor-ng.css +1 -1
- package/components/badge/badge.d.ts +2 -2
- package/components/button/button.css +7 -7
- package/components/button/button.d.ts +3 -4
- package/components/button/button.js +0 -1
- package/components/button-group/button-group.css +2 -2
- package/components/button-group/button-group.d.ts +2 -2
- package/components/button-group/caption.d.ts +2 -2
- package/components/button-ng/button-ng.examples.js +2 -2
- package/components/button-ng/button-ng.js +1 -1
- package/components/button-set/button-set.d.ts +2 -2
- package/components/button-toolbar/button-toolbar.d.ts +2 -2
- package/components/checkbox/checkbox.css +2 -2
- package/components/checkbox/checkbox.d.ts +2 -2
- package/components/code/code.d.ts +1 -1
- package/components/confirm/confirm.d.ts +1 -1
- package/components/confirm/confirm.js +3 -3
- package/components/confirm-ng/confirm-ng.examples.js +1 -1
- package/components/confirm-service/confirm-service.js +2 -2
- package/components/content-layout/content-layout.d.ts +2 -2
- package/components/content-layout/sidebar.d.ts +2 -2
- package/components/contenteditable/contenteditable.d.ts +3 -3
- package/components/control-label/control-label.css +23 -0
- package/components/control-label/control-label.d.ts +11 -0
- package/components/control-label/control-label.js +22 -0
- package/components/data-list/data-list.css +2 -1
- package/components/data-list/data-list.d.ts +3 -3
- package/components/data-list/data-list.mock.d.ts +2 -2
- package/components/data-list/item.d.ts +3 -3
- package/components/data-list/title.d.ts +1 -1
- package/components/date-picker/consts.d.ts +5 -5
- package/components/date-picker/date-input.d.ts +3 -12
- package/components/date-picker/date-input.js +9 -15
- package/components/date-picker/date-picker.css +1 -1
- package/components/date-picker/date-picker.d.ts +8 -6
- package/components/date-picker/date-picker.js +9 -15
- package/components/date-picker/date-popup.d.ts +1 -1
- package/components/date-picker/date-popup.js +2 -1
- package/components/date-picker/day.d.ts +2 -2
- package/components/date-picker/month-names.d.ts +2 -2
- package/components/date-picker/month-names.js +2 -2
- package/components/date-picker/month-slider.d.ts +2 -2
- package/components/date-picker/month.d.ts +2 -2
- package/components/date-picker/months.d.ts +2 -2
- package/components/date-picker/months.js +46 -29
- package/components/date-picker/weekdays.d.ts +2 -2
- package/components/date-picker/years.d.ts +6 -2
- package/components/date-picker/years.js +26 -14
- package/components/dialog/dialog.css +1 -1
- package/components/dialog/dialog.d.ts +4 -16
- package/components/dialog/dialog.js +4 -2
- package/components/dialog-ng/dialog-ng.examples.js +1 -1
- package/components/dialog-ng/dialog-ng.js +4 -5
- package/components/dropdown/anchor.d.ts +1 -1
- package/components/dropdown/dropdown.d.ts +8 -1
- package/components/editable-heading/editable-heading.css +20 -7
- package/components/editable-heading/editable-heading.d.ts +2 -2
- package/components/editable-heading/editable-heading.js +39 -12
- package/components/error-bubble/error-bubble.d.ts +2 -2
- package/components/error-message/error-message.d.ts +2 -2
- package/components/footer/footer.js +1 -0
- package/components/form/form.examples.js +1 -0
- package/components/global/angular-component-factory.js +13 -7
- package/components/global/angular-component-factory.test.js +30 -10
- package/components/global/controls-height.d.ts +2 -0
- package/components/global/controls-height.js +8 -0
- package/components/global/create-stateful-context.d.ts +1 -1
- package/components/global/focus-sensor-hoc.d.ts +1 -0
- package/components/global/focus-sensor-hoc.js +5 -4
- package/components/global/react-dom-renderer.d.ts +4 -4
- package/components/global/react-dom-renderer.js +5 -5
- package/components/global/react-render-adapter.js +19 -31
- package/components/global/ring-angular-component.js +1 -3
- package/components/global/ring-angular-component.test.js +2 -1
- package/components/global/use-event-callback.d.ts +1 -0
- package/components/global/use-event-callback.js +14 -0
- package/components/global/variables_dark.css +2 -2
- package/components/grid/col.d.ts +2 -2
- package/components/grid/grid.d.ts +2 -2
- package/components/grid/row.d.ts +2 -2
- package/components/group/group.d.ts +2 -2
- package/components/header/header.d.ts +2 -2
- package/components/header/logo.d.ts +2 -2
- package/components/header/profile.d.ts +4 -2
- package/components/header/profile.js +15 -11
- package/components/header/services-link.d.ts +2 -2
- package/components/header/services.d.ts +2 -2
- package/components/header/smart-profile.d.ts +2 -2
- package/components/header/smart-services.d.ts +2 -2
- package/components/header/tray-icon.d.ts +2 -2
- package/components/header/tray.d.ts +2 -2
- package/components/heading/heading.css +8 -8
- package/components/http/http.d.ts +16 -6
- package/components/http/http.js +26 -0
- package/components/hub-source/hub-source__users-groups.d.ts +1 -1
- package/components/i18n/README.md +46 -0
- package/components/i18n/i18n-context.d.ts +13 -0
- package/components/i18n/i18n-context.js +14 -0
- package/components/i18n/i18n.d.ts +59 -0
- package/components/i18n/i18n.js +26 -0
- package/components/i18n/messages.json +53 -0
- package/components/icon/icon.d.ts +3 -3
- package/components/icon/icon__svg.d.ts +1 -1
- package/components/input/input-legacy.css +3 -3
- package/components/input/input.css +8 -21
- package/components/input/input.d.ts +7 -1
- package/components/input/input.js +18 -14
- package/components/input-ng/input-ng.examples.js +3 -1
- package/components/input-ng/input-ng.js +3 -2
- package/components/input-size/input-size.examples.js +1 -0
- package/components/island/adaptive-island-hoc.d.ts +2 -2
- package/components/island/content.d.ts +1 -1
- package/components/island/header.d.ts +2 -2
- package/components/island/island.css +1 -1
- package/components/island/island.d.ts +3 -3
- package/components/island-legacy/content-legacy.d.ts +2 -2
- package/components/island-legacy/header-legacy.d.ts +2 -2
- package/components/island-legacy/island-legacy.d.ts +2 -2
- package/components/island-ng/island-ng.js +3 -3
- package/components/link/clickableLink.d.ts +1 -1
- package/components/link/link.css +1 -1
- package/components/link/link.d.ts +8 -9
- package/components/link/link.js +0 -1
- package/components/list/consts.js +3 -0
- package/components/list/list.css +2 -2
- package/components/list/list.d.ts +7 -7
- package/components/list/list.js +4 -1
- package/components/list/list__custom.d.ts +1 -1
- package/components/list/list__hint.d.ts +2 -2
- package/components/list/list__item.d.ts +2 -2
- package/components/list/list__link.d.ts +2 -2
- package/components/list/list__separator.d.ts +2 -2
- package/components/list/list__title.d.ts +2 -2
- package/components/loader/loader.d.ts +2 -2
- package/components/loader-inline/loader-inline.d.ts +2 -2
- package/components/loader-ng/loader-ng.js +1 -1
- package/components/loader-screen/loader-screen.d.ts +2 -2
- package/components/login-dialog/login-dialog.d.ts +2 -2
- package/components/login-dialog/service.js +4 -1
- package/components/markdown/code.d.ts +2 -2
- package/components/markdown/heading.d.ts +2 -2
- package/components/markdown/link.d.ts +2 -2
- package/components/markdown/markdown.d.ts +2 -2
- package/components/message/message.d.ts +3 -7
- package/components/message/message.js +17 -16
- package/components/pager/pager.d.ts +8 -13
- package/components/pager/pager.js +12 -14
- package/components/panel/panel.css +1 -1
- package/components/panel/panel.d.ts +2 -2
- package/components/popup/popup.d.ts +2 -2
- package/components/popup/popup.js +1 -1
- package/components/popup/position.d.ts +1 -1
- package/components/popup/position.js +43 -33
- package/components/popup-menu/popup-menu.d.ts +2 -2
- package/components/progress-bar/progress-bar.d.ts +2 -2
- package/components/promised-click-ng/promised-click-ng.js +1 -1
- package/components/query-assist/query-assist.css +16 -11
- package/components/query-assist/query-assist.d.ts +3 -7
- package/components/query-assist/query-assist.js +50 -31
- package/components/query-assist/query-assist__suggestions.d.ts +2 -2
- package/components/radio/radio.css +1 -1
- package/components/radio/radio.d.ts +1 -1
- package/components/radio/radio__item.d.ts +1 -1
- package/components/select/select-popup.css +2 -2
- package/components/select/select.css +9 -5
- package/components/select/select.d.ts +20 -9
- package/components/select/select.js +47 -23
- package/components/select/select__filter.d.ts +2 -3
- package/components/select/select__filter.js +4 -2
- package/components/select/select__popup.d.ts +48 -8
- package/components/select/select__popup.js +29 -8
- package/components/shortcuts/shortcuts-hoc.d.ts +2 -2
- package/components/shortcuts/shortcuts.d.ts +1 -1
- package/components/shortcuts-hint-ng/shortcuts-hint-ng.js +1 -2
- package/components/sidebar-ng/sidebar-ng.js +1 -2
- package/components/tab-trap/tab-trap.d.ts +1 -1
- package/components/table/cell.d.ts +2 -2
- package/components/table/disable-hover-hoc.d.ts +2 -2
- package/components/table/header-cell.d.ts +2 -2
- package/components/table/header.d.ts +3 -14
- package/components/table/header.js +5 -49
- package/components/table/multitable.d.ts +2 -2
- package/components/table/row-with-focus-sensor.d.ts +1 -1
- package/components/table/row.d.ts +2 -1
- package/components/table/row.js +4 -3
- package/components/table/smart-table.d.ts +3 -1
- package/components/table/table.css +9 -26
- package/components/table/table.d.ts +6 -4
- package/components/table/table.js +5 -3
- package/components/tabs/collapsible-more.d.ts +3 -3
- package/components/tabs/collapsible-tab.d.ts +1 -1
- package/components/tabs/collapsible-tabs.d.ts +2 -2
- package/components/tabs/dumb-tabs.d.ts +5 -3
- package/components/tabs/dumb-tabs.js +3 -2
- package/components/tabs/smart-tabs.d.ts +2 -2
- package/components/tabs/tab-link.d.ts +1 -1
- package/components/tabs/tab.d.ts +2 -2
- package/components/tabs/tab.js +3 -3
- package/components/tabs/tabs.css +4 -1
- package/components/tag/tag.css +3 -3
- package/components/tag/tag.d.ts +5 -5
- package/components/tags-input/tags-input.css +1 -1
- package/components/tags-input/tags-input.d.ts +9 -4
- package/components/tags-input/tags-input.js +7 -7
- package/components/tags-list/tags-list.d.ts +2 -2
- package/components/template-ng/template-ng.js +1 -2
- package/components/text/text.css +12 -0
- package/components/text/text.d.ts +8 -2
- package/components/text/text.js +12 -2
- package/components/toggle/toggle.css +1 -1
- package/components/toggle/toggle.d.ts +2 -2
- package/components/tooltip/tooltip.d.ts +1 -1
- package/components/user-agreement/service.js +4 -1
- package/components/user-agreement/user-agreement.d.ts +3 -11
- package/components/user-agreement/user-agreement.js +31 -30
- package/components/user-card/card.d.ts +22 -21
- package/components/user-card/card.js +29 -29
- package/components/user-card/smart-user-card-tooltip.d.ts +3 -3
- package/components/user-card/tooltip.d.ts +11 -6
- package/components/user-card/tooltip.js +1 -1
- package/components/user-card/user-card.css +10 -1
- package/dist/_helpers/_rollupPluginBabelHelpers.js +614 -1
- package/dist/_helpers/anchor.js +7 -8
- package/dist/_helpers/badge.js +1 -1
- package/dist/_helpers/button-group.js +1 -1
- package/dist/_helpers/button-set.js +1 -1
- package/dist/_helpers/button-toolbar.js +1 -1
- package/dist/_helpers/button__classes.js +17 -29
- package/dist/_helpers/card.js +100 -91
- package/dist/_helpers/checkbox.js +1 -1
- package/dist/_helpers/control-label.js +3 -0
- package/dist/_helpers/date-picker.js +1 -1
- package/dist/_helpers/dialog__body-scroll-preventer.js +21 -12
- package/dist/_helpers/error-message.js +1 -1
- package/dist/_helpers/footer.js +31 -35
- package/dist/_helpers/grid.js +1 -1
- package/dist/_helpers/group.js +1 -1
- package/dist/_helpers/header.js +1 -1
- package/dist/_helpers/icon.js +1 -1
- package/dist/_helpers/input.js +1 -1
- package/dist/_helpers/island.js +1 -1
- package/dist/_helpers/link.js +1 -1
- package/dist/_helpers/list.js +1 -1
- package/dist/_helpers/loader-inline.js +1 -1
- package/dist/_helpers/loader-screen.js +1 -1
- package/dist/_helpers/panel.js +1 -1
- package/dist/_helpers/query-assist__suggestions.js +92 -75
- package/dist/_helpers/radio.js +1 -1
- package/dist/_helpers/select__filter.js +69 -42
- package/dist/_helpers/services-link.js +33 -21
- package/dist/_helpers/sidebar.js +87 -86
- package/dist/_helpers/table.js +1 -1
- package/dist/_helpers/tabs.js +1 -1
- package/dist/_helpers/theme.js +43 -36
- package/dist/_helpers/title.js +66 -56
- package/dist/alert/alert.d.ts +1 -1
- package/dist/alert/alert.js +164 -127
- package/dist/alert/container.js +40 -29
- package/dist/alert-service/alert-service.d.ts +2 -2
- package/dist/alert-service/alert-service.js +169 -103
- package/dist/analytics/analytics.d.ts +21 -7
- package/dist/analytics/analytics.js +90 -71
- package/dist/analytics/analytics__custom-plugin.d.ts +6 -16
- package/dist/analytics/analytics__custom-plugin.js +74 -87
- package/dist/analytics/analytics__fus-plugin.d.ts +15 -25
- package/dist/analytics/analytics__fus-plugin.js +31 -89
- package/dist/analytics/analytics__ga-plugin.d.ts +13 -3
- package/dist/analytics/analytics__ga-plugin.js +76 -25
- package/dist/analytics/analytics__plugin-utils.d.ts +16 -0
- package/dist/analytics/analytics__plugin-utils.js +52 -21
- package/dist/auth/auth.js +39 -5
- package/dist/auth/auth__core.d.ts +5 -4
- package/dist/auth/auth__core.js +1459 -719
- package/dist/auth/background-flow.js +125 -84
- package/dist/auth/down-notification.js +76 -32
- package/dist/auth/iframe-flow.js +129 -69
- package/dist/auth/landing.js +93 -31
- package/dist/auth/request-builder.js +79 -45
- package/dist/auth/response-parser.js +117 -85
- package/dist/auth/storage.js +322 -161
- package/dist/auth/token-validator.js +239 -128
- package/dist/auth/window-flow.js +126 -83
- package/dist/auth-dialog/auth-dialog.d.ts +2 -2
- package/dist/auth-dialog/auth-dialog.js +152 -94
- package/dist/auth-dialog-service/auth-dialog-service.js +36 -10
- package/dist/auth-ng/auth-ng.js +73 -35
- package/dist/auth-ng/auth-ng.mock.js +6 -6
- package/dist/autofocus-ng/autofocus-ng.js +23 -8
- package/dist/avatar/avatar-example-datauri.js +1 -23
- package/dist/avatar/avatar.d.ts +3 -3
- package/dist/avatar/avatar.js +132 -99
- package/dist/avatar/fallback-avatar.d.ts +2 -2
- package/dist/avatar/fallback-avatar.js +44 -24
- package/dist/avatar-editor-ng/avatar-editor-ng.js +57 -25
- package/dist/avatar-editor-ng/avatar-editor-ng__template.js +1 -28
- package/dist/avatar-ng/avatar-ng.js +22 -0
- package/dist/badge/badge.d.ts +2 -2
- package/dist/badge/badge.js +34 -26
- package/dist/badge-ng/badge-ng.js +12 -0
- package/dist/breadcrumb-ng/breadcrumb-ng.js +17 -32
- package/dist/button/button.d.ts +3 -4
- package/dist/button/button.js +89 -69
- package/dist/button/button__classes.js +1 -0
- package/dist/button-group/button-group.d.ts +2 -2
- package/dist/button-group/button-group.js +31 -15
- package/dist/button-group/caption.d.ts +2 -2
- package/dist/button-group/caption.js +19 -11
- package/dist/button-group-ng/button-group-ng.js +13 -7
- package/dist/button-ng/button-ng.js +132 -112
- package/dist/button-set/button-set.d.ts +2 -2
- package/dist/button-set/button-set.js +29 -15
- package/dist/button-set-ng/button-set-ng.js +2 -2
- package/dist/button-toolbar/button-toolbar.d.ts +2 -2
- package/dist/button-toolbar/button-toolbar.js +28 -14
- package/dist/button-toolbar-ng/button-toolbar-ng.js +5 -3
- package/dist/caret/caret.js +223 -188
- package/dist/checkbox/checkbox.d.ts +2 -2
- package/dist/checkbox/checkbox.js +83 -58
- package/dist/checkbox-ng/checkbox-ng.js +18 -28
- package/dist/clipboard/clipboard-fallback.js +10 -10
- package/dist/clipboard/clipboard.js +131 -35
- package/dist/code/code.d.ts +1 -1
- package/dist/code/code.js +153 -81
- package/dist/compiler-ng/compiler-ng.js +18 -15
- package/dist/confirm/confirm.d.ts +1 -1
- package/dist/confirm/confirm.js +85 -47
- package/dist/confirm-ng/confirm-ng.js +34 -6
- package/dist/confirm-service/confirm-service.js +67 -44
- package/dist/content-layout/content-layout.d.ts +2 -2
- package/dist/content-layout/content-layout.js +53 -35
- package/dist/content-layout/sidebar.d.ts +2 -2
- package/dist/content-layout/sidebar.js +1 -0
- package/dist/contenteditable/contenteditable.d.ts +3 -3
- package/dist/contenteditable/contenteditable.js +54 -43
- package/dist/control-label/control-label.d.ts +11 -0
- package/dist/control-label/control-label.js +31 -0
- package/dist/data-list/data-list.d.ts +3 -3
- package/dist/data-list/data-list.js +164 -114
- package/dist/data-list/data-list.mock.d.ts +2 -2
- package/dist/data-list/data-list.mock.js +11 -3
- package/dist/data-list/item.d.ts +3 -3
- package/dist/data-list/item.js +140 -113
- package/dist/data-list/selection.js +139 -77
- package/dist/data-list/title.d.ts +1 -1
- package/dist/data-list/title.js +12 -0
- package/dist/data-list-ng/data-list-ng.js +30 -1
- package/dist/date-picker/consts.d.ts +5 -5
- package/dist/date-picker/consts.js +18 -15
- package/dist/date-picker/date-input.d.ts +3 -12
- package/dist/date-picker/date-input.js +131 -107
- package/dist/date-picker/date-picker.d.ts +8 -6
- package/dist/date-picker/date-picker.js +214 -160
- package/dist/date-picker/date-popup.d.ts +1 -1
- package/dist/date-picker/date-popup.js +340 -297
- package/dist/date-picker/day.d.ts +2 -2
- package/dist/date-picker/day.js +78 -68
- package/dist/date-picker/month-names.d.ts +2 -2
- package/dist/date-picker/month-names.js +59 -41
- package/dist/date-picker/month-slider.d.ts +2 -2
- package/dist/date-picker/month-slider.js +59 -40
- package/dist/date-picker/month.d.ts +2 -2
- package/dist/date-picker/month.js +21 -15
- package/dist/date-picker/months.d.ts +2 -2
- package/dist/date-picker/months.js +80 -56
- package/dist/date-picker/weekdays.d.ts +2 -2
- package/dist/date-picker/weekdays.js +18 -12
- package/dist/date-picker/years.d.ts +6 -2
- package/dist/date-picker/years.js +102 -66
- package/dist/dialog/dialog.d.ts +4 -16
- package/dist/dialog/dialog.js +148 -98
- package/dist/dialog/dialog__body-scroll-preventer.js +5 -0
- package/dist/dialog-ng/dialog-ng.js +404 -291
- package/dist/dialog-ng/dialog-ng__template.js +1 -70
- package/dist/docked-panel-ng/docked-panel-ng.js +33 -19
- package/dist/dropdown/anchor.d.ts +1 -1
- package/dist/dropdown/anchor.js +10 -1
- package/dist/dropdown/dropdown.d.ts +8 -1
- package/dist/dropdown/dropdown.js +158 -130
- package/dist/dropdown-menu/dropdown-menu.js +102 -73
- package/dist/editable-heading/editable-heading.d.ts +2 -2
- package/dist/editable-heading/editable-heading.js +133 -62
- package/dist/error-bubble/error-bubble.d.ts +2 -2
- package/dist/error-bubble/error-bubble.js +60 -27
- package/dist/error-message/error-message.d.ts +2 -2
- package/dist/error-message/error-message.js +52 -29
- package/dist/error-message-ng/error-message-ng.js +12 -24
- package/dist/footer/footer.js +11 -2
- package/dist/footer-ng/footer-ng.js +52 -27
- package/dist/form-ng/form-ng.js +67 -57
- package/dist/global/angular-component-factory.js +78 -50
- package/dist/global/compose.js +10 -1
- package/dist/global/composeRefs.js +12 -7
- package/dist/global/controls-height.d.ts +2 -0
- package/dist/global/controls-height.js +10 -2
- package/dist/global/create-stateful-context.d.ts +1 -1
- package/dist/global/create-stateful-context.js +19 -19
- package/dist/global/data-tests.js +15 -7
- package/dist/global/dom.js +93 -55
- package/dist/global/focus-sensor-hoc.d.ts +1 -0
- package/dist/global/focus-sensor-hoc.js +118 -102
- package/dist/global/fuzzy-highlight.js +41 -27
- package/dist/global/get-event-key.js +8 -8
- package/dist/global/get-uid.js +8 -4
- package/dist/global/inject-styles.js +15 -10
- package/dist/global/linear-function.js +2 -2
- package/dist/global/listeners.js +50 -28
- package/dist/global/memoize.js +13 -6
- package/dist/global/normalize-indent.js +51 -19
- package/dist/global/promise-with-timeout.js +8 -6
- package/dist/global/prop-types.js +5 -3
- package/dist/global/react-dom-renderer.d.ts +4 -4
- package/dist/global/react-dom-renderer.js +44 -28
- package/dist/global/react-render-adapter.js +21 -15
- package/dist/global/rerender-hoc.js +40 -19
- package/dist/global/ring-angular-component.js +18 -10
- package/dist/global/schedule-raf.js +6 -5
- package/dist/global/sniffer.js +1 -1
- package/dist/global/theme.js +24 -0
- package/dist/global/trivial-template-tag.js +10 -3
- package/dist/global/typescript-utils.js +6 -2
- package/dist/global/url.js +27 -21
- package/dist/global/use-event-callback.d.ts +1 -0
- package/dist/global/use-event-callback.js +17 -0
- package/dist/grid/col.d.ts +2 -2
- package/dist/grid/col.js +42 -23
- package/dist/grid/grid.d.ts +2 -2
- package/dist/grid/grid.js +32 -13
- package/dist/grid/row.d.ts +2 -2
- package/dist/grid/row.js +32 -20
- package/dist/group/group.d.ts +2 -2
- package/dist/group/group.js +23 -13
- package/dist/group-ng/group-ng.js +2 -2
- package/dist/header/header.d.ts +2 -2
- package/dist/header/header.js +75 -25
- package/dist/header/logo.d.ts +2 -2
- package/dist/header/logo.js +31 -12
- package/dist/header/profile.d.ts +4 -2
- package/dist/header/profile.js +154 -105
- package/dist/header/services-link.d.ts +2 -2
- package/dist/header/services-link.js +9 -1
- package/dist/header/services.d.ts +2 -2
- package/dist/header/services.js +104 -63
- package/dist/header/smart-profile.d.ts +2 -2
- package/dist/header/smart-profile.js +194 -98
- package/dist/header/smart-services.d.ts +2 -2
- package/dist/header/smart-services.js +104 -52
- package/dist/header/tray-icon.d.ts +2 -2
- package/dist/header/tray-icon.js +36 -20
- package/dist/header/tray.d.ts +2 -2
- package/dist/header/tray.js +30 -17
- package/dist/heading/heading.js +26 -27
- package/dist/heading-ng/heading-ng.js +10 -0
- package/dist/http/http.d.ts +16 -6
- package/dist/http/http.js +357 -170
- package/dist/http/http.mock.js +105 -50
- package/dist/hub-source/hub-source.js +183 -77
- package/dist/hub-source/hub-source__user.js +45 -12
- package/dist/hub-source/hub-source__users-groups.d.ts +1 -1
- package/dist/hub-source/hub-source__users-groups.js +63 -34
- package/dist/i18n/i18n-context.d.ts +13 -0
- package/dist/i18n/i18n-context.js +28 -0
- package/dist/i18n/i18n.d.ts +59 -0
- package/dist/i18n/i18n.js +140 -0
- package/dist/icon/icon.d.ts +3 -3
- package/dist/icon/icon.js +77 -59
- package/dist/icon/icon__svg.d.ts +1 -1
- package/dist/icon/icon__svg.js +31 -24
- package/dist/icon/index.js +9 -0
- package/dist/icon-ng/icon-ng.js +27 -16
- package/dist/input/input.d.ts +7 -1
- package/dist/input/input.js +178 -131
- package/dist/input-ng/input-ng.js +77 -99
- package/dist/island/adaptive-island-hoc.d.ts +2 -2
- package/dist/island/adaptive-island-hoc.js +38 -27
- package/dist/island/content.d.ts +1 -1
- package/dist/island/content.js +104 -92
- package/dist/island/header.d.ts +2 -2
- package/dist/island/header.js +60 -47
- package/dist/island/island.d.ts +3 -3
- package/dist/island/island.js +33 -21
- package/dist/island-legacy/content-legacy.d.ts +2 -2
- package/dist/island-legacy/content-legacy.js +23 -13
- package/dist/island-legacy/header-legacy.d.ts +2 -2
- package/dist/island-legacy/header-legacy.js +25 -15
- package/dist/island-legacy/island-legacy.d.ts +2 -2
- package/dist/island-legacy/island-legacy.js +23 -13
- package/dist/island-ng/island-content-ng.js +17 -26
- package/dist/island-ng/island-header-ng.js +9 -12
- package/dist/island-ng/island-ng-class-fixer.js +3 -0
- package/dist/island-ng/island-ng.js +6 -10
- package/dist/link/clickableLink.d.ts +1 -1
- package/dist/link/clickableLink.js +43 -29
- package/dist/link/link.d.ts +8 -9
- package/dist/link/link.js +72 -62
- package/dist/link-ng/link-ng.js +5 -7
- package/dist/list/consts.js +4 -1
- package/dist/list/list.d.ts +7 -7
- package/dist/list/list.js +499 -402
- package/dist/list/list__custom.d.ts +1 -1
- package/dist/list/list__custom.js +60 -47
- package/dist/list/list__hint.d.ts +2 -2
- package/dist/list/list__hint.js +18 -8
- package/dist/list/list__item.d.ts +2 -2
- package/dist/list/list__item.js +167 -132
- package/dist/list/list__link.d.ts +2 -2
- package/dist/list/list__link.js +54 -38
- package/dist/list/list__separator.d.ts +2 -2
- package/dist/list/list__separator.js +24 -14
- package/dist/list/list__title.d.ts +2 -2
- package/dist/list/list__title.js +32 -22
- package/dist/list/list__users-groups-source.js +130 -54
- package/dist/loader/loader.d.ts +2 -2
- package/dist/loader/loader.js +66 -34
- package/dist/loader/loader__core.js +197 -129
- package/dist/loader-inline/loader-inline.d.ts +2 -2
- package/dist/loader-inline/loader-inline.js +32 -18
- package/dist/loader-inline-ng/loader-inline-ng.js +2 -2
- package/dist/loader-ng/loader-ng.js +44 -18
- package/dist/loader-screen/loader-screen.d.ts +2 -2
- package/dist/loader-screen/loader-screen.js +43 -20
- package/dist/loader-screen-ng/loader-screen-ng.js +45 -30
- package/dist/login-dialog/login-dialog.d.ts +2 -2
- package/dist/login-dialog/login-dialog.js +125 -78
- package/dist/login-dialog/service.js +39 -10
- package/dist/markdown/code.d.ts +2 -2
- package/dist/markdown/code.js +30 -9
- package/dist/markdown/heading.d.ts +2 -2
- package/dist/markdown/heading.js +3 -5
- package/dist/markdown/link.d.ts +2 -2
- package/dist/markdown/link.js +13 -7
- package/dist/markdown/markdown.d.ts +2 -2
- package/dist/markdown/markdown.js +67 -35
- package/dist/message/message.d.ts +3 -7
- package/dist/message/message.js +153 -119
- package/dist/message-bundle-ng/message-bundle-ng.js +130 -46
- package/dist/old-browsers-message/old-browsers-message.js +19 -11
- package/dist/old-browsers-message/old-browsers-message__stop.js +8 -0
- package/dist/old-browsers-message/white-list.js +17 -10
- package/dist/pager/pager.d.ts +8 -13
- package/dist/pager/pager.js +259 -188
- package/dist/pager-ng/pager-ng.js +39 -2
- package/dist/panel/panel.d.ts +2 -2
- package/dist/panel/panel.js +23 -13
- package/dist/panel-ng/panel-ng.js +13 -1
- package/dist/permissions/permissions.js +166 -122
- package/dist/permissions/permissions__cache.js +220 -191
- package/dist/permissions-ng/permissions-ng.js +89 -36
- package/dist/place-under-ng/place-under-ng.js +67 -45
- package/dist/popup/popup.consts.js +1 -1
- package/dist/popup/popup.d.ts +2 -2
- package/dist/popup/popup.js +299 -236
- package/dist/popup/popup.target.js +8 -9
- package/dist/popup/position.d.ts +1 -1
- package/dist/popup/position.js +175 -154
- package/dist/popup-menu/popup-menu.d.ts +2 -2
- package/dist/popup-menu/popup-menu.js +80 -42
- package/dist/progress-bar/progress-bar.d.ts +2 -2
- package/dist/progress-bar/progress-bar.js +66 -52
- package/dist/progress-bar-ng/progress-bar-ng.js +10 -0
- package/dist/promised-click-ng/promised-click-ng.js +93 -60
- package/dist/proxy-attrs/proxy-attrs.js +18 -9
- package/dist/query-assist/query-assist.d.ts +3 -7
- package/dist/query-assist/query-assist.js +677 -567
- package/dist/query-assist/query-assist__suggestions.d.ts +2 -2
- package/dist/query-assist/query-assist__suggestions.js +33 -2
- package/dist/query-assist-ng/query-assist-ng.js +41 -2
- package/dist/radio/radio.d.ts +1 -1
- package/dist/radio/radio.js +28 -14
- package/dist/radio/radio__item.d.ts +1 -1
- package/dist/radio/radio__item.js +60 -44
- package/dist/radio-ng/radio-ng.js +14 -25
- package/dist/save-field-ng/save-field-ng.js +90 -56
- package/dist/save-field-ng/save-field-ng__template.js +1 -32
- package/dist/select/select.d.ts +20 -9
- package/dist/select/select.js +831 -699
- package/dist/select/select__filter.d.ts +2 -3
- package/dist/select/select__filter.js +37 -2
- package/dist/select/select__popup.d.ts +48 -8
- package/dist/select/select__popup.js +430 -293
- package/dist/select-ng/select-ng.js +130 -77
- package/dist/select-ng/select-ng__lazy.js +104 -51
- package/dist/select-ng/select-ng__options.js +93 -68
- package/dist/shortcuts/core.js +197 -146
- package/dist/shortcuts/shortcut-title.js +11 -6
- package/dist/shortcuts/shortcuts-hoc.d.ts +2 -2
- package/dist/shortcuts/shortcuts-hoc.js +43 -19
- package/dist/shortcuts/shortcuts.d.ts +1 -1
- package/dist/shortcuts/shortcuts.js +69 -43
- package/dist/shortcuts-hint-ng/shortcuts-hint-ng.js +109 -58
- package/dist/shortcuts-hint-ng/shortcuts-hint-ng__template.js +1 -48
- package/dist/shortcuts-ng/shortcuts-ng.js +110 -76
- package/dist/sidebar-ng/sidebar-ng.js +55 -25
- package/dist/sidebar-ng/sidebar-ng__button-template.js +1 -18
- package/dist/sidebar-ng/sidebar-ng__template.js +1 -10
- package/dist/storage/storage.js +34 -4
- package/dist/storage/storage__fallback.js +217 -143
- package/dist/storage/storage__local.js +155 -90
- package/dist/style.css +1 -1
- package/dist/tab-trap/tab-trap.d.ts +1 -1
- package/dist/tab-trap/tab-trap.js +117 -84
- package/dist/table/cell.d.ts +2 -2
- package/dist/table/cell.js +23 -9
- package/dist/table/disable-hover-hoc.d.ts +2 -2
- package/dist/table/disable-hover-hoc.js +44 -26
- package/dist/table/header-cell.d.ts +2 -2
- package/dist/table/header-cell.js +74 -54
- package/dist/table/header.d.ts +3 -14
- package/dist/table/header.js +102 -131
- package/dist/table/multitable.d.ts +2 -2
- package/dist/table/multitable.js +102 -86
- package/dist/table/row-with-focus-sensor.d.ts +1 -1
- package/dist/table/row-with-focus-sensor.js +69 -24
- package/dist/table/row.d.ts +2 -1
- package/dist/table/row.js +191 -155
- package/dist/table/selection-adapter.js +3 -1
- package/dist/table/selection-shortcuts-hoc.js +132 -131
- package/dist/table/selection.js +220 -150
- package/dist/table/smart-table.d.ts +3 -1
- package/dist/table/smart-table.js +87 -50
- package/dist/table/table.d.ts +6 -4
- package/dist/table/table.js +311 -247
- package/dist/table-legacy-ng/table-legacy-ng.js +120 -103
- package/dist/table-legacy-ng/table-legacy-ng__pager.js +46 -12
- package/dist/table-legacy-ng/table-legacy-ng__selection-navigate-actions.js +92 -69
- package/dist/table-legacy-ng/table-legacy-ng__selection.js +167 -119
- package/dist/table-legacy-ng/table-legacy-ng__toolbar.js +35 -21
- package/dist/table-ng/smart-table-ng.js +30 -2
- package/dist/table-ng/table-ng.js +30 -2
- package/dist/tabs/collapsible-more.d.ts +3 -3
- package/dist/tabs/collapsible-more.js +92 -56
- package/dist/tabs/collapsible-tab.d.ts +1 -1
- package/dist/tabs/collapsible-tab.js +45 -39
- package/dist/tabs/collapsible-tabs.d.ts +2 -2
- package/dist/tabs/collapsible-tabs.js +161 -95
- package/dist/tabs/custom-item.js +2 -4
- package/dist/tabs/dumb-tabs.d.ts +5 -3
- package/dist/tabs/dumb-tabs.js +101 -56
- package/dist/tabs/smart-tabs.d.ts +2 -2
- package/dist/tabs/smart-tabs.js +70 -25
- package/dist/tabs/tab-link.d.ts +1 -1
- package/dist/tabs/tab-link.js +29 -20
- package/dist/tabs/tab.d.ts +2 -2
- package/dist/tabs/tab.js +26 -15
- package/dist/tabs/tabs.js +35 -1
- package/dist/tabs-ng/tabs-ng.js +38 -24
- package/dist/tabs-ng/tabs-ng__template.js +1 -38
- package/dist/tag/tag.d.ts +5 -5
- package/dist/tag/tag.js +146 -113
- package/dist/tags-input/tags-input.d.ts +9 -4
- package/dist/tags-input/tags-input.js +327 -220
- package/dist/tags-input-ng/tags-input-ng.js +40 -2
- package/dist/tags-list/tags-list.d.ts +2 -2
- package/dist/tags-list/tags-list.js +61 -38
- package/dist/template-ng/template-ng.js +45 -35
- package/dist/text/text.d.ts +8 -2
- package/dist/text/text.js +38 -17
- package/dist/title-ng/title-ng.js +28 -23
- package/dist/toggle/toggle.d.ts +2 -2
- package/dist/toggle/toggle.js +55 -39
- package/dist/toggle-ng/toggle-ng.js +13 -0
- package/dist/tooltip/tooltip.d.ts +1 -1
- package/dist/tooltip/tooltip.js +145 -102
- package/dist/tooltip-ng/tooltip-ng.js +51 -25
- package/dist/user-agreement/service.js +411 -259
- package/dist/user-agreement/toolbox.eula.js +1 -160
- package/dist/user-agreement/user-agreement.d.ts +3 -11
- package/dist/user-agreement/user-agreement.js +106 -68
- package/dist/user-card/card.d.ts +22 -21
- package/dist/user-card/card.js +34 -1
- package/dist/user-card/smart-user-card-tooltip.d.ts +3 -3
- package/dist/user-card/smart-user-card-tooltip.js +139 -76
- package/dist/user-card/tooltip.d.ts +11 -6
- package/dist/user-card/tooltip.js +75 -32
- package/dist/user-card/user-card.js +34 -1
- package/dist/user-card-ng/user-card-ng.js +39 -6
- package/package.json +86 -82
- package/components/input/input-label.d.ts +0 -10
- package/components/input/input-label.js +0 -18
- package/dist/input/input-label.d.ts +0 -10
- package/dist/input/input-label.js +0 -27
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import type { Locale } from 'date-fns';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
interface WeekdaysProps {
|
|
5
5
|
locale: Locale | undefined;
|
|
6
6
|
}
|
|
7
|
-
declare function Weekdays(props: WeekdaysProps): JSX.Element;
|
|
7
|
+
declare function Weekdays(props: WeekdaysProps): React.JSX.Element;
|
|
8
8
|
declare namespace Weekdays {
|
|
9
9
|
var propTypes: {
|
|
10
10
|
locale: PropTypes.Requireable<string>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PureComponent } from 'react';
|
|
1
|
+
import React, { PureComponent } from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import { CalendarProps } from './consts';
|
|
4
4
|
interface YearsState {
|
|
@@ -13,9 +13,13 @@ export default class Years extends PureComponent<CalendarProps> {
|
|
|
13
13
|
state: {
|
|
14
14
|
scrollDate: null;
|
|
15
15
|
};
|
|
16
|
+
componentDidMount(): void;
|
|
16
17
|
componentDidUpdate(prevProps: CalendarProps, prevState: YearsState): void;
|
|
18
|
+
componentWillUnmount(): void;
|
|
17
19
|
stoppedScrolling?: boolean;
|
|
18
20
|
setYear(date: number): void;
|
|
19
|
-
|
|
21
|
+
componentRef: React.RefObject<HTMLDivElement>;
|
|
22
|
+
handleWheel: (e: WheelEvent) => void;
|
|
23
|
+
render(): React.JSX.Element;
|
|
20
24
|
}
|
|
21
25
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { PureComponent } from 'react';
|
|
1
|
+
import React, { createRef, PureComponent } from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import classNames from 'classnames';
|
|
4
4
|
import addYears from 'date-fns/addYears';
|
|
@@ -23,9 +23,19 @@ export default class Years extends PureComponent {
|
|
|
23
23
|
onScrollChange: PropTypes.func
|
|
24
24
|
};
|
|
25
25
|
state = { scrollDate: null };
|
|
26
|
+
componentDidMount() {
|
|
27
|
+
if (this.componentRef.current) {
|
|
28
|
+
this.componentRef.current.addEventListener('wheel', this.handleWheel);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
26
31
|
componentDidUpdate(prevProps, prevState) {
|
|
27
32
|
this.stoppedScrolling = prevState.scrollDate != null && !this.state.scrollDate;
|
|
28
33
|
}
|
|
34
|
+
componentWillUnmount() {
|
|
35
|
+
if (this.componentRef.current) {
|
|
36
|
+
this.componentRef.current.removeEventListener('wheel', this.handleWheel);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
29
39
|
stoppedScrolling;
|
|
30
40
|
setYear(date) {
|
|
31
41
|
if (scrollTO) {
|
|
@@ -35,6 +45,20 @@ export default class Years extends PureComponent {
|
|
|
35
45
|
this.setState({ scrollDate: null });
|
|
36
46
|
this.props.onScroll(Number(setYear(this.props.scrollDate, getYear(date))));
|
|
37
47
|
}
|
|
48
|
+
componentRef = createRef();
|
|
49
|
+
handleWheel = (e) => {
|
|
50
|
+
const { scrollDate } = this.props;
|
|
51
|
+
const date = this.state.scrollDate || scrollDate;
|
|
52
|
+
e.preventDefault();
|
|
53
|
+
const newScrollDate = linearFunction(0, Number(date), yearDuration / yearHeight).y(e.deltaY);
|
|
54
|
+
this.setState({
|
|
55
|
+
scrollDate: newScrollDate
|
|
56
|
+
});
|
|
57
|
+
if (scrollTO) {
|
|
58
|
+
window.clearTimeout(scrollTO);
|
|
59
|
+
}
|
|
60
|
+
scrollTO = window.setTimeout(() => this.setYear(newScrollDate), scrollDelay);
|
|
61
|
+
};
|
|
38
62
|
render() {
|
|
39
63
|
const { onScrollChange, scrollDate } = this.props;
|
|
40
64
|
const date = this.state.scrollDate || scrollDate;
|
|
@@ -46,19 +70,7 @@ export default class Years extends PureComponent {
|
|
|
46
70
|
years.push(year);
|
|
47
71
|
}
|
|
48
72
|
const pxToDate = linearFunction(0, Number(years[0]), yearDuration / yearHeight);
|
|
49
|
-
|
|
50
|
-
e.preventDefault();
|
|
51
|
-
const newScrollDate = linearFunction(0, Number(date), yearDuration / yearHeight).
|
|
52
|
-
y(e.deltaY);
|
|
53
|
-
this.setState({
|
|
54
|
-
scrollDate: newScrollDate
|
|
55
|
-
});
|
|
56
|
-
if (scrollTO) {
|
|
57
|
-
window.clearTimeout(scrollTO);
|
|
58
|
-
}
|
|
59
|
-
scrollTO = window.setTimeout(() => this.setYear(newScrollDate), scrollDelay);
|
|
60
|
-
};
|
|
61
|
-
return (<div className={styles.years} onWheel={handleWheel} style={{
|
|
73
|
+
return (<div className={styles.years} ref={this.componentRef} style={{
|
|
62
74
|
transition: this.stoppedScrolling ? 'top .2s ease-out 0s' : 'none',
|
|
63
75
|
top: Math.floor(calHeight * HALF - pxToDate.x(Number(date)))
|
|
64
76
|
}}>
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React, { PureComponent } from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import TabTrap, { TabTrapProps } from '../tab-trap/tab-trap';
|
|
4
|
+
import type { ShortcutsScopeOptions } from '../shortcuts/core';
|
|
4
5
|
export interface DialogProps extends Partial<TabTrapProps> {
|
|
5
6
|
show: boolean;
|
|
6
7
|
label: string;
|
|
@@ -9,6 +10,7 @@ export interface DialogProps extends Partial<TabTrapProps> {
|
|
|
9
10
|
onCloseClick: (event: React.MouseEvent<HTMLElement>) => void;
|
|
10
11
|
onCloseAttempt: (event: React.MouseEvent<HTMLElement> | KeyboardEvent) => void;
|
|
11
12
|
showCloseButton: boolean;
|
|
13
|
+
shortcutOptions: ShortcutsScopeOptions;
|
|
12
14
|
closeButtonInside: boolean;
|
|
13
15
|
closeButtonTitle?: string;
|
|
14
16
|
trapFocus: boolean;
|
|
@@ -17,10 +19,6 @@ export interface DialogProps extends Partial<TabTrapProps> {
|
|
|
17
19
|
'data-test'?: string | null | undefined;
|
|
18
20
|
dense?: boolean | null | undefined;
|
|
19
21
|
}
|
|
20
|
-
/**
|
|
21
|
-
* @name Dialog
|
|
22
|
-
*/
|
|
23
|
-
declare function noop(): void;
|
|
24
22
|
export default class Dialog extends PureComponent<DialogProps> {
|
|
25
23
|
static propTypes: {
|
|
26
24
|
label: PropTypes.Requireable<string>;
|
|
@@ -34,23 +32,14 @@ export default class Dialog extends PureComponent<DialogProps> {
|
|
|
34
32
|
onOverlayClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
35
33
|
onEscPress: PropTypes.Requireable<(...args: any[]) => any>;
|
|
36
34
|
onCloseClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
35
|
+
shortcutOptions: PropTypes.Requireable<object>;
|
|
37
36
|
onCloseAttempt: PropTypes.Requireable<(...args: any[]) => any>;
|
|
38
37
|
trapFocus: PropTypes.Requireable<boolean>;
|
|
39
38
|
portalTarget: PropTypes.Requireable<HTMLElement>;
|
|
40
39
|
autoFocusFirst: PropTypes.Requireable<boolean>;
|
|
41
40
|
'data-test': PropTypes.Requireable<string>;
|
|
42
41
|
};
|
|
43
|
-
static defaultProps:
|
|
44
|
-
label: string;
|
|
45
|
-
onOverlayClick: typeof noop;
|
|
46
|
-
onEscPress: typeof noop;
|
|
47
|
-
onCloseClick: typeof noop;
|
|
48
|
-
onCloseAttempt: typeof noop;
|
|
49
|
-
showCloseButton: boolean;
|
|
50
|
-
closeButtonInside: boolean;
|
|
51
|
-
trapFocus: boolean;
|
|
52
|
-
autoFocusFirst: boolean;
|
|
53
|
-
};
|
|
42
|
+
static defaultProps: Partial<DialogProps>;
|
|
54
43
|
state: {
|
|
55
44
|
shortcutsScope: string;
|
|
56
45
|
};
|
|
@@ -73,4 +62,3 @@ export default class Dialog extends PureComponent<DialogProps> {
|
|
|
73
62
|
render(): false | React.ReactPortal;
|
|
74
63
|
}
|
|
75
64
|
export type DialogAttrs = JSX.LibraryManagedAttributes<typeof Dialog, DialogProps>;
|
|
76
|
-
export {};
|
|
@@ -32,6 +32,7 @@ export default class Dialog extends PureComponent {
|
|
|
32
32
|
onOverlayClick: PropTypes.func,
|
|
33
33
|
onEscPress: PropTypes.func,
|
|
34
34
|
onCloseClick: PropTypes.func,
|
|
35
|
+
shortcutOptions: PropTypes.object,
|
|
35
36
|
// onCloseAttempt is a common callback for ESC pressing and overlay clicking.
|
|
36
37
|
// Use it if you don't need different behaviors for this cases.
|
|
37
38
|
onCloseAttempt: PropTypes.func,
|
|
@@ -49,6 +50,7 @@ export default class Dialog extends PureComponent {
|
|
|
49
50
|
onCloseAttempt: noop,
|
|
50
51
|
showCloseButton: false,
|
|
51
52
|
closeButtonInside: false,
|
|
53
|
+
shortcutOptions: { modal: false },
|
|
52
54
|
trapFocus: false,
|
|
53
55
|
autoFocusFirst: true
|
|
54
56
|
};
|
|
@@ -100,12 +102,12 @@ export default class Dialog extends PureComponent {
|
|
|
100
102
|
this.dialog = tabTrap && tabTrap.node;
|
|
101
103
|
};
|
|
102
104
|
render() {
|
|
103
|
-
const { show, showCloseButton, onOverlayClick, onCloseAttempt, onEscPress, onCloseClick, children, className, contentClassName, trapFocus, 'data-test': dataTest, closeButtonInside, portalTarget, label, closeButtonTitle, dense, ...restProps } = this.props;
|
|
105
|
+
const { show, showCloseButton, onOverlayClick, onCloseAttempt, onEscPress, onCloseClick, children, className, contentClassName, trapFocus, 'data-test': dataTest, closeButtonInside, portalTarget, label, closeButtonTitle, dense, shortcutOptions, ...restProps } = this.props;
|
|
104
106
|
const classes = classNames(styles.container, className);
|
|
105
107
|
const shortcutsMap = this.getShortcutsMap();
|
|
106
108
|
return show && createPortal(<PopupTarget id={this.uid} className={styles.popupTarget}>
|
|
107
109
|
{target => (<TabTrap trapDisabled={!trapFocus} data-test={dataTests('ring-dialog-container', dataTest)} ref={this.dialogRef} className={classes} role="presentation" {...restProps}>
|
|
108
|
-
<Shortcuts map={shortcutsMap} scope={this.state.shortcutsScope}/>
|
|
110
|
+
<Shortcuts map={shortcutsMap} scope={this.state.shortcutsScope} options={this.props.shortcutOptions}/>
|
|
109
111
|
{(onOverlayClick !== noop || onCloseAttempt !== noop) && (<div
|
|
110
112
|
// click handler is duplicated in close button
|
|
111
113
|
role="presentation" className={styles.clickableOverlay} onClick={this.handleClick}/>)}
|
|
@@ -16,7 +16,7 @@ export default {
|
|
|
16
16
|
parameters: {
|
|
17
17
|
notes: 'Provides an Angular wrapper for Dialog.',
|
|
18
18
|
hermione: {captureSelector: '*[data-test~=ring-dialog]'},
|
|
19
|
-
a11y: {element: '
|
|
19
|
+
a11y: {element: '#storybook-root,*[data-test~=ring-dialog]'}
|
|
20
20
|
}
|
|
21
21
|
};
|
|
22
22
|
|
|
@@ -26,8 +26,6 @@ const angularModule = angular.module(
|
|
|
26
26
|
);
|
|
27
27
|
|
|
28
28
|
class DialogController extends RingAngularComponent {
|
|
29
|
-
static $inject = ['$scope', '$q', 'dialog', '$element', 'dialogInSidebar', '$compile',
|
|
30
|
-
'$injector', '$controller', 'rgCompiler', '$sce'];
|
|
31
29
|
|
|
32
30
|
constructor(...args) {
|
|
33
31
|
super(...args);
|
|
@@ -333,9 +331,9 @@ class DialogController extends RingAngularComponent {
|
|
|
333
331
|
};
|
|
334
332
|
}
|
|
335
333
|
}
|
|
336
|
-
|
|
334
|
+
DialogController.$inject = ['$scope', '$q', 'dialog', '$element', 'dialogInSidebar', '$compile',
|
|
335
|
+
'$injector', '$controller', 'rgCompiler', '$sce'];
|
|
337
336
|
class DialogService extends RingAngularComponent {
|
|
338
|
-
static $inject = ['$log'];
|
|
339
337
|
|
|
340
338
|
DIALOG_NAMESPACE = 'ring-dialog';
|
|
341
339
|
fallbackDialog = null;
|
|
@@ -366,9 +364,9 @@ class DialogService extends RingAngularComponent {
|
|
|
366
364
|
Reflect.deleteProperty(this, 'ctrl');
|
|
367
365
|
};
|
|
368
366
|
}
|
|
367
|
+
DialogService.$inject = ['$log'];
|
|
369
368
|
|
|
370
369
|
class DialogInSidebarService extends DialogService {
|
|
371
|
-
static $inject = [...DialogService.$inject, 'dialog'];
|
|
372
370
|
|
|
373
371
|
DIALOG_NAMESPACE = 'ring-dialog-in-sidebar';
|
|
374
372
|
|
|
@@ -377,6 +375,7 @@ class DialogInSidebarService extends DialogService {
|
|
|
377
375
|
this.fallbackDialog = this.$inject.dialog;
|
|
378
376
|
}
|
|
379
377
|
}
|
|
378
|
+
DialogInSidebarService.$inject = [...DialogService.$inject, 'dialog'];
|
|
380
379
|
|
|
381
380
|
function rgDialogDirective($timeout) {
|
|
382
381
|
function link(scope, iElement, iAttrs, dialogCtrl) {
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import { ButtonAttrs } from '../button/button';
|
|
4
4
|
declare const _default: React.MemoExoticComponent<{
|
|
5
|
-
({ children, className, ...restProps }: ButtonAttrs): JSX.Element;
|
|
5
|
+
({ children, className, ...restProps }: ButtonAttrs): React.JSX.Element;
|
|
6
6
|
propTypes: {
|
|
7
7
|
children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
8
8
|
className: PropTypes.Requireable<string>;
|
|
@@ -6,6 +6,13 @@ export interface AnchorProps {
|
|
|
6
6
|
active: boolean;
|
|
7
7
|
pinned: boolean;
|
|
8
8
|
}
|
|
9
|
+
export interface DropdownChildProps {
|
|
10
|
+
hidden: boolean;
|
|
11
|
+
onCloseAttempt: () => void;
|
|
12
|
+
onMouseDown?: () => void | undefined;
|
|
13
|
+
onContextMenu?: () => void | undefined;
|
|
14
|
+
dontCloseOnAnchorClick: boolean;
|
|
15
|
+
}
|
|
9
16
|
export interface DropdownProps extends Omit<HTMLAttributes<HTMLElement>, 'children'> {
|
|
10
17
|
anchor: ReactElement | readonly ReactElement[] | string | ((props: AnchorProps) => ReactNode);
|
|
11
18
|
children: ReactElement<PopupAttrs> | ((props: Omit<PopupAttrs, 'children'>) => ReactNode);
|
|
@@ -74,7 +81,7 @@ export default class Dropdown extends Component<DropdownProps, DropdownState> {
|
|
|
74
81
|
toggle(show?: boolean): void;
|
|
75
82
|
_toggle(show: boolean, pinned?: boolean): void;
|
|
76
83
|
_clearTimer(): void;
|
|
77
|
-
render(): JSX.Element;
|
|
84
|
+
render(): React.JSX.Element;
|
|
78
85
|
}
|
|
79
86
|
export type DropdownAttrs = JSX.LibraryManagedAttributes<typeof Dropdown, DropdownProps>;
|
|
80
87
|
export { Anchor };
|
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
padding: 0;
|
|
23
23
|
|
|
24
24
|
cursor: pointer;
|
|
25
|
+
user-select: text;
|
|
25
26
|
|
|
26
27
|
text-align: inherit;
|
|
27
28
|
|
|
@@ -29,23 +30,33 @@
|
|
|
29
30
|
|
|
30
31
|
border: none;
|
|
31
32
|
border-radius: var(--ring-border-radius);
|
|
33
|
+
outline: none;
|
|
32
34
|
background: inherit;
|
|
33
35
|
|
|
34
36
|
font-size: inherit;
|
|
35
37
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
+
.disabled &,
|
|
39
|
+
.selectionMode & {
|
|
40
|
+
user-select: text;
|
|
41
|
+
|
|
42
|
+
border-radius: 0;
|
|
38
43
|
}
|
|
39
44
|
|
|
40
|
-
|
|
41
|
-
|
|
45
|
+
&:focus-visible {
|
|
46
|
+
box-shadow: 0 0 0 2px var(--ring-border-hover-color);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.disabled &:focus,
|
|
50
|
+
.selectionMode &:focus {
|
|
51
|
+
box-shadow: none;
|
|
42
52
|
}
|
|
43
53
|
|
|
44
54
|
&:hover {
|
|
45
55
|
background-color: var(--ring-hover-background-color);
|
|
46
56
|
}
|
|
47
57
|
|
|
48
|
-
|
|
58
|
+
.disabled &:hover,
|
|
59
|
+
.selectionMode &:hover {
|
|
49
60
|
cursor: initial;
|
|
50
61
|
|
|
51
62
|
background-color: initial;
|
|
@@ -59,9 +70,11 @@
|
|
|
59
70
|
-webkit-line-clamp: 1;
|
|
60
71
|
-webkit-box-orient: vertical;
|
|
61
72
|
|
|
73
|
+
word-wrap: break-word;
|
|
74
|
+
|
|
62
75
|
border-radius: var(--ring-border-radius);
|
|
63
76
|
|
|
64
|
-
|
|
77
|
+
.multiline & {
|
|
65
78
|
-webkit-line-clamp: 3;
|
|
66
79
|
}
|
|
67
80
|
}
|
|
@@ -106,7 +119,7 @@
|
|
|
106
119
|
background-color: initial;
|
|
107
120
|
}
|
|
108
121
|
|
|
109
|
-
|
|
122
|
+
.error & {
|
|
110
123
|
margin-bottom: 1px;
|
|
111
124
|
|
|
112
125
|
border-bottom-width: 2px;
|
|
@@ -26,6 +26,6 @@ export type EditableHeadingProps = Omit<InputHTMLAttributes<HTMLInputElement>, '
|
|
|
26
26
|
renderMenu?: () => React.ReactNode;
|
|
27
27
|
translations?: EditableHeadingTranslations;
|
|
28
28
|
};
|
|
29
|
-
export declare const EditableHeading: (props: EditableHeadingProps) => JSX.Element;
|
|
30
|
-
declare const _default: React.MemoExoticComponent<(props: EditableHeadingProps) => JSX.Element>;
|
|
29
|
+
export declare const EditableHeading: (props: EditableHeadingProps) => React.JSX.Element;
|
|
30
|
+
declare const _default: React.MemoExoticComponent<(props: EditableHeadingProps) => React.JSX.Element>;
|
|
31
31
|
export default _default;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React from 'react';
|
|
1
|
+
import React, { useEffect } from 'react';
|
|
2
2
|
import classNames from 'classnames';
|
|
3
3
|
import Heading, { Levels } from '../heading/heading';
|
|
4
4
|
import Button from '../button/button';
|
|
@@ -17,29 +17,48 @@ export const EditableHeading = (props) => {
|
|
|
17
17
|
}, ...restProps } = props;
|
|
18
18
|
const [shortcutsScope] = React.useState(getUID('ring-editable-heading-'));
|
|
19
19
|
const [isInFocus, setIsInFocus] = React.useState(false);
|
|
20
|
+
const [isMouseDown, setIsMouseDown] = React.useState(false);
|
|
21
|
+
const [isInSelectionMode, setIsInSelectionMode] = React.useState(false);
|
|
20
22
|
const hasError = error !== undefined;
|
|
21
23
|
const isSaveDisabled = !isSavingPossible || !children || children.trim() === '' || hasError || isSaving;
|
|
22
24
|
const isCancelDisabled = isSaving;
|
|
23
25
|
const isShortcutsDisabled = !isInFocus || isSaving;
|
|
24
|
-
const shortcutsMap = React.useMemo(() =>
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
const shortcutsMap = React.useMemo(() => {
|
|
27
|
+
const map = {};
|
|
28
|
+
if (!isSaveDisabled) {
|
|
29
|
+
map.enter = onSave;
|
|
30
|
+
}
|
|
31
|
+
if (isCancelDisabled) {
|
|
32
|
+
map.esc = onCancel;
|
|
33
|
+
}
|
|
34
|
+
return map;
|
|
35
|
+
}, [isSaveDisabled, isCancelDisabled, onSave, onCancel]);
|
|
28
36
|
const classes = classNames(styles.editableHeading, className, {
|
|
29
37
|
[styles.fullSize]: isEditing && size === Size.FULL,
|
|
30
38
|
[styles.isEditing]: isEditing,
|
|
31
39
|
[styles.error]: hasError,
|
|
32
40
|
[styles.disabled]: disabled,
|
|
33
|
-
[styles.multiline]: multiline
|
|
41
|
+
[styles.multiline]: multiline,
|
|
42
|
+
[styles.selectionMode]: isInSelectionMode
|
|
34
43
|
});
|
|
35
44
|
const headingClasses = classNames(styles.heading, headingClassName, styles[`size${size}`]);
|
|
36
45
|
const inputClasses = classNames('ring-js-shortcuts', styles.input, inputStyles[`size${size}`], styles[`level${level}`], inputClassName);
|
|
37
|
-
const
|
|
38
|
-
|
|
39
|
-
|
|
46
|
+
const onHeadingMouseDown = React.useCallback(() => {
|
|
47
|
+
setIsMouseDown(true);
|
|
48
|
+
}, []);
|
|
49
|
+
const onMouseMove = React.useCallback(() => {
|
|
50
|
+
if (!isMouseDown) {
|
|
51
|
+
return;
|
|
40
52
|
}
|
|
41
|
-
|
|
42
|
-
}, [
|
|
53
|
+
setIsInSelectionMode(true);
|
|
54
|
+
}, [isMouseDown]);
|
|
55
|
+
const onMouseUp = React.useCallback(() => {
|
|
56
|
+
if (isMouseDown && !isInSelectionMode && !disabled) {
|
|
57
|
+
onEdit();
|
|
58
|
+
}
|
|
59
|
+
setIsMouseDown(false);
|
|
60
|
+
setIsInSelectionMode(false);
|
|
61
|
+
}, [isMouseDown, isInSelectionMode, disabled, onEdit]);
|
|
43
62
|
const onInputFocus = React.useCallback((e) => {
|
|
44
63
|
setIsInFocus(true);
|
|
45
64
|
onFocus?.(e);
|
|
@@ -48,6 +67,14 @@ export const EditableHeading = (props) => {
|
|
|
48
67
|
setIsInFocus(false);
|
|
49
68
|
onBlur?.(e);
|
|
50
69
|
}, [onBlur]);
|
|
70
|
+
useEffect(() => {
|
|
71
|
+
window.addEventListener('mousemove', onMouseMove);
|
|
72
|
+
window.addEventListener('mouseup', onMouseUp);
|
|
73
|
+
return () => {
|
|
74
|
+
window.removeEventListener('mousemove', onMouseMove);
|
|
75
|
+
window.removeEventListener('mouseup', onMouseUp);
|
|
76
|
+
};
|
|
77
|
+
});
|
|
51
78
|
return (<>
|
|
52
79
|
<div className={classes}>
|
|
53
80
|
{!disabled && isEditing
|
|
@@ -56,7 +83,7 @@ export const EditableHeading = (props) => {
|
|
|
56
83
|
|
|
57
84
|
<input className={inputClasses} value={children} autoFocus={autoFocus} data-test={dataTest} disabled={isSaving} {...restProps} onFocus={onInputFocus} onBlur={onInputBlur}/>
|
|
58
85
|
</>)
|
|
59
|
-
: (<button type="button" className={styles.headingWrapperButton}
|
|
86
|
+
: (<button type="button" className={styles.headingWrapperButton} onMouseDown={onHeadingMouseDown}>
|
|
60
87
|
<Heading className={headingClasses} level={level} data-test={dataTest}>{children}</Heading>
|
|
61
88
|
</button>)}
|
|
62
89
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PureComponent, ReactElement } from 'react';
|
|
1
|
+
import React, { PureComponent, ReactElement } from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
export type ErrorBubbleProps<P> = Partial<P> & {
|
|
4
4
|
className?: string | null | undefined;
|
|
@@ -14,5 +14,5 @@ export default class ErrorBubble<P> extends PureComponent<ErrorBubbleProps<P>> {
|
|
|
14
14
|
className: PropTypes.Requireable<string>;
|
|
15
15
|
children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
16
16
|
};
|
|
17
|
-
render(): JSX.Element;
|
|
17
|
+
render(): React.JSX.Element;
|
|
18
18
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, ReactNode } from 'react';
|
|
1
|
+
import React, { Component, ReactNode } from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import { IconType } from '../icon/icon';
|
|
4
4
|
export interface ErrorMessageProps {
|
|
@@ -23,5 +23,5 @@ export default class ErrorMessage extends Component<ErrorMessageProps> {
|
|
|
23
23
|
className: PropTypes.Requireable<string>;
|
|
24
24
|
'data-test': PropTypes.Requireable<string>;
|
|
25
25
|
};
|
|
26
|
-
render(): JSX.Element;
|
|
26
|
+
render(): React.JSX.Element;
|
|
27
27
|
}
|
|
@@ -46,6 +46,7 @@ export function copyright(year) {
|
|
|
46
46
|
const FooterLine = memo(function FooterLine(props) {
|
|
47
47
|
const items = Array.isArray(props.item) ? props.item : [props.item];
|
|
48
48
|
function renderItem(item) {
|
|
49
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
49
50
|
if (isValidElement(item) || typeof item !== 'object') {
|
|
50
51
|
return item;
|
|
51
52
|
}
|
|
@@ -5,6 +5,7 @@ import angularDecorator, {APP_NAME} from '../../.storybook/angular-decorator';
|
|
|
5
5
|
import '../input/input-legacy.css';
|
|
6
6
|
import './form.css';
|
|
7
7
|
import '../input-size/input-size.css';
|
|
8
|
+
import '../error-bubble/error-bubble-legacy.css';
|
|
8
9
|
|
|
9
10
|
import ButtonNG from '../button-ng/button-ng';
|
|
10
11
|
|
|
@@ -19,8 +19,7 @@ function createAngularComponent(Component) {
|
|
|
19
19
|
bindings[key] = '<';
|
|
20
20
|
});
|
|
21
21
|
|
|
22
|
-
|
|
23
|
-
static $inject = ['$scope', '$element', '$transclude'];
|
|
22
|
+
class AngularComponent extends RingAngularComponent {
|
|
24
23
|
|
|
25
24
|
static bindings = bindings;
|
|
26
25
|
static transclude = true;
|
|
@@ -28,14 +27,19 @@ function createAngularComponent(Component) {
|
|
|
28
27
|
$postLink() {
|
|
29
28
|
const {$transclude} = this.$inject;
|
|
30
29
|
|
|
30
|
+
|
|
31
31
|
$transclude(clone => {
|
|
32
|
-
this.
|
|
32
|
+
this.container = document.createElement('div');
|
|
33
|
+
|
|
34
|
+
for (let i = 0; i < clone.length; i++) {
|
|
35
|
+
this.container.appendChild(clone[i]);
|
|
36
|
+
}
|
|
33
37
|
this.render();
|
|
34
38
|
});
|
|
35
39
|
}
|
|
36
40
|
|
|
37
41
|
$onChanges() {
|
|
38
|
-
if (!this.
|
|
42
|
+
if (!this.container) {
|
|
39
43
|
return;
|
|
40
44
|
}
|
|
41
45
|
this.render();
|
|
@@ -63,16 +67,18 @@ function createAngularComponent(Component) {
|
|
|
63
67
|
}
|
|
64
68
|
});
|
|
65
69
|
|
|
66
|
-
const hasInnerContent = this.
|
|
70
|
+
const hasInnerContent = this.container.hasChildNodes();
|
|
67
71
|
|
|
68
72
|
render(
|
|
69
73
|
<Component {...props}>
|
|
70
|
-
{hasInnerContent ? <DomRenderer nodes={this.
|
|
74
|
+
{hasInnerContent ? <DomRenderer nodes={this.container.childNodes}/> : null}
|
|
71
75
|
</Component>,
|
|
72
76
|
container
|
|
73
77
|
);
|
|
74
78
|
}
|
|
75
|
-
}
|
|
79
|
+
}
|
|
80
|
+
AngularComponent.$inject = ['$scope', '$element', '$transclude'];
|
|
81
|
+
return AngularComponent;
|
|
76
82
|
}
|
|
77
83
|
|
|
78
84
|
function angularComponentFactory(Component, name) {
|
|
@@ -4,7 +4,7 @@ import angular from 'angular';
|
|
|
4
4
|
import 'angular-mocks';
|
|
5
5
|
import React, {PureComponent} from 'react';
|
|
6
6
|
import PropTypes from 'prop-types';
|
|
7
|
-
import {Simulate} from 'react-dom/test-utils';
|
|
7
|
+
import {act, Simulate} from 'react-dom/test-utils';
|
|
8
8
|
|
|
9
9
|
import angularComponentFactory from './angular-component-factory';
|
|
10
10
|
|
|
@@ -13,7 +13,8 @@ class TestComponent extends PureComponent {
|
|
|
13
13
|
id: PropTypes.string,
|
|
14
14
|
someObj: PropTypes.object,
|
|
15
15
|
onClick: PropTypes.func,
|
|
16
|
-
className: PropTypes.string
|
|
16
|
+
className: PropTypes.string,
|
|
17
|
+
children: PropTypes.node
|
|
17
18
|
};
|
|
18
19
|
|
|
19
20
|
static defaultProps = {
|
|
@@ -23,15 +24,18 @@ class TestComponent extends PureComponent {
|
|
|
23
24
|
handleClick = () => this.props.onClick('payload');
|
|
24
25
|
|
|
25
26
|
render() {
|
|
26
|
-
const {id, someObj, className} = this.props;
|
|
27
|
+
const {id, someObj, className, children} = this.props;
|
|
27
28
|
return (
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
29
|
+
<>
|
|
30
|
+
<button
|
|
31
|
+
type="button"
|
|
32
|
+
id={id}
|
|
33
|
+
data-some-obj={someObj.foo}
|
|
34
|
+
onClick={this.handleClick}
|
|
35
|
+
className={className}
|
|
36
|
+
/>
|
|
37
|
+
{children}
|
|
38
|
+
</>
|
|
35
39
|
);
|
|
36
40
|
}
|
|
37
41
|
}
|
|
@@ -115,4 +119,20 @@ describe('angularComponentFactory', () => {
|
|
|
115
119
|
$rootScope.callback.should.have.been.called;
|
|
116
120
|
$rootScope.callback.should.have.been.calledWith('payload');
|
|
117
121
|
});
|
|
122
|
+
|
|
123
|
+
it('should support ng-if in nested content', () => {
|
|
124
|
+
let $element = null;
|
|
125
|
+
act(() => {
|
|
126
|
+
$element = $compile(`
|
|
127
|
+
<rg-test-component>
|
|
128
|
+
<span data-test="hello">HELLO</span>
|
|
129
|
+
</rg-test-component>`
|
|
130
|
+
)($rootScope);
|
|
131
|
+
});
|
|
132
|
+
|
|
133
|
+
const component = $element[0].querySelector('[data-test~=hello]');
|
|
134
|
+
$rootScope.$digest();
|
|
135
|
+
|
|
136
|
+
should.exist(component);
|
|
137
|
+
});
|
|
118
138
|
});
|
|
@@ -5,3 +5,5 @@ export declare enum ControlsHeight {
|
|
|
5
5
|
L = "L"
|
|
6
6
|
}
|
|
7
7
|
export declare const ControlsHeightContext: import("react").Context<ControlsHeight>;
|
|
8
|
+
export declare function configureGlobalControlsHeight(value: ControlsHeight): void;
|
|
9
|
+
export declare function getGlobalControlsHeight(): ControlsHeight;
|
|
@@ -6,3 +6,11 @@ export var ControlsHeight;
|
|
|
6
6
|
ControlsHeight["L"] = "L";
|
|
7
7
|
})(ControlsHeight || (ControlsHeight = {}));
|
|
8
8
|
export const ControlsHeightContext = createContext(ControlsHeight.M);
|
|
9
|
+
let globalControlsHeight = ControlsHeight.M;
|
|
10
|
+
// This can be used if React Context is not applicable, for example for alertService or Auth dialog
|
|
11
|
+
export function configureGlobalControlsHeight(value) {
|
|
12
|
+
globalControlsHeight = value;
|
|
13
|
+
}
|
|
14
|
+
export function getGlobalControlsHeight() {
|
|
15
|
+
return globalControlsHeight;
|
|
16
|
+
}
|
|
@@ -12,7 +12,7 @@ export default function createStatefulContext<T>(initialValue: T, name?: string)
|
|
|
12
12
|
ValueContext: React.Context<T>;
|
|
13
13
|
UpdateContext: React.Context<Update<T>>;
|
|
14
14
|
Provider: {
|
|
15
|
-
({ children }: ProviderProps): JSX.Element;
|
|
15
|
+
({ children }: ProviderProps): React.JSX.Element;
|
|
16
16
|
propTypes: {
|
|
17
17
|
children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
18
18
|
};
|
|
@@ -2,6 +2,7 @@ import { ComponentType, Ref } from 'react';
|
|
|
2
2
|
export interface FocusSensorOuterProps<T extends HTMLElement> {
|
|
3
3
|
focused?: boolean | undefined;
|
|
4
4
|
autofocus?: boolean | undefined;
|
|
5
|
+
scrollOnTableFocus?: boolean;
|
|
5
6
|
onFocus?: (() => void) | undefined;
|
|
6
7
|
onBlur?: (() => void) | undefined;
|
|
7
8
|
innerRef?: Ref<T> | null | undefined;
|