@jetbrains/ring-ui-built 6.0.30 → 6.0.32

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.
Files changed (226) hide show
  1. package/components/_helpers/_rollupPluginBabelHelpers.js +7 -629
  2. package/components/_helpers/anchor.js +7 -6
  3. package/components/_helpers/button__classes.js +16 -14
  4. package/components/_helpers/caption.js +14 -20
  5. package/components/_helpers/card.js +95 -105
  6. package/components/_helpers/dialog__body-scroll-preventer.js +11 -19
  7. package/components/_helpers/icon__svg.js +22 -25
  8. package/components/_helpers/input.js +146 -177
  9. package/components/_helpers/query-assist__suggestions.js +74 -90
  10. package/components/_helpers/select__filter.js +48 -69
  11. package/components/_helpers/services-link.js +29 -37
  12. package/components/_helpers/sidebar.js +99 -107
  13. package/components/_helpers/tab-link.js +7 -7
  14. package/components/_helpers/theme.js +31 -40
  15. package/components/_helpers/title.js +57 -72
  16. package/components/alert/alert.js +150 -202
  17. package/components/alert/container.js +32 -41
  18. package/components/alert-service/alert-service.js +105 -170
  19. package/components/analytics/analytics.js +12 -22
  20. package/components/analytics/analytics__custom-plugin.js +54 -75
  21. package/components/auth/auth.js +4 -36
  22. package/components/auth/auth__core.js +746 -1471
  23. package/components/auth/background-flow.js +87 -127
  24. package/components/auth/down-notification.js +30 -73
  25. package/components/auth/iframe-flow.js +75 -133
  26. package/components/auth/request-builder.js +46 -82
  27. package/components/auth/response-parser.js +86 -116
  28. package/components/auth/storage.js +171 -334
  29. package/components/auth/token-validator.js +137 -242
  30. package/components/auth/window-flow.js +92 -134
  31. package/components/auth-dialog/auth-dialog.js +114 -172
  32. package/components/auth-dialog-service/auth-dialog-service.js +8 -31
  33. package/components/avatar/avatar-example-datauri.js +23 -1
  34. package/components/avatar/avatar.js +119 -152
  35. package/components/avatar/fallback-avatar.js +22 -38
  36. package/components/badge/badge.js +35 -45
  37. package/components/button/button.js +86 -107
  38. package/components/button-group/button-group.js +19 -33
  39. package/components/button-set/button-set.js +20 -32
  40. package/components/button-toolbar/button-toolbar.js +19 -31
  41. package/components/caret/caret.js +186 -220
  42. package/components/checkbox/checkbox.js +76 -101
  43. package/components/clipboard/clipboard-fallback.js +10 -10
  44. package/components/clipboard/clipboard.js +35 -132
  45. package/components/code/code.js +92 -166
  46. package/components/collapse/collapse-content.js +42 -64
  47. package/components/collapse/collapse-context.js +2 -2
  48. package/components/collapse/collapse-control.js +12 -14
  49. package/components/collapse/collapse.js +11 -17
  50. package/components/collapse/consts.js +4 -4
  51. package/components/collapse/utils.js +1 -3
  52. package/components/confirm/confirm.js +66 -104
  53. package/components/confirm-service/confirm-service.js +37 -59
  54. package/components/content-layout/content-layout.js +43 -64
  55. package/components/content-layout/sidebar.js +0 -1
  56. package/components/contenteditable/contenteditable.js +50 -59
  57. package/components/control-label/control-label.js +9 -9
  58. package/components/data-list/data-list.js +129 -182
  59. package/components/data-list/data-list.mock.js +2 -6
  60. package/components/data-list/item.js +143 -170
  61. package/components/data-list/selection.js +76 -136
  62. package/components/data-list/title.js +1 -12
  63. package/components/date-picker/consts.js +19 -26
  64. package/components/date-picker/date-input.js +113 -144
  65. package/components/date-picker/date-picker.js +227 -282
  66. package/components/date-picker/date-popup.js +350 -395
  67. package/components/date-picker/day.js +87 -116
  68. package/components/date-picker/month-names.js +43 -66
  69. package/components/date-picker/month-slider.js +51 -76
  70. package/components/date-picker/month.js +16 -25
  71. package/components/date-picker/months.js +43 -50
  72. package/components/date-picker/weekdays.js +12 -22
  73. package/components/date-picker/years.js +83 -110
  74. package/components/dialog/dialog.js +142 -190
  75. package/components/dialog/dialog__body-scroll-preventer.js +0 -4
  76. package/components/dropdown/anchor.js +0 -9
  77. package/components/dropdown/dropdown.js +182 -213
  78. package/components/dropdown-menu/dropdown-menu.js +71 -97
  79. package/components/editable-heading/editable-heading.js +75 -127
  80. package/components/error-bubble/error-bubble.js +31 -60
  81. package/components/error-message/error-message.js +39 -59
  82. package/components/footer/footer.js +27 -30
  83. package/components/global/compose.js +1 -10
  84. package/components/global/composeRefs.js +7 -12
  85. package/components/global/controls-height.js +2 -2
  86. package/components/global/create-stateful-context.js +15 -15
  87. package/components/global/data-tests.js +6 -14
  88. package/components/global/dom.js +47 -86
  89. package/components/global/focus-sensor-hoc.js +122 -132
  90. package/components/global/fuzzy-highlight.js +22 -36
  91. package/components/global/get-event-key.js +8 -8
  92. package/components/global/get-uid.js +4 -8
  93. package/components/global/inject-styles.js +10 -15
  94. package/components/global/listeners.js +27 -51
  95. package/components/global/memoize.js +6 -12
  96. package/components/global/normalize-indent.js +19 -50
  97. package/components/global/promise-with-timeout.js +6 -8
  98. package/components/global/prop-types.js +3 -5
  99. package/components/global/react-dom-renderer.js +28 -44
  100. package/components/global/react-render-adapter.js +1 -1
  101. package/components/global/rerender-hoc.js +12 -30
  102. package/components/global/schedule-raf.js +5 -6
  103. package/components/global/sniffer.js +1 -1
  104. package/components/global/theme.js +0 -22
  105. package/components/global/trivial-template-tag.js +3 -10
  106. package/components/global/typescript-utils.js +2 -6
  107. package/components/global/url.js +20 -26
  108. package/components/global/use-event-callback.js +6 -4
  109. package/components/grid/col.js +35 -52
  110. package/components/grid/grid.js +17 -31
  111. package/components/grid/row.js +35 -47
  112. package/components/group/group.js +17 -25
  113. package/components/header/header.js +33 -78
  114. package/components/header/logo.js +20 -36
  115. package/components/header/profile.js +166 -199
  116. package/components/header/services-link.js +0 -4
  117. package/components/header/services.js +73 -116
  118. package/components/header/smart-profile.js +111 -203
  119. package/components/header/smart-services.js +62 -113
  120. package/components/header/tray-icon.js +21 -37
  121. package/components/header/tray.js +21 -32
  122. package/components/heading/heading.js +24 -25
  123. package/components/http/http.d.ts +1 -3
  124. package/components/http/http.js +203 -353
  125. package/components/http/http.mock.js +49 -101
  126. package/components/hub-source/hub-source.js +83 -190
  127. package/components/hub-source/hub-source__user.js +11 -44
  128. package/components/hub-source/hub-source__users-groups.js +37 -65
  129. package/components/i18n/i18n-context.js +7 -10
  130. package/components/i18n/i18n.js +7 -10
  131. package/components/icon/icon.js +76 -93
  132. package/components/icon/icon__svg.js +0 -8
  133. package/components/icon/index.js +0 -8
  134. package/components/input/input.js +0 -13
  135. package/components/island/adaptive-island-hoc.js +30 -43
  136. package/components/island/content.js +115 -132
  137. package/components/island/header.js +57 -70
  138. package/components/island/island.js +28 -40
  139. package/components/island-legacy/content-legacy.js +17 -25
  140. package/components/island-legacy/header-legacy.js +19 -27
  141. package/components/island-legacy/island-legacy.js +17 -25
  142. package/components/link/clickableLink.js +44 -59
  143. package/components/link/link.js +57 -68
  144. package/components/list/consts.js +2 -2
  145. package/components/list/list.js +611 -698
  146. package/components/list/list__custom.js +44 -62
  147. package/components/list/list__hint.js +10 -19
  148. package/components/list/list__item.js +133 -174
  149. package/components/list/list__link.js +37 -50
  150. package/components/list/list__separator.js +14 -24
  151. package/components/list/list__title.js +22 -32
  152. package/components/list/list__users-groups-source.js +54 -126
  153. package/components/loader/loader.js +43 -74
  154. package/components/loader/loader__core.js +198 -263
  155. package/components/loader-inline/loader-inline.js +23 -35
  156. package/components/loader-screen/loader-screen.js +25 -46
  157. package/components/login-dialog/login-dialog.js +111 -158
  158. package/components/login-dialog/service.js +8 -34
  159. package/components/markdown/markdown.js +15 -23
  160. package/components/message/message.js +161 -203
  161. package/components/old-browsers-message/old-browsers-message.js +11 -18
  162. package/components/old-browsers-message/old-browsers-message__stop.js +0 -7
  163. package/components/old-browsers-message/white-list.js +8 -16
  164. package/components/pager/pager.js +212 -271
  165. package/components/panel/panel.js +17 -25
  166. package/components/permissions/permissions.js +127 -172
  167. package/components/permissions/permissions__cache.js +194 -224
  168. package/components/popup/popup.consts.js +1 -1
  169. package/components/popup/popup.js +284 -343
  170. package/components/popup/popup.target.js +9 -8
  171. package/components/popup/position.js +96 -106
  172. package/components/popup-menu/popup-menu.js +44 -80
  173. package/components/progress-bar/progress-bar.js +87 -104
  174. package/components/query-assist/query-assist.js +838 -916
  175. package/components/query-assist/query-assist__suggestions.js +1 -30
  176. package/components/radio/radio.js +19 -34
  177. package/components/radio/radio__item.js +52 -69
  178. package/components/select/select.js +852 -957
  179. package/components/select/select__filter.js +0 -30
  180. package/components/select/select__popup.js +373 -487
  181. package/components/shortcuts/core.js +166 -217
  182. package/components/shortcuts/shortcut-title.js +6 -11
  183. package/components/shortcuts/shortcuts-hoc.js +19 -45
  184. package/components/shortcuts/shortcuts.js +50 -75
  185. package/components/slider/slider.js +99 -122
  186. package/components/slider/slider.utils.js +14 -24
  187. package/components/storage/storage.js +4 -33
  188. package/components/storage/storage__fallback.js +149 -224
  189. package/components/storage/storage__local.js +90 -153
  190. package/components/style.css +1 -1
  191. package/components/tab-trap/tab-trap.js +122 -153
  192. package/components/table/cell.js +14 -26
  193. package/components/table/disable-hover-hoc.js +33 -51
  194. package/components/table/header-cell.js +64 -89
  195. package/components/table/header.js +104 -132
  196. package/components/table/multitable.js +107 -125
  197. package/components/table/row-with-focus-sensor.js +25 -69
  198. package/components/table/row.js +175 -216
  199. package/components/table/selection-adapter.js +1 -3
  200. package/components/table/selection-shortcuts-hoc.js +180 -181
  201. package/components/table/selection.js +156 -226
  202. package/components/table/smart-table.js +50 -88
  203. package/components/table/table.js +289 -358
  204. package/components/tabs/collapsible-more.js +46 -79
  205. package/components/tabs/collapsible-tab.js +31 -38
  206. package/components/tabs/collapsible-tabs.js +88 -153
  207. package/components/tabs/custom-item.js +4 -2
  208. package/components/tabs/dumb-tabs.js +74 -117
  209. package/components/tabs/smart-tabs.js +29 -69
  210. package/components/tabs/tab-link.js +1 -5
  211. package/components/tabs/tab.js +19 -31
  212. package/components/tabs/tabs.js +0 -31
  213. package/components/tag/tag.js +133 -173
  214. package/components/tags-input/tags-input.js +329 -427
  215. package/components/tags-list/tags-list.js +57 -78
  216. package/components/text/text.js +28 -39
  217. package/components/toggle/toggle.js +56 -70
  218. package/components/tooltip/tooltip.js +146 -190
  219. package/components/user-agreement/service.js +228 -371
  220. package/components/user-agreement/toolbox.eula.js +160 -1
  221. package/components/user-agreement/user-agreement.js +85 -120
  222. package/components/user-card/card.js +0 -29
  223. package/components/user-card/smart-user-card-tooltip.js +51 -111
  224. package/components/user-card/tooltip.js +47 -84
  225. package/components/user-card/user-card.js +0 -29
  226. package/package.json +1 -1
