@jetbrains/ring-ui 5.0.156 → 5.0.157

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 (295) hide show
  1. package/dist/_helpers/_rollupPluginBabelHelpers.js +642 -1
  2. package/dist/_helpers/anchor.js +6 -7
  3. package/dist/_helpers/button__classes.js +16 -28
  4. package/dist/_helpers/card.js +107 -95
  5. package/dist/_helpers/dialog__body-scroll-preventer.js +20 -11
  6. package/dist/_helpers/footer.js +29 -34
  7. package/dist/_helpers/query-assist__suggestions.js +91 -74
  8. package/dist/_helpers/select__filter.js +71 -48
  9. package/dist/_helpers/services-link.js +41 -29
  10. package/dist/_helpers/sidebar.js +103 -99
  11. package/dist/_helpers/theme.js +42 -35
  12. package/dist/_helpers/title.js +71 -57
  13. package/dist/alert/alert.js +199 -158
  14. package/dist/alert/container.js +43 -32
  15. package/dist/alert-service/alert-service.js +172 -104
  16. package/dist/analytics/analytics.js +92 -68
  17. package/dist/analytics/analytics__custom-plugin.js +84 -60
  18. package/dist/analytics/analytics__fus-plugin.js +28 -15
  19. package/dist/analytics/analytics__ga-plugin.js +60 -43
  20. package/dist/analytics/analytics__plugin-utils.js +28 -22
  21. package/dist/auth/auth.js +36 -4
  22. package/dist/auth/auth__core.js +1458 -732
  23. package/dist/auth/background-flow.js +129 -87
  24. package/dist/auth/down-notification.js +75 -30
  25. package/dist/auth/iframe-flow.js +136 -75
  26. package/dist/auth/landing.js +90 -30
  27. package/dist/auth/request-builder.js +82 -46
  28. package/dist/auth/response-parser.js +119 -86
  29. package/dist/auth/storage.js +333 -171
  30. package/dist/auth/token-validator.js +244 -137
  31. package/dist/auth/window-flow.js +136 -92
  32. package/dist/auth-dialog/auth-dialog.js +176 -114
  33. package/dist/auth-dialog-service/auth-dialog-service.js +32 -7
  34. package/dist/auth-ng/auth-ng.js +70 -34
  35. package/dist/auth-ng/auth-ng.mock.js +6 -6
  36. package/dist/autofocus-ng/autofocus-ng.js +23 -8
  37. package/dist/avatar/avatar-example-datauri.js +1 -23
  38. package/dist/avatar/avatar.js +155 -119
  39. package/dist/avatar/fallback-avatar.js +41 -22
  40. package/dist/avatar-editor-ng/avatar-editor-ng.js +56 -23
  41. package/dist/avatar-editor-ng/avatar-editor-ng__template.js +1 -28
  42. package/dist/avatar-ng/avatar-ng.js +23 -1
  43. package/dist/badge/badge.js +43 -35
  44. package/dist/badge-ng/badge-ng.js +13 -1
  45. package/dist/breadcrumb-ng/breadcrumb-ng.js +15 -29
  46. package/dist/button/button.js +111 -87
  47. package/dist/button/button__classes.js +1 -0
  48. package/dist/button-group/button-group.js +35 -19
  49. package/dist/button-group/caption.js +22 -14
  50. package/dist/button-group-ng/button-group-ng.js +13 -7
  51. package/dist/button-ng/button-ng.js +154 -133
  52. package/dist/button-set/button-set.js +34 -20
  53. package/dist/button-set-ng/button-set-ng.js +2 -2
  54. package/dist/button-toolbar/button-toolbar.js +33 -19
  55. package/dist/button-toolbar-ng/button-toolbar-ng.js +5 -3
  56. package/dist/caret/caret.js +225 -188
  57. package/dist/checkbox/checkbox.js +104 -76
  58. package/dist/checkbox-ng/checkbox-ng.js +18 -27
  59. package/dist/clipboard/clipboard-fallback.js +10 -10
  60. package/dist/clipboard/clipboard.js +131 -34
  61. package/dist/code/code.js +168 -92
  62. package/dist/compiler-ng/compiler-ng.js +18 -15
  63. package/dist/confirm/confirm.js +108 -66
  64. package/dist/confirm-ng/confirm-ng.js +33 -4
  65. package/dist/confirm-service/confirm-service.js +66 -42
  66. package/dist/content-layout/content-layout.js +64 -43
  67. package/dist/content-layout/sidebar.js +1 -0
  68. package/dist/contenteditable/contenteditable.js +61 -50
  69. package/dist/control-label/control-label.js +11 -15
  70. package/dist/data-list/data-list.js +184 -128
  71. package/dist/data-list/data-list.mock.js +11 -2
  72. package/dist/data-list/item.js +174 -143
  73. package/dist/data-list/selection.js +139 -76
  74. package/dist/data-list/title.js +13 -1
  75. package/dist/data-list-ng/data-list-ng.js +31 -1
  76. package/dist/date-picker/consts.js +18 -15
  77. package/dist/date-picker/date-input.js +147 -115
  78. package/dist/date-picker/date-picker.js +285 -228
  79. package/dist/date-picker/date-popup.js +397 -356
  80. package/dist/date-picker/day.js +98 -84
  81. package/dist/date-picker/month-names.js +64 -43
  82. package/dist/date-picker/month-slider.js +74 -51
  83. package/dist/date-picker/month.js +21 -15
  84. package/dist/date-picker/months.js +48 -43
  85. package/dist/date-picker/weekdays.js +18 -12
  86. package/dist/date-picker/years.js +109 -84
  87. package/dist/dialog/dialog.js +189 -141
  88. package/dist/dialog/dialog__body-scroll-preventer.js +5 -0
  89. package/dist/dialog-ng/dialog-ng.js +401 -287
  90. package/dist/dialog-ng/dialog-ng__template.js +1 -70
  91. package/dist/docked-panel-ng/docked-panel-ng.js +33 -18
  92. package/dist/dropdown/anchor.js +10 -0
  93. package/dist/dropdown/dropdown.js +214 -182
  94. package/dist/dropdown-menu/dropdown-menu.js +102 -72
  95. package/dist/editable-heading/editable-heading.js +100 -58
  96. package/dist/error-bubble/error-bubble.js +64 -31
  97. package/dist/error-message/error-message.js +61 -38
  98. package/dist/error-message-ng/error-message-ng.js +11 -22
  99. package/dist/footer/footer.js +11 -1
  100. package/dist/footer-ng/footer-ng.js +64 -36
  101. package/dist/form-ng/form-ng.js +66 -56
  102. package/dist/global/angular-component-factory.js +76 -53
  103. package/dist/global/compose.js +10 -1
  104. package/dist/global/composeRefs.js +12 -7
  105. package/dist/global/controls-height.js +2 -2
  106. package/dist/global/create-stateful-context.js +19 -19
  107. package/dist/global/data-tests.js +15 -7
  108. package/dist/global/dom.js +95 -53
  109. package/dist/global/focus-sensor-hoc.js +134 -122
  110. package/dist/global/fuzzy-highlight.js +41 -27
  111. package/dist/global/get-event-key.js +8 -8
  112. package/dist/global/get-uid.js +8 -4
  113. package/dist/global/inject-styles.js +15 -10
  114. package/dist/global/linear-function.js +2 -2
  115. package/dist/global/listeners.js +53 -27
  116. package/dist/global/memoize.js +13 -6
  117. package/dist/global/normalize-indent.js +51 -19
  118. package/dist/global/promise-with-timeout.js +8 -6
  119. package/dist/global/prop-types.js +5 -3
  120. package/dist/global/react-dom-renderer.js +47 -28
  121. package/dist/global/react-render-adapter.js +19 -13
  122. package/dist/global/rerender-hoc.js +41 -16
  123. package/dist/global/ring-angular-component.js +20 -10
  124. package/dist/global/schedule-raf.js +6 -5
  125. package/dist/global/sniffer.js +1 -1
  126. package/dist/global/theme.js +24 -0
  127. package/dist/global/trivial-template-tag.js +10 -3
  128. package/dist/global/typescript-utils.js +6 -2
  129. package/dist/global/url.js +27 -21
  130. package/dist/global/use-event-callback.js +4 -6
  131. package/dist/grid/col.js +55 -35
  132. package/dist/grid/grid.js +36 -17
  133. package/dist/grid/row.js +48 -35
  134. package/dist/group/group.js +27 -17
  135. package/dist/group-ng/group-ng.js +2 -2
  136. package/dist/header/header.js +80 -33
  137. package/dist/header/logo.js +39 -20
  138. package/dist/header/profile.js +188 -150
  139. package/dist/header/services-link.js +9 -0
  140. package/dist/header/services.js +118 -73
  141. package/dist/header/smart-profile.js +207 -111
  142. package/dist/header/smart-services.js +115 -62
  143. package/dist/header/tray-icon.js +38 -21
  144. package/dist/header/tray.js +34 -21
  145. package/dist/heading/heading.js +25 -26
  146. package/dist/heading-ng/heading-ng.js +11 -1
  147. package/dist/http/http.js +368 -215
  148. package/dist/http/http.mock.js +104 -49
  149. package/dist/hub-source/hub-source.js +191 -83
  150. package/dist/hub-source/hub-source__user.js +45 -11
  151. package/dist/hub-source/hub-source__users-groups.js +67 -37
  152. package/dist/i18n/i18n-context.js +14 -10
  153. package/dist/i18n/i18n.js +11 -7
  154. package/dist/icon/icon.js +94 -76
  155. package/dist/icon/icon__svg.js +31 -24
  156. package/dist/icon/index.js +9 -0
  157. package/dist/icon-ng/icon-ng.js +27 -15
  158. package/dist/input/input.js +184 -145
  159. package/dist/input-ng/input-ng.js +96 -118
  160. package/dist/island/adaptive-island-hoc.js +45 -30
  161. package/dist/island/content.js +130 -115
  162. package/dist/island/header.js +69 -56
  163. package/dist/island/island.js +40 -28
  164. package/dist/island-legacy/content-legacy.js +27 -17
  165. package/dist/island-legacy/header-legacy.js +29 -19
  166. package/dist/island-legacy/island-legacy.js +27 -17
  167. package/dist/island-ng/island-content-ng.js +17 -26
  168. package/dist/island-ng/island-header-ng.js +9 -12
  169. package/dist/island-ng/island-ng-class-fixer.js +3 -0
  170. package/dist/island-ng/island-ng.js +6 -10
  171. package/dist/link/clickableLink.js +61 -44
  172. package/dist/link/link.js +85 -74
  173. package/dist/link-ng/link-ng.js +3 -5
  174. package/dist/list/consts.js +1 -1
  175. package/dist/list/list.js +696 -602
  176. package/dist/list/list__custom.js +61 -44
  177. package/dist/list/list__hint.js +21 -10
  178. package/dist/list/list__item.js +167 -129
  179. package/dist/list/list__link.js +54 -37
  180. package/dist/list/list__separator.js +24 -14
  181. package/dist/list/list__title.js +32 -22
  182. package/dist/list/list__users-groups-source.js +131 -54
  183. package/dist/loader/loader.js +78 -43
  184. package/dist/loader/loader__core.js +257 -189
  185. package/dist/loader-inline/loader-inline.js +37 -23
  186. package/dist/loader-inline-ng/loader-inline-ng.js +2 -2
  187. package/dist/loader-ng/loader-ng.js +46 -19
  188. package/dist/loader-screen/loader-screen.js +48 -25
  189. package/dist/loader-screen-ng/loader-screen-ng.js +46 -30
  190. package/dist/login-dialog/login-dialog.js +162 -111
  191. package/dist/login-dialog/service.js +35 -7
  192. package/dist/markdown/code.js +31 -9
  193. package/dist/markdown/heading.js +3 -5
  194. package/dist/markdown/link.js +13 -6
  195. package/dist/markdown/markdown.js +66 -33
  196. package/dist/message/message.js +157 -125
  197. package/dist/message-bundle-ng/message-bundle-ng.js +128 -44
  198. package/dist/old-browsers-message/old-browsers-message.js +19 -11
  199. package/dist/old-browsers-message/old-browsers-message__stop.js +8 -0
  200. package/dist/old-browsers-message/white-list.js +16 -9
  201. package/dist/pager/pager.js +275 -210
  202. package/dist/pager-ng/pager-ng.js +36 -1
  203. package/dist/panel/panel.js +27 -17
  204. package/dist/panel-ng/panel-ng.js +14 -1
  205. package/dist/permissions/permissions.js +173 -127
  206. package/dist/permissions/permissions__cache.js +225 -194
  207. package/dist/permissions-ng/permissions-ng.js +86 -35
  208. package/dist/place-under-ng/place-under-ng.js +68 -45
  209. package/dist/popup/popup.consts.js +1 -1
  210. package/dist/popup/popup.js +342 -280
  211. package/dist/popup/popup.target.js +8 -9
  212. package/dist/popup/position.js +153 -153
  213. package/dist/popup-menu/popup-menu.js +86 -44
  214. package/dist/progress-bar/progress-bar.js +97 -80
  215. package/dist/progress-bar-ng/progress-bar-ng.js +11 -1
  216. package/dist/promised-click-ng/promised-click-ng.js +92 -58
  217. package/dist/proxy-attrs/proxy-attrs.js +18 -9
  218. package/dist/query-assist/query-assist.js +903 -832
  219. package/dist/query-assist/query-assist__suggestions.js +33 -1
  220. package/dist/query-assist-ng/query-assist-ng.js +38 -1
  221. package/dist/radio/radio.js +36 -19
  222. package/dist/radio/radio__item.js +71 -52
  223. package/dist/radio-ng/radio-ng.js +14 -25
  224. package/dist/save-field-ng/save-field-ng.js +86 -52
  225. package/dist/save-field-ng/save-field-ng__template.js +1 -32
  226. package/dist/select/select.js +937 -835
  227. package/dist/select/select__filter.js +33 -0
  228. package/dist/select/select__popup.js +472 -359
  229. package/dist/select-ng/select-ng.js +125 -74
  230. package/dist/select-ng/select-ng__lazy.js +101 -50
  231. package/dist/select-ng/select-ng__options.js +107 -81
  232. package/dist/shortcuts/core.js +218 -166
  233. package/dist/shortcuts/shortcut-title.js +11 -6
  234. package/dist/shortcuts/shortcuts-hoc.js +47 -19
  235. package/dist/shortcuts/shortcuts.js +77 -50
  236. package/dist/shortcuts-hint-ng/shortcuts-hint-ng.js +104 -53
  237. package/dist/shortcuts-hint-ng/shortcuts-hint-ng__template.js +1 -48
  238. package/dist/shortcuts-ng/shortcuts-ng.js +86 -51
  239. package/dist/sidebar-ng/sidebar-ng.js +53 -22
  240. package/dist/sidebar-ng/sidebar-ng__button-template.js +1 -18
  241. package/dist/sidebar-ng/sidebar-ng__template.js +1 -10
  242. package/dist/storage/storage.js +35 -4
  243. package/dist/storage/storage__fallback.js +224 -149
  244. package/dist/storage/storage__local.js +156 -90
  245. package/dist/tab-trap/tab-trap.js +157 -122
  246. package/dist/table/cell.js +28 -14
  247. package/dist/table/disable-hover-hoc.js +53 -33
  248. package/dist/table/header-cell.js +87 -64
  249. package/dist/table/header.js +126 -98
  250. package/dist/table/multitable.js +127 -107
  251. package/dist/table/row-with-focus-sensor.js +73 -25
  252. package/dist/table/row.js +208 -170
  253. package/dist/table/selection-adapter.js +3 -1
  254. package/dist/table/selection-shortcuts-hoc.js +184 -181
  255. package/dist/table/selection.js +228 -156
  256. package/dist/table/smart-table.js +93 -51
  257. package/dist/table/table.js +348 -281
  258. package/dist/table-legacy-ng/table-legacy-ng.js +117 -102
  259. package/dist/table-legacy-ng/table-legacy-ng__pager.js +42 -10
  260. package/dist/table-legacy-ng/table-legacy-ng__selection-navigate-actions.js +92 -69
  261. package/dist/table-legacy-ng/table-legacy-ng__selection.js +169 -119
  262. package/dist/table-legacy-ng/table-legacy-ng__toolbar.js +36 -21
  263. package/dist/table-ng/smart-table-ng.js +31 -1
  264. package/dist/table-ng/table-ng.js +31 -1
  265. package/dist/tabs/collapsible-more.js +87 -50
  266. package/dist/tabs/collapsible-tab.js +45 -38
  267. package/dist/tabs/collapsible-tabs.js +161 -94
  268. package/dist/tabs/custom-item.js +2 -4
  269. package/dist/tabs/dumb-tabs.js +122 -75
  270. package/dist/tabs/smart-tabs.js +75 -29
  271. package/dist/tabs/tab-link.js +29 -19
  272. package/dist/tabs/tab.js +33 -19
  273. package/dist/tabs/tabs.js +35 -0
  274. package/dist/tabs-ng/tabs-ng.js +38 -24
  275. package/dist/tabs-ng/tabs-ng__template.js +1 -38
  276. package/dist/tag/tag.js +170 -133
  277. package/dist/tags-input/tags-input.js +428 -327
  278. package/dist/tags-input-ng/tags-input-ng.js +37 -1
  279. package/dist/tags-list/tags-list.js +80 -56
  280. package/dist/template-ng/template-ng.js +50 -39
  281. package/dist/text/text.js +38 -28
  282. package/dist/title-ng/title-ng.js +28 -23
  283. package/dist/toggle/toggle.js +72 -56
  284. package/dist/toggle-ng/toggle-ng.js +14 -1
  285. package/dist/tooltip/tooltip.js +192 -146
  286. package/dist/tooltip-ng/tooltip-ng.js +51 -25
  287. package/dist/user-agreement/service.js +374 -227
  288. package/dist/user-agreement/toolbox.eula.js +1 -160
  289. package/dist/user-agreement/user-agreement.js +128 -86
  290. package/dist/user-card/card.js +32 -0
  291. package/dist/user-card/smart-user-card-tooltip.js +116 -51
  292. package/dist/user-card/tooltip.js +90 -48
  293. package/dist/user-card/user-card.js +32 -0
  294. package/dist/user-card-ng/user-card-ng.js +34 -2
  295. package/package.json +2 -2
