@jetbrains/ring-ui-built 6.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.txt +202 -0
- package/README.md +103 -0
- package/components/_helpers/_rollupPluginBabelHelpers.js +648 -0
- package/components/_helpers/anchor.js +31 -0
- package/components/_helpers/badge.js +3 -0
- package/components/_helpers/button__classes.js +34 -0
- package/components/_helpers/caption.js +31 -0
- package/components/_helpers/card.js +132 -0
- package/components/_helpers/date-picker.js +3 -0
- package/components/_helpers/dialog__body-scroll-preventer.js +54 -0
- package/components/_helpers/grid.js +3 -0
- package/components/_helpers/header.js +3 -0
- package/components/_helpers/heading.js +3 -0
- package/components/_helpers/icon__svg.js +75 -0
- package/components/_helpers/input.js +235 -0
- package/components/_helpers/island.js +3 -0
- package/components/_helpers/link.js +3 -0
- package/components/_helpers/list.js +3 -0
- package/components/_helpers/query-assist__suggestions.js +102 -0
- package/components/_helpers/select__filter.js +94 -0
- package/components/_helpers/services-link.js +48 -0
- package/components/_helpers/sidebar.js +123 -0
- package/components/_helpers/tab-link.js +34 -0
- package/components/_helpers/table.js +3 -0
- package/components/_helpers/theme.js +95 -0
- package/components/_helpers/title.js +103 -0
- package/components/alert/alert.d.ts +113 -0
- package/components/alert/alert.js +294 -0
- package/components/alert/container.d.ts +15 -0
- package/components/alert/container.js +52 -0
- package/components/alert-service/alert-service.d.ts +36 -0
- package/components/alert-service/alert-service.js +220 -0
- package/components/analytics/analytics.d.ts +18 -0
- package/components/analytics/analytics.js +31 -0
- package/components/analytics/analytics__custom-plugin.d.ts +28 -0
- package/components/analytics/analytics__custom-plugin.js +89 -0
- package/components/auth/auth.d.ts +3 -0
- package/components/auth/auth.js +133 -0
- package/components/auth/auth__core.d.ts +236 -0
- package/components/auth/auth__core.js +1653 -0
- package/components/auth/background-flow.d.ts +31 -0
- package/components/auth/background-flow.js +147 -0
- package/components/auth/down-notification.d.ts +15 -0
- package/components/auth/down-notification.js +157 -0
- package/components/auth/iframe-flow.d.ts +20 -0
- package/components/auth/iframe-flow.js +196 -0
- package/components/auth/request-builder.d.ts +48 -0
- package/components/auth/request-builder.js +104 -0
- package/components/auth/response-parser.d.ts +70 -0
- package/components/auth/response-parser.js +138 -0
- package/components/auth/storage.d.ts +112 -0
- package/components/auth/storage.js +429 -0
- package/components/auth/token-validator.d.ts +93 -0
- package/components/auth/token-validator.js +269 -0
- package/components/auth/window-flow.d.ts +26 -0
- package/components/auth/window-flow.js +154 -0
- package/components/auth-dialog/auth-dialog.d.ts +60 -0
- package/components/auth-dialog/auth-dialog.js +221 -0
- package/components/auth-dialog-service/auth-dialog-service.d.ts +6 -0
- package/components/auth-dialog-service/auth-dialog-service.js +92 -0
- package/components/avatar/avatar-example-datauri.d.ts +1 -0
- package/components/avatar/avatar-example-datauri.js +4 -0
- package/components/avatar/avatar.d.ts +52 -0
- package/components/avatar/avatar.js +183 -0
- package/components/avatar/fallback-avatar.d.ts +17 -0
- package/components/avatar/fallback-avatar.js +151 -0
- package/components/badge/badge.d.ts +24 -0
- package/components/badge/badge.js +59 -0
- package/components/button/button.d.ts +67 -0
- package/components/button/button.js +131 -0
- package/components/button/button__classes.d.ts +2 -0
- package/components/button/button__classes.js +2 -0
- package/components/button-group/button-group.d.ts +18 -0
- package/components/button-group/button-group.js +48 -0
- package/components/button-group/caption.d.ts +8 -0
- package/components/button-group/caption.js +5 -0
- package/components/button-set/button-set.d.ts +16 -0
- package/components/button-set/button-set.js +47 -0
- package/components/button-toolbar/button-toolbar.d.ts +16 -0
- package/components/button-toolbar/button-toolbar.js +46 -0
- package/components/caret/caret.d.ts +66 -0
- package/components/caret/caret.js +259 -0
- package/components/checkbox/checkbox.d.ts +45 -0
- package/components/checkbox/checkbox.js +130 -0
- package/components/clipboard/clipboard-fallback.d.ts +2 -0
- package/components/clipboard/clipboard-fallback.js +42 -0
- package/components/clipboard/clipboard.d.ts +5 -0
- package/components/clipboard/clipboard.js +185 -0
- package/components/code/code.d.ts +44 -0
- package/components/code/code.js +191 -0
- package/components/confirm/confirm.d.ts +48 -0
- package/components/confirm/confirm.js +153 -0
- package/components/confirm-service/confirm-service.d.ts +21 -0
- package/components/confirm-service/confirm-service.js +141 -0
- package/components/content-layout/content-layout.d.ts +26 -0
- package/components/content-layout/content-layout.js +79 -0
- package/components/content-layout/sidebar.d.ts +31 -0
- package/components/content-layout/sidebar.js +7 -0
- package/components/contenteditable/contenteditable.d.ts +47 -0
- package/components/contenteditable/contenteditable.js +84 -0
- package/components/control-label/control-label.d.ts +11 -0
- package/components/control-label/control-label.js +36 -0
- package/components/data-list/data-list.d.ts +85 -0
- package/components/data-list/data-list.js +251 -0
- package/components/data-list/data-list.mock.d.ts +16 -0
- package/components/data-list/data-list.mock.js +192 -0
- package/components/data-list/item.d.ts +50 -0
- package/components/data-list/item.js +235 -0
- package/components/data-list/selection.d.ts +16 -0
- package/components/data-list/selection.js +148 -0
- package/components/data-list/title.d.ts +26 -0
- package/components/data-list/title.js +28 -0
- package/components/date-picker/consts.d.ts +98 -0
- package/components/date-picker/consts.js +46 -0
- package/components/date-picker/date-input.d.ts +47 -0
- package/components/date-picker/date-input.js +177 -0
- package/components/date-picker/date-picker.d.ts +77 -0
- package/components/date-picker/date-picker.js +404 -0
- package/components/date-picker/date-popup.d.ts +55 -0
- package/components/date-picker/date-popup.js +488 -0
- package/components/date-picker/day.d.ts +30 -0
- package/components/date-picker/day.js +133 -0
- package/components/date-picker/formats.d.ts +2 -0
- package/components/date-picker/formats.js +3 -0
- package/components/date-picker/month-names.d.ts +13 -0
- package/components/date-picker/month-names.js +110 -0
- package/components/date-picker/month-slider.d.ts +29 -0
- package/components/date-picker/month-slider.js +93 -0
- package/components/date-picker/month.d.ts +14 -0
- package/components/date-picker/month.js +58 -0
- package/components/date-picker/months.d.ts +11 -0
- package/components/date-picker/months.js +133 -0
- package/components/date-picker/weekdays.d.ts +13 -0
- package/components/date-picker/weekdays.js +39 -0
- package/components/date-picker/years.d.ts +25 -0
- package/components/date-picker/years.js +134 -0
- package/components/dialog/dialog.d.ts +64 -0
- package/components/dialog/dialog.js +240 -0
- package/components/dialog/dialog__body-scroll-preventer.d.ts +9 -0
- package/components/dialog/dialog__body-scroll-preventer.js +6 -0
- package/components/dropdown/anchor.d.ts +11 -0
- package/components/dropdown/anchor.js +24 -0
- package/components/dropdown/dropdown.d.ts +87 -0
- package/components/dropdown/dropdown.js +247 -0
- package/components/dropdown-menu/dropdown-menu.d.ts +36 -0
- package/components/dropdown-menu/dropdown-menu.js +199 -0
- package/components/editable-heading/editable-heading.d.ts +32 -0
- package/components/editable-heading/editable-heading.js +276 -0
- package/components/error-bubble/error-bubble.d.ts +18 -0
- package/components/error-bubble/error-bubble.js +88 -0
- package/components/error-message/error-message.d.ts +27 -0
- package/components/error-message/error-message.js +78 -0
- package/components/footer/footer.d.ts +28 -0
- package/components/footer/footer.js +118 -0
- package/components/global/compose.d.ts +7 -0
- package/components/global/compose.js +17 -0
- package/components/global/composeRefs.d.ts +3 -0
- package/components/global/composeRefs.js +19 -0
- package/components/global/controls-height.d.ts +9 -0
- package/components/global/controls-height.js +19 -0
- package/components/global/create-stateful-context.d.ts +27 -0
- package/components/global/create-stateful-context.js +49 -0
- package/components/global/data-tests.d.ts +3 -0
- package/components/global/data-tests.js +30 -0
- package/components/global/dom.d.ts +37 -0
- package/components/global/dom.js +151 -0
- package/components/global/focus-sensor-hoc.d.ts +19 -0
- package/components/global/focus-sensor-hoc.js +165 -0
- package/components/global/fuzzy-highlight.d.ts +11 -0
- package/components/global/fuzzy-highlight.js +90 -0
- package/components/global/get-event-key.d.ts +2 -0
- package/components/global/get-event-key.js +101 -0
- package/components/global/get-uid.d.ts +1 -0
- package/components/global/get-uid.js +22 -0
- package/components/global/inject-styles.d.ts +3 -0
- package/components/global/inject-styles.js +22 -0
- package/components/global/linear-function.d.ts +6 -0
- package/components/global/linear-function.js +15 -0
- package/components/global/listeners.d.ts +8 -0
- package/components/global/listeners.js +58 -0
- package/components/global/memoize.d.ts +1 -0
- package/components/global/memoize.js +23 -0
- package/components/global/normalize-indent.d.ts +1 -0
- package/components/global/normalize-indent.js +60 -0
- package/components/global/promise-with-timeout.d.ts +5 -0
- package/components/global/promise-with-timeout.js +19 -0
- package/components/global/prop-types.d.ts +4 -0
- package/components/global/prop-types.js +9 -0
- package/components/global/react-dom-renderer.d.ts +16 -0
- package/components/global/react-dom-renderer.js +54 -0
- package/components/global/react-render-adapter.d.ts +1 -0
- package/components/global/react-render-adapter.js +6 -0
- package/components/global/rerender-hoc.d.ts +10 -0
- package/components/global/rerender-hoc.js +46 -0
- package/components/global/schedule-raf.d.ts +1 -0
- package/components/global/schedule-raf.js +28 -0
- package/components/global/sniffer.d.ts +3 -0
- package/components/global/sniffer.js +6 -0
- package/components/global/theme.d.ts +21 -0
- package/components/global/theme.js +42 -0
- package/components/global/trivial-template-tag.d.ts +1 -0
- package/components/global/trivial-template-tag.js +21 -0
- package/components/global/typescript-utils.d.ts +2 -0
- package/components/global/typescript-utils.js +8 -0
- package/components/global/url.d.ts +57 -0
- package/components/global/url.js +142 -0
- package/components/global/use-event-callback.d.ts +1 -0
- package/components/global/use-event-callback.js +17 -0
- package/components/global/variables.d.ts +89 -0
- package/components/global/variables.js +1 -0
- package/components/grid/col.d.ts +31 -0
- package/components/grid/col.js +80 -0
- package/components/grid/grid.d.ts +14 -0
- package/components/grid/grid.js +46 -0
- package/components/grid/row.d.ts +40 -0
- package/components/grid/row.js +75 -0
- package/components/group/group.d.ts +12 -0
- package/components/group/group.js +39 -0
- package/components/header/header.d.ts +34 -0
- package/components/header/header.js +189 -0
- package/components/header/logo.d.ts +14 -0
- package/components/header/logo.js +51 -0
- package/components/header/profile.d.ts +75 -0
- package/components/header/profile.js +258 -0
- package/components/header/services-link.d.ts +25 -0
- package/components/header/services-link.js +13 -0
- package/components/header/services.d.ts +33 -0
- package/components/header/services.js +174 -0
- package/components/header/smart-profile.d.ts +36 -0
- package/components/header/smart-profile.js +303 -0
- package/components/header/smart-services.d.ts +26 -0
- package/components/header/smart-services.js +192 -0
- package/components/header/tray-icon.d.ts +32 -0
- package/components/header/tray-icon.js +57 -0
- package/components/header/tray.d.ts +9 -0
- package/components/header/tray.js +41 -0
- package/components/heading/heading.d.ts +25 -0
- package/components/heading/heading.js +69 -0
- package/components/http/http.d.ts +61 -0
- package/components/http/http.js +386 -0
- package/components/http/http.mock.d.ts +20 -0
- package/components/http/http.mock.js +113 -0
- package/components/hub-source/hub-source.d.ts +44 -0
- package/components/hub-source/hub-source.js +217 -0
- package/components/hub-source/hub-source__user.d.ts +4 -0
- package/components/hub-source/hub-source__user.js +60 -0
- package/components/hub-source/hub-source__users-groups.d.ts +24 -0
- package/components/hub-source/hub-source__users-groups.js +86 -0
- package/components/i18n/i18n-context.d.ts +13 -0
- package/components/i18n/i18n-context.js +27 -0
- package/components/i18n/i18n.d.ts +59 -0
- package/components/i18n/i18n.js +139 -0
- package/components/icon/icon.d.ts +43 -0
- package/components/icon/icon.js +109 -0
- package/components/icon/icon__constants.d.ts +30 -0
- package/components/icon/icon__constants.js +34 -0
- package/components/icon/icon__svg.d.ts +15 -0
- package/components/icon/icon__svg.js +14 -0
- package/components/icon/index.d.ts +2 -0
- package/components/icon/index.js +17 -0
- package/components/input/input.d.ts +77 -0
- package/components/input/input.js +35 -0
- package/components/island/adaptive-island-hoc.d.ts +61 -0
- package/components/island/adaptive-island-hoc.js +53 -0
- package/components/island/content.d.ts +43 -0
- package/components/island/content.js +151 -0
- package/components/island/header.d.ts +8 -0
- package/components/island/header.js +100 -0
- package/components/island/island.d.ts +78 -0
- package/components/island/island.js +60 -0
- package/components/island-legacy/content-legacy.d.ts +10 -0
- package/components/island-legacy/content-legacy.js +34 -0
- package/components/island-legacy/header-legacy.d.ts +10 -0
- package/components/island-legacy/header-legacy.js +36 -0
- package/components/island-legacy/island-legacy.d.ts +12 -0
- package/components/island-legacy/island-legacy.js +36 -0
- package/components/link/clickableLink.d.ts +20 -0
- package/components/link/clickableLink.js +69 -0
- package/components/link/link.d.ts +138 -0
- package/components/link/link.js +86 -0
- package/components/list/consts.d.ts +77 -0
- package/components/list/consts.js +27 -0
- package/components/list/list.d.ts +205 -0
- package/components/list/list.js +802 -0
- package/components/list/list__custom.d.ts +6 -0
- package/components/list/list__custom.js +92 -0
- package/components/list/list__hint.d.ts +15 -0
- package/components/list/list__hint.js +33 -0
- package/components/list/list__item.d.ts +8 -0
- package/components/list/list__item.js +237 -0
- package/components/list/list__link.d.ts +9 -0
- package/components/list/list__link.js +76 -0
- package/components/list/list__separator.d.ts +5 -0
- package/components/list/list__separator.js +39 -0
- package/components/list/list__title.d.ts +5 -0
- package/components/list/list__title.js +48 -0
- package/components/list/list__users-groups-source.d.ts +27 -0
- package/components/list/list__users-groups-source.js +195 -0
- package/components/loader/loader.d.ts +28 -0
- package/components/loader/loader.js +93 -0
- package/components/loader/loader__core.d.ts +75 -0
- package/components/loader/loader__core.js +327 -0
- package/components/loader-inline/loader-inline.d.ts +18 -0
- package/components/loader-inline/loader-inline.js +50 -0
- package/components/loader-screen/loader-screen.d.ts +17 -0
- package/components/loader-screen/loader-screen.js +64 -0
- package/components/login-dialog/login-dialog.d.ts +47 -0
- package/components/login-dialog/login-dialog.js +216 -0
- package/components/login-dialog/service.d.ts +2 -0
- package/components/login-dialog/service.js +98 -0
- package/components/markdown/markdown.d.ts +12 -0
- package/components/markdown/markdown.js +43 -0
- package/components/message/message.d.ts +55 -0
- package/components/message/message.js +267 -0
- package/components/old-browsers-message/old-browsers-message.d.ts +2 -0
- package/components/old-browsers-message/old-browsers-message.js +92 -0
- package/components/old-browsers-message/old-browsers-message__stop.d.ts +1 -0
- package/components/old-browsers-message/old-browsers-message__stop.js +11 -0
- package/components/old-browsers-message/white-list.d.ts +2 -0
- package/components/old-browsers-message/white-list.js +37 -0
- package/components/pager/pager.d.ts +78 -0
- package/components/pager/pager.js +390 -0
- package/components/panel/panel.d.ts +12 -0
- package/components/panel/panel.js +39 -0
- package/components/permissions/permissions.d.ts +111 -0
- package/components/permissions/permissions.js +221 -0
- package/components/permissions/permissions__cache.d.ts +93 -0
- package/components/permissions/permissions__cache.js +257 -0
- package/components/popup/popup.consts.d.ts +37 -0
- package/components/popup/popup.consts.js +44 -0
- package/components/popup/popup.d.ts +147 -0
- package/components/popup/popup.js +424 -0
- package/components/popup/popup.target.d.ts +7 -0
- package/components/popup/popup.target.js +24 -0
- package/components/popup/position.d.ts +30 -0
- package/components/popup/position.js +271 -0
- package/components/popup-menu/popup-menu.d.ts +80 -0
- package/components/popup-menu/popup-menu.js +141 -0
- package/components/progress-bar/progress-bar.d.ts +64 -0
- package/components/progress-bar/progress-bar.js +120 -0
- package/components/query-assist/query-assist.d.ts +306 -0
- package/components/query-assist/query-assist.js +1098 -0
- package/components/query-assist/query-assist__suggestions.d.ts +29 -0
- package/components/query-assist/query-assist__suggestions.js +75 -0
- package/components/radio/radio.d.ts +18 -0
- package/components/radio/radio.js +48 -0
- package/components/radio/radio__item.d.ts +28 -0
- package/components/radio/radio__item.js +88 -0
- package/components/select/select.d.ts +276 -0
- package/components/select/select.js +1310 -0
- package/components/select/select__filter.d.ts +19 -0
- package/components/select/select__filter.js +85 -0
- package/components/select/select__popup.d.ts +166 -0
- package/components/select/select__popup.js +631 -0
- package/components/shortcuts/core.d.ts +74 -0
- package/components/shortcuts/core.js +249 -0
- package/components/shortcuts/shortcut-title.d.ts +1 -0
- package/components/shortcuts/shortcut-title.js +56 -0
- package/components/shortcuts/shortcuts-hoc.d.ts +65 -0
- package/components/shortcuts/shortcuts-hoc.js +61 -0
- package/components/shortcuts/shortcuts.d.ts +28 -0
- package/components/shortcuts/shortcuts.js +92 -0
- package/components/storage/storage.d.ts +18 -0
- package/components/storage/storage.js +92 -0
- package/components/storage/storage__fallback.d.ts +79 -0
- package/components/storage/storage__fallback.js +254 -0
- package/components/storage/storage__local.d.ts +38 -0
- package/components/storage/storage__local.js +217 -0
- package/components/style.css +1 -0
- package/components/tab-trap/tab-trap.d.ts +43 -0
- package/components/tab-trap/tab-trap.js +180 -0
- package/components/table/cell.d.ts +13 -0
- package/components/table/cell.js +37 -0
- package/components/table/disable-hover-hoc.d.ts +64 -0
- package/components/table/disable-hover-hoc.js +62 -0
- package/components/table/header-cell.d.ts +43 -0
- package/components/table/header-cell.js +109 -0
- package/components/table/header.d.ts +56 -0
- package/components/table/header.js +151 -0
- package/components/table/multitable.d.ts +25 -0
- package/components/table/multitable.js +140 -0
- package/components/table/row-with-focus-sensor.d.ts +18 -0
- package/components/table/row-with-focus-sensor.js +117 -0
- package/components/table/row.d.ts +59 -0
- package/components/table/row.js +299 -0
- package/components/table/selection-adapter.d.ts +5 -0
- package/components/table/selection-adapter.js +14 -0
- package/components/table/selection-shortcuts-hoc.d.ts +17 -0
- package/components/table/selection-shortcuts-hoc.js +205 -0
- package/components/table/selection.d.ts +47 -0
- package/components/table/selection.js +257 -0
- package/components/table/smart-table.d.ts +64 -0
- package/components/table/smart-table.js +149 -0
- package/components/table/table.d.ts +159 -0
- package/components/table/table.js +463 -0
- package/components/tabs/collapsible-more.d.ts +29 -0
- package/components/tabs/collapsible-more.js +222 -0
- package/components/tabs/collapsible-tab.d.ts +16 -0
- package/components/tabs/collapsible-tab.js +88 -0
- package/components/tabs/collapsible-tabs.d.ts +43 -0
- package/components/tabs/collapsible-tabs.js +354 -0
- package/components/tabs/custom-item.d.ts +9 -0
- package/components/tabs/custom-item.js +11 -0
- package/components/tabs/dumb-tabs.d.ts +35 -0
- package/components/tabs/dumb-tabs.js +189 -0
- package/components/tabs/smart-tabs.d.ts +20 -0
- package/components/tabs/smart-tabs.js +141 -0
- package/components/tabs/tab-link.d.ts +18 -0
- package/components/tabs/tab-link.js +13 -0
- package/components/tabs/tab.d.ts +27 -0
- package/components/tabs/tab.js +41 -0
- package/components/tabs/tabs.d.ts +7 -0
- package/components/tabs/tabs.js +99 -0
- package/components/tag/tag.d.ts +64 -0
- package/components/tag/tag.js +213 -0
- package/components/tags-input/tags-input.d.ts +138 -0
- package/components/tags-input/tags-input.js +534 -0
- package/components/tags-list/tags-list.d.ts +46 -0
- package/components/tags-list/tags-list.js +102 -0
- package/components/text/text.d.ts +23 -0
- package/components/text/text.js +57 -0
- package/components/toggle/toggle.d.ts +39 -0
- package/components/toggle/toggle.js +86 -0
- package/components/tooltip/tooltip.d.ts +65 -0
- package/components/tooltip/tooltip.js +229 -0
- package/components/user-agreement/service.d.ts +69 -0
- package/components/user-agreement/service.js +487 -0
- package/components/user-agreement/toolbox.eula.d.ts +2 -0
- package/components/user-agreement/toolbox.eula.js +3 -0
- package/components/user-agreement/user-agreement.d.ts +60 -0
- package/components/user-agreement/user-agreement.js +172 -0
- package/components/user-card/card.d.ts +70 -0
- package/components/user-card/card.js +80 -0
- package/components/user-card/smart-user-card-tooltip.d.ts +20 -0
- package/components/user-card/smart-user-card-tooltip.js +172 -0
- package/components/user-card/tooltip.d.ts +36 -0
- package/components/user-card/tooltip.js +144 -0
- package/components/user-card/user-card.d.ts +11 -0
- package/components/user-card/user-card.js +85 -0
- package/package.json +118 -0
- package/typings.d.ts +43 -0
@@ -0,0 +1,221 @@
|
|
1
|
+
import { _ as _defineProperty, d as _createClass, c as _classCallCheck } from '../_helpers/_rollupPluginBabelHelpers.js';
|
2
|
+
import 'core-js/modules/es.object.to-string.js';
|
3
|
+
import 'core-js/modules/es.promise.js';
|
4
|
+
import 'core-js/modules/es.array.index-of.js';
|
5
|
+
import 'core-js/modules/es.array.map.js';
|
6
|
+
import PermissionCache from './permissions__cache.js';
|
7
|
+
import 'core-js/modules/es.array.reduce.js';
|
8
|
+
|
9
|
+
/**
|
10
|
+
* <code>
|
11
|
+
* const permissions = new Permissions(auth, {prefix: 'jetbrains.jetpass.', services: [auth.serviceId]})
|
12
|
+
* permissions.load().then(function (p) {
|
13
|
+
* const canReadUser = p.has('read-user');
|
14
|
+
* ...
|
15
|
+
* });
|
16
|
+
*
|
17
|
+
* permissions.check('read-user').then(function(canReadUser) {
|
18
|
+
* ...
|
19
|
+
* });
|
20
|
+
* </code>
|
21
|
+
*
|
22
|
+
* @param {Auth} auth instance of well configured Auth object
|
23
|
+
* @param {{
|
24
|
+
* prefix: string?,
|
25
|
+
* namesConverter: function?
|
26
|
+
* serviceId: string?
|
27
|
+
* }=} config permissions loaded configuration.
|
28
|
+
* <code>prefix</code> if provided then this prefix is removed from the permissions names.
|
29
|
+
* <code>namesConverter</code> if provided it maps permission names used on server-side to client-side permission names. It is used only if prefix is undefined.
|
30
|
+
* <code>serviceId</code> if provided then permissions only for the service are loaded.
|
31
|
+
* @constructor
|
32
|
+
*/
|
33
|
+
var Permissions = /*#__PURE__*/function () {
|
34
|
+
function Permissions(auth) {
|
35
|
+
var _this = this;
|
36
|
+
var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
37
|
+
_classCallCheck(this, Permissions);
|
38
|
+
_defineProperty(this, "query", void 0);
|
39
|
+
_defineProperty(this, "namesConverter", void 0);
|
40
|
+
_defineProperty(this, "_auth", void 0);
|
41
|
+
_defineProperty(this, "_datasource", void 0);
|
42
|
+
_defineProperty(this, "_promise", void 0);
|
43
|
+
_defineProperty(this, "_subscribed", void 0);
|
44
|
+
_defineProperty(this, "_permissionCache", void 0);
|
45
|
+
_defineProperty(this, "_defaultDatasource", function (query) {
|
46
|
+
return _this._auth.http.get(Permissions.API_PERMISSION_CACHE_PATH, {
|
47
|
+
query: {
|
48
|
+
fields: 'permission/key,global,projects(id)',
|
49
|
+
query
|
50
|
+
}
|
51
|
+
});
|
52
|
+
});
|
53
|
+
this.query = Permissions.getPermissionQuery(config.services);
|
54
|
+
this.namesConverter = config.prefix ? Permissions.getDefaultNamesConverter(config.prefix) : config.namesConverter;
|
55
|
+
if (!auth) {
|
56
|
+
throw new Error('Parameter auth is required');
|
57
|
+
}
|
58
|
+
this._auth = auth;
|
59
|
+
this._datasource = config.datasource || this._defaultDatasource;
|
60
|
+
this._promise = null;
|
61
|
+
this._subscribed = false;
|
62
|
+
this._permissionCache = new PermissionCache(null, this.namesConverter);
|
63
|
+
}
|
64
|
+
_createClass(Permissions, [{
|
65
|
+
key: "set",
|
66
|
+
value: function set(cachedPermissions) {
|
67
|
+
this._permissionCache.set(cachedPermissions);
|
68
|
+
this._setCache(Promise.resolve(this._permissionCache));
|
69
|
+
return this._permissionCache;
|
70
|
+
}
|
71
|
+
}, {
|
72
|
+
key: "get",
|
73
|
+
value: function get() {
|
74
|
+
return this._permissionCache.get();
|
75
|
+
}
|
76
|
+
}, {
|
77
|
+
key: "_setCache",
|
78
|
+
value: function _setCache(value) {
|
79
|
+
this._promise = value;
|
80
|
+
}
|
81
|
+
}, {
|
82
|
+
key: "_getCache",
|
83
|
+
value: function _getCache() {
|
84
|
+
return this._promise;
|
85
|
+
}
|
86
|
+
}, {
|
87
|
+
key: "_resetCache",
|
88
|
+
value: function _resetCache() {
|
89
|
+
this._setCache(null);
|
90
|
+
}
|
91
|
+
/**
|
92
|
+
* Loads logged-in user permissions.
|
93
|
+
* @param {object?} options
|
94
|
+
* @return {Promise.<Permissions>} promise that is resolved when the permissions are loaded
|
95
|
+
*/
|
96
|
+
}, {
|
97
|
+
key: "load",
|
98
|
+
value: function load(options) {
|
99
|
+
var _this2 = this;
|
100
|
+
if (this._subscribed === false) {
|
101
|
+
this._auth.addListener('userChange', function () {
|
102
|
+
_this2.reload();
|
103
|
+
});
|
104
|
+
this._subscribed = true;
|
105
|
+
}
|
106
|
+
var cache = this._getCache();
|
107
|
+
if (!hasCacheControl('NO_CACHE', options) && cache) {
|
108
|
+
return cache;
|
109
|
+
}
|
110
|
+
if (hasCacheControl('NO_STORE', options)) {
|
111
|
+
return this._loadPermissions().then(function (cachedPermissions) {
|
112
|
+
return new PermissionCache(cachedPermissions, _this2.namesConverter);
|
113
|
+
});
|
114
|
+
}
|
115
|
+
var permissions = this._loadPermissions().then(function (cachedPermissions) {
|
116
|
+
return _this2.set(cachedPermissions);
|
117
|
+
});
|
118
|
+
this._setCache(permissions);
|
119
|
+
return permissions;
|
120
|
+
function hasCacheControl(value, _options) {
|
121
|
+
if (_options && _options.cacheControl) {
|
122
|
+
return _options.cacheControl[value];
|
123
|
+
}
|
124
|
+
return false;
|
125
|
+
}
|
126
|
+
}
|
127
|
+
}, {
|
128
|
+
key: "_loadPermissions",
|
129
|
+
value: function _loadPermissions() {
|
130
|
+
return this._datasource(this.query);
|
131
|
+
}
|
132
|
+
/**
|
133
|
+
* Reloads permission cache from server
|
134
|
+
* @returns {Promise.<Permissions>} promise that is resolved when the permissions are reloaded
|
135
|
+
*/
|
136
|
+
}, {
|
137
|
+
key: "reload",
|
138
|
+
value: function reload() {
|
139
|
+
this._resetCache();
|
140
|
+
return this.load();
|
141
|
+
}
|
142
|
+
/**
|
143
|
+
* Waits till the permission cache is loaded then checks if the current user has the
|
144
|
+
* given permissions in the project with the given id.
|
145
|
+
*
|
146
|
+
* @param {string} permissions space separated list of permissions
|
147
|
+
* @param {string=} projectId optional projectId. If absent the method checks
|
148
|
+
* if the given permission is granted in any project.
|
149
|
+
*
|
150
|
+
* @return {Promise.<boolean>}
|
151
|
+
*/
|
152
|
+
}, {
|
153
|
+
key: "check",
|
154
|
+
value: function check(permissions, projectId) {
|
155
|
+
return this.load().then(function (permissionCache) {
|
156
|
+
return permissionCache.has(permissions, projectId);
|
157
|
+
});
|
158
|
+
}
|
159
|
+
/**
|
160
|
+
* Binds a property with the name <code>propertyName</code> of the <code>object</code>
|
161
|
+
* to a boolean value that is true if user has the permissions and false if she doesn't.
|
162
|
+
*
|
163
|
+
* @example
|
164
|
+
* <code>
|
165
|
+
* userPermissions.bindVariable($scope, 'canReadRole', 'role-read')
|
166
|
+
* </code>
|
167
|
+
*
|
168
|
+
* @param {object} object an object which property should be bound
|
169
|
+
* @param {string} propertyName a name of a property to bind
|
170
|
+
* @param {string} permissions space separated list of permissions
|
171
|
+
* @param {string=} projectId optional projectId. If absent the method checks
|
172
|
+
* if the given permissions are granted in any project.
|
173
|
+
*
|
174
|
+
* @return {Promise.<boolean>}
|
175
|
+
*/
|
176
|
+
}, {
|
177
|
+
key: "bindVariable",
|
178
|
+
value: function bindVariable(object, propertyName, permissions, projectId) {
|
179
|
+
object[propertyName] = false;
|
180
|
+
return this.check(permissions, projectId).then(function (permitted) {
|
181
|
+
object[propertyName] = permitted;
|
182
|
+
return permitted;
|
183
|
+
});
|
184
|
+
}
|
185
|
+
}], [{
|
186
|
+
key: "getDefaultNamesConverter",
|
187
|
+
value:
|
188
|
+
/**
|
189
|
+
* Returns function, which cuts off prefix from server-side permission name
|
190
|
+
*
|
191
|
+
* @param {string} prefix
|
192
|
+
* @returns {Function}
|
193
|
+
*/
|
194
|
+
function getDefaultNamesConverter(prefix) {
|
195
|
+
return function (storedName) {
|
196
|
+
if (storedName.indexOf(prefix) !== 0) {
|
197
|
+
return storedName;
|
198
|
+
} else {
|
199
|
+
return storedName.substr(prefix.length);
|
200
|
+
}
|
201
|
+
};
|
202
|
+
}
|
203
|
+
}, {
|
204
|
+
key: "getPermissionQuery",
|
205
|
+
value: function getPermissionQuery(services) {
|
206
|
+
if (!services || !services.length) {
|
207
|
+
return undefined;
|
208
|
+
}
|
209
|
+
return services.map(function (service) {
|
210
|
+
return "service:{".concat(service, "}");
|
211
|
+
}).join(' or ');
|
212
|
+
}
|
213
|
+
}]);
|
214
|
+
return Permissions;
|
215
|
+
}();
|
216
|
+
/**
|
217
|
+
* @const {string}
|
218
|
+
*/
|
219
|
+
_defineProperty(Permissions, "API_PERMISSION_CACHE_PATH", 'permissions/cache');
|
220
|
+
|
221
|
+
export { Permissions as default };
|
@@ -0,0 +1,93 @@
|
|
1
|
+
export interface PermissionType {
|
2
|
+
key: string;
|
3
|
+
}
|
4
|
+
export interface Project {
|
5
|
+
id: string;
|
6
|
+
}
|
7
|
+
export interface Permission {
|
8
|
+
permission: PermissionType;
|
9
|
+
global?: boolean | null | undefined;
|
10
|
+
projects?: readonly Project[] | null | undefined;
|
11
|
+
}
|
12
|
+
interface PermissionCacheItem {
|
13
|
+
global: boolean | null | undefined;
|
14
|
+
projectIdSet: Record<string, boolean> | null;
|
15
|
+
}
|
16
|
+
/**
|
17
|
+
* Converts an array of cached permissions to a a map of a permission key
|
18
|
+
* to the respective cached permission.
|
19
|
+
*
|
20
|
+
* @param { {
|
21
|
+
* permission: {key: string},
|
22
|
+
* global: boolean?,
|
23
|
+
* projects: {id: string}[]?
|
24
|
+
* }[] } permissions
|
25
|
+
* @param {function} namesConverter a function, which maps a server-side permission name to client-side permission name
|
26
|
+
* @return {object} permission cache
|
27
|
+
* @private
|
28
|
+
*/
|
29
|
+
export default class PermissionCache {
|
30
|
+
static GLOBAL_PROJECT_ID: string;
|
31
|
+
/**
|
32
|
+
* Convert an array of projects to a set of project ids.
|
33
|
+
*
|
34
|
+
* @param {object[]=} projects
|
35
|
+
* @return {object} a set of project ids
|
36
|
+
* @private
|
37
|
+
*/
|
38
|
+
private static _toProjectIdSet;
|
39
|
+
namesConverter: (name: string) => string | null | undefined;
|
40
|
+
constructor(permissions?: readonly Permission[] | null | undefined, namesConverter?: ((name: string) => string | null | undefined) | null | undefined);
|
41
|
+
private _permissions?;
|
42
|
+
permissionCache?: Record<string, PermissionCacheItem>;
|
43
|
+
set(permissions?: readonly Permission[] | null | undefined): this;
|
44
|
+
get(): readonly Permission[] | null | undefined;
|
45
|
+
/**
|
46
|
+
* Checks if the current user has the given permissions in the project with the given id.
|
47
|
+
*
|
48
|
+
* @param {string} permissions space separated list of permissions
|
49
|
+
* @param {string=} projectId optional projectId. If absent the method checks
|
50
|
+
* if the given permission is granted in any project.
|
51
|
+
*
|
52
|
+
* @return {boolean}
|
53
|
+
*/
|
54
|
+
has(permissions?: string | null | undefined, projectId?: string | null | undefined): boolean;
|
55
|
+
/**
|
56
|
+
* Lexes permission query string to an array of lexems.
|
57
|
+
*
|
58
|
+
* @param {string} query
|
59
|
+
* @return {string[]}
|
60
|
+
*/
|
61
|
+
lex(query?: string | null | undefined): string[];
|
62
|
+
/**
|
63
|
+
* @param {string[]} lexems
|
64
|
+
* @param {string=} projectId
|
65
|
+
* @return {boolean}
|
66
|
+
*/
|
67
|
+
or(lexems: string[], projectId?: string | null | undefined): boolean;
|
68
|
+
/**
|
69
|
+
* @param {string[]} lexems
|
70
|
+
* @param {string=} projectId
|
71
|
+
* @return {boolean}
|
72
|
+
*/
|
73
|
+
and(lexems: string[], projectId?: string | null | undefined): boolean;
|
74
|
+
/**
|
75
|
+
* @param {string[]} lexems
|
76
|
+
* @param {string=} projectId
|
77
|
+
* @return {boolean}
|
78
|
+
*/
|
79
|
+
not(lexems: string[], projectId?: string | null | undefined): boolean;
|
80
|
+
/**
|
81
|
+
* @param {string[]} lexems
|
82
|
+
* @param {string=} projectId
|
83
|
+
* @return {boolean}
|
84
|
+
*/
|
85
|
+
term(lexems: string[], projectId?: string | null | undefined): boolean;
|
86
|
+
/**
|
87
|
+
* @param {string} permissionName
|
88
|
+
* @param {string=} projectId
|
89
|
+
* @return {boolean}
|
90
|
+
*/
|
91
|
+
testPermission(permissionName: string, projectId?: string | null | undefined): boolean;
|
92
|
+
}
|
93
|
+
export {};
|
@@ -0,0 +1,257 @@
|
|
1
|
+
import { _ as _defineProperty, d as _createClass, c as _classCallCheck } from '../_helpers/_rollupPluginBabelHelpers.js';
|
2
|
+
import 'core-js/modules/es.array.reduce.js';
|
3
|
+
import 'core-js/modules/es.object.to-string.js';
|
4
|
+
|
5
|
+
/**
|
6
|
+
* Converts an array of cached permissions to a a map of a permission key
|
7
|
+
* to the respective cached permission.
|
8
|
+
*
|
9
|
+
* @param { {
|
10
|
+
* permission: {key: string},
|
11
|
+
* global: boolean?,
|
12
|
+
* projects: {id: string}[]?
|
13
|
+
* }[] } permissions
|
14
|
+
* @param {function} namesConverter a function, which maps a server-side permission name to client-side permission name
|
15
|
+
* @return {object} permission cache
|
16
|
+
* @private
|
17
|
+
*/
|
18
|
+
var PermissionCache = /*#__PURE__*/function () {
|
19
|
+
function PermissionCache(permissions, namesConverter) {
|
20
|
+
_classCallCheck(this, PermissionCache);
|
21
|
+
_defineProperty(this, "namesConverter", void 0);
|
22
|
+
_defineProperty(this, "_permissions", void 0);
|
23
|
+
_defineProperty(this, "permissionCache", void 0);
|
24
|
+
this.namesConverter = namesConverter || function (key) {
|
25
|
+
return key;
|
26
|
+
};
|
27
|
+
this.set(permissions);
|
28
|
+
}
|
29
|
+
_createClass(PermissionCache, [{
|
30
|
+
key: "set",
|
31
|
+
value: function set(permissions) {
|
32
|
+
var _this = this;
|
33
|
+
var permissionCache = (permissions || []).reduce(function (_permissionCache, permission) {
|
34
|
+
var key = _this.namesConverter(permission.permission.key);
|
35
|
+
if (key) {
|
36
|
+
_permissionCache[key] = {
|
37
|
+
global: permission.global,
|
38
|
+
projectIdSet: _this.constructor._toProjectIdSet(permission.projects)
|
39
|
+
};
|
40
|
+
}
|
41
|
+
return _permissionCache;
|
42
|
+
}, {});
|
43
|
+
this._permissions = permissions;
|
44
|
+
this.permissionCache = permissionCache;
|
45
|
+
return this;
|
46
|
+
}
|
47
|
+
}, {
|
48
|
+
key: "get",
|
49
|
+
value: function get() {
|
50
|
+
return this._permissions;
|
51
|
+
}
|
52
|
+
/**
|
53
|
+
* Checks if the current user has the given permissions in the project with the given id.
|
54
|
+
*
|
55
|
+
* @param {string} permissions space separated list of permissions
|
56
|
+
* @param {string=} projectId optional projectId. If absent the method checks
|
57
|
+
* if the given permission is granted in any project.
|
58
|
+
*
|
59
|
+
* @return {boolean}
|
60
|
+
*/
|
61
|
+
}, {
|
62
|
+
key: "has",
|
63
|
+
value: function has(permissions, projectId) {
|
64
|
+
var lexems = this.lex(permissions);
|
65
|
+
if (lexems.length === 0) {
|
66
|
+
return true;
|
67
|
+
}
|
68
|
+
try {
|
69
|
+
return this.or(lexems, projectId);
|
70
|
+
} catch (e) {
|
71
|
+
return false;
|
72
|
+
}
|
73
|
+
}
|
74
|
+
/**
|
75
|
+
* Lexes permission query string to an array of lexems.
|
76
|
+
*
|
77
|
+
* @param {string} query
|
78
|
+
* @return {string[]}
|
79
|
+
*/
|
80
|
+
}, {
|
81
|
+
key: "lex",
|
82
|
+
value: function lex(query) {
|
83
|
+
var lexems = [];
|
84
|
+
if (query) {
|
85
|
+
var currentIdentifier = '';
|
86
|
+
for (var i = 0; i < query.length; i++) {
|
87
|
+
switch (query.charAt(i)) {
|
88
|
+
case ' ':
|
89
|
+
case '\t':
|
90
|
+
case '\n':
|
91
|
+
case '\r':
|
92
|
+
// Finish current token
|
93
|
+
if (currentIdentifier) {
|
94
|
+
lexems.push(currentIdentifier);
|
95
|
+
currentIdentifier = '';
|
96
|
+
}
|
97
|
+
// Skip space
|
98
|
+
break;
|
99
|
+
case '(':
|
100
|
+
case ')':
|
101
|
+
case '&':
|
102
|
+
case '|':
|
103
|
+
case '!':
|
104
|
+
// Finish current token
|
105
|
+
if (currentIdentifier) {
|
106
|
+
lexems.push(currentIdentifier);
|
107
|
+
currentIdentifier = '';
|
108
|
+
}
|
109
|
+
// Append operator
|
110
|
+
lexems.push(query.charAt(i));
|
111
|
+
break;
|
112
|
+
default:
|
113
|
+
currentIdentifier += query.charAt(i);
|
114
|
+
break;
|
115
|
+
}
|
116
|
+
}
|
117
|
+
if (currentIdentifier) {
|
118
|
+
lexems.push(currentIdentifier);
|
119
|
+
}
|
120
|
+
}
|
121
|
+
return lexems;
|
122
|
+
}
|
123
|
+
/*
|
124
|
+
or -> and ( '|' and )*
|
125
|
+
and -> not ( '&'? not )*
|
126
|
+
not -> '!'* term
|
127
|
+
term -> '(' or ')' | permission
|
128
|
+
permission -> [^()&|!\s]+
|
129
|
+
*/
|
130
|
+
/**
|
131
|
+
* @param {string[]} lexems
|
132
|
+
* @param {string=} projectId
|
133
|
+
* @return {boolean}
|
134
|
+
*/
|
135
|
+
}, {
|
136
|
+
key: "or",
|
137
|
+
value: function or(lexems, projectId) {
|
138
|
+
var result = this.and(lexems, projectId);
|
139
|
+
while (lexems.length > 0 && lexems[0] !== ')') {
|
140
|
+
if (lexems.shift() !== '|') {
|
141
|
+
throw new Error('Operator \'|\' was expected');
|
142
|
+
}
|
143
|
+
result = this.and(lexems, projectId) || result;
|
144
|
+
}
|
145
|
+
return result;
|
146
|
+
}
|
147
|
+
/**
|
148
|
+
* @param {string[]} lexems
|
149
|
+
* @param {string=} projectId
|
150
|
+
* @return {boolean}
|
151
|
+
*/
|
152
|
+
}, {
|
153
|
+
key: "and",
|
154
|
+
value: function and(lexems, projectId) {
|
155
|
+
var result = this.not(lexems, projectId);
|
156
|
+
while (lexems.length > 0 && lexems[0] !== ')' && lexems[0] !== '|') {
|
157
|
+
// Expect optional '&'
|
158
|
+
if (lexems[0] === '&') {
|
159
|
+
lexems.shift();
|
160
|
+
}
|
161
|
+
result = this.not(lexems, projectId) && result;
|
162
|
+
}
|
163
|
+
return result;
|
164
|
+
}
|
165
|
+
/**
|
166
|
+
* @param {string[]} lexems
|
167
|
+
* @param {string=} projectId
|
168
|
+
* @return {boolean}
|
169
|
+
*/
|
170
|
+
}, {
|
171
|
+
key: "not",
|
172
|
+
value: function not(lexems, projectId) {
|
173
|
+
var notCounter = 0;
|
174
|
+
while (lexems.length > 0 && lexems[0] === '!') {
|
175
|
+
++notCounter;
|
176
|
+
lexems.shift();
|
177
|
+
}
|
178
|
+
var result = this.term(lexems, projectId);
|
179
|
+
return notCounter % 2 === 0 ? result : !result;
|
180
|
+
}
|
181
|
+
/**
|
182
|
+
* @param {string[]} lexems
|
183
|
+
* @param {string=} projectId
|
184
|
+
* @return {boolean}
|
185
|
+
*/
|
186
|
+
}, {
|
187
|
+
key: "term",
|
188
|
+
value: function term(lexems, projectId) {
|
189
|
+
if (lexems.length === 0) {
|
190
|
+
throw new Error('Operand was expected');
|
191
|
+
}
|
192
|
+
var t = lexems.shift();
|
193
|
+
var result;
|
194
|
+
// Nested parenthesized expression
|
195
|
+
if (t === '(') {
|
196
|
+
result = this.or(lexems, projectId);
|
197
|
+
// Expect ')'
|
198
|
+
if (lexems.shift() !== ')') {
|
199
|
+
throw new Error('Operator \')\' was expected');
|
200
|
+
}
|
201
|
+
} else {
|
202
|
+
result = t != null && this.testPermission(t, projectId);
|
203
|
+
}
|
204
|
+
return result;
|
205
|
+
}
|
206
|
+
/**
|
207
|
+
* @param {string} permissionName
|
208
|
+
* @param {string=} projectId
|
209
|
+
* @return {boolean}
|
210
|
+
*/
|
211
|
+
}, {
|
212
|
+
key: "testPermission",
|
213
|
+
value: function testPermission(permissionName, projectId) {
|
214
|
+
var permissionCache = this.permissionCache;
|
215
|
+
var convertedName = this.namesConverter(permissionName);
|
216
|
+
var cachedPermission = (permissionCache === null || permissionCache === void 0 ? void 0 : permissionCache[permissionName]) || convertedName && (permissionCache === null || permissionCache === void 0 ? void 0 : permissionCache[convertedName]);
|
217
|
+
// Hasn't the permission in any project
|
218
|
+
if (!cachedPermission) {
|
219
|
+
return false;
|
220
|
+
}
|
221
|
+
// The permission is global or is given in the global project
|
222
|
+
if (cachedPermission.global) {
|
223
|
+
return true;
|
224
|
+
}
|
225
|
+
if (projectId) {
|
226
|
+
// if projectId is specified check that the permission is given in the project
|
227
|
+
return cachedPermission.projectIdSet != null && projectId in cachedPermission.projectIdSet;
|
228
|
+
} else {
|
229
|
+
return true;
|
230
|
+
}
|
231
|
+
}
|
232
|
+
}], [{
|
233
|
+
key: "_toProjectIdSet",
|
234
|
+
value:
|
235
|
+
/**
|
236
|
+
* Convert an array of projects to a set of project ids.
|
237
|
+
*
|
238
|
+
* @param {object[]=} projects
|
239
|
+
* @return {object} a set of project ids
|
240
|
+
* @private
|
241
|
+
*/
|
242
|
+
function _toProjectIdSet(projects) {
|
243
|
+
var projectIdSet = null;
|
244
|
+
if (projects) {
|
245
|
+
projectIdSet = {};
|
246
|
+
for (var i = 0; i < projects.length; i++) {
|
247
|
+
projectIdSet[projects[i].id] = true;
|
248
|
+
}
|
249
|
+
}
|
250
|
+
return projectIdSet;
|
251
|
+
}
|
252
|
+
}]);
|
253
|
+
return PermissionCache;
|
254
|
+
}();
|
255
|
+
_defineProperty(PermissionCache, "GLOBAL_PROJECT_ID", 'global');
|
256
|
+
|
257
|
+
export { PermissionCache as default };
|
@@ -0,0 +1,37 @@
|
|
1
|
+
export declare enum Directions {
|
2
|
+
BOTTOM_RIGHT = "BOTTOM_RIGHT",
|
3
|
+
BOTTOM_LEFT = "BOTTOM_LEFT",
|
4
|
+
BOTTOM_CENTER = "BOTTOM_CENTER",
|
5
|
+
TOP_LEFT = "TOP_LEFT",
|
6
|
+
TOP_RIGHT = "TOP_RIGHT",
|
7
|
+
TOP_CENTER = "TOP_CENTER",
|
8
|
+
RIGHT_TOP = "RIGHT_TOP",
|
9
|
+
RIGHT_BOTTOM = "RIGHT_BOTTOM",
|
10
|
+
RIGHT_CENTER = "RIGHT_CENTER",
|
11
|
+
LEFT_TOP = "LEFT_TOP",
|
12
|
+
LEFT_BOTTOM = "LEFT_BOTTOM",
|
13
|
+
LEFT_CENTER = "LEFT_CENTER"
|
14
|
+
}
|
15
|
+
/**
|
16
|
+
* When positioning a popup, directions will be tried in the listed order.
|
17
|
+
* @type {Array.<string>}
|
18
|
+
*/
|
19
|
+
export declare const DEFAULT_DIRECTIONS: Directions[];
|
20
|
+
/**
|
21
|
+
* @enum {number}
|
22
|
+
*/
|
23
|
+
export declare enum Dimension {
|
24
|
+
MARGIN = 16,
|
25
|
+
BORDER_WIDTH = 1
|
26
|
+
}
|
27
|
+
export declare enum MinWidth {
|
28
|
+
TARGET = -1
|
29
|
+
}
|
30
|
+
export declare enum MaxHeight {
|
31
|
+
SCREEN = -1
|
32
|
+
}
|
33
|
+
export declare enum Display {
|
34
|
+
HIDDEN = 0,
|
35
|
+
SHOWING = 1,
|
36
|
+
SHOWN = 2
|
37
|
+
}
|
@@ -0,0 +1,44 @@
|
|
1
|
+
var Directions;
|
2
|
+
(function (Directions) {
|
3
|
+
Directions["BOTTOM_RIGHT"] = "BOTTOM_RIGHT";
|
4
|
+
Directions["BOTTOM_LEFT"] = "BOTTOM_LEFT";
|
5
|
+
Directions["BOTTOM_CENTER"] = "BOTTOM_CENTER";
|
6
|
+
Directions["TOP_LEFT"] = "TOP_LEFT";
|
7
|
+
Directions["TOP_RIGHT"] = "TOP_RIGHT";
|
8
|
+
Directions["TOP_CENTER"] = "TOP_CENTER";
|
9
|
+
Directions["RIGHT_TOP"] = "RIGHT_TOP";
|
10
|
+
Directions["RIGHT_BOTTOM"] = "RIGHT_BOTTOM";
|
11
|
+
Directions["RIGHT_CENTER"] = "RIGHT_CENTER";
|
12
|
+
Directions["LEFT_TOP"] = "LEFT_TOP";
|
13
|
+
Directions["LEFT_BOTTOM"] = "LEFT_BOTTOM";
|
14
|
+
Directions["LEFT_CENTER"] = "LEFT_CENTER";
|
15
|
+
})(Directions || (Directions = {}));
|
16
|
+
/**
|
17
|
+
* When positioning a popup, directions will be tried in the listed order.
|
18
|
+
* @type {Array.<string>}
|
19
|
+
*/
|
20
|
+
var DEFAULT_DIRECTIONS = [Directions.BOTTOM_RIGHT, Directions.BOTTOM_LEFT, Directions.TOP_LEFT, Directions.TOP_RIGHT, Directions.RIGHT_TOP, Directions.RIGHT_BOTTOM, Directions.LEFT_TOP, Directions.LEFT_BOTTOM];
|
21
|
+
/**
|
22
|
+
* @enum {number}
|
23
|
+
*/
|
24
|
+
var Dimension;
|
25
|
+
(function (Dimension) {
|
26
|
+
Dimension[Dimension["MARGIN"] = 16] = "MARGIN";
|
27
|
+
Dimension[Dimension["BORDER_WIDTH"] = 1] = "BORDER_WIDTH";
|
28
|
+
})(Dimension || (Dimension = {}));
|
29
|
+
var MinWidth;
|
30
|
+
(function (MinWidth) {
|
31
|
+
MinWidth[MinWidth["TARGET"] = -1] = "TARGET";
|
32
|
+
})(MinWidth || (MinWidth = {}));
|
33
|
+
var MaxHeight;
|
34
|
+
(function (MaxHeight) {
|
35
|
+
MaxHeight[MaxHeight["SCREEN"] = -1] = "SCREEN";
|
36
|
+
})(MaxHeight || (MaxHeight = {}));
|
37
|
+
var Display;
|
38
|
+
(function (Display) {
|
39
|
+
Display[Display["HIDDEN"] = 0] = "HIDDEN";
|
40
|
+
Display[Display["SHOWING"] = 1] = "SHOWING";
|
41
|
+
Display[Display["SHOWN"] = 2] = "SHOWN";
|
42
|
+
})(Display || (Display = {}));
|
43
|
+
|
44
|
+
export { DEFAULT_DIRECTIONS, Dimension, Directions, Display, MaxHeight, MinWidth };
|