@@ -1,25 +1,14 @@
1
- import { b as _createClass, f as _classCallCheck, _ as _defineProperty, h as _asyncToGenerator, i as _regeneratorRuntime } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import 'core-js/modules/es.array.concat.js';
3
- import 'core-js/modules/es.object.to-string.js';
4
- import 'core-js/modules/es.promise.js';
5
1
  import AuthResponseParser from './response-parser.js';
6
- import 'core-js/modules/es.array.index-of.js';
7
- import 'core-js/modules/es.regexp.exec.js';
8
- import 'core-js/modules/es.regexp.to-string.js';
9
- import 'core-js/modules/es.string.replace.js';
10
- import 'core-js/modules/web.dom-collections.for-each.js';
11
2
  import 'es6-error';
12
3
  import '../global/url.js';
13
- import 'core-js/modules/es.string.match.js';
14
4
 
15
- var HUB_AUTH_PAGE_OPENED = 'HUB_AUTH_PAGE_OPENED';
16
- var BackgroundFlow = /*#__PURE__*/function () {
17
- function BackgroundFlow(requestBuilder, storage, timeout) {
18
- _classCallCheck(this, BackgroundFlow);
19
- _defineProperty(this, "_requestBuilder", void 0);
20
- _defineProperty(this, "_storage", void 0);
21
- _defineProperty(this, "_timeout", void 0);
22
- _defineProperty(this, "_promise", void 0);
5
+ const HUB_AUTH_PAGE_OPENED = 'HUB_AUTH_PAGE_OPENED';
6
+ class BackgroundFlow {
7
+ _requestBuilder;
8
+ _storage;
9
+ _timeout;
10
+ _promise;
11
+ constructor(requestBuilder, storage, timeout) {
23
12
  this._requestBuilder = requestBuilder;
24
13
  this._storage = storage;
25
14
  this._timeout = timeout;
@@ -29,118 +18,89 @@ var BackgroundFlow = /*#__PURE__*/function () {
29
18
  * @return {HTMLIFrameElement}
30
19
  * @private
31
20
  */
32
- return _createClass(BackgroundFlow, [{
33
- key: "_createHiddenFrame",
34
- value: function _createHiddenFrame() {
35
- var iframe = document.createElement('iframe');
36
- iframe.style.border = iframe.style.width = iframe.style.height = '0px';
37
- iframe.style.visibility = 'hidden';
38
- iframe.style.position = 'fixed';
39
- iframe.style.left = '-10000px';
40
- window.document.body.appendChild(iframe);
41
- return iframe;
42
- }
43
- /**
44
- * Redirects the given iframe to the given URL
45
- * @param {HTMLIFrameElement} iframe
46
- * @param {string} url
47
- * @private
48
- */
49
- }, {
50
- key: "_redirectFrame",
51
- value: function _redirectFrame(iframe, url) {
52
- iframe.src = "".concat(url, "&rnd=").concat(Math.random());
53
- }
54
- /**
55
- * Refreshes the access token in an iframe.
56
- *
57
- * @return {Promise.<string>} promise that is resolved to access the token when it is loaded in a background iframe. The
58
- * promise is rejected if no token was received after {@link BackgroundToken.BACKGROUND_TIMEOUT} ms.
59
- */
60
- }, {
61
- key: "_load",
62
- value: (function () {
63
- var _load2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
64
- var _this = this;
65
- var authRequest;
66
- return _regeneratorRuntime().wrap(function _callee$(_context) {
67
- while (1) switch (_context.prev = _context.next) {
68
- case 0:
69
- _context.next = 2;
70
- return this._requestBuilder.
71
- // eslint-disable-next-line camelcase
72
- prepareAuthRequest({
73
- request_credentials: 'silent'
74
- }, {
75
- nonRedirect: true
76
- });
77
- case 2:
78
- authRequest = _context.sent;
79
- return _context.abrupt("return", new Promise(function (resolve, reject) {
80
- function onMessage(e) {
81
- if (e.data === HUB_AUTH_PAGE_OPENED) {
82
- reject(new Error('Failed to obtain/refresh token in background'));
83
- cleanUp();
84
- }
85
- }
86
- window.addEventListener('message', onMessage);
87
- var iframe = _this._createHiddenFrame();
88
- var cleanRun;
89
- var timeout = setTimeout(function () {
90
- reject(new Error('Failed to refresh authorization'));
91
- cleanUp();
92
- }, _this._timeout);
93
- var removeTokenListener = _this._storage.onTokenChange(function (token) {
94
- if (token) {
95
- cleanUp();
96
- resolve(token.accessToken);
97
- }
98
- });
99
- var removeStateListener = _this._storage.onStateChange(authRequest.stateId, function (state) {
100
- if (state && state.error) {
101
- cleanUp();
102
- reject(new AuthResponseParser.AuthError(state));
103
- }
104
- });
105
- function cleanUp() {
106
- if (cleanRun) {
107
- return;
108
- }
109
- cleanRun = true;
110
- clearTimeout(timeout);
111
- removeStateListener();
112
- removeTokenListener();
113
- window.removeEventListener('message', onMessage);
114
- window.document.body.removeChild(iframe);
115
- }
116
- _this._redirectFrame(iframe, authRequest.url);
117
- }));
118
- case 4:
119
- case "end":
120
- return _context.stop();
121
- }
122
- }, _callee, this);
123
- }));
124
- function _load() {
125
- return _load2.apply(this, arguments);
21
+ _createHiddenFrame() {
22
+ const iframe = document.createElement('iframe');
23
+ iframe.style.border = iframe.style.width = iframe.style.height = '0px';
24
+ iframe.style.visibility = 'hidden';
25
+ iframe.style.position = 'fixed';
26
+ iframe.style.left = '-10000px';
27
+ window.document.body.appendChild(iframe);
28
+ return iframe;
29
+ }
30
+ /**
31
+ * Redirects the given iframe to the given URL
32
+ * @param {HTMLIFrameElement} iframe
33
+ * @param {string} url
34
+ * @private
35
+ */
36
+ _redirectFrame(iframe, url) {
37
+ iframe.src = `${url}&rnd=${Math.random()}`;
38
+ }
39
+ /**
40
+ * Refreshes the access token in an iframe.
41
+ *
42
+ * @return {Promise.<string>} promise that is resolved to access the token when it is loaded in a background iframe. The
43
+ * promise is rejected if no token was received after {@link BackgroundToken.BACKGROUND_TIMEOUT} ms.
44
+ */
45
+ async _load() {
46
+ const authRequest = await this._requestBuilder.
47
+ // eslint-disable-next-line camelcase
48
+ prepareAuthRequest({
49
+ request_credentials: 'silent'
50
+ }, {
51
+ nonRedirect: true
52
+ });
53
+ return new Promise((resolve, reject) => {
54
+ function onMessage(e) {
55
+ if (e.data === HUB_AUTH_PAGE_OPENED) {
56
+ reject(new Error('Failed to obtain/refresh token in background'));
57
+ cleanUp();
58
+ }
126
59
  }
127
- return _load;
128
- }())
129
- }, {
130
- key: "authorize",
131
- value: function authorize() {
132
- var _this2 = this;
133
- if (this._promise) {
134
- return this._promise;
60
+ window.addEventListener('message', onMessage);
61
+ const iframe = this._createHiddenFrame();
62
+ let cleanRun;
63
+ const timeout = setTimeout(() => {
64
+ reject(new Error('Failed to refresh authorization'));
65
+ cleanUp();
66
+ }, this._timeout);
67
+ const removeTokenListener = this._storage.onTokenChange(token => {
68
+ if (token) {
69
+ cleanUp();
70
+ resolve(token.accessToken);
71
+ }
72
+ });
73
+ const removeStateListener = this._storage.onStateChange(authRequest.stateId, state => {
74
+ if (state && state.error) {
75
+ cleanUp();
76
+ reject(new AuthResponseParser.AuthError(state));
77
+ }
78
+ });
79
+ function cleanUp() {
80
+ if (cleanRun) {
81
+ return;
82
+ }
83
+ cleanRun = true;
84
+ clearTimeout(timeout);
85
+ removeStateListener();
86
+ removeTokenListener();
87
+ window.removeEventListener('message', onMessage);
88
+ window.document.body.removeChild(iframe);
135
89
  }
136
- var resetPromise = function resetPromise() {
137
- _this2._promise = null;
138
- };
139
- this._promise = this._load();
140
- this._promise.then(resetPromise, resetPromise);
90
+ this._redirectFrame(iframe, authRequest.url);
91
+ });
92
+ }
93
+ authorize() {
94
+ if (this._promise) {
141
95
  return this._promise;
142
96
  }
143
- }]);
144
- }();
97
+ const resetPromise = () => {
98
+ this._promise = null;
99
+ };
100
+ this._promise = this._load();
101
+ this._promise.then(resetPromise, resetPromise);
102
+ return this._promise;
103
+ }
104
+ }
145
105
 
146
106
  export { HUB_AUTH_PAGE_OPENED, BackgroundFlow as default };
@@ -1,21 +1,15 @@
1
- import { h as _asyncToGenerator, i as _regeneratorRuntime } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import 'core-js/modules/es.array.filter.js';
3
- import 'core-js/modules/es.object.to-string.js';
4
1
  import React from 'react';
5
2
  import PropTypes from 'prop-types';
6
3
  import alertService from '../alert-service/alert-service.js';
7
4
  import Alert from '../alert/alert.js';
8
5
  import Link from '../link/link.js';
9
6
  import Group from '../group/group.js';
10
- import 'core-js/modules/es.array.concat.js';
11
- import 'core-js/modules/es.array.map.js';
7
+ import '../_helpers/_rollupPluginBabelHelpers.js';
12
8
  import 'react-dom/client';
13
9
  import '../global/get-uid.js';
14
- import 'core-js/modules/es.regexp.to-string.js';
15
10
  import '../alert/container.js';
16
11
  import 'react-dom';
17
12
  import 'classnames';
18
- import 'core-js/modules/es.object.values.js';
19
13
  import '@jetbrains/icons/exception';
20
14
  import '@jetbrains/icons/checkmark';
21
15
  import '@jetbrains/icons/warning';
@@ -24,23 +18,10 @@ import '../icon/icon.js';
24
18
  import 'util-deprecate';
25
19
  import '../icon/icon__constants.js';
26
20
  import '../_helpers/icon__svg.js';
27
- import 'core-js/modules/es.regexp.exec.js';
28
- import 'core-js/modules/es.string.replace.js';
29
- import 'core-js/modules/es.string.starts-with.js';
30
21
  import '../global/memoize.js';
31
- import 'core-js/modules/es.array.iterator.js';
32
- import 'core-js/modules/es.map.js';
33
- import 'core-js/modules/es.weak-map.js';
34
- import 'core-js/modules/web.dom-collections.iterator.js';
35
22
  import '../loader-inline/loader-inline.js';
36
23
  import '../global/data-tests.js';
37
- import 'core-js/modules/es.array.reduce.js';
38
- import 'core-js/modules/es.object.entries.js';
39
24
  import '../global/dom.js';
40
- import 'core-js/modules/es.object.assign.js';
41
- import 'core-js/modules/es.set.js';
42
- import 'core-js/modules/es.string.split.js';
43
- import 'core-js/modules/web.dom-collections.for-each.js';
44
25
  import '../button/button.js';
45
26
  import '@jetbrains/icons/chevron-10px';
46
27
  import '../link/clickableLink.js';
@@ -52,29 +33,20 @@ import '../popup/popup.js';
52
33
  import '../global/schedule-raf.js';
53
34
  import '../shortcuts/shortcuts.js';
54
35
  import '../shortcuts/core.js';
55
- import 'core-js/modules/es.array.find-index.js';
56
- import 'core-js/modules/es.array.includes.js';
57
- import 'core-js/modules/es.array.slice.js';
58
- import 'core-js/modules/es.array.splice.js';
59
- import 'core-js/modules/es.string.includes.js';
60
- import 'core-js/modules/es.string.match.js';
61
36
  import 'combokeys';
62
37
  import '../global/sniffer.js';
63
38
  import 'sniffr';
64
39
  import '../tab-trap/tab-trap.js';
65
40
  import '../popup/position.js';
66
- import 'core-js/modules/es.array.sort.js';
67
41
  import '../popup/popup.consts.js';
68
42
  import '../_helpers/link.js';
69
43
 
70
44
  var modules_c87dd562 = {"light":"light_rui_2ac4","title":"title_rui_7659","error":"error_rui_7659"};
71
45
 
72
- var key = null;
46
+ let key = null;
73
47
  function renderAlert(message) {
74
- var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : Alert.Type.WARNING;
75
- var existingAlert = alertService.showingAlerts.filter(function (alert) {
76
- return alert.key === key;
77
- })[0];
48
+ let type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : Alert.Type.WARNING;
49
+ const existingAlert = alertService.showingAlerts.filter(alert => alert.key === key)[0];
78
50
  if (!existingAlert) {
79
51
  key = alertService.addAlert(message, type, 0, {
80
52
  closeable: false
@@ -86,11 +58,15 @@ function renderAlert(message) {
86
58
  }
87
59
  }
88
60
  function Message(_ref) {
89
- var translations = _ref.translations,
90
- onCheckAgain = _ref.onCheckAgain;
91
- var backendIsNotAvailable = translations.backendIsNotAvailable,
92
- checkAgain = translations.checkAgain,
93
- errorMessage = translations.errorMessage;
61
+ let {
62
+ translations,
63
+ onCheckAgain
64
+ } = _ref;
65
+ const {
66
+ backendIsNotAvailable,
67
+ checkAgain,
68
+ errorMessage
69
+ } = translations;
94
70
  return /*#__PURE__*/React.createElement("div", {
95
71
  "data-test": "ring-backend-down-notification"
96
72
  }, /*#__PURE__*/React.createElement(Group, null, /*#__PURE__*/React.createElement("div", {
@@ -111,47 +87,28 @@ Message.propTypes = {
111
87
  onCheckAgain: PropTypes.func
112
88
  };
113
89
  function onBackendDown(_ref2) {
114
- var onCheckAgain = _ref2.onCheckAgain,
115
- translations = _ref2.translations;
116
- function checkAgainWithoutClosing(_x) {
117
- return _checkAgainWithoutClosing.apply(this, arguments);
118
- }
119
- function _checkAgainWithoutClosing() {
120
- _checkAgainWithoutClosing = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(e) {
121
- return _regeneratorRuntime().wrap(function _callee$(_context) {
122
- while (1) switch (_context.prev = _context.next) {
123
- case 0:
124
- // Alert has weird behaviour of handling clicks by "a" tags
125
- e.stopPropagation();
126
- _context.prev = 1;
127
- renderAlert('Connecting...', Alert.Type.LOADING);
128
- _context.next = 5;
129
- return onCheckAgain();
130
- case 5:
131
- _context.next = 10;
132
- break;
133
- case 7:
134
- _context.prev = 7;
135
- _context.t0 = _context["catch"](1);
136
- renderAlert( /*#__PURE__*/React.createElement(Message, {
137
- translations: translations,
138
- onCheckAgain: checkAgainWithoutClosing
139
- }));
140
- case 10:
141
- case "end":
142
- return _context.stop();
143
- }
144
- }, _callee, null, [[1, 7]]);
145
- }));
146
- return _checkAgainWithoutClosing.apply(this, arguments);
90
+ let {
91
+ onCheckAgain,
92
+ translations
93
+ } = _ref2;
94
+ async function checkAgainWithoutClosing(e) {
95
+ // Alert has weird behaviour of handling clicks by "a" tags
96
+ e.stopPropagation();
97
+ try {
98
+ renderAlert('Connecting...', Alert.Type.LOADING);
99
+ await onCheckAgain();
100
+ } catch (err) {
101
+ renderAlert( /*#__PURE__*/React.createElement(Message, {
102
+ translations: translations,
103
+ onCheckAgain: checkAgainWithoutClosing
104
+ }));
105
+ }
147
106
  }
148
107
  renderAlert( /*#__PURE__*/React.createElement(Message, {
149
108
  translations: translations,
150
109
  onCheckAgain: checkAgainWithoutClosing
151
110
  }));
152
- return function () {
153
- return alertService.remove(key);
154
- };
111
+ return () => alertService.remove(key);
155
112
  }
156
113
 
157
114
  export { onBackendDown as default };
@@ -1,6 +1,3 @@
1
- import { b as _createClass, f as _classCallCheck, _ as _defineProperty, h as _asyncToGenerator, i as _regeneratorRuntime } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import 'core-js/modules/es.object.to-string.js';
3
- import 'core-js/modules/es.promise.js';
4
1
  import React from 'react';
5
2
  import showAuthDialog from '../login-dialog/service.js';
6
3
  import Link from '../link/link.js';
@@ -8,16 +5,14 @@ import AuthResponseParser from './response-parser.js';
8
5
  import 'react-dom/client';
9
6
  import '../global/controls-height.js';
10
7
  import '../login-dialog/login-dialog.js';
11
- import 'core-js/modules/es.array.concat.js';
12
8
  import 'prop-types';
13
9
  import '../dialog/dialog.js';
10
+ import '../_helpers/_rollupPluginBabelHelpers.js';
14
11
  import 'react-dom';
15
12
  import 'classnames';
16
13
  import '@jetbrains/icons/close';
17
14
  import '../island/island.js';
18
15
  import '../global/data-tests.js';
19
- import 'core-js/modules/es.array.reduce.js';
20
- import 'core-js/modules/es.object.entries.js';
21
16
  import '../island/adaptive-island-hoc.js';
22
17
  import '../global/linear-function.js';
23
18
  import '../_helpers/island.js';
@@ -26,40 +21,20 @@ import '../island/content.js';
26
21
  import 'element-resize-detector';
27
22
  import '../global/schedule-raf.js';
28
23
  import '../global/get-uid.js';
29
- import 'core-js/modules/es.regexp.to-string.js';
30
24
  import '../shortcuts/shortcuts.js';
31
- import 'core-js/modules/es.array.map.js';
32
25
  import '../shortcuts/core.js';
33
- import 'core-js/modules/es.array.find-index.js';
34
- import 'core-js/modules/es.array.includes.js';
35
- import 'core-js/modules/es.array.slice.js';
36
- import 'core-js/modules/es.array.splice.js';
37
- import 'core-js/modules/es.object.assign.js';
38
- import 'core-js/modules/es.regexp.exec.js';
39
- import 'core-js/modules/es.string.includes.js';
40
- import 'core-js/modules/es.string.match.js';
41
26
  import 'combokeys';
42
27
  import '../global/sniffer.js';
43
28
  import 'sniffr';
44
29
  import '../tab-trap/tab-trap.js';
45
- import 'core-js/modules/es.array.filter.js';
46
30
  import '../global/dom.js';
47
- import 'core-js/modules/es.array.iterator.js';
48
- import 'core-js/modules/es.set.js';
49
- import 'core-js/modules/es.string.split.js';
50
- import 'core-js/modules/web.dom-collections.for-each.js';
51
- import 'core-js/modules/web.dom-collections.iterator.js';
52
31
  import '../button/button.js';
53
32
  import '@jetbrains/icons/chevron-10px';
54
33
  import '../icon/icon.js';
55
34
  import 'util-deprecate';
56
35
  import '../icon/icon__constants.js';
57
36
  import '../_helpers/icon__svg.js';
58
- import 'core-js/modules/es.string.replace.js';
59
- import 'core-js/modules/es.string.starts-with.js';
60
37
  import '../global/memoize.js';
61
- import 'core-js/modules/es.map.js';
62
- import 'core-js/modules/es.weak-map.js';
63
38
  import '../link/clickableLink.js';
64
39
  import '../_helpers/button__classes.js';
65
40
  import '../popup/popup.target.js';
@@ -68,28 +43,20 @@ import 'scrollbar-width';
68
43
  import '../loader-screen/loader-screen.js';
69
44
  import '../loader/loader.js';
70
45
  import '../loader/loader__core.js';
71
- import 'core-js/modules/es.array.fill.js';
72
46
  import './background-flow.js';
73
- import 'core-js/modules/es.array.index-of.js';
74
47
  import 'es6-error';
75
48
  import '../global/url.js';
76
49
  import '../_helpers/link.js';
77
50
 
78
- var IFrameFlow = /*#__PURE__*/function () {
79
- function IFrameFlow(requestBuilder, storage, translations) {
80
- var _this = this;
81
- _classCallCheck(this, IFrameFlow);
82
- _defineProperty(this, "hideDialog", null);
83
- _defineProperty(this, "_requestBuilder", void 0);
84
- _defineProperty(this, "_storage", void 0);
85
- _defineProperty(this, "_translations", void 0);
86
- _defineProperty(this, "reject", void 0);
87
- _defineProperty(this, "_promise", void 0);
88
- _defineProperty(this, "_loginWindow", void 0);
89
- _defineProperty(this, "_reset", function () {
90
- _this._promise = null;
91
- _this.hideDialog = null;
92
- });
51
+ class IFrameFlow {
52
+ hideDialog = null;
53
+ _requestBuilder;
54
+ _storage;
55
+ _translations;
56
+ reject;
57
+ _promise;
58
+ _loginWindow;
59
+ constructor(requestBuilder, storage, translations) {
93
60
  this._requestBuilder = requestBuilder;
94
61
  this._storage = storage;
95
62
  this._translations = translations;
@@ -98,98 +65,73 @@ var IFrameFlow = /*#__PURE__*/function () {
98
65
  /**
99
66
  * Initiates authorization in window
100
67
  */
101
- return _createClass(IFrameFlow, [{
102
- key: "_load",
103
- value: (function () {
104
- var _load2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
105
- var _this2 = this;
106
- var authRequest, renderFallbackLink;
107
- return _regeneratorRuntime().wrap(function _callee$(_context) {
108
- while (1) switch (_context.prev = _context.next) {
109
- case 0:
110
- _context.next = 2;
111
- return this._requestBuilder.prepareAuthRequest(
112
- // eslint-disable-next-line camelcase
113
- {
114
- request_credentials: 'required',
115
- auth_mode: 'bypass_to_login'
116
- }, {
117
- nonRedirect: false
118
- });
119
- case 2:
120
- authRequest = _context.sent;
121
- renderFallbackLink = function renderFallbackLink() {
122
- return /*#__PURE__*/React.createElement(Link, {
123
- href: authRequest.url,
124
- target: "_self"
125
- }, _this2._translations.nothingHappensLink);
126
- };
127
- return _context.abrupt("return", new Promise(function (resolve, reject) {
128
- _this2.hideDialog = showAuthDialog({
129
- url: authRequest.url,
130
- loader: true,
131
- onCancel: function onCancel() {
132
- // eslint-disable-next-line @typescript-eslint/no-use-before-define
133
- cleanUp();
134
- _this2.stop();
135
- },
136
- renderFallbackLink
137
- });
138
- _this2.reject = reject;
139
- var removeTokenListener = _this2._storage.onTokenChange(function (token) {
140
- if (token) {
141
- // eslint-disable-next-line @typescript-eslint/no-use-before-define
142
- cleanUp();
143
- resolve(token.accessToken);
144
- }
145
- });
146
- var removeStateListener = _this2._storage.onStateChange(authRequest.stateId, function (state) {
147
- if (state && state.error) {
148
- // eslint-disable-next-line @typescript-eslint/no-use-before-define
149
- cleanUp();
150
- reject(new AuthResponseParser.AuthError(state));
151
- }
152
- });
153
- var cleanUp = function cleanUp() {
154
- var _this2$hideDialog;
155
- (_this2$hideDialog = _this2.hideDialog) === null || _this2$hideDialog === void 0 || _this2$hideDialog.call(_this2);
156
- removeStateListener();
157
- removeTokenListener();
158
- };
159
- }));
160
- case 5:
161
- case "end":
162
- return _context.stop();
163
- }
164
- }, _callee, this);
165
- }));
166
- function _load() {
167
- return _load2.apply(this, arguments);
168
- }
169
- return _load;
170
- }())
171
- }, {
172
- key: "stop",
173
- value: function stop() {
174
- if (this.hideDialog) {
175
- this.hideDialog();
176
- }
177
- if (this.reject) {
178
- this.reject('Login form closed');
179
- }
180
- this._reset();
68
+ async _load() {
69
+ const authRequest = await this._requestBuilder.prepareAuthRequest(
70
+ // eslint-disable-next-line camelcase
71
+ {
72
+ request_credentials: 'required',
73
+ auth_mode: 'bypass_to_login'
74
+ }, {
75
+ nonRedirect: false
76
+ });
77
+ const renderFallbackLink = () => /*#__PURE__*/React.createElement(Link, {
78
+ href: authRequest.url,
79
+ target: "_self"
80
+ }, this._translations.nothingHappensLink);
81
+ return new Promise((resolve, reject) => {
82
+ this.hideDialog = showAuthDialog({
83
+ url: authRequest.url,
84
+ loader: true,
85
+ onCancel: () => {
86
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
87
+ cleanUp();
88
+ this.stop();
89
+ },
90
+ renderFallbackLink
91
+ });
92
+ this.reject = reject;
93
+ const removeTokenListener = this._storage.onTokenChange(token => {
94
+ if (token) {
95
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
96
+ cleanUp();
97
+ resolve(token.accessToken);
98
+ }
99
+ });
100
+ const removeStateListener = this._storage.onStateChange(authRequest.stateId, state => {
101
+ if (state && state.error) {
102
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
103
+ cleanUp();
104
+ reject(new AuthResponseParser.AuthError(state));
105
+ }
106
+ });
107
+ const cleanUp = () => {
108
+ this.hideDialog?.();
109
+ removeStateListener();
110
+ removeTokenListener();
111
+ };
112
+ });
113
+ }
114
+ _reset = () => {
115
+ this._promise = null;
116
+ this.hideDialog = null;
117
+ };
118
+ stop() {
119
+ if (this.hideDialog) {
120
+ this.hideDialog();
181
121
  }
182
- }, {
183
- key: "authorize",
184
- value: function authorize() {
185
- if (this._promise != null && this._loginWindow != null && !this._loginWindow.closed) {
186
- return this._promise;
187
- }
188
- this._promise = this._load();
189
- this._promise.then(this._reset, this._reset);
122
+ if (this.reject) {
123
+ this.reject('Login form closed');
124
+ }
125
+ this._reset();
126
+ }
127
+ authorize() {
128
+ if (this._promise != null && this._loginWindow != null && !this._loginWindow.closed) {
190
129
  return this._promise;
191
130
  }
192
- }]);
193
- }();
131
+ this._promise = this._load();
132
+ this._promise.then(this._reset, this._reset);
133
+ return this._promise;
134
+ }
135
+ }
194
136
 
195
137
  export { IFrameFlow as default };