@jetbrains/ring-ui 5.1.1 → 6.0.2-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/babel.config.js +0 -1
- 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/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-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-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/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 +2 -11
- 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/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-size/input-size.examples.js +4 -150
- 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/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-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/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/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/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__classes.js +17 -29
- package/dist/_helpers/caption.js +31 -0
- package/dist/_helpers/card.js +100 -91
- package/dist/_helpers/date-picker.js +1 -1
- package/dist/_helpers/dialog__body-scroll-preventer.js +21 -12
- package/dist/_helpers/grid.js +1 -1
- package/dist/_helpers/header.js +1 -1
- package/dist/_helpers/icon__svg.js +73 -0
- package/dist/_helpers/input.js +228 -2
- package/dist/_helpers/island.js +1 -1
- package/dist/_helpers/list.js +1 -1
- package/dist/_helpers/query-assist__suggestions.js +92 -75
- package/dist/_helpers/select__filter.js +70 -43
- package/dist/_helpers/services-link.js +33 -21
- package/dist/_helpers/sidebar.js +87 -86
- package/dist/_helpers/tab-link.js +36 -0
- package/dist/_helpers/table.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 +165 -130
- package/dist/alert/container.js +40 -29
- package/dist/alert-service/alert-service.d.ts +2 -2
- package/dist/alert-service/alert-service.js +170 -106
- 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 +40 -10
- package/dist/auth/auth__core.d.ts +5 -4
- package/dist/auth/auth__core.js +1460 -722
- package/dist/auth/background-flow.js +125 -84
- package/dist/auth/down-notification.js +77 -37
- package/dist/auth/iframe-flow.js +130 -73
- package/dist/auth/landing.js +94 -36
- package/dist/auth/request-builder.js +79 -45
- package/dist/auth/response-parser.js +117 -85
- package/dist/auth/storage.js +323 -164
- 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 +153 -96
- package/dist/auth-dialog-service/auth-dialog-service.js +37 -12
- 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/badge/badge.d.ts +2 -2
- package/dist/badge/badge.js +34 -26
- package/dist/button/button.d.ts +3 -4
- package/dist/button/button.js +90 -71
- 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 +33 -17
- package/dist/button-group/caption.d.ts +2 -2
- package/dist/button-group/caption.js +5 -22
- package/dist/button-set/button-set.d.ts +2 -2
- package/dist/button-set/button-set.js +31 -16
- package/dist/button-toolbar/button-toolbar.d.ts +2 -2
- package/dist/button-toolbar/button-toolbar.js +30 -15
- package/dist/caret/caret.js +223 -188
- package/dist/checkbox/checkbox.d.ts +2 -2
- package/dist/checkbox/checkbox.js +86 -61
- package/dist/clipboard/clipboard-fallback.js +10 -10
- package/dist/clipboard/clipboard.js +132 -38
- package/dist/code/code.d.ts +1 -1
- package/dist/code/code.js +153 -81
- package/dist/confirm/confirm.d.ts +1 -1
- package/dist/confirm/confirm.js +86 -50
- package/dist/confirm-service/confirm-service.js +68 -47
- 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 +32 -0
- package/dist/data-list/data-list.d.ts +3 -3
- package/dist/data-list/data-list.js +166 -120
- package/dist/data-list/data-list.mock.d.ts +2 -2
- package/dist/data-list/data-list.mock.js +11 -4
- package/dist/data-list/item.d.ts +3 -3
- package/dist/data-list/item.js +141 -118
- package/dist/data-list/selection.js +139 -77
- package/dist/data-list/title.d.ts +1 -1
- package/dist/data-list/title.js +13 -3
- 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 +132 -111
- package/dist/date-picker/date-picker.d.ts +8 -6
- package/dist/date-picker/date-picker.js +215 -165
- package/dist/date-picker/date-popup.d.ts +1 -1
- package/dist/date-picker/date-popup.js +341 -301
- 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 +149 -100
- package/dist/dialog/dialog__body-scroll-preventer.js +5 -0
- package/dist/dropdown/anchor.d.ts +1 -1
- package/dist/dropdown/anchor.js +11 -3
- package/dist/dropdown/dropdown.d.ts +8 -1
- package/dist/dropdown/dropdown.js +159 -132
- package/dist/dropdown-menu/dropdown-menu.js +103 -77
- package/dist/editable-heading/editable-heading.d.ts +2 -2
- package/dist/editable-heading/editable-heading.js +134 -66
- 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 +55 -32
- package/dist/footer/footer.js +115 -8
- 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/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 +25 -14
- package/dist/header/header.d.ts +2 -2
- package/dist/header/header.js +76 -31
- package/dist/header/logo.d.ts +2 -2
- package/dist/header/logo.js +32 -14
- package/dist/header/profile.d.ts +4 -2
- package/dist/header/profile.js +155 -109
- package/dist/header/services-link.d.ts +2 -2
- package/dist/header/services-link.js +9 -2
- package/dist/header/services.d.ts +2 -2
- package/dist/header/services.js +105 -66
- package/dist/header/smart-profile.d.ts +2 -2
- package/dist/header/smart-profile.js +195 -104
- package/dist/header/smart-services.d.ts +2 -2
- package/dist/header/smart-services.js +112 -64
- package/dist/header/tray-icon.d.ts +2 -2
- package/dist/header/tray-icon.js +37 -22
- package/dist/header/tray.d.ts +2 -2
- package/dist/header/tray.js +30 -17
- package/dist/heading/heading.js +26 -27
- 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 +78 -61
- package/dist/icon/icon__svg.d.ts +1 -1
- package/dist/icon/icon__svg.js +15 -71
- package/dist/icon/index.js +10 -2
- package/dist/input/input.d.ts +7 -1
- package/dist/input/input.js +30 -197
- 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/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 +74 -63
- package/dist/list/consts.js +4 -1
- package/dist/list/list.d.ts +7 -7
- package/dist/list/list.js +500 -406
- 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 +168 -135
- package/dist/list/list__link.d.ts +2 -2
- package/dist/list/list__link.js +54 -39
- 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 +131 -58
- 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 +34 -19
- package/dist/loader-screen/loader-screen.d.ts +2 -2
- package/dist/loader-screen/loader-screen.js +45 -21
- package/dist/login-dialog/login-dialog.d.ts +2 -2
- package/dist/login-dialog/login-dialog.js +126 -81
- package/dist/login-dialog/service.js +40 -13
- 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 -8
- package/dist/markdown/markdown.d.ts +2 -2
- package/dist/markdown/markdown.js +67 -36
- package/dist/message/message.d.ts +3 -7
- package/dist/message/message.js +154 -121
- 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 +260 -197
- package/dist/panel/panel.d.ts +2 -2
- package/dist/panel/panel.js +25 -14
- package/dist/permissions/permissions.js +166 -122
- package/dist/permissions/permissions__cache.js +220 -191
- 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 +81 -46
- package/dist/progress-bar/progress-bar.d.ts +2 -2
- package/dist/progress-bar/progress-bar.js +66 -52
- package/dist/query-assist/query-assist.d.ts +3 -7
- package/dist/query-assist/query-assist.js +679 -575
- package/dist/query-assist/query-assist__suggestions.d.ts +2 -2
- package/dist/query-assist/query-assist__suggestions.js +34 -6
- package/dist/radio/radio.d.ts +1 -1
- package/dist/radio/radio.js +28 -15
- package/dist/radio/radio__item.d.ts +1 -1
- package/dist/radio/radio__item.js +62 -45
- package/dist/select/select.d.ts +20 -9
- package/dist/select/select.js +832 -706
- package/dist/select/select__filter.d.ts +2 -3
- package/dist/select/select__filter.js +38 -8
- package/dist/select/select__popup.d.ts +48 -8
- package/dist/select/select__popup.js +430 -299
- 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/storage/storage.js +35 -7
- package/dist/storage/storage__fallback.js +217 -143
- package/dist/storage/storage__local.js +156 -93
- 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 +75 -56
- package/dist/table/header.d.ts +3 -14
- package/dist/table/header.js +103 -134
- 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 +70 -27
- package/dist/table/row.d.ts +2 -1
- package/dist/table/row.js +192 -158
- 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 +88 -53
- package/dist/table/table.d.ts +6 -4
- package/dist/table/table.js +312 -250
- package/dist/tabs/collapsible-more.d.ts +3 -3
- package/dist/tabs/collapsible-more.js +91 -59
- package/dist/tabs/collapsible-tab.d.ts +1 -1
- package/dist/tabs/collapsible-tab.js +46 -42
- package/dist/tabs/collapsible-tabs.d.ts +2 -2
- package/dist/tabs/collapsible-tabs.js +167 -105
- package/dist/tabs/custom-item.js +2 -4
- package/dist/tabs/dumb-tabs.d.ts +5 -3
- package/dist/tabs/dumb-tabs.js +103 -62
- package/dist/tabs/smart-tabs.d.ts +2 -2
- package/dist/tabs/smart-tabs.js +72 -31
- package/dist/tabs/tab-link.d.ts +1 -1
- package/dist/tabs/tab-link.js +13 -35
- package/dist/tabs/tab.d.ts +2 -2
- package/dist/tabs/tab.js +26 -15
- package/dist/tabs/tabs.js +37 -7
- package/dist/tag/tag.d.ts +5 -5
- package/dist/tag/tag.js +147 -115
- package/dist/tags-input/tags-input.d.ts +9 -4
- package/dist/tags-input/tags-input.js +328 -227
- package/dist/tags-list/tags-list.d.ts +2 -2
- package/dist/tags-list/tags-list.js +62 -40
- package/dist/text/text.d.ts +8 -2
- package/dist/text/text.js +38 -17
- package/dist/toggle/toggle.d.ts +2 -2
- package/dist/toggle/toggle.js +55 -39
- package/dist/tooltip/tooltip.d.ts +1 -1
- package/dist/tooltip/tooltip.js +145 -102
- package/dist/user-agreement/service.js +411 -264
- 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 +107 -72
- package/dist/user-card/card.d.ts +22 -21
- package/dist/user-card/card.js +35 -5
- package/dist/user-card/smart-user-card-tooltip.d.ts +3 -3
- package/dist/user-card/smart-user-card-tooltip.js +138 -78
- package/dist/user-card/tooltip.d.ts +11 -6
- package/dist/user-card/tooltip.js +76 -36
- package/dist/user-card/user-card.js +35 -5
- package/package.json +86 -86
- package/components/auth-ng/auth-ng.examples.js +0 -41
- package/components/auth-ng/auth-ng.js +0 -143
- package/components/auth-ng/auth-ng.mock.js +0 -28
- package/components/autofocus-ng/autofocus-ng.examples.js +0 -41
- package/components/autofocus-ng/autofocus-ng.js +0 -51
- package/components/autofocus-ng/autofocus-ng.test.js +0 -49
- package/components/avatar-editor-ng/avatar-editor-ng.css +0 -104
- package/components/avatar-editor-ng/avatar-editor-ng.examples.js +0 -41
- package/components/avatar-editor-ng/avatar-editor-ng.js +0 -133
- package/components/avatar-editor-ng/avatar-editor-ng__template.js +0 -28
- package/components/avatar-ng/avatar-ng.examples.js +0 -33
- package/components/avatar-ng/avatar-ng.js +0 -7
- package/components/badge-ng/badge-ng.examples.js +0 -32
- package/components/badge-ng/badge-ng.js +0 -8
- package/components/breadcrumb-ng/breadcrumb-ng.examples.js +0 -33
- package/components/breadcrumb-ng/breadcrumb-ng.js +0 -60
- package/components/breadcrumb-ng/breadcrumb.css +0 -70
- package/components/button-group-ng/button-group-ng.css +0 -4
- package/components/button-group-ng/button-group-ng.examples.js +0 -30
- package/components/button-group-ng/button-group-ng.js +0 -43
- package/components/button-ng/button-ng.css +0 -23
- package/components/button-ng/button-ng.examples.js +0 -114
- package/components/button-ng/button-ng.js +0 -192
- package/components/button-ng/button-ng.test.js +0 -95
- package/components/button-set-ng/button-set-ng.examples.js +0 -30
- package/components/button-set-ng/button-set-ng.js +0 -22
- package/components/button-toolbar-ng/button-toolbar-ng.examples.js +0 -35
- package/components/button-toolbar-ng/button-toolbar-ng.js +0 -23
- package/components/checkbox-ng/checkbox-ng.examples.js +0 -80
- package/components/checkbox-ng/checkbox-ng.js +0 -64
- package/components/checkbox-ng/checkbox-ng.test.js +0 -61
- package/components/compiler-ng/compiler-ng.examples.js +0 -32
- package/components/compiler-ng/compiler-ng.js +0 -63
- package/components/compiler-ng/compiler-ng.test.js +0 -207
- package/components/confirm-ng/confirm-ng.examples.js +0 -43
- package/components/confirm-ng/confirm-ng.js +0 -30
- package/components/data-list-ng/data-list-ng.examples.js +0 -54
- package/components/data-list-ng/data-list-ng.js +0 -7
- package/components/dialog-ng/dialog-ng.css +0 -98
- package/components/dialog-ng/dialog-ng.examples.js +0 -240
- package/components/dialog-ng/dialog-ng.js +0 -607
- package/components/dialog-ng/dialog-ng.test.js +0 -829
- package/components/dialog-ng/dialog-ng__template.js +0 -70
- package/components/docked-panel-ng/docked-panel-ng.css +0 -28
- package/components/docked-panel-ng/docked-panel-ng.examples.js +0 -39
- package/components/docked-panel-ng/docked-panel-ng.js +0 -169
- package/components/error-message-ng/error-message-ng.examples.js +0 -33
- package/components/error-message-ng/error-message-ng.js +0 -50
- package/components/error-page-ng/error-page-ng.css +0 -6
- package/components/error-page-ng/error-page-ng.examples.js +0 -31
- package/components/error-page-ng/error-page-ng.js +0 -269
- package/components/error-page-ng/error-page-ng.test.js +0 -138
- package/components/footer-ng/footer-ng.examples.js +0 -35
- package/components/footer-ng/footer-ng.js +0 -61
- package/components/footer-ng/footer-ng.test.js +0 -41
- package/components/form-ng/error-bubble-ng.css +0 -7
- package/components/form-ng/form-ng.examples.js +0 -73
- package/components/form-ng/form-ng.js +0 -176
- package/components/global/angular-component-factory.js +0 -87
- package/components/global/angular-component-factory.test.js +0 -118
- package/components/global/ring-angular-component.js +0 -15
- package/components/global/ring-angular-component.test.js +0 -31
- package/components/group-ng/group-ng.js +0 -16
- package/components/group-ng/group.examples.js +0 -29
- package/components/heading-ng/heading-ng.examples.js +0 -29
- package/components/heading-ng/heading-ng.js +0 -8
- package/components/icon-ng/icon-ng.examples.js +0 -34
- package/components/icon-ng/icon-ng.js +0 -89
- package/components/input/input-label.d.ts +0 -10
- package/components/input/input-label.js +0 -18
- package/components/input-ng/input-ng.css +0 -7
- package/components/input-ng/input-ng.examples.js +0 -125
- package/components/input-ng/input-ng.js +0 -159
- package/components/input-ng/input-ng.test.js +0 -32
- package/components/island-ng/island-content-ng.js +0 -56
- package/components/island-ng/island-header-ng.js +0 -34
- package/components/island-ng/island-ng-class-fixer.js +0 -7
- package/components/island-ng/island-ng.examples.js +0 -54
- package/components/island-ng/island-ng.js +0 -35
- package/components/link-ng/link-ng.examples.js +0 -22
- package/components/link-ng/link-ng.js +0 -26
- package/components/link-ng/link-ng.test.js +0 -29
- package/components/loader-inline-ng/loader-inline-ng.examples.js +0 -28
- package/components/loader-inline-ng/loader-inline-ng.js +0 -17
- package/components/loader-inline-ng/loader-inline-ng.test.js +0 -28
- package/components/loader-ng/loader-ng.examples.js +0 -27
- package/components/loader-ng/loader-ng.js +0 -37
- package/components/loader-ng/loader-ng.test.js +0 -41
- package/components/loader-screen-ng/loader-screen-ng.examples.js +0 -30
- package/components/loader-screen-ng/loader-screen-ng.js +0 -95
- package/components/message-bundle-ng/message-bundle-ng.js +0 -67
- package/components/pager-ng/pager-ng.examples.js +0 -37
- package/components/pager-ng/pager-ng.js +0 -7
- package/components/palette/palette.examples.js +0 -63
- package/components/panel-ng/panel-ng.js +0 -20
- package/components/permissions-ng/permissions-ng.css +0 -5
- package/components/permissions-ng/permissions-ng.examples.js +0 -49
- package/components/permissions-ng/permissions-ng.js +0 -246
- package/components/permissions-ng/permissions-ng.test.js +0 -82
- package/components/place-under-ng/place-under-ng.examples.js +0 -94
- package/components/place-under-ng/place-under-ng.js +0 -190
- package/components/place-under-ng/place-under-ng.test.js +0 -182
- package/components/progress-bar-ng/progress-bar-ng.examples.js +0 -52
- package/components/progress-bar-ng/progress-bar-ng.js +0 -7
- package/components/promised-click-ng/promised-click-ng.examples.js +0 -42
- package/components/promised-click-ng/promised-click-ng.js +0 -118
- package/components/promised-click-ng/promised-click-ng.test.js +0 -166
- package/components/proxy-attrs/proxy-attrs.js +0 -24
- package/components/proxy-attrs/proxy-attrs.test.js +0 -102
- package/components/query-assist-ng/query-assist-ng.examples.js +0 -89
- package/components/query-assist-ng/query-assist-ng.js +0 -7
- package/components/radio-ng/radio-ng.examples.js +0 -31
- package/components/radio-ng/radio-ng.js +0 -61
- package/components/radio-ng/radio-ng.test.js +0 -55
- package/components/save-field-ng/save-field-ng.css +0 -13
- package/components/save-field-ng/save-field-ng.examples.js +0 -221
- package/components/save-field-ng/save-field-ng.js +0 -358
- package/components/save-field-ng/save-field-ng__template.js +0 -32
- package/components/select-ng/select-ng.examples.js +0 -483
- package/components/select-ng/select-ng.js +0 -561
- package/components/select-ng/select-ng.test.js +0 -620
- package/components/select-ng/select-ng__lazy.js +0 -83
- package/components/select-ng/select-ng__lazy.test.js +0 -81
- package/components/select-ng/select-ng__options.js +0 -147
- package/components/shortcuts-hint-ng/shortcuts-hint-ng.css +0 -116
- package/components/shortcuts-hint-ng/shortcuts-hint-ng.examples.js +0 -126
- package/components/shortcuts-hint-ng/shortcuts-hint-ng.js +0 -102
- package/components/shortcuts-hint-ng/shortcuts-hint-ng.test.js +0 -113
- package/components/shortcuts-hint-ng/shortcuts-hint-ng__template.js +0 -48
- package/components/shortcuts-ng/shortcuts-ng.js +0 -285
- package/components/sidebar-ng/sidebar-ng.examples.js +0 -94
- package/components/sidebar-ng/sidebar-ng.js +0 -100
- package/components/sidebar-ng/sidebar-ng.test.js +0 -37
- package/components/sidebar-ng/sidebar-ng__button-template.js +0 -18
- package/components/sidebar-ng/sidebar-ng__template.js +0 -10
- package/components/table-legacy-ng/table-legacy-ng.examples.js +0 -192
- package/components/table-legacy-ng/table-legacy-ng.js +0 -433
- package/components/table-legacy-ng/table-legacy-ng.test.js +0 -296
- package/components/table-legacy-ng/table-legacy-ng__pager.js +0 -32
- package/components/table-legacy-ng/table-legacy-ng__selection-navigate-actions.js +0 -105
- package/components/table-legacy-ng/table-legacy-ng__selection.js +0 -165
- package/components/table-legacy-ng/table-legacy-ng__toolbar.js +0 -58
- package/components/table-ng/smart-table-ng.js +0 -7
- package/components/table-ng/table-ng.examples.js +0 -84
- package/components/table-ng/table-ng.js +0 -7
- package/components/tabs-ng/tabs-ng.examples.js +0 -30
- package/components/tabs-ng/tabs-ng.js +0 -206
- package/components/tabs-ng/tabs-ng.test.js +0 -76
- package/components/tabs-ng/tabs-ng__template.js +0 -38
- package/components/tags-input-ng/tags-input-ng.examples.js +0 -41
- package/components/tags-input-ng/tags-input-ng.js +0 -7
- package/components/template-ng/template-ng.examples.js +0 -32
- package/components/template-ng/template-ng.js +0 -58
- package/components/template-ng/template-ng.test.js +0 -97
- package/components/title-ng/title-ng.examples.js +0 -30
- package/components/title-ng/title-ng.js +0 -120
- package/components/title-ng/title-ng.test.js +0 -47
- package/components/toggle-ng/toggle-ng.examples.js +0 -22
- package/components/toggle-ng/toggle-ng.js +0 -8
- package/components/tooltip-ng/tooltip-ng.css +0 -25
- package/components/tooltip-ng/tooltip-ng.examples.js +0 -36
- package/components/tooltip-ng/tooltip-ng.js +0 -100
- package/components/tooltip-ng/tooltip-ng.test.js +0 -69
- package/components/user-card-ng/user-card-ng.examples.js +0 -66
- package/components/user-card-ng/user-card-ng.js +0 -16
- package/dist/_helpers/button-group.js +0 -3
- package/dist/_helpers/button-set.js +0 -3
- package/dist/_helpers/button-toolbar.js +0 -3
- package/dist/_helpers/checkbox.js +0 -3
- package/dist/_helpers/error-message.js +0 -3
- package/dist/_helpers/footer.js +0 -110
- package/dist/_helpers/group.js +0 -3
- package/dist/_helpers/icon.js +0 -3
- package/dist/_helpers/link.js +0 -3
- package/dist/_helpers/loader-inline.js +0 -3
- package/dist/_helpers/loader-screen.js +0 -3
- package/dist/_helpers/panel.js +0 -3
- package/dist/_helpers/radio.js +0 -3
- package/dist/_helpers/tabs.js +0 -3
- package/dist/auth-ng/auth-ng.js +0 -198
- package/dist/auth-ng/auth-ng.mock.js +0 -29
- package/dist/autofocus-ng/autofocus-ng.js +0 -45
- package/dist/avatar-editor-ng/avatar-editor-ng.js +0 -161
- package/dist/avatar-editor-ng/avatar-editor-ng__template.js +0 -30
- package/dist/avatar-ng/avatar-ng.js +0 -19
- package/dist/badge-ng/badge-ng.js +0 -17
- package/dist/breadcrumb-ng/breadcrumb-ng.js +0 -61
- package/dist/button-group-ng/button-group-ng.js +0 -39
- package/dist/button-ng/button-ng.js +0 -180
- package/dist/button-set-ng/button-set-ng.js +0 -17
- package/dist/button-toolbar-ng/button-toolbar-ng.js +0 -21
- package/dist/checkbox-ng/checkbox-ng.js +0 -63
- package/dist/compiler-ng/compiler-ng.js +0 -48
- package/dist/confirm-ng/confirm-ng.js +0 -67
- package/dist/data-list-ng/data-list-ng.js +0 -57
- package/dist/dialog-ng/dialog-ng.js +0 -512
- package/dist/dialog-ng/dialog-ng__template.js +0 -72
- package/dist/docked-panel-ng/docked-panel-ng.js +0 -147
- package/dist/error-message-ng/error-message-ng.js +0 -53
- package/dist/footer-ng/footer-ng.js +0 -62
- package/dist/form-ng/form-ng.js +0 -148
- package/dist/global/angular-component-factory.js +0 -73
- package/dist/global/ring-angular-component.js +0 -19
- package/dist/group-ng/group-ng.js +0 -11
- package/dist/heading-ng/heading-ng.js +0 -16
- package/dist/icon-ng/icon-ng.js +0 -84
- package/dist/input/input-label.d.ts +0 -10
- package/dist/input/input-label.js +0 -27
- package/dist/input-ng/input-ng.js +0 -146
- package/dist/island-ng/island-content-ng.js +0 -53
- package/dist/island-ng/island-header-ng.js +0 -32
- package/dist/island-ng/island-ng-class-fixer.js +0 -9
- package/dist/island-ng/island-ng.js +0 -31
- package/dist/link-ng/link-ng.js +0 -23
- package/dist/loader-inline-ng/loader-inline-ng.js +0 -14
- package/dist/loader-ng/loader-ng.js +0 -36
- package/dist/loader-screen-ng/loader-screen-ng.js +0 -87
- package/dist/message-bundle-ng/message-bundle-ng.js +0 -68
- package/dist/pager-ng/pager-ng.js +0 -97
- package/dist/panel-ng/panel-ng.js +0 -16
- package/dist/permissions-ng/permissions-ng.js +0 -277
- package/dist/place-under-ng/place-under-ng.js +0 -138
- package/dist/progress-bar-ng/progress-bar-ng.js +0 -15
- package/dist/promised-click-ng/promised-click-ng.js +0 -107
- package/dist/proxy-attrs/proxy-attrs.js +0 -19
- package/dist/query-assist-ng/query-assist-ng.js +0 -83
- package/dist/radio-ng/radio-ng.js +0 -59
- package/dist/save-field-ng/save-field-ng.js +0 -291
- package/dist/save-field-ng/save-field-ng__template.js +0 -34
- package/dist/select-ng/select-ng.js +0 -577
- package/dist/select-ng/select-ng__lazy.js +0 -153
- package/dist/select-ng/select-ng__options.js +0 -119
- package/dist/shortcuts-hint-ng/shortcuts-hint-ng.js +0 -107
- package/dist/shortcuts-hint-ng/shortcuts-hint-ng__template.js +0 -50
- package/dist/shortcuts-ng/shortcuts-ng.js +0 -231
- package/dist/sidebar-ng/sidebar-ng.js +0 -101
- package/dist/sidebar-ng/sidebar-ng__button-template.js +0 -20
- package/dist/sidebar-ng/sidebar-ng__template.js +0 -12
- package/dist/table-legacy-ng/table-legacy-ng.js +0 -472
- package/dist/table-legacy-ng/table-legacy-ng__pager.js +0 -123
- package/dist/table-legacy-ng/table-legacy-ng__selection-navigate-actions.js +0 -92
- package/dist/table-legacy-ng/table-legacy-ng__selection.js +0 -147
- package/dist/table-legacy-ng/table-legacy-ng__toolbar.js +0 -53
- package/dist/table-ng/smart-table-ng.js +0 -67
- package/dist/table-ng/table-ng.js +0 -66
- package/dist/tabs-ng/tabs-ng.js +0 -172
- package/dist/tabs-ng/tabs-ng__template.js +0 -40
- package/dist/tags-input-ng/tags-input-ng.js +0 -90
- package/dist/template-ng/template-ng.js +0 -58
- package/dist/title-ng/title-ng.js +0 -103
- package/dist/toggle-ng/toggle-ng.js +0 -16
- package/dist/tooltip-ng/tooltip-ng.js +0 -96
- package/dist/user-card-ng/user-card-ng.js +0 -67
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import angular from 'angular';
|
|
2
|
-
|
|
3
|
-
import React, {cloneElement} from 'react';
|
|
4
|
-
|
|
5
|
-
import {render, hydrate} from '../global/react-render-adapter';
|
|
6
|
-
import {RerenderableSelect} from '../select/select';
|
|
7
|
-
|
|
8
|
-
class SelectLazy {
|
|
9
|
-
constructor(container, props, ctrl, type, selectRef) {
|
|
10
|
-
this.container = container;
|
|
11
|
-
this.ctrl = ctrl;
|
|
12
|
-
this.props = props || {};
|
|
13
|
-
this.type = type;
|
|
14
|
-
this.node = container;
|
|
15
|
-
this.selectInstance = null;
|
|
16
|
-
this.selectRef = node => {
|
|
17
|
-
this.selectInstance = node;
|
|
18
|
-
selectRef(node);
|
|
19
|
-
};
|
|
20
|
-
this._popup = {
|
|
21
|
-
isVisible: angular.noop
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
this.attachEvents();
|
|
25
|
-
this.render();
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
onClick = () => {
|
|
29
|
-
this._clickHandler();
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
rerender(props = {}) {
|
|
33
|
-
for (const prop in props) {
|
|
34
|
-
if (props.hasOwnProperty(prop)) {
|
|
35
|
-
if (props[prop] == this.props[prop]) { //eslint-disable-line eqeqeq
|
|
36
|
-
break;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
this.render(props);
|
|
40
|
-
return;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
attachEvents() {
|
|
46
|
-
this.container.addEventListener('click', this.onClick, {capture: true});
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
detachEvents() {
|
|
50
|
-
this.container.removeEventListener('click', this.onClick, {capture: true});
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
render(props) {
|
|
54
|
-
this.reactSelect = (
|
|
55
|
-
<RerenderableSelect
|
|
56
|
-
{...Object.assign({}, this.props, props || {})}
|
|
57
|
-
ref={this.selectRef}
|
|
58
|
-
/>
|
|
59
|
-
);
|
|
60
|
-
this.props = this.reactSelect.props;
|
|
61
|
-
|
|
62
|
-
if (this.type !== 'dropdown') {
|
|
63
|
-
const ReactDOMServer = require('react-dom/server');
|
|
64
|
-
this.container.innerHTML = ReactDOMServer.renderToString(this.reactSelect);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
_clickHandler() {
|
|
69
|
-
this.detachEvents();
|
|
70
|
-
if (this.type === 'dropdown') {
|
|
71
|
-
render(cloneElement(this.reactSelect, {
|
|
72
|
-
ref: node => {
|
|
73
|
-
this.selectRef(node);
|
|
74
|
-
node?._openPopupIfClosed?.();
|
|
75
|
-
}
|
|
76
|
-
}), this.container);
|
|
77
|
-
} else {
|
|
78
|
-
hydrate(this.reactSelect, this.container);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
export default SelectLazy;
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import SelectLazy from './select-ng__lazy';
|
|
2
|
-
|
|
3
|
-
describe('Select Lazy', () => {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
let containerNode;
|
|
7
|
-
let ctrl;
|
|
8
|
-
beforeEach(() => {
|
|
9
|
-
containerNode = document.createElement('div');
|
|
10
|
-
ctrl = {};
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
it('should create lazy select', () => {
|
|
15
|
-
const lazySelect = renderLazySelect();
|
|
16
|
-
lazySelect.should.not.be.undefined;
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
it('should render static markup', () => {
|
|
21
|
-
renderLazySelect();
|
|
22
|
-
should.exist(findSelectNode(containerNode));
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
it('should render react select on click', () => {
|
|
27
|
-
const lazySelect = renderLazySelect();
|
|
28
|
-
simulateClick(lazySelect);
|
|
29
|
-
ctrl.selectInstance.should.not.be.undefined;
|
|
30
|
-
});
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
it('should detach lazy select after render', () => {
|
|
34
|
-
const lazySelect = renderLazySelect();
|
|
35
|
-
sandbox.spy(lazySelect, '_clickHandler');
|
|
36
|
-
|
|
37
|
-
simulateClick(lazySelect);
|
|
38
|
-
simulateClick(lazySelect);
|
|
39
|
-
simulateClick(lazySelect);
|
|
40
|
-
|
|
41
|
-
lazySelect._clickHandler.should.be.calledOnce;
|
|
42
|
-
});
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
it('should not render markup for select dropdown', () => {
|
|
46
|
-
renderDropdownSelect();
|
|
47
|
-
should.not.exist(findSelectNode(containerNode));
|
|
48
|
-
});
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
it('should render select dropdown on click', () => {
|
|
52
|
-
const lazySelect = renderDropdownSelect();
|
|
53
|
-
simulateClick(lazySelect);
|
|
54
|
-
should.exist(ctrl.selectInstance);
|
|
55
|
-
});
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
function simulateClick(select) {
|
|
59
|
-
const clickEvent = new CustomEvent('click');
|
|
60
|
-
select.container.dispatchEvent(clickEvent);
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
function renderDropdownSelect() {
|
|
65
|
-
return renderLazySelect('dropdown');
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
function renderLazySelect(type = 'button') {
|
|
70
|
-
const lazySelect = new SelectLazy(containerNode, {}, ctrl, type, instance => {
|
|
71
|
-
ctrl.selectInstance = instance;
|
|
72
|
-
});
|
|
73
|
-
lazySelect.render();
|
|
74
|
-
return lazySelect;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
function findSelectNode(container) {
|
|
79
|
-
return container.querySelector('[data-test="ring-select"]');
|
|
80
|
-
}
|
|
81
|
-
});
|
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
import angular from 'angular';
|
|
2
|
-
|
|
3
|
-
import deepEqual from 'deep-equal';
|
|
4
|
-
|
|
5
|
-
class Options {
|
|
6
|
-
static OPTIONS_REGEXP = /^\s*(.*?)(?:\s+as\s+(.*?))?(?:\s+select\s+as\s+(.*?))?(?:\s+describe\sas\s+(.*?))?(?:\s+for\s+)?([$\w]+)\s+in\s+(.*?)(?:\s+track\sby\s+(.*?))?$/;
|
|
7
|
-
|
|
8
|
-
static MATCHES = {
|
|
9
|
-
ITEM: 1,
|
|
10
|
-
LABEL: 2,
|
|
11
|
-
SELECTED_LABEL: 3,
|
|
12
|
-
DESCRIPTION: 4,
|
|
13
|
-
OPTION: 5,
|
|
14
|
-
ITEMS: 6,
|
|
15
|
-
TRACK: 7
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
static defaultKeyField = 'key';
|
|
19
|
-
static defaultLabelField = 'label';
|
|
20
|
-
static defaultSelectedLabelField = 'selectedLabel';
|
|
21
|
-
static defaultDescriptionField = 'description';
|
|
22
|
-
|
|
23
|
-
constructor(scope, optionsString) {
|
|
24
|
-
this.scope = scope;
|
|
25
|
-
const $parse = this.constructor.$parse;
|
|
26
|
-
const MATCHES = this.constructor.MATCHES;
|
|
27
|
-
|
|
28
|
-
let match;
|
|
29
|
-
if (!(match = optionsString.match(this.constructor.OPTIONS_REGEXP))) {
|
|
30
|
-
throw new Error('Bad rgSelect expression format. Expected: [{item}] [[as] item.text] [select as item.selectLabel]' +
|
|
31
|
-
` [describe as {item.description}] [for] {item} in {items|dataSource(query)} [track by item.id], Received: ${optionsString}`);
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* Now we can write only `item.value as item.label for item in items`
|
|
36
|
-
* we can not skip `item.label`
|
|
37
|
-
*/
|
|
38
|
-
this.hasItemGetter = Boolean(match[MATCHES.ITEM] && match[MATCHES.LABEL]);
|
|
39
|
-
|
|
40
|
-
this.itemGetter = $parse(match[MATCHES.ITEM]);
|
|
41
|
-
this.labelGetter = (match[MATCHES.LABEL] && $parse(match[MATCHES.LABEL])) || this.itemGetter;
|
|
42
|
-
this.selectedLabelGetter =
|
|
43
|
-
match[MATCHES.SELECTED_LABEL] &&
|
|
44
|
-
$parse(match[MATCHES.SELECTED_LABEL]);
|
|
45
|
-
this.descriptionGetter = match[MATCHES.DESCRIPTION] && $parse(match[MATCHES.DESCRIPTION]);
|
|
46
|
-
this.optionVariableName = match[MATCHES.OPTION];
|
|
47
|
-
this.datasourceGetter = $parse(match[MATCHES.ITEMS]);
|
|
48
|
-
this.trackByGetter = match[MATCHES.TRACK] && $parse(match[MATCHES.TRACK]);
|
|
49
|
-
this.datasourceIsFunction = match[MATCHES.ITEMS].indexOf('(') > 0;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
getProperty(option, getter) {
|
|
53
|
-
if (getter) {
|
|
54
|
-
const locals = {};
|
|
55
|
-
locals[this.optionVariableName] = option;
|
|
56
|
-
return getter.call(this, this.scope, locals);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
return undefined;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* @param {Object} option The item from options collection
|
|
64
|
-
* @return {any} The option value
|
|
65
|
-
*/
|
|
66
|
-
getValue(option) {
|
|
67
|
-
if (!this.hasItemGetter) {
|
|
68
|
-
return option;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
const value = this.getProperty(option, this.itemGetter);
|
|
72
|
-
|
|
73
|
-
return value === undefined ? option : value;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
/**
|
|
77
|
-
* @param {any} value The option value
|
|
78
|
-
* @param {Array} options The list of options
|
|
79
|
-
* @return {Object|undefined} The option object
|
|
80
|
-
*/
|
|
81
|
-
getOptionByValue(value, options) {
|
|
82
|
-
/**
|
|
83
|
-
* @param {any} it
|
|
84
|
-
* @return {string} The string representation of the value
|
|
85
|
-
*/
|
|
86
|
-
function toString(it) {
|
|
87
|
-
return typeof it === 'object' ? JSON.stringify(it) : String(it);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
if (!this.hasItemGetter) {
|
|
91
|
-
return value;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
const matchedOptions = options.filter(option => {
|
|
95
|
-
const optionValue = this.getValue(option);
|
|
96
|
-
|
|
97
|
-
if (typeof value === 'object') {
|
|
98
|
-
return deepEqual(optionValue, value);
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
return optionValue === value;
|
|
102
|
-
});
|
|
103
|
-
|
|
104
|
-
if (matchedOptions.length > 1) {
|
|
105
|
-
throw new Error(`Error(rg-select): You can not have two options with same value(${toString(value)})`);
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
return matchedOptions[0];
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
getKey(option) {
|
|
112
|
-
return this.getProperty(option, this.trackByGetter) ||
|
|
113
|
-
option[this.constructor.defaultKeyField] ||
|
|
114
|
-
option;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
getLabel(option) {
|
|
118
|
-
const optionStringValue = typeof option === 'string' ? option : null;
|
|
119
|
-
return this.getProperty(option, this.labelGetter) ||
|
|
120
|
-
option[this.constructor.defaultLabelField] ||
|
|
121
|
-
optionStringValue;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
getSelectedLabel(option) {
|
|
125
|
-
return this.getProperty(option, this.selectedLabelGetter) ||
|
|
126
|
-
option[this.constructor.defaultSelectedLabelField];
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
getDescription(option) {
|
|
130
|
-
return this.getProperty(option, this.descriptionGetter) ||
|
|
131
|
-
option[this.constructor.defaultDescriptionField];
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
getOptions(query, skip) {
|
|
135
|
-
return this.datasourceGetter(this.scope, {query, skip});
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
const angularModule = angular.module('Ring.select.options', []);
|
|
141
|
-
|
|
142
|
-
angularModule.factory('SelectOptions', function SelectOptionsFactory($parse) {
|
|
143
|
-
Options.$parse = $parse;
|
|
144
|
-
return Options;
|
|
145
|
-
});
|
|
146
|
-
|
|
147
|
-
export default angularModule.name;
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
@import "../global/variables.css";
|
|
2
|
-
|
|
3
|
-
@value unit from "../global/global.css";
|
|
4
|
-
|
|
5
|
-
:global(.shortcuts-hint) {
|
|
6
|
-
width: 900px;
|
|
7
|
-
margin-bottom: calc(unit * 2);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
:global(.shortcuts-hint__dialog) {
|
|
11
|
-
width: auto;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
:global(.shortcuts-hint__popup-header) {
|
|
15
|
-
padding-left: unit;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
:global(.shortcuts-hint__columns) {
|
|
19
|
-
margin-top: calc(unit * 3);
|
|
20
|
-
columns: 2 auto;
|
|
21
|
-
|
|
22
|
-
line-height: 20px;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
:global(.shortcuts-hint__table) {
|
|
26
|
-
display: table;
|
|
27
|
-
|
|
28
|
-
border-spacing: 0 unit;
|
|
29
|
-
|
|
30
|
-
border-collapse: separate;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
:global(.shortcuts-hint__shortcuts-column) {
|
|
34
|
-
min-width: calc(unit * 4);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
:global(.shortcuts-hint__shortcut-block) {
|
|
38
|
-
display: table-row-group;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
:global(.shortcuts-hint__shortcut-block:not(:first-child)::before) {
|
|
42
|
-
display: block;
|
|
43
|
-
|
|
44
|
-
height: calc(unit / 2);
|
|
45
|
-
|
|
46
|
-
content: "";
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
:global(.shortcuts-hint__search-input-wrapper) {
|
|
50
|
-
position: relative;
|
|
51
|
-
|
|
52
|
-
width: calc(unit * 30);
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
:global(.shortcuts-hint__search-icon) {
|
|
56
|
-
position: absolute;
|
|
57
|
-
top: -1px;
|
|
58
|
-
right: 0;
|
|
59
|
-
|
|
60
|
-
width: calc(unit * 2);
|
|
61
|
-
height: calc(unit * 2);
|
|
62
|
-
|
|
63
|
-
padding: 3px 4px 3px 5px;
|
|
64
|
-
|
|
65
|
-
user-select: none;
|
|
66
|
-
|
|
67
|
-
color: var(--ring-disabled-color);
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
:global(.shortcuts-hint__table-row) {
|
|
71
|
-
display: table-row;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
:global(.shortcuts-hint__table-title) {
|
|
75
|
-
display: table-row;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
:global(.shortcuts-hint__shortcut-cell) {
|
|
79
|
-
display: table-cell;
|
|
80
|
-
|
|
81
|
-
max-width: calc(unit * 22);
|
|
82
|
-
padding-right: unit;
|
|
83
|
-
|
|
84
|
-
text-align: right;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
:global(.shortcuts-hint__shortcut) {
|
|
88
|
-
white-space: nowrap;
|
|
89
|
-
|
|
90
|
-
color: var(--ring-secondary-color);
|
|
91
|
-
|
|
92
|
-
font-family: monospace;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
:global(.shortcuts-hint__hint) {
|
|
96
|
-
display: table-cell;
|
|
97
|
-
|
|
98
|
-
padding-left: unit;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
:global(.shortcuts-hint__shortcuts-title) {
|
|
102
|
-
display: table-cell;
|
|
103
|
-
|
|
104
|
-
padding-left: unit;
|
|
105
|
-
|
|
106
|
-
letter-spacing: 1.5px;
|
|
107
|
-
text-transform: uppercase;
|
|
108
|
-
|
|
109
|
-
color: var(--ring-secondary-color);
|
|
110
|
-
|
|
111
|
-
font-size: 12px;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
:global(.shortcuts-hint__key-spacer) {
|
|
115
|
-
padding: 0 unit;
|
|
116
|
-
}
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
import angular from 'angular';
|
|
2
|
-
|
|
3
|
-
import angularDecorator, {APP_NAME} from '../../.storybook/angular-decorator';
|
|
4
|
-
|
|
5
|
-
import ShortcutsHintNg from './shortcuts-hint-ng';
|
|
6
|
-
|
|
7
|
-
export default {
|
|
8
|
-
title: 'Legacy Angular/ShortcutsHint Ng',
|
|
9
|
-
decorators: [angularDecorator()],
|
|
10
|
-
|
|
11
|
-
parameters: {
|
|
12
|
-
notes: 'Displays a popup listing all registered shortcuts.',
|
|
13
|
-
hermione: {captureSelector: '*[data-test~=ring-dialog-container]'}
|
|
14
|
-
}
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
export const basic = () => {
|
|
18
|
-
angular.
|
|
19
|
-
module(APP_NAME, [ShortcutsHintNg]).
|
|
20
|
-
config(shortcutsProvider => {
|
|
21
|
-
shortcutsProvider.
|
|
22
|
-
mode({
|
|
23
|
-
id: 'some-kind-shortcuts',
|
|
24
|
-
title: 'Some Action Related Shortcuts',
|
|
25
|
-
shortcuts: [
|
|
26
|
-
{
|
|
27
|
-
key: 'meta+enter+home',
|
|
28
|
-
action: 'someAction',
|
|
29
|
-
title: 'Do some action shortcut'
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
key: 'ctrl+shift+down',
|
|
33
|
-
action: 'someAction',
|
|
34
|
-
title:
|
|
35
|
-
'Another action shortcut with very very very very very very very very very very long text description'
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
key: ['ctrl+alt+e', 'shift+down+u'],
|
|
39
|
-
action: 'someAction',
|
|
40
|
-
title: 'Another action shortcut with multiple keys'
|
|
41
|
-
},
|
|
42
|
-
{
|
|
43
|
-
key: ['meta+right+left+end'],
|
|
44
|
-
action: 'fooBarAction',
|
|
45
|
-
title:
|
|
46
|
-
'Blah blah blah Blah blah blah Blah blah blah Blah blah blahBlah blah blahBlah blah blah'
|
|
47
|
-
},
|
|
48
|
-
{
|
|
49
|
-
key: ['meta+esc+del+end'],
|
|
50
|
-
action: 'someAction',
|
|
51
|
-
title: 'Blah blah'
|
|
52
|
-
},
|
|
53
|
-
{
|
|
54
|
-
key: ['ctrl+alt+e', 'shift+e+enter'],
|
|
55
|
-
action: 'someAction',
|
|
56
|
-
title: 'Fo bar cooo'
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
key: ['shift+down+u'],
|
|
60
|
-
action: 'someAction',
|
|
61
|
-
title: 'Another action shortcut with multiple keys'
|
|
62
|
-
},
|
|
63
|
-
{
|
|
64
|
-
key: ['ctrl+alt+e'],
|
|
65
|
-
action: 'someAction',
|
|
66
|
-
title:
|
|
67
|
-
'It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout.'
|
|
68
|
-
},
|
|
69
|
-
{
|
|
70
|
-
key: ['shift+down+u+]'],
|
|
71
|
-
action: 'someAction',
|
|
72
|
-
title: 'Lorem Ipsum is simply dummy text of the printing and typesetting industry'
|
|
73
|
-
},
|
|
74
|
-
{
|
|
75
|
-
key: ['ctrl+alt+right+up+down'],
|
|
76
|
-
action: 'someAction',
|
|
77
|
-
title: 'Lorem Ipsum is simply'
|
|
78
|
-
}
|
|
79
|
-
]
|
|
80
|
-
}).
|
|
81
|
-
mode({
|
|
82
|
-
id: 'some-other-shortcuts',
|
|
83
|
-
title: 'Shortcuts for other actions',
|
|
84
|
-
shortcuts: [
|
|
85
|
-
{
|
|
86
|
-
key: 'meta+=',
|
|
87
|
-
action: 'someAction',
|
|
88
|
-
title: 'Do some action shortcut'
|
|
89
|
-
},
|
|
90
|
-
{
|
|
91
|
-
key: 'alt+N',
|
|
92
|
-
action: 'someAction',
|
|
93
|
-
title: 'Another action shortcut with very very long text description'
|
|
94
|
-
},
|
|
95
|
-
{
|
|
96
|
-
key: 'shift+left+down',
|
|
97
|
-
action: 'someAction',
|
|
98
|
-
title: 'Another action shortcut'
|
|
99
|
-
}
|
|
100
|
-
]
|
|
101
|
-
});
|
|
102
|
-
}).
|
|
103
|
-
controller('testCtrl', function controller($timeout, rgShortcutsHintPopup) {
|
|
104
|
-
this.showPopup = () => {
|
|
105
|
-
rgShortcutsHintPopup.show({
|
|
106
|
-
tailTemplate: `
|
|
107
|
-
<div>
|
|
108
|
-
You can write anything here, this is a custom section.
|
|
109
|
-
You can even create your own footer.
|
|
110
|
-
</div>
|
|
111
|
-
`
|
|
112
|
-
});
|
|
113
|
-
};
|
|
114
|
-
|
|
115
|
-
$timeout(this.showPopup, 200);
|
|
116
|
-
});
|
|
117
|
-
|
|
118
|
-
return `
|
|
119
|
-
<div ng-controller="testCtrl as ctrl">
|
|
120
|
-
<button ng-click="ctrl.showPopup()">Show popup</button>
|
|
121
|
-
<rg-dialog></rg-dialog>
|
|
122
|
-
</div>
|
|
123
|
-
`;
|
|
124
|
-
};
|
|
125
|
-
|
|
126
|
-
basic.storyName = 'ShortcutsHint Ng';
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import angular from 'angular';
|
|
2
|
-
|
|
3
|
-
import searchIcon from '@jetbrains/icons/search';
|
|
4
|
-
|
|
5
|
-
import RingAngularComponent from '../global/ring-angular-component';
|
|
6
|
-
import DialogNg from '../dialog-ng/dialog-ng';
|
|
7
|
-
import ShortcutsNg from '../shortcuts-ng/shortcuts-ng';
|
|
8
|
-
import RingTemplateNg from '../template-ng/template-ng';
|
|
9
|
-
import IconNg from '../icon-ng/icon-ng';
|
|
10
|
-
import InputNg from '../input-ng/input-ng';
|
|
11
|
-
import {getShortcutTitle} from '../shortcuts/shortcut-title';
|
|
12
|
-
|
|
13
|
-
import HintPopupTpl from './shortcuts-hint-ng__template';
|
|
14
|
-
import './shortcuts-hint-ng.css';
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* @name Shortcuts Ng Hint Popup
|
|
18
|
-
*/
|
|
19
|
-
|
|
20
|
-
const angularModule = angular.module(
|
|
21
|
-
'Ring.shortcuts.hint-popup',
|
|
22
|
-
[DialogNg, ShortcutsNg, IconNg, InputNg, RingTemplateNg]
|
|
23
|
-
);
|
|
24
|
-
const getTitle = title => (typeof title === 'function' ? title() : title);
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
class HintPopupService extends RingAngularComponent {
|
|
28
|
-
static $inject = ['dialog', 'shortcuts'];
|
|
29
|
-
|
|
30
|
-
show(popupConfig = {}, shortcutModes, okButtonLabel = 'Got it', searchPlaceholder = 'Search') {
|
|
31
|
-
const {dialog, shortcuts} = this.$inject;
|
|
32
|
-
|
|
33
|
-
const modes = shortcutModes || shortcuts.getRegisteredShortcuts();
|
|
34
|
-
|
|
35
|
-
modes.forEach(mode => {
|
|
36
|
-
mode.shortcuts.forEach(shortcut => {
|
|
37
|
-
shortcut.titles = shortcut.titles || [];
|
|
38
|
-
|
|
39
|
-
if (shortcut.title && !shortcut.titles.includes(shortcut.title)) {
|
|
40
|
-
shortcut.titles.push(shortcut.title);
|
|
41
|
-
}
|
|
42
|
-
});
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
return dialog.show(Object.assign({
|
|
46
|
-
template: HintPopupTpl,
|
|
47
|
-
closeOnClick: true,
|
|
48
|
-
autoWidth: true,
|
|
49
|
-
cssClass: 'shortcuts-hint__dialog',
|
|
50
|
-
controllerAs: 'hintPopupCtrl',
|
|
51
|
-
buttons: [{
|
|
52
|
-
label: okButtonLabel,
|
|
53
|
-
default: true
|
|
54
|
-
}],
|
|
55
|
-
controller() {
|
|
56
|
-
// eslint-disable-next-line consistent-this
|
|
57
|
-
const ctrl = this;
|
|
58
|
-
|
|
59
|
-
ctrl.searchIcon = searchIcon;
|
|
60
|
-
ctrl.modes = modes;
|
|
61
|
-
ctrl.tailTemplate = popupConfig.tailTemplate;
|
|
62
|
-
ctrl.isArray = it => Array.isArray(it);
|
|
63
|
-
ctrl.searchText = '';
|
|
64
|
-
ctrl.searchPlaceholder = searchPlaceholder;
|
|
65
|
-
ctrl.getTitle = getTitle;
|
|
66
|
-
}
|
|
67
|
-
}, popupConfig));
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
function shortcutKeySymbolFilter(shortcut) {
|
|
72
|
-
return getShortcutTitle(shortcut);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
function shortcutSearchFilter(shortcuts, query = '') {
|
|
76
|
-
return (shortcuts || []).filter(shortcut => {
|
|
77
|
-
const key = shortcut.key.join ? shortcut.key.join(' ') : shortcut.key;
|
|
78
|
-
const keysPresentation = shortcutKeySymbolFilter(key);
|
|
79
|
-
|
|
80
|
-
if (!shortcut.titles.length) {
|
|
81
|
-
return false;
|
|
82
|
-
} else {
|
|
83
|
-
const keyMatches = key.toLowerCase().indexOf(query.toLowerCase()) !== -1;
|
|
84
|
-
const titleMatches = shortcut.titles.
|
|
85
|
-
map(getTitle).
|
|
86
|
-
join(' ').
|
|
87
|
-
toLowerCase().
|
|
88
|
-
indexOf(query.toLowerCase()) !== -1;
|
|
89
|
-
const presentationMatches = keysPresentation.
|
|
90
|
-
toLowerCase().
|
|
91
|
-
indexOf(query.toLowerCase()) !== -1;
|
|
92
|
-
|
|
93
|
-
return keyMatches || titleMatches || presentationMatches;
|
|
94
|
-
}
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
angularModule.service('rgShortcutsHintPopup', HintPopupService);
|
|
99
|
-
angularModule.filter('shortcutKeySymbol', () => shortcutKeySymbolFilter);
|
|
100
|
-
angularModule.filter('shortcutSearch', () => shortcutSearchFilter);
|
|
101
|
-
|
|
102
|
-
export default angularModule.name;
|