@@ -1,3 +1,5 @@
1
+ import { c as _defineProperty, j as _inherits, k as _createSuper, b as _classCallCheck, m as _assertThisInitialized, _ as _createClass } from './_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.array.concat.js';
1
3
  import React, { PureComponent } from 'react';
2
4
  import PropTypes from 'prop-types';
3
5
  import classNames from 'classnames';
@@ -8,66 +10,78 @@ import { refObject } from '../global/prop-types.js';
8
10
 
9
11
  var modules_09d014b4 = {"unit":"i__const_unit_0","height":"i__const_height_1","compensate":"i__const_compensate_2","light":"light_rui_2ac4","dataListWrapper":"dataListWrapper_rui_9f76","dataList":"dataList_rui_9f76","itemContent":"itemContent_rui_9f76","title":"title_rui_9f76","disabledHover":"disabledHover_rui_9f76","titleSelected":"titleSelected_rui_9f76","titleFocused":"titleFocused_rui_9f76","showMore":"showMore_rui_9f76","boxes":"boxes_rui_9f76","checkboxBox":"checkboxBox_rui_9f76","collapseButton":"collapseButton_rui_9f76","collapseIcon":"collapseIcon_rui_9f76","loadingOverlay":"loadingOverlay_rui_9f76","showMoreLoader":"showMoreLoader_rui_9f76"};
10
12
 
11
- class Title extends PureComponent {
12
- static defaultProps = {
13
- selectable: false,
14
- selected: false,
15
- showFocus: false
16
- };
17
- id = getUID('data-list-title');
18
- onCheckboxFocus = () => {
19
- this.props.onFocusRestore();
20
- };
21
- onCheckboxChange = () => {
22
- this.toggleSelection();
23
- };
24
- toggleSelection() {
25
- const {
26
- selectable,
27
- selected,
28
- onSelect
29
- } = this.props;
30
- if (selectable) {
31
- onSelect(!selected);
13
+ var Title = /*#__PURE__*/function (_PureComponent) {
14
+ _inherits(Title, _PureComponent);
15
+ var _super = _createSuper(Title);
16
+ function Title() {
17
+ var _this;
18
+ _classCallCheck(this, Title);
19
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
20
+ args[_key] = arguments[_key];
32
21
  }
33
- }
34
- render() {
35
- const {
36
- className,
37
- title,
38
- offset,
39
- showFocus,
40
- innerRef,
41
- selectable,
42
- selected,
43
- collapserExpander
44
- } = this.props;
45
- const classes = classNames(className, {
46
- [modules_09d014b4.title]: true,
47
- [modules_09d014b4.titleFocused]: showFocus,
48
- [modules_09d014b4.titleSelected]: selected
22
+ _this = _super.call.apply(_super, [this].concat(args));
23
+ _defineProperty(_assertThisInitialized(_this), "id", getUID('data-list-title'));
24
+ _defineProperty(_assertThisInitialized(_this), "onCheckboxFocus", function () {
25
+ _this.props.onFocusRestore();
26
+ });
27
+ _defineProperty(_assertThisInitialized(_this), "onCheckboxChange", function () {
28
+ _this.toggleSelection();
49
29
  });
50
- return /*#__PURE__*/React.createElement("div", {
51
- id: this.id,
52
- className: classes,
53
- style: {
54
- paddingLeft: offset
55
- },
56
- ref: innerRef
57
- }, /*#__PURE__*/React.createElement("div", {
58
- className: modules_09d014b4.boxes
59
- }, selectable && /*#__PURE__*/React.createElement("div", {
60
- className: modules_09d014b4.checkboxBox
61
- }, /*#__PURE__*/React.createElement(Checkbox, {
62
- "aria-labelledby": this.id,
63
- className: showFocus ? 'ring-checkbox_focus' : '',
64
- checked: selected,
65
- onFocus: this.onCheckboxFocus,
66
- onChange: this.onCheckboxChange,
67
- tabIndex: -1
68
- })), collapserExpander), title);
30
+ return _this;
69
31
  }
70
- }
32
+ _createClass(Title, [{
33
+ key: "toggleSelection",
34
+ value: function toggleSelection() {
35
+ var _this$props = this.props,
36
+ selectable = _this$props.selectable,
37
+ selected = _this$props.selected,
38
+ onSelect = _this$props.onSelect;
39
+ if (selectable) {
40
+ onSelect(!selected);
41
+ }
42
+ }
43
+ }, {
44
+ key: "render",
45
+ value: function render() {
46
+ var _classNames;
47
+ var _this$props2 = this.props,
48
+ className = _this$props2.className,
49
+ title = _this$props2.title,
50
+ offset = _this$props2.offset,
51
+ showFocus = _this$props2.showFocus,
52
+ innerRef = _this$props2.innerRef,
53
+ selectable = _this$props2.selectable,
54
+ selected = _this$props2.selected,
55
+ collapserExpander = _this$props2.collapserExpander;
56
+ var classes = classNames(className, (_classNames = {}, _defineProperty(_classNames, modules_09d014b4.title, true), _defineProperty(_classNames, modules_09d014b4.titleFocused, showFocus), _defineProperty(_classNames, modules_09d014b4.titleSelected, selected), _classNames));
57
+ return /*#__PURE__*/React.createElement("div", {
58
+ id: this.id,
59
+ className: classes,
60
+ style: {
61
+ paddingLeft: offset
62
+ },
63
+ ref: innerRef
64
+ }, /*#__PURE__*/React.createElement("div", {
65
+ className: modules_09d014b4.boxes
66
+ }, selectable && /*#__PURE__*/React.createElement("div", {
67
+ className: modules_09d014b4.checkboxBox
68
+ }, /*#__PURE__*/React.createElement(Checkbox, {
69
+ "aria-labelledby": this.id,
70
+ className: showFocus ? 'ring-checkbox_focus' : '',
71
+ checked: selected,
72
+ onFocus: this.onCheckboxFocus,
73
+ onChange: this.onCheckboxChange,
74
+ tabIndex: -1
75
+ })), collapserExpander), title);
76
+ }
77
+ }]);
78
+ return Title;
79
+ }(PureComponent);
80
+ _defineProperty(Title, "defaultProps", {
81
+ selectable: false,
82
+ selected: false,
83
+ showFocus: false
84
+ });
71
85
  Title.propTypes = {
72
86
  className: PropTypes.string,
73
87
  title: PropTypes.node,
@@ -1,3 +1,6 @@
1
+ import { c as _defineProperty, j as _inherits, k as _createSuper, b as _classCallCheck, m as _assertThisInitialized, _ as _createClass } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.array.concat.js';
3
+ import 'core-js/modules/es.object.values.js';
1
4
  import React, { PureComponent } from 'react';
2
5
  import classNames from 'classnames';
3
6
  import PropTypes from 'prop-types';
@@ -13,12 +16,28 @@ import { Button } from '../button/button.js';
13
16
  import { T as Theme, a as ThemeProvider } from '../_helpers/theme.js';
14
17
  export { default as Container } from './container.js';
15
18
  import { Color } from '../icon/icon__constants.js';
16
- import '../_helpers/_rollupPluginBabelHelpers.js';
17
19
  import 'util-deprecate';
18
20
  import '../_helpers/icon.js';
19
21
  import '../icon/icon__svg.js';
22
+ import 'core-js/modules/es.regexp.exec.js';
23
+ import 'core-js/modules/es.string.replace.js';
24
+ import 'core-js/modules/es.string.starts-with.js';
20
25
  import '../global/memoize.js';
26
+ import 'core-js/modules/es.array.iterator.js';
27
+ import 'core-js/modules/es.map.js';
28
+ import 'core-js/modules/es.object.to-string.js';
29
+ import 'core-js/modules/es.string.iterator.js';
30
+ import 'core-js/modules/web.dom-collections.iterator.js';
31
+ import 'core-js/modules/es.weak-map.js';
21
32
  import '../_helpers/loader-inline.js';
33
+ import 'core-js/modules/es.array.reduce.js';
34
+ import 'core-js/modules/es.object.entries.js';
35
+ import 'core-js/modules/es.object.assign.js';
36
+ import 'core-js/modules/web.dom-collections.for-each.js';
37
+ import 'core-js/modules/es.array.filter.js';
38
+ import 'core-js/modules/es.string.split.js';
39
+ import 'core-js/modules/es.object.keys.js';
40
+ import 'core-js/modules/es.set.js';
22
41
  import '@jetbrains/icons/chevron-10px';
23
42
  import '../link/clickableLink.js';
24
43
  import '../global/controls-height.js';
@@ -26,20 +45,30 @@ import '../_helpers/button__classes.js';
26
45
  import 'react-dom';
27
46
  import '../popup/popup.target.js';
28
47
  import '../popup/popup.js';
48
+ import 'core-js/modules/es.regexp.to-string.js';
29
49
  import '../global/get-uid.js';
30
50
  import '../global/schedule-raf.js';
31
51
  import '../shortcuts/shortcuts.js';
52
+ import 'core-js/modules/es.array.map.js';
32
53
  import '../shortcuts/core.js';
54
+ import 'core-js/modules/es.array.includes.js';
55
+ import 'core-js/modules/es.string.includes.js';
56
+ import 'core-js/modules/es.array.slice.js';
57
+ import 'core-js/modules/es.array.splice.js';
58
+ import 'core-js/modules/es.string.match.js';
59
+ import 'core-js/modules/es.array.find-index.js';
33
60
  import 'combokeys';
34
61
  import '../global/sniffer.js';
35
62
  import 'sniffr';
36
63
  import '../tab-trap/tab-trap.js';
37
64
  import '../popup/position.js';
65
+ import 'core-js/modules/es.array.sort.js';
38
66
  import '../popup/popup.consts.js';
39
67
 
40
68
  var modules_e02b3280 = {"link":"link_rui_d382","unit":"i__const_unit_1","animation-duration":"300ms","animation-easing":"ease-out","light":"light_rui_2ac4","alert":"alert_rui_2b32","alertInline":"alertInline_rui_2b32","error":"error_rui_2b32","icon":"icon_rui_2b32","caption":"caption_rui_2b32","withCloseButton":"withCloseButton_rui_2b32","badge":"badge_rui_2b32","loader":"loader_rui_2b32","close":"close_rui_2b32","animationOpen":"animationOpen_rui_2b32","show":"show_rui_2b32","animationClosing":"animationClosing_rui_2b32","animationShaking":"animationShaking_rui_2b32","shaking":"shaking_rui_2b32"};
41
69
 
42
- const ANIMATION_TIME = 500;
70
+ var _TypeToIcon, _TypeToIconColor;
71
+ var ANIMATION_TIME = 500;
43
72
  /**
44
73
  * @name Alert
45
74
  */
@@ -59,20 +88,12 @@ var AlertType;
59
88
  * Lookup table of alert type to icon modifier.
60
89
  * @type {Object.<AlertType, string>}
61
90
  */
62
- const TypeToIcon = {
63
- [AlertType.ERROR]: exceptionIcon,
64
- [AlertType.SUCCESS]: checkmarkIcon,
65
- [AlertType.WARNING]: warningIcon
66
- };
91
+ var TypeToIcon = (_TypeToIcon = {}, _defineProperty(_TypeToIcon, AlertType.ERROR, exceptionIcon), _defineProperty(_TypeToIcon, AlertType.SUCCESS, checkmarkIcon), _defineProperty(_TypeToIcon, AlertType.WARNING, warningIcon), _TypeToIcon);
67
92
  /**
68
93
  * Lookup table of alert type to icon color.
69
94
  * @type {Object.<AlertType, Icon.Color>}
70
95
  */
71
- const TypeToIconColor = {
72
- [AlertType.ERROR]: Color.RED,
73
- [AlertType.SUCCESS]: Color.GREEN,
74
- [AlertType.WARNING]: Color.WHITE
75
- };
96
+ var TypeToIconColor = (_TypeToIconColor = {}, _defineProperty(_TypeToIconColor, AlertType.ERROR, Color.RED), _defineProperty(_TypeToIconColor, AlertType.SUCCESS, Color.GREEN), _defineProperty(_TypeToIconColor, AlertType.WARNING, Color.WHITE), _TypeToIconColor);
76
97
  /**
77
98
  * @constructor
78
99
  * @name Alert
@@ -81,162 +102,182 @@ const TypeToIconColor = {
81
102
  /**
82
103
  * **Alert** is a component for displaying contextual notifications. If you want to display a stack of notifications, use **Alerts** instead.
83
104
  */
84
- class Alert extends PureComponent {
85
- static propTypes = {
86
- timeout: PropTypes.number,
105
+ var Alert = /*#__PURE__*/function (_PureComponent) {
106
+ _inherits(Alert, _PureComponent);
107
+ var _super = _createSuper(Alert);
108
+ function Alert() {
109
+ var _this;
110
+ _classCallCheck(this, Alert);
111
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
112
+ args[_key] = arguments[_key];
113
+ }
114
+ _this = _super.call.apply(_super, [this].concat(args));
115
+ _defineProperty(_assertThisInitialized(_this), "state", {
116
+ height: null
117
+ });
118
+ _defineProperty(_assertThisInitialized(_this), "node", void 0);
119
+ _defineProperty(_assertThisInitialized(_this), "hideTimeout", void 0);
120
+ _defineProperty(_assertThisInitialized(_this), "closeRequest", function (event) {
121
+ _this.startCloseAnimation();
122
+ return _this.props.onCloseRequest(event);
123
+ });
124
+ _defineProperty(_assertThisInitialized(_this), "startCloseAnimation", function () {
125
+ var height = getRect(_this.node).height;
126
+ _this.setState({
127
+ height: height
128
+ });
129
+ });
87
130
  /**
88
- * Fires when alert starts closing if timeout is out or user clicks "Close" button
131
+ * @param {SyntheticEvent} evt
132
+ * @private
89
133
  */
90
- onCloseRequest: PropTypes.func,
91
- onClose: PropTypes.func,
92
- isShaking: PropTypes.bool,
93
- isClosing: PropTypes.bool,
134
+ _defineProperty(_assertThisInitialized(_this), "_handleCaptionsLinksClick", function (evt) {
135
+ if (evt.target instanceof Element && evt.target.matches('a')) {
136
+ _this.closeRequest(evt);
137
+ }
138
+ });
139
+ _defineProperty(_assertThisInitialized(_this), "storeAlertRef", function (node) {
140
+ _this.node = node;
141
+ });
142
+ return _this;
143
+ }
144
+ _createClass(Alert, [{
145
+ key: "componentDidMount",
146
+ value: function componentDidMount() {
147
+ if (this.props.timeout > 0) {
148
+ this.hideTimeout = window.setTimeout(this.closeRequest, this.props.timeout);
149
+ }
150
+ }
151
+ }, {
152
+ key: "componentDidUpdate",
153
+ value: function componentDidUpdate() {
154
+ if (this.props.isClosing) {
155
+ this._close();
156
+ }
157
+ }
158
+ }, {
159
+ key: "componentWillUnmount",
160
+ value: function componentWillUnmount() {
161
+ clearTimeout(this.hideTimeout);
162
+ }
163
+ }, {
164
+ key: "_close",
165
+ value: function _close() {
166
+ var _this2 = this;
167
+ this.startCloseAnimation();
168
+ setTimeout(function () {
169
+ _this2.props.onClose();
170
+ }, ANIMATION_TIME);
171
+ }
172
+ }, {
173
+ key: "_getCaption",
174
+ value:
94
175
  /**
95
- * Whether an alert is rendered inside an **Alerts** container
96
- * or standalone.
176
+ * @private
97
177
  */
98
- inline: PropTypes.bool,
99
- showWithAnimation: PropTypes.bool,
100
- closeable: PropTypes.bool,
101
- type: PropTypes.oneOf(Object.values(AlertType)),
102
- children: PropTypes.node,
103
- className: PropTypes.string,
104
- captionClassName: PropTypes.string,
105
- closeButtonClassName: PropTypes.string,
106
- 'data-test': PropTypes.string
107
- };
108
- /** @override */
109
- static defaultProps = {
110
- theme: Theme.DARK,
111
- closeable: true,
112
- showWithAnimation: true,
113
- type: AlertType.MESSAGE,
114
- inline: true,
115
- isClosing: false,
116
- isShaking: false,
117
- timeout: 0,
118
- onClose: () => {},
119
- onCloseRequest: () => {}
120
- };
121
- state = {
122
- height: null
123
- };
124
- componentDidMount() {
125
- if (this.props.timeout > 0) {
126
- this.hideTimeout = window.setTimeout(this.closeRequest, this.props.timeout);
178
+ function _getCaption() {
179
+ return /*#__PURE__*/React.createElement("span", {
180
+ className: classNames(modules_e02b3280.caption, this.props.captionClassName, _defineProperty({}, modules_e02b3280.withCloseButton, this.props.closeable)),
181
+ onClick: this._handleCaptionsLinksClick
182
+ // We only process clicks on `a` elements, see above
183
+ ,
184
+ role: "presentation"
185
+ }, this.props.children);
127
186
  }
128
- }
129
- componentDidUpdate() {
130
- if (this.props.isClosing) {
131
- this._close();
187
+ /**
188
+ * @private
189
+ * @return {XML|string}
190
+ */
191
+ }, {
192
+ key: "_getIcon",
193
+ value: function _getIcon() {
194
+ var glyph = TypeToIcon[this.props.type];
195
+ if (glyph) {
196
+ return /*#__PURE__*/React.createElement(Icon, {
197
+ glyph: glyph,
198
+ className: modules_e02b3280.icon,
199
+ color: TypeToIconColor[this.props.type] || Color.DEFAULT
200
+ });
201
+ } else if (this.props.type === AlertType.LOADING) {
202
+ return /*#__PURE__*/React.createElement(LoaderInline, {
203
+ className: modules_e02b3280.loader
204
+ });
205
+ }
206
+ return '';
132
207
  }
133
- }
134
- componentWillUnmount() {
135
- clearTimeout(this.hideTimeout);
136
- }
137
- node;
138
- hideTimeout;
139
- static Type = AlertType;
140
- closeRequest = event => {
141
- this.startCloseAnimation();
142
- return this.props.onCloseRequest(event);
143
- };
144
- startCloseAnimation = () => {
145
- const height = getRect(this.node).height;
146
- this.setState({
147
- height
148
- });
149
- };
150
- _close() {
151
- this.startCloseAnimation();
152
- setTimeout(() => {
153
- this.props.onClose();
154
- }, ANIMATION_TIME);
155
- }
156
- /**
157
- * @param {SyntheticEvent} evt
158
- * @private
159
- */
160
- _handleCaptionsLinksClick = evt => {
161
- if (evt.target instanceof Element && evt.target.matches('a')) {
162
- this.closeRequest(evt);
208
+ }, {
209
+ key: "render",
210
+ value: function render() {
211
+ var _classNames2;
212
+ var _this$props = this.props,
213
+ type = _this$props.type,
214
+ inline = _this$props.inline,
215
+ isClosing = _this$props.isClosing,
216
+ isShaking = _this$props.isShaking,
217
+ closeButtonClassName = _this$props.closeButtonClassName,
218
+ showWithAnimation = _this$props.showWithAnimation,
219
+ className = _this$props.className,
220
+ dataTest = _this$props['data-test'],
221
+ theme = _this$props.theme;
222
+ var classes = classNames(className, (_classNames2 = {}, _defineProperty(_classNames2, modules_e02b3280.alert, true), _defineProperty(_classNames2, modules_e02b3280.animationOpen, showWithAnimation), _defineProperty(_classNames2, modules_e02b3280.error, type === 'error'), _defineProperty(_classNames2, modules_e02b3280.alertInline, inline), _defineProperty(_classNames2, modules_e02b3280.animationClosing, isClosing), _defineProperty(_classNames2, modules_e02b3280.animationShaking, isShaking), _classNames2));
223
+ var height = this.state.height;
224
+ var style = height ? {
225
+ marginBottom: -height
226
+ } : undefined;
227
+ return /*#__PURE__*/React.createElement(ThemeProvider, {
228
+ theme: theme,
229
+ className: classes,
230
+ "data-test": joinDataTestAttributes('alert', dataTest),
231
+ "data-test-type": type,
232
+ style: style,
233
+ ref: this.storeAlertRef
234
+ }, this._getIcon(), this._getCaption(), this.props.closeable ? /*#__PURE__*/React.createElement(Button, {
235
+ icon: closeIcon,
236
+ className: classNames(modules_e02b3280.close, closeButtonClassName),
237
+ "data-test": "alert-close",
238
+ "aria-label": "close alert",
239
+ onClick: this.closeRequest
240
+ }) : '');
163
241
  }
164
- };
242
+ }]);
243
+ return Alert;
244
+ }(PureComponent);
245
+ _defineProperty(Alert, "propTypes", {
246
+ timeout: PropTypes.number,
165
247
  /**
166
- * @private
248
+ * Fires when alert starts closing if timeout is out or user clicks "Close" button
167
249
  */
168
- _getCaption() {
169
- return /*#__PURE__*/React.createElement("span", {
170
- className: classNames(modules_e02b3280.caption, this.props.captionClassName, {
171
- [modules_e02b3280.withCloseButton]: this.props.closeable
172
- }),
173
- onClick: this._handleCaptionsLinksClick
174
- // We only process clicks on `a` elements, see above
175
- ,
176
- role: "presentation"
177
- }, this.props.children);
178
- }
250
+ onCloseRequest: PropTypes.func,
251
+ onClose: PropTypes.func,
252
+ isShaking: PropTypes.bool,
253
+ isClosing: PropTypes.bool,
179
254
  /**
180
- * @private
181
- * @return {XML|string}
255
+ * Whether an alert is rendered inside an **Alerts** container
256
+ * or standalone.
182
257
  */
183
- _getIcon() {
184
- const glyph = TypeToIcon[this.props.type];
185
- if (glyph) {
186
- return /*#__PURE__*/React.createElement(Icon, {
187
- glyph: glyph,
188
- className: modules_e02b3280.icon,
189
- color: TypeToIconColor[this.props.type] || Color.DEFAULT
190
- });
191
- } else if (this.props.type === AlertType.LOADING) {
192
- return /*#__PURE__*/React.createElement(LoaderInline, {
193
- className: modules_e02b3280.loader
194
- });
195
- }
196
- return '';
197
- }
198
- storeAlertRef = node => {
199
- this.node = node;
200
- };
201
- render() {
202
- const {
203
- type,
204
- inline,
205
- isClosing,
206
- isShaking,
207
- closeButtonClassName,
208
- showWithAnimation,
209
- className,
210
- 'data-test': dataTest,
211
- theme
212
- } = this.props;
213
- const classes = classNames(className, {
214
- [modules_e02b3280.alert]: true,
215
- [modules_e02b3280.animationOpen]: showWithAnimation,
216
- [modules_e02b3280.error]: type === 'error',
217
- [modules_e02b3280.alertInline]: inline,
218
- [modules_e02b3280.animationClosing]: isClosing,
219
- [modules_e02b3280.animationShaking]: isShaking
220
- });
221
- const height = this.state.height;
222
- const style = height ? {
223
- marginBottom: -height
224
- } : undefined;
225
- return /*#__PURE__*/React.createElement(ThemeProvider, {
226
- theme: theme,
227
- className: classes,
228
- "data-test": joinDataTestAttributes('alert', dataTest),
229
- "data-test-type": type,
230
- style: style,
231
- ref: this.storeAlertRef
232
- }, this._getIcon(), this._getCaption(), this.props.closeable ? /*#__PURE__*/React.createElement(Button, {
233
- icon: closeIcon,
234
- className: classNames(modules_e02b3280.close, closeButtonClassName),
235
- "data-test": "alert-close",
236
- "aria-label": "close alert",
237
- onClick: this.closeRequest
238
- }) : '');
239
- }
240
- }
258
+ inline: PropTypes.bool,
259
+ showWithAnimation: PropTypes.bool,
260
+ closeable: PropTypes.bool,
261
+ type: PropTypes.oneOf(Object.values(AlertType)),
262
+ children: PropTypes.node,
263
+ className: PropTypes.string,
264
+ captionClassName: PropTypes.string,
265
+ closeButtonClassName: PropTypes.string,
266
+ 'data-test': PropTypes.string
267
+ });
268
+ /** @override */
269
+ _defineProperty(Alert, "defaultProps", {
270
+ theme: Theme.DARK,
271
+ closeable: true,
272
+ showWithAnimation: true,
273
+ type: AlertType.MESSAGE,
274
+ inline: true,
275
+ isClosing: false,
276
+ isShaking: false,
277
+ timeout: 0,
278
+ onClose: function onClose() {},
279
+ onCloseRequest: function onCloseRequest() {}
280
+ });
281
+ _defineProperty(Alert, "Type", AlertType);
241
282
 
242
283
  export { ANIMATION_TIME, AlertType, Alert as default };
@@ -1,41 +1,52 @@
1
- import { _ as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import React, { PureComponent, Children, isValidElement, cloneElement } from 'react';
1
+ import { c as _defineProperty, j as _inherits, k as _createSuper, b as _classCallCheck, _ as _createClass, h as _objectWithoutProperties, i as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.array.map.js';
3
+ import React, { Children, isValidElement, cloneElement, PureComponent } from 'react';
3
4
  import { createPortal } from 'react-dom';
4
5
  import classNames from 'classnames';
5
6
  import PropTypes from 'prop-types';
6
7
 
7
8
  var modules_fc8df42d = {"unit":"i__const_unit_0","light":"light_rui_2ac4","alertContainer":"alertContainer_rui_a9a3","alertInContainer":"alertInContainer_rui_a9a3 alert_rui_2b32"};
8
9
 
9
- class Alerts extends PureComponent {
10
- static propTypes = {
11
- children: PropTypes.node,
12
- className: PropTypes.string
13
- };
14
- render() {
15
- const {
16
- children,
17
- className,
18
- ...restProps
19
- } = this.props;
20
- const classes = classNames(modules_fc8df42d.alertContainer, className);
21
- const show = Children.count(children) > 0;
22
- if (!show) {
23
- return null;
24
- }
25
- return /*#__PURE__*/createPortal( /*#__PURE__*/React.createElement("div", _extends({
26
- "data-test": "alert-container",
27
- className: classes,
28
- "aria-live": "polite"
29
- }, restProps), Children.map(children, child => {
30
- if (! /*#__PURE__*/isValidElement(child)) {
31
- return child;
32
- }
33
- const alertClassNames = classNames(modules_fc8df42d.alertInContainer, child.props.className);
34
- return /*#__PURE__*/cloneElement(child, {
35
- className: alertClassNames
36
- });
37
- })), document.body);
10
+ var _excluded = ["children", "className"];
11
+ var Alerts = /*#__PURE__*/function (_PureComponent) {
12
+ _inherits(Alerts, _PureComponent);
13
+ var _super = _createSuper(Alerts);
14
+ function Alerts() {
15
+ _classCallCheck(this, Alerts);
16
+ return _super.apply(this, arguments);
38
17
  }
39
- }
18
+ _createClass(Alerts, [{
19
+ key: "render",
20
+ value: function render() {
21
+ var _this$props = this.props,
22
+ children = _this$props.children,
23
+ className = _this$props.className,
24
+ restProps = _objectWithoutProperties(_this$props, _excluded);
25
+ var classes = classNames(modules_fc8df42d.alertContainer, className);
26
+ var show = Children.count(children) > 0;
27
+ if (!show) {
28
+ return null;
29
+ }
30
+ return /*#__PURE__*/createPortal( /*#__PURE__*/React.createElement("div", _extends({
31
+ "data-test": "alert-container",
32
+ className: classes,
33
+ "aria-live": "polite"
34
+ }, restProps), Children.map(children, function (child) {
35
+ if (! /*#__PURE__*/isValidElement(child)) {
36
+ return child;
37
+ }
38
+ var alertClassNames = classNames(modules_fc8df42d.alertInContainer, child.props.className);
39
+ return /*#__PURE__*/cloneElement(child, {
40
+ className: alertClassNames
41
+ });
42
+ })), document.body);
43
+ }
44
+ }]);
45
+ return Alerts;
46
+ }(PureComponent);
47
+ _defineProperty(Alerts, "propTypes", {
48
+ children: PropTypes.node,
49
+ className: PropTypes.string
50
+ });
40
51
 
41
52
  export { Alerts as default };